'd images.\n *\n * There are two problems with this component's architecture:\n * 1. Parsing HTML and rendering are inseparable. Attempts to separate the two\n * proven to be a massive overcomplication due to amount of things done here.\n * 2. We need to output both render and some extra data, which seems to be imp-\n * possible in vue. Current solution is to emit 'parseReady' event when parsing\n * is done within render() function.\n *\n * Apart from that one small hiccup with emit in render this _should_ be vue3-ready\n */\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({\n name: 'RichContent',\n components: {\n MentionsLine: src_components_mentions_line_mentions_line_vue__WEBPACK_IMPORTED_MODULE_10__[\"default\"],\n HashtagLink: src_components_hashtag_link_hashtag_link_vue__WEBPACK_IMPORTED_MODULE_11__[\"default\"]\n },\n props: {\n // Original html content\n html: {\n required: true,\n type: String\n },\n attentions: {\n required: false,\n \"default\": function _default() {\n return [];\n }\n },\n // Emoji object, as in status.emojis, note the \"s\" at the end...\n emoji: {\n required: true,\n type: Array\n },\n // Whether to handle links or not (posts: yes, everything else: no)\n handleLinks: {\n required: false,\n type: Boolean,\n \"default\": false\n },\n // Meme arrows\n greentext: {\n required: false,\n type: Boolean,\n \"default\": false\n }\n },\n // NEVER EVER TOUCH DATA INSIDE RENDER\n render: function render() {\n var _this = this;\n // Pre-process HTML\n var _preProcessPerLine = preProcessPerLine(this.html, this.greentext),\n html = _preProcessPerLine.newHtml;\n var currentMentions = null; // Current chain of mentions, we group all mentions together\n // This is used to recover spacing removed when parsing mentions\n var lastSpacing = '';\n var lastTags = []; // Tags that appear at the end of post body\n var writtenMentions = []; // All mentions that appear in post body\n var invisibleMentions = []; // All mentions that go beyond the limiter (see MentionsLine)\n // to collapse too many mentions in a row\n var writtenTags = []; // All tags that appear in post body\n // unique index for vue \"tag\" property\n var mentionIndex = 0;\n var tagsIndex = 0;\n var renderImage = function renderImage(tag) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_5__.createVNode)(src_components_still_image_still_image_vue__WEBPACK_IMPORTED_MODULE_9__[\"default\"], (0,vue__WEBPACK_IMPORTED_MODULE_5__.mergeProps)((0,src_services_html_converter_utility_service_js__WEBPACK_IMPORTED_MODULE_6__.getAttrs)(tag), {\n \"class\": \"img\"\n }), null);\n };\n var renderHashtag = function renderHashtag(attrs, children, encounteredTextReverse) {\n var _getLinkData = getLinkData(attrs, children, tagsIndex++),\n index = _getLinkData.index,\n linkData = (0,_babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(_getLinkData, _excluded);\n writtenTags.push(linkData);\n if (!encounteredTextReverse) {\n lastTags.push(linkData);\n }\n var url = linkData.url,\n tag = linkData.tag,\n content = linkData.content;\n return (0,vue__WEBPACK_IMPORTED_MODULE_5__.createVNode)(src_components_hashtag_link_hashtag_link_vue__WEBPACK_IMPORTED_MODULE_11__[\"default\"], {\n \"url\": url,\n \"tag\": tag,\n \"content\": content\n }, null);\n };\n var renderMention = function renderMention(attrs, children) {\n var linkData = getLinkData(attrs, children, mentionIndex++);\n linkData.notifying = _this.attentions.some(function (a) {\n return a.statusnet_profile_url === linkData.url;\n });\n writtenMentions.push(linkData);\n if (currentMentions === null) {\n currentMentions = [];\n }\n currentMentions.push(linkData);\n if (currentMentions.length > src_components_mentions_line_mentions_line_vue__WEBPACK_IMPORTED_MODULE_10__.MENTIONS_LIMIT) {\n invisibleMentions.push(linkData);\n }\n if (currentMentions.length === 1) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_5__.createVNode)(src_components_mentions_line_mentions_line_vue__WEBPACK_IMPORTED_MODULE_10__[\"default\"], {\n \"mentions\": currentMentions\n }, null);\n } else {\n return '';\n }\n };\n\n // Processor to use with html_tree_converter\n var processItem = function processItem(item, index, array, what) {\n // Handle text nodes - just add emoji\n if (typeof item === 'string') {\n var emptyText = item.trim() === '';\n if (item.includes('\\n')) {\n currentMentions = null;\n }\n if (emptyText) {\n // don't include spaces when processing mentions - we'll include them\n // in MentionsLine\n lastSpacing = item;\n // Don't remove last space in a container (fixes poast mentions)\n return index !== array.length - 1 && currentMentions !== null ? item.trim() : item;\n }\n currentMentions = null;\n if (item.includes(':')) {\n item = ['', (0,src_services_html_converter_utility_service_js__WEBPACK_IMPORTED_MODULE_6__.processTextForEmoji)(item, _this.emoji, function (_ref) {\n var shortcode = _ref.shortcode,\n url = _ref.url;\n return (0,vue__WEBPACK_IMPORTED_MODULE_5__.createVNode)(src_components_still_image_still_image_vue__WEBPACK_IMPORTED_MODULE_9__[\"default\"], {\n \"class\": \"emoji img\",\n \"src\": url,\n \"title\": \":\".concat(shortcode, \":\"),\n \"alt\": \":\".concat(shortcode, \":\")\n }, null);\n })];\n }\n return item;\n }\n\n // Handle tag nodes\n if (Array.isArray(item)) {\n var _item = item,\n _item2 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(_item, 3),\n opener = _item2[0],\n children = _item2[1],\n closer = _item2[2];\n var Tag = (0,src_services_html_converter_utility_service_js__WEBPACK_IMPORTED_MODULE_6__.getTagName)(opener);\n if (Tag.toLowerCase() === 'script') Tag = 'js-exploit';\n if (Tag.toLowerCase() === 'style') Tag = 'css-exploit';\n var fullAttrs = (0,src_services_html_converter_utility_service_js__WEBPACK_IMPORTED_MODULE_6__.getAttrs)(opener, function () {\n return true;\n });\n var attrs = (0,src_services_html_converter_utility_service_js__WEBPACK_IMPORTED_MODULE_6__.getAttrs)(opener);\n var previouslyMentions = currentMentions !== null;\n /* During grouping of mentions we trim all the empty text elements\n * This padding is added to recover last space removed in case\n * we have a tag right next to mentions\n */\n var mentionsLinePadding =\n // Padding is only needed if we just finished parsing mentions\n previouslyMentions &&\n // Don't add padding if content is string and has padding already\n !(children && typeof children[0] === 'string' && children[0].match(/^\\s/)) ? lastSpacing : '';\n if (MAYBE_LINE_BREAKING_ELEMENTS.includes(Tag)) {\n // all the elements that can cause a line change\n currentMentions = null;\n } else if (Tag === 'img') {\n // replace images with StillImage\n return ['', [mentionsLinePadding, renderImage(opener)], ''];\n } else if (Tag === 'a' && _this.handleLinks) {\n // replace mentions with MentionLink\n if (fullAttrs[\"class\"] && fullAttrs[\"class\"].includes('mention')) {\n // Handling mentions here\n return renderMention(attrs, children);\n } else {\n currentMentions = null;\n }\n } else if (Tag === 'span') {\n if (_this.handleLinks && fullAttrs[\"class\"] && fullAttrs[\"class\"].includes('h-card')) {\n return ['', children.map(processItem), ''];\n }\n }\n if (children !== undefined) {\n return ['', [mentionsLinePadding, [opener, children.map(processItem), closer]], ''];\n } else {\n return ['', [mentionsLinePadding, item], ''];\n }\n }\n };\n\n // Processor for back direction (for finding \"last\" stuff, just easier this way)\n var encounteredTextReverse = false;\n var processItemReverse = function processItemReverse(item, index, array, what) {\n // Handle text nodes - just add emoji\n if (typeof item === 'string') {\n var emptyText = item.trim() === '';\n if (emptyText) return item;\n if (!encounteredTextReverse) encounteredTextReverse = true;\n return lodash_unescape__WEBPACK_IMPORTED_MODULE_4___default()(item);\n } else if (Array.isArray(item)) {\n // Handle tag nodes\n var _item3 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(item, 2),\n opener = _item3[0],\n children = _item3[1];\n var Tag = opener === '' ? '' : (0,src_services_html_converter_utility_service_js__WEBPACK_IMPORTED_MODULE_6__.getTagName)(opener);\n switch (Tag) {\n case 'a':\n {\n // replace mentions with MentionLink\n if (!_this.handleLinks) break;\n var fullAttrs = (0,src_services_html_converter_utility_service_js__WEBPACK_IMPORTED_MODULE_6__.getAttrs)(opener, function () {\n return true;\n });\n var attrs = (0,src_services_html_converter_utility_service_js__WEBPACK_IMPORTED_MODULE_6__.getAttrs)(opener, function () {\n return true;\n });\n // should only be this\n if (fullAttrs[\"class\"] && fullAttrs[\"class\"].includes('hashtag') ||\n // Pleroma style\n fullAttrs.rel === 'tag' // Mastodon style\n ) {\n return renderHashtag(attrs, children, encounteredTextReverse);\n } else {\n attrs.target = '_blank';\n var newChildren = (0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(children).reverse().map(processItemReverse).reverse();\n return (0,vue__WEBPACK_IMPORTED_MODULE_5__.createVNode)(\"a\", attrs, [newChildren]);\n }\n }\n case '':\n return (0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(children).reverse().map(processItemReverse).reverse();\n }\n\n // Render tag as is\n if (children !== undefined) {\n var _newChildren = Array.isArray(children) ? (0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(children).reverse().map(processItemReverse).reverse() : children;\n return (0,vue__WEBPACK_IMPORTED_MODULE_5__.createVNode)(Tag, (0,src_services_html_converter_utility_service_js__WEBPACK_IMPORTED_MODULE_6__.getAttrs)(opener), _isSlot(_newChildren) ? _newChildren : {\n \"default\": function _default() {\n return [_newChildren];\n }\n });\n } else {\n return (0,vue__WEBPACK_IMPORTED_MODULE_5__.createVNode)(Tag, null, null);\n }\n }\n return item;\n };\n var pass1 = (0,src_services_html_converter_html_tree_converter_service_js__WEBPACK_IMPORTED_MODULE_7__.convertHtmlToTree)(html).map(processItem);\n var pass2 = (0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(pass1).reverse().map(processItemReverse).reverse();\n // DO NOT USE SLOTS they cause a re-render feedback loop here.\n // slots updated -> rerender -> emit -> update up the tree -> rerender -> ...\n // at least until vue3?\n var result = (0,vue__WEBPACK_IMPORTED_MODULE_5__.createVNode)(\"span\", {\n \"class\": \"RichContent\"\n }, [pass2]);\n var event = {\n lastTags: lastTags,\n writtenMentions: writtenMentions,\n writtenTags: writtenTags,\n invisibleMentions: invisibleMentions\n };\n\n // DO NOT MOVE TO UPDATE. BAD IDEA.\n this.$emit('parseReady', event);\n return result;\n }\n});\nvar getLinkData = function getLinkData(attrs, children, index) {\n var stripTags = function stripTags(item) {\n if (typeof item === 'string') {\n return item;\n } else {\n return item[1].map(stripTags).join('');\n }\n };\n var textContent = children.map(stripTags).join('');\n return {\n index: index,\n url: attrs.href,\n tag: attrs['data-tag'],\n content: lodash_flattenDeep__WEBPACK_IMPORTED_MODULE_3___default()(children).join(''),\n textContent: textContent\n };\n};\n\n/** Pre-processing HTML\n *\n * Currently this does one thing:\n * - add green/cyantexting\n *\n * @param {String} html - raw HTML to process\n * @param {Boolean} greentext - whether to enable greentexting or not\n */\nvar preProcessPerLine = function preProcessPerLine(html, greentext) {\n var greentextHandle = new Set(['p', 'div']);\n var lines = (0,src_services_html_converter_html_line_converter_service_js__WEBPACK_IMPORTED_MODULE_8__.convertHtmlToLines)(html);\n var newHtml = lines.reverse().map(function (item, index, array) {\n if (!item.text) return item;\n var string = item.text;\n\n // Greentext stuff\n if (\n // Only if greentext is engaged\n greentext &&\n // Only handle p's and divs. Don't want to affect blockquotes, code etc\n item.level.every(function (l) {\n return greentextHandle.has(l);\n }) && (\n // Only if line begins with '>' or '<'\n string.includes('>') || string.includes('<'))) {\n var cleanedString = string.replace(/<[^>]+?>/gi, '') // remove all tags\n .replace(/@\\w+/gi, '') // remove mentions (even failed ones)\n .trim();\n if (cleanedString.startsWith('>')) {\n return \"\".concat(string, \"\");\n } else if (cleanedString.startsWith('<')) {\n return \"\".concat(string, \"\");\n }\n }\n return string;\n }).reverse().join('');\n return {\n newHtml: newHtml\n };\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvY29tcG9uZW50cy9yaWNoX2NvbnRlbnQvcmljaF9jb250ZW50LmpzeC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQzBHO0FBQ1o7QUFDQztBQUM1QjtBQUMwQjtBQUN2QjtBQUUxQztBQUFBLFNBQUFTLFFBQUFDLENBQUE7RUFBQSxjQUFBQSxDQUFBLG1CQUFBQyxNQUFBLENBQUFDLFNBQUEsQ0FBQUMsUUFBQSxDQUFBQyxJQUFBLENBQUFKLENBQUEsNEJBQUFLLDRDQUFBLENBQUFMLENBQUE7QUFBQTtBQUU1QixJQUFNTSw0QkFBNEIsR0FBRyxDQUNuQyxZQUFZLEVBQ1osSUFBSSxFQUNKLElBQUksRUFDSixJQUFJLEVBQ0osSUFBSSxFQUNKLElBQUksRUFDSixHQUFHLEVBQ0gsT0FBTyxFQUNQLE9BQU8sRUFDUCxJQUFJLEVBQ0osSUFBSSxFQUNKLE9BQU8sRUFDUCxJQUFJLEVBQ0osSUFBSSxFQUNKLElBQUksRUFDSixJQUFJLEVBQ0osSUFBSSxFQUNKLElBQUksQ0FDTDs7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpRUFBZTtFQUNiQyxJQUFJLEVBQUUsYUFBYTtFQUNuQkMsVUFBVSxFQUFFO0lBQ1ZaLFlBQVksRUFBWkEsdUZBQVk7SUFDWkUsV0FBVyxFQUFYQSxxRkFBV0E7RUFDYixDQUFDO0VBQ0RXLEtBQUssRUFBRTtJQUNMO0lBQ0FDLElBQUksRUFBRTtNQUNKQyxRQUFRLEVBQUUsSUFBSTtNQUNkQyxJQUFJLEVBQUVDO0lBQ1IsQ0FBQztJQUNEQyxVQUFVLEVBQUU7TUFDVkgsUUFBUSxFQUFFLEtBQUs7TUFDZixXQUFTLFNBQUFJLFNBQUE7UUFBQSxPQUFNLEVBQUU7TUFBQTtJQUNuQixDQUFDO0lBQ0Q7SUFDQUMsS0FBSyxFQUFFO01BQ0xMLFFBQVEsRUFBRSxJQUFJO01B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LElBQUksQ0FBQyxDQUFDO01BQ1QsSUFBSThDLGFBQWEsQ0FBQ0UsVUFBVSxDQUFDLE1BQU0sQ0FBQyxFQUFFO1FBQ3BDLGtDQUFBNUMsTUFBQSxDQUFrQ3FDLE1BQU07TUFDMUMsQ0FBQyxNQUFNLElBQUlLLGFBQWEsQ0FBQ0UsVUFBVSxDQUFDLE1BQU0sQ0FBQyxFQUFFO1FBQzNDLGlDQUFBNUMsTUFBQSxDQUFpQ3FDLE1BQU07TUFDekM7SUFDRjtJQUVBLE9BQU9BLE1BQU07RUFDZixDQUFDLENBQUMsQ0FBQ2YsT0FBTyxDQUFDLENBQUMsQ0FBQ08sSUFBSSxDQUFDLEVBQUUsQ0FBQztFQUVyQixPQUFPO0lBQUV0RSxPQUFPLEVBQVBBO0VBQVEsQ0FBQztBQUNwQixDQUFDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9jb21wb25lbnRzL3JpY2hfY29udGVudC9yaWNoX2NvbnRlbnQuanN4PzliMTYiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdW5lc2NhcGUsIGZsYXR0ZW5EZWVwIH0gZnJvbSAnbG9kYXNoJ1xuaW1wb3J0IHsgZ2V0VGFnTmFtZSwgcHJvY2Vzc1RleHRGb3JFbW9qaSwgZ2V0QXR0cnMgfSBmcm9tICdzcmMvc2VydmljZXMvaHRtbF9jb252ZXJ0ZXIvdXRpbGl0eS5zZXJ2aWNlLmpzJ1xuaW1wb3J0IHsgY29udmVydEh0bWxUb1RyZWUgfSBmcm9tICdzcmMvc2VydmljZXMvaHRtbF9jb252ZXJ0ZXIvaHRtbF90cmVlX2NvbnZlcnRlci5zZXJ2aWNlLmpzJ1xuaW1wb3J0IHsgY29udmVydEh0bWxUb0xpbmVzIH0gZnJvbSAnc3JjL3NlcnZpY2VzL2h0bWxfY29udmVydGVyL2h0bWxfbGluZV9jb252ZXJ0ZXIuc2VydmljZS5qcydcbmltcG9ydCBTdGlsbEltYWdlIGZyb20gJ3NyYy9jb21wb25lbnRzL3N0aWxsLWltYWdlL3N0aWxsLWltYWdlLnZ1ZSdcbmltcG9ydCBNZW50aW9uc0xpbmUsIHsgTUVOVElPTlNfTElNSVQgfSBmcm9tICdzcmMvY29tcG9uZW50cy9tZW50aW9uc19saW5lL21lbnRpb25zX2xpbmUudnVlJ1xuaW1wb3J0IEhhc2h0YWdMaW5rIGZyb20gJ3NyYy9jb21wb25lbnRzL2hhc2h0YWdfbGluay9oYXNodGFnX2xpbmsudnVlJ1xuXG5pbXBvcnQgJy4vcmljaF9jb250ZW50LnNjc3MnXG5cbmNvbnN0IE1BWUJFX0xJTkVfQlJFQUtJTkdfRUxFTUVOVFMgPSBbXG4gICdibG9ja3F1b3RlJyxcbiAgJ2JyJyxcbiAgJ2hyJyxcbiAgJ3VsJyxcbiAgJ29sJyxcbiAgJ2xpJyxcbiAgJ3AnLFxuICAndGFibGUnLFxuICAndGJvZHknLFxuICAndGQnLFxuICAndGgnLFxuICAndGhlYWQnLFxuICAndHInLFxuICAnaDEnLFxuICAnaDInLFxuICAnaDMnLFxuICAnaDQnLFxuICAnaDUnXG5dXG5cbi8qKlxuICogUmljaENvbnRlbnQsIFRoZSDDnGJlci1wb3dlcmVkIGNvbXBvbmVudCBmb3IgcmVuZGVyaW5nIFBvc3QgSFRNTC5cbiAqXG4gKiBUaGlzIHRha2VzIHBvc3QgSFRNTCBhbmQgZG9lcyBtdWx0aXBsZSB0aGluZ3MgdG8gaXQ6XG4gKiAtIEdyb3VwcyBhbGwgbWVudGlvbnMgaW50byA8TWVudGlvbnNMaW5lPiwgdGhpcyBhZmZlY3RzIGFsbCBtZW50aW9ucyByZWdhcmRsZXNcbiAqICAgb2Ygd2hlcmUgdGhleSBhcmUgKGJlZ2lubmluZy9taWRkbGUvZW5kKSwgZXZlbiBzaW5nbGUgbWVudGlvbnMgYXJlIGNvbnZlcnRlZFxuICogICB0byBhIDxNZW50aW9uc0xpbmU+IGNvbnRhaW5pbmcgc2luZ2xlIDxNZW50aW9uTGluaz4uXG4gKiAtIFJlcGxhY2VzIGVtb2ppIHNob3J0Y29kZXMgd2l0aCA8U3RpbGxJbWFnZT4nZCBpbWFnZXMuXG4gKlxuICogVGhlcmUgYXJlIHR3byBwcm9ibGVtcyB3aXRoIHRoaXMgY29tcG9uZW50J3MgYXJjaGl0ZWN0dXJlOlxuICogMS4gUGFyc2luZyBIVE1MIGFuZCByZW5kZXJpbmcgYXJlIGluc2VwYXJhYmxlLiBBdHRlbXB0cyB0byBzZXBhcmF0ZSB0aGUgdHdvXG4gKiAgICBwcm92ZW4gdG8gYmUgYSBtYXNzaXZlIG92ZXJjb21wbGljYXRpb24gZHVlIHRvIGFtb3VudCBvZiB0aGluZ3MgZG9uZSBoZXJlLlxuICogMi4gV2UgbmVlZCB0byBvdXRwdXQgYm90aCByZW5kZXIgYW5kIHNvbWUgZXh0cmEgZGF0YSwgd2hpY2ggc2VlbXMgdG8gYmUgaW1wLVxuICogICAgcG9zc2libGUgaW4gdnVlLiBDdXJyZW50IHNvbHV0aW9uIGlzIHRvIGVtaXQgJ3BhcnNlUmVhZHknIGV2ZW50IHdoZW4gcGFyc2luZ1xuICogICAgaXMgZG9uZSB3aXRoaW4gcmVuZGVyKCkgZnVuY3Rpb24uXG4gKlxuICogQXBhcnQgZnJvbSB0aGF0IG9uZSBzbWFsbCBoaWNjdXAgd2l0aCBlbWl0IGluIHJlbmRlciB0aGlzIF9zaG91bGRfIGJlIHZ1ZTMtcmVhZHlcbiAqL1xuZXhwb3J0IGRlZmF1bHQge1xuICBuYW1lOiAnUmljaENvbnRlbnQnLFxuICBjb21wb25lbnRzOiB7XG4gICAgTWVudGlvbnNMaW5lLFxuICAgIEhhc2h0YWdMaW5rXG4gIH0sXG4gIHByb3BzOiB7XG4gICAgLy8gT3JpZ2luYWwgaHRtbCBjb250ZW50XG4gICAgaHRtbDoge1xuICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgICB0eXBlOiBTdHJpbmdcbiAgICB9LFxuICAgIGF0dGVudGlvbnM6IHtcbiAgICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICAgIGRlZmF1bHQ6ICgpID0+IFtdXG4gICAgfSxcbiAgICAvLyBFbW9qaSBvYmplY3QsIGFzIGluIHN0YXR1cy5lbW9qaXMsIG5vdGUgdGhlIFwic1wiIGF0IHRoZSBlbmQuLi5cbiAgICBlbW9qaToge1xuICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgICB0eXBlOiBBcnJheVxuICAgIH0sXG4gICAgLy8gV2hldGhlciB0byBoYW5kbGUgbGlua3Mgb3Igbm90IChwb3N0czogeWVzLCBldmVyeXRoaW5nIGVsc2U6IG5vKVxuICAgIGhhbmRsZUxpbmtzOiB7XG4gICAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgICB0eXBlOiBCb29sZWFuLFxuICAgICAgZGVmYXVsdDogZmFsc2VcbiAgICB9LFxuICAgIC8vIE1lbWUgYXJyb3dzXG4gICAgZ3JlZW50ZXh0OiB7XG4gICAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgICB0eXBlOiBCb29sZWFuLFxuICAgICAgZGVmYXVsdDogZmFsc2VcbiAgICB9XG4gIH0sXG4gIC8vIE5FVkVSIEVWRVIgVE9VQ0ggREFUQSBJTlNJREUgUkVOREVSXG4gIHJlbmRlciAoKSB7XG4gICAgLy8gUHJlLXByb2Nlc3MgSFRNTFxuICAgIGNvbnN0IHsgbmV3SHRtbDogaHRtbCB9ID0gcHJlUHJvY2Vzc1BlckxpbmUodGhpcy5odG1sLCB0aGlzLmdyZWVudGV4dClcbiAgICBsZXQgY3VycmVudE1lbnRpb25zID0gbnVsbCAvLyBDdXJyZW50IGNoYWluIG9mIG1lbnRpb25zLCB3ZSBncm91cCBhbGwgbWVudGlvbnMgdG9nZXRoZXJcbiAgICAvLyBUaGlzIGlzIHVzZWQgdG8gcmVjb3ZlciBzcGFjaW5nIHJlbW92ZWQgd2hlbiBwYXJzaW5nIG1lbnRpb25zXG4gICAgbGV0IGxhc3RTcGFjaW5nID0gJydcblxuICAgIGNvbnN0IGxhc3RUYWdzID0gW10gLy8gVGFncyB0aGF0IGFwcGVhciBhdCB0aGUgZW5kIG9mIHBvc3QgYm9keVxuICAgIGNvbnN0IHdyaXR0ZW5NZW50aW9ucyA9IFtdIC8vIEFsbCBtZW50aW9ucyB0aGF0IGFwcGVhciBpbiBwb3N0IGJvZHlcbiAgICBjb25zdCBpbnZpc2libGVNZW50aW9ucyA9IFtdIC8vIEFsbCBtZW50aW9ucyB0aGF0IGdvIGJleW9uZCB0aGUgbGltaXRlciAoc2VlIE1lbnRpb25zTGluZSlcbiAgICAvLyB0byBjb2xsYXBzZSB0b28gbWFueSBtZW50aW9ucyBpbiBhIHJvd1xuICAgIGNvbnN0IHdyaXR0ZW5UYWdzID0gW10gLy8gQWxsIHRhZ3MgdGhhdCBhcHBlYXIgaW4gcG9zdCBib2R5XG4gICAgLy8gdW5pcXVlIGluZGV4IGZvciB2dWUgXCJ0YWdcIiBwcm9wZXJ0eVxuICAgIGxldCBtZW50aW9uSW5kZXggPSAwXG4gICAgbGV0IHRhZ3NJbmRleCA9IDBcblxuICAgIGNvbnN0IHJlbmRlckltYWdlID0gKHRhZykgPT4ge1xuICAgICAgcmV0dXJuIDxTdGlsbEltYWdlXG4gICAgICAgIHsuLi5nZXRBdHRycyh0YWcpfVxuICAgICAgICBjbGFzcz1cImltZ1wiXG4gICAgICAvPlxuICAgIH1cblxuICAgIGNvbnN0IHJlbmRlckhhc2h0YWcgPSAoYXR0cnMsIGNoaWxkcmVuLCBlbmNvdW50ZXJlZFRleHRSZXZlcnNlKSA9PiB7XG4gICAgICBjb25zdCB7IGluZGV4LCAuLi5saW5rRGF0YSB9ID0gZ2V0TGlua0RhdGEoYXR0cnMsIGNoaWxkcmVuLCB0YWdzSW5kZXgrKylcbiAgICAgIHdyaXR0ZW5UYWdzLnB1c2gobGlua0RhdGEpXG4gICAgICBpZiAoIWVuY291bnRlcmVkVGV4dFJldmVyc2UpIHtcbiAgICAgICAgbGFzdFRhZ3MucHVzaChsaW5rRGF0YSlcbiAgICAgIH1cbiAgICAgIGNvbnN0IHsgdXJsLCB0YWcsIGNvbnRlbnQgfSA9IGxpbmtEYXRhXG4gICAgICByZXR1cm4gPEhhc2h0YWdMaW5rIHVybD17dXJsfSB0YWc9e3RhZ30gY29udGVudD17Y29udGVudH0vPlxuICAgIH1cblxuICAgIGNvbnN0IHJlbmRlck1lbnRpb24gPSAoYXR0cnMsIGNoaWxkcmVuKSA9PiB7XG4gICAgICBjb25zdCBsaW5rRGF0YSA9IGdldExpbmtEYXRhKGF0dHJzLCBjaGlsZHJlbiwgbWVudGlvbkluZGV4KyspXG4gICAgICBsaW5rRGF0YS5ub3RpZnlpbmcgPSB0aGlzLmF0dGVudGlvbnMuc29tZShhID0+IGEuc3RhdHVzbmV0X3Byb2ZpbGVfdXJsID09PSBsaW5rRGF0YS51cmwpXG4gICAgICB3cml0dGVuTWVudGlvbnMucHVzaChsaW5rRGF0YSlcbiAgICAgIGlmIChjdXJyZW50TWVudGlvbnMgPT09IG51bGwpIHtcbiAgICAgICAgY3VycmVudE1lbnRpb25zID0gW11cbiAgICAgIH1cbiAgICAgIGN1cnJlbnRNZW50aW9ucy5wdXNoKGxpbmtEYXRhKVxuICAgICAgaWYgKGN1cnJlbnRNZW50aW9ucy5sZW5ndGggPiBNRU5USU9OU19MSU1JVCkge1xuICAgICAgICBpbnZpc2libGVNZW50aW9ucy5wdXNoKGxpbmtEYXRhKVxuICAgICAgfVxuICAgICAgaWYgKGN1cnJlbnRNZW50aW9ucy5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgcmV0dXJuIDxNZW50aW9uc0xpbmUgbWVudGlvbnM9eyBjdXJyZW50TWVudGlvbnMgfSAvPlxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuICcnXG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUHJvY2Vzc29yIHRvIHVzZSB3aXRoIGh0bWxfdHJlZV9jb252ZXJ0ZXJcbiAgICBjb25zdCBwcm9jZXNzSXRlbSA9IChpdGVtLCBpbmRleCwgYXJyYXksIHdoYXQpID0+IHtcbiAgICAgIC8vIEhhbmRsZSB0ZXh0IG5vZGVzIC0ganVzdCBhZGQgZW1vamlcbiAgICAgIGlmICh0eXBlb2YgaXRlbSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgY29uc3QgZW1wdHlUZXh0ID0gaXRlbS50cmltKCkgPT09ICcnXG4gICAgICAgIGlmIChpdGVtLmluY2x1ZGVzKCdcXG4nKSkge1xuICAgICAgICAgIGN1cnJlbnRNZW50aW9ucyA9IG51bGxcbiAgICAgICAgfVxuICAgICAgICBpZiAoZW1wdHlUZXh0KSB7XG4gICAgICAgICAgLy8gZG9uJ3QgaW5jbHVkZSBzcGFjZXMgd2hlbiBwcm9jZXNzaW5nIG1lbnRpb25zIC0gd2UnbGwgaW5jbHVkZSB0aGVtXG4gICAgICAgICAgLy8gaW4gTWVudGlvbnNMaW5lXG4gICAgICAgICAgbGFzdFNwYWNpbmcgPSBpdGVtXG4gICAgICAgICAgLy8gRG9uJ3QgcmVtb3ZlIGxhc3Qgc3BhY2UgaW4gYSBjb250YWluZXIgKGZpeGVzIHBvYXN0IG1lbnRpb25zKVxuICAgICAgICAgIHJldHVybiAoaW5kZXggIT09IGFycmF5Lmxlbmd0aCAtIDEpICYmIChjdXJyZW50TWVudGlvbnMgIT09IG51bGwpID8gaXRlbS50cmltKCkgOiBpdGVtXG4gICAgICAgIH1cblxuICAgICAgICBjdXJyZW50TWVudGlvbnMgPSBudWxsXG4gICAgICAgIGlmIChpdGVtLmluY2x1ZGVzKCc6JykpIHtcbiAgICAgICAgICBpdGVtID0gWycnLCBwcm9jZXNzVGV4dEZvckVtb2ppKFxuICAgICAgICAgICAgaXRlbSxcbiAgICAgICAgICAgIHRoaXMuZW1vamksXG4gICAgICAgICAgICAoeyBzaG9ydGNvZGUsIHVybCB9KSA9PiB7XG4gICAgICAgICAgICAgIHJldHVybiA8U3RpbGxJbWFnZVxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZW1vamkgaW1nXCJcbiAgICAgICAgICAgICAgICBzcmM9e3VybH1cbiAgICAgICAgICAgICAgICB0aXRsZT17YDoke3Nob3J0Y29kZX06YH1cbiAgICAgICAgICAgICAgICBhbHQ9e2A6JHtzaG9ydGNvZGV9OmB9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgKV1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gaXRlbVxuICAgICAgfVxuXG4gICAgICAvLyBIYW5kbGUgdGFnIG5vZGVzXG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShpdGVtKSkge1xuICAgICAgICBjb25zdCBbb3BlbmVyLCBjaGlsZHJlbiwgY2xvc2VyXSA9IGl0ZW1cbiAgICAgICAgbGV0IFRhZyA9IGdldFRhZ05hbWUob3BlbmVyKVxuICAgICAgICBpZiAoVGFnLnRvTG93ZXJDYXNlKCkgPT09ICdzY3JpcHQnKSBUYWcgPSAnanMtZXhwbG9pdCdcbiAgICAgICAgaWYgKFRhZy50b0xvd2VyQ2FzZSgpID09PSAnc3R5bGUnKSBUYWcgPSAnY3NzLWV4cGxvaXQnXG4gICAgICAgIGNvbnN0IGZ1bGxBdHRycyA9IGdldEF0dHJzKG9wZW5lciwgKCkgPT4gdHJ1ZSlcbiAgICAgICAgY29uc3QgYXR0cnMgPSBnZXRBdHRycyhvcGVuZXIpXG4gICAgICAgIGNvbnN0IHByZXZpb3VzbHlNZW50aW9ucyA9IGN1cnJlbnRNZW50aW9ucyAhPT0gbnVsbFxuICAgICAgICAvKiBEdXJpbmcgZ3JvdXBpbmcgb2YgbWVudGlvbnMgd2UgdHJpbSBhbGwgdGhlIGVtcHR5IHRleHQgZWxlbWVudHNcbiAgICAgICAgICogVGhpcyBwYWRkaW5nIGlzIGFkZGVkIHRvIHJlY292ZXIgbGFzdCBzcGFjZSByZW1vdmVkIGluIGNhc2VcbiAgICAgICAgICogd2UgaGF2ZSBhIHRhZyByaWdodCBuZXh0IHRvIG1lbnRpb25zXG4gICAgICAgICAqL1xuICAgICAgICBjb25zdCBtZW50aW9uc0xpbmVQYWRkaW5nID1cbiAgICAgICAgICAgICAgLy8gUGFkZGluZyBpcyBvbmx5IG5lZWRlZCBpZiB3ZSBqdXN0IGZpbmlzaGVkIHBhcnNpbmcgbWVudGlvbnNcbiAgICAgICAgICAgICAgcHJldmlvdXNseU1lbnRpb25zICYmXG4gICAgICAgICAgICAgIC8vIERvbid0IGFkZCBwYWRkaW5nIGlmIGNvbnRlbnQgaXMgc3RyaW5nIGFuZCBoYXMgcGFkZGluZyBhbHJlYWR5XG4gICAgICAgICAgICAgICEoY2hpbGRyZW4gJiYgdHlwZW9mIGNoaWxkcmVuWzBdID09PSAnc3RyaW5nJyAmJiBjaGlsZHJlblswXS5tYXRjaCgvXlxccy8pKVxuICAgICAgICAgICAgICAgID8gbGFzdFNwYWNpbmdcbiAgICAgICAgICAgICAgICA6ICcnXG4gICAgICAgIGlmIChNQVlCRV9MSU5FX0JSRUFLSU5HX0VMRU1FTlRTLmluY2x1ZGVzKFRhZykpIHtcbiAgICAgICAgICAvLyBhbGwgdGhlIGVsZW1lbnRzIHRoYXQgY2FuIGNhdXNlIGEgbGluZSBjaGFuZ2VcbiAgICAgICAgICBjdXJyZW50TWVudGlvbnMgPSBudWxsXG4gICAgICAgIH0gZWxzZSBpZiAoVGFnID09PSAnaW1nJykgeyAvLyByZXBsYWNlIGltYWdlcyB3aXRoIFN0aWxsSW1hZ2VcbiAgICAgICAgICByZXR1cm4gWycnLCBbbWVudGlvbnNMaW5lUGFkZGluZywgcmVuZGVySW1hZ2Uob3BlbmVyKV0sICcnXVxuICAgICAgICB9IGVsc2UgaWYgKFRhZyA9PT0gJ2EnICYmIHRoaXMuaGFuZGxlTGlua3MpIHsgLy8gcmVwbGFjZSBtZW50aW9ucyB3aXRoIE1lbnRpb25MaW5rXG4gICAgICAgICAgaWYgKGZ1bGxBdHRycy5jbGFzcyAmJiBmdWxsQXR0cnMuY2xhc3MuaW5jbHVkZXMoJ21lbnRpb24nKSkge1xuICAgICAgICAgICAgLy8gSGFuZGxpbmcgbWVudGlvbnMgaGVyZVxuICAgICAgICAgICAgcmV0dXJuIHJlbmRlck1lbnRpb24oYXR0cnMsIGNoaWxkcmVuKVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjdXJyZW50TWVudGlvbnMgPSBudWxsXG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2UgaWYgKFRhZyA9PT0gJ3NwYW4nKSB7XG4gICAgICAgICAgaWYgKHRoaXMuaGFuZGxlTGlua3MgJiYgZnVsbEF0dHJzLmNsYXNzICYmIGZ1bGxBdHRycy5jbGFzcy5pbmNsdWRlcygnaC1jYXJkJykpIHtcbiAgICAgICAgICAgIHJldHVybiBbJycsIGNoaWxkcmVuLm1hcChwcm9jZXNzSXRlbSksICcnXVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChjaGlsZHJlbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgICcnLFxuICAgICAgICAgICAgW1xuICAgICAgICAgICAgICBtZW50aW9uc0xpbmVQYWRkaW5nLFxuICAgICAgICAgICAgICBbb3BlbmVyLCBjaGlsZHJlbi5tYXAocHJvY2Vzc0l0ZW0pLCBjbG9zZXJdXG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgJydcbiAgICAgICAgICBdXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuIFsnJywgW21lbnRpb25zTGluZVBhZGRpbmcsIGl0ZW1dLCAnJ11cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFByb2Nlc3NvciBmb3IgYmFjayBkaXJlY3Rpb24gKGZvciBmaW5kaW5nIFwibGFzdFwiIHN0dWZmLCBqdXN0IGVhc2llciB0aGlzIHdheSlcbiAgICBsZXQgZW5jb3VudGVyZWRUZXh0UmV2ZXJzZSA9IGZhbHNlXG4gICAgY29uc3QgcHJvY2Vzc0l0ZW1SZXZlcnNlID0gKGl0ZW0sIGluZGV4LCBhcnJheSwgd2hhdCkgPT4ge1xuICAgICAgLy8gSGFuZGxlIHRleHQgbm9kZXMgLSBqdXN0IGFkZCBlbW9qaVxuICAgICAgaWYgKHR5cGVvZiBpdGVtID09PSAnc3RyaW5nJykge1xuICAgICAgICBjb25zdCBlbXB0eVRleHQgPSBpdGVtLnRyaW0oKSA9PT0gJydcbiAgICAgICAgaWYgKGVtcHR5VGV4dCkgcmV0dXJuIGl0ZW1cbiAgICAgICAgaWYgKCFlbmNvdW50ZXJlZFRleHRSZXZlcnNlKSBlbmNvdW50ZXJlZFRleHRSZXZlcnNlID0gdHJ1ZVxuICAgICAgICByZXR1cm4gdW5lc2NhcGUoaXRlbSlcbiAgICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShpdGVtKSkge1xuICAgICAgICAvLyBIYW5kbGUgdGFnIG5vZGVzXG4gICAgICAgIGNvbnN0IFtvcGVuZXIsIGNoaWxkcmVuXSA9IGl0ZW1cbiAgICAgICAgY29uc3QgVGFnID0gb3BlbmVyID09PSAnJyA/ICcnIDogZ2V0VGFnTmFtZShvcGVuZXIpXG4gICAgICAgIHN3aXRjaCAoVGFnKSB7XG4gICAgICAgICAgY2FzZSAnYSc6IHsgLy8gcmVwbGFjZSBtZW50aW9ucyB3aXRoIE1lbnRpb25MaW5rXG4gICAgICAgICAgICBpZiAoIXRoaXMuaGFuZGxlTGlua3MpIGJyZWFrXG4gICAgICAgICAgICBjb25zdCBmdWxsQXR0cnMgPSBnZXRBdHRycyhvcGVuZXIsICgpID0+IHRydWUpXG4gICAgICAgICAgICBjb25zdCBhdHRycyA9IGdldEF0dHJzKG9wZW5lciwgKCkgPT4gdHJ1ZSlcbiAgICAgICAgICAgIC8vIHNob3VsZCBvbmx5IGJlIHRoaXNcbiAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgKGZ1bGxBdHRycy5jbGFzcyAmJiBmdWxsQXR0cnMuY2xhc3MuaW5jbHVkZXMoJ2hhc2h0YWcnKSkgfHwgLy8gUGxlcm9tYSBzdHlsZVxuICAgICAgICAgICAgICAgIChmdWxsQXR0cnMucmVsID09PSAndGFnJykgLy8gTWFzdG9kb24gc3R5bGVcbiAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICByZXR1cm4gcmVuZGVySGFzaHRhZyhhdHRycywgY2hpbGRyZW4sIGVuY291bnRlcmVkVGV4dFJldmVyc2UpXG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBhdHRycy50YXJnZXQgPSAnX2JsYW5rJ1xuICAgICAgICAgICAgICBjb25zdCBuZXdDaGlsZHJlbiA9IFsuLi5jaGlsZHJlbl0ucmV2ZXJzZSgpLm1hcChwcm9jZXNzSXRlbVJldmVyc2UpLnJldmVyc2UoKVxuXG4gICAgICAgICAgICAgIHJldHVybiA8YSB7Li4uYXR0cnN9PlxuICAgICAgICAgICAgICAgIHsgbmV3Q2hpbGRyZW4gfVxuICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIGNhc2UgJyc6XG4gICAgICAgICAgICByZXR1cm4gWy4uLmNoaWxkcmVuXS5yZXZlcnNlKCkubWFwKHByb2Nlc3NJdGVtUmV2ZXJzZSkucmV2ZXJzZSgpXG4gICAgICAgIH1cblxuICAgICAgICAvLyBSZW5kZXIgdGFnIGFzIGlzXG4gICAgICAgIGlmIChjaGlsZHJlbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgY29uc3QgbmV3Q2hpbGRyZW4gPSBBcnJheS5pc0FycmF5KGNoaWxkcmVuKVxuICAgICAgICAgICAgPyBbLi4uY2hpbGRyZW5dLnJldmVyc2UoKS5tYXAocHJvY2Vzc0l0ZW1SZXZlcnNlKS5yZXZlcnNlKClcbiAgICAgICAgICAgIDogY2hpbGRyZW5cbiAgICAgICAgICByZXR1cm4gPFRhZyB7Li4uZ2V0QXR0cnMob3BlbmVyKX0+XG4gICAgICAgICAgICB7IG5ld0NoaWxkcmVuIH1cbiAgICAgICAgICA8L1RhZz5cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gPFRhZy8+XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiBpdGVtXG4gICAgfVxuXG4gICAgY29uc3QgcGFzczEgPSBjb252ZXJ0SHRtbFRvVHJlZShodG1sKS5tYXAocHJvY2Vzc0l0ZW0pXG4gICAgY29uc3QgcGFzczIgPSBbLi4ucGFzczFdLnJldmVyc2UoKS5tYXAocHJvY2Vzc0l0ZW1SZXZlcnNlKS5yZXZlcnNlKClcbiAgICAvLyBETyBOT1QgVVNFIFNMT1RTIHRoZXkgY2F1c2UgYSByZS1yZW5kZXIgZmVlZGJhY2sgbG9vcCBoZXJlLlxuICAgIC8vIHNsb3RzIHVwZGF0ZWQgLT4gcmVyZW5kZXIgLT4gZW1pdCAtPiB1cGRhdGUgdXAgdGhlIHRyZWUgLT4gcmVyZW5kZXIgLT4gLi4uXG4gICAgLy8gYXQgbGVhc3QgdW50aWwgdnVlMz9cbiAgICBjb25zdCByZXN1bHQgPSA8c3BhbiBjbGFzcz1cIlJpY2hDb250ZW50XCI+XG4gICAgICB7IHBhc3MyIH1cbiAgICA8L3NwYW4+XG5cbiAgICBjb25zdCBldmVudCA9IHtcbiAgICAgIGxhc3RUYWdzLFxuICAgICAgd3JpdHRlbk1lbnRpb25zLFxuICAgICAgd3JpdHRlblRhZ3MsXG4gICAgICBpbnZpc2libGVNZW50aW9uc1xuICAgIH1cblxuICAgIC8vIERPIE5PVCBNT1ZFIFRPIFVQREFURS4gQkFEIElERUEuXG4gICAgdGhpcy4kZW1pdCgncGFyc2VSZWFkeScsIGV2ZW50KVxuXG4gICAgcmV0dXJuIHJlc3VsdFxuICB9XG59XG5cbmNvbnN0IGdldExpbmtEYXRhID0gKGF0dHJzLCBjaGlsZHJlbiwgaW5kZXgpID0+IHtcbiAgY29uc3Qgc3RyaXBUYWdzID0gKGl0ZW0pID0+IHtcbiAgICBpZiAodHlwZW9mIGl0ZW0gPT09ICdzdHJpbmcnKSB7XG4gICAgICByZXR1cm4gaXRlbVxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gaXRlbVsxXS5tYXAoc3RyaXBUYWdzKS5qb2luKCcnKVxuICAgIH1cbiAgfVxuICBjb25zdCB0ZXh0Q29udGVudCA9IGNoaWxkcmVuLm1hcChzdHJpcFRhZ3MpLmpvaW4oJycpXG4gIHJldHVybiB7XG4gICAgaW5kZXgsXG4gICAgdXJsOiBhdHRycy5ocmVmLFxuICAgIHRhZzogYXR0cnNbJ2RhdGEtdGFnJ10sXG4gICAgY29udGVudDogZmxhdHRlbkRlZXAoY2hpbGRyZW4pLmpvaW4oJycpLFxuICAgIHRleHRDb250ZW50XG4gIH1cbn1cblxuLyoqIFByZS1wcm9jZXNzaW5nIEhUTUxcbiAqXG4gKiBDdXJyZW50bHkgdGhpcyBkb2VzIG9uZSB0aGluZzpcbiAqIC0gYWRkIGdyZWVuL2N5YW50ZXh0aW5nXG4gKlxuICogQHBhcmFtIHtTdHJpbmd9IGh0bWwgLSByYXcgSFRNTCB0byBwcm9jZXNzXG4gKiBAcGFyYW0ge0Jvb2xlYW59IGdyZWVudGV4dCAtIHdoZXRoZXIgdG8gZW5hYmxlIGdyZWVudGV4dGluZyBvciBub3RcbiAqL1xuZXhwb3J0IGNvbnN0IHByZVByb2Nlc3NQZXJMaW5lID0gKGh0bWwsIGdyZWVudGV4dCkgPT4ge1xuICBjb25zdCBncmVlbnRleHRIYW5kbGUgPSBuZXcgU2V0KFsncCcsICdkaXYnXSlcblxuICBjb25zdCBsaW5lcyA9IGNvbnZlcnRIdG1sVG9MaW5lcyhodG1sKVxuICBjb25zdCBuZXdIdG1sID0gbGluZXMucmV2ZXJzZSgpLm1hcCgoaXRlbSwgaW5kZXgsIGFycmF5KSA9PiB7XG4gICAgaWYgKCFpdGVtLnRleHQpIHJldHVybiBpdGVtXG4gICAgY29uc3Qgc3RyaW5nID0gaXRlbS50ZXh0XG5cbiAgICAvLyBHcmVlbnRleHQgc3R1ZmZcbiAgICBpZiAoXG4gICAgICAvLyBPbmx5IGlmIGdyZWVudGV4dCBpcyBlbmdhZ2VkXG4gICAgICBncmVlbnRleHQgJiZcbiAgICAgICAgLy8gT25seSBoYW5kbGUgcCdzIGFuZCBkaXZzLiBEb24ndCB3YW50IHRvIGFmZmVjdCBibG9ja3F1b3RlcywgY29kZSBldGNcbiAgICAgICAgaXRlbS5sZXZlbC5ldmVyeShsID0+IGdyZWVudGV4dEhhbmRsZS5oYXMobCkpICYmXG4gICAgICAgIC8vIE9ubHkgaWYgbGluZSBiZWdpbnMgd2l0aCAnPicgb3IgJzwnXG4gICAgICAgIChzdHJpbmcuaW5jbHVkZXMoJyZndDsnKSB8fCBzdHJpbmcuaW5jbHVkZXMoJyZsdDsnKSlcbiAgICApIHtcbiAgICAgIGNvbnN0IGNsZWFuZWRTdHJpbmcgPSBzdHJpbmcucmVwbGFjZSgvPFtePl0rPz4vZ2ksICcnKSAvLyByZW1vdmUgYWxsIHRhZ3NcbiAgICAgICAgLnJlcGxhY2UoL0BcXHcrL2dpLCAnJykgLy8gcmVtb3ZlIG1lbnRpb25zIChldmVuIGZhaWxlZCBvbmVzKVxuICAgICAgICAudHJpbSgpXG4gICAgICBpZiAoY2xlYW5lZFN0cmluZy5zdGFydHNXaXRoKCcmZ3Q7JykpIHtcbiAgICAgICAgcmV0dXJuIGA8c3BhbiBjbGFzcz0nZ3JlZW50ZXh0Jz4ke3N0cmluZ308L3NwYW4+YFxuICAgICAgfSBlbHNlIGlmIChjbGVhbmVkU3RyaW5nLnN0YXJ0c1dpdGgoJyZsdDsnKSkge1xuICAgICAgICByZXR1cm4gYDxzcGFuIGNsYXNzPSdjeWFudGV4dCc+JHtzdHJpbmd9PC9zcGFuPmBcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gc3RyaW5nXG4gIH0pLnJldmVyc2UoKS5qb2luKCcnKVxuXG4gIHJldHVybiB7IG5ld0h0bWwgfVxufVxuIl0sIm5hbWVzIjpbImdldFRhZ05hbWUiLCJwcm9jZXNzVGV4dEZvckVtb2ppIiwiZ2V0QXR0cnMiLCJjb252ZXJ0SHRtbFRvVHJlZSIsImNvbnZlcnRIdG1sVG9MaW5lcyIsIlN0aWxsSW1hZ2UiLCJNZW50aW9uc0xpbmUiLCJNRU5USU9OU19MSU1JVCIsIkhhc2h0YWdMaW5rIiwiX2lzU2xvdCIsInMiLCJPYmplY3QiLCJwcm90b3R5cGUiLCJ0b1N0cmluZyIsImNhbGwiLCJfaXNWTm9kZSIsIk1BWUJFX0xJTkVfQlJFQUtJTkdfRUxFTUVOVFMiLCJuYW1lIiwiY29tcG9uZW50cyIsInByb3BzIiwiaHRtbCIsInJlcXVpcmVkIiwidHlwZSIsIlN0cmluZyIsImF0dGVudGlvbnMiLCJfZGVmYXVsdCIsImVtb2ppIiwiQXJyYXkiLCJoYW5kbGVMaW5rcyIsIkJvb2xlYW4iLCJncmVlbnRleHQiLCJyZW5kZXIiLCJfdGhpcyIsIl9wcmVQcm9jZXNzUGVyTGluZSIsInByZVByb2Nlc3NQZXJMaW5lIiwibmV3SHRtbCIsImN1cnJlbnRNZW50aW9ucyIsImxhc3RTcGFjaW5nIiwibGFzdFRhZ3MiLCJ3cml0dGVuTWVudGlvbnMiLCJpbnZpc2libGVNZW50aW9ucyIsIndyaXR0ZW5UYWdzIiwibWVudGlvbkluZGV4IiwidGFnc0luZGV4IiwicmVuZGVySW1hZ2UiLCJ0YWciLCJfY3JlYXRlVk5vZGUiLCJfbWVyZ2VQcm9wcyIsInJlbmRlckhhc2h0YWciLCJhdHRycyIsImNoaWxkcmVuIiwiZW5jb3VudGVyZWRUZXh0UmV2ZXJzZSIsIl9nZXRMaW5rRGF0YSIsImdldExpbmtEYXRhIiwiaW5kZXgiLCJsaW5rRGF0YSIsIl9vYmplY3RXaXRob3V0UHJvcGVydGllcyIsIl9leGNsdWRlZCIsInB1c2giLCJ1cmwiLCJjb250ZW50IiwicmVuZGVyTWVudGlvbiIsIm5vdGlmeWluZyIsInNvbWUiLCJhIiwic3RhdHVzbmV0X3Byb2ZpbGVfdXJsIiwibGVuZ3RoIiwicHJvY2Vzc0l0ZW0iLCJpdGVtIiwiYXJyYXkiLCJ3aGF0IiwiZW1wdHlUZXh0IiwidHJpbSIsImluY2x1ZGVzIiwiX3JlZiIsInNob3J0Y29kZSIsImNvbmNhdCIsImlzQXJyYXkiLCJfaXRlbSIsIl9pdGVtMiIsIl9zbGljZWRUb0FycmF5Iiwib3BlbmVyIiwiY2xvc2VyIiwiVGFnIiwidG9Mb3dlckNhc2UiLCJmdWxsQXR0cnMiLCJwcmV2aW91c2x5TWVudGlvbnMiLCJtZW50aW9uc0xpbmVQYWRkaW5nIiwibWF0Y2giLCJtYXAiLCJ1bmRlZmluZWQiLCJwcm9jZXNzSXRlbVJldmVyc2UiLCJfdW5lc2NhcGUiLCJfaXRlbTMiLCJyZWwiLCJ0YXJnZXQiLCJuZXdDaGlsZHJlbiIsIl90b0NvbnN1bWFibGVBcnJheSIsInJldmVyc2UiLCJwYXNzMSIsInBhc3MyIiwicmVzdWx0IiwiZXZlbnQiLCIkZW1pdCIsInN0cmlwVGFncyIsImpvaW4iLCJ0ZXh0Q29udGVudCIsImhyZWYiLCJfZmxhdHRlbkRlZXAiLCJncmVlbnRleHRIYW5kbGUiLCJTZXQiLCJsaW5lcyIsInRleHQiLCJzdHJpbmciLCJsZXZlbCIsImV2ZXJ5IiwibCIsImhhcyIsImNsZWFuZWRTdHJpbmciLCJyZXBsYWNlIiwic3RhcnRzV2l0aCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/components/rich_content/rich_content.jsx\n");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js!./src/components/scope_selector/scope_selector.js?vue&type=script&lang=js":
/*!**************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js!./src/components/scope_selector/scope_selector.js?vue&type=script&lang=js ***!
\**************************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @fortawesome/fontawesome-svg-core */ \"./node_modules/@fortawesome/fontawesome-svg-core/index.mjs\");\n/* harmony import */ var _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @fortawesome/free-solid-svg-icons */ \"./node_modules/@fortawesome/free-solid-svg-icons/index.mjs\");\n\n\n_fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_0__.library.add(_fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_1__.faEnvelope, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_1__.faGlobe, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_1__.faLock, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_1__.faLockOpen);\nvar ScopeSelector = {\n props: ['showAll', 'userDefault', 'originalScope', 'initialScope', 'onScopeChange'],\n data: function data() {\n return {\n currentScope: this.initialScope\n };\n },\n computed: {\n showNothing: function showNothing() {\n return !this.showPublic && !this.showUnlisted && !this.showPrivate && !this.showDirect;\n },\n showPublic: function showPublic() {\n return this.originalScope !== 'direct' && this.shouldShow('public');\n },\n showUnlisted: function showUnlisted() {\n return this.originalScope !== 'direct' && this.shouldShow('unlisted');\n },\n showPrivate: function showPrivate() {\n return this.originalScope !== 'direct' && this.shouldShow('private');\n },\n showDirect: function showDirect() {\n return this.shouldShow('direct');\n },\n css: function css() {\n return {\n \"public\": {\n selected: this.currentScope === 'public'\n },\n unlisted: {\n selected: this.currentScope === 'unlisted'\n },\n \"private\": {\n selected: this.currentScope === 'private'\n },\n direct: {\n selected: this.currentScope === 'direct'\n }\n };\n }\n },\n methods: {\n shouldShow: function shouldShow(scope) {\n return this.showAll || this.currentScope === scope || this.originalScope === scope || this.userDefault === scope || scope === 'direct';\n },\n changeVis: function changeVis(scope) {\n this.currentScope = scope;\n this.onScopeChange && this.onScopeChange(scope);\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ScopeSelector);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL3NyYy9jb21wb25lbnRzL3Njb3BlX3NlbGVjdG9yL3Njb3BlX3NlbGVjdG9yLmpzP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUEyRDtBQU1qQjtBQUUxQ0EsMEVBQVcsQ0FDVEMseUVBQVUsRUFDVkcsc0VBQU8sRUFDUEYscUVBQU0sRUFDTkMseUVBQ0YsQ0FBQztBQUVELElBQU1HLGFBQWEsR0FBRztFQUNwQkMsS0FBSyxFQUFFLENBQ0wsU0FBUyxFQUNULGFBQWEsRUFDYixlQUFlLEVBQ2YsY0FBYyxFQUNkLGVBQWUsQ0FDaEI7RUFDREMsSUFBSSxXQUFBQSxLQUFBLEVBQUk7SUFDTixPQUFPO01BQ0xDLFlBQVksRUFBRSxJQUFJLENBQUNDO0lBQ3JCLENBQUM7RUFDSCxDQUFDO0VBQ0RDLFFBQVEsRUFBRTtJQUNSQyxXQUFXLFdBQUFBLFlBQUEsRUFBSTtNQUNiLE9BQU8sQ0FBQyxJQUFJLENBQUNDLFVBQVUsSUFBSSxDQUFDLElBQUksQ0FBQ0MsWUFBWSxJQUFJLENBQUMsSUFBSSxDQUFDQyxXQUFXLElBQUksQ0FBQyxJQUFJLENBQUNDLFVBQVU7SUFDeEYsQ0FBQztJQUNESCxVQUFVLFdBQUFBLFdBQUEsRUFBSTtNQUNaLE9BQU8sSUFBSSxDQUFDSSxhQUFhLEtBQUssUUFBUSxJQUFJLElBQUksQ0FBQ0MsVUFBVSxDQUFDLFFBQVEsQ0FBQztJQUNyRSxDQUFDO0lBQ0RKLFlBQVksV0FBQUEsYUFBQSxFQUFJO01BQ2QsT0FBTyxJQUFJLENBQUNHLGFBQWEsS0FBSyxRQUFRLElBQUksSUFBSSxDQUFDQyxVQUFVLENBQUMsVUFBVSxDQUFDO0lBQ3ZFLENBQUM7SUFDREgsV0FBVyxXQUFBQSxZQUFBLEVBQUk7TUFDYixPQUFPLElBQUksQ0FBQ0UsYUFBYSxLQUFLLFFBQVEsSUFBSSxJQUFJLENBQUNDLFVBQVUsQ0FBQyxTQUFTLENBQUM7SUFDdEUsQ0FBQztJQUNERixVQUFVLFdBQUFBLFdBQUEsRUFBSTtNQUNaLE9BQU8sSUFBSSxDQUFDRSxVQUFVLENBQUMsUUFBUSxDQUFDO0lBQ2xDLENBQUM7SUFDREMsR0FBRyxXQUFBQSxJQUFBLEVBQUk7TUFDTCxPQUFPO1FBQ0wsVUFBUTtVQUFFQyxRQUFRLEVBQUUsSUFBSSxDQUFDWCxZQUFZLEtBQUs7UUFBUyxDQUFDO1FBQ3BEWSxRQUFRLEVBQUU7VUFBRUQsUUFBUSxFQUFFLElBQUksQ0FBQ1gsWUFBWSxLQUFLO1FBQVcsQ0FBQztRQUN4RCxXQUFTO1VBQUVXLFFBQVEsRUFBRSxJQUFJLENBQUNYLFlBQVksS0FBSztRQUFVLENBQUM7UUFDdERhLE1BQU0sRUFBRTtVQUFFRixRQUFRLEVBQUUsSUFBSSxDQUFDWCxZQUFZLEtBQUs7UUFBUztNQUNyRCxDQUFDO0lBQ0g7RUFDRixDQUFDO0VBQ0RjLE9BQU8sRUFBRTtJQUNQTCxVQUFVLFdBQUFBLFdBQUVNLEtBQUssRUFBRTtNQUNqQixPQUFPLElBQUksQ0FBQ0MsT0FBTyxJQUNqQixJQUFJLENBQUNoQixZQUFZLEtBQUtlLEtBQUssSUFDM0IsSUFBSSxDQUFDUCxhQUFhLEtBQUtPLEtBQUssSUFDNUIsSUFBSSxDQUFDRSxXQUFXLEtBQUtGLEtBQUssSUFDMUJBLEtBQUssS0FBSyxRQUFRO0lBQ3RCLENBQUM7SUFDREcsU0FBUyxXQUFBQSxVQUFFSCxLQUFLLEVBQUU7TUFDaEIsSUFBSSxDQUFDZixZQUFZLEdBQUdlLEtBQUs7TUFDekIsSUFBSSxDQUFDSSxhQUFhLElBQUksSUFBSSxDQUFDQSxhQUFhLENBQUNKLEtBQUssQ0FBQztJQUNqRDtFQUNGO0FBQ0YsQ0FBQztBQUVELGlFQUFlbEIsYUFBYSIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvY29tcG9uZW50cy9zY29wZV9zZWxlY3Rvci9zY29wZV9zZWxlY3Rvci5qcz9iMjFiIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGxpYnJhcnkgfSBmcm9tICdAZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtc3ZnLWNvcmUnXG5pbXBvcnQge1xuICBmYUVudmVsb3BlLFxuICBmYUxvY2ssXG4gIGZhTG9ja09wZW4sXG4gIGZhR2xvYmVcbn0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZyZWUtc29saWQtc3ZnLWljb25zJ1xuXG5saWJyYXJ5LmFkZChcbiAgZmFFbnZlbG9wZSxcbiAgZmFHbG9iZSxcbiAgZmFMb2NrLFxuICBmYUxvY2tPcGVuXG4pXG5cbmNvbnN0IFNjb3BlU2VsZWN0b3IgPSB7XG4gIHByb3BzOiBbXG4gICAgJ3Nob3dBbGwnLFxuICAgICd1c2VyRGVmYXVsdCcsXG4gICAgJ29yaWdpbmFsU2NvcGUnLFxuICAgICdpbml0aWFsU2NvcGUnLFxuICAgICdvblNjb3BlQ2hhbmdlJ1xuICBdLFxuICBkYXRhICgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgY3VycmVudFNjb3BlOiB0aGlzLmluaXRpYWxTY29wZVxuICAgIH1cbiAgfSxcbiAgY29tcHV0ZWQ6IHtcbiAgICBzaG93Tm90aGluZyAoKSB7XG4gICAgICByZXR1cm4gIXRoaXMuc2hvd1B1YmxpYyAmJiAhdGhpcy5zaG93VW5saXN0ZWQgJiYgIXRoaXMuc2hvd1ByaXZhdGUgJiYgIXRoaXMuc2hvd0RpcmVjdFxuICAgIH0sXG4gICAgc2hvd1B1YmxpYyAoKSB7XG4gICAgICByZXR1cm4gdGhpcy5vcmlnaW5hbFNjb3BlICE9PSAnZGlyZWN0JyAmJiB0aGlzLnNob3VsZFNob3coJ3B1YmxpYycpXG4gICAgfSxcbiAgICBzaG93VW5saXN0ZWQgKCkge1xuICAgICAgcmV0dXJuIHRoaXMub3JpZ2luYWxTY29wZSAhPT0gJ2RpcmVjdCcgJiYgdGhpcy5zaG91bGRTaG93KCd1bmxpc3RlZCcpXG4gICAgfSxcbiAgICBzaG93UHJpdmF0ZSAoKSB7XG4gICAgICByZXR1cm4gdGhpcy5vcmlnaW5hbFNjb3BlICE9PSAnZGlyZWN0JyAmJiB0aGlzLnNob3VsZFNob3coJ3ByaXZhdGUnKVxuICAgIH0sXG4gICAgc2hvd0RpcmVjdCAoKSB7XG4gICAgICByZXR1cm4gdGhpcy5zaG91bGRTaG93KCdkaXJlY3QnKVxuICAgIH0sXG4gICAgY3NzICgpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHB1YmxpYzogeyBzZWxlY3RlZDogdGhpcy5jdXJyZW50U2NvcGUgPT09ICdwdWJsaWMnIH0sXG4gICAgICAgIHVubGlzdGVkOiB7IHNlbGVjdGVkOiB0aGlzLmN1cnJlbnRTY29wZSA9PT0gJ3VubGlzdGVkJyB9LFxuICAgICAgICBwcml2YXRlOiB7IHNlbGVjdGVkOiB0aGlzLmN1cnJlbnRTY29wZSA9PT0gJ3ByaXZhdGUnIH0sXG4gICAgICAgIGRpcmVjdDogeyBzZWxlY3RlZDogdGhpcy5jdXJyZW50U2NvcGUgPT09ICdkaXJlY3QnIH1cbiAgICAgIH1cbiAgICB9XG4gIH0sXG4gIG1ldGhvZHM6IHtcbiAgICBzaG91bGRTaG93IChzY29wZSkge1xuICAgICAgcmV0dXJuIHRoaXMuc2hvd0FsbCB8fFxuICAgICAgICB0aGlzLmN1cnJlbnRTY29wZSA9PT0gc2NvcGUgfHxcbiAgICAgICAgdGhpcy5vcmlnaW5hbFNjb3BlID09PSBzY29wZSB8fFxuICAgICAgICB0aGlzLnVzZXJEZWZhdWx0ID09PSBzY29wZSB8fFxuICAgICAgICBzY29wZSA9PT0gJ2RpcmVjdCdcbiAgICB9LFxuICAgIGNoYW5nZVZpcyAoc2NvcGUpIHtcbiAgICAgIHRoaXMuY3VycmVudFNjb3BlID0gc2NvcGVcbiAgICAgIHRoaXMub25TY29wZUNoYW5nZSAmJiB0aGlzLm9uU2NvcGVDaGFuZ2Uoc2NvcGUpXG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IFNjb3BlU2VsZWN0b3JcbiJdLCJuYW1lcyI6WyJsaWJyYXJ5IiwiZmFFbnZlbG9wZSIsImZhTG9jayIsImZhTG9ja09wZW4iLCJmYUdsb2JlIiwiYWRkIiwiU2NvcGVTZWxlY3RvciIsInByb3BzIiwiZGF0YSIsImN1cnJlbnRTY29wZSIsImluaXRpYWxTY29wZSIsImNvbXB1dGVkIiwic2hvd05vdGhpbmciLCJzaG93UHVibGljIiwic2hvd1VubGlzdGVkIiwic2hvd1ByaXZhdGUiLCJzaG93RGlyZWN0Iiwib3JpZ2luYWxTY29wZSIsInNob3VsZFNob3ciLCJjc3MiLCJzZWxlY3RlZCIsInVubGlzdGVkIiwiZGlyZWN0IiwibWV0aG9kcyIsInNjb3BlIiwic2hvd0FsbCIsInVzZXJEZWZhdWx0IiwiY2hhbmdlVmlzIiwib25TY29wZUNoYW5nZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./src/components/scope_selector/scope_selector.js?vue&type=script&lang=js\n");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js!./src/components/screen_reader_notice/screen_reader_notice.js?vue&type=script&lang=js":
/*!**************************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js!./src/components/screen_reader_notice/screen_reader_notice.js?vue&type=script&lang=js ***!
\**************************************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\nvar ScreenReaderNotice = {\n props: {\n ariaLive: {\n type: String,\n defualt: 'assertive'\n }\n },\n data: function data() {\n return {\n currentText: ''\n };\n },\n methods: {\n announce: function announce(text) {\n var _this = this;\n this.currentText = text;\n setTimeout(function () {\n _this.currentText = '';\n }, 1000);\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ScreenReaderNotice);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL3NyYy9jb21wb25lbnRzL3NjcmVlbl9yZWFkZXJfbm90aWNlL3NjcmVlbl9yZWFkZXJfbm90aWNlLmpzP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQSxJQUFNQSxrQkFBa0IsR0FBRztFQUN6QkMsS0FBSyxFQUFFO0lBQ0xDLFFBQVEsRUFBRTtNQUNSQyxJQUFJLEVBQUVDLE1BQU07TUFDWkMsT0FBTyxFQUFFO0lBQ1g7RUFDRixDQUFDO0VBQ0RDLElBQUksV0FBQUEsS0FBQSxFQUFJO0lBQ04sT0FBTztNQUNMQyxXQUFXLEVBQUU7SUFDZixDQUFDO0VBQ0gsQ0FBQztFQUNEQyxPQUFPLEVBQUU7SUFDUEMsUUFBUSxXQUFBQSxTQUFFQyxJQUFJLEVBQUU7TUFBQSxJQUFBQyxLQUFBO01BQ2QsSUFBSSxDQUFDSixXQUFXLEdBQUdHLElBQUk7TUFDdkJFLFVBQVUsQ0FBQyxZQUFNO1FBQUVELEtBQUksQ0FBQ0osV0FBVyxHQUFHLEVBQUU7TUFBQyxDQUFDLEVBQUUsSUFBSSxDQUFDO0lBQ25EO0VBQ0Y7QUFDRixDQUFDO0FBRUQsaUVBQWVQLGtCQUFrQiIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvY29tcG9uZW50cy9zY3JlZW5fcmVhZGVyX25vdGljZS9zY3JlZW5fcmVhZGVyX25vdGljZS5qcz80ZmZlIl0sInNvdXJjZXNDb250ZW50IjpbImNvbnN0IFNjcmVlblJlYWRlck5vdGljZSA9IHtcbiAgcHJvcHM6IHtcbiAgICBhcmlhTGl2ZToge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmdWFsdDogJ2Fzc2VydGl2ZSdcbiAgICB9XG4gIH0sXG4gIGRhdGEgKCkge1xuICAgIHJldHVybiB7XG4gICAgICBjdXJyZW50VGV4dDogJydcbiAgICB9XG4gIH0sXG4gIG1ldGhvZHM6IHtcbiAgICBhbm5vdW5jZSAodGV4dCkge1xuICAgICAgdGhpcy5jdXJyZW50VGV4dCA9IHRleHRcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4geyB0aGlzLmN1cnJlbnRUZXh0ID0gJycgfSwgMTAwMClcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgU2NyZWVuUmVhZGVyTm90aWNlXG4iXSwibmFtZXMiOlsiU2NyZWVuUmVhZGVyTm90aWNlIiwicHJvcHMiLCJhcmlhTGl2ZSIsInR5cGUiLCJTdHJpbmciLCJkZWZ1YWx0IiwiZGF0YSIsImN1cnJlbnRUZXh0IiwibWV0aG9kcyIsImFubm91bmNlIiwidGV4dCIsIl90aGlzIiwic2V0VGltZW91dCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./src/components/screen_reader_notice/screen_reader_notice.js?vue&type=script&lang=js\n");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js!./src/components/search/search.js?vue&type=script&lang=js":
/*!**********************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js!./src/components/search/search.js?vue&type=script&lang=js ***!
\**********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var lodash_uniqBy__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/uniqBy */ \"./node_modules/lodash/uniqBy.js\");\n/* harmony import */ var lodash_uniqBy__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_uniqBy__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _follow_card_follow_card_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../follow_card/follow_card.vue */ \"./src/components/follow_card/follow_card.vue\");\n/* harmony import */ var _conversation_conversation_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../conversation/conversation.vue */ \"./src/components/conversation/conversation.vue\");\n/* harmony import */ var _status_status_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../status/status.vue */ \"./src/components/status/status.vue\");\n/* harmony import */ var src_components_tab_switcher_tab_switcher_jsx__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! src/components/tab_switcher/tab_switcher.jsx */ \"./src/components/tab_switcher/tab_switcher.jsx\");\n/* harmony import */ var lodash_map__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! lodash/map */ \"./node_modules/lodash/map.js\");\n/* harmony import */ var lodash_map__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(lodash_map__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var _fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @fortawesome/fontawesome-svg-core */ \"./node_modules/@fortawesome/fontawesome-svg-core/index.mjs\");\n/* harmony import */ var _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @fortawesome/free-solid-svg-icons */ \"./node_modules/@fortawesome/free-solid-svg-icons/index.mjs\");\n\n\n\n\n\n\n\n\n_fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_6__.library.add(_fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_7__.faCircleNotch, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_7__.faSearch);\nvar Search = {\n components: {\n FollowCard: _follow_card_follow_card_vue__WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n Conversation: _conversation_conversation_vue__WEBPACK_IMPORTED_MODULE_2__[\"default\"],\n Status: _status_status_vue__WEBPACK_IMPORTED_MODULE_3__[\"default\"],\n TabSwitcher: src_components_tab_switcher_tab_switcher_jsx__WEBPACK_IMPORTED_MODULE_4__[\"default\"]\n },\n props: ['query'],\n data: function data() {\n return {\n loaded: false,\n loading: false,\n searchTerm: this.query || '',\n userIds: [],\n statuses: [],\n hashtags: [],\n currenResultTab: 'statuses',\n statusesOffset: 0,\n lastStatusFetchCount: 0,\n lastQuery: ''\n };\n },\n computed: {\n users: function users() {\n var _this = this;\n return this.userIds.map(function (userId) {\n return _this.$store.getters.findUser(userId);\n });\n },\n visibleStatuses: function visibleStatuses() {\n var allStatusesObject = this.$store.state.statuses.allStatusesObject;\n return this.statuses.filter(function (status) {\n return allStatusesObject[status.id] && !allStatusesObject[status.id].deleted;\n });\n }\n },\n mounted: function mounted() {\n this.search(this.query);\n },\n watch: {\n query: function query(newValue) {\n this.searchTerm = newValue;\n this.search(newValue);\n }\n },\n methods: {\n newQuery: function newQuery(query) {\n this.$router.push({\n name: 'search',\n query: {\n query: query\n }\n });\n this.$refs.searchInput.focus();\n },\n search: function search(query) {\n var _this2 = this;\n var searchType = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n if (!query) {\n this.loading = false;\n return;\n }\n this.loading = true;\n this.$refs.searchInput.blur();\n if (this.lastQuery !== query) {\n this.userIds = [];\n this.hashtags = [];\n this.statuses = [];\n this.statusesOffset = 0;\n this.lastStatusFetchCount = 0;\n }\n this.$store.dispatch('search', {\n q: query,\n resolve: true,\n offset: this.statusesOffset,\n type: searchType\n }).then(function (data) {\n _this2.loading = false;\n var oldLength = _this2.statuses.length;\n\n // Always append to old results. If new results are empty, this doesn't change anything\n _this2.userIds = _this2.userIds.concat(lodash_map__WEBPACK_IMPORTED_MODULE_5___default()(data.accounts, 'id'));\n _this2.statuses = lodash_uniqBy__WEBPACK_IMPORTED_MODULE_0___default()(_this2.statuses.concat(data.statuses), 'id');\n _this2.hashtags = _this2.hashtags.concat(data.hashtags);\n _this2.currenResultTab = _this2.getActiveTab();\n _this2.loaded = true;\n\n // Offset from whatever we already have\n _this2.statusesOffset = _this2.statuses.length;\n // Because the amount of new statuses can actually be zero, compare to old lenght instead\n _this2.lastStatusFetchCount = _this2.statuses.length - oldLength;\n _this2.lastQuery = query;\n });\n },\n resultCount: function resultCount(tabName) {\n var length = this[tabName].length;\n return length === 0 ? '' : \" (\".concat(length, \")\");\n },\n onResultTabSwitch: function onResultTabSwitch(key) {\n this.currenResultTab = key;\n },\n getActiveTab: function getActiveTab() {\n if (this.visibleStatuses.length > 0) {\n return 'statuses';\n } else if (this.users.length > 0) {\n return 'people';\n } else if (this.hashtags.length > 0) {\n return 'hashtags';\n }\n return 'statuses';\n },\n lastHistoryRecord: function lastHistoryRecord(hashtag) {\n return hashtag.history && hashtag.history[0];\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Search);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL3NyYy9jb21wb25lbnRzL3NlYXJjaC9zZWFyY2guanM/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0FBQXVEO0FBQ0k7QUFDbEI7QUFDNkI7QUFDMUM7QUFDK0I7QUFJakI7QUFHMUNLLDBFQUFXLENBQ1RDLDRFQUFhLEVBQ2JDLHVFQUNGLENBQUM7QUFFRCxJQUFNRSxNQUFNLEdBQUc7RUFDYkMsVUFBVSxFQUFFO0lBQ1ZWLFVBQVUsRUFBVkEsb0VBQVU7SUFDVkMsWUFBWSxFQUFaQSxzRUFBWTtJQUNaQyxNQUFNLEVBQU5BLDBEQUFNO0lBQ05DLFdBQVcsRUFBWEEsb0ZBQVdBO0VBQ2IsQ0FBQztFQUNEUSxLQUFLLEVBQUUsQ0FDTCxPQUFPLENBQ1I7RUFDREMsSUFBSSxXQUFBQSxLQUFBLEVBQUk7SUFDTixPQUFPO01BQ0xDLE1BQU0sRUFBRSxLQUFLO01BQ2JDLE9BQU8sRUFBRSxLQUFLO01BQ2RDLFVBQVUsRUFBRSxJQUFJLENBQUNDLEtBQUssSUFBSSxFQUFFO01BQzVCQyxPQUFPLEVBQUUsRUFBRTtNQUNYQyxRQUFRLEVBQUUsRUFBRTtNQUNaQyxRQUFRLEVBQUUsRUFBRTtNQUNaQyxlQUFlLEVBQUUsVUFBVTtNQUUzQkMsY0FBYyxFQUFFLENBQUM7TUFDakJDLG9CQUFvQixFQUFFLENBQUM7TUFDdkJDLFNBQVMsRUFBRTtJQUNiLENBQUM7RUFDSCxDQUFDO0VBQ0RDLFFBQVEsRUFBRTtJQUNSQyxLQUFLLFdBQUFBLE1BQUEsRUFBSTtNQUFBLElBQUFDLEtBQUE7TUFDUCxPQUFPLElBQUksQ0FBQ1QsT0FBTyxDQUFDYixHQUFHLENBQUMsVUFBQXVCLE1BQU07UUFBQSxPQUFJRCxLQUFJLENBQUNFLE1BQU0sQ0FBQ0MsT0FBTyxDQUFDQyxRQUFRLENBQUNILE1BQU0sQ0FBQztNQUFBLEVBQUM7SUFDekUsQ0FBQztJQUNESSxl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QUFBLGtCQUFFQyxPQUFPLEVBQUU7TUFDMUIsT0FBT0EsT0FBTyxDQUFDQyxPQUFPLElBQUlELE9BQU8sQ0FBQ0MsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUM5QztFQUNGO0FBQ0YsQ0FBQztBQUVELGlFQUFlaEUsTUFBTSIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvY29tcG9uZW50cy9zZWFyY2gvc2VhcmNoLmpzP2Q3NjEiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEZvbGxvd0NhcmQgZnJvbSAnLi4vZm9sbG93X2NhcmQvZm9sbG93X2NhcmQudnVlJ1xuaW1wb3J0IENvbnZlcnNhdGlvbiBmcm9tICcuLi9jb252ZXJzYXRpb24vY29udmVyc2F0aW9uLnZ1ZSdcbmltcG9ydCBTdGF0dXMgZnJvbSAnLi4vc3RhdHVzL3N0YXR1cy52dWUnXG5pbXBvcnQgVGFiU3dpdGNoZXIgZnJvbSAnc3JjL2NvbXBvbmVudHMvdGFiX3N3aXRjaGVyL3RhYl9zd2l0Y2hlci5qc3gnXG5pbXBvcnQgbWFwIGZyb20gJ2xvZGFzaC9tYXAnXG5pbXBvcnQgeyBsaWJyYXJ5IH0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLXN2Zy1jb3JlJ1xuaW1wb3J0IHtcbiAgZmFDaXJjbGVOb3RjaCxcbiAgZmFTZWFyY2hcbn0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZyZWUtc29saWQtc3ZnLWljb25zJ1xuaW1wb3J0IHsgdW5pcUJ5IH0gZnJvbSAnbG9kYXNoJ1xuXG5saWJyYXJ5LmFkZChcbiAgZmFDaXJjbGVOb3RjaCxcbiAgZmFTZWFyY2hcbilcblxuY29uc3QgU2VhcmNoID0ge1xuICBjb21wb25lbnRzOiB7XG4gICAgRm9sbG93Q2FyZCxcbiAgICBDb252ZXJzYXRpb24sXG4gICAgU3RhdHVzLFxuICAgIFRhYlN3aXRjaGVyXG4gIH0sXG4gIHByb3BzOiBbXG4gICAgJ3F1ZXJ5J1xuICBdLFxuICBkYXRhICgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgbG9hZGVkOiBmYWxzZSxcbiAgICAgIGxvYWRpbmc6IGZhbHNlLFxuICAgICAgc2VhcmNoVGVybTogdGhpcy5xdWVyeSB8fCAnJyxcbiAgICAgIHVzZXJJZHM6IFtdLFxuICAgICAgc3RhdHVzZXM6IFtdLFxuICAgICAgaGFzaHRhZ3M6IFtdLFxuICAgICAgY3VycmVuUmVzdWx0VGFiOiAnc3RhdHVzZXMnLFxuXG4gICAgICBzdGF0dXNlc09mZnNldDogMCxcbiAgICAgIGxhc3RTdGF0dXNGZXRjaENvdW50OiAwLFxuICAgICAgbGFzdFF1ZXJ5OiAnJ1xuICAgIH1cbiAgfSxcbiAgY29tcHV0ZWQ6IHtcbiAgICB1c2VycyAoKSB7XG4gICAgICByZXR1cm4gdGhpcy51c2VySWRzLm1hcCh1c2VySWQgPT4gdGhpcy4kc3RvcmUuZ2V0dGVycy5maW5kVXNlcih1c2VySWQpKVxuICAgIH0sXG4gICAgdmlzaWJsZVN0YXR1c2VzICgpIHtcbiAgICAgIGNvbnN0IGFsbFN0YXR1c2VzT2JqZWN0ID0gdGhpcy4kc3RvcmUuc3RhdGUuc3RhdHVzZXMuYWxsU3RhdHVzZXNPYmplY3RcblxuICAgICAgcmV0dXJuIHRoaXMuc3RhdHVzZXMuZmlsdGVyKHN0YXR1cyA9PlxuICAgICAgICBhbGxTdGF0dXNlc09iamVjdFtzdGF0dXMuaWRdICYmICFhbGxTdGF0dXNlc09iamVjdFtzdGF0dXMuaWRdLmRlbGV0ZWRcbiAgICAgIClcbiAgICB9XG4gIH0sXG4gIG1vdW50ZWQgKCkge1xuICAgIHRoaXMuc2VhcmNoKHRoaXMucXVlcnkpXG4gIH0sXG4gIHdhdGNoOiB7XG4gICAgcXVlcnkgKG5ld1ZhbHVlKSB7XG4gICAgICB0aGlzLnNlYXJjaFRlcm0gPSBuZXdWYWx1ZVxuICAgICAgdGhpcy5zZWFyY2gobmV3VmFsdWUpXG4gICAgfVxuICB9LFxuICBtZXRob2RzOiB7XG4gICAgbmV3UXVlcnkgKHF1ZXJ5KSB7XG4gICAgICB0aGlzLiRyb3V0ZXIucHVzaCh7IG5hbWU6ICdzZWFyY2gnLCBxdWVyeTogeyBxdWVyeSB9IH0pXG4gICAgICB0aGlzLiRyZWZzLnNlYXJjaElucHV0LmZvY3VzKClcbiAgICB9LFxuICAgIHNlYXJjaCAocXVlcnksIHNlYXJjaFR5cGUgPSBudWxsKSB7XG4gICAgICBpZiAoIXF1ZXJ5KSB7XG4gICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlXG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlXG4gICAgICB0aGlzLiRyZWZzLnNlYXJjaElucHV0LmJsdXIoKVxuICAgICAgaWYgKHRoaXMubGFzdFF1ZXJ5ICE9PSBxdWVyeSkge1xuICAgICAgICB0aGlzLnVzZXJJZHMgPSBbXVxuICAgICAgICB0aGlzLmhhc2h0YWdzID0gW11cbiAgICAgICAgdGhpcy5zdGF0dXNlcyA9IFtdXG5cbiAgICAgICAgdGhpcy5zdGF0dXNlc09mZnNldCA9IDBcbiAgICAgICAgdGhpcy5sYXN0U3RhdHVzRmV0Y2hDb3VudCA9IDBcbiAgICAgIH1cblxuICAgICAgdGhpcy4kc3RvcmUuZGlzcGF0Y2goJ3NlYXJjaCcsIHsgcTogcXVlcnksIHJlc29sdmU6IHRydWUsIG9mZnNldDogdGhpcy5zdGF0dXNlc09mZnNldCwgdHlwZTogc2VhcmNoVHlwZSB9KVxuICAgICAgICAudGhlbihkYXRhID0+IHtcbiAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZVxuXG4gICAgICAgICAgY29uc3Qgb2xkTGVuZ3RoID0gdGhpcy5zdGF0dXNlcy5sZW5ndGhcblxuICAgICAgICAgIC8vIEFsd2F5cyBhcHBlbmQgdG8gb2xkIHJlc3VsdHMuIElmIG5ldyByZXN1bHRzIGFyZSBlbXB0eSwgdGhpcyBkb2Vzbid0IGNoYW5nZSBhbnl0aGluZ1xuICAgICAgICAgIHRoaXMudXNlcklkcyA9IHRoaXMudXNlcklkcy5jb25jYXQobWFwKGRhdGEuYWNjb3VudHMsICdpZCcpKVxuICAgICAgICAgIHRoaXMuc3RhdHVzZXMgPSB1bmlxQnkodGhpcy5zdGF0dXNlcy5jb25jYXQoZGF0YS5zdGF0dXNlcyksICdpZCcpXG4gICAgICAgICAgdGhpcy5oYXNodGFncyA9IHRoaXMuaGFzaHRhZ3MuY29uY2F0KGRhdGEuaGFzaHRhZ3MpXG5cbiAgICAgICAgICB0aGlzLmN1cnJlblJlc3VsdFRhYiA9IHRoaXMuZ2V0QWN0aXZlVGFiKClcbiAgICAgICAgICB0aGlzLmxvYWRlZCA9IHRydWVcblxuICAgICAgICAgIC8vIE9mZnNldCBmcm9tIHdoYXRldmVyIHdlIGFscmVhZHkgaGF2ZVxuICAgICAgICAgIHRoaXMuc3RhdHVzZXNPZmZzZXQgPSB0aGlzLnN0YXR1c2VzLmxlbmd0aFxuICAgICAgICAgIC8vIEJlY2F1c2UgdGhlIGFtb3VudCBvZiBuZXcgc3RhdHVzZXMgY2FuIGFjdHVhbGx5IGJlIHplcm8sIGNvbXBhcmUgdG8gb2xkIGxlbmdodCBpbnN0ZWFkXG4gICAgICAgICAgdGhpcy5sYXN0U3RhdHVzRmV0Y2hDb3VudCA9IHRoaXMuc3RhdHVzZXMubGVuZ3RoIC0gb2xkTGVuZ3RoXG4gICAgICAgICAgdGhpcy5sYXN0UXVlcnkgPSBxdWVyeVxuICAgICAgICB9KVxuICAgIH0sXG4gICAgcmVzdWx0Q291bnQgKHRhYk5hbWUpIHtcbiAgICAgIGNvbnN0IGxlbmd0aCA9IHRoaXNbdGFiTmFtZV0ubGVuZ3RoXG4gICAgICByZXR1cm4gbGVuZ3RoID09PSAwID8gJycgOiBgICgke2xlbmd0aH0pYFxuICAgIH0sXG4gICAgb25SZXN1bHRUYWJTd2l0Y2ggKGtleSkge1xuICAgICAgdGhpcy5jdXJyZW5SZXN1bHRUYWIgPSBrZXlcbiAgICB9LFxuICAgIGdldEFjdGl2ZVRhYiAoKSB7XG4gICAgICBpZiAodGhpcy52aXNpYmxlU3RhdHVzZXMubGVuZ3RoID4gMCkge1xuICAgICAgICByZXR1cm4gJ3N0YXR1c2VzJ1xuICAgICAgfSBlbHNlIGlmICh0aGlzLnVzZXJzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgcmV0dXJuICdwZW9wbGUnXG4gICAgICB9IGVsc2UgaWYgKHRoaXMuaGFzaHRhZ3MubGVuZ3RoID4gMCkge1xuICAgICAgICByZXR1cm4gJ2hhc2h0YWdzJ1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gJ3N0YXR1c2VzJ1xuICAgIH0sXG4gICAgbGFzdEhpc3RvcnlSZWNvcmQgKGhhc2h0YWcpIHtcbiAgICAgIHJldHVybiBoYXNodGFnLmhpc3RvcnkgJiYgaGFzaHRhZy5oaXN0b3J5WzBdXG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IFNlYXJjaFxuIl0sIm5hbWVzIjpbIkZvbGxvd0NhcmQiLCJDb252ZXJzYXRpb24iLCJTdGF0dXMiLCJUYWJTd2l0Y2hlciIsIm1hcCIsImxpYnJhcnkiLCJmYUNpcmNsZU5vdGNoIiwiZmFTZWFyY2giLCJhZGQiLCJTZWFyY2giLCJjb21wb25lbnRzIiwicHJvcHMiLCJkYXRhIiwibG9hZGVkIiwibG9hZGluZyIsInNlYXJjaFRlcm0iLCJxdWVyeSIsInVzZXJJZHMiLCJzdGF0dXNlcyIsImhhc2h0YWdzIiwiY3VycmVuUmVzdWx0VGFiIiwic3RhdHVzZXNPZmZzZXQiLCJsYXN0U3RhdHVzRmV0Y2hDb3VudCIsImxhc3RRdWVyeSIsImNvbXB1dGVkIiwidXNlcnMiLCJfdGhpcyIsInVzZXJJZCIsIiRzdG9yZSIsImdldHRlcnMiLCJmaW5kVXNlciIsInZpc2libGVTdGF0dXNlcyIsImFsbFN0YXR1c2VzT2JqZWN0Iiwic3RhdGUiLCJmaWx0ZXIiLCJzdGF0dXMiLCJpZCIsImRlbGV0ZWQiLCJtb3VudGVkIiwic2VhcmNoIiwid2F0Y2giLCJuZXdWYWx1ZSIsIm1ldGhvZHMiLCJuZXdRdWVyeSIsIiRyb3V0ZXIiLCJwdXNoIiwibmFtZSIsIiRyZWZzIiwic2VhcmNoSW5wdXQiLCJmb2N1cyIsIl90aGlzMiIsInNlYXJjaFR5cGUiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJ1bmRlZmluZWQiLCJibHVyIiwiZGlzcGF0Y2giLCJxIiwicmVzb2x2ZSIsIm9mZnNldCIsInR5cGUiLCJ0aGVuIiwib2xkTGVuZ3RoIiwiY29uY2F0IiwiYWNjb3VudHMiLCJfdW5pcUJ5IiwiZ2V0QWN0aXZlVGFiIiwicmVzdWx0Q291bnQiLCJ0YWJOYW1lIiwib25SZXN1bHRUYWJTd2l0Y2giLCJrZXkiLCJsYXN0SGlzdG9yeVJlY29yZCIsImhhc2h0YWciLCJoaXN0b3J5Il0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./src/components/search/search.js?vue&type=script&lang=js\n");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js!./src/components/search_bar/search_bar.js?vue&type=script&lang=js":
/*!******************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js!./src/components/search_bar/search_bar.js?vue&type=script&lang=js ***!
\******************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @fortawesome/fontawesome-svg-core */ \"./node_modules/@fortawesome/fontawesome-svg-core/index.mjs\");\n/* harmony import */ var _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @fortawesome/free-solid-svg-icons */ \"./node_modules/@fortawesome/free-solid-svg-icons/index.mjs\");\n\n\n_fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_0__.library.add(_fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_1__.faTimes, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_1__.faSearch);\nvar SearchBar = {\n data: function data() {\n return {\n searchTerm: undefined,\n hidden: true,\n error: false\n };\n },\n watch: {\n $route: function $route(route) {\n if (route.name === 'search') {\n this.searchTerm = route.query.query;\n }\n }\n },\n methods: {\n find: function find(searchTerm) {\n this.$router.push({\n name: 'search',\n query: {\n query: searchTerm\n }\n });\n this.$refs.searchInput.focus();\n },\n toggleHidden: function toggleHidden() {\n var _this = this;\n this.hidden = !this.hidden;\n this.$emit('toggled', this.hidden);\n this.$nextTick(function () {\n if (!_this.hidden) {\n _this.$refs.searchInput.focus();\n }\n });\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SearchBar);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL3NyYy9jb21wb25lbnRzL3NlYXJjaF9iYXIvc2VhcmNoX2Jhci5qcz92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBMkQ7QUFJakI7QUFFMUNBLDBFQUFXLENBQ1RDLHNFQUFPLEVBQ1BDLHVFQUNGLENBQUM7QUFFRCxJQUFNRSxTQUFTLEdBQUc7RUFDaEJDLElBQUksRUFBRSxTQUFBQSxLQUFBO0lBQUEsT0FBTztNQUNYQyxVQUFVLEVBQUVDLFNBQVM7TUFDckJDLE1BQU0sRUFBRSxJQUFJO01BQ1pDLEtBQUssRUFBRTtJQUNULENBQUM7RUFBQSxDQUFDO0VBQ0ZDLEtBQUssRUFBRTtJQUNMQyxNQUFNLEVBQUUsU0FBQUEsT0FBVUMsS0FBSyxFQUFFO01BQ3ZCLElBQUlBLEtBQUssQ0FBQ0MsSUFBSSxLQUFLLFFBQVEsRUFBRTtRQUMzQixJQUFJLENBQUNQLFVBQVUsR0FBR00sS0FBSyxDQUFDRSxLQUFLLENBQUNBLEtBQUs7TUFDckM7SUFDRjtFQUNGLENBQUM7RUFDREMsT0FBTyxFQUFFO0lBQ1BDLElBQUksV0FBQUEsS0FBRVYsVUFBVSxFQUFFO01BQ2hCLElBQUksQ0FBQ1csT0FBTyxDQUFDQyxJQUFJLENBQUM7UUFBRUwsSUFBSSxFQUFFLFFBQVE7UUFBRUMsS0FBSyxFQUFFO1VBQUVBLEtBQUssRUFBRVI7UUFBVztNQUFFLENBQUMsQ0FBQztNQUNuRSxJQUFJLENBQUNhLEtBQUssQ0FBQ0MsV0FBVyxDQUFDQyxLQUFLLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBQ0RDLFlBQVksV0FBQUEsYUFBQSxFQUFJO01BQUEsSUFBQUMsS0FBQTtNQUNkLElBQUksQ0FBQ2YsTUFBTSxHQUFHLENBQUMsSUFBSSxDQUFDQSxNQUFNO01BQzFCLElBQUksQ0FBQ2dCLEtBQUssQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDaEIsTUFBTSxDQUFDO01BQ2xDLElBQUksQ0FBQ2lCLFNBQVMsQ0FBQyxZQUFNO1FBQ25CLElBQUksQ0FBQ0YsS0FBSSxDQUFDZixNQUFNLEVBQUU7VUFDaEJlLEtBQUksQ0FBQ0osS0FBSyxDQUFDQyxXQUFXLENBQUNDLEtBQUssQ0FBQyxDQUFDO1FBQ2hDO01BQ0YsQ0FBQyxDQUFDO0lBQ0o7RUFDRjtBQUNGLENBQUM7QUFFRCxpRUFBZWpCLFNBQVMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL2NvbXBvbmVudHMvc2VhcmNoX2Jhci9zZWFyY2hfYmFyLmpzP2M4NzMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbGlicmFyeSB9IGZyb20gJ0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1zdmctY29yZSdcbmltcG9ydCB7XG4gIGZhVGltZXMsXG4gIGZhU2VhcmNoXG59IGZyb20gJ0Bmb3J0YXdlc29tZS9mcmVlLXNvbGlkLXN2Zy1pY29ucydcblxubGlicmFyeS5hZGQoXG4gIGZhVGltZXMsXG4gIGZhU2VhcmNoXG4pXG5cbmNvbnN0IFNlYXJjaEJhciA9IHtcbiAgZGF0YTogKCkgPT4gKHtcbiAgICBzZWFyY2hUZXJtOiB1bmRlZmluZWQsXG4gICAgaGlkZGVuOiB0cnVlLFxuICAgIGVycm9yOiBmYWxzZVxuICB9KSxcbiAgd2F0Y2g6IHtcbiAgICAkcm91dGU6IGZ1bmN0aW9uIChyb3V0ZSkge1xuICAgICAgaWYgKHJvdXRlLm5hbWUgPT09ICdzZWFyY2gnKSB7XG4gICAgICAgIHRoaXMuc2VhcmNoVGVybSA9IHJvdXRlLnF1ZXJ5LnF1ZXJ5XG4gICAgICB9XG4gICAgfVxuICB9LFxuICBtZXRob2RzOiB7XG4gICAgZmluZCAoc2VhcmNoVGVybSkge1xuICAgICAgdGhpcy4kcm91dGVyLnB1c2goeyBuYW1lOiAnc2VhcmNoJywgcXVlcnk6IHsgcXVlcnk6IHNlYXJjaFRlcm0gfSB9KVxuICAgICAgdGhpcy4kcmVmcy5zZWFyY2hJbnB1dC5mb2N1cygpXG4gICAgfSxcbiAgICB0b2dnbGVIaWRkZW4gKCkge1xuICAgICAgdGhpcy5oaWRkZW4gPSAhdGhpcy5oaWRkZW5cbiAgICAgIHRoaXMuJGVtaXQoJ3RvZ2dsZWQnLCB0aGlzLmhpZGRlbilcbiAgICAgIHRoaXMuJG5leHRUaWNrKCgpID0+IHtcbiAgICAgICAgaWYgKCF0aGlzLmhpZGRlbikge1xuICAgICAgICAgIHRoaXMuJHJlZnMuc2VhcmNoSW5wdXQuZm9jdXMoKVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBTZWFyY2hCYXJcbiJdLCJuYW1lcyI6WyJsaWJyYXJ5IiwiZmFUaW1lcyIsImZhU2VhcmNoIiwiYWRkIiwiU2VhcmNoQmFyIiwiZGF0YSIsInNlYXJjaFRlcm0iLCJ1bmRlZmluZWQiLCJoaWRkZW4iLCJlcnJvciIsIndhdGNoIiwiJHJvdXRlIiwicm91dGUiLCJuYW1lIiwicXVlcnkiLCJtZXRob2RzIiwiZmluZCIsIiRyb3V0ZXIiLCJwdXNoIiwiJHJlZnMiLCJzZWFyY2hJbnB1dCIsImZvY3VzIiwidG9nZ2xlSGlkZGVuIiwiX3RoaXMiLCIkZW1pdCIsIiRuZXh0VGljayJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./src/components/search_bar/search_bar.js?vue&type=script&lang=js\n");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js!./src/components/select/select.js?vue&type=script&lang=js":
/*!**********************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js!./src/components/select/select.js?vue&type=script&lang=js ***!
\**********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @fortawesome/fontawesome-svg-core */ \"./node_modules/@fortawesome/fontawesome-svg-core/index.mjs\");\n/* harmony import */ var _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @fortawesome/free-solid-svg-icons */ \"./node_modules/@fortawesome/free-solid-svg-icons/index.mjs\");\n\n\n_fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_0__.library.add(_fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_1__.faChevronDown);\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({\n emits: ['update:modelValue'],\n props: ['modelValue', 'disabled', 'unstyled', 'kind', 'attrs']\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL3NyYy9jb21wb25lbnRzL3NlbGVjdC9zZWxlY3QuanM/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQTJEO0FBR2pCO0FBRTFDQSwwRUFBVyxDQUNUQyw0RUFDRixDQUFDO0FBRUQsaUVBQWU7RUFDYkUsS0FBSyxFQUFFLENBQUMsbUJBQW1CLENBQUM7RUFDNUJDLEtBQUssRUFBRSxDQUNMLFlBQVksRUFDWixVQUFVLEVBQ1YsVUFBVSxFQUNWLE1BQU0sRUFDTixPQUFPO0FBRVgsQ0FBQyIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvY29tcG9uZW50cy9zZWxlY3Qvc2VsZWN0LmpzPzI3MGQiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbGlicmFyeSB9IGZyb20gJ0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1zdmctY29yZSdcbmltcG9ydCB7XG4gIGZhQ2hldnJvbkRvd25cbn0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZyZWUtc29saWQtc3ZnLWljb25zJ1xuXG5saWJyYXJ5LmFkZChcbiAgZmFDaGV2cm9uRG93blxuKVxuXG5leHBvcnQgZGVmYXVsdCB7XG4gIGVtaXRzOiBbJ3VwZGF0ZTptb2RlbFZhbHVlJ10sXG4gIHByb3BzOiBbXG4gICAgJ21vZGVsVmFsdWUnLFxuICAgICdkaXNhYmxlZCcsXG4gICAgJ3Vuc3R5bGVkJyxcbiAgICAna2luZCcsXG4gICAgJ2F0dHJzJ1xuICBdXG59XG4iXSwibmFtZXMiOlsibGlicmFyeSIsImZhQ2hldnJvbkRvd24iLCJhZGQiLCJlbWl0cyIsInByb3BzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./src/components/select/select.js?vue&type=script&lang=js\n");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js!./src/components/shout_panel/shout_panel.js?vue&type=script&lang=js":
/*!********************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js!./src/components/shout_panel/shout_panel.js?vue&type=script&lang=js ***!
\********************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var src_services_user_profile_link_generator_user_profile_link_generator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! src/services/user_profile_link_generator/user_profile_link_generator */ \"./src/services/user_profile_link_generator/user_profile_link_generator.js\");\n/* harmony import */ var _fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @fortawesome/fontawesome-svg-core */ \"./node_modules/@fortawesome/fontawesome-svg-core/index.mjs\");\n/* harmony import */ var _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @fortawesome/free-solid-svg-icons */ \"./node_modules/@fortawesome/free-solid-svg-icons/index.mjs\");\n\n\n\n_fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_1__.library.add(_fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_2__.faBullhorn, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_2__.faTimes);\nvar shoutPanel = {\n props: ['floating'],\n data: function data() {\n return {\n currentMessage: '',\n channel: null,\n collapsed: true\n };\n },\n computed: {\n messages: function messages() {\n return this.$store.state.shout.messages;\n }\n },\n methods: {\n submit: function submit(message) {\n this.$store.state.shout.channel.push('new_msg', {\n text: message\n }, 10000);\n this.currentMessage = '';\n },\n togglePanel: function togglePanel() {\n this.collapsed = !this.collapsed;\n },\n userProfileLink: function userProfileLink(user) {\n return (0,src_services_user_profile_link_generator_user_profile_link_generator__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(user.id, user.username, this.$store.state.instance.restrictedNicknames);\n }\n },\n watch: {\n messages: function messages(newVal) {\n var scrollEl = this.$el.querySelector('.chat-window');\n if (!scrollEl) return;\n if (scrollEl.scrollTop + scrollEl.offsetHeight + 20 > scrollEl.scrollHeight) {\n this.$nextTick(function () {\n if (!scrollEl) return;\n scrollEl.scrollTop = scrollEl.scrollHeight - scrollEl.offsetHeight;\n });\n }\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (shoutPanel);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL3NyYy9jb21wb25lbnRzL3Nob3V0X3BhbmVsL3Nob3V0X3BhbmVsLmpzP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBc0c7QUFDM0M7QUFJakI7QUFFMUNDLDBFQUFXLENBQ1RDLHlFQUFVLEVBQ1ZDLHNFQUNGLENBQUM7QUFFRCxJQUFNRSxVQUFVLEdBQUc7RUFDakJDLEtBQUssRUFBRSxDQUFDLFVBQVUsQ0FBQztFQUNuQkMsSUFBSSxXQUFBQSxLQUFBLEVBQUk7SUFDTixPQUFPO01BQ0xDLGNBQWMsRUFBRSxFQUFFO01BQ2xCQyxPQUFPLEVBQUUsSUFBSTtNQUNiQyxTQUFTLEVBQUU7SUFDYixDQUFDO0VBQ0gsQ0FBQztFQUNEQyxRQUFRLEVBQUU7SUFDUkMsUUFBUSxXQUFBQSxTQUFBLEVBQUk7TUFDVixPQUFPLElBQUksQ0FBQ0MsTUFBTSxDQUFDQyxLQUFLLENBQUNDLEtBQUssQ0FBQ0gsUUFBUTtJQUN6QztFQUNGLENBQUM7RUFDREksT0FBTyxFQUFFO0lBQ1BDLE1BQU0sV0FBQUEsT0FBRUMsT0FBTyxFQUFFO01BQ2YsSUFBSSxDQUFDTCxNQUFNLENBQUNDLEtBQUssQ0FBQ0MsS0FBSyxDQUFDTixPQUFPLENBQUNVLElBQUksQ0FBQyxTQUFTLEVBQUU7UUFBRUMsSUFBSSxFQUFFRjtNQUFRLENBQUMsRUFBRSxLQUFLLENBQUM7TUFDekUsSUFBSSxDQUFDVixjQUFjLEdBQUcsRUFBRTtJQUMxQixDQUFDO0lBQ0RhLFdBQVcsV0FBQUEsWUFBQSxFQUFJO01BQ2IsSUFBSSxDQUFDWCxTQUFTLEdBQUcsQ0FBQyxJQUFJLENBQUNBLFNBQVM7SUFDbEMsQ0FBQztJQUNEWSxlQUFlLFdBQUFBLGdCQUFFQyxJQUFJLEVBQUU7TUFDckIsT0FBT3ZCLGdIQUFtQixDQUFDdUIsSUFBSSxDQUFDQyxFQUFFLEVBQUVELElBQUksQ0FBQ0UsUUFBUSxFQUFFLElBQUksQ0FBQ1osTUFBTSxDQUFDQyxLQUFLLENBQUNZLFFBQVEsQ0FBQ0MsbUJBQW1CLENBQUM7SUFDcEc7RUFDRixDQUFDO0VBQ0RDLEtBQUssRUFBRTtJQUNMaEIsUUFBUSxXQUFBQSxTQUFFaUIsTUFBTSxFQUFFO01BQ2hCLElBQU1DLFFBQVEsR0FBRyxJQUFJLENBQUNDLEdBQUcsQ0FBQ0MsYUFBYSxDQUFDLGNBQWMsQ0FBQztNQUN2RCxJQUFJLENBQUNGLFFBQVEsRUFBRTtNQUNmLElBQUlBLFFBQVEsQ0FBQ0csU0FBUyxHQUFHSCxRQUFRLENBQUNJLFlBQVksR0FBRyxFQUFFLEdBQUdKLFFBQVEsQ0FBQ0ssWUFBWSxFQUFFO1FBQzNFLElBQUksQ0FBQ0MsU0FBUyxDQUFDLFlBQU07VUFDbkIsSUFBSSxDQUFDTixRQUFRLEVBQUU7VUFDZkEsUUFBUSxDQUFDRyxTQUFTLEdBQUdILFFBQVEsQ0FBQ0ssWUFBWSxHQUFHTCxRQUFRLENBQUNJLFlBQVk7UUFDcEUsQ0FBQyxDQUFDO01BQ0o7SUFDRjtFQUNGO0FBQ0YsQ0FBQztBQUVELGlFQUFlN0IsVUFBVSIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvY29tcG9uZW50cy9zaG91dF9wYW5lbC9zaG91dF9wYW5lbC5qcz8zYmMzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBnZW5lcmF0ZVByb2ZpbGVMaW5rIGZyb20gJ3NyYy9zZXJ2aWNlcy91c2VyX3Byb2ZpbGVfbGlua19nZW5lcmF0b3IvdXNlcl9wcm9maWxlX2xpbmtfZ2VuZXJhdG9yJ1xuaW1wb3J0IHsgbGlicmFyeSB9IGZyb20gJ0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1zdmctY29yZSdcbmltcG9ydCB7XG4gIGZhQnVsbGhvcm4sXG4gIGZhVGltZXNcbn0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZyZWUtc29saWQtc3ZnLWljb25zJ1xuXG5saWJyYXJ5LmFkZChcbiAgZmFCdWxsaG9ybixcbiAgZmFUaW1lc1xuKVxuXG5jb25zdCBzaG91dFBhbmVsID0ge1xuICBwcm9wczogWydmbG9hdGluZyddLFxuICBkYXRhICgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgY3VycmVudE1lc3NhZ2U6ICcnLFxuICAgICAgY2hhbm5lbDogbnVsbCxcbiAgICAgIGNvbGxhcHNlZDogdHJ1ZVxuICAgIH1cbiAgfSxcbiAgY29tcHV0ZWQ6IHtcbiAgICBtZXNzYWdlcyAoKSB7XG4gICAgICByZXR1cm4gdGhpcy4kc3RvcmUuc3RhdGUuc2hvdXQubWVzc2FnZXNcbiAgICB9XG4gIH0sXG4gIG1ldGhvZHM6IHtcbiAgICBzdWJtaXQgKG1lc3NhZ2UpIHtcbiAgICAgIHRoaXMuJHN0b3JlLnN0YXRlLnNob3V0LmNoYW5uZWwucHVzaCgnbmV3X21zZycsIHsgdGV4dDogbWVzc2FnZSB9LCAxMDAwMClcbiAgICAgIHRoaXMuY3VycmVudE1lc3NhZ2UgPSAnJ1xuICAgIH0sXG4gICAgdG9nZ2xlUGFuZWwgKCkge1xuICAgICAgdGhpcy5jb2xsYXBzZWQgPSAhdGhpcy5jb2xsYXBzZWRcbiAgICB9LFxuICAgIHVzZXJQcm9maWxlTGluayAodXNlcikge1xuICAgICAgcmV0dXJuIGdlbmVyYXRlUHJvZmlsZUxpbmsodXNlci5pZCwgdXNlci51c2VybmFtZSwgdGhpcy4kc3RvcmUuc3RhdGUuaW5zdGFuY2UucmVzdHJpY3RlZE5pY2tuYW1lcylcbiAgICB9XG4gIH0sXG4gIHdhdGNoOiB7XG4gICAgbWVzc2FnZXMgKG5ld1ZhbCkge1xuICAgICAgY29uc3Qgc2Nyb2xsRWwgPSB0aGlzLiRlbC5xdWVyeVNlbGVjdG9yKCcuY2hhdC13aW5kb3cnKVxuICAgICAgaWYgKCFzY3JvbGxFbCkgcmV0dXJuXG4gICAgICBpZiAoc2Nyb2xsRWwuc2Nyb2xsVG9wICsgc2Nyb2xsRWwub2Zmc2V0SGVpZ2h0ICsgMjAgPiBzY3JvbGxFbC5zY3JvbGxIZWlnaHQpIHtcbiAgICAgICAgdGhpcy4kbmV4dFRpY2soKCkgPT4ge1xuICAgICAgICAgIGlmICghc2Nyb2xsRWwpIHJldHVyblxuICAgICAgICAgIHNjcm9sbEVsLnNjcm9sbFRvcCA9IHNjcm9sbEVsLnNjcm9sbEhlaWdodCAtIHNjcm9sbEVsLm9mZnNldEhlaWdodFxuICAgICAgICB9KVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBzaG91dFBhbmVsXG4iXSwibmFtZXMiOlsiZ2VuZXJhdGVQcm9maWxlTGluayIsImxpYnJhcnkiLCJmYUJ1bGxob3JuIiwiZmFUaW1lcyIsImFkZCIsInNob3V0UGFuZWwiLCJwcm9wcyIsImRhdGEiLCJjdXJyZW50TWVzc2FnZSIsImNoYW5uZWwiLCJjb2xsYXBzZWQiLCJjb21wdXRlZCIsIm1lc3NhZ2VzIiwiJHN0b3JlIiwic3RhdGUiLCJzaG91dCIsIm1ldGhvZHMiLCJzdWJtaXQiLCJtZXNzYWdlIiwicHVzaCIsInRleHQiLCJ0b2dnbGVQYW5lbCIsInVzZXJQcm9maWxlTGluayIsInVzZXIiLCJpZCIsInVzZXJuYW1lIiwiaW5zdGFuY2UiLCJyZXN0cmljdGVkTmlja25hbWVzIiwid2F0Y2giLCJuZXdWYWwiLCJzY3JvbGxFbCIsIiRlbCIsInF1ZXJ5U2VsZWN0b3IiLCJzY3JvbGxUb3AiLCJvZmZzZXRIZWlnaHQiLCJzY3JvbGxIZWlnaHQiLCIkbmV4dFRpY2siXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./src/components/shout_panel/shout_panel.js?vue&type=script&lang=js\n");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js!./src/components/side_drawer/side_drawer.js?vue&type=script&lang=js":
/*!********************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js!./src/components/side_drawer/side_drawer.js?vue&type=script&lang=js ***!
\********************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"./node_modules/@babel/runtime/helpers/esm/defineProperty.js\");\n/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.esm-bundler.js\");\n/* harmony import */ var _user_card_user_card_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../user_card/user_card.vue */ \"./src/components/user_card/user_card.vue\");\n/* harmony import */ var _services_notification_utils_notification_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../services/notification_utils/notification_utils */ \"./src/services/notification_utils/notification_utils.js\");\n/* harmony import */ var _services_gesture_service_gesture_service__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../services/gesture_service/gesture_service */ \"./src/services/gesture_service/gesture_service.js\");\n/* harmony import */ var src_components_navigation_navigation_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! src/components/navigation/navigation.js */ \"./src/components/navigation/navigation.js\");\n/* harmony import */ var _fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @fortawesome/fontawesome-svg-core */ \"./node_modules/@fortawesome/fontawesome-svg-core/index.mjs\");\n/* harmony import */ var _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @fortawesome/free-solid-svg-icons */ \"./node_modules/@fortawesome/free-solid-svg-icons/index.mjs\");\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\n\n\n\n\n\n_fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_5__.library.add(_fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_6__.faSignInAlt, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_6__.faSignOutAlt, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_6__.faHome, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_6__.faComments, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_6__.faBell, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_6__.faUserPlus, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_6__.faBullhorn, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_6__.faSearch, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_6__.faTachometerAlt, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_6__.faCog, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_6__.faInfoCircle, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_6__.faCompass, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_6__.faList);\nvar SideDrawer = {\n props: ['logout'],\n data: function data() {\n return {\n closed: true,\n closeGesture: undefined\n };\n },\n created: function created() {\n this.closeGesture = _services_gesture_service_gesture_service__WEBPACK_IMPORTED_MODULE_3__[\"default\"].swipeGesture(_services_gesture_service_gesture_service__WEBPACK_IMPORTED_MODULE_3__[\"default\"].DIRECTION_LEFT, this.toggleDrawer);\n if (this.currentUser && this.currentUser.locked) {\n this.$store.dispatch('startFetchingFollowRequests');\n }\n },\n components: {\n UserCard: _user_card_user_card_vue__WEBPACK_IMPORTED_MODULE_1__[\"default\"]\n },\n computed: _objectSpread(_objectSpread({\n currentUser: function currentUser() {\n return this.$store.state.users.currentUser;\n },\n shout: function shout() {\n return this.$store.state.shout.joined;\n },\n unseenNotifications: function unseenNotifications() {\n return (0,_services_notification_utils_notification_utils__WEBPACK_IMPORTED_MODULE_2__.unseenNotificationsFromStore)(this.$store);\n },\n unseenNotificationsCount: function unseenNotificationsCount() {\n return this.unseenNotifications.length;\n },\n suggestionsEnabled: function suggestionsEnabled() {\n return this.$store.state.instance.suggestionsEnabled;\n },\n logo: function logo() {\n return this.$store.state.instance.logo;\n },\n hideSitename: function hideSitename() {\n return this.$store.state.instance.hideSitename;\n },\n sitename: function sitename() {\n return this.$store.state.instance.name;\n },\n followRequestCount: function followRequestCount() {\n return this.$store.state.api.followRequests.length;\n },\n privateMode: function privateMode() {\n return this.$store.state.instance[\"private\"];\n },\n federating: function federating() {\n return this.$store.state.instance.federating;\n },\n timelinesRoute: function timelinesRoute() {\n var name;\n if (this.$store.state[\"interface\"].lastTimeline) {\n name = this.$store.state[\"interface\"].lastTimeline;\n }\n name = this.currentUser ? 'friends' : 'public-timeline';\n if (src_components_navigation_navigation_js__WEBPACK_IMPORTED_MODULE_4__.USERNAME_ROUTES.has(name)) {\n return {\n name: name,\n params: {\n username: this.currentUser.screen_name\n }\n };\n } else {\n return {\n name: name\n };\n }\n }\n }, (0,vuex__WEBPACK_IMPORTED_MODULE_7__.mapState)({\n pleromaChatMessagesAvailable: function pleromaChatMessagesAvailable(state) {\n return state.instance.pleromaChatMessagesAvailable;\n },\n supportsAnnouncements: function supportsAnnouncements(state) {\n return state.announcements.supportsAnnouncements;\n }\n })), (0,vuex__WEBPACK_IMPORTED_MODULE_7__.mapGetters)(['unreadChatCount', 'unreadAnnouncementCount'])),\n methods: {\n toggleDrawer: function toggleDrawer() {\n this.closed = !this.closed;\n },\n doLogout: function doLogout() {\n this.logout();\n this.toggleDrawer();\n },\n touchStart: function touchStart(e) {\n _services_gesture_service_gesture_service__WEBPACK_IMPORTED_MODULE_3__[\"default\"].beginSwipe(e, this.closeGesture);\n },\n touchMove: function touchMove(e) {\n _services_gesture_service_gesture_service__WEBPACK_IMPORTED_MODULE_3__[\"default\"].updateSwipe(e, this.closeGesture);\n },\n openSettingsModal: function openSettingsModal() {\n this.$store.dispatch('openSettingsModal', 'user');\n },\n openAdminModal: function openAdminModal() {\n this.$store.dispatch('openSettingsModal', 'admin');\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SideDrawer);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL3NyYy9jb21wb25lbnRzL3NpZGVfZHJhd2VyL3NpZGVfZHJhd2VyLmpzP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7OztBQUEyQztBQUNNO0FBQ2tEO0FBQ3hCO0FBQ0Y7QUFDZDtBQWVqQjtBQUUxQ00sMEVBQVcsQ0FDVEMsMEVBQVcsRUFDWEMsMkVBQVksRUFDWkMscUVBQU0sRUFDTkMseUVBQVUsRUFDVkMscUVBQU0sRUFDTkMseUVBQVUsRUFDVkMseUVBQVUsRUFDVkMsdUVBQVEsRUFDUkMsOEVBQWUsRUFDZkMsb0VBQUssRUFDTEMsMkVBQVksRUFDWkMsd0VBQVMsRUFDVEMscUVBQ0YsQ0FBQztBQUVELElBQU1FLFVBQVUsR0FBRztFQUNqQkMsS0FBSyxFQUFFLENBQUMsUUFBUSxDQUFDO0VBQ2pCQyxJQUFJLEVBQUUsU0FBQUEsS0FBQTtJQUFBLE9BQU87TUFDWEMsTUFBTSxFQUFFLElBQUk7TUFDWkMsWUFBWSxFQUFFQztJQUNoQixDQUFDO0VBQUEsQ0FBQztFQUNGQyxPQUFPLFdBQUFBLFFBQUEsRUFBSTtJQUNULElBQUksQ0FBQ0YsWUFBWSxHQUFHckIsOEZBQTJCLENBQUNBLGdHQUE2QixFQUFFLElBQUksQ0FBQzBCLFlBQVksQ0FBQztJQUVqRyxJQUFJLElBQUksQ0FBQ0MsV0FBVyxJQUFJLElBQUksQ0FBQ0EsV0FBVyxDQUFDQyxNQUFNLEVBQUU7TUFDL0MsSUFBSSxDQUFDQyxNQUFNLENBQUNDLFFBQVEsQ0FBQyw2QkFBNkIsQ0FBQztJQUNyRDtFQUNGLENBQUM7RUFDREMsVUFBVSxFQUFFO0lBQUVqQyxRQUFRLEVBQVJBLGdFQUFRQTtFQUFDLENBQUM7RUFDeEJrQyxRQUFRLEVBQUFDLGFBQUEsQ0FBQUEsYUFBQTtJQUNOTixXQUFXLFdBQUFBLFlBQUEsRUFBSTtNQUNiLE9BQU8sSUFBSSxDQUFDRSxNQUFNLENBQUNL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NUIsQ0FBQztJQUNEMEMsUUFBUSxXQUFBQSxTQUFBLEVBQUk7TUFDVixJQUFJLENBQUNDLE1BQU0sQ0FBQyxDQUFDO01BQ2IsSUFBSSxDQUFDckMsWUFBWSxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUNEc0MsVUFBVSxXQUFBQSxXQUFFQyxDQUFDLEVBQUU7TUFDYmpFLDRGQUF5QixDQUFDaUUsQ0FBQyxFQUFFLElBQUksQ0FBQzVDLFlBQVksQ0FBQztJQUNqRCxDQUFDO0lBQ0Q4QyxTQUFTLFdBQUFBLFVBQUVGLENBQUMsRUFBRTtNQUNaakUsNkZBQTBCLENBQUNpRSxDQUFDLEVBQUUsSUFBSSxDQUFDNUMsWUFBWSxDQUFDO0lBQ2xELENBQUM7SUFDRGdELGlCQUFpQixXQUFBQSxrQkFBQSxFQUFJO01BQ25CLElBQUksQ0FBQ3hDLE1BQU0sQ0FBQ0MsUUFBUSxDQUFDLG1CQUFtQixFQUFFLE1BQU0sQ0FBQztJQUNuRCxDQUFDO0lBQ0R3QyxjQUFjLFdBQUFBLGVBQUEsRUFBSTtNQUNoQixJQUFJLENBQUN6QyxNQUFNLENBQUNDLFFBQVEsQ0FBQyxtQkFBbUIsRUFBRSxPQUFPLENBQUM7SUFDcEQ7RUFDRjtBQUNGLENBQUM7QUFFRCxpRUFBZWIsVUFBVSIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvY29tcG9uZW50cy9zaWRlX2RyYXdlci9zaWRlX2RyYXdlci5qcz8wNWZkIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1hcFN0YXRlLCBtYXBHZXR0ZXJzIH0gZnJvbSAndnVleCdcbmltcG9ydCBVc2VyQ2FyZCBmcm9tICcuLi91c2VyX2NhcmQvdXNlcl9jYXJkLnZ1ZSdcbmltcG9ydCB7IHVuc2Vlbk5vdGlmaWNhdGlvbnNGcm9tU3RvcmUgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9ub3RpZmljYXRpb25fdXRpbHMvbm90aWZpY2F0aW9uX3V0aWxzJ1xuaW1wb3J0IEdlc3R1cmVTZXJ2aWNlIGZyb20gJy4uLy4uL3NlcnZpY2VzL2dlc3R1cmVfc2VydmljZS9nZXN0dXJlX3NlcnZpY2UnXG5pbXBvcnQgeyBVU0VSTkFNRV9ST1VURVMgfSBmcm9tICdzcmMvY29tcG9uZW50cy9uYXZpZ2F0aW9uL25hdmlnYXRpb24uanMnXG5pbXBvcnQgeyBsaWJyYXJ5IH0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLXN2Zy1jb3JlJ1xuaW1wb3J0IHtcbiAgZmFTaWduSW5BbHQsXG4gIGZhU2lnbk91dEFsdCxcbiAgZmFIb21lLFxuICBmYUNvbW1lbnRzLFxuICBmYUJlbGwsXG4gIGZhVXNlclBsdXMsXG4gIGZhQnVsbGhvcm4sXG4gIGZhU2VhcmNoLFxuICBmYVRhY2hvbWV0ZXJBbHQsXG4gIGZhQ29nLFxuICBmYUluZm9DaXJjbGUsXG4gIGZhQ29tcGFzcyxcbiAgZmFMaXN0XG59IGZyb20gJ0Bmb3J0YXdlc29tZS9mcmVlLXNvbGlkLXN2Zy1pY29ucydcblxubGlicmFyeS5hZGQoXG4gIGZhU2lnbkluQWx0LFxuICBmYVNpZ25PdXRBbHQsXG4gIGZhSG9tZSxcbiAgZmFDb21tZW50cyxcbiAgZmFCZWxsLFxuICBmYVVzZXJQbHVzLFxuICBmYUJ1bGxob3JuLFxuICBmYVNlYXJjaCxcbiAgZmFUYWNob21ldGVyQWx0LFxuICBmYUNvZyxcbiAgZmFJbmZvQ2lyY2xlLFxuICBmYUNvbXBhc3MsXG4gIGZhTGlzdFxuKVxuXG5jb25zdCBTaWRlRHJhd2VyID0ge1xuICBwcm9wczogWydsb2dvdXQnXSxcbiAgZGF0YTogKCkgPT4gKHtcbiAgICBjbG9zZWQ6IHRydWUsXG4gICAgY2xvc2VHZXN0dXJlOiB1bmRlZmluZWRcbiAgfSksXG4gIGNyZWF0ZWQgKCkge1xuICAgIHRoaXMuY2xvc2VHZXN0dXJlID0gR2VzdHVyZVNlcnZpY2Uuc3dpcGVHZXN0dXJlKEdlc3R1cmVTZXJ2aWNlLkRJUkVDVElPTl9MRUZULCB0aGlzLnRvZ2dsZURyYXdlcilcblxuICAgIGlmICh0aGlzLmN1cnJlbnRVc2VyICYmIHRoaXMuY3VycmVudFVzZXIubG9ja2VkKSB7XG4gICAgICB0aGlzLiRzdG9yZS5kaXNwYXRjaCgnc3RhcnRGZXRjaGluZ0ZvbGxvd1JlcXVlc3RzJylcbiAgICB9XG4gIH0sXG4gIGNvbXBvbmVudHM6IHsgVXNlckNhcmQgfSxcbiAgY29tcHV0ZWQ6IHtcbiAgICBjdXJyZW50VXNlciAoKSB7XG4gICAgICByZXR1cm4gdGhpcy4kc3RvcmUuc3RhdGUudXNlcnMuY3VycmVudFVzZXJcbiAgICB9LFxuICAgIHNob3V0ICgpIHsgcmV0dXJuIHRoaXMuJHN0b3JlLnN0YXRlLnNob3V0LmpvaW5lZCB9LFxuICAgIHVuc2Vlbk5vdGlmaWNhdGlvbnMgKCkge1xuICAgICAgcmV0dXJuIHVuc2Vlbk5vdGlmaWNhdGlvbnNGcm9tU3RvcmUodGhpcy4kc3RvcmUpXG4gICAgfSxcbiAgICB1bnNlZW5Ob3RpZmljYXRpb25zQ291bnQgKCkge1xuICAgICAgcmV0dXJuIHRoaXMudW5zZWVuTm90aWZpY2F0aW9ucy5sZW5ndGhcbiAgICB9LFxuICAgIHN1Z2dlc3Rpb25zRW5hYmxlZCAoKSB7XG4gICAgICByZXR1cm4gdGhpcy4kc3RvcmUuc3RhdGUuaW5zdGFuY2Uuc3VnZ2VzdGlvbnNFbmFibGVkXG4gICAgfSxcbiAgICBsb2dvICgpIHtcbiAgICAgIHJldHVybiB0aGlzLiRzdG9yZS5zdGF0ZS5pbnN0YW5jZS5sb2dvXG4gICAgfSxcbiAgICBoaWRlU2l0ZW5hbWUgKCkge1xuICAgICAgcmV0dXJuIHRoaXMuJHN0b3JlLnN0YXRlLmluc3RhbmNlLmhpZGVTaXRlbmFtZVxuICAgIH0sXG4gICAgc2l0ZW5hbWUgKCkge1xuICAgICAgcmV0dXJuIHRoaXMuJHN0b3JlLnN0YXRlLmluc3RhbmNlLm5hbWVcbiAgICB9LFxuICAgIGZvbGxvd1JlcXVlc3RDb3VudCAoKSB7XG4gICAgICByZXR1cm4gdGhpcy4kc3RvcmUuc3RhdGUuYXBpLmZvbGxvd1JlcXVlc3RzLmxlbmd0aFxuICAgIH0sXG4gICAgcHJpdmF0ZU1vZGUgKCkge1xuICAgICAgcmV0dXJuIHRoaXMuJHN0b3JlLnN0YXRlLmluc3RhbmNlLnByaXZhdGVcbiAgICB9LFxuICAgIGZlZGVyYXRpbmcgKCkge1xuICAgICAgcmV0dXJuIHRoaXMuJHN0b3JlLnN0YXRlLmluc3RhbmNlLmZlZGVyYXRpbmdcbiAgICB9LFxuICAgIHRpbWVsaW5lc1JvdXRlICgpIHtcbiAgICAgIGxldCBuYW1lXG4gICAgICBpZiAodGhpcy4kc3RvcmUuc3RhdGUuaW50ZXJmYWNlLmxhc3RUaW1lbGluZSkge1xuICAgICAgICBuYW1lID0gdGhpcy4kc3RvcmUuc3RhdGUuaW50ZXJmYWNlLmxhc3RUaW1lbGluZVxuICAgICAgfVxuICAgICAgbmFtZSA9IHRoaXMuY3VycmVudFVzZXIgPyAnZnJpZW5kcycgOiAncHVibGljLXRpbWVsaW5lJ1xuICAgICAgaWYgKFVTRVJOQU1FX1JPVVRFUy5oYXMobmFtZSkpIHtcbiAgICAgICAgcmV0dXJuIHsgbmFtZSwgcGFyYW1zOiB7IHVzZXJuYW1lOiB0aGlzLmN1cnJlbnRVc2VyLnNjcmVlbl9uYW1lIH0gfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIHsgbmFtZSB9XG4gICAgICB9XG4gICAgfSxcbiAgICAuLi5tYXBTdGF0ZSh7XG4gICAgICBwbGVyb21hQ2hhdE1lc3NhZ2VzQXZhaWxhYmxlOiBzdGF0ZSA9PiBzdGF0ZS5pbnN0YW5jZS5wbGVyb21hQ2hhdE1lc3NhZ2VzQXZhaWxhYmxlLFxuICAgICAgc3VwcG9ydHNBbm5vdW5jZW1lbnRzOiBzdGF0ZSA9PiBzdGF0ZS5hbm5vdW5jZW1lbnRzLnN1cHBvcnRzQW5ub3VuY2VtZW50c1xuICAgIH0pLFxuICAgIC4uLm1hcEdldHRlcnMoWyd1bnJlYWRDaGF0Q291bnQnLCAndW5yZWFkQW5ub3VuY2VtZW50Q291bnQnXSlcbiAgfSxcbiAgbWV0aG9kczoge1xuICAgIHRvZ2dsZURyYXdlciAoKSB7XG4gICAgICB0aGlzLmNsb3NlZCA9ICF0aGlzLmNsb3NlZFxuICAgIH0sXG4gICAgZG9Mb2dvdXQgKCkge1xuICAgICAgdGhpcy5sb2dvdXQoKVxuICAgICAgdGhpcy50b2dnbGVEcmF3ZXIoKVxuICAgIH0sXG4gICAgdG91Y2hTdGFydCAoZSkge1xuICAgICAgR2VzdHVyZVNlcnZpY2UuYmVnaW5Td2lwZShlLCB0aGlzLmNsb3NlR2VzdHVyZSlcbiAgICB9LFxuICAgIHRvdWNoTW92ZSAoZSkge1xuICAgICAgR2VzdHVyZVNlcnZpY2UudXBkYXRlU3dpcGUoZSwgdGhpcy5jbG9zZUdlc3R1cmUpXG4gICAgfSxcbiAgICBvcGVuU2V0dGluZ3NNb2RhbCAoKSB7XG4gICAgICB0aGlzLiRzdG9yZS5kaXNwYXRjaCgnb3BlblNldHRpbmdzTW9kYWwnLCAndXNlcicpXG4gICAgfSxcbiAgICBvcGVuQWRtaW5Nb2RhbCAoKSB7XG4gICAgICB0aGlzLiRzdG9yZS5kaXNwYXRjaCgnb3BlblNldHRpbmdzTW9kYWwnLCAnYWRtaW4nKVxuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBTaWRlRHJhd2VyXG4iXSwibmFtZXMiOlsibWFwU3RhdGUiLCJtYXBHZXR0ZXJzIiwiVXNlckNhcmQiLCJ1bnNlZW5Ob3RpZmljYXRpb25zRnJvbVN0b3JlIiwiR2VzdHVyZVNlcnZpY2UiLCJVU0VSTkFNRV9ST1VURVMiLCJsaWJyYXJ5IiwiZmFTaWduSW5BbHQiLCJmYVNpZ25PdXRBbHQiLCJmYUhvbWUiLCJmYUNvbW1lbnRzIiwiZmFCZWxsIiwiZmFVc2VyUGx1cyIsImZhQnVsbGhvcm4iLCJmYVNlYXJjaCIsImZhVGFjaG9tZXRlckFsdCIsImZhQ29nIiwiZmFJbmZvQ2lyY2xlIiwiZmFDb21wYXNzIiwiZmFMaXN0IiwiYWRkIiwiU2lkZURyYXdlciIsInByb3BzIiwiZGF0YSIsImNsb3NlZCIsImNsb3NlR2VzdHVyZSIsInVuZGVmaW5lZCIsImNyZWF0ZWQiLCJzd2lwZUdlc3R1cmUiLCJESVJFQ1RJT05fTEVGVCIsInRvZ2dsZURyYXdlciIsImN1cnJlbnRVc2VyIiwibG9ja2VkIiwiJHN0b3JlIiwiZGlzcGF0Y2giLCJjb21wb25lbnRzIiwiY29tcHV0ZWQiLCJfb2JqZWN0U3ByZWFkIiwic3RhdGUiLCJ1c2VycyIsInNob3V0Iiwiam9pbmVkIiwidW5zZWVuTm90aWZpY2F0aW9ucyIsInVuc2Vlbk5vdGlmaWNhdGlvbnNDb3VudCIsImxlbmd0aCIsInN1Z2dlc3Rpb25zRW5hYmxlZCIsImluc3RhbmNlIiwibG9nbyIsImhpZGVTaXRlbmFtZSIsInNpdGVuYW1lIiwibmFtZSIsImZvbGxvd1JlcXVlc3RDb3VudCIsImFwaSIsImZvbGxvd1JlcXVlc3RzIiwicHJpdmF0ZU1vZGUiLCJmZWRlcmF0aW5nIiwidGltZWxpbmVzUm91dGUiLCJsYXN0VGltZWxpbmUiLCJoYXMiLCJwYXJhbXMiLCJ1c2VybmFtZSIsInNjcmVlbl9uYW1lIiwicGxlcm9tYUNoYXRNZXNzYWdlc0F2YWlsYWJsZSIsInN1cHBvcnRzQW5ub3VuY2VtZW50cyIsImFubm91bmNlbWVudHMiLCJtZXRob2RzIiwiZG9Mb2dvdXQiLCJsb2dvdXQiLCJ0b3VjaFN0YXJ0IiwiZSIsImJlZ2luU3dpcGUiLCJ0b3VjaE1vdmUiLCJ1cGRhdGVTd2lwZSIsIm9wZW5TZXR0aW5nc01vZGFsIiwib3BlbkFkbWluTW9kYWwiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./src/components/side_drawer/side_drawer.js?vue&type=script&lang=js\n");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js!./src/components/staff_panel/staff_panel.js?vue&type=script&lang=js":
/*!********************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js!./src/components/staff_panel/staff_panel.js?vue&type=script&lang=js ***!
\********************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"./node_modules/@babel/runtime/helpers/esm/defineProperty.js\");\n/* harmony import */ var lodash_map__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! lodash/map */ \"./node_modules/lodash/map.js\");\n/* harmony import */ var lodash_map__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash_map__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var lodash_groupBy__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! lodash/groupBy */ \"./node_modules/lodash/groupBy.js\");\n/* harmony import */ var lodash_groupBy__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(lodash_groupBy__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.esm-bundler.js\");\n/* harmony import */ var _basic_user_card_basic_user_card_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../basic_user_card/basic_user_card.vue */ \"./src/components/basic_user_card/basic_user_card.vue\");\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\n\n\nvar StaffPanel = {\n created: function created() {\n var _this = this;\n var nicknames = this.$store.state.instance.staffAccounts;\n nicknames.forEach(function (nickname) {\n return _this.$store.dispatch('fetchUserIfMissing', nickname);\n });\n },\n components: {\n BasicUserCard: _basic_user_card_basic_user_card_vue__WEBPACK_IMPORTED_MODULE_3__[\"default\"]\n },\n computed: _objectSpread(_objectSpread({\n groupedStaffAccounts: function groupedStaffAccounts() {\n var staffAccounts = lodash_map__WEBPACK_IMPORTED_MODULE_1___default()(this.staffAccounts, this.findUserByName).filter(function (_) {\n return _;\n });\n var groupedStaffAccounts = lodash_groupBy__WEBPACK_IMPORTED_MODULE_2___default()(staffAccounts, 'role');\n return [{\n role: 'admin',\n users: groupedStaffAccounts.admin\n }, {\n role: 'moderator',\n users: groupedStaffAccounts.moderator\n }].filter(function (group) {\n return group.users;\n });\n }\n }, (0,vuex__WEBPACK_IMPORTED_MODULE_4__.mapGetters)(['findUserByName'])), (0,vuex__WEBPACK_IMPORTED_MODULE_4__.mapState)({\n staffAccounts: function staffAccounts(state) {\n return state.instance.staffAccounts;\n }\n }))\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (StaffPanel);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL3NyYy9jb21wb25lbnRzL3N0YWZmX3BhbmVsL3N0YWZmX3BhbmVsLmpzP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0FBQTRCO0FBQ1E7QUFDTztBQUN1QjtBQUVsRSxJQUFNSyxVQUFVLEdBQUc7RUFDakJDLE9BQU8sV0FBQUEsUUFBQSxFQUFJO0lBQUEsSUFBQUMsS0FBQTtJQUNULElBQU1DLFNBQVMsR0FBRyxJQUFJLENBQUNDLE1BQU0sQ0FBQ0MsS0FBSyxDQUFDQyxRQUFRLENBQUNDLGFBQWE7SUFDMURKLFNBQVMsQ0FBQ0ssT0FBTyxDQUFDLFVBQUFDLFFBQVE7TUFBQSxPQUFJUCxLQUFJLENBQUNFLE1BQU0sQ0FBQ00sUUFBUSxDQUFDLG9CQUFvQixFQUFFRCxRQUFRLENBQUM7SUFBQSxFQUFDO0VBQ3JGLENBQUM7RUFDREUsVUFBVSxFQUFFO0lBQ1ZaLGFBQWEsRUFBYkEsNEVBQWFBO0VBQ2YsQ0FBQztFQUNEYSxRQUFRLEVBQUFDLGFBQUEsQ0FBQUEsYUFBQTtJQUNOQyxvQkFBb0IsV0FBQUEscUJBQUEsRUFBSTtNQUN0QixJQUFNUCxhQUFhLEdBQUdaLGlEQUFHLENBQUMsSUFBSSxDQUFDWSxhQUFhLEVBQUUsSUFBSSxDQUFDUSxjQUFjLENBQUMsQ0FBQ0MsTUFBTSxDQUFDLFVBQUFDLENBQUM7UUFBQSxPQUFJQSxDQUFDO01BQUEsRUFBQztNQUNqRixJQUFNSCxvQkFBb0IsR0FBR2xCLHFEQUFPLENBQUNXLGFBQWEsRUFBRSxNQUFNLENBQUM7TUFFM0QsT0FBTyxDQUNMO1FBQUVXLElBQUksRUFBRSxPQUFPO1FBQUVDLEtBQUssRUFBRUwsb0JBQW9CLENBQUNNO01BQU0sQ0FBQyxFQUNwRDtRQUFFRixJQUFJLEVBQUUsV0FBVztRQUFFQyxLQUFLLEVBQUVMLG9CQUFvQixDQUFDTztNQUFVLENBQUMsQ0FDN0QsQ0FBQ0wsTUFBTSxDQUFDLFVBQUFNLEtBQUs7UUFBQSxPQUFJQSxLQUFLLENBQUNILEtBQUs7TUFBQSxFQUFDO0lBQ2hDO0VBQUMsR0FDRXRCLGdEQUFVLENBQUMsQ0FDWixnQkFBZ0IsQ0FDakIsQ0FBQyxHQUNDQyw4Q0FBUSxDQUFDO0lBQ1ZTLGFBQWEsRUFBRSxTQUFBQSxjQUFBRixLQUFLO01BQUEsT0FBSUEsS0FBSyxDQUFDQyxRQUFRLENBQUNDLGFBQWE7SUFBQTtFQUN0RCxDQUFDLENBQUM7QUFFTixDQUFDO0FBRUQsaUVBQWVQLFVBQVUiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL2NvbXBvbmVudHMvc3RhZmZfcGFuZWwvc3RhZmZfcGFuZWwuanM/OTYyMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgbWFwIGZyb20gJ2xvZGFzaC9tYXAnXG5pbXBvcnQgZ3JvdXBCeSBmcm9tICdsb2Rhc2gvZ3JvdXBCeSdcbmltcG9ydCB7IG1hcEdldHRlcnMsIG1hcFN0YXRlIH0gZnJvbSAndnVleCdcbmltcG9ydCBCYXNpY1VzZXJDYXJkIGZyb20gJy4uL2Jhc2ljX3VzZXJfY2FyZC9iYXNpY191c2VyX2NhcmQudnVlJ1xuXG5jb25zdCBTdGFmZlBhbmVsID0ge1xuICBjcmVhdGVkICgpIHtcbiAgICBjb25zdCBuaWNrbmFtZXMgPSB0aGlzLiRzdG9yZS5zdGF0ZS5pbnN0YW5jZS5zdGFmZkFjY291bnRzXG4gICAgbmlja25hbWVzLmZvckVhY2gobmlja25hbWUgPT4gdGhpcy4kc3RvcmUuZGlzcGF0Y2goJ2ZldGNoVXNlcklmTWlzc2luZycsIG5pY2tuYW1lKSlcbiAgfSxcbiAgY29tcG9uZW50czoge1xuICAgIEJhc2ljVXNlckNhcmRcbiAgfSxcbiAgY29tcHV0ZWQ6IHtcbiAgICBncm91cGVkU3RhZmZBY2NvdW50cyAoKSB7XG4gICAgICBjb25zdCBzdGFmZkFjY291bnRzID0gbWFwKHRoaXMuc3RhZmZBY2NvdW50cywgdGhpcy5maW5kVXNlckJ5TmFtZSkuZmlsdGVyKF8gPT4gXylcbiAgICAgIGNvbnN0IGdyb3VwZWRTdGFmZkFjY291bnRzID0gZ3JvdXBCeShzdGFmZkFjY291bnRzLCAncm9sZScpXG5cbiAgICAgIHJldHVybiBbXG4gICAgICAgIHsgcm9sZTogJ2FkbWluJywgdXNlcnM6IGdyb3VwZWRTdGFmZkFjY291bnRzLmFkbWluIH0sXG4gICAgICAgIHsgcm9sZTogJ21vZGVyYXRvcicsIHVzZXJzOiBncm91cGVkU3RhZmZBY2NvdW50cy5tb2RlcmF0b3IgfVxuICAgICAgXS5maWx0ZXIoZ3JvdXAgPT4gZ3JvdXAudXNlcnMpXG4gICAgfSxcbiAgICAuLi5tYXBHZXR0ZXJzKFtcbiAgICAgICdmaW5kVXNlckJ5TmFtZSdcbiAgICBdKSxcbiAgICAuLi5tYXBTdGF0ZSh7XG4gICAgICBzdGFmZkFjY291bnRzOiBzdGF0ZSA9PiBzdGF0ZS5pbnN0YW5jZS5zdGFmZkFjY291bnRzXG4gICAgfSlcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBTdGFmZlBhbmVsXG4iXSwibmFtZXMiOlsibWFwIiwiZ3JvdXBCeSIsIm1hcEdldHRlcnMiLCJtYXBTdGF0ZSIsIkJhc2ljVXNlckNhcmQiLCJTdGFmZlBhbmVsIiwiY3JlYXRlZCIsIl90aGlzIiwibmlja25hbWVzIiwiJHN0b3JlIiwic3RhdGUiLCJpbnN0YW5jZSIsInN0YWZmQWNjb3VudHMiLCJmb3JFYWNoIiwibmlja25hbWUiLCJkaXNwYXRjaCIsImNvbXBvbmVudHMiLCJjb21wdXRlZCIsIl9vYmplY3RTcHJlYWQiLCJncm91cGVkU3RhZmZBY2NvdW50cyIsImZpbmRVc2VyQnlOYW1lIiwiZmlsdGVyIiwiXyIsInJvbGUiLCJ1c2VycyIsImFkbWluIiwibW9kZXJhdG9yIiwiZ3JvdXAiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./src/components/staff_panel/staff_panel.js?vue&type=script&lang=js\n");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js!./src/components/status/status.js?vue&type=script&lang=js":
/*!**********************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js!./src/components/status/status.js?vue&type=script&lang=js ***!
\**********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"./node_modules/@babel/runtime/helpers/esm/defineProperty.js\");\n/* harmony import */ var lodash_uniqBy__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! lodash/uniqBy */ \"./node_modules/lodash/uniqBy.js\");\n/* harmony import */ var lodash_uniqBy__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash_uniqBy__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var lodash_unescape__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! lodash/unescape */ \"./node_modules/lodash/unescape.js\");\n/* harmony import */ var lodash_unescape__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(lodash_unescape__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _reply_button_reply_button_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../reply_button/reply_button.vue */ \"./src/components/reply_button/reply_button.vue\");\n/* harmony import */ var _favorite_button_favorite_button_vue__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../favorite_button/favorite_button.vue */ \"./src/components/favorite_button/favorite_button.vue\");\n/* harmony import */ var _react_button_react_button_vue__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../react_button/react_button.vue */ \"./src/components/react_button/react_button.vue\");\n/* harmony import */ var _retweet_button_retweet_button_vue__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../retweet_button/retweet_button.vue */ \"./src/components/retweet_button/retweet_button.vue\");\n/* harmony import */ var _extra_buttons_extra_buttons_vue__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../extra_buttons/extra_buttons.vue */ \"./src/components/extra_buttons/extra_buttons.vue\");\n/* harmony import */ var _post_status_form_post_status_form_vue__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../post_status_form/post_status_form.vue */ \"./src/components/post_status_form/post_status_form.vue\");\n/* harmony import */ var _user_avatar_user_avatar_vue__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../user_avatar/user_avatar.vue */ \"./src/components/user_avatar/user_avatar.vue\");\n/* harmony import */ var _avatar_list_avatar_list_vue__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../avatar_list/avatar_list.vue */ \"./src/components/avatar_list/avatar_list.vue\");\n/* harmony import */ var _timeago_timeago_vue__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../timeago/timeago.vue */ \"./src/components/timeago/timeago.vue\");\n/* harmony import */ var _status_content_status_content_vue__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../status_content/status_content.vue */ \"./src/components/status_content/status_content.vue\");\n/* harmony import */ var src_components_rich_content_rich_content_jsx__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! src/components/rich_content/rich_content.jsx */ \"./src/components/rich_content/rich_content.jsx\");\n/* harmony import */ var _status_popover_status_popover_vue__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../status_popover/status_popover.vue */ \"./src/components/status_popover/status_popover.vue\");\n/* harmony import */ var _user_popover_user_popover_vue__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../user_popover/user_popover.vue */ \"./src/components/user_popover/user_popover.vue\");\n/* harmony import */ var _user_list_popover_user_list_popover_vue__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../user_list_popover/user_list_popover.vue */ \"./src/components/user_list_popover/user_list_popover.vue\");\n/* harmony import */ var _emoji_reactions_emoji_reactions_vue__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../emoji_reactions/emoji_reactions.vue */ \"./src/components/emoji_reactions/emoji_reactions.vue\");\n/* harmony import */ var _user_link_user_link_vue__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../user_link/user_link.vue */ \"./src/components/user_link/user_link.vue\");\n/* harmony import */ var src_components_mentions_line_mentions_line_vue__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! src/components/mentions_line/mentions_line.vue */ \"./src/components/mentions_line/mentions_line.vue\");\n/* harmony import */ var src_components_mention_link_mention_link_vue__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! src/components/mention_link/mention_link.vue */ \"./src/components/mention_link/mention_link.vue\");\n/* harmony import */ var src_services_user_profile_link_generator_user_profile_link_generator__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! src/services/user_profile_link_generator/user_profile_link_generator */ \"./src/services/user_profile_link_generator/user_profile_link_generator.js\");\n/* harmony import */ var _services_user_highlighter_user_highlighter_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ../../services/user_highlighter/user_highlighter.js */ \"./src/services/user_highlighter/user_highlighter.js\");\n/* harmony import */ var _services_status_parser_status_parser_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ../../services/status_parser/status_parser.js */ \"./src/services/status_parser/status_parser.js\");\n/* harmony import */ var _fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! @fortawesome/fontawesome-svg-core */ \"./node_modules/@fortawesome/fontawesome-svg-core/index.mjs\");\n/* harmony import */ var _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! @fortawesome/free-solid-svg-icons */ \"./node_modules/@fortawesome/free-solid-svg-icons/index.mjs\");\n\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n_fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_24__.library.add(_fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_25__.faEnvelope, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_25__.faGlobe, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_25__.faLock, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_25__.faLockOpen, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_25__.faTimes, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_25__.faRetweet, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_25__.faReply, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_25__.faPlusSquare, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_25__.faStar, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_25__.faSmileBeam, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_25__.faEllipsisH, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_25__.faEyeSlash, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_25__.faEye, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_25__.faThumbtack, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_25__.faChevronUp, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_25__.faChevronDown, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_25__.faAngleDoubleRight);\nvar camelCase = function camelCase(name) {\n return name.charAt(0).toUpperCase() + name.slice(1);\n};\nvar controlledOrUncontrolledGetters = function controlledOrUncontrolledGetters(list) {\n return list.reduce(function (res, name) {\n var camelized = camelCase(name);\n var toggle = \"controlledToggle\".concat(camelized);\n var controlledName = \"controlled\".concat(camelized);\n var uncontrolledName = \"uncontrolled\".concat(camelized);\n res[name] = function () {\n return (this.$data[toggle] !== undefined || this.$props[toggle] !== undefined) && this[toggle] ? this[controlledName] : this[uncontrolledName];\n };\n return res;\n }, {});\n};\nvar controlledOrUncontrolledToggle = function controlledOrUncontrolledToggle(obj, name) {\n var camelized = camelCase(name);\n var toggle = \"controlledToggle\".concat(camelized);\n var uncontrolledName = \"uncontrolled\".concat(camelized);\n if (obj[toggle]) {\n obj[toggle]();\n } else {\n obj[uncontrolledName] = !obj[uncontrolledName];\n }\n};\nvar controlledOrUncontrolledSet = function controlledOrUncontrolledSet(obj, name, val) {\n var camelized = camelCase(name);\n var set = \"controlledSet\".concat(camelized);\n var uncontrolledName = \"uncontrolled\".concat(camelized);\n if (obj[set]) {\n obj[set](val);\n } else {\n obj[uncontrolledName] = val;\n }\n};\nvar Status = {\n name: 'Status',\n components: {\n ReplyButton: _reply_button_reply_button_vue__WEBPACK_IMPORTED_MODULE_3__[\"default\"],\n FavoriteButton: _favorite_button_favorite_button_vue__WEBPACK_IMPORTED_MODULE_4__[\"default\"],\n ReactButton: _react_button_react_button_vue__WEBPACK_IMPORTED_MODULE_5__[\"default\"],\n RetweetButton: _retweet_button_retweet_button_vue__WEBPACK_IMPORTED_MODULE_6__[\"default\"],\n ExtraButtons: _extra_buttons_extra_buttons_vue__WEBPACK_IMPORTED_MODULE_7__[\"default\"],\n PostStatusForm: _post_status_form_post_status_form_vue__WEBPACK_IMPORTED_MODULE_8__[\"default\"],\n UserAvatar: _user_avatar_user_avatar_vue__WEBPACK_IMPORTED_MODULE_9__[\"default\"],\n AvatarList: _avatar_list_avatar_list_vue__WEBPACK_IMPORTED_MODULE_10__[\"default\"],\n Timeago: _timeago_timeago_vue__WEBPACK_IMPORTED_MODULE_11__[\"default\"],\n StatusPopover: _status_popover_status_popover_vue__WEBPACK_IMPORTED_MODULE_14__[\"default\"],\n UserListPopover: _user_list_popover_user_list_popover_vue__WEBPACK_IMPORTED_MODULE_16__[\"default\"],\n EmojiReactions: _emoji_reactions_emoji_reactions_vue__WEBPACK_IMPORTED_MODULE_17__[\"default\"],\n StatusContent: _status_content_status_content_vue__WEBPACK_IMPORTED_MODULE_12__[\"default\"],\n RichContent: src_components_rich_content_rich_content_jsx__WEBPACK_IMPORTED_MODULE_13__[\"default\"],\n MentionLink: src_components_mention_link_mention_link_vue__WEBPACK_IMPORTED_MODULE_20__[\"default\"],\n MentionsLine: src_components_mentions_line_mentions_line_vue__WEBPACK_IMPORTED_MODULE_19__[\"default\"],\n UserPopover: _user_popover_user_popover_vue__WEBPACK_IMPORTED_MODULE_15__[\"default\"],\n UserLink: _user_link_user_link_vue__WEBPACK_IMPORTED_MODULE_18__[\"default\"]\n },\n props: ['statusoid', 'expandable', 'inConversation', 'focused', 'highlight', 'compact', 'replies', 'isPreview', 'noHeading', 'inlineExpanded', 'showPinned', 'inProfile', 'profileUserId', 'inQuote', 'simpleTree', 'controlledThreadDisplayStatus', 'controlledToggleThreadDisplay', 'showOtherRepliesAsButton', 'controlledShowingTall', 'controlledToggleShowingTall', 'controlledExpandingSubject', 'controlledToggleExpandingSubject', 'controlledShowingLongSubject', 'controlledToggleShowingLongSubject', 'controlledReplying', 'controlledToggleReplying', 'controlledMediaPlaying', 'controlledSetMediaPlaying', 'dive'],\n data: function data() {\n return {\n uncontrolledReplying: false,\n unmuted: false,\n userExpanded: false,\n uncontrolledMediaPlaying: [],\n suspendable: true,\n error: null,\n headTailLinks: null,\n displayQuote: !this.inQuote\n };\n },\n computed: _objectSpread(_objectSpread({}, controlledOrUncontrolledGetters(['replying', 'mediaPlaying'])), {}, {\n muteWords: function muteWords() {\n return this.mergedConfig.muteWords;\n },\n showReasonMutedThread: function showReasonMutedThread() {\n return (this.status.thread_muted || this.status.reblog && this.status.reblog.thread_muted) && !this.inConversation;\n },\n repeaterClass: function repeaterClass() {\n var user = this.statusoid.user;\n return (0,_services_user_highlighter_user_highlighter_js__WEBPACK_IMPORTED_MODULE_22__.highlightClass)(user);\n },\n userClass: function userClass() {\n var user = this.retweet ? this.statusoid.retweeted_status.user : this.statusoid.user;\n return (0,_services_user_highlighter_user_highlighter_js__WEBPACK_IMPORTED_MODULE_22__.highlightClass)(user);\n },\n deleted: function deleted() {\n return this.statusoid.deleted;\n },\n repeaterStyle: function repeaterStyle() {\n var user = this.statusoid.user;\n var highlight = this.mergedConfig.highlight;\n return (0,_services_user_highlighter_user_highlighter_js__WEBPACK_IMPORTED_MODULE_22__.highlightStyle)(highlight[user.screen_name]);\n },\n userStyle: function userStyle() {\n if (this.noHeading) return;\n var user = this.retweet ? this.statusoid.retweeted_status.user : this.statusoid.user;\n var highlight = this.mergedConfig.highlight;\n return (0,_services_user_highlighter_user_highlighter_js__WEBPACK_IMPORTED_MODULE_22__.highlightStyle)(highlight[user.screen_name]);\n },\n userProfileLink: function userProfileLink() {\n return this.generateUserProfileLink(this.status.user.id, this.status.user.screen_name);\n },\n replyProfileLink: function replyProfileLink() {\n if (this.isReply) {\n var user = this.$store.getters.findUser(this.status.in_reply_to_user_id);\n // FIXME Why user not found sometimes???\n return user ? user.statusnet_profile_url : 'NOT_FOUND';\n }\n },\n retweet: function retweet() {\n return !!this.statusoid.retweeted_status;\n },\n retweeterUser: function retweeterUser() {\n return this.statusoid.user;\n },\n retweeter: function retweeter() {\n return this.statusoid.user.name || this.statusoid.user.screen_name_ui;\n },\n retweeterHtml: function retweeterHtml() {\n return this.statusoid.user.name;\n },\n retweeterProfileLink: function retweeterProfileLink() {\n return this.generateUserProfileLink(this.statusoid.user.id, this.statusoid.user.screen_name);\n },\n status: function status() {\n if (this.retweet) {\n return this.statusoid.retweeted_status;\n } else {\n return this.statusoid;\n }\n },\n statusFromGlobalRepository: function statusFromGlobalRepository() {\n // NOTE: Consider to replace status with statusFromGlobalRepository\n return this.$store.state.statuses.allStatusesObject[this.status.id];\n },\n loggedIn: function loggedIn() {\n return !!this.currentUser;\n },\n muteWordHits: function muteWordHits() {\n return (0,_services_status_parser_status_parser_js__WEBPACK_IMPORTED_MODULE_23__.muteWordHits)(this.status, this.muteWords);\n },\n rtBotStatus: function rtBotStatus() {\n return this.statusoid.user.bot;\n },\n botStatus: function botStatus() {\n return this.status.user.bot;\n },\n botIndicator: function botIndicator() {\n return this.botStatus && !this.hideBotIndication;\n },\n rtBotIndicator: function rtBotIndicator() {\n return this.rtBotStatus && !this.hideBotIndication;\n },\n mentionsLine: function mentionsLine() {\n var _this = this;\n if (!this.headTailLinks) return [];\n var writtenSet = new Set(this.headTailLinks.writtenMentions.map(function (_) {\n return _.url;\n }));\n return this.status.attentions.filter(function (attn) {\n // no reply user\n return attn.id !== _this.status.in_reply_to_user_id &&\n // no self-replies\n attn.statusnet_profile_url !== _this.status.user.statusnet_profile_url &&\n // don't include if mentions is written\n !writtenSet.has(attn.statusnet_profile_url);\n }).map(function (attn) {\n return {\n url: attn.statusnet_profile_url,\n content: attn.screen_name,\n userId: attn.id\n };\n });\n },\n hasMentionsLine: function hasMentionsLine() {\n return this.mentionsLine.length > 0;\n },\n muted: function muted() {\n if (this.statusoid.user.id === this.currentUser.id) return false;\n var reasonsToMute = this.userIsMuted ||\n // Thread is muted\n status.thread_muted ||\n // Wordfiltered\n this.muteWordHits.length > 0 ||\n // bot status\n this.muteBotStatuses && this.botStatus && !this.compact;\n return !this.unmuted && !this.shouldNotMute && reasonsToMute;\n },\n userIsMuted: function userIsMuted() {\n if (this.statusoid.user.id === this.currentUser.id) return false;\n var status = this.status;\n var reblog = status.reblog;\n var relationship = this.$store.getters.relationship(status.user.id);\n var relationshipReblog = reblog && this.$store.getters.relationship(reblog.user.id);\n return status.muted ||\n // Reprööt of a muted post according to BE\n reblog && reblog.muted ||\n // Muted user\n relationship.muting ||\n // Muted user of a reprööt\n relationshipReblog && relationshipReblog.muting;\n },\n shouldNotMute: function shouldNotMute() {\n var status = this.status;\n var reblog = status.reblog;\n return (this.inProfile && (\n // Don't mute user's posts on user timeline (except reblogs)\n !reblog && status.user.id === this.profileUserId ||\n // Same as above but also allow self-reblogs\n reblog && reblog.user.id === this.profileUserId) ||\n // Don't mute statuses in muted conversation when said conversation is opened\n this.inConversation && status.thread_muted\n // No excuses if post has muted words\n ) && !this.muteWordHits.length > 0;\n },\n hideMutedUsers: function hideMutedUsers() {\n return this.mergedConfig.hideMutedPosts;\n },\n hideMutedThreads: function hideMutedThreads() {\n return this.mergedConfig.hideMutedThreads;\n },\n hideFilteredStatuses: function hideFilteredStatuses() {\n return this.mergedConfig.hideFilteredStatuses;\n },\n hideWordFilteredPosts: function hideWordFilteredPosts() {\n return this.mergedConfig.hideWordFilteredPosts;\n },\n hideStatus: function hideStatus() {\n return !this.shouldNotMute && (this.muted && this.hideFilteredStatuses || this.userIsMuted && this.hideMutedUsers || this.status.thread_muted && this.hideMutedThreads || this.muteWordHits.length > 0 && this.hideWordFilteredPosts);\n },\n isFocused: function isFocused() {\n // retweet or root of an expanded conversation\n if (this.focused) {\n return true;\n } else if (!this.inConversation) {\n return false;\n }\n // use conversation highlight only when in conversation\n return this.status.id === this.highlight;\n },\n isReply: function isReply() {\n return !!(this.status.in_reply_to_status_id && this.status.in_reply_to_user_id);\n },\n replyToName: function replyToName() {\n if (this.status.in_reply_to_screen_name) {\n return this.status.in_reply_to_screen_name;\n } else {\n var user = this.$store.getters.findUser(this.status.in_reply_to_user_id);\n return user && user.screen_name_ui;\n }\n },\n replySubject: function replySubject() {\n if (!this.status.summary) return '';\n var decodedSummary = lodash_unescape__WEBPACK_IMPORTED_MODULE_2___default()(this.status.summary);\n var behavior = this.mergedConfig.subjectLineBehavior;\n var startsWithRe = decodedSummary.match(/^re[: ]/i);\n if (behavior !== 'noop' && startsWithRe || behavior === 'masto') {\n return decodedSummary;\n } else if (behavior === 'email') {\n return 're: '.concat(decodedSummary);\n } else if (behavior === 'noop') {\n return '';\n }\n },\n combinedFavsAndRepeatsUsers: function combinedFavsAndRepeatsUsers() {\n // Use the status from the global status repository since favs and repeats are saved in it\n var combinedUsers = [].concat(this.statusFromGlobalRepository.favoritedBy, this.statusFromGlobalRepository.rebloggedBy);\n return lodash_uniqBy__WEBPACK_IMPORTED_MODULE_1___default()(combinedUsers, 'id');\n },\n tags: function tags() {\n // eslint-disable-next-line no-prototype-builtins\n return this.status.tags.filter(function (tagObj) {\n return tagObj.hasOwnProperty('name');\n }).map(function (tagObj) {\n return tagObj.name;\n }).join(' ');\n },\n hidePostStats: function hidePostStats() {\n return this.mergedConfig.hidePostStats;\n },\n muteBotStatuses: function muteBotStatuses() {\n return this.mergedConfig.muteBotStatuses;\n },\n hideBotIndication: function hideBotIndication() {\n return this.mergedConfig.hideBotIndication;\n },\n currentUser: function currentUser() {\n return this.$store.state.users.currentUser;\n },\n betterShadow: function betterShadow() {\n return this.$store.state[\"interface\"].browserSupport.cssFilter;\n },\n mergedConfig: function mergedConfig() {\n return this.$store.getters.mergedConfig;\n },\n isSuspendable: function isSuspendable() {\n return !this.replying && this.mediaPlaying.length === 0;\n },\n inThreadForest: function inThreadForest() {\n return !!this.controlledThreadDisplayStatus;\n },\n threadShowing: function threadShowing() {\n return this.controlledThreadDisplayStatus === 'showing';\n },\n visibilityLocalized: function visibilityLocalized() {\n return this.$i18n.t('general.scope_in_timeline.' + this.status.visibility);\n },\n isEdited: function isEdited() {\n return this.status.edited_at !== null;\n },\n editingAvailable: function editingAvailable() {\n return this.$store.state.instance.editingAvailable;\n },\n hasVisibleQuote: function hasVisibleQuote() {\n return this.status.quote_url && this.status.quote_visible;\n },\n hasInvisibleQuote: function hasInvisibleQuote() {\n return this.status.quote_url && !this.status.quote_visible;\n },\n quotedStatus: function quotedStatus() {\n return this.status.quote_id ? this.$store.state.statuses.allStatusesObject[this.status.quote_id] : undefined;\n },\n shouldDisplayQuote: function shouldDisplayQuote() {\n return this.quotedStatus && this.displayQuote;\n }\n }),\n methods: {\n visibilityIcon: function visibilityIcon(visibility) {\n switch (visibility) {\n case 'private':\n return 'lock';\n case 'unlisted':\n return 'lock-open';\n case 'direct':\n return 'envelope';\n default:\n return 'globe';\n }\n },\n showError: function showError(error) {\n this.error = error;\n },\n clearError: function clearError() {\n this.error = undefined;\n },\n toggleReplying: function toggleReplying() {\n controlledOrUncontrolledToggle(this, 'replying');\n },\n gotoOriginal: function gotoOriginal(id) {\n if (this.inConversation) {\n this.$emit('goto', id);\n }\n },\n toggleExpanded: function toggleExpanded() {\n this.$emit('toggleExpanded');\n },\n toggleMute: function toggleMute() {\n this.unmuted = !this.unmuted;\n },\n toggleUserExpanded: function toggleUserExpanded() {\n this.userExpanded = !this.userExpanded;\n },\n generateUserProfileLink: function generateUserProfileLink(id, name) {\n return (0,src_services_user_profile_link_generator_user_profile_link_generator__WEBPACK_IMPORTED_MODULE_21__[\"default\"])(id, name, this.$store.state.instance.restrictedNicknames);\n },\n addMediaPlaying: function addMediaPlaying(id) {\n controlledOrUncontrolledSet(this, 'mediaPlaying', this.mediaPlaying.concat(id));\n },\n removeMediaPlaying: function removeMediaPlaying(id) {\n controlledOrUncontrolledSet(this, 'mediaPlaying', this.mediaPlaying.filter(function (mediaId) {\n return mediaId !== id;\n }));\n },\n setHeadTailLinks: function setHeadTailLinks(headTailLinks) {\n this.headTailLinks = headTailLinks;\n },\n toggleThreadDisplay: function toggleThreadDisplay() {\n this.controlledToggleThreadDisplay();\n },\n scrollIfHighlighted: function scrollIfHighlighted(highlightId) {\n var id = highlightId;\n if (this.status.id === id) {\n var rect = this.$el.getBoundingClientRect();\n if (rect.top < 100) {\n // Post is above screen, match its top to screen top\n window.scrollBy(0, rect.top - 100);\n } else if (rect.height >= window.innerHeight - 50) {\n // Post we want to see is taller than screen so match its top to screen top\n window.scrollBy(0, rect.top - 100);\n } else if (rect.bottom > window.innerHeight - 50) {\n // Post is below screen, match its bottom to screen bottom\n window.scrollBy(0, rect.bottom - window.innerHeight + 50);\n }\n }\n },\n toggleDisplayQuote: function toggleDisplayQuote() {\n var _this2 = this;\n if (this.shouldDisplayQuote) {\n this.displayQuote = false;\n } else if (!this.quotedStatus) {\n this.$store.dispatch('fetchStatus', this.status.quote_id).then(function () {\n _this2.displayQuote = true;\n });\n } else {\n this.displayQuote = true;\n }\n }\n },\n watch: {\n highlight: function highlight(id) {\n this.scrollIfHighlighted(id);\n },\n 'status.repeat_num': function statusRepeat_num(num) {\n // refetch repeats when repeat_num is changed in any way\n if (this.isFocused && this.statusFromGlobalRepository.rebloggedBy && this.statusFromGlobalRepository.rebloggedBy.length !== num) {\n this.$store.dispatch('fetchRepeats', this.status.id);\n }\n },\n 'status.fave_num': function statusFave_num(num) {\n // refetch favs when fave_num is changed in any way\n if (this.isFocused && this.statusFromGlobalRepository.favoritedBy && this.statusFromGlobalRepository.favoritedBy.length !== num) {\n this.$store.dispatch('fetchFavs', this.status.id);\n }\n },\n isSuspendable: function isSuspendable(val) {\n this.suspendable = val;\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Status);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL3NyYy9jb21wb25lbnRzL3N0YXR1cy9zdGF0dXMuanM/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUEwRDtBQUNTO0FBQ1Q7QUFDTTtBQUNIO0FBQ1E7QUFDZDtBQUNBO0FBQ1g7QUFDb0I7QUFDTTtBQUNOO0FBQ047QUFDYztBQUNMO0FBQ2xCO0FBQ3dCO0FBQ0g7QUFDZ0M7QUFDRjtBQUN4QjtBQUdqQjtBQW1CakI7QUFFMUNzQiwyRUFBVyxDQUNUQywwRUFBVSxFQUNWRyx1RUFBTyxFQUNQRixzRUFBTSxFQUNOQywwRUFBVSxFQUNWRSx1RUFBTyxFQUNQQyx5RUFBUyxFQUNUQyx1RUFBTyxFQUNQQyw0RUFBWSxFQUNaRyxzRUFBTSxFQUNORiwyRUFBVyxFQUNYQywyRUFBVyxFQUNYRSwwRUFBVSxFQUNWQyxxRUFBSyxFQUNMQywyRUFBVyxFQUNYQywyRUFBVyxFQUNYQyw2RUFBYSxFQUNiQyxrRkFDRixDQUFDO0FBRUQsSUFBTUUsU0FBUyxHQUFHLFNBQVpBLFNBQVNBLENBQUdDLElBQUk7RUFBQSxPQUFJQSxJQUFJLENBQUNDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQ0MsV0FBVyxDQUFDLENBQUMsR0FBR0YsSUFBSSxDQUFDRyxLQUFLLENBQUMsQ0FBQyxDQUFDO0FBQUE7QUFFdEUsSUFBTUMsK0JBQStCLEdBQUcsU0FBbENBLCtCQUErQkEsQ0FBR0MsSUFBSTtFQUFBLE9BQUlBLElBQUksQ0FBQ0MsTUFBTSxDQUFDLFVBQUNDLEdBQUcsRUFBRVAsSUFBSSxFQUFLO0lBQ3pFLElBQU1RLFNBQVMsR0FBR1QsU0FBUyxDQUFDQyxJQUFJLENBQUM7SUFDakMsSUFBTVMsTUFBTSxzQkFBQUMsTUFBQSxDQUFzQkYsU0FBUyxDQUFFO0lBQzdDLElBQU1HLGNBQWMsZ0JBQUFELE1BQUEsQ0FB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QUFBLGNBQVUzSCxHQUFHLEVBQUU7TUFDNUIsSUFBSSxDQUFDVSxXQUFXLEdBQUdWLEdBQUc7SUFDeEI7RUFDRjtBQUNGLENBQUM7QUFFRCxpRUFBZUUsTUFBTSIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvY29tcG9uZW50cy9zdGF0dXMvc3RhdHVzLmpzP2JkNWQiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlcGx5QnV0dG9uIGZyb20gJy4uL3JlcGx5X2J1dHRvbi9yZXBseV9idXR0b24udnVlJ1xuaW1wb3J0IEZhdm9yaXRlQnV0dG9uIGZyb20gJy4uL2Zhdm9yaXRlX2J1dHRvbi9mYXZvcml0ZV9idXR0b24udnVlJ1xuaW1wb3J0IFJlYWN0QnV0dG9uIGZyb20gJy4uL3JlYWN0X2J1dHRvbi9yZWFjdF9idXR0b24udnVlJ1xuaW1wb3J0IFJldHdlZXRCdXR0b24gZnJvbSAnLi4vcmV0d2VldF9idXR0b24vcmV0d2VldF9idXR0b24udnVlJ1xuaW1wb3J0IEV4dHJhQnV0dG9ucyBmcm9tICcuLi9leHRyYV9idXR0b25zL2V4dHJhX2J1dHRvbnMudnVlJ1xuaW1wb3J0IFBvc3RTdGF0dXNGb3JtIGZyb20gJy4uL3Bvc3Rfc3RhdHVzX2Zvcm0vcG9zdF9zdGF0dXNfZm9ybS52dWUnXG5pbXBvcnQgVXNlckF2YXRhciBmcm9tICcuLi91c2VyX2F2YXRhci91c2VyX2F2YXRhci52dWUnXG5pbXBvcnQgQXZhdGFyTGlzdCBmcm9tICcuLi9hdmF0YXJfbGlzdC9hdmF0YXJfbGlzdC52dWUnXG5pbXBvcnQgVGltZWFnbyBmcm9tICcuLi90aW1lYWdvL3RpbWVhZ28udnVlJ1xuaW1wb3J0IFN0YXR1c0NvbnRlbnQgZnJvbSAnLi4vc3RhdHVzX2NvbnRlbnQvc3RhdHVzX2NvbnRlbnQudnVlJ1xuaW1wb3J0IFJpY2hDb250ZW50IGZyb20gJ3NyYy9jb21wb25lbnRzL3JpY2hfY29udGVudC9yaWNoX2NvbnRlbnQuanN4J1xuaW1wb3J0IFN0YXR1c1BvcG92ZXIgZnJvbSAnLi4vc3RhdHVzX3BvcG92ZXIvc3RhdHVzX3BvcG92ZXIudnVlJ1xuaW1wb3J0IFVzZXJQb3BvdmVyIGZyb20gJy4uL3VzZXJfcG9wb3Zlci91c2VyX3BvcG92ZXIudnVlJ1xuaW1wb3J0IFVzZXJMaXN0UG9wb3ZlciBmcm9tICcuLi91c2VyX2xpc3RfcG9wb3Zlci91c2VyX2xpc3RfcG9wb3Zlci52dWUnXG5pbXBvcnQgRW1vamlSZWFjdGlvbnMgZnJvbSAnLi4vZW1vamlfcmVhY3Rpb25zL2Vtb2ppX3JlYWN0aW9ucy52dWUnXG5pbXBvcnQgVXNlckxpbmsgZnJvbSAnLi4vdXNlcl9saW5rL3VzZXJfbGluay52dWUnXG5pbXBvcnQgTWVudGlvbnNMaW5lIGZyb20gJ3NyYy9jb21wb25lbnRzL21lbnRpb25zX2xpbmUvbWVudGlvbnNfbGluZS52dWUnXG5pbXBvcnQgTWVudGlvbkxpbmsgZnJvbSAnc3JjL2NvbXBvbmVudHMvbWVudGlvbl9saW5rL21lbnRpb25fbGluay52dWUnXG5pbXBvcnQgZ2VuZXJhdGVQcm9maWxlTGluayBmcm9tICdzcmMvc2VydmljZXMvdXNlcl9wcm9maWxlX2xpbmtfZ2VuZXJhdG9yL3VzZXJfcHJvZmlsZV9saW5rX2dlbmVyYXRvcidcbmltcG9ydCB7IGhpZ2hsaWdodENsYXNzLCBoaWdobGlnaHRTdHlsZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3VzZXJfaGlnaGxpZ2h0ZXIvdXNlcl9oaWdobGlnaHRlci5qcydcbmltcG9ydCB7IG11dGVXb3JkSGl0cyB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3N0YXR1c19wYXJzZXIvc3RhdHVzX3BhcnNlci5qcydcbmltcG9ydCB7IHVuZXNjYXBlLCB1bmlxQnkgfSBmcm9tICdsb2Rhc2gnXG5cbmltcG9ydCB7IGxpYnJhcnkgfSBmcm9tICdAZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtc3ZnLWNvcmUnXG5pbXBvcnQge1xuICBmYUVudmVsb3BlLFxuICBmYUxvY2ssXG4gIGZhTG9ja09wZW4sXG4gIGZhR2xvYmUsXG4gIGZhVGltZXMsXG4gIGZhUmV0d2VldCxcbiAgZmFSZXBseSxcbiAgZmFQbHVzU3F1YXJlLFxuICBmYVNtaWxlQmVhbSxcbiAgZmFFbGxpcHNpc0gsXG4gIGZhU3RhcixcbiAgZmFFeWVTbGFzaCxcbiAgZmFFeWUsXG4gIGZhVGh1bWJ0YWNrLFxuICBmYUNoZXZyb25VcCxcbiAgZmFDaGV2cm9uRG93bixcbiAgZmFBbmdsZURvdWJsZVJpZ2h0XG59IGZyb20gJ0Bmb3J0YXdlc29tZS9mcmVlLXNvbGlkLXN2Zy1pY29ucydcblxubGlicmFyeS5hZGQoXG4gIGZhRW52ZWxvcGUsXG4gIGZhR2xvYmUsXG4gIGZhTG9jayxcbiAgZmFMb2NrT3BlbixcbiAgZmFUaW1lcyxcbiAgZmFSZXR3ZWV0LFxuICBmYVJlcGx5LFxuICBmYVBsdXNTcXVhcmUsXG4gIGZhU3RhcixcbiAgZmFTbWlsZUJlYW0sXG4gIGZhRWxsaXBzaXNILFxuICBmYUV5ZVNsYXNoLFxuICBmYUV5ZSxcbiAgZmFUaHVtYnRhY2ssXG4gIGZhQ2hldnJvblVwLFxuICBmYUNoZXZyb25Eb3duLFxuICBmYUFuZ2xlRG91YmxlUmlnaHRcbilcblxuY29uc3QgY2FtZWxDYXNlID0gbmFtZSA9PiBuYW1lLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpICsgbmFtZS5zbGljZSgxKVxuXG5jb25zdCBjb250cm9sbGVkT3JVbmNvbnRyb2xsZWRHZXR0ZXJzID0gbGlzdCA9PiBsaXN0LnJlZHVjZSgocmVzLCBuYW1lKSA9PiB7XG4gIGNvbnN0IGNhbWVsaXplZCA9IGNhbWVsQ2FzZShuYW1lKVxuICBjb25zdCB0b2dnbGUgPSBgY29udHJvbGxlZFRvZ2dsZSR7Y2FtZWxpemVkfWBcbiAgY29uc3QgY29udHJvbGxlZE5hbWUgPSBgY29udHJvbGxlZCR7Y2FtZWxpemVkfWBcbiAgY29uc3QgdW5jb250cm9sbGVkTmFtZSA9IGB1bmNvbnRyb2xsZWQke2NhbWVsaXplZH1gXG4gIHJlc1tuYW1lXSA9IGZ1bmN0aW9uICgpIHtcbiAgICByZXR1cm4gKCh0aGlzLiRkYXRhW3RvZ2dsZV0gIT09IHVuZGVmaW5lZCB8fCB0aGlzLiRwcm9wc1t0b2dnbGVdICE9PSB1bmRlZmluZWQpICYmIHRoaXNbdG9nZ2xlXSkgPyB0aGlzW2NvbnRyb2xsZWROYW1lXSA6IHRoaXNbdW5jb250cm9sbGVkTmFtZV1cbiAgfVxuICByZXR1cm4gcmVzXG59LCB7fSlcblxuY29uc3QgY29udHJvbGxlZE9yVW5jb250cm9sbGVkVG9nZ2xlID0gKG9iaiwgbmFtZSkgPT4ge1xuICBjb25zdCBjYW1lbGl6ZWQgPSBjYW1lbENhc2UobmFtZSlcbiAgY29uc3QgdG9nZ2xlID0gYGNvbnRyb2xsZWRUb2dnbGUke2NhbWVsaXplZH1gXG4gIGNvbnN0IHVuY29udHJvbGxlZE5hbWUgPSBgdW5jb250cm9sbGVkJHtjYW1lbGl6ZWR9YFxuICBpZiAob2JqW3RvZ2dsZV0pIHtcbiAgICBvYmpbdG9nZ2xlXSgpXG4gIH0gZWxzZSB7XG4gICAgb2JqW3VuY29udHJvbGxlZE5hbWVdID0gIW9ialt1bmNvbnRyb2xsZWROYW1lXVxuICB9XG59XG5cbmNvbnN0IGNvbnRyb2xsZWRPclVuY29udHJvbGxlZFNldCA9IChvYmosIG5hbWUsIHZhbCkgPT4ge1xuICBjb25zdCBjYW1lbGl6ZWQgPSBjYW1lbENhc2UobmFtZSlcbiAgY29uc3Qgc2V0ID0gYGNvbnRyb2xsZWRTZXQke2NhbWVsaXplZH1gXG4gIGNvbnN0IHVuY29udHJvbGxlZE5hbWUgPSBgdW5jb250cm9sbGVkJHtjYW1lbGl6ZWR9YFxuICBpZiAob2JqW3NldF0pIHtcbiAgICBvYmpbc2V0XSh2YWwpXG4gIH0gZWxzZSB7XG4gICAgb2JqW3VuY29udHJvbGxlZE5hbWVdID0gdmFsXG4gIH1cbn1cblxuY29uc3QgU3RhdHVzID0ge1xuICBuYW1lOiAnU3RhdHVzJyxcbiAgY29tcG9uZW50czoge1xuICAgIFJlcGx5QnV0dG9uLFxuICAgIEZhdm9yaXRlQnV0dG9uLFxuICAgIFJlYWN0QnV0dG9uLFxuICAgIFJldHdlZXRCdXR0b24sXG4gICAgRXh0cmFCdXR0b25zLFxuICAgIFBvc3RTdGF0dXNGb3JtLFxuICAgIFVzZXJBdmF0YXIsXG4gICAgQXZhdGFyTGlzdCxcbiAgICBUaW1lYWdvLFxuICAgIFN0YXR1c1BvcG92ZXIsXG4gICAgVXNlckxpc3RQb3BvdmVyLFxuICAgIEVtb2ppUmVhY3Rpb25zLFxuICAgIFN0YXR1c0NvbnRlbnQsXG4gICAgUmljaENvbnRlbnQsXG4gICAgTWVudGlvbkxpbmssXG4gICAgTWVudGlvbnNMaW5lLFxuICAgIFVzZXJQb3BvdmVyLFxuICAgIFVzZXJMaW5rXG4gIH0sXG4gIHByb3BzOiBbXG4gICAgJ3N0YXR1c29pZCcsXG4gICAgJ2V4cGFuZGFibGUnLFxuICAgICdpbkNvbnZlcnNhdGlvbicsXG4gICAgJ2ZvY3VzZWQnLFxuICAgICdoaWdobGlnaHQnLFxuICAgICdjb21wYWN0JyxcbiAgICAncmVwbGllcycsXG4gICAgJ2lzUHJldmlldycsXG4gICAgJ25vSGVhZGluZycsXG4gICAgJ2lubGluZUV4cGFuZGVkJyxcbiAgICAnc2hvd1Bpbm5lZCcsXG4gICAgJ2luUHJvZmlsZScsXG4gICAgJ3Byb2ZpbGVVc2VySWQnLFxuICAgICdpblF1b3RlJyxcblxuICAgICdzaW1wbGVUcmVlJyxcbiAgICAnY29udHJvbGxlZFRocmVhZERpc3BsYXlTdGF0dXMnLFxuICAgICdjb250cm9sbGVkVG9nZ2xlVGhyZWFkRGlzcGxheScsXG4gICAgJ3Nob3dPdGhlclJlcGxpZXNBc0J1dHRvbicsXG5cbiAgICAnY29udHJvbGxlZFNob3dpbmdUYWxsJyxcbiAgICAnY29udHJvbGxlZFRvZ2dsZVNob3dpbmdUYWxsJyxcbiAgICAnY29udHJvbGxlZEV4cGFuZGluZ1N1YmplY3QnLFxuICAgICdjb250cm9sbGVkVG9nZ2xlRXhwYW5kaW5nU3ViamVjdCcsXG4gICAgJ2NvbnRyb2xsZWRTaG93aW5nTG9uZ1N1YmplY3QnLFxuICAgICdjb250cm9sbGVkVG9nZ2xlU2hvd2luZ0xvbmdTdWJqZWN0JyxcbiAgICAnY29udHJvbGxlZFJlcGx5aW5nJyxcbiAgICAnY29udHJvbGxlZFRvZ2dsZVJlcGx5aW5nJyxcbiAgICAnY29udHJvbGxlZE1lZGlhUGxheWluZycsXG4gICAgJ2NvbnRyb2xsZWRTZXRNZWRpYVBsYXlpbmcnLFxuICAgICdkaXZlJ1xuICBdLFxuICBkYXRhICgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgdW5jb250cm9sbGVkUmVwbHlpbmc6IGZhbHNlLFxuICAgICAgdW5tdXRlZDogZmFsc2UsXG4gICAgICB1c2VyRXhwYW5kZWQ6IGZhbHNlLFxuICAgICAgdW5jb250cm9sbGVkTWVkaWFQbGF5aW5nOiBbXSxcbiAgICAgIHN1c3BlbmRhYmxlOiB0cnVlLFxuICAgICAgZXJyb3I6IG51bGwsXG4gICAgICBoZWFkVGFpbExpbmtzOiBudWxsLFxuICAgICAgZGlzcGxheVF1b3RlOiAhdGhpcy5pblF1b3RlXG4gICAgfVxuICB9LFxuICBjb21wdXRlZDoge1xuICAgIC4uLmNvbnRyb2xsZWRPclVuY29udHJvbGxlZEdldHRlcnMoWydyZXBseWluZycsICdtZWRpYVBsYXlpbmcnXSksXG4gICAgbXV0ZVdvcmRzICgpIHtcbiAgICAgIHJldHVybiB0aGlzLm1lcmdlZENvbmZpZy5tdXRlV29yZHNcbiAgICB9LFxuICAgIHNob3dSZWFzb25NdXRlZFRocmVhZCAoKSB7XG4gICAgICByZXR1cm4gKFxuICAgICAgICB0aGlzLnN0YXR1cy50aHJlYWRfbXV0ZWQgfHxcbiAgICAgICAgICAodGhpcy5zdGF0dXMucmVibG9nICYmIHRoaXMuc3RhdHVzLnJlYmxvZy50aHJlYWRfbXV0ZWQpXG4gICAgICApICYmICF0aGlzLmluQ29udmVyc2F0aW9uXG4gICAgfSxcbiAgICByZXBlYXRlckNsYXNzICgpIHtcbiAgICAgIGNvbnN0IHVzZXIgPSB0aGlzLnN0YXR1c29pZC51c2VyXG4gICAgICByZXR1cm4gaGlnaGxpZ2h0Q2xhc3ModXNlcilcbiAgICB9LFxuICAgIHVzZXJDbGFzcyAoKSB7XG4gICAgICBjb25zdCB1c2VyID0gdGhpcy5yZXR3ZWV0ID8gKHRoaXMuc3RhdHVzb2lkLnJldHdlZXRlZF9zdGF0dXMudXNlcikgOiB0aGlzLnN0YXR1c29pZC51c2VyXG4gICAgICByZXR1cm4gaGlnaGxpZ2h0Q2xhc3ModXNlcilcbiAgICB9LFxuICAgIGRlbGV0ZWQgKCkge1xuICAgICAgcmV0dXJuIHRoaXMuc3RhdHVzb2lkLmRlbGV0ZWRcbiAgICB9LFxuICAgIHJlcGVhdGVyU3R5bGUgKCkge1xuICAgICAgY29uc3QgdXNlciA9IHRoaXMuc3RhdHVzb2lkLnVzZXJcbiAgICAgIGNvbnN0IGhpZ2hsaWdodCA9IHRoaXMubWVyZ2VkQ29uZmlnLmhpZ2hsaWdodFxuICAgICAgcmV0dXJuIGhpZ2hsaWdodFN0eWxlKGhpZ2hsaWdodFt1c2VyLnNjcmVlbl9uYW1lXSlcbiAgICB9LFxuICAgIHVzZXJTdHlsZSAoKSB7XG4gICAgICBpZiAodGhpcy5ub0hlYWRpbmcpIHJldHVyblxuICAgICAgY29uc3QgdXNlciA9IHRoaXMucmV0d2VldCA/ICh0aGlzLnN0YXR1c29pZC5yZXR3ZWV0ZWRfc3RhdHVzLnVzZXIpIDogdGhpcy5zdGF0dXNvaWQudXNlclxuICAgICAgY29uc3QgaGlnaGxpZ2h0ID0gdGhpcy5tZXJnZWRDb25maWcuaGlnaGxpZ2h0XG4gICAgICByZXR1cm4gaGlnaGxpZ2h0U3R5bGUoaGlnaGxpZ2h0W3VzZXIuc2NyZWVuX25hbWVdKVxuICAgIH0sXG4gICAgdXNlclByb2ZpbGVMaW5rICgpIHtcbiAgICAgIHJldHVybiB0aGlzLmdlbmVyYXRlVXNlclByb2ZpbGVMaW5rKHRoaXMuc3RhdHVzLnVzZXIuaWQsIHRoaXMuc3RhdHVzLnVzZXIuc2NyZWVuX25hbWUpXG4gICAgfSxcbiAgICByZXBseVByb2ZpbGVMaW5rICgpIHtcbiAgICAgIGlmICh0aGlzLmlzUmVwbHkpIHtcbiAgICAgICAgY29uc3QgdXNlciA9IHRoaXMuJHN0b3JlLmdldHRlcnMuZmluZFVzZXIodGhpcy5zdGF0dXMuaW5fcmVwbHlfdG9fdXNlcl9pZClcbiAgICAgICAgLy8gRklYTUUgV2h5IHVzZXIgbm90IGZvdW5kIHNvbWV0aW1lcz8/P1xuICAgICAgICByZXR1cm4gdXNlciA/IHVzZXIuc3RhdHVzbmV0X3Byb2ZpbGVfdXJsIDogJ05PVF9GT1VORCdcbiAgICAgIH1cbiAgICB9LFxuICAgIHJldHdlZXQgKCkgeyByZXR1cm4gISF0aGlzLnN0YXR1c29pZC5yZXR3ZWV0ZWRfc3RhdHVzIH0sXG4gICAgcmV0d2VldGVyVXNlciAoKSB7IHJldHVybiB0aGlzLnN0YXR1c29pZC51c2VyIH0sXG4gICAgcmV0d2VldGVyICgpIHsgcmV0dXJuIHRoaXMuc3RhdHVzb2lkLnVzZXIubmFtZSB8fCB0aGlzLnN0YXR1c29pZC51c2VyLnNjcmVlbl9uYW1lX3VpIH0sXG4gICAgcmV0d2VldGVySHRtbCAoKSB7IHJldHVybiB0aGlzLnN0YXR1c29pZC51c2VyLm5hbWUgfSxcbiAgICByZXR3ZWV0ZXJQcm9maWxlTGluayAoKSB7IHJldHVybiB0aGlzLmdlbmVyYXRlVXNlclByb2ZpbGVMaW5rKHRoaXMuc3RhdHVzb2lkLnVzZXIuaWQsIHRoaXMuc3RhdHVzb2lkLnVzZXIuc2NyZWVuX25hbWUpIH0sXG4gICAgc3RhdHVzICgpIHtcbiAgICAgIGlmICh0aGlzLnJldHdlZXQpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc3RhdHVzb2lkLnJldHdlZXRlZF9zdGF0dXNcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiB0aGlzLnN0YXR1c29pZFxuICAgICAgfVxuICAgIH0sXG4gICAgc3RhdHVzRnJvbUdsb2JhbFJlcG9zaXRvcnkgKCkge1xuICAgICAgLy8gTk9URTogQ29uc2lkZXIgdG8gcmVwbGFjZSBzdGF0dXMgd2l0aCBzdGF0dXNGcm9tR2xvYmFsUmVwb3NpdG9yeVxuICAgICAgcmV0dXJuIHRoaXMuJHN0b3JlLnN0YXRlLnN0YXR1c2VzLmFsbFN0YXR1c2VzT2JqZWN0W3RoaXMuc3RhdHVzLmlkXVxuICAgIH0sXG4gICAgbG9nZ2VkSW4gKCkge1xuICAgICAgcmV0dXJuICEhdGhpcy5jdXJyZW50VXNlclxuICAgIH0sXG4gICAgbXV0ZVdvcmRIaXRzICgpIHtcbiAgICAgIHJldHVybiBtdXRlV29yZEhpdHModGhpcy5zdGF0dXMsIHRoaXMubXV0ZVdvcmRzKVxuICAgIH0sXG4gICAgcnRCb3RTdGF0dXMgKCkge1xuICAgICAgcmV0dXJuIHRoaXMuc3RhdHVzb2lkLnVzZXIuYm90XG4gICAgfSxcbiAgICBib3RTdGF0dXMgKCkge1xuICAgICAgcmV0dXJuIHRoaXMuc3RhdHVzLnVzZXIuYm90XG4gICAgfSxcbiAgICBib3RJbmRpY2F0b3IgKCkge1xuICAgICAgcmV0dXJuIHRoaXMuYm90U3RhdHVzICYmICF0aGlzLmhpZGVCb3RJbmRpY2F0aW9uXG4gICAgfSxcbiAgICBydEJvdEluZGljYXRvciAoKSB7XG4gICAgICByZXR1cm4gdGhpcy5ydEJvdFN0YXR1cyAmJiAhdGhpcy5oaWRlQm90SW5kaWNhdGlvblxuICAgIH0sXG4gICAgbWVudGlvbnNMaW5lICgpIHtcbiAgICAgIGlmICghdGhpcy5oZWFkVGFpbExpbmtzKSByZXR1cm4gW11cbiAgICAgIGNvbnN0IHdyaXR0ZW5TZXQgPSBuZXcgU2V0KHRoaXMuaGVhZFRhaWxMaW5rcy53cml0dGVuTWVudGlvbnMubWFwKF8gPT4gXy51cmwpKVxuICAgICAgcmV0dXJuIHRoaXMuc3RhdHVzLmF0dGVudGlvbnMuZmlsdGVyKGF0dG4gPT4ge1xuICAgICAgICAvLyBubyByZXBseSB1c2VyXG4gICAgICAgIHJldHVybiBhdHRuLmlkICE9PSB0aGlzLnN0YXR1cy5pbl9yZXBseV90b191c2VyX2lkICYmXG4gICAgICAgICAgLy8gbm8gc2VsZi1yZXBsaWVzXG4gICAgICAgICAgYXR0bi5zdGF0dXNuZXRfcHJvZmlsZV91cmwgIT09IHRoaXMuc3RhdHVzLnVzZXIuc3RhdHVzbmV0X3Byb2ZpbGVfdXJsICYmXG4gICAgICAgICAgLy8gZG9uJ3QgaW5jbHVkZSBpZiBtZW50aW9ucyBpcyB3cml0dGVuXG4gICAgICAgICAgIXdyaXR0ZW5TZXQuaGFzKGF0dG4uc3RhdHVzbmV0X3Byb2ZpbGVfdXJsKVxuICAgICAgfSkubWFwKGF0dG4gPT4gKHtcbiAgICAgICAgdXJsOiBhdHRuLnN0YXR1c25ldF9wcm9maWxlX3VybCxcbiAgICAgICAgY29udGVudDogYXR0bi5zY3JlZW5fbmFtZSxcbiAgICAgICAgdXNlcklkOiBhdHRuLmlkXG4gICAgICB9KSlcbiAgICB9LFxuICAgIGhhc01lbnRpb25zTGluZSAoKSB7XG4gICAgICByZXR1cm4gdGhpcy5tZW50aW9uc0xpbmUubGVuZ3RoID4gMFxuICAgIH0sXG4gICAgbXV0ZWQgKCkge1xuICAgICAgaWYgKHRoaXMuc3RhdHVzb2lkLnVzZXIuaWQgPT09IHRoaXMuY3VycmVudFVzZXIuaWQpIHJldHVybiBmYWxzZVxuICAgICAgY29uc3QgcmVhc29uc1RvTXV0ZSA9IHRoaXMudXNlcklzTXV0ZWQgfHxcbiAgICAgICAgLy8gVGhyZWFkIGlzIG11dGVkXG4gICAgICAgIHN0YXR1cy50aHJlYWRfbXV0ZWQgfHxcbiAgICAgICAgLy8gV29yZGZpbHRlcmVkXG4gICAgICAgIHRoaXMubXV0ZVdvcmRIaXRzLmxlbmd0aCA+IDAgfHxcbiAgICAgICAgLy8gYm90IHN0YXR1c1xuICAgICAgICAodGhpcy5tdXRlQm90U3RhdHVzZXMgJiYgdGhpcy5ib3RTdGF0dXMgJiYgIXRoaXMuY29tcGFjdClcbiAgICAgIHJldHVybiAhdGhpcy51bm11dGVkICYmICF0aGlzLnNob3VsZE5vdE11dGUgJiYgcmVhc29uc1RvTXV0ZVxuICAgIH0sXG4gICAgdXNlcklzTXV0ZWQgKCkge1xuICAgICAgaWYgKHRoaXMuc3RhdHVzb2lkLnVzZXIuaWQgPT09IHRoaXMuY3VycmVudFVzZXIuaWQpIHJldHVybiBmYWxzZVxuICAgICAgY29uc3QgeyBzdGF0dXMgfSA9IHRoaXNcbiAgICAgIGNvbnN0IHsgcmVibG9nIH0gPSBzdGF0dXNcbiAgICAgIGNvbnN0IHJlbGF0aW9uc2hpcCA9IHRoaXMuJHN0b3JlLmdldHRlcnMucmVsYXRpb25zaGlwKHN0YXR1cy51c2VyLmlkKVxuICAgICAgY29uc3QgcmVsYXRpb25zaGlwUmVibG9nID0gcmVibG9nICYmIHRoaXMuJHN0b3JlLmdldHRlcnMucmVsYXRpb25zaGlwKHJlYmxvZy51c2VyLmlkKVxuICAgICAgcmV0dXJuIHN0YXR1cy5tdXRlZCB8fFxuICAgICAgICAvLyBSZXByw7bDtnQgb2YgYSBtdXRlZCBwb3N0IGFjY29yZGluZyB0byBCRVxuICAgICAgICAocmVibG9nICYmIHJlYmxvZy5tdXRlZCkgfHxcbiAgICAgICAgLy8gTXV0ZWQgdXNlclxuICAgICAgICByZWxhdGlvbnNoaXAubXV0aW5nIHx8XG4gICAgICAgIC8vIE11dGVkIHVzZXIgb2YgYSByZXByw7bDtnRcbiAgICAgICAgKHJlbGF0aW9uc2hpcFJlYmxvZyAmJiByZWxhdGlvbnNoaXBSZWJsb2cubXV0aW5nKVxuICAgIH0sXG4gICAgc2hvdWxkTm90TXV0ZSAoKSB7XG4gICAgICBjb25zdCB7IHN0YXR1cyB9ID0gdGhpc1xuICAgICAgY29uc3QgeyByZWJsb2cgfSA9IHN0YXR1c1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgKFxuICAgICAgICAgIHRoaXMuaW5Qcm9maWxlICYmIChcbiAgICAgICAgICAgIC8vIERvbid0IG11dGUgdXNlcidzIHBvc3RzIG9uIHVzZXIgdGltZWxpbmUgKGV4Y2VwdCByZWJsb2dzKVxuICAgICAgICAgICAgKCFyZWJsb2cgJiYgc3RhdHVzLnVzZXIuaWQgPT09IHRoaXMucHJvZmlsZVVzZXJJZCkgfHxcbiAgICAgICAgICAgIC8vIFNhbWUgYXMgYWJvdmUgYnV0IGFsc28gYWxsb3cgc2VsZi1yZWJsb2dzXG4gICAgICAgICAgICAocmVibG9nICYmIHJlYmxvZy51c2VyLmlkID09PSB0aGlzLnByb2ZpbGVVc2VySWQpXG4gICAgICAgICAgKVxuICAgICAgICApIHx8XG4gICAgICAgIC8vIERvbid0IG11dGUgc3RhdHVzZXMgaW4gbXV0ZWQgY29udmVyc2F0aW9uIHdoZW4gc2FpZCBjb252ZXJzYXRpb24gaXMgb3BlbmVkXG4gICAgICAgICh0aGlzLmluQ29udmVyc2F0aW9uICYmIHN0YXR1cy50aHJlYWRfbXV0ZWQpXG4gICAgICAgIC8vIE5vIGV4Y3VzZXMgaWYgcG9zdCBoYXMgbXV0ZWQgd29yZHNcbiAgICAgICkgJiYgIXRoaXMubXV0ZVdvcmRIaXRzLmxlbmd0aCA+IDBcbiAgICB9LFxuICAgIGhpZGVNdXRlZFVzZXJzICgpIHtcbiAgICAgIHJldHVybiB0aGlzLm1lcmdlZENvbmZpZy5oaWRlTXV0ZWRQb3N0c1xuICAgIH0sXG4gICAgaGlkZU11dGVkVGhyZWFkcyAoKSB7XG4gICAgICByZXR1cm4gdGhpcy5tZXJnZWRDb25maWcuaGlkZU11dGVkVGhyZWFkc1xuICAgIH0sXG4gICAgaGlkZUZpbHRlcmVkU3RhdHVzZXMgKCkge1xuICAgICAgcmV0dXJuIHRoaXMubWVyZ2VkQ29uZmlnLmhpZGVGaWx0ZXJlZFN0YXR1c2VzXG4gICAgfSxcbiAgICBoaWRlV29yZEZpbHRlcmVkUG9zdHMgKCkge1xuICAgICAgcmV0dXJuIHRoaXMubWVyZ2VkQ29uZmlnLmhpZGVXb3JkRmlsdGVyZWRQb3N0c1xuICAgIH0sXG4gICAgaGlkZVN0YXR1cyAoKSB7XG4gICAgICByZXR1cm4gKCF0aGlzLnNob3VsZE5vdE11dGUpICYmIChcbiAgICAgICAgKHRoaXMubXV0ZWQgJiYgdGhpcy5oaWRlRmlsdGVyZWRTdGF0dXNlcykgfHxcbiAgICAgICAgKHRoaXMudXNlcklzTXV0ZWQgJiYgdGhpcy5oaWRlTXV0ZWRVc2VycykgfHxcbiAgICAgICAgKHRoaXMuc3RhdHVzLnRocmVhZF9tdXRlZCAmJiB0aGlzLmhpZGVNdXRlZFRocmVhZHMpIHx8XG4gICAgICAgICh0aGlzLm11dGVXb3JkSGl0cy5sZW5ndGggPiAwICYmIHRoaXMuaGlkZVdvcmRGaWx0ZXJlZFBvc3RzKVxuICAgICAgKVxuICAgIH0sXG4gICAgaXNGb2N1c2VkICgpIHtcbiAgICAgIC8vIHJldHdlZXQgb3Igcm9vdCBvZiBhbiBleHBhbmRlZCBjb252ZXJzYXRpb25cbiAgICAgIGlmICh0aGlzLmZvY3VzZWQpIHtcbiAgICAgICAgcmV0dXJuIHRydWVcbiAgICAgIH0gZWxzZSBpZiAoIXRoaXMuaW5Db252ZXJzYXRpb24pIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlXG4gICAgICB9XG4gICAgICAvLyB1c2UgY29udmVyc2F0aW9uIGhpZ2hsaWdodCBvbmx5IHdoZW4gaW4gY29udmVyc2F0aW9uXG4gICAgICByZXR1cm4gdGhpcy5zdGF0dXMuaWQgPT09IHRoaXMuaGlnaGxpZ2h0XG4gICAgfSxcbiAgICBpc1JlcGx5ICgpIHtcbiAgICAgIHJldHVybiAhISh0aGlzLnN0YXR1cy5pbl9yZXBseV90b19zdGF0dXNfaWQgJiYgdGhpcy5zdGF0dXMuaW5fcmVwbHlfdG9fdXNlcl9pZClcbiAgICB9LFxuICAgIHJlcGx5VG9OYW1lICgpIHtcbiAgICAgIGlmICh0aGlzLnN0YXR1cy5pbl9yZXBseV90b19zY3JlZW5fbmFtZSkge1xuICAgICAgICByZXR1cm4gdGhpcy5zdGF0dXMuaW5fcmVwbHlfdG9fc2NyZWVuX25hbWVcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IHVzZXIgPSB0aGlzLiRzdG9yZS5nZXR0ZXJzLmZpbmRVc2VyKHRoaXMuc3RhdHVzLmluX3JlcGx5X3RvX3VzZXJfaWQpXG4gICAgICAgIHJldHVybiB1c2VyICYmIHVzZXIuc2NyZWVuX25hbWVfdWlcbiAgICAgIH1cbiAgICB9LFxuICAgIHJlcGx5U3ViamVjdCAoKSB7XG4gICAgICBpZiAoIXRoaXMuc3RhdHVzLnN1bW1hcnkpIHJldHVybiAnJ1xuICAgICAgY29uc3QgZGVjb2RlZFN1bW1hcnkgPSB1bmVzY2FwZSh0aGlzLnN0YXR1cy5zdW1tYXJ5KVxuICAgICAgY29uc3QgYmVoYXZpb3IgPSB0aGlzLm1lcmdlZENvbmZpZy5zdWJqZWN0TGluZUJlaGF2aW9yXG4gICAgICBjb25zdCBzdGFydHNXaXRoUmUgPSBkZWNvZGVkU3VtbWFyeS5tYXRjaCgvXnJlWzogXS9pKVxuICAgICAgaWYgKChiZWhhdmlvciAhPT0gJ25vb3AnICYmIHN0YXJ0c1dpdGhSZSkgfHwgYmVoYXZpb3IgPT09ICdtYXN0bycpIHtcbiAgICAgICAgcmV0dXJuIGRlY29kZWRTdW1tYXJ5XG4gICAgICB9IGVsc2UgaWYgKGJlaGF2aW9yID09PSAnZW1haWwnKSB7XG4gICAgICAgIHJldHVybiAncmU6ICcuY29uY2F0KGRlY29kZWRTdW1tYXJ5KVxuICAgICAgfSBlbHNlIGlmIChiZWhhdmlvciA9PT0gJ25vb3AnKSB7XG4gICAgICAgIHJldHVybiAnJ1xuICAgICAgfVxuICAgIH0sXG4gICAgY29tYmluZWRGYXZzQW5kUmVwZWF0c1VzZXJzICgpIHtcbiAgICAgIC8vIFVzZSB0aGUgc3RhdHVzIGZyb20gdGhlIGdsb2JhbCBzdGF0dXMgcmVwb3NpdG9yeSBzaW5jZSBmYXZzIGFuZCByZXBlYXRzIGFyZSBzYXZlZCBpbiBpdFxuICAgICAgY29uc3QgY29tYmluZWRVc2VycyA9IFtdLmNvbmNhdChcbiAgICAgICAgdGhpcy5zdGF0dXNGcm9tR2xvYmFsUmVwb3NpdG9yeS5mYXZvcml0ZWRCeSxcbiAgICAgICAgdGhpcy5zdGF0dXNGcm9tR2xvYmFsUmVwb3NpdG9yeS5yZWJsb2dnZWRCeVxuICAgICAgKVxuICAgICAgcmV0dXJuIHVuaXFCeShjb21iaW5lZFVzZXJzLCAnaWQnKVxuICAgIH0sXG4gICAgdGFncyAoKSB7XG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcHJvdG90eXBlLWJ1aWx0aW5zXG4gICAgICByZXR1cm4gdGhpcy5zdGF0dXMudGFncy5maWx0ZXIodGFnT2JqID0+IHRhZ09iai5oYXNPd25Qcm9wZXJ0eSgnbmFtZScpKS5tYXAodGFnT2JqID0+IHRhZ09iai5uYW1lKS5qb2luKCcgJylcbiAgICB9LFxuICAgIGhpZGVQb3N0U3RhdHMgKCkge1xuICAgICAgcmV0dXJuIHRoaXMubWVyZ2VkQ29uZmlnLmhpZGVQb3N0U3RhdHNcbiAgICB9LFxuICAgIG11dGVCb3RTdGF0dXNlcyAoKSB7XG4gICAgICByZXR1cm4gdGhpcy5tZXJnZWRDb25maWcubXV0ZUJvdFN0YXR1c2VzXG4gICAgfSxcbiAgICBoaWRlQm90SW5kaWNhdGlvbiAoKSB7XG4gICAgICByZXR1cm4gdGhpcy5tZXJnZWRDb25maWcuaGlkZUJvdEluZGljYXRpb25cbiAgICB9LFxuICAgIGN1cnJlbnRVc2VyICgpIHtcbiAgICAgIHJldHVybiB0aGlzLiRzdG9yZS5zdGF0ZS51c2Vycy5jdXJyZW50VXNlclxuICAgIH0sXG4gICAgYmV0dGVyU2hhZG93ICgpIHtcbiAgICAgIHJldHVybiB0aGlzLiRzdG9yZS5zdGF0ZS5pbnRlcmZhY2UuYnJvd3NlclN1cHBvcnQuY3NzRmlsdGVyXG4gICAgfSxcbiAgICBtZXJnZWRDb25maWcgKCkge1xuICAgICAgcmV0dXJuIHRoaXMuJHN0b3JlLmdldHRlcnMubWVyZ2VkQ29uZmlnXG4gICAgfSxcbiAgICBpc1N1c3BlbmRhYmxlICgpIHtcbiAgICAgIHJldHVybiAhdGhpcy5yZXBseWluZyAmJiB0aGlzLm1lZGlhUGxheWluZy5sZW5ndGggPT09IDBcbiAgICB9LFxuICAgIGluVGhyZWFkRm9yZXN0ICgpIHtcbiAgICAgIHJldHVybiAhIXRoaXMuY29udHJvbGxlZFRocmVhZERpc3BsYXlTdGF0dXNcbiAgICB9LFxuICAgIHRocmVhZFNob3dpbmcgKCkge1xuICAgICAgcmV0dXJuIHRoaXMuY29udHJvbGxlZFRocmVhZERpc3BsYXlTdGF0dXMgPT09ICdzaG93aW5nJ1xuICAgIH0sXG4gICAgdmlzaWJpbGl0eUxvY2FsaXplZCAoKSB7XG4gICAgICByZXR1cm4gdGhpcy4kaTE4bi50KCdnZW5lcmFsLnNjb3BlX2luX3RpbWVsaW5lLicgKyB0aGlzLnN0YXR1cy52aXNpYmlsaXR5KVxuICAgIH0sXG4gICAgaXNFZGl0ZWQgKCkge1xuICAgICAgcmV0dXJuIHRoaXMuc3RhdHVzLmVkaXRlZF9hdCAhPT0gbnVsbFxuICAgIH0sXG4gICAgZWRpdGluZ0F2YWlsYWJsZSAoKSB7XG4gICAgICByZXR1cm4gdGhpcy4kc3RvcmUuc3RhdGUuaW5zdGFuY2UuZWRpdGluZ0F2YWlsYWJsZVxuICAgIH0sXG4gICAgaGFzVmlzaWJsZVF1b3RlICgpIHtcbiAgICAgIHJldHVybiB0aGlzLnN0YXR1cy5xdW90ZV91cmwgJiYgdGhpcy5zdGF0dXMucXVvdGVfdmlzaWJsZVxuICAgIH0sXG4gICAgaGFzSW52aXNpYmxlUXVvdGUgKCkge1xuICAgICAgcmV0dXJuIHRoaXMuc3RhdHVzLnF1b3RlX3VybCAmJiAhdGhpcy5zdGF0dXMucXVvdGVfdmlzaWJsZVxuICAgIH0sXG4gICAgcXVvdGVkU3RhdHVzICgpIHtcbiAgICAgIHJldHVybiB0aGlzLnN0YXR1cy5xdW90ZV9pZCA/IHRoaXMuJHN0b3JlLnN0YXRlLnN0YXR1c2VzLmFsbFN0YXR1c2VzT2JqZWN0W3RoaXMuc3RhdHVzLnF1b3RlX2lkXSA6IHVuZGVmaW5lZFxuICAgIH0sXG4gICAgc2hvdWxkRGlzcGxheVF1b3RlICgpIHtcbiAgICAgIHJldHVybiB0aGlzLnF1b3RlZFN0YXR1cyAmJiB0aGlzLmRpc3BsYXlRdW90ZVxuICAgIH1cbiAgfSxcbiAgbWV0aG9kczoge1xuICAgIHZpc2liaWxpdHlJY29uICh2aXNpYmlsaXR5KSB7XG4gICAgICBzd2l0Y2ggKHZpc2liaWxpdHkpIHtcbiAgICAgICAgY2FzZSAncHJpdmF0ZSc6XG4gICAgICAgICAgcmV0dXJuICdsb2NrJ1xuICAgICAgICBjYXNlICd1bmxpc3RlZCc6XG4gICAgICAgICAgcmV0dXJuICdsb2NrLW9wZW4nXG4gICAgICAgIGNhc2UgJ2RpcmVjdCc6XG4gICAgICAgICAgcmV0dXJuICdlbnZlbG9wZSdcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICByZXR1cm4gJ2dsb2JlJ1xuICAgICAgfVxuICAgIH0sXG4gICAgc2hvd0Vycm9yIChlcnJvcikge1xuICAgICAgdGhpcy5lcnJvciA9IGVycm9yXG4gICAgfSxcbiAgICBjbGVhckVycm9yICgpIHtcbiAgICAgIHRoaXMuZXJyb3IgPSB1bmRlZmluZWRcbiAgICB9LFxuICAgIHRvZ2dsZVJlcGx5aW5nICgpIHtcbiAgICAgIGNvbnRyb2xsZWRPclVuY29udHJvbGxlZFRvZ2dsZSh0aGlzLCAncmVwbHlpbmcnKVxuICAgIH0sXG4gICAgZ290b09yaWdpbmFsIChpZCkge1xuICAgICAgaWYgKHRoaXMuaW5Db252ZXJzYXRpb24pIHtcbiAgICAgICAgdGhpcy4kZW1pdCgnZ290bycsIGlkKVxuICAgICAgfVxuICAgIH0sXG4gICAgdG9nZ2xlRXhwYW5kZWQgKCkge1xuICAgICAgdGhpcy4kZW1pdCgndG9nZ2xlRXhwYW5kZWQnKVxuICAgIH0sXG4gICAgdG9nZ2xlTXV0ZSAoKSB7XG4gICAgICB0aGlzLnVubXV0ZWQgPSAhdGhpcy51bm11dGVkXG4gICAgfSxcbiAgICB0b2dnbGVVc2VyRXhwYW5kZWQgKCkge1xuICAgICAgdGhpcy51c2VyRXhwYW5kZWQgPSAhdGhpcy51c2VyRXhwYW5kZWRcbiAgICB9LFxuICAgIGdlbmVyYXRlVXNlclByb2ZpbGVMaW5rIChpZCwgbmFtZSkge1xuICAgICAgcmV0dXJuIGdlbmVyYXRlUHJvZmlsZUxpbmsoaWQsIG5hbWUsIHRoaXMuJHN0b3JlLnN0YXRlLmluc3RhbmNlLnJlc3RyaWN0ZWROaWNrbmFtZXMpXG4gICAgfSxcbiAgICBhZGRNZWRpYVBsYXlpbmcgKGlkKSB7XG4gICAgICBjb250cm9sbGVkT3JVbmNvbnRyb2xsZWRTZXQodGhpcywgJ21lZGlhUGxheWluZycsIHRoaXMubWVkaWFQbGF5aW5nLmNvbmNhdChpZCkpXG4gICAgfSxcbiAgICByZW1vdmVNZWRpYVBsYXlpbmcgKGlkKSB7XG4gICAgICBjb250cm9sbGVkT3JVbmNvbnRyb2xsZWRTZXQodGhpcywgJ21lZGlhUGxheWluZycsIHRoaXMubWVkaWFQbGF5aW5nLmZpbHRlcihtZWRpYUlkID0+IG1lZGlhSWQgIT09IGlkKSlcbiAgICB9LFxuICAgIHNldEhlYWRUYWlsTGlua3MgKGhlYWRUYWlsTGlua3MpIHtcbiAgICAgIHRoaXMuaGVhZFRhaWxMaW5rcyA9IGhlYWRUYWlsTGlua3NcbiAgICB9LFxuICAgIHRvZ2dsZVRocmVhZERpc3BsYXkgKCkge1xuICAgICAgdGhpcy5jb250cm9sbGVkVG9nZ2xlVGhyZWFkRGlzcGxheSgpXG4gICAgfSxcbiAgICBzY3JvbGxJZkhpZ2hsaWdodGVkIChoaWdobGlnaHRJZCkge1xuICAgICAgY29uc3QgaWQgPSBoaWdobGlnaHRJZFxuICAgICAgaWYgKHRoaXMuc3RhdHVzLmlkID09PSBpZCkge1xuICAgICAgICBjb25zdCByZWN0ID0gdGhpcy4kZWwuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KClcbiAgICAgICAgaWYgKHJlY3QudG9wIDwgMTAwKSB7XG4gICAgICAgICAgLy8gUG9zdCBpcyBhYm92ZSBzY3JlZW4sIG1hdGNoIGl0cyB0b3AgdG8gc2NyZWVuIHRvcFxuICAgICAgICAgIHdpbmRvdy5zY3JvbGxCeSgwLCByZWN0LnRvcCAtIDEwMClcbiAgICAgICAgfSBlbHNlIGlmIChyZWN0LmhlaWdodCA+PSAod2luZG93LmlubmVySGVpZ2h0IC0gNTApKSB7XG4gICAgICAgICAgLy8gUG9zdCB3ZSB3YW50IHRvIHNlZSBpcyB0YWxsZXIgdGhhbiBzY3JlZW4gc28gbWF0Y2ggaXRzIHRvcCB0byBzY3JlZW4gdG9wXG4gICAgICAgICAgd2luZG93LnNjcm9sbEJ5KDAsIHJlY3QudG9wIC0gMTAwKVxuICAgICAgICB9IGVsc2UgaWYgKHJlY3QuYm90dG9tID4gd2luZG93LmlubmVySGVpZ2h0IC0gNTApIHtcbiAgICAgICAgICAvLyBQb3N0IGlzIGJlbG93IHNjcmVlbiwgbWF0Y2ggaXRzIGJvdHRvbSB0byBzY3JlZW4gYm90dG9tXG4gICAgICAgICAgd2luZG93LnNjcm9sbEJ5KDAsIHJlY3QuYm90dG9tIC0gd2luZG93LmlubmVySGVpZ2h0ICsgNTApXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9LFxuICAgIHRvZ2dsZURpc3BsYXlRdW90ZSAoKSB7XG4gICAgICBpZiAodGhpcy5zaG91bGREaXNwbGF5UXVvdGUpIHtcbiAgICAgICAgdGhpcy5kaXNwbGF5UXVvdGUgPSBmYWxzZVxuICAgICAgfSBlbHNlIGlmICghdGhpcy5xdW90ZWRTdGF0dXMpIHtcbiAgICAgICAgdGhpcy4kc3RvcmUuZGlzcGF0Y2goJ2ZldGNoU3RhdHVzJywgdGhpcy5zdGF0dXMucXVvdGVfaWQpXG4gICAgICAgICAgLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5kaXNwbGF5UXVvdGUgPSB0cnVlXG4gICAgICAgICAgfSlcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuZGlzcGxheVF1b3RlID0gdHJ1ZVxuICAgICAgfVxuICAgIH1cbiAgfSxcbiAgd2F0Y2g6IHtcbiAgICBoaWdobGlnaHQ6IGZ1bmN0aW9uIChpZCkge1xuICAgICAgdGhpcy5zY3JvbGxJZkhpZ2hsaWdodGVkKGlkKVxuICAgIH0sXG4gICAgJ3N0YXR1cy5yZXBlYXRfbnVtJzogZnVuY3Rpb24gKG51bSkge1xuICAgICAgLy8gcmVmZXRjaCByZXBlYXRzIHdoZW4gcmVwZWF0X251bSBpcyBjaGFuZ2VkIGluIGFueSB3YXlcbiAgICAgIGlmICh0aGlzLmlzRm9jdXNlZCAmJiB0aGlzLnN0YXR1c0Zyb21HbG9iYWxSZXBvc2l0b3J5LnJlYmxvZ2dlZEJ5ICYmIHRoaXMuc3RhdHVzRnJvbUdsb2JhbFJlcG9zaXRvcnkucmVibG9nZ2VkQnkubGVuZ3RoICE9PSBudW0pIHtcbiAgICAgICAgdGhpcy4kc3RvcmUuZGlzcGF0Y2goJ2ZldGNoUmVwZWF0cycsIHRoaXMuc3RhdHVzLmlkKVxuICAgICAgfVxuICAgIH0sXG4gICAgJ3N0YXR1cy5mYXZlX251bSc6IGZ1bmN0aW9uIChudW0pIHtcbiAgICAgIC8vIHJlZmV0Y2ggZmF2cyB3aGVuIGZhdmVfbnVtIGlzIGNoYW5nZWQgaW4gYW55IHdheVxuICAgICAgaWYgKHRoaXMuaXNGb2N1c2VkICYmIHRoaXMuc3RhdHVzRnJvbUdsb2JhbFJlcG9zaXRvcnkuZmF2b3JpdGVkQnkgJiYgdGhpcy5zdGF0dXNGcm9tR2xvYmFsUmVwb3NpdG9yeS5mYXZvcml0ZWRCeS5sZW5ndGggIT09IG51bSkge1xuICAgICAgICB0aGlzLiRzdG9yZS5kaXNwYXRjaCgnZmV0Y2hGYXZzJywgdGhpcy5zdGF0dXMuaWQpXG4gICAgICB9XG4gICAgfSxcbiAgICBpc1N1c3BlbmRhYmxlOiBmdW5jdGlvbiAodmFsKSB7XG4gICAgICB0aGlzLnN1c3BlbmRhYmxlID0gdmFsXG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IFN0YXR1c1xuIl0sIm5hbWVzIjpbIlJlcGx5QnV0dG9uIiwiRmF2b3JpdGVCdXR0b24iLCJSZWFjdEJ1dHRvbiIsIlJldHdlZXRCdXR0b24iLCJFeHRyYUJ1dHRvbnMiLCJQb3N0U3RhdHVzRm9ybSIsIlVzZXJBdmF0YXIiLCJBdmF0YXJMaXN0IiwiVGltZWFnbyIsIlN0YXR1c0NvbnRlbnQiLCJSaWNoQ29udGVudCIsIlN0YXR1c1BvcG92ZXIiLCJVc2VyUG9wb3ZlciIsIlVzZXJMaXN0UG9wb3ZlciIsIkVtb2ppUmVhY3Rpb25zIiwiVXNlckxpbmsiLCJNZW50aW9uc0xpbmUiLCJNZW50aW9uTGluayIsImdlbmVyYXRlUHJvZmlsZUxpbmsiLCJoaWdobGlnaHRDbGFzcyIsImhpZ2hsaWdodFN0eWxlIiwibXV0ZVdvcmRIaXRzIiwibGlicmFyeSIsImZhRW52ZWxvcGUiLCJmYUxvY2siLCJmYUxvY2tPcGVuIiwiZmFHbG9iZSIsImZhVGltZXMiLCJmYVJldHdlZXQiLCJmYVJlcGx5IiwiZmFQbHVzU3F1YXJlIiwiZmFTbWlsZUJlYW0iLCJmYUVsbGlwc2lzSCIsImZhU3RhciIsImZhRXllU2xhc2giLCJmYUV5ZSIsImZhVGh1bWJ0YWNrIiwiZmFDaGV2cm9uVXAiLCJmYUNoZXZyb25Eb3duIiwiZmFBbmdsZURvdWJsZVJpZ2h0IiwiYWRkIiwiY2FtZWxDYXNlIiwibmFtZSIsImNoYXJBdCIsInRvVXBwZXJDYXNlIiwic2xpY2UiLCJjb250cm9sbGVkT3JVbmNvbnRyb2xsZWRHZXR0ZXJzIiwibGlzdCIsInJlZHVjZSIsInJlcyIsImNhbWVsaXplZCIsInRvZ2dsZSIsImNvbmNhdCIsImNvbnRyb2xsZWROYW1lIiwidW5jb250cm9sbGVkTmFtZSIsIiRkYXRhIiwidW5kZWZpbmVkIiwiJHByb3BzIiwiY29udHJvbGxlZE9yVW5jb250cm9sbGVkVG9nZ2xlIiwib2JqIiwiY29udHJvbGxlZE9yVW5jb250cm9sbGVkU2V0IiwidmFsIiwic2V0IiwiU3RhdHVzIiwiY29tcG9uZW50cyIsInByb3BzIiwiZGF0YSIsInVuY29udHJvbGxlZFJlcGx5aW5nIiwidW5tdXRlZCIsInVzZXJFeHBhbmRlZCIsInVuY29udHJvbGxlZE1lZGlhUGxheWluZyIsInN1c3BlbmRhYmxlIiwiZXJyb3IiLCJoZWFkVGFpbExpbmtzIiwiZGlzcGxheVF1b3RlIiwiaW5RdW90ZSIsImNvbXB1dGVkIiwiX29iamVjdFNwcmVhZCIsIm11dGVXb3JkcyIsIm1lcmdlZENvbmZpZyIsInNob3dSZWFzb25NdXRlZFRocmVhZCIsInN0YXR1cyIsInRocmVhZF9tdXRlZCIsInJlYmxvZyIsImluQ29udmVyc2F0aW9uIiwicmVwZWF0ZXJDbGFzcyIsInVzZXIiLCJzdGF0dXNvaWQiLCJ1c2VyQ2xhc3MiLCJyZXR3ZWV0IiwicmV0d2VldGVkX3N0YXR1cyIsImRlbGV0ZWQiLCJyZXBlYXRlclN0eWxlIiwiaGlnaGxpZ2h0Iiwic2NyZWVuX25hbWUiLCJ1c2VyU3R5bGUiLCJub0hlYWRpbmciLCJ1c2VyUHJvZmlsZUxpbmsiLCJnZW5lcmF0ZVVzZXJQcm9maWxlTGluayIsImlkIiwicmVwbHlQcm9maWxlTGluayIsImlzUmVwbHkiLCIkc3RvcmUiLCJnZXR0ZXJzIiwiZmluZFVzZXIiLCJpbl9yZXBseV90b191c2VyX2lkIiwic3RhdHVzbmV0X3Byb2ZpbGVfdXJsIiwicmV0d2VldGVyVXNlciIsInJldHdlZXRlciIsInNjcmVlbl9uYW1lX3VpIiwicmV0d2VldGVySHRtbCIsInJldHdlZXRlclByb2ZpbGVMaW5rIiwic3RhdHVzRnJvbUdsb2JhbFJlcG9zaXRvcnkiLCJzdGF0ZSIsInN0YXR1c2VzIiwiYWxsU3RhdHVzZXNPYmplY3QiLCJsb2dnZWRJbiIsImN1cnJlbnRVc2VyIiwicnRCb3RTdGF0dXMiLCJib3QiLCJib3RTdGF0dXMiLCJib3RJbmRpY2F0b3IiLCJoaWRlQm90SW5kaWNhdGlvbiIsInJ0Qm90SW5kaWNhdG9yIiwibWVudGlvbnNMaW5lIiwiX3RoaXMiLCJ3cml0dGVuU2V0IiwiU2V0Iiwid3JpdHRlbk1lbnRpb25zIiwibWFwIiwiXyIsInVybCIsImF0dGVudGlvbnMiLCJmaWx0ZXIiLCJhdHRuIiwiaGFzIiwiY29udGVudCIsInVzZXJJZCIsImhhc01lbnRpb25zTGluZSIsImxlbmd0aCIsIm11dGVkIiwicmVhc29uc1RvTXV0ZSIsInVzZXJJc011dGVkIiwibXV0ZUJvdFN0YXR1c2VzIiwiY29tcGFjdCIsInNob3VsZE5vdE11dGUiLCJyZWxhdGlvbnNoaXAiLCJyZWxhdGlvbnNoaXBSZWJsb2ciLCJtdXRpbmciLCJpblByb2ZpbGUiLCJwcm9maWxlVXNlcklkIiwiaGlkZU11dGVkVXNlcnMiLCJoaWRlTXV0ZWRQb3N0cyIsImhpZGVNdXRlZFRocmVhZHMiLCJoaWRlRmlsdGVyZWRTdGF0dXNlcyIsImhpZGVXb3JkRmlsdGVyZWRQb3N0cyIsImhpZGVTdGF0dXMiLCJpc0ZvY3VzZWQiLCJmb2N1c2VkIiwiaW5fcmVwbHlfdG9fc3RhdHVzX2lkIiwicmVwbHlUb05hbWUiLCJpbl9yZXBseV90b19zY3JlZW5fbmFtZSIsInJlcGx5U3ViamVjdCIsInN1bW1hcnkiLCJkZWNvZGVkU3VtbWFyeSIsIl91bmVzY2FwZSIsImJlaGF2aW9yIiwic3ViamVjdExpbmVCZWhhdmlvciIsInN0YXJ0c1dpdGhSZSIsIm1hdGNoIiwiY29tYmluZWRGYXZzQW5kUmVwZWF0c1VzZXJzIiwiY29tYmluZWRVc2VycyIsImZhdm9yaXRlZEJ5IiwicmVibG9nZ2VkQnkiLCJfdW5pcUJ5IiwidGFncyIsInRhZ09iaiIsImhhc093blByb3BlcnR5Iiwiam9pbiIsImhpZGVQb3N0U3RhdHMiLCJ1c2VycyIsImJldHRlclNoYWRvdyIsImJyb3dzZXJTdXBwb3J0IiwiY3NzRmlsdGVyIiwiaXNTdXNwZW5kYWJsZSIsInJlcGx5aW5nIiwibWVkaWFQbGF5aW5nIiwiaW5UaHJlYWRGb3Jlc3QiLCJjb250cm9sbGVkVGhyZWFkRGlzcGxheVN0YXR1cyIsInRocmVhZFNob3dpbmciLCJ2aXNpYmlsaXR5TG9jYWxpemVkIiwiJGkxOG4iLCJ0IiwidmlzaWJpbGl0eSIsImlzRWRpdGVkIiwiZWRpdGVkX2F0IiwiZWRpdGluZ0F2YWlsYWJsZSIsImluc3RhbmNlIiwiaGFzVmlzaWJsZVF1b3RlIiwicXVvdGVfdXJsIiwicXVvdGVfdmlzaWJsZSIsImhhc0ludmlzaWJsZVF1b3RlIiwicXVvdGVkU3RhdHVzIiwicXVvdGVfaWQiLCJzaG91bGREaXNwbGF5UXVvdGUiLCJtZXRob2RzIiwidmlzaWJpbGl0eUljb24iLCJzaG93RXJyb3IiLCJjbGVhckVycm9yIiwidG9nZ2xlUmVwbHlpbmciLCJnb3RvT3JpZ2luYWwiLCIkZW1pdCIsInRvZ2dsZUV4cGFuZGVkIiwidG9nZ2xlTXV0ZSIsInRvZ2dsZVVzZXJFeHBhbmRlZCIsInJlc3RyaWN0ZWROaWNrbmFtZXMiLCJhZGRNZWRpYVBsYXlpbmciLCJyZW1vdmVNZWRpYVBsYXlpbmciLCJtZWRpYUlkIiwic2V0SGVhZFRhaWxMaW5rcyIsInRvZ2dsZVRocmVhZERpc3BsYXkiLCJjb250cm9sbGVkVG9nZ2xlVGhyZWFkRGlzcGxheSIsInNjcm9sbElmSGlnaGxpZ2h0ZWQiLCJoaWdobGlnaHRJZCIsInJlY3QiLCIkZWwiLCJnZXRCb3VuZGluZ0NsaWVudFJlY3QiLCJ0b3AiLCJ3aW5kb3ciLCJzY3JvbGxCeSIsImhlaWdodCIsImlubmVySGVpZ2h0IiwiYm90dG9tIiwidG9nZ2xlRGlzcGxheVF1b3RlIiwiX3RoaXMyIiwiZGlzcGF0Y2giLCJ0aGVuIiwid2F0Y2giLCJzdGF0dXNSZXBlYXRfbnVtIiwibnVtIiwic3RhdHVzRmF2ZV9udW0iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./src/components/status/status.js?vue&type=script&lang=js\n");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js!./src/components/status_body/status_body.js?vue&type=script&lang=js":
/*!********************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js!./src/components/status_body/status_body.js?vue&type=script&lang=js ***!
\********************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"./node_modules/@babel/runtime/helpers/esm/defineProperty.js\");\n/* harmony import */ var src_services_file_type_file_type_service__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! src/services/file_type/file_type.service */ \"./src/services/file_type/file_type.service.js\");\n/* harmony import */ var src_components_rich_content_rich_content_jsx__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! src/components/rich_content/rich_content.jsx */ \"./src/components/rich_content/rich_content.jsx\");\n/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.esm-bundler.js\");\n/* harmony import */ var _fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @fortawesome/fontawesome-svg-core */ \"./node_modules/@fortawesome/fontawesome-svg-core/index.mjs\");\n/* harmony import */ var _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @fortawesome/free-solid-svg-icons */ \"./node_modules/@fortawesome/free-solid-svg-icons/index.mjs\");\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\n\n\n\n_fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_3__.library.add(_fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_4__.faFile, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_4__.faMusic, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_4__.faImage, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_4__.faLink, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_4__.faPollH);\nvar StatusContent = {\n name: 'StatusContent',\n props: ['compact', 'status', 'focused', 'noHeading', 'fullContent', 'singleLine', 'showingTall', 'expandingSubject', 'showingLongSubject', 'toggleShowingTall', 'toggleExpandingSubject', 'toggleShowingLongSubject'],\n data: function data() {\n return {\n postLength: this.status.text.length,\n parseReadyDone: false\n };\n },\n computed: _objectSpread({\n localCollapseSubjectDefault: function localCollapseSubjectDefault() {\n return this.mergedConfig.collapseMessageWithSubject;\n },\n // This is a bit hacky, but we want to approximate post height before rendering\n // so we count newlines (masto uses for paragraphs, GS uses
between them)\n // as well as approximate line count by counting characters and approximating ~80\n // per line.\n //\n // Using max-height + overflow: auto for status components resulted in false positives\n // very often with japanese characters, and it was very annoying.\n tallStatus: function tallStatus() {\n if (this.singleLine || this.compact) return false;\n var lengthScore = this.status.raw_html.split(/
20;\n },\n longSubject: function longSubject() {\n return this.status.summary.length > 240;\n },\n // When a status has a subject and is also tall, we should only have one show more/less button. If the default is to collapse statuses with subjects, we just treat it like a status with a subject; otherwise, we just treat it like a tall status.\n mightHideBecauseSubject: function mightHideBecauseSubject() {\n return !!this.status.summary && this.localCollapseSubjectDefault;\n },\n mightHideBecauseTall: function mightHideBecauseTall() {\n return this.tallStatus && !(this.status.summary && this.localCollapseSubjectDefault);\n },\n hideSubjectStatus: function hideSubjectStatus() {\n return this.mightHideBecauseSubject && !this.expandingSubject;\n },\n hideTallStatus: function hideTallStatus() {\n return this.mightHideBecauseTall && !this.showingTall;\n },\n showingMore: function showingMore() {\n return this.mightHideBecauseTall && this.showingTall || this.mightHideBecauseSubject && this.expandingSubject;\n },\n attachmentTypes: function attachmentTypes() {\n return this.status.attachments.map(function (file) {\n return src_services_file_type_file_type_service__WEBPACK_IMPORTED_MODULE_1__[\"default\"].fileType(file.mimetype);\n });\n }\n }, (0,vuex__WEBPACK_IMPORTED_MODULE_5__.mapGetters)(['mergedConfig'])),\n components: {\n RichContent: src_components_rich_content_rich_content_jsx__WEBPACK_IMPORTED_MODULE_2__[\"default\"]\n },\n mounted: function mounted() {\n var _this = this;\n this.status.attentions && this.status.attentions.forEach(function (attn) {\n var id = attn.id;\n _this.$store.dispatch('fetchUserIfMissing', id);\n });\n },\n methods: {\n onParseReady: function onParseReady(event) {\n var _this2 = this;\n if (this.parseReadyDone) return;\n this.parseReadyDone = true;\n this.$emit('parseReady', event);\n var writtenMentions = event.writtenMentions,\n invisibleMentions = event.invisibleMentions;\n writtenMentions.filter(function (mention) {\n return !mention.notifying;\n }).forEach(function (mention) {\n var content = mention.content,\n url = mention.url;\n var cleanedString = content.replace(/<[^>]+?>/gi, ''); // remove all tags\n if (!cleanedString.startsWith('@')) return;\n var handle = cleanedString.slice(1);\n var host = url.replace(/^https?:\\/\\//, '').replace(/\\/.+?$/, '');\n _this2.$store.dispatch('fetchUserIfMissing', \"\".concat(handle, \"@\").concat(host));\n });\n /* This is a bit of a hack to make current tall status detector work\n * with rich mentions. Invisible mentions are detected at RichContent level\n * and also we generate plaintext version of mentions by stripping tags\n * so here we subtract from post length by each mention that became invisible\n * via MentionsLine\n */\n this.postLength = invisibleMentions.reduce(function (acc, mention) {\n return acc - mention.textContent.length - 1;\n }, this.postLength);\n },\n toggleShowMore: function toggleShowMore() {\n if (this.mightHideBecauseTall) {\n this.toggleShowingTall();\n } else if (this.mightHideBecauseSubject) {\n this.toggleExpandingSubject();\n }\n },\n generateTagLink: function generateTagLink(tag) {\n return \"/tag/\".concat(tag);\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (StatusContent);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL3NyYy9jb21wb25lbnRzL3N0YXR1c19ib2R5L3N0YXR1c19ib2R5LmpzP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFBK0Q7QUFDTztBQUNyQztBQUMwQjtBQU9qQjtBQUUxQ0csMEVBQVcsQ0FDVEMscUVBQU0sRUFDTkMsc0VBQU8sRUFDUEMsc0VBQU8sRUFDUEMscUVBQU0sRUFDTkMsc0VBQ0YsQ0FBQztBQUVELElBQU1FLGFBQWEsR0FBRztFQUNwQkMsSUFBSSxFQUFFLGVBQWU7RUFDckJDLEtBQUssRUFBRSxDQUNMLFNBQVMsRUFDVCxRQUFRLEVBQ1IsU0FBUyxFQUNULFdBQVcsRUFDWCxhQUFhLEVBQ2IsWUFBWSxFQUNaLGFBQWEsRUFDYixrQkFBa0IsRUFDbEIsb0JBQW9CLEVBQ3BCLG1CQUFtQixFQUNuQix3QkFBd0IsRUFDeEIsMEJBQTBCLENBQzNCO0VBQ0RDLElBQUksV0FBQUEsS0FBQSxFQUFJO0lBQ04sT0FBTztNQUNMQyxVQUFVLEVBQUUsSUFBSSxDQUFDQyxNQUFNLENBQUNDLElBQUksQ0FBQ0MsTUFBTTtNQUNuQ0MsY0FBYyxFQUFFO0lBQ2xCLENBQUM7RUFDSCxDQUFDO0VBQ0RDLFFBQVEsRUFBQUMsYUFBQTtJQUNOQywyQkFBMkIsV0FBQUEsNEJBQUEsRUFBSTtNQUM3QixPQUFPLElBQUksQ0FBQ0MsWUFBWSxDQUFDQywwQkFBMEI7SUFDckQsQ0FBQztJQUNEO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0FDLFVBQVUsV0FBQUEsV0FBQSxFQUFJO01BQ1osSUFBSSxJQUFJLENBQUNDLFVBQVUsSUFBSSxJQUFJLENBQUNDLE9BQU8sRUFBRSxPQUFPLEtBQUs7TUFDakQsSUFBTUMsV0FBVyxHQUFHLElBQUksQ0FBQ1osTUFBTSxDQUFDYSxRQUFRLENBQUNDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FB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X2JvZHkuanM/NmU1MCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZmlsZVR5cGUgZnJvbSAnc3JjL3NlcnZpY2VzL2ZpbGVfdHlwZS9maWxlX3R5cGUuc2VydmljZSdcbmltcG9ydCBSaWNoQ29udGVudCBmcm9tICdzcmMvY29tcG9uZW50cy9yaWNoX2NvbnRlbnQvcmljaF9jb250ZW50LmpzeCdcbmltcG9ydCB7IG1hcEdldHRlcnMgfSBmcm9tICd2dWV4J1xuaW1wb3J0IHsgbGlicmFyeSB9IGZyb20gJ0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1zdmctY29yZSdcbmltcG9ydCB7XG4gIGZhRmlsZSxcbiAgZmFNdXNpYyxcbiAgZmFJbWFnZSxcbiAgZmFMaW5rLFxuICBmYVBvbGxIXG59IGZyb20gJ0Bmb3J0YXdlc29tZS9mcmVlLXNvbGlkLXN2Zy1pY29ucydcblxubGlicmFyeS5hZGQoXG4gIGZhRmlsZSxcbiAgZmFNdXNpYyxcbiAgZmFJbWFnZSxcbiAgZmFMaW5rLFxuICBmYVBvbGxIXG4pXG5cbmNvbnN0IFN0YXR1c0NvbnRlbnQgPSB7XG4gIG5hbWU6ICdTdGF0dXNDb250ZW50JyxcbiAgcHJvcHM6IFtcbiAgICAnY29tcGFjdCcsXG4gICAgJ3N0YXR1cycsXG4gICAgJ2ZvY3VzZWQnLFxuICAgICdub0hlYWRpbmcnLFxuICAgICdmdWxsQ29udGVudCcsXG4gICAgJ3NpbmdsZUxpbmUnLFxuICAgICdzaG93aW5nVGFsbCcsXG4gICAgJ2V4cGFuZGluZ1N1YmplY3QnLFxuICAgICdzaG93aW5nTG9uZ1N1YmplY3QnLFxuICAgICd0b2dnbGVTaG93aW5nVGFsbCcsXG4gICAgJ3RvZ2dsZUV4cGFuZGluZ1N1YmplY3QnLFxuICAgICd0b2dnbGVTaG93aW5nTG9uZ1N1YmplY3QnXG4gIF0sXG4gIGRhdGEgKCkge1xuICAgIHJldHVybiB7XG4gICAgICBwb3N0TGVuZ3RoOiB0aGlzLnN0YXR1cy50ZXh0Lmxlbmd0aCxcbiAgICAgIHBhcnNlUmVhZHlEb25lOiBmYWxzZVxuICAgIH1cbiAgfSxcbiAgY29tcHV0ZWQ6IHtcbiAgICBsb2NhbENvbGxhcHNlU3ViamVjdERlZmF1bHQgKCkge1xuICAgICAgcmV0dXJuIHRoaXMubWVyZ2VkQ29uZmlnLmNvbGxhcHNlTWVzc2FnZVdpdGhTdWJqZWN0XG4gICAgfSxcbiAgICAvLyBUaGlzIGlzIGEgYml0IGhhY2t5LCBidXQgd2Ugd2FudCB0byBhcHByb3hpbWF0ZSBwb3N0IGhlaWdodCBiZWZvcmUgcmVuZGVyaW5nXG4gICAgLy8gc28gd2UgY291bnQgbmV3bGluZXMgKG1hc3RvIHVzZXMgPHA+IGZvciBwYXJhZ3JhcGhzLCBHUyB1c2VzIDxicj4gYmV0d2VlbiB0aGVtKVxuICAgIC8vIGFzIHdlbGwgYXMgYXBwcm94aW1hdGUgbGluZSBjb3VudCBieSBjb3VudGluZyBjaGFyYWN0ZXJzIGFuZCBhcHByb3hpbWF0aW5nIH44MFxuICAgIC8vIHBlciBsaW5lLlxuICAgIC8vXG4gICAgLy8gVXNpbmcgbWF4LWhlaWdodCArIG92ZXJmbG93OiBhdXRvIGZvciBzdGF0dXMgY29tcG9uZW50cyByZXN1bHRlZCBpbiBmYWxzZSBwb3NpdGl2ZXNcbiAgICAvLyB2ZXJ5IG9mdGVuIHdpdGggamFwYW5lc2UgY2hhcmFjdGVycywgYW5kIGl0IHdhcyB2ZXJ5IGFubm95aW5nLlxuICAgIHRhbGxTdGF0dXMgKCkge1xuICAgICAgaWYgKHRoaXMuc2luZ2xlTGluZSB8fCB0aGlzLmNvbXBhY3QpIHJldHVybiBmYWxzZVxuICAgICAgY29uc3QgbGVuZ3RoU2NvcmUgPSB0aGlzLnN0YXR1cy5yYXdfaHRtbC5zcGxpdCgvPHB8PGJyLykubGVuZ3RoICsgdGhpcy5wb3N0TGVuZ3RoIC8gODBcbiAgICAgIHJldHVybiBsZW5ndGhTY29yZSA+IDIwXG4gICAgfSxcbiAgICBsb25nU3ViamVjdCAoKSB7XG4gICAgICByZXR1cm4gdGhpcy5zdGF0dXMuc3VtbWFyeS5sZW5ndGggPiAyNDBcbiAgICB9LFxuICAgIC8vIFdoZW4gYSBzdGF0dXMgaGFzIGEgc3ViamVjdCBhbmQgaXMgYWxzbyB0YWxsLCB3ZSBzaG91bGQgb25seSBoYXZlIG9uZSBzaG93IG1vcmUvbGVzcyBidXR0b24uIElmIHRoZSBkZWZhdWx0IGlzIHRvIGNvbGxhcHNlIHN0YXR1c2VzIHdpdGggc3ViamVjdHMsIHdlIGp1c3QgdHJlYXQgaXQgbGlrZSBhIHN0YXR1cyB3aXRoIGEgc3ViamVjdDsgb3RoZXJ3aXNlLCB3ZSBqdXN0IHRyZWF0IGl0IGxpa2UgYSB0YWxsIHN0YXR1cy5cbiAgICBtaWdodEhpZGVCZWNhdXNlU3ViamVjdCAoKSB7XG4gICAgICByZXR1cm4gISF0aGlzLnN0YXR1cy5zdW1tYXJ5ICYmIHRoaXMubG9jYWxDb2xsYXBzZVN1YmplY3REZWZhdWx0XG4gICAgfSxcbiAgICBtaWdodEhpZGVCZWNhdXNlVGFsbCAoKSB7XG4gICAgICByZXR1cm4gdGhpcy50YWxsU3RhdHVzICYmICEodGhpcy5zdGF0dXMuc3VtbWFyeSAmJiB0aGlzLmxvY2FsQ29sbGFwc2VTdWJqZWN0RGVmYXVsdClcbiAgICB9LFxuICAgIGhpZGVTdWJqZWN0U3RhdHVzICgpIHtcbiAgICAgIHJldHVybiB0aGlzLm1pZ2h0SGlkZUJlY2F1c2VTdWJqZWN0ICYmICF0aGlzLmV4cGFuZGluZ1N1YmplY3RcbiAgICB9LFxuICAgIGhpZGVUYWxsU3RhdHVzICgpIHtcbiAgICAgIHJldHVybiB0aGlzLm1pZ2h0SGlkZUJlY2F1c2VUYWxsICYmICF0aGlzLnNob3dpbmdUYWxsXG4gICAgfSxcbiAgICBzaG93aW5nTW9yZSAoKSB7XG4gICAgICByZXR1cm4gKHRoaXMubWlnaHRIaWRlQmVjYXVzZVRhbGwgJiYgdGhpcy5zaG93aW5nVGFsbCkgfHwgKHRoaXMubWlnaHRIaWRlQmVjYXVzZVN1YmplY3QgJiYgdGhpcy5leHBhbmRpbmdTdWJqZWN0KVxuICAgIH0sXG4gICAgYXR0YWNobWVudFR5cGVzICgpIHtcbiAgICAgIHJldHVybiB0aGlzLnN0YXR1cy5hdHRhY2htZW50cy5tYXAoZmlsZSA9PiBmaWxlVHlwZS5maWxlVHlwZShmaWxlLm1pbWV0eXBlKSlcbiAgICB9LFxuICAgIC4uLm1hcEdldHRlcnMoWydtZXJnZWRDb25maWcnXSlcbiAgfSxcbiAgY29tcG9uZW50czoge1xuICAgIFJpY2hDb250ZW50XG4gIH0sXG4gIG1vdW50ZWQgKCkge1xuICAgIHRoaXMuc3RhdHVzLmF0dGVudGlvbnMgJiYgdGhpcy5zdGF0dXMuYXR0ZW50aW9ucy5mb3JFYWNoKGF0dG4gPT4ge1xuICAgICAgY29uc3QgeyBpZCB9ID0gYXR0blxuICAgICAgdGhpcy4kc3RvcmUuZGlzcGF0Y2goJ2ZldGNoVXNlcklmTWlzc2luZycsIGlkKVxuICAgIH0pXG4gIH0sXG4gIG1ldGhvZHM6IHtcbiAgICBvblBhcnNlUmVhZHkgKGV2ZW50KSB7XG4gICAgICBpZiAodGhpcy5wYXJzZVJlYWR5RG9uZSkgcmV0dXJuXG4gICAgICB0aGlzLnBhcnNlUmVhZHlEb25lID0gdHJ1ZVxuICAgICAgdGhpcy4kZW1pdCgncGFyc2VSZWFkeScsIGV2ZW50KVxuICAgICAgY29uc3QgeyB3cml0dGVuTWVudGlvbnMsIGludmlzaWJsZU1lbnRpb25zIH0gPSBldmVudFxuICAgICAgd3JpdHRlbk1lbnRpb25zXG4gICAgICAgIC5maWx0ZXIobWVudGlvbiA9PiAhbWVudGlvbi5ub3RpZnlpbmcpXG4gICAgICAgIC5mb3JFYWNoKG1lbnRpb24gPT4ge1xuICAgICAgICAgIGNvbnN0IHsgY29udGVudCwgdXJsIH0gPSBtZW50aW9uXG4gICAgICAgICAgY29uc3QgY2xlYW5lZFN0cmluZyA9IGNvbnRlbnQucmVwbGFjZSgvPFtePl0rPz4vZ2ksICcnKSAvLyByZW1vdmUgYWxsIHRhZ3NcbiAgICAgICAgICBpZiAoIWNsZWFuZWRTdHJpbmcuc3RhcnRzV2l0aCgnQCcpKSByZXR1cm5cbiAgICAgICAgICBjb25zdCBoYW5kbGUgPSBjbGVhbmVkU3RyaW5nLnNsaWNlKDEpXG4gICAgICAgICAgY29uc3QgaG9zdCA9IHVybC5yZXBsYWNlKC9eaHR0cHM/OlxcL1xcLy8sICcnKS5yZXBsYWNlKC9cXC8uKz8kLywgJycpXG4gICAgICAgICAgdGhpcy4kc3RvcmUuZGlzcGF0Y2goJ2ZldGNoVXNlcklmTWlzc2luZycsIGAke2hhbmRsZX1AJHtob3N0fWApXG4gICAgICAgIH0pXG4gICAgICAvKiBUaGlzIGlzIGEgYml0IG9mIGEgaGFjayB0byBtYWtlIGN1cnJlbnQgdGFsbCBzdGF0dXMgZGV0ZWN0b3Igd29ya1xuICAgICAgICogd2l0aCByaWNoIG1lbnRpb25zLiBJbnZpc2libGUgbWVudGlvbnMgYXJlIGRldGVjdGVkIGF0IFJpY2hDb250ZW50IGxldmVsXG4gICAgICAgKiBhbmQgYWxzbyB3ZSBnZW5lcmF0ZSBwbGFpbnRleHQgdmVyc2lvbiBvZiBtZW50aW9ucyBieSBzdHJpcHBpbmcgdGFnc1xuICAgICAgICogc28gaGVyZSB3ZSBzdWJ0cmFjdCBmcm9tIHBvc3QgbGVuZ3RoIGJ5IGVhY2ggbWVudGlvbiB0aGF0IGJlY2FtZSBpbnZpc2libGVcbiAgICAgICAqIHZpYSBNZW50aW9uc0xpbmVcbiAgICAgICAqL1xuICAgICAgdGhpcy5wb3N0TGVuZ3RoID0gaW52aXNpYmxlTWVudGlvbnMucmVkdWNlKChhY2MsIG1lbnRpb24pID0+IHtcbiAgICAgICAgcmV0dXJuIGFjYyAtIG1lbnRpb24udGV4dENvbnRlbnQubGVuZ3RoIC0gMVxuICAgICAgfSwgdGhpcy5wb3N0TGVuZ3RoKVxuICAgIH0sXG4gICAgdG9nZ2xlU2hvd01vcmUgKCkge1xuICAgICAgaWYgKHRoaXMubWlnaHRIaWRlQmVjYXVzZVRhbGwpIHtcbiAgICAgICAgdGhpcy50b2dnbGVTaG93aW5nVGFsbCgpXG4gICAgICB9IGVsc2UgaWYgKHRoaXMubWlnaHRIaWRlQmVjYXVzZVN1YmplY3QpIHtcbiAgICAgICAgdGhpcy50b2dnbGVFeHBhbmRpbmdTdWJqZWN0KClcbiAgICAgIH1cbiAgICB9LFxuICAgIGdlbmVyYXRlVGFnTGluayAodGFnKSB7XG4gICAgICByZXR1cm4gYC90YWcvJHt0YWd9YFxuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBTdGF0dXNDb250ZW50XG4iXSwibmFtZXMiOlsiZmlsZVR5cGUiLCJSaWNoQ29udGVudCIsIm1hcEdldHRlcnMiLCJsaWJyYXJ5IiwiZmFGaWxlIiwiZmFNdXNpYyIsImZhSW1hZ2UiLCJmYUxpbmsiLCJmYVBvbGxIIiwiYWRkIiwiU3RhdHVzQ29udGVudCIsIm5hbWUiLCJwcm9wcyIsImRhdGEiLCJwb3N0TGVuZ3RoIiwic3RhdHVzIiwidGV4dCIsImxlbmd0aCIsInBhcnNlUmVhZHlEb25lIiwiY29tcHV0ZWQiLCJfb2JqZWN0U3ByZWFkIiwibG9jYWxDb2xsYXBzZVN1YmplY3REZWZhdWx0IiwibWVyZ2VkQ29uZmlnIiwiY29sbGFwc2VNZXNzYWdlV2l0aFN1YmplY3QiLCJ0YWxsU3RhdHVzIiwic2luZ2xlTGluZSIsImNvbXBhY3QiLCJsZW5ndGhTY29yZSIsInJhd19odG1sIiwic3BsaXQiLCJsb25nU3ViamVjdCIsInN1bW1hcnkiLCJtaWdodEhpZGVCZWNhdXNlU3ViamVjdCIsIm1pZ2h0SGlkZUJlY2F1c2VUYWxsIiwiaGlkZVN1YmplY3RTdGF0dXMiLCJleHBhbmRpbmdTdWJqZWN0IiwiaGlkZVRhbGxTdGF0dXMiLCJzaG93aW5nVGFsbCIsInNob3dpbmdNb3JlIiwiYXR0YWNobWVudFR5cGVzIiwiYXR0YWNobWVudHMiLCJtYXAiLCJmaWxlIiwibWltZXR5cGUiLCJjb21wb25lbnRzIiwibW91bnRlZCIsIl90aGlzIiwiYXR0ZW50aW9ucyIsImZvckVhY2giLCJhdHRuIiwiaWQiLCIkc3RvcmUiLCJkaXNwYXRjaCIsIm1ldGhvZHMiLCJvblBhcnNlUmVhZHkiLCJldmVudCIsIl90aGlzMiIsIiRlbWl0Iiwid3JpdHRlbk1lbnRpb25zIiwiaW52aXNpYmxlTWVudGlvbnMiLCJmaWx0ZXIiLCJtZW50aW9uIiwibm90aWZ5aW5nIiwiY29udGVudCIsInVybCIsImNsZWFuZWRTdHJpbmciLCJyZXBsYWNlIiwic3RhcnRzV2l0aCIsImhhbmRsZSIsInNsaWNlIiwiaG9zdCIsImNvbmNhdCIsInJlZHVjZSIsImFjYyIsInRleHRDb250ZW50IiwidG9nZ2xlU2hvd01vcmUiLCJ0b2dnbGVTaG93aW5nVGFsbCIsInRvZ2dsZUV4cGFuZGluZ1N1YmplY3QiLCJnZW5lcmF0ZVRhZ0xpbmsiLCJ0YWciXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./src/components/status_body/status_body.js?vue&type=script&lang=js\n");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js!./src/components/status_content/status_content.js?vue&type=script&lang=js":
/*!**************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js!./src/components/status_content/status_content.js?vue&type=script&lang=js ***!
\**************************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"./node_modules/@babel/runtime/helpers/esm/defineProperty.js\");\n/* harmony import */ var _attachment_attachment_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../attachment/attachment.vue */ \"./src/components/attachment/attachment.vue\");\n/* harmony import */ var _poll_poll_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../poll/poll.vue */ \"./src/components/poll/poll.vue\");\n/* harmony import */ var _gallery_gallery_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../gallery/gallery.vue */ \"./src/components/gallery/gallery.vue\");\n/* harmony import */ var src_components_status_body_status_body_vue__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! src/components/status_body/status_body.vue */ \"./src/components/status_body/status_body.vue\");\n/* harmony import */ var _link_preview_link_preview_vue__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../link-preview/link-preview.vue */ \"./src/components/link-preview/link-preview.vue\");\n/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.esm-bundler.js\");\n/* harmony import */ var _fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @fortawesome/fontawesome-svg-core */ \"./node_modules/@fortawesome/fontawesome-svg-core/index.mjs\");\n/* harmony import */ var _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @fortawesome/free-solid-svg-icons */ \"./node_modules/@fortawesome/free-solid-svg-icons/index.mjs\");\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\n\n\n\n\n\n\n_fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_6__.library.add(_fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_7__.faCircleNotch, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_7__.faFile, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_7__.faMusic, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_7__.faImage, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_7__.faLink, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_7__.faPollH);\nvar camelCase = function camelCase(name) {\n return name.charAt(0).toUpperCase() + name.slice(1);\n};\nvar controlledOrUncontrolledGetters = function controlledOrUncontrolledGetters(list) {\n return list.reduce(function (res, name) {\n var camelized = camelCase(name);\n var toggle = \"controlledToggle\".concat(camelized);\n var controlledName = \"controlled\".concat(camelized);\n var uncontrolledName = \"uncontrolled\".concat(camelized);\n res[name] = function () {\n return (this.$data[toggle] !== undefined || this.$props[toggle] !== undefined) && this[toggle] ? this[controlledName] : this[uncontrolledName];\n };\n return res;\n }, {});\n};\nvar controlledOrUncontrolledToggle = function controlledOrUncontrolledToggle(obj, name) {\n var camelized = camelCase(name);\n var toggle = \"controlledToggle\".concat(camelized);\n var uncontrolledName = \"uncontrolled\".concat(camelized);\n if (obj[toggle]) {\n obj[toggle]();\n } else {\n obj[uncontrolledName] = !obj[uncontrolledName];\n }\n};\nvar StatusContent = {\n name: 'StatusContent',\n props: ['status', 'compact', 'focused', 'noHeading', 'fullContent', 'singleLine', 'controlledShowingTall', 'controlledExpandingSubject', 'controlledToggleShowingTall', 'controlledToggleExpandingSubject', 'controlledShowingLongSubject', 'controlledToggleShowingLongSubject'],\n data: function data() {\n return {\n uncontrolledShowingTall: this.fullContent || this.inConversation && this.focused,\n uncontrolledShowingLongSubject: false,\n // not as computed because it sets the initial state which will be changed later\n uncontrolledExpandingSubject: !this.$store.getters.mergedConfig.collapseMessageWithSubject\n };\n },\n computed: _objectSpread(_objectSpread(_objectSpread({}, controlledOrUncontrolledGetters(['showingTall', 'expandingSubject', 'showingLongSubject'])), {}, {\n statusCard: function statusCard() {\n if (!this.status.card) return null;\n return this.status.card.url === this.status.quote_url ? null : this.status.card;\n },\n hideAttachments: function hideAttachments() {\n return this.mergedConfig.hideAttachments && !this.inConversation || this.mergedConfig.hideAttachmentsInConv && this.inConversation;\n },\n nsfwClickthrough: function nsfwClickthrough() {\n if (!this.status.nsfw) {\n return false;\n }\n if (this.status.summary && this.localCollapseSubjectDefault) {\n return false;\n }\n return true;\n },\n attachmentSize: function attachmentSize() {\n if (this.compact) {\n return 'small';\n } else if (this.mergedConfig.hideAttachments && !this.inConversation || this.mergedConfig.hideAttachmentsInConv && this.inConversation || this.status.attachments.length > this.maxThumbnails) {\n return 'hide';\n }\n return 'normal';\n },\n maxThumbnails: function maxThumbnails() {\n return this.mergedConfig.maxThumbnails;\n }\n }, (0,vuex__WEBPACK_IMPORTED_MODULE_8__.mapGetters)(['mergedConfig'])), (0,vuex__WEBPACK_IMPORTED_MODULE_8__.mapState)({\n currentUser: function currentUser(state) {\n return state.users.currentUser;\n }\n })),\n components: {\n Attachment: _attachment_attachment_vue__WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n Poll: _poll_poll_vue__WEBPACK_IMPORTED_MODULE_2__[\"default\"],\n Gallery: _gallery_gallery_vue__WEBPACK_IMPORTED_MODULE_3__[\"default\"],\n LinkPreview: _link_preview_link_preview_vue__WEBPACK_IMPORTED_MODULE_5__[\"default\"],\n StatusBody: src_components_status_body_status_body_vue__WEBPACK_IMPORTED_MODULE_4__[\"default\"]\n },\n methods: {\n toggleShowingTall: function toggleShowingTall() {\n controlledOrUncontrolledToggle(this, 'showingTall');\n },\n toggleExpandingSubject: function toggleExpandingSubject() {\n controlledOrUncontrolledToggle(this, 'expandingSubject');\n },\n toggleShowingLongSubject: function toggleShowingLongSubject() {\n controlledOrUncontrolledToggle(this, 'showingLongSubject');\n },\n setMedia: function setMedia() {\n var _this = this;\n var attachments = this.attachmentSize === 'hide' ? this.status.attachments : this.galleryAttachments;\n return function () {\n return _this.$store.dispatch('setMedia', attachments);\n };\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (StatusContent);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL3NyYy9jb21wb25lbnRzL3N0YXR1c19jb250ZW50L3N0YXR1c19jb250ZW50LmpzP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBcUQ7QUFDbEI7QUFDUztBQUN1QjtBQUNUO0FBQ2Y7QUFDZ0I7QUFRakI7QUFFMUNPLDBFQUFXLENBQ1RDLDRFQUFhLEVBQ2JDLHFFQUFNLEVBQ05DLHNFQUFPLEVBQ1BDLHNFQUFPLEVBQ1BDLHFFQUFNLEVBQ05DLHNFQUNGLENBQUM7QUFFRCxJQUFNRSxTQUFTLEdBQUcsU0FBWkEsU0FBU0EsQ0FBR0MsSUFBSTtFQUFBLE9BQUlBLElBQUksQ0FBQ0MsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDQyxXQUFXLENBQUMsQ0FBQyxHQUFHRixJQUFJLENBQUNHLEtBQUssQ0FBQyxDQUFDLENBQUM7QUFBQTtBQUV0RSxJQUFNQywrQkFBK0IsR0FBRyxTQUFsQ0EsK0JBQStCQSxDQUFHQyxJQUFJO0VBQUEsT0FBSUEsSUFBSSxDQUFDQyxNQUFNLENBQUMsVUFBQ0MsR0FBRyxFQUFFUCxJQUFJLEVBQUs7SUFDekUsSUFBTVEsU0FBUyxHQUFHVCxTQUFTLENBQUNDLElBQUksQ0FBQztJQUNqQyxJQUFNUyxNQUFNLHNCQUFBQyxNQUFBLENBQXNCRixTQUFTLENBQUU7SUFDN0MsSUFBTUcsY0FBYyxnQkFBQUQsTUFBQSxDQUFnQkYsU0FBUyxDQUFFO0lBQy9DLElBQU1JLGdCQUFnQixrQkFBQUYsTUFBQSxDQUFrQkYsU0FBUyxDQUFFO0lBQ25ERCxHQUFHLENBQUNQLElBQUksQ0FBQyxHQUFHLFlBQVk7TUFDdEIsT0FBUSxDQUFDLElBQUksQ0FBQ2EsS0FBSyxDQUFDSixNQUFNLENBQUMsS0FBS0ssU0FBUyxJQUFJLElBQUksQ0FBQ0MsTUFBTSxDQUFDTixNQUFNLENBQUMsS0FBS0ssU0FBUyxLQUFLLElBQUks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QUFJLENBQUNWLE1BQU0sQ0FBQ1ksV0FBVyxHQUFHLElBQUksQ0FBQ2Esa0JBQWtCO01BQ3RHLE9BQU87UUFBQSxPQUFNRCxLQUFJLENBQUMvQixNQUFNLENBQUNpQyxRQUFRLENBQUMsVUFBVSxFQUFFZCxXQUFXLENBQUM7TUFBQTtJQUM1RDtFQUNGO0FBQ0YsQ0FBQztBQUVELGlFQUFlNUIsYUFBYSIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvY29tcG9uZW50cy9zdGF0dXNfY29udGVudC9zdGF0dXNfY29udGVudC5qcz9iN2RmIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBBdHRhY2htZW50IGZyb20gJy4uL2F0dGFjaG1lbnQvYXR0YWNobWVudC52dWUnXG5pbXBvcnQgUG9sbCBmcm9tICcuLi9wb2xsL3BvbGwudnVlJ1xuaW1wb3J0IEdhbGxlcnkgZnJvbSAnLi4vZ2FsbGVyeS9nYWxsZXJ5LnZ1ZSdcbmltcG9ydCBTdGF0dXNCb2R5IGZyb20gJ3NyYy9jb21wb25lbnRzL3N0YXR1c19ib2R5L3N0YXR1c19ib2R5LnZ1ZSdcbmltcG9ydCBMaW5rUHJldmlldyBmcm9tICcuLi9saW5rLXByZXZpZXcvbGluay1wcmV2aWV3LnZ1ZSdcbmltcG9ydCB7IG1hcEdldHRlcnMsIG1hcFN0YXRlIH0gZnJvbSAndnVleCdcbmltcG9ydCB7IGxpYnJhcnkgfSBmcm9tICdAZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtc3ZnLWNvcmUnXG5pbXBvcnQge1xuICBmYUNpcmNsZU5vdGNoLFxuICBmYUZpbGUsXG4gIGZhTXVzaWMsXG4gIGZhSW1hZ2UsXG4gIGZhTGluayxcbiAgZmFQb2xsSFxufSBmcm9tICdAZm9ydGF3ZXNvbWUvZnJlZS1zb2xpZC1zdmctaWNvbnMnXG5cbmxpYnJhcnkuYWRkKFxuICBmYUNpcmNsZU5vdGNoLFxuICBmYUZpbGUsXG4gIGZhTXVzaWMsXG4gIGZhSW1hZ2UsXG4gIGZhTGluayxcbiAgZmFQb2xsSFxuKVxuXG5jb25zdCBjYW1lbENhc2UgPSBuYW1lID0+IG5hbWUuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkgKyBuYW1lLnNsaWNlKDEpXG5cbmNvbnN0IGNvbnRyb2xsZWRPclVuY29udHJvbGxlZEdldHRlcnMgPSBsaXN0ID0+IGxpc3QucmVkdWNlKChyZXMsIG5hbWUpID0+IHtcbiAgY29uc3QgY2FtZWxpemVkID0gY2FtZWxDYXNlKG5hbWUpXG4gIGNvbnN0IHRvZ2dsZSA9IGBjb250cm9sbGVkVG9nZ2xlJHtjYW1lbGl6ZWR9YFxuICBjb25zdCBjb250cm9sbGVkTmFtZSA9IGBjb250cm9sbGVkJHtjYW1lbGl6ZWR9YFxuICBjb25zdCB1bmNvbnRyb2xsZWROYW1lID0gYHVuY29udHJvbGxlZCR7Y2FtZWxpemVkfWBcbiAgcmVzW25hbWVdID0gZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiAoKHRoaXMuJGRhdGFbdG9nZ2xlXSAhPT0gdW5kZWZpbmVkIHx8IHRoaXMuJHByb3BzW3RvZ2dsZV0gIT09IHVuZGVmaW5lZCkgJiYgdGhpc1t0b2dnbGVdKSA/IHRoaXNbY29udHJvbGxlZE5hbWVdIDogdGhpc1t1bmNvbnRyb2xsZWROYW1lXVxuICB9XG4gIHJldHVybiByZXNcbn0sIHt9KVxuXG5jb25zdCBjb250cm9sbGVkT3JVbmNvbnRyb2xsZWRUb2dnbGUgPSAob2JqLCBuYW1lKSA9PiB7XG4gIGNvbnN0IGNhbWVsaXplZCA9IGNhbWVsQ2FzZShuYW1lKVxuICBjb25zdCB0b2dnbGUgPSBgY29udHJvbGxlZFRvZ2dsZSR7Y2FtZWxpemVkfWBcbiAgY29uc3QgdW5jb250cm9sbGVkTmFtZSA9IGB1bmNvbnRyb2xsZWQke2NhbWVsaXplZH1gXG4gIGlmIChvYmpbdG9nZ2xlXSkge1xuICAgIG9ialt0b2dnbGVdKClcbiAgfSBlbHNlIHtcbiAgICBvYmpbdW5jb250cm9sbGVkTmFtZV0gPSAhb2JqW3VuY29udHJvbGxlZE5hbWVdXG4gIH1cbn1cblxuY29uc3QgU3RhdHVzQ29udGVudCA9IHtcbiAgbmFtZTogJ1N0YXR1c0NvbnRlbnQnLFxuICBwcm9wczogW1xuICAgICdzdGF0dXMnLFxuICAgICdjb21wYWN0JyxcbiAgICAnZm9jdXNlZCcsXG4gICAgJ25vSGVhZGluZycsXG4gICAgJ2Z1bGxDb250ZW50JyxcbiAgICAnc2luZ2xlTGluZScsXG4gICAgJ2NvbnRyb2xsZWRTaG93aW5nVGFsbCcsXG4gICAgJ2NvbnRyb2xsZWRFeHBhbmRpbmdTdWJqZWN0JyxcbiAgICAnY29udHJvbGxlZFRvZ2dsZVNob3dpbmdUYWxsJyxcbiAgICAnY29udHJvbGxlZFRvZ2dsZUV4cGFuZGluZ1N1YmplY3QnLFxuICAgICdjb250cm9sbGVkU2hvd2luZ0xvbmdTdWJqZWN0JyxcbiAgICAnY29udHJvbGxlZFRvZ2dsZVNob3dpbmdMb25nU3ViamVjdCdcbiAgXSxcbiAgZGF0YSAoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHVuY29udHJvbGxlZFNob3dpbmdUYWxsOiB0aGlzLmZ1bGxDb250ZW50IHx8ICh0aGlzLmluQ29udmVyc2F0aW9uICYmIHRoaXMuZm9jdXNlZCksXG4gICAgICB1bmNvbnRyb2xsZWRTaG93aW5nTG9uZ1N1YmplY3Q6IGZhbHNlLFxuICAgICAgLy8gbm90IGFzIGNvbXB1dGVkIGJlY2F1c2UgaXQgc2V0cyB0aGUgaW5pdGlhbCBzdGF0ZSB3aGljaCB3aWxsIGJlIGNoYW5nZWQgbGF0ZXJcbiAgICAgIHVuY29udHJvbGxlZEV4cGFuZGluZ1N1YmplY3Q6ICF0aGlzLiRzdG9yZS5nZXR0ZXJzLm1lcmdlZENvbmZpZy5jb2xsYXBzZU1lc3NhZ2VXaXRoU3ViamVjdFxuICAgIH1cbiAgfSxcbiAgY29tcHV0ZWQ6IHtcbiAgICAuLi5jb250cm9sbGVkT3JVbmNvbnRyb2xsZWRHZXR0ZXJzKFsnc2hvd2luZ1RhbGwnLCAnZXhwYW5kaW5nU3ViamVjdCcsICdzaG93aW5nTG9uZ1N1YmplY3QnXSksXG4gICAgc3RhdHVzQ2FyZCAoKSB7XG4gICAgICBpZiAoIXRoaXMuc3RhdHVzLmNhcmQpIHJldHVybiBudWxsXG4gICAgICByZXR1cm4gdGhpcy5zdGF0dXMuY2FyZC51cmwgPT09IHRoaXMuc3RhdHVzLnF1b3RlX3VybCA/IG51bGwgOiB0aGlzLnN0YXR1cy5jYXJkXG4gICAgfSxcbiAgICBoaWRlQXR0YWNobWVudHMgKCkge1xuICAgICAgcmV0dXJuICh0aGlzLm1lcmdlZENvbmZpZy5oaWRlQXR0YWNobWVudHMgJiYgIXRoaXMuaW5Db252ZXJzYXRpb24pIHx8XG4gICAgICAgICh0aGlzLm1lcmdlZENvbmZpZy5oaWRlQXR0YWNobWVudHNJbkNvbnYgJiYgdGhpcy5pbkNvbnZlcnNhdGlvbilcbiAgICB9LFxuICAgIG5zZndDbGlja3Rocm91Z2ggKCkge1xuICAgICAgaWYgKCF0aGlzLnN0YXR1cy5uc2Z3KSB7XG4gICAgICAgIHJldHVybiBmYWxzZVxuICAgICAgfVxuICAgICAgaWYgKHRoaXMuc3RhdHVzLnN1bW1hcnkgJiYgdGhpcy5sb2NhbENvbGxhcHNlU3ViamVjdERlZmF1bHQpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlXG4gICAgICB9XG4gICAgICByZXR1cm4gdHJ1ZVxuICAgIH0sXG4gICAgYXR0YWNobWVudFNpemUgKCkge1xuICAgICAgaWYgKHRoaXMuY29tcGFjdCkge1xuICAgICAgICByZXR1cm4gJ3NtYWxsJ1xuICAgICAgfSBlbHNlIGlmICgodGhpcy5tZXJnZWRDb25maWcuaGlkZUF0dGFjaG1lbnRzICYmICF0aGlzLmluQ29udmVyc2F0aW9uKSB8fFxuICAgICAgICAodGhpcy5tZXJnZWRDb25maWcuaGlkZUF0dGFjaG1lbnRzSW5Db252ICYmIHRoaXMuaW5Db252ZXJzYXRpb24pIHx8XG4gICAgICAgICh0aGlzLnN0YXR1cy5hdHRhY2htZW50cy5sZW5ndGggPiB0aGlzLm1heFRodW1ibmFpbHMpKSB7XG4gICAgICAgIHJldHVybiAnaGlkZSdcbiAgICAgIH1cbiAgICAgIHJldHVybiAnbm9ybWFsJ1xuICAgIH0sXG4gICAgbWF4VGh1bWJuYWlscyAoKSB7XG4gICAgICByZXR1cm4gdGhpcy5tZXJnZWRDb25maWcubWF4VGh1bWJuYWlsc1xuICAgIH0sXG4gICAgLi4ubWFwR2V0dGVycyhbJ21lcmdlZENvbmZpZyddKSxcbiAgICAuLi5tYXBTdGF0ZSh7XG4gICAgICBjdXJyZW50VXNlcjogc3RhdGUgPT4gc3RhdGUudXNlcnMuY3VycmVudFVzZXJcbiAgICB9KVxuICB9LFxuICBjb21wb25lbnRzOiB7XG4gICAgQXR0YWNobWVudCxcbiAgICBQb2xsLFxuICAgIEdhbGxlcnksXG4gICAgTGlua1ByZXZpZXcsXG4gICAgU3RhdHVzQm9keVxuICB9LFxuICBtZXRob2RzOiB7XG4gICAgdG9nZ2xlU2hvd2luZ1RhbGwgKCkge1xuICAgICAgY29udHJvbGxlZE9yVW5jb250cm9sbGVkVG9nZ2xlKHRoaXMsICdzaG93aW5nVGFsbCcpXG4gICAgfSxcbiAgICB0b2dnbGVFeHBhbmRpbmdTdWJqZWN0ICgpIHtcbiAgICAgIGNvbnRyb2xsZWRPclVuY29udHJvbGxlZFRvZ2dsZSh0aGlzLCAnZXhwYW5kaW5nU3ViamVjdCcpXG4gICAgfSxcbiAgICB0b2dnbGVTaG93aW5nTG9uZ1N1YmplY3QgKCkge1xuICAgICAgY29udHJvbGxlZE9yVW5jb250cm9sbGVkVG9nZ2xlKHRoaXMsICdzaG93aW5nTG9uZ1N1YmplY3QnKVxuICAgIH0sXG4gICAgc2V0TWVkaWEgKCkge1xuICAgICAgY29uc3QgYXR0YWNobWVudHMgPSB0aGlzLmF0dGFjaG1lbnRTaXplID09PSAnaGlkZScgPyB0aGlzLnN0YXR1cy5hdHRhY2htZW50cyA6IHRoaXMuZ2FsbGVyeUF0dGFjaG1lbnRzXG4gICAgICByZXR1cm4gKCkgPT4gdGhpcy4kc3RvcmUuZGlzcGF0Y2goJ3NldE1lZGlhJywgYXR0YWNobWVudHMpXG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IFN0YXR1c0NvbnRlbnRcbiJdLCJuYW1lcyI6WyJBdHRhY2htZW50IiwiUG9sbCIsIkdhbGxlcnkiLCJTdGF0dXNCb2R5IiwiTGlua1ByZXZpZXciLCJtYXBHZXR0ZXJzIiwibWFwU3RhdGUiLCJsaWJyYXJ5IiwiZmFDaXJjbGVOb3RjaCIsImZhRmlsZSIsImZhTXVzaWMiLCJmYUltYWdlIiwiZmFMaW5rIiwiZmFQb2xsSCIsImFkZCIsImNhbWVsQ2FzZSIsIm5hbWUiLCJjaGFyQXQiLCJ0b1VwcGVyQ2FzZSIsInNsaWNlIiwiY29udHJvbGxlZE9yVW5jb250cm9sbGVkR2V0dGVycyIsImxpc3QiLCJyZWR1Y2UiLCJyZXMiLCJjYW1lbGl6ZWQiLCJ0b2dnbGUiLCJjb25jYXQiLCJjb250cm9sbGVkTmFtZSIsInVuY29udHJvbGxlZE5hbWUiLCIkZGF0YSIsInVuZGVmaW5lZCIsIiRwcm9wcyIsImNvbnRyb2xsZWRPclVuY29udHJvbGxlZFRvZ2dsZSIsIm9iaiIsIlN0YXR1c0NvbnRlbnQiLCJwcm9wcyIsImRhdGEiLCJ1bmNvbnRyb2xsZWRTaG93aW5nVGFsbCIsImZ1bGxDb250ZW50IiwiaW5Db252ZXJzYXRpb24iLCJmb2N1c2VkIiwidW5jb250cm9sbGVkU2hvd2luZ0xvbmdTdWJqZWN0IiwidW5jb250cm9sbGVkRXhwYW5kaW5nU3ViamVjdCIsIiRzdG9yZSIsImdldHRlcnMiLCJtZXJnZWRDb25maWciLCJjb2xsYXBzZU1lc3NhZ2VXaXRoU3ViamVjdCIsImNvbXB1dGVkIiwiX29iamVjdFNwcmVhZCIsInN0YXR1c0NhcmQiLCJzdGF0dXMiLCJjYXJkIiwidXJsIiwicXVvdGVfdXJsIiwiaGlkZUF0dGFjaG1lbnRzIiwiaGlkZUF0dGFjaG1lbnRzSW5Db252IiwibnNmd0NsaWNrdGhyb3VnaCIsIm5zZnciLCJzdW1tYXJ5IiwibG9jYWxDb2xsYXBzZVN1YmplY3REZWZhdWx0IiwiYXR0YWNobWVudFNpemUiLCJjb21wYWN0IiwiYXR0YWNobWVudHMiLCJsZW5ndGgiLCJtYXhUaHVtYm5haWxzIiwiY3VycmVudFVzZXIiLCJzdGF0ZSIsInVzZXJzIiwiY29tcG9uZW50cyIsIm1ldGhvZHMiLCJ0b2dnbGVTaG93aW5nVGFsbCIsInRvZ2dsZUV4cGFuZGluZ1N1YmplY3QiLCJ0b2dnbGVTaG93aW5nTG9uZ1N1YmplY3QiLCJzZXRNZWRpYSIsIl90aGlzIiwiZ2FsbGVyeUF0dGFjaG1lbnRzIiwiZGlzcGF0Y2giXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./src/components/status_content/status_content.js?vue&type=script&lang=js\n");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js!./src/components/status_history_modal/status_history_modal.js?vue&type=script&lang=js":
/*!**************************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js!./src/components/status_history_modal/status_history_modal.js?vue&type=script&lang=js ***!
\**************************************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var lodash_get__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/get */ \"./node_modules/lodash/get.js\");\n/* harmony import */ var lodash_get__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_get__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _modal_modal_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../modal/modal.vue */ \"./src/components/modal/modal.vue\");\n/* harmony import */ var _status_status_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../status/status.vue */ \"./src/components/status/status.vue\");\n\n\n\nvar StatusHistoryModal = {\n components: {\n Modal: _modal_modal_vue__WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n Status: _status_status_vue__WEBPACK_IMPORTED_MODULE_2__[\"default\"]\n },\n data: function data() {\n return {\n statuses: []\n };\n },\n computed: {\n modalActivated: function modalActivated() {\n return this.$store.state.statusHistory.modalActivated;\n },\n params: function params() {\n return this.$store.state.statusHistory.params;\n },\n statusId: function statusId() {\n return this.params.id;\n },\n historyCount: function historyCount() {\n return this.statuses.length;\n },\n history: function history() {\n return this.statuses;\n }\n },\n watch: {\n params: function params(newVal, oldVal) {\n var newStatusId = lodash_get__WEBPACK_IMPORTED_MODULE_0___default()(newVal, 'id') !== lodash_get__WEBPACK_IMPORTED_MODULE_0___default()(oldVal, 'id');\n if (newStatusId) {\n this.resetHistory();\n }\n if (newStatusId || lodash_get__WEBPACK_IMPORTED_MODULE_0___default()(newVal, 'edited_at') !== lodash_get__WEBPACK_IMPORTED_MODULE_0___default()(oldVal, 'edited_at')) {\n this.fetchStatusHistory();\n }\n }\n },\n methods: {\n resetHistory: function resetHistory() {\n this.statuses = [];\n },\n fetchStatusHistory: function fetchStatusHistory() {\n var _this = this;\n this.$store.dispatch('fetchStatusHistory', this.params).then(function (data) {\n _this.statuses = data;\n });\n },\n closeModal: function closeModal() {\n this.$store.dispatch('closeStatusHistoryModal');\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (StatusHistoryModal);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL3NyYy9jb21wb25lbnRzL3N0YXR1c19oaXN0b3J5X21vZGFsL3N0YXR1c19oaXN0b3J5X21vZGFsLmpzP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUNzQztBQUNHO0FBRXpDLElBQU1FLGtCQUFrQixHQUFHO0VBQ3pCQyxVQUFVLEVBQUU7SUFDVkgsS0FBSyxFQUFMQSx3REFBSztJQUNMQyxNQUFNLEVBQU5BLDBEQUFNQTtFQUNSLENBQUM7RUFDREcsSUFBSSxXQUFBQSxLQUFBLEVBQUk7SUFDTixPQUFPO01BQ0xDLFFBQVEsRUFBRTtJQUNaLENBQUM7RUFDSCxDQUFDO0VBQ0RDLFFBQVEsRUFBRTtJQUNSQyxjQUFjLFdBQUFBLGVBQUEsRUFBSTtNQUNoQixPQUFPLElBQUksQ0FBQ0MsTUFBTSxDQUFDQyxLQUFLLENBQUNDLGFBQWEsQ0FBQ0gsY0FBYztJQUN2RCxDQUFDO0lBQ0RJLE1BQU0sV0FBQUEsT0FBQSxFQUFJO01BQ1IsT0FBTyxJQUFJLENBQUNILE1BQU0sQ0FBQ0MsS0FBSyxDQUFDQyxhQUFhLENBQUNDLE1BQU07SUFDL0MsQ0FBQztJQUNEQyxRQUFRLFdBQUFBLFNBQUEsRUFBSTtNQUNWLE9BQU8sSUFBSSxDQUFDRCxNQUFNLENBQUNFLEVBQUU7SUFDdkIsQ0FBQztJQUNEQyxZQUFZLFdBQUFBLGFBQUEsRUFBSTtNQUNkLE9BQU8sSUFBSSxDQUFDVCxRQUFRLENBQUNVLE1BQU07SUFDN0IsQ0FBQztJQUNEQyxPQUFPLFdBQUFBLFFBQUEsRUFBSTtNQUNULE9BQU8sSUFBSSxDQUFDWCxRQUFRO0lBQ3RCO0VBQ0YsQ0FBQztFQUNEWSxLQUFLLEVBQUU7SUFDTE4sTUFBTSxXQUFBQSxPQUFFTyxNQUFNLEVBQUVDLE1BQU0sRUFBRTtNQUN0QixJQUFNQyxXQUFXLEdBQUdDLGlEQUFBLENBQUlILE1BQU0sRUFBRSxJQUFJLENBQUMsS0FBS0csaURBQUEsQ0FBSUYsTUFBTSxFQUFFLElBQUksQ0FBQztNQUMzRCxJQUFJQyxXQUFXLEVBQUU7UUFDZixJQUFJLENBQUNFLFlBQVksQ0FBQyxDQUFDO01BQ3JCO01BRUEsSUFBSUYsV0FBVyxJQUFJQyxpREFBQSxDQUFJSCxNQUFNLEVBQUUsV0FBVyxDQUFDLEtBQUtHLGlEQUFBLENBQUlGLE1BQU0sRUFBRSxXQUFXLENBQUMsRUFBRTtRQUN4RSxJQUFJLENBQUNJLGtCQUFrQixDQUFDLENBQUM7TUFDM0I7SUFDRjtFQUNGLENBQUM7RUFDREMsT0FBTyxFQUFFO0lBQ1BGLFlBQVksV0FBQUEsYUFBQSxFQUFJO01BQ2QsSUFBSSxDQUFDakIsUUFBUSxHQUFHLEVBQUU7SUFDcEIsQ0FBQztJQUNEa0Isa0JBQWtCLFdBQUFBLG1CQUFBLEVBQUk7TUFBQSxJQUFBRSxLQUFBO01BQ3BCLElBQUksQ0FBQ2pCLE1BQU0sQ0FBQ2tCLFFBQVEsQ0FBQyxvQkFBb0IsRUFBRSxJQUFJLENBQUNmLE1BQU0sQ0FBQyxDQUNwRGdCLElBQUksQ0FBQyxVQUFBdkIsSUFBSSxFQUFJO1FBQ1pxQixLQUFJLENBQUNwQixRQUFRLEdBQUdELElBQUk7TUFDdEIsQ0FBQyxDQUFDO0lBQ04sQ0FBQztJQUNEd0IsVUFBVSxXQUFBQSxXQUFBLEVBQUk7TUFDWixJQUFJLENBQUNwQixNQUFNLENBQUNrQixRQUFRLENBQUMseUJBQXlCLENBQUM7SUFDakQ7RUFDRjtBQUNGLENBQUM7QUFFRCxpRUFBZXhCLGtCQUFrQiIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvY29tcG9uZW50cy9zdGF0dXNfaGlzdG9yeV9tb2RhbC9zdGF0dXNfaGlzdG9yeV9tb2RhbC5qcz8xNGJkIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdldCB9IGZyb20gJ2xvZGFzaCdcbmltcG9ydCBNb2RhbCBmcm9tICcuLi9tb2RhbC9tb2RhbC52dWUnXG5pbXBvcnQgU3RhdHVzIGZyb20gJy4uL3N0YXR1cy9zdGF0dXMudnVlJ1xuXG5jb25zdCBTdGF0dXNIaXN0b3J5TW9kYWwgPSB7XG4gIGNvbXBvbmVudHM6IHtcbiAgICBNb2RhbCxcbiAgICBTdGF0dXNcbiAgfSxcbiAgZGF0YSAoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHN0YXR1c2VzOiBbXVxuICAgIH1cbiAgfSxcbiAgY29tcHV0ZWQ6IHtcbiAgICBtb2RhbEFjdGl2YXRlZCAoKSB7XG4gICAgICByZXR1cm4gdGhpcy4kc3RvcmUuc3RhdGUuc3RhdHVzSGlzdG9yeS5tb2RhbEFjdGl2YXRlZFxuICAgIH0sXG4gICAgcGFyYW1zICgpIHtcbiAgICAgIHJldHVybiB0aGlzLiRzdG9yZS5zdGF0ZS5zdGF0dXNIaXN0b3J5LnBhcmFtc1xuICAgIH0sXG4gICAgc3RhdHVzSWQgKCkge1xuICAgICAgcmV0dXJuIHRoaXMucGFyYW1zLmlkXG4gICAgfSxcbiAgICBoaXN0b3J5Q291bnQgKCkge1xuICAgICAgcmV0dXJuIHRoaXMuc3RhdHVzZXMubGVuZ3RoXG4gICAgfSxcbiAgICBoaXN0b3J5ICgpIHtcbiAgICAgIHJldHVybiB0aGlzLnN0YXR1c2VzXG4gICAgfVxuICB9LFxuICB3YXRjaDoge1xuICAgIHBhcmFtcyAobmV3VmFsLCBvbGRWYWwpIHtcbiAgICAgIGNvbnN0IG5ld1N0YXR1c0lkID0gZ2V0KG5ld1ZhbCwgJ2lkJykgIT09IGdldChvbGRWYWwsICdpZCcpXG4gICAgICBpZiAobmV3U3RhdHVzSWQpIHtcbiAgICAgICAgdGhpcy5yZXNldEhpc3RvcnkoKVxuICAgICAgfVxuXG4gICAgICBpZiAobmV3U3RhdHVzSWQgfHwgZ2V0KG5ld1ZhbCwgJ2VkaXRlZF9hdCcpICE9PSBnZXQob2xkVmFsLCAnZWRpdGVkX2F0JykpIHtcbiAgICAgICAgdGhpcy5mZXRjaFN0YXR1c0hpc3RvcnkoKVxuICAgICAgfVxuICAgIH1cbiAgfSxcbiAgbWV0aG9kczoge1xuICAgIHJlc2V0SGlzdG9yeSAoKSB7XG4gICAgICB0aGlzLnN0YXR1c2VzID0gW11cbiAgICB9LFxuICAgIGZldGNoU3RhdHVzSGlzdG9yeSAoKSB7XG4gICAgICB0aGlzLiRzdG9yZS5kaXNwYXRjaCgnZmV0Y2hTdGF0dXNIaXN0b3J5JywgdGhpcy5wYXJhbXMpXG4gICAgICAgIC50aGVuKGRhdGEgPT4ge1xuICAgICAgICAgIHRoaXMuc3RhdHVzZXMgPSBkYXRhXG4gICAgICAgIH0pXG4gICAgfSxcbiAgICBjbG9zZU1vZGFsICgpIHtcbiAgICAgIHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdjbG9zZVN0YXR1c0hpc3RvcnlNb2RhbCcpXG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IFN0YXR1c0hpc3RvcnlNb2RhbFxuIl0sIm5hbWVzIjpbIk1vZGFsIiwiU3RhdHVzIiwiU3RhdHVzSGlzdG9yeU1vZGFsIiwiY29tcG9uZW50cyIsImRhdGEiLCJzdGF0dXNlcyIsImNvbXB1dGVkIiwibW9kYWxBY3RpdmF0ZWQiLCIkc3RvcmUiLCJzdGF0ZSIsInN0YXR1c0hpc3RvcnkiLCJwYXJhbXMiLCJzdGF0dXNJZCIsImlkIiwiaGlzdG9yeUNvdW50IiwibGVuZ3RoIiwiaGlzdG9yeSIsIndhdGNoIiwibmV3VmFsIiwib2xkVmFsIiwibmV3U3RhdHVzSWQiLCJfZ2V0IiwicmVzZXRIaXN0b3J5IiwiZmV0Y2hTdGF0dXNIaXN0b3J5IiwibWV0aG9kcyIsIl90aGlzIiwiZGlzcGF0Y2giLCJ0aGVuIiwiY2xvc2VNb2RhbCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./src/components/status_history_modal/status_history_modal.js?vue&type=script&lang=js\n");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js!./src/components/status_popover/status_popover.js?vue&type=script&lang=js":
/*!**************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js!./src/components/status_popover/status_popover.js?vue&type=script&lang=js ***!
\**************************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var lodash_find__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/find */ \"./node_modules/lodash/find.js\");\n/* harmony import */ var lodash_find__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_find__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @fortawesome/fontawesome-svg-core */ \"./node_modules/@fortawesome/fontawesome-svg-core/index.mjs\");\n/* harmony import */ var _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @fortawesome/free-solid-svg-icons */ \"./node_modules/@fortawesome/free-solid-svg-icons/index.mjs\");\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.runtime.esm-bundler.js\");\n\n\n\n\n_fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_1__.library.add(_fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_3__.faCircleNotch);\nvar StatusPopover = {\n name: 'StatusPopover',\n props: ['statusId'],\n data: function data() {\n return {\n error: false\n };\n },\n computed: {\n status: function status() {\n return lodash_find__WEBPACK_IMPORTED_MODULE_0___default()(this.$store.state.statuses.allStatuses, {\n id: this.statusId\n });\n }\n },\n components: {\n Status: (0,vue__WEBPACK_IMPORTED_MODULE_2__.defineAsyncComponent)(function () {\n return Promise.resolve(/*! import() */).then(__webpack_require__.bind(__webpack_require__, /*! ../status/status.vue */ \"./src/components/status/status.vue\"));\n }),\n Popover: (0,vue__WEBPACK_IMPORTED_MODULE_2__.defineAsyncComponent)(function () {\n return Promise.resolve(/*! import() */).then(__webpack_require__.bind(__webpack_require__, /*! ../popover/popover.vue */ \"./src/components/popover/popover.vue\"));\n })\n },\n methods: {\n enter: function enter() {\n var _this = this;\n if (!this.status) {\n if (!this.statusId) {\n this.error = true;\n return;\n }\n this.$store.dispatch('fetchStatus', this.statusId).then(function (data) {\n return _this.error = false;\n })[\"catch\"](function (e) {\n return _this.error = true;\n });\n }\n }\n },\n watch: {\n status: function status(newStatus, oldStatus) {\n var _this2 = this;\n if (newStatus !== oldStatus) {\n this.$nextTick(function () {\n return _this2.$refs.popover.updateStyles();\n });\n }\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (StatusPopover);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL3NyYy9jb21wb25lbnRzL3N0YXR1c19wb3BvdmVyL3N0YXR1c19wb3BvdmVyLmpzP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFDMkQ7QUFDTTtBQUN2QjtBQUUxQ0EsMEVBQVcsQ0FDVEMsNEVBQ0YsQ0FBQztBQUVELElBQU1HLGFBQWEsR0FBRztFQUNwQkMsSUFBSSxFQUFFLGVBQWU7RUFDckJDLEtBQUssRUFBRSxDQUNMLFVBQVUsQ0FDWDtFQUNEQyxJQUFJLFdBQUFBLEtBQUEsRUFBSTtJQUNOLE9BQU87TUFDTEMsS0FBSyxFQUFFO0lBQ1QsQ0FBQztFQUNILENBQUM7RUFDREMsUUFBUSxFQUFFO0lBQ1JDLE1BQU0sV0FBQUEsT0FBQSxFQUFJO01BQ1IsT0FBT0Msa0RBQUEsQ0FBSyxJQUFJLENBQUNDLE1BQU0sQ0FBQ0MsS0FBSyxDQUFDQyxRQUFRLENBQUNDLFdBQVcsRUFBRTtRQUFFQyxFQUFFLEVBQUUsSUFBSSxDQUFDQztNQUFTLENBQUMsQ0FBQztJQUM1RTtFQUNGLENBQUM7RUFDREMsVUFBVSxFQUFFO0lBQ1ZDLE1BQU0sRUFBRWpCLHlEQUFvQixDQUFDO01BQUEsT0FBTSxzSkFBOEI7SUFBQSxFQUFDO0lBQ2xFa0IsT0FBTyxFQUFFbEIseURBQW9CLENBQUM7TUFBQSxPQUFNLDBKQUFnQztJQUFBO0VBQ3RFLENBQUM7RUFDRG1CLE9BQU8sRUFBRTtJQUNQQyxLQUFLLFdBQUFBLE1BQUEsRUFBSTtNQUFBLElBQUFDLEtBQUE7TUFDUCxJQUFJLENBQUMsSUFBSSxDQUFDYixNQUFNLEVBQUU7UUFDaEIsSUFBSSxDQUFDLElBQUksQ0FBQ08sUUFBUSxFQUFFO1VBQ2xCLElBQUksQ0FBQ1QsS0FBSyxHQUFHLElBQUk7VUFDakI7UUFDRjtRQUNBLElBQUksQ0FBQ0ksTUFBTSxDQUFDWSxRQUFRLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQ1AsUUFBUSxDQUFDLENBQy9DUSxJQUFJLENBQUMsVUFBQWxCLElBQUk7VUFBQSxPQUFLZ0IsS0FBSSxDQUFDZixLQUFLLEdBQUcsS0FBSztRQUFBLENBQUMsQ0FBQyxTQUM3QixDQUFDLFVBQUFrQixDQUFDO1VBQUEsT0FBS0gsS0FBSSxDQUFDZixLQUFLLEdBQUcsSUFBSTtRQUFBLENBQUMsQ0FBQztNQUNwQztJQUNGO0VBQ0YsQ0FBQztFQUNEbUIsS0FBSyxFQUFFO0lBQ0xqQixNQUFNLFdBQUFBLE9BQUVrQixTQUFTLEVBQUVDLFNBQVMsRUFBRTtNQUFBLElBQUFDLE1BQUE7TUFDNUIsSUFBSUYsU0FBUyxLQUFLQyxTQUFTLEVBQUU7UUFDM0IsSUFBSSxDQUFDRSxTQUFTLENBQUM7VUFBQSxPQUFNRCxNQUFJLENBQUNFLEtBQUssQ0FBQ0MsT0FBTyxDQUFDQyxZQUFZLENBQUMsQ0FBQztRQUFBLEVBQUM7TUFDekQ7SUFDRjtFQUNGO0FBQ0YsQ0FBQztBQUVELGlFQUFlOUIsYUFBYSIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvY29tcG9uZW50cy9zdGF0dXNfcG9wb3Zlci9zdGF0dXNfcG9wb3Zlci5qcz9jMGMwIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZpbmQgfSBmcm9tICdsb2Rhc2gnXG5pbXBvcnQgeyBsaWJyYXJ5IH0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLXN2Zy1jb3JlJ1xuaW1wb3J0IHsgZmFDaXJjbGVOb3RjaCB9IGZyb20gJ0Bmb3J0YXdlc29tZS9mcmVlLXNvbGlkLXN2Zy1pY29ucydcbmltcG9ydCB7IGRlZmluZUFzeW5jQ29tcG9uZW50IH0gZnJvbSAndnVlJ1xuXG5saWJyYXJ5LmFkZChcbiAgZmFDaXJjbGVOb3RjaFxuKVxuXG5jb25zdCBTdGF0dXNQb3BvdmVyID0ge1xuICBuYW1lOiAnU3RhdHVzUG9wb3ZlcicsXG4gIHByb3BzOiBbXG4gICAgJ3N0YXR1c0lkJ1xuICBdLFxuICBkYXRhICgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgZXJyb3I6IGZhbHNlXG4gICAgfVxuICB9LFxuICBjb21wdXRlZDoge1xuICAgIHN0YXR1cyAoKSB7XG4gICAgICByZXR1cm4gZmluZCh0aGlzLiRzdG9yZS5zdGF0ZS5zdGF0dXNlcy5hbGxTdGF0dXNlcywgeyBpZDogdGhpcy5zdGF0dXNJZCB9KVxuICAgIH1cbiAgfSxcbiAgY29tcG9uZW50czoge1xuICAgIFN0YXR1czogZGVmaW5lQXN5bmNDb21wb25lbnQoKCkgPT4gaW1wb3J0KCcuLi9zdGF0dXMvc3RhdHVzLnZ1ZScpKSxcbiAgICBQb3BvdmVyOiBkZWZpbmVBc3luY0NvbXBvbmVudCgoKSA9PiBpbXBvcnQoJy4uL3BvcG92ZXIvcG9wb3Zlci52dWUnKSlcbiAgfSxcbiAgbWV0aG9kczoge1xuICAgIGVudGVyICgpIHtcbiAgICAgIGlmICghdGhpcy5zdGF0dXMpIHtcbiAgICAgICAgaWYgKCF0aGlzLnN0YXR1c0lkKSB7XG4gICAgICAgICAgdGhpcy5lcnJvciA9IHRydWVcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuICAgICAgICB0aGlzLiRzdG9yZS5kaXNwYXRjaCgnZmV0Y2hTdGF0dXMnLCB0aGlzLnN0YXR1c0lkKVxuICAgICAgICAgIC50aGVuKGRhdGEgPT4gKHRoaXMuZXJyb3IgPSBmYWxzZSkpXG4gICAgICAgICAgLmNhdGNoKGUgPT4gKHRoaXMuZXJyb3IgPSB0cnVlKSlcbiAgICAgIH1cbiAgICB9XG4gIH0sXG4gIHdhdGNoOiB7XG4gICAgc3RhdHVzIChuZXdTdGF0dXMsIG9sZFN0YXR1cykge1xuICAgICAgaWYgKG5ld1N0YXR1cyAhPT0gb2xkU3RhdHVzKSB7XG4gICAgICAgIHRoaXMuJG5leHRUaWNrKCgpID0+IHRoaXMuJHJlZnMucG9wb3Zlci51cGRhdGVTdHlsZXMoKSlcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgU3RhdHVzUG9wb3ZlclxuIl0sIm5hbWVzIjpbImxpYnJhcnkiLCJmYUNpcmNsZU5vdGNoIiwiZGVmaW5lQXN5bmNDb21wb25lbnQiLCJhZGQiLCJTdGF0dXNQb3BvdmVyIiwibmFtZSIsInByb3BzIiwiZGF0YSIsImVycm9yIiwiY29tcHV0ZWQiLCJzdGF0dXMiLCJfZmluZCIsIiRzdG9yZSIsInN0YXRlIiwic3RhdHVzZXMiLCJhbGxTdGF0dXNlcyIsImlkIiwic3RhdHVzSWQiLCJjb21wb25lbnRzIiwiU3RhdHVzIiwiUG9wb3ZlciIsIm1ldGhvZHMiLCJlbnRlciIsIl90aGlzIiwiZGlzcGF0Y2giLCJ0aGVuIiwiZSIsIndhdGNoIiwibmV3U3RhdHVzIiwib2xkU3RhdHVzIiwiX3RoaXMyIiwiJG5leHRUaWNrIiwiJHJlZnMiLCJwb3BvdmVyIiwidXBkYXRlU3R5bGVzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./src/components/status_popover/status_popover.js?vue&type=script&lang=js\n");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js!./src/components/still-image/still-image.js?vue&type=script&lang=js":
/*!********************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js!./src/components/still-image/still-image.js?vue&type=script&lang=js ***!
\********************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\nvar StillImage = {\n props: ['src', 'referrerpolicy', 'mimetype', 'imageLoadError', 'imageLoadHandler', 'alt', 'height', 'width', 'dataSrc', 'loading'],\n data: function data() {\n return {\n // for lazy loading, see loadLazy()\n realSrc: this.src,\n stopGifs: this.$store.getters.mergedConfig.stopGifs\n };\n },\n computed: {\n animated: function animated() {\n if (!this.realSrc) {\n return false;\n }\n return this.stopGifs && (this.mimetype === 'image/gif' || this.realSrc.endsWith('.gif'));\n },\n style: function style() {\n var appendPx = function appendPx(str) {\n return /\\d$/.test(str) ? str + 'px' : str;\n };\n return {\n height: this.height ? appendPx(this.height) : null,\n width: this.width ? appendPx(this.width) : null\n };\n }\n },\n methods: {\n loadLazy: function loadLazy() {\n if (this.dataSrc) {\n this.realSrc = this.dataSrc;\n }\n },\n onLoad: function onLoad() {\n if (!this.realSrc) {\n return;\n }\n var image = this.$refs.src;\n if (!image) return;\n this.imageLoadHandler && this.imageLoadHandler(image);\n var canvas = this.$refs.canvas;\n if (!canvas) return;\n var width = image.naturalWidth;\n var height = image.naturalHeight;\n canvas.width = width;\n canvas.height = height;\n canvas.getContext('2d').drawImage(image, 0, 0, width, height);\n },\n onError: function onError() {\n this.imageLoadError && this.imageLoadError();\n }\n },\n watch: {\n src: function src() {\n this.realSrc = this.src;\n },\n dataSrc: function dataSrc() {\n this.$el.removeAttribute('data-loaded');\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (StillImage);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL3NyYy9jb21wb25lbnRzL3N0aWxsLWltYWdlL3N0aWxsLWltYWdlLmpzP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQSxJQUFNQSxVQUFVLEdBQUc7RUFDakJDLEtBQUssRUFBRSxDQUNMLEtBQUssRUFDTCxnQkFBZ0IsRUFDaEIsVUFBVSxFQUNWLGdCQUFnQixFQUNoQixrQkFBa0IsRUFDbEIsS0FBSyxFQUNMLFFBQVEsRUFDUixPQUFPLEVBQ1AsU0FBUyxFQUNULFNBQVMsQ0FDVjtFQUNEQyxJQUFJLFdBQUFBLEtBQUEsRUFBSTtJQUNOLE9BQU87TUFDTDtNQUNBQyxPQUFPLEVBQUUsSUFBSSxDQUFDQyxHQUFHO01BQ2pCQyxRQUFRLEVBQUUsSUFBSSxDQUFDQyxNQUFNLENBQUNDLE9BQU8sQ0FBQ0MsWUFBWSxDQUFDSDtJQUM3QyxDQUFDO0VBQ0gsQ0FBQztFQUNESSxRQUFRLEVBQUU7SUFDUkMsUUFBUSxXQUFBQSxTQUFBLEVBQUk7TUFDVixJQUFJLENBQUMsSUFBSSxDQUFDUCxPQUFPLEVBQUU7UUFDakIsT0FBTyxLQUFLO01BQ2Q7TUFFQSxPQUFPLElBQUksQ0FBQ0UsUUFBUSxLQUFLLElBQUksQ0FBQ00sUUFBUSxLQUFLLFdBQVcsSUFBSSxJQUFJLENBQUNSLE9BQU8sQ0FBQ1MsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzFGLENBQUM7SUFDREMsS0FBSyxXQUFBQSxNQUFBLEVBQUk7TUFDUCxJQUFNQyxRQUFRLEdBQUcsU0FBWEEsUUFBUUEsQ0FBSUMsR0FBRztRQUFBLE9BQUssS0FBSyxDQUFDQyxJQUFJLENBQUNELEdBQUcsQ0FBQyxHQUFHQSxHQUFHLEdBQUcsSUFBSSxHQUFHQSxHQUFHO01BQUE7TUFDNUQsT0FBTztRQUNMRSxNQUFNLEVBQUUsSUFBSSxDQUFDQSxNQUFNLEdBQUdILFFBQVEsQ0FBQyxJQUFJLENBQUNHLE1BQU0sQ0FBQyxHQUFHLElBQUk7UUFDbERDLEtBQUssRUFBRSxJQUFJLENBQUNBLEtBQUssR0FBR0osUUFBUSxDQUFDLElBQUksQ0FBQ0ksS0FBSyxDQUFDLEdBQUc7TUFDN0MsQ0FBQztJQUNIO0VBQ0YsQ0FBQztFQUNEQyxPQUFPLEVBQUU7SUFDUEMsUUFBUSxXQUFBQSxTQUFBLEVBQUk7TUFDVixJQUFJLElBQUksQ0FBQ0MsT0FBTyxFQUFFO1FBQ2hCLElBQUksQ0FBQ2xCLE9BQU8sR0FBRyxJQUFJLENBQUNrQixPQUFPO01BQzdCO0lBQ0YsQ0FBQztJQUNEQyxNQUFNLFdBQUFBLE9BQUEsRUFBSTtNQUNSLElBQUksQ0FBQyxJQUFJLENBQUNuQixPQUFPLEVBQUU7UUFDakI7TUFDRjtNQUNBLElBQU1vQixLQUFLLEdBQUcsSUFBSSxDQUFDQyxLQUFLLENBQUNwQixHQUFHO01BQzVCLElBQUksQ0FBQ21CLEtBQUssRUFBRTtNQUNaLElBQUksQ0FBQ0UsZ0JBQWdCLElBQUksSUFBSSxDQUFDQSxnQkFBZ0IsQ0FBQ0YsS0FBSyxDQUFDO01BQ3JELElBQU1HLE1BQU0sR0FBRyxJQUFJLENBQUNGLEtBQUssQ0FBQ0UsTUFBTTtNQUNoQyxJQUFJLENBQUNBLE1BQU0sRUFBRTtNQUNiLElBQU1SLEtBQUssR0FBR0ssS0FBSyxDQUFDSSxZQUFZO01BQ2hDLElBQU1WLE1BQU0sR0FBR00sS0FBSyxDQUFDSyxhQUFhO01BQ2xDRixNQUFNLENBQUNSLEtBQUssR0FBR0EsS0FBSztNQUNwQlEsTUFBTSxDQUFDVCxNQUFNLEdBQUdBLE1BQU07TUFDdEJTLE1BQU0sQ0FBQ0csVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDQyxTQUFTLENBQUNQLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFTCxLQUFLLEVBQUVELE1BQU0sQ0FBQztJQUMvRCxDQUFDO0lBQ0RjLE9BQU8sV0FBQUEsUUFBQSxFQUFJO01BQ1QsSUFBSSxDQUFDQyxjQUFjLElBQUksSUFBSSxDQUFDQSxjQUFjLENBQUMsQ0FBQztJQUM5QztFQUNGLENBQUM7RUFDREMsS0FBSyxFQUFFO0lBQ0w3QixHQUFHLFdBQUFBLElBQUEsRUFBSTtNQUNMLElBQUksQ0FBQ0QsT0FBTyxHQUFHLElBQUksQ0FBQ0MsR0FBRztJQUN6QixDQUFDO0lBQ0RpQixPQUFPLFdBQUFBLFFBQUEsRUFBSTtNQUNULElBQUksQ0FBQ2EsR0FBRyxDQUFDQyxlQUFlLENBQUMsYUFBYSxDQUFDO0lBQ3pDO0VBQ0Y7QUFDRixDQUFDO0FBRUQsaUVBQWVuQyxVQUFVIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9jb21wb25lbnRzL3N0aWxsLWltYWdlL3N0aWxsLWltYWdlLmpzP2VlZTAiXSwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgU3RpbGxJbWFnZSA9IHtcbiAgcHJvcHM6IFtcbiAgICAnc3JjJyxcbiAgICAncmVmZXJyZXJwb2xpY3knLFxuICAgICdtaW1ldHlwZScsXG4gICAgJ2ltYWdlTG9hZEVycm9yJyxcbiAgICAnaW1hZ2VMb2FkSGFuZGxlcicsXG4gICAgJ2FsdCcsXG4gICAgJ2hlaWdodCcsXG4gICAgJ3dpZHRoJyxcbiAgICAnZGF0YVNyYycsXG4gICAgJ2xvYWRpbmcnXG4gIF0sXG4gIGRhdGEgKCkge1xuICAgIHJldHVybiB7XG4gICAgICAvLyBmb3IgbGF6eSBsb2FkaW5nLCBzZWUgbG9hZExhenkoKVxuICAgICAgcmVhbFNyYzogdGhpcy5zcmMsXG4gICAgICBzdG9wR2lmczogdGhpcy4kc3RvcmUuZ2V0dGVycy5tZXJnZWRDb25maWcuc3RvcEdpZnNcbiAgICB9XG4gIH0sXG4gIGNvbXB1dGVkOiB7XG4gICAgYW5pbWF0ZWQgKCkge1xuICAgICAgaWYgKCF0aGlzLnJlYWxTcmMpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlXG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0aGlzLnN0b3BHaWZzICYmICh0aGlzLm1pbWV0eXBlID09PSAnaW1hZ2UvZ2lmJyB8fCB0aGlzLnJlYWxTcmMuZW5kc1dpdGgoJy5naWYnKSlcbiAgICB9LFxuICAgIHN0eWxlICgpIHtcbiAgICAgIGNvbnN0IGFwcGVuZFB4ID0gKHN0cikgPT4gL1xcZCQvLnRlc3Qoc3RyKSA/IHN0ciArICdweCcgOiBzdHJcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGhlaWdodDogdGhpcy5oZWlnaHQgPyBhcHBlbmRQeCh0aGlzLmhlaWdodCkgOiBudWxsLFxuICAgICAgICB3aWR0aDogdGhpcy53aWR0aCA/IGFwcGVuZFB4KHRoaXMud2lkdGgpIDogbnVsbFxuICAgICAgfVxuICAgIH1cbiAgfSxcbiAgbWV0aG9kczoge1xuICAgIGxvYWRMYXp5ICgpIHtcbiAgICAgIGlmICh0aGlzLmRhdGFTcmMpIHtcbiAgICAgICAgdGhpcy5yZWFsU3JjID0gdGhpcy5kYXRhU3JjXG4gICAgICB9XG4gICAgfSxcbiAgICBvbkxvYWQgKCkge1xuICAgICAgaWYgKCF0aGlzLnJlYWxTcmMpIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG4gICAgICBjb25zdCBpbWFnZSA9IHRoaXMuJHJlZnMuc3JjXG4gICAgICBpZiAoIWltYWdlKSByZXR1cm5cbiAgICAgIHRoaXMuaW1hZ2VMb2FkSGFuZGxlciAmJiB0aGlzLmltYWdlTG9hZEhhbmRsZXIoaW1hZ2UpXG4gICAgICBjb25zdCBjYW52YXMgPSB0aGlzLiRyZWZzLmNhbnZhc1xuICAgICAgaWYgKCFjYW52YXMpIHJldHVyblxuICAgICAgY29uc3Qgd2lkdGggPSBpbWFnZS5uYXR1cmFsV2lkdGhcbiAgICAgIGNvbnN0IGhlaWdodCA9IGltYWdlLm5hdHVyYWxIZWlnaHRcbiAgICAgIGNhbnZhcy53aWR0aCA9IHdpZHRoXG4gICAgICBjYW52YXMuaGVpZ2h0ID0gaGVpZ2h0XG4gICAgICBjYW52YXMuZ2V0Q29udGV4dCgnMmQnKS5kcmF3SW1hZ2UoaW1hZ2UsIDAsIDAsIHdpZHRoLCBoZWlnaHQpXG4gICAgfSxcbiAgICBvbkVycm9yICgpIHtcbiAgICAgIHRoaXMuaW1hZ2VMb2FkRXJyb3IgJiYgdGhpcy5pbWFnZUxvYWRFcnJvcigpXG4gICAgfVxuICB9LFxuICB3YXRjaDoge1xuICAgIHNyYyAoKSB7XG4gICAgICB0aGlzLnJlYWxTcmMgPSB0aGlzLnNyY1xuICAgIH0sXG4gICAgZGF0YVNyYyAoKSB7XG4gICAgICB0aGlzLiRlbC5yZW1vdmVBdHRyaWJ1dGUoJ2RhdGEtbG9hZGVkJylcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgU3RpbGxJbWFnZVxuIl0sIm5hbWVzIjpbIlN0aWxsSW1hZ2UiLCJwcm9wcyIsImRhdGEiLCJyZWFsU3JjIiwic3JjIiwic3RvcEdpZnMiLCIkc3RvcmUiLCJnZXR0ZXJzIiwibWVyZ2VkQ29uZmlnIiwiY29tcHV0ZWQiLCJhbmltYXRlZCIsIm1pbWV0eXBlIiwiZW5kc1dpdGgiLCJzdHlsZSIsImFwcGVuZFB4Iiwic3RyIiwidGVzdCIsImhlaWdodCIsIndpZHRoIiwibWV0aG9kcyIsImxvYWRMYXp5IiwiZGF0YVNyYyIsIm9uTG9hZCIsImltYWdlIiwiJHJlZnMiLCJpbWFnZUxvYWRIYW5kbGVyIiwiY2FudmFzIiwibmF0dXJhbFdpZHRoIiwibmF0dXJhbEhlaWdodCIsImdldENvbnRleHQiLCJkcmF3SW1hZ2UiLCJvbkVycm9yIiwiaW1hZ2VMb2FkRXJyb3IiLCJ3YXRjaCIsIiRlbCIsInJlbW92ZUF0dHJpYnV0ZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./src/components/still-image/still-image.js?vue&type=script&lang=js\n");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js!./src/components/swipe_click/swipe_click.js?vue&type=script&lang=js":
/*!********************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js!./src/components/swipe_click/swipe_click.js?vue&type=script&lang=js ***!
\********************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _services_gesture_service_gesture_service__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../services/gesture_service/gesture_service */ \"./src/services/gesture_service/gesture_service.js\");\n\n\n/**\n * props:\n * direction: a vector that indicates the direction of the intended swipe\n * threshold: the minimum distance in pixels the swipe has moved on `direction'\n * for swipe-finished() to have a non-zero sign\n * disableClickThreshold: the minimum distance in pixels for the swipe to\n * not trigger a click\n * perpendicularTolerance: see gesture_service\n *\n * Events:\n * preview-requested(offsets)\n * Emitted when the pointer has moved.\n * offsets: the offsets from the start of the swipe to the current cursor position\n *\n * swipe-canceled()\n * Emitted when the swipe has been canceled due to a pointercancel event.\n *\n * swipe-finished(sign: 0|-1|1)\n * Emitted when the swipe has finished.\n * sign: if the swipe does not meet the threshold, 0\n * if the swipe meets the threshold in the positive direction, 1\n * if the swipe meets the threshold in the negative direction, -1\n *\n * swipeless-clicked()\n * Emitted when there is a click without swipe.\n * This and swipe-finished() cannot be emitted for the same pointerup event.\n */\nvar SwipeClick = {\n props: {\n direction: {\n type: Array\n },\n threshold: {\n type: Function,\n \"default\": function _default() {\n return 30;\n }\n },\n disableClickThreshold: {\n type: Function,\n \"default\": function _default() {\n return 1;\n }\n },\n perpendicularTolerance: {\n type: Number,\n \"default\": 1.0\n }\n },\n methods: {\n handlePointerDown: function handlePointerDown(event) {\n this.$gesture.start(event);\n },\n handlePointerMove: function handlePointerMove(event) {\n this.$gesture.move(event);\n },\n handlePointerUp: function handlePointerUp(event) {\n this.$gesture.end(event);\n },\n handlePointerCancel: function handlePointerCancel(event) {\n this.$gesture.cancel(event);\n },\n handleNativeClick: function handleNativeClick(event) {\n this.$gesture.click(event);\n },\n preview: function preview(offsets) {\n this.$emit('preview-requested', offsets);\n },\n end: function end(sign) {\n this.$emit('swipe-finished', sign);\n },\n click: function click() {\n this.$emit('swipeless-clicked');\n },\n cancel: function cancel() {\n this.$emit('swipe-canceled');\n }\n },\n created: function created() {\n this.$gesture = new _services_gesture_service_gesture_service__WEBPACK_IMPORTED_MODULE_0__[\"default\"].SwipeAndClickGesture({\n direction: this.direction,\n threshold: this.threshold,\n disableClickThreshold: this.disableClickThreshold,\n perpendicularTolerance: this.perpendicularTolerance,\n swipePreviewCallback: this.preview,\n swipeEndCallback: this.end,\n swipeCancelCallback: this.cancel,\n swipelessClickCallback: this.click\n });\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SwipeClick);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL3NyYy9jb21wb25lbnRzL3N3aXBlX2NsaWNrL3N3aXBlX2NsaWNrLmpzP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQTJFOztBQUUzRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFNQyxVQUFVLEdBQUc7RUFDakJDLEtBQUssRUFBRTtJQUNMQyxTQUFTLEVBQUU7TUFDVEMsSUFBSSxFQUFFQztJQUNSLENBQUM7SUFDREMsU0FBUyxFQUFFO01BQ1RGLElBQUksRUFBRUcsUUFBUTtNQUNkLFdBQVMsU0FBQUMsU0FBQTtRQUFBLE9BQU0sRUFBRTtNQUFBO0lBQ25CLENBQUM7SUFDREMscUJBQXFCLEVBQUU7TUFDckJMLElBQUksRUFBRUcsUUFBUTtNQUNkLFdBQVMsU0FBQUMsU0FBQTtRQUFBLE9BQU0sQ0FBQztNQUFBO0lBQ2xCLENBQUM7SUFDREUsc0JBQXNCLEVBQUU7TUFDdEJOLElBQUksRUFBRU8sTUFBTTtNQUNaLFdBQVM7SUFDWDtFQUNGLENBQUM7RUFDREMsT0FBTyxFQUFFO0lBQ1BDLGlCQUFpQixXQUFBQSxrQkFBRUMsS0FBSyxFQUFFO01BQ3hCLElBQUksQ0FBQ0MsUUFBUSxDQUFDQyxLQUFLLENBQUNGLEtBQUssQ0FBQztJQUM1QixDQUFDO0lBQ0RHLGlCQUFpQixXQUFBQSxrQkFBRUgsS0FBSyxFQUFFO01BQ3hCLElBQUksQ0FBQ0MsUUFBUSxDQUFDRyxJQUFJLENBQUNKLEtBQUssQ0FBQztJQUMzQixDQUFDO0lBQ0RLLGVBQWUsV0FBQUEsZ0JBQUVMLEtBQUssRUFBRTtNQUN0QixJQUFJLENBQUNDLFFBQVEsQ0FBQ0ssR0FBRyxDQUFDTixLQUFLLENBQUM7SUFDMUIsQ0FBQztJQUNETyxtQkFBbUIsV0FBQUEsb0JBQUVQLEtBQUssRUFBRTtNQUMxQixJQUFJLENBQUNDLFFBQVEsQ0FBQ08sTUFBTSxDQUFDUixLQUFLLENBQUM7SUFDN0IsQ0FBQztJQUNEUyxpQkFBaUIsV0FBQUEsa0JBQUVULEtBQUssRUFBRTtNQUN4QixJQUFJLENBQUNDLFFBQVEsQ0FBQ1MsS0FBSyxDQUFDVixLQUFLLENBQUM7SUFDNUIsQ0FBQztJQUNEVyxPQUFPLFdBQUFBLFFBQUVDLE9BQU8sRUFBRTtNQUNoQixJQUFJLENBQUNDLEtBQUssQ0FBQyxtQkFBbUIsRUFBRUQsT0FBTyxDQUFDO0lBQzFDLENBQUM7SUFDRE4sR0FBRyxXQUFBQSxJQUFFUSxJQUFJLEVBQUU7TUFDVCxJQUFJLENBQUNELEtBQUssQ0FBQyxnQkFBZ0IsRUFBRUMsSUFBSSxDQUFDO0lBQ3BDLENBQUM7SUFDREosS0FBSyxXQUFBQSxNQUFBLEVBQUk7TUFDUCxJQUFJLENBQUNHLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQztJQUNqQyxDQUFDO0lBQ0RMLE1BQU0sV0FBQUEsT0FBQSxFQUFJO01BQ1IsSUFBSSxDQUFDSyxLQUFLLENBQUMsZ0JBQWdCLENBQUM7SUFDOUI7RUFDRixDQUFDO0VBQ0RFLE9BQU8sV0FBQUEsUUFBQSxFQUFJO0lBQ1QsSUFBSSxDQUFDZCxRQUFRLEdBQUcsSUFBSWYsc0dBQW1DLENBQUM7TUFDdERHLFNBQVMsRUFBRSxJQUFJLENBQUNBLFNBQVM7TUFDekJHLFNBQVMsRUFBRSxJQUFJLENBQUNBLFNBQVM7TUFDekJHLHFCQUFxQixFQUFFLElBQUksQ0FBQ0EscUJBQXFCO01BQ2pEQyxzQkFBc0IsRUFBRSxJQUFJLENBQUNBLHNCQUFzQjtNQUNuRHFCLG9CQUFvQixFQUFFLElBQUksQ0FBQ04sT0FBTztNQUNsQ08sZ0JBQWdCLEVBQUUsSUFBSSxDQUFDWixHQUFHO01BQzFCYSxtQkFBbUIsRUFBRSxJQUFJLENBQUNYLE1BQU07TUFDaENZLHNCQUFzQixFQUFFLElBQUksQ0FBQ1Y7SUFDL0IsQ0FBQyxDQUFDO0VBQ0o7QUFDRixDQUFDO0FBRUQsaUVBQWV2QixVQUFVIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9jb21wb25lbnRzL3N3aXBlX2NsaWNrL3N3aXBlX2NsaWNrLmpzP2Q1NmEiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEdlc3R1cmVTZXJ2aWNlIGZyb20gJy4uLy4uL3NlcnZpY2VzL2dlc3R1cmVfc2VydmljZS9nZXN0dXJlX3NlcnZpY2UnXG5cbi8qKlxuICogcHJvcHM6XG4gKiAgIGRpcmVjdGlvbjogYSB2ZWN0b3IgdGhhdCBpbmRpY2F0ZXMgdGhlIGRpcmVjdGlvbiBvZiB0aGUgaW50ZW5kZWQgc3dpcGVcbiAqICAgdGhyZXNob2xkOiB0aGUgbWluaW11bSBkaXN0YW5jZSBpbiBwaXhlbHMgdGhlIHN3aXBlIGhhcyBtb3ZlZCBvbiBgZGlyZWN0aW9uJ1xuICogICAgICAgICAgICAgIGZvciBzd2lwZS1maW5pc2hlZCgpIHRvIGhhdmUgYSBub24temVybyBzaWduXG4gKiAgIGRpc2FibGVDbGlja1RocmVzaG9sZDogdGhlIG1pbmltdW0gZGlzdGFuY2UgaW4gcGl4ZWxzIGZvciB0aGUgc3dpcGUgdG9cbiAqICAgICAgICAgICAgICAgICAgICAgICAgICBub3QgdHJpZ2dlciBhIGNsaWNrXG4gKiAgIHBlcnBlbmRpY3VsYXJUb2xlcmFuY2U6IHNlZSBnZXN0dXJlX3NlcnZpY2VcbiAqXG4gKiBFdmVudHM6XG4gKiAgIHByZXZpZXctcmVxdWVzdGVkKG9mZnNldHMpXG4gKiAgICAgRW1pdHRlZCB3aGVuIHRoZSBwb2ludGVyIGhhcyBtb3ZlZC5cbiAqICAgICBvZmZzZXRzOiB0aGUgb2Zmc2V0cyBmcm9tIHRoZSBzdGFydCBvZiB0aGUgc3dpcGUgdG8gdGhlIGN1cnJlbnQgY3Vyc29yIHBvc2l0aW9uXG4gKlxuICogICBzd2lwZS1jYW5jZWxlZCgpXG4gKiAgICAgRW1pdHRlZCB3aGVuIHRoZSBzd2lwZSBoYXMgYmVlbiBjYW5jZWxlZCBkdWUgdG8gYSBwb2ludGVyY2FuY2VsIGV2ZW50LlxuICpcbiAqICAgc3dpcGUtZmluaXNoZWQoc2lnbjogMHwtMXwxKVxuICogICAgIEVtaXR0ZWQgd2hlbiB0aGUgc3dpcGUgaGFzIGZpbmlzaGVkLlxuICogICAgIHNpZ246IGlmIHRoZSBzd2lwZSBkb2VzIG5vdCBtZWV0IHRoZSB0aHJlc2hvbGQsIDBcbiAqICAgICAgICAgICBpZiB0aGUgc3dpcGUgbWVldHMgdGhlIHRocmVzaG9sZCBpbiB0aGUgcG9zaXRpdmUgZGlyZWN0aW9uLCAxXG4gKiAgICAgICAgICAgaWYgdGhlIHN3aXBlIG1lZXRzIHRoZSB0aHJlc2hvbGQgaW4gdGhlIG5lZ2F0aXZlIGRpcmVjdGlvbiwgLTFcbiAqXG4gKiAgIHN3aXBlbGVzcy1jbGlja2VkKClcbiAqICAgICBFbWl0dGVkIHdoZW4gdGhlcmUgaXMgYSBjbGljayB3aXRob3V0IHN3aXBlLlxuICogICAgIFRoaXMgYW5kIHN3aXBlLWZpbmlzaGVkKCkgY2Fubm90IGJlIGVtaXR0ZWQgZm9yIHRoZSBzYW1lIHBvaW50ZXJ1cCBldmVudC5cbiAqL1xuY29uc3QgU3dpcGVDbGljayA9IHtcbiAgcHJvcHM6IHtcbiAgICBkaXJlY3Rpb246IHtcbiAgICAgIHR5cGU6IEFycmF5XG4gICAgfSxcbiAgICB0aHJlc2hvbGQ6IHtcbiAgICAgIHR5cGU6IEZ1bmN0aW9uLFxuICAgICAgZGVmYXVsdDogKCkgPT4gMzBcbiAgICB9LFxuICAgIGRpc2FibGVDbGlja1RocmVzaG9sZDoge1xuICAgICAgdHlwZTogRnVuY3Rpb24sXG4gICAgICBkZWZhdWx0OiAoKSA9PiAxXG4gICAgfSxcbiAgICBwZXJwZW5kaWN1bGFyVG9sZXJhbmNlOiB7XG4gICAgICB0eXBlOiBOdW1iZXIsXG4gICAgICBkZWZhdWx0OiAxLjBcbiAgICB9XG4gIH0sXG4gIG1ldGhvZHM6IHtcbiAgICBoYW5kbGVQb2ludGVyRG93biAoZXZlbnQpIHtcbiAgICAgIHRoaXMuJGdlc3R1cmUuc3RhcnQoZXZlbnQpXG4gICAgfSxcbiAgICBoYW5kbGVQb2ludGVyTW92ZSAoZXZlbnQpIHtcbiAgICAgIHRoaXMuJGdlc3R1cmUubW92ZShldmVudClcbiAgICB9LFxuICAgIGhhbmRsZVBvaW50ZXJVcCAoZXZlbnQpIHtcbiAgICAgIHRoaXMuJGdlc3R1cmUuZW5kKGV2ZW50KVxuICAgIH0sXG4gICAgaGFuZGxlUG9pbnRlckNhbmNlbCAoZXZlbnQpIHtcbiAgICAgIHRoaXMuJGdlc3R1cmUuY2FuY2VsKGV2ZW50KVxuICAgIH0sXG4gICAgaGFuZGxlTmF0aXZlQ2xpY2sgKGV2ZW50KSB7XG4gICAgICB0aGlzLiRnZXN0dXJlLmNsaWNrKGV2ZW50KVxuICAgIH0sXG4gICAgcHJldmlldyAob2Zmc2V0cykge1xuICAgICAgdGhpcy4kZW1pdCgncHJldmlldy1yZXF1ZXN0ZWQnLCBvZmZzZXRzKVxuICAgIH0sXG4gICAgZW5kIChzaWduKSB7XG4gICAgICB0aGlzLiRlbWl0KCdzd2lwZS1maW5pc2hlZCcsIHNpZ24pXG4gICAgfSxcbiAgICBjbGljayAoKSB7XG4gICAgICB0aGlzLiRlbWl0KCdzd2lwZWxlc3MtY2xpY2tlZCcpXG4gICAgfSxcbiAgICBjYW5jZWwgKCkge1xuICAgICAgdGhpcy4kZW1pdCgnc3dpcGUtY2FuY2VsZWQnKVxuICAgIH1cbiAgfSxcbiAgY3JlYXRlZCAoKSB7XG4gICAgdGhpcy4kZ2VzdHVyZSA9IG5ldyBHZXN0dXJlU2VydmljZS5Td2lwZUFuZENsaWNrR2VzdHVyZSh7XG4gICAgICBkaXJlY3Rpb246IHRoaXMuZGlyZWN0aW9uLFxuICAgICAgdGhyZXNob2xkOiB0aGlzLnRocmVzaG9sZCxcbiAgICAgIGRpc2FibGVDbGlja1RocmVzaG9sZDogdGhpcy5kaXNhYmxlQ2xpY2tUaHJlc2hvbGQsXG4gICAgICBwZXJwZW5kaWN1bGFyVG9sZXJhbmNlOiB0aGlzLnBlcnBlbmRpY3VsYXJUb2xlcmFuY2UsXG4gICAgICBzd2lwZVByZXZpZXdDYWxsYmFjazogdGhpcy5wcmV2aWV3LFxuICAgICAgc3dpcGVFbmRDYWxsYmFjazogdGhpcy5lbmQsXG4gICAgICBzd2lwZUNhbmNlbENhbGxiYWNrOiB0aGlzLmNhbmNlbCxcbiAgICAgIHN3aXBlbGVzc0NsaWNrQ2FsbGJhY2s6IHRoaXMuY2xpY2tcbiAgICB9KVxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IFN3aXBlQ2xpY2tcbiJdLCJuYW1lcyI6WyJHZXN0dXJlU2VydmljZSIsIlN3aXBlQ2xpY2siLCJwcm9wcyIsImRpcmVjdGlvbiIsInR5cGUiLCJBcnJheSIsInRocmVzaG9sZCIsIkZ1bmN0aW9uIiwiX2RlZmF1bHQiLCJkaXNhYmxlQ2xpY2tUaHJlc2hvbGQiLCJwZXJwZW5kaWN1bGFyVG9sZXJhbmNlIiwiTnVtYmVyIiwibWV0aG9kcyIsImhhbmRsZVBvaW50ZXJEb3duIiwiZXZlbnQiLCIkZ2VzdHVyZSIsInN0YXJ0IiwiaGFuZGxlUG9pbnRlck1vdmUiLCJtb3ZlIiwiaGFuZGxlUG9pbnRlclVwIiwiZW5kIiwiaGFuZGxlUG9pbnRlckNhbmNlbCIsImNhbmNlbCIsImhhbmRsZU5hdGl2ZUNsaWNrIiwiY2xpY2siLCJwcmV2aWV3Iiwib2Zmc2V0cyIsIiRlbWl0Iiwic2lnbiIsImNyZWF0ZWQiLCJTd2lwZUFuZENsaWNrR2VzdHVyZSIsInN3aXBlUHJldmlld0NhbGxiYWNrIiwic3dpcGVFbmRDYWxsYmFjayIsInN3aXBlQ2FuY2VsQ2FsbGJhY2siLCJzd2lwZWxlc3NDbGlja0NhbGxiYWNrIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./src/components/swipe_click/swipe_click.js?vue&type=script&lang=js\n");
/***/ }),
/***/ "./src/components/tab_switcher/tab_switcher.jsx":
/*!******************************************************!*\
!*** ./src/components/tab_switcher/tab_switcher.jsx ***!
\******************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.runtime.esm-bundler.js\");\n/* harmony import */ var _fortawesome_vue_fontawesome__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @fortawesome/vue-fontawesome */ \"./node_modules/@fortawesome/vue-fontawesome/index.es.js\");\n/* harmony import */ var _tab_switcher_scss__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./tab_switcher.scss */ \"./src/components/tab_switcher/tab_switcher.scss\");\n/* harmony import */ var _tab_switcher_scss__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_tab_switcher_scss__WEBPACK_IMPORTED_MODULE_2__);\n\n// eslint-disable-next-line no-unused\n\n\n\n\nvar findFirstUsable = function findFirstUsable(slots) {\n return slots.findIndex(function (_) {\n return _.props;\n });\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({\n name: 'TabSwitcher',\n props: {\n renderOnlyFocused: {\n required: false,\n type: Boolean,\n \"default\": false\n },\n onSwitch: {\n required: false,\n type: Function,\n \"default\": undefined\n },\n activeTab: {\n required: false,\n type: String,\n \"default\": undefined\n },\n scrollableTabs: {\n required: false,\n type: Boolean,\n \"default\": false\n },\n sideTabBar: {\n required: false,\n type: Boolean,\n \"default\": false\n },\n bodyScrollLock: {\n required: false,\n type: Boolean,\n \"default\": false\n }\n },\n data: function data() {\n return {\n active: findFirstUsable(this.slots())\n };\n },\n computed: {\n activeIndex: function activeIndex() {\n var _this = this;\n // In case of controlled component\n if (this.activeTab) {\n return this.slots().findIndex(function (slot) {\n return slot && slot.props && _this.activeTab === slot.props.key;\n });\n } else {\n return this.active;\n }\n },\n isActive: function isActive() {\n var _this2 = this;\n return function (tabName) {\n var isWanted = function isWanted(slot) {\n return slot.props && slot.props['data-tab-name'] === tabName;\n };\n return _this2.$slots[\"default\"]().findIndex(isWanted) === _this2.activeIndex;\n };\n }\n },\n beforeUpdate: function beforeUpdate() {\n var currentSlot = this.slots()[this.active];\n if (!currentSlot.props) {\n this.active = findFirstUsable(this.slots());\n }\n },\n methods: {\n clickTab: function clickTab(index) {\n var _this3 = this;\n return function (e) {\n e.preventDefault();\n _this3.setTab(index);\n };\n },\n // DO NOT put it to computed, it doesn't work (caching?)\n slots: function slots() {\n if (this.$slots[\"default\"]()[0].type === vue__WEBPACK_IMPORTED_MODULE_0__.Fragment) {\n return this.$slots[\"default\"]()[0].children;\n }\n return this.$slots[\"default\"]();\n },\n setTab: function setTab(index) {\n if (typeof this.onSwitch === 'function') {\n this.onSwitch.call(null, this.slots()[index].key);\n }\n this.active = index;\n if (this.scrollableTabs) {\n this.$refs.contents.scrollTop = 0;\n }\n }\n },\n render: function render() {\n var _this4 = this;\n var tabs = this.slots().map(function (slot, index) {\n var props = slot.props;\n if (!props) return;\n var classesTab = ['tab', 'button-default'];\n var classesWrapper = ['tab-wrapper'];\n if (_this4.activeIndex === index) {\n classesTab.push('active');\n classesWrapper.push('active');\n }\n if (props.image) {\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(\"div\", {\n \"class\": classesWrapper.join(' ')\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(\"button\", {\n \"disabled\": props.disabled,\n \"onClick\": _this4.clickTab(index),\n \"class\": classesTab.join(' '),\n \"type\": \"button\",\n \"role\": \"tab\"\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(\"img\", {\n \"src\": props.image,\n \"title\": props['image-tooltip']\n }, null), props.label ? '' : props.label])]);\n }\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(\"div\", {\n \"class\": classesWrapper.join(' ')\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(\"button\", {\n \"disabled\": props.disabled,\n \"onClick\": _this4.clickTab(index),\n \"class\": classesTab.join(' '),\n \"type\": \"button\",\n \"role\": \"tab\"\n }, [!props.icon ? '' : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_fortawesome_vue_fontawesome__WEBPACK_IMPORTED_MODULE_1__.FontAwesomeIcon, {\n \"class\": \"tab-icon\",\n \"size\": \"2x\",\n \"fixed-width\": true,\n \"icon\": props.icon\n }, null), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(\"span\", {\n \"class\": \"text\"\n }, [props.label])])]);\n });\n var contents = this.slots().map(function (slot, index) {\n var props = slot.props;\n if (!props) return;\n var active = _this4.activeIndex === index;\n var classes = [active ? 'active' : 'hidden'];\n if (props.fullHeight) {\n classes.push('full-height');\n }\n var renderSlot = !_this4.renderOnlyFocused || active ? slot : '';\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(\"div\", {\n \"class\": classes\n }, [_this4.sideTabBar ? (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(\"h1\", {\n \"class\": \"mobile-label\"\n }, [props.label]) : '', renderSlot]);\n });\n return (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(\"div\", {\n \"class\": 'tab-switcher ' + (this.sideTabBar ? 'side-tabs' : 'top-tabs')\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(\"div\", {\n \"class\": \"tabs\",\n \"role\": \"tablist\"\n }, [tabs]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.withDirectives)((0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(\"div\", {\n \"ref\": \"contents\",\n \"role\": \"tabpanel\",\n \"class\": 'contents' + (this.scrollableTabs ? ' scrollable-tabs' : '')\n }, [contents]), [[(0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveDirective)(\"body-scroll-lock\"), this.bodyScrollLock]])]);\n }\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvY29tcG9uZW50cy90YWJfc3dpdGNoZXIvdGFiX3N3aXRjaGVyLmpzeC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQTtBQUNpQztBQUNGO0FBQ3lDO0FBRTVDO0FBRTVCLElBQU1LLGVBQWUsR0FBRyxTQUFsQkEsZUFBZUEsQ0FBSUMsS0FBSztFQUFBLE9BQUtBLEtBQUssQ0FBQ0MsU0FBUyxDQUFDLFVBQUFDLENBQUM7SUFBQSxPQUFJQSxDQUFDLENBQUNDLEtBQUs7RUFBQSxFQUFDO0FBQUE7QUFFaEUsaUVBQWU7RUFDYkMsSUFBSSxFQUFFLGFBQWE7RUFDbkJELEtBQUssRUFBRTtJQUNMRSxpQkFBaUIsRUFBRTtNQUNqQkMsUUFBUSxFQUFFLEtBQUs7TUFDZkMsSUFBSSxFQUFFQyxPQUFPO01BQ2IsV0FBUztJQUNYLENBQUM7SUFDREMsUUFBUSxFQUFFO01BQ1JILFFBQVEsRUFBRSxLQUFLO01BQ2ZDLElBQUksRUFBRUcsUUFBUTtNQUNkLFdBQVNDO0lBQ1gsQ0FBQztJQUNEQyxTQUFTLEVBQUU7TUFDVE4sUUFBUSxFQUFFLEtBQUs7TUFDZkMsSUFBSSxFQUFFTSxNQUFNO01BQ1osV0FBU0Y7SUFDWCxDQUFDO0lBQ0RHLGNBQWMsRUFBRTtNQUNkUixRQUFRLEVBQUUsS0FBSztNQUNmQyxJQUFJLEVBQUVDLE9BQU87TUFDYixXQUFTO0lBQ1gsQ0FBQztJQUNETyxVQUFVLEVBQUU7TUFDVlQsUUFBUSxFQUFFLEtBQUs7TUFDZkMsSUFBSSxFQUFFQyxPQUFPO01BQ2IsV0FBUztJQUNYLENBQUM7SUFDRFEsY0FBYyxFQUFFO01BQ2RWLFFBQVEsRUFBRSxLQUFLO01BQ2ZDLElBQUksRUFBRUMsT0FBTztNQUNiLFdBQVM7SUFDWDtFQUNGLENBQUM7RUFDRFMsSUFBSSxXQUFBQSxLQUFBLEVBQUk7SUFDTixPQUFPO01BQ0xDLE1BQU0sRUFBRW5CLGVBQWUsQ0FBQyxJQUFJLENBQUNDLEtBQUssQ0FBQyxDQUFDO0lBQ3RDLENBQUM7RUFDSCxDQUFDO0VB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QUEsT0FHRCxVQUFVO01BQUEsUUFDVCxVQUFVO01BQUEsU0FDUixVQUFVLElBQUksSUFBSSxDQUFDckMsY0FBYyxHQUFHLGtCQUFrQixHQUFHLEVBQUU7SUFBQyxJQUdsRTJCLFFBQVEsTUFBQW1CLHFEQUFBLHNCQUZXLElBQUksQ0FBQzVDLGNBQWM7RUFNL0M7QUFDRixDQUFDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9jb21wb25lbnRzL3RhYl9zd2l0Y2hlci90YWJfc3dpdGNoZXIuanN4PzM1OWYiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVudXNlZFxuaW1wb3J0IHsgaCwgRnJhZ21lbnQgfSBmcm9tICd2dWUnXG5pbXBvcnQgeyBtYXBTdGF0ZSB9IGZyb20gJ3Z1ZXgnXG5pbXBvcnQgeyBGb250QXdlc29tZUljb24gYXMgRkFJY29uIH0gZnJvbSAnQGZvcnRhd2Vzb21lL3Z1ZS1mb250YXdlc29tZSdcblxuaW1wb3J0ICcuL3RhYl9zd2l0Y2hlci5zY3NzJ1xuXG5jb25zdCBmaW5kRmlyc3RVc2FibGUgPSAoc2xvdHMpID0+IHNsb3RzLmZpbmRJbmRleChfID0+IF8ucHJvcHMpXG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgbmFtZTogJ1RhYlN3aXRjaGVyJyxcbiAgcHJvcHM6IHtcbiAgICByZW5kZXJPbmx5Rm9jdXNlZDoge1xuICAgICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgICAgdHlwZTogQm9vbGVhbixcbiAgICAgIGRlZmF1bHQ6IGZhbHNlXG4gICAgfSxcbiAgICBvblN3aXRjaDoge1xuICAgICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgICAgdHlwZTogRnVuY3Rpb24sXG4gICAgICBkZWZhdWx0OiB1bmRlZmluZWRcbiAgICB9LFxuICAgIGFjdGl2ZVRhYjoge1xuICAgICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogdW5kZWZpbmVkXG4gICAgfSxcbiAgICBzY3JvbGxhYmxlVGFiczoge1xuICAgICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgICAgdHlwZTogQm9vbGVhbixcbiAgICAgIGRlZmF1bHQ6IGZhbHNlXG4gICAgfSxcbiAgICBzaWRlVGFiQmFyOiB7XG4gICAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgICB0eXBlOiBCb29sZWFuLFxuICAgICAgZGVmYXVsdDogZmFsc2VcbiAgICB9LFxuICAgIGJvZHlTY3JvbGxMb2NrOiB7XG4gICAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgICB0eXBlOiBCb29sZWFuLFxuICAgICAgZGVmYXVsdDogZmFsc2VcbiAgICB9XG4gIH0sXG4gIGRhdGEgKCkge1xuICAgIHJldHVybiB7XG4gICAgICBhY3RpdmU6IGZpbmRGaXJzdFVzYWJsZSh0aGlzLnNsb3RzKCkpXG4gICAgfVxuICB9LFxuICBjb21wdXRlZDoge1xuICAgIGFjdGl2ZUluZGV4ICgpIHtcbiAgICAgIC8vIEluIGNhc2Ugb2YgY29udHJvbGxlZCBjb21wb25lbnRcbiAgICAgIGlmICh0aGlzLmFjdGl2ZVRhYikge1xuICAgICAgICByZXR1cm4gdGhpcy5zbG90cygpLmZpbmRJbmRleChzbG90ID0+IHNsb3QgJiYgc2xvdC5wcm9wcyAmJiB0aGlzLmFjdGl2ZVRhYiA9PT0gc2xvdC5wcm9wcy5rZXkpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gdGhpcy5hY3RpdmVcbiAgICAgIH1cbiAgICB9LFxuICAgIGlzQWN0aXZlICgpIHtcbiAgICAgIHJldHVybiB0YWJOYW1lID0+IHtcbiAgICAgICAgY29uc3QgaXNXYW50ZWQgPSBzbG90ID0+IHNsb3QucHJvcHMgJiYgc2xvdC5wcm9wc1snZGF0YS10YWItbmFtZSddID09PSB0YWJOYW1lXG4gICAgICAgIHJldHVybiB0aGlzLiRzbG90cy5kZWZhdWx0KCkuZmluZEluZGV4KGlzV2FudGVkKSA9PT0gdGhpcy5hY3RpdmVJbmRleFxuICAgICAgfVxuICAgIH1cbiAgfSxcbiAgYmVmb3JlVXBkYXRlICgpIHtcbiAgICBjb25zdCBjdXJyZW50U2xvdCA9IHRoaXMuc2xvdHMoKVt0aGlzLmFjdGl2ZV1cbiAgICBpZiAoIWN1cnJlbnRTbG90LnByb3BzKSB7XG4gICAgICB0aGlzLmFjdGl2ZSA9IGZpbmRGaXJzdFVzYWJsZSh0aGlzLnNsb3RzKCkpXG4gICAgfVxuICB9LFxuICBtZXRob2RzOiB7XG4gICAgY2xpY2tUYWIgKGluZGV4KSB7XG4gICAgICByZXR1cm4gKGUpID0+IHtcbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpXG4gICAgICAgIHRoaXMuc2V0VGFiKGluZGV4KVxuICAgICAgfVxuICAgIH0sXG4gICAgLy8gRE8gTk9UIHB1dCBpdCB0byBjb21wdXRlZCwgaXQgZG9lc24ndCB3b3JrIChjYWNoaW5nPylcbiAgICBzbG90cyAoKSB7XG4gICAgICBpZiAodGhpcy4kc2xvdHMuZGVmYXVsdCgpWzBdLnR5cGUgPT09IEZyYWdtZW50KSB7XG4gICAgICAgIHJldHVybiB0aGlzLiRzbG90cy5kZWZhdWx0KClbMF0uY2hpbGRyZW5cbiAgICAgIH1cbiAgICAgIHJldHVybiB0aGlzLiRzbG90cy5kZWZhdWx0KClcbiAgICB9LFxuICAgIHNldFRhYiAoaW5kZXgpIHtcbiAgICAgIGlmICh0eXBlb2YgdGhpcy5vblN3aXRjaCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICB0aGlzLm9uU3dpdGNoLmNhbGwobnVsbCwgdGhpcy5zbG90cygpW2luZGV4XS5rZXkpXG4gICAgICB9XG4gICAgICB0aGlzLmFjdGl2ZSA9IGluZGV4XG4gICAgICBpZiAodGhpcy5zY3JvbGxhYmxlVGFicykge1xuICAgICAgICB0aGlzLiRyZWZzLmNvbnRlbnRzLnNjcm9sbFRvcCA9IDBcbiAgICAgIH1cbiAgICB9XG4gIH0sXG4gIHJlbmRlciAoKSB7XG4gICAgY29uc3QgdGFicyA9IHRoaXMuc2xvdHMoKVxuICAgICAgLm1hcCgoc2xvdCwgaW5kZXgpID0+IHtcbiAgICAgICAgY29uc3QgcHJvcHMgPSBzbG90LnByb3BzXG4gICAgICAgIGlmICghcHJvcHMpIHJldHVyblxuICAgICAgICBjb25zdCBjbGFzc2VzVGFiID0gWyd0YWInLCAnYnV0dG9uLWRlZmF1bHQnXVxuICAgICAgICBjb25zdCBjbGFzc2VzV3JhcHBlciA9IFsndGFiLXdyYXBwZXInXVxuICAgICAgICBpZiAodGhpcy5hY3RpdmVJbmRleCA9PT0gaW5kZXgpIHtcbiAgICAgICAgICBjbGFzc2VzVGFiLnB1c2goJ2FjdGl2ZScpXG4gICAgICAgICAgY2xhc3Nlc1dyYXBwZXIucHVzaCgnYWN0aXZlJylcbiAgICAgICAgfVxuICAgICAgICBpZiAocHJvcHMuaW1hZ2UpIHtcbiAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgPGRpdiBjbGFzcz17Y2xhc3Nlc1dyYXBwZXIuam9pbignICcpfT5cbiAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgIGRpc2FibGVkPXtwcm9wcy5kaXNhYmxlZH1cbiAgICAgICAgICAgICAgICBvbkNsaWNrPXt0aGlzLmNsaWNrVGFiKGluZGV4KX1cbiAgICAgICAgICAgICAgICBjbGFzcz17Y2xhc3Nlc1RhYi5qb2luKCcgJyl9XG4gICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgcm9sZT1cInRhYlwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8aW1nIHNyYz17cHJvcHMuaW1hZ2V9IHRpdGxlPXtwcm9wc1snaW1hZ2UtdG9vbHRpcCddfS8+XG4gICAgICAgICAgICAgICAge3Byb3BzLmxhYmVsID8gJycgOiBwcm9wcy5sYWJlbH1cbiAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICApXG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICA8ZGl2IGNsYXNzPXtjbGFzc2VzV3JhcHBlci5qb2luKCcgJyl9PlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICBkaXNhYmxlZD17cHJvcHMuZGlzYWJsZWR9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9e3RoaXMuY2xpY2tUYWIoaW5kZXgpfVxuICAgICAgICAgICAgICBjbGFzcz17Y2xhc3Nlc1RhYi5qb2luKCcgJyl9XG4gICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICByb2xlPVwidGFiXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgeyFwcm9wcy5pY29uID8gJycgOiAoPEZBSWNvbiBjbGFzcz1cInRhYi1pY29uXCIgc2l6ZT1cIjJ4XCIgZml4ZWQtd2lkdGggaWNvbj17cHJvcHMuaWNvbn0vPil9XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dFwiPlxuICAgICAgICAgICAgICAgIHtwcm9wcy5sYWJlbH1cbiAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIClcbiAgICAgIH0pXG5cbiAgICBjb25zdCBjb250ZW50cyA9IHRoaXMuc2xvdHMoKS5tYXAoKHNsb3QsIGluZGV4KSA9PiB7XG4gICAgICBjb25zdCBwcm9wcyA9IHNsb3QucHJvcHNcbiAgICAgIGlmICghcHJvcHMpIHJldHVyblxuICAgICAgY29uc3QgYWN0aXZlID0gdGhpcy5hY3RpdmVJbmRleCA9PT0gaW5kZXhcbiAgICAgIGNvbnN0IGNsYXNzZXMgPSBbIGFjdGl2ZSA/ICdhY3RpdmUnIDogJ2hpZGRlbicgXVxuICAgICAgaWYgKHByb3BzLmZ1bGxIZWlnaHQpIHtcbiAgICAgICAgY2xhc3Nlcy5wdXNoKCdmdWxsLWhlaWdodCcpXG4gICAgICB9XG4gICAgICBjb25zdCByZW5kZXJTbG90ID0gKCF0aGlzLnJlbmRlck9ubHlGb2N1c2VkIHx8IGFjdGl2ZSlcbiAgICAgICAgPyBzbG90XG4gICAgICAgIDogJydcblxuICAgICAgcmV0dXJuIChcbiAgICAgICAgPGRpdiBjbGFzcz17Y2xhc3Nlc30+XG4gICAgICAgICAge1xuICAgICAgICAgICAgdGhpcy5zaWRlVGFiQmFyXG4gICAgICAgICAgICAgID8gPGgxIGNsYXNzPVwibW9iaWxlLWxhYmVsXCI+e3Byb3BzLmxhYmVsfTwvaDE+XG4gICAgICAgICAgICAgIDogJydcbiAgICAgICAgICB9XG4gICAgICAgICAge3JlbmRlclNsb3R9XG4gICAgICAgIDwvZGl2PlxuICAgICAgKVxuICAgIH0pXG5cbiAgICByZXR1cm4gKFxuICAgICAgPGRpdiBjbGFzcz17J3RhYi1zd2l0Y2hlciAnICsgKHRoaXMuc2lkZVRhYkJhciA/ICdzaWRlLXRhYnMnIDogJ3RvcC10YWJzJyl9PlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3M9XCJ0YWJzXCJcbiAgICAgICAgICByb2xlPVwidGFibGlzdFwiXG4gICAgICAgID5cbiAgICAgICAgICB7dGFic31cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICByZWY9XCJjb250ZW50c1wiXG4gICAgICAgICAgcm9sZT1cInRhYnBhbmVsXCJcbiAgICAgICAgICBjbGFzcz17J2NvbnRlbnRzJyArICh0aGlzLnNjcm9sbGFibGVUYWJzID8gJyBzY3JvbGxhYmxlLXRhYnMnIDogJycpfVxuICAgICAgICAgIHYtYm9keS1zY3JvbGwtbG9jaz17dGhpcy5ib2R5U2Nyb2xsTG9ja31cbiAgICAgICAgPlxuICAgICAgICAgIHtjb250ZW50c31cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICApXG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJoIiwiRnJhZ21lbnQiLCJtYXBTdGF0ZSIsIkZvbnRBd2Vzb21lSWNvbiIsIkZBSWNvbiIsImZpbmRGaXJzdFVzYWJsZSIsInNsb3RzIiwiZmluZEluZGV4IiwiXyIsInByb3BzIiwibmFtZSIsInJlbmRlck9ubHlGb2N1c2VkIiwicmVxdWlyZWQiLCJ0eXBlIiwiQm9vbGVhbiIsIm9uU3dpdGNoIiwiRnVuY3Rpb24iLCJ1bmRlZmluZWQiLCJhY3RpdmVUYWIiLCJTdHJpbmciLCJzY3JvbGxhYmxlVGFicyIsInNpZGVUYWJCYXIiLCJib2R5U2Nyb2xsTG9jayIsImRhdGEiLCJhY3RpdmUiLCJjb21wdXRlZCIsImFjdGl2ZUluZGV4IiwiX3RoaXMiLCJzbG90Iiwia2V5IiwiaXNBY3RpdmUiLCJfdGhpczIiLCJ0YWJOYW1lIiwiaXNXYW50ZWQiLCIkc2xvdHMiLCJiZWZvcmVVcGRhdGUiLCJjdXJyZW50U2xvdCIsIm1ldGhvZHMiLCJjbGlja1RhYiIsImluZGV4IiwiX3RoaXMzIiwiZSIsInByZXZlbnREZWZhdWx0Iiwic2V0VGFiIiwiY2hpbGRyZW4iLCJjYWxsIiwiJHJlZnMiLCJjb250ZW50cyIsInNjcm9sbFRvcCIsInJlbmRlciIsIl90aGlzNCIsInRhYnMiLCJtYXAiLCJjbGFzc2VzVGFiIiwiY2xhc3Nlc1dyYXBwZXIiLCJwdXNoIiwiaW1hZ2UiLCJfY3JlYXRlVk5vZGUiLCJqb2luIiwiZGlzYWJsZWQiLCJsYWJlbCIsImljb24iLCJjbGFzc2VzIiwiZnVsbEhlaWdodCIsInJlbmRlclNsb3QiLCJfd2l0aERpcmVjdGl2ZXMiLCJfcmVzb2x2ZURpcmVjdGl2ZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/components/tab_switcher/tab_switcher.jsx\n");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js!./src/components/tag_timeline/tag_timeline.js?vue&type=script&lang=js":
/*!**********************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js!./src/components/tag_timeline/tag_timeline.js?vue&type=script&lang=js ***!
\**********************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _timeline_timeline_vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../timeline/timeline.vue */ \"./src/components/timeline/timeline.vue\");\n\nvar TagTimeline = {\n created: function created() {\n this.$store.commit('clearTimeline', {\n timeline: 'tag'\n });\n this.$store.dispatch('startFetchingTimeline', {\n timeline: 'tag',\n tag: this.tag\n });\n },\n components: {\n Timeline: _timeline_timeline_vue__WEBPACK_IMPORTED_MODULE_0__[\"default\"]\n },\n computed: {\n tag: function tag() {\n return this.$route.params.tag;\n },\n timeline: function timeline() {\n return this.$store.state.statuses.timelines.tag;\n }\n },\n watch: {\n tag: function tag() {\n this.$store.commit('clearTimeline', {\n timeline: 'tag'\n });\n this.$store.dispatch('startFetchingTimeline', {\n timeline: 'tag',\n tag: this.tag\n });\n }\n },\n unmounted: function unmounted() {\n this.$store.dispatch('stopFetchingTimeline', 'tag');\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (TagTimeline);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL3NyYy9jb21wb25lbnRzL3RhZ190aW1lbGluZS90YWdfdGltZWxpbmUuanM/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBK0M7QUFFL0MsSUFBTUMsV0FBVyxHQUFHO0VBQ2xCQyxPQUFPLFdBQUFBLFFBQUEsRUFBSTtJQUNULElBQUksQ0FBQ0MsTUFBTSxDQUFDQyxNQUFNLENBQUMsZUFBZSxFQUFFO01BQUVDLFFBQVEsRUFBRTtJQUFNLENBQUMsQ0FBQztJQUN4RCxJQUFJLENBQUNGLE1BQU0sQ0FBQ0csUUFBUSxDQUFDLHVCQUF1QixFQUFFO01BQUVELFFBQVEsRUFBRSxLQUFLO01BQUVFLEdBQUcsRUFBRSxJQUFJLENBQUNBO0lBQUksQ0FBQyxDQUFDO0VBQ25GLENBQUM7RUFDREMsVUFBVSxFQUFFO0lBQ1ZSLFFBQVEsRUFBUkEsOERBQVFBO0VBQ1YsQ0FBQztFQUNEUyxRQUFRLEVBQUU7SUFDUkYsR0FBRyxXQUFBQSxJQUFBLEVBQUk7TUFBRSxPQUFPLElBQUksQ0FBQ0csTUFBTSxDQUFDQyxNQUFNLENBQUNKLEdBQUc7SUFBQyxDQUFDO0lBQ3hDRixRQUFRLFdBQUFBLFNBQUEsRUFBSTtNQUFFLE9BQU8sSUFBSSxDQUFDRixNQUFNLENBQUNTLEtBQUssQ0FBQ0MsUUFBUSxDQUFDQyxTQUFTLENBQUNQLEdBQUc7SUFBQztFQUNoRSxDQUFDO0VBQ0RRLEtBQUssRUFBRTtJQUNMUixHQUFHLFdBQUFBLElBQUEsRUFBSTtNQUNMLElBQUksQ0FBQ0osTUFBTSxDQUFDQyxNQUFNLENBQUMsZUFBZSxFQUFFO1FBQUVDLFFBQVEsRUFBRTtNQUFNLENBQUMsQ0FBQztNQUN4RCxJQUFJLENBQUNGLE1BQU0sQ0FBQ0csUUFBUSxDQUFDLHVCQUF1QixFQUFFO1FBQUVELFFBQVEsRUFBRSxLQUFLO1FBQUVFLEdBQUcsRUFBRSxJQUFJLENBQUNBO01BQUksQ0FBQyxDQUFDO0lBQ25GO0VBQ0YsQ0FBQztFQUNEUyxTQUFTLFdBQUFBLFVBQUEsRUFBSTtJQUNYLElBQUksQ0FBQ2IsTUFBTSxDQUFDRyxRQUFRLENBQUMsc0JBQXNCLEVBQUUsS0FBSyxDQUFDO0VBQ3JEO0FBQ0YsQ0FBQztBQUVELGlFQUFlTCxXQUFXIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9jb21wb25lbnRzL3RhZ190aW1lbGluZS90YWdfdGltZWxpbmUuanM/NTg1OSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgVGltZWxpbmUgZnJvbSAnLi4vdGltZWxpbmUvdGltZWxpbmUudnVlJ1xuXG5jb25zdCBUYWdUaW1lbGluZSA9IHtcbiAgY3JlYXRlZCAoKSB7XG4gICAgdGhpcy4kc3RvcmUuY29tbWl0KCdjbGVhclRpbWVsaW5lJywgeyB0aW1lbGluZTogJ3RhZycgfSlcbiAgICB0aGlzLiRzdG9yZS5kaXNwYXRjaCgnc3RhcnRGZXRjaGluZ1RpbWVsaW5lJywgeyB0aW1lbGluZTogJ3RhZycsIHRhZzogdGhpcy50YWcgfSlcbiAgfSxcbiAgY29tcG9uZW50czoge1xuICAgIFRpbWVsaW5lXG4gIH0sXG4gIGNvbXB1dGVkOiB7XG4gICAgdGFnICgpIHsgcmV0dXJuIHRoaXMuJHJvdXRlLnBhcmFtcy50YWcgfSxcbiAgICB0aW1lbGluZSAoKSB7IHJldHVybiB0aGlzLiRzdG9yZS5zdGF0ZS5zdGF0dXNlcy50aW1lbGluZXMudGFnIH1cbiAgfSxcbiAgd2F0Y2g6IHtcbiAgICB0YWcgKCkge1xuICAgICAgdGhpcy4kc3RvcmUuY29tbWl0KCdjbGVhclRpbWVsaW5lJywgeyB0aW1lbGluZTogJ3RhZycgfSlcbiAgICAgIHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdzdGFydEZldGNoaW5nVGltZWxpbmUnLCB7IHRpbWVsaW5lOiAndGFnJywgdGFnOiB0aGlzLnRhZyB9KVxuICAgIH1cbiAgfSxcbiAgdW5tb3VudGVkICgpIHtcbiAgICB0aGlzLiRzdG9yZS5kaXNwYXRjaCgnc3RvcEZldGNoaW5nVGltZWxpbmUnLCAndGFnJylcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBUYWdUaW1lbGluZVxuIl0sIm5hbWVzIjpbIlRpbWVsaW5lIiwiVGFnVGltZWxpbmUiLCJjcmVhdGVkIiwiJHN0b3JlIiwiY29tbWl0IiwidGltZWxpbmUiLCJkaXNwYXRjaCIsInRhZyIsImNvbXBvbmVudHMiLCJjb21wdXRlZCIsIiRyb3V0ZSIsInBhcmFtcyIsInN0YXRlIiwic3RhdHVzZXMiLCJ0aW1lbGluZXMiLCJ3YXRjaCIsInVubW91bnRlZCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./src/components/tag_timeline/tag_timeline.js?vue&type=script&lang=js\n");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js!./src/components/terms_of_service_panel/terms_of_service_panel.js?vue&type=script&lang=js":
/*!******************************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js!./src/components/terms_of_service_panel/terms_of_service_panel.js?vue&type=script&lang=js ***!
\******************************************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\nvar TermsOfServicePanel = {\n computed: {\n content: function content() {\n return this.$store.state.instance.tos;\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (TermsOfServicePanel);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL3NyYy9jb21wb25lbnRzL3Rlcm1zX29mX3NlcnZpY2VfcGFuZWwvdGVybXNfb2Zfc2VydmljZV9wYW5lbC5qcz92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcy5qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUEsSUFBTUEsbUJBQW1CLEdBQUc7RUFDMUJDLFFBQVEsRUFBRTtJQUNSQyxPQUFPLFdBQUFBLFFBQUEsRUFBSTtNQUNULE9BQU8sSUFBSSxDQUFDQyxNQUFNLENBQUNDLEtBQUssQ0FBQ0MsUUFBUSxDQUFDQyxHQUFHO0lBQ3ZDO0VBQ0Y7QUFDRixDQUFDO0FBRUQsaUVBQWVOLG1CQUFtQiIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvY29tcG9uZW50cy90ZXJtc19vZl9zZXJ2aWNlX3BhbmVsL3Rlcm1zX29mX3NlcnZpY2VfcGFuZWwuanM/NzU1NiJdLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBUZXJtc09mU2VydmljZVBhbmVsID0ge1xuICBjb21wdXRlZDoge1xuICAgIGNvbnRlbnQgKCkge1xuICAgICAgcmV0dXJuIHRoaXMuJHN0b3JlLnN0YXRlLmluc3RhbmNlLnRvc1xuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBUZXJtc09mU2VydmljZVBhbmVsXG4iXSwibmFtZXMiOlsiVGVybXNPZlNlcnZpY2VQYW5lbCIsImNvbXB1dGVkIiwiY29udGVudCIsIiRzdG9yZSIsInN0YXRlIiwiaW5zdGFuY2UiLCJ0b3MiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./src/components/terms_of_service_panel/terms_of_service_panel.js?vue&type=script&lang=js\n");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js!./src/components/thread_tree/thread_tree.js?vue&type=script&lang=js":
/*!********************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js!./src/components/thread_tree/thread_tree.js?vue&type=script&lang=js ***!
\********************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _status_status_vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../status/status.vue */ \"./src/components/status/status.vue\");\n/* harmony import */ var _fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @fortawesome/fontawesome-svg-core */ \"./node_modules/@fortawesome/fontawesome-svg-core/index.mjs\");\n/* harmony import */ var _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @fortawesome/free-solid-svg-icons */ \"./node_modules/@fortawesome/free-solid-svg-icons/index.mjs\");\n\n\n\n_fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_1__.library.add(_fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_2__.faAngleDoubleDown, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_2__.faAngleDoubleRight);\nvar ThreadTree = {\n components: {\n Status: _status_status_vue__WEBPACK_IMPORTED_MODULE_0__[\"default\"]\n },\n name: 'ThreadTree',\n props: {\n depth: Number,\n status: Object,\n inProfile: Boolean,\n conversation: Array,\n collapsable: Boolean,\n isExpanded: Boolean,\n pinnedStatusIdsObject: Object,\n profileUserId: String,\n focused: Function,\n highlight: String,\n getReplies: Function,\n setHighlight: Function,\n toggleExpanded: Function,\n simple: Boolean,\n // to control display of the whole thread forest\n toggleThreadDisplay: Function,\n threadDisplayStatus: Object,\n showThreadRecursively: Function,\n totalReplyCount: Object,\n totalReplyDepth: Object,\n statusContentProperties: Object,\n setStatusContentProperty: Function,\n toggleStatusContentProperty: Function,\n dive: Function\n },\n computed: {\n suspendable: function suspendable() {\n var selfSuspendable = this.$refs.statusComponent ? this.$refs.statusComponent.suspendable : true;\n if (this.$refs.childComponent) {\n return selfSuspendable && this.$refs.childComponent.every(function (s) {\n return s.suspendable;\n });\n }\n return selfSuspendable;\n },\n reverseLookupTable: function reverseLookupTable() {\n return this.conversation.reduce(function (table, status, index) {\n table[status.id] = index;\n return table;\n }, {});\n },\n currentReplies: function currentReplies() {\n var _this = this;\n return this.getReplies(this.status.id).map(function (_ref) {\n var id = _ref.id;\n return _this.statusById(id);\n });\n },\n threadShowing: function threadShowing() {\n return this.threadDisplayStatus[this.status.id] === 'showing';\n },\n currentProp: function currentProp() {\n return this.statusContentProperties[this.status.id];\n }\n },\n methods: {\n statusById: function statusById(id) {\n return this.conversation[this.reverseLookupTable[id]];\n },\n collapseThread: function collapseThread() {},\n showThread: function showThread() {},\n showAllSubthreads: function showAllSubthreads() {},\n toggleCurrentProp: function toggleCurrentProp(name) {\n this.toggleStatusContentProperty(this.status.id, name);\n },\n setCurrentProp: function setCurrentProp(name, newVal) {\n this.setStatusContentProperty(this.status.id, name);\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ThreadTree);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL3NyYy9jb21wb25lbnRzL3RocmVhZF90cmVlL3RocmVhZF90cmVlLmpzP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBeUM7QUFFa0I7QUFJakI7QUFFMUNDLDBFQUFXLENBQ1RDLGdGQUFpQixFQUNqQkMsaUZBQ0YsQ0FBQztBQUVELElBQU1FLFVBQVUsR0FBRztFQUNqQkMsVUFBVSxFQUFFO0lBQ1ZOLE1BQU0sRUFBTkEsMERBQU1BO0VBQ1IsQ0FBQztFQUNETyxJQUFJLEVBQUUsWUFBWTtFQUNsQkMsS0FBSyxFQUFFO0lBQ0xDLEtBQUssRUFBRUMsTUFBTTtJQUNiQyxNQUFNLEVBQUVDLE1BQU07SUFDZEMsU0FBUyxFQUFFQyxPQUFPO0lBQ2xCQyxZQUFZLEVBQUVDLEtBQUs7SUFDbkJDLFdBQVcsRUFBRUgsT0FBTztJQUNwQkksVUFBVSxFQUFFSixPQUFPO0lBQ25CSyxxQkFBcUIsRUFBRVAsTUFBTTtJQUM3QlEsYUFBYSxFQUFFQyxNQUFNO0lBRXJCQyxPQUFPLEVBQUVDLFFBQVE7SUFDakJDLFNBQVMsRUFBRUgsTUFBTTtJQUNqQkksVUFBVSxFQUFFRixRQUFRO0lBQ3BCRyxZQUFZLEVBQUVILFFBQVE7SUFDdEJJLGNBQWMsRUFBRUosUUFBUTtJQUV4QkssTUFBTSxFQUFFZCxPQUFPO0lBQ2Y7SUFDQWUsbUJBQW1CLEVBQUVOLFFBQVE7SUFDN0JPLG1CQUFtQixFQUFFbEIsTUFBTTtJQUMzQm1CLHFCQUFxQixFQUFFUixRQUFRO0lBQy9CUyxlQUFlLEVBQUVwQixNQUFNO0lBQ3ZCcUIsZUFBZSxFQUFFckIsTUFBTTtJQUN2QnNCLHVCQUF1QixFQUFFdEIsTUFBTTtJQUMvQnVCLHdCQUF3QixFQUFFWixRQUFRO0lBQ2xDYSwyQkFBMkIsRUFBRWIsUUFBUTtJQUNyQ2MsSUFBSSxFQUFFZDtFQUNSLENBQUM7RUFDRGUsUUFBUSxFQUFFO0lBQ1JDLFdBQVcsV0FBQUEsWUFBQSxFQUFJO01BQ2IsSUFBTUMsZUFBZSxHQUFHLElBQUksQ0FBQ0MsS0FBSyxDQUFDQyxlQUFlLEdBQUcsSUFBSSxDQUFDRCxLQUFLLENBQUNDLGVBQWUsQ0FBQ0gsV0FBVyxHQUFHLElBQUk7TUFDbEcsSUFBSSxJQUFJLENBQUNFLEtBQUssQ0FBQ0UsY0FBYyxFQUFFO1FBQzdCLE9BQU9ILGVBQWUsSUFBSSxJQUFJLENBQUNDLEtBQUssQ0FBQ0UsY0FBYyxDQUFDQyxLQUFLLENBQUMsVUFBQUMsQ0FBQztVQUFBLE9BQUlBLENBQUMsQ0FBQ04sV0FBVztRQUFBLEVBQUM7TUFDL0U7TUFDQSxPQUFPQyxlQUFlO0lBQ3hCLENBQUM7SUFDRE0sa0JBQWtCLFdBQUFBLG1CQUFBLEVBQUk7TUFDcEIsT0FBTyxJQUFJLENBQUMvQixZQUFZLENBQUNnQyxNQUFNLENBQUMsVUFBQ0MsS0FBSyxFQUFFckMsTUFBTSxFQUFFc0MsS0FBSyxFQUFLO1FBQ3hERCxLQUFLLENBQUNyQyxNQUFNLENBQUN1QyxFQUFFLENBQUMsR0FBR0QsS0FBSztRQUN4QixPQUFPRCxLQUFLO01BQ2QsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ1IsQ0FBQztJQUNERyxjQUFjLFdBQUFBLGVBQUEsRUFBSTtNQUFBLElBQUFDLEtBQUE7TUFDaEIsT0FBTyxJQUFJLENBQUMzQixVQUFVLENBQUMsSUFBSSxDQUFDZCxNQUFNLENBQUN1QyxFQUFFLENBQUMsQ0FBQ0csR0FBRyxDQUFDLFVBQUFDLElBQUE7UUFBQSxJQUFHSixFQUFFLEdBQUFJLElBQUEsQ0FBRkosRUFBRTtRQUFBLE9BQU9FLEtBQUksQ0FBQ0csVUFBVSxDQUFDTCxFQUFFLENBQUM7TUFBQSxFQUFDO0lBQzdFLENBQUM7SUFDRE0sYUFBYSxXQUFBQSxjQUFBLEVBQUk7TUFDZixPQUFPLElBQUksQ0FBQzFCLG1CQUFtQixDQUFDLElBQUksQ0FBQ25CLE1BQU0sQ0FBQ3VDLEVBQUUsQ0FBQyxLQUFLLFNBQVM7SUFDL0QsQ0FBQztJQUNETyxXQUFXLFdBQUFBLFlBQUEsRUFBSTtNQUNiLE9BQU8sSUFBSSxDQUFDdkIsdUJBQXVCLENBQUMsSUFBSSxDQUFDdkIsTUFBTSxDQUFDdUMsRUFBRSxDQUFDO0lBQ3JEO0VBQ0YsQ0FBQztFQUNEUSxPQUFPLEVBQUU7SUFDUEgsVUFBVSxXQUFBQSxXQUFFTCxFQUFFLEVBQUU7TUFDZCxPQUFPLElBQUksQ0FBQ25DLFlBQVksQ0FBQyxJQUFJLENBQUMrQixrQkFBa0IsQ0FBQ0ksRUFBRSxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUNEUyxjQUFjLFdBQUFBLGVBQUEsRUFBSSxDQUNsQixDQUFDO0lBQ0RDLFVBQVUsV0FBQUEsV0FBQSxFQUFJLENBQ2QsQ0FBQztJQUNEQyxpQkFBaUIsV0FBQUEsa0JBQUEsRUFBSSxDQUNyQixDQUFDO0lBQ0RDLGlCQUFpQixXQUFBQSxrQkFBRXZELElBQUksRUFBRTtNQUN2QixJQUFJLENBQUM2QiwyQkFBMkIsQ0FBQyxJQUFJLENBQUN6QixNQUFNLENBQUN1QyxFQUFFLEVBQUUzQyxJQUFJLENBQUM7SUFDeEQsQ0FBQztJQUNEd0QsY0FBYyxXQUFBQSxlQUFFeEQsSUFBSSxFQUFFeUQsTUFBTSxFQUFFO01BQzVCLElBQUksQ0FBQzdCLHdCQUF3QixDQUFDLElBQUksQ0FBQ3hCLE1BQU0sQ0FBQ3VDLEVBQUUsRUFBRTNDLElBQUksQ0FBQztJQUNyRDtFQUNGO0FBQ0YsQ0FBQztBQUVELGlFQUFlRixVQUFVIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9jb21wb25lbnRzL3RocmVhZF90cmVlL3RocmVhZF90cmVlLmpzP2UxMTIiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFN0YXR1cyBmcm9tICcuLi9zdGF0dXMvc3RhdHVzLnZ1ZSdcblxuaW1wb3J0IHsgbGlicmFyeSB9IGZyb20gJ0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1zdmctY29yZSdcbmltcG9ydCB7XG4gIGZhQW5nbGVEb3VibGVEb3duLFxuICBmYUFuZ2xlRG91YmxlUmlnaHRcbn0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZyZWUtc29saWQtc3ZnLWljb25zJ1xuXG5saWJyYXJ5LmFkZChcbiAgZmFBbmdsZURvdWJsZURvd24sXG4gIGZhQW5nbGVEb3VibGVSaWdodFxuKVxuXG5jb25zdCBUaHJlYWRUcmVlID0ge1xuICBjb21wb25lbnRzOiB7XG4gICAgU3RhdHVzXG4gIH0sXG4gIG5hbWU6ICdUaHJlYWRUcmVlJyxcbiAgcHJvcHM6IHtcbiAgICBkZXB0aDogTnVtYmVyLFxuICAgIHN0YXR1czogT2JqZWN0LFxuICAgIGluUHJvZmlsZTogQm9vbGVhbixcbiAgICBjb252ZXJzYXRpb246IEFycmF5LFxuICAgIGNvbGxhcHNhYmxlOiBCb29sZWFuLFxuICAgIGlzRXhwYW5kZWQ6IEJvb2xlYW4sXG4gICAgcGlubmVkU3RhdHVzSWRzT2JqZWN0OiBPYmplY3QsXG4gICAgcHJvZmlsZVVzZXJJZDogU3RyaW5nLFxuXG4gICAgZm9jdXNlZDogRnVuY3Rpb24sXG4gICAgaGlnaGxpZ2h0OiBTdHJpbmcsXG4gICAgZ2V0UmVwbGllczogRnVuY3Rpb24sXG4gICAgc2V0SGlnaGxpZ2h0OiBGdW5jdGlvbixcbiAgICB0b2dnbGVFeHBhbmRlZDogRnVuY3Rpb24sXG5cbiAgICBzaW1wbGU6IEJvb2xlYW4sXG4gICAgLy8gdG8gY29udHJvbCBkaXNwbGF5IG9mIHRoZSB3aG9sZSB0aHJlYWQgZm9yZXN0XG4gICAgdG9nZ2xlVGhyZWFkRGlzcGxheTogRnVuY3Rpb24sXG4gICAgdGhyZWFkRGlzcGxheVN0YXR1czogT2JqZWN0LFxuICAgIHNob3dUaHJlYWRSZWN1cnNpdmVseTogRnVuY3Rpb24sXG4gICAgdG90YWxSZXBseUNvdW50OiBPYmplY3QsXG4gICAgdG90YWxSZXBseURlcHRoOiBPYmplY3QsXG4gICAgc3RhdHVzQ29udGVudFByb3BlcnRpZXM6IE9iamVjdCxcbiAgICBzZXRTdGF0dXNDb250ZW50UHJvcGVydHk6IEZ1bmN0aW9uLFxuICAgIHRvZ2dsZVN0YXR1c0NvbnRlbnRQcm9wZXJ0eTogRnVuY3Rpb24sXG4gICAgZGl2ZTogRnVuY3Rpb25cbiAgfSxcbiAgY29tcHV0ZWQ6IHtcbiAgICBzdXNwZW5kYWJsZSAoKSB7XG4gICAgICBjb25zdCBzZWxmU3VzcGVuZGFibGUgPSB0aGlzLiRyZWZzLnN0YXR1c0NvbXBvbmVudCA/IHRoaXMuJHJlZnMuc3RhdHVzQ29tcG9uZW50LnN1c3BlbmRhYmxlIDogdHJ1ZVxuICAgICAgaWYgKHRoaXMuJHJlZnMuY2hpbGRDb21wb25lbnQpIHtcbiAgICAgICAgcmV0dXJuIHNlbGZTdXNwZW5kYWJsZSAmJiB0aGlzLiRyZWZzLmNoaWxkQ29tcG9uZW50LmV2ZXJ5KHMgPT4gcy5zdXNwZW5kYWJsZSlcbiAgICAgIH1cbiAgICAgIHJldHVybiBzZWxmU3VzcGVuZGFibGVcbiAgICB9LFxuICAgIHJldmVyc2VMb29rdXBUYWJsZSAoKSB7XG4gICAgICByZXR1cm4gdGhpcy5jb252ZXJzYXRpb24ucmVkdWNlKCh0YWJsZSwgc3RhdHVzLCBpbmRleCkgPT4ge1xuICAgICAgICB0YWJsZVtzdGF0dXMuaWRdID0gaW5kZXhcbiAgICAgICAgcmV0dXJuIHRhYmxlXG4gICAgICB9LCB7fSlcbiAgICB9LFxuICAgIGN1cnJlbnRSZXBsaWVzICgpIHtcbiAgICAgIHJldHVybiB0aGlzLmdldFJlcGxpZXModGhpcy5zdGF0dXMuaWQpLm1hcCgoeyBpZCB9KSA9PiB0aGlzLnN0YXR1c0J5SWQoaWQpKVxuICAgIH0sXG4gICAgdGhyZWFkU2hvd2luZyAoKSB7XG4gICAgICByZXR1cm4gdGhpcy50aHJlYWREaXNwbGF5U3RhdHVzW3RoaXMuc3RhdHVzLmlkXSA9PT0gJ3Nob3dpbmcnXG4gICAgfSxcbiAgICBjdXJyZW50UHJvcCAoKSB7XG4gICAgICByZXR1cm4gdGhpcy5zdGF0dXNDb250ZW50UHJvcGVydGllc1t0aGlzLnN0YXR1cy5pZF1cbiAgICB9XG4gIH0sXG4gIG1ldGhvZHM6IHtcbiAgICBzdGF0dXNCeUlkIChpZCkge1xuICAgICAgcmV0dXJuIHRoaXMuY29udmVyc2F0aW9uW3RoaXMucmV2ZXJzZUxvb2t1cFRhYmxlW2lkXV1cbiAgICB9LFxuICAgIGNvbGxhcHNlVGhyZWFkICgpIHtcbiAgICB9LFxuICAgIHNob3dUaHJlYWQgKCkge1xuICAgIH0sXG4gICAgc2hvd0FsbFN1YnRocmVhZHMgKCkge1xuICAgIH0sXG4gICAgdG9nZ2xlQ3VycmVudFByb3AgKG5hbWUpIHtcbiAgICAgIHRoaXMudG9nZ2xlU3RhdHVzQ29udGVudFByb3BlcnR5KHRoaXMuc3RhdHVzLmlkLCBuYW1lKVxuICAgIH0sXG4gICAgc2V0Q3VycmVudFByb3AgKG5hbWUsIG5ld1ZhbCkge1xuICAgICAgdGhpcy5zZXRTdGF0dXNDb250ZW50UHJvcGVydHkodGhpcy5zdGF0dXMuaWQsIG5hbWUpXG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IFRocmVhZFRyZWVcbiJdLCJuYW1lcyI6WyJTdGF0dXMiLCJsaWJyYXJ5IiwiZmFBbmdsZURvdWJsZURvd24iLCJmYUFuZ2xlRG91YmxlUmlnaHQiLCJhZGQiLCJUaHJlYWRUcmVlIiwiY29tcG9uZW50cyIsIm5hbWUiLCJwcm9wcyIsImRlcHRoIiwiTnVtYmVyIiwic3RhdHVzIiwiT2JqZWN0IiwiaW5Qcm9maWxlIiwiQm9vbGVhbiIsImNvbnZlcnNhdGlvbiIsIkFycmF5IiwiY29sbGFwc2FibGUiLCJpc0V4cGFuZGVkIiwicGlubmVkU3RhdHVzSWRzT2JqZWN0IiwicHJvZmlsZVVzZXJJZCIsIlN0cmluZyIsImZvY3VzZWQiLCJGdW5jdGlvbiIsImhpZ2hsaWdodCIsImdldFJlcGxpZXMiLCJzZXRIaWdobGlnaHQiLCJ0b2dnbGVFeHBhbmRlZCIsInNpbXBsZSIsInRvZ2dsZVRocmVhZERpc3BsYXkiLCJ0aHJlYWREaXNwbGF5U3RhdHVzIiwic2hvd1RocmVhZFJlY3Vyc2l2ZWx5IiwidG90YWxSZXBseUNvdW50IiwidG90YWxSZXBseURlcHRoIiwic3RhdHVzQ29udGVudFByb3BlcnRpZXMiLCJzZXRTdGF0dXNDb250ZW50UHJvcGVydHkiLCJ0b2dnbGVTdGF0dXNDb250ZW50UHJvcGVydHkiLCJkaXZlIiwiY29tcHV0ZWQiLCJzdXNwZW5kYWJsZSIsInNlbGZTdXNwZW5kYWJsZSIsIiRyZWZzIiwic3RhdHVzQ29tcG9uZW50IiwiY2hpbGRDb21wb25lbnQiLCJldmVyeSIsInMiLCJyZXZlcnNlTG9va3VwVGFibGUiLCJyZWR1Y2UiLCJ0YWJsZSIsImluZGV4IiwiaWQiLCJjdXJyZW50UmVwbGllcyIsIl90aGlzIiwibWFwIiwiX3JlZiIsInN0YXR1c0J5SWQiLCJ0aHJlYWRTaG93aW5nIiwiY3VycmVudFByb3AiLCJtZXRob2RzIiwiY29sbGFwc2VUaHJlYWQiLCJzaG93VGhyZWFkIiwic2hvd0FsbFN1YnRocmVhZHMiLCJ0b2dnbGVDdXJyZW50UHJvcCIsInNldEN1cnJlbnRQcm9wIiwibmV3VmFsIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./src/components/thread_tree/thread_tree.js?vue&type=script&lang=js\n");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js!./src/components/timeline/timeline.js?vue&type=script&lang=js":
/*!**************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js!./src/components/timeline/timeline.js?vue&type=script&lang=js ***!
\**************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"./node_modules/@babel/runtime/helpers/esm/defineProperty.js\");\n/* harmony import */ var lodash_keyBy__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! lodash/keyBy */ \"./node_modules/lodash/keyBy.js\");\n/* harmony import */ var lodash_keyBy__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash_keyBy__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var lodash_throttle__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! lodash/throttle */ \"./node_modules/lodash/throttle.js\");\n/* harmony import */ var lodash_throttle__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(lodash_throttle__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var lodash_debounce__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! lodash/debounce */ \"./node_modules/lodash/debounce.js\");\n/* harmony import */ var lodash_debounce__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(lodash_debounce__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _status_status_vue__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../status/status.vue */ \"./src/components/status/status.vue\");\n/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.esm-bundler.js\");\n/* harmony import */ var _services_timeline_fetcher_timeline_fetcher_service_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../services/timeline_fetcher/timeline_fetcher.service.js */ \"./src/services/timeline_fetcher/timeline_fetcher.service.js\");\n/* harmony import */ var _conversation_conversation_vue__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../conversation/conversation.vue */ \"./src/components/conversation/conversation.vue\");\n/* harmony import */ var _timeline_menu_timeline_menu_vue__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../timeline_menu/timeline_menu.vue */ \"./src/components/timeline_menu/timeline_menu.vue\");\n/* harmony import */ var _quick_filter_settings_quick_filter_settings_vue__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../quick_filter_settings/quick_filter_settings.vue */ \"./src/components/quick_filter_settings/quick_filter_settings.vue\");\n/* harmony import */ var _quick_view_settings_quick_view_settings_vue__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../quick_view_settings/quick_view_settings.vue */ \"./src/components/quick_view_settings/quick_view_settings.vue\");\n/* harmony import */ var _fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @fortawesome/fontawesome-svg-core */ \"./node_modules/@fortawesome/fontawesome-svg-core/index.mjs\");\n/* harmony import */ var _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @fortawesome/free-solid-svg-icons */ \"./node_modules/@fortawesome/free-solid-svg-icons/index.mjs\");\n\n\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\n\n\n\n\n\n\n\n_fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_10__.library.add(_fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_11__.faCircleNotch, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_11__.faCog, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_11__.faMinus, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_11__.faArrowUp, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_11__.faCirclePlus, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_11__.faCheck);\nvar Timeline = {\n props: ['timeline', 'timelineName', 'title', 'userId', 'listId', 'tag', 'embedded', 'count', 'pinnedStatusIds', 'inProfile', 'footerSlipgate' // reference to an element where we should put our footer\n ],\n data: function data() {\n return {\n showScrollTop: false,\n paused: false,\n unfocused: false,\n bottomedOut: false,\n virtualScrollIndex: 0,\n blockingClicks: false\n };\n },\n components: {\n Status: _status_status_vue__WEBPACK_IMPORTED_MODULE_4__[\"default\"],\n Conversation: _conversation_conversation_vue__WEBPACK_IMPORTED_MODULE_6__[\"default\"],\n TimelineMenu: _timeline_menu_timeline_menu_vue__WEBPACK_IMPORTED_MODULE_7__[\"default\"],\n QuickFilterSettings: _quick_filter_settings_quick_filter_settings_vue__WEBPACK_IMPORTED_MODULE_8__[\"default\"],\n QuickViewSettings: _quick_view_settings_quick_view_settings_vue__WEBPACK_IMPORTED_MODULE_9__[\"default\"]\n },\n computed: _objectSpread({\n filteredVisibleStatuses: function filteredVisibleStatuses() {\n var _this = this;\n return this.timeline.visibleStatuses.filter(function (status) {\n return _this.timelineName !== 'user' || status.id >= _this.timeline.minId && status.id <= _this.timeline.maxId;\n });\n },\n filteredPinnedStatusIds: function filteredPinnedStatusIds() {\n var _this2 = this;\n return (this.pinnedStatusIds || []).filter(function (statusId) {\n return _this2.timeline.statusesObject[statusId];\n });\n },\n newStatusCount: function newStatusCount() {\n return this.timeline.newStatusCount;\n },\n showLoadButton: function showLoadButton() {\n return this.timeline.newStatusCount > 0 || this.timeline.flushMarker !== 0;\n },\n loadButtonString: function loadButtonString() {\n if (this.timeline.flushMarker !== 0) {\n return this.$t('timeline.reload');\n } else {\n return \"\".concat(this.$t('timeline.show_new'), \" (\").concat(this.newStatusCount, \")\");\n }\n },\n mobileLoadButtonString: function mobileLoadButtonString() {\n if (this.timeline.flushMarker !== 0) {\n return '+';\n } else {\n return this.newStatusCount > 99 ? '∞' : this.newStatusCount;\n }\n },\n classes: function classes() {\n var rootClasses = !this.embedded ? ['panel', 'panel-default'] : ['-nonpanel'];\n if (this.blockingClicks) rootClasses = rootClasses.concat(['-blocked', '_misclick-prevention']);\n return {\n root: rootClasses,\n header: ['timeline-heading'].concat(!this.embedded ? ['panel-heading', '-sticky'] : []),\n body: ['timeline-body'].concat(!this.embedded ? ['panel-body'] : []),\n footer: ['timeline-footer'].concat(!this.embedded ? ['panel-footer'] : [])\n };\n },\n // id map of statuses which need to be hidden in the main list due to pinning logic\n pinnedStatusIdsObject: function pinnedStatusIdsObject() {\n return lodash_keyBy__WEBPACK_IMPORTED_MODULE_1___default()(this.pinnedStatusIds);\n },\n statusesToDisplay: function statusesToDisplay() {\n var amount = this.timeline.visibleStatuses.length;\n var statusesPerSide = Math.ceil(Math.max(3, window.innerHeight / 80));\n var nonPinnedIndex = this.virtualScrollIndex - this.filteredPinnedStatusIds.length;\n var min = Math.max(0, nonPinnedIndex - statusesPerSide);\n var max = Math.min(amount, nonPinnedIndex + statusesPerSide);\n return this.timeline.visibleStatuses.slice(min, max).map(function (_) {\n return _.id;\n });\n },\n virtualScrollingEnabled: function virtualScrollingEnabled() {\n return this.$store.getters.mergedConfig.virtualScrolling;\n }\n }, (0,vuex__WEBPACK_IMPORTED_MODULE_12__.mapState)({\n mobileLayout: function mobileLayout(state) {\n return state[\"interface\"].layoutType === 'mobile';\n }\n })),\n created: function created() {\n var store = this.$store;\n var credentials = store.state.users.currentUser.credentials;\n var showImmediately = this.timeline.visibleStatuses.length === 0;\n window.addEventListener('scroll', this.handleScroll);\n if (store.state.api.fetchers[this.timelineName]) {\n return false;\n }\n _services_timeline_fetcher_timeline_fetcher_service_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"].fetchAndUpdate({\n store: store,\n credentials: credentials,\n timeline: this.timelineName,\n showImmediately: showImmediately,\n userId: this.userId,\n listId: this.listId,\n tag: this.tag\n });\n },\n mounted: function mounted() {\n if (typeof document.hidden !== 'undefined') {\n document.addEventListener('visibilitychange', this.handleVisibilityChange, false);\n this.unfocused = document.hidden;\n }\n window.addEventListener('keydown', this.handleShortKey);\n setTimeout(this.determineVisibleStatuses, 250);\n },\n unmounted: function unmounted() {\n window.removeEventListener('scroll', this.handleScroll);\n window.removeEventListener('keydown', this.handleShortKey);\n if (typeof document.hidden !== 'undefined') document.removeEventListener('visibilitychange', this.handleVisibilityChange, false);\n this.$store.commit('setLoading', {\n timeline: this.timelineName,\n value: false\n });\n },\n methods: {\n scrollToTop: function scrollToTop() {\n window.scrollTo({\n top: this.$el.offsetTop\n });\n },\n stopBlockingClicks: lodash_debounce__WEBPACK_IMPORTED_MODULE_3___default()(function () {\n this.blockingClicks = false;\n }, 1000),\n blockClicksTemporarily: function blockClicksTemporarily() {\n if (!this.blockingClicks) {\n this.blockingClicks = true;\n }\n this.stopBlockingClicks();\n },\n handleShortKey: function handleShortKey(e) {\n // Ignore when input fields are focused\n if (['textarea', 'input'].includes(e.target.tagName.toLowerCase())) return;\n if (e.key === '.') this.showNewStatuses();\n },\n showNewStatuses: function showNewStatuses() {\n if (this.timeline.flushMarker !== 0) {\n this.$store.commit('clearTimeline', {\n timeline: this.timelineName,\n excludeUserId: true\n });\n this.$store.commit('queueFlush', {\n timeline: this.timelineName,\n id: 0\n });\n if (this.timelineName === 'user') {\n this.$store.dispatch('fetchPinnedStatuses', this.userId);\n }\n this.fetchOlderStatuses();\n } else {\n this.blockClicksTemporarily();\n this.$store.commit('showNewStatuses', {\n timeline: this.timelineName\n });\n this.paused = false;\n }\n window.scrollTo({\n top: 0\n });\n },\n fetchOlderStatuses: lodash_throttle__WEBPACK_IMPORTED_MODULE_2___default()(function () {\n var _this3 = this;\n var store = this.$store;\n var credentials = store.state.users.currentUser.credentials;\n store.commit('setLoading', {\n timeline: this.timelineName,\n value: true\n });\n _services_timeline_fetcher_timeline_fetcher_service_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"].fetchAndUpdate({\n store: store,\n credentials: credentials,\n timeline: this.timelineName,\n older: true,\n showImmediately: true,\n userId: this.userId,\n listId: this.listId,\n tag: this.tag\n }).then(function (_ref) {\n var statuses = _ref.statuses;\n if (statuses && statuses.length === 0) {\n _this3.bottomedOut = true;\n }\n })[\"finally\"](function () {\n return store.commit('setLoading', {\n timeline: _this3.timelineName,\n value: false\n });\n });\n }, 1000, undefined),\n determineVisibleStatuses: function determineVisibleStatuses() {\n if (!this.$refs.timeline) return;\n if (!this.virtualScrollingEnabled) return;\n var statuses = this.$refs.timeline.children;\n var cappedScrollIndex = Math.max(0, Math.min(this.virtualScrollIndex, statuses.length - 1));\n if (statuses.length === 0) return;\n var height = Math.max(document.body.offsetHeight, window.pageYOffset);\n var centerOfScreen = window.pageYOffset + window.innerHeight * 0.5;\n\n // Start from approximating the index of some visible status by using the\n // the center of the screen on the timeline.\n var approxIndex = Math.floor(statuses.length * (centerOfScreen / height));\n var err = statuses[approxIndex].getBoundingClientRect().y;\n\n // if we have a previous scroll index that can be used, test if it's\n // closer than the previous approximation, use it if so\n\n var virtualScrollIndexY = statuses[cappedScrollIndex].getBoundingClientRect().y;\n if (Math.abs(err) > virtualScrollIndexY) {\n approxIndex = cappedScrollIndex;\n err = virtualScrollIndexY;\n }\n\n // if the status is too far from viewport, check the next/previous ones if\n // they happen to be better\n while (err < -20 && approxIndex < statuses.length - 1) {\n err += statuses[approxIndex].offsetHeight;\n approxIndex++;\n }\n while (err > window.innerHeight + 100 && approxIndex > 0) {\n approxIndex--;\n err -= statuses[approxIndex].offsetHeight;\n }\n\n // this status is now the center point for virtual scrolling and visible\n // statuses will be nearby statuses before and after it\n this.virtualScrollIndex = approxIndex;\n },\n scrollLoad: function scrollLoad(e) {\n var bodyBRect = document.body.getBoundingClientRect();\n var height = Math.max(bodyBRect.height, -bodyBRect.y);\n if (this.timeline.loading === false && this.$el.offsetHeight > 0 && window.innerHeight + window.pageYOffset >= height - 750) {\n this.fetchOlderStatuses();\n }\n },\n handleScroll: lodash_throttle__WEBPACK_IMPORTED_MODULE_2___default()(function (e) {\n this.showScrollTop = this.$el.offsetTop < window.scrollY;\n this.determineVisibleStatuses();\n this.scrollLoad(e);\n }, 200),\n handleVisibilityChange: function handleVisibilityChange() {\n this.unfocused = document.hidden;\n }\n },\n watch: {\n newStatusCount: function newStatusCount(count) {\n if (!this.$store.getters.mergedConfig.streaming) {\n return;\n }\n if (count > 0) {\n // only 'stream' them when you're scrolled to the top\n var doc = document.documentElement;\n var top = (window.pageYOffset || doc.scrollTop) - (doc.clientTop || 0);\n if (top < 15 && !this.paused && !(this.unfocused && this.$store.getters.mergedConfig.pauseOnUnfocused)) {\n this.showNewStatuses();\n } else {\n this.paused = true;\n }\n }\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Timeline);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL3NyYy9jb21wb25lbnRzL3RpbWVsaW5lL3RpbWVsaW5lLmpzP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQXlDO0FBQ1Y7QUFDMEQ7QUFDOUI7QUFDRTtBQUN1QjtBQUNOO0FBRW5CO0FBQ3dEO0FBRW5ITywyRUFBVyxDQUNUQyw2RUFBYSxFQUNiRSxxRUFBSyxFQUNMQyx1RUFBTyxFQUNQQyx5RUFBUyxFQUNUSCw0RUFBWSxFQUNaSSx1RUFDRixDQUFDO0FBRUQsSUFBTUUsUUFBUSxHQUFHO0VBQ2ZDLEtBQUssRUFBRSxDQUNMLFVBQVUsRUFDVixjQUFjLEVBQ2QsT0FBTyxFQUNQLFFBQVEsRUFDUixRQUFRLEVBQ1IsS0FBSyxFQUNMLFVBQVUsRUFDVixPQUFPLEVBQ1AsaUJBQWlCLEVBQ2pCLFdBQVcsRUFDWCxnQkFBZ0IsQ0FBQztFQUFBLENBQ2xCO0VBQ0RDLElBQUksV0FBQUEsS0FBQSxFQUFJO0lBQ04sT0FBTztNQUNMQyxhQUFhLEVBQUUsS0FBSztNQUNwQkMsTUFBTSxFQUFFLEtBQUs7TUFDYkMsU0FBUyxFQUFFLEtBQUs7TUFDaEJDLFdBQVcsRUFBRSxLQUFLO01BQ2xCQyxrQkFBa0IsRUFBRSxDQUFDO01BQ3JCQyxjQUFjLEVBQUU7SUFDbEIsQ0FBQztFQUNILENBQUM7RUFDREMsVUFBVSxFQUFFO0lBQ1Z4QixNQUFNLEVBQU5BLDBEQUFNO0lBQ05HLFlBQVksRUFBWkEsc0VBQVk7SUFDWkMsWUFBWSxFQUFaQSx3RUFBWTtJQUNaQyxtQkFBbUIsRUFBbkJBLHdGQUFtQjtJQUNuQkMsaUJBQWlCLEVBQWpCQSxvRkFBaUJBO0VBQ25CLENBQUM7RUFDRG1CLFFBQVEsRUFBQUMsYUFBQTtJQUNOQyx1QkFBdUIsV0FBQUEsd0JBQUEsRUFBSTtNQUFBLElBQUFDLEtBQUE7TUFDekIsT0FBTyxJQUFJLENB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QVMsR0FBRzJFLFFBQVEsQ0FBQ0MsTUFBTTtJQUNsQztFQUNGLENBQUM7RUFDRG9ELEtBQUssRUFBRTtJQUNMMUcsY0FBYyxXQUFBQSxlQUFFMkcsS0FBSyxFQUFFO01BQ3JCLElBQUksQ0FBQyxJQUFJLENBQUM1RSxNQUFNLENBQUNDLE9BQU8sQ0FBQ0MsWUFBWSxDQUFDMkUsU0FBUyxFQUFFO1FBQy9DO01BQ0Y7TUFDQSxJQUFJRCxLQUFLLEdBQUcsQ0FBQyxFQUFFO1FBQ2I7UUFDQSxJQUFNRSxHQUFHLEdBQUd4RCxRQUFRLENBQUN5RCxlQUFlO1FBQ3BDLElBQU01QyxHQUFHLEdBQUcsQ0FBQzNDLE1BQU0sQ0FBQ3NFLFdBQVcsSUFBSWdCLEdBQUcsQ0FBQ0UsU0FBUyxLQUFLRixHQUFHLENBQUNHLFNBQVMsSUFBSSxDQUFDLENBQUM7UUFDeEUsSUFBSTlDLEdBQUcsR0FBRyxFQUFFLElBQ1IsQ0FBQyxJQUFJLENBQUN6RixNQUFNLElBQ1osRUFBRSxJQUFJLENBQUNDLFNBQVMsSUFBSSxJQUFJLENBQUNxRCxNQUFNLENBQUNDLE9BQU8sQ0FBQ0MsWUFBWSxDQUFDZ0YsZ0JBQWdCLENBQUMsRUFDeEU7VUFDQSxJQUFJLENBQUNuQyxlQUFlLENBQUMsQ0FBQztRQUN4QixDQUFDLE1BQU07VUFDTCxJQUFJLENBQUNyRyxNQUFNLEdBQUcsSUFBSTtRQUNwQjtNQUNGO0lBQ0Y7RUFDRjtBQUNGLENBQUM7QUFFRCxpRUFBZUosUUFBUSIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvY29tcG9uZW50cy90aW1lbGluZS90aW1lbGluZS5qcz8zYmFjIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBTdGF0dXMgZnJvbSAnLi4vc3RhdHVzL3N0YXR1cy52dWUnXG5pbXBvcnQgeyBtYXBTdGF0ZSB9IGZyb20gJ3Z1ZXgnXG5pbXBvcnQgdGltZWxpbmVGZXRjaGVyIGZyb20gJy4uLy4uL3NlcnZpY2VzL3RpbWVsaW5lX2ZldGNoZXIvdGltZWxpbmVfZmV0Y2hlci5zZXJ2aWNlLmpzJ1xuaW1wb3J0IENvbnZlcnNhdGlvbiBmcm9tICcuLi9jb252ZXJzYXRpb24vY29udmVyc2F0aW9uLnZ1ZSdcbmltcG9ydCBUaW1lbGluZU1lbnUgZnJvbSAnLi4vdGltZWxpbmVfbWVudS90aW1lbGluZV9tZW51LnZ1ZSdcbmltcG9ydCBRdWlja0ZpbHRlclNldHRpbmdzIGZyb20gJy4uL3F1aWNrX2ZpbHRlcl9zZXR0aW5ncy9xdWlja19maWx0ZXJfc2V0dGluZ3MudnVlJ1xuaW1wb3J0IFF1aWNrVmlld1NldHRpbmdzIGZyb20gJy4uL3F1aWNrX3ZpZXdfc2V0dGluZ3MvcXVpY2tfdmlld19zZXR0aW5ncy52dWUnXG5pbXBvcnQgeyBkZWJvdW5jZSwgdGhyb3R0bGUsIGtleUJ5IH0gZnJvbSAnbG9kYXNoJ1xuaW1wb3J0IHsgbGlicmFyeSB9IGZyb20gJ0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1zdmctY29yZSdcbmltcG9ydCB7IGZhQ2lyY2xlTm90Y2gsIGZhQ2lyY2xlUGx1cywgZmFDb2csIGZhTWludXMsIGZhQXJyb3dVcCwgZmFDaGVjayB9IGZyb20gJ0Bmb3J0YXdlc29tZS9mcmVlLXNvbGlkLXN2Zy1pY29ucydcblxubGlicmFyeS5hZGQoXG4gIGZhQ2lyY2xlTm90Y2gsXG4gIGZhQ29nLFxuICBmYU1pbnVzLFxuICBmYUFycm93VXAsXG4gIGZhQ2lyY2xlUGx1cyxcbiAgZmFDaGVja1xuKVxuXG5jb25zdCBUaW1lbGluZSA9IHtcbiAgcHJvcHM6IFtcbiAgICAndGltZWxpbmUnLFxuICAgICd0aW1lbGluZU5hbWUnLFxuICAgICd0aXRsZScsXG4gICAgJ3VzZXJJZCcsXG4gICAgJ2xpc3RJZCcsXG4gICAgJ3RhZycsXG4gICAgJ2VtYmVkZGVkJyxcbiAgICAnY291bnQnLFxuICAgICdwaW5uZWRTdGF0dXNJZHMnLFxuICAgICdpblByb2ZpbGUnLFxuICAgICdmb290ZXJTbGlwZ2F0ZScgLy8gcmVmZXJlbmNlIHRvIGFuIGVsZW1lbnQgd2hlcmUgd2Ugc2hvdWxkIHB1dCBvdXIgZm9vdGVyXG4gIF0sXG4gIGRhdGEgKCkge1xuICAgIHJldHVybiB7XG4gICAgICBzaG93U2Nyb2xsVG9wOiBmYWxzZSxcbiAgICAgIHBhdXNlZDogZmFsc2UsXG4gICAgICB1bmZvY3VzZWQ6IGZhbHNlLFxuICAgICAgYm90dG9tZWRPdXQ6IGZhbHNlLFxuICAgICAgdmlydHVhbFNjcm9sbEluZGV4OiAwLFxuICAgICAgYmxvY2tpbmdDbGlja3M6IGZhbHNlXG4gICAgfVxuICB9LFxuICBjb21wb25lbnRzOiB7XG4gICAgU3RhdHVzLFxuICAgIENvbnZlcnNhdGlvbixcbiAgICBUaW1lbGluZU1lbnUsXG4gICAgUXVpY2tGaWx0ZXJTZXR0aW5ncyxcbiAgICBRdWlja1ZpZXdTZXR0aW5nc1xuICB9LFxuICBjb21wdXRlZDoge1xuICAgIGZpbHRlcmVkVmlzaWJsZVN0YXR1c2VzICgpIHtcbiAgICAgIHJldHVybiB0aGlzLnRpbWVsaW5lLnZpc2libGVTdGF0dXNlcy5maWx0ZXIoc3RhdHVzID0+IHRoaXMudGltZWxpbmVOYW1lICE9PSAndXNlcicgfHwgKHN0YXR1cy5pZCA+PSB0aGlzLnRpbWVsaW5lLm1pbklkICYmIHN0YXR1cy5pZCA8PSB0aGlzLnRpbWVsaW5lLm1heElkKSlcbiAgICB9LFxuICAgIGZpbHRlcmVkUGlubmVkU3RhdHVzSWRzICgpIHtcbiAgICAgIHJldHVybiAodGhpcy5waW5uZWRTdGF0dXNJZHMgfHwgW10pLmZpbHRlcihzdGF0dXNJZCA9PiB0aGlzLnRpbWVsaW5lLnN0YXR1c2VzT2JqZWN0W3N0YXR1c0lkXSlcbiAgICB9LFxuICAgIG5ld1N0YXR1c0NvdW50ICgpIHtcbiAgICAgIHJldHVybiB0aGlzLnRpbWVsaW5lLm5ld1N0YXR1c0NvdW50XG4gICAgfSxcbiAgICBzaG93TG9hZEJ1dHRvbiAoKSB7XG4gICAgICByZXR1cm4gdGhpcy50aW1lbGluZS5uZXdTdGF0dXNDb3VudCA+IDAgfHwgdGhpcy50aW1lbGluZS5mbHVzaE1hcmtlciAhPT0gMFxuICAgIH0sXG4gICAgbG9hZEJ1dHRvblN0cmluZyAoKSB7XG4gICAgICBpZiAodGhpcy50aW1lbGluZS5mbHVzaE1hcmtlciAhPT0gMCkge1xuICAgICAgICByZXR1cm4gdGhpcy4kdCgndGltZWxpbmUucmVsb2FkJylcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBgJHt0aGlzLiR0KCd0aW1lbGluZS5zaG93X25ldycpfSAoJHt0aGlzLm5ld1N0YXR1c0NvdW50fSlgXG4gICAgICB9XG4gICAgfSxcbiAgICBtb2JpbGVMb2FkQnV0dG9uU3RyaW5nICgpIHtcbiAgICAgIGlmICh0aGlzLnRpbWVsaW5lLmZsdXNoTWFya2VyICE9PSAwKSB7XG4gICAgICAgIHJldHVybiAnKydcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiB0aGlzLm5ld1N0YXR1c0NvdW50ID4gOTkgPyAn4oieJyA6IHRoaXMubmV3U3RhdHVzQ291bnRcbiAgICAgIH1cbiAgICB9LFxuICAgIGNsYXNzZXMgKCkge1xuICAgICAgbGV0IHJvb3RDbGFzc2VzID0gIXRoaXMuZW1iZWRkZWQgPyBbJ3BhbmVsJywgJ3BhbmVsLWRlZmF1bHQnXSA6IFsnLW5vbnBhbmVsJ11cbiAgICAgIGlmICh0aGlzLmJsb2NraW5nQ2xpY2tzKSByb290Q2xhc3NlcyA9IHJvb3RDbGFzc2VzLmNvbmNhdChbJy1ibG9ja2VkJywgJ19taXNjbGljay1wcmV2ZW50aW9uJ10pXG4gICAgICByZXR1cm4ge1xuICAgICAgICByb290OiByb290Q2xhc3NlcyxcbiAgICAgICAgaGVhZGVyOiBbJ3RpbWVsaW5lLWhlYWRpbmcnXS5jb25jYXQoIXRoaXMuZW1iZWRkZWQgPyBbJ3BhbmVsLWhlYWRpbmcnLCAnLXN0aWNreSddIDogW10pLFxuICAgICAgICBib2R5OiBbJ3RpbWVsaW5lLWJvZHknXS5jb25jYXQoIXRoaXMuZW1iZWRkZWQgPyBbJ3BhbmVsLWJvZHknXSA6IFtdKSxcbiAgICAgICAgZm9vdGVyOiBbJ3RpbWVsaW5lLWZvb3RlciddLmNvbmNhdCghdGhpcy5lbWJlZGRlZCA/IFsncGFuZWwtZm9vdGVyJ10gOiBbXSlcbiAgICAgIH1cbiAgICB9LFxuICAgIC8vIGlkIG1hcCBvZiBzdGF0dXNlcyB3aGljaCBuZWVkIHRvIGJlIGhpZGRlbiBpbiB0aGUgbWFpbiBsaXN0IGR1ZSB0byBwaW5uaW5nIGxvZ2ljXG4gICAgcGlubmVkU3RhdHVzSWRzT2JqZWN0ICgpIHtcbiAgICAgIHJldHVybiBrZXlCeSh0aGlzLnBpbm5lZFN0YXR1c0lkcylcbiAgICB9LFxuICAgIHN0YXR1c2VzVG9EaXNwbGF5ICgpIHtcbiAgICAgIGNvbnN0IGFtb3VudCA9IHRoaXMudGltZWxpbmUudmlzaWJsZVN0YXR1c2VzLmxlbmd0aFxuICAgICAgY29uc3Qgc3RhdHVzZXNQZXJTaWRlID0gTWF0aC5jZWlsKE1hdGgubWF4KDMsIHdpbmRvdy5pbm5lckhlaWdodCAvIDgwKSlcbiAgICAgIGNvbnN0IG5vblBpbm5lZEluZGV4ID0gdGhpcy52aXJ0dWFsU2Nyb2xsSW5kZXggLSB0aGlzLmZpbHRlcmVkUGlubmVkU3RhdHVzSWRzLmxlbmd0aFxuICAgICAgY29uc3QgbWluID0gTWF0aC5tYXgoMCwgbm9uUGlubmVkSW5kZXggLSBzdGF0dXNlc1BlclNpZGUpXG4gICAgICBjb25zdCBtYXggPSBNYXRoLm1pbihhbW91bnQsIG5vblBpbm5lZEluZGV4ICsgc3RhdHVzZXNQZXJTaWRlKVxuICAgICAgcmV0dXJuIHRoaXMudGltZWxpbmUudmlzaWJsZVN0YXR1c2VzLnNsaWNlKG1pbiwgbWF4KS5tYXAoXyA9PiBfLmlkKVxuICAgIH0sXG4gICAgdmlydHVhbFNjcm9sbGluZ0VuYWJsZWQgKCkge1xuICAgICAgcmV0dXJuIHRoaXMuJHN0b3JlLmdldHRlcnMubWVyZ2VkQ29uZmlnLnZpcnR1YWxTY3JvbGxpbmdcbiAgICB9LFxuICAgIC4uLm1hcFN0YXRlKHtcbiAgICAgIG1vYmlsZUxheW91dDogc3RhdGUgPT4gc3RhdGUuaW50ZXJmYWNlLmxheW91dFR5cGUgPT09ICdtb2JpbGUnXG4gICAgfSlcbiAgfSxcbiAgY3JlYXRlZCAoKSB7XG4gICAgY29uc3Qgc3RvcmUgPSB0aGlzLiRzdG9yZVxuICAgIGNvbnN0IGNyZWRlbnRpYWxzID0gc3RvcmUuc3RhdGUudXNlcnMuY3VycmVudFVzZXIuY3JlZGVudGlhbHNcbiAgICBjb25zdCBzaG93SW1tZWRpYXRlbHkgPSB0aGlzLnRpbWVsaW5lLnZpc2libGVTdGF0dXNlcy5sZW5ndGggPT09IDBcblxuICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdzY3JvbGwnLCB0aGlzLmhhbmRsZVNjcm9sbClcblxuICAgIGlmIChzdG9yZS5zdGF0ZS5hcGkuZmV0Y2hlcnNbdGhpcy50aW1lbGluZU5hbWVdKSB7IHJldHVybiBmYWxzZSB9XG5cbiAgICB0aW1lbGluZUZldGNoZXIuZmV0Y2hBbmRVcGRhdGUoe1xuICAgICAgc3RvcmUsXG4gICAgICBjcmVkZW50aWFscyxcbiAgICAgIHRpbWVsaW5lOiB0aGlzLnRpbWVsaW5lTmFtZSxcbiAgICAgIHNob3dJbW1lZGlhdGVseSxcbiAgICAgIHVzZXJJZDogdGhpcy51c2VySWQsXG4gICAgICBsaXN0SWQ6IHRoaXMubGlzdElkLFxuICAgICAgdGFnOiB0aGlzLnRhZ1xuICAgIH0pXG4gIH0sXG4gIG1vdW50ZWQgKCkge1xuICAgIGlmICh0eXBlb2YgZG9jdW1lbnQuaGlkZGVuICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigndmlzaWJpbGl0eWNoYW5nZScsIHRoaXMuaGFuZGxlVmlzaWJpbGl0eUNoYW5nZSwgZmFsc2UpXG4gICAgICB0aGlzLnVuZm9jdXNlZCA9IGRvY3VtZW50LmhpZGRlblxuICAgIH1cbiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIHRoaXMuaGFuZGxlU2hvcnRLZXkpXG4gICAgc2V0VGltZW91dCh0aGlzLmRldGVybWluZVZpc2libGVTdGF0dXNlcywgMjUwKVxuICB9LFxuICB1bm1vdW50ZWQgKCkge1xuICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdzY3JvbGwnLCB0aGlzLmhhbmRsZVNjcm9sbClcbiAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIHRoaXMuaGFuZGxlU2hvcnRLZXkpXG4gICAgaWYgKHR5cGVvZiBkb2N1bWVudC5oaWRkZW4gIT09ICd1bmRlZmluZWQnKSBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCd2aXNpYmlsaXR5Y2hhbmdlJywgdGhpcy5oYW5kbGVWaXNpYmlsaXR5Q2hhbmdlLCBmYWxzZSlcbiAgICB0aGlzLiRzdG9yZS5jb21taXQoJ3NldExvYWRpbmcnLCB7IHRpbWVsaW5lOiB0aGlzLnRpbWVsaW5lTmFtZSwgdmFsdWU6IGZhbHNlIH0pXG4gIH0sXG4gIG1ldGhvZHM6IHtcbiAgICBzY3JvbGxUb1RvcCAoKSB7XG4gICAgICB3aW5kb3cuc2Nyb2xsVG8oeyB0b3A6IHRoaXMuJGVsLm9mZnNldFRvcCB9KVxuICAgIH0sXG4gICAgc3RvcEJsb2NraW5nQ2xpY2tzOiBkZWJvdW5jZShmdW5jdGlvbiAoKSB7XG4gICAgICB0aGlzLmJsb2NraW5nQ2xpY2tzID0gZmFsc2VcbiAgICB9LCAxMDAwKSxcbiAgICBibG9ja0NsaWNrc1RlbXBvcmFyaWx5ICgpIHtcbiAgICAgIGlmICghdGhpcy5ibG9ja2luZ0NsaWNrcykge1xuICAgICAgICB0aGlzLmJsb2NraW5nQ2xpY2tzID0gdHJ1ZVxuICAgICAgfVxuICAgICAgdGhpcy5zdG9wQmxvY2tpbmdDbGlja3MoKVxuICAgIH0sXG4gICAgaGFuZGxlU2hvcnRLZXkgKGUpIHtcbiAgICAgIC8vIElnbm9yZSB3aGVuIGlucHV0IGZpZWxkcyBhcmUgZm9jdXNlZFxuICAgICAgaWYgKFsndGV4dGFyZWEnLCAnaW5wdXQnXS5pbmNsdWRlcyhlLnRhcmdldC50YWdOYW1lLnRvTG93ZXJDYXNlKCkpKSByZXR1cm5cbiAgICAgIGlmIChlLmtleSA9PT0gJy4nKSB0aGlzLnNob3dOZXdTdGF0dXNlcygpXG4gICAgfSxcbiAgICBzaG93TmV3U3RhdHVzZXMgKCkge1xuICAgICAgaWYgKHRoaXMudGltZWxpbmUuZmx1c2hNYXJrZXIgIT09IDApIHtcbiAgICAgICAgdGhpcy4kc3RvcmUuY29tbWl0KCdjbGVhclRpbWVsaW5lJywgeyB0aW1lbGluZTogdGhpcy50aW1lbGluZU5hbWUsIGV4Y2x1ZGVVc2VySWQ6IHRydWUgfSlcbiAgICAgICAgdGhpcy4kc3RvcmUuY29tbWl0KCdxdWV1ZUZsdXNoJywgeyB0aW1lbGluZTogdGhpcy50aW1lbGluZU5hbWUsIGlkOiAwIH0pXG4gICAgICAgIGlmICh0aGlzLnRpbWVsaW5lTmFtZSA9PT0gJ3VzZXInKSB7XG4gICAgICAgICAgdGhpcy4kc3RvcmUuZGlzcGF0Y2goJ2ZldGNoUGlubmVkU3RhdHVzZXMnLCB0aGlzLnVzZXJJZClcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmZldGNoT2xkZXJTdGF0dXNlcygpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmJsb2NrQ2xpY2tzVGVtcG9yYXJpbHkoKVxuICAgICAgICB0aGlzLiRzdG9yZS5jb21taXQoJ3Nob3dOZXdTdGF0dXNlcycsIHsgdGltZWxpbmU6IHRoaXMudGltZWxpbmVOYW1lIH0pXG4gICAgICAgIHRoaXMucGF1c2VkID0gZmFsc2VcbiAgICAgIH1cbiAgICAgIHdpbmRvdy5zY3JvbGxUbyh7IHRvcDogMCB9KVxuICAgIH0sXG4gICAgZmV0Y2hPbGRlclN0YXR1c2VzOiB0aHJvdHRsZShmdW5jdGlvbiAoKSB7XG4gICAgICBjb25zdCBzdG9yZSA9IHRoaXMuJHN0b3JlXG4gICAgICBjb25zdCBjcmVkZW50aWFscyA9IHN0b3JlLnN0YXRlLnVzZXJzLmN1cnJlbnRVc2VyLmNyZWRlbnRpYWxzXG4gICAgICBzdG9yZS5jb21taXQoJ3NldExvYWRpbmcnLCB7IHRpbWVsaW5lOiB0aGlzLnRpbWVsaW5lTmFtZSwgdmFsdWU6IHRydWUgfSlcbiAgICAgIHRpbWVsaW5lRmV0Y2hlci5mZXRjaEFuZFVwZGF0ZSh7XG4gICAgICAgIHN0b3JlLFxuICAgICAgICBjcmVkZW50aWFscyxcbiAgICAgICAgdGltZWxpbmU6IHRoaXMudGltZWxpbmVOYW1lLFxuICAgICAgICBvbGRlcjogdHJ1ZSxcbiAgICAgICAgc2hvd0ltbWVkaWF0ZWx5OiB0cnVlLFxuICAgICAgICB1c2VySWQ6IHRoaXMudXNlcklkLFxuICAgICAgICBsaXN0SWQ6IHRoaXMubGlzdElkLFxuICAgICAgICB0YWc6IHRoaXMudGFnXG4gICAgICB9KS50aGVuKCh7IHN0YXR1c2VzIH0pID0+IHtcbiAgICAgICAgaWYgKHN0YXR1c2VzICYmIHN0YXR1c2VzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgIHRoaXMuYm90dG9tZWRPdXQgPSB0cnVlXG4gICAgICAgIH1cbiAgICAgIH0pLmZpbmFsbHkoKCkgPT5cbiAgICAgICAgc3RvcmUuY29tbWl0KCdzZXRMb2FkaW5nJywgeyB0aW1lbGluZTogdGhpcy50aW1lbGluZU5hbWUsIHZhbHVlOiBmYWxzZSB9KVxuICAgICAgKVxuICAgIH0sIDEwMDAsIHRoaXMpLFxuICAgIGRldGVybWluZVZpc2libGVTdGF0dXNlcyAoKSB7XG4gICAgICBpZiAoIXRoaXMuJHJlZnMudGltZWxpbmUpIHJldHVyblxuICAgICAgaWYgKCF0aGlzLnZpcnR1YWxTY3JvbGxpbmdFbmFibGVkKSByZXR1cm5cblxuICAgICAgY29uc3Qgc3RhdHVzZXMgPSB0aGlzLiRyZWZzLnRpbWVsaW5lLmNoaWxkcmVuXG4gICAgICBjb25zdCBjYXBwZWRTY3JvbGxJbmRleCA9IE1hdGgubWF4KDAsIE1hdGgubWluKHRoaXMudmlydHVhbFNjcm9sbEluZGV4LCBzdGF0dXNlcy5sZW5ndGggLSAxKSlcblxuICAgICAgaWYgKHN0YXR1c2VzLmxlbmd0aCA9PT0gMCkgcmV0dXJuXG5cbiAgICAgIGNvbnN0IGhlaWdodCA9IE1hdGgubWF4KGRvY3VtZW50LmJvZHkub2Zmc2V0SGVpZ2h0LCB3aW5kb3cucGFnZVlPZmZzZXQpXG5cbiAgICAgIGNvbnN0IGNlbnRlck9mU2NyZWVuID0gd2luZG93LnBhZ2VZT2Zmc2V0ICsgKHdpbmRvdy5pbm5lckhlaWdodCAqIDAuNSlcblxuICAgICAgLy8gU3RhcnQgZnJvbSBhcHByb3hpbWF0aW5nIHRoZSBpbmRleCBvZiBzb21lIHZpc2libGUgc3RhdHVzIGJ5IHVzaW5nIHRoZVxuICAgICAgLy8gdGhlIGNlbnRlciBvZiB0aGUgc2NyZWVuIG9uIHRoZSB0aW1lbGluZS5cbiAgICAgIGxldCBhcHByb3hJbmRleCA9IE1hdGguZmxvb3Ioc3RhdHVzZXMubGVuZ3RoICogKGNlbnRlck9mU2NyZWVuIC8gaGVpZ2h0KSlcbiAgICAgIGxldCBlcnIgPSBzdGF0dXNlc1thcHByb3hJbmRleF0uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkueVxuXG4gICAgICAvLyBpZiB3ZSBoYXZlIGEgcHJldmlvdXMgc2Nyb2xsIGluZGV4IHRoYXQgY2FuIGJlIHVzZWQsIHRlc3QgaWYgaXQnc1xuICAgICAgLy8gY2xvc2VyIHRoYW4gdGhlIHByZXZpb3VzIGFwcHJveGltYXRpb24sIHVzZSBpdCBpZiBzb1xuXG4gICAgICBjb25zdCB2aXJ0dWFsU2Nyb2xsSW5kZXhZID0gc3RhdHVzZXNbY2FwcGVkU2Nyb2xsSW5kZXhdLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnlcbiAgICAgIGlmIChNYXRoLmFicyhlcnIpID4gdmlydHVhbFNjcm9sbEluZGV4WSkge1xuICAgICAgICBhcHByb3hJbmRleCA9IGNhcHBlZFNjcm9sbEluZGV4XG4gICAgICAgIGVyciA9IHZpcnR1YWxTY3JvbGxJbmRleFlcbiAgICAgIH1cblxuICAgICAgLy8gaWYgdGhlIHN0YXR1cyBpcyB0b28gZmFyIGZyb20gdmlld3BvcnQsIGNoZWNrIHRoZSBuZXh0L3ByZXZpb3VzIG9uZXMgaWZcbiAgICAgIC8vIHRoZXkgaGFwcGVuIHRvIGJlIGJldHRlclxuICAgICAgd2hpbGUgKGVyciA8IC0yMCAmJiBhcHByb3hJbmRleCA8IHN0YXR1c2VzLmxlbmd0aCAtIDEpIHtcbiAgICAgICAgZXJyICs9IHN0YXR1c2VzW2FwcHJveEluZGV4XS5vZmZzZXRIZWlnaHRcbiAgICAgICAgYXBwcm94SW5kZXgrK1xuICAgICAgfVxuICAgICAgd2hpbGUgKGVyciA+IHdpbmRvdy5pbm5lckhlaWdodCArIDEwMCAmJiBhcHByb3hJbmRleCA+IDApIHtcbiAgICAgICAgYXBwcm94SW5kZXgtLVxuICAgICAgICBlcnIgLT0gc3RhdHVzZXNbYXBwcm94SW5kZXhdLm9mZnNldEhlaWdodFxuICAgICAgfVxuXG4gICAgICAvLyB0aGlzIHN0YXR1cyBpcyBub3cgdGhlIGNlbnRlciBwb2ludCBmb3IgdmlydHVhbCBzY3JvbGxpbmcgYW5kIHZpc2libGVcbiAgICAgIC8vIHN0YXR1c2VzIHdpbGwgYmUgbmVhcmJ5IHN0YXR1c2VzIGJlZm9yZSBhbmQgYWZ0ZXIgaXRcbiAgICAgIHRoaXMudmlydHVhbFNjcm9sbEluZGV4ID0gYXBwcm94SW5kZXhcbiAgICB9LFxuICAgIHNjcm9sbExvYWQgKGUpIHtcbiAgICAgIGNvbnN0IGJvZHlCUmVjdCA9IGRvY3VtZW50LmJvZHkuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KClcbiAgICAgIGNvbnN0IGhlaWdodCA9IE1hdGgubWF4KGJvZHlCUmVjdC5oZWlnaHQsIC0oYm9keUJSZWN0LnkpKVxuICAgICAgaWYgKHRoaXMudGltZWxpbmUubG9hZGluZyA9PT0gZmFsc2UgJiZcbiAgICAgICAgICB0aGlzLiRlbC5vZmZzZXRIZWlnaHQgPiAwICYmXG4gICAgICAgICAgKHdpbmRvdy5pbm5lckhlaWdodCArIHdpbmRvdy5wYWdlWU9mZnNldCkgPj0gKGhlaWdodCAtIDc1MCkpIHtcbiAgICAgICAgdGhpcy5mZXRjaE9sZGVyU3RhdHVzZXMoKVxuICAgICAgfVxuICAgIH0sXG4gICAgaGFuZGxlU2Nyb2xsOiB0aHJvdHRsZShmdW5jdGlvbiAoZSkge1xuICAgICAgdGhpcy5zaG93U2Nyb2xsVG9wID0gdGhpcy4kZWwub2Zmc2V0VG9wIDwgd2luZG93LnNjcm9sbFlcbiAgICAgIHRoaXMuZGV0ZXJtaW5lVmlzaWJsZVN0YXR1c2VzKClcbiAgICAgIHRoaXMuc2Nyb2xsTG9hZChlKVxuICAgIH0sIDIwMCksXG4gICAgaGFuZGxlVmlzaWJpbGl0eUNoYW5nZSAoKSB7XG4gICAgICB0aGlzLnVuZm9jdXNlZCA9IGRvY3VtZW50LmhpZGRlblxuICAgIH1cbiAgfSxcbiAgd2F0Y2g6IHtcbiAgICBuZXdTdGF0dXNDb3VudCAoY291bnQpIHtcbiAgICAgIGlmICghdGhpcy4kc3RvcmUuZ2V0dGVycy5tZXJnZWRDb25maWcuc3RyZWFtaW5nKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuICAgICAgaWYgKGNvdW50ID4gMCkge1xuICAgICAgICAvLyBvbmx5ICdzdHJlYW0nIHRoZW0gd2hlbiB5b3UncmUgc2Nyb2xsZWQgdG8gdGhlIHRvcFxuICAgICAgICBjb25zdCBkb2MgPSBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnRcbiAgICAgICAgY29uc3QgdG9wID0gKHdpbmRvdy5wYWdlWU9mZnNldCB8fCBkb2Muc2Nyb2xsVG9wKSAtIChkb2MuY2xpZW50VG9wIHx8IDApXG4gICAgICAgIGlmICh0b3AgPCAxNSAmJlxuICAgICAgICAgICAgIXRoaXMucGF1c2VkICYmXG4gICAgICAgICAgICAhKHRoaXMudW5mb2N1c2VkICYmIHRoaXMuJHN0b3JlLmdldHRlcnMubWVyZ2VkQ29uZmlnLnBhdXNlT25VbmZvY3VzZWQpXG4gICAgICAgICkge1xuICAgICAgICAgIHRoaXMuc2hvd05ld1N0YXR1c2VzKClcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLnBhdXNlZCA9IHRydWVcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBUaW1lbGluZVxuIl0sIm5hbWVzIjpbIlN0YXR1cyIsIm1hcFN0YXRlIiwidGltZWxpbmVGZXRjaGVyIiwiQ29udmVyc2F0aW9uIiwiVGltZWxpbmVNZW51IiwiUXVpY2tGaWx0ZXJTZXR0aW5ncyIsIlF1aWNrVmlld1NldHRpbmdzIiwibGlicmFyeSIsImZhQ2lyY2xlTm90Y2giLCJmYUNpcmNsZVBsdXMiLCJmYUNvZyIsImZhTWludXMiLCJmYUFycm93VXAiLCJmYUNoZWNrIiwiYWRkIiwiVGltZWxpbmUiLCJwcm9wcyIsImRhdGEiLCJzaG93U2Nyb2xsVG9wIiwicGF1c2VkIiwidW5mb2N1c2VkIiwiYm90dG9tZWRPdXQiLCJ2aXJ0dWFsU2Nyb2xsSW5kZXgiLCJibG9ja2luZ0NsaWNrcyIsImNvbXBvbmVudHMiLCJjb21wdXRlZCIsIl9vYmplY3RTcHJlYWQiLCJmaWx0ZXJlZFZpc2libGVTdGF0dXNlcyIsIl90aGlzIiwidGltZWxpbmUiLCJ2aXNpYmxlU3RhdHVzZXMiLCJmaWx0ZXIiLCJzdGF0dXMiLCJ0aW1lbGluZU5hbWUiLCJpZCIsIm1pbklkIiwibWF4SWQiLCJmaWx0ZXJlZFBpbm5lZFN0YXR1c0lkcyIsIl90aGlzMiIsInBpbm5lZFN0YXR1c0lkcyIsInN0YXR1c0lkIiwic3RhdHVzZXNPYmplY3QiLCJuZXdTdGF0dXNDb3VudCIsInNob3dMb2FkQnV0dG9uIiwiZmx1c2hNYXJrZXIiLCJsb2FkQnV0dG9uU3RyaW5nIiwiJHQiLCJjb25jYXQiLCJtb2JpbGVMb2FkQnV0dG9uU3RyaW5nIiwiY2xhc3NlcyIsInJvb3RDbGFzc2VzIiwiZW1iZWRkZWQiLCJyb290IiwiaGVhZGVyIiwiYm9keSIsImZvb3RlciIsInBpbm5lZFN0YXR1c0lkc09iamVjdCIsIl9rZXlCeSIsInN0YXR1c2VzVG9EaXNwbGF5IiwiYW1vdW50IiwibGVuZ3RoIiwic3RhdHVzZXNQZXJTaWRlIiwiTWF0aCIsImNlaWwiLCJtYXgiLCJ3aW5kb3ciLCJpbm5lckhlaWdodCIsIm5vblBpbm5lZEluZGV4IiwibWluIiwic2xpY2UiLCJtYXAiLCJfIiwidmlydHVhbFNjcm9sbGluZ0VuYWJsZWQiLCIkc3RvcmUiLCJnZXR0ZXJzIiwibWVyZ2VkQ29uZmlnIiwidmlydHVhbFNjcm9sbGluZyIsIm1vYmlsZUxheW91dCIsInN0YXRlIiwibGF5b3V0VHlwZSIsImNyZWF0ZWQiLCJzdG9yZSIsImNyZWRlbnRpYWxzIiwidXNlcnMiLCJjdXJyZW50VXNlciIsInNob3dJbW1lZGlhdGVseSIsImFkZEV2ZW50TGlzdGVuZXIiLCJoYW5kbGVTY3JvbGwiLCJhcGkiLCJmZXRjaGVycyIsImZldGNoQW5kVXBkYXRlIiwidXNlcklkIiwibGlzdElkIiwidGFnIiwibW91bnRlZCIsImRvY3VtZW50IiwiaGlkZGVuIiwiaGFuZGxlVmlzaWJpbGl0eUNoYW5nZSIsImhhbmRsZVNob3J0S2V5Iiwic2V0VGltZW91dCIsImRldGVybWluZVZpc2libGVTdGF0dXNlcyIsInVubW91bnRlZCIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJjb21taXQiLCJ2YWx1ZSIsIm1ldGhvZHMiLCJzY3JvbGxUb1RvcCIsInNjcm9sbFRvIiwidG9wIiwiJGVsIiwib2Zmc2V0VG9wIiwic3RvcEJsb2NraW5nQ2xpY2tzIiwiX2RlYm91bmNlIiwiYmxvY2tDbGlja3NUZW1wb3JhcmlseSIsImUiLCJpbmNsdWRlcyIsInRhcmdldCIsInRhZ05hbWUiLCJ0b0xvd2VyQ2FzZSIsImtleSIsInNob3dOZXdTdGF0dXNlcyIsImV4Y2x1ZGVVc2VySWQiLCJkaXNwYXRjaCIsImZldGNoT2xkZXJTdGF0dXNlcyIsIl90aHJvdHRsZSIsIl90aGlzMyIsIm9sZGVyIiwidGhlbiIsIl9yZWYiLCJzdGF0dXNlcyIsIiRyZWZzIiwiY2hpbGRyZW4iLCJjYXBwZWRTY3JvbGxJbmRleCIsImhlaWdodCIsIm9mZnNldEhlaWdodCIsInBhZ2VZT2Zmc2V0IiwiY2VudGVyT2ZTY3JlZW4iLCJhcHByb3hJbmRleCIsImZsb29yIiwiZXJyIiwiZ2V0Qm91bmRpbmdDbGllbnRSZWN0IiwieSIsInZpcnR1YWxTY3JvbGxJbmRleFkiLCJhYnMiLCJzY3JvbGxMb2FkIiwiYm9keUJSZWN0IiwibG9hZGluZyIsInNjcm9sbFkiLCJ3YXRjaCIsImNvdW50Iiwic3RyZWFtaW5nIiwiZG9jIiwiZG9jdW1lbnRFbGVtZW50Iiwic2Nyb2xsVG9wIiwiY2xpZW50VG9wIiwicGF1c2VPblVuZm9jdXNlZCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./src/components/timeline/timeline.js?vue&type=script&lang=js\n");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js!./src/components/timeline_menu/timeline_menu.js?vue&type=script&lang=js":
/*!************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js!./src/components/timeline_menu/timeline_menu.js?vue&type=script&lang=js ***!
\************************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__),\n/* harmony export */ \"timelineNames\": () => (/* binding */ timelineNames)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ \"./node_modules/@babel/runtime/helpers/esm/slicedToArray.js\");\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"./node_modules/@babel/runtime/helpers/esm/defineProperty.js\");\n/* harmony import */ var _popover_popover_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../popover/popover.vue */ \"./src/components/popover/popover.vue\");\n/* harmony import */ var src_components_navigation_navigation_entry_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! src/components/navigation/navigation_entry.vue */ \"./src/components/navigation/navigation_entry.vue\");\n/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.esm-bundler.js\");\n/* harmony import */ var _lists_menu_lists_menu_content_vue__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../lists_menu/lists_menu_content.vue */ \"./src/components/lists_menu/lists_menu_content.vue\");\n/* harmony import */ var _fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @fortawesome/fontawesome-svg-core */ \"./node_modules/@fortawesome/fontawesome-svg-core/index.mjs\");\n/* harmony import */ var src_components_navigation_navigation_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! src/components/navigation/navigation.js */ \"./src/components/navigation/navigation.js\");\n/* harmony import */ var src_components_navigation_filter_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! src/components/navigation/filter.js */ \"./src/components/navigation/filter.js\");\n/* harmony import */ var _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @fortawesome/free-solid-svg-icons */ \"./node_modules/@fortawesome/free-solid-svg-icons/index.mjs\");\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\n\n\n\n\n\n\n_fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_5__.library.add(_fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_8__.faChevronDown);\n\n// Route -> i18n key mapping, exported and not in the computed\n// because nav panel benefits from the same information.\nvar timelineNames = function timelineNames() {\n return {\n friends: 'nav.home_timeline',\n bookmarks: 'nav.bookmarks',\n dms: 'nav.dms',\n 'public-timeline': 'nav.public_tl',\n 'public-external-timeline': 'nav.twkn'\n };\n};\nvar TimelineMenu = {\n components: {\n Popover: _popover_popover_vue__WEBPACK_IMPORTED_MODULE_2__[\"default\"],\n NavigationEntry: src_components_navigation_navigation_entry_vue__WEBPACK_IMPORTED_MODULE_3__[\"default\"],\n ListsMenuContent: _lists_menu_lists_menu_content_vue__WEBPACK_IMPORTED_MODULE_4__.ListsMenuContent\n },\n data: function data() {\n return {\n isOpen: false\n };\n },\n created: function created() {\n if (timelineNames()[this.$route.name]) {\n this.$store.dispatch('setLastTimeline', this.$route.name);\n }\n },\n computed: _objectSpread(_objectSpread({\n useListsMenu: function useListsMenu() {\n var route = this.$route.name;\n return route === 'lists-timeline';\n }\n }, (0,vuex__WEBPACK_IMPORTED_MODULE_9__.mapState)({\n currentUser: function currentUser(state) {\n return state.users.currentUser;\n },\n privateMode: function privateMode(state) {\n return state.instance[\"private\"];\n },\n federating: function federating(state) {\n return state.instance.federating;\n }\n })), {}, {\n timelinesList: function timelinesList() {\n return (0,src_components_navigation_filter_js__WEBPACK_IMPORTED_MODULE_7__.filterNavigation)(Object.entries(src_components_navigation_navigation_js__WEBPACK_IMPORTED_MODULE_6__.TIMELINES).map(function (_ref) {\n var _ref2 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(_ref, 2),\n k = _ref2[0],\n v = _ref2[1];\n return _objectSpread(_objectSpread({}, v), {}, {\n name: k\n });\n }), {\n hasChats: this.pleromaChatMessagesAvailable,\n isFederating: this.federating,\n isPrivate: this.privateMode,\n currentUser: this.currentUser\n });\n }\n }),\n methods: {\n openMenu: function openMenu() {\n var _this = this;\n // $nextTick is too fast, animation won't play back but\n // instead starts in fully open position. Low values\n // like 1-5 work on fast machines but not on mobile, 25\n // seems like a good compromise that plays without significant\n // added lag.\n setTimeout(function () {\n _this.isOpen = true;\n }, 25);\n },\n blockOpen: function blockOpen(event) {\n // For the blank area inside the button element.\n // Just setting @click.stop=\"\" makes unintuitive behavior when\n // menu is open and clicking on the blank area doesn't close it.\n if (!this.isOpen) {\n event.stopPropagation();\n }\n },\n timelineName: function timelineName() {\n var route = this.$route.name;\n if (route === 'tag-timeline') {\n return '#' + this.$route.params.tag;\n }\n if (route === 'lists-timeline') {\n return this.$store.getters.findListTitle(this.$route.params.id);\n }\n var i18nkey = timelineNames()[this.$route.name];\n return i18nkey ? this.$t(i18nkey) : route;\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (TimelineMenu);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL3NyYy9jb21wb25lbnRzL3RpbWVsaW5lX21lbnUvdGltZWxpbmVfbWVudS5qcz92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQTRDO0FBQ2dDO0FBQzdDO0FBQ3dDO0FBQ1o7QUFDUTtBQUNHO0FBRzVCO0FBRTFDSSwwRUFBVyxDQUFDRyw0RUFBYSxDQUFDOztBQUUxQjtBQUNBO0FBQ08sSUFBTUUsYUFBYSxHQUFHLFNBQWhCQSxhQUFhQSxDQUFBLEVBQVM7RUFDakMsT0FBTztJQUNMQyxPQUFPLEVBQUUsbUJBQW1CO0lBQzVCQyxTQUFTLEVBQUUsZUFBZTtJQUMxQkMsR0FBRyxFQUFFLFNBQVM7SUFDZCxpQkFBaUIsRUFBRSxlQUFlO0lBQ2xDLDBCQUEwQixFQUFFO0VBQzlCLENBQUM7QUFDSCxDQUFDO0FBRUQsSUFBTUMsWUFBWSxHQUFHO0VBQ25CQyxVQUFVLEVBQUU7SUFDVmQsT0FBTyxFQUFQQSw0REFBTztJQUNQQyxlQUFlLEVBQWZBLHNGQUFlO0lBQ2ZFLGdCQUFnQixFQUFoQkEsZ0ZBQWdCQTtFQUNsQixDQUFDO0VBQ0RZLElBQUksV0FBQUEsS0FBQSxFQUFJO0lBQ04sT0FBTztNQUNMQyxNQUFNLEVBQUU7SUFDVixDQUFDO0VBQ0gsQ0FBQztFQUNEQyxPQUFPLFdBQUFBLFFBQUEsRUFBSTtJQUNULElBQUlSLGFBQWEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDUyxNQUFNLENBQUNDLElBQUksQ0FBQyxFQUFFO01BQ3JDLElBQUksQ0FBQ0MsTUFBTSxDQUFDQyxRQUFRLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDSCxNQUFNLENBQUNDLElBQUksQ0FBQztJQUMzRDtFQUNGLENBQUM7RUFDREcsUUFBUSxFQUFBQyxhQUFBLENBQUFBLGFBQUE7SUFDTkMsWUFBWSxXQUFBQSxhQUFBLEVBQUk7TUFDZCxJQUFNQyxLQUFLLEdBQUcsSUFBSSxDQUFDUCxNQUFNLENBQUNDLElBQUk7TUFDOUIsT0FBT00sS0FBSyxLQUFLLGdCQUFnQjtJQUNuQztFQUFDLEdBQ0V2Qiw4Q0FBUSxDQUFDO0lBQ1Z3QixXQUFXLEVBQUUsU0FBQUEsWUFBQUMsS0FBSztNQUFBLE9BQUlBLEtBQUssQ0FBQ0MsS0FBSyxDQUFDRixXQUFXO0lBQUE7SUFDN0NHLFdBQVcsRUFBRSxTQUFBQSxZQUFBRixLQUFLO01BQUEsT0FBSUEsS0FBSyxDQUFDRyxRQUFRLFdBQVE7SUFBQTtJQUM1Q0MsVUFBVSxFQUFFLFNBQUFBLFdBQUFKLEtBQUs7TUFBQSxPQUFJQSxLQUFLLENBQUNHLFFBQVEsQ0FBQ0MsVUFBVTtJQUFBO0VBQ2hELENBQUMsQ0FBQztJQUNGQyxhQUFhLFdBQUFBLGNBQUEsRUFBSTtNQUNmLE9BQU8xQixxRkFBZ0IsQ0FDckIyQixNQUFNLENBQUNDLE9BQU8sQ0FBQzdCLDhFQUFTLENBQUMsQ0FBQzhCLEdBQUcsQ0FBQyxVQUFBQyxJQUFBO1FBQUEsSUFBQUMsS0FBQSxHQUFBQyxnRkFBQSxDQUFBRixJQUFBO1VBQUVHLENBQUMsR0FBQUYsS0FBQTtVQUFFRyxDQUFDLEdBQUFILEtBQUE7UUFBQSxPQUFBZCxhQUFBLENBQUFBLGFBQUEsS0FBWWlCLENBQUM7VUFBRXJCLElBQUksRUFBRW9CO1FBQUM7TUFBQSxDQUFHLENBQUMsRUFDOUQ7UUFDRUUsUUFBUSxFQUFFLElBQUksQ0FBQ0MsNEJBQTRCO1FBQzNDQyxZQUFZLEVBQUUsSUFBSSxDQUFDWixVQUFVO1FBQzdCYSxTQUFTLEVBQUUsSUFBSSxDQUFDZixXQUFXO1FBQzNCSCxXQUFXLEVBQUUsSUFBSSxDQUFDQTtNQUNwQixDQUNGLENBQUM7SUFDSDtFQUFDLEVBQ0Y7RUFDRG1CLE9BQU8sRUFBRTtJQUNQQyxRQUFRLFdBQUFBLFNBQUEsRUFBSTtNQUFBLElBQUFDLEtBQUE7TUFDVjtNQUNBO01BQ0E7TUFDQTtNQUNBO01BQ0FDLFVBQVUsQ0FBQyxZQUFNO1FBQ2ZELEtBQUksQ0FBQy9CLE1BQU0sR0FBRyxJQUFJO01BQ3BCLENBQUMsRUFBRSxFQUFFLENBQUM7SUFDUixDQUFDO0lBQ0RpQyxTQUFTLFdBQUFBLFVBQUVDLEtBQUssRUFBRTtNQUNoQjtNQUNBO01BQ0E7TUFDQSxJQUFJLENBQUMsSUFBSSxDQUFDbEMsTUFBTSxFQUFFO1FBQ2hCa0MsS0FBSyxDQUFDQyxlQUFlLENBQUMsQ0FBQztNQUN6QjtJQUNGLENBQUM7SUFDREMsWUFBWSxXQUFBQSxhQUFBLEVBQUk7TUFDZCxJQUFNM0IsS0FBSyxHQUFHLElBQUksQ0FBQ1AsTUFBTSxDQUFDQyxJQUFJO01BQzlCLElBQUlNLEtBQUssS0FBSyxjQUFjLEVBQUU7UUFDNUIsT0FBTyxHQUFHLEdBQUcsSUFBSSxDQUFDUCxNQUFNLENBQUNtQyxNQUFNLENBQUNDLEdBQUc7TUFDckM7TUFDQSxJQUFJN0IsS0FBSyxLQUFLLGdCQUFnQixFQUFFO1FBQzlCLE9BQU8sSUFBSSxDQUFDTCxNQUFNLENBQUNtQyxPQUFPLENBQUNDLGFBQWEsQ0FBQyxJQUFJLENBQUN0QyxNQUFNLENBQUNtQyxNQUFNLENBQUNJLEVBQUUsQ0FBQztNQUNqRTtNQUNBLElBQU1DLE9BQU8sR0FBR2pELGFBQWEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDUyxNQUFNLENBQUNDLElBQUksQ0FBQztNQUNqRCxPQUFPdUMsT0FBTyxHQUFHLElBQUksQ0FBQ0MsRUFBRSxDQUFDRCxPQUFPLENBQUMsR0FBR2pDLEtBQUs7SUFDM0M7RUFDRjtBQUNGLENBQUM7QUFFRCxpRUFBZVosWUFBWSIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvY29tcG9uZW50cy90aW1lbGluZV9tZW51L3RpbWVsaW5lX21lbnUuanM/NjQ5YyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUG9wb3ZlciBmcm9tICcuLi9wb3BvdmVyL3BvcG92ZXIudnVlJ1xuaW1wb3J0IE5hdmlnYXRpb25FbnRyeSBmcm9tICdzcmMvY29tcG9uZW50cy9uYXZpZ2F0aW9uL25hdmlnYXRpb25fZW50cnkudnVlJ1xuaW1wb3J0IHsgbWFwU3RhdGUgfSBmcm9tICd2dWV4J1xuaW1wb3J0IHsgTGlzdHNNZW51Q29udGVudCB9IGZyb20gJy4uL2xpc3RzX21lbnUvbGlzdHNfbWVudV9jb250ZW50LnZ1ZSdcbmltcG9ydCB7IGxpYnJhcnkgfSBmcm9tICdAZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtc3ZnLWNvcmUnXG5pbXBvcnQgeyBUSU1FTElORVMgfSBmcm9tICdzcmMvY29tcG9uZW50cy9uYXZpZ2F0aW9uL25hdmlnYXRpb24uanMnXG5pbXBvcnQgeyBmaWx0ZXJOYXZpZ2F0aW9uIH0gZnJvbSAnc3JjL2NvbXBvbmVudHMvbmF2aWdhdGlvbi9maWx0ZXIuanMnXG5pbXBvcnQge1xuICBmYUNoZXZyb25Eb3duXG59IGZyb20gJ0Bmb3J0YXdlc29tZS9mcmVlLXNvbGlkLXN2Zy1pY29ucydcblxubGlicmFyeS5hZGQoZmFDaGV2cm9uRG93bilcblxuLy8gUm91dGUgLT4gaTE4biBrZXkgbWFwcGluZywgZXhwb3J0ZWQgYW5kIG5vdCBpbiB0aGUgY29tcHV0ZWRcbi8vIGJlY2F1c2UgbmF2IHBhbmVsIGJlbmVmaXRzIGZyb20gdGhlIHNhbWUgaW5mb3JtYXRpb24uXG5leHBvcnQgY29uc3QgdGltZWxpbmVOYW1lcyA9ICgpID0+IHtcbiAgcmV0dXJuIHtcbiAgICBmcmllbmRzOiAnbmF2LmhvbWVfdGltZWxpbmUnLFxuICAgIGJvb2ttYXJrczogJ25hdi5ib29rbWFya3MnLFxuICAgIGRtczogJ25hdi5kbXMnLFxuICAgICdwdWJsaWMtdGltZWxpbmUnOiAnbmF2LnB1YmxpY190bCcsXG4gICAgJ3B1YmxpYy1leHRlcm5hbC10aW1lbGluZSc6ICduYXYudHdrbidcbiAgfVxufVxuXG5jb25zdCBUaW1lbGluZU1lbnUgPSB7XG4gIGNvbXBvbmVudHM6IHtcbiAgICBQb3BvdmVyLFxuICAgIE5hdmlnYXRpb25FbnRyeSxcbiAgICBMaXN0c01lbnVDb250ZW50XG4gIH0sXG4gIGRhdGEgKCkge1xuICAgIHJldHVybiB7XG4gICAgICBpc09wZW46IGZhbHNlXG4gICAgfVxuICB9LFxuICBjcmVhdGVkICgpIHtcbiAgICBpZiAodGltZWxpbmVOYW1lcygpW3RoaXMuJHJvdXRlLm5hbWVdKSB7XG4gICAgICB0aGlzLiRzdG9yZS5kaXNwYXRjaCgnc2V0TGFzdFRpbWVsaW5lJywgdGhpcy4kcm91dGUubmFtZSlcbiAgICB9XG4gIH0sXG4gIGNvbXB1dGVkOiB7XG4gICAgdXNlTGlzdHNNZW51ICgpIHtcbiAgICAgIGNvbnN0IHJvdXRlID0gdGhpcy4kcm91dGUubmFtZVxuICAgICAgcmV0dXJuIHJvdXRlID09PSAnbGlzdHMtdGltZWxpbmUnXG4gICAgfSxcbiAgICAuLi5tYXBTdGF0ZSh7XG4gICAgICBjdXJyZW50VXNlcjogc3RhdGUgPT4gc3RhdGUudXNlcnMuY3VycmVudFVzZXIsXG4gICAgICBwcml2YXRlTW9kZTogc3RhdGUgPT4gc3RhdGUuaW5zdGFuY2UucHJpdmF0ZSxcbiAgICAgIGZlZGVyYXRpbmc6IHN0YXRlID0+IHN0YXRlLmluc3RhbmNlLmZlZGVyYXRpbmdcbiAgICB9KSxcbiAgICB0aW1lbGluZXNMaXN0ICgpIHtcbiAgICAgIHJldHVybiBmaWx0ZXJOYXZpZ2F0aW9uKFxuICAgICAgICBPYmplY3QuZW50cmllcyhUSU1FTElORVMpLm1hcCgoW2ssIHZdKSA9PiAoeyAuLi52LCBuYW1lOiBrIH0pKSxcbiAgICAgICAge1xuICAgICAgICAgIGhhc0NoYXRzOiB0aGlzLnBsZXJvbWFDaGF0TWVzc2FnZXNBdmFpbGFibGUsXG4gICAgICAgICAgaXNGZWRlcmF0aW5nOiB0aGlzLmZlZGVyYXRpbmcsXG4gICAgICAgICAgaXNQcml2YXRlOiB0aGlzLnByaXZhdGVNb2RlLFxuICAgICAgICAgIGN1cnJlbnRVc2VyOiB0aGlzLmN1cnJlbnRVc2VyXG4gICAgICAgIH1cbiAgICAgIClcbiAgICB9XG4gIH0sXG4gIG1ldGhvZHM6IHtcbiAgICBvcGVuTWVudSAoKSB7XG4gICAgICAvLyAkbmV4dFRpY2sgaXMgdG9vIGZhc3QsIGFuaW1hdGlvbiB3b24ndCBwbGF5IGJhY2sgYnV0XG4gICAgICAvLyBpbnN0ZWFkIHN0YXJ0cyBpbiBmdWxseSBvcGVuIHBvc2l0aW9uLiBMb3cgdmFsdWVzXG4gICAgICAvLyBsaWtlIDEtNSB3b3JrIG9uIGZhc3QgbWFjaGluZXMgYnV0IG5vdCBvbiBtb2JpbGUsIDI1XG4gICAgICAvLyBzZWVtcyBsaWtlIGEgZ29vZCBjb21wcm9taXNlIHRoYXQgcGxheXMgd2l0aG91dCBzaWduaWZpY2FudFxuICAgICAgLy8gYWRkZWQgbGFnLlxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuaXNPcGVuID0gdHJ1ZVxuICAgICAgfSwgMjUpXG4gICAgfSxcbiAgICBibG9ja09wZW4gKGV2ZW50KSB7XG4gICAgICAvLyBGb3IgdGhlIGJsYW5rIGFyZWEgaW5zaWRlIHRoZSBidXR0b24gZWxlbWVudC5cbiAgICAgIC8vIEp1c3Qgc2V0dGluZyBAY2xpY2suc3RvcD1cIlwiIG1ha2VzIHVuaW50dWl0aXZlIGJlaGF2aW9yIHdoZW5cbiAgICAgIC8vIG1lbnUgaXMgb3BlbiBhbmQgY2xpY2tpbmcgb24gdGhlIGJsYW5rIGFyZWEgZG9lc24ndCBjbG9zZSBpdC5cbiAgICAgIGlmICghdGhpcy5pc09wZW4pIHtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcbiAgICAgIH1cbiAgICB9LFxuICAgIHRpbWVsaW5lTmFtZSAoKSB7XG4gICAgICBjb25zdCByb3V0ZSA9IHRoaXMuJHJvdXRlLm5hbWVcbiAgICAgIGlmIChyb3V0ZSA9PT0gJ3RhZy10aW1lbGluZScpIHtcbiAgICAgICAgcmV0dXJuICcjJyArIHRoaXMuJHJvdXRlLnBhcmFtcy50YWdcbiAgICAgIH1cbiAgICAgIGlmIChyb3V0ZSA9PT0gJ2xpc3RzLXRpbWVsaW5lJykge1xuICAgICAgICByZXR1cm4gdGhpcy4kc3RvcmUuZ2V0dGVycy5maW5kTGlzdFRpdGxlKHRoaXMuJHJvdXRlLnBhcmFtcy5pZClcbiAgICAgIH1cbiAgICAgIGNvbnN0IGkxOG5rZXkgPSB0aW1lbGluZU5hbWVzKClbdGhpcy4kcm91dGUubmFtZV1cbiAgICAgIHJldHVybiBpMThua2V5ID8gdGhpcy4kdChpMThua2V5KSA6IHJvdXRlXG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IFRpbWVsaW5lTWVudVxuIl0sIm5hbWVzIjpbIlBvcG92ZXIiLCJOYXZpZ2F0aW9uRW50cnkiLCJtYXBTdGF0ZSIsIkxpc3RzTWVudUNvbnRlbnQiLCJsaWJyYXJ5IiwiVElNRUxJTkVTIiwiZmlsdGVyTmF2aWdhdGlvbiIsImZhQ2hldnJvbkRvd24iLCJhZGQiLCJ0aW1lbGluZU5hbWVzIiwiZnJpZW5kcyIsImJvb2ttYXJrcyIsImRtcyIsIlRpbWVsaW5lTWVudSIsImNvbXBvbmVudHMiLCJkYXRhIiwiaXNPcGVuIiwiY3JlYXRlZCIsIiRyb3V0ZSIsIm5hbWUiLCIkc3RvcmUiLCJkaXNwYXRjaCIsImNvbXB1dGVkIiwiX29iamVjdFNwcmVhZCIsInVzZUxpc3RzTWVudSIsInJvdXRlIiwiY3VycmVudFVzZXIiLCJzdGF0ZSIsInVzZXJzIiwicHJpdmF0ZU1vZGUiLCJpbnN0YW5jZSIsImZlZGVyYXRpbmciLCJ0aW1lbGluZXNMaXN0IiwiT2JqZWN0IiwiZW50cmllcyIsIm1hcCIsIl9yZWYiLCJfcmVmMiIsIl9zbGljZWRUb0FycmF5IiwiayIsInYiLCJoYXNDaGF0cyIsInBsZXJvbWFDaGF0TWVzc2FnZXNBdmFpbGFibGUiLCJpc0ZlZGVyYXRpbmciLCJpc1ByaXZhdGUiLCJtZXRob2RzIiwib3Blbk1lbnUiLCJfdGhpcyIsInNldFRpbWVvdXQiLCJibG9ja09wZW4iLCJldmVudCIsInN0b3BQcm9wYWdhdGlvbiIsInRpbWVsaW5lTmFtZSIsInBhcmFtcyIsInRhZyIsImdldHRlcnMiLCJmaW5kTGlzdFRpdGxlIiwiaWQiLCJpMThua2V5IiwiJHQiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./src/components/timeline_menu/timeline_menu.js?vue&type=script&lang=js\n");
/***/ }),
/***/ "./src/components/update_notification/update_notification.js":
/*!*******************************************************************!*\
!*** ./src/components/update_notification/update_notification.js ***!
\*******************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"CURRENT_UPDATE_COUNTER\": () => (/* binding */ CURRENT_UPDATE_COUNTER),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var src_components_modal_modal_vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! src/components/modal/modal.vue */ \"./src/components/modal/modal.vue\");\n/* harmony import */ var _fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @fortawesome/fontawesome-svg-core */ \"./node_modules/@fortawesome/fontawesome-svg-core/index.mjs\");\n/* harmony import */ var src_assets_pleromatan_apology_png__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! src/assets/pleromatan_apology.png */ \"./src/assets/pleromatan_apology.png\");\n/* harmony import */ var src_assets_pleromatan_apology_fox_png__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! src/assets/pleromatan_apology_fox.png */ \"./src/assets/pleromatan_apology_fox.png\");\n/* harmony import */ var src_assets_pleromatan_apology_mask_png__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! src/assets/pleromatan_apology_mask.png */ \"./src/assets/pleromatan_apology_mask.png\");\n/* harmony import */ var src_assets_pleromatan_apology_fox_mask_png__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! src/assets/pleromatan_apology_fox_mask.png */ \"./src/assets/pleromatan_apology_fox_mask.png\");\n/* harmony import */ var _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @fortawesome/free-solid-svg-icons */ \"./node_modules/@fortawesome/free-solid-svg-icons/index.mjs\");\n\n\n\n\n\n\n\n_fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_1__.library.add(_fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_6__.faTimes);\nvar CURRENT_UPDATE_COUNTER = 1;\nvar UpdateNotification = {\n data: function data() {\n return {\n showingImage: false,\n pleromaTanVariant: Math.random() > 0.5 ? src_assets_pleromatan_apology_png__WEBPACK_IMPORTED_MODULE_2__ : src_assets_pleromatan_apology_fox_png__WEBPACK_IMPORTED_MODULE_3__,\n showingMore: false\n };\n },\n components: {\n Modal: src_components_modal_modal_vue__WEBPACK_IMPORTED_MODULE_0__[\"default\"]\n },\n computed: {\n pleromaTanStyles: function pleromaTanStyles() {\n var mask = this.pleromaTanVariant === src_assets_pleromatan_apology_png__WEBPACK_IMPORTED_MODULE_2__ ? src_assets_pleromatan_apology_mask_png__WEBPACK_IMPORTED_MODULE_4__ : src_assets_pleromatan_apology_fox_mask_png__WEBPACK_IMPORTED_MODULE_5__;\n return {\n 'shape-outside': 'url(' + mask + ')'\n };\n },\n shouldShow: function shouldShow() {\n return !this.$store.state.instance.disableUpdateNotification && this.$store.state.users.currentUser && this.$store.state.serverSideStorage.flagStorage.updateCounter < CURRENT_UPDATE_COUNTER && !this.$store.state.serverSideStorage.prefsStorage.simple.dontShowUpdateNotifs;\n }\n },\n methods: {\n toggleShow: function toggleShow() {\n this.showingMore = !this.showingMore;\n },\n neverShowAgain: function neverShowAgain() {\n this.toggleShow();\n this.$store.commit('setFlag', {\n flag: 'updateCounter',\n value: CURRENT_UPDATE_COUNTER\n });\n this.$store.commit('setPreference', {\n path: 'simple.dontShowUpdateNotifs',\n value: true\n });\n this.$store.dispatch('pushServerSideStorage');\n },\n dismiss: function dismiss() {\n this.$store.commit('setFlag', {\n flag: 'updateCounter',\n value: CURRENT_UPDATE_COUNTER\n });\n this.$store.dispatch('pushServerSideStorage');\n }\n },\n mounted: function mounted() {\n var _this = this;\n this.contentHeightNoImage = this.$refs.animatedText.scrollHeight;\n\n // Workaround to get the text height only after mask loaded. A bit hacky.\n var newImg = new Image();\n newImg.onload = function () {\n setTimeout(function () {\n _this.showingImage = true;\n }, 100);\n };\n newImg.src = this.pleromaTanVariant === src_assets_pleromatan_apology_png__WEBPACK_IMPORTED_MODULE_2__ ? src_assets_pleromatan_apology_mask_png__WEBPACK_IMPORTED_MODULE_4__ : src_assets_pleromatan_apology_fox_mask_png__WEBPACK_IMPORTED_MODULE_5__;\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (UpdateNotification);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvY29tcG9uZW50cy91cGRhdGVfbm90aWZpY2F0aW9uL3VwZGF0ZV9ub3RpZmljYXRpb24uanMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQWtEO0FBQ1M7QUFDRDtBQUNPO0FBQ0U7QUFDTztBQUloQztBQUMxQ0MsMEVBQVcsQ0FDVEssc0VBQ0YsQ0FBQztBQUVNLElBQU1FLHNCQUFzQixHQUFHLENBQUM7QUFFdkMsSUFBTUMsa0JBQWtCLEdBQUc7RUFDekJDLElBQUksV0FBQUEsS0FBQSxFQUFJO0lBQ04sT0FBTztNQUNMQyxZQUFZLEVBQUUsS0FBSztNQUNuQkMsaUJBQWlCLEVBQUVDLElBQUksQ0FBQ0MsTUFBTSxDQUFDLENBQUMsR0FBRyxHQUFHLEdBQUdaLDhEQUFVLEdBQUdDLGtFQUFhO01BQ25FWSxXQUFXLEVBQUU7SUFDZixDQUFDO0VBQ0gsQ0FBQztFQUNEQyxVQUFVLEVBQUU7SUFDVmhCLEtBQUssRUFBTEEsc0VBQUtBO0VBQ1AsQ0FBQztFQUNEaUIsUUFBUSxFQUFFO0lBQ1JDLGdCQUFnQixXQUFBQSxpQkFBQSxFQUFJO01BQ2xCLElBQU1DLElBQUksR0FBRyxJQUFJLENBQUNQLGlCQUFpQixLQUFLViw4REFBVSxHQUFHRSxtRUFBYyxHQUFHQyx1RUFBaUI7TUFDdkYsT0FBTztRQUNMLGVBQWUsRUFBRSxNQUFNLEdBQUdjLElBQUksR0FBRztNQUNuQyxDQUFDO0lBQ0gsQ0FBQztJQUNEQyxVQUFVLFdBQUFBLFdBQUEsRUFBSTtNQUNaLE9BQU8sQ0FBQyxJQUFJLENBQUNDLE1BQU0sQ0FBQ0MsS0FBSyxDQUFDQyxRQUFRLENBQUNDLHlCQUF5QixJQUMxRCxJQUFJLENBQUNILE1BQU0sQ0FBQ0MsS0FBSyxDQUFDRyxLQUFLLENBQUNDLFdBQVcsSUFDbkMsSUFBSSxDQUFDTCxNQUFNLENBQUNDLEtBQUssQ0FBQ0ssaUJBQWlCLENBQUNDLFdBQVcsQ0FBQ0MsYUFBYSxHQUFHckIsc0JBQXNCLElBQ3RGLENBQUMsSUFBSSxDQUFDYSxNQUFNLENBQUNDLEtBQUssQ0FBQ0ssaUJBQWlCLENBQUNHLFlBQVksQ0FBQ0MsTUFBTSxDQUFDQyxvQkFBb0I7SUFDakY7RUFDRixDQUFDO0VBQ0RDLE9BQU8sRUFBRTtJQUNQQyxVQUFVLFdBQUFBLFdBQUEsRUFBSTtNQUNaLElBQUksQ0FBQ25CLFdBQVcsR0FBRyxDQUFDLElBQUksQ0FBQ0EsV0FBVztJQUN0QyxDQUFDO0lBQ0RvQixjQUFjLFdBQUFBLGVBQUEsRUFBSTtNQUNoQixJQUFJLENBQUNELFVBQVUsQ0FBQyxDQUFDO01BQ2pCLElBQUksQ0FBQ2IsTUFBTSxDQUFDZSxNQUFNLENBQUMsU0FBUyxFQUFFO1FBQUVDLElBQUksRUFBRSxlQUFlO1FBQUVDLEtBQUssRUFBRTlCO01BQXVCLENBQUMsQ0FBQztNQUN2RixJQUFJLENBQUNhLE1BQU0sQ0FBQ2UsTUFBTSxDQUFDLGVBQWUsRUFBRTtRQUFFRyxJQUFJLEVBQUUsNkJBQTZCO1FBQUVELEtBQUssRUFBRTtNQUFLLENBQUMsQ0FBQztNQUN6RixJQUFJLENBQUNqQixNQUFNLENBQUNtQixRQUFRLENBQUMsdUJBQXVCLENBQUM7SUFDL0MsQ0FBQztJQUNEQyxPQUFPLFdBQUFBLFFBQUEsRUFBSTtNQUNULElBQUksQ0FBQ3BCLE1BQU0sQ0FBQ2UsTUFBTSxDQUFDLFNBQVMsRUFBRTtRQUFFQyxJQUFJLEVBQUUsZUFBZTtRQUFFQyxLQUFLLEVBQUU5QjtNQUF1QixDQUFDLENBQUM7TUFDdkYsSUFBSSxDQUFDYSxNQUFNLENBQUNtQixRQUFRLENBQUMsdUJBQXVCLENBQUM7SUFDL0M7RUFDRixDQUFDO0VBQ0RFLE9BQU8sV0FBQUEsUUFBQSxFQUFJO0lBQUEsSUFBQUMsS0FBQTtJQUNULElBQUksQ0FBQ0Msb0JBQW9CLEdBQUcsSUFBSSxDQUFDQyxLQUFLLENBQUNDLFlBQVksQ0FBQ0MsWUFBWTs7SUFFaEU7SUFDQSxJQUFNQyxNQUFNLEdBQUcsSUFBSUMsS0FBSyxDQUFDLENBQUM7SUFDMUJELE1BQU0sQ0FBQ0UsTUFBTSxHQUFHLFlBQU07TUFDcEJDLFVBQVUsQ0FBQyxZQUFNO1FBQUVSLEtBQUksQ0FBQ2hDLFlBQVksR0FBRyxJQUFJO01BQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQztJQUNyRCxDQUFDO0lBQ0RxQyxNQUFNLENBQUNJLEdBQUcsR0FBRyxJQUFJLENBQUN4QyxpQkFBaUIsS0FBS1YsOERBQVUsR0FBR0UsbUVBQWMsR0FBR0MsdUVBQWlCO0VBQ3pGO0FBQ0YsQ0FBQztBQUVELGlFQUFlSSxrQkFBa0IiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL2NvbXBvbmVudHMvdXBkYXRlX25vdGlmaWNhdGlvbi91cGRhdGVfbm90aWZpY2F0aW9uLmpzPzBjMDYiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IE1vZGFsIGZyb20gJ3NyYy9jb21wb25lbnRzL21vZGFsL21vZGFsLnZ1ZSdcbmltcG9ydCB7IGxpYnJhcnkgfSBmcm9tICdAZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtc3ZnLWNvcmUnXG5pbXBvcnQgcGxlcm9tYVRhbiBmcm9tICdzcmMvYXNzZXRzL3BsZXJvbWF0YW5fYXBvbG9neS5wbmcnXG5pbXBvcnQgcGxlcm9tYVRhbkZveCBmcm9tICdzcmMvYXNzZXRzL3BsZXJvbWF0YW5fYXBvbG9neV9mb3gucG5nJ1xuaW1wb3J0IHBsZXJvbWFUYW5NYXNrIGZyb20gJ3NyYy9hc3NldHMvcGxlcm9tYXRhbl9hcG9sb2d5X21hc2sucG5nJ1xuaW1wb3J0IHBsZXJvbWFUYW5Gb3hNYXNrIGZyb20gJ3NyYy9hc3NldHMvcGxlcm9tYXRhbl9hcG9sb2d5X2ZveF9tYXNrLnBuZydcblxuaW1wb3J0IHtcbiAgZmFUaW1lc1xufSBmcm9tICdAZm9ydGF3ZXNvbWUvZnJlZS1zb2xpZC1zdmctaWNvbnMnXG5saWJyYXJ5LmFkZChcbiAgZmFUaW1lc1xuKVxuXG5leHBvcnQgY29uc3QgQ1VSUkVOVF9VUERBVEVfQ09VTlRFUiA9IDFcblxuY29uc3QgVXBkYXRlTm90aWZpY2F0aW9uID0ge1xuICBkYXRhICgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgc2hvd2luZ0ltYWdlOiBmYWxzZSxcbiAgICAgIHBsZXJvbWFUYW5WYXJpYW50OiBNYXRoLnJhbmRvbSgpID4gMC41ID8gcGxlcm9tYVRhbiA6IHBsZXJvbWFUYW5Gb3gsXG4gICAgICBzaG93aW5nTW9yZTogZmFsc2VcbiAgICB9XG4gIH0sXG4gIGNvbXBvbmVudHM6IHtcbiAgICBNb2RhbFxuICB9LFxuICBjb21wdXRlZDoge1xuICAgIHBsZXJvbWFUYW5TdHlsZXMgKCkge1xuICAgICAgY29uc3QgbWFzayA9IHRoaXMucGxlcm9tYVRhblZhcmlhbnQgPT09IHBsZXJvbWFUYW4gPyBwbGVyb21hVGFuTWFzayA6IHBsZXJvbWFUYW5Gb3hNYXNrXG4gICAgICByZXR1cm4ge1xuICAgICAgICAnc2hhcGUtb3V0c2lkZSc6ICd1cmwoJyArIG1hc2sgKyAnKSdcbiAgICAgIH1cbiAgICB9LFxuICAgIHNob3VsZFNob3cgKCkge1xuICAgICAgcmV0dXJuICF0aGlzLiRzdG9yZS5zdGF0ZS5pbnN0YW5jZS5kaXNhYmxlVXBkYXRlTm90aWZpY2F0aW9uICYmXG4gICAgICAgIHRoaXMuJHN0b3JlLnN0YXRlLnVzZXJzLmN1cnJlbnRVc2VyICYmXG4gICAgICAgIHRoaXMuJHN0b3JlLnN0YXRlLnNlcnZlclNpZGVTdG9yYWdlLmZsYWdTdG9yYWdlLnVwZGF0ZUNvdW50ZXIgPCBDVVJSRU5UX1VQREFURV9DT1VOVEVSICYmXG4gICAgICAgICF0aGlzLiRzdG9yZS5zdGF0ZS5zZXJ2ZXJTaWRlU3RvcmFnZS5wcmVmc1N0b3JhZ2Uuc2ltcGxlLmRvbnRTaG93VXBkYXRlTm90aWZzXG4gICAgfVxuICB9LFxuICBtZXRob2RzOiB7XG4gICAgdG9nZ2xlU2hvdyAoKSB7XG4gICAgICB0aGlzLnNob3dpbmdNb3JlID0gIXRoaXMuc2hvd2luZ01vcmVcbiAgICB9LFxuICAgIG5ldmVyU2hvd0FnYWluICgpIHtcbiAgICAgIHRoaXMudG9nZ2xlU2hvdygpXG4gICAgICB0aGlzLiRzdG9yZS5jb21taXQoJ3NldEZsYWcnLCB7IGZsYWc6ICd1cGRhdGVDb3VudGVyJywgdmFsdWU6IENVUlJFTlRfVVBEQVRFX0NPVU5URVIgfSlcbiAgICAgIHRoaXMuJHN0b3JlLmNvbW1pdCgnc2V0UHJlZmVyZW5jZScsIHsgcGF0aDogJ3NpbXBsZS5kb250U2hvd1VwZGF0ZU5vdGlmcycsIHZhbHVlOiB0cnVlIH0pXG4gICAgICB0aGlzLiRzdG9yZS5kaXNwYXRjaCgncHVzaFNlcnZlclNpZGVTdG9yYWdlJylcbiAgICB9LFxuICAgIGRpc21pc3MgKCkge1xuICAgICAgdGhpcy4kc3RvcmUuY29tbWl0KCdzZXRGbGFnJywgeyBmbGFnOiAndXBkYXRlQ291bnRlcicsIHZhbHVlOiBDVVJSRU5UX1VQREFURV9DT1VOVEVSIH0pXG4gICAgICB0aGlzLiRzdG9yZS5kaXNwYXRjaCgncHVzaFNlcnZlclNpZGVTdG9yYWdlJylcbiAgICB9XG4gIH0sXG4gIG1vdW50ZWQgKCkge1xuICAgIHRoaXMuY29udGVudEhlaWdodE5vSW1hZ2UgPSB0aGlzLiRyZWZzLmFuaW1hdGVkVGV4dC5zY3JvbGxIZWlnaHRcblxuICAgIC8vIFdvcmthcm91bmQgdG8gZ2V0IHRoZSB0ZXh0IGhlaWdodCBvbmx5IGFmdGVyIG1hc2sgbG9hZGVkLiBBIGJpdCBoYWNreS5cbiAgICBjb25zdCBuZXdJbWcgPSBuZXcgSW1hZ2UoKVxuICAgIG5ld0ltZy5vbmxvYWQgPSAoKSA9PiB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHsgdGhpcy5zaG93aW5nSW1hZ2UgPSB0cnVlIH0sIDEwMClcbiAgICB9XG4gICAgbmV3SW1nLnNyYyA9IHRoaXMucGxlcm9tYVRhblZhcmlhbnQgPT09IHBsZXJvbWFUYW4gPyBwbGVyb21hVGFuTWFzayA6IHBsZXJvbWFUYW5Gb3hNYXNrXG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgVXBkYXRlTm90aWZpY2F0aW9uXG4iXSwibmFtZXMiOlsiTW9kYWwiLCJsaWJyYXJ5IiwicGxlcm9tYVRhbiIsInBsZXJvbWFUYW5Gb3giLCJwbGVyb21hVGFuTWFzayIsInBsZXJvbWFUYW5Gb3hNYXNrIiwiZmFUaW1lcyIsImFkZCIsIkNVUlJFTlRfVVBEQVRFX0NPVU5URVIiLCJVcGRhdGVOb3RpZmljYXRpb24iLCJkYXRhIiwic2hvd2luZ0ltYWdlIiwicGxlcm9tYVRhblZhcmlhbnQiLCJNYXRoIiwicmFuZG9tIiwic2hvd2luZ01vcmUiLCJjb21wb25lbnRzIiwiY29tcHV0ZWQiLCJwbGVyb21hVGFuU3R5bGVzIiwibWFzayIsInNob3VsZFNob3ciLCIkc3RvcmUiLCJzdGF0ZSIsImluc3RhbmNlIiwiZGlzYWJsZVVwZGF0ZU5vdGlmaWNhdGlvbiIsInVzZXJzIiwiY3VycmVudFVzZXIiLCJzZXJ2ZXJTaWRlU3RvcmFnZSIsImZsYWdTdG9yYWdlIiwidXBkYXRlQ291bnRlciIsInByZWZzU3RvcmFnZSIsInNpbXBsZSIsImRvbnRTaG93VXBkYXRlTm90aWZzIiwibWV0aG9kcyIsInRvZ2dsZVNob3ciLCJuZXZlclNob3dBZ2FpbiIsImNvbW1pdCIsImZsYWciLCJ2YWx1ZSIsInBhdGgiLCJkaXNwYXRjaCIsImRpc21pc3MiLCJtb3VudGVkIiwiX3RoaXMiLCJjb250ZW50SGVpZ2h0Tm9JbWFnZSIsIiRyZWZzIiwiYW5pbWF0ZWRUZXh0Iiwic2Nyb2xsSGVpZ2h0IiwibmV3SW1nIiwiSW1hZ2UiLCJvbmxvYWQiLCJzZXRUaW1lb3V0Iiwic3JjIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/components/update_notification/update_notification.js\n");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js!./src/components/user_avatar/user_avatar.js?vue&type=script&lang=js":
/*!********************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js!./src/components/user_avatar/user_avatar.js?vue&type=script&lang=js ***!
\********************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _still_image_still_image_vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../still-image/still-image.vue */ \"./src/components/still-image/still-image.vue\");\n/* harmony import */ var _fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @fortawesome/fontawesome-svg-core */ \"./node_modules/@fortawesome/fontawesome-svg-core/index.mjs\");\n/* harmony import */ var _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @fortawesome/free-solid-svg-icons */ \"./node_modules/@fortawesome/free-solid-svg-icons/index.mjs\");\n\n\n\n_fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_1__.library.add(_fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_2__.faRobot);\nvar UserAvatar = {\n props: ['user', 'betterShadow', 'compact', 'bot'],\n data: function data() {\n return {\n showPlaceholder: false,\n defaultAvatar: \"\".concat(this.$store.state.instance.server + this.$store.state.instance.defaultAvatar)\n };\n },\n components: {\n StillImage: _still_image_still_image_vue__WEBPACK_IMPORTED_MODULE_0__[\"default\"]\n },\n methods: {\n imgSrc: function imgSrc(src) {\n return !src || this.showPlaceholder ? this.defaultAvatar : src;\n },\n imageLoadError: function imageLoadError() {\n this.showPlaceholder = true;\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (UserAvatar);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL3NyYy9jb21wb25lbnRzL3VzZXJfYXZhdGFyL3VzZXJfYXZhdGFyLmpzP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBdUQ7QUFFSTtBQUlqQjtBQUUxQ0MsMEVBQVcsQ0FDVEMsc0VBQ0YsQ0FBQztBQUVELElBQU1FLFVBQVUsR0FBRztFQUNqQkMsS0FBSyxFQUFFLENBQ0wsTUFBTSxFQUNOLGNBQWMsRUFDZCxTQUFTLEVBQ1QsS0FBSyxDQUNOO0VBQ0RDLElBQUksV0FBQUEsS0FBQSxFQUFJO0lBQ04sT0FBTztNQUNMQyxlQUFlLEVBQUUsS0FBSztNQUN0QkMsYUFBYSxLQUFBQyxNQUFBLENBQUssSUFBSSxDQUFDQyxNQUFNLENBQUNDLEtBQUssQ0FBQ0MsUUFBUSxDQUFDQyxNQUFNLEdBQUcsSUFBSSxDQUFDSCxNQUFNLENBQUNDLEtBQUssQ0FBQ0MsUUFBUSxDQUFDSixhQUFhO0lBQ2hHLENBQUM7RUFDSCxDQUFDO0VBQ0RNLFVBQVUsRUFBRTtJQUNWZCxVQUFVLEVBQVZBLG9FQUFVQTtFQUNaLENBQUM7RUFDRGUsT0FBTyxFQUFFO0lBQ1BDLE1BQU0sV0FBQUEsT0FBRUMsR0FBRyxFQUFFO01BQ1gsT0FBUSxDQUFDQSxHQUFHLElBQUksSUFBSSxDQUFDVixlQUFlLEdBQUksSUFBSSxDQUFDQyxhQUFhLEdBQUdTLEdBQUc7SUFDbEUsQ0FBQztJQUNEQyxjQUFjLFdBQUFBLGVBQUEsRUFBSTtNQUNoQixJQUFJLENBQUNYLGVBQWUsR0FBRyxJQUFJO0lBQzdCO0VBQ0Y7QUFDRixDQUFDO0FBRUQsaUVBQWVILFVBQVUiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL2NvbXBvbmVudHMvdXNlcl9hdmF0YXIvdXNlcl9hdmF0YXIuanM/NDI4ZCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgU3RpbGxJbWFnZSBmcm9tICcuLi9zdGlsbC1pbWFnZS9zdGlsbC1pbWFnZS52dWUnXG5cbmltcG9ydCB7IGxpYnJhcnkgfSBmcm9tICdAZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtc3ZnLWNvcmUnXG5cbmltcG9ydCB7XG4gIGZhUm9ib3Rcbn0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZyZWUtc29saWQtc3ZnLWljb25zJ1xuXG5saWJyYXJ5LmFkZChcbiAgZmFSb2JvdFxuKVxuXG5jb25zdCBVc2VyQXZhdGFyID0ge1xuICBwcm9wczogW1xuICAgICd1c2VyJyxcbiAgICAnYmV0dGVyU2hhZG93JyxcbiAgICAnY29tcGFjdCcsXG4gICAgJ2JvdCdcbiAgXSxcbiAgZGF0YSAoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHNob3dQbGFjZWhvbGRlcjogZmFsc2UsXG4gICAgICBkZWZhdWx0QXZhdGFyOiBgJHt0aGlzLiRzdG9yZS5zdGF0ZS5pbnN0YW5jZS5zZXJ2ZXIgKyB0aGlzLiRzdG9yZS5zdGF0ZS5pbnN0YW5jZS5kZWZhdWx0QXZhdGFyfWBcbiAgICB9XG4gIH0sXG4gIGNvbXBvbmVudHM6IHtcbiAgICBTdGlsbEltYWdlXG4gIH0sXG4gIG1ldGhvZHM6IHtcbiAgICBpbWdTcmMgKHNyYykge1xuICAgICAgcmV0dXJuICghc3JjIHx8IHRoaXMuc2hvd1BsYWNlaG9sZGVyKSA/IHRoaXMuZGVmYXVsdEF2YXRhciA6IHNyY1xuICAgIH0sXG4gICAgaW1hZ2VMb2FkRXJyb3IgKCkge1xuICAgICAgdGhpcy5zaG93UGxhY2Vob2xkZXIgPSB0cnVlXG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IFVzZXJBdmF0YXJcbiJdLCJuYW1lcyI6WyJTdGlsbEltYWdlIiwibGlicmFyeSIsImZhUm9ib3QiLCJhZGQiLCJVc2VyQXZhdGFyIiwicHJvcHMiLCJkYXRhIiwic2hvd1BsYWNlaG9sZGVyIiwiZGVmYXVsdEF2YXRhciIsImNvbmNhdCIsIiRzdG9yZSIsInN0YXRlIiwiaW5zdGFuY2UiLCJzZXJ2ZXIiLCJjb21wb25lbnRzIiwibWV0aG9kcyIsImltZ1NyYyIsInNyYyIsImltYWdlTG9hZEVycm9yIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./src/components/user_avatar/user_avatar.js?vue&type=script&lang=js\n");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js!./src/components/user_card/user_card.js?vue&type=script&lang=js":
/*!****************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js!./src/components/user_card/user_card.js?vue&type=script&lang=js ***!
\****************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"./node_modules/@babel/runtime/helpers/esm/defineProperty.js\");\n/* harmony import */ var src_services_date_utils_date_utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! src/services/date_utils/date_utils.js */ \"./src/services/date_utils/date_utils.js\");\n/* harmony import */ var _user_avatar_user_avatar_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../user_avatar/user_avatar.vue */ \"./src/components/user_avatar/user_avatar.vue\");\n/* harmony import */ var _remote_follow_remote_follow_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../remote_follow/remote_follow.vue */ \"./src/components/remote_follow/remote_follow.vue\");\n/* harmony import */ var _progress_button_progress_button_vue__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../progress_button/progress_button.vue */ \"./src/components/progress_button/progress_button.vue\");\n/* harmony import */ var _follow_button_follow_button_vue__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../follow_button/follow_button.vue */ \"./src/components/follow_button/follow_button.vue\");\n/* harmony import */ var _moderation_tools_moderation_tools_vue__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../moderation_tools/moderation_tools.vue */ \"./src/components/moderation_tools/moderation_tools.vue\");\n/* harmony import */ var _account_actions_account_actions_vue__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../account_actions/account_actions.vue */ \"./src/components/account_actions/account_actions.vue\");\n/* harmony import */ var _user_note_user_note_vue__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../user_note/user_note.vue */ \"./src/components/user_note/user_note.vue\");\n/* harmony import */ var _select_select_vue__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../select/select.vue */ \"./src/components/select/select.vue\");\n/* harmony import */ var _user_link_user_link_vue__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../user_link/user_link.vue */ \"./src/components/user_link/user_link.vue\");\n/* harmony import */ var src_components_rich_content_rich_content_jsx__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! src/components/rich_content/rich_content.jsx */ \"./src/components/rich_content/rich_content.jsx\");\n/* harmony import */ var _confirm_modal_confirm_modal_vue__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../confirm_modal/confirm_modal.vue */ \"./src/components/confirm_modal/confirm_modal.vue\");\n/* harmony import */ var src_services_user_profile_link_generator_user_profile_link_generator__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! src/services/user_profile_link_generator/user_profile_link_generator */ \"./src/services/user_profile_link_generator/user_profile_link_generator.js\");\n/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.esm-bundler.js\");\n/* harmony import */ var _fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! @fortawesome/fontawesome-svg-core */ \"./node_modules/@fortawesome/fontawesome-svg-core/index.mjs\");\n/* harmony import */ var _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! @fortawesome/free-solid-svg-icons */ \"./node_modules/@fortawesome/free-solid-svg-icons/index.mjs\");\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n_fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_14__.library.add(_fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_15__.faRss, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_15__.faBell, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_15__.faSearchPlus, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_15__.faExternalLinkAlt, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_15__.faEdit, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_15__.faTimes, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_15__.faExpandAlt);\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({\n props: ['userId', 'switcher', 'selected', 'hideBio', 'rounded', 'bordered', 'avatarAction',\n // default - open profile, 'zoom' - zoom, function - call function\n 'onClose', 'hasNoteEditor'],\n data: function data() {\n return {\n followRequestInProgress: false,\n betterShadow: this.$store.state[\"interface\"].browserSupport.cssFilter,\n showingConfirmMute: false,\n muteExpiryAmount: 0,\n muteExpiryUnit: 'minutes'\n };\n },\n created: function created() {\n this.$store.dispatch('fetchUserRelationship', this.user.id);\n },\n computed: _objectSpread({\n user: function user() {\n return this.$store.getters.findUser(this.userId);\n },\n relationship: function relationship() {\n return this.$store.getters.relationship(this.userId);\n },\n classes: function classes() {\n return [{\n '-rounded-t': this.rounded === 'top',\n // set border-top-left-radius and border-top-right-radius\n '-rounded': this.rounded === true,\n // set border-radius for all sides\n '-bordered': this.bordered === true,\n // set border for all sides\n '-popover': !!this.onClose // set popover rounding\n }];\n },\n style: function style() {\n return {\n backgroundImage: ['linear-gradient(to bottom, var(--profileTint), var(--profileTint))', \"url(\".concat(this.user.cover_photo, \")\")].join(', ')\n };\n },\n isOtherUser: function isOtherUser() {\n return this.user.id !== this.$store.state.users.currentUser.id;\n },\n subscribeUrl: function subscribeUrl() {\n // eslint-disable-next-line no-undef\n var serverUrl = new URL(this.user.statusnet_profile_url);\n return \"\".concat(serverUrl.protocol, \"//\").concat(serverUrl.host, \"/main/ostatus\");\n },\n loggedIn: function loggedIn() {\n return this.$store.state.users.currentUser;\n },\n dailyAvg: function dailyAvg() {\n var days = Math.ceil((new Date() - new Date(this.user.created_at)) / (60 * 60 * 24 * 1000));\n return Math.round(this.user.statuses_count / days);\n },\n userHighlightType: _objectSpread({\n get: function get() {\n var data = this.$store.getters.mergedConfig.highlight[this.user.screen_name];\n return data && data.type || 'disabled';\n },\n set: function set(type) {\n var data = this.$store.getters.mergedConfig.highlight[this.user.screen_name];\n if (type !== 'disabled') {\n this.$store.dispatch('setHighlight', {\n user: this.user.screen_name,\n color: data && data.color || '#FFFFFF',\n type: type\n });\n } else {\n this.$store.dispatch('setHighlight', {\n user: this.user.screen_name,\n color: undefined\n });\n }\n }\n }, (0,vuex__WEBPACK_IMPORTED_MODULE_16__.mapGetters)(['mergedConfig'])),\n userHighlightColor: {\n get: function get() {\n var data = this.$store.getters.mergedConfig.highlight[this.user.screen_name];\n return data && data.color;\n },\n set: function set(color) {\n this.$store.dispatch('setHighlight', {\n user: this.user.screen_name,\n color: color\n });\n }\n },\n visibleRole: function visibleRole() {\n var rights = this.user.rights;\n if (!rights) {\n return;\n }\n var validRole = rights.admin || rights.moderator;\n var roleTitle = rights.admin ? 'admin' : 'moderator';\n return validRole && roleTitle;\n },\n hideFollowsCount: function hideFollowsCount() {\n return this.isOtherUser && this.user.hide_follows_count;\n },\n hideFollowersCount: function hideFollowersCount() {\n return this.isOtherUser && this.user.hide_followers_count;\n },\n showModerationMenu: function showModerationMenu() {\n var privileges = this.loggedIn.privileges;\n return this.loggedIn.role === 'admin' || privileges.includes('users_manage_activation_state') || privileges.includes('users_delete') || privileges.includes('users_manage_tags');\n },\n hasNote: function hasNote() {\n return this.relationship.note;\n },\n supportsNote: function supportsNote() {\n return 'note' in this.relationship;\n },\n shouldConfirmMute: function shouldConfirmMute() {\n return this.mergedConfig.modalOnMute;\n },\n muteExpiryUnits: function muteExpiryUnits() {\n return ['minutes', 'hours', 'days'];\n }\n }, (0,vuex__WEBPACK_IMPORTED_MODULE_16__.mapGetters)(['mergedConfig'])),\n components: {\n UserAvatar: _user_avatar_user_avatar_vue__WEBPACK_IMPORTED_MODULE_2__[\"default\"],\n RemoteFollow: _remote_follow_remote_follow_vue__WEBPACK_IMPORTED_MODULE_3__[\"default\"],\n ModerationTools: _moderation_tools_moderation_tools_vue__WEBPACK_IMPORTED_MODULE_6__[\"default\"],\n AccountActions: _account_actions_account_actions_vue__WEBPACK_IMPORTED_MODULE_7__[\"default\"],\n ProgressButton: _progress_button_progress_button_vue__WEBPACK_IMPORTED_MODULE_4__[\"default\"],\n FollowButton: _follow_button_follow_button_vue__WEBPACK_IMPORTED_MODULE_5__[\"default\"],\n Select: _select_select_vue__WEBPACK_IMPORTED_MODULE_9__[\"default\"],\n RichContent: src_components_rich_content_rich_content_jsx__WEBPACK_IMPORTED_MODULE_11__[\"default\"],\n UserLink: _user_link_user_link_vue__WEBPACK_IMPORTED_MODULE_10__[\"default\"],\n UserNote: _user_note_user_note_vue__WEBPACK_IMPORTED_MODULE_8__[\"default\"],\n ConfirmModal: _confirm_modal_confirm_modal_vue__WEBPACK_IMPORTED_MODULE_12__[\"default\"]\n },\n methods: {\n showConfirmMute: function showConfirmMute() {\n this.showingConfirmMute = true;\n },\n hideConfirmMute: function hideConfirmMute() {\n this.showingConfirmMute = false;\n },\n muteUser: function muteUser() {\n if (!this.shouldConfirmMute) {\n this.doMuteUser();\n } else {\n this.showConfirmMute();\n }\n },\n doMuteUser: function doMuteUser() {\n this.$store.dispatch('muteUser', {\n id: this.user.id,\n expiresIn: this.shouldConfirmMute ? (0,src_services_date_utils_date_utils_js__WEBPACK_IMPORTED_MODULE_1__.unitToSeconds)(this.muteExpiryUnit, this.muteExpiryAmount) : 0\n });\n this.hideConfirmMute();\n },\n unmuteUser: function unmuteUser() {\n this.$store.dispatch('unmuteUser', this.user.id);\n },\n subscribeUser: function subscribeUser() {\n return this.$store.dispatch('subscribeUser', this.user.id);\n },\n unsubscribeUser: function unsubscribeUser() {\n return this.$store.dispatch('unsubscribeUser', this.user.id);\n },\n setProfileView: function setProfileView(v) {\n if (this.switcher) {\n var store = this.$store;\n store.commit('setProfileView', {\n v: v\n });\n }\n },\n linkClicked: function linkClicked(_ref) {\n var target = _ref.target;\n if (target.tagName === 'SPAN') {\n target = target.parentNode;\n }\n if (target.tagName === 'A') {\n window.open(target.href, '_blank');\n }\n },\n userProfileLink: function userProfileLink(user) {\n return (0,src_services_user_profile_link_generator_user_profile_link_generator__WEBPACK_IMPORTED_MODULE_13__[\"default\"])(user.id, user.screen_name, this.$store.state.instance.restrictedNicknames);\n },\n openProfileTab: function openProfileTab() {\n this.$store.dispatch('openSettingsModalTab', 'profile');\n },\n zoomAvatar: function zoomAvatar() {\n var attachment = {\n url: this.user.profile_image_url_original,\n mimetype: 'image'\n };\n this.$store.dispatch('setMedia', [attachment]);\n this.$store.dispatch('setCurrentMedia', attachment);\n },\n mentionUser: function mentionUser() {\n this.$store.dispatch('openPostStatusModal', {\n replyTo: true,\n repliedUser: this.user\n });\n },\n onAvatarClickHandler: function onAvatarClickHandler(e) {\n if (this.onAvatarClick) {\n e.preventDefault();\n this.onAvatarClick();\n }\n }\n }\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL3NyYy9jb21wb25lbnRzL3VzZXJfY2FyZC91c2VyX2NhcmQuanM/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQXFFO0FBQ2Q7QUFDTTtBQUNNO0FBQ047QUFDUztBQUNIO0FBQ2xCO0FBQ1I7QUFDUTtBQUNxQjtBQUNUO0FBQ3lDO0FBQ3JFO0FBQzBCO0FBU2pCO0FBRTFDYywyRUFBVyxDQUNURSxxRUFBSyxFQUNMRCxzRUFBTSxFQUNORSw0RUFBWSxFQUNaQyxpRkFBaUIsRUFDakJDLHNFQUFNLEVBQ05DLHVFQUFPLEVBQ1BDLDJFQUNGLENBQUM7QUFFRCxpRUFBZTtFQUNiRSxLQUFLLEVBQUUsQ0FDTCxRQUFRLEVBQ1IsVUFBVSxFQUNWLFVBQVUsRUFDVixTQUFTLEVBQ1QsU0FBUyxFQUNULFVBQVUsRUFDVixjQUFjO0VBQUU7RUFDaEIsU0FBUyxFQUNULGVBQWUsQ0FDaEI7RUFDREMsSUFBSSxXQUFBQSxLQUFBLEVBQUk7SUFDTixPQUFPO01BQ0xDLHVCQUF1QixFQUFFLEtBQUs7TUFDOUJDLFlBQVksRUFBRSxJQUFJLENBQUNDLE1BQU0sQ0FBQ0MsS0FBSyxhQUFVLENBQUNDLGNBQWMsQ0FBQ0MsU0FBUztNQUNsRUMsa0JBQWtCLEVBQUUsS0FBSztNQUN6QkMsZ0JBQWdCLEVBQUUsQ0FBQztNQUNuQkMsY0FBYyxFQUFFO0lBQ2xCLENBQUM7RUFDSCxDQUFDO0VBQ0RDLE9BQU8sV0FBQUEsUUFBQSxFQUFJO0lBQ1QsSUFBSSxDQUFDUCxNQUFNLENBQUNRLFFBQVEsQ0FBQyx1QkFBdUIsRUFBRSxJQUFJLENBQUNDLElBQUksQ0FBQ0MsRUFBRSxDQUFDO0VBQzdELENBQUM7RUFDREMsUUFBUSxFQUFBQyxhQUFBO0lBQ05ILElBQUksV0FBQUEsS0FBQSxFQUFJO01BQ04sT0FBTyxJQUFJLENBQUNULE1BQU0sQ0FB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QUN6QixJQUFJLENBQUNoRCxNQUFNLENBQUNDLEtBQUssQ0FBQ2lHLFFBQVEsQ0FBQ0MsbUJBQzdCLENBQUM7SUFDSCxDQUFDO0lBQ0RDLGNBQWMsV0FBQUEsZUFBQSxFQUFJO01BQ2hCLElBQUksQ0FBQ3BHLE1BQU0sQ0FBQ1EsUUFBUSxDQUFDLHNCQUFzQixFQUFFLFNBQVMsQ0FBQztJQUN6RCxDQUFDO0lBQ0Q2RixVQUFVLFdBQUFBLFdBQUEsRUFBSTtNQUNaLElBQU1DLFVBQVUsR0FBRztRQUNqQkMsR0FBRyxFQUFFLElBQUksQ0FBQzlGLElBQUksQ0FBQytGLDBCQUEwQjtRQUN6Q0MsUUFBUSxFQUFFO01BQ1osQ0FBQztNQUNELElBQUksQ0FBQ3pHLE1BQU0sQ0FBQ1EsUUFBUSxDQUFDLFVBQVUsRUFBRSxDQUFDOEYsVUFBVSxDQUFDLENBQUM7TUFDOUMsSUFBSSxDQUFDdEcsTUFBTSxDQUFDUSxRQUFRLENBQUMsaUJBQWlCLEVBQUU4RixVQUFVLENBQUM7SUFDckQsQ0FBQztJQUNESSxXQUFXLFdBQUFBLFlBQUEsRUFBSTtNQUNiLElBQUksQ0FBQzFHLE1BQU0sQ0FBQ1EsUUFBUSxDQUFDLHFCQUFxQixFQUFFO1FBQUVtRyxPQUFPLEVBQUUsSUFBSTtRQUFFQyxXQUFXLEVBQUUsSUFBSSxDQUFDbkc7TUFBSyxDQUFDLENBQUM7SUFDeEYsQ0FBQztJQUNEb0csb0JBQW9CLFdBQUFBLHFCQUFFQyxDQUFDLEVBQUU7TUFDdkIsSUFBSSxJQUFJLENBQUNDLGFBQWEsRUFBRTtRQUN0QkQsQ0FBQyxDQUFDRSxjQUFjLENBQUMsQ0FBQztRQUNsQixJQUFJLENBQUNELGFBQWEsQ0FBQyxDQUFDO01BQ3RCO0lBQ0Y7RUFDRjtBQUNGLENBQUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL2NvbXBvbmVudHMvdXNlcl9jYXJkL3VzZXJfY2FyZC5qcz8wYzI3Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHVuaXRUb1NlY29uZHMgfSBmcm9tICdzcmMvc2VydmljZXMvZGF0ZV91dGlscy9kYXRlX3V0aWxzLmpzJ1xuaW1wb3J0IFVzZXJBdmF0YXIgZnJvbSAnLi4vdXNlcl9hdmF0YXIvdXNlcl9hdmF0YXIudnVlJ1xuaW1wb3J0IFJlbW90ZUZvbGxvdyBmcm9tICcuLi9yZW1vdGVfZm9sbG93L3JlbW90ZV9mb2xsb3cudnVlJ1xuaW1wb3J0IFByb2dyZXNzQnV0dG9uIGZyb20gJy4uL3Byb2dyZXNzX2J1dHRvbi9wcm9ncmVzc19idXR0b24udnVlJ1xuaW1wb3J0IEZvbGxvd0J1dHRvbiBmcm9tICcuLi9mb2xsb3dfYnV0dG9uL2ZvbGxvd19idXR0b24udnVlJ1xuaW1wb3J0IE1vZGVyYXRpb25Ub29scyBmcm9tICcuLi9tb2RlcmF0aW9uX3Rvb2xzL21vZGVyYXRpb25fdG9vbHMudnVlJ1xuaW1wb3J0IEFjY291bnRBY3Rpb25zIGZyb20gJy4uL2FjY291bnRfYWN0aW9ucy9hY2NvdW50X2FjdGlvbnMudnVlJ1xuaW1wb3J0IFVzZXJOb3RlIGZyb20gJy4uL3VzZXJfbm90ZS91c2VyX25vdGUudnVlJ1xuaW1wb3J0IFNlbGVjdCBmcm9tICcuLi9zZWxlY3Qvc2VsZWN0LnZ1ZSdcbmltcG9ydCBVc2VyTGluayBmcm9tICcuLi91c2VyX2xpbmsvdXNlcl9saW5rLnZ1ZSdcbmltcG9ydCBSaWNoQ29udGVudCBmcm9tICdzcmMvY29tcG9uZW50cy9yaWNoX2NvbnRlbnQvcmljaF9jb250ZW50LmpzeCdcbmltcG9ydCBDb25maXJtTW9kYWwgZnJvbSAnLi4vY29uZmlybV9tb2RhbC9jb25maXJtX21vZGFsLnZ1ZSdcbmltcG9ydCBnZW5lcmF0ZVByb2ZpbGVMaW5rIGZyb20gJ3NyYy9zZXJ2aWNlcy91c2VyX3Byb2ZpbGVfbGlua19nZW5lcmF0b3IvdXNlcl9wcm9maWxlX2xpbmtfZ2VuZXJhdG9yJ1xuaW1wb3J0IHsgbWFwR2V0dGVycyB9IGZyb20gJ3Z1ZXgnXG5pbXBvcnQgeyBsaWJyYXJ5IH0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLXN2Zy1jb3JlJ1xuaW1wb3J0IHtcbiAgZmFCZWxsLFxuICBmYVJzcyxcbiAgZmFTZWFyY2hQbHVzLFxuICBmYUV4dGVybmFsTGlua0FsdCxcbiAgZmFFZGl0LFxuICBmYVRpbWVzLFxuICBmYUV4cGFuZEFsdFxufSBmcm9tICdAZm9ydGF3ZXNvbWUvZnJlZS1zb2xpZC1zdmctaWNvbnMnXG5cbmxpYnJhcnkuYWRkKFxuICBmYVJzcyxcbiAgZmFCZWxsLFxuICBmYVNlYXJjaFBsdXMsXG4gIGZhRXh0ZXJuYWxMaW5rQWx0LFxuICBmYUVkaXQsXG4gIGZhVGltZXMsXG4gIGZhRXhwYW5kQWx0XG4pXG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgcHJvcHM6IFtcbiAgICAndXNlcklkJyxcbiAgICAnc3dpdGNoZXInLFxuICAgICdzZWxlY3RlZCcsXG4gICAgJ2hpZGVCaW8nLFxuICAgICdyb3VuZGVkJyxcbiAgICAnYm9yZGVyZWQnLFxuICAgICdhdmF0YXJBY3Rpb24nLCAvLyBkZWZhdWx0IC0gb3BlbiBwcm9maWxlLCAnem9vbScgLSB6b29tLCBmdW5jdGlvbiAtIGNhbGwgZnVuY3Rpb25cbiAgICAnb25DbG9zZScsXG4gICAgJ2hhc05vdGVFZGl0b3InXG4gIF0sXG4gIGRhdGEgKCkge1xuICAgIHJldHVybiB7XG4gICAgICBmb2xsb3dSZXF1ZXN0SW5Qcm9ncmVzczogZmFsc2UsXG4gICAgICBiZXR0ZXJTaGFkb3c6IHRoaXMuJHN0b3JlLnN0YXRlLmludGVyZmFjZS5icm93c2VyU3VwcG9ydC5jc3NGaWx0ZXIsXG4gICAgICBzaG93aW5nQ29uZmlybU11dGU6IGZhbHNlLFxuICAgICAgbXV0ZUV4cGlyeUFtb3VudDogMCxcbiAgICAgIG11dGVFeHBpcnlVbml0OiAnbWludXRlcydcbiAgICB9XG4gIH0sXG4gIGNyZWF0ZWQgKCkge1xuICAgIHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdmZXRjaFVzZXJSZWxhdGlvbnNoaXAnLCB0aGlzLnVzZXIuaWQpXG4gIH0sXG4gIGNvbXB1dGVkOiB7XG4gICAgdXNlciAoKSB7XG4gICAgICByZXR1cm4gdGhpcy4kc3RvcmUuZ2V0dGVycy5maW5kVXNlcih0aGlzLnVzZXJJZClcbiAgICB9LFxuICAgIHJlbGF0aW9uc2hpcCAoKSB7XG4gICAgICByZXR1cm4gdGhpcy4kc3RvcmUuZ2V0dGVycy5yZWxhdGlvbnNoaXAodGhpcy51c2VySWQpXG4gICAgfSxcbiAgICBjbGFzc2VzICgpIHtcbiAgICAgIHJldHVybiBbe1xuICAgICAgICAnLXJvdW5kZWQtdCc6IHRoaXMucm91bmRlZCA9PT0gJ3RvcCcsIC8vIHNldCBib3JkZXItdG9wLWxlZnQtcmFkaXVzIGFuZCBib3JkZXItdG9wLXJpZ2h0LXJhZGl1c1xuICAgICAgICAnLXJvdW5kZWQnOiB0aGlzLnJvdW5kZWQgPT09IHRydWUsIC8vIHNldCBib3JkZXItcmFkaXVzIGZvciBhbGwgc2lkZXNcbiAgICAgICAgJy1ib3JkZXJlZCc6IHRoaXMuYm9yZGVyZWQgPT09IHRydWUsIC8vIHNldCBib3JkZXIgZm9yIGFsbCBzaWRlc1xuICAgICAgICAnLXBvcG92ZXInOiAhIXRoaXMub25DbG9zZSAvLyBzZXQgcG9wb3ZlciByb3VuZGluZ1xuICAgICAgfV1cbiAgICB9LFxuICAgIHN0eWxlICgpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGJhY2tncm91bmRJbWFnZTogW1xuICAgICAgICAgICdsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCB2YXIoLS1wcm9maWxlVGludCksIHZhcigtLXByb2ZpbGVUaW50KSknLFxuICAgICAgICAgIGB1cmwoJHt0aGlzLnVzZXIuY292ZXJfcGhvdG99KWBcbiAgICAgICAgXS5qb2luKCcsICcpXG4gICAgICB9XG4gICAgfSxcbiAgICBpc090aGVyVXNlciAoKSB7XG4gICAgICByZXR1cm4gdGhpcy51c2VyLmlkICE9PSB0aGlzLiRzdG9yZS5zdGF0ZS51c2Vycy5jdXJyZW50VXNlci5pZFxuICAgIH0sXG4gICAgc3Vic2NyaWJlVXJsICgpIHtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bmRlZlxuICAgICAgY29uc3Qgc2VydmVyVXJsID0gbmV3IFVSTCh0aGlzLnVzZXIuc3RhdHVzbmV0X3Byb2ZpbGVfdXJsKVxuICAgICAgcmV0dXJuIGAke3NlcnZlclVybC5wcm90b2NvbH0vLyR7c2VydmVyVXJsLmhvc3R9L21haW4vb3N0YXR1c2BcbiAgICB9LFxuICAgIGxvZ2dlZEluICgpIHtcbiAgICAgIHJldHVybiB0aGlzLiRzdG9yZS5zdGF0ZS51c2Vycy5jdXJyZW50VXNlclxuICAgIH0sXG4gICAgZGFpbHlBdmcgKCkge1xuICAgICAgY29uc3QgZGF5cyA9IE1hdGguY2VpbCgobmV3IERhdGUoKSAtIG5ldyBEYXRlKHRoaXMudXNlci5jcmVhdGVkX2F0KSkgLyAoNjAgKiA2MCAqIDI0ICogMTAwMCkpXG4gICAgICByZXR1cm4gTWF0aC5yb3VuZCh0aGlzLnVzZXIuc3RhdHVzZXNfY291bnQgLyBkYXlzKVxuICAgIH0sXG4gICAgdXNlckhpZ2hsaWdodFR5cGU6IHtcbiAgICAgIGdldCAoKSB7XG4gICAgICAgIGNvbnN0IGRhdGEgPSB0aGlzLiRzdG9yZS5nZXR0ZXJzLm1lcmdlZENvbmZpZy5oaWdobGlnaHRbdGhpcy51c2VyLnNjcmVlbl9uYW1lXVxuICAgICAgICByZXR1cm4gKGRhdGEgJiYgZGF0YS50eXBlKSB8fCAnZGlzYWJsZWQnXG4gICAgICB9LFxuICAgICAgc2V0ICh0eXBlKSB7XG4gICAgICAgIGNvbnN0IGRhdGEgPSB0aGlzLiRzdG9yZS5nZXR0ZXJzLm1lcmdlZENvbmZpZy5oaWdobGlnaHRbdGhpcy51c2VyLnNjcmVlbl9uYW1lXVxuICAgICAgICBpZiAodHlwZSAhPT0gJ2Rpc2FibGVkJykge1xuICAgICAgICAgIHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdzZXRIaWdobGlnaHQnLCB7IHVzZXI6IHRoaXMudXNlci5zY3JlZW5fbmFtZSwgY29sb3I6IChkYXRhICYmIGRhdGEuY29sb3IpIHx8ICcjRkZGRkZGJywgdHlwZSB9KVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdzZXRIaWdobGlnaHQnLCB7IHVzZXI6IHRoaXMudXNlci5zY3JlZW5fbmFtZSwgY29sb3I6IHVuZGVmaW5lZCB9KVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgLi4ubWFwR2V0dGVycyhbJ21lcmdlZENvbmZpZyddKVxuICAgIH0sXG4gICAgdXNlckhpZ2hsaWdodENvbG9yOiB7XG4gICAgICBnZXQgKCkge1xuICAgICAgICBjb25zdCBkYXRhID0gdGhpcy4kc3RvcmUuZ2V0dGVycy5tZXJnZWRDb25maWcuaGlnaGxpZ2h0W3RoaXMudXNlci5zY3JlZW5fbmFtZV1cbiAgICAgICAgcmV0dXJuIGRhdGEgJiYgZGF0YS5jb2xvclxuICAgICAgfSxcbiAgICAgIHNldCAoY29sb3IpIHtcbiAgICAgICAgdGhpcy4kc3RvcmUuZGlzcGF0Y2goJ3NldEhpZ2hsaWdodCcsIHsgdXNlcjogdGhpcy51c2VyLnNjcmVlbl9uYW1lLCBjb2xvciB9KVxuICAgICAgfVxuICAgIH0sXG4gICAgdmlzaWJsZVJvbGUgKCkge1xuICAgICAgY29uc3QgcmlnaHRzID0gdGhpcy51c2VyLnJpZ2h0c1xuICAgICAgaWYgKCFyaWdodHMpIHsgcmV0dXJuIH1cbiAgICAgIGNvbnN0IHZhbGlkUm9sZSA9IHJpZ2h0cy5hZG1pbiB8fCByaWdodHMubW9kZXJhdG9yXG4gICAgICBjb25zdCByb2xlVGl0bGUgPSByaWdodHMuYWRtaW4gPyAnYWRtaW4nIDogJ21vZGVyYXRvcidcbiAgICAgIHJldHVybiB2YWxpZFJvbGUgJiYgcm9sZVRpdGxlXG4gICAgfSxcbiAgICBoaWRlRm9sbG93c0NvdW50ICgpIHtcbiAgICAgIHJldHVybiB0aGlzLmlzT3RoZXJVc2VyICYmIHRoaXMudXNlci5oaWRlX2ZvbGxvd3NfY291bnRcbiAgICB9LFxuICAgIGhpZGVGb2xsb3dlcnNDb3VudCAoKSB7XG4gICAgICByZXR1cm4gdGhpcy5pc090aGVyVXNlciAmJiB0aGlzLnVzZXIuaGlkZV9mb2xsb3dlcnNfY291bnRcbiAgICB9LFxuICAgIHNob3dNb2RlcmF0aW9uTWVudSAoKSB7XG4gICAgICBjb25zdCBwcml2aWxlZ2VzID0gdGhpcy5sb2dnZWRJbi5wcml2aWxlZ2VzXG4gICAgICByZXR1cm4gdGhpcy5sb2dnZWRJbi5yb2xlID09PSAnYWRtaW4nIHx8IHByaXZpbGVnZXMuaW5jbHVkZXMoJ3VzZXJzX21hbmFnZV9hY3RpdmF0aW9uX3N0YXRlJykgfHwgcHJpdmlsZWdlcy5pbmNsdWRlcygndXNlcnNfZGVsZXRlJykgfHwgcHJpdmlsZWdlcy5pbmNsdWRlcygndXNlcnNfbWFuYWdlX3RhZ3MnKVxuICAgIH0sXG4gICAgaGFzTm90ZSAoKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZWxhdGlvbnNoaXAubm90ZVxuICAgIH0sXG4gICAgc3VwcG9ydHNOb3RlICgpIHtcbiAgICAgIHJldHVybiAnbm90ZScgaW4gdGhpcy5yZWxhdGlvbnNoaXBcbiAgICB9LFxuICAgIHNob3VsZENvbmZpcm1NdXRlICgpIHtcbiAgICAgIHJldHVybiB0aGlzLm1lcmdlZENvbmZpZy5tb2RhbE9uTXV0ZVxuICAgIH0sXG4gICAgbXV0ZUV4cGlyeVVuaXRzICgpIHtcbiAgICAgIHJldHVybiBbJ21pbnV0ZXMnLCAnaG91cnMnLCAnZGF5cyddXG4gICAgfSxcbiAgICAuLi5tYXBHZXR0ZXJzKFsnbWVyZ2VkQ29uZmlnJ10pXG4gIH0sXG4gIGNvbXBvbmVudHM6IHtcbiAgICBVc2VyQXZhdGFyLFxuICAgIFJlbW90ZUZvbGxvdyxcbiAgICBNb2RlcmF0aW9uVG9vbHMsXG4gICAgQWNjb3VudEFjdGlvbnMsXG4gICAgUHJvZ3Jlc3NCdXR0b24sXG4gICAgRm9sbG93QnV0dG9uLFxuICAgIFNlbGVjdCxcbiAgICBSaWNoQ29udGVudCxcbiAgICBVc2VyTGluayxcbiAgICBVc2VyTm90ZSxcbiAgICBDb25maXJtTW9kYWxcbiAgfSxcbiAgbWV0aG9kczoge1xuICAgIHNob3dDb25maXJtTXV0ZSAoKSB7XG4gICAgICB0aGlzLnNob3dpbmdDb25maXJtTXV0ZSA9IHRydWVcbiAgICB9LFxuICAgIGhpZGVDb25maXJtTXV0ZSAoKSB7XG4gICAgICB0aGlzLnNob3dpbmdDb25maXJtTXV0ZSA9IGZhbHNlXG4gICAgfSxcbiAgICBtdXRlVXNlciAoKSB7XG4gICAgICBpZiAoIXRoaXMuc2hvdWxkQ29uZmlybU11dGUpIHtcbiAgICAgICAgdGhpcy5kb011dGVVc2VyKClcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuc2hvd0NvbmZpcm1NdXRlKClcbiAgICAgIH1cbiAgICB9LFxuICAgIGRvTXV0ZVVzZXIgKCkge1xuICAgICAgdGhpcy4kc3RvcmUuZGlzcGF0Y2goJ211dGVVc2VyJywge1xuICAgICAgICBpZDogdGhpcy51c2VyLmlkLFxuICAgICAgICBleHBpcmVzSW46IHRoaXMuc2hvdWxkQ29uZmlybU11dGUgPyB1bml0VG9TZWNvbmRzKHRoaXMubXV0ZUV4cGlyeVVuaXQsIHRoaXMubXV0ZUV4cGlyeUFtb3VudCkgOiAwXG4gICAgICB9KVxuICAgICAgdGhpcy5oaWRlQ29uZmlybU11dGUoKVxuICAgIH0sXG4gICAgdW5tdXRlVXNlciAoKSB7XG4gICAgICB0aGlzLiRzdG9yZS5kaXNwYXRjaCgndW5tdXRlVXNlcicsIHRoaXMudXNlci5pZClcbiAgICB9LFxuICAgIHN1YnNjcmliZVVzZXIgKCkge1xuICAgICAgcmV0dXJuIHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdzdWJzY3JpYmVVc2VyJywgdGhpcy51c2VyLmlkKVxuICAgIH0sXG4gICAgdW5zdWJzY3JpYmVVc2VyICgpIHtcbiAgICAgIHJldHVybiB0aGlzLiRzdG9yZS5kaXNwYXRjaCgndW5zdWJzY3JpYmVVc2VyJywgdGhpcy51c2VyLmlkKVxuICAgIH0sXG4gICAgc2V0UHJvZmlsZVZpZXcgKHYpIHtcbiAgICAgIGlmICh0aGlzLnN3aXRjaGVyKSB7XG4gICAgICAgIGNvbnN0IHN0b3JlID0gdGhpcy4kc3RvcmVcbiAgICAgICAgc3RvcmUuY29tbWl0KCdzZXRQcm9maWxlVmlldycsIHsgdiB9KVxuICAgICAgfVxuICAgIH0sXG4gICAgbGlua0NsaWNrZWQgKHsgdGFyZ2V0IH0pIHtcbiAgICAgIGlmICh0YXJnZXQudGFnTmFtZSA9PT0gJ1NQQU4nKSB7XG4gICAgICAgIHRhcmdldCA9IHRhcmdldC5wYXJlbnROb2RlXG4gICAgICB9XG4gICAgICBpZiAodGFyZ2V0LnRhZ05hbWUgPT09ICdBJykge1xuICAgICAgICB3aW5kb3cub3Blbih0YXJnZXQuaHJlZiwgJ19ibGFuaycpXG4gICAgICB9XG4gICAgfSxcbiAgICB1c2VyUHJvZmlsZUxpbmsgKHVzZXIpIHtcbiAgICAgIHJldHVybiBnZW5lcmF0ZVByb2ZpbGVMaW5rKFxuICAgICAgICB1c2VyLmlkLCB1c2VyLnNjcmVlbl9uYW1lLFxuICAgICAgICB0aGlzLiRzdG9yZS5zdGF0ZS5pbnN0YW5jZS5yZXN0cmljdGVkTmlja25hbWVzXG4gICAgICApXG4gICAgfSxcbiAgICBvcGVuUHJvZmlsZVRhYiAoKSB7XG4gICAgICB0aGlzLiRzdG9yZS5kaXNwYXRjaCgnb3BlblNldHRpbmdzTW9kYWxUYWInLCAncHJvZmlsZScpXG4gICAgfSxcbiAgICB6b29tQXZhdGFyICgpIHtcbiAgICAgIGNvbnN0IGF0dGFjaG1lbnQgPSB7XG4gICAgICAgIHVybDogdGhpcy51c2VyLnByb2ZpbGVfaW1hZ2VfdXJsX29yaWdpbmFsLFxuICAgICAgICBtaW1ldHlwZTogJ2ltYWdlJ1xuICAgICAgfVxuICAgICAgdGhpcy4kc3RvcmUuZGlzcGF0Y2goJ3NldE1lZGlhJywgW2F0dGFjaG1lbnRdKVxuICAgICAgdGhpcy4kc3RvcmUuZGlzcGF0Y2goJ3NldEN1cnJlbnRNZWRpYScsIGF0dGFjaG1lbnQpXG4gICAgfSxcbiAgICBtZW50aW9uVXNlciAoKSB7XG4gICAgICB0aGlzLiRzdG9yZS5kaXNwYXRjaCgnb3BlblBvc3RTdGF0dXNNb2RhbCcsIHsgcmVwbHlUbzogdHJ1ZSwgcmVwbGllZFVzZXI6IHRoaXMudXNlciB9KVxuICAgIH0sXG4gICAgb25BdmF0YXJDbGlja0hhbmRsZXIgKGUpIHtcbiAgICAgIGlmICh0aGlzLm9uQXZhdGFyQ2xpY2spIHtcbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpXG4gICAgICAgIHRoaXMub25BdmF0YXJDbGljaygpXG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iXSwibmFtZXMiOlsidW5pdFRvU2Vjb25kcyIsIlVzZXJBdmF0YXIiLCJSZW1vdGVGb2xsb3ciLCJQcm9ncmVzc0J1dHRvbiIsIkZvbGxvd0J1dHRvbiIsIk1vZGVyYXRpb25Ub29scyIsIkFjY291bnRBY3Rpb25zIiwiVXNlck5vdGUiLCJTZWxlY3QiLCJVc2VyTGluayIsIlJpY2hDb250ZW50IiwiQ29uZmlybU1vZGFsIiwiZ2VuZXJhdGVQcm9maWxlTGluayIsIm1hcEdldHRlcnMiLCJsaWJyYXJ5IiwiZmFCZWxsIiwiZmFSc3MiLCJmYVNlYXJjaFBsdXMiLCJmYUV4dGVybmFsTGlua0FsdCIsImZhRWRpdCIsImZhVGltZXMiLCJmYUV4cGFuZEFsdCIsImFkZCIsInByb3BzIiwiZGF0YSIsImZvbGxvd1JlcXVlc3RJblByb2dyZXNzIiwiYmV0dGVyU2hhZG93IiwiJHN0b3JlIiwic3RhdGUiLCJicm93c2VyU3VwcG9ydCIsImNzc0ZpbHRlciIsInNob3dpbmdDb25maXJtTXV0ZSIsIm11dGVFeHBpcnlBbW91bnQiLCJtdXRlRXhwaXJ5VW5pdCIsImNyZWF0ZWQiLCJkaXNwYXRjaCIsInVzZXIiLCJpZCIsImNvbXB1dGVkIiwiX29iamVjdFNwcmVhZCIsImdldHRlcnMiLCJmaW5kVXNlciIsInVzZXJJZCIsInJlbGF0aW9uc2hpcCIsImNsYXNzZXMiLCJyb3VuZGVkIiwiYm9yZGVyZWQiLCJvbkNsb3NlIiwic3R5bGUiLCJiYWNrZ3JvdW5kSW1hZ2UiLCJjb25jYXQiLCJjb3Zlcl9waG90byIsImpvaW4iLCJpc090aGVyVXNlciIsInVzZXJzIiwiY3VycmVudFVzZXIiLCJzdWJzY3JpYmVVcmwiLCJzZXJ2ZXJVcmwiLCJVUkwiLCJzdGF0dXNuZXRfcHJvZmlsZV91cmwiLCJwcm90b2NvbCIsImhvc3QiLCJsb2dnZWRJbiIsImRhaWx5QXZnIiwiZGF5cyIsIk1hdGgiLCJjZWlsIiwiRGF0ZSIsImNyZWF0ZWRfYXQiLCJyb3VuZCIsInN0YXR1c2VzX2NvdW50IiwidXNlckhpZ2hsaWdodFR5cGUiLCJnZXQiLCJtZXJnZWRDb25maWciLCJoaWdobGlnaHQiLCJzY3JlZW5fbmFtZSIsInR5cGUiLCJzZXQiLCJjb2xvciIsInVuZGVmaW5lZCIsInVzZXJIaWdobGlnaHRDb2xvciIsInZpc2libGVSb2xlIiwicmlnaHRzIiwidmFsaWRSb2xlIiwiYWRtaW4iLCJtb2RlcmF0b3IiLCJyb2xlVGl0bGUiLCJoaWRlRm9sbG93c0NvdW50IiwiaGlkZV9mb2xsb3dzX2NvdW50IiwiaGlkZUZvbGxvd2Vyc0NvdW50IiwiaGlkZV9mb2xsb3dlcnNfY291bnQiLCJzaG93TW9kZXJhdGlvbk1lbnUiLCJwcml2aWxlZ2VzIiwicm9sZSIsImluY2x1ZGVzIiwiaGFzTm90ZSIsIm5vdGUiLCJzdXBwb3J0c05vdGUiLCJzaG91bGRDb25maXJtTXV0ZSIsIm1vZGFsT25NdXRlIiwibXV0ZUV4cGlyeVVuaXRzIiwiY29tcG9uZW50cyIsIm1ldGhvZHMiLCJzaG93Q29uZmlybU11dGUiLCJoaWRlQ29uZmlybU11dGUiLCJtdXRlVXNlciIsImRvTXV0ZVVzZXIiLCJleHBpcmVzSW4iLCJ1bm11dGVVc2VyIiwic3Vic2NyaWJlVXNlciIsInVuc3Vic2NyaWJlVXNlciIsInNldFByb2ZpbGVWaWV3IiwidiIsInN3aXRjaGVyIiwic3RvcmUiLCJjb21taXQiLCJsaW5rQ2xpY2tlZCIsIl9yZWYiLCJ0YXJnZXQiLCJ0YWdOYW1lIiwicGFyZW50Tm9kZSIsIndpbmRvdyIsIm9wZW4iLCJocmVmIiwidXNlclByb2ZpbGVMaW5rIiwiaW5zdGFuY2UiLCJyZXN0cmljdGVkTmlja25hbWVzIiwib3BlblByb2ZpbGVUYWIiLCJ6b29tQXZhdGFyIiwiYXR0YWNobWVudCIsInVybCIsInByb2ZpbGVfaW1hZ2VfdXJsX29yaWdpbmFsIiwibWltZXR5cGUiLCJtZW50aW9uVXNlciIsInJlcGx5VG8iLCJyZXBsaWVkVXNlciIsIm9uQXZhdGFyQ2xpY2tIYW5kbGVyIiwiZSIsIm9uQXZhdGFyQ2xpY2siLCJwcmV2ZW50RGVmYXVsdCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./src/components/user_card/user_card.js?vue&type=script&lang=js\n");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js!./src/components/user_list_menu/user_list_menu.js?vue&type=script&lang=js":
/*!**************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js!./src/components/user_list_menu/user_list_menu.js?vue&type=script&lang=js ***!
\**************************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"./node_modules/@babel/runtime/helpers/esm/defineProperty.js\");\n/* harmony import */ var _fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @fortawesome/fontawesome-svg-core */ \"./node_modules/@fortawesome/fontawesome-svg-core/index.mjs\");\n/* harmony import */ var _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @fortawesome/free-solid-svg-icons */ \"./node_modules/@fortawesome/free-solid-svg-icons/index.mjs\");\n/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.esm-bundler.js\");\n/* harmony import */ var _dialog_modal_dialog_modal_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../dialog_modal/dialog_modal.vue */ \"./src/components/dialog_modal/dialog_modal.vue\");\n/* harmony import */ var _popover_popover_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../popover/popover.vue */ \"./src/components/popover/popover.vue\");\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\n\n\n\n_fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_1__.library.add(_fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_4__.faChevronRight);\nvar UserListMenu = {\n props: ['user'],\n data: function data() {\n return {};\n },\n components: {\n DialogModal: _dialog_modal_dialog_modal_vue__WEBPACK_IMPORTED_MODULE_2__[\"default\"],\n Popover: _popover_popover_vue__WEBPACK_IMPORTED_MODULE_3__[\"default\"]\n },\n created: function created() {\n this.$store.dispatch('fetchUserInLists', this.user.id);\n },\n computed: _objectSpread(_objectSpread({}, (0,vuex__WEBPACK_IMPORTED_MODULE_5__.mapState)({\n allLists: function allLists(state) {\n return state.lists.allLists;\n }\n })), {}, {\n inListsSet: function inListsSet() {\n return new Set(this.user.inLists.map(function (x) {\n return x.id;\n }));\n },\n lists: function lists() {\n var _this = this;\n if (!this.user.inLists) return [];\n return this.allLists.map(function (list) {\n return _objectSpread(_objectSpread({}, list), {}, {\n inList: _this.inListsSet.has(list.id)\n });\n });\n }\n }),\n methods: {\n toggleList: function toggleList(listId) {\n var _this2 = this;\n if (this.inListsSet.has(listId)) {\n this.$store.dispatch('removeListAccount', {\n accountId: this.user.id,\n listId: listId\n }).then(function (response) {\n if (!response.ok) {\n return;\n }\n _this2.$store.dispatch('fetchUserInLists', _this2.user.id);\n });\n } else {\n this.$store.dispatch('addListAccount', {\n accountId: this.user.id,\n listId: listId\n }).then(function (response) {\n if (!response.ok) {\n return;\n }\n _this2.$store.dispatch('fetchUserInLists', _this2.user.id);\n });\n }\n },\n toggleRight: function toggleRight(right) {\n var _this3 = this;\n var store = this.$store;\n if (this.user.rights[right]) {\n store.state.api.backendInteractor.deleteRight({\n user: this.user,\n right: right\n }).then(function (response) {\n if (!response.ok) {\n return;\n }\n store.commit('updateRight', {\n user: _this3.user,\n right: right,\n value: false\n });\n });\n } else {\n store.state.api.backendInteractor.addRight({\n user: this.user,\n right: right\n }).then(function (response) {\n if (!response.ok) {\n return;\n }\n store.commit('updateRight', {\n user: _this3.user,\n right: right,\n value: true\n });\n });\n }\n },\n toggleActivationStatus: function toggleActivationStatus() {\n this.$store.dispatch('toggleActivationStatus', {\n user: this.user\n });\n },\n deleteUserDialog: function deleteUserDialog(show) {\n this.showDeleteUserDialog = show;\n },\n deleteUser: function deleteUser() {\n var _this4 = this;\n var store = this.$store;\n var user = this.user;\n var id = user.id,\n name = user.name;\n store.state.api.backendInteractor.deleteUser({\n user: user\n }).then(function (e) {\n _this4.$store.dispatch('markStatusesAsDeleted', function (status) {\n return user.id === status.user.id;\n });\n var isProfile = _this4.$route.name === 'external-user-profile' || _this4.$route.name === 'user-profile';\n var isTargetUser = _this4.$route.params.name === name || _this4.$route.params.id === id;\n if (isProfile && isTargetUser) {\n window.history.back();\n }\n });\n },\n setToggled: function setToggled(value) {\n this.toggled = value;\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (UserListMenu);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL3NyYy9jb21wb25lbnRzL3VzZXJfbGlzdF9tZW51L3VzZXJfbGlzdF9tZW51LmpzP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFBMkQ7QUFDTztBQUNuQztBQUUyQjtBQUNkO0FBRTVDQSwwRUFBVyxDQUFDQyw2RUFBYyxDQUFDO0FBRTNCLElBQU1LLFlBQVksR0FBRztFQUNuQkMsS0FBSyxFQUFFLENBQ0wsTUFBTSxDQUNQO0VBQ0RDLElBQUksV0FBQUEsS0FBQSxFQUFJO0lBQ04sT0FBTyxDQUFDLENBQUM7RUFDWCxDQUFDO0VBQ0RDLFVBQVUsRUFBRTtJQUNWTixXQUFXLEVBQVhBLHNFQUFXO0lBQ1hDLE9BQU8sRUFBUEEsNERBQU9BO0VBQ1QsQ0FBQztFQUNETSxPQUFPLFdBQUFBLFFBQUEsRUFBSTtJQUNULElBQUksQ0FBQ0MsTUFBTSxDQUFDQyxRQUFRLENBQUMsa0JBQWtCLEVBQUUsSUFBSSxDQUFDQyxJQUFJLENBQUNDLEVBQUUsQ0FBQztFQUN4RCxDQUFDO0VBQ0RDLFFBQVEsRUFBQUMsYUFBQSxDQUFBQSxhQUFBLEtBQ0hkLDhDQUFRLENBQUM7SUFDVmUsUUFBUSxFQUFFLFNBQUFBLFNBQUFDLEtBQUs7TUFBQSxPQUFJQSxLQUFLLENBQUNDLEtBQUssQ0FBQ0YsUUFBUTtJQUFBO0VBQ3pDLENBQUMsQ0FBQztJQUNGRyxVQUFVLFdBQUFBLFdBQUEsRUFBSTtNQUNaLE9BQU8sSUFBSUMsR0FBRyxDQUFDLElBQUksQ0FBQ1IsSUFBSSxDQUFDUyxPQUFPLENBQUNDLEdBQUcsQ0FBQyxVQUFBQyxDQUFDO1FBQUEsT0FBSUEsQ0FBQyxDQUFDVixFQUFFO01BQUEsRUFBQyxDQUFDO0lBQ2xELENBQUM7SUFDREssS0FBSyxXQUFBQSxNQUFBLEVBQUk7TUFBQSxJQUFBTSxLQUFBO01BQ1AsSUFBSSxDQUFDLElBQUksQ0FBQ1osSUFB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SSxDQUFDSyxNQUFNLENBQUNFLE1BQU0sQ0FBQ04sSUFBSSxLQUFLQSxJQUFJLElBQUlELE1BQUksQ0FBQ0ssTUFBTSxDQUFDRSxNQUFNLENBQUM5QyxFQUFFLEtBQUtBLEVBQUU7UUFDckYsSUFBSTJDLFNBQVMsSUFBSUUsWUFBWSxFQUFFO1VBQzdCRSxNQUFNLENBQUNDLE9BQU8sQ0FBQ0MsSUFBSSxDQUFDLENBQUM7UUFDdkI7TUFDRixDQUFDLENBQUM7SUFDTixDQUFDO0lBQ0RDLFVBQVUsV0FBQUEsV0FBRWxCLEtBQUssRUFBRTtNQUNqQixJQUFJLENBQUNtQixPQUFPLEdBQUduQixLQUFLO0lBQ3RCO0VBQ0Y7QUFDRixDQUFDO0FBRUQsaUVBQWV4QyxZQUFZIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9jb21wb25lbnRzL3VzZXJfbGlzdF9tZW51L3VzZXJfbGlzdF9tZW51LmpzPzM4MzQiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbGlicmFyeSB9IGZyb20gJ0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1zdmctY29yZSdcbmltcG9ydCB7IGZhQ2hldnJvblJpZ2h0IH0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZyZWUtc29saWQtc3ZnLWljb25zJ1xuaW1wb3J0IHsgbWFwU3RhdGUgfSBmcm9tICd2dWV4J1xuXG5pbXBvcnQgRGlhbG9nTW9kYWwgZnJvbSAnLi4vZGlhbG9nX21vZGFsL2RpYWxvZ19tb2RhbC52dWUnXG5pbXBvcnQgUG9wb3ZlciBmcm9tICcuLi9wb3BvdmVyL3BvcG92ZXIudnVlJ1xuXG5saWJyYXJ5LmFkZChmYUNoZXZyb25SaWdodClcblxuY29uc3QgVXNlckxpc3RNZW51ID0ge1xuICBwcm9wczogW1xuICAgICd1c2VyJ1xuICBdLFxuICBkYXRhICgpIHtcbiAgICByZXR1cm4ge31cbiAgfSxcbiAgY29tcG9uZW50czoge1xuICAgIERpYWxvZ01vZGFsLFxuICAgIFBvcG92ZXJcbiAgfSxcbiAgY3JlYXRlZCAoKSB7XG4gICAgdGhpcy4kc3RvcmUuZGlzcGF0Y2goJ2ZldGNoVXNlckluTGlzdHMnLCB0aGlzLnVzZXIuaWQpXG4gIH0sXG4gIGNvbXB1dGVkOiB7XG4gICAgLi4ubWFwU3RhdGUoe1xuICAgICAgYWxsTGlzdHM6IHN0YXRlID0+IHN0YXRlLmxpc3RzLmFsbExpc3RzXG4gICAgfSksXG4gICAgaW5MaXN0c1NldCAoKSB7XG4gICAgICByZXR1cm4gbmV3IFNldCh0aGlzLnVzZXIuaW5MaXN0cy5tYXAoeCA9PiB4LmlkKSlcbiAgICB9LFxuICAgIGxpc3RzICgpIHtcbiAgICAgIGlmICghdGhpcy51c2VyLmluTGlzdHMpIHJldHVybiBbXVxuICAgICAgcmV0dXJuIHRoaXMuYWxsTGlzdHMubWFwKGxpc3QgPT4gKHtcbiAgICAgICAgLi4ubGlzdCxcbiAgICAgICAgaW5MaXN0OiB0aGlzLmluTGlzdHNTZXQuaGFzKGxpc3QuaWQpXG4gICAgICB9KSlcbiAgICB9XG4gIH0sXG4gIG1ldGhvZHM6IHtcbiAgICB0b2dnbGVMaXN0IChsaXN0SWQpIHtcbiAgICAgIGlmICh0aGlzLmluTGlzdHNTZXQuaGFzKGxpc3RJZCkpIHtcbiAgICAgICAgdGhpcy4kc3RvcmUuZGlzcGF0Y2goJ3JlbW92ZUxpc3RBY2NvdW50JywgeyBhY2NvdW50SWQ6IHRoaXMudXNlci5pZCwgbGlzdElkIH0pLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgaWYgKCFyZXNwb25zZS5vaykgeyByZXR1cm4gfVxuICAgICAgICAgIHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdmZXRjaFVzZXJJbkxpc3RzJywgdGhpcy51c2VyLmlkKVxuICAgICAgICB9KVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy4kc3RvcmUuZGlzcGF0Y2goJ2FkZExpc3RBY2NvdW50JywgeyBhY2NvdW50SWQ6IHRoaXMudXNlci5pZCwgbGlzdElkIH0pLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgaWYgKCFyZXNwb25zZS5vaykgeyByZXR1cm4gfVxuICAgICAgICAgIHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdmZXRjaFVzZXJJbkxpc3RzJywgdGhpcy51c2VyLmlkKVxuICAgICAgICB9KVxuICAgICAgfVxuICAgIH0sXG4gICAgdG9nZ2xlUmlnaHQgKHJpZ2h0KSB7XG4gICAgICBjb25zdCBzdG9yZSA9IHRoaXMuJHN0b3JlXG4gICAgICBpZiAodGhpcy51c2VyLnJpZ2h0c1tyaWdodF0pIHtcbiAgICAgICAgc3RvcmUuc3RhdGUuYXBpLmJhY2tlbmRJbnRlcmFjdG9yLmRlbGV0ZVJpZ2h0KHsgdXNlcjogdGhpcy51c2VyLCByaWdodCB9KS50aGVuKHJlc3BvbnNlID0+IHtcbiAgICAgICAgICBpZiAoIXJlc3BvbnNlLm9rKSB7IHJldHVybiB9XG4gICAgICAgICAgc3RvcmUuY29tbWl0KCd1cGRhdGVSaWdodCcsIHsgdXNlcjogdGhpcy51c2VyLCByaWdodCwgdmFsdWU6IGZhbHNlIH0pXG4gICAgICAgIH0pXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzdG9yZS5zdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IuYWRkUmlnaHQoeyB1c2VyOiB0aGlzLnVzZXIsIHJpZ2h0IH0pLnRoZW4ocmVzcG9uc2UgPT4ge1xuICAgICAgICAgIGlmICghcmVzcG9uc2Uub2spIHsgcmV0dXJuIH1cbiAgICAgICAgICBzdG9yZS5jb21taXQoJ3VwZGF0ZVJpZ2h0JywgeyB1c2VyOiB0aGlzLnVzZXIsIHJpZ2h0LCB2YWx1ZTogdHJ1ZSB9KVxuICAgICAgICB9KVxuICAgICAgfVxuICAgIH0sXG4gICAgdG9nZ2xlQWN0aXZhdGlvblN0YXR1cyAoKSB7XG4gICAgICB0aGlzLiRzdG9yZS5kaXNwYXRjaCgndG9nZ2xlQWN0aXZhdGlvblN0YXR1cycsIHsgdXNlcjogdGhpcy51c2VyIH0pXG4gICAgfSxcbiAgICBkZWxldGVVc2VyRGlhbG9nIChzaG93KSB7XG4gICAgICB0aGlzLnNob3dEZWxldGVVc2VyRGlhbG9nID0gc2hvd1xuICAgIH0sXG4gICAgZGVsZXRlVXNlciAoKSB7XG4gICAgICBjb25zdCBzdG9yZSA9IHRoaXMuJHN0b3JlXG4gICAgICBjb25zdCB1c2VyID0gdGhpcy51c2VyXG4gICAgICBjb25zdCB7IGlkLCBuYW1lIH0gPSB1c2VyXG4gICAgICBzdG9yZS5zdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IuZGVsZXRlVXNlcih7IHVzZXIgfSlcbiAgICAgICAgLnRoZW4oZSA9PiB7XG4gICAgICAgICAgdGhpcy4kc3RvcmUuZGlzcGF0Y2goJ21hcmtTdGF0dXNlc0FzRGVsZXRlZCcsIHN0YXR1cyA9PiB1c2VyLmlkID09PSBzdGF0dXMudXNlci5pZClcbiAgICAgICAgICBjb25zdCBpc1Byb2ZpbGUgPSB0aGlzLiRyb3V0ZS5uYW1lID09PSAnZXh0ZXJuYWwtdXNlci1wcm9maWxlJyB8fCB0aGlzLiRyb3V0ZS5uYW1lID09PSAndXNlci1wcm9maWxlJ1xuICAgICAgICAgIGNvbnN0IGlzVGFyZ2V0VXNlciA9IHRoaXMuJHJvdXRlLnBhcmFtcy5uYW1lID09PSBuYW1lIHx8IHRoaXMuJHJvdXRlLnBhcmFtcy5pZCA9PT0gaWRcbiAgICAgICAgICBpZiAoaXNQcm9maWxlICYmIGlzVGFyZ2V0VXNlcikge1xuICAgICAgICAgICAgd2luZG93Lmhpc3RvcnkuYmFjaygpXG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgIH0sXG4gICAgc2V0VG9nZ2xlZCAodmFsdWUpIHtcbiAgICAgIHRoaXMudG9nZ2xlZCA9IHZhbHVlXG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IFVzZXJMaXN0TWVudVxuIl0sIm5hbWVzIjpbImxpYnJhcnkiLCJmYUNoZXZyb25SaWdodCIsIm1hcFN0YXRlIiwiRGlhbG9nTW9kYWwiLCJQb3BvdmVyIiwiYWRkIiwiVXNlckxpc3RNZW51IiwicHJvcHMiLCJkYXRhIiwiY29tcG9uZW50cyIsImNyZWF0ZWQiLCIkc3RvcmUiLCJkaXNwYXRjaCIsInVzZXIiLCJpZCIsImNvbXB1dGVkIiwiX29iamVjdFNwcmVhZCIsImFsbExpc3RzIiwic3RhdGUiLCJsaXN0cyIsImluTGlzdHNTZXQiLCJTZXQiLCJpbkxpc3RzIiwibWFwIiwieCIsIl90aGlzIiwibGlzdCIsImluTGlzdCIsImhhcyIsIm1ldGhvZHMiLCJ0b2dnbGVMaXN0IiwibGlzdElkIiwiX3RoaXMyIiwiYWNjb3VudElkIiwidGhlbiIsInJlc3BvbnNlIiwib2siLCJ0b2dnbGVSaWdodCIsInJpZ2h0IiwiX3RoaXMzIiwic3RvcmUiLCJyaWdodHMiLCJhcGkiLCJiYWNrZW5kSW50ZXJhY3RvciIsImRlbGV0ZVJpZ2h0IiwiY29tbWl0IiwidmFsdWUiLCJhZGRSaWdodCIsInRvZ2dsZUFjdGl2YXRpb25TdGF0dXMiLCJkZWxldGVVc2VyRGlhbG9nIiwic2hvdyIsInNob3dEZWxldGVVc2VyRGlhbG9nIiwiZGVsZXRlVXNlciIsIl90aGlzNCIsIm5hbWUiLCJlIiwic3RhdHVzIiwiaXNQcm9maWxlIiwiJHJvdXRlIiwiaXNUYXJnZXRVc2VyIiwicGFyYW1zIiwid2luZG93IiwiaGlzdG9yeSIsImJhY2siLCJzZXRUb2dnbGVkIiwidG9nZ2xlZCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./src/components/user_list_menu/user_list_menu.js?vue&type=script&lang=js\n");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js!./src/components/user_list_popover/user_list_popover.js?vue&type=script&lang=js":
/*!********************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js!./src/components/user_list_popover/user_list_popover.js?vue&type=script&lang=js ***!
\********************************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.runtime.esm-bundler.js\");\n/* harmony import */ var src_components_rich_content_rich_content_jsx__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! src/components/rich_content/rich_content.jsx */ \"./src/components/rich_content/rich_content.jsx\");\n/* harmony import */ var _unicode_domain_indicator_unicode_domain_indicator_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../unicode_domain_indicator/unicode_domain_indicator.vue */ \"./src/components/unicode_domain_indicator/unicode_domain_indicator.vue\");\n/* harmony import */ var _fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @fortawesome/fontawesome-svg-core */ \"./node_modules/@fortawesome/fontawesome-svg-core/index.mjs\");\n/* harmony import */ var _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @fortawesome/free-solid-svg-icons */ \"./node_modules/@fortawesome/free-solid-svg-icons/index.mjs\");\n\n\n\n\n\n_fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_3__.library.add(_fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_4__.faCircleNotch);\nvar UserListPopover = {\n name: 'UserListPopover',\n props: ['users'],\n components: {\n RichContent: src_components_rich_content_rich_content_jsx__WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n UnicodeDomainIndicator: _unicode_domain_indicator_unicode_domain_indicator_vue__WEBPACK_IMPORTED_MODULE_2__[\"default\"],\n Popover: (0,vue__WEBPACK_IMPORTED_MODULE_0__.defineAsyncComponent)(function () {\n return Promise.resolve(/*! import() */).then(__webpack_require__.bind(__webpack_require__, /*! ../popover/popover.vue */ \"./src/components/popover/popover.vue\"));\n }),\n UserAvatar: (0,vue__WEBPACK_IMPORTED_MODULE_0__.defineAsyncComponent)(function () {\n return Promise.resolve(/*! import() */).then(__webpack_require__.bind(__webpack_require__, /*! ../user_avatar/user_avatar.vue */ \"./src/components/user_avatar/user_avatar.vue\"));\n })\n },\n computed: {\n usersCapped: function usersCapped() {\n return this.users.slice(0, 16);\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (UserListPopover);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL3NyYy9jb21wb25lbnRzL3VzZXJfbGlzdF9wb3BvdmVyL3VzZXJfbGlzdF9wb3BvdmVyLmpzP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUEwQztBQUM0QjtBQUN1QjtBQUVsQztBQUNNO0FBRWpFRywwRUFBVyxDQUNUQyw0RUFDRixDQUFDO0FBRUQsSUFBTUUsZUFBZSxHQUFHO0VBQ3RCQyxJQUFJLEVBQUUsaUJBQWlCO0VBQ3ZCQyxLQUFLLEVBQUUsQ0FDTCxPQUFPLENBQ1I7RUFDREMsVUFBVSxFQUFFO0lBQ1ZSLFdBQVcsRUFBWEEsb0ZBQVc7SUFDWEMsc0JBQXNCLEVBQXRCQSw4RkFBc0I7SUFDdEJRLE9BQU8sRUFBRVYseURBQW9CLENBQUM7TUFBQSxPQUFNLDBKQUFnQztJQUFBLEVBQUM7SUFDckVXLFVBQVUsRUFBRVgseURBQW9CLENBQUM7TUFBQSxPQUFNLDBLQUF3QztJQUFBO0VBQ2pGLENBQUM7RUFDRFksUUFBUSxFQUFFO0lBQ1JDLFdBQVcsV0FBQUEsWUFBQSxFQUFJO01BQ2IsT0FBTyxJQUFJLENBQUNDLEtBQUssQ0FBQ0MsS0FBSyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUM7SUFDaEM7RUFDRjtBQUNGLENBQUM7QUFFRCxpRUFBZVQsZUFBZSIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvY29tcG9uZW50cy91c2VyX2xpc3RfcG9wb3Zlci91c2VyX2xpc3RfcG9wb3Zlci5qcz9iNjdjIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGRlZmluZUFzeW5jQ29tcG9uZW50IH0gZnJvbSAndnVlJ1xuaW1wb3J0IFJpY2hDb250ZW50IGZyb20gJ3NyYy9jb21wb25lbnRzL3JpY2hfY29udGVudC9yaWNoX2NvbnRlbnQuanN4J1xuaW1wb3J0IFVuaWNvZGVEb21haW5JbmRpY2F0b3IgZnJvbSAnLi4vdW5pY29kZV9kb21haW5faW5kaWNhdG9yL3VuaWNvZGVfZG9tYWluX2luZGljYXRvci52dWUnXG5cbmltcG9ydCB7IGxpYnJhcnkgfSBmcm9tICdAZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtc3ZnLWNvcmUnXG5pbXBvcnQgeyBmYUNpcmNsZU5vdGNoIH0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZyZWUtc29saWQtc3ZnLWljb25zJ1xuXG5saWJyYXJ5LmFkZChcbiAgZmFDaXJjbGVOb3RjaFxuKVxuXG5jb25zdCBVc2VyTGlzdFBvcG92ZXIgPSB7XG4gIG5hbWU6ICdVc2VyTGlzdFBvcG92ZXInLFxuICBwcm9wczogW1xuICAgICd1c2VycydcbiAgXSxcbiAgY29tcG9uZW50czoge1xuICAgIFJpY2hDb250ZW50LFxuICAgIFVuaWNvZGVEb21haW5JbmRpY2F0b3IsXG4gICAgUG9wb3ZlcjogZGVmaW5lQXN5bmNDb21wb25lbnQoKCkgPT4gaW1wb3J0KCcuLi9wb3BvdmVyL3BvcG92ZXIudnVlJykpLFxuICAgIFVzZXJBdmF0YXI6IGRlZmluZUFzeW5jQ29tcG9uZW50KCgpID0+IGltcG9ydCgnLi4vdXNlcl9hdmF0YXIvdXNlcl9hdmF0YXIudnVlJykpXG4gIH0sXG4gIGNvbXB1dGVkOiB7XG4gICAgdXNlcnNDYXBwZWQgKCkge1xuICAgICAgcmV0dXJuIHRoaXMudXNlcnMuc2xpY2UoMCwgMTYpXG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IFVzZXJMaXN0UG9wb3ZlclxuIl0sIm5hbWVzIjpbImRlZmluZUFzeW5jQ29tcG9uZW50IiwiUmljaENvbnRlbnQiLCJVbmljb2RlRG9tYWluSW5kaWNhdG9yIiwibGlicmFyeSIsImZhQ2lyY2xlTm90Y2giLCJhZGQiLCJVc2VyTGlzdFBvcG92ZXIiLCJuYW1lIiwicHJvcHMiLCJjb21wb25lbnRzIiwiUG9wb3ZlciIsIlVzZXJBdmF0YXIiLCJjb21wdXRlZCIsInVzZXJzQ2FwcGVkIiwidXNlcnMiLCJzbGljZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./src/components/user_list_popover/user_list_popover.js?vue&type=script&lang=js\n");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js!./src/components/user_note/user_note.js?vue&type=script&lang=js":
/*!****************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js!./src/components/user_note/user_note.js?vue&type=script&lang=js ***!
\****************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\nvar UserNote = {\n props: {\n user: Object,\n relationship: Object,\n editable: Boolean\n },\n data: function data() {\n return {\n localNote: '',\n editing: false,\n frozen: false\n };\n },\n computed: {\n shouldShow: function shouldShow() {\n return this.relationship.note || this.editing;\n }\n },\n methods: {\n startEditing: function startEditing() {\n this.localNote = this.relationship.note;\n this.editing = true;\n },\n cancelEditing: function cancelEditing() {\n this.editing = false;\n },\n finalizeEditing: function finalizeEditing() {\n var _this = this;\n this.frozen = true;\n this.$store.dispatch('editUserNote', {\n id: this.user.id,\n comment: this.localNote\n }).then(function () {\n _this.frozen = false;\n _this.editing = false;\n })[\"catch\"](function () {\n _this.frozen = false;\n });\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (UserNote);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL3NyYy9jb21wb25lbnRzL3VzZXJfbm90ZS91c2VyX25vdGUuanM/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMuanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBLElBQU1BLFFBQVEsR0FBRztFQUNmQyxLQUFLLEVBQUU7SUFDTEMsSUFBSSxFQUFFQyxNQUFNO0lBQ1pDLFlBQVksRUFBRUQsTUFBTTtJQUNwQkUsUUFBUSxFQUFFQztFQUNaLENBQUM7RUFDREMsSUFBSSxXQUFBQSxLQUFBLEVBQUk7SUFDTixPQUFPO01BQ0xDLFNBQVMsRUFBRSxFQUFFO01BQ2JDLE9BQU8sRUFBRSxLQUFLO01BQ2RDLE1BQU0sRUFBRTtJQUNWLENBQUM7RUFDSCxDQUFDO0VBQ0RDLFFBQVEsRUFBRTtJQUNSQyxVQUFVLFdBQUFBLFdBQUEsRUFBSTtNQUNaLE9BQU8sSUFBSSxDQUFDUixZQUFZLENBQUNTLElBQUksSUFBSSxJQUFJLENBQUNKLE9BQU87SUFDL0M7RUFDRixDQUFDO0VBQ0RLLE9BQU8sRUFBRTtJQUNQQyxZQUFZLFdBQUFBLGFBQUEsRUFBSTtNQUNkLElBQUksQ0FBQ1AsU0FBUyxHQUFHLElBQUksQ0FBQ0osWUFBWSxDQUFDUyxJQUFJO01BQ3ZDLElBQUksQ0FBQ0osT0FBTyxHQUFHLElBQUk7SUFDckIsQ0FBQztJQUNETyxhQUFhLFdBQUFBLGNBQUEsRUFBSTtNQUNmLElBQUksQ0FBQ1AsT0FBTyxHQUFHLEtBQUs7SUFDdEIsQ0FBQztJQUNEUSxlQUFlLFdBQUFBLGdCQUFBLEVBQUk7TUFBQSxJQUFBQyxLQUFBO01BQ2pCLElBQUksQ0FBQ1IsTUFBTSxHQUFHLElBQUk7TUFFbEIsSUFBSSxDQUFDUyxNQUFNLENBQUNDLFFBQVEsQ0FBQyxjQUFjLEVBQUU7UUFDbkNDLEVBQUUsRUFBRSxJQUFJLENBQUNuQixJQUFJLENBQUNtQixFQUFFO1FBQ2hCQyxPQUFPLEVBQUUsSUFBSSxDQUFDZDtNQUNoQixDQUFDLENBQUMsQ0FDQ2UsSUFBSSxDQUFDLFlBQU07UUFDVkwsS0FBSSxDQUFDUixNQUFNLEdBQUcsS0FBSztRQUNuQlEsS0FBSSxDQUFDVCxPQUFPLEdBQUcsS0FBSztNQUN0QixDQUFDLENBQUMsU0FDSSxDQUFDLFlBQU07UUFDWFMsS0FBSSxDQUFDUixNQUFNLEdBQUcsS0FBSztNQUNyQixDQUFDLENBQUM7SUFDTjtFQUNGO0FBQ0YsQ0FBQztBQUVELGlFQUFlVixRQUFRIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9jb21wb25lbnRzL3VzZXJfbm90ZS91c2VyX25vdGUuanM/YzkzMiJdLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBVc2VyTm90ZSA9IHtcbiAgcHJvcHM6IHtcbiAgICB1c2VyOiBPYmplY3QsXG4gICAgcmVsYXRpb25zaGlwOiBPYmplY3QsXG4gICAgZWRpdGFibGU6IEJvb2xlYW5cbiAgfSxcbiAgZGF0YSAoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGxvY2FsTm90ZTogJycsXG4gICAgICBlZGl0aW5nOiBmYWxzZSxcbiAgICAgIGZyb3plbjogZmFsc2VcbiAgICB9XG4gIH0sXG4gIGNvbXB1dGVkOiB7XG4gICAgc2hvdWxkU2hvdyAoKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZWxhdGlvbnNoaXAubm90ZSB8fCB0aGlzLmVkaXRpbmdcbiAgICB9XG4gIH0sXG4gIG1ldGhvZHM6IHtcbiAgICBzdGFydEVkaXRpbmcgKCkge1xuICAgICAgdGhpcy5sb2NhbE5vdGUgPSB0aGlzLnJlbGF0aW9uc2hpcC5ub3RlXG4gICAgICB0aGlzLmVkaXRpbmcgPSB0cnVlXG4gICAgfSxcbiAgICBjYW5jZWxFZGl0aW5nICgpIHtcbiAgICAgIHRoaXMuZWRpdGluZyA9IGZhbHNlXG4gICAgfSxcbiAgICBmaW5hbGl6ZUVkaXRpbmcgKCkge1xuICAgICAgdGhpcy5mcm96ZW4gPSB0cnVlXG5cbiAgICAgIHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdlZGl0VXNlck5vdGUnLCB7XG4gICAgICAgIGlkOiB0aGlzLnVzZXIuaWQsXG4gICAgICAgIGNvbW1lbnQ6IHRoaXMubG9jYWxOb3RlXG4gICAgICB9KVxuICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgdGhpcy5mcm96ZW4gPSBmYWxzZVxuICAgICAgICAgIHRoaXMuZWRpdGluZyA9IGZhbHNlXG4gICAgICAgIH0pXG4gICAgICAgIC5jYXRjaCgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5mcm96ZW4gPSBmYWxzZVxuICAgICAgICB9KVxuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBVc2VyTm90ZVxuIl0sIm5hbWVzIjpbIlVzZXJOb3RlIiwicHJvcHMiLCJ1c2VyIiwiT2JqZWN0IiwicmVsYXRpb25zaGlwIiwiZWRpdGFibGUiLCJCb29sZWFuIiwiZGF0YSIsImxvY2FsTm90ZSIsImVkaXRpbmciLCJmcm96ZW4iLCJjb21wdXRlZCIsInNob3VsZFNob3ciLCJub3RlIiwibWV0aG9kcyIsInN0YXJ0RWRpdGluZyIsImNhbmNlbEVkaXRpbmciLCJmaW5hbGl6ZUVkaXRpbmciLCJfdGhpcyIsIiRzdG9yZSIsImRpc3BhdGNoIiwiaWQiLCJjb21tZW50IiwidGhlbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./src/components/user_note/user_note.js?vue&type=script&lang=js\n");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js!./src/components/user_panel/user_panel.js?vue&type=script&lang=js":
/*!******************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js!./src/components/user_panel/user_panel.js?vue&type=script&lang=js ***!
\******************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"./node_modules/@babel/runtime/helpers/esm/defineProperty.js\");\n/* harmony import */ var _auth_form_auth_form_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../auth_form/auth_form.js */ \"./src/components/auth_form/auth_form.js\");\n/* harmony import */ var _post_status_form_post_status_form_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../post_status_form/post_status_form.vue */ \"./src/components/post_status_form/post_status_form.vue\");\n/* harmony import */ var _user_card_user_card_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../user_card/user_card.vue */ \"./src/components/user_card/user_card.vue\");\n/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.esm-bundler.js\");\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\n\n\nvar UserPanel = {\n computed: _objectSpread({\n signedIn: function signedIn() {\n return this.user;\n }\n }, (0,vuex__WEBPACK_IMPORTED_MODULE_4__.mapState)({\n user: function user(state) {\n return state.users.currentUser;\n }\n })),\n components: {\n AuthForm: _auth_form_auth_form_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n PostStatusForm: _post_status_form_post_status_form_vue__WEBPACK_IMPORTED_MODULE_2__[\"default\"],\n UserCard: _user_card_user_card_vue__WEBPACK_IMPORTED_MODULE_3__[\"default\"]\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (UserPanel);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL3NyYy9jb21wb25lbnRzL3VzZXJfcGFuZWwvdXNlcl9wYW5lbC5qcz92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBZ0Q7QUFDcUI7QUFDcEI7QUFDbEI7QUFFL0IsSUFBTUksU0FBUyxHQUFHO0VBQ2hCQyxRQUFRLEVBQUFDLGFBQUE7SUFDTkMsUUFBUSxXQUFBQSxTQUFBLEVBQUk7TUFBRSxPQUFPLElBQUksQ0FBQ0MsSUFBSTtJQUFDO0VBQUMsR0FDN0JMLDhDQUFRLENBQUM7SUFBRUssSUFBSSxFQUFFLFNBQUFBLEtBQUFDLEtBQUs7TUFBQSxPQUFJQSxLQUFLLENBQUNDLEtBQUssQ0FBQ0MsV0FBVztJQUFBO0VBQUMsQ0FBQyxDQUFDLENBQ3hEO0VBQ0RDLFVBQVUsRUFBRTtJQUNWWixRQUFRLEVBQVJBLCtEQUFRO0lBQ1JDLGNBQWMsRUFBZEEsOEVBQWM7SUFDZEMsUUFBUSxFQUFSQSxnRUFBUUE7RUFDVjtBQUNGLENBQUM7QUFFRCxpRUFBZUUsU0FBUyIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvY29tcG9uZW50cy91c2VyX3BhbmVsL3VzZXJfcGFuZWwuanM/YTc3OCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQXV0aEZvcm0gZnJvbSAnLi4vYXV0aF9mb3JtL2F1dGhfZm9ybS5qcydcbmltcG9ydCBQb3N0U3RhdHVzRm9ybSBmcm9tICcuLi9wb3N0X3N0YXR1c19mb3JtL3Bvc3Rfc3RhdHVzX2Zvcm0udnVlJ1xuaW1wb3J0IFVzZXJDYXJkIGZyb20gJy4uL3VzZXJfY2FyZC91c2VyX2NhcmQudnVlJ1xuaW1wb3J0IHsgbWFwU3RhdGUgfSBmcm9tICd2dWV4J1xuXG5jb25zdCBVc2VyUGFuZWwgPSB7XG4gIGNvbXB1dGVkOiB7XG4gICAgc2lnbmVkSW4gKCkgeyByZXR1cm4gdGhpcy51c2VyIH0sXG4gICAgLi4ubWFwU3RhdGUoeyB1c2VyOiBzdGF0ZSA9PiBzdGF0ZS51c2Vycy5jdXJyZW50VXNlciB9KVxuICB9LFxuICBjb21wb25lbnRzOiB7XG4gICAgQXV0aEZvcm0sXG4gICAgUG9zdFN0YXR1c0Zvcm0sXG4gICAgVXNlckNhcmRcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBVc2VyUGFuZWxcbiJdLCJuYW1lcyI6WyJBdXRoRm9ybSIsIlBvc3RTdGF0dXNGb3JtIiwiVXNlckNhcmQiLCJtYXBTdGF0ZSIsIlVzZXJQYW5lbCIsImNvbXB1dGVkIiwiX29iamVjdFNwcmVhZCIsInNpZ25lZEluIiwidXNlciIsInN0YXRlIiwidXNlcnMiLCJjdXJyZW50VXNlciIsImNvbXBvbmVudHMiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./src/components/user_panel/user_panel.js?vue&type=script&lang=js\n");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js!./src/components/user_popover/user_popover.js?vue&type=script&lang=js":
/*!**********************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js!./src/components/user_popover/user_popover.js?vue&type=script&lang=js ***!
\**********************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _user_card_user_card_vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../user_card/user_card.vue */ \"./src/components/user_card/user_card.vue\");\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.runtime.esm-bundler.js\");\n\n\nvar UserPopover = {\n name: 'UserPopover',\n props: ['userId', 'overlayCenters', 'disabled', 'overlayCentersSelector'],\n components: {\n UserCard: _user_card_user_card_vue__WEBPACK_IMPORTED_MODULE_0__[\"default\"],\n Popover: (0,vue__WEBPACK_IMPORTED_MODULE_1__.defineAsyncComponent)(function () {\n return Promise.resolve(/*! import() */).then(__webpack_require__.bind(__webpack_require__, /*! ../popover/popover.vue */ \"./src/components/popover/popover.vue\"));\n })\n },\n computed: {\n userPopoverAvatarAction: function userPopoverAvatarAction() {\n return this.$store.getters.mergedConfig.userPopoverAvatarAction;\n },\n userPopoverOverlay: function userPopoverOverlay() {\n return this.$store.getters.mergedConfig.userPopoverOverlay;\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (UserPopover);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL3NyYy9jb21wb25lbnRzL3VzZXJfcG9wb3Zlci91c2VyX3BvcG92ZXIuanM/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQWlEO0FBQ1A7QUFFMUMsSUFBTUUsV0FBVyxHQUFHO0VBQ2xCQyxJQUFJLEVBQUUsYUFBYTtFQUNuQkMsS0FBSyxFQUFFLENBQ0wsUUFBUSxFQUFFLGdCQUFnQixFQUFFLFVBQVUsRUFBRSx3QkFBd0IsQ0FDakU7RUFDREMsVUFBVSxFQUFFO0lBQ1ZMLFFBQVEsRUFBUkEsZ0VBQVE7SUFDUk0sT0FBTyxFQUFFTCx5REFBb0IsQ0FBQztNQUFBLE9BQU0sMEpBQWdDO0lBQUE7RUFDdEUsQ0FBQztFQUNETSxRQUFRLEVBQUU7SUFDUkMsdUJBQXVCLFdBQUFBLHdCQUFBLEVBQUk7TUFDekIsT0FBTyxJQUFJLENBQUNDLE1BQU0sQ0FBQ0MsT0FBTyxDQUFDQyxZQUFZLENBQUNILHVCQUF1QjtJQUNqRSxDQUFDO0lBQ0RJLGtCQUFrQixXQUFBQSxtQkFBQSxFQUFJO01BQ3BCLE9BQU8sSUFBSSxDQUFDSCxNQUFNLENBQUNDLE9BQU8sQ0FBQ0MsWUFBWSxDQUFDQyxrQkFBa0I7SUFDNUQ7RUFDRjtBQUNGLENBQUM7QUFFRCxpRUFBZVYsV0FBVyIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvY29tcG9uZW50cy91c2VyX3BvcG92ZXIvdXNlcl9wb3BvdmVyLmpzPzU1MDUiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFVzZXJDYXJkIGZyb20gJy4uL3VzZXJfY2FyZC91c2VyX2NhcmQudnVlJ1xuaW1wb3J0IHsgZGVmaW5lQXN5bmNDb21wb25lbnQgfSBmcm9tICd2dWUnXG5cbmNvbnN0IFVzZXJQb3BvdmVyID0ge1xuICBuYW1lOiAnVXNlclBvcG92ZXInLFxuICBwcm9wczogW1xuICAgICd1c2VySWQnLCAnb3ZlcmxheUNlbnRlcnMnLCAnZGlzYWJsZWQnLCAnb3ZlcmxheUNlbnRlcnNTZWxlY3RvcidcbiAgXSxcbiAgY29tcG9uZW50czoge1xuICAgIFVzZXJDYXJkLFxuICAgIFBvcG92ZXI6IGRlZmluZUFzeW5jQ29tcG9uZW50KCgpID0+IGltcG9ydCgnLi4vcG9wb3Zlci9wb3BvdmVyLnZ1ZScpKVxuICB9LFxuICBjb21wdXRlZDoge1xuICAgIHVzZXJQb3BvdmVyQXZhdGFyQWN0aW9uICgpIHtcbiAgICAgIHJldHVybiB0aGlzLiRzdG9yZS5nZXR0ZXJzLm1lcmdlZENvbmZpZy51c2VyUG9wb3ZlckF2YXRhckFjdGlvblxuICAgIH0sXG4gICAgdXNlclBvcG92ZXJPdmVybGF5ICgpIHtcbiAgICAgIHJldHVybiB0aGlzLiRzdG9yZS5nZXR0ZXJzLm1lcmdlZENvbmZpZy51c2VyUG9wb3Zlck92ZXJsYXlcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgVXNlclBvcG92ZXJcbiJdLCJuYW1lcyI6WyJVc2VyQ2FyZCIsImRlZmluZUFzeW5jQ29tcG9uZW50IiwiVXNlclBvcG92ZXIiLCJuYW1lIiwicHJvcHMiLCJjb21wb25lbnRzIiwiUG9wb3ZlciIsImNvbXB1dGVkIiwidXNlclBvcG92ZXJBdmF0YXJBY3Rpb24iLCIkc3RvcmUiLCJnZXR0ZXJzIiwibWVyZ2VkQ29uZmlnIiwidXNlclBvcG92ZXJPdmVybGF5Il0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./src/components/user_popover/user_popover.js?vue&type=script&lang=js\n");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js!./src/components/user_profile/user_profile.js?vue&type=script&lang=js":
/*!**********************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js!./src/components/user_profile/user_profile.js?vue&type=script&lang=js ***!
\**********************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var lodash_get__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/get */ \"./node_modules/lodash/get.js\");\n/* harmony import */ var lodash_get__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_get__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _user_card_user_card_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../user_card/user_card.vue */ \"./src/components/user_card/user_card.vue\");\n/* harmony import */ var _follow_card_follow_card_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../follow_card/follow_card.vue */ \"./src/components/follow_card/follow_card.vue\");\n/* harmony import */ var _timeline_timeline_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../timeline/timeline.vue */ \"./src/components/timeline/timeline.vue\");\n/* harmony import */ var _conversation_conversation_vue__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../conversation/conversation.vue */ \"./src/components/conversation/conversation.vue\");\n/* harmony import */ var src_components_tab_switcher_tab_switcher_jsx__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! src/components/tab_switcher/tab_switcher.jsx */ \"./src/components/tab_switcher/tab_switcher.jsx\");\n/* harmony import */ var src_components_rich_content_rich_content_jsx__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! src/components/rich_content/rich_content.jsx */ \"./src/components/rich_content/rich_content.jsx\");\n/* harmony import */ var _list_list_vue__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../list/list.vue */ \"./src/components/list/list.vue\");\n/* harmony import */ var _hocs_with_load_more_with_load_more__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../hocs/with_load_more/with_load_more */ \"./src/hocs/with_load_more/with_load_more.jsx\");\n/* harmony import */ var src_services_locale_locale_service_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! src/services/locale/locale.service.js */ \"./src/services/locale/locale.service.js\");\n/* harmony import */ var _fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @fortawesome/fontawesome-svg-core */ \"./node_modules/@fortawesome/fontawesome-svg-core/index.mjs\");\n/* harmony import */ var _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @fortawesome/free-solid-svg-icons */ \"./node_modules/@fortawesome/free-solid-svg-icons/index.mjs\");\n\n\n\n\n\n\n\n\n\n\n\n\n_fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_10__.library.add(_fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_11__.faCircleNotch, _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_11__.faBirthdayCake);\nvar FollowerList = (0,_hocs_with_load_more_with_load_more__WEBPACK_IMPORTED_MODULE_8__[\"default\"])({\n fetch: function fetch(props, $store) {\n return $store.dispatch('fetchFollowers', props.userId);\n },\n select: function select(props, $store) {\n return lodash_get__WEBPACK_IMPORTED_MODULE_0___default()($store.getters.findUser(props.userId), 'followerIds', []).map(function (id) {\n return $store.getters.findUser(id);\n });\n },\n destroy: function destroy(props, $store) {\n return $store.dispatch('clearFollowers', props.userId);\n },\n childPropName: 'items',\n additionalPropNames: ['userId']\n})(_list_list_vue__WEBPACK_IMPORTED_MODULE_7__[\"default\"]);\nvar FriendList = (0,_hocs_with_load_more_with_load_more__WEBPACK_IMPORTED_MODULE_8__[\"default\"])({\n fetch: function fetch(props, $store) {\n return $store.dispatch('fetchFriends', props.userId);\n },\n select: function select(props, $store) {\n return lodash_get__WEBPACK_IMPORTED_MODULE_0___default()($store.getters.findUser(props.userId), 'friendIds', []).map(function (id) {\n return $store.getters.findUser(id);\n });\n },\n destroy: function destroy(props, $store) {\n return $store.dispatch('clearFriends', props.userId);\n },\n childPropName: 'items',\n additionalPropNames: ['userId']\n})(_list_list_vue__WEBPACK_IMPORTED_MODULE_7__[\"default\"]);\nvar defaultTabKey = 'statuses';\nvar UserProfile = {\n data: function data() {\n return {\n error: false,\n userId: null,\n tab: defaultTabKey,\n footerRef: null\n };\n },\n created: function created() {\n var routeParams = this.$route.params;\n this.load({\n name: routeParams.name,\n id: routeParams.id\n });\n this.tab = lodash_get__WEBPACK_IMPORTED_MODULE_0___default()(this.$route, 'query.tab', defaultTabKey);\n },\n unmounted: function unmounted() {\n this.stopFetching();\n },\n computed: {\n timeline: function timeline() {\n return this.$store.state.statuses.timelines.user;\n },\n favorites: function favorites() {\n return this.$store.state.statuses.timelines.favorites;\n },\n media: function media() {\n return this.$store.state.statuses.timelines.media;\n },\n isUs: function isUs() {\n return this.userId && this.$store.state.users.currentUser.id && this.userId === this.$store.state.users.currentUser.id;\n },\n user: function user() {\n return this.$store.getters.findUser(this.userId);\n },\n isExternal: function isExternal() {\n return this.$route.name === 'external-user-profile';\n },\n followsTabVisible: function followsTabVisible() {\n return this.isUs || !this.user.hide_follows;\n },\n followersTabVisible: function followersTabVisible() {\n return this.isUs || !this.user.hide_followers;\n },\n formattedBirthday: function formattedBirthday() {\n var browserLocale = src_services_locale_locale_service_js__WEBPACK_IMPORTED_MODULE_9__[\"default\"].internalToBrowserLocale(this.$i18n.locale);\n return this.user.birthday && new Date(Date.parse(this.user.birthday)).toLocaleDateString(browserLocale, {\n timeZone: 'UTC',\n day: 'numeric',\n month: 'long',\n year: 'numeric'\n });\n }\n },\n methods: {\n setFooterRef: function setFooterRef(el) {\n this.footerRef = el;\n },\n load: function load(userNameOrId) {\n var _this = this;\n var startFetchingTimeline = function startFetchingTimeline(timeline, userId) {\n // Clear timeline only if load another user's profile\n if (userId !== _this.$store.state.statuses.timelines[timeline].userId) {\n _this.$store.commit('clearTimeline', {\n timeline: timeline\n });\n }\n _this.$store.dispatch('startFetchingTimeline', {\n timeline: timeline,\n userId: userId\n });\n };\n var loadById = function loadById(userId) {\n _this.userId = userId;\n startFetchingTimeline('user', userId);\n startFetchingTimeline('media', userId);\n if (_this.isUs) {\n startFetchingTimeline('favorites', userId);\n }\n // Fetch all pinned statuses immediately\n _this.$store.dispatch('fetchPinnedStatuses', userId);\n };\n\n // Reset view\n this.userId = null;\n this.error = false;\n var maybeId = userNameOrId.id;\n var maybeName = userNameOrId.name;\n\n // Check if user data is already loaded in store\n var user = maybeId ? this.$store.getters.findUser(maybeId) : this.$store.getters.findUserByName(maybeName);\n if (user) {\n loadById(user.id);\n } else {\n (maybeId ? this.$store.dispatch('fetchUser', maybeId) : this.$store.dispatch('fetchUserByName', maybeName)).then(function (_ref) {\n var id = _ref.id;\n return loadById(id);\n })[\"catch\"](function (reason) {\n var errorMessage = lodash_get__WEBPACK_IMPORTED_MODULE_0___default()(reason, 'error.error');\n if (errorMessage === 'No user with such user_id') {\n // Known error\n _this.error = _this.$t('user_profile.profile_does_not_exist');\n } else if (errorMessage) {\n _this.error = errorMessage;\n } else {\n _this.error = _this.$t('user_profile.profile_loading_error');\n }\n });\n }\n },\n stopFetching: function stopFetching() {\n this.$store.dispatch('stopFetchingTimeline', 'user');\n this.$store.dispatch('stopFetchingTimeline', 'favorites');\n this.$store.dispatch('stopFetchingTimeline', 'media');\n },\n switchUser: function switchUser(userNameOrId) {\n this.stopFetching();\n this.load(userNameOrId);\n },\n onTabSwitch: function onTabSwitch(tab) {\n this.tab = tab;\n this.$router.replace({\n query: {\n tab: tab\n }\n });\n },\n linkClicked: function linkClicked(_ref2) {\n var target = _ref2.target;\n if (target.tagName === 'SPAN') {\n target = target.parentNode;\n }\n if (target.tagName === 'A') {\n window.open(target.href, '_blank');\n }\n }\n },\n watch: {\n '$route.params.id': function $routeParamsId(newVal) {\n if (newVal) {\n this.switchUser({\n id: newVal\n });\n }\n },\n '$route.params.name': function $routeParamsName(newVal) {\n if (newVal) {\n this.switchUser({\n name: newVal\n });\n }\n },\n '$route.query': function $routeQuery(newVal) {\n this.tab = newVal.tab || defaultTabKey;\n }\n },\n components: {\n UserCard: _user_card_user_card_vue__WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n Timeline: _timeline_timeline_vue__WEBPACK_IMPORTED_MODULE_3__[\"default\"],\n FollowerList: FollowerList,\n FriendList: FriendList,\n FollowCard: _follow_card_follow_card_vue__WEBPACK_IMPORTED_MODULE_2__[\"default\"],\n TabSwitcher: src_components_tab_switcher_tab_switcher_jsx__WEBPACK_IMPORTED_MODULE_5__[\"default\"],\n Conversation: _conversation_conversation_vue__WEBPACK_IMPORTED_MODULE_4__[\"default\"],\n RichContent: src_components_rich_content_rich_content_jsx__WEBPACK_IMPORTED_MODULE_6__[\"default\"]\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (UserProfile);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL3NyYy9jb21wb25lbnRzL3VzZXJfcHJvZmlsZS91c2VyX3Byb2ZpbGUuanM/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBNEI7QUFDcUI7QUFDTTtBQUNSO0FBQ1k7QUFDVztBQUNBO0FBQ25DO0FBQ2dDO0FBQ0Y7QUFDTjtBQUlqQjtBQUUxQ1UsMkVBQVcsQ0FDVEMsNkVBQWEsRUFDYkMsOEVBQ0YsQ0FBQztBQUVELElBQU1FLFlBQVksR0FBR04sK0VBQVksQ0FBQztFQUNoQ08sS0FBSyxFQUFFLFNBQUFBLE1BQUNDLEtBQUssRUFBRUMsTUFBTTtJQUFBLE9BQUtBLE1BQU0sQ0FBQ0MsUUFBUSxDQUFDLGdCQUFnQixFQUFFRixLQUFLLENBQUNHLE1BQU0sQ0FBQztFQUFBO0VBQ3pFQyxNQUFNLEVBQUUsU0FBQUEsT0FBQ0osS0FBSyxFQUFFQyxNQUFNO0lBQUEsT0FBS2pCLGlEQUFHLENBQUNpQixNQUFNLENBQUNJLE9BQU8sQ0FBQ0MsUUFBUSxDQUFDTixLQUFLLENBQUNHLE1BQU0sQ0FBQyxFQUFFLGFBQWEsRUFBRSxFQUFFLENBQUMsQ0FBQ0ksR0FBRyxDQUFDLFVBQUFDLEVBQUU7TUFBQSxPQUFJUCxNQUFNLENBQUNJLE9BQU8sQ0FBQ0MsUUFBUSxDQUFDRSxFQUFFLENBQUM7SUFBQSxFQUFDO0VBQUE7RUFDL0hDLE9BQU8sRUFBRSxTQUFBQSxRQUFDVCxLQUFLLEVBQUVDLE1BQU07SUFBQSxPQUFLQSxNQUFNLENBQUNDLFFBQVEsQ0FBQyxnQkFBZ0IsRUFBRUYsS0FBSyxDQUFDRyxNQUFNLENBQUM7RUFBQTtFQUMzRU8sYUFBYSxFQUFFLE9BQU87RUFDdEJDLG1CQUFtQixFQUFFLENBQUMsUUFBUTtBQUNoQyxDQUFDLENBQUMsQ0FBQ3BCLHNEQUFJLENBQUM7QUFFUixJQUFNcUIsVUFBVSxHQUFHcEIsK0VBQVksQ0FB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U0FBQUUsWUFBVUYsTUFBTSxFQUFFO01BQ2hDLElBQUksQ0FBQ3RFLEdBQUcsR0FBR3NFLE1BQU0sQ0FBQ3RFLEdBQUcsSUFBSUosYUFBYTtJQUN4QztFQUNGLENBQUM7RUFDRDZFLFVBQVUsRUFBRTtJQUNWekcsUUFBUSxFQUFSQSxnRUFBUTtJQUNSRSxRQUFRLEVBQVJBLDhEQUFRO0lBQ1JXLFlBQVksRUFBWkEsWUFBWTtJQUNaYyxVQUFVLEVBQVZBLFVBQVU7SUFDVjFCLFVBQVUsRUFBVkEsb0VBQVU7SUFDVkcsV0FBVyxFQUFYQSxvRkFBVztJQUNYRCxZQUFZLEVBQVpBLHNFQUFZO0lBQ1pFLFdBQVcsRUFBWEEsb0ZBQVdBO0VBQ2I7QUFDRixDQUFDO0FBRUQsaUVBQWV3QixXQUFXIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9jb21wb25lbnRzL3VzZXJfcHJvZmlsZS91c2VyX3Byb2ZpbGUuanM/ODg1YiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZ2V0IGZyb20gJ2xvZGFzaC9nZXQnXG5pbXBvcnQgVXNlckNhcmQgZnJvbSAnLi4vdXNlcl9jYXJkL3VzZXJfY2FyZC52dWUnXG5pbXBvcnQgRm9sbG93Q2FyZCBmcm9tICcuLi9mb2xsb3dfY2FyZC9mb2xsb3dfY2FyZC52dWUnXG5pbXBvcnQgVGltZWxpbmUgZnJvbSAnLi4vdGltZWxpbmUvdGltZWxpbmUudnVlJ1xuaW1wb3J0IENvbnZlcnNhdGlvbiBmcm9tICcuLi9jb252ZXJzYXRpb24vY29udmVyc2F0aW9uLnZ1ZSdcbmltcG9ydCBUYWJTd2l0Y2hlciBmcm9tICdzcmMvY29tcG9uZW50cy90YWJfc3dpdGNoZXIvdGFiX3N3aXRjaGVyLmpzeCdcbmltcG9ydCBSaWNoQ29udGVudCBmcm9tICdzcmMvY29tcG9uZW50cy9yaWNoX2NvbnRlbnQvcmljaF9jb250ZW50LmpzeCdcbmltcG9ydCBMaXN0IGZyb20gJy4uL2xpc3QvbGlzdC52dWUnXG5pbXBvcnQgd2l0aExvYWRNb3JlIGZyb20gJy4uLy4uL2hvY3Mvd2l0aF9sb2FkX21vcmUvd2l0aF9sb2FkX21vcmUnXG5pbXBvcnQgbG9jYWxlU2VydmljZSBmcm9tICdzcmMvc2VydmljZXMvbG9jYWxlL2xvY2FsZS5zZXJ2aWNlLmpzJ1xuaW1wb3J0IHsgbGlicmFyeSB9IGZyb20gJ0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1zdmctY29yZSdcbmltcG9ydCB7XG4gIGZhQ2lyY2xlTm90Y2gsXG4gIGZhQmlydGhkYXlDYWtlXG59IGZyb20gJ0Bmb3J0YXdlc29tZS9mcmVlLXNvbGlkLXN2Zy1pY29ucydcblxubGlicmFyeS5hZGQoXG4gIGZhQ2lyY2xlTm90Y2gsXG4gIGZhQmlydGhkYXlDYWtlXG4pXG5cbmNvbnN0IEZvbGxvd2VyTGlzdCA9IHdpdGhMb2FkTW9yZSh7XG4gIGZldGNoOiAocHJvcHMsICRzdG9yZSkgPT4gJHN0b3JlLmRpc3BhdGNoKCdmZXRjaEZvbGxvd2VycycsIHByb3BzLnVzZXJJZCksXG4gIHNlbGVjdDogKHByb3BzLCAkc3RvcmUpID0+IGdldCgkc3RvcmUuZ2V0dGVycy5maW5kVXNlcihwcm9wcy51c2VySWQpLCAnZm9sbG93ZXJJZHMnLCBbXSkubWFwKGlkID0+ICRzdG9yZS5nZXR0ZXJzLmZpbmRVc2VyKGlkKSksXG4gIGRlc3Ryb3k6IChwcm9wcywgJHN0b3JlKSA9PiAkc3RvcmUuZGlzcGF0Y2goJ2NsZWFyRm9sbG93ZXJzJywgcHJvcHMudXNlcklkKSxcbiAgY2hpbGRQcm9wTmFtZTogJ2l0ZW1zJyxcbiAgYWRkaXRpb25hbFByb3BOYW1lczogWyd1c2VySWQnXVxufSkoTGlzdClcblxuY29uc3QgRnJpZW5kTGlzdCA9IHdpdGhMb2FkTW9yZSh7XG4gIGZldGNoOiAocHJvcHMsICRzdG9yZSkgPT4gJHN0b3JlLmRpc3BhdGNoKCdmZXRjaEZyaWVuZHMnLCBwcm9wcy51c2VySWQpLFxuICBzZWxlY3Q6IChwcm9wcywgJHN0b3JlKSA9PiBnZXQoJHN0b3JlLmdldHRlcnMuZmluZFVzZXIocHJvcHMudXNlcklkKSwgJ2ZyaWVuZElkcycsIFtdKS5tYXAoaWQgPT4gJHN0b3JlLmdldHRlcnMuZmluZFVzZXIoaWQpKSxcbiAgZGVzdHJveTogKHByb3BzLCAkc3RvcmUpID0+ICRzdG9yZS5kaXNwYXRjaCgnY2xlYXJGcmllbmRzJywgcHJvcHMudXNlcklkKSxcbiAgY2hpbGRQcm9wTmFtZTogJ2l0ZW1zJyxcbiAgYWRkaXRpb25hbFByb3BOYW1lczogWyd1c2VySWQnXVxufSkoTGlzdClcblxuY29uc3QgZGVmYXVsdFRhYktleSA9ICdzdGF0dXNlcydcblxuY29uc3QgVXNlclByb2ZpbGUgPSB7XG4gIGRhdGEgKCkge1xuICAgIHJldHVybiB7XG4gICAgICBlcnJvcjogZmFsc2UsXG4gICAgICB1c2VySWQ6IG51bGwsXG4gICAgICB0YWI6IGRlZmF1bHRUYWJLZXksXG4gICAgICBmb290ZXJSZWY6IG51bGxcbiAgICB9XG4gIH0sXG4gIGNyZWF0ZWQgKCkge1xuICAgIGNvbnN0IHJvdXRlUGFyYW1zID0gdGhpcy4kcm91dGUucGFyYW1zXG4gICAgdGhpcy5sb2FkKHsgbmFtZTogcm91dGVQYXJhbXMubmFtZSwgaWQ6IHJvdXRlUGFyYW1zLmlkIH0pXG4gICAgdGhpcy50YWIgPSBnZXQodGhpcy4kcm91dGUsICdxdWVyeS50YWInLCBkZWZhdWx0VGFiS2V5KVxuICB9LFxuICB1bm1vdW50ZWQgKCkge1xuICAgIHRoaXMuc3RvcEZldGNoaW5nKClcbiAgfSxcbiAgY29tcHV0ZWQ6IHtcbiAgICB0aW1lbGluZSAoKSB7XG4gICAgICByZXR1cm4gdGhpcy4kc3RvcmUuc3RhdGUuc3RhdHVzZXMudGltZWxpbmVzLnVzZXJcbiAgICB9LFxuICAgIGZhdm9yaXRlcyAoKSB7XG4gICAgICByZXR1cm4gdGhpcy4kc3RvcmUuc3RhdGUuc3RhdHVzZXMudGltZWxpbmVzLmZhdm9yaXRlc1xuICAgIH0sXG4gICAgbWVkaWEgKCkge1xuICAgICAgcmV0dXJuIHRoaXMuJHN0b3JlLnN0YXRlLnN0YXR1c2VzLnRpbWVsaW5lcy5tZWRpYVxuICAgIH0sXG4gICAgaXNVcyAoKSB7XG4gICAgICByZXR1cm4gdGhpcy51c2VySWQgJiYgdGhpcy4kc3RvcmUuc3RhdGUudXNlcnMuY3VycmVudFVzZXIuaWQgJiZcbiAgICAgICAgdGhpcy51c2VySWQgPT09IHRoaXMuJHN0b3JlLnN0YXRlLnVzZXJzLmN1cnJlbnRVc2VyLmlkXG4gICAgfSxcbiAgICB1c2VyICgpIHtcbiAgICAgIHJldHVybiB0aGlzLiRzdG9yZS5nZXR0ZXJzLmZpbmRVc2VyKHRoaXMudXNlcklkKVxuICAgIH0sXG4gICAgaXNFeHRlcm5hbCAoKSB7XG4gICAgICByZXR1cm4gdGhpcy4kcm91dGUubmFtZSA9PT0gJ2V4dGVybmFsLXVzZXItcHJvZmlsZSdcbiAgICB9LFxuICAgIGZvbGxvd3NUYWJWaXNpYmxlICgpIHtcbiAgICAgIHJldHVybiB0aGlzLmlzVXMgfHwgIXRoaXMudXNlci5oaWRlX2ZvbGxvd3NcbiAgICB9LFxuICAgIGZvbGxvd2Vyc1RhYlZpc2libGUgKCkge1xuICAgICAgcmV0dXJuIHRoaXMuaXNVcyB8fCAhdGhpcy51c2VyLmhpZGVfZm9sbG93ZXJzXG4gICAgfSxcbiAgICBmb3JtYXR0ZWRCaXJ0aGRheSAoKSB7XG4gICAgICBjb25zdCBicm93c2VyTG9jYWxlID0gbG9jYWxlU2VydmljZS5pbnRlcm5hbFRvQnJvd3NlckxvY2FsZSh0aGlzLiRpMThuLmxvY2FsZSlcbiAgICAgIHJldHVybiB0aGlzLnVzZXIuYmlydGhkYXkgJiYgbmV3IERhdGUoRGF0ZS5wYXJzZSh0aGlzLnVzZXIuYmlydGhkYXkpKS50b0xvY2FsZURhdGVTdHJpbmcoYnJvd3NlckxvY2FsZSwgeyB0aW1lWm9uZTogJ1VUQycsIGRheTogJ251bWVyaWMnLCBtb250aDogJ2xvbmcnLCB5ZWFyOiAnbnVtZXJpYycgfSlcbiAgICB9XG4gIH0sXG4gIG1ldGhvZHM6IHtcbiAgICBzZXRGb290ZXJSZWYgKGVsKSB7XG4gICAgICB0aGlzLmZvb3RlclJlZiA9IGVsXG4gICAgfSxcbiAgICBsb2FkICh1c2VyTmFtZU9ySWQpIHtcbiAgICAgIGNvbnN0IHN0YXJ0RmV0Y2hpbmdUaW1lbGluZSA9ICh0aW1lbGluZSwgdXNlcklkKSA9PiB7XG4gICAgICAgIC8vIENsZWFyIHRpbWVsaW5lIG9ubHkgaWYgbG9hZCBhbm90aGVyIHVzZXIncyBwcm9maWxlXG4gICAgICAgIGlmICh1c2VySWQgIT09IHRoaXMuJHN0b3JlLnN0YXRlLnN0YXR1c2VzLnRpbWVsaW5lc1t0aW1lbGluZV0udXNlcklkKSB7XG4gICAgICAgICAgdGhpcy4kc3RvcmUuY29tbWl0KCdjbGVhclRpbWVsaW5lJywgeyB0aW1lbGluZSB9KVxuICAgICAgICB9XG4gICAgICAgIHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdzdGFydEZldGNoaW5nVGltZWxpbmUnLCB7IHRpbWVsaW5lLCB1c2VySWQgfSlcbiAgICAgIH1cblxuICAgICAgY29uc3QgbG9hZEJ5SWQgPSAodXNlcklkKSA9PiB7XG4gICAgICAgIHRoaXMudXNlcklkID0gdXNlcklkXG4gICAgICAgIHN0YXJ0RmV0Y2hpbmdUaW1lbGluZSgndXNlcicsIHVzZXJJZClcbiAgICAgICAgc3RhcnRGZXRjaGluZ1RpbWVsaW5lKCdtZWRpYScsIHVzZXJJZClcbiAgICAgICAgaWYgKHRoaXMuaXNVcykge1xuICAgICAgICAgIHN0YXJ0RmV0Y2hpbmdUaW1lbGluZSgnZmF2b3JpdGVzJywgdXNlcklkKVxuICAgICAgICB9XG4gICAgICAgIC8vIEZldGNoIGFsbCBwaW5uZWQgc3RhdHVzZXMgaW1tZWRpYXRlbHlcbiAgICAgICAgdGhpcy4kc3RvcmUuZGlzcGF0Y2goJ2ZldGNoUGlubmVkU3RhdHVzZXMnLCB1c2VySWQpXG4gICAgICB9XG5cbiAgICAgIC8vIFJlc2V0IHZpZXdcbiAgICAgIHRoaXMudXNlcklkID0gbnVsbFxuICAgICAgdGhpcy5lcnJvciA9IGZhbHNlXG5cbiAgICAgIGNvbnN0IG1heWJlSWQgPSB1c2VyTmFtZU9ySWQuaWRcbiAgICAgIGNvbnN0IG1heWJlTmFtZSA9IHVzZXJOYW1lT3JJZC5uYW1lXG5cbiAgICAgIC8vIENoZWNrIGlmIHVzZXIgZGF0YSBpcyBhbHJlYWR5IGxvYWRlZCBpbiBzdG9yZVxuICAgICAgY29uc3QgdXNlciA9IG1heWJlSWQgPyB0aGlzLiRzdG9yZS5nZXR0ZXJzLmZpbmRVc2VyKG1heWJlSWQpIDogdGhpcy4kc3RvcmUuZ2V0dGVycy5maW5kVXNlckJ5TmFtZShtYXliZU5hbWUpXG4gICAgICBpZiAodXNlcikge1xuICAgICAgICBsb2FkQnlJZCh1c2VyLmlkKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgKG1heWJlSWRcbiAgICAgICAgICA/IHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdmZXRjaFVzZXInLCBtYXliZUlkKVxuICAgICAgICAgIDogdGhpcy4kc3RvcmUuZGlzcGF0Y2goJ2ZldGNoVXNlckJ5TmFtZScsIG1heWJlTmFtZSkpXG4gICAgICAgICAgLnRoZW4oKHsgaWQgfSkgPT4gbG9hZEJ5SWQoaWQpKVxuICAgICAgICAgIC5jYXRjaCgocmVhc29uKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBlcnJvck1lc3NhZ2UgPSBnZXQocmVhc29uLCAnZXJyb3IuZXJyb3InKVxuICAgICAgICAgICAgaWYgKGVycm9yTWVzc2FnZSA9PT0gJ05vIHVzZXIgd2l0aCBzdWNoIHVzZXJfaWQnKSB7IC8vIEtub3duIGVycm9yXG4gICAgICAgICAgICAgIHRoaXMuZXJyb3IgPSB0aGlzLiR0KCd1c2VyX3Byb2ZpbGUucHJvZmlsZV9kb2VzX25vdF9leGlzdCcpXG4gICAgICAgICAgICB9IGVsc2UgaWYgKGVycm9yTWVzc2FnZSkge1xuICAgICAgICAgICAgICB0aGlzLmVycm9yID0gZXJyb3JNZXNzYWdlXG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICB0aGlzLmVycm9yID0gdGhpcy4kdCgndXNlcl9wcm9maWxlLnByb2ZpbGVfbG9hZGluZ19lcnJvcicpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9LFxuICAgIHN0b3BGZXRjaGluZyAoKSB7XG4gICAgICB0aGlzLiRzdG9yZS5kaXNwYXRjaCgnc3RvcEZldGNoaW5nVGltZWxpbmUnLCAndXNlcicpXG4gICAgICB0aGlzLiRzdG9yZS5kaXNwYXRjaCgnc3RvcEZldGNoaW5nVGltZWxpbmUnLCAnZmF2b3JpdGVzJylcbiAgICAgIHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdzdG9wRmV0Y2hpbmdUaW1lbGluZScsICdtZWRpYScpXG4gICAgfSxcbiAgICBzd2l0Y2hVc2VyICh1c2VyTmFtZU9ySWQpIHtcbiAgICAgIHRoaXMuc3RvcEZldGNoaW5nKClcbiAgICAgIHRoaXMubG9hZCh1c2VyTmFtZU9ySWQpXG4gICAgfSxcbiAgICBvblRhYlN3aXRjaCAodGFiKSB7XG4gICAgICB0aGlzLnRhYiA9IHRhYlxuICAgICAgdGhpcy4kcm91dGVyLnJlcGxhY2UoeyBxdWVyeTogeyB0YWIgfSB9KVxuICAgIH0sXG4gICAgbGlua0NsaWNrZWQgKHsgdGFyZ2V0IH0pIHtcbiAgICAgIGlmICh0YXJnZXQudGFnTmFtZSA9PT0gJ1NQQU4nKSB7XG4gICAgICAgIHRhcmdldCA9IHRhcmdldC5wYXJlbnROb2RlXG4gICAgICB9XG4gICAgICBpZiAodGFyZ2V0LnRhZ05hbWUgPT09ICdBJykge1xuICAgICAgICB3aW5kb3cub3Blbih0YXJnZXQuaHJlZiwgJ19ibGFuaycpXG4gICAgICB9XG4gICAgfVxuICB9LFxuICB3YXRjaDoge1xuICAgICckcm91dGUucGFyYW1zLmlkJzogZnVuY3Rpb24gKG5ld1ZhbCkge1xuICAgICAgaWYgKG5ld1ZhbCkge1xuICAgICAgICB0aGlzLnN3aXRjaFVzZXIoeyBpZDogbmV3VmFsIH0pXG4gICAgICB9XG4gICAgfSxcbiAgICAnJHJvdXRlLnBhcmFtcy5uYW1lJzogZnVuY3Rpb24gKG5ld1ZhbCkge1xuICAgICAgaWYgKG5ld1ZhbCkge1xuICAgICAgICB0aGlzLnN3aXRjaFVzZXIoeyBuYW1lOiBuZXdWYWwgfSlcbiAgICAgIH1cbiAgICB9LFxuICAgICckcm91dGUucXVlcnknOiBmdW5jdGlvbiAobmV3VmFsKSB7XG4gICAgICB0aGlzLnRhYiA9IG5ld1ZhbC50YWIgfHwgZGVmYXVsdFRhYktleVxuICAgIH1cbiAgfSxcbiAgY29tcG9uZW50czoge1xuICAgIFVzZXJDYXJkLFxuICAgIFRpbWVsaW5lLFxuICAgIEZvbGxvd2VyTGlzdCxcbiAgICBGcmllbmRMaXN0LFxuICAgIEZvbGxvd0NhcmQsXG4gICAgVGFiU3dpdGNoZXIsXG4gICAgQ29udmVyc2F0aW9uLFxuICAgIFJpY2hDb250ZW50XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgVXNlclByb2ZpbGVcbiJdLCJuYW1lcyI6WyJnZXQiLCJVc2VyQ2FyZCIsIkZvbGxvd0NhcmQiLCJUaW1lbGluZSIsIkNvbnZlcnNhdGlvbiIsIlRhYlN3aXRjaGVyIiwiUmljaENvbnRlbnQiLCJMaXN0Iiwid2l0aExvYWRNb3JlIiwibG9jYWxlU2VydmljZSIsImxpYnJhcnkiLCJmYUNpcmNsZU5vdGNoIiwiZmFCaXJ0aGRheUNha2UiLCJhZGQiLCJGb2xsb3dlckxpc3QiLCJmZXRjaCIsInByb3BzIiwiJHN0b3JlIiwiZGlzcGF0Y2giLCJ1c2VySWQiLCJzZWxlY3QiLCJnZXR0ZXJzIiwiZmluZFVzZXIiLCJtYXAiLCJpZCIsImRlc3Ryb3kiLCJjaGlsZFByb3BOYW1lIiwiYWRkaXRpb25hbFByb3BOYW1lcyIsIkZyaWVuZExpc3QiLCJkZWZhdWx0VGFiS2V5IiwiVXNlclByb2ZpbGUiLCJkYXRhIiwiZXJyb3IiLCJ0YWIiLCJmb290ZXJSZWYiLCJjcmVhdGVkIiwicm91dGVQYXJhbXMiLCIkcm91dGUiLCJwYXJhbXMiLCJsb2FkIiwibmFtZSIsInVubW91bnRlZCIsInN0b3BGZXRjaGluZyIsImNvbXB1dGVkIiwidGltZWxpbmUiLCJzdGF0ZSIsInN0YXR1c2VzIiwidGltZWxpbmVzIiwidXNlciIsImZhdm9yaXRlcyIsIm1lZGlhIiwiaXNVcyIsInVzZXJzIiwiY3VycmVudFVzZXIiLCJpc0V4dGVybmFsIiwiZm9sbG93c1RhYlZpc2libGUiLCJoaWRlX2ZvbGxvd3MiLCJmb2xsb3dlcnNUYWJWaXNpYmxlIiwiaGlkZV9mb2xsb3dlcnMiLCJmb3JtYXR0ZWRCaXJ0aGRheSIsImJyb3dzZXJMb2NhbGUiLCJpbnRlcm5hbFRvQnJvd3NlckxvY2FsZSIsIiRpMThuIiwibG9jYWxlIiwiYmlydGhkYXkiLCJEYXRlIiwicGFyc2UiLCJ0b0xvY2FsZURhdGVTdHJpbmciLCJ0aW1lWm9uZSIsImRheSIsIm1vbnRoIiwieWVhciIsIm1ldGhvZHMiLCJzZXRGb290ZXJSZWYiLCJlbCIsInVzZXJOYW1lT3JJZCIsIl90aGlzIiwic3RhcnRGZXRjaGluZ1RpbWVsaW5lIiwiY29tbWl0IiwibG9hZEJ5SWQiLCJtYXliZUlkIiwibWF5YmVOYW1lIiwiZmluZFVzZXJCeU5hbWUiLCJ0aGVuIiwiX3JlZiIsInJlYXNvbiIsImVycm9yTWVzc2FnZSIsIiR0Iiwic3dpdGNoVXNlciIsIm9uVGFiU3dpdGNoIiwiJHJvdXRlciIsInJlcGxhY2UiLCJxdWVyeSIsImxpbmtDbGlja2VkIiwiX3JlZjIiLCJ0YXJnZXQiLCJ0YWdOYW1lIiwicGFyZW50Tm9kZSIsIndpbmRvdyIsIm9wZW4iLCJocmVmIiwid2F0Y2giLCIkcm91dGVQYXJhbXNJZCIsIm5ld1ZhbCIsIiRyb3V0ZVBhcmFtc05hbWUiLCIkcm91dGVRdWVyeSIsImNvbXBvbmVudHMiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./src/components/user_profile/user_profile.js?vue&type=script&lang=js\n");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js!./src/components/user_reporting_modal/user_reporting_modal.js?vue&type=script&lang=js":
/*!**************************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js!./src/components/user_reporting_modal/user_reporting_modal.js?vue&type=script&lang=js ***!
\**************************************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"./node_modules/@babel/runtime/helpers/esm/defineProperty.js\");\n/* harmony import */ var _status_status_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../status/status.vue */ \"./src/components/status/status.vue\");\n/* harmony import */ var _list_list_vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../list/list.vue */ \"./src/components/list/list.vue\");\n/* harmony import */ var _checkbox_checkbox_vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../checkbox/checkbox.vue */ \"./src/components/checkbox/checkbox.vue\");\n/* harmony import */ var _modal_modal_vue__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../modal/modal.vue */ \"./src/components/modal/modal.vue\");\n/* harmony import */ var _user_link_user_link_vue__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../user_link/user_link.vue */ \"./src/components/user_link/user_link.vue\");\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\n\n\n\nvar UserReportingModal = {\n components: {\n Status: _status_status_vue__WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n List: _list_list_vue__WEBPACK_IMPORTED_MODULE_2__[\"default\"],\n Checkbox: _checkbox_checkbox_vue__WEBPACK_IMPORTED_MODULE_3__[\"default\"],\n Modal: _modal_modal_vue__WEBPACK_IMPORTED_MODULE_4__[\"default\"],\n UserLink: _user_link_user_link_vue__WEBPACK_IMPORTED_MODULE_5__[\"default\"]\n },\n data: function data() {\n return {\n comment: '',\n forward: false,\n statusIdsToReport: [],\n processing: false,\n error: false\n };\n },\n computed: {\n reportModal: function reportModal() {\n return this.$store.state.reports.reportModal;\n },\n isLoggedIn: function isLoggedIn() {\n return !!this.$store.state.users.currentUser;\n },\n isOpen: function isOpen() {\n return this.isLoggedIn && this.reportModal.activated;\n },\n userId: function userId() {\n return this.reportModal.userId;\n },\n user: function user() {\n return this.$store.getters.findUser(this.userId);\n },\n remoteInstance: function remoteInstance() {\n return !this.user.is_local && this.user.screen_name.substr(this.user.screen_name.indexOf('@') + 1);\n },\n statuses: function statuses() {\n return this.reportModal.statuses;\n },\n preTickedIds: function preTickedIds() {\n return this.reportModal.preTickedIds;\n }\n },\n watch: {\n userId: 'resetState',\n preTickedIds: function preTickedIds(newValue) {\n this.statusIdsToReport = newValue;\n }\n },\n methods: {\n resetState: function resetState() {\n // Reset state\n this.comment = '';\n this.forward = false;\n this.statusIdsToReport = this.preTickedIds;\n this.processing = false;\n this.error = false;\n },\n closeModal: function closeModal() {\n this.$store.dispatch('closeUserReportingModal');\n },\n reportUser: function reportUser() {\n var _this = this;\n this.processing = true;\n this.error = false;\n var params = {\n userId: this.userId,\n comment: this.comment,\n forward: this.forward,\n statusIds: this.statusIdsToReport\n };\n this.$store.state.api.backendInteractor.reportUser(_objectSpread({}, params)).then(function () {\n _this.processing = false;\n _this.resetState();\n _this.closeModal();\n })[\"catch\"](function () {\n _this.processing = false;\n _this.error = true;\n });\n },\n clearError: function clearError() {\n this.error = false;\n },\n isChecked: function isChecked(statusId) {\n return this.statusIdsToReport.indexOf(statusId) !== -1;\n },\n toggleStatus: function toggleStatus(checked, statusId) {\n if (checked === this.isChecked(statusId)) {\n return;\n }\n if (checked) {\n this.statusIdsToReport.push(statusId);\n } else {\n this.statusIdsToReport.splice(this.statusIdsToReport.indexOf(statusId), 1);\n }\n },\n resize: function resize(e) {\n var target = e.target || e;\n if (!(target instanceof window.Element)) {\n return;\n }\n // Auto is needed to make textbox shrink when removing lines\n target.style.height = 'auto';\n target.style.height = \"\".concat(target.scrollHeight, \"px\");\n if (target.value === '') {\n target.style.height = null;\n }\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (UserReportingModal);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL3NyYy9jb21wb25lbnRzL3VzZXJfcmVwb3J0aW5nX21vZGFsL3VzZXJfcmVwb3J0aW5nX21vZGFsLmpzP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFBeUM7QUFDTjtBQUNZO0FBQ1Q7QUFDVztBQUVqRCxJQUFNSyxrQkFBa0IsR0FBRztFQUN6QkMsVUFBVSxFQUFFO0lBQ1ZOLE1BQU0sRUFBTkEsMERBQU07SUFDTkMsSUFBSSxFQUFKQSxzREFBSTtJQUNKQyxRQUFRLEVBQVJBLDhEQUFRO0lBQ1JDLEtBQUssRUFBTEEsd0RBQUs7SUFDTEMsUUFBUSxFQUFSQSxnRUFBUUE7RUFDVixDQUFDO0VBQ0RHLElBQUksV0FBQUEsS0FBQSxFQUFJO0lBQ04sT0FBTztNQUNMQyxPQUFPLEVBQUUsRUFBRTtNQUNYQyxPQUFPLEVBQUUsS0FBSztNQUNkQyxpQkFBaUIsRUFBRSxFQUFFO01BQ3JCQyxVQUFVLEVBQUUsS0FBSztNQUNqQkMsS0FBSyxFQUFFO0lBQ1QsQ0FBQztFQUNILENBQUM7RUFDREMsUUFBUSxFQUFFO0lBQ1JDLFdBQVcsV0FBQUEsWUFBQSxFQUFJO01BQ2IsT0FBTyxJQUFJLENBQUNDLE1BQU0sQ0FBQ0MsS0FBSyxDQUFDQyxPQUFPLENBQUNILFdBQVc7SUFDOUMsQ0FBQztJQUNESSxVQUFVLFdBQUFBLFdBQUEsRUFBSTtNQUNaLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQ0gsTUFBTSxDQUFDQyxLQUFLLENBQUNHLEtBQUssQ0FBQ0MsV0FBVztJQUM5QyxDQUFDO0lBQ0RDLE1BQU0sV0FBQUEsT0FBQSxFQUFJO01BQ1IsT0FBTyxJQUFJLENBQUNILFVBQVUsSUFBSSxJQUFJLENBQUNKLFdBQVcsQ0FBQ1EsU0FBUztJQUN0RCxDQUFDO0lBQ0RDLE1BQU0sV0FBQUEsT0FBQSxFQUFJO01BQ1IsT0FBTyxJQUFJLENBQUNULFdBQVcs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LE9BQU8sS0FBSyxJQUFJLENBQUNILFNBQVMsQ0FBQ0MsUUFBUSxDQUFDLEVBQUU7UUFDeEM7TUFDRjtNQUVBLElBQUlFLE9BQU8sRUFBRTtRQUNYLElBQUksQ0FBQzFDLGlCQUFpQixDQUFDMkMsSUFBSSxDQUFDSCxRQUFRLENBQUM7TUFDdkMsQ0FBQyxNQUFNO1FBQ0wsSUFBSSxDQUFDeEMsaUJBQWlCLENBQUM0QyxNQUFNLENBQUMsSUFBSSxDQUFDNUMsaUJBQWlCLENBQUNxQixPQUFPLENBQUNtQixRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7TUFDNUU7SUFDRixDQUFDO0lBQ0RLLE1BQU0sV0FBQUEsT0FBRUMsQ0FBQyxFQUFFO01BQ1QsSUFBTUMsTUFBTSxHQUFHRCxDQUFDLENBQUNDLE1BQU0sSUFBSUQsQ0FBQztNQUM1QixJQUFJLEVBQUVDLE1BQU0sWUFBWUMsTUFBTSxDQUFDQyxPQUFPLENBQUMsRUFBRTtRQUFFO01BQU87TUFDbEQ7TUFDQUYsTUFBTSxDQUFDRyxLQUFLLENBQUNDLE1BQU0sR0FBRyxNQUFNO01BQzVCSixNQUFNLENBQUNHLEtBQUssQ0FBQ0MsTUFBTSxNQUFBQyxNQUFBLENBQU1MLE1BQU0sQ0FBQ00sWUFBWSxPQUFJO01BQ2hELElBQUlOLE1BQU0sQ0FBQ08sS0FBSyxLQUFLLEVBQUUsRUFBRTtRQUN2QlAsTUFBTSxDQUFDRyxLQUFLLENBQUNDLE1BQU0sR0FBRyxJQUFJO01BQzVCO0lBQ0Y7RUFDRjtBQUNGLENBQUM7QUFFRCxpRUFBZXhELGtCQUFrQiIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvY29tcG9uZW50cy91c2VyX3JlcG9ydGluZ19tb2RhbC91c2VyX3JlcG9ydGluZ19tb2RhbC5qcz84N2ZiIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBTdGF0dXMgZnJvbSAnLi4vc3RhdHVzL3N0YXR1cy52dWUnXG5pbXBvcnQgTGlzdCBmcm9tICcuLi9saXN0L2xpc3QudnVlJ1xuaW1wb3J0IENoZWNrYm94IGZyb20gJy4uL2NoZWNrYm94L2NoZWNrYm94LnZ1ZSdcbmltcG9ydCBNb2RhbCBmcm9tICcuLi9tb2RhbC9tb2RhbC52dWUnXG5pbXBvcnQgVXNlckxpbmsgZnJvbSAnLi4vdXNlcl9saW5rL3VzZXJfbGluay52dWUnXG5cbmNvbnN0IFVzZXJSZXBvcnRpbmdNb2RhbCA9IHtcbiAgY29tcG9uZW50czoge1xuICAgIFN0YXR1cyxcbiAgICBMaXN0LFxuICAgIENoZWNrYm94LFxuICAgIE1vZGFsLFxuICAgIFVzZXJMaW5rXG4gIH0sXG4gIGRhdGEgKCkge1xuICAgIHJldHVybiB7XG4gICAgICBjb21tZW50OiAnJyxcbiAgICAgIGZvcndhcmQ6IGZhbHNlLFxuICAgICAgc3RhdHVzSWRzVG9SZXBvcnQ6IFtdLFxuICAgICAgcHJvY2Vzc2luZzogZmFsc2UsXG4gICAgICBlcnJvcjogZmFsc2VcbiAgICB9XG4gIH0sXG4gIGNvbXB1dGVkOiB7XG4gICAgcmVwb3J0TW9kYWwgKCkge1xuICAgICAgcmV0dXJuIHRoaXMuJHN0b3JlLnN0YXRlLnJlcG9ydHMucmVwb3J0TW9kYWxcbiAgICB9LFxuICAgIGlzTG9nZ2VkSW4gKCkge1xuICAgICAgcmV0dXJuICEhdGhpcy4kc3RvcmUuc3RhdGUudXNlcnMuY3VycmVudFVzZXJcbiAgICB9LFxuICAgIGlzT3BlbiAoKSB7XG4gICAgICByZXR1cm4gdGhpcy5pc0xvZ2dlZEluICYmIHRoaXMucmVwb3J0TW9kYWwuYWN0aXZhdGVkXG4gICAgfSxcbiAgICB1c2VySWQgKCkge1xuICAgICAgcmV0dXJuIHRoaXMucmVwb3J0TW9kYWwudXNlcklkXG4gICAgfSxcbiAgICB1c2VyICgpIHtcbiAgICAgIHJldHVybiB0aGlzLiRzdG9yZS5nZXR0ZXJzLmZpbmRVc2VyKHRoaXMudXNlcklkKVxuICAgIH0sXG4gICAgcmVtb3RlSW5zdGFuY2UgKCkge1xuICAgICAgcmV0dXJuICF0aGlzLnVzZXIuaXNfbG9jYWwgJiYgdGhpcy51c2VyLnNjcmVlbl9uYW1lLnN1YnN0cih0aGlzLnVzZXIuc2NyZWVuX25hbWUuaW5kZXhPZignQCcpICsgMSlcbiAgICB9LFxuICAgIHN0YXR1c2VzICgpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlcG9ydE1vZGFsLnN0YXR1c2VzXG4gICAgfSxcbiAgICBwcmVUaWNrZWRJZHMgKCkge1xuICAgICAgcmV0dXJuIHRoaXMucmVwb3J0TW9kYWwucHJlVGlja2VkSWRzXG4gICAgfVxuICB9LFxuICB3YXRjaDoge1xuICAgIHVzZXJJZDogJ3Jlc2V0U3RhdGUnLFxuICAgIHByZVRpY2tlZElkcyAobmV3VmFsdWUpIHtcbiAgICAgIHRoaXMuc3RhdHVzSWRzVG9SZXBvcnQgPSBuZXdWYWx1ZVxuICAgIH1cbiAgfSxcbiAgbWV0aG9kczoge1xuICAgIHJlc2V0U3RhdGUgKCkge1xuICAgICAgLy8gUmVzZXQgc3RhdGVcbiAgICAgIHRoaXMuY29tbWVudCA9ICcnXG4gICAgICB0aGlzLmZvcndhcmQgPSBmYWxzZVxuICAgICAgdGhpcy5zdGF0dXNJZHNUb1JlcG9ydCA9IHRoaXMucHJlVGlja2VkSWRzXG4gICAgICB0aGlzLnByb2Nlc3NpbmcgPSBmYWxzZVxuICAgICAgdGhpcy5lcnJvciA9IGZhbHNlXG4gICAgfSxcbiAgICBjbG9zZU1vZGFsICgpIHtcbiAgICAgIHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdjbG9zZVVzZXJSZXBvcnRpbmdNb2RhbCcpXG4gICAgfSxcbiAgICByZXBvcnRVc2VyICgpIHtcbiAgICAgIHRoaXMucHJvY2Vzc2luZyA9IHRydWVcbiAgICAgIHRoaXMuZXJyb3IgPSBmYWxzZVxuICAgICAgY29uc3QgcGFyYW1zID0ge1xuICAgICAgICB1c2VySWQ6IHRoaXMudXNlcklkLFxuICAgICAgICBjb21tZW50OiB0aGlzLmNvbW1lbnQsXG4gICAgICAgIGZvcndhcmQ6IHRoaXMuZm9yd2FyZCxcbiAgICAgICAgc3RhdHVzSWRzOiB0aGlzLnN0YXR1c0lkc1RvUmVwb3J0XG4gICAgICB9XG4gICAgICB0aGlzLiRzdG9yZS5zdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IucmVwb3J0VXNlcih7IC4uLnBhcmFtcyB9KVxuICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgdGhpcy5wcm9jZXNzaW5nID0gZmFsc2VcbiAgICAgICAgICB0aGlzLnJlc2V0U3RhdGUoKVxuICAgICAgICAgIHRoaXMuY2xvc2VNb2RhbCgpXG4gICAgICAgIH0pXG4gICAgICAgIC5jYXRjaCgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5wcm9jZXNzaW5nID0gZmFsc2VcbiAgICAgICAgICB0aGlzLmVycm9yID0gdHJ1ZVxuICAgICAgICB9KVxuICAgIH0sXG4gICAgY2xlYXJFcnJvciAoKSB7XG4gICAgICB0aGlzLmVycm9yID0gZmFsc2VcbiAgICB9LFxuICAgIGlzQ2hlY2tlZCAoc3RhdHVzSWQpIHtcbiAgICAgIHJldHVybiB0aGlzLnN0YXR1c0lkc1RvUmVwb3J0LmluZGV4T2Yoc3RhdHVzSWQpICE9PSAtMVxuICAgIH0sXG4gICAgdG9nZ2xlU3RhdHVzIChjaGVja2VkLCBzdGF0dXNJZCkge1xuICAgICAgaWYgKGNoZWNrZWQgPT09IHRoaXMuaXNDaGVja2VkKHN0YXR1c0lkKSkge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgaWYgKGNoZWNrZWQpIHtcbiAgICAgICAgdGhpcy5zdGF0dXNJZHNUb1JlcG9ydC5wdXNoKHN0YXR1c0lkKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5zdGF0dXNJZHNUb1JlcG9ydC5zcGxpY2UodGhpcy5zdGF0dXNJZHNUb1JlcG9ydC5pbmRleE9mKHN0YXR1c0lkKSwgMSlcbiAgICAgIH1cbiAgICB9LFxuICAgIHJlc2l6ZSAoZSkge1xuICAgICAgY29uc3QgdGFyZ2V0ID0gZS50YXJnZXQgfHwgZVxuICAgICAgaWYgKCEodGFyZ2V0IGluc3RhbmNlb2Ygd2luZG93LkVsZW1lbnQpKSB7IHJldHVybiB9XG4gICAgICAvLyBBdXRvIGlzIG5lZWRlZCB0byBtYWtlIHRleHRib3ggc2hyaW5rIHdoZW4gcmVtb3ZpbmcgbGluZXNcbiAgICAgIHRhcmdldC5zdHlsZS5oZWlnaHQgPSAnYXV0bydcbiAgICAgIHRhcmdldC5zdHlsZS5oZWlnaHQgPSBgJHt0YXJnZXQuc2Nyb2xsSGVpZ2h0fXB4YFxuICAgICAgaWYgKHRhcmdldC52YWx1ZSA9PT0gJycpIHtcbiAgICAgICAgdGFyZ2V0LnN0eWxlLmhlaWdodCA9IG51bGxcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgVXNlclJlcG9ydGluZ01vZGFsXG4iXSwibmFtZXMiOlsiU3RhdHVzIiwiTGlzdCIsIkNoZWNrYm94IiwiTW9kYWwiLCJVc2VyTGluayIsIlVzZXJSZXBvcnRpbmdNb2RhbCIsImNvbXBvbmVudHMiLCJkYXRhIiwiY29tbWVudCIsImZvcndhcmQiLCJzdGF0dXNJZHNUb1JlcG9ydCIsInByb2Nlc3NpbmciLCJlcnJvciIsImNvbXB1dGVkIiwicmVwb3J0TW9kYWwiLCIkc3RvcmUiLCJzdGF0ZSIsInJlcG9ydHMiLCJpc0xvZ2dlZEluIiwidXNlcnMiLCJjdXJyZW50VXNlciIsImlzT3BlbiIsImFjdGl2YXRlZCIsInVzZXJJZCIsInVzZXIiLCJnZXR0ZXJzIiwiZmluZFVzZXIiLCJyZW1vdGVJbnN0YW5jZSIsImlzX2xvY2FsIiwic2NyZWVuX25hbWUiLCJzdWJzdHIiLCJpbmRleE9mIiwic3RhdHVzZXMiLCJwcmVUaWNrZWRJZHMiLCJ3YXRjaCIsIm5ld1ZhbHVlIiwibWV0aG9kcyIsInJlc2V0U3RhdGUiLCJjbG9zZU1vZGFsIiwiZGlzcGF0Y2giLCJyZXBvcnRVc2VyIiwiX3RoaXMiLCJwYXJhbXMiLCJzdGF0dXNJZHMiLCJhcGkiLCJiYWNrZW5kSW50ZXJhY3RvciIsIl9vYmplY3RTcHJlYWQiLCJ0aGVuIiwiY2xlYXJFcnJvciIsImlzQ2hlY2tlZCIsInN0YXR1c0lkIiwidG9nZ2xlU3RhdHVzIiwiY2hlY2tlZCIsInB1c2giLCJzcGxpY2UiLCJyZXNpemUiLCJlIiwidGFyZ2V0Iiwid2luZG93IiwiRWxlbWVudCIsInN0eWxlIiwiaGVpZ2h0IiwiY29uY2F0Iiwic2Nyb2xsSGVpZ2h0IiwidmFsdWUiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./src/components/user_reporting_modal/user_reporting_modal.js?vue&type=script&lang=js\n");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js!./src/components/video_attachment/video_attachment.js?vue&type=script&lang=js":
/*!******************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js!./src/components/video_attachment/video_attachment.js?vue&type=script&lang=js ***!
\******************************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\nvar VideoAttachment = {\n props: ['attachment', 'controls'],\n data: function data() {\n return {\n blocksSuspend: false,\n // Start from true because removing \"loop\" property seems buggy in Vue\n hasAudio: true\n };\n },\n computed: {\n loopVideo: function loopVideo() {\n if (this.$store.getters.mergedConfig.loopVideoSilentOnly) {\n return !this.hasAudio;\n }\n return this.$store.getters.mergedConfig.loopVideo;\n }\n },\n methods: {\n onPlaying: function onPlaying(e) {\n this.setHasAudio(e);\n if (this.loopVideo) {\n this.$emit('play', {\n looping: true\n });\n return;\n }\n this.$emit('play');\n },\n onPaused: function onPaused(e) {\n this.$emit('pause');\n },\n setHasAudio: function setHasAudio(e) {\n var target = e.srcElement || e.target;\n // If hasAudio is false, we've already marked this video to not have audio,\n // a video can't gain audio out of nowhere so don't bother checking again.\n if (!this.hasAudio) return;\n if (typeof target.webkitAudioDecodedByteCount !== 'undefined') {\n // non-zero if video has audio track\n if (target.webkitAudioDecodedByteCount > 0) return;\n }\n if (typeof target.mozHasAudio !== 'undefined') {\n // true if video has audio track\n if (target.mozHasAudio) return;\n }\n if (typeof target.audioTracks !== 'undefined') {\n if (target.audioTracks.length > 0) return;\n }\n this.hasAudio = false;\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (VideoAttachment);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL3NyYy9jb21wb25lbnRzL3ZpZGVvX2F0dGFjaG1lbnQvdmlkZW9fYXR0YWNobWVudC5qcz92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcy5qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQ0EsSUFBTUEsZUFBZSxHQUFHO0VBQ3RCQyxLQUFLLEVBQUUsQ0FBQyxZQUFZLEVBQUUsVUFBVSxDQUFDO0VBQ2pDQyxJQUFJLFdBQUFBLEtBQUEsRUFBSTtJQUNOLE9BQU87TUFDTEMsYUFBYSxFQUFFLEtBQUs7TUFDcEI7TUFDQUMsUUFBUSxFQUFFO0lBQ1osQ0FBQztFQUNILENBQUM7RUFDREMsUUFBUSxFQUFFO0lBQ1JDLFNBQVMsV0FBQUEsVUFBQSxFQUFJO01BQ1gsSUFBSSxJQUFJLENBQUNDLE1BQU0sQ0FBQ0MsT0FBTyxDQUFDQyxZQUFZLENBQUNDLG1CQUFtQixFQUFFO1FBQ3hELE9BQU8sQ0FBQyxJQUFJLENBQUNOLFFBQVE7TUFDdkI7TUFDQSxPQUFPLElBQUksQ0FBQ0csTUFBTSxDQUFDQyxPQUFPLENBQUNDLFlBQVksQ0FBQ0gsU0FBUztJQUNuRDtFQUNGLENBQUM7RUFDREssT0FBTyxFQUFFO0lBQ1BDLFNBQVMsV0FBQUEsVUFBRUMsQ0FBQyxFQUFFO01BQ1osSUFBSSxDQUFDQyxXQUFXLENBQUNELENBQUMsQ0FBQztNQUNuQixJQUFJLElBQUksQ0FBQ1AsU0FBUyxFQUFFO1FBQ2xCLElBQUksQ0FBQ1MsS0FBSyxDQUFDLE1BQU0sRUFBRTtVQUFFQyxPQUFPLEVBQUU7UUFBSyxDQUFDLENBQUM7UUFDckM7TUFDRjtNQUNBLElBQUksQ0FBQ0QsS0FBSyxDQUFDLE1BQU0sQ0FBQztJQUNwQixDQUFDO0lBQ0RFLFFBQVEsV0FBQUEsU0FBRUosQ0FBQyxFQUFFO01BQ1gsSUFBSSxDQUFDRSxLQUFLLENBQUMsT0FBTyxDQUFDO0lBQ3JCLENBQUM7SUFDREQsV0FBVyxXQUFBQSxZQUFFRCxDQUFDLEVBQUU7TUFDZCxJQUFNSyxNQUFNLEdBQUdMLENBQUMsQ0FBQ00sVUFBVSxJQUFJTixDQUFDLENBQUNLLE1BQU07TUFDdkM7TUFDQTtNQUNBLElBQUksQ0FBQyxJQUFJLENBQUNkLFFBQVEsRUFBRTtNQUNwQixJQUFJLE9BQU9jLE1BQU0sQ0FBQ0UsMkJBQTJCLEtBQUssV0FBVyxFQUFFO1FBQzdEO1FBQ0EsSUFBSUYsTUFBTSxDQUFDRSwyQkFBMkIsR0FBRyxDQUFDLEVBQUU7TUFDOUM7TUFDQSxJQUFJLE9BQU9GLE1BQU0sQ0FBQ0csV0FBVyxLQUFLLFdBQVcsRUFBRTtRQUM3QztRQUNBLElBQUlILE1BQU0sQ0FBQ0csV0FBVyxFQUFFO01BQzFCO01BQ0EsSUFBSSxPQUFPSCxNQUFNLENBQUNJLFdBQVcsS0FBSyxXQUFXLEVBQUU7UUFDN0MsSUFBSUosTUFBTSxDQUFDSSxXQUFXLENBQUNDLE1BQU0sR0FBRyxDQUFDLEVBQUU7TUFDckM7TUFDQSxJQUFJLENBQUNuQixRQUFRLEdBQUcsS0FBSztJQUN2QjtFQUNGO0FBQ0YsQ0FBQztBQUVELGlFQUFlSixlQUFlIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9jb21wb25lbnRzL3ZpZGVvX2F0dGFjaG1lbnQvdmlkZW9fYXR0YWNobWVudC5qcz9iMTY4Il0sInNvdXJjZXNDb250ZW50IjpbIlxuY29uc3QgVmlkZW9BdHRhY2htZW50ID0ge1xuICBwcm9wczogWydhdHRhY2htZW50JywgJ2NvbnRyb2xzJ10sXG4gIGRhdGEgKCkge1xuICAgIHJldHVybiB7XG4gICAgICBibG9ja3NTdXNwZW5kOiBmYWxzZSxcbiAgICAgIC8vIFN0YXJ0IGZyb20gdHJ1ZSBiZWNhdXNlIHJlbW92aW5nIFwibG9vcFwiIHByb3BlcnR5IHNlZW1zIGJ1Z2d5IGluIFZ1ZVxuICAgICAgaGFzQXVkaW86IHRydWVcbiAgICB9XG4gIH0sXG4gIGNvbXB1dGVkOiB7XG4gICAgbG9vcFZpZGVvICgpIHtcbiAgICAgIGlmICh0aGlzLiRzdG9yZS5nZXR0ZXJzLm1lcmdlZENvbmZpZy5sb29wVmlkZW9TaWxlbnRPbmx5KSB7XG4gICAgICAgIHJldHVybiAhdGhpcy5oYXNBdWRpb1xuICAgICAgfVxuICAgICAgcmV0dXJuIHRoaXMuJHN0b3JlLmdldHRlcnMubWVyZ2VkQ29uZmlnLmxvb3BWaWRlb1xuICAgIH1cbiAgfSxcbiAgbWV0aG9kczoge1xuICAgIG9uUGxheWluZyAoZSkge1xuICAgICAgdGhpcy5zZXRIYXNBdWRpbyhlKVxuICAgICAgaWYgKHRoaXMubG9vcFZpZGVvKSB7XG4gICAgICAgIHRoaXMuJGVtaXQoJ3BsYXknLCB7IGxvb3Bpbmc6IHRydWUgfSlcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG4gICAgICB0aGlzLiRlbWl0KCdwbGF5JylcbiAgICB9LFxuICAgIG9uUGF1c2VkIChlKSB7XG4gICAgICB0aGlzLiRlbWl0KCdwYXVzZScpXG4gICAgfSxcbiAgICBzZXRIYXNBdWRpbyAoZSkge1xuICAgICAgY29uc3QgdGFyZ2V0ID0gZS5zcmNFbGVtZW50IHx8IGUudGFyZ2V0XG4gICAgICAvLyBJZiBoYXNBdWRpbyBpcyBmYWxzZSwgd2UndmUgYWxyZWFkeSBtYXJrZWQgdGhpcyB2aWRlbyB0byBub3QgaGF2ZSBhdWRpbyxcbiAgICAgIC8vIGEgdmlkZW8gY2FuJ3QgZ2FpbiBhdWRpbyBvdXQgb2Ygbm93aGVyZSBzbyBkb24ndCBib3RoZXIgY2hlY2tpbmcgYWdhaW4uXG4gICAgICBpZiAoIXRoaXMuaGFzQXVkaW8pIHJldHVyblxuICAgICAgaWYgKHR5cGVvZiB0YXJnZXQud2Via2l0QXVkaW9EZWNvZGVkQnl0ZUNvdW50ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAvLyBub24temVybyBpZiB2aWRlbyBoYXMgYXVkaW8gdHJhY2tcbiAgICAgICAgaWYgKHRhcmdldC53ZWJraXRBdWRpb0RlY29kZWRCeXRlQ291bnQgPiAwKSByZXR1cm5cbiAgICAgIH1cbiAgICAgIGlmICh0eXBlb2YgdGFyZ2V0Lm1vekhhc0F1ZGlvICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAvLyB0cnVlIGlmIHZpZGVvIGhhcyBhdWRpbyB0cmFja1xuICAgICAgICBpZiAodGFyZ2V0Lm1vekhhc0F1ZGlvKSByZXR1cm5cbiAgICAgIH1cbiAgICAgIGlmICh0eXBlb2YgdGFyZ2V0LmF1ZGlvVHJhY2tzICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICBpZiAodGFyZ2V0LmF1ZGlvVHJhY2tzLmxlbmd0aCA+IDApIHJldHVyblxuICAgICAgfVxuICAgICAgdGhpcy5oYXNBdWRpbyA9IGZhbHNlXG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IFZpZGVvQXR0YWNobWVudFxuIl0sIm5hbWVzIjpbIlZpZGVvQXR0YWNobWVudCIsInByb3BzIiwiZGF0YSIsImJsb2Nrc1N1c3BlbmQiLCJoYXNBdWRpbyIsImNvbXB1dGVkIiwibG9vcFZpZGVvIiwiJHN0b3JlIiwiZ2V0dGVycyIsIm1lcmdlZENvbmZpZyIsImxvb3BWaWRlb1NpbGVudE9ubHkiLCJtZXRob2RzIiwib25QbGF5aW5nIiwiZSIsInNldEhhc0F1ZGlvIiwiJGVtaXQiLCJsb29waW5nIiwib25QYXVzZWQiLCJ0YXJnZXQiLCJzcmNFbGVtZW50Iiwid2Via2l0QXVkaW9EZWNvZGVkQnl0ZUNvdW50IiwibW96SGFzQXVkaW8iLCJhdWRpb1RyYWNrcyIsImxlbmd0aCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./src/components/video_attachment/video_attachment.js?vue&type=script&lang=js\n");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js!./src/components/who_to_follow/who_to_follow.js?vue&type=script&lang=js":
/*!************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js!./src/components/who_to_follow/who_to_follow.js?vue&type=script&lang=js ***!
\************************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _services_api_api_service_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../services/api/api.service.js */ \"./src/services/api/api.service.js\");\n/* harmony import */ var _follow_card_follow_card_vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../follow_card/follow_card.vue */ \"./src/components/follow_card/follow_card.vue\");\n\n\nvar WhoToFollow = {\n components: {\n FollowCard: _follow_card_follow_card_vue__WEBPACK_IMPORTED_MODULE_1__[\"default\"]\n },\n data: function data() {\n return {\n users: []\n };\n },\n mounted: function mounted() {\n this.getWhoToFollow();\n },\n methods: {\n showWhoToFollow: function showWhoToFollow(reply) {\n var _this = this;\n reply.forEach(function (i, index) {\n _this.$store.state.api.backendInteractor.fetchUser({\n id: i.acct\n }).then(function (externalUser) {\n if (!externalUser.error) {\n _this.$store.commit('addNewUsers', [externalUser]);\n _this.users.push(externalUser);\n }\n });\n });\n },\n getWhoToFollow: function getWhoToFollow() {\n var _this2 = this;\n var credentials = this.$store.state.users.currentUser.credentials;\n if (credentials) {\n _services_api_api_service_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].suggestions({\n credentials: credentials\n }).then(function (reply) {\n _this2.showWhoToFollow(reply);\n });\n }\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (WhoToFollow);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL3NyYy9jb21wb25lbnRzL3dob190b19mb2xsb3cvd2hvX3RvX2ZvbGxvdy5qcz92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBMEQ7QUFDSDtBQUV2RCxJQUFNRSxXQUFXLEdBQUc7RUFDbEJDLFVBQVUsRUFBRTtJQUNWRixVQUFVLEVBQVZBLG9FQUFVQTtFQUNaLENBQUM7RUFDREcsSUFBSSxXQUFBQSxLQUFBLEVBQUk7SUFDTixPQUFPO01BQ0xDLEtBQUssRUFBRTtJQUNULENBQUM7RUFDSCxDQUFDO0VBQ0RDLE9BQU8sV0FBQUEsUUFBQSxFQUFJO0lBQ1QsSUFBSSxDQUFDQyxjQUFjLENBQUMsQ0FBQztFQUN2QixDQUFDO0VBQ0RDLE9BQU8sRUFBRTtJQUNQQyxlQUFlLFdBQUFBLGdCQUFFQyxLQUFLLEVBQUU7TUFBQSxJQUFBQyxLQUFBO01BQ3RCRCxLQUFLLENBQUNFLE9BQU8sQ0FBQyxVQUFDQyxDQUFDLEVBQUVDLEtBQUssRUFBSztRQUMxQkgsS0FBSSxDQUFDSSxNQUFNLENBQUNDLEtBQUssQ0FBQ0MsR0FBRyxDQUFDQyxpQkFBaUIsQ0FBQ0MsU0FBUyxDQUFDO1VBQUVDLEVBQUUsRUFBRVAsQ0FBQyxDQUFDUTtRQUFLLENBQUMsQ0FBQyxDQUM5REMsSUFBSSxDQUFDLFVBQUNDLFlBQVksRUFBSztVQUN0QixJQUFJLENBQUNBLFlBQVksQ0FBQ0MsS0FBSyxFQUFFO1lBQ3ZCYixLQUFJLENBQUNJLE1BQU0sQ0FBQ1UsTUFBTSxDQUFDLGFBQWEsRUFBRSxDQUFDRixZQUFZLENBQUMsQ0FBQztZQUNqRFosS0FBSSxDQUFDTixLQUFLLENBQUNxQixJQUFJLENBQUNILFlBQVksQ0FBQztVQUMvQjtRQUNGLENBQUMsQ0FBQztNQUNOLENBQUMsQ0FBQztJQUNKLENBQUM7SUFDRGhCLGNBQWMsV0FBQUEsZUFBQSxFQUFJO01BQUEsSUFBQW9CLE1BQUE7TUFDaEIsSUFBTUMsV0FBVyxHQUFHLElBQUksQ0FBQ2IsTUFBTSxDQUFDQyxLQUFLLENBQUNYLEtBQUssQ0FBQ3dCLFdBQVcsQ0FBQ0QsV0FBVztNQUNuRSxJQUFJQSxXQUFXLEVBQUU7UUFDZjVCLGdGQUFzQixDQUFDO1VBQUU0QixXQUFXLEVBQVhBO1FBQVksQ0FBQyxDQUFDLENBQ3BDTixJQUFJLENBQUMsVUFBQ1osS0FBSyxFQUFLO1VBQ2ZpQixNQUFJLENBQUNsQixlQUFlLENBQUNDLEtBQUssQ0FBQztRQUM3QixDQUFDLENBQUM7TUFDTjtJQUNGO0VBQ0Y7QUFDRixDQUFDO0FBRUQsaUVBQWVSLFdBQVciLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL2NvbXBvbmVudHMvd2hvX3RvX2ZvbGxvdy93aG9fdG9fZm9sbG93LmpzPzNkMjQiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGFwaVNlcnZpY2UgZnJvbSAnLi4vLi4vc2VydmljZXMvYXBpL2FwaS5zZXJ2aWNlLmpzJ1xuaW1wb3J0IEZvbGxvd0NhcmQgZnJvbSAnLi4vZm9sbG93X2NhcmQvZm9sbG93X2NhcmQudnVlJ1xuXG5jb25zdCBXaG9Ub0ZvbGxvdyA9IHtcbiAgY29tcG9uZW50czoge1xuICAgIEZvbGxvd0NhcmRcbiAgfSxcbiAgZGF0YSAoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHVzZXJzOiBbXVxuICAgIH1cbiAgfSxcbiAgbW91bnRlZCAoKSB7XG4gICAgdGhpcy5nZXRXaG9Ub0ZvbGxvdygpXG4gIH0sXG4gIG1ldGhvZHM6IHtcbiAgICBzaG93V2hvVG9Gb2xsb3cgKHJlcGx5KSB7XG4gICAgICByZXBseS5mb3JFYWNoKChpLCBpbmRleCkgPT4ge1xuICAgICAgICB0aGlzLiRzdG9yZS5zdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IuZmV0Y2hVc2VyKHsgaWQ6IGkuYWNjdCB9KVxuICAgICAgICAgIC50aGVuKChleHRlcm5hbFVzZXIpID0+IHtcbiAgICAgICAgICAgIGlmICghZXh0ZXJuYWxVc2VyLmVycm9yKSB7XG4gICAgICAgICAgICAgIHRoaXMuJHN0b3JlLmNvbW1pdCgnYWRkTmV3VXNlcnMnLCBbZXh0ZXJuYWxVc2VyXSlcbiAgICAgICAgICAgICAgdGhpcy51c2Vycy5wdXNoKGV4dGVybmFsVXNlcilcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KVxuICAgICAgfSlcbiAgICB9LFxuICAgIGdldFdob1RvRm9sbG93ICgpIHtcbiAgICAgIGNvbnN0IGNyZWRlbnRpYWxzID0gdGhpcy4kc3RvcmUuc3RhdGUudXNlcnMuY3VycmVudFVzZXIuY3JlZGVudGlhbHNcbiAgICAgIGlmIChjcmVkZW50aWFscykge1xuICAgICAgICBhcGlTZXJ2aWNlLnN1Z2dlc3Rpb25zKHsgY3JlZGVudGlhbHMgfSlcbiAgICAgICAgICAudGhlbigocmVwbHkpID0+IHtcbiAgICAgICAgICAgIHRoaXMuc2hvd1dob1RvRm9sbG93KHJlcGx5KVxuICAgICAgICAgIH0pXG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IFdob1RvRm9sbG93XG4iXSwibmFtZXMiOlsiYXBpU2VydmljZSIsIkZvbGxvd0NhcmQiLCJXaG9Ub0ZvbGxvdyIsImNvbXBvbmVudHMiLCJkYXRhIiwidXNlcnMiLCJtb3VudGVkIiwiZ2V0V2hvVG9Gb2xsb3ciLCJtZXRob2RzIiwic2hvd1dob1RvRm9sbG93IiwicmVwbHkiLCJfdGhpcyIsImZvckVhY2giLCJpIiwiaW5kZXgiLCIkc3RvcmUiLCJzdGF0ZSIsImFwaSIsImJhY2tlbmRJbnRlcmFjdG9yIiwiZmV0Y2hVc2VyIiwiaWQiLCJhY2N0IiwidGhlbiIsImV4dGVybmFsVXNlciIsImVycm9yIiwiY29tbWl0IiwicHVzaCIsIl90aGlzMiIsImNyZWRlbnRpYWxzIiwiY3VycmVudFVzZXIiLCJzdWdnZXN0aW9ucyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./src/components/who_to_follow/who_to_follow.js?vue&type=script&lang=js\n");
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js!./src/components/who_to_follow_panel/who_to_follow_panel.js?vue&type=script&lang=js":
/*!************************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js!./src/components/who_to_follow_panel/who_to_follow_panel.js?vue&type=script&lang=js ***!
\************************************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var lodash_shuffle__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/shuffle */ \"./node_modules/lodash/shuffle.js\");\n/* harmony import */ var lodash_shuffle__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_shuffle__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _services_api_api_service_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../services/api/api.service.js */ \"./src/services/api/api.service.js\");\n/* harmony import */ var src_services_user_profile_link_generator_user_profile_link_generator__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! src/services/user_profile_link_generator/user_profile_link_generator */ \"./src/services/user_profile_link_generator/user_profile_link_generator.js\");\n\n\n\nfunction showWhoToFollow(panel, reply) {\n var _this = this;\n var shuffled = lodash_shuffle__WEBPACK_IMPORTED_MODULE_0___default()(reply);\n panel.usersToFollow.forEach(function (toFollow, index) {\n var user = shuffled[index];\n var img = user.avatar || _this.$store.state.instance.defaultAvatar;\n var name = user.acct;\n toFollow.img = img;\n toFollow.name = name;\n panel.$store.state.api.backendInteractor.fetchUser({\n id: name\n }).then(function (externalUser) {\n if (!externalUser.error) {\n panel.$store.commit('addNewUsers', [externalUser]);\n toFollow.id = externalUser.id;\n }\n });\n });\n}\nfunction getWhoToFollow(panel) {\n var credentials = panel.$store.state.users.currentUser.credentials;\n if (credentials) {\n panel.usersToFollow.forEach(function (toFollow) {\n toFollow.name = 'Loading...';\n });\n _services_api_api_service_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].suggestions({\n credentials: credentials\n }).then(function (reply) {\n showWhoToFollow(panel, reply);\n });\n }\n}\nvar WhoToFollowPanel = {\n data: function data() {\n return {\n usersToFollow: []\n };\n },\n computed: {\n user: function user() {\n return this.$store.state.users.currentUser.screen_name;\n },\n suggestionsEnabled: function suggestionsEnabled() {\n return this.$store.state.instance.suggestionsEnabled;\n }\n },\n methods: {\n userProfileLink: function userProfileLink(id, name) {\n return (0,src_services_user_profile_link_generator_user_profile_link_generator__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(id, name, this.$store.state.instance.restrictedNicknames);\n }\n },\n watch: {\n user: function user(_user, oldUser) {\n if (this.suggestionsEnabled) {\n getWhoToFollow(this);\n }\n }\n },\n mounted: function mounted() {\n var _this2 = this;\n this.usersToFollow = new Array(3).fill().map(function (x) {\n return {\n img: _this2.$store.state.instance.defaultAvatar,\n name: '',\n id: 0\n };\n });\n if (this.suggestionsEnabled) {\n getWhoToFollow(this);\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (WhoToFollowPanel);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcyEuL3NyYy9jb21wb25lbnRzL3dob190b19mb2xsb3dfcGFuZWwvd2hvX3RvX2ZvbGxvd19wYW5lbC5qcz92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBMEQ7QUFDNEM7QUFHdEcsU0FBU0UsZUFBZUEsQ0FBRUMsS0FBSyxFQUFFQyxLQUFLLEVBQUU7RUFBQSxJQUFBQyxLQUFBO0VBQ3RDLElBQU1DLFFBQVEsR0FBR0MscURBQUEsQ0FBUUgsS0FBSyxDQUFDO0VBRS9CRCxLQUFLLENBQUNLLGFBQWEsQ0FBQ0MsT0FBTyxDQUFDLFVBQUNDLFFBQVEsRUFBRUMsS0FBSyxFQUFLO0lBQy9DLElBQU1DLElBQUksR0FBR04sUUFBUSxDQUFDSyxLQUFLLENBQUM7SUFDNUIsSUFBTUUsR0FBRyxHQUFHRCxJQUFJLENBQUNFLE1BQU0sSUFBSVQsS0FBSSxDQUFDVSxNQUFNLENBQUNDLEtBQUssQ0FBQ0MsUUFBUSxDQUFDQyxhQUFhO0lBQ25FLElBQU1DLElBQUksR0FBR1AsSUFBSSxDQUFDUSxJQUFJO0lBRXRCVixRQUFRLENBQUNHLEdBQUcsR0FBR0EsR0FBRztJQUNsQkgsUUFBUSxDQUFDUyxJQUFJLEdBQUdBLElBQUk7SUFFcEJoQixLQUFLLENBQUNZLE1BQU0sQ0FBQ0MsS0FBSyxDQUFDSyxHQUFHLENBQUNDLGlCQUFpQixDQUFDQyxTQUFTLENBQUM7TUFBRUMsRUFBRSxFQUFFTDtJQUFLLENBQUMsQ0FBQyxDQUM3RE0sSUFBSSxDQUFDLFVBQUNDLFlBQVksRUFBSztNQUN0QixJQUFJLENBQUNBLFlBQVksQ0FBQ0MsS0FBSyxFQUFFO1FBQ3ZCeEIsS0FBSyxDQUFDWSxNQUFNLENBQUNhLE1BQU0sQ0FBQyxhQUFhLEVBQUUsQ0FBQ0YsWUFBWSxDQUFDLENBQUM7UUFDbERoQixRQUFRLENBQUNjLEVBQUUsR0FBR0UsWUFBWSxDQUFDRixFQUFFO01BQy9CO0lBQ0YsQ0FBQyxDQUFDO0VBQ04sQ0FBQyxDQUFDO0FBQ0o7QUFFQSxTQUFTSyxjQUFjQSxDQUFFMUIsS0FBSyxFQUFFO0VBQzlCLElBQU0yQixXQUFXLEdBQUczQixLQUFLLENBQUNZLE1BQU0sQ0FBQ0MsS0FBSyxDQUFDZSxLQUFLLENBQUNDLFdBQVcsQ0FBQ0YsV0FBVztFQUNwRSxJQUFJQSxXQUFXLEVBQUU7SUFDZjNCLEtBQUssQ0FBQ0ssYUFBYSxDQUFDQyxPQUFPLENBQUMsVUFBQUMsUUFBUSxFQUFJO01BQ3RDQSxRQUFRLENBQUNTLElBQUksR0FBRyxZQUFZO0lBQzlCLENBQUMsQ0FBQztJQUNGbkIsZ0ZBQXNCLENBQUM7TUFBRThCLFdBQVcsRUFBWEE7SUFBWSxDQUFDLENBQUMsQ0FDcENMLElBQUksQ0FBQyxVQUFDckIsS0FBSyxFQUFLO01BQ2ZGLGVBQWUsQ0FBQ0MsS0FBSyxFQUFFQyxLQUFLLENBQUM7SUFDL0IsQ0FBQyxDQUFDO0VBQ047QUFDRjtBQUVBLElBQU04QixnQkFBZ0IsR0FBRztFQUN2QkMsSUFBSSxFQUFFLFNBQUFBLEtBQUE7SUFBQSxPQUFPO01BQ1gzQixhQUFhLEVBQUU7SUFDakIsQ0FBQztFQUFBLENBQUM7RUFDRjRCLFFBQVEsRUFBRTtJQUNSeEIsSUFBSSxFQUFFLFNBQUFBLEtBQUEsRUFBWTtNQUNoQixPQUFPLElBQUksQ0FBQ0csTUFBTSxDQUFDQyxLQUFLLENBQUNlLEtBQUssQ0FBQ0MsV0FBVyxDQUFDSyxXQUFXO0lBQ3hELENBQUM7SUFDREMsa0JBQWtCLFdBQUFBLG1CQUFBLEVBQUk7TUFDcEIsT0FBTyxJQUFJLENBQUN2QixNQUFNLENBQUNDLEtBQUssQ0FBQ0MsUUFBUSxDQUFDcUIsa0JBQWtCO0lBQ3REO0VBQ0YsQ0FBQztFQUNEQyxPQUFPLEVBQUU7SUFDUEMsZUFBZSxXQUFBQSxnQkFBRWhCLEVBQUUsRUFBRUwsSUFBSSxFQUFFO01BQ3pCLE9BQU9sQixnSEFBbUIsQ0FBQ3VCLEVBQUUsRUFBRUwsSUFBSSxFQUFFLElBQUksQ0FBQ0osTUFBTSxDQUFDQyxLQUFLLENBQUNDLFFBQVEsQ0FBQ3dCLG1CQUFtQixDQUFDO0lBQ3RGO0VBQ0YsQ0FBQztFQUNEQyxLQUFLLEVBQUU7SUFDTDlCLElBQUksRUFBRSxTQUFBQSxLQUFVQSxLQUFJLEVBQUUrQixPQUFPLEVBQUU7TUFDN0IsSUFBSSxJQUFJLENBQUNMLGtCQUFrQixFQUFFO1FBQzNCVCxjQUFjLENBQUMsSUFBSSxDQUFDO01BQ3RCO0lBQ0Y7RUFDRixDQUFDO0VBQ0RlLE9BQU8sRUFDTCxTQUFBQSxRQUFBLEVBQVk7SUFBQSxJQUFBQyxNQUFBO0lBQ1YsSUFBSSxDQUFDckMsYUFBYSxHQUFHLElBQUlzQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUNDLElBQUksQ0FBQyxDQUFDLENBQUNDLEdBQUcsQ0FBQyxVQUFBQyxDQUFDO01BQUEsT0FDNUM7UUFDRXBDLEdBQUcsRUFBRWdDLE1BQUksQ0FBQzlCLE1BQU0sQ0FBQ0MsS0FBSyxDQUFDQyxRQUFRLENBQUNDLGFBQWE7UUFDN0NDLElBQUksRUFBRSxFQUFFO1FBQ1JLLEVBQUUsRUFBRTtNQUNOLENBQUM7SUFBQSxDQUNGLENBQUM7SUFDRixJQUFJLElBQUksQ0FBQ2Msa0JBQWtCLEVBQUU7TUFDM0JULGNBQWMsQ0FBQyxJQUFJLENBQUM7SUFDdEI7RUFDRjtBQUNKLENBQUM7QUFFRCxpRUFBZUssZ0JBQWdCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9jb21wb25lbnRzL3dob190b19mb2xsb3dfcGFuZWwvd2hvX3RvX2ZvbGxvd19wYW5lbC5qcz8yY2Q4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBhcGlTZXJ2aWNlIGZyb20gJy4uLy4uL3NlcnZpY2VzL2FwaS9hcGkuc2VydmljZS5qcydcbmltcG9ydCBnZW5lcmF0ZVByb2ZpbGVMaW5rIGZyb20gJ3NyYy9zZXJ2aWNlcy91c2VyX3Byb2ZpbGVfbGlua19nZW5lcmF0b3IvdXNlcl9wcm9maWxlX2xpbmtfZ2VuZXJhdG9yJ1xuaW1wb3J0IHsgc2h1ZmZsZSB9IGZyb20gJ2xvZGFzaCdcblxuZnVuY3Rpb24gc2hvd1dob1RvRm9sbG93IChwYW5lbCwgcmVwbHkpIHtcbiAgY29uc3Qgc2h1ZmZsZWQgPSBzaHVmZmxlKHJlcGx5KVxuXG4gIHBhbmVsLnVzZXJzVG9Gb2xsb3cuZm9yRWFjaCgodG9Gb2xsb3csIGluZGV4KSA9PiB7XG4gICAgY29uc3QgdXNlciA9IHNodWZmbGVkW2luZGV4XVxuICAgIGNvbnN0IGltZyA9IHVzZXIuYXZhdGFyIHx8IHRoaXMuJHN0b3JlLnN0YXRlLmluc3RhbmNlLmRlZmF1bHRBdmF0YXJcbiAgICBjb25zdCBuYW1lID0gdXNlci5hY2N0XG5cbiAgICB0b0ZvbGxvdy5pbWcgPSBpbWdcbiAgICB0b0ZvbGxvdy5uYW1lID0gbmFtZVxuXG4gICAgcGFuZWwuJHN0b3JlLnN0YXRlLmFwaS5iYWNrZW5kSW50ZXJhY3Rvci5mZXRjaFVzZXIoeyBpZDogbmFtZSB9KVxuICAgICAgLnRoZW4oKGV4dGVybmFsVXNlcikgPT4ge1xuICAgICAgICBpZiAoIWV4dGVybmFsVXNlci5lcnJvcikge1xuICAgICAgICAgIHBhbmVsLiRzdG9yZS5jb21taXQoJ2FkZE5ld1VzZXJzJywgW2V4dGVybmFsVXNlcl0pXG4gICAgICAgICAgdG9Gb2xsb3cuaWQgPSBleHRlcm5hbFVzZXIuaWRcbiAgICAgICAgfVxuICAgICAgfSlcbiAgfSlcbn1cblxuZnVuY3Rpb24gZ2V0V2hvVG9Gb2xsb3cgKHBhbmVsKSB7XG4gIGNvbnN0IGNyZWRlbnRpYWxzID0gcGFuZWwuJHN0b3JlLnN0YXRlLnVzZXJzLmN1cnJlbnRVc2VyLmNyZWRlbnRpYWxzXG4gIGlmIChjcmVkZW50aWFscykge1xuICAgIHBhbmVsLnVzZXJzVG9Gb2xsb3cuZm9yRWFjaCh0b0ZvbGxvdyA9PiB7XG4gICAgICB0b0ZvbGxvdy5uYW1lID0gJ0xvYWRpbmcuLi4nXG4gICAgfSlcbiAgICBhcGlTZXJ2aWNlLnN1Z2dlc3Rpb25zKHsgY3JlZGVudGlhbHMgfSlcbiAgICAgIC50aGVuKChyZXBseSkgPT4ge1xuICAgICAgICBzaG93V2hvVG9Gb2xsb3cocGFuZWwsIHJlcGx5KVxuICAgICAgfSlcbiAgfVxufVxuXG5jb25zdCBXaG9Ub0ZvbGxvd1BhbmVsID0ge1xuICBkYXRhOiAoKSA9PiAoe1xuICAgIHVzZXJzVG9Gb2xsb3c6IFtdXG4gIH0pLFxuICBjb21wdXRlZDoge1xuICAgIHVzZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgIHJldHVybiB0aGlzLiRzdG9yZS5zdGF0ZS51c2Vycy5jdXJyZW50VXNlci5zY3JlZW5fbmFtZVxuICAgIH0sXG4gICAgc3VnZ2VzdGlvbnNFbmFibGVkICgpIHtcbiAgICAgIHJldHVybiB0aGlzLiRzdG9yZS5zdGF0ZS5pbnN0YW5jZS5zdWdnZXN0aW9uc0VuYWJsZWRcbiAgICB9XG4gIH0sXG4gIG1ldGhvZHM6IHtcbiAgICB1c2VyUHJvZmlsZUxpbmsgKGlkLCBuYW1lKSB7XG4gICAgICByZXR1cm4gZ2VuZXJhdGVQcm9maWxlTGluayhpZCwgbmFtZSwgdGhpcy4kc3RvcmUuc3RhdGUuaW5zdGFuY2UucmVzdHJpY3RlZE5pY2tuYW1lcylcbiAgICB9XG4gIH0sXG4gIHdhdGNoOiB7XG4gICAgdXNlcjogZnVuY3Rpb24gKHVzZXIsIG9sZFVzZXIpIHtcbiAgICAgIGlmICh0aGlzLnN1Z2dlc3Rpb25zRW5hYmxlZCkge1xuICAgICAgICBnZXRXaG9Ub0ZvbGxvdyh0aGlzKVxuICAgICAgfVxuICAgIH1cbiAgfSxcbiAgbW91bnRlZDpcbiAgICBmdW5jdGlvbiAoKSB7XG4gICAgICB0aGlzLnVzZXJzVG9Gb2xsb3cgPSBuZXcgQXJyYXkoMykuZmlsbCgpLm1hcCh4ID0+IChcbiAgICAgICAge1xuICAgICAgICAgIGltZzogdGhpcy4kc3RvcmUuc3RhdGUuaW5zdGFuY2UuZGVmYXVsdEF2YXRhcixcbiAgICAgICAgICBuYW1lOiAnJyxcbiAgICAgICAgICBpZDogMFxuICAgICAgICB9XG4gICAgICApKVxuICAgICAgaWYgKHRoaXMuc3VnZ2VzdGlvbnNFbmFibGVkKSB7XG4gICAgICAgIGdldFdob1RvRm9sbG93KHRoaXMpXG4gICAgICB9XG4gICAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBXaG9Ub0ZvbGxvd1BhbmVsXG4iXSwibmFtZXMiOlsiYXBpU2VydmljZSIsImdlbmVyYXRlUHJvZmlsZUxpbmsiLCJzaG93V2hvVG9Gb2xsb3ciLCJwYW5lbCIsInJlcGx5IiwiX3RoaXMiLCJzaHVmZmxlZCIsIl9zaHVmZmxlIiwidXNlcnNUb0ZvbGxvdyIsImZvckVhY2giLCJ0b0ZvbGxvdyIsImluZGV4IiwidXNlciIsImltZyIsImF2YXRhciIsIiRzdG9yZSIsInN0YXRlIiwiaW5zdGFuY2UiLCJkZWZhdWx0QXZhdGFyIiwibmFtZSIsImFjY3QiLCJhcGkiLCJiYWNrZW5kSW50ZXJhY3RvciIsImZldGNoVXNlciIsImlkIiwidGhlbiIsImV4dGVybmFsVXNlciIsImVycm9yIiwiY29tbWl0IiwiZ2V0V2hvVG9Gb2xsb3ciLCJjcmVkZW50aWFscyIsInVzZXJzIiwiY3VycmVudFVzZXIiLCJzdWdnZXN0aW9ucyIsIldob1RvRm9sbG93UGFuZWwiLCJkYXRhIiwiY29tcHV0ZWQiLCJzY3JlZW5fbmFtZSIsInN1Z2dlc3Rpb25zRW5hYmxlZCIsIm1ldGhvZHMiLCJ1c2VyUHJvZmlsZUxpbmsiLCJyZXN0cmljdGVkTmlja25hbWVzIiwid2F0Y2giLCJvbGRVc2VyIiwibW91bnRlZCIsIl90aGlzMiIsIkFycmF5IiwiZmlsbCIsIm1hcCIsIngiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./src/components/who_to_follow_panel/who_to_follow_panel.js?vue&type=script&lang=js\n");
/***/ }),
/***/ "./src/directives/body_scroll_lock.js":
/*!********************************************!*\
!*** ./src/directives/body_scroll_lock.js ***!
\********************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var body_scroll_lock__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! body-scroll-lock */ \"./node_modules/body-scroll-lock/lib/bodyScrollLock.esm.js\");\n\nvar previousNavPaddingRight;\nvar previousAppBgWrapperRight;\nvar lockerEls = new Set([]);\nvar disableBodyScroll = function disableBodyScroll(el) {\n var scrollBarGap = window.innerWidth - document.documentElement.clientWidth;\n body_scroll_lock__WEBPACK_IMPORTED_MODULE_0__.disableBodyScroll(el, {\n reserveScrollBarGap: true\n });\n lockerEls.add(el);\n setTimeout(function () {\n if (lockerEls.size <= 1) {\n // If previousNavPaddingRight is already set, don't set it again.\n if (previousNavPaddingRight === undefined) {\n var navEl = document.getElementById('nav');\n previousNavPaddingRight = window.getComputedStyle(navEl).getPropertyValue('padding-right');\n navEl.style.paddingRight = previousNavPaddingRight ? \"calc(\".concat(previousNavPaddingRight, \" + \").concat(scrollBarGap, \"px)\") : \"\".concat(scrollBarGap, \"px\");\n }\n // If previousAppBgWrapeprRight is already set, don't set it again.\n if (previousAppBgWrapperRight === undefined) {\n var appBgWrapperEl = document.getElementById('app_bg_wrapper');\n previousAppBgWrapperRight = window.getComputedStyle(appBgWrapperEl).getPropertyValue('right');\n appBgWrapperEl.style.right = previousAppBgWrapperRight ? \"calc(\".concat(previousAppBgWrapperRight, \" + \").concat(scrollBarGap, \"px)\") : \"\".concat(scrollBarGap, \"px\");\n }\n document.body.classList.add('scroll-locked');\n }\n });\n};\nvar enableBodyScroll = function enableBodyScroll(el) {\n lockerEls[\"delete\"](el);\n setTimeout(function () {\n if (lockerEls.size === 0) {\n if (previousNavPaddingRight !== undefined) {\n document.getElementById('nav').style.paddingRight = previousNavPaddingRight;\n // Restore previousNavPaddingRight to undefined so disableBodyScroll knows it can be set again.\n previousNavPaddingRight = undefined;\n }\n if (previousAppBgWrapperRight !== undefined) {\n document.getElementById('app_bg_wrapper').style.right = previousAppBgWrapperRight;\n // Restore previousAppBgWrapperRight to undefined so disableBodyScroll knows it can be set again.\n previousAppBgWrapperRight = undefined;\n }\n document.body.classList.remove('scroll-locked');\n }\n });\n body_scroll_lock__WEBPACK_IMPORTED_MODULE_0__.enableBodyScroll(el);\n};\nvar directive = {\n mounted: function mounted(el, binding) {\n if (binding.value) {\n disableBodyScroll(el);\n }\n },\n updated: function updated(el, binding) {\n if (binding.oldValue === binding.value) {\n return;\n }\n if (binding.value) {\n disableBodyScroll(el);\n } else {\n enableBodyScroll(el);\n }\n },\n unmounted: function unmounted(el) {\n enableBodyScroll(el);\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (function (Vue) {\n Vue.directive('body-scroll-lock', directive);\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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RSxFQUFFMkIsT0FBTyxFQUFLO0lBQ3hCLElBQUlBLE9BQU8sQ0FBQ0MsS0FBSyxFQUFFO01BQ2pCN0IsaUJBQWlCLENBQUNDLEVBQUUsQ0FBQztJQUN2QjtFQUNGLENBQUM7RUFDRDZCLE9BQU8sRUFBRSxTQUFBQSxRQUFDN0IsRUFBRSxFQUFFMkIsT0FBTyxFQUFLO0lBQ3hCLElBQUlBLE9BQU8sQ0FBQ0csUUFBUSxLQUFLSCxPQUFPLENBQUNDLEtBQUssRUFBRTtNQUN0QztJQUNGO0lBRUEsSUFBSUQsT0FBTyxDQUFDQyxLQUFLLEVBQUU7TUFDakI3QixpQkFBaUIsQ0FBQ0MsRUFBRSxDQUFDO0lBQ3ZCLENBQUMsTUFBTTtNQUNMdUIsZ0JBQWdCLENBQUN2QixFQUFFLENBQUM7SUFDdEI7RUFDRixDQUFDO0VBQ0QrQixTQUFTLEVBQUUsU0FBQUEsVUFBQy9CLEVBQUUsRUFBSztJQUNqQnVCLGdCQUFnQixDQUFDdkIsRUFBRSxDQUFDO0VBQ3RCO0FBQ0YsQ0FBQztBQUVELGlFQUFlLFVBQUNnQyxHQUFHLEVBQUs7RUFDdEJBLEdBQUcsQ0FBQ1AsU0FBUyxDQUFDLGtCQUFrQixFQUFFQSxTQUFTLENBQUM7QUFDOUMsQ0FBQyIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvZGlyZWN0aXZlcy9ib2R5X3Njcm9sbF9sb2NrLmpzPzRlNmUiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYm9keVNjcm9sbExvY2sgZnJvbSAnYm9keS1zY3JvbGwtbG9jaydcblxubGV0IHByZXZpb3VzTmF2UGFkZGluZ1JpZ2h0XG5sZXQgcHJldmlvdXNBcHBCZ1dyYXBwZXJSaWdodFxuY29uc3QgbG9ja2VyRWxzID0gbmV3IFNldChbXSlcblxuY29uc3QgZGlzYWJsZUJvZHlTY3JvbGwgPSAoZWwpID0+IHtcbiAgY29uc3Qgc2Nyb2xsQmFyR2FwID0gd2luZG93LmlubmVyV2lkdGggLSBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50V2lkdGhcbiAgYm9keVNjcm9sbExvY2suZGlzYWJsZUJvZHlTY3JvbGwoZWwsIHtcbiAgICByZXNlcnZlU2Nyb2xsQmFyR2FwOiB0cnVlXG4gIH0pXG4gIGxvY2tlckVscy5hZGQoZWwpXG4gIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgIGlmIChsb2NrZXJFbHMuc2l6ZSA8PSAxKSB7XG4gICAgICAvLyBJZiBwcmV2aW91c05hdlBhZGRpbmdSaWdodCBpcyBhbHJlYWR5IHNldCwgZG9uJ3Qgc2V0IGl0IGFnYWluLlxuICAgICAgaWYgKHByZXZpb3VzTmF2UGFkZGluZ1JpZ2h0ID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgY29uc3QgbmF2RWwgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbmF2JylcbiAgICAgICAgcHJldmlvdXNOYXZQYWRkaW5nUmlnaHQgPSB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShuYXZFbCkuZ2V0UHJvcGVydHlWYWx1ZSgncGFkZGluZy1yaWdodCcpXG4gICAgICAgIG5hdkVsLnN0eWxlLnBhZGRpbmdSaWdodCA9IHByZXZpb3VzTmF2UGFkZGluZ1JpZ2h0ID8gYGNhbGMoJHtwcmV2aW91c05hdlBhZGRpbmdSaWdodH0gKyAke3Njcm9sbEJhckdhcH1weClgIDogYCR7c2Nyb2xsQmFyR2FwfXB4YFxuICAgICAgfVxuICAgICAgLy8gSWYgcHJldmlvdXNBcHBCZ1dyYXBlcHJSaWdodCBpcyBhbHJlYWR5IHNldCwgZG9uJ3Qgc2V0IGl0IGFnYWluLlxuICAgICAgaWYgKHByZXZpb3VzQXBwQmdXcmFwcGVyUmlnaHQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjb25zdCBhcHBCZ1dyYXBwZXJFbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdhcHBfYmdfd3JhcHBlcicpXG4gICAgICAgIHByZXZpb3VzQXBwQmdXcmFwcGVyUmlnaHQgPSB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShhcHBCZ1dyYXBwZXJFbCkuZ2V0UHJvcGVydHlWYWx1ZSgncmlnaHQnKVxuICAgICAgICBhcHBCZ1dyYXBwZXJFbC5zdHlsZS5yaWdodCA9IHByZXZpb3VzQXBwQmdXcmFwcGVyUmlnaHQgPyBgY2FsYygke3ByZXZpb3VzQXBwQmdXcmFwcGVyUmlnaHR9ICsgJHtzY3JvbGxCYXJHYXB9cHgpYCA6IGAke3Njcm9sbEJhckdhcH1weGBcbiAgICAgIH1cbiAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LmFkZCgnc2Nyb2xsLWxvY2tlZCcpXG4gICAgfVxuICB9KVxufVxuXG5jb25zdCBlbmFibGVCb2R5U2Nyb2xsID0gKGVsKSA9PiB7XG4gIGxvY2tlckVscy5kZWxldGUoZWwpXG4gIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgIGlmIChsb2NrZXJFbHMuc2l6ZSA9PT0gMCkge1xuICAgICAgaWYgKHByZXZpb3VzTmF2UGFkZGluZ1JpZ2h0ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ25hdicpLnN0eWxlLnBhZGRpbmdSaWdodCA9IHByZXZpb3VzTmF2UGFkZGluZ1JpZ2h0XG4gICAgICAgIC8vIFJlc3RvcmUgcHJldmlvdXNOYXZQYWRkaW5nUmlnaHQgdG8gdW5kZWZpbmVkIHNvIGRpc2FibGVCb2R5U2Nyb2xsIGtub3dzIGl0IGNhbiBiZSBzZXQgYWdhaW4uXG4gICAgICAgIHByZXZpb3VzTmF2UGFkZGluZ1JpZ2h0ID0gdW5kZWZpbmVkXG4gICAgICB9XG4gICAgICBpZiAocHJldmlvdXNBcHBCZ1dyYXBwZXJSaWdodCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdhcHBfYmdfd3JhcHBlcicpLnN0eWxlLnJpZ2h0ID0gcHJldmlvdXNBcHBCZ1dyYXBwZXJSaWdodFxuICAgICAgICAvLyBSZXN0b3JlIHByZXZpb3VzQXBwQmdXcmFwcGVyUmlnaHQgdG8gdW5kZWZpbmVkIHNvIGRpc2FibGVCb2R5U2Nyb2xsIGtub3dzIGl0IGNhbiBiZSBzZXQgYWdhaW4uXG4gICAgICAgIHByZXZpb3VzQXBwQmdXcmFwcGVyUmlnaHQgPSB1bmRlZmluZWRcbiAgICAgIH1cbiAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZSgnc2Nyb2xsLWxvY2tlZCcpXG4gICAgfVxuICB9KVxuICBib2R5U2Nyb2xsTG9jay5lbmFibGVCb2R5U2Nyb2xsKGVsKVxufVxuXG5jb25zdCBkaXJlY3RpdmUgPSB7XG4gIG1vdW50ZWQ6IChlbCwgYmluZGluZykgPT4ge1xuICAgIGlmIChiaW5kaW5nLnZhbHVlKSB7XG4gICAgICBkaXNhYmxlQm9keVNjcm9sbChlbClcbiAgICB9XG4gIH0sXG4gIHVwZGF0ZWQ6IChlbCwgYmluZGluZykgPT4ge1xuICAgIGlmIChiaW5kaW5nLm9sZFZhbHVlID09PSBiaW5kaW5nLnZhbHVlKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBpZiAoYmluZGluZy52YWx1ZSkge1xuICAgICAgZGlzYWJsZUJvZHlTY3JvbGwoZWwpXG4gICAgfSBlbHNlIHtcbiAgICAgIGVuYWJsZUJvZHlTY3JvbGwoZWwpXG4gICAgfVxuICB9LFxuICB1bm1vdW50ZWQ6IChlbCkgPT4ge1xuICAgIGVuYWJsZUJvZHlTY3JvbGwoZWwpXG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgKFZ1ZSkgPT4ge1xuICBWdWUuZGlyZWN0aXZlKCdib2R5LXNjcm9sbC1sb2NrJywgZGlyZWN0aXZlKVxufVxuIl0sIm5hbWVzIjpbImJvZHlTY3JvbGxMb2NrIiwicHJldmlvdXNOYXZQYWRkaW5nUmlnaHQiLCJwcmV2aW91c0FwcEJnV3JhcHBlclJpZ2h0IiwibG9ja2VyRWxzIiwiU2V0IiwiZGlzYWJsZUJvZHlTY3JvbGwiLCJlbCIsInNjcm9sbEJhckdhcCIsIndpbmRvdyIsImlubmVyV2lkdGgiLCJkb2N1bWVudCIsImRvY3VtZW50RWxlbWVudCIsImNsaWVudFdpZHRoIiwicmVzZXJ2ZVNjcm9sbEJhckdhcCIsImFkZCIsInNldFRpbWVvdXQiLCJzaXplIiwidW5kZWZpbmVkIiwibmF2RWwiLCJnZXRFbGVtZW50QnlJZCIsImdldENvbXB1dGVkU3R5bGUiLCJnZXRQcm9wZXJ0eVZhbHVlIiwic3R5bGUiLCJwYWRkaW5nUmlnaHQiLCJjb25jYXQiLCJhcHBCZ1dyYXBwZXJFbCIsInJpZ2h0IiwiYm9keSIsImNsYXNzTGlzdCIsImVuYWJsZUJvZHlTY3JvbGwiLCJyZW1vdmUiLCJkaXJlY3RpdmUiLCJtb3VudGVkIiwiYmluZGluZyIsInZhbHVlIiwidXBkYXRlZCIsIm9sZFZhbHVlIiwidW5tb3VudGVkIiwiVnVlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/directives/body_scroll_lock.js\n");
/***/ }),
/***/ "./src/hocs/with_load_more/with_load_more.jsx":
/*!****************************************************!*\
!*** ./src/hocs/with_load_more/with_load_more.jsx ***!
\****************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"./node_modules/@babel/runtime/helpers/esm/defineProperty.js\");\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.runtime.esm-bundler.js\");\n/* harmony import */ var lodash_isEmpty__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! lodash/isEmpty */ \"./node_modules/lodash/isEmpty.js\");\n/* harmony import */ var lodash_isEmpty__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(lodash_isEmpty__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _services_component_utils_component_utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../services/component_utils/component_utils */ \"./src/services/component_utils/component_utils.js\");\n/* harmony import */ var _with_load_more_scss__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./with_load_more.scss */ \"./src/hocs/with_load_more/with_load_more.scss\");\n/* harmony import */ var _with_load_more_scss__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_with_load_more_scss__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var _fortawesome_vue_fontawesome__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @fortawesome/vue-fontawesome */ \"./node_modules/@fortawesome/vue-fontawesome/index.es.js\");\n/* harmony import */ var _fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @fortawesome/fontawesome-svg-core */ \"./node_modules/@fortawesome/fontawesome-svg-core/index.mjs\");\n/* harmony import */ var _fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @fortawesome/free-solid-svg-icons */ \"./node_modules/@fortawesome/free-solid-svg-icons/index.mjs\");\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n// eslint-disable-next-line no-unused\n\n\n\n\n\n\n\nfunction _isSlot(s) {\n return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !(0,vue__WEBPACK_IMPORTED_MODULE_1__.isVNode)(s);\n}\n_fortawesome_fontawesome_svg_core__WEBPACK_IMPORTED_MODULE_6__.library.add(_fortawesome_free_solid_svg_icons__WEBPACK_IMPORTED_MODULE_7__.faCircleNotch);\nvar withLoadMore = function withLoadMore(_ref) {\n var fetch = _ref.fetch,\n select = _ref.select,\n _unmounted = _ref.unmounted,\n _ref$childPropName = _ref.childPropName,\n childPropName = _ref$childPropName === void 0 ? 'entries' : _ref$childPropName,\n _ref$additionalPropNa = _ref.additionalPropNames,\n additionalPropNames = _ref$additionalPropNa === void 0 ? [] : _ref$additionalPropNa;\n return function (WrappedComponent) {\n var originalProps = Object.keys((0,_services_component_utils_component_utils__WEBPACK_IMPORTED_MODULE_3__.getComponentProps)(WrappedComponent));\n var props = originalProps.filter(function (v) {\n return v !== childPropName;\n }).concat(additionalPropNames);\n return {\n props: props,\n data: function data() {\n return {\n loading: false,\n bottomedOut: false,\n error: false,\n entries: []\n };\n },\n created: function created() {\n window.addEventListener('scroll', this.scrollLoad);\n if (this.entries.length === 0) {\n this.fetchEntries();\n }\n },\n unmounted: function unmounted() {\n window.removeEventListener('scroll', this.scrollLoad);\n _unmounted && _unmounted(this.$props, this.$store);\n },\n methods: {\n // Entries is not a computed because computed can't track the dynamic\n // selector for changes and won't trigger after fetch.\n updateEntries: function updateEntries() {\n this.entries = select(this.$props, this.$store) || [];\n },\n fetchEntries: function fetchEntries() {\n var _this = this;\n if (!this.loading) {\n this.loading = true;\n this.error = false;\n fetch(this.$props, this.$store).then(function (newEntries) {\n _this.loading = false;\n _this.bottomedOut = lodash_isEmpty__WEBPACK_IMPORTED_MODULE_2___default()(newEntries);\n })[\"catch\"](function () {\n _this.loading = false;\n _this.error = true;\n })[\"finally\"](function () {\n _this.updateEntries();\n });\n }\n },\n scrollLoad: function scrollLoad(e) {\n var bodyBRect = document.body.getBoundingClientRect();\n var height = Math.max(bodyBRect.height, -bodyBRect.y);\n if (this.loading === false && this.bottomedOut === false && this.$el.offsetHeight > 0 && window.innerHeight + window.pageYOffset >= height - 750) {\n this.fetchEntries();\n }\n }\n },\n render: function render() {\n var props = _objectSpread(_objectSpread({}, this.$props), {}, (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, childPropName, this.entries));\n var children = this.$slots;\n return (0,vue__WEBPACK_IMPORTED_MODULE_1__.createVNode)(\"div\", {\n \"class\": \"with-load-more\"\n }, [(0,vue__WEBPACK_IMPORTED_MODULE_1__.createVNode)(WrappedComponent, props, _isSlot(children) ? children : {\n \"default\": function _default() {\n return [children];\n }\n }), (0,vue__WEBPACK_IMPORTED_MODULE_1__.createVNode)(\"div\", {\n \"class\": \"with-load-more-footer\"\n }, [this.error && (0,vue__WEBPACK_IMPORTED_MODULE_1__.createVNode)(\"button\", {\n \"onClick\": this.fetchEntries,\n \"class\": \"button-unstyled -link -fullwidth alert error\"\n }, [this.$t('general.generic_error')]), !this.error && this.loading && (0,vue__WEBPACK_IMPORTED_MODULE_1__.createVNode)(_fortawesome_vue_fontawesome__WEBPACK_IMPORTED_MODULE_5__.FontAwesomeIcon, {\n \"spin\": true,\n \"icon\": \"circle-notch\"\n }, null), !this.error && !this.loading && !this.bottomedOut && (0,vue__WEBPACK_IMPORTED_MODULE_1__.createVNode)(\"a\", {\n \"onClick\": this.fetchEntries,\n \"role\": \"button\",\n \"tabindex\": \"0\"\n }, [this.$t('general.more')])])]);\n }\n };\n };\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (withLoadMore);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvaG9jcy93aXRoX2xvYWRfbW9yZS93aXRoX2xvYWRfbW9yZS5qc3guanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFDdUI7QUFDYTtBQUM4QztBQUNwRDtBQUUwQztBQUNiO0FBR2pCO0FBQUEsU0FBQU8sUUFBQUMsQ0FBQTtFQUFBLGNBQUFBLENBQUEsbUJBQUFDLE1BQUEsQ0FBQUMsU0FBQSxDQUFBQyxRQUFBLENBQUFDLElBQUEsQ0FBQUosQ0FBQSw0QkFBQUssNENBQUEsQ0FBQUwsQ0FBQTtBQUFBO0FBRTFDSCwwRUFBVyxDQUNUQyw0RUFDRixDQUFDO0FBRUQsSUFBTVMsWUFBWSxHQUFHLFNBQWZBLFlBQVlBLENBQUFDLElBQUE7RUFBQSxJQUNoQkMsS0FBSyxHQUFBRCxJQUFBLENBQUxDLEtBQUs7SUFDTEMsTUFBTSxHQUFBRixJQUFBLENBQU5FLE1BQU07SUFDTkMsVUFBUyxHQUFBSCxJQUFBLENBQVRHLFNBQVM7SUFBQUMsa0JBQUEsR0FBQUosSUFBQSxDQUNUSyxhQUFhO0lBQWJBLGFBQWEsR0FBQUQsa0JBQUEsY0FBRyxTQUFTLEdBQUFBLGtCQUFBO0lBQUFFLHFCQUFBLEdBQUFOLElBQUEsQ0FDekJPLG1CQUFtQjtJQUFuQkEsbUJBQW1CLEdBQUFELHFCQUFBLGNBQUcsRUFBRSxHQUFBQSxxQkFBQTtFQUFBLE9BQ3BCLFVBQUNFLGdCQUFnQixFQUFLO0lBQzFCLElBQU1DLGFBQWEsR0FBR2hCLE1BQU0sQ0FBQ2lCLElBQUksQ0FBQ3hCLDRGQUFpQixDQUFDc0IsZ0JBQWdCLENBQUMsQ0FBQztJQUN0RSxJQUFNRyxLQUFLLEdBQUdGLGFBQWEsQ0FBQ0csTUFBTSxDQUFDLFVBQUFDLENBQUM7TUFBQSxPQUFJQSxDQUFDLEtBQUtSLGFBQWE7SUFBQSxFQUFDLENBQUNTLE1BQU0sQ0FBQ1AsbUJBQW1CLENBQUM7SUFFeEYsT0FBTztNQUNMSSxLQUFLLEVBQUxBLEtBQUs7TUFDTEksSUFBSSxXQUFBQSxLQUFBLEVBQUk7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Z0JBQUEsRUFDSEcsS0FBSyxFQUFBcEIsT0FBQSxDQUN4QjJELFFBQVEsSUFBUkEsUUFBUTtVQUFBLG9CQUFBRyxTQUFBO1lBQUEsUUFBUkgsUUFBUTtVQUFBO1FBQUEsSUFBQUUsZ0RBQUE7VUFBQSxTQUVBO1FBQXVCLElBQy9CLElBQUksQ0FBQ2xDLEtBQUssSUFBQWtDLGdEQUFBO1VBQUEsV0FDUSxJQUFJLENBQUMzQixZQUFZO1VBQUEsU0FBUTtRQUE4QyxJQUNyRixJQUFJLENBQUM2QixFQUFFLENBQUMsdUJBQXVCLENBQUMsRUFDMUIsRUFFVixDQUFDLElBQUksQ0FBQ3BDLEtBQUssSUFBSSxJQUFJLENBQUNGLE9BQU8sSUFBQW9DLGdEQUFBLENBQUFoRSx5RUFBQTtVQUFBO1VBQUEsUUFBc0I7UUFBYyxRQUFFLEVBQ2pFLENBQUMsSUFBSSxDQUFDOEIsS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDRixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUNDLFdBQVcsSUFBQW1DLGdEQUFBO1VBQUEsV0FBZ0IsSUFBSSxDQUFDM0IsWUFBWTtVQUFBLFFBQU8sUUFBUTtVQUFBLFlBQVU7UUFBRyxJQUFFLElBQUksQ0FBQzZCLEVBQUUsQ0FBQyxjQUFjLENBQUMsRUFBSztNQUlySjtJQUNGLENBQUM7RUFDSCxDQUFDO0FBQUE7QUFFRCxpRUFBZXZELFlBQVkiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL2hvY3Mvd2l0aF9sb2FkX21vcmUvd2l0aF9sb2FkX21vcmUuanN4P2U2OTQiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVudXNlZFxuaW1wb3J0IHsgaCB9IGZyb20gJ3Z1ZSdcbmltcG9ydCBpc0VtcHR5IGZyb20gJ2xvZGFzaC9pc0VtcHR5J1xuaW1wb3J0IHsgZ2V0Q29tcG9uZW50UHJvcHMgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9jb21wb25lbnRfdXRpbHMvY29tcG9uZW50X3V0aWxzJ1xuaW1wb3J0ICcuL3dpdGhfbG9hZF9tb3JlLnNjc3MnXG5cbmltcG9ydCB7IEZvbnRBd2Vzb21lSWNvbiBhcyBGQUljb24gfSBmcm9tICdAZm9ydGF3ZXNvbWUvdnVlLWZvbnRhd2Vzb21lJ1xuaW1wb3J0IHsgbGlicmFyeSB9IGZyb20gJ0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1zdmctY29yZSdcbmltcG9ydCB7XG4gIGZhQ2lyY2xlTm90Y2hcbn0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZyZWUtc29saWQtc3ZnLWljb25zJ1xuXG5saWJyYXJ5LmFkZChcbiAgZmFDaXJjbGVOb3RjaFxuKVxuXG5jb25zdCB3aXRoTG9hZE1vcmUgPSAoe1xuICBmZXRjaCwgLy8gZnVuY3Rpb24gdG8gZmV0Y2ggZW50cmllcyBhbmQgcmV0dXJuIGEgcHJvbWlzZVxuICBzZWxlY3QsIC8vIGZ1bmN0aW9uIHRvIHNlbGVjdCBkYXRhIGZyb20gc3RvcmVcbiAgdW5tb3VudGVkLCAvLyBmdW5jdGlvbiBjYWxsZWQgYXQgXCJkZXN0cm95ZWRcIiBsaWZlY3ljbGVcbiAgY2hpbGRQcm9wTmFtZSA9ICdlbnRyaWVzJywgLy8gbmFtZSBvZiB0aGUgcHJvcCB0byBiZSBwYXNzZWQgaW50byB0aGUgd3JhcHBlZCBjb21wb25lbnRcbiAgYWRkaXRpb25hbFByb3BOYW1lcyA9IFtdIC8vIGFkZGl0aW9uYWwgcHJvcCBuYW1lIGxpc3Qgb2YgdGhlIHdyYXBwZXIgY29tcG9uZW50XG59KSA9PiAoV3JhcHBlZENvbXBvbmVudCkgPT4ge1xuICBjb25zdCBvcmlnaW5hbFByb3BzID0gT2JqZWN0LmtleXMoZ2V0Q29tcG9uZW50UHJvcHMoV3JhcHBlZENvbXBvbmVudCkpXG4gIGNvbnN0IHByb3BzID0gb3JpZ2luYWxQcm9wcy5maWx0ZXIodiA9PiB2ICE9PSBjaGlsZFByb3BOYW1lKS5jb25jYXQoYWRkaXRpb25hbFByb3BOYW1lcylcblxuICByZXR1cm4ge1xuICAgIHByb3BzLFxuICAgIGRhdGEgKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgbG9hZGluZzogZmFsc2UsXG4gICAgICAgIGJvdHRvbWVkT3V0OiBmYWxzZSxcbiAgICAgICAgZXJyb3I6IGZhbHNlLFxuICAgICAgICBlbnRyaWVzOiBbXVxuICAgICAgfVxuICAgIH0sXG4gICAgY3JlYXRlZCAoKSB7XG4gICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgdGhpcy5zY3JvbGxMb2FkKVxuICAgICAgaWYgKHRoaXMuZW50cmllcy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgdGhpcy5mZXRjaEVudHJpZXMoKVxuICAgICAgfVxuICAgIH0sXG4gICAgdW5tb3VudGVkICgpIHtcbiAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdzY3JvbGwnLCB0aGlzLnNjcm9sbExvYWQpXG4gICAgICB1bm1vdW50ZWQgJiYgdW5tb3VudGVkKHRoaXMuJHByb3BzLCB0aGlzLiRzdG9yZSlcbiAgICB9LFxuICAgIG1ldGhvZHM6IHtcbiAgICAgIC8vIEVudHJpZXMgaXMgbm90IGEgY29tcHV0ZWQgYmVjYXVzZSBjb21wdXRlZCBjYW4ndCB0cmFjayB0aGUgZHluYW1pY1xuICAgICAgLy8gc2VsZWN0b3IgZm9yIGNoYW5nZXMgYW5kIHdvbid0IHRyaWdnZXIgYWZ0ZXIgZmV0Y2guXG4gICAgICB1cGRhdGVFbnRyaWVzICgpIHtcbiAgICAgICAgdGhpcy5lbnRyaWVzID0gc2VsZWN0KHRoaXMuJHByb3BzLCB0aGlzLiRzdG9yZSkgfHwgW11cbiAgICAgIH0sXG4gICAgICBmZXRjaEVudHJpZXMgKCkge1xuICAgICAgICBpZiAoIXRoaXMubG9hZGluZykge1xuICAgICAgICAgIHRoaXMubG9hZGluZyA9IHRydWVcbiAgICAgICAgICB0aGlzLmVycm9yID0gZmFsc2VcbiAgICAgICAgICBmZXRjaCh0aGlzLiRwcm9wcywgdGhpcy4kc3RvcmUpXG4gICAgICAgICAgICAudGhlbigobmV3RW50cmllcykgPT4ge1xuICAgICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZVxuICAgICAgICAgICAgICB0aGlzLmJvdHRvbWVkT3V0ID0gaXNFbXB0eShuZXdFbnRyaWVzKVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5jYXRjaCgoKSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlXG4gICAgICAgICAgICAgIHRoaXMuZXJyb3IgPSB0cnVlXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLmZpbmFsbHkoKCkgPT4ge1xuICAgICAgICAgICAgICB0aGlzLnVwZGF0ZUVudHJpZXMoKVxuICAgICAgICAgICAgfSlcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHNjcm9sbExvYWQgKGUpIHtcbiAgICAgICAgY29uc3QgYm9keUJSZWN0ID0gZG9jdW1lbnQuYm9keS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKVxuICAgICAgICBjb25zdCBoZWlnaHQgPSBNYXRoLm1heChib2R5QlJlY3QuaGVpZ2h0LCAtKGJvZHlCUmVjdC55KSlcbiAgICAgICAgaWYgKHRoaXMubG9hZGluZyA9PT0gZmFsc2UgJiZcbiAgICAgICAgICB0aGlzLmJvdHRvbWVkT3V0ID09PSBmYWxzZSAmJlxuICAgICAgICAgIHRoaXMuJGVsLm9mZnNldEhlaWdodCA+IDAgJiZcbiAgICAgICAgICAod2luZG93LmlubmVySGVpZ2h0ICsgd2luZG93LnBhZ2VZT2Zmc2V0KSA+PSAoaGVpZ2h0IC0gNzUwKVxuICAgICAgICApIHtcbiAgICAgICAgICB0aGlzLmZldGNoRW50cmllcygpXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9LFxuICAgIHJlbmRlciAoKSB7XG4gICAgICBjb25zdCBwcm9wcyA9IHtcbiAgICAgICAgLi4udGhpcy4kcHJvcHMsXG4gICAgICAgIFtjaGlsZFByb3BOYW1lXTogdGhpcy5lbnRyaWVzXG4gICAgICB9XG4gICAgICBjb25zdCBjaGlsZHJlbiA9IHRoaXMuJHNsb3RzXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2IGNsYXNzPVwid2l0aC1sb2FkLW1vcmVcIj5cbiAgICAgICAgICA8V3JhcHBlZENvbXBvbmVudCB7Li4ucHJvcHN9PlxuICAgICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICAgIDwvV3JhcHBlZENvbXBvbmVudD5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwid2l0aC1sb2FkLW1vcmUtZm9vdGVyXCI+XG4gICAgICAgICAgICB7dGhpcy5lcnJvciAmJlxuICAgICAgICAgICAgICA8YnV0dG9uIG9uQ2xpY2s9e3RoaXMuZmV0Y2hFbnRyaWVzfSBjbGFzcz1cImJ1dHRvbi11bnN0eWxlZCAtbGluayAtZnVsbHdpZHRoIGFsZXJ0IGVycm9yXCI+XG4gICAgICAgICAgICAgICAge3RoaXMuJHQoJ2dlbmVyYWwuZ2VuZXJpY19lcnJvcicpfVxuICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHshdGhpcy5lcnJvciAmJiB0aGlzLmxvYWRpbmcgJiYgPEZBSWNvbiBzcGluIGljb249XCJjaXJjbGUtbm90Y2hcIi8+fVxuICAgICAgICAgICAgeyF0aGlzLmVycm9yICYmICF0aGlzLmxvYWRpbmcgJiYgIXRoaXMuYm90dG9tZWRPdXQgJiYgPGEgb25DbGljaz17dGhpcy5mZXRjaEVudHJpZXN9IHJvbGU9XCJidXR0b25cIiB0YWJpbmRleD1cIjBcIj57dGhpcy4kdCgnZ2VuZXJhbC5tb3JlJyl9PC9hPn1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICApXG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IHdpdGhMb2FkTW9yZVxuIl0sIm5hbWVzIjpbImgiLCJpc0VtcHR5IiwiZ2V0Q29tcG9uZW50UHJvcHMiLCJGb250QXdlc29tZUljb24iLCJGQUljb24iLCJsaWJyYXJ5IiwiZmFDaXJjbGVOb3RjaCIsIl9pc1Nsb3QiLCJzIiwiT2JqZWN0IiwicHJvdG90eXBlIiwidG9TdHJpbmciLCJjYWxsIiwiX2lzVk5vZGUiLCJhZGQiLCJ3aXRoTG9hZE1vcmUiLCJfcmVmIiwiZmV0Y2giLCJzZWxlY3QiLCJ1bm1vdW50ZWQiLCJfcmVmJGNoaWxkUHJvcE5hbWUiLCJjaGlsZFByb3BOYW1lIiwiX3JlZiRhZGRpdGlvbmFsUHJvcE5hIiwiYWRkaXRpb25hbFByb3BOYW1lcyIsIldyYXBwZWRDb21wb25lbnQiLCJvcmlnaW5hbFByb3BzIiwia2V5cyIsInByb3BzIiwiZmlsdGVyIiwidiIsImNvbmNhdCIsImRhdGEiLCJsb2FkaW5nIiwiYm90dG9tZWRPdXQiLCJlcnJvciIsImVudHJpZXMiLCJjcmVhdGVkIiwid2luZG93IiwiYWRkRXZlbnRMaXN0ZW5lciIsInNjcm9sbExvYWQiLCJsZW5ndGgiLCJmZXRjaEVudHJpZXMiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwiJHByb3BzIiwiJHN0b3JlIiwibWV0aG9kcyIsInVwZGF0ZUVudHJpZXMiLCJfdGhpcyIsInRoZW4iLCJuZXdFbnRyaWVzIiwiZSIsImJvZHlCUmVjdCIsImRvY3VtZW50IiwiYm9keSIsImdldEJvdW5kaW5nQ2xpZW50UmVjdCIsImhlaWdodCIsIk1hdGgiLCJtYXgiLCJ5IiwiJGVsIiwib2Zmc2V0SGVpZ2h0IiwiaW5uZXJIZWlnaHQiLCJwYWdlWU9mZnNldCIsInJlbmRlciIsIl9vYmplY3RTcHJlYWQiLCJfZGVmaW5lUHJvcGVydHkiLCJjaGlsZHJlbiIsIiRzbG90cyIsIl9jcmVhdGVWTm9kZSIsIl9kZWZhdWx0IiwiJHQiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/hocs/with_load_more/with_load_more.jsx\n");
/***/ }),
/***/ "./src/i18n/languages.js":
/*!*******************************!*\
!*** ./src/i18n/languages.js ***!
\*******************************/
/***/ ((module) => {
eval("var languages = ['ar', 'ca', 'cs', 'de', 'eo', 'en', 'es', 'et', 'eu', 'fi', 'fr', 'ga', 'he', 'hu', 'it', 'ja', 'ja_easy', 'ko', 'nan-TW', 'nb', 'nl', 'oc', 'pl', 'pt', 'ro', 'ru', 'sk', 'te', 'uk', 'zh', 'zh_Hant'];\nvar specialJsonName = {\n ja: 'ja_pedantic'\n};\nvar langCodeToJsonName = function langCodeToJsonName(code) {\n return specialJsonName[code] || code;\n};\nvar langCodeToCldrName = function langCodeToCldrName(code) {\n return code;\n};\nvar ensureFinalFallback = function ensureFinalFallback(codes) {\n var codeList = Array.isArray(codes) ? codes : [codes];\n return codeList.includes('en') ? codeList : codeList.concat(['en']);\n};\nmodule.exports = {\n languages: languages,\n langCodeToJsonName: langCodeToJsonName,\n langCodeToCldrName: langCodeToCldrName,\n ensureFinalFallback: ensureFinalFallback\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvaTE4bi9sYW5ndWFnZXMuanMuanMiLCJuYW1lcyI6WyJsYW5ndWFnZXMiLCJzcGVjaWFsSnNvbk5hbWUiLCJqYSIsImxhbmdDb2RlVG9Kc29uTmFtZSIsImNvZGUiLCJsYW5nQ29kZVRvQ2xkck5hbWUiLCJlbnN1cmVGaW5hbEZhbGxiYWNrIiwiY29kZXMiLCJjb2RlTGlzdCIsIkFycmF5IiwiaXNBcnJheSIsImluY2x1ZGVzIiwiY29uY2F0IiwibW9kdWxlIiwiZXhwb3J0cyJdLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9pMThuL2xhbmd1YWdlcy5qcz9jNzcwIl0sInNvdXJjZXNDb250ZW50IjpbImNvbnN0IGxhbmd1YWdlcyA9IFtcbiAgJ2FyJyxcbiAgJ2NhJyxcbiAgJ2NzJyxcbiAgJ2RlJyxcbiAgJ2VvJyxcbiAgJ2VuJyxcbiAgJ2VzJyxcbiAgJ2V0JyxcbiAgJ2V1JyxcbiAgJ2ZpJyxcbiAgJ2ZyJyxcbiAgJ2dhJyxcbiAgJ2hlJyxcbiAgJ2h1JyxcbiAgJ2l0JyxcbiAgJ2phJyxcbiAgJ2phX2Vhc3knLFxuICAna28nLFxuICAnbmFuLVRXJyxcbiAgJ25iJyxcbiAgJ25sJyxcbiAgJ29jJyxcbiAgJ3BsJyxcbiAgJ3B0JyxcbiAgJ3JvJyxcbiAgJ3J1JyxcbiAgJ3NrJyxcbiAgJ3RlJyxcbiAgJ3VrJyxcbiAgJ3poJyxcbiAgJ3poX0hhbnQnXG5dXG5cbmNvbnN0IHNwZWNpYWxKc29uTmFtZSA9IHtcbiAgamE6ICdqYV9wZWRhbnRpYydcbn1cblxuY29uc3QgbGFuZ0NvZGVUb0pzb25OYW1lID0gKGNvZGUpID0+IHNwZWNpYWxKc29uTmFtZVtjb2RlXSB8fCBjb2RlXG5cbmNvbnN0IGxhbmdDb2RlVG9DbGRyTmFtZSA9IChjb2RlKSA9PiBjb2RlXG5cbmNvbnN0IGVuc3VyZUZpbmFsRmFsbGJhY2sgPSBjb2RlcyA9PiB7XG4gIGNvbnN0IGNvZGVMaXN0ID0gQXJyYXkuaXNBcnJheShjb2RlcykgPyBjb2RlcyA6IFtjb2Rlc11cbiAgcmV0dXJuIGNvZGVMaXN0LmluY2x1ZGVzKCdlbicpID8gY29kZUxpc3QgOiBjb2RlTGlzdC5jb25jYXQoWydlbiddKVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbGFuZ3VhZ2VzLFxuICBsYW5nQ29kZVRvSnNvbk5hbWUsXG4gIGxhbmdDb2RlVG9DbGRyTmFtZSxcbiAgZW5zdXJlRmluYWxGYWxsYmFja1xufVxuIl0sIm1hcHBpbmdzIjoiQUFBQSxJQUFNQSxTQUFTLEdBQUcsQ0FDaEIsSUFBSSxFQUNKLElBQUksRUFDSixJQUFJLEVBQ0osSUFBSSxFQUNKLElBQUksRUFDSixJQUFJLEVBQ0osSUFBSSxFQUNKLElBQUksRUFDSixJQUFJLEVBQ0osSUFBSSxFQUNKLElBQUksRUFDSixJQUFJLEVBQ0osSUFBSSxFQUNKLElBQUksRUFDSixJQUFJLEVBQ0osSUFBSSxFQUNKLFNBQVMsRUFDVCxJQUFJLEVBQ0osUUFBUSxFQUNSLElBQUksRUFDSixJQUFJLEVBQ0osSUFBSSxFQUNKLElBQUksRUFDSixJQUFJLEVBQ0osSUFBSSxFQUNKLElBQUksRUFDSixJQUFJLEVBQ0osSUFBSSxFQUNKLElBQUksRUFDSixJQUFJLEVBQ0osU0FBUyxDQUNWO0FBRUQsSUFBTUMsZUFBZSxHQUFHO0VBQ3RCQyxFQUFFLEVBQUU7QUFDTixDQUFDO0FBRUQsSUFBTUMsa0JBQWtCLEdBQUcsU0FBckJBLGtCQUFrQkEsQ0FBSUMsSUFBSTtFQUFBLE9BQUtILGVBQWUsQ0FBQ0csSUFBSSxDQUFDLElBQUlBLElBQUk7QUFBQTtBQUVsRSxJQUFNQyxrQkFBa0IsR0FBRyxTQUFyQkEsa0JBQWtCQSxDQUFJRCxJQUFJO0VBQUEsT0FBS0EsSUFBSTtBQUFBO0FBRXpDLElBQU1FLG1CQUFtQixHQUFHLFNBQXRCQSxtQkFBbUJBLENBQUdDLEtBQUssRUFBSTtFQUNuQyxJQUFNQyxRQUFRLEdBQUdDLEtBQUssQ0FBQ0MsT0FBTyxDQUFDSCxLQUFLLENBQUMsR0FBR0EsS0FBSyxHQUFHLENBQUNBLEtBQUssQ0FBQztFQUN2RCxPQUFPQyxRQUFRLENBQUNHLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBR0gsUUFBUSxHQUFHQSxRQUFRLENBQUNJLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ3JFLENBQUM7QUFFREMsTUFBTSxDQUFDQyxPQUFPLEdBQUc7RUFDZmQsU0FBUyxFQUFUQSxTQUFTO0VBQ1RHLGtCQUFrQixFQUFsQkEsa0JBQWtCO0VBQ2xCRSxrQkFBa0IsRUFBbEJBLGtCQUFrQjtFQUNsQkMsbUJBQW1CLEVBQW5CQTtBQUNGLENBQUMifQ==\n//# sourceURL=webpack-internal:///./src/i18n/languages.js\n");
/***/ }),
/***/ "./src/i18n/messages.js":
/*!******************************!*\
!*** ./src/i18n/messages.js ***!
\******************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_toArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/toArray */ \"./node_modules/@babel/runtime/helpers/esm/toArray.js\");\n/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ \"./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js\");\n/* harmony import */ var lodash_isEqual__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! lodash/isEqual */ \"./node_modules/lodash/isEqual.js\");\n/* harmony import */ var lodash_isEqual__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(lodash_isEqual__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/regenerator */ \"./node_modules/@babel/runtime/regenerator/index.js\");\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _languages_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./languages.js */ \"./src/i18n/languages.js\");\n/* harmony import */ var _languages_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_languages_js__WEBPACK_IMPORTED_MODULE_4__);\n\n\n // When contributing, please sort JSON before committing so it would be easier to see what's missing and what's being added compared to English and other languages. It's not obligatory, but just an advice.\n// To sort json use jq https://stedolan.github.io/jq and invoke it like `jq -S . xx.json > xx.sorted.json`, AFAIK, there's no inplace edit option like in sed\n// Also, when adding a new language to \"messages\" variable, please do it alphabetically by language code so that users can search or check their custom language easily.\n// For anyone contributing to old huge messages.js and in need to quickly convert it to JSON\n// sed command for converting currently formatted JS to JSON:\n// sed -i -e \"s/'//gm\" -e 's/\"/\\\\\"/gm' -re 's/^( +)(.+?): ((.+?))?(,?)(\\{?)$/\\1\"\\2\": \"\\4\"/gm' -e 's/\\\"\\{\\\"/{/g' -e 's/,\"$/\",/g' file.json\n// There's only problem that apostrophe character ' gets replaced by \\\\ so you have to fix it manually, sorry.\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\n\nvar ULTIMATE_FALLBACK_LOCALE = 'en';\nvar hasLanguageFile = function hasLanguageFile(code) {\n return _languages_js__WEBPACK_IMPORTED_MODULE_4__.languages.includes(code);\n};\nvar loadLanguageFile = function loadLanguageFile(code) {\n return __webpack_require__(\"./src/i18n lazy recursive ^\\\\.\\\\/.*\\\\.json$ include: \\\\.json$\")(\"./\".concat((0,_languages_js__WEBPACK_IMPORTED_MODULE_4__.langCodeToJsonName)(code), \".json\"));\n};\nvar messages = {\n languages: _languages_js__WEBPACK_IMPORTED_MODULE_4__.languages,\n \"default\": {\n en: (__webpack_require__(/*! ./en.json */ \"./src/i18n/en.json\")[\"default\"])\n },\n setLanguage: function () {\n var _setLanguage = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__[\"default\"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().mark(function _callee(i18n, language) {\n var languages, _languages, first, rest, _iterator, _step, lang, _messages;\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_3___default().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n languages = (Array.isArray(language) ? language : [language]).filter(function (k) {\n return k;\n });\n if (!languages.includes(ULTIMATE_FALLBACK_LOCALE)) {\n languages.push(ULTIMATE_FALLBACK_LOCALE);\n }\n _languages = (0,_babel_runtime_helpers_toArray__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(languages), first = _languages[0], rest = _languages.slice(1);\n if (!(first === i18n.locale && lodash_isEqual__WEBPACK_IMPORTED_MODULE_2___default()(rest, i18n.fallbackLocale))) {\n _context.next = 5;\n break;\n }\n return _context.abrupt(\"return\");\n case 5:\n _iterator = _createForOfIteratorHelper(languages);\n _context.prev = 6;\n _iterator.s();\n case 8:\n if ((_step = _iterator.n()).done) {\n _context.next = 17;\n break;\n }\n lang = _step.value;\n if (!hasLanguageFile(lang)) {\n _context.next = 15;\n break;\n }\n _context.next = 13;\n return loadLanguageFile(lang);\n case 13:\n _messages = _context.sent;\n i18n.setLocaleMessage(lang, _messages[\"default\"]);\n case 15:\n _context.next = 8;\n break;\n case 17:\n _context.next = 22;\n break;\n case 19:\n _context.prev = 19;\n _context.t0 = _context[\"catch\"](6);\n _iterator.e(_context.t0);\n case 22:\n _context.prev = 22;\n _iterator.f();\n return _context.finish(22);\n case 25:\n i18n.fallbackLocale = rest;\n i18n.locale = first;\n case 27:\n case \"end\":\n return _context.stop();\n }\n }, _callee, null, [[6, 19, 22, 25]]);\n }));\n function setLanguage(_x, _x2) {\n return _setLanguage.apply(this, arguments);\n }\n return setLanguage;\n }()\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (messages);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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LFlBQUEsQ0FBQWdDLEtBQUEsT0FBQUMsU0FBQTtJQUFBO0lBQUEsT0FBQWxDLFdBQUE7RUFBQTtBQUNILENBQUM7QUFFRCxpRUFBZUgsUUFBUSIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvaTE4bi9tZXNzYWdlcy5qcz83MGZmIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFdoZW4gY29udHJpYnV0aW5nLCBwbGVhc2Ugc29ydCBKU09OIGJlZm9yZSBjb21taXR0aW5nIHNvIGl0IHdvdWxkIGJlIGVhc2llciB0byBzZWUgd2hhdCdzIG1pc3NpbmcgYW5kIHdoYXQncyBiZWluZyBhZGRlZCBjb21wYXJlZCB0byBFbmdsaXNoIGFuZCBvdGhlciBsYW5ndWFnZXMuIEl0J3Mgbm90IG9ibGlnYXRvcnksIGJ1dCBqdXN0IGFuIGFkdmljZS5cbi8vIFRvIHNvcnQganNvbiB1c2UganEgaHR0cHM6Ly9zdGVkb2xhbi5naXRodWIuaW8vanEgYW5kIGludm9rZSBpdCBsaWtlIGBqcSAtUyAuIHh4Lmpzb24gPiB4eC5zb3J0ZWQuanNvbmAsIEFGQUlLLCB0aGVyZSdzIG5vIGlucGxhY2UgZWRpdCBvcHRpb24gbGlrZSBpbiBzZWRcbi8vIEFsc28sIHdoZW4gYWRkaW5nIGEgbmV3IGxhbmd1YWdlIHRvIFwibWVzc2FnZXNcIiB2YXJpYWJsZSwgcGxlYXNlIGRvIGl0IGFscGhhYmV0aWNhbGx5IGJ5IGxhbmd1YWdlIGNvZGUgc28gdGhhdCB1c2VycyBjYW4gc2VhcmNoIG9yIGNoZWNrIHRoZWlyIGN1c3RvbSBsYW5ndWFnZSBlYXNpbHkuXG5cbi8vIEZvciBhbnlvbmUgY29udHJpYnV0aW5nIHRvIG9sZCBodWdlIG1lc3NhZ2VzLmpzIGFuZCBpbiBuZWVkIHRvIHF1aWNrbHkgY29udmVydCBpdCB0byBKU09OXG4vLyBzZWQgY29tbWFuZCBmb3IgY29udmVydGluZyBjdXJyZW50bHkgZm9ybWF0dGVkIEpTIHRvIEpTT046XG4vLyBzZWQgLWkgLWUgXCJzLycvL2dtXCIgLWUgJ3MvXCIvXFxcXFwiL2dtJyAtcmUgJ3MvXiggKykoLis/KTogKCguKz8pKT8oLD8pKFxcez8pJC9cXDFcIlxcMlwiOiBcIlxcNFwiL2dtJyAtZSAncy9cXFwiXFx7XFxcIi97L2cnIC1lICdzLyxcIiQvXCIsL2cnIGZpbGUuanNvblxuLy8gVGhlcmUncyBvbmx5IHByb2JsZW0gdGhhdCBhcG9zdHJvcGhlIGNoYXJhY3RlciAnIGdldHMgcmVwbGFjZWQgYnkgXFxcXCBzbyB5b3UgaGF2ZSB0byBmaXggaXQgbWFudWFsbHksIHNvcnJ5LlxuXG5pbXBvcnQgeyBpc0VxdWFsIH0gZnJvbSAnbG9kYXNoJ1xuaW1wb3J0IHsgbGFuZ3VhZ2VzLCBsYW5nQ29kZVRvSnNvbk5hbWUgfSBmcm9tICcuL2xhbmd1YWdlcy5qcydcblxuY29uc3QgVUxUSU1BVEVfRkFMTEJBQ0tfTE9DQUxFID0gJ2VuJ1xuXG5jb25zdCBoYXNMYW5ndWFnZUZpbGUgPSAoY29kZSkgPT4gbGFuZ3VhZ2VzLmluY2x1ZGVzKGNvZGUpXG5cbmNvbnN0IGxvYWRMYW5ndWFnZUZpbGUgPSAoY29kZSkgPT4ge1xuICByZXR1cm4gaW1wb3J0KFxuICAgIC8qIHdlYnBhY2tJbmNsdWRlOiAvXFwuanNvbiQvICovXG4gICAgLyogd2VicGFja0NodW5rTmFtZTogXCJpMThuL1tyZXF1ZXN0XVwiICovXG4gICAgYC4vJHtsYW5nQ29kZVRvSnNvbk5hbWUoY29kZSl9Lmpzb25gXG4gIClcbn1cblxuY29uc3QgbWVzc2FnZXMgPSB7XG4gIGxhbmd1YWdlcyxcbiAgZGVmYXVsdDoge1xuICAgIGVuOiByZXF1aXJlKCcuL2VuLmpzb24nKS5kZWZhdWx0XG4gIH0sXG4gIHNldExhbmd1YWdlOiBhc3luYyAoaTE4biwgbGFuZ3VhZ2UpID0+IHtcbiAgICBjb25zdCBsYW5ndWFnZXMgPSAoQXJyYXkuaXNBcnJheShsYW5ndWFnZSkgPyBsYW5ndWFnZSA6IFtsYW5ndWFnZV0pLmZpbHRlcihrID0+IGspXG5cbiAgICBpZiAoIWxhbmd1YWdlcy5pbmNsdWRlcyhVTFRJTUFURV9GQUxMQkFDS19MT0NBTEUpKSB7XG4gICAgICBsYW5ndWFnZXMucHVzaChVTFRJTUFURV9GQUxMQkFDS19MT0NBTEUpXG4gICAgfVxuICAgIGNvbnN0IFtmaXJzdCwgLi4ucmVzdF0gPSBsYW5ndWFnZXNcblxuICAgIGlmIChmaXJzdCA9PT0gaTE4bi5sb2NhbGUgJiYgaXNFcXVhbChyZXN0LCBpMThuLmZhbGxiYWNrTG9jYWxlKSkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgZm9yIChjb25zdCBsYW5nIG9mIGxhbmd1YWdlcykge1xuICAgICAgaWYgKGhhc0xhbmd1YWdlRmlsZShsYW5nKSkge1xuICAgICAgICBjb25zdCBtZXNzYWdlcyA9IGF3YWl0IGxvYWRMYW5ndWFnZUZpbGUobGFuZylcbiAgICAgICAgaTE4bi5zZXRMb2NhbGVNZXNzYWdlKGxhbmcsIG1lc3NhZ2VzLmRlZmF1bHQpXG4gICAgICB9XG4gICAgfVxuXG4gICAgaTE4bi5mYWxsYmFja0xvY2FsZSA9IHJlc3RcbiAgICBpMThuLmxvY2FsZSA9IGZpcnN0XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgbWVzc2FnZXNcbiJdLCJuYW1lcyI6WyJfcmVnZW5lcmF0b3JSdW50aW1lIiwiX2NyZWF0ZUZvck9mSXRlcmF0b3JIZWxwZXIiLCJvIiwiYWxsb3dBcnJheUxpa2UiLCJpdCIsIlN5bWJvbCIsIml0ZXJhdG9yIiwiQXJyYXkiLCJpc0FycmF5IiwiX3Vuc3VwcG9ydGVkSXRlcmFibGVUb0FycmF5IiwibGVuZ3RoIiwiaSIsIkYiLCJzIiwibiIsImRvbmUiLCJ2YWx1ZSIsImUiLCJfZSIsImYiLCJUeXBlRXJyb3IiLCJub3JtYWxDb21wbGV0aW9uIiwiZGlkRXJyIiwiZXJyIiwiY2FsbCIsInN0ZXAiLCJuZXh0IiwiX2UyIiwibWluTGVuIiwiX2FycmF5TGlrZVRvQXJyYXkiLCJPYmplY3QiLCJwcm90b3R5cGUiLCJ0b1N0cmluZyIsInNsaWNlIiwiY29uc3RydWN0b3IiLCJuYW1lIiwiZnJvbSIsInRlc3QiLCJhcnIiLCJsZW4iLCJhcnIyIiwibGFuZ3VhZ2VzIiwibGFuZ0NvZGVUb0pzb25OYW1lIiwiVUxUSU1BVEVfRkFMTEJBQ0tfTE9DQUxFIiwiaGFzTGFuZ3VhZ2VGaWxlIiwiY29kZSIsImluY2x1ZGVzIiwibG9hZExhbmd1YWdlRmlsZSIsImNvbmNhdCIsIm1lc3NhZ2VzIiwiZW4iLCJyZXF1aXJlIiwic2V0TGFuZ3VhZ2UiLCJfc2V0TGFuZ3VhZ2UiLCJfYXN5bmNUb0dlbmVyYXRvciIsIm1hcmsiLCJfY2FsbGVlIiwiaTE4biIsImxhbmd1YWdlIiwiX2xhbmd1YWdlcyIsImZpcnN0IiwicmVzdCIsIl9pdGVyYXRvciIsIl9zdGVwIiwibGFuZyIsIl9tZXNzYWdlcyIsIndyYXAiLCJfY2FsbGVlJCIsIl9jb250ZXh0IiwicHJldiIsImZpbHRlciIsImsiLCJwdXNoIiwiX3RvQXJyYXkiLCJsb2NhbGUiLCJfaXNFcXVhbCIsImZhbGxiYWNrTG9jYWxlIiwiYWJydXB0Iiwic2VudCIsInNldExvY2FsZU1lc3NhZ2UiLCJ0MCIsImZpbmlzaCIsInN0b3AiLCJfeCIsIl94MiIsImFwcGx5IiwiYXJndW1lbnRzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/i18n/messages.js\n");
/***/ }),
/***/ "./src/lib/event_target_polyfill.js":
/*!******************************************!*\
!*** ./src/lib/event_target_polyfill.js ***!
\******************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _ungap_event_target__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @ungap/event-target */ \"./node_modules/@ungap/event-target/esm/index.js\");\n\ntry {\n /* eslint-disable no-new */\n new EventTarget();\n /* eslint-enable no-new */\n} catch (e) {\n window.EventTarget = _ungap_event_target__WEBPACK_IMPORTED_MODULE_0__[\"default\"];\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvbGliL2V2ZW50X3RhcmdldF9wb2x5ZmlsbC5qcy5qcyIsIm1hcHBpbmdzIjoiOztBQUFxRDtBQUVyRCxJQUFJO0VBQ0Y7RUFDQSxJQUFJQyxXQUFXLENBQUMsQ0FBQztFQUNqQjtBQUNGLENBQUMsQ0FBQyxPQUFPQyxDQUFDLEVBQUU7RUFDVkMsTUFBTSxDQUFDRixXQUFXLEdBQUdELDJEQUFtQjtBQUMxQyIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvbGliL2V2ZW50X3RhcmdldF9wb2x5ZmlsbC5qcz8xZWJkIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBFdmVudFRhcmdldFBvbHlmaWxsIGZyb20gJ0B1bmdhcC9ldmVudC10YXJnZXQnXG5cbnRyeSB7XG4gIC8qIGVzbGludC1kaXNhYmxlIG5vLW5ldyAgKi9cbiAgbmV3IEV2ZW50VGFyZ2V0KClcbiAgLyogZXNsaW50LWVuYWJsZSBuby1uZXcgICovXG59IGNhdGNoIChlKSB7XG4gIHdpbmRvdy5FdmVudFRhcmdldCA9IEV2ZW50VGFyZ2V0UG9seWZpbGxcbn1cbiJdLCJuYW1lcyI6WyJFdmVudFRhcmdldFBvbHlmaWxsIiwiRXZlbnRUYXJnZXQiLCJlIiwid2luZG93Il0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/lib/event_target_polyfill.js\n");
/***/ }),
/***/ "./src/lib/persisted_state.js":
/*!************************************!*\
!*** ./src/lib/persisted_state.js ***!
\************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (/* binding */ createPersistedState)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/typeof */ \"./node_modules/@babel/runtime/helpers/esm/typeof.js\");\n/* harmony import */ var lodash_cloneDeep__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! lodash/cloneDeep */ \"./node_modules/lodash/cloneDeep.js\");\n/* harmony import */ var lodash_cloneDeep__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash_cloneDeep__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var lodash_set__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! lodash/set */ \"./node_modules/lodash/set.js\");\n/* harmony import */ var lodash_set__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(lodash_set__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var lodash_get__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! lodash/get */ \"./node_modules/lodash/get.js\");\n/* harmony import */ var lodash_get__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(lodash_get__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var lodash_each__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! lodash/each */ \"./node_modules/lodash/each.js\");\n/* harmony import */ var lodash_each__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(lodash_each__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var lodash_merge__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! lodash.merge */ \"./node_modules/lodash.merge/index.js\");\n/* harmony import */ var lodash_merge__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(lodash_merge__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var localforage__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! localforage */ \"./node_modules/localforage/dist/localforage.js\");\n/* harmony import */ var localforage__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(localforage__WEBPACK_IMPORTED_MODULE_6__);\n\n\n\n\n\n\n\nvar loaded = false;\nvar defaultReducer = function defaultReducer(state, paths) {\n return paths.length === 0 ? state : paths.reduce(function (substate, path) {\n lodash_set__WEBPACK_IMPORTED_MODULE_2___default()(substate, path, lodash_get__WEBPACK_IMPORTED_MODULE_3___default()(state, path));\n return substate;\n }, {});\n};\nvar saveImmedeatelyActions = ['markNotificationsAsSeen', 'clearCurrentUser', 'setCurrentUser', 'setServerSideStorage', 'setHighlight', 'setOption', 'setClientData', 'setToken', 'clearToken'];\nvar defaultStorage = function () {\n return (localforage__WEBPACK_IMPORTED_MODULE_6___default());\n}();\nfunction createPersistedState() {\n var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n _ref$key = _ref.key,\n key = _ref$key === void 0 ? 'vuex-lz' : _ref$key,\n _ref$paths = _ref.paths,\n paths = _ref$paths === void 0 ? [] : _ref$paths,\n _ref$getState = _ref.getState,\n getState = _ref$getState === void 0 ? function (key, storage) {\n var value = storage.getItem(key);\n return value;\n } : _ref$getState,\n _ref$setState = _ref.setState,\n setState = _ref$setState === void 0 ? function (key, state, storage) {\n if (!loaded) {\n console.log('waiting for old state to be loaded...');\n return Promise.resolve();\n } else {\n return storage.setItem(key, state);\n }\n } : _ref$setState,\n _ref$reducer = _ref.reducer,\n reducer = _ref$reducer === void 0 ? defaultReducer : _ref$reducer,\n _ref$storage = _ref.storage,\n storage = _ref$storage === void 0 ? defaultStorage : _ref$storage,\n _ref$subscriber = _ref.subscriber,\n subscriber = _ref$subscriber === void 0 ? function (store) {\n return function (handler) {\n return store.subscribe(handler);\n };\n } : _ref$subscriber;\n return getState(key, storage).then(function (savedState) {\n return function (store) {\n try {\n if (savedState !== null && (0,_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(savedState) === 'object') {\n // build user cache\n var usersState = savedState.users || {};\n usersState.usersObject = {};\n var users = usersState.users || [];\n lodash_each__WEBPACK_IMPORTED_MODULE_4___default()(users, function (user) {\n usersState.usersObject[user.id] = user;\n });\n savedState.users = usersState;\n store.replaceState(lodash_merge__WEBPACK_IMPORTED_MODULE_5___default()({}, store.state, savedState));\n }\n loaded = true;\n } catch (e) {\n console.log(\"Couldn't load state\");\n console.error(e);\n loaded = true;\n }\n subscriber(store)(function (mutation, state) {\n try {\n if (saveImmedeatelyActions.includes(mutation.type)) {\n setState(key, reducer(lodash_cloneDeep__WEBPACK_IMPORTED_MODULE_1___default()(state), paths), storage).then(function (success) {\n if (typeof success !== 'undefined') {\n if (mutation.type === 'setOption' || mutation.type === 'setCurrentUser') {\n store.dispatch('settingsSaved', {\n success: success\n });\n }\n }\n }, function (error) {\n if (mutation.type === 'setOption' || mutation.type === 'setCurrentUser') {\n store.dispatch('settingsSaved', {\n error: error\n });\n }\n });\n }\n } catch (e) {\n console.log(\"Couldn't persist state:\");\n console.log(e);\n }\n });\n };\n });\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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QUFJO2NBQ2YsSUFBSSxPQUFPQSxPQUFPLEtBQUssV0FBVyxFQUFFO2dCQUNsQyxJQUFJSixRQUFRLENBQUNFLElBQUksS0FBSyxXQUFXLElBQUlGLFFBQVEsQ0FBQ0UsSUFBSSxLQUFLLGdCQUFnQixFQUFFO2tCQUN2RWpCLEtBQUssQ0FBQ29CLFFBQVEsQ0FBQyxlQUFlLEVBQUU7b0JBQUVELE9BQU8sRUFBUEE7a0JBQVEsQ0FBQyxDQUFDO2dCQUM5QztjQUNGO1lBQ0YsQ0FBQyxFQUFFLFVBQUFMLEtBQUssRUFBSTtjQUNWLElBQUlDLFFBQVEsQ0FBQ0UsSUFBSSxLQUFLLFdBQVcsSUFBSUYsUUFBUSxDQUFDRSxJQUFJLEtBQUssZ0JBQWdCLEVBQUU7Z0JBQ3ZFakIsS0FBSyxDQUFDb0IsUUFBUSxDQUFDLGVBQWUsRUFBRTtrQkFBRU4sS0FBSyxFQUFMQTtnQkFBTSxDQUFDLENBQUM7Y0FDNUM7WUFDRixDQUFDLENBQUM7VUFDTjtRQUNGLENBQUMsQ0FBQyxPQUFPRCxDQUFDLEVBQUU7VUFDVnZCLE9BQU8sQ0FBQ0MsR0FBRyxDQUFDLHlCQUF5QixDQUFDO1VBQ3RDRCxPQUFPLENBQUNDLEdBQUcsQ0FBQ3NCLENBQUMsQ0FBQztRQUNoQjtNQUNGLENBQUMsQ0FBQztJQUNKLENBQUM7RUFDSCxDQUFDLENBQUM7QUFDSiIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvbGliL3BlcnNpc3RlZF9zdGF0ZS5qcz9lNDg0Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBtZXJnZSBmcm9tICdsb2Rhc2gubWVyZ2UnXG5pbXBvcnQgbG9jYWxmb3JhZ2UgZnJvbSAnbG9jYWxmb3JhZ2UnXG5pbXBvcnQgeyBlYWNoLCBnZXQsIHNldCwgY2xvbmVEZWVwIH0gZnJvbSAnbG9kYXNoJ1xuXG5sZXQgbG9hZGVkID0gZmFsc2VcblxuY29uc3QgZGVmYXVsdFJlZHVjZXIgPSAoc3RhdGUsIHBhdGhzKSA9PiAoXG4gIHBhdGhzLmxlbmd0aCA9PT0gMFxuICAgID8gc3RhdGVcbiAgICA6IHBhdGhzLnJlZHVjZSgoc3Vic3RhdGUsIHBhdGgpID0+IHtcbiAgICAgIHNldChzdWJzdGF0ZSwgcGF0aCwgZ2V0KHN0YXRlLCBwYXRoKSlcbiAgICAgIHJldHVybiBzdWJzdGF0ZVxuICAgIH0sIHt9KVxuKVxuXG5jb25zdCBzYXZlSW1tZWRlYXRlbHlBY3Rpb25zID0gW1xuICAnbWFya05vdGlmaWNhdGlvbnNBc1NlZW4nLFxuICAnY2xlYXJDdXJyZW50VXNlcicsXG4gICdzZXRDdXJyZW50VXNlcicsXG4gICdzZXRTZXJ2ZXJTaWRlU3RvcmFnZScsXG4gICdzZXRIaWdobGlnaHQnLFxuICAnc2V0T3B0aW9uJyxcbiAgJ3NldENsaWVudERhdGEnLFxuICAnc2V0VG9rZW4nLFxuICAnY2xlYXJUb2tlbidcbl1cblxuY29uc3QgZGVmYXVsdFN0b3JhZ2UgPSAoKCkgPT4ge1xuICByZXR1cm4gbG9jYWxmb3JhZ2Vcbn0pKClcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gY3JlYXRlUGVyc2lzdGVkU3RhdGUgKHtcbiAga2V5ID0gJ3Z1ZXgtbHonLFxuICBwYXRocyA9IFtdLFxuICBnZXRTdGF0ZSA9IChrZXksIHN0b3JhZ2UpID0+IHtcbiAgICBjb25zdCB2YWx1ZSA9IHN0b3JhZ2UuZ2V0SXRlbShrZXkpXG4gICAgcmV0dXJuIHZhbHVlXG4gIH0sXG4gIHNldFN0YXRlID0gKGtleSwgc3RhdGUsIHN0b3JhZ2UpID0+IHtcbiAgICBpZiAoIWxvYWRlZCkge1xuICAgICAgY29uc29sZS5sb2coJ3dhaXRpbmcgZm9yIG9sZCBzdGF0ZSB0byBiZSBsb2FkZWQuLi4nKVxuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpXG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBzdG9yYWdlLnNldEl0ZW0oa2V5LCBzdGF0ZSlcbiAgICB9XG4gIH0sXG4gIHJlZHVjZXIgPSBkZWZhdWx0UmVkdWNlcixcbiAgc3RvcmFnZSA9IGRlZmF1bHRTdG9yYWdlLFxuICBzdWJzY3JpYmVyID0gc3RvcmUgPT4gaGFuZGxlciA9PiBzdG9yZS5zdWJzY3JpYmUoaGFuZGxlcilcbn0gPSB7fSkge1xuICByZXR1cm4gZ2V0U3RhdGUoa2V5LCBzdG9yYWdlKS50aGVuKChzYXZlZFN0YXRlKSA9PiB7XG4gICAgcmV0dXJuIHN0b3JlID0+IHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGlmIChzYXZlZFN0YXRlICE9PSBudWxsICYmIHR5cGVvZiBzYXZlZFN0YXRlID09PSAnb2JqZWN0Jykge1xuICAgICAgICAgIC8vIGJ1aWxkIHVzZXIgY2FjaGVcbiAgICAgICAgICBjb25zdCB1c2Vyc1N0YXRlID0gc2F2ZWRTdGF0ZS51c2VycyB8fCB7fVxuICAgICAgICAgIHVzZXJzU3RhdGUudXNlcnNPYmplY3QgPSB7fVxuICAgICAgICAgIGNvbnN0IHVzZXJzID0gdXNlcnNTdGF0ZS51c2VycyB8fCBbXVxuICAgICAgICAgIGVhY2godXNlcnMsICh1c2VyKSA9PiB7IHVzZXJzU3RhdGUudXNlcnNPYmplY3RbdXNlci5pZF0gPSB1c2VyIH0pXG4gICAgICAgICAgc2F2ZWRTdGF0ZS51c2VycyA9IHVzZXJzU3RhdGVcblxuICAgICAgICAgIHN0b3JlLnJlcGxhY2VTdGF0ZShcbiAgICAgICAgICAgIG1lcmdlKHt9LCBzdG9yZS5zdGF0ZSwgc2F2ZWRTdGF0ZSlcbiAgICAgICAgICApXG4gICAgICAgIH1cbiAgICAgICAgbG9hZGVkID0gdHJ1ZVxuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBjb25zb2xlLmxvZyhcIkNvdWxkbid0IGxvYWQgc3RhdGVcIilcbiAgICAgICAgY29uc29sZS5lcnJvcihlKVxuICAgICAgICBsb2FkZWQgPSB0cnVlXG4gICAgICB9XG4gICAgICBzdWJzY3JpYmVyKHN0b3JlKSgobXV0YXRpb24sIHN0YXRlKSA9PiB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgaWYgKHNhdmVJbW1lZGVhdGVseUFjdGlvbnMuaW5jbHVkZXMobXV0YXRpb24udHlwZSkpIHtcbiAgICAgICAgICAgIHNldFN0YXRlKGtleSwgcmVkdWNlcihjbG9uZURlZXAoc3RhdGUpLCBwYXRocyksIHN0b3JhZ2UpXG4gICAgICAgICAgICAgIC50aGVuKHN1Y2Nlc3MgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh0eXBlb2Ygc3VjY2VzcyAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgICAgICAgIGlmIChtdXRhdGlvbi50eXBlID09PSAnc2V0T3B0aW9uJyB8fCBtdXRhdGlvbi50eXBlID09PSAnc2V0Q3VycmVudFVzZXInKSB7XG4gICAgICAgICAgICAgICAgICAgIHN0b3JlLmRpc3BhdGNoKCdzZXR0aW5nc1NhdmVkJywgeyBzdWNjZXNzIH0pXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9LCBlcnJvciA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKG11dGF0aW9uLnR5cGUgPT09ICdzZXRPcHRpb24nIHx8IG11dGF0aW9uLnR5cGUgPT09ICdzZXRDdXJyZW50VXNlcicpIHtcbiAgICAgICAgICAgICAgICAgIHN0b3JlLmRpc3BhdGNoKCdzZXR0aW5nc1NhdmVkJywgeyBlcnJvciB9KVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICB9XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICBjb25zb2xlLmxvZyhcIkNvdWxkbid0IHBlcnNpc3Qgc3RhdGU6XCIpXG4gICAgICAgICAgY29uc29sZS5sb2coZSlcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9XG4gIH0pXG59XG4iXSwibmFtZXMiOlsibWVyZ2UiLCJsb2NhbGZvcmFnZSIsImxvYWRlZCIsImRlZmF1bHRSZWR1Y2VyIiwic3RhdGUiLCJwYXRocyIsImxlbmd0aCIsInJlZHVjZSIsInN1YnN0YXRlIiwicGF0aCIsIl9zZXQiLCJfZ2V0Iiwic2F2ZUltbWVkZWF0ZWx5QWN0aW9ucyIsImRlZmF1bHRTdG9yYWdlIiwiY3JlYXRlUGVyc2lzdGVkU3RhdGUiLCJfcmVmIiwiYXJndW1lbnRzIiwidW5kZWZpbmVkIiwiX3JlZiRrZXkiLCJrZXkiLCJfcmVmJHBhdGhzIiwiX3JlZiRnZXRTdGF0ZSIsImdldFN0YXRlIiwic3RvcmFnZSIsInZhbHVlIiwiZ2V0SXRlbSIsIl9yZWYkc2V0U3RhdGUiLCJzZXRTdGF0ZSIsImNvbnNvbGUiLCJsb2ciLCJQcm9taXNlIiwicmVzb2x2ZSIsInNldEl0ZW0iLCJfcmVmJHJlZHVjZXIiLCJyZWR1Y2VyIiwiX3JlZiRzdG9yYWdlIiwiX3JlZiRzdWJzY3JpYmVyIiwic3Vic2NyaWJlciIsInN0b3JlIiwiaGFuZGxlciIsInN1YnNjcmliZSIsInRoZW4iLCJzYXZlZFN0YXRlIiwiX3R5cGVvZiIsInVzZXJzU3RhdGUiLCJ1c2VycyIsInVzZXJzT2JqZWN0IiwiX2VhY2giLCJ1c2VyIiwiaWQiLCJyZXBsYWNlU3RhdGUiLCJlIiwiZXJyb3IiLCJtdXRhdGlvbiIsImluY2x1ZGVzIiwidHlwZSIsIl9jbG9uZURlZXAiLCJzdWNjZXNzIiwiZGlzcGF0Y2giXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/lib/persisted_state.js\n");
/***/ }),
/***/ "./src/lib/push_notifications_plugin.js":
/*!**********************************************!*\
!*** ./src/lib/push_notifications_plugin.js ***!
\**********************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (function (store) {\n store.subscribe(function (mutation, state) {\n var vapidPublicKey = state.instance.vapidPublicKey;\n var webPushNotification = state.config.webPushNotifications;\n var permission = state[\"interface\"].notificationPermission === 'granted';\n var user = state.users.currentUser;\n var isUserMutation = mutation.type === 'setCurrentUser';\n var isVapidMutation = mutation.type === 'setInstanceOption' && mutation.payload.name === 'vapidPublicKey';\n var isPermMutation = mutation.type === 'setNotificationPermission' && mutation.payload === 'granted';\n var isUserConfigMutation = mutation.type === 'setOption' && mutation.payload.name === 'webPushNotifications';\n var isVisibilityMutation = mutation.type === 'setOption' && mutation.payload.name === 'notificationVisibility';\n if (isUserMutation || isVapidMutation || isPermMutation || isUserConfigMutation || isVisibilityMutation) {\n if (user && vapidPublicKey && permission && webPushNotification) {\n return store.dispatch('registerPushNotifications');\n } else if (isUserConfigMutation && !webPushNotification) {\n return store.dispatch('unregisterPushNotifications');\n }\n }\n });\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvbGliL3B1c2hfbm90aWZpY2F0aW9uc19wbHVnaW4uanMuanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBLGlFQUFlLFVBQUNBLEtBQUssRUFBSztFQUN4QkEsS0FBSyxDQUFDQyxTQUFTLENBQUMsVUFBQ0MsUUFBUSxFQUFFQyxLQUFLLEVBQUs7SUFDbkMsSUFBTUMsY0FBYyxHQUFHRCxLQUFLLENBQUNFLFFBQVEsQ0FBQ0QsY0FBYztJQUNwRCxJQUFNRSxtQkFBbUIsR0FBR0gsS0FBSyxDQUFDSSxNQUFNLENBQUNDLG9CQUFvQjtJQUM3RCxJQUFNQyxVQUFVLEdBQUdOLEtBQUssYUFBVSxDQUFDTyxzQkFBc0IsS0FBSyxTQUFTO0lBQ3ZFLElBQU1DLElBQUksR0FBR1IsS0FBSyxDQUFDUyxLQUFLLENBQUNDLFdBQVc7SUFFcEMsSUFBTUMsY0FBYyxHQUFHWixRQUFRLENBQUNhLElBQUksS0FBSyxnQkFBZ0I7SUFDekQsSUFBTUMsZUFBZSxHQUFHZCxRQUFRLENBQUNhLElBQUksS0FBSyxtQkFBbUIsSUFBSWIsUUFBUSxDQUFDZSxPQUFPLENBQUNDLElBQUksS0FBSyxnQkFBZ0I7SUFDM0csSUFBTUMsY0FBYyxHQUFHakIsUUFBUSxDQUFDYSxJQUFJLEtBQUssMkJBQTJCLElBQUliLFFBQVEsQ0FBQ2UsT0FBTyxLQUFLLFNBQVM7SUFDdEcsSUFBTUcsb0JBQW9CLEdBQUdsQixRQUFRLENBQUNhLElBQUksS0FBSyxXQUFXLElBQUliLFFBQVEsQ0FBQ2UsT0FBTyxDQUFDQyxJQUFJLEtBQUssc0JBQXNCO0lBQzlHLElBQU1HLG9CQUFvQixHQUFHbkIsUUFBUSxDQUFDYSxJQUFJLEtBQUssV0FBVyxJQUFJYixRQUFRLENBQUNlLE9BQU8sQ0FBQ0MsSUFBSSxLQUFLLHdCQUF3QjtJQUVoSCxJQUFJSixjQUFjLElBQUlFLGVBQWUsSUFBSUcsY0FBYyxJQUFJQyxvQkFBb0IsSUFBSUMsb0JBQW9CLEVBQUU7TUFDdkcsSUFBSVYsSUFBSSxJQUFJUCxjQUFjLElBQUlLLFVBQVUsSUFBSUgsbUJBQW1CLEVBQUU7UUFDL0QsT0FBT04sS0FBSyxDQUFDc0IsUUFBUSxDQUFDLDJCQUEyQixDQUFDO01BQ3BELENBQUMsTUFBTSxJQUFJRixvQkFBb0IsSUFBSSxDQUFDZCxtQkFBbUIsRUFBRTtRQUN2RCxPQUFPTixLQUFLLENBQUNzQixRQUFRLENBQUMsNkJBQTZCLENBQUM7TUFDdEQ7SUFDRjtFQUNGLENBQUMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL2xpYi9wdXNoX25vdGlmaWNhdGlvbnNfcGx1Z2luLmpzPzZhMzQiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGRlZmF1bHQgKHN0b3JlKSA9PiB7XG4gIHN0b3JlLnN1YnNjcmliZSgobXV0YXRpb24sIHN0YXRlKSA9PiB7XG4gICAgY29uc3QgdmFwaWRQdWJsaWNLZXkgPSBzdGF0ZS5pbnN0YW5jZS52YXBpZFB1YmxpY0tleVxuICAgIGNvbnN0IHdlYlB1c2hOb3RpZmljYXRpb24gPSBzdGF0ZS5jb25maWcud2ViUHVzaE5vdGlmaWNhdGlvbnNcbiAgICBjb25zdCBwZXJtaXNzaW9uID0gc3RhdGUuaW50ZXJmYWNlLm5vdGlmaWNhdGlvblBlcm1pc3Npb24gPT09ICdncmFudGVkJ1xuICAgIGNvbnN0IHVzZXIgPSBzdGF0ZS51c2Vycy5jdXJyZW50VXNlclxuXG4gICAgY29uc3QgaXNVc2VyTXV0YXRpb24gPSBtdXRhdGlvbi50eXBlID09PSAnc2V0Q3VycmVudFVzZXInXG4gICAgY29uc3QgaXNWYXBpZE11dGF0aW9uID0gbXV0YXRpb24udHlwZSA9PT0gJ3NldEluc3RhbmNlT3B0aW9uJyAmJiBtdXRhdGlvbi5wYXlsb2FkLm5hbWUgPT09ICd2YXBpZFB1YmxpY0tleSdcbiAgICBjb25zdCBpc1Blcm1NdXRhdGlvbiA9IG11dGF0aW9uLnR5cGUgPT09ICdzZXROb3RpZmljYXRpb25QZXJtaXNzaW9uJyAmJiBtdXRhdGlvbi5wYXlsb2FkID09PSAnZ3JhbnRlZCdcbiAgICBjb25zdCBpc1VzZXJDb25maWdNdXRhdGlvbiA9IG11dGF0aW9uLnR5cGUgPT09ICdzZXRPcHRpb24nICYmIG11dGF0aW9uLnBheWxvYWQubmFtZSA9PT0gJ3dlYlB1c2hOb3RpZmljYXRpb25zJ1xuICAgIGNvbnN0IGlzVmlzaWJpbGl0eU11dGF0aW9uID0gbXV0YXRpb24udHlwZSA9PT0gJ3NldE9wdGlvbicgJiYgbXV0YXRpb24ucGF5bG9hZC5uYW1lID09PSAnbm90aWZpY2F0aW9uVmlzaWJpbGl0eSdcblxuICAgIGlmIChpc1VzZXJNdXRhdGlvbiB8fCBpc1ZhcGlkTXV0YXRpb24gfHwgaXNQZXJtTXV0YXRpb24gfHwgaXNVc2VyQ29uZmlnTXV0YXRpb24gfHwgaXNWaXNpYmlsaXR5TXV0YXRpb24pIHtcbiAgICAgIGlmICh1c2VyICYmIHZhcGlkUHVibGljS2V5ICYmIHBlcm1pc3Npb24gJiYgd2ViUHVzaE5vdGlmaWNhdGlvbikge1xuICAgICAgICByZXR1cm4gc3RvcmUuZGlzcGF0Y2goJ3JlZ2lzdGVyUHVzaE5vdGlmaWNhdGlvbnMnKVxuICAgICAgfSBlbHNlIGlmIChpc1VzZXJDb25maWdNdXRhdGlvbiAmJiAhd2ViUHVzaE5vdGlmaWNhdGlvbikge1xuICAgICAgICByZXR1cm4gc3RvcmUuZGlzcGF0Y2goJ3VucmVnaXN0ZXJQdXNoTm90aWZpY2F0aW9ucycpXG4gICAgICB9XG4gICAgfVxuICB9KVxufVxuIl0sIm5hbWVzIjpbInN0b3JlIiwic3Vic2NyaWJlIiwibXV0YXRpb24iLCJzdGF0ZSIsInZhcGlkUHVibGljS2V5IiwiaW5zdGFuY2UiLCJ3ZWJQdXNoTm90aWZpY2F0aW9uIiwiY29uZmlnIiwid2ViUHVzaE5vdGlmaWNhdGlvbnMiLCJwZXJtaXNzaW9uIiwibm90aWZpY2F0aW9uUGVybWlzc2lvbiIsInVzZXIiLCJ1c2VycyIsImN1cnJlbnRVc2VyIiwiaXNVc2VyTXV0YXRpb24iLCJ0eXBlIiwiaXNWYXBpZE11dGF0aW9uIiwicGF5bG9hZCIsIm5hbWUiLCJpc1Blcm1NdXRhdGlvbiIsImlzVXNlckNvbmZpZ011dGF0aW9uIiwiaXNWaXNpYmlsaXR5TXV0YXRpb24iLCJkaXNwYXRjaCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/lib/push_notifications_plugin.js\n");
/***/ }),
/***/ "./src/main.js":
/*!*********************!*\
!*** ./src/main.js ***!
\*********************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ \"./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js\");\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/regenerator */ \"./node_modules/@babel/runtime/regenerator/index.js\");\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.esm-bundler.js\");\n/* harmony import */ var custom_event_polyfill__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! custom-event-polyfill */ \"./node_modules/custom-event-polyfill/polyfill.js\");\n/* harmony import */ var custom_event_polyfill__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(custom_event_polyfill__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _lib_event_target_polyfill_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./lib/event_target_polyfill.js */ \"./src/lib/event_target_polyfill.js\");\n/* harmony import */ var _modules_interface_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./modules/interface.js */ \"./src/modules/interface.js\");\n/* harmony import */ var _modules_instance_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./modules/instance.js */ \"./src/modules/instance.js\");\n/* harmony import */ var _modules_statuses_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./modules/statuses.js */ \"./src/modules/statuses.js\");\n/* harmony import */ var _modules_lists_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./modules/lists.js */ \"./src/modules/lists.js\");\n/* harmony import */ var _modules_users_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./modules/users.js */ \"./src/modules/users.js\");\n/* harmony import */ var _modules_api_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./modules/api.js */ \"./src/modules/api.js\");\n/* harmony import */ var _modules_config_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./modules/config.js */ \"./src/modules/config.js\");\n/* harmony import */ var _modules_profileConfig_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./modules/profileConfig.js */ \"./src/modules/profileConfig.js\");\n/* harmony import */ var _modules_serverSideStorage_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./modules/serverSideStorage.js */ \"./src/modules/serverSideStorage.js\");\n/* harmony import */ var _modules_adminSettings_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./modules/adminSettings.js */ \"./src/modules/adminSettings.js\");\n/* harmony import */ var _modules_shout_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./modules/shout.js */ \"./src/modules/shout.js\");\n/* harmony import */ var _modules_oauth_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./modules/oauth.js */ \"./src/modules/oauth.js\");\n/* harmony import */ var _modules_auth_flow_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./modules/auth_flow.js */ \"./src/modules/auth_flow.js\");\n/* harmony import */ var _modules_media_viewer_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./modules/media_viewer.js */ \"./src/modules/media_viewer.js\");\n/* harmony import */ var _modules_oauth_tokens_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./modules/oauth_tokens.js */ \"./src/modules/oauth_tokens.js\");\n/* harmony import */ var _modules_reports_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./modules/reports.js */ \"./src/modules/reports.js\");\n/* harmony import */ var _modules_polls_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./modules/polls.js */ \"./src/modules/polls.js\");\n/* harmony import */ var _modules_postStatus_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./modules/postStatus.js */ \"./src/modules/postStatus.js\");\n/* harmony import */ var _modules_editStatus_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ./modules/editStatus.js */ \"./src/modules/editStatus.js\");\n/* harmony import */ var _modules_statusHistory_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ./modules/statusHistory.js */ \"./src/modules/statusHistory.js\");\n/* harmony import */ var _modules_chats_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ./modules/chats.js */ \"./src/modules/chats.js\");\n/* harmony import */ var _modules_announcements_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ./modules/announcements.js */ \"./src/modules/announcements.js\");\n/* harmony import */ var vue_i18n__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! vue-i18n */ \"./node_modules/vue-i18n/dist/vue-i18n.runtime.esm-bundler.js\");\n/* harmony import */ var _lib_persisted_state_js__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ./lib/persisted_state.js */ \"./src/lib/persisted_state.js\");\n/* harmony import */ var _lib_push_notifications_plugin_js__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ./lib/push_notifications_plugin.js */ \"./src/lib/push_notifications_plugin.js\");\n/* harmony import */ var _i18n_messages_js__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ./i18n/messages.js */ \"./src/i18n/messages.js\");\n/* harmony import */ var _boot_after_store_js__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! ./boot/after_store.js */ \"./src/boot/after_store.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar currentLocale = (window.navigator.language || 'en').split('-')[0];\nvar _i18n = (0,vue_i18n__WEBPACK_IMPORTED_MODULE_30__.createI18n)({\n // By default, use the browser locale, we will update it if neccessary\n locale: 'en',\n fallbackLocale: 'en',\n messages: _i18n_messages_js__WEBPACK_IMPORTED_MODULE_28__[\"default\"][\"default\"]\n});\n_i18n_messages_js__WEBPACK_IMPORTED_MODULE_28__[\"default\"].setLanguage(_i18n.global, currentLocale);\nvar persistedStateOptions = {\n paths: ['serverSideStorage.cache', 'config', 'users.lastLoginName', 'oauth']\n};\n(0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__[\"default\"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default().mark(function _callee() {\n var storageError, plugins, persistedState, store;\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n storageError = false;\n plugins = [_lib_push_notifications_plugin_js__WEBPACK_IMPORTED_MODULE_27__[\"default\"]];\n _context.prev = 2;\n _context.next = 5;\n return (0,_lib_persisted_state_js__WEBPACK_IMPORTED_MODULE_26__[\"default\"])(persistedStateOptions);\n case 5:\n persistedState = _context.sent;\n plugins.push(persistedState);\n _context.next = 13;\n break;\n case 9:\n _context.prev = 9;\n _context.t0 = _context[\"catch\"](2);\n console.error(_context.t0);\n storageError = true;\n case 13:\n store = (0,vuex__WEBPACK_IMPORTED_MODULE_31__.createStore)({\n modules: {\n i18n: {\n getters: {\n i18n: function i18n() {\n return _i18n.global;\n }\n }\n },\n \"interface\": _modules_interface_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"],\n instance: _modules_instance_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"],\n // TODO refactor users/statuses modules, they depend on each other\n users: _modules_users_js__WEBPACK_IMPORTED_MODULE_8__[\"default\"],\n statuses: _modules_statuses_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"],\n lists: _modules_lists_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"],\n api: _modules_api_js__WEBPACK_IMPORTED_MODULE_9__[\"default\"],\n config: _modules_config_js__WEBPACK_IMPORTED_MODULE_10__[\"default\"],\n profileConfig: _modules_profileConfig_js__WEBPACK_IMPORTED_MODULE_11__[\"default\"],\n serverSideStorage: _modules_serverSideStorage_js__WEBPACK_IMPORTED_MODULE_12__[\"default\"],\n adminSettings: _modules_adminSettings_js__WEBPACK_IMPORTED_MODULE_13__[\"default\"],\n shout: _modules_shout_js__WEBPACK_IMPORTED_MODULE_14__[\"default\"],\n oauth: _modules_oauth_js__WEBPACK_IMPORTED_MODULE_15__[\"default\"],\n authFlow: _modules_auth_flow_js__WEBPACK_IMPORTED_MODULE_16__[\"default\"],\n mediaViewer: _modules_media_viewer_js__WEBPACK_IMPORTED_MODULE_17__[\"default\"],\n oauthTokens: _modules_oauth_tokens_js__WEBPACK_IMPORTED_MODULE_18__[\"default\"],\n reports: _modules_reports_js__WEBPACK_IMPORTED_MODULE_19__[\"default\"],\n polls: _modules_polls_js__WEBPACK_IMPORTED_MODULE_20__[\"default\"],\n postStatus: _modules_postStatus_js__WEBPACK_IMPORTED_MODULE_21__[\"default\"],\n editStatus: _modules_editStatus_js__WEBPACK_IMPORTED_MODULE_22__[\"default\"],\n statusHistory: _modules_statusHistory_js__WEBPACK_IMPORTED_MODULE_23__[\"default\"],\n chats: _modules_chats_js__WEBPACK_IMPORTED_MODULE_24__[\"default\"],\n announcements: _modules_announcements_js__WEBPACK_IMPORTED_MODULE_25__[\"default\"]\n },\n plugins: plugins,\n strict: false // Socket modifies itself, let's ignore this for now.\n // strict: process.env.NODE_ENV !== 'production'\n });\n\n if (storageError) {\n store.dispatch('pushGlobalNotice', {\n messageKey: 'errors.storage_unavailable',\n level: 'error'\n });\n }\n (0,_boot_after_store_js__WEBPACK_IMPORTED_MODULE_29__[\"default\"])({\n store: store,\n i18n: _i18n\n });\n case 16:\n case \"end\":\n return _context.stop();\n }\n }, _callee, null, [[2, 9]]);\n}))();\n\n// These are inlined by webpack's DefinePlugin\n/* eslint-disable */\nwindow.___pleromafe_mode = ({\"NODE_ENV\":\"development\"});\nwindow.___pleromafe_commit_hash = \"DEV\";\nwindow.___pleromafe_dev_overrides = {\"target\":\"http://10.0.0.3:7776\",\"staticConfigPreference\":false};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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QUFFMUQsK0RBQWdCO1lBQzVCMkQsVUFBVSxFQUFFMUQsK0RBQWdCO1lBQzVCMkQsYUFBYSxFQUFFMUQsa0VBQW1CO1lBQ2xDMkQsS0FBSyxFQUFFMUQsMERBQVc7WUFDbEIyRCxhQUFhLEVBQUUxRCxrRUFBbUJBO1VBQ3BDLENBQUM7VUFDRHVCLE9BQU8sRUFBUEEsT0FBTztVQUNQb0MsTUFBTSxFQUFFLEtBQUssQ0FBQztVQUNkO1FBQ0YsQ0FBQyxDQUFDOztRQUNGLElBQUlyQyxZQUFZLEVBQUU7VUFDaEJHLEtBQUssQ0FBQ21DLFFBQVEsQ0FBQyxrQkFBa0IsRUFBRTtZQUFFQyxVQUFVLEVBQUUsNEJBQTRCO1lBQUVDLEtBQUssRUFBRTtVQUFRLENBQUMsQ0FBQztRQUNsRztRQUNBekQsaUVBQWUsQ0FBQztVQUFFb0IsS0FBSyxFQUFMQSxLQUFLO1VBQUVkLElBQUksRUFBSkE7UUFBSyxDQUFDLENBQUM7TUFBQTtNQUFBO1FBQUEsT0FBQWlCLFFBQUEsQ0FBQW1DLElBQUE7SUFBQTtFQUFBLEdBQUExQyxPQUFBO0FBQUEsQ0FDakMsR0FBRSxDQUFDOztBQUVKO0FBQ0E7QUFDQWQsTUFBTSxDQUFDeUQsaUJBQWlCLEdBQUdDLDRCQUFXO0FBQ3RDMUQsTUFBTSxDQUFDNEQsd0JBQXdCLEdBQUdDLEtBQVc7QUFDN0M3RCxNQUFNLENBQUM4RCwwQkFBMEIsR0FBR0MsZ0VBQWEiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL21haW4uanM/NTZkNyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVTdG9yZSB9IGZyb20gJ3Z1ZXgnXG5cbmltcG9ydCAnY3VzdG9tLWV2ZW50LXBvbHlmaWxsJ1xuaW1wb3J0ICcuL2xpYi9ldmVudF90YXJnZXRfcG9seWZpbGwuanMnXG5cbmltcG9ydCBpbnRlcmZhY2VNb2R1bGUgZnJvbSAnLi9tb2R1bGVzL2ludGVyZmFjZS5qcydcbmltcG9ydCBpbnN0YW5jZU1vZHVsZSBmcm9tICcuL21vZHVsZXMvaW5zdGFuY2UuanMnXG5pbXBvcnQgc3RhdHVzZXNNb2R1bGUgZnJvbSAnLi9tb2R1bGVzL3N0YXR1c2VzLmpzJ1xuaW1wb3J0IGxpc3RzTW9kdWxlIGZyb20gJy4vbW9kdWxlcy9saXN0cy5qcydcbmltcG9ydCB1c2Vyc01vZHVsZSBmcm9tICcuL21vZHVsZXMvdXNlcnMuanMnXG5pbXBvcnQgYXBpTW9kdWxlIGZyb20gJy4vbW9kdWxlcy9hcGkuanMnXG5pbXBvcnQgY29uZmlnTW9kdWxlIGZyb20gJy4vbW9kdWxlcy9jb25maWcuanMnXG5pbXBvcnQgcHJvZmlsZUNvbmZpZ01vZHVsZSBmcm9tICcuL21vZHVsZXMvcHJvZmlsZUNvbmZpZy5qcydcbmltcG9ydCBzZXJ2ZXJTaWRlU3RvcmFnZU1vZHVsZSBmcm9tICcuL21vZHVsZXMvc2VydmVyU2lkZVN0b3JhZ2UuanMnXG5pbXBvcnQgYWRtaW5TZXR0aW5nc01vZHVsZSBmcm9tICcuL21vZHVsZXMvYWRtaW5TZXR0aW5ncy5qcydcbmltcG9ydCBzaG91dE1vZHVsZSBmcm9tICcuL21vZHVsZXMvc2hvdXQuanMnXG5pbXBvcnQgb2F1dGhNb2R1bGUgZnJvbSAnLi9tb2R1bGVzL29hdXRoLmpzJ1xuaW1wb3J0IGF1dGhGbG93TW9kdWxlIGZyb20gJy4vbW9kdWxlcy9hdXRoX2Zsb3cuanMnXG5pbXBvcnQgbWVkaWFWaWV3ZXJNb2R1bGUgZnJvbSAnLi9tb2R1bGVzL21lZGlhX3ZpZXdlci5qcydcbmltcG9ydCBvYXV0aFRva2Vuc01vZHVsZSBmcm9tICcuL21vZHVsZXMvb2F1dGhfdG9rZW5zLmpzJ1xuaW1wb3J0IHJlcG9ydHNNb2R1bGUgZnJvbSAnLi9tb2R1bGVzL3JlcG9ydHMuanMnXG5pbXBvcnQgcG9sbHNNb2R1bGUgZnJvbSAnLi9tb2R1bGVzL3BvbGxzLmpzJ1xuaW1wb3J0IHBvc3RTdGF0dXNNb2R1bGUgZnJvbSAnLi9tb2R1bGVzL3Bvc3RTdGF0dXMuanMnXG5pbXBvcnQgZWRpdFN0YXR1c01vZHVsZSBmcm9tICcuL21vZHVsZXMvZWRpdFN0YXR1cy5qcydcbmltcG9ydCBzdGF0dXNIaXN0b3J5TW9kdWxlIGZyb20gJy4vbW9kdWxlcy9zdGF0dXNIaXN0b3J5LmpzJ1xuXG5pbXBvcnQgY2hhdHNNb2R1bGUgZnJvbSAnLi9tb2R1bGVzL2NoYXRzLmpzJ1xuaW1wb3J0IGFubm91bmNlbWVudHNNb2R1bGUgZnJvbSAnLi9tb2R1bGVzL2Fubm91bmNlbWVudHMuanMnXG5cbmltcG9ydCB7IGNyZWF0ZUkxOG4gfSBmcm9tICd2dWUtaTE4bidcblxuaW1wb3J0IGNyZWF0ZVBlcnNpc3RlZFN0YXRlIGZyb20gJy4vbGliL3BlcnNpc3RlZF9zdGF0ZS5qcydcbmltcG9ydCBwdXNoTm90aWZpY2F0aW9ucyBmcm9tICcuL2xpYi9wdXNoX25vdGlmaWNhdGlvbnNfcGx1Z2luLmpzJ1xuXG5pbXBvcnQgbWVzc2FnZXMgZnJvbSAnLi9pMThuL21lc3NhZ2VzLmpzJ1xuXG5pbXBvcnQgYWZ0ZXJTdG9yZVNldHVwIGZyb20gJy4vYm9vdC9hZnRlcl9zdG9yZS5qcydcblxuY29uc3QgY3VycmVudExvY2FsZSA9ICh3aW5kb3cubmF2aWdhdG9yLmxhbmd1YWdlIHx8ICdlbicpLnNwbGl0KCctJylbMF1cblxuY29uc3QgaTE4biA9IGNyZWF0ZUkxOG4oe1xuICAvLyBCeSBkZWZhdWx0LCB1c2UgdGhlIGJyb3dzZXIgbG9jYWxlLCB3ZSB3aWxsIHVwZGF0ZSBpdCBpZiBuZWNjZXNzYXJ5XG4gIGxvY2FsZTogJ2VuJyxcbiAgZmFsbGJhY2tMb2NhbGU6ICdlbicsXG4gIG1lc3NhZ2VzOiBtZXNzYWdlcy5kZWZhdWx0XG59KVxuXG5tZXNzYWdlcy5zZXRMYW5ndWFnZShpMThuLmdsb2JhbCwgY3VycmVudExvY2FsZSlcblxuY29uc3QgcGVyc2lzdGVkU3RhdGVPcHRpb25zID0ge1xuICBwYXRoczogW1xuICAgICdzZXJ2ZXJTaWRlU3RvcmFnZS5jYWNoZScsXG4gICAgJ2NvbmZpZycsXG4gICAgJ3VzZXJzLmxhc3RMb2dpbk5hbWUnLFxuICAgICdvYXV0aCdcbiAgXVxufTtcblxuKGFzeW5jICgpID0+IHtcbiAgbGV0IHN0b3JhZ2VFcnJvciA9IGZhbHNlXG4gIGNvbnN0IHBsdWdpbnMgPSBbcHVzaE5vdGlmaWNhdGlvbnNdXG4gIHRyeSB7XG4gICAgY29uc3QgcGVyc2lzdGVkU3RhdGUgPSBhd2FpdCBjcmVhdGVQZXJzaXN0ZWRTdGF0ZShwZXJzaXN0ZWRTdGF0ZU9wdGlvbnMpXG4gICAgcGx1Z2lucy5wdXNoKHBlcnNpc3RlZFN0YXRlKVxuICB9IGNhdGNoIChlKSB7XG4gICAgY29uc29sZS5lcnJvcihlKVxuICAgIHN0b3JhZ2VFcnJvciA9IHRydWVcbiAgfVxuICBjb25zdCBzdG9yZSA9IGNyZWF0ZVN0b3JlKHtcbiAgICBtb2R1bGVzOiB7XG4gICAgICBpMThuOiB7XG4gICAgICAgIGdldHRlcnM6IHtcbiAgICAgICAgICBpMThuOiAoKSA9PiBpMThuLmdsb2JhbFxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgaW50ZXJmYWNlOiBpbnRlcmZhY2VNb2R1bGUsXG4gICAgICBpbnN0YW5jZTogaW5zdGFuY2VNb2R1bGUsXG4gICAgICAvLyBUT0RPIHJlZmFjdG9yIHVzZXJzL3N0YXR1c2VzIG1vZHVsZXMsIHRoZXkgZGVwZW5kIG9uIGVhY2ggb3RoZXJcbiAgICAgIHVzZXJzOiB1c2Vyc01vZHVsZSxcbiAgICAgIHN0YXR1c2VzOiBzdGF0dXNlc01vZHVsZSxcbiAgICAgIGxpc3RzOiBsaXN0c01vZHVsZSxcbiAgICAgIGFwaTogYXBpTW9kdWxlLFxuICAgICAgY29uZmlnOiBjb25maWdNb2R1bGUsXG4gICAgICBwcm9maWxlQ29uZmlnOiBwcm9maWxlQ29uZmlnTW9kdWxlLFxuICAgICAgc2VydmVyU2lkZVN0b3JhZ2U6IHNlcnZlclNpZGVTdG9yYWdlTW9kdWxlLFxuICAgICAgYWRtaW5TZXR0aW5nczogYWRtaW5TZXR0aW5nc01vZHVsZSxcbiAgICAgIHNob3V0OiBzaG91dE1vZHVsZSxcbiAgICAgIG9hdXRoOiBvYXV0aE1vZHVsZSxcbiAgICAgIGF1dGhGbG93OiBhdXRoRmxvd01vZHVsZSxcbiAgICAgIG1lZGlhVmlld2VyOiBtZWRpYVZpZXdlck1vZHVsZSxcbiAgICAgIG9hdXRoVG9rZW5zOiBvYXV0aFRva2Vuc01vZHVsZSxcbiAgICAgIHJlcG9ydHM6IHJlcG9ydHNNb2R1bGUsXG4gICAgICBwb2xsczogcG9sbHNNb2R1bGUsXG4gICAgICBwb3N0U3RhdHVzOiBwb3N0U3RhdHVzTW9kdWxlLFxuICAgICAgZWRpdFN0YXR1czogZWRpdFN0YXR1c01vZHVsZSxcbiAgICAgIHN0YXR1c0hpc3Rvcnk6IHN0YXR1c0hpc3RvcnlNb2R1bGUsXG4gICAgICBjaGF0czogY2hhdHNNb2R1bGUsXG4gICAgICBhbm5vdW5jZW1lbnRzOiBhbm5vdW5jZW1lbnRzTW9kdWxlXG4gICAgfSxcbiAgICBwbHVnaW5zLFxuICAgIHN0cmljdDogZmFsc2UgLy8gU29ja2V0IG1vZGlmaWVzIGl0c2VsZiwgbGV0J3MgaWdub3JlIHRoaXMgZm9yIG5vdy5cbiAgICAvLyBzdHJpY3Q6IHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbidcbiAgfSlcbiAgaWYgKHN0b3JhZ2VFcnJvcikge1xuICAgIHN0b3JlLmRpc3BhdGNoKCdwdXNoR2xvYmFsTm90aWNlJywgeyBtZXNzYWdlS2V5OiAnZXJyb3JzLnN0b3JhZ2VfdW5hdmFpbGFibGUnLCBsZXZlbDogJ2Vycm9yJyB9KVxuICB9XG4gIGFmdGVyU3RvcmVTZXR1cCh7IHN0b3JlLCBpMThuIH0pXG59KSgpXG5cbi8vIFRoZXNlIGFyZSBpbmxpbmVkIGJ5IHdlYnBhY2sncyBEZWZpbmVQbHVnaW5cbi8qIGVzbGludC1kaXNhYmxlICovXG53aW5kb3cuX19fcGxlcm9tYWZlX21vZGUgPSBwcm9jZXNzLmVudlxud2luZG93Ll9fX3BsZXJvbWFmZV9jb21taXRfaGFzaCA9IENPTU1JVF9IQVNIXG53aW5kb3cuX19fcGxlcm9tYWZlX2Rldl9vdmVycmlkZXMgPSBERVZfT1ZFUlJJREVTXG4iXSwibmFtZXMiOlsiY3JlYXRlU3RvcmUiLCJpbnRlcmZhY2VNb2R1bGUiLCJpbnN0YW5jZU1vZHVsZSIsInN0YXR1c2VzTW9kdWxlIiwibGlzdHNNb2R1bGUiLCJ1c2Vyc01vZHVsZSIsImFwaU1vZHVsZSIsImNvbmZpZ01vZHVsZSIsInByb2ZpbGVDb25maWdNb2R1bGUiLCJzZXJ2ZXJTaWRlU3RvcmFnZU1vZHVsZSIsImFkbWluU2V0dGluZ3NNb2R1bGUiLCJzaG91dE1vZHVsZSIsIm9hdXRoTW9kdWxlIiwiYXV0aEZsb3dNb2R1bGUiLCJtZWRpYVZpZXdlck1vZHVsZSIsIm9hdXRoVG9rZW5zTW9kdWxlIiwicmVwb3J0c01vZHVsZSIsInBvbGxzTW9kdWxlIiwicG9zdFN0YXR1c01vZHVsZSIsImVkaXRTdGF0dXNNb2R1bGUiLCJzdGF0dXNIaXN0b3J5TW9kdWxlIiwiY2hhdHNNb2R1bGUiLCJhbm5vdW5jZW1lbnRzTW9kdWxlIiwiY3JlYXRlSTE4biIsImNyZWF0ZVBlcnNpc3RlZFN0YXRlIiwicHVzaE5vdGlmaWNhdGlvbnMiLCJtZXNzYWdlcyIsImFmdGVyU3RvcmVTZXR1cCIsImN1cnJlbnRMb2NhbGUiLCJ3aW5kb3ciLCJuYXZpZ2F0b3IiLCJsYW5ndWFnZSIsInNwbGl0IiwiaTE4biIsImxvY2FsZSIsImZhbGxiYWNrTG9jYWxlIiwic2V0TGFuZ3VhZ2UiLCJnbG9iYWwiLCJwZXJzaXN0ZWRTdGF0ZU9wdGlvbnMiLCJwYXRocyIsIl9hc3luY1RvR2VuZXJhdG9yIiwiX3JlZ2VuZXJhdG9yUnVudGltZSIsIm1hcmsiLCJfY2FsbGVlIiwic3RvcmFnZUVycm9yIiwicGx1Z2lucyIsInBlcnNpc3RlZFN0YXRlIiwic3RvcmUiLCJ3cmFwIiwiX2NhbGxlZSQiLCJfY29udGV4dCIsInByZXYiLCJuZXh0Iiwic2VudCIsInB1c2giLCJ0MCIsImNvbnNvbGUiLCJlcnJvciIsIm1vZHVsZXMiLCJnZXR0ZXJzIiwiaW5zdGFuY2UiLCJ1c2VycyIsInN0YXR1c2VzIiwibGlzdHMiLCJhcGkiLCJjb25maWciLCJwcm9maWxlQ29uZmlnIiwic2VydmVyU2lkZVN0b3JhZ2UiLCJhZG1pblNldHRpbmdzIiwic2hvdXQiLCJvYXV0aCIsImF1dGhGbG93IiwibWVkaWFWaWV3ZXIiLCJvYXV0aFRva2VucyIsInJlcG9ydHMiLCJwb2xscyIsInBvc3RTdGF0dXMiLCJlZGl0U3RhdHVzIiwic3RhdHVzSGlzdG9yeSIsImNoYXRzIiwiYW5ub3VuY2VtZW50cyIsInN0cmljdCIsImRpc3BhdGNoIiwibWVzc2FnZUtleSIsImxldmVsIiwic3RvcCIsIl9fX3BsZXJvbWFmZV9tb2RlIiwicHJvY2VzcyIsImVudiIsIl9fX3BsZXJvbWFmZV9jb21taXRfaGFzaCIsIkNPTU1JVF9IQVNIIiwiX19fcGxlcm9tYWZlX2Rldl9vdmVycmlkZXMiLCJERVZfT1ZFUlJJREVTIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/main.js\n");
/***/ }),
/***/ "./src/modules/adminSettings.js":
/*!**************************************!*\
!*** ./src/modules/adminSettings.js ***!
\**************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__),\n/* harmony export */ \"defaultState\": () => (/* binding */ defaultState),\n/* harmony export */ \"newUserFlags\": () => (/* binding */ newUserFlags)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_toArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/toArray */ \"./node_modules/@babel/runtime/helpers/esm/toArray.js\");\n/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/typeof */ \"./node_modules/@babel/runtime/helpers/esm/typeof.js\");\n/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ \"./node_modules/@babel/runtime/helpers/esm/slicedToArray.js\");\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"./node_modules/@babel/runtime/helpers/esm/defineProperty.js\");\n/* harmony import */ var lodash_flatten__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! lodash/flatten */ \"./node_modules/lodash/flatten.js\");\n/* harmony import */ var lodash_flatten__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(lodash_flatten__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var lodash_isEqual__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! lodash/isEqual */ \"./node_modules/lodash/isEqual.js\");\n/* harmony import */ var lodash_isEqual__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(lodash_isEqual__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var lodash_differenceWith__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! lodash/differenceWith */ \"./node_modules/lodash/differenceWith.js\");\n/* harmony import */ var lodash_differenceWith__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(lodash_differenceWith__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony import */ var lodash_cloneDeep__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! lodash/cloneDeep */ \"./node_modules/lodash/cloneDeep.js\");\n/* harmony import */ var lodash_cloneDeep__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(lodash_cloneDeep__WEBPACK_IMPORTED_MODULE_7__);\n/* harmony import */ var lodash_get__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! lodash/get */ \"./node_modules/lodash/get.js\");\n/* harmony import */ var lodash_get__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(lodash_get__WEBPACK_IMPORTED_MODULE_8__);\n/* harmony import */ var lodash_set__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! lodash/set */ \"./node_modules/lodash/set.js\");\n/* harmony import */ var lodash_set__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(lodash_set__WEBPACK_IMPORTED_MODULE_9__);\n\n\n\n\n\n\n\n\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(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; }\nvar defaultState = {\n frontends: [],\n loaded: false,\n needsReboot: null,\n config: null,\n modifiedPaths: null,\n descriptions: null,\n draft: null,\n dbConfigEnabled: null\n};\nvar newUserFlags = _objectSpread({}, defaultState.flagStorage);\nvar adminSettingsStorage = {\n state: _objectSpread({}, lodash_cloneDeep__WEBPACK_IMPORTED_MODULE_7___default()(defaultState)),\n mutations: {\n setInstanceAdminNoDbConfig: function setInstanceAdminNoDbConfig(state) {\n state.loaded = false;\n state.dbConfigEnabled = false;\n },\n setAvailableFrontends: function setAvailableFrontends(state, _ref) {\n var frontends = _ref.frontends;\n state.frontends = frontends.map(function (f) {\n f.installedRefs = f.installed_refs;\n if (f.name === 'pleroma-fe') {\n f.refs = ['master', 'develop'];\n } else {\n f.refs = [f.ref];\n }\n return f;\n });\n },\n updateAdminSettings: function updateAdminSettings(state, _ref2) {\n var config = _ref2.config,\n modifiedPaths = _ref2.modifiedPaths;\n state.loaded = true;\n state.dbConfigEnabled = true;\n state.config = config;\n state.modifiedPaths = modifiedPaths;\n },\n updateAdminDescriptions: function updateAdminDescriptions(state, _ref3) {\n var descriptions = _ref3.descriptions;\n state.descriptions = descriptions;\n },\n updateAdminDraft: function updateAdminDraft(state, _ref4) {\n var path = _ref4.path,\n value = _ref4.value;\n var _path = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(path, 3),\n group = _path[0],\n key = _path[1],\n subkey = _path[2];\n var parent = [group, key, subkey];\n lodash_set__WEBPACK_IMPORTED_MODULE_9___default()(state.draft, path, value);\n\n // force-updating grouped draft to trigger refresh of group settings\n if (path.length > parent.length) {\n lodash_set__WEBPACK_IMPORTED_MODULE_9___default()(state.draft, parent, lodash_cloneDeep__WEBPACK_IMPORTED_MODULE_7___default()(lodash_get__WEBPACK_IMPORTED_MODULE_8___default()(state.draft, parent)));\n }\n },\n resetAdminDraft: function resetAdminDraft(state) {\n state.draft = lodash_cloneDeep__WEBPACK_IMPORTED_MODULE_7___default()(state.config);\n }\n },\n actions: {\n loadFrontendsStuff: function loadFrontendsStuff(_ref5) {\n var state = _ref5.state,\n rootState = _ref5.rootState,\n dispatch = _ref5.dispatch,\n commit = _ref5.commit;\n rootState.api.backendInteractor.fetchAvailableFrontends().then(function (frontends) {\n return commit('setAvailableFrontends', {\n frontends: frontends\n });\n });\n },\n loadAdminStuff: function loadAdminStuff(_ref6) {\n var state = _ref6.state,\n rootState = _ref6.rootState,\n dispatch = _ref6.dispatch,\n commit = _ref6.commit;\n rootState.api.backendInteractor.fetchInstanceDBConfig().then(function (backendDbConfig) {\n if (backendDbConfig.error) {\n if (backendDbConfig.error.status === 400) {\n backendDbConfig.error.json().then(function (errorJson) {\n if (/configurable_from_database/.test(errorJson.error)) {\n commit('setInstanceAdminNoDbConfig');\n }\n });\n }\n } else {\n dispatch('setInstanceAdminSettings', {\n backendDbConfig: backendDbConfig\n });\n }\n });\n if (state.descriptions === null) {\n rootState.api.backendInteractor.fetchInstanceConfigDescriptions().then(function (backendDescriptions) {\n return dispatch('setInstanceAdminDescriptions', {\n backendDescriptions: backendDescriptions\n });\n });\n }\n },\n setInstanceAdminSettings: function setInstanceAdminSettings(_ref7, _ref8) {\n var state = _ref7.state,\n commit = _ref7.commit,\n dispatch = _ref7.dispatch;\n var backendDbConfig = _ref8.backendDbConfig;\n var config = state.config || {};\n var modifiedPaths = new Set();\n backendDbConfig.configs.forEach(function (c) {\n var path = [c.group, c.key];\n if (c.db) {\n // Path elements can contain dot, therefore we use ' -> ' as a separator instead\n // Using strings for modified paths for easier searching\n c.db.forEach(function (x) {\n return modifiedPaths.add([].concat(path, [x]).join(' -> '));\n });\n }\n var convert = function convert(value) {\n if (Array.isArray(value) && value.length > 0 && value[0].tuple) {\n return value.reduce(function (acc, c) {\n return _objectSpread(_objectSpread({}, acc), {}, (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__[\"default\"])({}, c.tuple[0], convert(c.tuple[1])));\n }, {});\n } else {\n return value;\n }\n };\n lodash_set__WEBPACK_IMPORTED_MODULE_9___default()(config, path, convert(c.value));\n });\n console.log(config[':pleroma']);\n commit('updateAdminSettings', {\n config: config,\n modifiedPaths: modifiedPaths\n });\n commit('resetAdminDraft');\n },\n setInstanceAdminDescriptions: function setInstanceAdminDescriptions(_ref9, _ref10) {\n var state = _ref9.state,\n commit = _ref9.commit,\n dispatch = _ref9.dispatch;\n var backendDescriptions = _ref10.backendDescriptions;\n var convert = function convert(_ref11, path, acc) {\n var children = _ref11.children,\n description = _ref11.description,\n label = _ref11.label,\n _ref11$key = _ref11.key,\n key = _ref11$key === void 0 ? '' : _ref11$key,\n group = _ref11.group,\n suggestions = _ref11.suggestions;\n var newPath = group ? [group, key] : [key];\n var obj = {\n description: description,\n label: label,\n suggestions: suggestions\n };\n if (Array.isArray(children)) {\n children.forEach(function (c) {\n convert(c, newPath, obj);\n });\n }\n lodash_set__WEBPACK_IMPORTED_MODULE_9___default()(acc, newPath, obj);\n };\n var descriptions = {};\n backendDescriptions.forEach(function (d) {\n return convert(d, '', descriptions);\n });\n console.log(descriptions[':pleroma']['Pleroma.Captcha']);\n commit('updateAdminDescriptions', {\n descriptions: descriptions\n });\n },\n // This action takes draft state, diffs it with live config state and then pushes\n // only differences between the two. Difference detection only work up to subkey (third) level.\n pushAdminDraft: function pushAdminDraft(_ref12) {\n var rootState = _ref12.rootState,\n state = _ref12.state,\n commit = _ref12.commit,\n dispatch = _ref12.dispatch;\n // TODO cleanup paths in modifiedPaths\n var convert = function convert(value) {\n if ((0,_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(value) !== 'object') {\n return value;\n } else if (Array.isArray(value)) {\n return value.map(convert);\n } else {\n return Object.entries(value).map(function (_ref13) {\n var _ref14 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(_ref13, 2),\n k = _ref14[0],\n v = _ref14[1];\n return {\n tuple: [k, v]\n };\n });\n }\n };\n\n // Getting all group-keys used in config\n var allGroupKeys = lodash_flatten__WEBPACK_IMPORTED_MODULE_4___default()(Object.entries(state.config).map(function (_ref15) {\n var _ref16 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(_ref15, 2),\n group = _ref16[0],\n lv1data = _ref16[1];\n return Object.keys(lv1data).map(function (key) {\n return {\n group: group,\n key: key\n };\n });\n }));\n\n // Only using group-keys where there are changes detected\n var changedGroupKeys = allGroupKeys.filter(function (_ref17) {\n var group = _ref17.group,\n key = _ref17.key;\n return !lodash_isEqual__WEBPACK_IMPORTED_MODULE_5___default()(state.config[group][key], state.draft[group][key]);\n });\n\n // Here we take all changed group-keys and get all changed subkeys\n var changed = changedGroupKeys.map(function (_ref18) {\n var group = _ref18.group,\n key = _ref18.key;\n var config = state.config[group][key];\n var draft = state.draft[group][key];\n\n // We convert group-key value into entries arrays\n var eConfig = Object.entries(config);\n var eDraft = Object.entries(draft);\n\n // Then those entries array we diff so only changed subkey entries remain\n // We use the diffed array to reconstruct the object and then shove it into convert()\n return {\n group: group,\n key: key,\n value: convert(Object.fromEntries(lodash_differenceWith__WEBPACK_IMPORTED_MODULE_6___default()(eDraft, eConfig, (lodash_isEqual__WEBPACK_IMPORTED_MODULE_5___default()))))\n };\n });\n rootState.api.backendInteractor.pushInstanceDBConfig({\n payload: {\n configs: changed\n }\n }).then(function () {\n return rootState.api.backendInteractor.fetchInstanceDBConfig();\n }).then(function (backendDbConfig) {\n return dispatch('setInstanceAdminSettings', {\n backendDbConfig: backendDbConfig\n });\n });\n },\n pushAdminSetting: function pushAdminSetting(_ref19, _ref20) {\n var rootState = _ref19.rootState,\n state = _ref19.state,\n commit = _ref19.commit,\n dispatch = _ref19.dispatch;\n var path = _ref20.path,\n value = _ref20.value;\n var _ref21 = Array.isArray(path) ? path : path.split(/\\./g),\n _ref22 = (0,_babel_runtime_helpers_toArray__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(_ref21),\n group = _ref22[0],\n key = _ref22[1],\n rest = _ref22.slice(2);\n var clone = {}; // not actually cloning the entire thing to avoid excessive writes\n lodash_set__WEBPACK_IMPORTED_MODULE_9___default()(clone, rest, value);\n\n // TODO cleanup paths in modifiedPaths\n var convert = function convert(value) {\n if ((0,_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(value) !== 'object') {\n return value;\n } else if (Array.isArray(value)) {\n return value.map(convert);\n } else {\n return Object.entries(value).map(function (_ref23) {\n var _ref24 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(_ref23, 2),\n k = _ref24[0],\n v = _ref24[1];\n return {\n tuple: [k, v]\n };\n });\n }\n };\n rootState.api.backendInteractor.pushInstanceDBConfig({\n payload: {\n configs: [{\n group: group,\n key: key,\n value: convert(clone)\n }]\n }\n }).then(function () {\n return rootState.api.backendInteractor.fetchInstanceDBConfig();\n }).then(function (backendDbConfig) {\n return dispatch('setInstanceAdminSettings', {\n backendDbConfig: backendDbConfig\n });\n });\n },\n resetAdminSetting: function resetAdminSetting(_ref25, _ref26) {\n var rootState = _ref25.rootState,\n state = _ref25.state,\n commit = _ref25.commit,\n dispatch = _ref25.dispatch;\n var path = _ref26.path;\n var _path$split = path.split(/\\./g),\n _path$split2 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(_path$split, 3),\n group = _path$split2[0],\n key = _path$split2[1],\n subkey = _path$split2[2];\n state.modifiedPaths[\"delete\"](path);\n return rootState.api.backendInteractor.pushInstanceDBConfig({\n payload: {\n configs: [{\n group: group,\n key: key,\n \"delete\": true,\n subkeys: [subkey]\n }]\n }\n }).then(function () {\n return rootState.api.backendInteractor.fetchInstanceDBConfig();\n }).then(function (backendDbConfig) {\n return dispatch('setInstanceAdminSettings', {\n backendDbConfig: backendDbConfig\n });\n });\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (adminSettingsStorage);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvbW9kdWxlcy9hZG1pblNldHRpbmdzLmpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFTyxJQUFNQSxZQUFZLEdBQUc7RUFDMUJDLFNBQVMsRUFBRSxFQUFFO0VBQ2JDLE1BQU0sRUFBRSxLQUFLO0VBQ2JDLFdBQVcsRUFBRSxJQUFJO0VBQ2pCQyxNQUFNLEVBQUUsSUFBSTtFQUNaQyxhQUFhLEVBQUUsSUFBSTtFQUNuQkMsWUFBWSxFQUFFLElBQUk7RUFDbEJDLEtBQUssRUFBRSxJQUFJO0VBQ1hDLGVBQWUsRUFBRTtBQUNuQixDQUFDO0FBRU0sSUFBTUMsWUFBWSxHQUFBQyxhQUFBLEtBQ3BCVixZQUFZLENBQUNXLFdBQVcsQ0FDNUI7QUFFRCxJQUFNQyxvQkFBb0IsR0FBRztFQUMzQkMsS0FBSyxFQUFBSCxhQUFBLEtBQ0FJLHVEQUFBLENBQVVkLFlBQVksQ0FBQyxDQUMzQjtFQUNEZSxTQUFTLEVBQUU7SUFDVEMsMEJBQTBCLFdBQUFBLDJCQUFFSCxLQUFLLEVBQUU7TUFDakNBLEtBQUssQ0FBQ1gsTUFBTSxHQUFHLEtBQUs7TUFDcEJXLEtBQUssQ0FBQ0wsZUFBZSxHQUFHLEtBQUs7SUFDL0IsQ0FBQztJQUNEUyxxQkFBcUIsV0FBQUEsc0JBQUVKLEtBQUssRUFBQUssSUFBQSxFQUFpQjtNQUFBLElBQWJqQixTQUFTLEdBQUFpQixJQUFBLENBQVRqQixTQUFTO01BQ3ZDWSxLQUFLLENBQUNaLFNBQVMsR0FBR0EsU0FBUyxDQUFDa0IsR0FBRyxDQUFDLFVBQUFDLENBQUMsRUFBSTtRQUNuQ0EsQ0FBQyxDQUFDQyxhQUFhLEdBQUdELENBQUMsQ0FBQ0UsY0FBYztRQUNsQyxJQUFJRixDQUFDLENBQUNHLElBQUksS0FBSyxZQUFZLEVBQUU7VUFDM0JILENBQUMsQ0FBQ0ksSUFBSSxHQUFHLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQztRQUNoQyxDQUFDLE1BQU07VUFDTEosQ0FBQyxDQUFDSSxJQUFJLEdBQUcsQ0FBQ0osQ0FBQyxDQUFDSyxHQUFHLENBQUM7UUFDbEI7UUFDQSxPQUFPTCxDQUFDO01BQ1YsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUNETSxtQkFBbUIsV0FBQUEsb0JBQUViLEtBQUssRUFBQWMsS0FBQSxFQUE2QjtNQUFBLElBQXpCdkIsTUFBTSxHQUFBdUIsS0FBQSxDQUFOdkIsTUFBTTtRQUFFQyxhQUFhLEdBQUFzQixLQUFBLENBQWJ0QixhQUFhO01BQ2pEUSxLQUFLLENBQUNYLE1BQU0sR0FBRyxJQUFJO01BQ25CVyxLQUFLLENBQUNMLGVBQWUsR0FBRyxJQUFJO01BQzVCSyxLQUFLLENBQUNULE1BQU0sR0FBR0EsTUFBTTtNQUNyQlMsS0FBSyxDQUFDUixhQUFhLEdBQUdBLGFBQWE7SUFDckMsQ0FBQztJQUNEdUIsdUJBQXVCLFdBQUFBLHdCQUFFZixLQUFLLEVBQUFnQixLQUFBLEVBQW9CO01BQUEsSUFBaEJ2QixZQUFZLEdBQUF1QixLQUFBLENBQVp2QixZQUFZO01BQzVDTyxLQUFLLENBQUNQLFlBQVksR0FBR0EsWUFBWTtJQUNuQyxDQUFDO0lBQ0R3QixnQkFBZ0IsV0FBQUEsaUJBQUVqQixLQUFLLEVBQUFrQixLQUFBLEVBQW1CO01BQUEsSUFBZkMsSUFBSSxHQUFBRCxLQUFBLENBQUpDLElBQUk7UUFBRUMsS0FBSyxHQUFBRixLQUFBLENBQUxFLEtBQUs7TUFDcEMsSUFBQUMsS0FBQSxHQUFBQyxnRkFBQSxDQUE2QkgsSUFBSTtRQUExQkksS0FBSyxHQUFBRixLQUFBO1FBQUVHLEdBQUcsR0FBQUgsS0FBQTtRQUFFSSxNQUFNLEdBQUFKLEtBQUE7TUFDekIsSUFBTUssTUFBTSxHQUFHLENBQUNILEtBQUssRUFBRUMsR0FBRyxFQUFFQyxNQUFNLENBQUM7TUFFbkNFLGlEQUFBLENBQUkzQixLQUFLLENBQUNOLEtBQUssRUFBRXlCLElBQUksRUFBRUMsS0FBSyxDQUFDOztNQUU3QjtNQUNBLElBQUlELElBQUksQ0FBQ1MsTUFBTSxHQUFHRixNQUFNLENBQUNFLE1BQU0sRUFBRTtRQUMvQkQsaURBQUEsQ0FBSTNCLEtBQUssQ0FBQ04sS0FBSyxFQUFFZ0MsTUFBTSxFQUFFekIsdURBQUEsQ0FBVTRCLGlEQUFBLENBQUk3QixLQUFLLENBQUNOLEtBQUssRUFBRWdDLE1BQU0sQ0FBQyxDQUFDLENBQUM7TUFDL0Q7SUFDRixDQUFDO0lBQ0RJLGVBQWUsV0FBQUEsZ0JBQUU5QixLQUFLLEVBQUU7TUFDdEJBLEtBQUssQ0FBQ04sS0FBSyxHQUFHTyx1REFBQSxDQUFVRCxLQUFLLENBQUNULE1BQU0sQ0FBQztJQUN2QztFQUNGLENBQUM7RUFDRHdDLE9BQU8sRUFBRTtJQUNQQyxrQkFBa0IsV0FBQUEsbUJBQUFDLEtBQUEsRUFBMEM7TUFBQSxJQUF0Q2pDLEtBQUssR0FBQWlDLEtBQUEsQ0FBTGpDLEtBQUs7UUFBRWtDLFNBQVMsR0FBQUQsS0FBQSxDQUFUQyxTQUFTO1FBQUVDLFFBQVEsR0FBQUYsS0FBQSxDQUFSRSxRQUFRO1FBQUVDLE1BQU0sR0FBQUgsS0FBQSxDQUFORyxNQUFNO01BQ3RERixTQUFTLENBQUNHLEdBQUcsQ0FBQ0MsaUJBQWlCLENBQUNDLHVCQUF1QixDQUFDLENBQUMsQ0FDdERDLElBQUksQ0FBQyxVQUFBcEQsU0FBUztRQUFBLE9BQUlnRCxNQUFNLENBQUMsdUJBQXVCLEVBQUU7VUFBRWhELFNBQVMsRUFBVEE7UUFBVSxDQUFDLENBQUM7TUFBQSxFQUFDO0lBQ3RFLENBQUM7SUFDRHFELGNBQWMsV0FBQUEsZUFBQUMsS0FBQSxFQUEwQztNQUFBLElBQXRDMUMsS0FBSyxHQUFBMEMsS0FBQSxDQUFMMUMsS0FBSztRQUFFa0MsU0FBUyxHQUFBUSxLQUFBLENBQVRSLFNBQVM7UUFBRUMsUUFBUSxHQUFBTyxLQUFBLENBQVJQLFFBQVE7UUFBRUMsTUFBTSxHQUFBTSxLQUFBLENBQU5OLE1BQU07TUFDbERGLFNBQVMsQ0FBQ0csR0FBRyxDQUFDQyxpQkFBaUIsQ0FBQ0sscUJBQXFCLENBQUMsQ0FBQyxDQUNwREgsSUFBSSxDQUFDLFVBQUFJLGVBQWUsRUFBSTtRQUN2QixJQUFJQSxlQUFlLENBQUNDLEtBQUssRUFBRTtVQUN6QixJQUFJRCxlQUFlLENBQUNDLEtBQUssQ0FBQ0MsTUFBTSxLQUFLLEdBQUcsRUFBRTtZQUN4Q0YsZUFBZSxDQUFDQyxLQUFLLENBQUNFLElBQUksQ0FBQyxDQUFDLENBQUNQLElBQUksQ0FBQyxVQUFBUSxTQUFTLEVBQUk7Y0FDN0MsSUFBSSw0QkFBNEIsQ0FBQ0MsSUFBSSxDQUFDRCxTQUFTLENBQUNILEtBQUssQ0FBQyxFQUFFO2dCQUN0RFQsTUFBTSxDQUFDLDRCQUE0QixDQUFDO2NBQ3RDO1lBQ0YsQ0FBQyxDQUFDO1VBQ0o7UUFDRixDQUFDLE1BQU07VUFDTEQsUUFBUSxDQUFDLDBCQUEwQixFQUFFO1lBQUVTLGVBQWUsRUFBZkE7VUFBZ0IsQ0FBQyxDQUFDO1FBQzNEO01BQ0YsQ0FBQyxDQUFDO01BQ0osSUFBSTVDLEtBQUssQ0FBQ1AsWUFBWSxLQUFLLElBQUksRUFBRTtRQUMvQnlDLFNBQVMsQ0FBQ0csR0FBRyxDQUFDQyxpQkFBaUIsQ0FBQ1ksK0JBQStCLENBQUMsQ0FBQyxDQUM5RFYsSUFBSSxDQUFDLFVBQUFXLG1CQUFtQjtVQUFBLE9BQUloQixRQUFRLENBQUMsOEJBQThCLEVBQUU7WUFBRWdCLG1CQUFtQixFQUFuQkE7VUFBb0IsQ0FBQyxDQUFDO1FBQUEsRUFBQztNQUNuRztJQUNGLENBQUM7SUFDREMsd0JBQXdCLFdBQUFBLHlCQUFBQyxLQUFBLEVBQUFDLEtBQUEsRUFBb0Q7TUFBQSxJQUFoRHRELEtBQUssR0FBQXFELEtBQUEsQ0FBTHJELEtBQUs7UUFBRW9DLE1BQU0sR0FBQWlCLEtBQUEsQ0FBTmpCLE1BQU07UUFBRUQsUUFBUSxHQUFBa0IsS0FBQSxDQUFSbEIsUUFBUTtNQUFBLElBQU1TLGVBQWUsR0FBQVUsS0FBQSxDQUFmVixlQUFlO01BQ3RFLElBQU1yRCxNQUFNLEdBQUdTLEtBQUssQ0FBQ1QsTUFBTSxJQUFJLENBQUMsQ0FBQztNQUNqQyxJQUFNQyxhQUFhLEdBQUcsSUFBSStELEdBQUcsQ0FBQyxDQUFDO01BQy9CWCxlQUFlLENBQUNZLE9BQU8sQ0FBQ0MsT0FBTyxDQUFDLFVBQUFDLENBQUMsRUFBSTtRQUNuQyxJQUFNdkMsSUFBSSxHQUFHLENBQUN1QyxDQUFDLENBQUNuQyxLQUFLLEVBQUVtQyxDQUFDLENBQUNsQyxHQUFHLENBQUM7UUFDN0IsSUFBSWtDLENBQUMsQ0FBQ0MsRUFBRSxFQUFFO1VBQ1I7VUFDQTtVQUNBRCxDQUFDLENBQUNDLEVBQUUsQ0FBQ0YsT0FBTyxDQUFDLFVBQUFHLENBQUM7WUFBQSxPQUFJcEUsYUFBYSxDQUFDcUUsR0FBRyxDQUFDLEdBQUFDLE1BQUEsQ0FBSTNDLElBQUksR0FBRXlDLENBQUMsR0FBRUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1VBQUEsRUFBQztRQUNqRTtRQUNBLElBQU1DLE9BQU8sR0FBRyxTQUFWQSxPQUFPQSxDQUFJNUMsS0FBSyxFQUFLO1VBQ3pCLElBQUk2QyxLQUFLLENBQUNDLE9BQU8sQ0FBQzlDLEtBQUssQ0FBQyxJQUFJQSxLQUFLLENBQUNRLE1BQU0sR0FBRyxDQUFDLElBQUlSLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQytDLEtBQUssRUFBRTtZQUM5RCxPQUFPL0MsS0FBSyxDQUFDZ0QsTUFBTSxDQUFDLFVBQUNDLEdBQUcsRUFBRVgsQ0FBQyxFQUFLO2NBQzlCLE9BQUE3RCxhQUFBLENBQUFBLGFBQUEsS0FBWXdFLEdBQUcsT0FBQUMsaUZBQUEsS0FBR1osQ0FBQyxDQUFDUyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUdILE9BQU8sQ0FBQ04sQ0FBQyxDQUFDUyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDcEQsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1VBQ1IsQ0FBQyxNQUFNO1lBQ0wsT0FBTy9DLEtBQUs7VUFDZDtRQUNGLENBQUM7UUFDRE8saURBQUEsQ0FBSXBDLE1BQU0sRUFBRTRCLElBQUksRUFBRTZDLE9BQU8sQ0FBQ04sQ0FBQyxDQUFDdEMsS0FBSyxDQUFDLENBQUM7TUFDckMsQ0FBQyxDQUFDO01BQ0ZtRCxPQUFPLENBQUNDLEdBQUcsQ0FBQ2pGLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztNQUMvQjZDLE1BQU0sQ0FBQyxxQkFBcUIsRUFBRTtRQUFFN0MsTUFBTSxFQUFOQSxNQUFNO1FBQUVDLGFBQWEsRUFBYkE7TUFBYyxDQUFDLENBQUM7TUFDeEQ0QyxNQUFNLENBQUMsaUJBQWlCLENBQUM7SUFDM0IsQ0FBQztJQUNEcUMsNEJBQTRCLFdBQUFBLDZCQUFBQyxLQUFBLEVBQUFDLE1BQUEsRUFBd0Q7TUFBQSxJQUFwRDNFLEtBQUssR0FBQTBFLEtBQUEsQ0FBTDFFLEtBQUs7UUFBRW9DLE1BQU0sR0FBQXNDLEtBQUEsQ0FBTnRDLE1BQU07UUFBRUQsUUFBUSxHQUFBdUMsS0FBQSxDQUFSdkMsUUFBUTtNQUFBLElBQU1nQixtQkFBbUIsR0FBQXdCLE1BQUEsQ0FBbkJ4QixtQkFBbUI7TUFDOUUsSUFBTWEsT0FBTyxHQUFHLFNBQVZBLE9BQU9BLENBQUFZLE1BQUEsRUFBMEV6RCxJQUFJLEVBQUVrRCxHQUFHLEVBQUs7UUFBQSxJQUFsRlEsUUFBUSxHQUFBRCxNQUFBLENBQVJDLFFBQVE7VUFBRUMsV0FBVyxHQUFBRixNQUFBLENBQVhFLFdBQVc7VUFBRUMsS0FBSyxHQUFBSCxNQUFBLENBQUxHLEtBQUs7VUFBQUMsVUFBQSxHQUFBSixNQUFBLENBQUVwRCxHQUFHO1VBQUhBLEdBQUcsR0FBQXdELFVBQUEsY0FBRyxRQUFRLEdBQUFBLFVBQUE7VUFBRXpELEtBQUssR0FBQXFELE1BQUEsQ0FBTHJELEtBQUs7VUFBRTBELFdBQVcsR0FBQUwsTUFBQSxDQUFYSyxXQUFXO1FBQ2pGLElBQU1DLE9BQU8sR0FBRzNELEtBQUssR0FBRyxDQUFDQSxLQUFLLEVBQUVDLEdBQUcsQ0FBQyxHQUFHLENBQUNBLEdBQUcsQ0FBQztRQUM1QyxJQUFNMkQsR0FBRyxHQUFHO1VBQUVMLFdBQVcsRUFBWEEsV0FBVztVQUFFQyxLQUFLLEVBQUxBLEtBQUs7VUFBRUUsV0FBVyxFQUFYQTtRQUFZLENBQUM7UUFDL0MsSUFBSWhCLEtBQUssQ0FBQ0MsT0FBTyxDQUFDVyxRQUFRLENBQUMsRUFBRTtVQUMzQkEsUUFBUSxDQUFDcEIsT0FBTyxDQUFDLFVBQUFDLENBQUMsRUFBSTtZQUNwQk0sT0FBTyxDQUFDTixDQUFDLEVBQUV3QixPQUFPLEVBQUVDLEdBQUcsQ0FBQztVQUMxQixDQUFDLENBQUM7UUFDSjtRQUNBeEQsaURBQUEsQ0FBSTBDLEdBQUcsRUFBRWEsT0FBTyxFQUFFQyxHQUFHLENBQUM7TUFDeEIsQ0FBQztNQUVELElBQU0xRixZQUFZLEdBQUcsQ0FBQyxDQUFDO01BQ3ZCMEQsbUJBQW1CLENBQUNNLE9BQU8sQ0FBQyxVQUFBMkIsQ0FBQztRQUFBLE9BQUlwQixPQUFPLENBQUNvQixDQUFDLEVBQUUsRUFBRSxFQUFFM0YsWUFBWSxDQUFDO01BQUEsRUFBQztNQUM5RDhFLE9BQU8sQ0FBQ0MsR0FBRyxDQUFDL0UsWUFBWSxDQUFDLFVBQVUsQ0FBQyxDQUFDLGlCQUFpQixDQUFDLENBQUM7TUFDeEQyQyxNQUFNLENBQUMseUJBQXlCLEVBQUU7UUFBRTNDLFlBQVksRUFBWkE7TUFBYSxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVEO0lBQ0E7SUFDQTRGLGNBQWMsV0FBQUEsZUFBQUMsTUFBQSxFQUEwQztNQUFBLElBQXRDcEQsU0FBUyxHQUFBb0QsTUFBQSxDQUFUcEQsU0FBUztRQUFFbEMsS0FBSyxHQUFBc0YsTUFBQSxDQUFMdEYsS0FBSztRQUFFb0MsTUFBTSxHQUFBa0QsTUFBQSxDQUFObEQsTUFBTTtRQUFFRCxRQUFRLEdBQUFtRCxNQUFBLENBQVJuRCxRQUFRO01BQ2xEO01BQ0EsSUFBTTZCLE9BQU8sR0FBRyxTQUFWQSxPQUFPQSxDQUFJNUMsS0FBSyxFQUFLO1FBQ3pCLElBQUltRSx5RUFBQSxDQUFPbkUsS0FBSyxNQUFLLFFBQVEsRUFBRTtVQUM3QixPQUFPQSxLQUFLO1FBQ2QsQ0FBQyxNQUFNLElBQUk2QyxLQUFLLENBQUNDLE9BQU8sQ0FBQzlDLEtBQUssQ0FBQyxFQUFFO1VBQy9CLE9BQU9BLEtBQUssQ0FBQ2QsR0FBRyxDQUFDMEQsT0FBTyxDQUFDO1FBQzNCLENBQUMsTUFBTTtVQUNMLE9BQU93QixNQUFNLENBQUNDLE9BQU8sQ0FBQ3JFLEtBQUssQ0FBQyxDQUFDZCxHQUFHLENBQUMsVUFBQW9GLE1BQUE7WUFBQSxJQUFBQyxNQUFBLEdBQUFyRSxnRkFBQSxDQUFBb0UsTUFBQTtjQUFFRSxDQUFDLEdBQUFELE1BQUE7Y0FBRUUsQ0FBQyxHQUFBRixNQUFBO1lBQUEsT0FBTztjQUFFeEIsS0FBSyxFQUFFLENBQUN5QixDQUFDLEVBQUVDLENBQUM7WUFBRSxDQUFDO1VBQUEsQ0FBQyxDQUFDO1FBQ25FO01BQ0YsQ0FBQzs7TUFFRDtNQUNBLElBQU1DLFlBQVksR0FBR0MscURBQUEsQ0FDbkJQLE1BQU0sQ0FDSEMsT0FBTyxDQUFDekYsS0FBSyxDQUFDVCxNQUFNLENBQUMsQ0FDckJlLEdBQUcsQ0FDRixVQUFBMEYsTUFBQTtRQUFBLElBQUFDLE1BQUEsR0FBQTNFLGdGQUFBLENBQUEwRSxNQUFBO1VBQUV6RSxLQUFLLEdBQUEwRSxNQUFBO1VBQUVDLE9BQU8sR0FBQUQsTUFBQTtRQUFBLE9BQU1ULE1BQU0sQ0FDekJXLElBQUksQ0FBQ0QsT0FBTyxDQUFDLENBQ2I1RixHQUFHLENBQUMsVUFBQ2tCLEdBQUc7VUFBQSxPQUFNO1lBQUVELEtBQUssRUFBTEEsS0FBSztZQUFFQyxHQUFHLEVBQUhBO1VBQUksQ0FBQztRQUFBLENBQUMsQ0FBQztNQUFBLENBQ25DLENBQ0osQ0FBQzs7TUFFRDtNQUNBLElBQU00RSxnQkFBZ0IsR0FBR04sWUFBWSxDQUFDTyxNQUFNLENBQUMsVUFBQUMsTUFBQSxFQUFvQjtRQUFBLElBQWpCL0UsS0FBSyxHQUFBK0UsTUFBQSxDQUFML0UsS0FBSztVQUFFQyxHQUFHLEdBQUE4RSxNQUFBLENBQUg5RSxHQUFHO1FBQ3hELE9BQU8sQ0FBQytFLHFEQUFBLENBQVF2RyxLQUFLLENBQUNULE1BQU0sQ0FBQ2dDLEtBQUssQ0FBQyxDQUFDQyxHQUFHLENBQUMsRUFBRXhCLEtBQUssQ0FBQ04sS0FBSyxDQUFDNkIsS0FBSyxDQUFDLENBQUNDLEdBQUcsQ0FBQyxDQUFDO01BQ3BFLENBQUMsQ0FBQzs7TUFFRjtNQUNBLElBQU1nRixPQUFPLEdBQUdKLGdCQUFnQixDQUFDOUYsR0FBRyxDQUFDLFVBQUFtRyxNQUFBLEVBQW9CO1FBQUEsSUFBakJsRixLQUFLLEdBQUFrRixNQUFBLENBQUxsRixLQUFLO1VBQUVDLEdBQUcsR0FBQWlGLE1BQUEsQ0FBSGpGLEdBQUc7UUFDaEQsSUFBTWpDLE1BQU0sR0FBR1MsS0FBSyxDQUFDVCxNQUFNLENBQUNnQyxLQUFLLENBQUMsQ0FBQ0MsR0FBRyxDQUFDO1FBQ3ZDLElBQU05QixLQUFLLEdBQUdNLEtBQUssQ0FBQ04sS0FBSyxDQUFDNkIsS0FBSyxDQUFDLENBQUNDLEdBQUcsQ0FBQzs7UUFFckM7UUFDQSxJQUFNa0YsT0FBTyxHQUFHbEIsTUFBTSxDQUFDQyxPQUFPLENBQUNsRyxNQUFNLENBQUM7UUFDdEMsSUFBTW9ILE1BQU0sR0FBR25CLE1BQU0sQ0FBQ0MsT0FBTyxDQUFDL0YsS0FBSyxDQUFDOztRQUVwQztRQUNBO1FBQ0EsT0FBUTtVQUFFNkIsS0FBSyxFQUFMQSxLQUFLO1VBQUVDLEdBQUcsRUFBSEEsR0FBRztVQUFFSixLQUFLLEVBQUU0QyxPQUFPLENBQUN3QixNQUFNLENBQUNvQixXQUFXLENBQUNDLDREQUFBLENBQWVGLE1BQU0sRUFBRUQsT0FBTyxFQUFBSCx1REFBUyxDQUFDLENBQUM7UUFBRSxDQUFDO01BQ3RHLENBQUMsQ0FBQztNQUVGckUsU0FBUyxDQUFDRyxHQUFHLENBQUNDLGlCQUFpQixDQUFDd0Usb0JBQW9CLENBQUM7UUFDbkRDLE9BQU8sRUFBRTtVQUNQdkQsT0FBTyxFQUFFZ0Q7UUFDWDtNQUNGLENBQUMsQ0FBQyxDQUNDaEUsSUFBSSxDQUFDO1FBQUEsT0FBTU4sU0FBUyxDQUFDRyxHQUFHLENBQUNDLGlCQUFpQixDQUFDSyxxQkFBcUIsQ0FBQyxDQUFDO01BQUEsRUFBQyxDQUNuRUgsSUFBSSxDQUFDLFVBQUFJLGVBQWU7UUFBQSxPQUFJVCxRQUFRLENBQUMsMEJBQTBCLEVBQUU7VUFBRVMsZUFBZSxFQUFmQTtRQUFnQixDQUFDLENBQUM7TUFBQSxFQUFDO0lBQ3ZGLENBQUM7SUFDRG9FLGdCQUFnQixXQUFBQSxpQkFBQUMsTUFBQSxFQUFBQyxNQUFBLEVBQTJEO01BQUEsSUFBdkRoRixTQUFTLEdBQUErRSxNQUFBLENBQVQvRSxTQUFTO1FBQUVsQyxLQUFLLEdBQUFpSCxNQUFBLENBQUxqSCxLQUFLO1FBQUVvQyxNQUFNLEdBQUE2RSxNQUFBLENBQU43RSxNQUFNO1FBQUVELFFBQVEsR0FBQThFLE1BQUEsQ0FBUjlFLFFBQVE7TUFBQSxJQUFNaEIsSUFBSSxHQUFBK0YsTUFBQSxDQUFKL0YsSUFBSTtRQUFFQyxLQUFLLEdBQUE4RixNQUFBLENBQUw5RixLQUFLO01BQ3JFLElBQUErRixNQUFBLEdBQThCbEQsS0FBSyxDQUFDQyxPQUFPLENBQUMvQyxJQUFJLENBQUMsR0FBR0EsSUFBSSxHQUFHQSxJQUFJLENBQUNpRyxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQUFDLE1BQUEsR0FBQUMsMEVBQUEsQ0FBQUgsTUFBQTtRQUFyRTVGLEtBQUssR0FBQThGLE1BQUE7UUFBRTdGLEdBQUcsR0FBQTZGLE1BQUE7UUFBS0UsSUFBSSxHQUFBRixNQUFBLENBQUFHLEtBQUE7TUFDMUIsSUFBTUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxFQUFDO01BQ2pCOUYsaURBQUEsQ0FBSThGLEtBQUssRUFBRUYsSUFBSSxFQUFFbkcsS0FBSyxDQUFDOztNQUV2QjtNQUNBLElBQU00QyxPQUFPLEdBQUcsU0FBVkEsT0FBT0EsQ0FBSTVDLEtBQUssRUFBSztRQUN6QixJQUFJbUUseUVBQUEsQ0FBT25FLEtBQUssTUFBSyxRQUFRLEVBQUU7VUFDN0IsT0FBT0EsS0FBSztRQUNkLENBQUMsTUFBTSxJQUFJNkMsS0FBSyxDQUFDQyxPQUFPLENBQUM5QyxLQUFLLENBQUMsRUFBRTtVQUMvQixPQUFPQSxLQUFLLENBQUNkLEdBQUcsQ0FBQzBELE9BQU8sQ0FBQztRQUMzQixDQUFDLE1BQU07VUFDTCxPQUFPd0IsTUFBTSxDQUFDQyxPQUFPLENBQUNyRSxLQUFLLENBQUMsQ0FBQ2QsR0FBRyxDQUFDLFVBQUFvSCxNQUFBO1lBQUEsSUFBQUMsTUFBQSxHQUFBckcsZ0ZBQUEsQ0FBQW9HLE1BQUE7Y0FBRTlCLENBQUMsR0FBQStCLE1BQUE7Y0FBRTlCLENBQUMsR0FBQThCLE1BQUE7WUFBQSxPQUFPO2NBQUV4RCxLQUFLLEVBQUUsQ0FBQ3lCLENBQUMsRUFBRUMsQ0FBQztZQUFFLENBQUM7VUFBQSxDQUFDLENBQUM7UUFDbkU7TUFDRixDQUFDO01BRUQzRCxTQUFTLENBQUNHLEdBQUcsQ0FBQ0MsaUJBQWlCLENBQUN3RSxvQkFBb0IsQ0FBQztRQUNuREMsT0FBTyxFQUFFO1VBQ1B2RCxPQUFPLEVBQUUsQ0FBQztZQUNSakMsS0FBSyxFQUFMQSxLQUFLO1lBQ0xDLEdBQUcsRUFBSEEsR0FBRztZQUNISixLQUFLLEVBQUU0QyxPQUFPLENBQUN5RCxLQUFLO1VBQ3RCLENBQUM7UUFDSDtNQUNGLENBQUMsQ0FBQyxDQUNDakYsSUFBSSxDQUFDO1FBQUEsT0FBTU4sU0FBUyxDQUFDRyxHQUFHLENBQUNDLGlCQUFpQixDQUFDSyxxQkFBcUIsQ0FBQyxDQUFDO01BQUEsRUFBQyxDQUNuRUgsSUFBSSxDQUFDLFVBQUFJLGVBQWU7UUFBQSxPQUFJVCxRQUFRLENBQUMsMEJBQTBCLEVBQUU7VUFBRVMsZUFBZSxFQUFmQTtRQUFnQixDQUFDLENBQUM7TUFBQSxFQUFDO0lBQ3ZGLENBQUM7SUFDRGdGLGlCQUFpQixXQUFBQSxrQkFBQUMsTUFBQSxFQUFBQyxNQUFBLEVBQW9EO01BQUEsSUFBaEQ1RixTQUFTLEdBQUEyRixNQUFBLENBQVQzRixTQUFTO1FBQUVsQyxLQUFLLEdBQUE2SCxNQUFBLENBQUw3SCxLQUFLO1FBQUVvQyxNQUFNLEdBQUF5RixNQUFBLENBQU56RixNQUFNO1FBQUVELFFBQVEsR0FBQTBGLE1BQUEsQ0FBUjFGLFFBQVE7TUFBQSxJQUFNaEIsSUFBSSxHQUFBMkcsTUFBQSxDQUFKM0csSUFBSTtNQUMvRCxJQUFBNEcsV0FBQSxHQUE2QjVHLElBQUksQ0FBQ2lHLEtBQUssQ0FBQyxLQUFLLENBQUM7UUFBQVksWUFBQSxHQUFBMUcsZ0ZBQUEsQ0FBQXlHLFdBQUE7UUFBdkN4RyxLQUFLLEdBQUF5RyxZQUFBO1FBQUV4RyxHQUFHLEdBQUF3RyxZQUFBO1FBQUV2RyxNQUFNLEdBQUF1RyxZQUFBO01BRXpCaEksS0FBSyxDQUFDUixhQUFhLFVBQU8sQ0FBQzJCLElBQUksQ0FBQztNQUVoQyxPQUFPZSxTQUFTLENBQUNHLEdBQUcsQ0FBQ0MsaUJBQWlCLENBQUN3RSxvQkFBb0IsQ0FBQztRQUMxREMsT0FBTyxFQUFFO1VBQ1B2RCxPQUFPLEVBQUUsQ0FBQztZQUNSakMsS0FBSyxFQUFMQSxLQUFLO1lBQ0xDLEdBQUcsRUFBSEEsR0FBRztZQUNILFVBQVEsSUFBSTtZQUNaeUcsT0FBTyxFQUFFLENBQUN4RyxNQUFNO1VBQ2xCLENBQUM7UUFDSDtNQUNGLENBQUMsQ0FBQyxDQUNDZSxJQUFJLENBQUM7UUFBQSxPQUFNTixTQUFTLENBQUNHLEdBQUcsQ0FBQ0MsaUJBQWlCLENBQUNLLHFCQUFxQixDQUFDLENBQUM7TUFBQSxFQUFDLENBQ25FSCxJQUFJLENBQUMsVUFBQUksZUFBZTtRQUFBLE9BQUlULFFBQVEsQ0FBQywwQkFBMEIsRUFBRTtVQUFFUyxlQUFlLEVBQWZBO1FBQWdCLENBQUMsQ0FBQztNQUFBLEVBQUM7SUFDdkY7RUFDRjtBQUNGLENBQUM7QUFFRCxpRUFBZTdDLG9CQUFvQiIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvbW9kdWxlcy9hZG1pblNldHRpbmdzLmpzP2Y2NjkiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgc2V0LCBnZXQsIGNsb25lRGVlcCwgZGlmZmVyZW5jZVdpdGgsIGlzRXF1YWwsIGZsYXR0ZW4gfSBmcm9tICdsb2Rhc2gnXG5cbmV4cG9ydCBjb25zdCBkZWZhdWx0U3RhdGUgPSB7XG4gIGZyb250ZW5kczogW10sXG4gIGxvYWRlZDogZmFsc2UsXG4gIG5lZWRzUmVib290OiBudWxsLFxuICBjb25maWc6IG51bGwsXG4gIG1vZGlmaWVkUGF0aHM6IG51bGwsXG4gIGRlc2NyaXB0aW9uczogbnVsbCxcbiAgZHJhZnQ6IG51bGwsXG4gIGRiQ29uZmlnRW5hYmxlZDogbnVsbFxufVxuXG5leHBvcnQgY29uc3QgbmV3VXNlckZsYWdzID0ge1xuICAuLi5kZWZhdWx0U3RhdGUuZmxhZ1N0b3JhZ2Vcbn1cblxuY29uc3QgYWRtaW5TZXR0aW5nc1N0b3JhZ2UgPSB7XG4gIHN0YXRlOiB7XG4gICAgLi4uY2xvbmVEZWVwKGRlZmF1bHRTdGF0ZSlcbiAgfSxcbiAgbXV0YXRpb25zOiB7XG4gICAgc2V0SW5zdGFuY2VBZG1pbk5vRGJDb25maWcgKHN0YXRlKSB7XG4gICAgICBzdGF0ZS5sb2FkZWQgPSBmYWxzZVxuICAgICAgc3RhdGUuZGJDb25maWdFbmFibGVkID0gZmFsc2VcbiAgICB9LFxuICAgIHNldEF2YWlsYWJsZUZyb250ZW5kcyAoc3RhdGUsIHsgZnJvbnRlbmRzIH0pIHtcbiAgICAgIHN0YXRlLmZyb250ZW5kcyA9IGZyb250ZW5kcy5tYXAoZiA9PiB7XG4gICAgICAgIGYuaW5zdGFsbGVkUmVmcyA9IGYuaW5zdGFsbGVkX3JlZnNcbiAgICAgICAgaWYgKGYubmFtZSA9PT0gJ3BsZXJvbWEtZmUnKSB7XG4gICAgICAgICAgZi5yZWZzID0gWydtYXN0ZXInLCAnZGV2ZWxvcCddXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgZi5yZWZzID0gW2YucmVmXVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmXG4gICAgICB9KVxuICAgIH0sXG4gICAgdXBkYXRlQWRtaW5TZXR0aW5ncyAoc3RhdGUsIHsgY29uZmlnLCBtb2RpZmllZFBhdGhzIH0pIHtcbiAgICAgIHN0YXRlLmxvYWRlZCA9IHRydWVcbiAgICAgIHN0YXRlLmRiQ29uZmlnRW5hYmxlZCA9IHRydWVcbiAgICAgIHN0YXRlLmNvbmZpZyA9IGNvbmZpZ1xuICAgICAgc3RhdGUubW9kaWZpZWRQYXRocyA9IG1vZGlmaWVkUGF0aHNcbiAgICB9LFxuICAgIHVwZGF0ZUFkbWluRGVzY3JpcHRpb25zIChzdGF0ZSwgeyBkZXNjcmlwdGlvbnMgfSkge1xuICAgICAgc3RhdGUuZGVzY3JpcHRpb25zID0gZGVzY3JpcHRpb25zXG4gICAgfSxcbiAgICB1cGRhdGVBZG1pbkRyYWZ0IChzdGF0ZSwgeyBwYXRoLCB2YWx1ZSB9KSB7XG4gICAgICBjb25zdCBbZ3JvdXAsIGtleSwgc3Via2V5XSA9IHBhdGhcbiAgICAgIGNvbnN0IHBhcmVudCA9IFtncm91cCwga2V5LCBzdWJrZXldXG5cbiAgICAgIHNldChzdGF0ZS5kcmFmdCwgcGF0aCwgdmFsdWUpXG5cbiAgICAgIC8vIGZvcmNlLXVwZGF0aW5nIGdyb3VwZWQgZHJhZnQgdG8gdHJpZ2dlciByZWZyZXNoIG9mIGdyb3VwIHNldHRpbmdzXG4gICAgICBpZiAocGF0aC5sZW5ndGggPiBwYXJlbnQubGVuZ3RoKSB7XG4gICAgICAgIHNldChzdGF0ZS5kcmFmdCwgcGFyZW50LCBjbG9uZURlZXAoZ2V0KHN0YXRlLmRyYWZ0LCBwYXJlbnQpKSlcbiAgICAgIH1cbiAgICB9LFxuICAgIHJlc2V0QWRtaW5EcmFmdCAoc3RhdGUpIHtcbiAgICAgIHN0YXRlLmRyYWZ0ID0gY2xvbmVEZWVwKHN0YXRlLmNvbmZpZylcbiAgICB9XG4gIH0sXG4gIGFjdGlvbnM6IHtcbiAgICBsb2FkRnJvbnRlbmRzU3R1ZmYgKHsgc3RhdGUsIHJvb3RTdGF0ZSwgZGlzcGF0Y2gsIGNvbW1pdCB9KSB7XG4gICAgICByb290U3RhdGUuYXBpLmJhY2tlbmRJbnRlcmFjdG9yLmZldGNoQXZhaWxhYmxlRnJvbnRlbmRzKClcbiAgICAgICAgLnRoZW4oZnJvbnRlbmRzID0+IGNvbW1pdCgnc2V0QXZhaWxhYmxlRnJvbnRlbmRzJywgeyBmcm9udGVuZHMgfSkpXG4gICAgfSxcbiAgICBsb2FkQWRtaW5TdHVmZiAoeyBzdGF0ZSwgcm9vdFN0YXRlLCBkaXNwYXRjaCwgY29tbWl0IH0pIHtcbiAgICAgIHJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IuZmV0Y2hJbnN0YW5jZURCQ29uZmlnKClcbiAgICAgICAgLnRoZW4oYmFja2VuZERiQ29uZmlnID0+IHtcbiAgICAgICAgICBpZiAoYmFja2VuZERiQ29uZmlnLmVycm9yKSB7XG4gICAgICAgICAgICBpZiAoYmFja2VuZERiQ29uZmlnLmVycm9yLnN0YXR1cyA9PT0gNDAwKSB7XG4gICAgICAgICAgICAgIGJhY2tlbmREYkNvbmZpZy5lcnJvci5qc29uKCkudGhlbihlcnJvckpzb24gPT4ge1xuICAgICAgICAgICAgICAgIGlmICgvY29uZmlndXJhYmxlX2Zyb21fZGF0YWJhc2UvLnRlc3QoZXJyb3JKc29uLmVycm9yKSkge1xuICAgICAgICAgICAgICAgICAgY29tbWl0KCdzZXRJbnN0YW5jZUFkbWluTm9EYkNvbmZpZycpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBkaXNwYXRjaCgnc2V0SW5zdGFuY2VBZG1pblNldHRpbmdzJywgeyBiYWNrZW5kRGJDb25maWcgfSlcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICBpZiAoc3RhdGUuZGVzY3JpcHRpb25zID09PSBudWxsKSB7XG4gICAgICAgIHJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IuZmV0Y2hJbnN0YW5jZUNvbmZpZ0Rlc2NyaXB0aW9ucygpXG4gICAgICAgICAgLnRoZW4oYmFja2VuZERlc2NyaXB0aW9ucyA9PiBkaXNwYXRjaCgnc2V0SW5zdGFuY2VBZG1pbkRlc2NyaXB0aW9ucycsIHsgYmFja2VuZERlc2NyaXB0aW9ucyB9KSlcbiAgICAgIH1cbiAgICB9LFxuICAgIHNldEluc3RhbmNlQWRtaW5TZXR0aW5ncyAoeyBzdGF0ZSwgY29tbWl0LCBkaXNwYXRjaCB9LCB7IGJhY2tlbmREYkNvbmZpZyB9KSB7XG4gICAgICBjb25zdCBjb25maWcgPSBzdGF0ZS5jb25maWcgfHwge31cbiAgICAgIGNvbnN0IG1vZGlmaWVkUGF0aHMgPSBuZXcgU2V0KClcbiAgICAgIGJhY2tlbmREYkNvbmZpZy5jb25maWdzLmZvckVhY2goYyA9PiB7XG4gICAgICAgIGNvbnN0IHBhdGggPSBbYy5ncm91cCwgYy5rZXldXG4gICAgICAgIGlmIChjLmRiKSB7XG4gICAgICAgICAgLy8gUGF0aCBlbGVtZW50cyBjYW4gY29udGFpbiBkb3QsIHRoZXJlZm9yZSB3ZSB1c2UgJyAtPiAnIGFzIGEgc2VwYXJhdG9yIGluc3RlYWRcbiAgICAgICAgICAvLyBVc2luZyBzdHJpbmdzIGZvciBtb2RpZmllZCBwYXRocyBmb3IgZWFzaWVyIHNlYXJjaGluZ1xuICAgICAgICAgIGMuZGIuZm9yRWFjaCh4ID0+IG1vZGlmaWVkUGF0aHMuYWRkKFsuLi5wYXRoLCB4XS5qb2luKCcgLT4gJykpKVxuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGNvbnZlcnQgPSAodmFsdWUpID0+IHtcbiAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkgJiYgdmFsdWUubGVuZ3RoID4gMCAmJiB2YWx1ZVswXS50dXBsZSkge1xuICAgICAgICAgICAgcmV0dXJuIHZhbHVlLnJlZHVjZSgoYWNjLCBjKSA9PiB7XG4gICAgICAgICAgICAgIHJldHVybiB7IC4uLmFjYywgW2MudHVwbGVbMF1dOiBjb252ZXJ0KGMudHVwbGVbMV0pIH1cbiAgICAgICAgICAgIH0sIHt9KVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gdmFsdWVcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgc2V0KGNvbmZpZywgcGF0aCwgY29udmVydChjLnZhbHVlKSlcbiAgICAgIH0pXG4gICAgICBjb25zb2xlLmxvZyhjb25maWdbJzpwbGVyb21hJ10pXG4gICAgICBjb21taXQoJ3VwZGF0ZUFkbWluU2V0dGluZ3MnLCB7IGNvbmZpZywgbW9kaWZpZWRQYXRocyB9KVxuICAgICAgY29tbWl0KCdyZXNldEFkbWluRHJhZnQnKVxuICAgIH0sXG4gICAgc2V0SW5zdGFuY2VBZG1pbkRlc2NyaXB0aW9ucyAoeyBzdGF0ZSwgY29tbWl0LCBkaXNwYXRjaCB9LCB7IGJhY2tlbmREZXNjcmlwdGlvbnMgfSkge1xuICAgICAgY29uc3QgY29udmVydCA9ICh7IGNoaWxkcmVuLCBkZXNjcmlwdGlvbiwgbGFiZWwsIGtleSA9ICc8Uk9PVD4nLCBncm91cCwgc3VnZ2VzdGlvbnMgfSwgcGF0aCwgYWNjKSA9PiB7XG4gICAgICAgIGNvbnN0IG5ld1BhdGggPSBncm91cCA/IFtncm91cCwga2V5XSA6IFtrZXldXG4gICAgICAgIGNvbnN0IG9iaiA9IHsgZGVzY3JpcHRpb24sIGxhYmVsLCBzdWdnZXN0aW9ucyB9XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KGNoaWxkcmVuKSkge1xuICAgICAgICAgIGNoaWxkcmVuLmZvckVhY2goYyA9PiB7XG4gICAgICAgICAgICBjb252ZXJ0KGMsIG5ld1BhdGgsIG9iailcbiAgICAgICAgICB9KVxuICAgICAgICB9XG4gICAgICAgIHNldChhY2MsIG5ld1BhdGgsIG9iailcbiAgICAgIH1cblxuICAgICAgY29uc3QgZGVzY3JpcHRpb25zID0ge31cbiAgICAgIGJhY2tlbmREZXNjcmlwdGlvbnMuZm9yRWFjaChkID0+IGNvbnZlcnQoZCwgJycsIGRlc2NyaXB0aW9ucykpXG4gICAgICBjb25zb2xlLmxvZyhkZXNjcmlwdGlvbnNbJzpwbGVyb21hJ11bJ1BsZXJvbWEuQ2FwdGNoYSddKVxuICAgICAgY29tbWl0KCd1cGRhdGVBZG1pbkRlc2NyaXB0aW9ucycsIHsgZGVzY3JpcHRpb25zIH0pXG4gICAgfSxcblxuICAgIC8vIFRoaXMgYWN0aW9uIHRha2VzIGRyYWZ0IHN0YXRlLCBkaWZmcyBpdCB3aXRoIGxpdmUgY29uZmlnIHN0YXRlIGFuZCB0aGVuIHB1c2hlc1xuICAgIC8vIG9ubHkgZGlmZmVyZW5jZXMgYmV0d2VlbiB0aGUgdHdvLiBEaWZmZXJlbmNlIGRldGVjdGlvbiBvbmx5IHdvcmsgdXAgdG8gc3Via2V5ICh0aGlyZCkgbGV2ZWwuXG4gICAgcHVzaEFkbWluRHJhZnQgKHsgcm9vdFN0YXRlLCBzdGF0ZSwgY29tbWl0LCBkaXNwYXRjaCB9KSB7XG4gICAgICAvLyBUT0RPIGNsZWFudXAgcGF0aHMgaW4gbW9kaWZpZWRQYXRoc1xuICAgICAgY29uc3QgY29udmVydCA9ICh2YWx1ZSkgPT4ge1xuICAgICAgICBpZiAodHlwZW9mIHZhbHVlICE9PSAnb2JqZWN0Jykge1xuICAgICAgICAgIHJldHVybiB2YWx1ZVxuICAgICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgICAgICAgcmV0dXJuIHZhbHVlLm1hcChjb252ZXJ0KVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiBPYmplY3QuZW50cmllcyh2YWx1ZSkubWFwKChbaywgdl0pID0+ICh7IHR1cGxlOiBbaywgdl0gfSkpXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gR2V0dGluZyBhbGwgZ3JvdXAta2V5cyB1c2VkIGluIGNvbmZpZ1xuICAgICAgY29uc3QgYWxsR3JvdXBLZXlzID0gZmxhdHRlbihcbiAgICAgICAgT2JqZWN0XG4gICAgICAgICAgLmVudHJpZXMoc3RhdGUuY29uZmlnKVxuICAgICAgICAgIC5tYXAoXG4gICAgICAgICAgICAoW2dyb3VwLCBsdjFkYXRhXSkgPT4gT2JqZWN0XG4gICAgICAgICAgICAgIC5rZXlzKGx2MWRhdGEpXG4gICAgICAgICAgICAgIC5tYXAoKGtleSkgPT4gKHsgZ3JvdXAsIGtleSB9KSlcbiAgICAgICAgICApXG4gICAgICApXG5cbiAgICAgIC8vIE9ubHkgdXNpbmcgZ3JvdXAta2V5cyB3aGVyZSB0aGVyZSBhcmUgY2hhbmdlcyBkZXRlY3RlZFxuICAgICAgY29uc3QgY2hhbmdlZEdyb3VwS2V5cyA9IGFsbEdyb3VwS2V5cy5maWx0ZXIoKHsgZ3JvdXAsIGtleSB9KSA9PiB7XG4gICAgICAgIHJldHVybiAhaXNFcXVhbChzdGF0ZS5jb25maWdbZ3JvdXBdW2tleV0sIHN0YXRlLmRyYWZ0W2dyb3VwXVtrZXldKVxuICAgICAgfSlcblxuICAgICAgLy8gSGVyZSB3ZSB0YWtlIGFsbCBjaGFuZ2VkIGdyb3VwLWtleXMgYW5kIGdldCBhbGwgY2hhbmdlZCBzdWJrZXlzXG4gICAgICBjb25zdCBjaGFuZ2VkID0gY2hhbmdlZEdyb3VwS2V5cy5tYXAoKHsgZ3JvdXAsIGtleSB9KSA9PiB7XG4gICAgICAgIGNvbnN0IGNvbmZpZyA9IHN0YXRlLmNvbmZpZ1tncm91cF1ba2V5XVxuICAgICAgICBjb25zdCBkcmFmdCA9IHN0YXRlLmRyYWZ0W2dyb3VwXVtrZXldXG5cbiAgICAgICAgLy8gV2UgY29udmVydCBncm91cC1rZXkgdmFsdWUgaW50byBlbnRyaWVzIGFycmF5c1xuICAgICAgICBjb25zdCBlQ29uZmlnID0gT2JqZWN0LmVudHJpZXMoY29uZmlnKVxuICAgICAgICBjb25zdCBlRHJhZnQgPSBPYmplY3QuZW50cmllcyhkcmFmdClcblxuICAgICAgICAvLyBUaGVuIHRob3NlIGVudHJpZXMgYXJyYXkgd2UgZGlmZiBzbyBvbmx5IGNoYW5nZWQgc3Via2V5IGVudHJpZXMgcmVtYWluXG4gICAgICAgIC8vIFdlIHVzZSB0aGUgZGlmZmVkIGFycmF5IHRvIHJlY29uc3RydWN0IHRoZSBvYmplY3QgYW5kIHRoZW4gc2hvdmUgaXQgaW50byBjb252ZXJ0KClcbiAgICAgICAgcmV0dXJuICh7IGdyb3VwLCBrZXksIHZhbHVlOiBjb252ZXJ0KE9iamVjdC5mcm9tRW50cmllcyhkaWZmZXJlbmNlV2l0aChlRHJhZnQsIGVDb25maWcsIGlzRXF1YWwpKSkgfSlcbiAgICAgIH0pXG5cbiAgICAgIHJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IucHVzaEluc3RhbmNlREJDb25maWcoe1xuICAgICAgICBwYXlsb2FkOiB7XG4gICAgICAgICAgY29uZmlnczogY2hhbmdlZFxuICAgICAgICB9XG4gICAgICB9KVxuICAgICAgICAudGhlbigoKSA9PiByb290U3RhdGUuYXBpLmJhY2tlbmRJbnRlcmFjdG9yLmZldGNoSW5zdGFuY2VEQkNvbmZpZygpKVxuICAgICAgICAudGhlbihiYWNrZW5kRGJDb25maWcgPT4gZGlzcGF0Y2goJ3NldEluc3RhbmNlQWRtaW5TZXR0aW5ncycsIHsgYmFja2VuZERiQ29uZmlnIH0pKVxuICAgIH0sXG4gICAgcHVzaEFkbWluU2V0dGluZyAoeyByb290U3RhdGUsIHN0YXRlLCBjb21taXQsIGRpc3BhdGNoIH0sIHsgcGF0aCwgdmFsdWUgfSkge1xuICAgICAgY29uc3QgW2dyb3VwLCBrZXksIC4uLnJlc3RdID0gQXJyYXkuaXNBcnJheShwYXRoKSA/IHBhdGggOiBwYXRoLnNwbGl0KC9cXC4vZylcbiAgICAgIGNvbnN0IGNsb25lID0ge30gLy8gbm90IGFjdHVhbGx5IGNsb25pbmcgdGhlIGVudGlyZSB0aGluZyB0byBhdm9pZCBleGNlc3NpdmUgd3JpdGVzXG4gICAgICBzZXQoY2xvbmUsIHJlc3QsIHZhbHVlKVxuXG4gICAgICAvLyBUT0RPIGNsZWFudXAgcGF0aHMgaW4gbW9kaWZpZWRQYXRoc1xuICAgICAgY29uc3QgY29udmVydCA9ICh2YWx1ZSkgPT4ge1xuICAgICAgICBpZiAodHlwZW9mIHZhbHVlICE9PSAnb2JqZWN0Jykge1xuICAgICAgICAgIHJldHVybiB2YWx1ZVxuICAgICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgICAgICAgcmV0dXJuIHZhbHVlLm1hcChjb252ZXJ0KVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiBPYmplY3QuZW50cmllcyh2YWx1ZSkubWFwKChbaywgdl0pID0+ICh7IHR1cGxlOiBbaywgdl0gfSkpXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcm9vdFN0YXRlLmFwaS5iYWNrZW5kSW50ZXJhY3Rvci5wdXNoSW5zdGFuY2VEQkNvbmZpZyh7XG4gICAgICAgIHBheWxvYWQ6IHtcbiAgICAgICAgICBjb25maWdzOiBbe1xuICAgICAgICAgICAgZ3JvdXAsXG4gICAgICAgICAgICBrZXksXG4gICAgICAgICAgICB2YWx1ZTogY29udmVydChjbG9uZSlcbiAgICAgICAgICB9XVxuICAgICAgICB9XG4gICAgICB9KVxuICAgICAgICAudGhlbigoKSA9PiByb290U3RhdGUuYXBpLmJhY2tlbmRJbnRlcmFjdG9yLmZldGNoSW5zdGFuY2VEQkNvbmZpZygpKVxuICAgICAgICAudGhlbihiYWNrZW5kRGJDb25maWcgPT4gZGlzcGF0Y2goJ3NldEluc3RhbmNlQWRtaW5TZXR0aW5ncycsIHsgYmFja2VuZERiQ29uZmlnIH0pKVxuICAgIH0sXG4gICAgcmVzZXRBZG1pblNldHRpbmcgKHsgcm9vdFN0YXRlLCBzdGF0ZSwgY29tbWl0LCBkaXNwYXRjaCB9LCB7IHBhdGggfSkge1xuICAgICAgY29uc3QgW2dyb3VwLCBrZXksIHN1YmtleV0gPSBwYXRoLnNwbGl0KC9cXC4vZylcblxuICAgICAgc3RhdGUubW9kaWZpZWRQYXRocy5kZWxldGUocGF0aClcblxuICAgICAgcmV0dXJuIHJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IucHVzaEluc3RhbmNlREJDb25maWcoe1xuICAgICAgICBwYXlsb2FkOiB7XG4gICAgICAgICAgY29uZmlnczogW3tcbiAgICAgICAgICAgIGdyb3VwLFxuICAgICAgICAgICAga2V5LFxuICAgICAgICAgICAgZGVsZXRlOiB0cnVlLFxuICAgICAgICAgICAgc3Via2V5czogW3N1YmtleV1cbiAgICAgICAgICB9XVxuICAgICAgICB9XG4gICAgICB9KVxuICAgICAgICAudGhlbigoKSA9PiByb290U3RhdGUuYXBpLmJhY2tlbmRJbnRlcmFjdG9yLmZldGNoSW5zdGFuY2VEQkNvbmZpZygpKVxuICAgICAgICAudGhlbihiYWNrZW5kRGJDb25maWcgPT4gZGlzcGF0Y2goJ3NldEluc3RhbmNlQWRtaW5TZXR0aW5ncycsIHsgYmFja2VuZERiQ29uZmlnIH0pKVxuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBhZG1pblNldHRpbmdzU3RvcmFnZVxuIl0sIm5hbWVzIjpbImRlZmF1bHRTdGF0ZSIsImZyb250ZW5kcyIsImxvYWRlZCIsIm5lZWRzUmVib290IiwiY29uZmlnIiwibW9kaWZpZWRQYXRocyIsImRlc2NyaXB0aW9ucyIsImRyYWZ0IiwiZGJDb25maWdFbmFibGVkIiwibmV3VXNlckZsYWdzIiwiX29iamVjdFNwcmVhZCIsImZsYWdTdG9yYWdlIiwiYWRtaW5TZXR0aW5nc1N0b3JhZ2UiLCJzdGF0ZSIsIl9jbG9uZURlZXAiLCJtdXRhdGlvbnMiLCJzZXRJbnN0YW5jZUFkbWluTm9EYkNvbmZpZyIsInNldEF2YWlsYWJsZUZyb250ZW5kcyIsIl9yZWYiLCJtYXAiLCJmIiwiaW5zdGFsbGVkUmVmcyIsImluc3RhbGxlZF9yZWZzIiwibmFtZSIsInJlZnMiLCJyZWYiLCJ1cGRhdGVBZG1pblNldHRpbmdzIiwiX3JlZjIiLCJ1cGRhdGVBZG1pbkRlc2NyaXB0aW9ucyIsIl9yZWYzIiwidXBkYXRlQWRtaW5EcmFmdCIsIl9yZWY0IiwicGF0aCIsInZhbHVlIiwiX3BhdGgiLCJfc2xpY2VkVG9BcnJheSIsImdyb3VwIiwia2V5Iiwic3Via2V5IiwicGFyZW50IiwiX3NldCIsImxlbmd0aCIsIl9nZXQiLCJyZXNldEFkbWluRHJhZnQiLCJhY3Rpb25zIiwibG9hZEZyb250ZW5kc1N0dWZmIiwiX3JlZjUiLCJyb290U3RhdGUiLCJkaXNwYXRjaCIsImNvbW1pdCIsImFwaSIsImJhY2tlbmRJbnRlcmFjdG9yIiwiZmV0Y2hBdmFpbGFibGVGcm9udGVuZHMiLCJ0aGVuIiwibG9hZEFkbWluU3R1ZmYiLCJfcmVmNiIsImZldGNoSW5zdGFuY2VEQkNvbmZpZyIsImJhY2tlbmREYkNvbmZpZyIsImVycm9yIiwic3RhdHVzIiwianNvbiIsImVycm9ySnNvbiIsInRlc3QiLCJmZXRjaEluc3RhbmNlQ29uZmlnRGVzY3JpcHRpb25zIiwiYmFja2VuZERlc2NyaXB0aW9ucyIsInNldEluc3RhbmNlQWRtaW5TZXR0aW5ncyIsIl9yZWY3IiwiX3JlZjgiLCJTZXQiLCJjb25maWdzIiwiZm9yRWFjaCIsImMiLCJkYiIsIngiLCJhZGQiLCJjb25jYXQiLCJqb2luIiwiY29udmVydCIsIkFycmF5IiwiaXNBcnJheSIsInR1cGxlIiwicmVkdWNlIiwiYWNjIiwiX2RlZmluZVByb3BlcnR5IiwiY29uc29sZSIsImxvZyIsInNldEluc3RhbmNlQWRtaW5EZXNjcmlwdGlvbnMiLCJfcmVmOSIsIl9yZWYxMCIsIl9yZWYxMSIsImNoaWxkcmVuIiwiZGVzY3JpcHRpb24iLCJsYWJlbCIsIl9yZWYxMSRrZXkiLCJzdWdnZXN0aW9ucyIsIm5ld1BhdGgiLCJvYmoiLCJkIiwicHVzaEFkbWluRHJhZnQiLCJfcmVmMTIiLCJfdHlwZW9mIiwiT2JqZWN0IiwiZW50cmllcyIsIl9yZWYxMyIsIl9yZWYxNCIsImsiLCJ2IiwiYWxsR3JvdXBLZXlzIiwiX2ZsYXR0ZW4iLCJfcmVmMTUiLCJfcmVmMTYiLCJsdjFkYXRhIiwia2V5cyIsImNoYW5nZWRHcm91cEtleXMiLCJmaWx0ZXIiLCJfcmVmMTciLCJfaXNFcXVhbCIsImNoYW5nZWQiLCJfcmVmMTgiLCJlQ29uZmlnIiwiZURyYWZ0IiwiZnJvbUVudHJpZXMiLCJfZGlmZmVyZW5jZVdpdGgiLCJwdXNoSW5zdGFuY2VEQkNvbmZpZyIsInBheWxvYWQiLCJwdXNoQWRtaW5TZXR0aW5nIiwiX3JlZjE5IiwiX3JlZjIwIiwiX3JlZjIxIiwic3BsaXQiLCJfcmVmMjIiLCJfdG9BcnJheSIsInJlc3QiLCJzbGljZSIsImNsb25lIiwiX3JlZjIzIiwiX3JlZjI0IiwicmVzZXRBZG1pblNldHRpbmciLCJfcmVmMjUiLCJfcmVmMjYiLCJfcGF0aCRzcGxpdCIsIl9wYXRoJHNwbGl0MiIsInN1YmtleXMiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/modules/adminSettings.js\n");
/***/ }),
/***/ "./src/modules/announcements.js":
/*!**************************************!*\
!*** ./src/modules/announcements.js ***!
\**************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__),\n/* harmony export */ \"defaultState\": () => (/* binding */ defaultState),\n/* harmony export */ \"getters\": () => (/* binding */ getters),\n/* harmony export */ \"mutations\": () => (/* binding */ mutations)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ \"./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js\");\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/regenerator */ \"./node_modules/@babel/runtime/regenerator/index.js\");\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1__);\n\n\nvar FETCH_ANNOUNCEMENT_INTERVAL_MS = 1000 * 60 * 5;\nvar defaultState = {\n announcements: [],\n supportsAnnouncements: true,\n fetchAnnouncementsTimer: undefined\n};\nvar mutations = {\n setAnnouncements: function setAnnouncements(state, announcements) {\n state.announcements = announcements;\n },\n setAnnouncementRead: function setAnnouncementRead(state, _ref) {\n var id = _ref.id,\n read = _ref.read;\n var index = state.announcements.findIndex(function (a) {\n return a.id === id;\n });\n if (index < 0) {\n return;\n }\n state.announcements[index].read = read;\n },\n setFetchAnnouncementsTimer: function setFetchAnnouncementsTimer(state, timer) {\n state.fetchAnnouncementsTimer = timer;\n },\n setSupportsAnnouncements: function setSupportsAnnouncements(state, supportsAnnouncements) {\n state.supportsAnnouncements = supportsAnnouncements;\n }\n};\nvar getters = {\n unreadAnnouncementCount: function unreadAnnouncementCount(state, _getters, rootState) {\n if (!rootState.users.currentUser) {\n return 0;\n }\n var unread = state.announcements.filter(function (announcement) {\n return !(announcement.inactive || announcement.read);\n });\n return unread.length;\n }\n};\nvar announcements = {\n state: defaultState,\n mutations: mutations,\n getters: getters,\n actions: {\n fetchAnnouncements: function fetchAnnouncements(store) {\n if (!store.state.supportsAnnouncements) {\n return Promise.resolve();\n }\n var currentUser = store.rootState.users.currentUser;\n var isAdmin = currentUser && currentUser.privileges.includes('announcements_manage_announcements');\n var getAnnouncements = /*#__PURE__*/function () {\n var _ref2 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__[\"default\"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default().mark(function _callee() {\n var all, visible, visibleObject, getWithinVisible;\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n if (isAdmin) {\n _context.next = 2;\n break;\n }\n return _context.abrupt(\"return\", store.rootState.api.backendInteractor.fetchAnnouncements());\n case 2:\n _context.next = 4;\n return store.rootState.api.backendInteractor.adminFetchAnnouncements();\n case 4:\n all = _context.sent;\n _context.next = 7;\n return store.rootState.api.backendInteractor.fetchAnnouncements();\n case 7:\n visible = _context.sent;\n visibleObject = visible.reduce(function (a, c) {\n a[c.id] = c;\n return a;\n }, {});\n getWithinVisible = function getWithinVisible(announcement) {\n return visibleObject[announcement.id];\n };\n all.forEach(function (announcement) {\n var visibleAnnouncement = getWithinVisible(announcement);\n if (!visibleAnnouncement) {\n announcement.inactive = true;\n } else {\n announcement.read = visibleAnnouncement.read;\n }\n });\n return _context.abrupt(\"return\", all);\n case 12:\n case \"end\":\n return _context.stop();\n }\n }, _callee);\n }));\n return function getAnnouncements() {\n return _ref2.apply(this, arguments);\n };\n }();\n return getAnnouncements().then(function (announcements) {\n store.commit('setAnnouncements', announcements);\n })[\"catch\"](function (error) {\n // If and only if backend does not support announcements, it would return 404.\n // In this case, silently ignores it.\n if (error && error.statusCode === 404) {\n store.commit('setSupportsAnnouncements', false);\n } else {\n throw error;\n }\n });\n },\n markAnnouncementAsRead: function markAnnouncementAsRead(store, id) {\n return store.rootState.api.backendInteractor.dismissAnnouncement({\n id: id\n }).then(function () {\n store.commit('setAnnouncementRead', {\n id: id,\n read: true\n });\n });\n },\n startFetchingAnnouncements: function startFetchingAnnouncements(store) {\n if (store.state.fetchAnnouncementsTimer) {\n return;\n }\n var interval = setInterval(function () {\n return store.dispatch('fetchAnnouncements');\n }, FETCH_ANNOUNCEMENT_INTERVAL_MS);\n store.commit('setFetchAnnouncementsTimer', interval);\n return store.dispatch('fetchAnnouncements');\n },\n stopFetchingAnnouncements: function stopFetchingAnnouncements(store) {\n var interval = store.state.fetchAnnouncementsTimer;\n store.commit('setFetchAnnouncementsTimer', undefined);\n clearInterval(interval);\n },\n postAnnouncement: function postAnnouncement(store, _ref3) {\n var content = _ref3.content,\n startsAt = _ref3.startsAt,\n endsAt = _ref3.endsAt,\n allDay = _ref3.allDay;\n return store.rootState.api.backendInteractor.postAnnouncement({\n content: content,\n startsAt: startsAt,\n endsAt: endsAt,\n allDay: allDay\n }).then(function () {\n return store.dispatch('fetchAnnouncements');\n });\n },\n editAnnouncement: function editAnnouncement(store, _ref4) {\n var id = _ref4.id,\n content = _ref4.content,\n startsAt = _ref4.startsAt,\n endsAt = _ref4.endsAt,\n allDay = _ref4.allDay;\n return store.rootState.api.backendInteractor.editAnnouncement({\n id: id,\n content: content,\n startsAt: startsAt,\n endsAt: endsAt,\n allDay: allDay\n }).then(function () {\n return store.dispatch('fetchAnnouncements');\n });\n },\n deleteAnnouncement: function deleteAnnouncement(store, id) {\n return store.rootState.api.backendInteractor.deleteAnnouncement({\n id: id\n }).then(function () {\n return store.dispatch('fetchAnnouncements');\n });\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (announcements);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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ZW1lbnRzLmpzPzBiOGYiXSwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgRkVUQ0hfQU5OT1VOQ0VNRU5UX0lOVEVSVkFMX01TID0gMTAwMCAqIDYwICogNVxuXG5leHBvcnQgY29uc3QgZGVmYXVsdFN0YXRlID0ge1xuICBhbm5vdW5jZW1lbnRzOiBbXSxcbiAgc3VwcG9ydHNBbm5vdW5jZW1lbnRzOiB0cnVlLFxuICBmZXRjaEFubm91bmNlbWVudHNUaW1lcjogdW5kZWZpbmVkXG59XG5cbmV4cG9ydCBjb25zdCBtdXRhdGlvbnMgPSB7XG4gIHNldEFubm91bmNlbWVudHMgKHN0YXRlLCBhbm5vdW5jZW1lbnRzKSB7XG4gICAgc3RhdGUuYW5ub3VuY2VtZW50cyA9IGFubm91bmNlbWVudHNcbiAgfSxcbiAgc2V0QW5ub3VuY2VtZW50UmVhZCAoc3RhdGUsIHsgaWQsIHJlYWQgfSkge1xuICAgIGNvbnN0IGluZGV4ID0gc3RhdGUuYW5ub3VuY2VtZW50cy5maW5kSW5kZXgoYSA9PiBhLmlkID09PSBpZClcblxuICAgIGlmIChpbmRleCA8IDApIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIHN0YXRlLmFubm91bmNlbWVudHNbaW5kZXhdLnJlYWQgPSByZWFkXG4gIH0sXG4gIHNldEZldGNoQW5ub3VuY2VtZW50c1RpbWVyIChzdGF0ZSwgdGltZXIpIHtcbiAgICBzdGF0ZS5mZXRjaEFubm91bmNlbWVudHNUaW1lciA9IHRpbWVyXG4gIH0sXG4gIHNldFN1cHBvcnRzQW5ub3VuY2VtZW50cyAoc3RhdGUsIHN1cHBvcnRzQW5ub3VuY2VtZW50cykge1xuICAgIHN0YXRlLnN1cHBvcnRzQW5ub3VuY2VtZW50cyA9IHN1cHBvcnRzQW5ub3VuY2VtZW50c1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCBnZXR0ZXJzID0ge1xuICB1bnJlYWRBbm5vdW5jZW1lbnRDb3VudCAoc3RhdGUsIF9nZXR0ZXJzLCByb290U3RhdGUpIHtcbiAgICBpZiAoIXJvb3RTdGF0ZS51c2Vycy5jdXJyZW50VXNlcikge1xuICAgICAgcmV0dXJuIDBcbiAgICB9XG5cbiAgICBjb25zdCB1bnJlYWQgPSBzdGF0ZS5hbm5vdW5jZW1lbnRzLmZpbHRlcihhbm5vdW5jZW1lbnQgPT4gIShhbm5vdW5jZW1lbnQuaW5hY3RpdmUgfHwgYW5ub3VuY2VtZW50LnJlYWQpKVxuICAgIHJldHVybiB1bnJlYWQubGVuZ3RoXG4gIH1cbn1cblxuY29uc3QgYW5ub3VuY2VtZW50cyA9IHtcbiAgc3RhdGU6IGRlZmF1bHRTdGF0ZSxcbiAgbXV0YXRpb25zLFxuICBnZXR0ZXJzLFxuICBhY3Rpb25zOiB7XG4gICAgZmV0Y2hBbm5vdW5jZW1lbnRzIChzdG9yZSkge1xuICAgICAgaWYgKCFzdG9yZS5zdGF0ZS5zdXBwb3J0c0Fubm91bmNlbWVudHMpIHtcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGN1cnJlbnRVc2VyID0gc3RvcmUucm9vdFN0YXRlLnVzZXJzLmN1cnJlbnRVc2VyXG4gICAgICBjb25zdCBpc0FkbWluID0gY3VycmVudFVzZXIgJiYgY3VycmVudFVzZXIucHJpdmlsZWdlcy5pbmNsdWRlcygnYW5ub3VuY2VtZW50c19tYW5hZ2VfYW5ub3VuY2VtZW50cycpXG5cbiAgICAgIGNvbnN0IGdldEFubm91bmNlbWVudHMgPSBhc3luYyAoKSA9PiB7XG4gICAgICAgIGlmICghaXNBZG1pbikge1xuICAgICAgICAgIHJldHVybiBzdG9yZS5yb290U3RhdGUuYXBpLmJhY2tlbmRJbnRlcmFjdG9yLmZldGNoQW5ub3VuY2VtZW50cygpXG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBhbGwgPSBhd2FpdCBzdG9yZS5yb290U3RhdGUuYXBpLmJhY2tlbmRJbnRlcmFjdG9yLmFkbWluRmV0Y2hBbm5vdW5jZW1lbnRzKClcbiAgICAgICAgY29uc3QgdmlzaWJsZSA9IGF3YWl0IHN0b3JlLnJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IuZmV0Y2hBbm5vdW5jZW1lbnRzKClcbiAgICAgICAgY29uc3QgdmlzaWJsZU9iamVjdCA9IHZpc2libGUucmVkdWNlKChhLCBjKSA9PiB7XG4gICAgICAgICAgYVtjLmlkXSA9IGNcbiAgICAgICAgICByZXR1cm4gYVxuICAgICAgICB9LCB7fSlcbiAgICAgICAgY29uc3QgZ2V0V2l0aGluVmlzaWJsZSA9IGFubm91bmNlbWVudCA9PiB2aXNpYmxlT2JqZWN0W2Fubm91bmNlbWVudC5pZF1cblxuICAgICAgICBhbGwuZm9yRWFjaChhbm5vdW5jZW1lbnQgPT4ge1xuICAgICAgICAgIGNvbnN0IHZpc2libGVBbm5vdW5jZW1lbnQgPSBnZXRXaXRoaW5WaXNpYmxlKGFubm91bmNlbWVudClcbiAgICAgICAgICBpZiAoIXZpc2libGVBbm5vdW5jZW1lbnQpIHtcbiAgICAgICAgICAgIGFubm91bmNlbWVudC5pbmFjdGl2ZSA9IHRydWVcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgYW5ub3VuY2VtZW50LnJlYWQgPSB2aXNpYmxlQW5ub3VuY2VtZW50LnJlYWRcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG5cbiAgICAgICAgcmV0dXJuIGFsbFxuICAgICAgfVxuXG4gICAgICByZXR1cm4gZ2V0QW5ub3VuY2VtZW50cygpXG4gICAgICAgIC50aGVuKGFubm91bmNlbWVudHMgPT4ge1xuICAgICAgICAgIHN0b3JlLmNvbW1pdCgnc2V0QW5ub3VuY2VtZW50cycsIGFubm91bmNlbWVudHMpXG4gICAgICAgIH0pXG4gICAgICAgIC5jYXRjaChlcnJvciA9PiB7XG4gICAgICAgICAgLy8gSWYgYW5kIG9ubHkgaWYgYmFja2VuZCBkb2VzIG5vdCBzdXBwb3J0IGFubm91bmNlbWVudHMsIGl0IHdvdWxkIHJldHVybiA0MDQuXG4gICAgICAgICAgLy8gSW4gdGhpcyBjYXNlLCBzaWxlbnRseSBpZ25vcmVzIGl0LlxuICAgICAgICAgIGlmIChlcnJvciAmJiBlcnJvci5zdGF0dXNDb2RlID09PSA0MDQpIHtcbiAgICAgICAgICAgIHN0b3JlLmNvbW1pdCgnc2V0U3VwcG9ydHNBbm5vdW5jZW1lbnRzJywgZmFsc2UpXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRocm93IGVycm9yXG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgIH0sXG4gICAgbWFya0Fubm91bmNlbWVudEFzUmVhZCAoc3RvcmUsIGlkKSB7XG4gICAgICByZXR1cm4gc3RvcmUucm9vdFN0YXRlLmFwaS5iYWNrZW5kSW50ZXJhY3Rvci5kaXNtaXNzQW5ub3VuY2VtZW50KHsgaWQgfSlcbiAgICAgICAgLnRoZW4oKCkgPT4ge1xuICAgICAgICAgIHN0b3JlLmNvbW1pdCgnc2V0QW5ub3VuY2VtZW50UmVhZCcsIHsgaWQsIHJlYWQ6IHRydWUgfSlcbiAgICAgICAgfSlcbiAgICB9LFxuICAgIHN0YXJ0RmV0Y2hpbmdBbm5vdW5jZW1lbnRzIChzdG9yZSkge1xuICAgICAgaWYgKHN0b3JlLnN0YXRlLmZldGNoQW5ub3VuY2VtZW50c1RpbWVyKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICBjb25zdCBpbnRlcnZhbCA9IHNldEludGVydmFsKCgpID0+IHN0b3JlLmRpc3BhdGNoKCdmZXRjaEFubm91bmNlbWVudHMnKSwgRkVUQ0hfQU5OT1VOQ0VNRU5UX0lOVEVSVkFMX01TKVxuICAgICAgc3RvcmUuY29tbWl0KCdzZXRGZXRjaEFubm91bmNlbWVudHNUaW1lcicsIGludGVydmFsKVxuXG4gICAgICByZXR1cm4gc3RvcmUuZGlzcGF0Y2goJ2ZldGNoQW5ub3VuY2VtZW50cycpXG4gICAgfSxcbiAgICBzdG9wRmV0Y2hpbmdBbm5vdW5jZW1lbnRzIChzdG9yZSkge1xuICAgICAgY29uc3QgaW50ZXJ2YWwgPSBzdG9yZS5zdGF0ZS5mZXRjaEFubm91bmNlbWVudHNUaW1lclxuICAgICAgc3RvcmUuY29tbWl0KCdzZXRGZXRjaEFubm91bmNlbWVudHNUaW1lcicsIHVuZGVmaW5lZClcbiAgICAgIGNsZWFySW50ZXJ2YWwoaW50ZXJ2YWwpXG4gICAgfSxcbiAgICBwb3N0QW5ub3VuY2VtZW50IChzdG9yZSwgeyBjb250ZW50LCBzdGFydHNBdCwgZW5kc0F0LCBhbGxEYXkgfSkge1xuICAgICAgcmV0dXJuIHN0b3JlLnJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IucG9zdEFubm91bmNlbWVudCh7IGNvbnRlbnQsIHN0YXJ0c0F0LCBlbmRzQXQsIGFsbERheSB9KVxuICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHN0b3JlLmRpc3BhdGNoKCdmZXRjaEFubm91bmNlbWVudHMnKVxuICAgICAgICB9KVxuICAgIH0sXG4gICAgZWRpdEFubm91bmNlbWVudCAoc3RvcmUsIHsgaWQsIGNvbnRlbnQsIHN0YXJ0c0F0LCBlbmRzQXQsIGFsbERheSB9KSB7XG4gICAgICByZXR1cm4gc3RvcmUucm9vdFN0YXRlLmFwaS5iYWNrZW5kSW50ZXJhY3Rvci5lZGl0QW5ub3VuY2VtZW50KHsgaWQsIGNvbnRlbnQsIHN0YXJ0c0F0LCBlbmRzQXQsIGFsbERheSB9KVxuICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHN0b3JlLmRpc3BhdGNoKCdmZXRjaEFubm91bmNlbWVudHMnKVxuICAgICAgICB9KVxuICAgIH0sXG4gICAgZGVsZXRlQW5ub3VuY2VtZW50IChzdG9yZSwgaWQpIHtcbiAgICAgIHJldHVybiBzdG9yZS5yb290U3RhdGUuYXBpLmJhY2tlbmRJbnRlcmFjdG9yLmRlbGV0ZUFubm91bmNlbWVudCh7IGlkIH0pXG4gICAgICAgIC50aGVuKCgpID0+IHtcbiAgICAgICAgICByZXR1cm4gc3RvcmUuZGlzcGF0Y2goJ2ZldGNoQW5ub3VuY2VtZW50cycpXG4gICAgICAgIH0pXG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IGFubm91bmNlbWVudHNcbiJdLCJuYW1lcyI6WyJGRVRDSF9BTk5PVU5DRU1FTlRfSU5URVJWQUxfTVMiLCJkZWZhdWx0U3RhdGUiLCJhbm5vdW5jZW1lbnRzIiwic3VwcG9ydHNBbm5vdW5jZW1lbnRzIiwiZmV0Y2hBbm5vdW5jZW1lbnRzVGltZXIiLCJ1bmRlZmluZWQiLCJtdXRhdGlvbnMiLCJzZXRBbm5vdW5jZW1lbnRzIiwic3RhdGUiLCJzZXRBbm5vdW5jZW1lbnRSZWFkIiwiX3JlZiIsImlkIiwicmVhZCIsImluZGV4IiwiZmluZEluZGV4IiwiYSIsInNldEZldGNoQW5ub3VuY2VtZW50c1RpbWVyIiwidGltZXIiLCJzZXRTdXBwb3J0c0Fubm91bmNlbWVudHMiLCJnZXR0ZXJzIiwidW5yZWFkQW5ub3VuY2VtZW50Q291bnQiLCJfZ2V0dGVycyIsInJvb3RTdGF0ZSIsInVzZXJzIiwiY3VycmVudFVzZXIiLCJ1bnJlYWQiLCJmaWx0ZXIiLCJhbm5vdW5jZW1lbnQiLCJpbmFjdGl2ZSIsImxlbmd0aCIsImFjdGlvbnMiLCJmZXRjaEFubm91bmNlbWVudHMiLCJzdG9yZSIsIlByb21pc2UiLCJyZXNvbHZlIiwiaXNBZG1pbiIsInByaXZpbGVnZXMiLCJpbmNsdWRlcyIsImdldEFubm91bmNlbWVudHMiLCJfcmVmMiIsIl9hc3luY1RvR2VuZXJhdG9yIiwiX3JlZ2VuZXJhdG9yUnVudGltZSIsIm1hcmsiLCJfY2FsbGVlIiwiYWxsIiwidmlzaWJsZSIsInZpc2libGVPYmplY3QiLCJnZXRXaXRoaW5WaXNpYmxlIiwid3JhcCIsIl9jYWxsZWUkIiwiX2NvbnRleHQiLCJwcmV2IiwibmV4dCIsImFicnVwdCIsImFwaSIsImJhY2tlbmRJbnRlcmFjdG9yIiwiYWRtaW5GZXRjaEFubm91bmNlbWVudHMiLCJzZW50IiwicmVkdWNlIiwiYyIsImZvckVhY2giLCJ2aXNpYmxlQW5ub3VuY2VtZW50Iiwic3RvcCIsImFwcGx5IiwiYXJndW1lbnRzIiwidGhlbiIsImNvbW1pdCIsImVycm9yIiwic3RhdHVzQ29kZSIsIm1hcmtBbm5vdW5jZW1lbnRBc1JlYWQiLCJkaXNtaXNzQW5ub3VuY2VtZW50Iiwic3RhcnRGZXRjaGluZ0Fubm91bmNlbWVudHMiLCJpbnRlcnZhbCIsInNldEludGVydmFsIiwiZGlzcGF0Y2giLCJzdG9wRmV0Y2hpbmdBbm5vdW5jZW1lbnRzIiwiY2xlYXJJbnRlcnZhbCIsInBvc3RBbm5vdW5jZW1lbnQiLCJfcmVmMyIsImNvbnRlbnQiLCJzdGFydHNBdCIsImVuZHNBdCIsImFsbERheSIsImVkaXRBbm5vdW5jZW1lbnQiLCJfcmVmNCIsImRlbGV0ZUFubm91bmNlbWVudCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/modules/announcements.js\n");
/***/ }),
/***/ "./src/modules/api.js":
/*!****************************!*\
!*** ./src/modules/api.js ***!
\****************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_objectDestructuringEmpty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/objectDestructuringEmpty */ \"./node_modules/@babel/runtime/helpers/esm/objectDestructuringEmpty.js\");\n/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/esm/extends.js\");\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"./node_modules/@babel/runtime/helpers/esm/defineProperty.js\");\n/* harmony import */ var _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ \"./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js\");\n/* harmony import */ var _services_backend_interactor_service_backend_interactor_service_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../services/backend_interactor_service/backend_interactor_service.js */ \"./src/services/backend_interactor_service/backend_interactor_service.js\");\n/* harmony import */ var _services_api_api_service_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../services/api/api.service.js */ \"./src/services/api/api.service.js\");\n/* harmony import */ var _services_chat_utils_chat_utils_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../services/chat_utils/chat_utils.js */ \"./src/services/chat_utils/chat_utils.js\");\n/* harmony import */ var phoenix__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! phoenix */ \"./node_modules/phoenix/priv/static/phoenix.mjs\");\n\n\n\n\nvar _excluded = [\"timeline\"];\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\n\n\nvar retryTimeout = function retryTimeout(multiplier) {\n return 1000 * multiplier;\n};\nvar api = {\n state: {\n retryMultiplier: 1,\n backendInteractor: (0,_services_backend_interactor_service_backend_interactor_service_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"])(),\n fetchers: {},\n socket: null,\n mastoUserSocket: null,\n mastoUserSocketStatus: null,\n followRequests: []\n },\n getters: {\n followRequestCount: function followRequestCount(state) {\n return state.followRequests.length;\n }\n },\n mutations: {\n setBackendInteractor: function setBackendInteractor(state, backendInteractor) {\n state.backendInteractor = backendInteractor;\n },\n addFetcher: function addFetcher(state, _ref) {\n var fetcherName = _ref.fetcherName,\n fetcher = _ref.fetcher;\n state.fetchers[fetcherName] = fetcher;\n },\n removeFetcher: function removeFetcher(state, _ref2) {\n var fetcherName = _ref2.fetcherName,\n fetcher = _ref2.fetcher;\n state.fetchers[fetcherName].stop();\n delete state.fetchers[fetcherName];\n },\n setWsToken: function setWsToken(state, token) {\n state.wsToken = token;\n },\n setSocket: function setSocket(state, socket) {\n state.socket = socket;\n },\n setFollowRequests: function setFollowRequests(state, value) {\n state.followRequests = value;\n },\n setMastoUserSocketStatus: function setMastoUserSocketStatus(state, value) {\n state.mastoUserSocketStatus = value;\n },\n incrementRetryMultiplier: function incrementRetryMultiplier(state) {\n state.retryMultiplier = Math.max(++state.retryMultiplier, 3);\n },\n resetRetryMultiplier: function resetRetryMultiplier(state) {\n state.retryMultiplier = 1;\n }\n },\n actions: {\n /**\n * Global MastoAPI socket control, in future should disable ALL sockets/(re)start relevant sockets\n *\n * @param {Boolean} [initial] - whether this enabling happened at boot time or not\n */\n enableMastoSockets: function enableMastoSockets(store, initial) {\n var state = store.state,\n dispatch = store.dispatch,\n commit = store.commit;\n // Do not initialize unless nonexistent or closed\n if (state.mastoUserSocket && ![WebSocket.CLOSED, WebSocket.CLOSING].includes(state.mastoUserSocket.getState())) {\n return;\n }\n if (initial) {\n commit('setMastoUserSocketStatus', _services_api_api_service_js__WEBPACK_IMPORTED_MODULE_5__.WSConnectionStatus.STARTING_INITIAL);\n } else {\n commit('setMastoUserSocketStatus', _services_api_api_service_js__WEBPACK_IMPORTED_MODULE_5__.WSConnectionStatus.STARTING);\n }\n return dispatch('startMastoUserSocket');\n },\n disableMastoSockets: function disableMastoSockets(store) {\n var state = store.state,\n dispatch = store.dispatch,\n commit = store.commit;\n if (!state.mastoUserSocket) return;\n commit('setMastoUserSocketStatus', _services_api_api_service_js__WEBPACK_IMPORTED_MODULE_5__.WSConnectionStatus.DISABLED);\n return dispatch('stopMastoUserSocket');\n },\n // MastoAPI 'User' sockets\n startMastoUserSocket: function startMastoUserSocket(store) {\n return new Promise(function (resolve, reject) {\n try {\n var state = store.state,\n commit = store.commit,\n dispatch = store.dispatch,\n rootState = store.rootState;\n var timelineData = rootState.statuses.timelines.friends;\n state.mastoUserSocket = state.backendInteractor.startUserSocket({\n store: store\n });\n state.mastoUserSocket.addEventListener('message', function (_ref3) {\n var message = _ref3.detail;\n if (!message) return; // pings\n if (message.event === 'notification') {\n dispatch('addNewNotifications', {\n notifications: [message.notification],\n older: false\n });\n } else if (message.event === 'update') {\n dispatch('addNewStatuses', {\n statuses: [message.status],\n userId: false,\n showImmediately: timelineData.visibleStatuses.length === 0,\n timeline: 'friends'\n });\n } else if (message.event === 'status.update') {\n dispatch('addNewStatuses', {\n statuses: [message.status],\n userId: false,\n showImmediately: message.status.id in timelineData.visibleStatusesObject,\n timeline: 'friends'\n });\n } else if (message.event === 'delete') {\n dispatch('deleteStatusById', message.id);\n } else if (message.event === 'pleroma:chat_update') {\n // The setTimeout wrapper is a temporary band-aid to avoid duplicates for the user's own messages when doing optimistic sending.\n // The cause of the duplicates is the WS event arriving earlier than the HTTP response.\n // This setTimeout wrapper can be removed once the commit `8e41baff` is in the stable Pleroma release.\n // (`8e41baff` adds the idempotency key to the chat message entity, which PleromaFE uses when it's available, and it makes this artificial delay unnecessary).\n setTimeout(function () {\n dispatch('addChatMessages', {\n chatId: message.chatUpdate.id,\n messages: [message.chatUpdate.lastMessage]\n });\n dispatch('updateChat', {\n chat: message.chatUpdate\n });\n (0,_services_chat_utils_chat_utils_js__WEBPACK_IMPORTED_MODULE_6__.maybeShowChatNotification)(store, message.chatUpdate);\n }, 100);\n }\n });\n state.mastoUserSocket.addEventListener('open', function () {\n // Do not show notification when we just opened up the page\n if (state.mastoUserSocketStatus !== _services_api_api_service_js__WEBPACK_IMPORTED_MODULE_5__.WSConnectionStatus.STARTING_INITIAL) {\n dispatch('pushGlobalNotice', {\n level: 'success',\n messageKey: 'timeline.socket_reconnected',\n timeout: 5000\n });\n }\n // Stop polling if we were errored or disabled\n if (new Set([_services_api_api_service_js__WEBPACK_IMPORTED_MODULE_5__.WSConnectionStatus.ERROR, _services_api_api_service_js__WEBPACK_IMPORTED_MODULE_5__.WSConnectionStatus.DISABLED]).has(state.mastoUserSocketStatus)) {\n dispatch('stopFetchingTimeline', {\n timeline: 'friends'\n });\n dispatch('stopFetchingNotifications');\n dispatch('stopFetchingChats');\n }\n commit('resetRetryMultiplier');\n commit('setMastoUserSocketStatus', _services_api_api_service_js__WEBPACK_IMPORTED_MODULE_5__.WSConnectionStatus.JOINED);\n });\n state.mastoUserSocket.addEventListener('error', function (_ref4) {\n var error = _ref4.detail;\n console.error('Error in MastoAPI websocket:', error);\n // TODO is this needed?\n dispatch('clearOpenedChats');\n });\n state.mastoUserSocket.addEventListener('close', function (_ref5) {\n var closeEvent = _ref5.detail;\n var ignoreCodes = new Set([1000,\n // Normal (intended) closure\n 1001 // Going away\n ]);\n\n var code = closeEvent.code;\n if (ignoreCodes.has(code)) {\n console.debug(\"Not restarting socket becasue of closure code \".concat(code, \" is in ignore list\"));\n commit('setMastoUserSocketStatus', _services_api_api_service_js__WEBPACK_IMPORTED_MODULE_5__.WSConnectionStatus.CLOSED);\n } else {\n console.warn(\"MastoAPI websocket disconnected, restarting. CloseEvent code: \".concat(code));\n setTimeout(function () {\n dispatch('startMastoUserSocket');\n }, retryTimeout(state.retryMultiplier));\n commit('incrementRetryMultiplier');\n if (state.mastoUserSocketStatus !== _services_api_api_service_js__WEBPACK_IMPORTED_MODULE_5__.WSConnectionStatus.ERROR) {\n dispatch('startFetchingTimeline', {\n timeline: 'friends'\n });\n dispatch('startFetchingNotifications');\n dispatch('startFetchingChats');\n dispatch('pushGlobalNotice', {\n level: 'error',\n messageKey: 'timeline.socket_broke',\n messageArgs: [code],\n timeout: 5000\n });\n }\n commit('setMastoUserSocketStatus', _services_api_api_service_js__WEBPACK_IMPORTED_MODULE_5__.WSConnectionStatus.ERROR);\n }\n dispatch('clearOpenedChats');\n });\n resolve();\n } catch (e) {\n reject(e);\n }\n });\n },\n stopMastoUserSocket: function stopMastoUserSocket(_ref6) {\n var state = _ref6.state,\n dispatch = _ref6.dispatch;\n dispatch('startFetchingTimeline', {\n timeline: 'friends'\n });\n dispatch('startFetchingNotifications');\n dispatch('startFetchingChats');\n state.mastoUserSocket.close();\n },\n // Timelines\n startFetchingTimeline: function startFetchingTimeline(store, _ref7) {\n var _ref7$timeline = _ref7.timeline,\n timeline = _ref7$timeline === void 0 ? 'friends' : _ref7$timeline,\n _ref7$tag = _ref7.tag,\n tag = _ref7$tag === void 0 ? false : _ref7$tag,\n _ref7$userId = _ref7.userId,\n userId = _ref7$userId === void 0 ? false : _ref7$userId,\n _ref7$listId = _ref7.listId,\n listId = _ref7$listId === void 0 ? false : _ref7$listId;\n if (store.state.fetchers[timeline]) return;\n var fetcher = store.state.backendInteractor.startFetchingTimeline({\n timeline: timeline,\n store: store,\n userId: userId,\n listId: listId,\n tag: tag\n });\n store.commit('addFetcher', {\n fetcherName: timeline,\n fetcher: fetcher\n });\n },\n stopFetchingTimeline: function stopFetchingTimeline(store, timeline) {\n var fetcher = store.state.fetchers[timeline];\n if (!fetcher) return;\n store.commit('removeFetcher', {\n fetcherName: timeline,\n fetcher: fetcher\n });\n },\n fetchTimeline: function fetchTimeline(store, _ref8) {\n var timeline = _ref8.timeline,\n rest = (0,_babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(_ref8, _excluded);\n store.state.backendInteractor.fetchTimeline(_objectSpread({\n store: store,\n timeline: timeline\n }, rest));\n },\n // Notifications\n startFetchingNotifications: function startFetchingNotifications(store) {\n if (store.state.fetchers.notifications) return;\n var fetcher = store.state.backendInteractor.startFetchingNotifications({\n store: store\n });\n store.commit('addFetcher', {\n fetcherName: 'notifications',\n fetcher: fetcher\n });\n },\n stopFetchingNotifications: function stopFetchingNotifications(store) {\n var fetcher = store.state.fetchers.notifications;\n if (!fetcher) return;\n store.commit('removeFetcher', {\n fetcherName: 'notifications',\n fetcher: fetcher\n });\n },\n fetchNotifications: function fetchNotifications(store, _ref9) {\n var rest = (0,_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_1__[\"default\"])({}, ((0,_babel_runtime_helpers_objectDestructuringEmpty__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(_ref9), _ref9));\n store.state.backendInteractor.fetchNotifications(_objectSpread({\n store: store\n }, rest));\n },\n // Follow requests\n startFetchingFollowRequests: function startFetchingFollowRequests(store) {\n if (store.state.fetchers.followRequests) return;\n var fetcher = store.state.backendInteractor.startFetchingFollowRequests({\n store: store\n });\n store.commit('addFetcher', {\n fetcherName: 'followRequests',\n fetcher: fetcher\n });\n },\n stopFetchingFollowRequests: function stopFetchingFollowRequests(store) {\n var fetcher = store.state.fetchers.followRequests;\n if (!fetcher) return;\n store.commit('removeFetcher', {\n fetcherName: 'followRequests',\n fetcher: fetcher\n });\n },\n removeFollowRequest: function removeFollowRequest(store, request) {\n var requests = store.state.followRequests.filter(function (it) {\n return it !== request;\n });\n store.commit('setFollowRequests', requests);\n },\n // Lists\n startFetchingLists: function startFetchingLists(store) {\n if (store.state.fetchers.lists) return;\n var fetcher = store.state.backendInteractor.startFetchingLists({\n store: store\n });\n store.commit('addFetcher', {\n fetcherName: 'lists',\n fetcher: fetcher\n });\n },\n stopFetchingLists: function stopFetchingLists(store) {\n var fetcher = store.state.fetchers.lists;\n if (!fetcher) return;\n store.commit('removeFetcher', {\n fetcherName: 'lists',\n fetcher: fetcher\n });\n },\n // Pleroma websocket\n setWsToken: function setWsToken(store, token) {\n store.commit('setWsToken', token);\n },\n initializeSocket: function initializeSocket(_ref10) {\n var dispatch = _ref10.dispatch,\n commit = _ref10.commit,\n state = _ref10.state,\n rootState = _ref10.rootState;\n // Set up websocket connection\n var token = state.wsToken;\n if (rootState.instance.shoutAvailable && typeof token !== 'undefined' && state.socket === null) {\n var socket = new phoenix__WEBPACK_IMPORTED_MODULE_7__.Socket('/socket', {\n params: {\n token: token\n }\n });\n socket.connect();\n commit('setSocket', socket);\n dispatch('initializeShout', socket);\n }\n },\n disconnectFromSocket: function disconnectFromSocket(_ref11) {\n var commit = _ref11.commit,\n state = _ref11.state;\n state.socket && state.socket.disconnect();\n commit('setSocket', null);\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (api);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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aEcsUUFBUSxHQUFBZ0csTUFBQSxDQUFSaEcsUUFBUTtRQUFFQyxNQUFNLEdBQUErRixNQUFBLENBQU4vRixNQUFNO1FBQUVwQyxLQUFLLEdBQUFtSSxNQUFBLENBQUxuSSxLQUFLO1FBQUVrRCxTQUFTLEdBQUFpRixNQUFBLENBQVRqRixTQUFTO01BQ3BEO01BQ0EsSUFBTTdCLEtBQUssR0FBR3JCLEtBQUssQ0FBQ3NCLE9BQU87TUFDM0IsSUFBSTRCLFNBQVMsQ0FBQ2tGLFFBQVEsQ0FBQ0MsY0FBYyxJQUFJLE9BQU9oSCxLQUFLLEtBQUssV0FBVyxJQUFJckIsS0FBSyxDQUFDSSxNQUFNLEtBQUssSUFBSSxFQUFFO1FBQzlGLElBQU1BLE1BQU0sR0FBRyxJQUFJUiwyQ0FBTSxDQUFDLFNBQVMsRUFBRTtVQUFFMEksTUFBTSxFQUFFO1lBQUVqSCxLQUFLLEVBQUxBO1VBQU07UUFBRSxDQUFDLENBQUM7UUFDM0RqQixNQUFNLENBQUNtSSxPQUFPLENBQUMsQ0FBQztRQUVoQm5HLE1BQU0sQ0FBQyxXQUFXLEVBQUVoQyxNQUFNLENBQUM7UUFDM0IrQixRQUFRLENBQUMsaUJBQWlCLEVBQUUvQixNQUFNLENBQUM7TUFDckM7SUFDRixDQUFDO0lBQ0RvSSxvQkFBb0IsV0FBQUEscUJBQUFDLE1BQUEsRUFBcUI7TUFBQSxJQUFqQnJHLE1BQU0sR0FBQXFHLE1BQUEsQ0FBTnJHLE1BQU07UUFBRXBDLEtBQUssR0FBQXlJLE1BQUEsQ0FBTHpJLEtBQUs7TUFDbkNBLEtBQUssQ0FBQ0ksTUFBTSxJQUFJSixLQUFLLENBQUNJLE1BQU0sQ0FBQ3NJLFVBQVUsQ0FBQyxDQUFDO01BQ3pDdEcsTUFBTSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUM7SUFDM0I7RUFDRjtBQUNGLENBQUM7QUFFRCxpRUFBZXJDLEdBQUciLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL21vZHVsZXMvYXBpLmpzPzM5ZjQiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGJhY2tlbmRJbnRlcmFjdG9yU2VydmljZSBmcm9tICcuLi9zZXJ2aWNlcy9iYWNrZW5kX2ludGVyYWN0b3Jfc2VydmljZS9iYWNrZW5kX2ludGVyYWN0b3Jfc2VydmljZS5qcydcbmltcG9ydCB7IFdTQ29ubmVjdGlvblN0YXR1cyB9IGZyb20gJy4uL3NlcnZpY2VzL2FwaS9hcGkuc2VydmljZS5qcydcbmltcG9ydCB7IG1heWJlU2hvd0NoYXROb3RpZmljYXRpb24gfSBmcm9tICcuLi9zZXJ2aWNlcy9jaGF0X3V0aWxzL2NoYXRfdXRpbHMuanMnXG5pbXBvcnQgeyBTb2NrZXQgfSBmcm9tICdwaG9lbml4J1xuXG5jb25zdCByZXRyeVRpbWVvdXQgPSAobXVsdGlwbGllcikgPT4gMTAwMCAqIG11bHRpcGxpZXJcblxuY29uc3QgYXBpID0ge1xuICBzdGF0ZToge1xuICAgIHJldHJ5TXVsdGlwbGllcjogMSxcbiAgICBiYWNrZW5kSW50ZXJhY3RvcjogYmFja2VuZEludGVyYWN0b3JTZXJ2aWNlKCksXG4gICAgZmV0Y2hlcnM6IHt9LFxuICAgIHNvY2tldDogbnVsbCxcbiAgICBtYXN0b1VzZXJTb2NrZXQ6IG51bGwsXG4gICAgbWFzdG9Vc2VyU29ja2V0U3RhdHVzOiBudWxsLFxuICAgIGZvbGxvd1JlcXVlc3RzOiBbXVxuICB9LFxuICBnZXR0ZXJzOiB7XG4gICAgZm9sbG93UmVxdWVzdENvdW50OiBzdGF0ZSA9PiBzdGF0ZS5mb2xsb3dSZXF1ZXN0cy5sZW5ndGhcbiAgfSxcbiAgbXV0YXRpb25zOiB7XG4gICAgc2V0QmFja2VuZEludGVyYWN0b3IgKHN0YXRlLCBiYWNrZW5kSW50ZXJhY3Rvcikge1xuICAgICAgc3RhdGUuYmFja2VuZEludGVyYWN0b3IgPSBiYWNrZW5kSW50ZXJhY3RvclxuICAgIH0sXG4gICAgYWRkRmV0Y2hlciAoc3RhdGUsIHsgZmV0Y2hlck5hbWUsIGZldGNoZXIgfSkge1xuICAgICAgc3RhdGUuZmV0Y2hlcnNbZmV0Y2hlck5hbWVdID0gZmV0Y2hlclxuICAgIH0sXG4gICAgcmVtb3ZlRmV0Y2hlciAoc3RhdGUsIHsgZmV0Y2hlck5hbWUsIGZldGNoZXIgfSkge1xuICAgICAgc3RhdGUuZmV0Y2hlcnNbZmV0Y2hlck5hbWVdLnN0b3AoKVxuICAgICAgZGVsZXRlIHN0YXRlLmZldGNoZXJzW2ZldGNoZXJOYW1lXVxuICAgIH0sXG4gICAgc2V0V3NUb2tlbiAoc3RhdGUsIHRva2VuKSB7XG4gICAgICBzdGF0ZS53c1Rva2VuID0gdG9rZW5cbiAgICB9LFxuICAgIHNldFNvY2tldCAoc3RhdGUsIHNvY2tldCkge1xuICAgICAgc3RhdGUuc29ja2V0ID0gc29ja2V0XG4gICAgfSxcbiAgICBzZXRGb2xsb3dSZXF1ZXN0cyAoc3RhdGUsIHZhbHVlKSB7XG4gICAgICBzdGF0ZS5mb2xsb3dSZXF1ZXN0cyA9IHZhbHVlXG4gICAgfSxcbiAgICBzZXRNYXN0b1VzZXJTb2NrZXRTdGF0dXMgKHN0YXRlLCB2YWx1ZSkge1xuICAgICAgc3RhdGUubWFzdG9Vc2VyU29ja2V0U3RhdHVzID0gdmFsdWVcbiAgICB9LFxuICAgIGluY3JlbWVudFJldHJ5TXVsdGlwbGllciAoc3RhdGUpIHtcbiAgICAgIHN0YXRlLnJldHJ5TXVsdGlwbGllciA9IE1hdGgubWF4KCsrc3RhdGUucmV0cnlNdWx0aXBsaWVyLCAzKVxuICAgIH0sXG4gICAgcmVzZXRSZXRyeU11bHRpcGxpZXIgKHN0YXRlKSB7XG4gICAgICBzdGF0ZS5yZXRyeU11bHRpcGxpZXIgPSAxXG4gICAgfVxuICB9LFxuICBhY3Rpb25zOiB7XG4gICAgLyoqXG4gICAgICogR2xvYmFsIE1hc3RvQVBJIHNvY2tldCBjb250cm9sLCBpbiBmdXR1cmUgc2hvdWxkIGRpc2FibGUgQUxMIHNvY2tldHMvKHJlKXN0YXJ0IHJlbGV2YW50IHNvY2tldHNcbiAgICAgKlxuICAgICAqIEBwYXJhbSB7Qm9vbGVhbn0gW2luaXRpYWxdIC0gd2hldGhlciB0aGlzIGVuYWJsaW5nIGhhcHBlbmVkIGF0IGJvb3QgdGltZSBvciBub3RcbiAgICAgKi9cbiAgICBlbmFibGVNYXN0b1NvY2tldHMgKHN0b3JlLCBpbml0aWFsKSB7XG4gICAgICBjb25zdCB7IHN0YXRlLCBkaXNwYXRjaCwgY29tbWl0IH0gPSBzdG9yZVxuICAgICAgLy8gRG8gbm90IGluaXRpYWxpemUgdW5sZXNzIG5vbmV4aXN0ZW50IG9yIGNsb3NlZFxuICAgICAgaWYgKFxuICAgICAgICBzdGF0ZS5tYXN0b1VzZXJTb2NrZXQgJiZcbiAgICAgICAgICAhW1xuICAgICAgICAgICAgV2ViU29ja2V0LkNMT1NFRCxcbiAgICAgICAgICAgIFdlYlNvY2tldC5DTE9TSU5HXG4gICAgICAgICAgXS5pbmNsdWRlcyhzdGF0ZS5tYXN0b1VzZXJTb2NrZXQuZ2V0U3RhdGUoKSlcbiAgICAgICkge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cbiAgICAgIGlmIChpbml0aWFsKSB7XG4gICAgICAgIGNvbW1pdCgnc2V0TWFzdG9Vc2VyU29ja2V0U3RhdHVzJywgV1NDb25uZWN0aW9uU3RhdHVzLlNUQVJUSU5HX0lOSVRJQUwpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb21taXQoJ3NldE1hc3RvVXNlclNvY2tldFN0YXR1cycsIFdTQ29ubmVjdGlvblN0YXR1cy5TVEFSVElORylcbiAgICAgIH1cbiAgICAgIHJldHVybiBkaXNwYXRjaCgnc3RhcnRNYXN0b1VzZXJTb2NrZXQnKVxuICAgIH0sXG4gICAgZGlzYWJsZU1hc3RvU29ja2V0cyAoc3RvcmUpIHtcbiAgICAgIGNvbnN0IHsgc3RhdGUsIGRpc3BhdGNoLCBjb21taXQgfSA9IHN0b3JlXG4gICAgICBpZiAoIXN0YXRlLm1hc3RvVXNlclNvY2tldCkgcmV0dXJuXG4gICAgICBjb21taXQoJ3NldE1hc3RvVXNlclNvY2tldFN0YXR1cycsIFdTQ29ubmVjdGlvblN0YXR1cy5ESVNBQkxFRClcbiAgICAgIHJldHVybiBkaXNwYXRjaCgnc3RvcE1hc3RvVXNlclNvY2tldCcpXG4gICAgfSxcblxuICAgIC8vIE1hc3RvQVBJICdVc2VyJyBzb2NrZXRzXG4gICAgc3RhcnRNYXN0b1VzZXJTb2NrZXQgKHN0b3JlKSB7XG4gICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGNvbnN0IHsgc3RhdGUsIGNvbW1pdCwgZGlzcGF0Y2gsIHJvb3RTdGF0ZSB9ID0gc3RvcmVcbiAgICAgICAgICBjb25zdCB0aW1lbGluZURhdGEgPSByb290U3RhdGUuc3RhdHVzZXMudGltZWxpbmVzLmZyaWVuZHNcbiAgICAgICAgICBzdGF0ZS5tYXN0b1VzZXJTb2NrZXQgPSBzdGF0ZS5iYWNrZW5kSW50ZXJhY3Rvci5zdGFydFVzZXJTb2NrZXQoeyBzdG9yZSB9KVxuICAgICAgICAgIHN0YXRlLm1hc3RvVXNlclNvY2tldC5hZGRFdmVudExpc3RlbmVyKFxuICAgICAgICAgICAgJ21lc3NhZ2UnLFxuICAgICAgICAgICAgKHsgZGV0YWlsOiBtZXNzYWdlIH0pID0+IHtcbiAgICAgICAgICAgICAgaWYgKCFtZXNzYWdlKSByZXR1cm4gLy8gcGluZ3NcbiAgICAgICAgICAgICAgaWYgKG1lc3NhZ2UuZXZlbnQgPT09ICdub3RpZmljYXRpb24nKSB7XG4gICAgICAgICAgICAgICAgZGlzcGF0Y2goJ2FkZE5ld05vdGlmaWNhdGlvbnMnLCB7XG4gICAgICAgICAgICAgICAgICBub3RpZmljYXRpb25zOiBbbWVzc2FnZS5ub3RpZmljYXRpb25dLFxuICAgICAgICAgICAgICAgICAgb2xkZXI6IGZhbHNlXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgfSBlbHNlIGlmIChtZXNzYWdlLmV2ZW50ID09PSAndXBkYXRlJykge1xuICAgICAgICAgICAgICAgIGRpc3BhdGNoKCdhZGROZXdTdGF0dXNlcycsIHtcbiAgICAgICAgICAgICAgICAgIHN0YXR1c2VzOiBbbWVzc2FnZS5zdGF0dXNdLFxuICAgICAgICAgICAgICAgICAgdXNlcklkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgIHNob3dJbW1lZGlhdGVseTogdGltZWxpbmVEYXRhLnZpc2libGVTdGF0dXNlcy5sZW5ndGggPT09IDAsXG4gICAgICAgICAgICAgICAgICB0aW1lbGluZTogJ2ZyaWVuZHMnXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgfSBlbHNlIGlmIChtZXNzYWdlLmV2ZW50ID09PSAnc3RhdHVzLnVwZGF0ZScpIHtcbiAgICAgICAgICAgICAgICBkaXNwYXRjaCgnYWRkTmV3U3RhdHVzZXMnLCB7XG4gICAgICAgICAgICAgICAgICBzdGF0dXNlczogW21lc3NhZ2Uuc3RhdHVzXSxcbiAgICAgICAgICAgICAgICAgIHVzZXJJZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgICBzaG93SW1tZWRpYXRlbHk6IG1lc3NhZ2Uuc3RhdHVzLmlkIGluIHRpbWVsaW5lRGF0YS52aXNpYmxlU3RhdHVzZXNPYmplY3QsXG4gICAgICAgICAgICAgICAgICB0aW1lbGluZTogJ2ZyaWVuZHMnXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgfSBlbHNlIGlmIChtZXNzYWdlLmV2ZW50ID09PSAnZGVsZXRlJykge1xuICAgICAgICAgICAgICAgIGRpc3BhdGNoKCdkZWxldGVTdGF0dXNCeUlkJywgbWVzc2FnZS5pZClcbiAgICAgICAgICAgICAgfSBlbHNlIGlmIChtZXNzYWdlLmV2ZW50ID09PSAncGxlcm9tYTpjaGF0X3VwZGF0ZScpIHtcbiAgICAgICAgICAgICAgICAvLyBUaGUgc2V0VGltZW91dCB3cmFwcGVyIGlzIGEgdGVtcG9yYXJ5IGJhbmQtYWlkIHRvIGF2b2lkIGR1cGxpY2F0ZXMgZm9yIHRoZSB1c2VyJ3Mgb3duIG1lc3NhZ2VzIHdoZW4gZG9pbmcgb3B0aW1pc3RpYyBzZW5kaW5nLlxuICAgICAgICAgICAgICAgIC8vIFRoZSBjYXVzZSBvZiB0aGUgZHVwbGljYXRlcyBpcyB0aGUgV1MgZXZlbnQgYXJyaXZpbmcgZWFybGllciB0aGFuIHRoZSBIVFRQIHJlc3BvbnNlLlxuICAgICAgICAgICAgICAgIC8vIFRoaXMgc2V0VGltZW91dCB3cmFwcGVyIGNhbiBiZSByZW1vdmVkIG9uY2UgdGhlIGNvbW1pdCBgOGU0MWJhZmZgIGlzIGluIHRoZSBzdGFibGUgUGxlcm9tYSByZWxlYXNlLlxuICAgICAgICAgICAgICAgIC8vIChgOGU0MWJhZmZgIGFkZHMgdGhlIGlkZW1wb3RlbmN5IGtleSB0byB0aGUgY2hhdCBtZXNzYWdlIGVudGl0eSwgd2hpY2ggUGxlcm9tYUZFIHVzZXMgd2hlbiBpdCdzIGF2YWlsYWJsZSwgYW5kIGl0IG1ha2VzIHRoaXMgYXJ0aWZpY2lhbCBkZWxheSB1bm5lY2Vzc2FyeSkuXG4gICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICBkaXNwYXRjaCgnYWRkQ2hhdE1lc3NhZ2VzJywge1xuICAgICAgICAgICAgICAgICAgICBjaGF0SWQ6IG1lc3NhZ2UuY2hhdFVwZGF0ZS5pZCxcbiAgICAgICAgICAgICAgICAgICAgbWVzc2FnZXM6IFttZXNzYWdlLmNoYXRVcGRhdGUubGFzdE1lc3NhZ2VdXG4gICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgZGlzcGF0Y2goJ3VwZGF0ZUNoYXQnLCB7IGNoYXQ6IG1lc3NhZ2UuY2hhdFVwZGF0ZSB9KVxuICAgICAgICAgICAgICAgICAgbWF5YmVTaG93Q2hhdE5vdGlmaWNhdGlvbihzdG9yZSwgbWVzc2FnZS5jaGF0VXBkYXRlKVxuICAgICAgICAgICAgICAgIH0sIDEwMClcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIClcbiAgICAgICAgICBzdGF0ZS5tYXN0b1VzZXJTb2NrZXQuYWRkRXZlbnRMaXN0ZW5lcignb3BlbicsICgpID0+IHtcbiAgICAgICAgICAgIC8vIERvIG5vdCBzaG93IG5vdGlmaWNhdGlvbiB3aGVuIHdlIGp1c3Qgb3BlbmVkIHVwIHRoZSBwYWdlXG4gICAgICAgICAgICBpZiAoc3RhdGUubWFzdG9Vc2VyU29ja2V0U3RhdHVzICE9PSBXU0Nvbm5lY3Rpb25TdGF0dXMuU1RBUlRJTkdfSU5JVElBTCkge1xuICAgICAgICAgICAgICBkaXNwYXRjaCgncHVzaEdsb2JhbE5vdGljZScsIHtcbiAgICAgICAgICAgICAgICBsZXZlbDogJ3N1Y2Nlc3MnLFxuICAgICAgICAgICAgICAgIG1lc3NhZ2VLZXk6ICd0aW1lbGluZS5zb2NrZXRfcmVjb25uZWN0ZWQnLFxuICAgICAgICAgICAgICAgIHRpbWVvdXQ6IDUwMDBcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIFN0b3AgcG9sbGluZyBpZiB3ZSB3ZXJlIGVycm9yZWQgb3IgZGlzYWJsZWRcbiAgICAgICAgICAgIGlmIChuZXcgU2V0KFtcbiAgICAgICAgICAgICAgV1NDb25uZWN0aW9uU3RhdHVzLkVSUk9SLFxuICAgICAgICAgICAgICBXU0Nvbm5lY3Rpb25TdGF0dXMuRElTQUJMRURcbiAgICAgICAgICAgIF0pLmhhcyhzdGF0ZS5tYXN0b1VzZXJTb2NrZXRTdGF0dXMpKSB7XG4gICAgICAgICAgICAgIGRpc3BhdGNoKCdzdG9wRmV0Y2hpbmdUaW1lbGluZScsIHsgdGltZWxpbmU6ICdmcmllbmRzJyB9KVxuICAgICAgICAgICAgICBkaXNwYXRjaCgnc3RvcEZldGNoaW5nTm90aWZpY2F0aW9ucycpXG4gICAgICAgICAgICAgIGRpc3BhdGNoKCdzdG9wRmV0Y2hpbmdDaGF0cycpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb21taXQoJ3Jlc2V0UmV0cnlNdWx0aXBsaWVyJylcbiAgICAgICAgICAgIGNvbW1pdCgnc2V0TWFzdG9Vc2VyU29ja2V0U3RhdHVzJywgV1NDb25uZWN0aW9uU3RhdHVzLkpPSU5FRClcbiAgICAgICAgICB9KVxuICAgICAgICAgIHN0YXRlLm1hc3RvVXNlclNvY2tldC5hZGRFdmVudExpc3RlbmVyKCdlcnJvcicsICh7IGRldGFpbDogZXJyb3IgfSkgPT4ge1xuICAgICAgICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgaW4gTWFzdG9BUEkgd2Vic29ja2V0OicsIGVycm9yKVxuICAgICAgICAgICAgLy8gVE9ETyBpcyB0aGlzIG5lZWRlZD9cbiAgICAgICAgICAgIGRpc3BhdGNoKCdjbGVhck9wZW5lZENoYXRzJylcbiAgICAgICAgICB9KVxuICAgICAgICAgIHN0YXRlLm1hc3RvVXNlclNvY2tldC5hZGRFdmVudExpc3RlbmVyKCdjbG9zZScsICh7IGRldGFpbDogY2xvc2VFdmVudCB9KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBpZ25vcmVDb2RlcyA9IG5ldyBTZXQoW1xuICAgICAgICAgICAgICAxMDAwLCAvLyBOb3JtYWwgKGludGVuZGVkKSBjbG9zdXJlXG4gICAgICAgICAgICAgIDEwMDEgLy8gR29pbmcgYXdheVxuICAgICAgICAgICAgXSlcbiAgICAgICAgICAgIGNvbnN0IHsgY29kZSB9ID0gY2xvc2VFdmVudFxuICAgICAgICAgICAgaWYgKGlnbm9yZUNvZGVzLmhhcyhjb2RlKSkge1xuICAgICAgICAgICAgICBjb25zb2xlLmRlYnVnKGBOb3QgcmVzdGFydGluZyBzb2NrZXQgYmVjYXN1ZSBvZiBjbG9zdXJlIGNvZGUgJHtjb2RlfSBpcyBpbiBpZ25vcmUgbGlzdGApXG4gICAgICAgICAgICAgIGNvbW1pdCgnc2V0TWFzdG9Vc2VyU29ja2V0U3RhdHVzJywgV1NDb25uZWN0aW9uU3RhdHVzLkNMT1NFRClcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIGNvbnNvbGUud2FybihgTWFzdG9BUEkgd2Vic29ja2V0IGRpc2Nvbm5lY3RlZCwgcmVzdGFydGluZy4gQ2xvc2VFdmVudCBjb2RlOiAke2NvZGV9YClcbiAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgZGlzcGF0Y2goJ3N0YXJ0TWFzdG9Vc2VyU29ja2V0JylcbiAgICAgICAgICAgICAgfSwgcmV0cnlUaW1lb3V0KHN0YXRlLnJldHJ5TXVsdGlwbGllcikpXG4gICAgICAgICAgICAgIGNvbW1pdCgnaW5jcmVtZW50UmV0cnlNdWx0aXBsaWVyJylcbiAgICAgICAgICAgICAgaWYgKHN0YXRlLm1hc3RvVXNlclNvY2tldFN0YXR1cyAhPT0gV1NDb25uZWN0aW9uU3RhdHVzLkVSUk9SKSB7XG4gICAgICAgICAgICAgICAgZGlzcGF0Y2goJ3N0YXJ0RmV0Y2hpbmdUaW1lbGluZScsIHsgdGltZWxpbmU6ICdmcmllbmRzJyB9KVxuICAgICAgICAgICAgICAgIGRpc3BhdGNoKCdzdGFydEZldGNoaW5nTm90aWZpY2F0aW9ucycpXG4gICAgICAgICAgICAgICAgZGlzcGF0Y2goJ3N0YXJ0RmV0Y2hpbmdDaGF0cycpXG4gICAgICAgICAgICAgICAgZGlzcGF0Y2goJ3B1c2hHbG9iYWxOb3RpY2UnLCB7XG4gICAgICAgICAgICAgICAgICBsZXZlbDogJ2Vycm9yJyxcbiAgICAgICAgICAgICAgICAgIG1lc3NhZ2VLZXk6ICd0aW1lbGluZS5zb2NrZXRfYnJva2UnLFxuICAgICAgICAgICAgICAgICAgbWVzc2FnZUFyZ3M6IFtjb2RlXSxcbiAgICAgICAgICAgICAgICAgIHRpbWVvdXQ6IDUwMDBcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGNvbW1pdCgnc2V0TWFzdG9Vc2VyU29ja2V0U3RhdHVzJywgV1NDb25uZWN0aW9uU3RhdHVzLkVSUk9SKVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZGlzcGF0Y2goJ2NsZWFyT3BlbmVkQ2hhdHMnKVxuICAgICAgICAgIH0pXG4gICAgICAgICAgcmVzb2x2ZSgpXG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICByZWplY3QoZSlcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9LFxuICAgIHN0b3BNYXN0b1VzZXJTb2NrZXQgKHsgc3RhdGUsIGRpc3BhdGNoIH0pIHtcbiAgICAgIGRpc3BhdGNoKCdzdGFydEZldGNoaW5nVGltZWxpbmUnLCB7IHRpbWVsaW5lOiAnZnJpZW5kcycgfSlcbiAgICAgIGRpc3BhdGNoKCdzdGFydEZldGNoaW5nTm90aWZpY2F0aW9ucycpXG4gICAgICBkaXNwYXRjaCgnc3RhcnRGZXRjaGluZ0NoYXRzJylcbiAgICAgIHN0YXRlLm1hc3RvVXNlclNvY2tldC5jbG9zZSgpXG4gICAgfSxcblxuICAgIC8vIFRpbWVsaW5lc1xuICAgIHN0YXJ0RmV0Y2hpbmdUaW1lbGluZSAoc3RvcmUsIHtcbiAgICAgIHRpbWVsaW5lID0gJ2ZyaWVuZHMnLFxuICAgICAgdGFnID0gZmFsc2UsXG4gICAgICB1c2VySWQgPSBmYWxzZSxcbiAgICAgIGxpc3RJZCA9IGZhbHNlXG4gICAgfSkge1xuICAgICAgaWYgKHN0b3JlLnN0YXRlLmZldGNoZXJzW3RpbWVsaW5lXSkgcmV0dXJuXG5cbiAgICAgIGNvbnN0IGZldGNoZXIgPSBzdG9yZS5zdGF0ZS5iYWNrZW5kSW50ZXJhY3Rvci5zdGFydEZldGNoaW5nVGltZWxpbmUoe1xuICAgICAgICB0aW1lbGluZSwgc3RvcmUsIHVzZXJJZCwgbGlzdElkLCB0YWdcbiAgICAgIH0pXG4gICAgICBzdG9yZS5jb21taXQoJ2FkZEZldGNoZXInLCB7IGZldGNoZXJOYW1lOiB0aW1lbGluZSwgZmV0Y2hlciB9KVxuICAgIH0sXG4gICAgc3RvcEZldGNoaW5nVGltZWxpbmUgKHN0b3JlLCB0aW1lbGluZSkge1xuICAgICAgY29uc3QgZmV0Y2hlciA9IHN0b3JlLnN0YXRlLmZldGNoZXJzW3RpbWVsaW5lXVxuICAgICAgaWYgKCFmZXRjaGVyKSByZXR1cm5cbiAgICAgIHN0b3JlLmNvbW1pdCgncmVtb3ZlRmV0Y2hlcicsIHsgZmV0Y2hlck5hbWU6IHRpbWVsaW5lLCBmZXRjaGVyIH0pXG4gICAgfSxcbiAgICBmZXRjaFRpbWVsaW5lIChzdG9yZSwgeyB0aW1lbGluZSwgLi4ucmVzdCB9KSB7XG4gICAgICBzdG9yZS5zdGF0ZS5iYWNrZW5kSW50ZXJhY3Rvci5mZXRjaFRpbWVsaW5lKHtcbiAgICAgICAgc3RvcmUsXG4gICAgICAgIHRpbWVsaW5lLFxuICAgICAgICAuLi5yZXN0XG4gICAgICB9KVxuICAgIH0sXG5cbiAgICAvLyBOb3RpZmljYXRpb25zXG4gICAgc3RhcnRGZXRjaGluZ05vdGlmaWNhdGlvbnMgKHN0b3JlKSB7XG4gICAgICBpZiAoc3RvcmUuc3RhdGUuZmV0Y2hlcnMubm90aWZpY2F0aW9ucykgcmV0dXJuXG4gICAgICBjb25zdCBmZXRjaGVyID0gc3RvcmUuc3RhdGUuYmFja2VuZEludGVyYWN0b3Iuc3RhcnRGZXRjaGluZ05vdGlmaWNhdGlvbnMoeyBzdG9yZSB9KVxuICAgICAgc3RvcmUuY29tbWl0KCdhZGRGZXRjaGVyJywgeyBmZXRjaGVyTmFtZTogJ25vdGlmaWNhdGlvbnMnLCBmZXRjaGVyIH0pXG4gICAgfSxcbiAgICBzdG9wRmV0Y2hpbmdOb3RpZmljYXRpb25zIChzdG9yZSkge1xuICAgICAgY29uc3QgZmV0Y2hlciA9IHN0b3JlLnN0YXRlLmZldGNoZXJzLm5vdGlmaWNhdGlvbnNcbiAgICAgIGlmICghZmV0Y2hlcikgcmV0dXJuXG4gICAgICBzdG9yZS5jb21taXQoJ3JlbW92ZUZldGNoZXInLCB7IGZldGNoZXJOYW1lOiAnbm90aWZpY2F0aW9ucycsIGZldGNoZXIgfSlcbiAgICB9LFxuICAgIGZldGNoTm90aWZpY2F0aW9ucyAoc3RvcmUsIHsgLi4ucmVzdCB9KSB7XG4gICAgICBzdG9yZS5zdGF0ZS5iYWNrZW5kSW50ZXJhY3Rvci5mZXRjaE5vdGlmaWNhdGlvbnMoe1xuICAgICAgICBzdG9yZSxcbiAgICAgICAgLi4ucmVzdFxuICAgICAgfSlcbiAgICB9LFxuXG4gICAgLy8gRm9sbG93IHJlcXVlc3RzXG4gICAgc3RhcnRGZXRjaGluZ0ZvbGxvd1JlcXVlc3RzIChzdG9yZSkge1xuICAgICAgaWYgKHN0b3JlLnN0YXRlLmZldGNoZXJzLmZvbGxvd1JlcXVlc3RzKSByZXR1cm5cbiAgICAgIGNvbnN0IGZldGNoZXIgPSBzdG9yZS5zdGF0ZS5iYWNrZW5kSW50ZXJhY3Rvci5zdGFydEZldGNoaW5nRm9sbG93UmVxdWVzdHMoeyBzdG9yZSB9KVxuXG4gICAgICBzdG9yZS5jb21taXQoJ2FkZEZldGNoZXInLCB7IGZldGNoZXJOYW1lOiAnZm9sbG93UmVxdWVzdHMnLCBmZXRjaGVyIH0pXG4gICAgfSxcbiAgICBzdG9wRmV0Y2hpbmdGb2xsb3dSZXF1ZXN0cyAoc3RvcmUpIHtcbiAgICAgIGNvbnN0IGZldGNoZXIgPSBzdG9yZS5zdGF0ZS5mZXRjaGVycy5mb2xsb3dSZXF1ZXN0c1xuICAgICAgaWYgKCFmZXRjaGVyKSByZXR1cm5cbiAgICAgIHN0b3JlLmNvbW1pdCgncmVtb3ZlRmV0Y2hlcicsIHsgZmV0Y2hlck5hbWU6ICdmb2xsb3dSZXF1ZXN0cycsIGZldGNoZXIgfSlcbiAgICB9LFxuICAgIHJlbW92ZUZvbGxvd1JlcXVlc3QgKHN0b3JlLCByZXF1ZXN0KSB7XG4gICAgICBjb25zdCByZXF1ZXN0cyA9IHN0b3JlLnN0YXRlLmZvbGxvd1JlcXVlc3RzLmZpbHRlcigoaXQpID0+IGl0ICE9PSByZXF1ZXN0KVxuICAgICAgc3RvcmUuY29tbWl0KCdzZXRGb2xsb3dSZXF1ZXN0cycsIHJlcXVlc3RzKVxuICAgIH0sXG5cbiAgICAvLyBMaXN0c1xuICAgIHN0YXJ0RmV0Y2hpbmdMaXN0cyAoc3RvcmUpIHtcbiAgICAgIGlmIChzdG9yZS5zdGF0ZS5mZXRjaGVycy5saXN0cykgcmV0dXJuXG4gICAgICBjb25zdCBmZXRjaGVyID0gc3RvcmUuc3RhdGUuYmFja2VuZEludGVyYWN0b3Iuc3RhcnRGZXRjaGluZ0xpc3RzKHsgc3RvcmUgfSlcbiAgICAgIHN0b3JlLmNvbW1pdCgnYWRkRmV0Y2hlcicsIHsgZmV0Y2hlck5hbWU6ICdsaXN0cycsIGZldGNoZXIgfSlcbiAgICB9LFxuICAgIHN0b3BGZXRjaGluZ0xpc3RzIChzdG9yZSkge1xuICAgICAgY29uc3QgZmV0Y2hlciA9IHN0b3JlLnN0YXRlLmZldGNoZXJzLmxpc3RzXG4gICAgICBpZiAoIWZldGNoZXIpIHJldHVyblxuICAgICAgc3RvcmUuY29tbWl0KCdyZW1vdmVGZXRjaGVyJywgeyBmZXRjaGVyTmFtZTogJ2xpc3RzJywgZmV0Y2hlciB9KVxuICAgIH0sXG5cbiAgICAvLyBQbGVyb21hIHdlYnNvY2tldFxuICAgIHNldFdzVG9rZW4gKHN0b3JlLCB0b2tlbikge1xuICAgICAgc3RvcmUuY29tbWl0KCdzZXRXc1Rva2VuJywgdG9rZW4pXG4gICAgfSxcbiAgICBpbml0aWFsaXplU29ja2V0ICh7IGRpc3BhdGNoLCBjb21taXQsIHN0YXRlLCByb290U3RhdGUgfSkge1xuICAgICAgLy8gU2V0IHVwIHdlYnNvY2tldCBjb25uZWN0aW9uXG4gICAgICBjb25zdCB0b2tlbiA9IHN0YXRlLndzVG9rZW5cbiAgICAgIGlmIChyb290U3RhdGUuaW5zdGFuY2Uuc2hvdXRBdmFpbGFibGUgJiYgdHlwZW9mIHRva2VuICE9PSAndW5kZWZpbmVkJyAmJiBzdGF0ZS5zb2NrZXQgPT09IG51bGwpIHtcbiAgICAgICAgY29uc3Qgc29ja2V0ID0gbmV3IFNvY2tldCgnL3NvY2tldCcsIHsgcGFyYW1zOiB7IHRva2VuIH0gfSlcbiAgICAgICAgc29ja2V0LmNvbm5lY3QoKVxuXG4gICAgICAgIGNvbW1pdCgnc2V0U29ja2V0Jywgc29ja2V0KVxuICAgICAgICBkaXNwYXRjaCgnaW5pdGlhbGl6ZVNob3V0Jywgc29ja2V0KVxuICAgICAgfVxuICAgIH0sXG4gICAgZGlzY29ubmVjdEZyb21Tb2NrZXQgKHsgY29tbWl0LCBzdGF0ZSB9KSB7XG4gICAgICBzdGF0ZS5zb2NrZXQgJiYgc3RhdGUuc29ja2V0LmRpc2Nvbm5lY3QoKVxuICAgICAgY29tbWl0KCdzZXRTb2NrZXQnLCBudWxsKVxuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBhcGlcbiJdLCJuYW1lcyI6WyJiYWNrZW5kSW50ZXJhY3RvclNlcnZpY2UiLCJXU0Nvbm5lY3Rpb25TdGF0dXMiLCJtYXliZVNob3dDaGF0Tm90aWZpY2F0aW9uIiwiU29ja2V0IiwicmV0cnlUaW1lb3V0IiwibXVsdGlwbGllciIsImFwaSIsInN0YXRlIiwicmV0cnlNdWx0aXBsaWVyIiwiYmFja2VuZEludGVyYWN0b3IiLCJmZXRjaGVycyIsInNvY2tldCIsIm1hc3RvVXNlclNvY2tldCIsIm1hc3RvVXNlclNvY2tldFN0YXR1cyIsImZvbGxvd1JlcXVlc3RzIiwiZ2V0dGVycyIsImZvbGxvd1JlcXVlc3RDb3VudCIsImxlbmd0aCIsIm11dGF0aW9ucyIsInNldEJhY2tlbmRJbnRlcmFjdG9yIiwiYWRkRmV0Y2hlciIsIl9yZWYiLCJmZXRjaGVyTmFtZSIsImZldGNoZXIiLCJyZW1vdmVGZXRjaGVyIiwiX3JlZjIiLCJzdG9wIiwic2V0V3NUb2tlbiIsInRva2VuIiwid3NUb2tlbiIsInNldFNvY2tldCIsInNldEZvbGxvd1JlcXVlc3RzIiwidmFsdWUiLCJzZXRNYXN0b1VzZXJTb2NrZXRTdGF0dXMiLCJpbmNyZW1lbnRSZXRyeU11bHRpcGxpZXIiLCJNYXRoIiwibWF4IiwicmVzZXRSZXRyeU11bHRpcGxpZXIiLCJhY3Rpb25zIiwiZW5hYmxlTWFzdG9Tb2NrZXRzIiwic3RvcmUiLCJpbml0aWFsIiwiZGlzcGF0Y2giLCJjb21taXQiLCJXZWJTb2NrZXQiLCJDTE9TRUQiLCJDTE9TSU5HIiwiaW5jbHVkZXMiLCJnZXRTdGF0ZSIsIlNUQVJUSU5HX0lOSVRJQUwiLCJTVEFSVElORyIsImRpc2FibGVNYXN0b1NvY2tldHMiLCJESVNBQkxFRCIsInN0YXJ0TWFzdG9Vc2VyU29ja2V0IiwiUHJvbWlzZSIsInJlc29sdmUiLCJyZWplY3QiLCJyb290U3RhdGUiLCJ0aW1lbGluZURhdGEiLCJzdGF0dXNlcyIsInRpbWVsaW5lcyIsImZyaWVuZHMiLCJzdGFydFVzZXJTb2NrZXQiLCJhZGRFdmVudExpc3RlbmVyIiwiX3JlZjMiLCJtZXNzYWdlIiwiZGV0YWlsIiwiZXZlbnQiLCJub3RpZmljYXRpb25zIiwibm90aWZpY2F0aW9uIiwib2xkZXIiLCJzdGF0dXMiLCJ1c2VySWQiLCJzaG93SW1tZWRpYXRlbHkiLCJ2aXNpYmxlU3RhdHVzZXMiLCJ0aW1lbGluZSIsImlkIiwidmlzaWJsZVN0YXR1c2VzT2JqZWN0Iiwic2V0VGltZW91dCIsImNoYXRJZCIsImNoYXRVcGRhdGUiLCJtZXNzYWdlcyIsImxhc3RNZXNzYWdlIiwiY2hhdCIsImxldmVsIiwibWVzc2FnZUtleSIsInRpbWVvdXQiLCJTZXQiLCJFUlJPUiIsImhhcyIsIkpPSU5FRCIsIl9yZWY0IiwiZXJyb3IiLCJjb25zb2xlIiwiX3JlZjUiLCJjbG9zZUV2ZW50IiwiaWdub3JlQ29kZXMiLCJjb2RlIiwiZGVidWciLCJjb25jYXQiLCJ3YXJuIiwibWVzc2FnZUFyZ3MiLCJlIiwic3RvcE1hc3RvVXNlclNvY2tldCIsIl9yZWY2IiwiY2xvc2UiLCJzdGFydEZldGNoaW5nVGltZWxpbmUiLCJfcmVmNyIsIl9yZWY3JHRpbWVsaW5lIiwiX3JlZjckdGFnIiwidGFnIiwiX3JlZjckdXNlcklkIiwiX3JlZjckbGlzdElkIiwibGlzdElkIiwic3RvcEZldGNoaW5nVGltZWxpbmUiLCJmZXRjaFRpbWVsaW5lIiwiX3JlZjgiLCJyZXN0IiwiX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzIiwiX2V4Y2x1ZGVkIiwiX29iamVjdFNwcmVhZCIsInN0YXJ0RmV0Y2hpbmdOb3RpZmljYXRpb25zIiwic3RvcEZldGNoaW5nTm90aWZpY2F0aW9ucyIsImZldGNoTm90aWZpY2F0aW9ucyIsIl9yZWY5IiwiX2V4dGVuZHMiLCJfb2JqZWN0RGVzdHJ1Y3R1cmluZ0VtcHR5Iiwic3RhcnRGZXRjaGluZ0ZvbGxvd1JlcXVlc3RzIiwic3RvcEZldGNoaW5nRm9sbG93UmVxdWVzdHMiLCJyZW1vdmVGb2xsb3dSZXF1ZXN0IiwicmVxdWVzdCIsInJlcXVlc3RzIiwiZmlsdGVyIiwiaXQiLCJzdGFydEZldGNoaW5nTGlzdHMiLCJsaXN0cyIsInN0b3BGZXRjaGluZ0xpc3RzIiwiaW5pdGlhbGl6ZVNvY2tldCIsIl9yZWYxMCIsImluc3RhbmNlIiwic2hvdXRBdmFpbGFibGUiLCJwYXJhbXMiLCJjb25uZWN0IiwiZGlzY29ubmVjdEZyb21Tb2NrZXQiLCJfcmVmMTEiLCJkaXNjb25uZWN0Il0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/modules/api.js\n");
/***/ }),
/***/ "./src/modules/auth_flow.js":
/*!**********************************!*\
!*** ./src/modules/auth_flow.js ***!
\**********************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ \"./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js\");\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/regenerator */ \"./node_modules/@babel/runtime/regenerator/index.js\");\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1__);\n\n\nvar PASSWORD_STRATEGY = 'password';\nvar TOKEN_STRATEGY = 'token';\n\n// MFA strategies\nvar TOTP_STRATEGY = 'totp';\nvar RECOVERY_STRATEGY = 'recovery';\n\n// initial state\nvar state = {\n settings: {},\n strategy: PASSWORD_STRATEGY,\n initStrategy: PASSWORD_STRATEGY // default strategy from config\n};\n\nvar resetState = function resetState(state) {\n state.strategy = state.initStrategy;\n state.settings = {};\n};\n\n// getters\nvar getters = {\n settings: function settings(state, getters) {\n return state.settings;\n },\n requiredPassword: function requiredPassword(state, getters, rootState) {\n return state.strategy === PASSWORD_STRATEGY;\n },\n requiredToken: function requiredToken(state, getters, rootState) {\n return state.strategy === TOKEN_STRATEGY;\n },\n requiredTOTP: function requiredTOTP(state, getters, rootState) {\n return state.strategy === TOTP_STRATEGY;\n },\n requiredRecovery: function requiredRecovery(state, getters, rootState) {\n return state.strategy === RECOVERY_STRATEGY;\n }\n};\n\n// mutations\nvar mutations = {\n setInitialStrategy: function setInitialStrategy(state, strategy) {\n if (strategy) {\n state.initStrategy = strategy;\n state.strategy = strategy;\n }\n },\n requirePassword: function requirePassword(state) {\n state.strategy = PASSWORD_STRATEGY;\n },\n requireToken: function requireToken(state) {\n state.strategy = TOKEN_STRATEGY;\n },\n requireMFA: function requireMFA(state, _ref) {\n var settings = _ref.settings;\n state.settings = settings;\n state.strategy = TOTP_STRATEGY; // default strategy of MFA\n },\n requireRecovery: function requireRecovery(state) {\n state.strategy = RECOVERY_STRATEGY;\n },\n requireTOTP: function requireTOTP(state) {\n state.strategy = TOTP_STRATEGY;\n },\n abortMFA: function abortMFA(state) {\n resetState(state);\n }\n};\n\n// actions\nvar actions = {\n // eslint-disable-next-line camelcase\n login: function login(_ref2, _ref3) {\n return (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__[\"default\"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default().mark(function _callee() {\n var state, dispatch, commit, access_token;\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n state = _ref2.state, dispatch = _ref2.dispatch, commit = _ref2.commit;\n access_token = _ref3.access_token;\n commit('setToken', access_token, {\n root: true\n });\n _context.next = 5;\n return dispatch('loginUser', access_token, {\n root: true\n });\n case 5:\n resetState(state);\n case 6:\n case \"end\":\n return _context.stop();\n }\n }, _callee);\n }))();\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({\n namespaced: true,\n state: state,\n getters: getters,\n mutations: mutations,\n actions: actions\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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O0VBQ2Q7RUFDTUMsS0FBSyxXQUFBQSxNQUFBQyxLQUFBLEVBQUFDLEtBQUEsRUFBaUQ7SUFBQSxPQUFBQyxtRkFBQSxlQUFBQyxzRUFBQSxVQUFBRSxRQUFBO01BQUEsSUFBQTNCLEtBQUEsRUFBQTRCLFFBQUEsRUFBQUMsTUFBQSxFQUFBQyxZQUFBO01BQUEsT0FBQUwsc0VBQUEsVUFBQU8sU0FBQUMsUUFBQTtRQUFBLGtCQUFBQSxRQUFBLENBQUFDLElBQUEsR0FBQUQsUUFBQSxDQUFBRSxJQUFBO1VBQUE7WUFBN0NuQyxLQUFLLEdBQUFzQixLQUFBLENBQUx0QixLQUFLLEVBQUU0QixRQUFRLEdBQUFOLEtBQUEsQ0FBUk0sUUFBUSxFQUFFQyxNQUFNLEdBQUFQLEtBQUEsQ0FBTk8sTUFBTTtZQUFNQyxZQUFZLEdBQUFQLEtBQUEsQ0FBWk8sWUFBWTtZQUN0REQsTUFBTSxDQUFDLFVBQVUsRUFBRUMsWUFBWSxFQUFFO2NBQUVNLElBQUksRUFBRTtZQUFLLENBQUMsQ0FBQztZQUFBSCxRQUFBLENBQUFFLElBQUE7WUFBQSxPQUMxQ1AsUUFBUSxDQUFDLFdBQVcsRUFBRUUsWUFBWSxFQUFFO2NBQUVNLElBQUksRUFBRTtZQUFLLENBQUMsQ0FBQztVQUFBO1lBQ3pEaEMsVUFBVSxDQUFDSixLQUFLLENBQUM7VUFBQTtVQUFBO1lBQUEsT0FBQWlDLFFBQUEsQ0FBQUksSUFBQTtRQUFBO01BQUEsR0FBQVYsT0FBQTtJQUFBO0VBQ25CO0FBQ0YsQ0FBQztBQUVELGlFQUFlO0VBQ2JXLFVBQVUsRUFBRSxJQUFJO0VBQ2hCdEMsS0FBSyxFQUFMQSxLQUFLO0VBQ0xLLE9BQU8sRUFBUEEsT0FBTztFQUNQTSxTQUFTLEVBQVRBLFNBQVM7RUFDVFMsT0FBTyxFQUFQQTtBQUNGLENBQUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL21vZHVsZXMvYXV0aF9mbG93LmpzPzk0MmEiXSwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgUEFTU1dPUkRfU1RSQVRFR1kgPSAncGFzc3dvcmQnXG5jb25zdCBUT0tFTl9TVFJBVEVHWSA9ICd0b2tlbidcblxuLy8gTUZBIHN0cmF0ZWdpZXNcbmNvbnN0IFRPVFBfU1RSQVRFR1kgPSAndG90cCdcbmNvbnN0IFJFQ09WRVJZX1NUUkFURUdZID0gJ3JlY292ZXJ5J1xuXG4vLyBpbml0aWFsIHN0YXRlXG5jb25zdCBzdGF0ZSA9IHtcbiAgc2V0dGluZ3M6IHt9LFxuICBzdHJhdGVneTogUEFTU1dPUkRfU1RSQVRFR1ksXG4gIGluaXRTdHJhdGVneTogUEFTU1dPUkRfU1RSQVRFR1kgLy8gZGVmYXVsdCBzdHJhdGVneSBmcm9tIGNvbmZpZ1xufVxuXG5jb25zdCByZXNldFN0YXRlID0gKHN0YXRlKSA9PiB7XG4gIHN0YXRlLnN0cmF0ZWd5ID0gc3RhdGUuaW5pdFN0cmF0ZWd5XG4gIHN0YXRlLnNldHRpbmdzID0ge31cbn1cblxuLy8gZ2V0dGVyc1xuY29uc3QgZ2V0dGVycyA9IHtcbiAgc2V0dGluZ3M6IChzdGF0ZSwgZ2V0dGVycykgPT4ge1xuICAgIHJldHVybiBzdGF0ZS5zZXR0aW5nc1xuICB9LFxuICByZXF1aXJlZFBhc3N3b3JkOiAoc3RhdGUsIGdldHRlcnMsIHJvb3RTdGF0ZSkgPT4ge1xuICAgIHJldHVybiBzdGF0ZS5zdHJhdGVneSA9PT0gUEFTU1dPUkRfU1RSQVRFR1lcbiAgfSxcbiAgcmVxdWlyZWRUb2tlbjogKHN0YXRlLCBnZXR0ZXJzLCByb290U3RhdGUpID0+IHtcbiAgICByZXR1cm4gc3RhdGUuc3RyYXRlZ3kgPT09IFRPS0VOX1NUUkFURUdZXG4gIH0sXG4gIHJlcXVpcmVkVE9UUDogKHN0YXRlLCBnZXR0ZXJzLCByb290U3RhdGUpID0+IHtcbiAgICByZXR1cm4gc3RhdGUuc3RyYXRlZ3kgPT09IFRPVFBfU1RSQVRFR1lcbiAgfSxcbiAgcmVxdWlyZWRSZWNvdmVyeTogKHN0YXRlLCBnZXR0ZXJzLCByb290U3RhdGUpID0+IHtcbiAgICByZXR1cm4gc3RhdGUuc3RyYXRlZ3kgPT09IFJFQ09WRVJZX1NUUkFURUdZXG4gIH1cbn1cblxuLy8gbXV0YXRpb25zXG5jb25zdCBtdXRhdGlvbnMgPSB7XG4gIHNldEluaXRpYWxTdHJhdGVneSAoc3RhdGUsIHN0cmF0ZWd5KSB7XG4gICAgaWYgKHN0cmF0ZWd5KSB7XG4gICAgICBzdGF0ZS5pbml0U3RyYXRlZ3kgPSBzdHJhdGVneVxuICAgICAgc3RhdGUuc3RyYXRlZ3kgPSBzdHJhdGVneVxuICAgIH1cbiAgfSxcbiAgcmVxdWlyZVBhc3N3b3JkIChzdGF0ZSkge1xuICAgIHN0YXRlLnN0cmF0ZWd5ID0gUEFTU1dPUkRfU1RSQVRFR1lcbiAgfSxcbiAgcmVxdWlyZVRva2VuIChzdGF0ZSkge1xuICAgIHN0YXRlLnN0cmF0ZWd5ID0gVE9LRU5fU1RSQVRFR1lcbiAgfSxcbiAgcmVxdWlyZU1GQSAoc3RhdGUsIHsgc2V0dGluZ3MgfSkge1xuICAgIHN0YXRlLnNldHRpbmdzID0gc2V0dGluZ3NcbiAgICBzdGF0ZS5zdHJhdGVneSA9IFRPVFBfU1RSQVRFR1kgLy8gZGVmYXVsdCBzdHJhdGVneSBvZiBNRkFcbiAgfSxcbiAgcmVxdWlyZVJlY292ZXJ5IChzdGF0ZSkge1xuICAgIHN0YXRlLnN0cmF0ZWd5ID0gUkVDT1ZFUllfU1RSQVRFR1lcbiAgfSxcbiAgcmVxdWlyZVRPVFAgKHN0YXRlKSB7XG4gICAgc3RhdGUuc3RyYXRlZ3kgPSBUT1RQX1NUUkFURUdZXG4gIH0sXG4gIGFib3J0TUZBIChzdGF0ZSkge1xuICAgIHJlc2V0U3RhdGUoc3RhdGUpXG4gIH1cbn1cblxuLy8gYWN0aW9uc1xuY29uc3QgYWN0aW9ucyA9IHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGNhbWVsY2FzZVxuICBhc3luYyBsb2dpbiAoeyBzdGF0ZSwgZGlzcGF0Y2gsIGNvbW1pdCB9LCB7IGFjY2Vzc190b2tlbiB9KSB7XG4gICAgY29tbWl0KCdzZXRUb2tlbicsIGFjY2Vzc190b2tlbiwgeyByb290OiB0cnVlIH0pXG4gICAgYXdhaXQgZGlzcGF0Y2goJ2xvZ2luVXNlcicsIGFjY2Vzc190b2tlbiwgeyByb290OiB0cnVlIH0pXG4gICAgcmVzZXRTdGF0ZShzdGF0ZSlcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCB7XG4gIG5hbWVzcGFjZWQ6IHRydWUsXG4gIHN0YXRlLFxuICBnZXR0ZXJzLFxuICBtdXRhdGlvbnMsXG4gIGFjdGlvbnNcbn1cbiJdLCJuYW1lcyI6WyJQQVNTV09SRF9TVFJBVEVHWSIsIlRPS0VOX1NUUkFURUdZIiwiVE9UUF9TVFJBVEVHWSIsIlJFQ09WRVJZX1NUUkFURUdZIiwic3RhdGUiLCJzZXR0aW5ncyIsInN0cmF0ZWd5IiwiaW5pdFN0cmF0ZWd5IiwicmVzZXRTdGF0ZSIsImdldHRlcnMiLCJyZXF1aXJlZFBhc3N3b3JkIiwicm9vdFN0YXRlIiwicmVxdWlyZWRUb2tlbiIsInJlcXVpcmVkVE9UUCIsInJlcXVpcmVkUmVjb3ZlcnkiLCJtdXRhdGlvbnMiLCJzZXRJbml0aWFsU3RyYXRlZ3kiLCJyZXF1aXJlUGFzc3dvcmQiLCJyZXF1aXJlVG9rZW4iLCJyZXF1aXJlTUZBIiwiX3JlZiIsInJlcXVpcmVSZWNvdmVyeSIsInJlcXVpcmVUT1RQIiwiYWJvcnRNRkEiLCJhY3Rpb25zIiwibG9naW4iLCJfcmVmMiIsIl9yZWYzIiwiX2FzeW5jVG9HZW5lcmF0b3IiLCJfcmVnZW5lcmF0b3JSdW50aW1lIiwibWFyayIsIl9jYWxsZWUiLCJkaXNwYXRjaCIsImNvbW1pdCIsImFjY2Vzc190b2tlbiIsIndyYXAiLCJfY2FsbGVlJCIsIl9jb250ZXh0IiwicHJldiIsIm5leHQiLCJyb290Iiwic3RvcCIsIm5hbWVzcGFjZWQiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/modules/auth_flow.js\n");
/***/ }),
/***/ "./src/modules/chats.js":
/*!******************************!*\
!*** ./src/modules/chats.js ***!
\******************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"./node_modules/@babel/runtime/helpers/esm/defineProperty.js\");\n/* harmony import */ var lodash_sumBy__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! lodash/sumBy */ \"./node_modules/lodash/sumBy.js\");\n/* harmony import */ var lodash_sumBy__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash_sumBy__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var lodash_orderBy__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! lodash/orderBy */ \"./node_modules/lodash/orderBy.js\");\n/* harmony import */ var lodash_orderBy__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(lodash_orderBy__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var lodash_omitBy__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! lodash/omitBy */ \"./node_modules/lodash/omitBy.js\");\n/* harmony import */ var lodash_omitBy__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(lodash_omitBy__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var lodash_find__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! lodash/find */ \"./node_modules/lodash/find.js\");\n/* harmony import */ var lodash_find__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(lodash_find__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.runtime.esm-bundler.js\");\n/* harmony import */ var _services_chat_service_chat_service_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../services/chat_service/chat_service.js */ \"./src/services/chat_service/chat_service.js\");\n/* harmony import */ var _services_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../services/entity_normalizer/entity_normalizer.service.js */ \"./src/services/entity_normalizer/entity_normalizer.service.js\");\n/* harmony import */ var _services_chat_utils_chat_utils_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../services/chat_utils/chat_utils.js */ \"./src/services/chat_utils/chat_utils.js\");\n/* harmony import */ var _services_promise_interval_promise_interval_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../services/promise_interval/promise_interval.js */ \"./src/services/promise_interval/promise_interval.js\");\n\n\n\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\n\n\n\nvar emptyChatList = function emptyChatList() {\n return {\n data: [],\n idStore: {}\n };\n};\nvar defaultState = {\n chatList: emptyChatList(),\n chatListFetcher: null,\n openedChats: (0,vue__WEBPACK_IMPORTED_MODULE_5__.reactive)({}),\n openedChatMessageServices: (0,vue__WEBPACK_IMPORTED_MODULE_5__.reactive)({}),\n fetcher: undefined,\n currentChatId: null,\n lastReadMessageId: null\n};\nvar getChatById = function getChatById(state, id) {\n return lodash_find__WEBPACK_IMPORTED_MODULE_4___default()(state.chatList.data, {\n id: id\n });\n};\nvar sortedChatList = function sortedChatList(state) {\n return lodash_orderBy__WEBPACK_IMPORTED_MODULE_2___default()(state.chatList.data, ['updated_at'], ['desc']);\n};\nvar unreadChatCount = function unreadChatCount(state) {\n return lodash_sumBy__WEBPACK_IMPORTED_MODULE_1___default()(state.chatList.data, 'unread');\n};\nvar chats = {\n state: _objectSpread({}, defaultState),\n getters: {\n currentChat: function currentChat(state) {\n return state.openedChats[state.currentChatId];\n },\n currentChatMessageService: function currentChatMessageService(state) {\n return state.openedChatMessageServices[state.currentChatId];\n },\n findOpenedChatByRecipientId: function findOpenedChatByRecipientId(state) {\n return function (recipientId) {\n return lodash_find__WEBPACK_IMPORTED_MODULE_4___default()(state.openedChats, function (c) {\n return c.account.id === recipientId;\n });\n };\n },\n sortedChatList: sortedChatList,\n unreadChatCount: unreadChatCount\n },\n actions: {\n // Chat list\n startFetchingChats: function startFetchingChats(_ref) {\n var dispatch = _ref.dispatch,\n commit = _ref.commit;\n var _fetcher = function fetcher() {\n return dispatch('fetchChats', {\n latest: true\n });\n };\n _fetcher();\n commit('setChatListFetcher', {\n fetcher: function fetcher() {\n return (0,_services_promise_interval_promise_interval_js__WEBPACK_IMPORTED_MODULE_9__.promiseInterval)(_fetcher, 5000);\n }\n });\n },\n stopFetchingChats: function stopFetchingChats(_ref2) {\n var commit = _ref2.commit;\n commit('setChatListFetcher', {\n fetcher: undefined\n });\n },\n fetchChats: function fetchChats(_ref3) {\n var dispatch = _ref3.dispatch,\n rootState = _ref3.rootState,\n commit = _ref3.commit;\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return rootState.api.backendInteractor.chats().then(function (_ref4) {\n var chats = _ref4.chats;\n dispatch('addNewChats', {\n chats: chats\n });\n return chats;\n });\n },\n addNewChats: function addNewChats(store, _ref5) {\n var chats = _ref5.chats;\n var commit = store.commit,\n dispatch = store.dispatch,\n rootGetters = store.rootGetters;\n var newChatMessageSideEffects = function newChatMessageSideEffects(chat) {\n (0,_services_chat_utils_chat_utils_js__WEBPACK_IMPORTED_MODULE_8__.maybeShowChatNotification)(store, chat);\n };\n commit('addNewUsers', chats.map(function (k) {\n return k.account;\n }).filter(function (k) {\n return k;\n }));\n commit('addNewChats', {\n dispatch: dispatch,\n chats: chats,\n rootGetters: rootGetters,\n newChatMessageSideEffects: newChatMessageSideEffects\n });\n },\n updateChat: function updateChat(_ref6, _ref7) {\n var commit = _ref6.commit;\n var chat = _ref7.chat;\n commit('updateChat', {\n chat: chat\n });\n },\n // Opened Chats\n startFetchingCurrentChat: function startFetchingCurrentChat(_ref8, _ref9) {\n var commit = _ref8.commit,\n dispatch = _ref8.dispatch;\n var fetcher = _ref9.fetcher;\n dispatch('setCurrentChatFetcher', {\n fetcher: fetcher\n });\n },\n setCurrentChatFetcher: function setCurrentChatFetcher(_ref10, _ref11) {\n var rootState = _ref10.rootState,\n commit = _ref10.commit;\n var fetcher = _ref11.fetcher;\n commit('setCurrentChatFetcher', {\n fetcher: fetcher\n });\n },\n addOpenedChat: function addOpenedChat(_ref12, _ref13) {\n var rootState = _ref12.rootState,\n commit = _ref12.commit,\n dispatch = _ref12.dispatch;\n var chat = _ref13.chat;\n commit('addOpenedChat', {\n dispatch: dispatch,\n chat: (0,_services_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_7__.parseChat)(chat)\n });\n dispatch('addNewUsers', [chat.account]);\n },\n addChatMessages: function addChatMessages(_ref14, value) {\n var commit = _ref14.commit;\n commit('addChatMessages', _objectSpread({\n commit: commit\n }, value));\n },\n resetChatNewMessageCount: function resetChatNewMessageCount(_ref15, value) {\n var commit = _ref15.commit;\n commit('resetChatNewMessageCount', value);\n },\n clearCurrentChat: function clearCurrentChat(_ref16, value) {\n var rootState = _ref16.rootState,\n commit = _ref16.commit,\n dispatch = _ref16.dispatch;\n commit('setCurrentChatId', {\n chatId: undefined\n });\n commit('setCurrentChatFetcher', {\n fetcher: undefined\n });\n },\n readChat: function readChat(_ref17, _ref18) {\n var rootState = _ref17.rootState,\n commit = _ref17.commit,\n dispatch = _ref17.dispatch;\n var id = _ref18.id,\n lastReadId = _ref18.lastReadId;\n var isNewMessage = rootState.chats.lastReadMessageId !== lastReadId;\n dispatch('resetChatNewMessageCount');\n commit('readChat', {\n id: id,\n lastReadId: lastReadId\n });\n if (isNewMessage) {\n rootState.api.backendInteractor.readChat({\n id: id,\n lastReadId: lastReadId\n });\n }\n },\n deleteChatMessage: function deleteChatMessage(_ref19, value) {\n var rootState = _ref19.rootState,\n commit = _ref19.commit;\n rootState.api.backendInteractor.deleteChatMessage(value);\n commit('deleteChatMessage', _objectSpread({\n commit: commit\n }, value));\n },\n resetChats: function resetChats(_ref20) {\n var commit = _ref20.commit,\n dispatch = _ref20.dispatch;\n dispatch('clearCurrentChat');\n commit('resetChats', {\n commit: commit\n });\n },\n clearOpenedChats: function clearOpenedChats(_ref21) {\n var rootState = _ref21.rootState,\n commit = _ref21.commit,\n dispatch = _ref21.dispatch,\n rootGetters = _ref21.rootGetters;\n commit('clearOpenedChats', {\n commit: commit\n });\n },\n handleMessageError: function handleMessageError(_ref22, value) {\n var commit = _ref22.commit;\n commit('handleMessageError', _objectSpread({\n commit: commit\n }, value));\n },\n cullOlderMessages: function cullOlderMessages(_ref23, chatId) {\n var commit = _ref23.commit;\n commit('cullOlderMessages', chatId);\n }\n },\n mutations: {\n setChatListFetcher: function setChatListFetcher(state, _ref24) {\n var commit = _ref24.commit,\n fetcher = _ref24.fetcher;\n var prevFetcher = state.chatListFetcher;\n if (prevFetcher) {\n prevFetcher.stop();\n }\n state.chatListFetcher = fetcher && fetcher();\n },\n setCurrentChatFetcher: function setCurrentChatFetcher(state, _ref25) {\n var fetcher = _ref25.fetcher;\n var prevFetcher = state.fetcher;\n if (prevFetcher) {\n prevFetcher.stop();\n }\n state.fetcher = fetcher && fetcher();\n },\n addOpenedChat: function addOpenedChat(state, _ref26) {\n var _dispatch = _ref26._dispatch,\n chat = _ref26.chat;\n state.currentChatId = chat.id;\n state.openedChats[chat.id] = chat;\n if (!state.openedChatMessageServices[chat.id]) {\n state.openedChatMessageServices[chat.id] = _services_chat_service_chat_service_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"].empty(chat.id);\n }\n },\n setCurrentChatId: function setCurrentChatId(state, _ref27) {\n var chatId = _ref27.chatId;\n state.currentChatId = chatId;\n },\n addNewChats: function addNewChats(state, _ref28) {\n var chats = _ref28.chats,\n newChatMessageSideEffects = _ref28.newChatMessageSideEffects;\n chats.forEach(function (updatedChat) {\n var chat = getChatById(state, updatedChat.id);\n if (chat) {\n var isNewMessage = (chat.lastMessage && chat.lastMessage.id) !== (updatedChat.lastMessage && updatedChat.lastMessage.id);\n chat.lastMessage = updatedChat.lastMessage;\n chat.unread = updatedChat.unread;\n chat.updated_at = updatedChat.updated_at;\n if (isNewMessage && chat.unread) {\n newChatMessageSideEffects(updatedChat);\n }\n } else {\n state.chatList.data.push(updatedChat);\n state.chatList.idStore[updatedChat.id] = updatedChat;\n }\n });\n },\n updateChat: function updateChat(state, _ref29) {\n var _dispatch = _ref29._dispatch,\n updatedChat = _ref29.chat,\n _rootGetters = _ref29._rootGetters;\n var chat = getChatById(state, updatedChat.id);\n if (chat) {\n chat.lastMessage = updatedChat.lastMessage;\n chat.unread = updatedChat.unread;\n chat.updated_at = updatedChat.updated_at;\n }\n if (!chat) {\n state.chatList.data.unshift(updatedChat);\n }\n state.chatList.idStore[updatedChat.id] = updatedChat;\n },\n deleteChat: function deleteChat(state, _ref30) {\n var _dispatch = _ref30._dispatch,\n id = _ref30.id,\n _rootGetters = _ref30._rootGetters;\n state.chats.data = state.chats.data.filter(function (conversation) {\n return conversation.last_status.id !== id;\n });\n state.chats.idStore = lodash_omitBy__WEBPACK_IMPORTED_MODULE_3___default()(state.chats.idStore, function (conversation) {\n return conversation.last_status.id === id;\n });\n },\n resetChats: function resetChats(state, _ref31) {\n var commit = _ref31.commit;\n state.chatList = emptyChatList();\n state.currentChatId = null;\n commit('setChatListFetcher', {\n fetcher: undefined\n });\n for (var chatId in state.openedChats) {\n _services_chat_service_chat_service_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"].clear(state.openedChatMessageServices[chatId]);\n delete state.openedChats[chatId];\n delete state.openedChatMessageServices[chatId];\n }\n },\n setChatsLoading: function setChatsLoading(state, _ref32) {\n var value = _ref32.value;\n state.chats.loading = value;\n },\n addChatMessages: function addChatMessages(state, _ref33) {\n var chatId = _ref33.chatId,\n messages = _ref33.messages,\n updateMaxId = _ref33.updateMaxId;\n var chatMessageService = state.openedChatMessageServices[chatId];\n if (chatMessageService) {\n _services_chat_service_chat_service_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"].add(chatMessageService, {\n messages: messages.map(_services_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_7__.parseChatMessage),\n updateMaxId: updateMaxId\n });\n }\n },\n deleteChatMessage: function deleteChatMessage(state, _ref34) {\n var chatId = _ref34.chatId,\n messageId = _ref34.messageId;\n var chatMessageService = state.openedChatMessageServices[chatId];\n if (chatMessageService) {\n _services_chat_service_chat_service_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"].deleteMessage(chatMessageService, messageId);\n }\n },\n resetChatNewMessageCount: function resetChatNewMessageCount(state, _value) {\n var chatMessageService = state.openedChatMessageServices[state.currentChatId];\n _services_chat_service_chat_service_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"].resetNewMessageCount(chatMessageService);\n },\n // Used when a connection loss occurs\n clearOpenedChats: function clearOpenedChats(state) {\n var currentChatId = state.currentChatId;\n for (var chatId in state.openedChats) {\n if (currentChatId !== chatId) {\n _services_chat_service_chat_service_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"].clear(state.openedChatMessageServices[chatId]);\n delete state.openedChats[chatId];\n delete state.openedChatMessageServices[chatId];\n }\n }\n },\n readChat: function readChat(state, _ref35) {\n var id = _ref35.id,\n lastReadId = _ref35.lastReadId;\n state.lastReadMessageId = lastReadId;\n var chat = getChatById(state, id);\n if (chat) {\n chat.unread = 0;\n }\n },\n handleMessageError: function handleMessageError(state, _ref36) {\n var chatId = _ref36.chatId,\n fakeId = _ref36.fakeId,\n isRetry = _ref36.isRetry;\n var chatMessageService = state.openedChatMessageServices[chatId];\n _services_chat_service_chat_service_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"].handleMessageError(chatMessageService, fakeId, isRetry);\n },\n cullOlderMessages: function cullOlderMessages(state, chatId) {\n _services_chat_service_chat_service_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"].cullOlderMessages(state.openedChatMessageServices[chatId]);\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (chats);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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QUNEOUMsaUJBQWlCLFdBQUFBLGtCQUFFNUUsS0FBSyxFQUFFOEQsTUFBTSxFQUFFO01BQ2hDaEYsZ0dBQTZCLENBQUNrQixLQUFLLENBQUNOLHlCQUF5QixDQUFDb0UsTUFBTSxDQUFDLENBQUM7SUFDeEU7RUFDRjtBQUNGLENBQUM7QUFFRCxpRUFBZXZELEtBQUsiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL21vZHVsZXMvY2hhdHMuanM/OTY3OCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByZWFjdGl2ZSB9IGZyb20gJ3Z1ZSdcbmltcG9ydCB7IGZpbmQsIG9taXRCeSwgb3JkZXJCeSwgc3VtQnkgfSBmcm9tICdsb2Rhc2gnXG5pbXBvcnQgY2hhdFNlcnZpY2UgZnJvbSAnLi4vc2VydmljZXMvY2hhdF9zZXJ2aWNlL2NoYXRfc2VydmljZS5qcydcbmltcG9ydCB7IHBhcnNlQ2hhdCwgcGFyc2VDaGF0TWVzc2FnZSB9IGZyb20gJy4uL3NlcnZpY2VzL2VudGl0eV9ub3JtYWxpemVyL2VudGl0eV9ub3JtYWxpemVyLnNlcnZpY2UuanMnXG5pbXBvcnQgeyBtYXliZVNob3dDaGF0Tm90aWZpY2F0aW9uIH0gZnJvbSAnLi4vc2VydmljZXMvY2hhdF91dGlscy9jaGF0X3V0aWxzLmpzJ1xuaW1wb3J0IHsgcHJvbWlzZUludGVydmFsIH0gZnJvbSAnLi4vc2VydmljZXMvcHJvbWlzZV9pbnRlcnZhbC9wcm9taXNlX2ludGVydmFsLmpzJ1xuXG5jb25zdCBlbXB0eUNoYXRMaXN0ID0gKCkgPT4gKHtcbiAgZGF0YTogW10sXG4gIGlkU3RvcmU6IHt9XG59KVxuXG5jb25zdCBkZWZhdWx0U3RhdGUgPSB7XG4gIGNoYXRMaXN0OiBlbXB0eUNoYXRMaXN0KCksXG4gIGNoYXRMaXN0RmV0Y2hlcjogbnVsbCxcbiAgb3BlbmVkQ2hhdHM6IHJlYWN0aXZlKHt9KSxcbiAgb3BlbmVkQ2hhdE1lc3NhZ2VTZXJ2aWNlczogcmVhY3RpdmUoe30pLFxuICBmZXRjaGVyOiB1bmRlZmluZWQsXG4gIGN1cnJlbnRDaGF0SWQ6IG51bGwsXG4gIGxhc3RSZWFkTWVzc2FnZUlkOiBudWxsXG59XG5cbmNvbnN0IGdldENoYXRCeUlkID0gKHN0YXRlLCBpZCkgPT4ge1xuICByZXR1cm4gZmluZChzdGF0ZS5jaGF0TGlzdC5kYXRhLCB7IGlkIH0pXG59XG5cbmNvbnN0IHNvcnRlZENoYXRMaXN0ID0gKHN0YXRlKSA9PiB7XG4gIHJldHVybiBvcmRlckJ5KHN0YXRlLmNoYXRMaXN0LmRhdGEsIFsndXBkYXRlZF9hdCddLCBbJ2Rlc2MnXSlcbn1cblxuY29uc3QgdW5yZWFkQ2hhdENvdW50ID0gKHN0YXRlKSA9PiB7XG4gIHJldHVybiBzdW1CeShzdGF0ZS5jaGF0TGlzdC5kYXRhLCAndW5yZWFkJylcbn1cblxuY29uc3QgY2hhdHMgPSB7XG4gIHN0YXRlOiB7IC4uLmRlZmF1bHRTdGF0ZSB9LFxuICBnZXR0ZXJzOiB7XG4gICAgY3VycmVudENoYXQ6IHN0YXRlID0+IHN0YXRlLm9wZW5lZENoYXRzW3N0YXRlLmN1cnJlbnRDaGF0SWRdLFxuICAgIGN1cnJlbnRDaGF0TWVzc2FnZVNlcnZpY2U6IHN0YXRlID0+IHN0YXRlLm9wZW5lZENoYXRNZXNzYWdlU2VydmljZXNbc3RhdGUuY3VycmVudENoYXRJZF0sXG4gICAgZmluZE9wZW5lZENoYXRCeVJlY2lwaWVudElkOiBzdGF0ZSA9PiByZWNpcGllbnRJZCA9PiBmaW5kKHN0YXRlLm9wZW5lZENoYXRzLCBjID0+IGMuYWNjb3VudC5pZCA9PT0gcmVjaXBpZW50SWQpLFxuICAgIHNvcnRlZENoYXRMaXN0LFxuICAgIHVucmVhZENoYXRDb3VudFxuICB9LFxuICBhY3Rpb25zOiB7XG4gICAgLy8gQ2hhdCBsaXN0XG4gICAgc3RhcnRGZXRjaGluZ0NoYXRzICh7IGRpc3BhdGNoLCBjb21taXQgfSkge1xuICAgICAgY29uc3QgZmV0Y2hlciA9ICgpID0+IGRpc3BhdGNoKCdmZXRjaENoYXRzJywgeyBsYXRlc3Q6IHRydWUgfSlcbiAgICAgIGZldGNoZXIoKVxuICAgICAgY29tbWl0KCdzZXRDaGF0TGlzdEZldGNoZXInLCB7XG4gICAgICAgIGZldGNoZXI6ICgpID0+IHByb21pc2VJbnRlcnZhbChmZXRjaGVyLCA1MDAwKVxuICAgICAgfSlcbiAgICB9LFxuICAgIHN0b3BGZXRjaGluZ0NoYXRzICh7IGNvbW1pdCB9KSB7XG4gICAgICBjb21taXQoJ3NldENoYXRMaXN0RmV0Y2hlcicsIHsgZmV0Y2hlcjogdW5kZWZpbmVkIH0pXG4gICAgfSxcbiAgICBmZXRjaENoYXRzICh7IGRpc3BhdGNoLCByb290U3RhdGUsIGNvbW1pdCB9LCBwYXJhbXMgPSB7fSkge1xuICAgICAgcmV0dXJuIHJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IuY2hhdHMoKVxuICAgICAgICAudGhlbigoeyBjaGF0cyB9KSA9PiB7XG4gICAgICAgICAgZGlzcGF0Y2goJ2FkZE5ld0NoYXRzJywgeyBjaGF0cyB9KVxuICAgICAgICAgIHJldHVybiBjaGF0c1xuICAgICAgICB9KVxuICAgIH0sXG4gICAgYWRkTmV3Q2hhdHMgKHN0b3JlLCB7IGNoYXRzIH0pIHtcbiAgICAgIGNvbnN0IHsgY29tbWl0LCBkaXNwYXRjaCwgcm9vdEdldHRlcnMgfSA9IHN0b3JlXG4gICAgICBjb25zdCBuZXdDaGF0TWVzc2FnZVNpZGVFZmZlY3RzID0gKGNoYXQpID0+IHtcbiAgICAgICAgbWF5YmVTaG93Q2hhdE5vdGlmaWNhdGlvbihzdG9yZSwgY2hhdClcbiAgICAgIH1cbiAgICAgIGNvbW1pdCgnYWRkTmV3VXNlcnMnLCBjaGF0cy5tYXAoayA9PiBrLmFjY291bnQpLmZpbHRlcihrID0+IGspKVxuICAgICAgY29tbWl0KCdhZGROZXdDaGF0cycsIHsgZGlzcGF0Y2gsIGNoYXRzLCByb290R2V0dGVycywgbmV3Q2hhdE1lc3NhZ2VTaWRlRWZmZWN0cyB9KVxuICAgIH0sXG4gICAgdXBkYXRlQ2hhdCAoeyBjb21taXQgfSwgeyBjaGF0IH0pIHtcbiAgICAgIGNvbW1pdCgndXBkYXRlQ2hhdCcsIHsgY2hhdCB9KVxuICAgIH0sXG5cbiAgICAvLyBPcGVuZWQgQ2hhdHNcbiAgICBzdGFydEZldGNoaW5nQ3VycmVudENoYXQgKHsgY29tbWl0LCBkaXNwYXRjaCB9LCB7IGZldGNoZXIgfSkge1xuICAgICAgZGlzcGF0Y2goJ3NldEN1cnJlbnRDaGF0RmV0Y2hlcicsIHsgZmV0Y2hlciB9KVxuICAgIH0sXG4gICAgc2V0Q3VycmVudENoYXRGZXRjaGVyICh7IHJvb3RTdGF0ZSwgY29tbWl0IH0sIHsgZmV0Y2hlciB9KSB7XG4gICAgICBjb21taXQoJ3NldEN1cnJlbnRDaGF0RmV0Y2hlcicsIHsgZmV0Y2hlciB9KVxuICAgIH0sXG4gICAgYWRkT3BlbmVkQ2hhdCAoeyByb290U3RhdGUsIGNvbW1pdCwgZGlzcGF0Y2ggfSwgeyBjaGF0IH0pIHtcbiAgICAgIGNvbW1pdCgnYWRkT3BlbmVkQ2hhdCcsIHsgZGlzcGF0Y2gsIGNoYXQ6IHBhcnNlQ2hhdChjaGF0KSB9KVxuICAgICAgZGlzcGF0Y2goJ2FkZE5ld1VzZXJzJywgW2NoYXQuYWNjb3VudF0pXG4gICAgfSxcbiAgICBhZGRDaGF0TWVzc2FnZXMgKHsgY29tbWl0IH0sIHZhbHVlKSB7XG4gICAgICBjb21taXQoJ2FkZENoYXRNZXNzYWdlcycsIHsgY29tbWl0LCAuLi52YWx1ZSB9KVxuICAgIH0sXG4gICAgcmVzZXRDaGF0TmV3TWVzc2FnZUNvdW50ICh7IGNvbW1pdCB9LCB2YWx1ZSkge1xuICAgICAgY29tbWl0KCdyZXNldENoYXROZXdNZXNzYWdlQ291bnQnLCB2YWx1ZSlcbiAgICB9LFxuICAgIGNsZWFyQ3VycmVudENoYXQgKHsgcm9vdFN0YXRlLCBjb21taXQsIGRpc3BhdGNoIH0sIHZhbHVlKSB7XG4gICAgICBjb21taXQoJ3NldEN1cnJlbnRDaGF0SWQnLCB7IGNoYXRJZDogdW5kZWZpbmVkIH0pXG4gICAgICBjb21taXQoJ3NldEN1cnJlbnRDaGF0RmV0Y2hlcicsIHsgZmV0Y2hlcjogdW5kZWZpbmVkIH0pXG4gICAgfSxcbiAgICByZWFkQ2hhdCAoeyByb290U3RhdGUsIGNvbW1pdCwgZGlzcGF0Y2ggfSwgeyBpZCwgbGFzdFJlYWRJZCB9KSB7XG4gICAgICBjb25zdCBpc05ld01lc3NhZ2UgPSByb290U3RhdGUuY2hhdHMubGFzdFJlYWRNZXNzYWdlSWQgIT09IGxhc3RSZWFkSWRcblxuICAgICAgZGlzcGF0Y2goJ3Jlc2V0Q2hhdE5ld01lc3NhZ2VDb3VudCcpXG4gICAgICBjb21taXQoJ3JlYWRDaGF0JywgeyBpZCwgbGFzdFJlYWRJZCB9KVxuXG4gICAgICBpZiAoaXNOZXdNZXNzYWdlKSB7XG4gICAgICAgIHJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IucmVhZENoYXQoeyBpZCwgbGFzdFJlYWRJZCB9KVxuICAgICAgfVxuICAgIH0sXG4gICAgZGVsZXRlQ2hhdE1lc3NhZ2UgKHsgcm9vdFN0YXRlLCBjb21taXQgfSwgdmFsdWUpIHtcbiAgICAgIHJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IuZGVsZXRlQ2hhdE1lc3NhZ2UodmFsdWUpXG4gICAgICBjb21taXQoJ2RlbGV0ZUNoYXRNZXNzYWdlJywgeyBjb21taXQsIC4uLnZhbHVlIH0pXG4gICAgfSxcbiAgICByZXNldENoYXRzICh7IGNvbW1pdCwgZGlzcGF0Y2ggfSkge1xuICAgICAgZGlzcGF0Y2goJ2NsZWFyQ3VycmVudENoYXQnKVxuICAgICAgY29tbWl0KCdyZXNldENoYXRzJywgeyBjb21taXQgfSlcbiAgICB9LFxuICAgIGNsZWFyT3BlbmVkQ2hhdHMgKHsgcm9vdFN0YXRlLCBjb21taXQsIGRpc3BhdGNoLCByb290R2V0dGVycyB9KSB7XG4gICAgICBjb21taXQoJ2NsZWFyT3BlbmVkQ2hhdHMnLCB7IGNvbW1pdCB9KVxuICAgIH0sXG4gICAgaGFuZGxlTWVzc2FnZUVycm9yICh7IGNvbW1pdCB9LCB2YWx1ZSkge1xuICAgICAgY29tbWl0KCdoYW5kbGVNZXNzYWdlRXJyb3InLCB7IGNvbW1pdCwgLi4udmFsdWUgfSlcbiAgICB9LFxuICAgIGN1bGxPbGRlck1lc3NhZ2VzICh7IGNvbW1pdCB9LCBjaGF0SWQpIHtcbiAgICAgIGNvbW1pdCgnY3VsbE9sZGVyTWVzc2FnZXMnLCBjaGF0SWQpXG4gICAgfVxuICB9LFxuICBtdXRhdGlvbnM6IHtcbiAgICBzZXRDaGF0TGlzdEZldGNoZXIgKHN0YXRlLCB7IGNvbW1pdCwgZmV0Y2hlciB9KSB7XG4gICAgICBjb25zdCBwcmV2RmV0Y2hlciA9IHN0YXRlLmNoYXRMaXN0RmV0Y2hlclxuICAgICAgaWYgKHByZXZGZXRjaGVyKSB7XG4gICAgICAgIHByZXZGZXRjaGVyLnN0b3AoKVxuICAgICAgfVxuICAgICAgc3RhdGUuY2hhdExpc3RGZXRjaGVyID0gZmV0Y2hlciAmJiBmZXRjaGVyKClcbiAgICB9LFxuICAgIHNldEN1cnJlbnRDaGF0RmV0Y2hlciAoc3RhdGUsIHsgZmV0Y2hlciB9KSB7XG4gICAgICBjb25zdCBwcmV2RmV0Y2hlciA9IHN0YXRlLmZldGNoZXJcbiAgICAgIGlmIChwcmV2RmV0Y2hlcikge1xuICAgICAgICBwcmV2RmV0Y2hlci5zdG9wKClcbiAgICAgIH1cbiAgICAgIHN0YXRlLmZldGNoZXIgPSBmZXRjaGVyICYmIGZldGNoZXIoKVxuICAgIH0sXG4gICAgYWRkT3BlbmVkQ2hhdCAoc3RhdGUsIHsgX2Rpc3BhdGNoLCBjaGF0IH0pIHtcbiAgICAgIHN0YXRlLmN1cnJlbnRDaGF0SWQgPSBjaGF0LmlkXG4gICAgICBzdGF0ZS5vcGVuZWRDaGF0c1tjaGF0LmlkXSA9IGNoYXRcblxuICAgICAgaWYgKCFzdGF0ZS5vcGVuZWRDaGF0TWVzc2FnZVNlcnZpY2VzW2NoYXQuaWRdKSB7XG4gICAgICAgIHN0YXRlLm9wZW5lZENoYXRNZXNzYWdlU2VydmljZXNbY2hhdC5pZF0gPSBjaGF0U2VydmljZS5lbXB0eShjaGF0LmlkKVxuICAgICAgfVxuICAgIH0sXG4gICAgc2V0Q3VycmVudENoYXRJZCAoc3RhdGUsIHsgY2hhdElkIH0pIHtcbiAgICAgIHN0YXRlLmN1cnJlbnRDaGF0SWQgPSBjaGF0SWRcbiAgICB9LFxuICAgIGFkZE5ld0NoYXRzIChzdGF0ZSwgeyBjaGF0cywgbmV3Q2hhdE1lc3NhZ2VTaWRlRWZmZWN0cyB9KSB7XG4gICAgICBjaGF0cy5mb3JFYWNoKCh1cGRhdGVkQ2hhdCkgPT4ge1xuICAgICAgICBjb25zdCBjaGF0ID0gZ2V0Q2hhdEJ5SWQoc3RhdGUsIHVwZGF0ZWRDaGF0LmlkKVxuXG4gICAgICAgIGlmIChjaGF0KSB7XG4gICAgICAgICAgY29uc3QgaXNOZXdNZXNzYWdlID0gKGNoYXQubGFzdE1lc3NhZ2UgJiYgY2hhdC5sYXN0TWVzc2FnZS5pZCkgIT09ICh1cGRhdGVkQ2hhdC5sYXN0TWVzc2FnZSAmJiB1cGRhdGVkQ2hhdC5sYXN0TWVzc2FnZS5pZClcbiAgICAgICAgICBjaGF0Lmxhc3RNZXNzYWdlID0gdXBkYXRlZENoYXQubGFzdE1lc3NhZ2VcbiAgICAgICAgICBjaGF0LnVucmVhZCA9IHVwZGF0ZWRDaGF0LnVucmVhZFxuICAgICAgICAgIGNoYXQudXBkYXRlZF9hdCA9IHVwZGF0ZWRDaGF0LnVwZGF0ZWRfYXRcbiAgICAgICAgICBpZiAoaXNOZXdNZXNzYWdlICYmIGNoYXQudW5yZWFkKSB7XG4gICAgICAgICAgICBuZXdDaGF0TWVzc2FnZVNpZGVFZmZlY3RzKHVwZGF0ZWRDaGF0KVxuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBzdGF0ZS5jaGF0TGlzdC5kYXRhLnB1c2godXBkYXRlZENoYXQpXG4gICAgICAgICAgc3RhdGUuY2hhdExpc3QuaWRTdG9yZVt1cGRhdGVkQ2hhdC5pZF0gPSB1cGRhdGVkQ2hhdFxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH0sXG4gICAgdXBkYXRlQ2hhdCAoc3RhdGUsIHsgX2Rpc3BhdGNoLCBjaGF0OiB1cGRhdGVkQ2hhdCwgX3Jvb3RHZXR0ZXJzIH0pIHtcbiAgICAgIGNvbnN0IGNoYXQgPSBnZXRDaGF0QnlJZChzdGF0ZSwgdXBkYXRlZENoYXQuaWQpXG4gICAgICBpZiAoY2hhdCkge1xuICAgICAgICBjaGF0Lmxhc3RNZXNzYWdlID0gdXBkYXRlZENoYXQubGFzdE1lc3NhZ2VcbiAgICAgICAgY2hhdC51bnJlYWQgPSB1cGRhdGVkQ2hhdC51bnJlYWRcbiAgICAgICAgY2hhdC51cGRhdGVkX2F0ID0gdXBkYXRlZENoYXQudXBkYXRlZF9hdFxuICAgICAgfVxuICAgICAgaWYgKCFjaGF0KSB7IHN0YXRlLmNoYXRMaXN0LmRhdGEudW5zaGlmdCh1cGRhdGVkQ2hhdCkgfVxuICAgICAgc3RhdGUuY2hhdExpc3QuaWRTdG9yZVt1cGRhdGVkQ2hhdC5pZF0gPSB1cGRhdGVkQ2hhdFxuICAgIH0sXG4gICAgZGVsZXRlQ2hhdCAoc3RhdGUsIHsgX2Rpc3BhdGNoLCBpZCwgX3Jvb3RHZXR0ZXJzIH0pIHtcbiAgICAgIHN0YXRlLmNoYXRzLmRhdGEgPSBzdGF0ZS5jaGF0cy5kYXRhLmZpbHRlcihjb252ZXJzYXRpb24gPT5cbiAgICAgICAgY29udmVyc2F0aW9uLmxhc3Rfc3RhdHVzLmlkICE9PSBpZFxuICAgICAgKVxuICAgICAgc3RhdGUuY2hhdHMuaWRTdG9yZSA9IG9taXRCeShzdGF0ZS5jaGF0cy5pZFN0b3JlLCBjb252ZXJzYXRpb24gPT4gY29udmVyc2F0aW9uLmxhc3Rfc3RhdHVzLmlkID09PSBpZClcbiAgICB9LFxuICAgIHJlc2V0Q2hhdHMgKHN0YXRlLCB7IGNvbW1pdCB9KSB7XG4gICAgICBzdGF0ZS5jaGF0TGlzdCA9IGVtcHR5Q2hhdExpc3QoKVxuICAgICAgc3RhdGUuY3VycmVudENoYXRJZCA9IG51bGxcbiAgICAgIGNvbW1pdCgnc2V0Q2hhdExpc3RGZXRjaGVyJywgeyBmZXRjaGVyOiB1bmRlZmluZWQgfSlcbiAgICAgIGZvciAoY29uc3QgY2hhdElkIGluIHN0YXRlLm9wZW5lZENoYXRzKSB7XG4gICAgICAgIGNoYXRTZXJ2aWNlLmNsZWFyKHN0YXRlLm9wZW5lZENoYXRNZXNzYWdlU2VydmljZXNbY2hhdElkXSlcbiAgICAgICAgZGVsZXRlIHN0YXRlLm9wZW5lZENoYXRzW2NoYXRJZF1cbiAgICAgICAgZGVsZXRlIHN0YXRlLm9wZW5lZENoYXRNZXNzYWdlU2VydmljZXNbY2hhdElkXVxuICAgICAgfVxuICAgIH0sXG4gICAgc2V0Q2hhdHNMb2FkaW5nIChzdGF0ZSwgeyB2YWx1ZSB9KSB7XG4gICAgICBzdGF0ZS5jaGF0cy5sb2FkaW5nID0gdmFsdWVcbiAgICB9LFxuICAgIGFkZENoYXRNZXNzYWdlcyAoc3RhdGUsIHsgY2hhdElkLCBtZXNzYWdlcywgdXBkYXRlTWF4SWQgfSkge1xuICAgICAgY29uc3QgY2hhdE1lc3NhZ2VTZXJ2aWNlID0gc3RhdGUub3BlbmVkQ2hhdE1lc3NhZ2VTZXJ2aWNlc1tjaGF0SWRdXG4gICAgICBpZiAoY2hhdE1lc3NhZ2VTZXJ2aWNlKSB7XG4gICAgICAgIGNoYXRTZXJ2aWNlLmFkZChjaGF0TWVzc2FnZVNlcnZpY2UsIHsgbWVzc2FnZXM6IG1lc3NhZ2VzLm1hcChwYXJzZUNoYXRNZXNzYWdlKSwgdXBkYXRlTWF4SWQgfSlcbiAgICAgIH1cbiAgICB9LFxuICAgIGRlbGV0ZUNoYXRNZXNzYWdlIChzdGF0ZSwgeyBjaGF0SWQsIG1lc3NhZ2VJZCB9KSB7XG4gICAgICBjb25zdCBjaGF0TWVzc2FnZVNlcnZpY2UgPSBzdGF0ZS5vcGVuZWRDaGF0TWVzc2FnZVNlcnZpY2VzW2NoYXRJZF1cbiAgICAgIGlmIChjaGF0TWVzc2FnZVNlcnZpY2UpIHtcbiAgICAgICAgY2hhdFNlcnZpY2UuZGVsZXRlTWVzc2FnZShjaGF0TWVzc2FnZVNlcnZpY2UsIG1lc3NhZ2VJZClcbiAgICAgIH1cbiAgICB9LFxuICAgIHJlc2V0Q2hhdE5ld01lc3NhZ2VDb3VudCAoc3RhdGUsIF92YWx1ZSkge1xuICAgICAgY29uc3QgY2hhdE1lc3NhZ2VTZXJ2aWNlID0gc3RhdGUub3BlbmVkQ2hhdE1lc3NhZ2VTZXJ2aWNlc1tzdGF0ZS5jdXJyZW50Q2hhdElkXVxuICAgICAgY2hhdFNlcnZpY2UucmVzZXROZXdNZXNzYWdlQ291bnQoY2hhdE1lc3NhZ2VTZXJ2aWNlKVxuICAgIH0sXG4gICAgLy8gVXNlZCB3aGVuIGEgY29ubmVjdGlvbiBsb3NzIG9jY3Vyc1xuICAgIGNsZWFyT3BlbmVkQ2hhdHMgKHN0YXRlKSB7XG4gICAgICBjb25zdCBjdXJyZW50Q2hhdElkID0gc3RhdGUuY3VycmVudENoYXRJZFxuICAgICAgZm9yIChjb25zdCBjaGF0SWQgaW4gc3RhdGUub3BlbmVkQ2hhdHMpIHtcbiAgICAgICAgaWYgKGN1cnJlbnRDaGF0SWQgIT09IGNoYXRJZCkge1xuICAgICAgICAgIGNoYXRTZXJ2aWNlLmNsZWFyKHN0YXRlLm9wZW5lZENoYXRNZXNzYWdlU2VydmljZXNbY2hhdElkXSlcbiAgICAgICAgICBkZWxldGUgc3RhdGUub3BlbmVkQ2hhdHNbY2hhdElkXVxuICAgICAgICAgIGRlbGV0ZSBzdGF0ZS5vcGVuZWRDaGF0TWVzc2FnZVNlcnZpY2VzW2NoYXRJZF1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sXG4gICAgcmVhZENoYXQgKHN0YXRlLCB7IGlkLCBsYXN0UmVhZElkIH0pIHtcbiAgICAgIHN0YXRlLmxhc3RSZWFkTWVzc2FnZUlkID0gbGFzdFJlYWRJZFxuICAgICAgY29uc3QgY2hhdCA9IGdldENoYXRCeUlkKHN0YXRlLCBpZClcbiAgICAgIGlmIChjaGF0KSB7XG4gICAgICAgIGNoYXQudW5yZWFkID0gMFxuICAgICAgfVxuICAgIH0sXG4gICAgaGFuZGxlTWVzc2FnZUVycm9yIChzdGF0ZSwgeyBjaGF0SWQsIGZha2VJZCwgaXNSZXRyeSB9KSB7XG4gICAgICBjb25zdCBjaGF0TWVzc2FnZVNlcnZpY2UgPSBzdGF0ZS5vcGVuZWRDaGF0TWVzc2FnZVNlcnZpY2VzW2NoYXRJZF1cbiAgICAgIGNoYXRTZXJ2aWNlLmhhbmRsZU1lc3NhZ2VFcnJvcihjaGF0TWVzc2FnZVNlcnZpY2UsIGZha2VJZCwgaXNSZXRyeSlcbiAgICB9LFxuICAgIGN1bGxPbGRlck1lc3NhZ2VzIChzdGF0ZSwgY2hhdElkKSB7XG4gICAgICBjaGF0U2VydmljZS5jdWxsT2xkZXJNZXNzYWdlcyhzdGF0ZS5vcGVuZWRDaGF0TWVzc2FnZVNlcnZpY2VzW2NoYXRJZF0pXG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IGNoYXRzXG4iXSwibmFtZXMiOlsicmVhY3RpdmUiLCJjaGF0U2VydmljZSIsInBhcnNlQ2hhdCIsInBhcnNlQ2hhdE1lc3NhZ2UiLCJtYXliZVNob3dDaGF0Tm90aWZpY2F0aW9uIiwicHJvbWlzZUludGVydmFsIiwiZW1wdHlDaGF0TGlzdCIsImRhdGEiLCJpZFN0b3JlIiwiZGVmYXVsdFN0YXRlIiwiY2hhdExpc3QiLCJjaGF0TGlzdEZldGNoZXIiLCJvcGVuZWRDaGF0cyIsIm9wZW5lZENoYXRNZXNzYWdlU2VydmljZXMiLCJmZXRjaGVyIiwidW5kZWZpbmVkIiwiY3VycmVudENoYXRJZCIsImxhc3RSZWFkTWVzc2FnZUlkIiwiZ2V0Q2hhdEJ5SWQiLCJzdGF0ZSIsImlkIiwiX2ZpbmQiLCJzb3J0ZWRDaGF0TGlzdCIsIl9vcmRlckJ5IiwidW5yZWFkQ2hhdENvdW50IiwiX3N1bUJ5IiwiY2hhdHMiLCJfb2JqZWN0U3ByZWFkIiwiZ2V0dGVycyIsImN1cnJlbnRDaGF0IiwiY3VycmVudENoYXRNZXNzYWdlU2VydmljZSIsImZpbmRPcGVuZWRDaGF0QnlSZWNpcGllbnRJZCIsInJlY2lwaWVudElkIiwiYyIsImFjY291bnQiLCJhY3Rpb25zIiwic3RhcnRGZXRjaGluZ0NoYXRzIiwiX3JlZiIsImRpc3BhdGNoIiwiY29tbWl0IiwibGF0ZXN0Iiwic3RvcEZldGNoaW5nQ2hhdHMiLCJfcmVmMiIsImZldGNoQ2hhdHMiLCJfcmVmMyIsInJvb3RTdGF0ZSIsInBhcmFtcyIsImFyZ3VtZW50cyIsImxlbmd0aCIsImFwaSIsImJhY2tlbmRJbnRlcmFjdG9yIiwidGhlbiIsIl9yZWY0IiwiYWRkTmV3Q2hhdHMiLCJzdG9yZSIsIl9yZWY1Iiwicm9vdEdldHRlcnMiLCJuZXdDaGF0TWVzc2FnZVNpZGVFZmZlY3RzIiwiY2hhdCIsIm1hcCIsImsiLCJmaWx0ZXIiLCJ1cGRhdGVDaGF0IiwiX3JlZjYiLCJfcmVmNyIsInN0YXJ0RmV0Y2hpbmdDdXJyZW50Q2hhdCIsIl9yZWY4IiwiX3JlZjkiLCJzZXRDdXJyZW50Q2hhdEZldGNoZXIiLCJfcmVmMTAiLCJfcmVmMTEiLCJhZGRPcGVuZWRDaGF0IiwiX3JlZjEyIiwiX3JlZjEzIiwiYWRkQ2hhdE1lc3NhZ2VzIiwiX3JlZjE0IiwidmFsdWUiLCJyZXNldENoYXROZXdNZXNzYWdlQ291bnQiLCJfcmVmMTUiLCJjbGVhckN1cnJlbnRDaGF0IiwiX3JlZjE2IiwiY2hhdElkIiwicmVhZENoYXQiLCJfcmVmMTciLCJfcmVmMTgiLCJsYXN0UmVhZElkIiwiaXNOZXdNZXNzYWdlIiwiZGVsZXRlQ2hhdE1lc3NhZ2UiLCJfcmVmMTkiLCJyZXNldENoYXRzIiwiX3JlZjIwIiwiY2xlYXJPcGVuZWRDaGF0cyIsIl9yZWYyMSIsImhhbmRsZU1lc3NhZ2VFcnJvciIsIl9yZWYyMiIsImN1bGxPbGRlck1lc3NhZ2VzIiwiX3JlZjIzIiwibXV0YXRpb25zIiwic2V0Q2hhdExpc3RGZXRjaGVyIiwiX3JlZjI0IiwicHJldkZldGNoZXIiLCJzdG9wIiwiX3JlZjI1IiwiX3JlZjI2IiwiX2Rpc3BhdGNoIiwiZW1wdHkiLCJzZXRDdXJyZW50Q2hhdElkIiwiX3JlZjI3IiwiX3JlZjI4IiwiZm9yRWFjaCIsInVwZGF0ZWRDaGF0IiwibGFzdE1lc3NhZ2UiLCJ1bnJlYWQiLCJ1cGRhdGVkX2F0IiwicHVzaCIsIl9yZWYyOSIsIl9yb290R2V0dGVycyIsInVuc2hpZnQiLCJkZWxldGVDaGF0IiwiX3JlZjMwIiwiY29udmVyc2F0aW9uIiwibGFzdF9zdGF0dXMiLCJfb21pdEJ5IiwiX3JlZjMxIiwiY2xlYXIiLCJzZXRDaGF0c0xvYWRpbmciLCJfcmVmMzIiLCJsb2FkaW5nIiwiX3JlZjMzIiwibWVzc2FnZXMiLCJ1cGRhdGVNYXhJZCIsImNoYXRNZXNzYWdlU2VydmljZSIsImFkZCIsIl9yZWYzNCIsIm1lc3NhZ2VJZCIsImRlbGV0ZU1lc3NhZ2UiLCJfdmFsdWUiLCJyZXNldE5ld01lc3NhZ2VDb3VudCIsIl9yZWYzNSIsIl9yZWYzNiIsImZha2VJZCIsImlzUmV0cnkiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/modules/chats.js\n");
/***/ }),
/***/ "./src/modules/config.js":
/*!*******************************!*\
!*** ./src/modules/config.js ***!
\*******************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__),\n/* harmony export */ \"defaultState\": () => (/* binding */ defaultState),\n/* harmony export */ \"instanceDefaultProperties\": () => (/* binding */ instanceDefaultProperties),\n/* harmony export */ \"multiChoiceProperties\": () => (/* binding */ multiChoiceProperties)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"./node_modules/@babel/runtime/helpers/esm/defineProperty.js\");\n/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ \"./node_modules/@babel/runtime/helpers/esm/slicedToArray.js\");\n/* harmony import */ var lodash_set__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! lodash/set */ \"./node_modules/lodash/set.js\");\n/* harmony import */ var lodash_set__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(lodash_set__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var js_cookie__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! js-cookie */ \"./node_modules/js-cookie/dist/js.cookie.mjs\");\n/* harmony import */ var _services_style_setter_style_setter_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../services/style_setter/style_setter.js */ \"./src/services/style_setter/style_setter.js\");\n/* harmony import */ var _i18n_messages__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../i18n/messages */ \"./src/i18n/messages.js\");\n/* harmony import */ var _services_locale_locale_service_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../services/locale/locale.service.js */ \"./src/services/locale/locale.service.js\");\n\n\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\n\n\nvar BACKEND_LANGUAGE_COOKIE_NAME = 'userLanguage';\nvar browserLocale = (window.navigator.language || 'en').split('-')[0];\n\n/* TODO this is a bit messy.\n * We need to declare settings with their types and also deal with\n * instance-default settings in some way, hopefully try to avoid copy-pasta\n * in general.\n */\nvar multiChoiceProperties = ['postContentType', 'subjectLineBehavior', 'conversationDisplay',\n// tree | linear\n'conversationOtherRepliesButton',\n// below | inside\n'mentionLinkDisplay',\n// short | full_for_remote | full\n'userPopoverAvatarAction' // close | zoom | open\n];\n\nvar defaultState = {\n expertLevel: 0,\n // used to track which settings to show and hide\n colors: {},\n theme: undefined,\n customTheme: undefined,\n customThemeSource: undefined,\n hideISP: false,\n hideInstanceWallpaper: false,\n hideShoutbox: false,\n // bad name: actually hides posts of muted USERS\n hideMutedPosts: undefined,\n // instance default\n hideMutedThreads: undefined,\n // instance default\n hideWordFilteredPosts: undefined,\n // instance default\n muteBotStatuses: undefined,\n // instance default\n collapseMessageWithSubject: undefined,\n // instance default\n padEmoji: true,\n hideAttachments: false,\n hideAttachmentsInConv: false,\n maxThumbnails: 16,\n hideNsfw: true,\n preloadImage: true,\n loopVideo: true,\n loopVideoSilentOnly: true,\n streaming: false,\n emojiReactionsOnTimeline: true,\n alwaysShowNewPostButton: false,\n autohideFloatingPostButton: false,\n pauseOnUnfocused: true,\n stopGifs: true,\n replyVisibility: 'all',\n thirdColumnMode: 'notifications',\n notificationVisibility: {\n follows: true,\n mentions: true,\n likes: true,\n repeats: true,\n moves: true,\n emojiReactions: true,\n followRequest: true,\n reports: true,\n chatMention: true,\n polls: true\n },\n webPushNotifications: false,\n muteWords: [],\n highlight: {},\n interfaceLanguage: browserLocale,\n hideScopeNotice: false,\n useStreamingApi: false,\n sidebarRight: undefined,\n // instance default\n scopeCopy: undefined,\n // instance default\n subjectLineBehavior: undefined,\n // instance default\n alwaysShowSubjectInput: undefined,\n // instance default\n postContentType: undefined,\n // instance default\n minimalScopesMode: undefined,\n // instance default\n // This hides statuses filtered via a word filter\n hideFilteredStatuses: undefined,\n // instance default\n modalOnRepeat: undefined,\n // instance default\n modalOnUnfollow: undefined,\n // instance default\n modalOnBlock: undefined,\n // instance default\n modalOnMute: undefined,\n // instance default\n modalOnDelete: undefined,\n // instance default\n modalOnLogout: undefined,\n // instance default\n modalOnApproveFollow: undefined,\n // instance default\n modalOnDenyFollow: undefined,\n // instance default\n modalOnRemoveUserFromFollowers: undefined,\n // instance default\n playVideosInModal: false,\n useOneClickNsfw: false,\n useContainFit: true,\n disableStickyHeaders: false,\n showScrollbars: false,\n userPopoverAvatarAction: 'open',\n userPopoverOverlay: false,\n sidebarColumnWidth: '25rem',\n contentColumnWidth: '45rem',\n notifsColumnWidth: '25rem',\n emojiReactionsScale: 1.0,\n navbarColumnStretch: false,\n greentext: undefined,\n // instance default\n useAtIcon: undefined,\n // instance default\n mentionLinkDisplay: undefined,\n // instance default\n mentionLinkShowTooltip: undefined,\n // instance default\n mentionLinkShowAvatar: undefined,\n // instance default\n mentionLinkFadeDomain: undefined,\n // instance default\n mentionLinkShowYous: undefined,\n // instance default\n mentionLinkBoldenYou: undefined,\n // instance default\n hidePostStats: undefined,\n // instance default\n hideBotIndication: undefined,\n // instance default\n hideUserStats: undefined,\n // instance default\n virtualScrolling: undefined,\n // instance default\n sensitiveByDefault: undefined,\n // instance default\n conversationDisplay: undefined,\n // instance default\n conversationTreeAdvanced: undefined,\n // instance default\n conversationOtherRepliesButton: undefined,\n // instance default\n conversationTreeFadeAncestors: undefined,\n // instance default\n maxDepthInThread: undefined,\n // instance default\n autocompleteSelect: undefined // instance default\n};\n\n// caching the instance default properties\nvar instanceDefaultProperties = Object.entries(defaultState).filter(function (_ref) {\n var _ref2 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(_ref, 2),\n key = _ref2[0],\n value = _ref2[1];\n return value === undefined;\n}).map(function (_ref3) {\n var _ref4 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(_ref3, 2),\n key = _ref4[0],\n value = _ref4[1];\n return key;\n});\nvar config = {\n state: _objectSpread({}, defaultState),\n getters: {\n defaultConfig: function defaultConfig(state, getters, rootState, rootGetters) {\n var instance = rootState.instance;\n return _objectSpread(_objectSpread({}, defaultState), Object.fromEntries(instanceDefaultProperties.map(function (key) {\n return [key, instance[key]];\n })));\n },\n mergedConfig: function mergedConfig(state, getters, rootState, rootGetters) {\n var defaultConfig = rootGetters.defaultConfig;\n return _objectSpread(_objectSpread({}, defaultConfig), Object.fromEntries(Object.entries(state).filter(function (_ref5) {\n var _ref6 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(_ref5, 2),\n k = _ref6[0],\n v = _ref6[1];\n return v !== undefined;\n })));\n }\n },\n mutations: {\n setOption: function setOption(state, _ref7) {\n var name = _ref7.name,\n value = _ref7.value;\n lodash_set__WEBPACK_IMPORTED_MODULE_2___default()(state, name, value);\n },\n setHighlight: function setHighlight(state, _ref8) {\n var user = _ref8.user,\n color = _ref8.color,\n type = _ref8.type;\n var data = this.state.config.highlight[user];\n if (color || type) {\n state.highlight[user] = {\n color: color || data.color,\n type: type || data.type\n };\n } else {\n delete state.highlight[user];\n }\n }\n },\n actions: {\n loadSettings: function loadSettings(_ref9, data) {\n var dispatch = _ref9.dispatch;\n var knownKeys = new Set(Object.keys(defaultState));\n var presentKeys = new Set(Object.keys(data));\n var intersection = new Set();\n var _iterator = _createForOfIteratorHelper(presentKeys),\n _step;\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var elem = _step.value;\n if (knownKeys.has(elem)) {\n intersection.add(elem);\n }\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n intersection.forEach(function (name) {\n return dispatch('setOption', {\n name: name,\n value: data[name]\n });\n });\n },\n setHighlight: function setHighlight(_ref10, _ref11) {\n var commit = _ref10.commit,\n dispatch = _ref10.dispatch;\n var user = _ref11.user,\n color = _ref11.color,\n type = _ref11.type;\n commit('setHighlight', {\n user: user,\n color: color,\n type: type\n });\n },\n setOption: function setOption(_ref12, _ref13) {\n var commit = _ref12.commit,\n dispatch = _ref12.dispatch,\n state = _ref12.state;\n var name = _ref13.name,\n value = _ref13.value;\n var exceptions = new Set(['useStreamingApi']);\n if (exceptions.has(name)) {\n switch (name) {\n case 'useStreamingApi':\n {\n var action = value ? 'enableMastoSockets' : 'disableMastoSockets';\n dispatch(action).then(function () {\n commit('setOption', {\n name: 'useStreamingApi',\n value: value\n });\n })[\"catch\"](function (e) {\n console.error('Failed starting MastoAPI Streaming socket', e);\n dispatch('disableMastoSockets');\n dispatch('setOption', {\n name: 'useStreamingApi',\n value: false\n });\n });\n }\n }\n } else {\n commit('setOption', {\n name: name,\n value: value\n });\n switch (name) {\n case 'theme':\n (0,_services_style_setter_style_setter_js__WEBPACK_IMPORTED_MODULE_4__.setPreset)(value);\n break;\n case 'sidebarColumnWidth':\n case 'contentColumnWidth':\n case 'notifsColumnWidth':\n case 'emojiReactionsScale':\n (0,_services_style_setter_style_setter_js__WEBPACK_IMPORTED_MODULE_4__.applyConfig)(state);\n break;\n case 'customTheme':\n case 'customThemeSource':\n (0,_services_style_setter_style_setter_js__WEBPACK_IMPORTED_MODULE_4__.applyTheme)(value);\n break;\n case 'interfaceLanguage':\n _i18n_messages__WEBPACK_IMPORTED_MODULE_5__[\"default\"].setLanguage(this.getters.i18n, value);\n dispatch('loadUnicodeEmojiData', value);\n js_cookie__WEBPACK_IMPORTED_MODULE_3__[\"default\"].set(BACKEND_LANGUAGE_COOKIE_NAME, _services_locale_locale_service_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"].internalToBackendLocaleMulti(value));\n break;\n case 'thirdColumnMode':\n dispatch('setLayoutWidth', undefined);\n break;\n }\n }\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (config);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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bEQsQ0FBQztZQUNEO1VBQ0YsS0FBSyxpQkFBaUI7WUFDcEJnQyxRQUFRLENBQUMsZ0JBQWdCLEVBQUVuSSxTQUFTLENBQUM7WUFDckM7UUFDSjtNQUNGO0lBQ0Y7RUFDRjtBQUNGLENBQUM7QUFFRCxpRUFBZXVHLE1BQU0iLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL21vZHVsZXMvY29uZmlnLmpzP2YxMTkiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IENvb2tpZXMgZnJvbSAnanMtY29va2llJ1xuaW1wb3J0IHsgc2V0UHJlc2V0LCBhcHBseVRoZW1lLCBhcHBseUNvbmZpZyB9IGZyb20gJy4uL3NlcnZpY2VzL3N0eWxlX3NldHRlci9zdHlsZV9zZXR0ZXIuanMnXG5pbXBvcnQgbWVzc2FnZXMgZnJvbSAnLi4vaTE4bi9tZXNzYWdlcydcbmltcG9ydCB7IHNldCB9IGZyb20gJ2xvZGFzaCdcbmltcG9ydCBsb2NhbGVTZXJ2aWNlIGZyb20gJy4uL3NlcnZpY2VzL2xvY2FsZS9sb2NhbGUuc2VydmljZS5qcydcblxuY29uc3QgQkFDS0VORF9MQU5HVUFHRV9DT09LSUVfTkFNRSA9ICd1c2VyTGFuZ3VhZ2UnXG5cbmNvbnN0IGJyb3dzZXJMb2NhbGUgPSAod2luZG93Lm5hdmlnYXRvci5sYW5ndWFnZSB8fCAnZW4nKS5zcGxpdCgnLScpWzBdXG5cbi8qIFRPRE8gdGhpcyBpcyBhIGJpdCBtZXNzeS5cbiAqIFdlIG5lZWQgdG8gZGVjbGFyZSBzZXR0aW5ncyB3aXRoIHRoZWlyIHR5cGVzIGFuZCBhbHNvIGRlYWwgd2l0aFxuICogaW5zdGFuY2UtZGVmYXVsdCBzZXR0aW5ncyBpbiBzb21lIHdheSwgaG9wZWZ1bGx5IHRyeSB0byBhdm9pZCBjb3B5LXBhc3RhXG4gKiBpbiBnZW5lcmFsLlxuICovXG5leHBvcnQgY29uc3QgbXVsdGlDaG9pY2VQcm9wZXJ0aWVzID0gW1xuICAncG9zdENvbnRlbnRUeXBlJyxcbiAgJ3N1YmplY3RMaW5lQmVoYXZpb3InLFxuICAnY29udmVyc2F0aW9uRGlzcGxheScsIC8vIHRyZWUgfCBsaW5lYXJcbiAgJ2NvbnZlcnNhdGlvbk90aGVyUmVwbGllc0J1dHRvbicsIC8vIGJlbG93IHwgaW5zaWRlXG4gICdtZW50aW9uTGlua0Rpc3BsYXknLCAvLyBzaG9ydCB8IGZ1bGxfZm9yX3JlbW90ZSB8IGZ1bGxcbiAgJ3VzZXJQb3BvdmVyQXZhdGFyQWN0aW9uJyAvLyBjbG9zZSB8IHpvb20gfCBvcGVuXG5dXG5cbmV4cG9ydCBjb25zdCBkZWZhdWx0U3RhdGUgPSB7XG4gIGV4cGVydExldmVsOiAwLCAvLyB1c2VkIHRvIHRyYWNrIHdoaWNoIHNldHRpbmdzIHRvIHNob3cgYW5kIGhpZGVcbiAgY29sb3JzOiB7fSxcbiAgdGhlbWU6IHVuZGVmaW5lZCxcbiAgY3VzdG9tVGhlbWU6IHVuZGVmaW5lZCxcbiAgY3VzdG9tVGhlbWVTb3VyY2U6IHVuZGVmaW5lZCxcbiAgaGlkZUlTUDogZmFsc2UsXG4gIGhpZGVJbnN0YW5jZVdhbGxwYXBlcjogZmFsc2UsXG4gIGhpZGVTaG91dGJveDogZmFsc2UsXG4gIC8vIGJhZCBuYW1lOiBhY3R1YWxseSBoaWRlcyBwb3N0cyBvZiBtdXRlZCBVU0VSU1xuICBoaWRlTXV0ZWRQb3N0czogdW5kZWZpbmVkLCAvLyBpbnN0YW5jZSBkZWZhdWx0XG4gIGhpZGVNdXRlZFRocmVhZHM6IHVuZGVmaW5lZCwgLy8gaW5zdGFuY2UgZGVmYXVsdFxuICBoaWRlV29yZEZpbHRlcmVkUG9zdHM6IHVuZGVmaW5lZCwgLy8gaW5zdGFuY2UgZGVmYXVsdFxuICBtdXRlQm90U3RhdHVzZXM6IHVuZGVmaW5lZCwgLy8gaW5zdGFuY2UgZGVmYXVsdFxuICBjb2xsYXBzZU1lc3NhZ2VXaXRoU3ViamVjdDogdW5kZWZpbmVkLCAvLyBpbnN0YW5jZSBkZWZhdWx0XG4gIHBhZEVtb2ppOiB0cnVlLFxuICBoaWRlQXR0YWNobWVudHM6IGZhbHNlLFxuICBoaWRlQXR0YWNobWVudHNJbkNvbnY6IGZhbHNlLFxuICBtYXhUaHVtYm5haWxzOiAxNixcbiAgaGlkZU5zZnc6IHRydWUsXG4gIHByZWxvYWRJbWFnZTogdHJ1ZSxcbiAgbG9vcFZpZGVvOiB0cnVlLFxuICBsb29wVmlkZW9TaWxlbnRPbmx5OiB0cnVlLFxuICBzdHJlYW1pbmc6IGZhbHNlLFxuICBlbW9qaVJlYWN0aW9uc09uVGltZWxpbmU6IHRydWUsXG4gIGFsd2F5c1Nob3dOZXdQb3N0QnV0dG9uOiBmYWxzZSxcbiAgYXV0b2hpZGVGbG9hdGluZ1Bvc3RCdXR0b246IGZhbHNlLFxuICBwYXVzZU9uVW5mb2N1c2VkOiB0cnVlLFxuICBzdG9wR2lmczogdHJ1ZSxcbiAgcmVwbHlWaXNpYmlsaXR5OiAnYWxsJyxcbiAgdGhpcmRDb2x1bW5Nb2RlOiAnbm90aWZpY2F0aW9ucycsXG4gIG5vdGlmaWNhdGlvblZpc2liaWxpdHk6IHtcbiAgICBmb2xsb3dzOiB0cnVlLFxuICAgIG1lbnRpb25zOiB0cnVlLFxuICAgIGxpa2VzOiB0cnVlLFxuICAgIHJlcGVhdHM6IHRydWUsXG4gICAgbW92ZXM6IHRydWUsXG4gICAgZW1vamlSZWFjdGlvbnM6IHRydWUsXG4gICAgZm9sbG93UmVxdWVzdDogdHJ1ZSxcbiAgICByZXBvcnRzOiB0cnVlLFxuICAgIGNoYXRNZW50aW9uOiB0cnVlLFxuICAgIHBvbGxzOiB0cnVlXG4gIH0sXG4gIHdlYlB1c2hOb3RpZmljYXRpb25zOiBmYWxzZSxcbiAgbXV0ZVdvcmRzOiBbXSxcbiAgaGlnaGxpZ2h0OiB7fSxcbiAgaW50ZXJmYWNlTGFuZ3VhZ2U6IGJyb3dzZXJMb2NhbGUsXG4gIGhpZGVTY29wZU5vdGljZTogZmFsc2UsXG4gIHVzZVN0cmVhbWluZ0FwaTogZmFsc2UsXG4gIHNpZGViYXJSaWdodDogdW5kZWZpbmVkLCAvLyBpbnN0YW5jZSBkZWZhdWx0XG4gIHNjb3BlQ29weTogdW5kZWZpbmVkLCAvLyBpbnN0YW5jZSBkZWZhdWx0XG4gIHN1YmplY3RMaW5lQmVoYXZpb3I6IHVuZGVmaW5lZCwgLy8gaW5zdGFuY2UgZGVmYXVsdFxuICBhbHdheXNTaG93U3ViamVjdElucHV0OiB1bmRlZmluZWQsIC8vIGluc3RhbmNlIGRlZmF1bHRcbiAgcG9zdENvbnRlbnRUeXBlOiB1bmRlZmluZWQsIC8vIGluc3RhbmNlIGRlZmF1bHRcbiAgbWluaW1hbFNjb3Blc01vZGU6IHVuZGVmaW5lZCwgLy8gaW5zdGFuY2UgZGVmYXVsdFxuICAvLyBUaGlzIGhpZGVzIHN0YXR1c2VzIGZpbHRlcmVkIHZpYSBhIHdvcmQgZmlsdGVyXG4gIGhpZGVGaWx0ZXJlZFN0YXR1c2VzOiB1bmRlZmluZWQsIC8vIGluc3RhbmNlIGRlZmF1bHRcbiAgbW9kYWxPblJlcGVhdDogdW5kZWZpbmVkLCAvLyBpbnN0YW5jZSBkZWZhdWx0XG4gIG1vZGFsT25VbmZvbGxvdzogdW5kZWZpbmVkLCAvLyBpbnN0YW5jZSBkZWZhdWx0XG4gIG1vZGFsT25CbG9jazogdW5kZWZpbmVkLCAvLyBpbnN0YW5jZSBkZWZhdWx0XG4gIG1vZGFsT25NdXRlOiB1bmRlZmluZWQsIC8vIGluc3RhbmNlIGRlZmF1bHRcbiAgbW9kYWxPbkRlbGV0ZTogdW5kZWZpbmVkLCAvLyBpbnN0YW5jZSBkZWZhdWx0XG4gIG1vZGFsT25Mb2dvdXQ6IHVuZGVmaW5lZCwgLy8gaW5zdGFuY2UgZGVmYXVsdFxuICBtb2RhbE9uQXBwcm92ZUZvbGxvdzogdW5kZWZpbmVkLCAvLyBpbnN0YW5jZSBkZWZhdWx0XG4gIG1vZGFsT25EZW55Rm9sbG93OiB1bmRlZmluZWQsIC8vIGluc3RhbmNlIGRlZmF1bHRcbiAgbW9kYWxPblJlbW92ZVVzZXJGcm9tRm9sbG93ZXJzOiB1bmRlZmluZWQsIC8vIGluc3RhbmNlIGRlZmF1bHRcbiAgcGxheVZpZGVvc0luTW9kYWw6IGZhbHNlLFxuICB1c2VPbmVDbGlja05zZnc6IGZhbHNlLFxuICB1c2VDb250YWluRml0OiB0cnVlLFxuICBkaXNhYmxlU3RpY2t5SGVhZGVyczogZmFsc2UsXG4gIHNob3dTY3JvbGxiYXJzOiBmYWxzZSxcbiAgdXNlclBvcG92ZXJBdmF0YXJBY3Rpb246ICdvcGVuJyxcbiAgdXNlclBvcG92ZXJPdmVybGF5OiBmYWxzZSxcbiAgc2lkZWJhckNvbHVtbldpZHRoOiAnMjVyZW0nLFxuICBjb250ZW50Q29sdW1uV2lkdGg6ICc0NXJlbScsXG4gIG5vdGlmc0NvbHVtbldpZHRoOiAnMjVyZW0nLFxuICBlbW9qaVJlYWN0aW9uc1NjYWxlOiAxLjAsXG4gIG5hdmJhckNvbHVtblN0cmV0Y2g6IGZhbHNlLFxuICBncmVlbnRleHQ6IHVuZGVmaW5lZCwgLy8gaW5zdGFuY2UgZGVmYXVsdFxuICB1c2VBdEljb246IHVuZGVmaW5lZCwgLy8gaW5zdGFuY2UgZGVmYXVsdFxuICBtZW50aW9uTGlua0Rpc3BsYXk6IHVuZGVmaW5lZCwgLy8gaW5zdGFuY2UgZGVmYXVsdFxuICBtZW50aW9uTGlua1Nob3dUb29sdGlwOiB1bmRlZmluZWQsIC8vIGluc3RhbmNlIGRlZmF1bHRcbiAgbWVudGlvbkxpbmtTaG93QXZhdGFyOiB1bmRlZmluZWQsIC8vIGluc3RhbmNlIGRlZmF1bHRcbiAgbWVudGlvbkxpbmtGYWRlRG9tYWluOiB1bmRlZmluZWQsIC8vIGluc3RhbmNlIGRlZmF1bHRcbiAgbWVudGlvbkxpbmtTaG93WW91czogdW5kZWZpbmVkLCAvLyBpbnN0YW5jZSBkZWZhdWx0XG4gIG1lbnRpb25MaW5rQm9sZGVuWW91OiB1bmRlZmluZWQsIC8vIGluc3RhbmNlIGRlZmF1bHRcbiAgaGlkZVBvc3RTdGF0czogdW5kZWZpbmVkLCAvLyBpbnN0YW5jZSBkZWZhdWx0XG4gIGhpZGVCb3RJbmRpY2F0aW9uOiB1bmRlZmluZWQsIC8vIGluc3RhbmNlIGRlZmF1bHRcbiAgaGlkZVVzZXJTdGF0czogdW5kZWZpbmVkLCAvLyBpbnN0YW5jZSBkZWZhdWx0XG4gIHZpcnR1YWxTY3JvbGxpbmc6IHVuZGVmaW5lZCwgLy8gaW5zdGFuY2UgZGVmYXVsdFxuICBzZW5zaXRpdmVCeURlZmF1bHQ6IHVuZGVmaW5lZCwgLy8gaW5zdGFuY2UgZGVmYXVsdFxuICBjb252ZXJzYXRpb25EaXNwbGF5OiB1bmRlZmluZWQsIC8vIGluc3RhbmNlIGRlZmF1bHRcbiAgY29udmVyc2F0aW9uVHJlZUFkdmFuY2VkOiB1bmRlZmluZWQsIC8vIGluc3RhbmNlIGRlZmF1bHRcbiAgY29udmVyc2F0aW9uT3RoZXJSZXBsaWVzQnV0dG9uOiB1bmRlZmluZWQsIC8vIGluc3RhbmNlIGRlZmF1bHRcbiAgY29udmVyc2F0aW9uVHJlZUZhZGVBbmNlc3RvcnM6IHVuZGVmaW5lZCwgLy8gaW5zdGFuY2UgZGVmYXVsdFxuICBtYXhEZXB0aEluVGhyZWFkOiB1bmRlZmluZWQsIC8vIGluc3RhbmNlIGRlZmF1bHRcbiAgYXV0b2NvbXBsZXRlU2VsZWN0OiB1bmRlZmluZWQgLy8gaW5zdGFuY2UgZGVmYXVsdFxufVxuXG4vLyBjYWNoaW5nIHRoZSBpbnN0YW5jZSBkZWZhdWx0IHByb3BlcnRpZXNcbmV4cG9ydCBjb25zdCBpbnN0YW5jZURlZmF1bHRQcm9wZXJ0aWVzID0gT2JqZWN0LmVudHJpZXMoZGVmYXVsdFN0YXRlKVxuICAuZmlsdGVyKChba2V5LCB2YWx1ZV0pID0+IHZhbHVlID09PSB1bmRlZmluZWQpXG4gIC5tYXAoKFtrZXksIHZhbHVlXSkgPT4ga2V5KVxuXG5jb25zdCBjb25maWcgPSB7XG4gIHN0YXRlOiB7IC4uLmRlZmF1bHRTdGF0ZSB9LFxuICBnZXR0ZXJzOiB7XG4gICAgZGVmYXVsdENvbmZpZyAoc3RhdGUsIGdldHRlcnMsIHJvb3RTdGF0ZSwgcm9vdEdldHRlcnMpIHtcbiAgICAgIGNvbnN0IHsgaW5zdGFuY2UgfSA9IHJvb3RTdGF0ZVxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uZGVmYXVsdFN0YXRlLFxuICAgICAgICAuLi5PYmplY3QuZnJvbUVudHJpZXMoXG4gICAgICAgICAgaW5zdGFuY2VEZWZhdWx0UHJvcGVydGllcy5tYXAoa2V5ID0+IFtrZXksIGluc3RhbmNlW2tleV1dKVxuICAgICAgICApXG4gICAgICB9XG4gICAgfSxcbiAgICBtZXJnZWRDb25maWcgKHN0YXRlLCBnZXR0ZXJzLCByb290U3RhdGUsIHJvb3RHZXR0ZXJzKSB7XG4gICAgICBjb25zdCB7IGRlZmF1bHRDb25maWcgfSA9IHJvb3RHZXR0ZXJzXG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5kZWZhdWx0Q29uZmlnLFxuICAgICAgICAvLyBEbyBub3Qgb3ZlcnJpZGUgd2l0aCB1bmRlZmluZWRcbiAgICAgICAgLi4uT2JqZWN0LmZyb21FbnRyaWVzKE9iamVjdC5lbnRyaWVzKHN0YXRlKS5maWx0ZXIoKFtrLCB2XSkgPT4gdiAhPT0gdW5kZWZpbmVkKSlcbiAgICAgIH1cbiAgICB9XG4gIH0sXG4gIG11dGF0aW9uczoge1xuICAgIHNldE9wdGlvbiAoc3RhdGUsIHsgbmFtZSwgdmFsdWUgfSkge1xuICAgICAgc2V0KHN0YXRlLCBuYW1lLCB2YWx1ZSlcbiAgICB9LFxuICAgIHNldEhpZ2hsaWdodCAoc3RhdGUsIHsgdXNlciwgY29sb3IsIHR5cGUgfSkge1xuICAgICAgY29uc3QgZGF0YSA9IHRoaXMuc3RhdGUuY29uZmlnLmhpZ2hsaWdodFt1c2VyXVxuICAgICAgaWYgKGNvbG9yIHx8IHR5cGUpIHtcbiAgICAgICAgc3RhdGUuaGlnaGxpZ2h0W3VzZXJdID0geyBjb2xvcjogY29sb3IgfHwgZGF0YS5jb2xvciwgdHlwZTogdHlwZSB8fCBkYXRhLnR5cGUgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZGVsZXRlIHN0YXRlLmhpZ2hsaWdodFt1c2VyXVxuICAgICAgfVxuICAgIH1cbiAgfSxcbiAgYWN0aW9uczoge1xuICAgIGxvYWRTZXR0aW5ncyAoeyBkaXNwYXRjaCB9LCBkYXRhKSB7XG4gICAgICBjb25zdCBrbm93bktleXMgPSBuZXcgU2V0KE9iamVjdC5rZXlzKGRlZmF1bHRTdGF0ZSkpXG4gICAgICBjb25zdCBwcmVzZW50S2V5cyA9IG5ldyBTZXQoT2JqZWN0LmtleXMoZGF0YSkpXG4gICAgICBjb25zdCBpbnRlcnNlY3Rpb24gPSBuZXcgU2V0KClcbiAgICAgIGZvciAoY29uc3QgZWxlbSBvZiBwcmVzZW50S2V5cykge1xuICAgICAgICBpZiAoa25vd25LZXlzLmhhcyhlbGVtKSkge1xuICAgICAgICAgIGludGVyc2VjdGlvbi5hZGQoZWxlbSlcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpbnRlcnNlY3Rpb24uZm9yRWFjaChcbiAgICAgICAgbmFtZSA9PiBkaXNwYXRjaCgnc2V0T3B0aW9uJywgeyBuYW1lLCB2YWx1ZTogZGF0YVtuYW1lXSB9KVxuICAgICAgKVxuICAgIH0sXG4gICAgc2V0SGlnaGxpZ2h0ICh7IGNvbW1pdCwgZGlzcGF0Y2ggfSwgeyB1c2VyLCBjb2xvciwgdHlwZSB9KSB7XG4gICAgICBjb21taXQoJ3NldEhpZ2hsaWdodCcsIHsgdXNlciwgY29sb3IsIHR5cGUgfSlcbiAgICB9LFxuICAgIHNldE9wdGlvbiAoeyBjb21taXQsIGRpc3BhdGNoLCBzdGF0ZSB9LCB7IG5hbWUsIHZhbHVlIH0pIHtcbiAgICAgIGNvbnN0IGV4Y2VwdGlvbnMgPSBuZXcgU2V0KFtcbiAgICAgICAgJ3VzZVN0cmVhbWluZ0FwaSdcbiAgICAgIF0pXG5cbiAgICAgIGlmIChleGNlcHRpb25zLmhhcyhuYW1lKSkge1xuICAgICAgICBzd2l0Y2ggKG5hbWUpIHtcbiAgICAgICAgICBjYXNlICd1c2VTdHJlYW1pbmdBcGknOiB7XG4gICAgICAgICAgICBjb25zdCBhY3Rpb24gPSB2YWx1ZSA/ICdlbmFibGVNYXN0b1NvY2tldHMnIDogJ2Rpc2FibGVNYXN0b1NvY2tldHMnXG5cbiAgICAgICAgICAgIGRpc3BhdGNoKGFjdGlvbikudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgIGNvbW1pdCgnc2V0T3B0aW9uJywgeyBuYW1lOiAndXNlU3RyZWFtaW5nQXBpJywgdmFsdWUgfSlcbiAgICAgICAgICAgIH0pLmNhdGNoKChlKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ0ZhaWxlZCBzdGFydGluZyBNYXN0b0FQSSBTdHJlYW1pbmcgc29ja2V0JywgZSlcbiAgICAgICAgICAgICAgZGlzcGF0Y2goJ2Rpc2FibGVNYXN0b1NvY2tldHMnKVxuICAgICAgICAgICAgICBkaXNwYXRjaCgnc2V0T3B0aW9uJywgeyBuYW1lOiAndXNlU3RyZWFtaW5nQXBpJywgdmFsdWU6IGZhbHNlIH0pXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29tbWl0KCdzZXRPcHRpb24nLCB7IG5hbWUsIHZhbHVlIH0pXG4gICAgICAgIHN3aXRjaCAobmFtZSkge1xuICAgICAgICAgIGNhc2UgJ3RoZW1lJzpcbiAgICAgICAgICAgIHNldFByZXNldCh2YWx1ZSlcbiAgICAgICAgICAgIGJyZWFrXG4gICAgICAgICAgY2FzZSAnc2lkZWJhckNvbHVtbldpZHRoJzpcbiAgICAgICAgICBjYXNlICdjb250ZW50Q29sdW1uV2lkdGgnOlxuICAgICAgICAgIGNhc2UgJ25vdGlmc0NvbHVtbldpZHRoJzpcbiAgICAgICAgICBjYXNlICdlbW9qaVJlYWN0aW9uc1NjYWxlJzpcbiAgICAgICAgICAgIGFwcGx5Q29uZmlnKHN0YXRlKVxuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICBjYXNlICdjdXN0b21UaGVtZSc6XG4gICAgICAgICAgY2FzZSAnY3VzdG9tVGhlbWVTb3VyY2UnOlxuICAgICAgICAgICAgYXBwbHlUaGVtZSh2YWx1ZSlcbiAgICAgICAgICAgIGJyZWFrXG4gICAgICAgICAgY2FzZSAnaW50ZXJmYWNlTGFuZ3VhZ2UnOlxuICAgICAgICAgICAgbWVzc2FnZXMuc2V0TGFuZ3VhZ2UodGhpcy5nZXR0ZXJzLmkxOG4sIHZhbHVlKVxuICAgICAgICAgICAgZGlzcGF0Y2goJ2xvYWRVbmljb2RlRW1vamlEYXRhJywgdmFsdWUpXG4gICAgICAgICAgICBDb29raWVzLnNldChcbiAgICAgICAgICAgICAgQkFDS0VORF9MQU5HVUFHRV9DT09LSUVfTkFNRSxcbiAgICAgICAgICAgICAgbG9jYWxlU2VydmljZS5pbnRlcm5hbFRvQmFja2VuZExvY2FsZU11bHRpKHZhbHVlKVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICBjYXNlICd0aGlyZENvbHVtbk1vZGUnOlxuICAgICAgICAgICAgZGlzcGF0Y2goJ3NldExheW91dFdpZHRoJywgdW5kZWZpbmVkKVxuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBjb25maWdcbiJdLCJuYW1lcyI6WyJDb29raWVzIiwic2V0UHJlc2V0IiwiYXBwbHlUaGVtZSIsImFwcGx5Q29uZmlnIiwibWVzc2FnZXMiLCJsb2NhbGVTZXJ2aWNlIiwiQkFDS0VORF9MQU5HVUFHRV9DT09LSUVfTkFNRSIsImJyb3dzZXJMb2NhbGUiLCJ3aW5kb3ciLCJuYXZpZ2F0b3IiLCJsYW5ndWFnZSIsInNwbGl0IiwibXVsdGlDaG9pY2VQcm9wZXJ0aWVzIiwiZGVmYXVsdFN0YXRlIiwiZXhwZXJ0TGV2ZWwiLCJjb2xvcnMiLCJ0aGVtZSIsInVuZGVmaW5lZCIsImN1c3RvbVRoZW1lIiwiY3VzdG9tVGhlbWVTb3VyY2UiLCJoaWRlSVNQIiwiaGlkZUluc3RhbmNlV2FsbHBhcGVyIiwiaGlkZVNob3V0Ym94IiwiaGlkZU11dGVkUG9zdHMiLCJoaWRlTXV0ZWRUaHJlYWRzIiwiaGlkZVdvcmRGaWx0ZXJlZFBvc3RzIiwibXV0ZUJvdFN0YXR1c2VzIiwiY29sbGFwc2VNZXNzYWdlV2l0aFN1YmplY3QiLCJwYWRFbW9qaSIsImhpZGVBdHRhY2htZW50cyIsImhpZGVBdHRhY2htZW50c0luQ29udiIsIm1heFRodW1ibmFpbHMiLCJoaWRlTnNmdyIsInByZWxvYWRJbWFnZSIsImxvb3BWaWRlbyIsImxvb3BWaWRlb1NpbGVudE9ubHkiLCJzdHJlYW1pbmciLCJlbW9qaVJlYWN0aW9uc09uVGltZWxpbmUiLCJhbHdheXNTaG93TmV3UG9zdEJ1dHRvbiIsImF1dG9oaWRlRmxvYXRpbmdQb3N0QnV0dG9uIiwicGF1c2VPblVuZm9jdXNlZCIsInN0b3BHaWZzIiwicmVwbHlWaXNpYmlsaXR5IiwidGhpcmRDb2x1bW5Nb2RlIiwibm90aWZpY2F0aW9uVmlzaWJpbGl0eSIsImZvbGxvd3MiLCJtZW50aW9ucyIsImxpa2VzIiwicmVwZWF0cyIsIm1vdmVzIiwiZW1vamlSZWFjdGlvbnMiLCJmb2xsb3dSZXF1ZXN0IiwicmVwb3J0cyIsImNoYXRNZW50aW9uIiwicG9sbHMiLCJ3ZWJQdXNoTm90aWZpY2F0aW9ucyIsIm11dGVXb3JkcyIsImhpZ2hsaWdodCIsImludGVyZmFjZUxhbmd1YWdlIiwiaGlkZVNjb3BlTm90aWNlIiwidXNlU3RyZWFtaW5nQXBpIiwic2lkZWJhclJpZ2h0Iiwic2NvcGVDb3B5Iiwic3ViamVjdExpbmVCZWhhdmlvciIsImFsd2F5c1Nob3dTdWJqZWN0SW5wdXQiLCJwb3N0Q29udGVudFR5cGUiLCJtaW5pbWFsU2NvcGVzTW9kZSIsImhpZGVGaWx0ZXJlZFN0YXR1c2VzIiwibW9kYWxPblJlcGVhdCIsIm1vZGFsT25VbmZvbGxvdyIsIm1vZGFsT25CbG9jayIsIm1vZGFsT25NdXRlIiwibW9kYWxPbkRlbGV0ZSIsIm1vZGFsT25Mb2dvdXQiLCJtb2RhbE9uQXBwcm92ZUZvbGxvdyIsIm1vZGFsT25EZW55Rm9sbG93IiwibW9kYWxPblJlbW92ZVVzZXJGcm9tRm9sbG93ZXJzIiwicGxheVZpZGVvc0luTW9kYWwiLCJ1c2VPbmVDbGlja05zZnciLCJ1c2VDb250YWluRml0IiwiZGlzYWJsZVN0aWNreUhlYWRlcnMiLCJzaG93U2Nyb2xsYmFycyIsInVzZXJQb3BvdmVyQXZhdGFyQWN0aW9uIiwidXNlclBvcG92ZXJPdmVybGF5Iiwic2lkZWJhckNvbHVtbldpZHRoIiwiY29udGVudENvbHVtbldpZHRoIiwibm90aWZzQ29sdW1uV2lkdGgiLCJlbW9qaVJlYWN0aW9uc1NjYWxlIiwibmF2YmFyQ29sdW1uU3RyZXRjaCIsImdyZWVudGV4dCIsInVzZUF0SWNvbiIsIm1lbnRpb25MaW5rRGlzcGxheSIsIm1lbnRpb25MaW5rU2hvd1Rvb2x0aXAiLCJtZW50aW9uTGlua1Nob3dBdmF0YXIiLCJtZW50aW9uTGlua0ZhZGVEb21haW4iLCJtZW50aW9uTGlua1Nob3dZb3VzIiwibWVudGlvbkxpbmtCb2xkZW5Zb3UiLCJoaWRlUG9zdFN0YXRzIiwiaGlkZUJvdEluZGljYXRpb24iLCJoaWRlVXNlclN0YXRzIiwidmlydHVhbFNjcm9sbGluZyIsInNlbnNpdGl2ZUJ5RGVmYXVsdCIsImNvbnZlcnNhdGlvbkRpc3BsYXkiLCJjb252ZXJzYXRpb25UcmVlQWR2YW5jZWQiLCJjb252ZXJzYXRpb25PdGhlclJlcGxpZXNCdXR0b24iLCJjb252ZXJzYXRpb25UcmVlRmFkZUFuY2VzdG9ycyIsIm1heERlcHRoSW5UaHJlYWQiLCJhdXRvY29tcGxldGVTZWxlY3QiLCJpbnN0YW5jZURlZmF1bHRQcm9wZXJ0aWVzIiwiT2JqZWN0IiwiZW50cmllcyIsImZpbHRlciIsIl9yZWYiLCJfcmVmMiIsIl9zbGljZWRUb0FycmF5Iiwia2V5IiwidmFsdWUiLCJtYXAiLCJfcmVmMyIsIl9yZWY0IiwiY29uZmlnIiwic3RhdGUiLCJfb2JqZWN0U3ByZWFkIiwiZ2V0dGVycyIsImRlZmF1bHRDb25maWciLCJyb290U3RhdGUiLCJyb290R2V0dGVycyIsImluc3RhbmNlIiwiZnJvbUVudHJpZXMiLCJtZXJnZWRDb25maWciLCJfcmVmNSIsIl9yZWY2IiwiayIsInYiLCJtdXRhdGlvbnMiLCJzZXRPcHRpb24iLCJfcmVmNyIsIm5hbWUiLCJfc2V0Iiwic2V0SGlnaGxpZ2h0IiwiX3JlZjgiLCJ1c2VyIiwiY29sb3IiLCJ0eXBlIiwiZGF0YSIsImFjdGlvbnMiLCJsb2FkU2V0dGluZ3MiLCJfcmVmOSIsImRpc3BhdGNoIiwia25vd25LZXlzIiwiU2V0Iiwia2V5cyIsInByZXNlbnRLZXlzIiwiaW50ZXJzZWN0aW9uIiwiX2l0ZXJhdG9yIiwiX2NyZWF0ZUZvck9mSXRlcmF0b3JIZWxwZXIiLCJfc3RlcCIsInMiLCJuIiwiZG9uZSIsImVsZW0iLCJoYXMiLCJhZGQiLCJlcnIiLCJlIiwiZiIsImZvckVhY2giLCJfcmVmMTAiLCJfcmVmMTEiLCJjb21taXQiLCJfcmVmMTIiLCJfcmVmMTMiLCJleGNlcHRpb25zIiwiYWN0aW9uIiwidGhlbiIsImNvbnNvbGUiLCJlcnJvciIsInNldExhbmd1YWdlIiwiaTE4biIsInNldCIsImludGVybmFsVG9CYWNrZW5kTG9jYWxlTXVsdGkiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/modules/config.js\n");
/***/ }),
/***/ "./src/modules/editStatus.js":
/*!***********************************!*\
!*** ./src/modules/editStatus.js ***!
\***********************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\nvar editStatus = {\n state: {\n params: null,\n modalActivated: false\n },\n mutations: {\n openEditStatusModal: function openEditStatusModal(state, params) {\n state.params = params;\n state.modalActivated = true;\n },\n closeEditStatusModal: function closeEditStatusModal(state) {\n state.modalActivated = false;\n }\n },\n actions: {\n openEditStatusModal: function openEditStatusModal(_ref, params) {\n var commit = _ref.commit;\n commit('openEditStatusModal', params);\n },\n closeEditStatusModal: function closeEditStatusModal(_ref2) {\n var commit = _ref2.commit;\n commit('closeEditStatusModal');\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (editStatus);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvbW9kdWxlcy9lZGl0U3RhdHVzLmpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQSxJQUFNQSxVQUFVLEdBQUc7RUFDakJDLEtBQUssRUFBRTtJQUNMQyxNQUFNLEVBQUUsSUFBSTtJQUNaQyxjQUFjLEVBQUU7RUFDbEIsQ0FBQztFQUNEQyxTQUFTLEVBQUU7SUFDVEMsbUJBQW1CLFdBQUFBLG9CQUFFSixLQUFLLEVBQUVDLE1BQU0sRUFBRTtNQUNsQ0QsS0FBSyxDQUFDQyxNQUFNLEdBQUdBLE1BQU07TUFDckJELEtBQUssQ0FBQ0UsY0FBYyxHQUFHLElBQUk7SUFDN0IsQ0FBQztJQUNERyxvQkFBb0IsV0FBQUEscUJBQUVMLEtBQUssRUFBRTtNQUMzQkEsS0FBSyxDQUFDRSxjQUFjLEdBQUcsS0FBSztJQUM5QjtFQUNGLENBQUM7RUFDREksT0FBTyxFQUFFO0lBQ1BGLG1CQUFtQixXQUFBQSxvQkFBQUcsSUFBQSxFQUFjTixNQUFNLEVBQUU7TUFBQSxJQUFsQk8sTUFBTSxHQUFBRCxJQUFBLENBQU5DLE1BQU07TUFDM0JBLE1BQU0sQ0FBQyxxQkFBcUIsRUFBRVAsTUFBTSxDQUFDO0lBQ3ZDLENBQUM7SUFDREksb0JBQW9CLFdBQUFBLHFCQUFBSSxLQUFBLEVBQWM7TUFBQSxJQUFWRCxNQUFNLEdBQUFDLEtBQUEsQ0FBTkQsTUFBTTtNQUM1QkEsTUFBTSxDQUFDLHNCQUFzQixDQUFDO0lBQ2hDO0VBQ0Y7QUFDRixDQUFDO0FBRUQsaUVBQWVULFVBQVUiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL21vZHVsZXMvZWRpdFN0YXR1cy5qcz83MjkyIl0sInNvdXJjZXNDb250ZW50IjpbImNvbnN0IGVkaXRTdGF0dXMgPSB7XG4gIHN0YXRlOiB7XG4gICAgcGFyYW1zOiBudWxsLFxuICAgIG1vZGFsQWN0aXZhdGVkOiBmYWxzZVxuICB9LFxuICBtdXRhdGlvbnM6IHtcbiAgICBvcGVuRWRpdFN0YXR1c01vZGFsIChzdGF0ZSwgcGFyYW1zKSB7XG4gICAgICBzdGF0ZS5wYXJhbXMgPSBwYXJhbXNcbiAgICAgIHN0YXRlLm1vZGFsQWN0aXZhdGVkID0gdHJ1ZVxuICAgIH0sXG4gICAgY2xvc2VFZGl0U3RhdHVzTW9kYWwgKHN0YXRlKSB7XG4gICAgICBzdGF0ZS5tb2RhbEFjdGl2YXRlZCA9IGZhbHNlXG4gICAgfVxuICB9LFxuICBhY3Rpb25zOiB7XG4gICAgb3BlbkVkaXRTdGF0dXNNb2RhbCAoeyBjb21taXQgfSwgcGFyYW1zKSB7XG4gICAgICBjb21taXQoJ29wZW5FZGl0U3RhdHVzTW9kYWwnLCBwYXJhbXMpXG4gICAgfSxcbiAgICBjbG9zZUVkaXRTdGF0dXNNb2RhbCAoeyBjb21taXQgfSkge1xuICAgICAgY29tbWl0KCdjbG9zZUVkaXRTdGF0dXNNb2RhbCcpXG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IGVkaXRTdGF0dXNcbiJdLCJuYW1lcyI6WyJlZGl0U3RhdHVzIiwic3RhdGUiLCJwYXJhbXMiLCJtb2RhbEFjdGl2YXRlZCIsIm11dGF0aW9ucyIsIm9wZW5FZGl0U3RhdHVzTW9kYWwiLCJjbG9zZUVkaXRTdGF0dXNNb2RhbCIsImFjdGlvbnMiLCJfcmVmIiwiY29tbWl0IiwiX3JlZjIiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/modules/editStatus.js\n");
/***/ }),
/***/ "./src/modules/errors.js":
/*!*******************************!*\
!*** ./src/modules/errors.js ***!
\*******************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"humanizeErrors\": () => (/* binding */ humanizeErrors)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ \"./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js\");\n/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ \"./node_modules/@babel/runtime/helpers/esm/slicedToArray.js\");\n/* harmony import */ var lodash_capitalize__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! lodash/capitalize */ \"./node_modules/lodash/capitalize.js\");\n/* harmony import */ var lodash_capitalize__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(lodash_capitalize__WEBPACK_IMPORTED_MODULE_2__);\n\n\n\nfunction humanizeErrors(errors) {\n return Object.entries(errors).reduce(function (errs, _ref) {\n var _ref2 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(_ref, 2),\n k = _ref2[0],\n val = _ref2[1];\n var message = val.reduce(function (acc, message) {\n var key = lodash_capitalize__WEBPACK_IMPORTED_MODULE_2___default()(k.replace(/_/g, ' '));\n return acc + [key, message].join(' ') + '. ';\n }, '');\n return [].concat((0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(errs), [message]);\n }, []);\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvbW9kdWxlcy9lcnJvcnMuanMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFFTyxTQUFTQSxjQUFjQSxDQUFFQyxNQUFNLEVBQUU7RUFDdEMsT0FBT0MsTUFBTSxDQUFDQyxPQUFPLENBQUNGLE1BQU0sQ0FBQyxDQUFDRyxNQUFNLENBQUMsVUFBQ0MsSUFBSSxFQUFBQyxJQUFBLEVBQWU7SUFBQSxJQUFBQyxLQUFBLEdBQUFDLGdGQUFBLENBQUFGLElBQUE7TUFBWkcsQ0FBQyxHQUFBRixLQUFBO01BQUVHLEdBQUcsR0FBQUgsS0FBQTtJQUNqRCxJQUFNSSxPQUFPLEdBQUdELEdBQUcsQ0FBQ04sTUFBTSxDQUFDLFVBQUNRLEdBQUcsRUFBRUQsT0FBTyxFQUFLO01BQzNDLElBQU1FLEdBQUcsR0FBR0Msd0RBQUEsQ0FBV0wsQ0FBQyxDQUFDTSxPQUFPLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDO01BQzVDLE9BQU9ILEdBQUcsR0FBRyxDQUFDQyxHQUFHLEVBQUVGLE9BQU8sQ0FBQyxDQUFDSyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSTtJQUM5QyxDQUFDLEVBQUUsRUFBRSxDQUFDO0lBQ04sVUFBQUMsTUFBQSxDQUFBQyxvRkFBQSxDQUFXYixJQUFJLElBQUVNLE9BQU87RUFDMUIsQ0FBQyxFQUFFLEVBQUUsQ0FBQztBQUNSIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9tb2R1bGVzL2Vycm9ycy5qcz85ZjY2Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNhcGl0YWxpemUgfSBmcm9tICdsb2Rhc2gnXG5cbmV4cG9ydCBmdW5jdGlvbiBodW1hbml6ZUVycm9ycyAoZXJyb3JzKSB7XG4gIHJldHVybiBPYmplY3QuZW50cmllcyhlcnJvcnMpLnJlZHVjZSgoZXJycywgW2ssIHZhbF0pID0+IHtcbiAgICBjb25zdCBtZXNzYWdlID0gdmFsLnJlZHVjZSgoYWNjLCBtZXNzYWdlKSA9PiB7XG4gICAgICBjb25zdCBrZXkgPSBjYXBpdGFsaXplKGsucmVwbGFjZSgvXy9nLCAnICcpKVxuICAgICAgcmV0dXJuIGFjYyArIFtrZXksIG1lc3NhZ2VdLmpvaW4oJyAnKSArICcuICdcbiAgICB9LCAnJylcbiAgICByZXR1cm4gWy4uLmVycnMsIG1lc3NhZ2VdXG4gIH0sIFtdKVxufVxuIl0sIm5hbWVzIjpbImh1bWFuaXplRXJyb3JzIiwiZXJyb3JzIiwiT2JqZWN0IiwiZW50cmllcyIsInJlZHVjZSIsImVycnMiLCJfcmVmIiwiX3JlZjIiLCJfc2xpY2VkVG9BcnJheSIsImsiLCJ2YWwiLCJtZXNzYWdlIiwiYWNjIiwia2V5IiwiX2NhcGl0YWxpemUiLCJyZXBsYWNlIiwiam9pbiIsImNvbmNhdCIsIl90b0NvbnN1bWFibGVBcnJheSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/modules/errors.js\n");
/***/ }),
/***/ "./src/modules/instance.js":
/*!*********************************!*\
!*** ./src/modules/instance.js ***!
\*********************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ \"./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js\");\n/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ \"./node_modules/@babel/runtime/helpers/esm/slicedToArray.js\");\n/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ \"./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js\");\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"./node_modules/@babel/runtime/helpers/esm/defineProperty.js\");\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/regenerator */ \"./node_modules/@babel/runtime/regenerator/index.js\");\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var _services_style_setter_style_setter_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../services/style_setter/style_setter.js */ \"./src/services/style_setter/style_setter.js\");\n/* harmony import */ var _services_theme_data_theme_data_service_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../services/theme_data/theme_data.service.js */ \"./src/services/theme_data/theme_data.service.js\");\n/* harmony import */ var _services_api_api_service_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../services/api/api.service.js */ \"./src/services/api/api.service.js\");\n/* harmony import */ var _config_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./config.js */ \"./src/modules/config.js\");\n/* harmony import */ var _i18n_languages_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../i18n/languages.js */ \"./src/i18n/languages.js\");\n/* harmony import */ var _i18n_languages_js__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(_i18n_languages_js__WEBPACK_IMPORTED_MODULE_9__);\n\n\n\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\n\n\n\nvar SORTED_EMOJI_GROUP_IDS = ['smileys-and-emotion', 'people-and-body', 'animals-and-nature', 'food-and-drink', 'travel-and-places', 'activities', 'objects', 'symbols', 'flags'];\nvar REGIONAL_INDICATORS = function () {\n var start = 0x1F1E6;\n var end = 0x1F1FF;\n var A = 'A'.codePointAt(0);\n var res = new Array(end - start + 1);\n for (var i = start; i <= end; ++i) {\n var letter = String.fromCodePoint(A + i - start);\n res[i - start] = {\n replacement: String.fromCodePoint(i),\n imageUrl: false,\n displayText: 'regional_indicator_' + letter,\n displayTextI18n: {\n key: 'emoji.regional_indicator',\n args: {\n letter: letter\n }\n }\n };\n }\n return res;\n}();\nvar REMOTE_INTERACTION_URL = '/main/ostatus';\nvar defaultState = {\n // Stuff from apiConfig\n name: 'Pleroma FE',\n registrationOpen: true,\n server: 'http://localhost:4040/',\n textlimit: 5000,\n themeData: undefined,\n vapidPublicKey: undefined,\n // Stuff from static/config.json\n alwaysShowSubjectInput: true,\n defaultAvatar: '/images/avi.png',\n defaultBanner: '/images/banner.png',\n background: '/static/aurora_borealis.jpg',\n collapseMessageWithSubject: false,\n greentext: false,\n useAtIcon: false,\n mentionLinkDisplay: 'short',\n mentionLinkShowTooltip: true,\n mentionLinkShowAvatar: false,\n mentionLinkFadeDomain: true,\n mentionLinkShowYous: false,\n mentionLinkBoldenYou: true,\n hideFilteredStatuses: false,\n // bad name: actually hides posts of muted USERS\n hideMutedPosts: false,\n hideMutedThreads: true,\n hideWordFilteredPosts: false,\n hidePostStats: false,\n hideBotIndication: false,\n hideSitename: false,\n hideUserStats: false,\n muteBotStatuses: false,\n modalOnRepeat: false,\n modalOnUnfollow: false,\n modalOnBlock: true,\n modalOnMute: false,\n modalOnDelete: true,\n modalOnLogout: true,\n modalOnApproveFollow: false,\n modalOnDenyFollow: false,\n modalOnRemoveUserFromFollowers: false,\n loginMethod: 'password',\n logo: '/static/logo.svg',\n logoMargin: '.2em',\n logoMask: true,\n logoLeft: false,\n disableUpdateNotification: false,\n minimalScopesMode: false,\n nsfwCensorImage: undefined,\n postContentType: 'text/plain',\n redirectRootLogin: '/main/friends',\n redirectRootNoLogin: '/main/all',\n scopeCopy: true,\n showFeaturesPanel: true,\n showInstanceSpecificPanel: false,\n sidebarRight: false,\n subjectLineBehavior: 'email',\n theme: 'pleroma-dark',\n virtualScrolling: true,\n sensitiveByDefault: false,\n conversationDisplay: 'linear',\n conversationTreeAdvanced: false,\n conversationOtherRepliesButton: 'below',\n conversationTreeFadeAncestors: false,\n maxDepthInThread: 6,\n autocompleteSelect: false,\n // Nasty stuff\n customEmoji: [],\n customEmojiFetched: false,\n emoji: {},\n emojiFetched: false,\n unicodeEmojiAnnotations: {},\n pleromaBackend: true,\n postFormats: [],\n restrictedNicknames: [],\n safeDM: true,\n knownDomains: [],\n birthdayRequired: false,\n birthdayMinAge: 0,\n // Feature-set, apparently, not everything here is reported...\n shoutAvailable: false,\n pleromaChatMessagesAvailable: false,\n pleromaCustomEmojiReactionsAvailable: false,\n gopherAvailable: false,\n mediaProxyAvailable: false,\n suggestionsEnabled: false,\n suggestionsWeb: '',\n quotingAvailable: false,\n // Html stuff\n instanceSpecificPanelContent: '',\n tos: '',\n // Version Information\n backendVersion: '',\n frontendVersion: '',\n pollsAvailable: false,\n pollLimits: {\n max_options: 4,\n max_option_chars: 255,\n min_expiration: 60,\n max_expiration: 60 * 60 * 24\n }\n};\nvar loadAnnotations = function loadAnnotations(lang) {\n return __webpack_require__(\"./node_modules/@kazvmoe-infra/unicode-emoji-json/annotations lazy recursive ^\\\\.\\\\/.*\\\\.json$\")(\"./\".concat((0,_i18n_languages_js__WEBPACK_IMPORTED_MODULE_9__.langCodeToCldrName)(lang), \".json\")).then(function (k) {\n return k[\"default\"];\n });\n};\nvar injectAnnotations = function injectAnnotations(emoji, annotations) {\n var availableLangs = Object.keys(annotations);\n return _objectSpread(_objectSpread({}, emoji), {}, {\n annotations: availableLangs.reduce(function (acc, cur) {\n acc[cur] = annotations[cur][emoji.replacement];\n return acc;\n }, {})\n });\n};\nvar injectRegionalIndicators = function injectRegionalIndicators(groups) {\n var _groups$symbols;\n (_groups$symbols = groups.symbols).push.apply(_groups$symbols, (0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(REGIONAL_INDICATORS));\n return groups;\n};\nvar instance = {\n state: defaultState,\n mutations: {\n setInstanceOption: function setInstanceOption(state, _ref) {\n var name = _ref.name,\n value = _ref.value;\n if (typeof value !== 'undefined') {\n state[name] = value;\n }\n },\n setKnownDomains: function setKnownDomains(state, domains) {\n state.knownDomains = domains;\n },\n setUnicodeEmojiAnnotations: function setUnicodeEmojiAnnotations(state, _ref2) {\n var lang = _ref2.lang,\n annotations = _ref2.annotations;\n state.unicodeEmojiAnnotations[lang] = annotations;\n }\n },\n getters: {\n instanceDefaultConfig: function instanceDefaultConfig(state) {\n return _config_js__WEBPACK_IMPORTED_MODULE_8__.instanceDefaultProperties.map(function (key) {\n return [key, state[key]];\n }).reduce(function (acc, _ref3) {\n var _ref4 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(_ref3, 2),\n key = _ref4[0],\n value = _ref4[1];\n return _objectSpread(_objectSpread({}, acc), {}, (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__[\"default\"])({}, key, value));\n }, {});\n },\n groupedCustomEmojis: function groupedCustomEmojis(state) {\n var packsOf = function packsOf(emoji) {\n var packs = emoji.tags.filter(function (k) {\n return k.startsWith('pack:');\n }).map(function (k) {\n var packName = k.slice(5); // remove 'pack:' prefix\n return {\n id: \"custom-\".concat(packName),\n text: packName\n };\n });\n if (!packs.length) {\n return [{\n id: 'unpacked'\n }];\n } else {\n return packs;\n }\n };\n return state.customEmoji.reduce(function (res, emoji) {\n packsOf(emoji).forEach(function (_ref5) {\n var packId = _ref5.id,\n packName = _ref5.text;\n if (!res[packId]) {\n res[packId] = {\n id: packId,\n text: packName,\n image: emoji.imageUrl,\n emojis: []\n };\n }\n res[packId].emojis.push(emoji);\n });\n return res;\n }, {});\n },\n standardEmojiList: function standardEmojiList(state) {\n return SORTED_EMOJI_GROUP_IDS.map(function (groupId) {\n return (state.emoji[groupId] || []).map(function (k) {\n return injectAnnotations(k, state.unicodeEmojiAnnotations);\n });\n }).reduce(function (a, b) {\n return a.concat(b);\n }, []);\n },\n standardEmojiGroupList: function standardEmojiGroupList(state) {\n return SORTED_EMOJI_GROUP_IDS.map(function (groupId) {\n return {\n id: groupId,\n emojis: (state.emoji[groupId] || []).map(function (k) {\n return injectAnnotations(k, state.unicodeEmojiAnnotations);\n })\n };\n });\n },\n instanceDomain: function instanceDomain(state) {\n return new URL(state.server).hostname;\n },\n remoteInteractionLink: function remoteInteractionLink(state) {\n var server = state.server.endsWith('/') ? state.server.slice(0, -1) : state.server;\n var link = server + REMOTE_INTERACTION_URL;\n return function (_ref6) {\n var statusId = _ref6.statusId,\n nickname = _ref6.nickname;\n if (statusId) {\n return \"\".concat(link, \"?status_id=\").concat(statusId);\n } else {\n return \"\".concat(link, \"?nickname=\").concat(nickname);\n }\n };\n }\n },\n actions: {\n setInstanceOption: function setInstanceOption(_ref7, _ref8) {\n var commit = _ref7.commit,\n dispatch = _ref7.dispatch;\n var name = _ref8.name,\n value = _ref8.value;\n commit('setInstanceOption', {\n name: name,\n value: value\n });\n switch (name) {\n case 'name':\n dispatch('setPageTitle');\n break;\n case 'shoutAvailable':\n if (value) {\n dispatch('initializeSocket');\n }\n break;\n case 'theme':\n dispatch('setTheme', value);\n break;\n }\n },\n getStaticEmoji: function getStaticEmoji(_ref9) {\n return (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__[\"default\"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().mark(function _callee() {\n var commit, values, emoji;\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n commit = _ref9.commit;\n _context.prev = 1;\n _context.next = 4;\n return __webpack_require__.e(/*! import() | emoji */ \"emoji\").then(__webpack_require__.t.bind(__webpack_require__, /*! ../../static/emoji.json */ \"./static/emoji.json\", 19));\n case 4:\n values = _context.sent[\"default\"];\n emoji = Object.keys(values).reduce(function (res, groupId) {\n res[groupId] = values[groupId].map(function (e) {\n return {\n displayText: e.slug,\n imageUrl: false,\n replacement: e.emoji\n };\n });\n return res;\n }, {});\n commit('setInstanceOption', {\n name: 'emoji',\n value: injectRegionalIndicators(emoji)\n });\n _context.next = 13;\n break;\n case 9:\n _context.prev = 9;\n _context.t0 = _context[\"catch\"](1);\n console.warn(\"Can't load static emoji\");\n console.warn(_context.t0);\n case 13:\n case \"end\":\n return _context.stop();\n }\n }, _callee, null, [[1, 9]]);\n }))();\n },\n loadUnicodeEmojiData: function loadUnicodeEmojiData(_ref10, language) {\n var commit = _ref10.commit,\n state = _ref10.state;\n var langList = (0,_i18n_languages_js__WEBPACK_IMPORTED_MODULE_9__.ensureFinalFallback)(language);\n return Promise.all(langList.map( /*#__PURE__*/function () {\n var _ref11 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__[\"default\"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().mark(function _callee2(lang) {\n var annotations;\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().wrap(function _callee2$(_context2) {\n while (1) switch (_context2.prev = _context2.next) {\n case 0:\n if (state.unicodeEmojiAnnotations[lang]) {\n _context2.next = 11;\n break;\n }\n _context2.prev = 1;\n _context2.next = 4;\n return loadAnnotations(lang);\n case 4:\n annotations = _context2.sent;\n commit('setUnicodeEmojiAnnotations', {\n lang: lang,\n annotations: annotations\n });\n _context2.next = 11;\n break;\n case 8:\n _context2.prev = 8;\n _context2.t0 = _context2[\"catch\"](1);\n console.warn(\"Error loading unicode emoji annotations for \".concat(lang, \": \"), _context2.t0);\n // ignore\n case 11:\n case \"end\":\n return _context2.stop();\n }\n }, _callee2, null, [[1, 8]]);\n }));\n return function (_x) {\n return _ref11.apply(this, arguments);\n };\n }()));\n },\n getCustomEmoji: function getCustomEmoji(_ref12) {\n return (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__[\"default\"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().mark(function _callee3() {\n var commit, state, res, result, values, caseInsensitiveStrCmp, noPackLast, byPackThenByName, emoji;\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().wrap(function _callee3$(_context3) {\n while (1) switch (_context3.prev = _context3.next) {\n case 0:\n commit = _ref12.commit, state = _ref12.state;\n _context3.prev = 1;\n _context3.next = 4;\n return window.fetch('/api/pleroma/emoji.json');\n case 4:\n res = _context3.sent;\n if (!res.ok) {\n _context3.next = 17;\n break;\n }\n _context3.next = 8;\n return res.json();\n case 8:\n result = _context3.sent;\n values = Array.isArray(result) ? Object.assign.apply(Object, [{}].concat((0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(result))) : result;\n caseInsensitiveStrCmp = function caseInsensitiveStrCmp(a, b) {\n var la = a.toLowerCase();\n var lb = b.toLowerCase();\n return la > lb ? 1 : la < lb ? -1 : 0;\n };\n noPackLast = function noPackLast(a, b) {\n var aNull = a === '';\n var bNull = b === '';\n if (aNull === bNull) {\n return 0;\n } else if (aNull && !bNull) {\n return 1;\n } else {\n return -1;\n }\n };\n byPackThenByName = function byPackThenByName(a, b) {\n var packOf = function packOf(emoji) {\n return (emoji.tags.filter(function (k) {\n return k.startsWith('pack:');\n })[0] || '').slice(5);\n };\n var packOfA = packOf(a);\n var packOfB = packOf(b);\n return noPackLast(packOfA, packOfB) || caseInsensitiveStrCmp(packOfA, packOfB) || caseInsensitiveStrCmp(a.displayText, b.displayText);\n };\n emoji = Object.entries(values).map(function (_ref13) {\n var _ref14 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(_ref13, 2),\n key = _ref14[0],\n value = _ref14[1];\n var imageUrl = value.image_url;\n return {\n displayText: key,\n imageUrl: imageUrl ? state.server + imageUrl : value,\n tags: imageUrl ? value.tags.sort(function (a, b) {\n return a > b ? 1 : 0;\n }) : ['utf'],\n replacement: \":\".concat(key, \": \")\n };\n // Technically could use tags but those are kinda useless right now,\n // should have been \"pack\" field, that would be more useful\n }).sort(byPackThenByName);\n commit('setInstanceOption', {\n name: 'customEmoji',\n value: emoji\n });\n _context3.next = 18;\n break;\n case 17:\n throw res;\n case 18:\n _context3.next = 24;\n break;\n case 20:\n _context3.prev = 20;\n _context3.t0 = _context3[\"catch\"](1);\n console.warn(\"Can't load custom emojis\");\n console.warn(_context3.t0);\n case 24:\n case \"end\":\n return _context3.stop();\n }\n }, _callee3, null, [[1, 20]]);\n }))();\n },\n setTheme: function setTheme(_ref15, themeName) {\n var commit = _ref15.commit,\n rootState = _ref15.rootState;\n commit('setInstanceOption', {\n name: 'theme',\n value: themeName\n });\n (0,_services_style_setter_style_setter_js__WEBPACK_IMPORTED_MODULE_5__.getPreset)(themeName).then(function (themeData) {\n commit('setInstanceOption', {\n name: 'themeData',\n value: themeData\n });\n // No need to apply theme if there's user theme already\n var customTheme = rootState.config.customTheme;\n if (customTheme) return;\n\n // New theme presets don't have 'theme' property, they use 'source'\n var themeSource = themeData.source;\n if (!themeData.theme || themeSource && themeSource.themeEngineVersion === _services_theme_data_theme_data_service_js__WEBPACK_IMPORTED_MODULE_6__.CURRENT_VERSION) {\n (0,_services_style_setter_style_setter_js__WEBPACK_IMPORTED_MODULE_5__.applyTheme)(themeSource);\n } else {\n (0,_services_style_setter_style_setter_js__WEBPACK_IMPORTED_MODULE_5__.applyTheme)(themeData.theme);\n }\n });\n },\n fetchEmoji: function fetchEmoji(_ref16) {\n var dispatch = _ref16.dispatch,\n state = _ref16.state;\n if (!state.customEmojiFetched) {\n state.customEmojiFetched = true;\n dispatch('getCustomEmoji');\n }\n if (!state.emojiFetched) {\n state.emojiFetched = true;\n dispatch('getStaticEmoji');\n }\n },\n getKnownDomains: function getKnownDomains(_ref17) {\n return (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__[\"default\"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().mark(function _callee4() {\n var commit, rootState, result;\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default().wrap(function _callee4$(_context4) {\n while (1) switch (_context4.prev = _context4.next) {\n case 0:\n commit = _ref17.commit, rootState = _ref17.rootState;\n _context4.prev = 1;\n _context4.next = 4;\n return _services_api_api_service_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"].fetchKnownDomains({\n credentials: rootState.users.currentUser.credentials\n });\n case 4:\n result = _context4.sent;\n commit('setKnownDomains', result);\n _context4.next = 12;\n break;\n case 8:\n _context4.prev = 8;\n _context4.t0 = _context4[\"catch\"](1);\n console.warn(\"Can't load known domains\");\n console.warn(_context4.t0);\n case 12:\n case \"end\":\n return _context4.stop();\n }\n }, _callee4, null, [[1, 8]]);\n }))();\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (instance);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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Y0FBQStELFNBQUEsQ0FBQWhFLElBQUE7Y0FBQWdFLFNBQUEsQ0FBQTNELEVBQUEsR0FBQTJELFNBQUE7Y0FFakMxRCxPQUFPLENBQUNDLElBQUksQ0FBQywwQkFBMEIsQ0FBQztjQUN4Q0QsT0FBTyxDQUFDQyxJQUFJLENBQUF5RCxTQUFBLENBQUEzRCxFQUFFLENBQUM7WUFBQTtZQUFBO2NBQUEsT0FBQTJELFNBQUEsQ0FBQXhELElBQUE7VUFBQTtRQUFBLEdBQUFzRCxRQUFBO01BQUE7SUFFbkI7RUFDRjtBQUNGLENBQUM7QUFFRCxpRUFBZTVILFFBQVEiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL21vZHVsZXMvaW5zdGFuY2UuanM/NzBjZCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXRQcmVzZXQsIGFwcGx5VGhlbWUgfSBmcm9tICcuLi9zZXJ2aWNlcy9zdHlsZV9zZXR0ZXIvc3R5bGVfc2V0dGVyLmpzJ1xuaW1wb3J0IHsgQ1VSUkVOVF9WRVJTSU9OIH0gZnJvbSAnLi4vc2VydmljZXMvdGhlbWVfZGF0YS90aGVtZV9kYXRhLnNlcnZpY2UuanMnXG5pbXBvcnQgYXBpU2VydmljZSBmcm9tICcuLi9zZXJ2aWNlcy9hcGkvYXBpLnNlcnZpY2UuanMnXG5pbXBvcnQgeyBpbnN0YW5jZURlZmF1bHRQcm9wZXJ0aWVzIH0gZnJvbSAnLi9jb25maWcuanMnXG5pbXBvcnQgeyBsYW5nQ29kZVRvQ2xkck5hbWUsIGVuc3VyZUZpbmFsRmFsbGJhY2sgfSBmcm9tICcuLi9pMThuL2xhbmd1YWdlcy5qcydcblxuY29uc3QgU09SVEVEX0VNT0pJX0dST1VQX0lEUyA9IFtcbiAgJ3NtaWxleXMtYW5kLWVtb3Rpb24nLFxuICAncGVvcGxlLWFuZC1ib2R5JyxcbiAgJ2FuaW1hbHMtYW5kLW5hdHVyZScsXG4gICdmb29kLWFuZC1kcmluaycsXG4gICd0cmF2ZWwtYW5kLXBsYWNlcycsXG4gICdhY3Rpdml0aWVzJyxcbiAgJ29iamVjdHMnLFxuICAnc3ltYm9scycsXG4gICdmbGFncydcbl1cblxuY29uc3QgUkVHSU9OQUxfSU5ESUNBVE9SUyA9ICgoKSA9PiB7XG4gIGNvbnN0IHN0YXJ0ID0gMHgxRjFFNlxuICBjb25zdCBlbmQgPSAweDFGMUZGXG4gIGNvbnN0IEEgPSAnQScuY29kZVBvaW50QXQoMClcbiAgY29uc3QgcmVzID0gbmV3IEFycmF5KGVuZCAtIHN0YXJ0ICsgMSlcbiAgZm9yIChsZXQgaSA9IHN0YXJ0OyBpIDw9IGVuZDsgKytpKSB7XG4gICAgY29uc3QgbGV0dGVyID0gU3RyaW5nLmZyb21Db2RlUG9pbnQoQSArIGkgLSBzdGFydClcbiAgICByZXNbaSAtIHN0YXJ0XSA9IHtcbiAgICAgIHJlcGxhY2VtZW50OiBTdHJpbmcuZnJvbUNvZGVQb2ludChpKSxcbiAgICAgIGltYWdlVXJsOiBmYWxzZSxcbiAgICAgIGRpc3BsYXlUZXh0OiAncmVnaW9uYWxfaW5kaWNhdG9yXycgKyBsZXR0ZXIsXG4gICAgICBkaXNwbGF5VGV4dEkxOG46IHtcbiAgICAgICAga2V5OiAnZW1vamkucmVnaW9uYWxfaW5kaWNhdG9yJyxcbiAgICAgICAgYXJnczogeyBsZXR0ZXIgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICByZXR1cm4gcmVzXG59KSgpXG5cbmNvbnN0IFJFTU9URV9JTlRFUkFDVElPTl9VUkwgPSAnL21haW4vb3N0YXR1cydcblxuY29uc3QgZGVmYXVsdFN0YXRlID0ge1xuICAvLyBTdHVmZiBmcm9tIGFwaUNvbmZpZ1xuICBuYW1lOiAnUGxlcm9tYSBGRScsXG4gIHJlZ2lzdHJhdGlvbk9wZW46IHRydWUsXG4gIHNlcnZlcjogJ2h0dHA6Ly9sb2NhbGhvc3Q6NDA0MC8nLFxuICB0ZXh0bGltaXQ6IDUwMDAsXG4gIHRoZW1lRGF0YTogdW5kZWZpbmVkLFxuICB2YXBpZFB1YmxpY0tleTogdW5kZWZpbmVkLFxuXG4gIC8vIFN0dWZmIGZyb20gc3RhdGljL2NvbmZpZy5qc29uXG4gIGFsd2F5c1Nob3dTdWJqZWN0SW5wdXQ6IHRydWUsXG4gIGRlZmF1bHRBdmF0YXI6ICcvaW1hZ2VzL2F2aS5wbmcnLFxuICBkZWZhdWx0QmFubmVyOiAnL2ltYWdlcy9iYW5uZXIucG5nJyxcbiAgYmFja2dyb3VuZDogJy9zdGF0aWMvYXVyb3JhX2JvcmVhbGlzLmpwZycsXG4gIGNvbGxhcHNlTWVzc2FnZVdpdGhTdWJqZWN0OiBmYWxzZSxcbiAgZ3JlZW50ZXh0OiBmYWxzZSxcbiAgdXNlQXRJY29uOiBmYWxzZSxcbiAgbWVudGlvbkxpbmtEaXNwbGF5OiAnc2hvcnQnLFxuICBtZW50aW9uTGlua1Nob3dUb29sdGlwOiB0cnVlLFxuICBtZW50aW9uTGlua1Nob3dBdmF0YXI6IGZhbHNlLFxuICBtZW50aW9uTGlua0ZhZGVEb21haW46IHRydWUsXG4gIG1lbnRpb25MaW5rU2hvd1lvdXM6IGZhbHNlLFxuICBtZW50aW9uTGlua0JvbGRlbllvdTogdHJ1ZSxcbiAgaGlkZUZpbHRlcmVkU3RhdHVzZXM6IGZhbHNlLFxuICAvLyBiYWQgbmFtZTogYWN0dWFsbHkgaGlkZXMgcG9zdHMgb2YgbXV0ZWQgVVNFUlNcbiAgaGlkZU11dGVkUG9zdHM6IGZhbHNlLFxuICBoaWRlTXV0ZWRUaHJlYWRzOiB0cnVlLFxuICBoaWRlV29yZEZpbHRlcmVkUG9zdHM6IGZhbHNlLFxuICBoaWRlUG9zdFN0YXRzOiBmYWxzZSxcbiAgaGlkZUJvdEluZGljYXRpb246IGZhbHNlLFxuICBoaWRlU2l0ZW5hbWU6IGZhbHNlLFxuICBoaWRlVXNlclN0YXRzOiBmYWxzZSxcbiAgbXV0ZUJvdFN0YXR1c2VzOiBmYWxzZSxcbiAgbW9kYWxPblJlcGVhdDogZmFsc2UsXG4gIG1vZGFsT25VbmZvbGxvdzogZmFsc2UsXG4gIG1vZGFsT25CbG9jazogdHJ1ZSxcbiAgbW9kYWxPbk11dGU6IGZhbHNlLFxuICBtb2RhbE9uRGVsZXRlOiB0cnVlLFxuICBtb2RhbE9uTG9nb3V0OiB0cnVlLFxuICBtb2RhbE9uQXBwcm92ZUZvbGxvdzogZmFsc2UsXG4gIG1vZGFsT25EZW55Rm9sbG93OiBmYWxzZSxcbiAgbW9kYWxPblJlbW92ZVVzZXJGcm9tRm9sbG93ZXJzOiBmYWxzZSxcbiAgbG9naW5NZXRob2Q6ICdwYXNzd29yZCcsXG4gIGxvZ286ICcvc3RhdGljL2xvZ28uc3ZnJyxcbiAgbG9nb01hcmdpbjogJy4yZW0nLFxuICBsb2dvTWFzazogdHJ1ZSxcbiAgbG9nb0xlZnQ6IGZhbHNlLFxuICBkaXNhYmxlVXBkYXRlTm90aWZpY2F0aW9uOiBmYWxzZSxcbiAgbWluaW1hbFNjb3Blc01vZGU6IGZhbHNlLFxuICBuc2Z3Q2Vuc29ySW1hZ2U6IHVuZGVmaW5lZCxcbiAgcG9zdENvbnRlbnRUeXBlOiAndGV4dC9wbGFpbicsXG4gIHJlZGlyZWN0Um9vdExvZ2luOiAnL21haW4vZnJpZW5kcycsXG4gIHJlZGlyZWN0Um9vdE5vTG9naW46ICcvbWFpbi9hbGwnLFxuICBzY29wZUNvcHk6IHRydWUsXG4gIHNob3dGZWF0dXJlc1BhbmVsOiB0cnVlLFxuICBzaG93SW5zdGFuY2VTcGVjaWZpY1BhbmVsOiBmYWxzZSxcbiAgc2lkZWJhclJpZ2h0OiBmYWxzZSxcbiAgc3ViamVjdExpbmVCZWhhdmlvcjogJ2VtYWlsJyxcbiAgdGhlbWU6ICdwbGVyb21hLWRhcmsnLFxuICB2aXJ0dWFsU2Nyb2xsaW5nOiB0cnVlLFxuICBzZW5zaXRpdmVCeURlZmF1bHQ6IGZhbHNlLFxuICBjb252ZXJzYXRpb25EaXNwbGF5OiAnbGluZWFyJyxcbiAgY29udmVyc2F0aW9uVHJlZUFkdmFuY2VkOiBmYWxzZSxcbiAgY29udmVyc2F0aW9uT3RoZXJSZXBsaWVzQnV0dG9uOiAnYmVsb3cnLFxuICBjb252ZXJzYXRpb25UcmVlRmFkZUFuY2VzdG9yczogZmFsc2UsXG4gIG1heERlcHRoSW5UaHJlYWQ6IDYsXG4gIGF1dG9jb21wbGV0ZVNlbGVjdDogZmFsc2UsXG5cbiAgLy8gTmFzdHkgc3R1ZmZcbiAgY3VzdG9tRW1vamk6IFtdLFxuICBjdXN0b21FbW9qaUZldGNoZWQ6IGZhbHNlLFxuICBlbW9qaToge30sXG4gIGVtb2ppRmV0Y2hlZDogZmFsc2UsXG4gIHVuaWNvZGVFbW9qaUFubm90YXRpb25zOiB7fSxcbiAgcGxlcm9tYUJhY2tlbmQ6IHRydWUsXG4gIHBvc3RGb3JtYXRzOiBbXSxcbiAgcmVzdHJpY3RlZE5pY2tuYW1lczogW10sXG4gIHNhZmVETTogdHJ1ZSxcbiAga25vd25Eb21haW5zOiBbXSxcbiAgYmlydGhkYXlSZXF1aXJlZDogZmFsc2UsXG4gIGJpcnRoZGF5TWluQWdlOiAwLFxuXG4gIC8vIEZlYXR1cmUtc2V0LCBhcHBhcmVudGx5LCBub3QgZXZlcnl0aGluZyBoZXJlIGlzIHJlcG9ydGVkLi4uXG4gIHNob3V0QXZhaWxhYmxlOiBmYWxzZSxcbiAgcGxlcm9tYUNoYXRNZXNzYWdlc0F2YWlsYWJsZTogZmFsc2UsXG4gIHBsZXJvbWFDdXN0b21FbW9qaVJlYWN0aW9uc0F2YWlsYWJsZTogZmFsc2UsXG4gIGdvcGhlckF2YWlsYWJsZTogZmFsc2UsXG4gIG1lZGlhUHJveHlBdmFpbGFibGU6IGZhbHNlLFxuICBzdWdnZXN0aW9uc0VuYWJsZWQ6IGZhbHNlLFxuICBzdWdnZXN0aW9uc1dlYjogJycsXG4gIHF1b3RpbmdBdmFpbGFibGU6IGZhbHNlLFxuXG4gIC8vIEh0bWwgc3R1ZmZcbiAgaW5zdGFuY2VTcGVjaWZpY1BhbmVsQ29udGVudDogJycsXG4gIHRvczogJycsXG5cbiAgLy8gVmVyc2lvbiBJbmZvcm1hdGlvblxuICBiYWNrZW5kVmVyc2lvbjogJycsXG4gIGZyb250ZW5kVmVyc2lvbjogJycsXG5cbiAgcG9sbHNBdmFpbGFibGU6IGZhbHNlLFxuICBwb2xsTGltaXRzOiB7XG4gICAgbWF4X29wdGlvbnM6IDQsXG4gICAgbWF4X29wdGlvbl9jaGFyczogMjU1LFxuICAgIG1pbl9leHBpcmF0aW9uOiA2MCxcbiAgICBtYXhfZXhwaXJhdGlvbjogNjAgKiA2MCAqIDI0XG4gIH1cbn1cblxuY29uc3QgbG9hZEFubm90YXRpb25zID0gKGxhbmcpID0+IHtcbiAgcmV0dXJuIGltcG9ydChcbiAgICAvKiB3ZWJwYWNrQ2h1bmtOYW1lOiBcImVtb2ppLWFubm90YXRpb25zL1tyZXF1ZXN0XVwiICovXG4gICAgYEBrYXp2bW9lLWluZnJhL3VuaWNvZGUtZW1vamktanNvbi9hbm5vdGF0aW9ucy8ke2xhbmdDb2RlVG9DbGRyTmFtZShsYW5nKX0uanNvbmBcbiAgKVxuICAgIC50aGVuKGsgPT4gay5kZWZhdWx0KVxufVxuXG5jb25zdCBpbmplY3RBbm5vdGF0aW9ucyA9IChlbW9qaSwgYW5ub3RhdGlvbnMpID0+IHtcbiAgY29uc3QgYXZhaWxhYmxlTGFuZ3MgPSBPYmplY3Qua2V5cyhhbm5vdGF0aW9ucylcblxuICByZXR1cm4ge1xuICAgIC4uLmVtb2ppLFxuICAgIGFubm90YXRpb25zOiBhdmFpbGFibGVMYW5ncy5yZWR1Y2UoKGFjYywgY3VyKSA9PiB7XG4gICAgICBhY2NbY3VyXSA9IGFubm90YXRpb25zW2N1cl1bZW1vamkucmVwbGFjZW1lbnRdXG4gICAgICByZXR1cm4gYWNjXG4gICAgfSwge30pXG4gIH1cbn1cblxuY29uc3QgaW5qZWN0UmVnaW9uYWxJbmRpY2F0b3JzID0gZ3JvdXBzID0+IHtcbiAgZ3JvdXBzLnN5bWJvbHMucHVzaCguLi5SRUdJT05BTF9JTkRJQ0FUT1JTKVxuICByZXR1cm4gZ3JvdXBzXG59XG5cbmNvbnN0IGluc3RhbmNlID0ge1xuICBzdGF0ZTogZGVmYXVsdFN0YXRlLFxuICBtdXRhdGlvbnM6IHtcbiAgICBzZXRJbnN0YW5jZU9wdGlvbiAoc3RhdGUsIHsgbmFtZSwgdmFsdWUgfSkge1xuICAgICAgaWYgKHR5cGVvZiB2YWx1ZSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgc3RhdGVbbmFtZV0gPSB2YWx1ZVxuICAgICAgfVxuICAgIH0sXG4gICAgc2V0S25vd25Eb21haW5zIChzdGF0ZSwgZG9tYWlucykge1xuICAgICAgc3RhdGUua25vd25Eb21haW5zID0gZG9tYWluc1xuICAgIH0sXG4gICAgc2V0VW5pY29kZUVtb2ppQW5ub3RhdGlvbnMgKHN0YXRlLCB7IGxhbmcsIGFubm90YXRpb25zIH0pIHtcbiAgICAgIHN0YXRlLnVuaWNvZGVFbW9qaUFubm90YXRpb25zW2xhbmddID0gYW5ub3RhdGlvbnNcbiAgICB9XG4gIH0sXG4gIGdldHRlcnM6IHtcbiAgICBpbnN0YW5jZURlZmF1bHRDb25maWcgKHN0YXRlKSB7XG4gICAgICByZXR1cm4gaW5zdGFuY2VEZWZhdWx0UHJvcGVydGllc1xuICAgICAgICAubWFwKGtleSA9PiBba2V5LCBzdGF0ZVtrZXldXSlcbiAgICAgICAgLnJlZHVjZSgoYWNjLCBba2V5LCB2YWx1ZV0pID0+ICh7IC4uLmFjYywgW2tleV06IHZhbHVlIH0pLCB7fSlcbiAgICB9LFxuICAgIGdyb3VwZWRDdXN0b21FbW9qaXMgKHN0YXRlKSB7XG4gICAgICBjb25zdCBwYWNrc09mID0gZW1vamkgPT4ge1xuICAgICAgICBjb25zdCBwYWNrcyA9IGVtb2ppLnRhZ3NcbiAgICAgICAgICAuZmlsdGVyKGsgPT4gay5zdGFydHNXaXRoKCdwYWNrOicpKVxuICAgICAgICAgIC5tYXAoayA9PiB7XG4gICAgICAgICAgICBjb25zdCBwYWNrTmFtZSA9IGsuc2xpY2UoNSkgLy8gcmVtb3ZlICdwYWNrOicgcHJlZml4XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICBpZDogYGN1c3RvbS0ke3BhY2tOYW1lfWAsXG4gICAgICAgICAgICAgIHRleHQ6IHBhY2tOYW1lXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSlcblxuICAgICAgICBpZiAoIXBhY2tzLmxlbmd0aCkge1xuICAgICAgICAgIHJldHVybiBbe1xuICAgICAgICAgICAgaWQ6ICd1bnBhY2tlZCdcbiAgICAgICAgICB9XVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiBwYWNrc1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBzdGF0ZS5jdXN0b21FbW9qaVxuICAgICAgICAucmVkdWNlKChyZXMsIGVtb2ppKSA9PiB7XG4gICAgICAgICAgcGFja3NPZihlbW9qaSkuZm9yRWFjaCgoeyBpZDogcGFja0lkLCB0ZXh0OiBwYWNrTmFtZSB9KSA9PiB7XG4gICAgICAgICAgICBpZiAoIXJlc1twYWNrSWRdKSB7XG4gICAgICAgICAgICAgIHJlc1twYWNrSWRdID0gKHtcbiAgICAgICAgICAgICAgICBpZDogcGFja0lkLFxuICAgICAgICAgICAgICAgIHRleHQ6IHBhY2tOYW1lLFxuICAgICAgICAgICAgICAgIGltYWdlOiBlbW9qaS5pbWFnZVVybCxcbiAgICAgICAgICAgICAgICBlbW9qaXM6IFtdXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXNbcGFja0lkXS5lbW9qaXMucHVzaChlbW9qaSlcbiAgICAgICAgICB9KVxuICAgICAgICAgIHJldHVybiByZXNcbiAgICAgICAgfSwge30pXG4gICAgfSxcbiAgICBzdGFuZGFyZEVtb2ppTGlzdCAoc3RhdGUpIHtcbiAgICAgIHJldHVybiBTT1JURURfRU1PSklfR1JPVVBfSURTXG4gICAgICAgIC5tYXAoZ3JvdXBJZCA9PiAoc3RhdGUuZW1vamlbZ3JvdXBJZF0gfHwgW10pLm1hcChrID0+IGluamVjdEFubm90YXRpb25zKGssIHN0YXRlLnVuaWNvZGVFbW9qaUFubm90YXRpb25zKSkpXG4gICAgICAgIC5yZWR1Y2UoKGEsIGIpID0+IGEuY29uY2F0KGIpLCBbXSlcbiAgICB9LFxuICAgIHN0YW5kYXJkRW1vamlHcm91cExpc3QgKHN0YXRlKSB7XG4gICAgICByZXR1cm4gU09SVEVEX0VNT0pJX0dST1VQX0lEUy5tYXAoZ3JvdXBJZCA9PiAoe1xuICAgICAgICBpZDogZ3JvdXBJZCxcbiAgICAgICAgZW1vamlzOiAoc3RhdGUuZW1vamlbZ3JvdXBJZF0gfHwgW10pLm1hcChrID0+IGluamVjdEFubm90YXRpb25zKGssIHN0YXRlLnVuaWNvZGVFbW9qaUFubm90YXRpb25zKSlcbiAgICAgIH0pKVxuICAgIH0sXG4gICAgaW5zdGFuY2VEb21haW4gKHN0YXRlKSB7XG4gICAgICByZXR1cm4gbmV3IFVSTChzdGF0ZS5zZXJ2ZXIpLmhvc3RuYW1lXG4gICAgfSxcbiAgICByZW1vdGVJbnRlcmFjdGlvbkxpbmsgKHN0YXRlKSB7XG4gICAgICBjb25zdCBzZXJ2ZXIgPSBzdGF0ZS5zZXJ2ZXIuZW5kc1dpdGgoJy8nKSA/IHN0YXRlLnNlcnZlci5zbGljZSgwLCAtMSkgOiBzdGF0ZS5zZXJ2ZXJcbiAgICAgIGNvbnN0IGxpbmsgPSBzZXJ2ZXIgKyBSRU1PVEVfSU5URVJBQ1RJT05fVVJMXG5cbiAgICAgIHJldHVybiAoeyBzdGF0dXNJZCwgbmlja25hbWUgfSkgPT4ge1xuICAgICAgICBpZiAoc3RhdHVzSWQpIHtcbiAgICAgICAgICByZXR1cm4gYCR7bGlua30/c3RhdHVzX2lkPSR7c3RhdHVzSWR9YFxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiBgJHtsaW5rfT9uaWNrbmFtZT0ke25pY2tuYW1lfWBcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfSxcbiAgYWN0aW9uczoge1xuICAgIHNldEluc3RhbmNlT3B0aW9uICh7IGNvbW1pdCwgZGlzcGF0Y2ggfSwgeyBuYW1lLCB2YWx1ZSB9KSB7XG4gICAgICBjb21taXQoJ3NldEluc3RhbmNlT3B0aW9uJywgeyBuYW1lLCB2YWx1ZSB9KVxuICAgICAgc3dpdGNoIChuYW1lKSB7XG4gICAgICAgIGNhc2UgJ25hbWUnOlxuICAgICAgICAgIGRpc3BhdGNoKCdzZXRQYWdlVGl0bGUnKVxuICAgICAgICAgIGJyZWFrXG4gICAgICAgIGNhc2UgJ3Nob3V0QXZhaWxhYmxlJzpcbiAgICAgICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgICAgIGRpc3BhdGNoKCdpbml0aWFsaXplU29ja2V0JylcbiAgICAgICAgICB9XG4gICAgICAgICAgYnJlYWtcbiAgICAgICAgY2FzZSAndGhlbWUnOlxuICAgICAgICAgIGRpc3BhdGNoKCdzZXRUaGVtZScsIHZhbHVlKVxuICAgICAgICAgIGJyZWFrXG4gICAgICB9XG4gICAgfSxcbiAgICBhc3luYyBnZXRTdGF0aWNFbW9qaSAoeyBjb21taXQgfSkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgdmFsdWVzID0gKGF3YWl0IGltcG9ydCgvKiB3ZWJwYWNrQ2h1bmtOYW1lOiAnZW1vamknICovICcuLi8uLi9zdGF0aWMvZW1vamkuanNvbicpKS5kZWZhdWx0XG5cbiAgICAgICAgY29uc3QgZW1vamkgPSBPYmplY3Qua2V5cyh2YWx1ZXMpLnJlZHVjZSgocmVzLCBncm91cElkKSA9PiB7XG4gICAgICAgICAgcmVzW2dyb3VwSWRdID0gdmFsdWVzW2dyb3VwSWRdLm1hcChlID0+ICh7XG4gICAgICAgICAgICBkaXNwbGF5VGV4dDogZS5zbHVnLFxuICAgICAgICAgICAgaW1hZ2VVcmw6IGZhbHNlLFxuICAgICAgICAgICAgcmVwbGFjZW1lbnQ6IGUuZW1vamlcbiAgICAgICAgICB9KSlcbiAgICAgICAgICByZXR1cm4gcmVzXG4gICAgICAgIH0sIHt9KVxuICAgICAgICBjb21taXQoJ3NldEluc3RhbmNlT3B0aW9uJywgeyBuYW1lOiAnZW1vamknLCB2YWx1ZTogaW5qZWN0UmVnaW9uYWxJbmRpY2F0b3JzKGVtb2ppKSB9KVxuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBjb25zb2xlLndhcm4oXCJDYW4ndCBsb2FkIHN0YXRpYyBlbW9qaVwiKVxuICAgICAgICBjb25zb2xlLndhcm4oZSlcbiAgICAgIH1cbiAgICB9LFxuXG4gICAgbG9hZFVuaWNvZGVFbW9qaURhdGEgKHsgY29tbWl0LCBzdGF0ZSB9LCBsYW5ndWFnZSkge1xuICAgICAgY29uc3QgbGFuZ0xpc3QgPSBlbnN1cmVGaW5hbEZhbGxiYWNrKGxhbmd1YWdlKVxuXG4gICAgICByZXR1cm4gUHJvbWlzZS5hbGwoXG4gICAgICAgIGxhbmdMaXN0XG4gICAgICAgICAgLm1hcChhc3luYyBsYW5nID0+IHtcbiAgICAgICAgICAgIGlmICghc3RhdGUudW5pY29kZUVtb2ppQW5ub3RhdGlvbnNbbGFuZ10pIHtcbiAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBjb25zdCBhbm5vdGF0aW9ucyA9IGF3YWl0IGxvYWRBbm5vdGF0aW9ucyhsYW5nKVxuICAgICAgICAgICAgICAgIGNvbW1pdCgnc2V0VW5pY29kZUVtb2ppQW5ub3RhdGlvbnMnLCB7IGxhbmcsIGFubm90YXRpb25zIH0pXG4gICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLndhcm4oYEVycm9yIGxvYWRpbmcgdW5pY29kZSBlbW9qaSBhbm5vdGF0aW9ucyBmb3IgJHtsYW5nfTogYCwgZSlcbiAgICAgICAgICAgICAgICAvLyBpZ25vcmVcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pKVxuICAgIH0sXG5cbiAgICBhc3luYyBnZXRDdXN0b21FbW9qaSAoeyBjb21taXQsIHN0YXRlIH0pIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IHdpbmRvdy5mZXRjaCgnL2FwaS9wbGVyb21hL2Vtb2ppLmpzb24nKVxuICAgICAgICBpZiAocmVzLm9rKSB7XG4gICAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgcmVzLmpzb24oKVxuICAgICAgICAgIGNvbnN0IHZhbHVlcyA9IEFycmF5LmlzQXJyYXkocmVzdWx0KSA/IE9iamVjdC5hc3NpZ24oe30sIC4uLnJlc3VsdCkgOiByZXN1bHRcbiAgICAgICAgICBjb25zdCBjYXNlSW5zZW5zaXRpdmVTdHJDbXAgPSAoYSwgYikgPT4ge1xuICAgICAgICAgICAgY29uc3QgbGEgPSBhLnRvTG93ZXJDYXNlKClcbiAgICAgICAgICAgIGNvbnN0IGxiID0gYi50b0xvd2VyQ2FzZSgpXG4gICAgICAgICAgICByZXR1cm4gbGEgPiBsYiA/IDEgOiAobGEgPCBsYiA/IC0xIDogMClcbiAgICAgICAgICB9XG4gICAgICAgICAgY29uc3Qgbm9QYWNrTGFzdCA9IChhLCBiKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBhTnVsbCA9IGEgPT09ICcnXG4gICAgICAgICAgICBjb25zdCBiTnVsbCA9IGIgPT09ICcnXG4gICAgICAgICAgICBpZiAoYU51bGwgPT09IGJOdWxsKSB7XG4gICAgICAgICAgICAgIHJldHVybiAwXG4gICAgICAgICAgICB9IGVsc2UgaWYgKGFOdWxsICYmICFiTnVsbCkge1xuICAgICAgICAgICAgICByZXR1cm4gMVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgcmV0dXJuIC0xXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnN0IGJ5UGFja1RoZW5CeU5hbWUgPSAoYSwgYikgPT4ge1xuICAgICAgICAgICAgY29uc3QgcGFja09mID0gZW1vamkgPT4gKGVtb2ppLnRhZ3MuZmlsdGVyKGsgPT4gay5zdGFydHNXaXRoKCdwYWNrOicpKVswXSB8fCAnJykuc2xpY2UoNSlcbiAgICAgICAgICAgIGNvbnN0IHBhY2tPZkEgPSBwYWNrT2YoYSlcbiAgICAgICAgICAgIGNvbnN0IHBhY2tPZkIgPSBwYWNrT2YoYilcbiAgICAgICAgICAgIHJldHVybiBub1BhY2tMYXN0KHBhY2tPZkEsIHBhY2tPZkIpIHx8IGNhc2VJbnNlbnNpdGl2ZVN0ckNtcChwYWNrT2ZBLCBwYWNrT2ZCKSB8fCBjYXNlSW5zZW5zaXRpdmVTdHJDbXAoYS5kaXNwbGF5VGV4dCwgYi5kaXNwbGF5VGV4dClcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjb25zdCBlbW9qaSA9IE9iamVjdC5lbnRyaWVzKHZhbHVlcykubWFwKChba2V5LCB2YWx1ZV0pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGltYWdlVXJsID0gdmFsdWUuaW1hZ2VfdXJsXG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICBkaXNwbGF5VGV4dDoga2V5LFxuICAgICAgICAgICAgICBpbWFnZVVybDogaW1hZ2VVcmwgPyBzdGF0ZS5zZXJ2ZXIgKyBpbWFnZVVybCA6IHZhbHVlLFxuICAgICAgICAgICAgICB0YWdzOiBpbWFnZVVybCA/IHZhbHVlLnRhZ3Muc29ydCgoYSwgYikgPT4gYSA+IGIgPyAxIDogMCkgOiBbJ3V0ZiddLFxuICAgICAgICAgICAgICByZXBsYWNlbWVudDogYDoke2tleX06IGBcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIFRlY2huaWNhbGx5IGNvdWxkIHVzZSB0YWdzIGJ1dCB0aG9zZSBhcmUga2luZGEgdXNlbGVzcyByaWdodCBub3csXG4gICAgICAgICAgICAvLyBzaG91bGQgaGF2ZSBiZWVuIFwicGFja1wiIGZpZWxkLCB0aGF0IHdvdWxkIGJlIG1vcmUgdXNlZnVsXG4gICAgICAgICAgfSkuc29ydChieVBhY2tUaGVuQnlOYW1lKVxuICAgICAgICAgIGNvbW1pdCgnc2V0SW5zdGFuY2VPcHRpb24nLCB7IG5hbWU6ICdjdXN0b21FbW9qaScsIHZhbHVlOiBlbW9qaSB9KVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRocm93IChyZXMpXG4gICAgICAgIH1cbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgY29uc29sZS53YXJuKFwiQ2FuJ3QgbG9hZCBjdXN0b20gZW1vamlzXCIpXG4gICAgICAgIGNvbnNvbGUud2FybihlKVxuICAgICAgfVxuICAgIH0sXG5cbiAgICBzZXRUaGVtZSAoeyBjb21taXQsIHJvb3RTdGF0ZSB9LCB0aGVtZU5hbWUpIHtcbiAgICAgIGNvbW1pdCgnc2V0SW5zdGFuY2VPcHRpb24nLCB7IG5hbWU6ICd0aGVtZScsIHZhbHVlOiB0aGVtZU5hbWUgfSlcbiAgICAgIGdldFByZXNldCh0aGVtZU5hbWUpXG4gICAgICAgIC50aGVuKHRoZW1lRGF0YSA9PiB7XG4gICAgICAgICAgY29tbWl0KCdzZXRJbnN0YW5jZU9wdGlvbicsIHsgbmFtZTogJ3RoZW1lRGF0YScsIHZhbHVlOiB0aGVtZURhdGEgfSlcbiAgICAgICAgICAvLyBObyBuZWVkIHRvIGFwcGx5IHRoZW1lIGlmIHRoZXJlJ3MgdXNlciB0aGVtZSBhbHJlYWR5XG4gICAgICAgICAgY29uc3QgeyBjdXN0b21UaGVtZSB9ID0gcm9vdFN0YXRlLmNvbmZpZ1xuICAgICAgICAgIGlmIChjdXN0b21UaGVtZSkgcmV0dXJuXG5cbiAgICAgICAgICAvLyBOZXcgdGhlbWUgcHJlc2V0cyBkb24ndCBoYXZlICd0aGVtZScgcHJvcGVydHksIHRoZXkgdXNlICdzb3VyY2UnXG4gICAgICAgICAgY29uc3QgdGhlbWVTb3VyY2UgPSB0aGVtZURhdGEuc291cmNlXG4gICAgICAgICAgaWYgKCF0aGVtZURhdGEudGhlbWUgfHwgKHRoZW1lU291cmNlICYmIHRoZW1lU291cmNlLnRoZW1lRW5naW5lVmVyc2lvbiA9PT0gQ1VSUkVOVF9WRVJTSU9OKSkge1xuICAgICAgICAgICAgYXBwbHlUaGVtZSh0aGVtZVNvdXJjZSlcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgYXBwbHlUaGVtZSh0aGVtZURhdGEudGhlbWUpXG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgIH0sXG4gICAgZmV0Y2hFbW9qaSAoeyBkaXNwYXRjaCwgc3RhdGUgfSkge1xuICAgICAgaWYgKCFzdGF0ZS5jdXN0b21FbW9qaUZldGNoZWQpIHtcbiAgICAgICAgc3RhdGUuY3VzdG9tRW1vamlGZXRjaGVkID0gdHJ1ZVxuICAgICAgICBkaXNwYXRjaCgnZ2V0Q3VzdG9tRW1vamknKVxuICAgICAgfVxuICAgICAgaWYgKCFzdGF0ZS5lbW9qaUZldGNoZWQpIHtcbiAgICAgICAgc3RhdGUuZW1vamlGZXRjaGVkID0gdHJ1ZVxuICAgICAgICBkaXNwYXRjaCgnZ2V0U3RhdGljRW1vamknKVxuICAgICAgfVxuICAgIH0sXG5cbiAgICBhc3luYyBnZXRLbm93bkRvbWFpbnMgKHsgY29tbWl0LCByb290U3RhdGUgfSkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgYXBpU2VydmljZS5mZXRjaEtub3duRG9tYWlucyh7XG4gICAgICAgICAgY3JlZGVudGlhbHM6IHJvb3RTdGF0ZS51c2Vycy5jdXJyZW50VXNlci5jcmVkZW50aWFsc1xuICAgICAgICB9KVxuICAgICAgICBjb21taXQoJ3NldEtub3duRG9tYWlucycsIHJlc3VsdClcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgY29uc29sZS53YXJuKFwiQ2FuJ3QgbG9hZCBrbm93biBkb21haW5zXCIpXG4gICAgICAgIGNvbnNvbGUud2FybihlKVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBpbnN0YW5jZVxuIl0sIm5hbWVzIjpbImdldFByZXNldCIsImFwcGx5VGhlbWUiLCJDVVJSRU5UX1ZFUlNJT04iLCJhcGlTZXJ2aWNlIiwiaW5zdGFuY2VEZWZhdWx0UHJvcGVydGllcyIsImxhbmdDb2RlVG9DbGRyTmFtZSIsImVuc3VyZUZpbmFsRmFsbGJhY2siLCJTT1JURURfRU1PSklfR1JPVVBfSURTIiwiUkVHSU9OQUxfSU5ESUNBVE9SUyIsInN0YXJ0IiwiZW5kIiwiQSIsImNvZGVQb2ludEF0IiwicmVzIiwiQXJyYXkiLCJpIiwibGV0dGVyIiwiU3RyaW5nIiwiZnJvbUNvZGVQb2ludCIsInJlcGxhY2VtZW50IiwiaW1hZ2VVcmwiLCJkaXNwbGF5VGV4dCIsImRpc3BsYXlUZXh0STE4biIsImtleSIsImFyZ3MiLCJSRU1PVEVfSU5URVJBQ1RJT05fVVJMIiwiZGVmYXVsdFN0YXRlIiwibmFtZSIsInJlZ2lzdHJhdGlvbk9wZW4iLCJzZXJ2ZXIiLCJ0ZXh0bGltaXQiLCJ0aGVtZURhdGEiLCJ1bmRlZmluZWQiLCJ2YXBpZFB1YmxpY0tleSIsImFsd2F5c1Nob3dTdWJqZWN0SW5wdXQiLCJkZWZhdWx0QXZhdGFyIiwiZGVmYXVsdEJhbm5lciIsImJhY2tncm91bmQiLCJjb2xsYXBzZU1lc3NhZ2VXaXRoU3ViamVjdCIsImdyZWVudGV4dCIsInVzZUF0SWNvbiIsIm1lbnRpb25MaW5rRGlzcGxheSIsIm1lbnRpb25MaW5rU2hvd1Rvb2x0aXAiLCJtZW50aW9uTGlua1Nob3dBdmF0YXIiLCJtZW50aW9uTGlua0ZhZGVEb21haW4iLCJtZW50aW9uTGlua1Nob3dZb3VzIiwibWVudGlvbkxpbmtCb2xkZW5Zb3UiLCJoaWRlRmlsdGVyZWRTdGF0dXNlcyIsImhpZGVNdXRlZFBvc3RzIiwiaGlkZU11dGVkVGhyZWFkcyIsImhpZGVXb3JkRmlsdGVyZWRQb3N0cyIsImhpZGVQb3N0U3RhdHMiLCJoaWRlQm90SW5kaWNhdGlvbiIsImhpZGVTaXRlbmFtZSIsImhpZGVVc2VyU3RhdHMiLCJtdXRlQm90U3RhdHVzZXMiLCJtb2RhbE9uUmVwZWF0IiwibW9kYWxPblVuZm9sbG93IiwibW9kYWxPbkJsb2NrIiwibW9kYWxPbk11dGUiLCJtb2RhbE9uRGVsZXRlIiwibW9kYWxPbkxvZ291dCIsIm1vZGFsT25BcHByb3ZlRm9sbG93IiwibW9kYWxPbkRlbnlGb2xsb3ciLCJtb2RhbE9uUmVtb3ZlVXNlckZyb21Gb2xsb3dlcnMiLCJsb2dpbk1ldGhvZCIsImxvZ28iLCJsb2dvTWFyZ2luIiwibG9nb01hc2siLCJsb2dvTGVmdCIsImRpc2FibGVVcGRhdGVOb3RpZmljYXRpb24iLCJtaW5pbWFsU2NvcGVzTW9kZSIsIm5zZndDZW5zb3JJbWFnZSIsInBvc3RDb250ZW50VHlwZSIsInJlZGlyZWN0Um9vdExvZ2luIiwicmVkaXJlY3RSb290Tm9Mb2dpbiIsInNjb3BlQ29weSIsInNob3dGZWF0dXJlc1BhbmVsIiwic2hvd0luc3RhbmNlU3BlY2lmaWNQYW5lbCIsInNpZGViYXJSaWdodCIsInN1YmplY3RMaW5lQmVoYXZpb3IiLCJ0aGVtZSIsInZpcnR1YWxTY3JvbGxpbmciLCJzZW5zaXRpdmVCeURlZmF1bHQiLCJjb252ZXJzYXRpb25EaXNwbGF5IiwiY29udmVyc2F0aW9uVHJlZUFkdmFuY2VkIiwiY29udmVyc2F0aW9uT3RoZXJSZXBsaWVzQnV0dG9uIiwiY29udmVyc2F0aW9uVHJlZUZhZGVBbmNlc3RvcnMiLCJtYXhEZXB0aEluVGhyZWFkIiwiYXV0b2NvbXBsZXRlU2VsZWN0IiwiY3VzdG9tRW1vamkiLCJjdXN0b21FbW9qaUZldGNoZWQiLCJlbW9qaSIsImVtb2ppRmV0Y2hlZCIsInVuaWNvZGVFbW9qaUFubm90YXRpb25zIiwicGxlcm9tYUJhY2tlbmQiLCJwb3N0Rm9ybWF0cyIsInJlc3RyaWN0ZWROaWNrbmFtZXMiLCJzYWZlRE0iLCJrbm93bkRvbWFpbnMiLCJiaXJ0aGRheVJlcXVpcmVkIiwiYmlydGhkYXlNaW5BZ2UiLCJzaG91dEF2YWlsYWJsZSIsInBsZXJvbWFDaGF0TWVzc2FnZXNBdmFpbGFibGUiLCJwbGVyb21hQ3VzdG9tRW1vamlSZWFjdGlvbnNBdmFpbGFibGUiLCJnb3BoZXJBdmFpbGFibGUiLCJtZWRpYVByb3h5QXZhaWxhYmxlIiwic3VnZ2VzdGlvbnNFbmFibGVkIiwic3VnZ2VzdGlvbnNXZWIiLCJxdW90aW5nQXZhaWxhYmxlIiwiaW5zdGFuY2VTcGVjaWZpY1BhbmVsQ29udGVudCIsInRvcyIsImJhY2tlbmRWZXJzaW9uIiwiZnJvbnRlbmRWZXJzaW9uIiwicG9sbHNBdmFpbGFibGUiLCJwb2xsTGltaXRzIiwibWF4X29wdGlvbnMiLCJtYXhfb3B0aW9uX2NoYXJzIiwibWluX2V4cGlyYXRpb24iLCJtYXhfZXhwaXJhdGlvbiIsImxvYWRBbm5vdGF0aW9ucyIsImxhbmciLCJjb25jYXQiLCJ0aGVuIiwiayIsImluamVjdEFubm90YXRpb25zIiwiYW5ub3RhdGlvbnMiLCJhdmFpbGFibGVMYW5ncyIsIk9iamVjdCIsImtleXMiLCJfb2JqZWN0U3ByZWFkIiwicmVkdWNlIiwiYWNjIiwiY3VyIiwiaW5qZWN0UmVnaW9uYWxJbmRpY2F0b3JzIiwiZ3JvdXBzIiwiX2dyb3VwcyRzeW1ib2xzIiwic3ltYm9scyIsInB1c2giLCJhcHBseSIsIl90b0NvbnN1bWFibGVBcnJheSIsImluc3RhbmNlIiwic3RhdGUiLCJtdXRhdGlvbnMiLCJzZXRJbnN0YW5jZU9wdGlvbiIsIl9yZWYiLCJ2YWx1ZSIsInNldEtub3duRG9tYWlucyIsImRvbWFpbnMiLCJzZXRVbmljb2RlRW1vamlBbm5vdGF0aW9ucyIsIl9yZWYyIiwiZ2V0dGVycyIsImluc3RhbmNlRGVmYXVsdENvbmZpZyIsIm1hcCIsIl9yZWYzIiwiX3JlZjQiLCJfc2xpY2VkVG9BcnJheSIsIl9kZWZpbmVQcm9wZXJ0eSIsImdyb3VwZWRDdXN0b21FbW9qaXMiLCJwYWNrc09mIiwicGFja3MiLCJ0YWdzIiwiZmlsdGVyIiwic3RhcnRzV2l0aCIsInBhY2tOYW1lIiwic2xpY2UiLCJpZCIsInRleHQiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX3JlZjUiLCJwYWNrSWQiLCJpbWFnZSIsImVtb2ppcyIsInN0YW5kYXJkRW1vamlMaXN0IiwiZ3JvdXBJZCIsImEiLCJiIiwic3RhbmRhcmRFbW9qaUdyb3VwTGlzdCIsImluc3RhbmNlRG9tYWluIiwiVVJMIiwiaG9zdG5hbWUiLCJyZW1vdGVJbnRlcmFjdGlvbkxpbmsiLCJlbmRzV2l0aCIsImxpbmsiLCJfcmVmNiIsInN0YXR1c0lkIiwibmlja25hbWUiLCJhY3Rpb25zIiwiX3JlZjciLCJfcmVmOCIsImNvbW1pdCIsImRpc3BhdGNoIiwiZ2V0U3RhdGljRW1vamkiLCJfcmVmOSIsIl9hc3luY1RvR2VuZXJhdG9yIiwiX3JlZ2VuZXJhdG9yUnVudGltZSIsIm1hcmsiLCJfY2FsbGVlIiwidmFsdWVzIiwid3JhcCIsIl9jYWxsZWUkIiwiX2NvbnRleHQiLCJwcmV2IiwibmV4dCIsInNlbnQiLCJlIiwic2x1ZyIsInQwIiwiY29uc29sZSIsIndhcm4iLCJzdG9wIiwibG9hZFVuaWNvZGVFbW9qaURhdGEiLCJfcmVmMTAiLCJsYW5ndWFnZSIsImxhbmdMaXN0IiwiUHJvbWlzZSIsImFsbCIsIl9yZWYxMSIsIl9jYWxsZWUyIiwiX2NhbGxlZTIkIiwiX2NvbnRleHQyIiwiX3giLCJhcmd1bWVudHMiLCJnZXRDdXN0b21FbW9qaSIsIl9yZWYxMiIsIl9jYWxsZWUzIiwicmVzdWx0IiwiY2FzZUluc2Vuc2l0aXZlU3RyQ21wIiwibm9QYWNrTGFzdCIsImJ5UGFja1RoZW5CeU5hbWUiLCJfY2FsbGVlMyQiLCJfY29udGV4dDMiLCJ3aW5kb3ciLCJmZXRjaCIsIm9rIiwianNvbiIsImlzQXJyYXkiLCJhc3NpZ24iLCJsYSIsInRvTG93ZXJDYXNlIiwibGIiLCJhTnVsbCIsImJOdWxsIiwicGFja09mIiwicGFja09mQSIsInBhY2tPZkIiLCJlbnRyaWVzIiwiX3JlZjEzIiwiX3JlZjE0IiwiaW1hZ2VfdXJsIiwic29ydCIsInNldFRoZW1lIiwiX3JlZjE1IiwidGhlbWVOYW1lIiwicm9vdFN0YXRlIiwiY3VzdG9tVGhlbWUiLCJjb25maWciLCJ0aGVtZVNvdXJjZSIsInNvdXJjZSIsInRoZW1lRW5naW5lVmVyc2lvbiIsImZldGNoRW1vamkiLCJfcmVmMTYiLCJnZXRLbm93bkRvbWFpbnMiLCJfcmVmMTciLCJfY2FsbGVlNCIsIl9jYWxsZWU0JCIsIl9jb250ZXh0NCIsImZldGNoS25vd25Eb21haW5zIiwiY3JlZGVudGlhbHMiLCJ1c2VycyIsImN1cnJlbnRVc2VyIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/modules/instance.js\n");
/***/ }),
/***/ "./src/modules/interface.js":
/*!**********************************!*\
!*** ./src/modules/interface.js ***!
\**********************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\nvar defaultState = {\n settingsModalState: 'hidden',\n settingsModalLoadedUser: false,\n settingsModalLoadedAdmin: false,\n settingsModalTargetTab: null,\n settingsModalMode: 'user',\n settings: {\n currentSaveStateNotice: null,\n noticeClearTimeout: null,\n notificationPermission: null\n },\n browserSupport: {\n cssFilter: window.CSS && window.CSS.supports && (window.CSS.supports('filter', 'drop-shadow(0 0)') || window.CSS.supports('-webkit-filter', 'drop-shadow(0 0)'))\n },\n layoutType: 'normal',\n globalNotices: [],\n layoutHeight: 0,\n lastTimeline: null\n};\nvar interfaceMod = {\n state: defaultState,\n mutations: {\n settingsSaved: function settingsSaved(state, _ref) {\n var success = _ref.success,\n error = _ref.error;\n if (success) {\n if (state.noticeClearTimeout) {\n clearTimeout(state.noticeClearTimeout);\n }\n state.settings.currentSaveStateNotice = {\n error: false,\n data: success\n };\n state.settings.noticeClearTimeout = setTimeout(function () {\n return delete state.settings.currentSaveStateNotice;\n }, 2000);\n } else {\n state.settings.currentSaveStateNotice = {\n error: true,\n errorData: error\n };\n }\n },\n setNotificationPermission: function setNotificationPermission(state, permission) {\n state.notificationPermission = permission;\n },\n setLayoutType: function setLayoutType(state, value) {\n state.layoutType = value;\n },\n closeSettingsModal: function closeSettingsModal(state) {\n state.settingsModalState = 'hidden';\n },\n togglePeekSettingsModal: function togglePeekSettingsModal(state) {\n switch (state.settingsModalState) {\n case 'minimized':\n state.settingsModalState = 'visible';\n return;\n case 'visible':\n state.settingsModalState = 'minimized';\n return;\n default:\n throw new Error('Illegal minimization state of settings modal');\n }\n },\n openSettingsModal: function openSettingsModal(state, value) {\n state.settingsModalMode = value;\n state.settingsModalState = 'visible';\n if (value === 'user') {\n if (!state.settingsModalLoadedUser) {\n state.settingsModalLoadedUser = true;\n }\n } else if (value === 'admin') {\n if (!state.settingsModalLoadedAdmin) {\n state.settingsModalLoadedAdmin = true;\n }\n }\n },\n setSettingsModalTargetTab: function setSettingsModalTargetTab(state, value) {\n state.settingsModalTargetTab = value;\n },\n pushGlobalNotice: function pushGlobalNotice(state, notice) {\n state.globalNotices.push(notice);\n },\n removeGlobalNotice: function removeGlobalNotice(state, notice) {\n state.globalNotices = state.globalNotices.filter(function (n) {\n return n !== notice;\n });\n },\n setLayoutHeight: function setLayoutHeight(state, value) {\n state.layoutHeight = value;\n },\n setLayoutWidth: function setLayoutWidth(state, value) {\n state.layoutWidth = value;\n },\n setLastTimeline: function setLastTimeline(state, value) {\n state.lastTimeline = value;\n }\n },\n actions: {\n setPageTitle: function setPageTitle(_ref2) {\n var rootState = _ref2.rootState;\n var option = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n document.title = \"\".concat(option, \" \").concat(rootState.instance.name);\n },\n settingsSaved: function settingsSaved(_ref3, _ref4) {\n var commit = _ref3.commit,\n dispatch = _ref3.dispatch;\n var success = _ref4.success,\n error = _ref4.error;\n commit('settingsSaved', {\n success: success,\n error: error\n });\n },\n setNotificationPermission: function setNotificationPermission(_ref5, permission) {\n var commit = _ref5.commit;\n commit('setNotificationPermission', permission);\n },\n closeSettingsModal: function closeSettingsModal(_ref6) {\n var commit = _ref6.commit;\n commit('closeSettingsModal');\n },\n openSettingsModal: function openSettingsModal(_ref7) {\n var commit = _ref7.commit;\n var value = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'user';\n commit('openSettingsModal', value);\n },\n togglePeekSettingsModal: function togglePeekSettingsModal(_ref8) {\n var commit = _ref8.commit;\n commit('togglePeekSettingsModal');\n },\n clearSettingsModalTargetTab: function clearSettingsModalTargetTab(_ref9) {\n var commit = _ref9.commit;\n commit('setSettingsModalTargetTab', null);\n },\n openSettingsModalTab: function openSettingsModalTab(_ref10, value) {\n var commit = _ref10.commit;\n commit('setSettingsModalTargetTab', value);\n commit('openSettingsModal', 'user');\n },\n pushGlobalNotice: function pushGlobalNotice(_ref11, _ref12) {\n var commit = _ref11.commit,\n dispatch = _ref11.dispatch,\n state = _ref11.state;\n var messageKey = _ref12.messageKey,\n _ref12$messageArgs = _ref12.messageArgs,\n messageArgs = _ref12$messageArgs === void 0 ? {} : _ref12$messageArgs,\n _ref12$level = _ref12.level,\n level = _ref12$level === void 0 ? 'error' : _ref12$level,\n _ref12$timeout = _ref12.timeout,\n timeout = _ref12$timeout === void 0 ? 0 : _ref12$timeout;\n var notice = {\n messageKey: messageKey,\n messageArgs: messageArgs,\n level: level\n };\n commit('pushGlobalNotice', notice);\n // Adding a new element to array wraps it in a Proxy, which breaks the comparison\n // TODO: Generate UUID or something instead or relying on !== operator?\n var newNotice = state.globalNotices[state.globalNotices.length - 1];\n if (timeout) {\n setTimeout(function () {\n return dispatch('removeGlobalNotice', newNotice);\n }, timeout);\n }\n return newNotice;\n },\n removeGlobalNotice: function removeGlobalNotice(_ref13, notice) {\n var commit = _ref13.commit;\n commit('removeGlobalNotice', notice);\n },\n setLayoutHeight: function setLayoutHeight(_ref14, value) {\n var commit = _ref14.commit;\n commit('setLayoutHeight', value);\n },\n // value is optional, assuming it was cached prior\n setLayoutWidth: function setLayoutWidth(_ref15, value) {\n var commit = _ref15.commit,\n state = _ref15.state,\n rootGetters = _ref15.rootGetters,\n rootState = _ref15.rootState;\n var width = value;\n if (value !== undefined) {\n commit('setLayoutWidth', value);\n } else {\n width = state.layoutWidth;\n }\n var mobileLayout = width <= 800;\n var normalOrMobile = mobileLayout ? 'mobile' : 'normal';\n var thirdColumnMode = rootGetters.mergedConfig.thirdColumnMode;\n if (thirdColumnMode === 'none' || !rootState.users.currentUser) {\n commit('setLayoutType', normalOrMobile);\n } else {\n var wideLayout = width >= 1300;\n commit('setLayoutType', wideLayout ? 'wide' : normalOrMobile);\n }\n },\n setLastTimeline: function setLastTimeline(_ref16, value) {\n var commit = _ref16.commit;\n commit('setLastTimeline', value);\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (interfaceMod);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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c291cmNlc0NvbnRlbnQiOlsiY29uc3QgZGVmYXVsdFN0YXRlID0ge1xuICBzZXR0aW5nc01vZGFsU3RhdGU6ICdoaWRkZW4nLFxuICBzZXR0aW5nc01vZGFsTG9hZGVkVXNlcjogZmFsc2UsXG4gIHNldHRpbmdzTW9kYWxMb2FkZWRBZG1pbjogZmFsc2UsXG4gIHNldHRpbmdzTW9kYWxUYXJnZXRUYWI6IG51bGwsXG4gIHNldHRpbmdzTW9kYWxNb2RlOiAndXNlcicsXG4gIHNldHRpbmdzOiB7XG4gICAgY3VycmVudFNhdmVTdGF0ZU5vdGljZTogbnVsbCxcbiAgICBub3RpY2VDbGVhclRpbWVvdXQ6IG51bGwsXG4gICAgbm90aWZpY2F0aW9uUGVybWlzc2lvbjogbnVsbFxuICB9LFxuICBicm93c2VyU3VwcG9ydDoge1xuICAgIGNzc0ZpbHRlcjogd2luZG93LkNTUyAmJiB3aW5kb3cuQ1NTLnN1cHBvcnRzICYmIChcbiAgICAgIHdpbmRvdy5DU1Muc3VwcG9ydHMoJ2ZpbHRlcicsICdkcm9wLXNoYWRvdygwIDApJykgfHxcbiAgICAgIHdpbmRvdy5DU1Muc3VwcG9ydHMoJy13ZWJraXQtZmlsdGVyJywgJ2Ryb3Atc2hhZG93KDAgMCknKVxuICAgIClcbiAgfSxcbiAgbGF5b3V0VHlwZTogJ25vcm1hbCcsXG4gIGdsb2JhbE5vdGljZXM6IFtdLFxuICBsYXlvdXRIZWlnaHQ6IDAsXG4gIGxhc3RUaW1lbGluZTogbnVsbFxufVxuXG5jb25zdCBpbnRlcmZhY2VNb2QgPSB7XG4gIHN0YXRlOiBkZWZhdWx0U3RhdGUsXG4gIG11dGF0aW9uczoge1xuICAgIHNldHRpbmdzU2F2ZWQgKHN0YXRlLCB7IHN1Y2Nlc3MsIGVycm9yIH0pIHtcbiAgICAgIGlmIChzdWNjZXNzKSB7XG4gICAgICAgIGlmIChzdGF0ZS5ub3RpY2VDbGVhclRpbWVvdXQpIHtcbiAgICAgICAgICBjbGVhclRpbWVvdXQoc3RhdGUubm90aWNlQ2xlYXJUaW1lb3V0KVxuICAgICAgICB9XG4gICAgICAgIHN0YXRlLnNldHRpbmdzLmN1cnJlbnRTYXZlU3RhdGVOb3RpY2UgPSB7IGVycm9yOiBmYWxzZSwgZGF0YTogc3VjY2VzcyB9XG4gICAgICAgIHN0YXRlLnNldHRpbmdzLm5vdGljZUNsZWFyVGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4gZGVsZXRlIHN0YXRlLnNldHRpbmdzLmN1cnJlbnRTYXZlU3RhdGVOb3RpY2UsIDIwMDApXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzdGF0ZS5zZXR0aW5ncy5jdXJyZW50U2F2ZVN0YXRlTm90aWNlID0geyBlcnJvcjogdHJ1ZSwgZXJyb3JEYXRhOiBlcnJvciB9XG4gICAgICB9XG4gICAgfSxcbiAgICBzZXROb3RpZmljYXRpb25QZXJtaXNzaW9uIChzdGF0ZSwgcGVybWlzc2lvbikge1xuICAgICAgc3RhdGUubm90aWZpY2F0aW9uUGVybWlzc2lvbiA9IHBlcm1pc3Npb25cbiAgICB9LFxuICAgIHNldExheW91dFR5cGUgKHN0YXRlLCB2YWx1ZSkge1xuICAgICAgc3RhdGUubGF5b3V0VHlwZSA9IHZhbHVlXG4gICAgfSxcbiAgICBjbG9zZVNldHRpbmdzTW9kYWwgKHN0YXRlKSB7XG4gICAgICBzdGF0ZS5zZXR0aW5nc01vZGFsU3RhdGUgPSAnaGlkZGVuJ1xuICAgIH0sXG4gICAgdG9nZ2xlUGVla1NldHRpbmdzTW9kYWwgKHN0YXRlKSB7XG4gICAgICBzd2l0Y2ggKHN0YXRlLnNldHRpbmdzTW9kYWxTdGF0ZSkge1xuICAgICAgICBjYXNlICdtaW5pbWl6ZWQnOlxuICAgICAgICAgIHN0YXRlLnNldHRpbmdzTW9kYWxTdGF0ZSA9ICd2aXNpYmxlJ1xuICAgICAgICAgIHJldHVyblxuICAgICAgICBjYXNlICd2aXNpYmxlJzpcbiAgICAgICAgICBzdGF0ZS5zZXR0aW5nc01vZGFsU3RhdGUgPSAnbWluaW1pemVkJ1xuICAgICAgICAgIHJldHVyblxuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIHRocm93IG5ldyBFcnJvcignSWxsZWdhbCBtaW5pbWl6YXRpb24gc3RhdGUgb2Ygc2V0dGluZ3MgbW9kYWwnKVxuICAgICAgfVxuICAgIH0sXG4gICAgb3BlblNldHRpbmdzTW9kYWwgKHN0YXRlLCB2YWx1ZSkge1xuICAgICAgc3RhdGUuc2V0dGluZ3NNb2RhbE1vZGUgPSB2YWx1ZVxuICAgICAgc3RhdGUuc2V0dGluZ3NNb2RhbFN0YXRlID0gJ3Zpc2libGUnXG4gICAgICBpZiAodmFsdWUgPT09ICd1c2VyJykge1xuICAgICAgICBpZiAoIXN0YXRlLnNldHRpbmdzTW9kYWxMb2FkZWRVc2VyKSB7XG4gICAgICAgICAgc3RhdGUuc2V0dGluZ3NNb2RhbExvYWRlZFVzZXIgPSB0cnVlXG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSBpZiAodmFsdWUgPT09ICdhZG1pbicpIHtcbiAgICAgICAgaWYgKCFzdGF0ZS5zZXR0aW5nc01vZGFsTG9hZGVkQWRtaW4pIHtcbiAgICAgICAgICBzdGF0ZS5zZXR0aW5nc01vZGFsTG9hZGVkQWRtaW4gPSB0cnVlXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9LFxuICAgIHNldFNldHRpbmdzTW9kYWxUYXJnZXRUYWIgKHN0YXRlLCB2YWx1ZSkge1xuICAgICAgc3RhdGUuc2V0dGluZ3NNb2RhbFRhcmdldFRhYiA9IHZhbHVlXG4gICAgfSxcbiAgICBwdXNoR2xvYmFsTm90aWNlIChzdGF0ZSwgbm90aWNlKSB7XG4gICAgICBzdGF0ZS5nbG9iYWxOb3RpY2VzLnB1c2gobm90aWNlKVxuICAgIH0sXG4gICAgcmVtb3ZlR2xvYmFsTm90aWNlIChzdGF0ZSwgbm90aWNlKSB7XG4gICAgICBzdGF0ZS5nbG9iYWxOb3RpY2VzID0gc3RhdGUuZ2xvYmFsTm90aWNlcy5maWx0ZXIobiA9PiBuICE9PSBub3RpY2UpXG4gICAgfSxcbiAgICBzZXRMYXlvdXRIZWlnaHQgKHN0YXRlLCB2YWx1ZSkge1xuICAgICAgc3RhdGUubGF5b3V0SGVpZ2h0ID0gdmFsdWVcbiAgICB9LFxuICAgIHNldExheW91dFdpZHRoIChzdGF0ZSwgdmFsdWUpIHtcbiAgICAgIHN0YXRlLmxheW91dFdpZHRoID0gdmFsdWVcbiAgICB9LFxuICAgIHNldExhc3RUaW1lbGluZSAoc3RhdGUsIHZhbHVlKSB7XG4gICAgICBzdGF0ZS5sYXN0VGltZWxpbmUgPSB2YWx1ZVxuICAgIH1cbiAgfSxcbiAgYWN0aW9uczoge1xuICAgIHNldFBhZ2VUaXRsZSAoeyByb290U3RhdGUgfSwgb3B0aW9uID0gJycpIHtcbiAgICAgIGRvY3VtZW50LnRpdGxlID0gYCR7b3B0aW9ufSAke3Jvb3RTdGF0ZS5pbnN0YW5jZS5uYW1lfWBcbiAgICB9LFxuICAgIHNldHRpbmdzU2F2ZWQgKHsgY29tbWl0LCBkaXNwYXRjaCB9LCB7IHN1Y2Nlc3MsIGVycm9yIH0pIHtcbiAgICAgIGNvbW1pdCgnc2V0dGluZ3NTYXZlZCcsIHsgc3VjY2VzcywgZXJyb3IgfSlcbiAgICB9LFxuICAgIHNldE5vdGlmaWNhdGlvblBlcm1pc3Npb24gKHsgY29tbWl0IH0sIHBlcm1pc3Npb24pIHtcbiAgICAgIGNvbW1pdCgnc2V0Tm90aWZpY2F0aW9uUGVybWlzc2lvbicsIHBlcm1pc3Npb24pXG4gICAgfSxcbiAgICBjbG9zZVNldHRpbmdzTW9kYWwgKHsgY29tbWl0IH0pIHtcbiAgICAgIGNvbW1pdCgnY2xvc2VTZXR0aW5nc01vZGFsJylcbiAgICB9LFxuICAgIG9wZW5TZXR0aW5nc01vZGFsICh7IGNvbW1pdCB9LCB2YWx1ZSA9ICd1c2VyJykge1xuICAgICAgY29tbWl0KCdvcGVuU2V0dGluZ3NNb2RhbCcsIHZhbHVlKVxuICAgIH0sXG4gICAgdG9nZ2xlUGVla1NldHRpbmdzTW9kYWwgKHsgY29tbWl0IH0pIHtcbiAgICAgIGNvbW1pdCgndG9nZ2xlUGVla1NldHRpbmdzTW9kYWwnKVxuICAgIH0sXG4gICAgY2xlYXJTZXR0aW5nc01vZGFsVGFyZ2V0VGFiICh7IGNvbW1pdCB9KSB7XG4gICAgICBjb21taXQoJ3NldFNldHRpbmdzTW9kYWxUYXJnZXRUYWInLCBudWxsKVxuICAgIH0sXG4gICAgb3BlblNldHRpbmdzTW9kYWxUYWIgKHsgY29tbWl0IH0sIHZhbHVlKSB7XG4gICAgICBjb21taXQoJ3NldFNldHRpbmdzTW9kYWxUYXJnZXRUYWInLCB2YWx1ZSlcbiAgICAgIGNvbW1pdCgnb3BlblNldHRpbmdzTW9kYWwnLCAndXNlcicpXG4gICAgfSxcbiAgICBwdXNoR2xvYmFsTm90aWNlIChcbiAgICAgIHsgY29tbWl0LCBkaXNwYXRjaCwgc3RhdGUgfSxcbiAgICAgIHtcbiAgICAgICAgbWVzc2FnZUtleSxcbiAgICAgICAgbWVzc2FnZUFyZ3MgPSB7fSxcbiAgICAgICAgbGV2ZWwgPSAnZXJyb3InLFxuICAgICAgICB0aW1lb3V0ID0gMFxuICAgICAgfSkge1xuICAgICAgY29uc3Qgbm90aWNlID0ge1xuICAgICAgICBtZXNzYWdlS2V5LFxuICAgICAgICBtZXNzYWdlQXJncyxcbiAgICAgICAgbGV2ZWxcbiAgICAgIH1cbiAgICAgIGNvbW1pdCgncHVzaEdsb2JhbE5vdGljZScsIG5vdGljZSlcbiAgICAgIC8vIEFkZGluZyBhIG5ldyBlbGVtZW50IHRvIGFycmF5IHdyYXBzIGl0IGluIGEgUHJveHksIHdoaWNoIGJyZWFrcyB0aGUgY29tcGFyaXNvblxuICAgICAgLy8gVE9ETzogR2VuZXJhdGUgVVVJRCBvciBzb21ldGhpbmcgaW5zdGVhZCBvciByZWx5aW5nIG9uICE9PSBvcGVyYXRvcj9cbiAgICAgIGNvbnN0IG5ld05vdGljZSA9IHN0YXRlLmdsb2JhbE5vdGljZXNbc3RhdGUuZ2xvYmFsTm90aWNlcy5sZW5ndGggLSAxXVxuICAgICAgaWYgKHRpbWVvdXQpIHtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiBkaXNwYXRjaCgncmVtb3ZlR2xvYmFsTm90aWNlJywgbmV3Tm90aWNlKSwgdGltZW91dClcbiAgICAgIH1cbiAgICAgIHJldHVybiBuZXdOb3RpY2VcbiAgICB9LFxuICAgIHJlbW92ZUdsb2JhbE5vdGljZSAoeyBjb21taXQgfSwgbm90aWNlKSB7XG4gICAgICBjb21taXQoJ3JlbW92ZUdsb2JhbE5vdGljZScsIG5vdGljZSlcbiAgICB9LFxuICAgIHNldExheW91dEhlaWdodCAoeyBjb21taXQgfSwgdmFsdWUpIHtcbiAgICAgIGNvbW1pdCgnc2V0TGF5b3V0SGVpZ2h0JywgdmFsdWUpXG4gICAgfSxcbiAgICAvLyB2YWx1ZSBpcyBvcHRpb25hbCwgYXNzdW1pbmcgaXQgd2FzIGNhY2hlZCBwcmlvclxuICAgIHNldExheW91dFdpZHRoICh7IGNvbW1pdCwgc3RhdGUsIHJvb3RHZXR0ZXJzLCByb290U3RhdGUgfSwgdmFsdWUpIHtcbiAgICAgIGxldCB3aWR0aCA9IHZhbHVlXG4gICAgICBpZiAodmFsdWUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjb21taXQoJ3NldExheW91dFdpZHRoJywgdmFsdWUpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICB3aWR0aCA9IHN0YXRlLmxheW91dFdpZHRoXG4gICAgICB9XG4gICAgICBjb25zdCBtb2JpbGVMYXlvdXQgPSB3aWR0aCA8PSA4MDBcbiAgICAgIGNvbnN0IG5vcm1hbE9yTW9iaWxlID0gbW9iaWxlTGF5b3V0ID8gJ21vYmlsZScgOiAnbm9ybWFsJ1xuICAgICAgY29uc3QgeyB0aGlyZENvbHVtbk1vZGUgfSA9IHJvb3RHZXR0ZXJzLm1lcmdlZENvbmZpZ1xuICAgICAgaWYgKHRoaXJkQ29sdW1uTW9kZSA9PT0gJ25vbmUnIHx8ICFyb290U3RhdGUudXNlcnMuY3VycmVudFVzZXIpIHtcbiAgICAgICAgY29tbWl0KCdzZXRMYXlvdXRUeXBlJywgbm9ybWFsT3JNb2JpbGUpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCB3aWRlTGF5b3V0ID0gd2lkdGggPj0gMTMwMFxuICAgICAgICBjb21taXQoJ3NldExheW91dFR5cGUnLCB3aWRlTGF5b3V0ID8gJ3dpZGUnIDogbm9ybWFsT3JNb2JpbGUpXG4gICAgICB9XG4gICAgfSxcbiAgICBzZXRMYXN0VGltZWxpbmUgKHsgY29tbWl0IH0sIHZhbHVlKSB7XG4gICAgICBjb21taXQoJ3NldExhc3RUaW1lbGluZScsIHZhbHVlKVxuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBpbnRlcmZhY2VNb2RcbiJdLCJuYW1lcyI6WyJkZWZhdWx0U3RhdGUiLCJzZXR0aW5nc01vZGFsU3RhdGUiLCJzZXR0aW5nc01vZGFsTG9hZGVkVXNlciIsInNldHRpbmdzTW9kYWxMb2FkZWRBZG1pbiIsInNldHRpbmdzTW9kYWxUYXJnZXRUYWIiLCJzZXR0aW5nc01vZGFsTW9kZSIsInNldHRpbmdzIiwiY3VycmVudFNhdmVTdGF0ZU5vdGljZSIsIm5vdGljZUNsZWFyVGltZW91dCIsIm5vdGlmaWNhdGlvblBlcm1pc3Npb24iLCJicm93c2VyU3VwcG9ydCIsImNzc0ZpbHRlciIsIndpbmRvdyIsIkNTUyIsInN1cHBvcnRzIiwibGF5b3V0VHlwZSIsImdsb2JhbE5vdGljZXMiLCJsYXlvdXRIZWlnaHQiLCJsYXN0VGltZWxpbmUiLCJpbnRlcmZhY2VNb2QiLCJzdGF0ZSIsIm11dGF0aW9ucyIsInNldHRpbmdzU2F2ZWQiLCJfcmVmIiwic3VjY2VzcyIsImVycm9yIiwiY2xlYXJUaW1lb3V0IiwiZGF0YSIsInNldFRpbWVvdXQiLCJlcnJvckRhdGEiLCJzZXROb3RpZmljYXRpb25QZXJtaXNzaW9uIiwicGVybWlzc2lvbiIsInNldExheW91dFR5cGUiLCJ2YWx1ZSIsImNsb3NlU2V0dGluZ3NNb2RhbCIsInRvZ2dsZVBlZWtTZXR0aW5nc01vZGFsIiwiRXJyb3IiLCJvcGVuU2V0dGluZ3NNb2RhbCIsInNldFNldHRpbmdzTW9kYWxUYXJnZXRUYWIiLCJwdXNoR2xvYmFsTm90aWNlIiwibm90aWNlIiwicHVzaCIsInJlbW92ZUdsb2JhbE5vdGljZSIsImZpbHRlciIsIm4iLCJzZXRMYXlvdXRIZWlnaHQiLCJzZXRMYXlvdXRXaWR0aCIsImxheW91dFdpZHRoIiwic2V0TGFzdFRpbWVsaW5lIiwiYWN0aW9ucyIsInNldFBhZ2VUaXRsZSIsIl9yZWYyIiwicm9vdFN0YXRlIiwib3B0aW9uIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwidW5kZWZpbmVkIiwiZG9jdW1lbnQiLCJ0aXRsZSIsImNvbmNhdCIsImluc3RhbmNlIiwibmFtZSIsIl9yZWYzIiwiX3JlZjQiLCJjb21taXQiLCJkaXNwYXRjaCIsIl9yZWY1IiwiX3JlZjYiLCJfcmVmNyIsIl9yZWY4IiwiY2xlYXJTZXR0aW5nc01vZGFsVGFyZ2V0VGFiIiwiX3JlZjkiLCJvcGVuU2V0dGluZ3NNb2RhbFRhYiIsIl9yZWYxMCIsIl9yZWYxMSIsIl9yZWYxMiIsIm1lc3NhZ2VLZXkiLCJfcmVmMTIkbWVzc2FnZUFyZ3MiLCJtZXNzYWdlQXJncyIsIl9yZWYxMiRsZXZlbCIsImxldmVsIiwiX3JlZjEyJHRpbWVvdXQiLCJ0aW1lb3V0IiwibmV3Tm90aWNlIiwiX3JlZjEzIiwiX3JlZjE0IiwiX3JlZjE1Iiwicm9vdEdldHRlcnMiLCJ3aWR0aCIsIm1vYmlsZUxheW91dCIsIm5vcm1hbE9yTW9iaWxlIiwidGhpcmRDb2x1bW5Nb2RlIiwibWVyZ2VkQ29uZmlnIiwidXNlcnMiLCJjdXJyZW50VXNlciIsIndpZGVMYXlvdXQiLCJfcmVmMTYiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/modules/interface.js\n");
/***/ }),
/***/ "./src/modules/lists.js":
/*!******************************!*\
!*** ./src/modules/lists.js ***!
\******************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__),\n/* harmony export */ \"defaultState\": () => (/* binding */ defaultState),\n/* harmony export */ \"getters\": () => (/* binding */ getters),\n/* harmony export */ \"mutations\": () => (/* binding */ mutations)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ \"./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js\");\n/* harmony import */ var lodash_find__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! lodash/find */ \"./node_modules/lodash/find.js\");\n/* harmony import */ var lodash_find__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash_find__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var lodash_remove__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! lodash/remove */ \"./node_modules/lodash/remove.js\");\n/* harmony import */ var lodash_remove__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(lodash_remove__WEBPACK_IMPORTED_MODULE_2__);\n\n\n\nvar defaultState = {\n allLists: [],\n allListsObject: {}\n};\nvar mutations = {\n setLists: function setLists(state, value) {\n state.allLists = value;\n },\n setList: function setList(state, _ref) {\n var listId = _ref.listId,\n title = _ref.title;\n if (!state.allListsObject[listId]) {\n state.allListsObject[listId] = {\n accountIds: []\n };\n }\n state.allListsObject[listId].title = title;\n var entry = lodash_find__WEBPACK_IMPORTED_MODULE_1___default()(state.allLists, {\n id: listId\n });\n if (!entry) {\n state.allLists.push({\n id: listId,\n title: title\n });\n } else {\n entry.title = title;\n }\n },\n setListAccounts: function setListAccounts(state, _ref2) {\n var listId = _ref2.listId,\n accountIds = _ref2.accountIds;\n if (!state.allListsObject[listId]) {\n state.allListsObject[listId] = {\n accountIds: []\n };\n }\n state.allListsObject[listId].accountIds = accountIds;\n },\n addListAccount: function addListAccount(state, _ref3) {\n var listId = _ref3.listId,\n accountId = _ref3.accountId;\n if (!state.allListsObject[listId]) {\n state.allListsObject[listId] = {\n accountIds: []\n };\n }\n state.allListsObject[listId].accountIds.push(accountId);\n },\n removeListAccount: function removeListAccount(state, _ref4) {\n var listId = _ref4.listId,\n accountId = _ref4.accountId;\n if (!state.allListsObject[listId]) {\n state.allListsObject[listId] = {\n accountIds: []\n };\n }\n var accountIds = state.allListsObject[listId].accountIds;\n var set = new Set(accountIds);\n set[\"delete\"](accountId);\n state.allListsObject[listId].accountIds = (0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(set);\n },\n deleteList: function deleteList(state, _ref5) {\n var listId = _ref5.listId;\n delete state.allListsObject[listId];\n lodash_remove__WEBPACK_IMPORTED_MODULE_2___default()(state.allLists, function (list) {\n return list.id === listId;\n });\n }\n};\nvar actions = {\n setLists: function setLists(_ref6, value) {\n var commit = _ref6.commit;\n commit('setLists', value);\n },\n createList: function createList(_ref7, _ref8) {\n var rootState = _ref7.rootState,\n commit = _ref7.commit;\n var title = _ref8.title;\n return rootState.api.backendInteractor.createList({\n title: title\n }).then(function (list) {\n commit('setList', {\n listId: list.id,\n title: title\n });\n return list;\n });\n },\n fetchList: function fetchList(_ref9, _ref10) {\n var rootState = _ref9.rootState,\n commit = _ref9.commit;\n var listId = _ref10.listId;\n return rootState.api.backendInteractor.getList({\n listId: listId\n }).then(function (list) {\n return commit('setList', {\n listId: list.id,\n title: list.title\n });\n });\n },\n fetchListAccounts: function fetchListAccounts(_ref11, _ref12) {\n var rootState = _ref11.rootState,\n commit = _ref11.commit;\n var listId = _ref12.listId;\n return rootState.api.backendInteractor.getListAccounts({\n listId: listId\n }).then(function (accountIds) {\n return commit('setListAccounts', {\n listId: listId,\n accountIds: accountIds\n });\n });\n },\n setList: function setList(_ref13, _ref14) {\n var rootState = _ref13.rootState,\n commit = _ref13.commit;\n var listId = _ref14.listId,\n title = _ref14.title;\n rootState.api.backendInteractor.updateList({\n listId: listId,\n title: title\n });\n commit('setList', {\n listId: listId,\n title: title\n });\n },\n setListAccounts: function setListAccounts(_ref15, _ref16) {\n var rootState = _ref15.rootState,\n commit = _ref15.commit;\n var listId = _ref16.listId,\n accountIds = _ref16.accountIds;\n var saved = rootState.lists.allListsObject[listId].accountIds || [];\n var added = accountIds.filter(function (id) {\n return !saved.includes(id);\n });\n var removed = saved.filter(function (id) {\n return !accountIds.includes(id);\n });\n commit('setListAccounts', {\n listId: listId,\n accountIds: accountIds\n });\n if (added.length > 0) {\n rootState.api.backendInteractor.addAccountsToList({\n listId: listId,\n accountIds: added\n });\n }\n if (removed.length > 0) {\n rootState.api.backendInteractor.removeAccountsFromList({\n listId: listId,\n accountIds: removed\n });\n }\n },\n addListAccount: function addListAccount(_ref17, _ref18) {\n var rootState = _ref17.rootState,\n commit = _ref17.commit;\n var listId = _ref18.listId,\n accountId = _ref18.accountId;\n return rootState.api.backendInteractor.addAccountsToList({\n listId: listId,\n accountIds: [accountId]\n }).then(function (result) {\n commit('addListAccount', {\n listId: listId,\n accountId: accountId\n });\n return result;\n });\n },\n removeListAccount: function removeListAccount(_ref19, _ref20) {\n var rootState = _ref19.rootState,\n commit = _ref19.commit;\n var listId = _ref20.listId,\n accountId = _ref20.accountId;\n return rootState.api.backendInteractor.removeAccountsFromList({\n listId: listId,\n accountIds: [accountId]\n }).then(function (result) {\n commit('removeListAccount', {\n listId: listId,\n accountId: accountId\n });\n return result;\n });\n },\n deleteList: function deleteList(_ref21, _ref22) {\n var rootState = _ref21.rootState,\n commit = _ref21.commit;\n var listId = _ref22.listId;\n rootState.api.backendInteractor.deleteList({\n listId: listId\n });\n commit('deleteList', {\n listId: listId\n });\n }\n};\nvar getters = {\n findListTitle: function findListTitle(state) {\n return function (id) {\n if (!state.allListsObject[id]) return;\n return state.allListsObject[id].title;\n };\n },\n findListAccounts: function findListAccounts(state) {\n return function (id) {\n return (0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(state.allListsObject[id].accountIds);\n };\n }\n};\nvar lists = {\n state: defaultState,\n mutations: mutations,\n actions: actions,\n getters: getters\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (lists);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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QUUsU0FBQUEsY0FBQWpFLEtBQUs7SUFBQSxPQUFJLFVBQUFTLEVBQUUsRUFBSTtNQUM1QixJQUFJLENBQUNULEtBQUssQ0FBQ0gsY0FBYyxDQUFDWSxFQUFFLENBQUMsRUFBRTtNQUMvQixPQUFPVCxLQUFLLENBQUNILGNBQWMsQ0FBQ1ksRUFBRSxDQUFDLENBQUNKLEtBQUs7SUFDdkMsQ0FBQztFQUFBO0VBQ0Q2RCxnQkFBZ0IsRUFBRSxTQUFBQSxpQkFBQWxFLEtBQUs7SUFBQSxPQUFJLFVBQUFTLEVBQUUsRUFBSTtNQUMvQixPQUFBVyxvRkFBQSxDQUFXcEIsS0FBSyxDQUFDSCxjQUFjLENBQUNZLEVBQUUsQ0FBQyxDQUFDSCxVQUFVO0lBQ2hELENBQUM7RUFBQTtBQUNILENBQUM7QUFFRCxJQUFNMkMsS0FBSyxHQUFHO0VBQ1pqRCxLQUFLLEVBQUVMLFlBQVk7RUFDbkJHLFNBQVMsRUFBVEEsU0FBUztFQUNUMkIsT0FBTyxFQUFQQSxPQUFPO0VBQ1B1QyxPQUFPLEVBQVBBO0FBQ0YsQ0FBQztBQUVELGlFQUFlZixLQUFLIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9tb2R1bGVzL2xpc3RzLmpzPzFjMWYiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmVtb3ZlLCBmaW5kIH0gZnJvbSAnbG9kYXNoJ1xuXG5leHBvcnQgY29uc3QgZGVmYXVsdFN0YXRlID0ge1xuICBhbGxMaXN0czogW10sXG4gIGFsbExpc3RzT2JqZWN0OiB7fVxufVxuXG5leHBvcnQgY29uc3QgbXV0YXRpb25zID0ge1xuICBzZXRMaXN0cyAoc3RhdGUsIHZhbHVlKSB7XG4gICAgc3RhdGUuYWxsTGlzdHMgPSB2YWx1ZVxuICB9LFxuICBzZXRMaXN0IChzdGF0ZSwgeyBsaXN0SWQsIHRpdGxlIH0pIHtcbiAgICBpZiAoIXN0YXRlLmFsbExpc3RzT2JqZWN0W2xpc3RJZF0pIHtcbiAgICAgIHN0YXRlLmFsbExpc3RzT2JqZWN0W2xpc3RJZF0gPSB7IGFjY291bnRJZHM6IFtdIH1cbiAgICB9XG4gICAgc3RhdGUuYWxsTGlzdHNPYmplY3RbbGlzdElkXS50aXRsZSA9IHRpdGxlXG5cbiAgICBjb25zdCBlbnRyeSA9IGZpbmQoc3RhdGUuYWxsTGlzdHMsIHsgaWQ6IGxpc3RJZCB9KVxuICAgIGlmICghZW50cnkpIHtcbiAgICAgIHN0YXRlLmFsbExpc3RzLnB1c2goeyBpZDogbGlzdElkLCB0aXRsZSB9KVxuICAgIH0gZWxzZSB7XG4gICAgICBlbnRyeS50aXRsZSA9IHRpdGxlXG4gICAgfVxuICB9LFxuICBzZXRMaXN0QWNjb3VudHMgKHN0YXRlLCB7IGxpc3RJZCwgYWNjb3VudElkcyB9KSB7XG4gICAgaWYgKCFzdGF0ZS5hbGxMaXN0c09iamVjdFtsaXN0SWRdKSB7XG4gICAgICBzdGF0ZS5hbGxMaXN0c09iamVjdFtsaXN0SWRdID0geyBhY2NvdW50SWRzOiBbXSB9XG4gICAgfVxuICAgIHN0YXRlLmFsbExpc3RzT2JqZWN0W2xpc3RJZF0uYWNjb3VudElkcyA9IGFjY291bnRJZHNcbiAgfSxcbiAgYWRkTGlzdEFjY291bnQgKHN0YXRlLCB7IGxpc3RJZCwgYWNjb3VudElkIH0pIHtcbiAgICBpZiAoIXN0YXRlLmFsbExpc3RzT2JqZWN0W2xpc3RJZF0pIHtcbiAgICAgIHN0YXRlLmFsbExpc3RzT2JqZWN0W2xpc3RJZF0gPSB7IGFjY291bnRJZHM6IFtdIH1cbiAgICB9XG4gICAgc3RhdGUuYWxsTGlzdHNPYmplY3RbbGlzdElkXS5hY2NvdW50SWRzLnB1c2goYWNjb3VudElkKVxuICB9LFxuICByZW1vdmVMaXN0QWNjb3VudCAoc3RhdGUsIHsgbGlzdElkLCBhY2NvdW50SWQgfSkge1xuICAgIGlmICghc3RhdGUuYWxsTGlzdHNPYmplY3RbbGlzdElkXSkge1xuICAgICAgc3RhdGUuYWxsTGlzdHNPYmplY3RbbGlzdElkXSA9IHsgYWNjb3VudElkczogW10gfVxuICAgIH1cbiAgICBjb25zdCB7IGFjY291bnRJZHMgfSA9IHN0YXRlLmFsbExpc3RzT2JqZWN0W2xpc3RJZF1cbiAgICBjb25zdCBzZXQgPSBuZXcgU2V0KGFjY291bnRJZHMpXG4gICAgc2V0LmRlbGV0ZShhY2NvdW50SWQpXG4gICAgc3RhdGUuYWxsTGlzdHNPYmplY3RbbGlzdElkXS5hY2NvdW50SWRzID0gWy4uLnNldF1cbiAgfSxcbiAgZGVsZXRlTGlzdCAoc3RhdGUsIHsgbGlzdElkIH0pIHtcbiAgICBkZWxldGUgc3RhdGUuYWxsTGlzdHNPYmplY3RbbGlzdElkXVxuICAgIHJlbW92ZShzdGF0ZS5hbGxMaXN0cywgbGlzdCA9PiBsaXN0LmlkID09PSBsaXN0SWQpXG4gIH1cbn1cblxuY29uc3QgYWN0aW9ucyA9IHtcbiAgc2V0TGlzdHMgKHsgY29tbWl0IH0sIHZhbHVlKSB7XG4gICAgY29tbWl0KCdzZXRMaXN0cycsIHZhbHVlKVxuICB9LFxuICBjcmVhdGVMaXN0ICh7IHJvb3RTdGF0ZSwgY29tbWl0IH0sIHsgdGl0bGUgfSkge1xuICAgIHJldHVybiByb290U3RhdGUuYXBpLmJhY2tlbmRJbnRlcmFjdG9yLmNyZWF0ZUxpc3QoeyB0aXRsZSB9KVxuICAgICAgLnRoZW4oKGxpc3QpID0+IHtcbiAgICAgICAgY29tbWl0KCdzZXRMaXN0JywgeyBsaXN0SWQ6IGxpc3QuaWQsIHRpdGxlIH0pXG4gICAgICAgIHJldHVybiBsaXN0XG4gICAgICB9KVxuICB9LFxuICBmZXRjaExpc3QgKHsgcm9vdFN0YXRlLCBjb21taXQgfSwgeyBsaXN0SWQgfSkge1xuICAgIHJldHVybiByb290U3RhdGUuYXBpLmJhY2tlbmRJbnRlcmFjdG9yLmdldExpc3QoeyBsaXN0SWQgfSlcbiAgICAgIC50aGVuKChsaXN0KSA9PiBjb21taXQoJ3NldExpc3QnLCB7IGxpc3RJZDogbGlzdC5pZCwgdGl0bGU6IGxpc3QudGl0bGUgfSkpXG4gIH0sXG4gIGZldGNoTGlzdEFjY291bnRzICh7IHJvb3RTdGF0ZSwgY29tbWl0IH0sIHsgbGlzdElkIH0pIHtcbiAgICByZXR1cm4gcm9vdFN0YXRlLmFwaS5iYWNrZW5kSW50ZXJhY3Rvci5nZXRMaXN0QWNjb3VudHMoeyBsaXN0SWQgfSlcbiAgICAgIC50aGVuKChhY2NvdW50SWRzKSA9PiBjb21taXQoJ3NldExpc3RBY2NvdW50cycsIHsgbGlzdElkLCBhY2NvdW50SWRzIH0pKVxuICB9LFxuICBzZXRMaXN0ICh7IHJvb3RTdGF0ZSwgY29tbWl0IH0sIHsgbGlzdElkLCB0aXRsZSB9KSB7XG4gICAgcm9vdFN0YXRlLmFwaS5iYWNrZW5kSW50ZXJhY3Rvci51cGRhdGVMaXN0KHsgbGlzdElkLCB0aXRsZSB9KVxuICAgIGNvbW1pdCgnc2V0TGlzdCcsIHsgbGlzdElkLCB0aXRsZSB9KVxuICB9LFxuICBzZXRMaXN0QWNjb3VudHMgKHsgcm9vdFN0YXRlLCBjb21taXQgfSwgeyBsaXN0SWQsIGFjY291bnRJZHMgfSkge1xuICAgIGNvbnN0IHNhdmVkID0gcm9vdFN0YXRlLmxpc3RzLmFsbExpc3RzT2JqZWN0W2xpc3RJZF0uYWNjb3VudElkcyB8fCBbXVxuICAgIGNvbnN0IGFkZGVkID0gYWNjb3VudElkcy5maWx0ZXIoaWQgPT4gIXNhdmVkLmluY2x1ZGVzKGlkKSlcbiAgICBjb25zdCByZW1vdmVkID0gc2F2ZWQuZmlsdGVyKGlkID0+ICFhY2NvdW50SWRzLmluY2x1ZGVzKGlkKSlcbiAgICBjb21taXQoJ3NldExpc3RBY2NvdW50cycsIHsgbGlzdElkLCBhY2NvdW50SWRzIH0pXG4gICAgaWYgKGFkZGVkLmxlbmd0aCA+IDApIHtcbiAgICAgIHJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IuYWRkQWNjb3VudHNUb0xpc3QoeyBsaXN0SWQsIGFjY291bnRJZHM6IGFkZGVkIH0pXG4gICAgfVxuICAgIGlmIChyZW1vdmVkLmxlbmd0aCA+IDApIHtcbiAgICAgIHJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IucmVtb3ZlQWNjb3VudHNGcm9tTGlzdCh7IGxpc3RJZCwgYWNjb3VudElkczogcmVtb3ZlZCB9KVxuICAgIH1cbiAgfSxcbiAgYWRkTGlzdEFjY291bnQgKHsgcm9vdFN0YXRlLCBjb21taXQgfSwgeyBsaXN0SWQsIGFjY291bnRJZCB9KSB7XG4gICAgcmV0dXJuIHJvb3RTdGF0ZVxuICAgICAgLmFwaVxuICAgICAgLmJhY2tlbmRJbnRlcmFjdG9yXG4gICAgICAuYWRkQWNjb3VudHNUb0xpc3QoeyBsaXN0SWQsIGFjY291bnRJZHM6IFthY2NvdW50SWRdIH0pXG4gICAgICAudGhlbigocmVzdWx0KSA9PiB7XG4gICAgICAgIGNvbW1pdCgnYWRkTGlzdEFjY291bnQnLCB7IGxpc3RJZCwgYWNjb3VudElkIH0pXG4gICAgICAgIHJldHVybiByZXN1bHRcbiAgICAgIH0pXG4gIH0sXG4gIHJlbW92ZUxpc3RBY2NvdW50ICh7IHJvb3RTdGF0ZSwgY29tbWl0IH0sIHsgbGlzdElkLCBhY2NvdW50SWQgfSkge1xuICAgIHJldHVybiByb290U3RhdGVcbiAgICAgIC5hcGlcbiAgICAgIC5iYWNrZW5kSW50ZXJhY3RvclxuICAgICAgLnJlbW92ZUFjY291bnRzRnJvbUxpc3QoeyBsaXN0SWQsIGFjY291bnRJZHM6IFthY2NvdW50SWRdIH0pXG4gICAgICAudGhlbigocmVzdWx0KSA9PiB7XG4gICAgICAgIGNvbW1pdCgncmVtb3ZlTGlzdEFjY291bnQnLCB7IGxpc3RJZCwgYWNjb3VudElkIH0pXG4gICAgICAgIHJldHVybiByZXN1bHRcbiAgICAgIH0pXG4gIH0sXG4gIGRlbGV0ZUxpc3QgKHsgcm9vdFN0YXRlLCBjb21taXQgfSwgeyBsaXN0SWQgfSkge1xuICAgIHJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IuZGVsZXRlTGlzdCh7IGxpc3RJZCB9KVxuICAgIGNvbW1pdCgnZGVsZXRlTGlzdCcsIHsgbGlzdElkIH0pXG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IGdldHRlcnMgPSB7XG4gIGZpbmRMaXN0VGl0bGU6IHN0YXRlID0+IGlkID0+IHtcbiAgICBpZiAoIXN0YXRlLmFsbExpc3RzT2JqZWN0W2lkXSkgcmV0dXJuXG4gICAgcmV0dXJuIHN0YXRlLmFsbExpc3RzT2JqZWN0W2lkXS50aXRsZVxuICB9LFxuICBmaW5kTGlzdEFjY291bnRzOiBzdGF0ZSA9PiBpZCA9PiB7XG4gICAgcmV0dXJuIFsuLi5zdGF0ZS5hbGxMaXN0c09iamVjdFtpZF0uYWNjb3VudElkc11cbiAgfVxufVxuXG5jb25zdCBsaXN0cyA9IHtcbiAgc3RhdGU6IGRlZmF1bHRTdGF0ZSxcbiAgbXV0YXRpb25zLFxuICBhY3Rpb25zLFxuICBnZXR0ZXJzXG59XG5cbmV4cG9ydCBkZWZhdWx0IGxpc3RzXG4iXSwibmFtZXMiOlsiZGVmYXVsdFN0YXRlIiwiYWxsTGlzdHMiLCJhbGxMaXN0c09iamVjdCIsIm11dGF0aW9ucyIsInNldExpc3RzIiwic3RhdGUiLCJ2YWx1ZSIsInNldExpc3QiLCJfcmVmIiwibGlzdElkIiwidGl0bGUiLCJhY2NvdW50SWRzIiwiZW50cnkiLCJfZmluZCIsImlkIiwicHVzaCIsInNldExpc3RBY2NvdW50cyIsIl9yZWYyIiwiYWRkTGlzdEFjY291bnQiLCJfcmVmMyIsImFjY291bnRJZCIsInJlbW92ZUxpc3RBY2NvdW50IiwiX3JlZjQiLCJzZXQiLCJTZXQiLCJfdG9Db25zdW1hYmxlQXJyYXkiLCJkZWxldGVMaXN0IiwiX3JlZjUiLCJfcmVtb3ZlIiwibGlzdCIsImFjdGlvbnMiLCJfcmVmNiIsImNvbW1pdCIsImNyZWF0ZUxpc3QiLCJfcmVmNyIsIl9yZWY4Iiwicm9vdFN0YXRlIiwiYXBpIiwiYmFja2VuZEludGVyYWN0b3IiLCJ0aGVuIiwiZmV0Y2hMaXN0IiwiX3JlZjkiLCJfcmVmMTAiLCJnZXRMaXN0IiwiZmV0Y2hMaXN0QWNjb3VudHMiLCJfcmVmMTEiLCJfcmVmMTIiLCJnZXRMaXN0QWNjb3VudHMiLCJfcmVmMTMiLCJfcmVmMTQiLCJ1cGRhdGVMaXN0IiwiX3JlZjE1IiwiX3JlZjE2Iiwic2F2ZWQiLCJsaXN0cyIsImFkZGVkIiwiZmlsdGVyIiwiaW5jbHVkZXMiLCJyZW1vdmVkIiwibGVuZ3RoIiwiYWRkQWNjb3VudHNUb0xpc3QiLCJyZW1vdmVBY2NvdW50c0Zyb21MaXN0IiwiX3JlZjE3IiwiX3JlZjE4IiwicmVzdWx0IiwiX3JlZjE5IiwiX3JlZjIwIiwiX3JlZjIxIiwiX3JlZjIyIiwiZ2V0dGVycyIsImZpbmRMaXN0VGl0bGUiLCJmaW5kTGlzdEFjY291bnRzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/modules/lists.js\n");
/***/ }),
/***/ "./src/modules/media_viewer.js":
/*!*************************************!*\
!*** ./src/modules/media_viewer.js ***!
\*************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _services_file_type_file_type_service_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../services/file_type/file_type.service.js */ \"./src/services/file_type/file_type.service.js\");\n\nvar supportedTypes = new Set(['image', 'video', 'audio', 'flash']);\nvar mediaViewer = {\n state: {\n media: [],\n currentIndex: 0,\n activated: false\n },\n mutations: {\n setMedia: function setMedia(state, media) {\n state.media = media;\n },\n setCurrentMedia: function setCurrentMedia(state, index) {\n state.activated = true;\n state.currentIndex = index;\n },\n close: function close(state) {\n state.activated = false;\n }\n },\n actions: {\n setMedia: function setMedia(_ref, attachments) {\n var commit = _ref.commit;\n var media = attachments.filter(function (attachment) {\n var type = _services_file_type_file_type_service_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].fileType(attachment.mimetype);\n return supportedTypes.has(type);\n });\n commit('setMedia', media);\n },\n setCurrentMedia: function setCurrentMedia(_ref2, current) {\n var commit = _ref2.commit,\n state = _ref2.state;\n var index = state.media.indexOf(current);\n commit('setCurrentMedia', index || 0);\n },\n closeMediaViewer: function closeMediaViewer(_ref3) {\n var commit = _ref3.commit;\n commit('close');\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (mediaViewer);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvbW9kdWxlcy9tZWRpYV92aWV3ZXIuanMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBd0U7QUFDeEUsSUFBTUMsY0FBYyxHQUFHLElBQUlDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBRXBFLElBQU1DLFdBQVcsR0FBRztFQUNsQkMsS0FBSyxFQUFFO0lBQ0xDLEtBQUssRUFBRSxFQUFFO0lBQ1RDLFlBQVksRUFBRSxDQUFDO0lBQ2ZDLFNBQVMsRUFBRTtFQUNiLENBQUM7RUFDREMsU0FBUyxFQUFFO0lBQ1RDLFFBQVEsV0FBQUEsU0FBRUwsS0FBSyxFQUFFQyxLQUFLLEVBQUU7TUFDdEJELEtBQUssQ0FBQ0MsS0FBSyxHQUFHQSxLQUFLO0lBQ3JCLENBQUM7SUFDREssZUFBZSxXQUFBQSxnQkFBRU4sS0FBSyxFQUFFTyxLQUFLLEVBQUU7TUFDN0JQLEtBQUssQ0FBQ0csU0FBUyxHQUFHLElBQUk7TUFDdEJILEtBQUssQ0FBQ0UsWUFBWSxHQUFHSyxLQUFLO0lBQzVCLENBQUM7SUFDREMsS0FBSyxXQUFBQSxNQUFFUixLQUFLLEVBQUU7TUFDWkEsS0FBSyxDQUFDRyxTQUFTLEdBQUcsS0FBSztJQUN6QjtFQUNGLENBQUM7RUFDRE0sT0FBTyxFQUFFO0lBQ1BKLFFBQVEsV0FBQUEsU0FBQUssSUFBQSxFQUFjQyxXQUFXLEVBQUU7TUFBQSxJQUF2QkMsTUFBTSxHQUFBRixJQUFBLENBQU5FLE1BQU07TUFDaEIsSUFBTVgsS0FBSyxHQUFHVSxXQUFXLENBQUNFLE1BQU0sQ0FBQyxVQUFBQyxVQUFVLEVBQUk7UUFDN0MsSUFBTUMsSUFBSSxHQUFHbkIseUZBQXdCLENBQUNrQixVQUFVLENBQUNHLFFBQVEsQ0FBQztRQUMxRCxPQUFPcEIsY0FBYyxDQUFDcUIsR0FBRyxDQUFDSCxJQUFJLENBQUM7TUFDakMsQ0FBQyxDQUFDO01BQ0ZILE1BQU0sQ0FBQyxVQUFVLEVBQUVYLEtBQUssQ0FBQztJQUMzQixDQUFDO0lBQ0RLLGVBQWUsV0FBQUEsZ0JBQUFhLEtBQUEsRUFBcUJDLE9BQU8sRUFBRTtNQUFBLElBQTFCUixNQUFNLEdBQUFPLEtBQUEsQ0FBTlAsTUFBTTtRQUFFWixLQUFLLEdBQUFtQixLQUFBLENBQUxuQixLQUFLO01BQzlCLElBQU1PLEtBQUssR0FBR1AsS0FBSyxDQUFDQyxLQUFLLENBQUNvQixPQUFPLENBQUNELE9BQU8sQ0FBQztNQUMxQ1IsTUFBTSxDQUFDLGlCQUFpQixFQUFFTCxLQUFLLElBQUksQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFDRGUsZ0JBQWdCLFdBQUFBLGlCQUFBQyxLQUFBLEVBQWM7TUFBQSxJQUFWWCxNQUFNLEdBQUFXLEtBQUEsQ0FBTlgsTUFBTTtNQUN4QkEsTUFBTSxDQUFDLE9BQU8sQ0FBQztJQUNqQjtFQUNGO0FBQ0YsQ0FBQztBQUVELGlFQUFlYixXQUFXIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9tb2R1bGVzL21lZGlhX3ZpZXdlci5qcz82NGQzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBmaWxlVHlwZVNlcnZpY2UgZnJvbSAnLi4vc2VydmljZXMvZmlsZV90eXBlL2ZpbGVfdHlwZS5zZXJ2aWNlLmpzJ1xuY29uc3Qgc3VwcG9ydGVkVHlwZXMgPSBuZXcgU2V0KFsnaW1hZ2UnLCAndmlkZW8nLCAnYXVkaW8nLCAnZmxhc2gnXSlcblxuY29uc3QgbWVkaWFWaWV3ZXIgPSB7XG4gIHN0YXRlOiB7XG4gICAgbWVkaWE6IFtdLFxuICAgIGN1cnJlbnRJbmRleDogMCxcbiAgICBhY3RpdmF0ZWQ6IGZhbHNlXG4gIH0sXG4gIG11dGF0aW9uczoge1xuICAgIHNldE1lZGlhIChzdGF0ZSwgbWVkaWEpIHtcbiAgICAgIHN0YXRlLm1lZGlhID0gbWVkaWFcbiAgICB9LFxuICAgIHNldEN1cnJlbnRNZWRpYSAoc3RhdGUsIGluZGV4KSB7XG4gICAgICBzdGF0ZS5hY3RpdmF0ZWQgPSB0cnVlXG4gICAgICBzdGF0ZS5jdXJyZW50SW5kZXggPSBpbmRleFxuICAgIH0sXG4gICAgY2xvc2UgKHN0YXRlKSB7XG4gICAgICBzdGF0ZS5hY3RpdmF0ZWQgPSBmYWxzZVxuICAgIH1cbiAgfSxcbiAgYWN0aW9uczoge1xuICAgIHNldE1lZGlhICh7IGNvbW1pdCB9LCBhdHRhY2htZW50cykge1xuICAgICAgY29uc3QgbWVkaWEgPSBhdHRhY2htZW50cy5maWx0ZXIoYXR0YWNobWVudCA9PiB7XG4gICAgICAgIGNvbnN0IHR5cGUgPSBmaWxlVHlwZVNlcnZpY2UuZmlsZVR5cGUoYXR0YWNobWVudC5taW1ldHlwZSlcbiAgICAgICAgcmV0dXJuIHN1cHBvcnRlZFR5cGVzLmhhcyh0eXBlKVxuICAgICAgfSlcbiAgICAgIGNvbW1pdCgnc2V0TWVkaWEnLCBtZWRpYSlcbiAgICB9LFxuICAgIHNldEN1cnJlbnRNZWRpYSAoeyBjb21taXQsIHN0YXRlIH0sIGN1cnJlbnQpIHtcbiAgICAgIGNvbnN0IGluZGV4ID0gc3RhdGUubWVkaWEuaW5kZXhPZihjdXJyZW50KVxuICAgICAgY29tbWl0KCdzZXRDdXJyZW50TWVkaWEnLCBpbmRleCB8fCAwKVxuICAgIH0sXG4gICAgY2xvc2VNZWRpYVZpZXdlciAoeyBjb21taXQgfSkge1xuICAgICAgY29tbWl0KCdjbG9zZScpXG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IG1lZGlhVmlld2VyXG4iXSwibmFtZXMiOlsiZmlsZVR5cGVTZXJ2aWNlIiwic3VwcG9ydGVkVHlwZXMiLCJTZXQiLCJtZWRpYVZpZXdlciIsInN0YXRlIiwibWVkaWEiLCJjdXJyZW50SW5kZXgiLCJhY3RpdmF0ZWQiLCJtdXRhdGlvbnMiLCJzZXRNZWRpYSIsInNldEN1cnJlbnRNZWRpYSIsImluZGV4IiwiY2xvc2UiLCJhY3Rpb25zIiwiX3JlZiIsImF0dGFjaG1lbnRzIiwiY29tbWl0IiwiZmlsdGVyIiwiYXR0YWNobWVudCIsInR5cGUiLCJmaWxlVHlwZSIsIm1pbWV0eXBlIiwiaGFzIiwiX3JlZjIiLCJjdXJyZW50IiwiaW5kZXhPZiIsImNsb3NlTWVkaWFWaWV3ZXIiLCJfcmVmMyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/modules/media_viewer.js\n");
/***/ }),
/***/ "./src/modules/oauth.js":
/*!******************************!*\
!*** ./src/modules/oauth.js ***!
\******************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\nvar oauth = {\n state: {\n clientId: false,\n clientSecret: false,\n /* App token is authentication for app without any user, used mostly for\n * MastoAPI's registration of new users, stored so that we can fall back to\n * it on logout\n */\n appToken: false,\n /* User token is authentication for app with user, this is for every calls\n * that need authorized user to be successful (i.e. posting, liking etc)\n */\n userToken: false\n },\n mutations: {\n setClientData: function setClientData(state, _ref) {\n var clientId = _ref.clientId,\n clientSecret = _ref.clientSecret;\n state.clientId = clientId;\n state.clientSecret = clientSecret;\n },\n setAppToken: function setAppToken(state, token) {\n state.appToken = token;\n },\n setToken: function setToken(state, token) {\n state.userToken = token;\n },\n clearToken: function clearToken(state) {\n state.userToken = false;\n // state.token is userToken with older name, coming from persistent state\n // let's clear it as well, since it is being used as a fallback of state.userToken\n delete state.token;\n }\n },\n getters: {\n getToken: function getToken(state) {\n return function () {\n // state.token is userToken with older name, coming from persistent state\n // added here for smoother transition, otherwise user will be logged out\n return state.userToken || state.token || state.appToken;\n };\n },\n getUserToken: function getUserToken(state) {\n return function () {\n // state.token is userToken with older name, coming from persistent state\n // added here for smoother transition, otherwise user will be logged out\n return state.userToken || state.token;\n };\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (oauth);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvbW9kdWxlcy9vYXV0aC5qcy5qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUEsSUFBTUEsS0FBSyxHQUFHO0VBQ1pDLEtBQUssRUFBRTtJQUNMQyxRQUFRLEVBQUUsS0FBSztJQUNmQyxZQUFZLEVBQUUsS0FBSztJQUNuQjtBQUNKO0FBQ0E7QUFDQTtJQUNJQyxRQUFRLEVBQUUsS0FBSztJQUNmO0FBQ0o7QUFDQTtJQUNJQyxTQUFTLEVBQUU7RUFDYixDQUFDO0VBQ0RDLFNBQVMsRUFBRTtJQUNUQyxhQUFhLFdBQUFBLGNBQUVOLEtBQUssRUFBQU8sSUFBQSxFQUE4QjtNQUFBLElBQTFCTixRQUFRLEdBQUFNLElBQUEsQ0FBUk4sUUFBUTtRQUFFQyxZQUFZLEdBQUFLLElBQUEsQ0FBWkwsWUFBWTtNQUM1Q0YsS0FBSyxDQUFDQyxRQUFRLEdBQUdBLFFBQVE7TUFDekJELEtBQUssQ0FBQ0UsWUFBWSxHQUFHQSxZQUFZO0lBQ25DLENBQUM7SUFDRE0sV0FBVyxXQUFBQSxZQUFFUixLQUFLLEVBQUVTLEtBQUssRUFBRTtNQUN6QlQsS0FBSyxDQUFDRyxRQUFRLEdBQUdNLEtBQUs7SUFDeEIsQ0FBQztJQUNEQyxRQUFRLFdBQUFBLFNBQUVWLEtBQUssRUFBRVMsS0FBSyxFQUFFO01BQ3RCVCxLQUFLLENBQUNJLFNBQVMsR0FBR0ssS0FBSztJQUN6QixDQUFDO0lBQ0RFLFVBQVUsV0FBQUEsV0FBRVgsS0FBSyxFQUFFO01BQ2pCQSxLQUFLLENBQUNJLFNBQVMsR0FBRyxLQUFLO01BQ3ZCO01BQ0E7TUFDQSxPQUFPSixLQUFLLENBQUNTLEtBQUs7SUFDcEI7RUFDRixDQUFDO0VBQ0RHLE9BQU8sRUFBRTtJQUNQQyxRQUFRLEVBQUUsU0FBQUEsU0FBQWIsS0FBSztNQUFBLE9BQUksWUFBTTtRQUN2QjtRQUNBO1FBQ0EsT0FBT0EsS0FBSyxDQUFDSSxTQUFTLElBQUlKLEtBQUssQ0FBQ1MsS0FBSyxJQUFJVCxLQUFLLENBQUNHLFFBQVE7TUFDekQsQ0FBQztJQUFBO0lBQ0RXLFlBQVksRUFBRSxTQUFBQSxhQUFBZCxLQUFLO01BQUEsT0FBSSxZQUFNO1FBQzNCO1FBQ0E7UUFDQSxPQUFPQSxLQUFLLENBQUNJLFNBQVMsSUFBSUosS0FBSyxDQUFDUyxLQUFLO01BQ3ZDLENBQUM7SUFBQTtFQUNIO0FBQ0YsQ0FBQztBQUVELGlFQUFlVixLQUFLIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9tb2R1bGVzL29hdXRoLmpzPzI4NTkiXSwic291cmNlc0NvbnRlbnQiOlsiY29uc3Qgb2F1dGggPSB7XG4gIHN0YXRlOiB7XG4gICAgY2xpZW50SWQ6IGZhbHNlLFxuICAgIGNsaWVudFNlY3JldDogZmFsc2UsXG4gICAgLyogQXBwIHRva2VuIGlzIGF1dGhlbnRpY2F0aW9uIGZvciBhcHAgd2l0aG91dCBhbnkgdXNlciwgdXNlZCBtb3N0bHkgZm9yXG4gICAgICogTWFzdG9BUEkncyByZWdpc3RyYXRpb24gb2YgbmV3IHVzZXJzLCBzdG9yZWQgc28gdGhhdCB3ZSBjYW4gZmFsbCBiYWNrIHRvXG4gICAgICogaXQgb24gbG9nb3V0XG4gICAgICovXG4gICAgYXBwVG9rZW46IGZhbHNlLFxuICAgIC8qIFVzZXIgdG9rZW4gaXMgYXV0aGVudGljYXRpb24gZm9yIGFwcCB3aXRoIHVzZXIsIHRoaXMgaXMgZm9yIGV2ZXJ5IGNhbGxzXG4gICAgICogdGhhdCBuZWVkIGF1dGhvcml6ZWQgdXNlciB0byBiZSBzdWNjZXNzZnVsIChpLmUuIHBvc3RpbmcsIGxpa2luZyBldGMpXG4gICAgICovXG4gICAgdXNlclRva2VuOiBmYWxzZVxuICB9LFxuICBtdXRhdGlvbnM6IHtcbiAgICBzZXRDbGllbnREYXRhIChzdGF0ZSwgeyBjbGllbnRJZCwgY2xpZW50U2VjcmV0IH0pIHtcbiAgICAgIHN0YXRlLmNsaWVudElkID0gY2xpZW50SWRcbiAgICAgIHN0YXRlLmNsaWVudFNlY3JldCA9IGNsaWVudFNlY3JldFxuICAgIH0sXG4gICAgc2V0QXBwVG9rZW4gKHN0YXRlLCB0b2tlbikge1xuICAgICAgc3RhdGUuYXBwVG9rZW4gPSB0b2tlblxuICAgIH0sXG4gICAgc2V0VG9rZW4gKHN0YXRlLCB0b2tlbikge1xuICAgICAgc3RhdGUudXNlclRva2VuID0gdG9rZW5cbiAgICB9LFxuICAgIGNsZWFyVG9rZW4gKHN0YXRlKSB7XG4gICAgICBzdGF0ZS51c2VyVG9rZW4gPSBmYWxzZVxuICAgICAgLy8gc3RhdGUudG9rZW4gaXMgdXNlclRva2VuIHdpdGggb2xkZXIgbmFtZSwgY29taW5nIGZyb20gcGVyc2lzdGVudCBzdGF0ZVxuICAgICAgLy8gbGV0J3MgY2xlYXIgaXQgYXMgd2VsbCwgc2luY2UgaXQgaXMgYmVpbmcgdXNlZCBhcyBhIGZhbGxiYWNrIG9mIHN0YXRlLnVzZXJUb2tlblxuICAgICAgZGVsZXRlIHN0YXRlLnRva2VuXG4gICAgfVxuICB9LFxuICBnZXR0ZXJzOiB7XG4gICAgZ2V0VG9rZW46IHN0YXRlID0+ICgpID0+IHtcbiAgICAgIC8vIHN0YXRlLnRva2VuIGlzIHVzZXJUb2tlbiB3aXRoIG9sZGVyIG5hbWUsIGNvbWluZyBmcm9tIHBlcnNpc3RlbnQgc3RhdGVcbiAgICAgIC8vIGFkZGVkIGhlcmUgZm9yIHNtb290aGVyIHRyYW5zaXRpb24sIG90aGVyd2lzZSB1c2VyIHdpbGwgYmUgbG9nZ2VkIG91dFxuICAgICAgcmV0dXJuIHN0YXRlLnVzZXJUb2tlbiB8fCBzdGF0ZS50b2tlbiB8fCBzdGF0ZS5hcHBUb2tlblxuICAgIH0sXG4gICAgZ2V0VXNlclRva2VuOiBzdGF0ZSA9PiAoKSA9PiB7XG4gICAgICAvLyBzdGF0ZS50b2tlbiBpcyB1c2VyVG9rZW4gd2l0aCBvbGRlciBuYW1lLCBjb21pbmcgZnJvbSBwZXJzaXN0ZW50IHN0YXRlXG4gICAgICAvLyBhZGRlZCBoZXJlIGZvciBzbW9vdGhlciB0cmFuc2l0aW9uLCBvdGhlcndpc2UgdXNlciB3aWxsIGJlIGxvZ2dlZCBvdXRcbiAgICAgIHJldHVybiBzdGF0ZS51c2VyVG9rZW4gfHwgc3RhdGUudG9rZW5cbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgb2F1dGhcbiJdLCJuYW1lcyI6WyJvYXV0aCIsInN0YXRlIiwiY2xpZW50SWQiLCJjbGllbnRTZWNyZXQiLCJhcHBUb2tlbiIsInVzZXJUb2tlbiIsIm11dGF0aW9ucyIsInNldENsaWVudERhdGEiLCJfcmVmIiwic2V0QXBwVG9rZW4iLCJ0b2tlbiIsInNldFRva2VuIiwiY2xlYXJUb2tlbiIsImdldHRlcnMiLCJnZXRUb2tlbiIsImdldFVzZXJUb2tlbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/modules/oauth.js\n");
/***/ }),
/***/ "./src/modules/oauth_tokens.js":
/*!*************************************!*\
!*** ./src/modules/oauth_tokens.js ***!
\*************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\nvar oauthTokens = {\n state: {\n tokens: []\n },\n actions: {\n fetchTokens: function fetchTokens(_ref) {\n var rootState = _ref.rootState,\n commit = _ref.commit;\n rootState.api.backendInteractor.fetchOAuthTokens().then(function (tokens) {\n commit('swapTokens', tokens);\n });\n },\n revokeToken: function revokeToken(_ref2, id) {\n var rootState = _ref2.rootState,\n commit = _ref2.commit,\n state = _ref2.state;\n rootState.api.backendInteractor.revokeOAuthToken({\n id: id\n }).then(function (response) {\n if (response.status === 201) {\n commit('swapTokens', state.tokens.filter(function (token) {\n return token.id !== id;\n }));\n }\n });\n }\n },\n mutations: {\n swapTokens: function swapTokens(state, tokens) {\n state.tokens = tokens;\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (oauthTokens);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvbW9kdWxlcy9vYXV0aF90b2tlbnMuanMuanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBLElBQU1BLFdBQVcsR0FBRztFQUNsQkMsS0FBSyxFQUFFO0lBQ0xDLE1BQU0sRUFBRTtFQUNWLENBQUM7RUFDREMsT0FBTyxFQUFFO0lBQ1BDLFdBQVcsV0FBQUEsWUFBQUMsSUFBQSxFQUF5QjtNQUFBLElBQXJCQyxTQUFTLEdBQUFELElBQUEsQ0FBVEMsU0FBUztRQUFFQyxNQUFNLEdBQUFGLElBQUEsQ0FBTkUsTUFBTTtNQUM5QkQsU0FBUyxDQUFDRSxHQUFHLENBQUNDLGlCQUFpQixDQUFDQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUNDLElBQUksQ0FBQyxVQUFDVCxNQUFNLEVBQUs7UUFDbEVLLE1BQU0sQ0FBQyxZQUFZLEVBQUVMLE1BQU0sQ0FBQztNQUM5QixDQUFDLENBQUM7SUFDSixDQUFDO0lBQ0RVLFdBQVcsV0FBQUEsWUFBQUMsS0FBQSxFQUFnQ0MsRUFBRSxFQUFFO01BQUEsSUFBaENSLFNBQVMsR0FBQU8sS0FBQSxDQUFUUCxTQUFTO1FBQUVDLE1BQU0sR0FBQU0sS0FBQSxDQUFOTixNQUFNO1FBQUVOLEtBQUssR0FBQVksS0FBQSxDQUFMWixLQUFLO01BQ3JDSyxTQUFTLENBQUNFLEdBQUcsQ0FBQ0MsaUJBQWlCLENBQUNNLGdCQUFnQixDQUFDO1FBQUVELEVBQUUsRUFBRkE7TUFBRyxDQUFDLENBQUMsQ0FBQ0gsSUFBSSxDQUFDLFVBQUNLLFFBQVEsRUFBSztRQUMxRSxJQUFJQSxRQUFRLENBQUNDLE1BQU0sS0FBSyxHQUFHLEVBQUU7VUFDM0JWLE1BQU0sQ0FBQyxZQUFZLEVBQUVOLEtBQUssQ0FBQ0MsTUFBTSxDQUFDZ0IsTUFBTSxDQUFDLFVBQUFDLEtBQUs7WUFBQSxPQUFJQSxLQUFLLENBQUNMLEVBQUUsS0FBS0EsRUFBRTtVQUFBLEVBQUMsQ0FBQztRQUNyRTtNQUNGLENBQUMsQ0FBQztJQUNKO0VBQ0YsQ0FBQztFQUNETSxTQUFTLEVBQUU7SUFDVEMsVUFBVSxXQUFBQSxXQUFFcEIsS0FBSyxFQUFFQyxNQUFNLEVBQUU7TUFDekJELEtBQUssQ0FBQ0MsTUFBTSxHQUFHQSxNQUFNO0lBQ3ZCO0VBQ0Y7QUFDRixDQUFDO0FBRUQsaUVBQWVGLFdBQVciLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL21vZHVsZXMvb2F1dGhfdG9rZW5zLmpzPzliYzEiXSwic291cmNlc0NvbnRlbnQiOlsiY29uc3Qgb2F1dGhUb2tlbnMgPSB7XG4gIHN0YXRlOiB7XG4gICAgdG9rZW5zOiBbXVxuICB9LFxuICBhY3Rpb25zOiB7XG4gICAgZmV0Y2hUb2tlbnMgKHsgcm9vdFN0YXRlLCBjb21taXQgfSkge1xuICAgICAgcm9vdFN0YXRlLmFwaS5iYWNrZW5kSW50ZXJhY3Rvci5mZXRjaE9BdXRoVG9rZW5zKCkudGhlbigodG9rZW5zKSA9PiB7XG4gICAgICAgIGNvbW1pdCgnc3dhcFRva2VucycsIHRva2VucylcbiAgICAgIH0pXG4gICAgfSxcbiAgICByZXZva2VUb2tlbiAoeyByb290U3RhdGUsIGNvbW1pdCwgc3RhdGUgfSwgaWQpIHtcbiAgICAgIHJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IucmV2b2tlT0F1dGhUb2tlbih7IGlkIH0pLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgIGlmIChyZXNwb25zZS5zdGF0dXMgPT09IDIwMSkge1xuICAgICAgICAgIGNvbW1pdCgnc3dhcFRva2VucycsIHN0YXRlLnRva2Vucy5maWx0ZXIodG9rZW4gPT4gdG9rZW4uaWQgIT09IGlkKSlcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9XG4gIH0sXG4gIG11dGF0aW9uczoge1xuICAgIHN3YXBUb2tlbnMgKHN0YXRlLCB0b2tlbnMpIHtcbiAgICAgIHN0YXRlLnRva2VucyA9IHRva2Vuc1xuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBvYXV0aFRva2Vuc1xuIl0sIm5hbWVzIjpbIm9hdXRoVG9rZW5zIiwic3RhdGUiLCJ0b2tlbnMiLCJhY3Rpb25zIiwiZmV0Y2hUb2tlbnMiLCJfcmVmIiwicm9vdFN0YXRlIiwiY29tbWl0IiwiYXBpIiwiYmFja2VuZEludGVyYWN0b3IiLCJmZXRjaE9BdXRoVG9rZW5zIiwidGhlbiIsInJldm9rZVRva2VuIiwiX3JlZjIiLCJpZCIsInJldm9rZU9BdXRoVG9rZW4iLCJyZXNwb25zZSIsInN0YXR1cyIsImZpbHRlciIsInRva2VuIiwibXV0YXRpb25zIiwic3dhcFRva2VucyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/modules/oauth_tokens.js\n");
/***/ }),
/***/ "./src/modules/polls.js":
/*!******************************!*\
!*** ./src/modules/polls.js ***!
\******************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var lodash_merge__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/merge */ \"./node_modules/lodash/merge.js\");\n/* harmony import */ var lodash_merge__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_merge__WEBPACK_IMPORTED_MODULE_0__);\n\nvar polls = {\n state: {\n // Contains key = id, value = number of trackers for this poll\n trackedPolls: {},\n pollsObject: {}\n },\n mutations: {\n mergeOrAddPoll: function mergeOrAddPoll(state, poll) {\n var existingPoll = state.pollsObject[poll.id];\n // Make expired-state change trigger re-renders properly\n poll.expired = Date.now() > Date.parse(poll.expires_at);\n if (existingPoll) {\n state.pollsObject[poll.id] = lodash_merge__WEBPACK_IMPORTED_MODULE_0___default()(existingPoll, poll);\n } else {\n state.pollsObject[poll.id] = poll;\n }\n },\n trackPoll: function trackPoll(state, pollId) {\n var currentValue = state.trackedPolls[pollId];\n if (currentValue) {\n state.trackedPolls[pollId] = currentValue + 1;\n } else {\n state.trackedPolls[pollId] = 1;\n }\n },\n untrackPoll: function untrackPoll(state, pollId) {\n var currentValue = state.trackedPolls[pollId];\n if (currentValue) {\n state.trackedPolls[pollId] = currentValue - 1;\n } else {\n state.trackedPolls[pollId] = 0;\n }\n }\n },\n actions: {\n mergeOrAddPoll: function mergeOrAddPoll(_ref, poll) {\n var commit = _ref.commit;\n commit('mergeOrAddPoll', poll);\n },\n updateTrackedPoll: function updateTrackedPoll(_ref2, pollId) {\n var rootState = _ref2.rootState,\n dispatch = _ref2.dispatch,\n commit = _ref2.commit;\n rootState.api.backendInteractor.fetchPoll({\n pollId: pollId\n }).then(function (poll) {\n setTimeout(function () {\n if (rootState.polls.trackedPolls[pollId]) {\n dispatch('updateTrackedPoll', pollId);\n }\n }, 30 * 1000);\n commit('mergeOrAddPoll', poll);\n });\n },\n trackPoll: function trackPoll(_ref3, pollId) {\n var rootState = _ref3.rootState,\n commit = _ref3.commit,\n dispatch = _ref3.dispatch;\n if (!rootState.polls.trackedPolls[pollId]) {\n setTimeout(function () {\n return dispatch('updateTrackedPoll', pollId);\n }, 30 * 1000);\n }\n commit('trackPoll', pollId);\n },\n untrackPoll: function untrackPoll(_ref4, pollId) {\n var commit = _ref4.commit;\n commit('untrackPoll', pollId);\n },\n votePoll: function votePoll(_ref5, _ref6) {\n var rootState = _ref5.rootState,\n commit = _ref5.commit;\n var id = _ref6.id,\n pollId = _ref6.pollId,\n choices = _ref6.choices;\n return rootState.api.backendInteractor.vote({\n pollId: pollId,\n choices: choices\n }).then(function (poll) {\n commit('mergeOrAddPoll', poll);\n return poll;\n });\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (polls);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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QzlCLE9BQU9BLElBQUk7TUFDYixDQUFDLENBQUM7SUFDSjtFQUNGO0FBQ0YsQ0FBQztBQUVELGlFQUFlTixLQUFLIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9tb2R1bGVzL3BvbGxzLmpzPzZiNWMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbWVyZ2UgfSBmcm9tICdsb2Rhc2gnXG5cbmNvbnN0IHBvbGxzID0ge1xuICBzdGF0ZToge1xuICAgIC8vIENvbnRhaW5zIGtleSA9IGlkLCB2YWx1ZSA9IG51bWJlciBvZiB0cmFja2VycyBmb3IgdGhpcyBwb2xsXG4gICAgdHJhY2tlZFBvbGxzOiB7fSxcbiAgICBwb2xsc09iamVjdDoge31cbiAgfSxcbiAgbXV0YXRpb25zOiB7XG4gICAgbWVyZ2VPckFkZFBvbGwgKHN0YXRlLCBwb2xsKSB7XG4gICAgICBjb25zdCBleGlzdGluZ1BvbGwgPSBzdGF0ZS5wb2xsc09iamVjdFtwb2xsLmlkXVxuICAgICAgLy8gTWFrZSBleHBpcmVkLXN0YXRlIGNoYW5nZSB0cmlnZ2VyIHJlLXJlbmRlcnMgcHJvcGVybHlcbiAgICAgIHBvbGwuZXhwaXJlZCA9IERhdGUubm93KCkgPiBEYXRlLnBhcnNlKHBvbGwuZXhwaXJlc19hdClcbiAgICAgIGlmIChleGlzdGluZ1BvbGwpIHtcbiAgICAgICAgc3RhdGUucG9sbHNPYmplY3RbcG9sbC5pZF0gPSBtZXJnZShleGlzdGluZ1BvbGwsIHBvbGwpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzdGF0ZS5wb2xsc09iamVjdFtwb2xsLmlkXSA9IHBvbGxcbiAgICAgIH1cbiAgICB9LFxuICAgIHRyYWNrUG9sbCAoc3RhdGUsIHBvbGxJZCkge1xuICAgICAgY29uc3QgY3VycmVudFZhbHVlID0gc3RhdGUudHJhY2tlZFBvbGxzW3BvbGxJZF1cbiAgICAgIGlmIChjdXJyZW50VmFsdWUpIHtcbiAgICAgICAgc3RhdGUudHJhY2tlZFBvbGxzW3BvbGxJZF0gPSBjdXJyZW50VmFsdWUgKyAxXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzdGF0ZS50cmFja2VkUG9sbHNbcG9sbElkXSA9IDFcbiAgICAgIH1cbiAgICB9LFxuICAgIHVudHJhY2tQb2xsIChzdGF0ZSwgcG9sbElkKSB7XG4gICAgICBjb25zdCBjdXJyZW50VmFsdWUgPSBzdGF0ZS50cmFja2VkUG9sbHNbcG9sbElkXVxuICAgICAgaWYgKGN1cnJlbnRWYWx1ZSkge1xuICAgICAgICBzdGF0ZS50cmFja2VkUG9sbHNbcG9sbElkXSA9IGN1cnJlbnRWYWx1ZSAtIDFcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHN0YXRlLnRyYWNrZWRQb2xsc1twb2xsSWRdID0gMFxuICAgICAgfVxuICAgIH1cbiAgfSxcbiAgYWN0aW9uczoge1xuICAgIG1lcmdlT3JBZGRQb2xsICh7IGNvbW1pdCB9LCBwb2xsKSB7XG4gICAgICBjb21taXQoJ21lcmdlT3JBZGRQb2xsJywgcG9sbClcbiAgICB9LFxuICAgIHVwZGF0ZVRyYWNrZWRQb2xsICh7IHJvb3RTdGF0ZSwgZGlzcGF0Y2gsIGNvbW1pdCB9LCBwb2xsSWQpIHtcbiAgICAgIHJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IuZmV0Y2hQb2xsKHsgcG9sbElkIH0pLnRoZW4ocG9sbCA9PiB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIGlmIChyb290U3RhdGUucG9sbHMudHJhY2tlZFBvbGxzW3BvbGxJZF0pIHtcbiAgICAgICAgICAgIGRpc3BhdGNoKCd1cGRhdGVUcmFja2VkUG9sbCcsIHBvbGxJZClcbiAgICAgICAgICB9XG4gICAgICAgIH0sIDMwICogMTAwMClcbiAgICAgICAgY29tbWl0KCdtZXJnZU9yQWRkUG9sbCcsIHBvbGwpXG4gICAgICB9KVxuICAgIH0sXG4gICAgdHJhY2tQb2xsICh7IHJvb3RTdGF0ZSwgY29tbWl0LCBkaXNwYXRjaCB9LCBwb2xsSWQpIHtcbiAgICAgIGlmICghcm9vdFN0YXRlLnBvbGxzLnRyYWNrZWRQb2xsc1twb2xsSWRdKSB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4gZGlzcGF0Y2goJ3VwZGF0ZVRyYWNrZWRQb2xsJywgcG9sbElkKSwgMzAgKiAxMDAwKVxuICAgICAgfVxuICAgICAgY29tbWl0KCd0cmFja1BvbGwnLCBwb2xsSWQpXG4gICAgfSxcbiAgICB1bnRyYWNrUG9sbCAoeyBjb21taXQgfSwgcG9sbElkKSB7XG4gICAgICBjb21taXQoJ3VudHJhY2tQb2xsJywgcG9sbElkKVxuICAgIH0sXG4gICAgdm90ZVBvbGwgKHsgcm9vdFN0YXRlLCBjb21taXQgfSwgeyBpZCwgcG9sbElkLCBjaG9pY2VzIH0pIHtcbiAgICAgIHJldHVybiByb290U3RhdGUuYXBpLmJhY2tlbmRJbnRlcmFjdG9yLnZvdGUoeyBwb2xsSWQsIGNob2ljZXMgfSkudGhlbihwb2xsID0+IHtcbiAgICAgICAgY29tbWl0KCdtZXJnZU9yQWRkUG9sbCcsIHBvbGwpXG4gICAgICAgIHJldHVybiBwb2xsXG4gICAgICB9KVxuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBwb2xsc1xuIl0sIm5hbWVzIjpbInBvbGxzIiwic3RhdGUiLCJ0cmFja2VkUG9sbHMiLCJwb2xsc09iamVjdCIsIm11dGF0aW9ucyIsIm1lcmdlT3JBZGRQb2xsIiwicG9sbCIsImV4aXN0aW5nUG9sbCIsImlkIiwiZXhwaXJlZCIsIkRhdGUiLCJub3ciLCJwYXJzZSIsImV4cGlyZXNfYXQiLCJfbWVyZ2UiLCJ0cmFja1BvbGwiLCJwb2xsSWQiLCJjdXJyZW50VmFsdWUiLCJ1bnRyYWNrUG9sbCIsImFjdGlvbnMiLCJfcmVmIiwiY29tbWl0IiwidXBkYXRlVHJhY2tlZFBvbGwiLCJfcmVmMiIsInJvb3RTdGF0ZSIsImRpc3BhdGNoIiwiYXBpIiwiYmFja2VuZEludGVyYWN0b3IiLCJmZXRjaFBvbGwiLCJ0aGVuIiwic2V0VGltZW91dCIsIl9yZWYzIiwiX3JlZjQiLCJ2b3RlUG9sbCIsIl9yZWY1IiwiX3JlZjYiLCJjaG9pY2VzIiwidm90ZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/modules/polls.js\n");
/***/ }),
/***/ "./src/modules/postStatus.js":
/*!***********************************!*\
!*** ./src/modules/postStatus.js ***!
\***********************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\nvar postStatus = {\n state: {\n params: null,\n modalActivated: false\n },\n mutations: {\n openPostStatusModal: function openPostStatusModal(state, params) {\n state.params = params;\n state.modalActivated = true;\n },\n closePostStatusModal: function closePostStatusModal(state) {\n state.modalActivated = false;\n },\n resetPostStatusModal: function resetPostStatusModal(state) {\n state.params = null;\n }\n },\n actions: {\n openPostStatusModal: function openPostStatusModal(_ref, params) {\n var commit = _ref.commit;\n commit('openPostStatusModal', params);\n },\n closePostStatusModal: function closePostStatusModal(_ref2) {\n var commit = _ref2.commit;\n commit('closePostStatusModal');\n },\n resetPostStatusModal: function resetPostStatusModal(_ref3) {\n var commit = _ref3.commit;\n commit('resetPostStatusModal');\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (postStatus);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvbW9kdWxlcy9wb3N0U3RhdHVzLmpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQSxJQUFNQSxVQUFVLEdBQUc7RUFDakJDLEtBQUssRUFBRTtJQUNMQyxNQUFNLEVBQUUsSUFBSTtJQUNaQyxjQUFjLEVBQUU7RUFDbEIsQ0FBQztFQUNEQyxTQUFTLEVBQUU7SUFDVEMsbUJBQW1CLFdBQUFBLG9CQUFFSixLQUFLLEVBQUVDLE1BQU0sRUFBRTtNQUNsQ0QsS0FBSyxDQUFDQyxNQUFNLEdBQUdBLE1BQU07TUFDckJELEtBQUssQ0FBQ0UsY0FBYyxHQUFHLElBQUk7SUFDN0IsQ0FBQztJQUNERyxvQkFBb0IsV0FBQUEscUJBQUVMLEtBQUssRUFBRTtNQUMzQkEsS0FBSyxDQUFDRSxjQUFjLEdBQUcsS0FBSztJQUM5QixDQUFDO0lBQ0RJLG9CQUFvQixXQUFBQSxxQkFBRU4sS0FBSyxFQUFFO01BQzNCQSxLQUFLLENBQUNDLE1BQU0sR0FBRyxJQUFJO0lBQ3JCO0VBQ0YsQ0FBQztFQUNETSxPQUFPLEVBQUU7SUFDUEgsbUJBQW1CLFdBQUFBLG9CQUFBSSxJQUFBLEVBQWNQLE1BQU0sRUFBRTtNQUFBLElBQWxCUSxNQUFNLEdBQUFELElBQUEsQ0FBTkMsTUFBTTtNQUMzQkEsTUFBTSxDQUFDLHFCQUFxQixFQUFFUixNQUFNLENBQUM7SUFDdkMsQ0FBQztJQUNESSxvQkFBb0IsV0FBQUEscUJBQUFLLEtBQUEsRUFBYztNQUFBLElBQVZELE1BQU0sR0FBQUMsS0FBQSxDQUFORCxNQUFNO01BQzVCQSxNQUFNLENBQUMsc0JBQXNCLENBQUM7SUFDaEMsQ0FBQztJQUNESCxvQkFBb0IsV0FBQUEscUJBQUFLLEtBQUEsRUFBYztNQUFBLElBQVZGLE1BQU0sR0FBQUUsS0FBQSxDQUFORixNQUFNO01BQzVCQSxNQUFNLENBQUMsc0JBQXNCLENBQUM7SUFDaEM7RUFDRjtBQUNGLENBQUM7QUFFRCxpRUFBZVYsVUFBVSIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvbW9kdWxlcy9wb3N0U3RhdHVzLmpzP2NkNzUiXSwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgcG9zdFN0YXR1cyA9IHtcbiAgc3RhdGU6IHtcbiAgICBwYXJhbXM6IG51bGwsXG4gICAgbW9kYWxBY3RpdmF0ZWQ6IGZhbHNlXG4gIH0sXG4gIG11dGF0aW9uczoge1xuICAgIG9wZW5Qb3N0U3RhdHVzTW9kYWwgKHN0YXRlLCBwYXJhbXMpIHtcbiAgICAgIHN0YXRlLnBhcmFtcyA9IHBhcmFtc1xuICAgICAgc3RhdGUubW9kYWxBY3RpdmF0ZWQgPSB0cnVlXG4gICAgfSxcbiAgICBjbG9zZVBvc3RTdGF0dXNNb2RhbCAoc3RhdGUpIHtcbiAgICAgIHN0YXRlLm1vZGFsQWN0aXZhdGVkID0gZmFsc2VcbiAgICB9LFxuICAgIHJlc2V0UG9zdFN0YXR1c01vZGFsIChzdGF0ZSkge1xuICAgICAgc3RhdGUucGFyYW1zID0gbnVsbFxuICAgIH1cbiAgfSxcbiAgYWN0aW9uczoge1xuICAgIG9wZW5Qb3N0U3RhdHVzTW9kYWwgKHsgY29tbWl0IH0sIHBhcmFtcykge1xuICAgICAgY29tbWl0KCdvcGVuUG9zdFN0YXR1c01vZGFsJywgcGFyYW1zKVxuICAgIH0sXG4gICAgY2xvc2VQb3N0U3RhdHVzTW9kYWwgKHsgY29tbWl0IH0pIHtcbiAgICAgIGNvbW1pdCgnY2xvc2VQb3N0U3RhdHVzTW9kYWwnKVxuICAgIH0sXG4gICAgcmVzZXRQb3N0U3RhdHVzTW9kYWwgKHsgY29tbWl0IH0pIHtcbiAgICAgIGNvbW1pdCgncmVzZXRQb3N0U3RhdHVzTW9kYWwnKVxuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBwb3N0U3RhdHVzXG4iXSwibmFtZXMiOlsicG9zdFN0YXR1cyIsInN0YXRlIiwicGFyYW1zIiwibW9kYWxBY3RpdmF0ZWQiLCJtdXRhdGlvbnMiLCJvcGVuUG9zdFN0YXR1c01vZGFsIiwiY2xvc2VQb3N0U3RhdHVzTW9kYWwiLCJyZXNldFBvc3RTdGF0dXNNb2RhbCIsImFjdGlvbnMiLCJfcmVmIiwiY29tbWl0IiwiX3JlZjIiLCJfcmVmMyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/modules/postStatus.js\n");
/***/ }),
/***/ "./src/modules/profileConfig.js":
/*!**************************************!*\
!*** ./src/modules/profileConfig.js ***!
\**************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__),\n/* harmony export */ \"defaultState\": () => (/* binding */ defaultState),\n/* harmony export */ \"settingsMap\": () => (/* binding */ settingsMap)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ \"./node_modules/@babel/runtime/helpers/esm/slicedToArray.js\");\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"./node_modules/@babel/runtime/helpers/esm/defineProperty.js\");\n/* harmony import */ var lodash_set__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! lodash/set */ \"./node_modules/lodash/set.js\");\n/* harmony import */ var lodash_set__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(lodash_set__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var lodash_get__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! lodash/get */ \"./node_modules/lodash/get.js\");\n/* harmony import */ var lodash_get__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(lodash_get__WEBPACK_IMPORTED_MODULE_3__);\n\n\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(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; }\nvar defaultApi = function defaultApi(_ref, _ref2) {\n var rootState = _ref.rootState,\n commit = _ref.commit;\n var path = _ref2.path,\n value = _ref2.value;\n var params = {};\n lodash_set__WEBPACK_IMPORTED_MODULE_2___default()(params, path, value);\n return rootState.api.backendInteractor.updateProfile({\n params: params\n }).then(function (result) {\n commit('addNewUsers', [result]);\n commit('setCurrentUser', result);\n });\n};\nvar notificationsApi = function notificationsApi(_ref3, _ref4) {\n var rootState = _ref3.rootState,\n commit = _ref3.commit;\n var path = _ref4.path,\n value = _ref4.value,\n oldValue = _ref4.oldValue;\n var settings = {};\n lodash_set__WEBPACK_IMPORTED_MODULE_2___default()(settings, path, value);\n return rootState.api.backendInteractor.updateNotificationSettings({\n settings: settings\n }).then(function (result) {\n if (result.status === 'success') {\n commit('confirmProfileOption', {\n name: name,\n value: value\n });\n } else {\n commit('confirmProfileOption', {\n name: name,\n value: oldValue\n });\n }\n });\n};\n\n/**\n * Map that stores relation between path for reading (from user profile),\n * for writing (into API) an what API to use.\n *\n * Shorthand - instead of { get, set, api? } object it's possible to use string\n * in case default api is used and get = set\n *\n * If no api is specified, defaultApi is used (see above)\n */\nvar settingsMap = {\n defaultScope: 'source.privacy',\n defaultNSFW: 'source.sensitive',\n // BROKEN: pleroma/pleroma#2837\n stripRichContent: {\n get: 'source.pleroma.no_rich_text',\n set: 'no_rich_text'\n },\n // Privacy\n locked: 'locked',\n acceptChatMessages: {\n get: 'pleroma.accepts_chat_messages',\n set: 'accepts_chat_messages'\n },\n allowFollowingMove: {\n get: 'pleroma.allow_following_move',\n set: 'allow_following_move'\n },\n discoverable: {\n get: 'source.pleroma.discoverable',\n set: 'discoverable'\n },\n hideFavorites: {\n get: 'pleroma.hide_favorites',\n set: 'hide_favorites'\n },\n hideFollowers: {\n get: 'pleroma.hide_followers',\n set: 'hide_followers'\n },\n hideFollows: {\n get: 'pleroma.hide_follows',\n set: 'hide_follows'\n },\n hideFollowersCount: {\n get: 'pleroma.hide_followers_count',\n set: 'hide_followers_count'\n },\n hideFollowsCount: {\n get: 'pleroma.hide_follows_count',\n set: 'hide_follows_count'\n },\n // NotificationSettingsAPIs\n webPushHideContents: {\n get: 'pleroma.notification_settings.hide_notification_contents',\n set: 'hide_notification_contents',\n api: notificationsApi\n },\n blockNotificationsFromStrangers: {\n get: 'pleroma.notification_settings.block_from_strangers',\n set: 'block_from_strangers',\n api: notificationsApi\n }\n};\nvar defaultState = Object.fromEntries(Object.keys(settingsMap).map(function (key) {\n return [key, null];\n}));\nvar profileConfig = {\n state: _objectSpread({}, defaultState),\n mutations: {\n confirmProfileOption: function confirmProfileOption(state, _ref5) {\n var name = _ref5.name,\n value = _ref5.value;\n lodash_set__WEBPACK_IMPORTED_MODULE_2___default()(state, name, value);\n },\n wipeProfileOption: function wipeProfileOption(state, _ref6) {\n var name = _ref6.name;\n lodash_set__WEBPACK_IMPORTED_MODULE_2___default()(state, name, null);\n },\n wipeAllProfileOptions: function wipeAllProfileOptions(state) {\n Object.keys(settingsMap).forEach(function (key) {\n lodash_set__WEBPACK_IMPORTED_MODULE_2___default()(state, key, null);\n });\n },\n // Set the settings based on their path location\n setCurrentUser: function setCurrentUser(state, user) {\n Object.entries(settingsMap).forEach(function (map) {\n var _map = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(map, 2),\n name = _map[0],\n value = _map[1];\n var _value$get = value.get,\n path = _value$get === void 0 ? value : _value$get;\n lodash_set__WEBPACK_IMPORTED_MODULE_2___default()(state, name, lodash_get__WEBPACK_IMPORTED_MODULE_3___default()(user._original, path));\n });\n }\n },\n actions: {\n setProfileOption: function setProfileOption(_ref7, _ref8) {\n var rootState = _ref7.rootState,\n state = _ref7.state,\n commit = _ref7.commit,\n dispatch = _ref7.dispatch;\n var name = _ref8.name,\n value = _ref8.value;\n var oldValue = lodash_get__WEBPACK_IMPORTED_MODULE_3___default()(state, name);\n var map = settingsMap[name];\n if (!map) throw new Error('Invalid server-side setting');\n var _map$set = map.set,\n path = _map$set === void 0 ? map : _map$set,\n _map$api = map.api,\n api = _map$api === void 0 ? defaultApi : _map$api;\n commit('wipeProfileOption', {\n name: name\n });\n api({\n rootState: rootState,\n commit: commit\n }, {\n path: path,\n value: value,\n oldValue: oldValue\n })[\"catch\"](function (e) {\n console.warn('Error setting server-side option:', e);\n commit('confirmProfileOption', {\n name: name,\n value: oldValue\n });\n });\n },\n logout: function logout(_ref9) {\n var commit = _ref9.commit;\n commit('wipeAllProfileOptions');\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (profileConfig);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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Q0R5RCxNQUFNLFdBQUFBLE9BQUFDLEtBQUEsRUFBYztNQUFBLElBQVZ2RSxNQUFNLEdBQUF1RSxLQUFBLENBQU52RSxNQUFNO01BQ2RBLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQztJQUNqQztFQUNGO0FBQ0YsQ0FBQztBQUVELGlFQUFleUMsYUFBYSIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvbW9kdWxlcy9wcm9maWxlQ29uZmlnLmpzPzYyMGEiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZ2V0LCBzZXQgfSBmcm9tICdsb2Rhc2gnXG5cbmNvbnN0IGRlZmF1bHRBcGkgPSAoeyByb290U3RhdGUsIGNvbW1pdCB9LCB7IHBhdGgsIHZhbHVlIH0pID0+IHtcbiAgY29uc3QgcGFyYW1zID0ge31cbiAgc2V0KHBhcmFtcywgcGF0aCwgdmFsdWUpXG4gIHJldHVybiByb290U3RhdGVcbiAgICAuYXBpXG4gICAgLmJhY2tlbmRJbnRlcmFjdG9yXG4gICAgLnVwZGF0ZVByb2ZpbGUoeyBwYXJhbXMgfSlcbiAgICAudGhlbihyZXN1bHQgPT4ge1xuICAgICAgY29tbWl0KCdhZGROZXdVc2VycycsIFtyZXN1bHRdKVxuICAgICAgY29tbWl0KCdzZXRDdXJyZW50VXNlcicsIHJlc3VsdClcbiAgICB9KVxufVxuXG5jb25zdCBub3RpZmljYXRpb25zQXBpID0gKHsgcm9vdFN0YXRlLCBjb21taXQgfSwgeyBwYXRoLCB2YWx1ZSwgb2xkVmFsdWUgfSkgPT4ge1xuICBjb25zdCBzZXR0aW5ncyA9IHt9XG4gIHNldChzZXR0aW5ncywgcGF0aCwgdmFsdWUpXG4gIHJldHVybiByb290U3RhdGVcbiAgICAuYXBpXG4gICAgLmJhY2tlbmRJbnRlcmFjdG9yXG4gICAgLnVwZGF0ZU5vdGlmaWNhdGlvblNldHRpbmdzKHsgc2V0dGluZ3MgfSlcbiAgICAudGhlbihyZXN1bHQgPT4ge1xuICAgICAgaWYgKHJlc3VsdC5zdGF0dXMgPT09ICdzdWNjZXNzJykge1xuICAgICAgICBjb21taXQoJ2NvbmZpcm1Qcm9maWxlT3B0aW9uJywgeyBuYW1lLCB2YWx1ZSB9KVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29tbWl0KCdjb25maXJtUHJvZmlsZU9wdGlvbicsIHsgbmFtZSwgdmFsdWU6IG9sZFZhbHVlIH0pXG4gICAgICB9XG4gICAgfSlcbn1cblxuLyoqXG4gKiBNYXAgdGhhdCBzdG9yZXMgcmVsYXRpb24gYmV0d2VlbiBwYXRoIGZvciByZWFkaW5nIChmcm9tIHVzZXIgcHJvZmlsZSksXG4gKiBmb3Igd3JpdGluZyAoaW50byBBUEkpIGFuIHdoYXQgQVBJIHRvIHVzZS5cbiAqXG4gKiBTaG9ydGhhbmQgLSBpbnN0ZWFkIG9mIHsgZ2V0LCBzZXQsIGFwaT8gfSBvYmplY3QgaXQncyBwb3NzaWJsZSB0byB1c2Ugc3RyaW5nXG4gKiBpbiBjYXNlIGRlZmF1bHQgYXBpIGlzIHVzZWQgYW5kIGdldCA9IHNldFxuICpcbiAqIElmIG5vIGFwaSBpcyBzcGVjaWZpZWQsIGRlZmF1bHRBcGkgaXMgdXNlZCAoc2VlIGFib3ZlKVxuICovXG5leHBvcnQgY29uc3Qgc2V0dGluZ3NNYXAgPSB7XG4gIGRlZmF1bHRTY29wZTogJ3NvdXJjZS5wcml2YWN5JyxcbiAgZGVmYXVsdE5TRlc6ICdzb3VyY2Uuc2Vuc2l0aXZlJywgLy8gQlJPS0VOOiBwbGVyb21hL3BsZXJvbWEjMjgzN1xuICBzdHJpcFJpY2hDb250ZW50OiB7XG4gICAgZ2V0OiAnc291cmNlLnBsZXJvbWEubm9fcmljaF90ZXh0JyxcbiAgICBzZXQ6ICdub19yaWNoX3RleHQnXG4gIH0sXG4gIC8vIFByaXZhY3lcbiAgbG9ja2VkOiAnbG9ja2VkJyxcbiAgYWNjZXB0Q2hhdE1lc3NhZ2VzOiB7XG4gICAgZ2V0OiAncGxlcm9tYS5hY2NlcHRzX2NoYXRfbWVzc2FnZXMnLFxuICAgIHNldDogJ2FjY2VwdHNfY2hhdF9tZXNzYWdlcydcbiAgfSxcbiAgYWxsb3dGb2xsb3dpbmdNb3ZlOiB7XG4gICAgZ2V0OiAncGxlcm9tYS5hbGxvd19mb2xsb3dpbmdfbW92ZScsXG4gICAgc2V0OiAnYWxsb3dfZm9sbG93aW5nX21vdmUnXG4gIH0sXG4gIGRpc2NvdmVyYWJsZToge1xuICAgIGdldDogJ3NvdXJjZS5wbGVyb21hLmRpc2NvdmVyYWJsZScsXG4gICAgc2V0OiAnZGlzY292ZXJhYmxlJ1xuICB9LFxuICBoaWRlRmF2b3JpdGVzOiB7XG4gICAgZ2V0OiAncGxlcm9tYS5oaWRlX2Zhdm9yaXRlcycsXG4gICAgc2V0OiAnaGlkZV9mYXZvcml0ZXMnXG4gIH0sXG4gIGhpZGVGb2xsb3dlcnM6IHtcbiAgICBnZXQ6ICdwbGVyb21hLmhpZGVfZm9sbG93ZXJzJyxcbiAgICBzZXQ6ICdoaWRlX2ZvbGxvd2VycydcbiAgfSxcbiAgaGlkZUZvbGxvd3M6IHtcbiAgICBnZXQ6ICdwbGVyb21hLmhpZGVfZm9sbG93cycsXG4gICAgc2V0OiAnaGlkZV9mb2xsb3dzJ1xuICB9LFxuICBoaWRlRm9sbG93ZXJzQ291bnQ6IHtcbiAgICBnZXQ6ICdwbGVyb21hLmhpZGVfZm9sbG93ZXJzX2NvdW50JyxcbiAgICBzZXQ6ICdoaWRlX2ZvbGxvd2Vyc19jb3VudCdcbiAgfSxcbiAgaGlkZUZvbGxvd3NDb3VudDoge1xuICAgIGdldDogJ3BsZXJvbWEuaGlkZV9mb2xsb3dzX2NvdW50JyxcbiAgICBzZXQ6ICdoaWRlX2ZvbGxvd3NfY291bnQnXG4gIH0sXG4gIC8vIE5vdGlmaWNhdGlvblNldHRpbmdzQVBJc1xuICB3ZWJQdXNoSGlkZUNvbnRlbnRzOiB7XG4gICAgZ2V0OiAncGxlcm9tYS5ub3RpZmljYXRpb25fc2V0dGluZ3MuaGlkZV9ub3RpZmljYXRpb25fY29udGVudHMnLFxuICAgIHNldDogJ2hpZGVfbm90aWZpY2F0aW9uX2NvbnRlbnRzJyxcbiAgICBhcGk6IG5vdGlmaWNhdGlvbnNBcGlcbiAgfSxcbiAgYmxvY2tOb3RpZmljYXRpb25zRnJvbVN0cmFuZ2Vyczoge1xuICAgIGdldDogJ3BsZXJvbWEubm90aWZpY2F0aW9uX3NldHRpbmdzLmJsb2NrX2Zyb21fc3RyYW5nZXJzJyxcbiAgICBzZXQ6ICdibG9ja19mcm9tX3N0cmFuZ2VycycsXG4gICAgYXBpOiBub3RpZmljYXRpb25zQXBpXG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IGRlZmF1bHRTdGF0ZSA9IE9iamVjdC5mcm9tRW50cmllcyhPYmplY3Qua2V5cyhzZXR0aW5nc01hcCkubWFwKGtleSA9PiBba2V5LCBudWxsXSkpXG5cbmNvbnN0IHByb2ZpbGVDb25maWcgPSB7XG4gIHN0YXRlOiB7IC4uLmRlZmF1bHRTdGF0ZSB9LFxuICBtdXRhdGlvbnM6IHtcbiAgICBjb25maXJtUHJvZmlsZU9wdGlvbiAoc3RhdGUsIHsgbmFtZSwgdmFsdWUgfSkge1xuICAgICAgc2V0KHN0YXRlLCBuYW1lLCB2YWx1ZSlcbiAgICB9LFxuICAgIHdpcGVQcm9maWxlT3B0aW9uIChzdGF0ZSwgeyBuYW1lIH0pIHtcbiAgICAgIHNldChzdGF0ZSwgbmFtZSwgbnVsbClcbiAgICB9LFxuICAgIHdpcGVBbGxQcm9maWxlT3B0aW9ucyAoc3RhdGUpIHtcbiAgICAgIE9iamVjdC5rZXlzKHNldHRpbmdzTWFwKS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgIHNldChzdGF0ZSwga2V5LCBudWxsKVxuICAgICAgfSlcbiAgICB9LFxuICAgIC8vIFNldCB0aGUgc2V0dGluZ3MgYmFzZWQgb24gdGhlaXIgcGF0aCBsb2NhdGlvblxuICAgIHNldEN1cnJlbnRVc2VyIChzdGF0ZSwgdXNlcikge1xuICAgICAgT2JqZWN0LmVudHJpZXMoc2V0dGluZ3NNYXApLmZvckVhY2goKG1hcCkgPT4ge1xuICAgICAgICBjb25zdCBbbmFtZSwgdmFsdWVdID0gbWFwXG4gICAgICAgIGNvbnN0IHsgZ2V0OiBwYXRoID0gdmFsdWUgfSA9IHZhbHVlXG4gICAgICAgIHNldChzdGF0ZSwgbmFtZSwgZ2V0KHVzZXIuX29yaWdpbmFsLCBwYXRoKSlcbiAgICAgIH0pXG4gICAgfVxuICB9LFxuICBhY3Rpb25zOiB7XG4gICAgc2V0UHJvZmlsZU9wdGlvbiAoeyByb290U3RhdGUsIHN0YXRlLCBjb21taXQsIGRpc3BhdGNoIH0sIHsgbmFtZSwgdmFsdWUgfSkge1xuICAgICAgY29uc3Qgb2xkVmFsdWUgPSBnZXQoc3RhdGUsIG5hbWUpXG4gICAgICBjb25zdCBtYXAgPSBzZXR0aW5nc01hcFtuYW1lXVxuICAgICAgaWYgKCFtYXApIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBzZXJ2ZXItc2lkZSBzZXR0aW5nJylcbiAgICAgIGNvbnN0IHsgc2V0OiBwYXRoID0gbWFwLCBhcGkgPSBkZWZhdWx0QXBpIH0gPSBtYXBcbiAgICAgIGNvbW1pdCgnd2lwZVByb2ZpbGVPcHRpb24nLCB7IG5hbWUgfSlcblxuICAgICAgYXBpKHsgcm9vdFN0YXRlLCBjb21taXQgfSwgeyBwYXRoLCB2YWx1ZSwgb2xkVmFsdWUgfSlcbiAgICAgICAgLmNhdGNoKChlKSA9PiB7XG4gICAgICAgICAgY29uc29sZS53YXJuKCdFcnJvciBzZXR0aW5nIHNlcnZlci1zaWRlIG9wdGlvbjonLCBlKVxuICAgICAgICAgIGNvbW1pdCgnY29uZmlybVByb2ZpbGVPcHRpb24nLCB7IG5hbWUsIHZhbHVlOiBvbGRWYWx1ZSB9KVxuICAgICAgICB9KVxuICAgIH0sXG4gICAgbG9nb3V0ICh7IGNvbW1pdCB9KSB7XG4gICAgICBjb21taXQoJ3dpcGVBbGxQcm9maWxlT3B0aW9ucycpXG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IHByb2ZpbGVDb25maWdcbiJdLCJuYW1lcyI6WyJkZWZhdWx0QXBpIiwiX3JlZiIsIl9yZWYyIiwicm9vdFN0YXRlIiwiY29tbWl0IiwicGF0aCIsInZhbHVlIiwicGFyYW1zIiwiX3NldCIsImFwaSIsImJhY2tlbmRJbnRlcmFjdG9yIiwidXBkYXRlUHJvZmlsZSIsInRoZW4iLCJyZXN1bHQiLCJub3RpZmljYXRpb25zQXBpIiwiX3JlZjMiLCJfcmVmNCIsIm9sZFZhbHVlIiwic2V0dGluZ3MiLCJ1cGRhdGVOb3RpZmljYXRpb25TZXR0aW5ncyIsInN0YXR1cyIsIm5hbWUiLCJzZXR0aW5nc01hcCIsImRlZmF1bHRTY29wZSIsImRlZmF1bHROU0ZXIiwic3RyaXBSaWNoQ29udGVudCIsImdldCIsInNldCIsImxvY2tlZCIsImFjY2VwdENoYXRNZXNzYWdlcyIsImFsbG93Rm9sbG93aW5nTW92ZSIsImRpc2NvdmVyYWJsZSIsImhpZGVGYXZvcml0ZXMiLCJoaWRlRm9sbG93ZXJzIiwiaGlkZUZvbGxvd3MiLCJoaWRlRm9sbG93ZXJzQ291bnQiLCJoaWRlRm9sbG93c0NvdW50Iiwid2ViUHVzaEhpZGVDb250ZW50cyIsImJsb2NrTm90aWZpY2F0aW9uc0Zyb21TdHJhbmdlcnMiLCJkZWZhdWx0U3RhdGUiLCJPYmplY3QiLCJmcm9tRW50cmllcyIsImtleXMiLCJtYXAiLCJrZXkiLCJwcm9maWxlQ29uZmlnIiwic3RhdGUiLCJfb2JqZWN0U3ByZWFkIiwibXV0YXRpb25zIiwiY29uZmlybVByb2ZpbGVPcHRpb24iLCJfcmVmNSIsIndpcGVQcm9maWxlT3B0aW9uIiwiX3JlZjYiLCJ3aXBlQWxsUHJvZmlsZU9wdGlvbnMiLCJmb3JFYWNoIiwic2V0Q3VycmVudFVzZXIiLCJ1c2VyIiwiZW50cmllcyIsIl9tYXAiLCJfc2xpY2VkVG9BcnJheSIsIl92YWx1ZSRnZXQiLCJfZ2V0IiwiX29yaWdpbmFsIiwiYWN0aW9ucyIsInNldFByb2ZpbGVPcHRpb24iLCJfcmVmNyIsIl9yZWY4IiwiZGlzcGF0Y2giLCJFcnJvciIsIl9tYXAkc2V0IiwiX21hcCRhcGkiLCJlIiwiY29uc29sZSIsIndhcm4iLCJsb2dvdXQiLCJfcmVmOSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/modules/profileConfig.js\n");
/***/ }),
/***/ "./src/modules/reports.js":
/*!********************************!*\
!*** ./src/modules/reports.js ***!
\********************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var lodash_filter__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/filter */ \"./node_modules/lodash/filter.js\");\n/* harmony import */ var lodash_filter__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_filter__WEBPACK_IMPORTED_MODULE_0__);\n\nvar reports = {\n state: {\n reportModal: {\n userId: null,\n statuses: [],\n preTickedIds: [],\n activated: false\n },\n reports: {}\n },\n mutations: {\n openUserReportingModal: function openUserReportingModal(state, _ref) {\n var userId = _ref.userId,\n statuses = _ref.statuses,\n preTickedIds = _ref.preTickedIds;\n state.reportModal.userId = userId;\n state.reportModal.statuses = statuses;\n state.reportModal.preTickedIds = preTickedIds;\n state.reportModal.activated = true;\n },\n closeUserReportingModal: function closeUserReportingModal(state) {\n state.reportModal.activated = false;\n },\n setReportState: function setReportState(reportsState, _ref2) {\n var id = _ref2.id,\n state = _ref2.state;\n reportsState.reports[id].state = state;\n },\n addReport: function addReport(state, report) {\n state.reports[report.id] = report;\n }\n },\n actions: {\n openUserReportingModal: function openUserReportingModal(_ref3, _ref4) {\n var rootState = _ref3.rootState,\n commit = _ref3.commit;\n var userId = _ref4.userId,\n _ref4$statusIds = _ref4.statusIds,\n statusIds = _ref4$statusIds === void 0 ? [] : _ref4$statusIds;\n var preTickedStatuses = statusIds.map(function (id) {\n return rootState.statuses.allStatusesObject[id];\n });\n var preTickedIds = statusIds;\n var statuses = preTickedStatuses.concat(lodash_filter__WEBPACK_IMPORTED_MODULE_0___default()(rootState.statuses.allStatuses, function (status) {\n return status.user.id === userId && !preTickedIds.includes(status.id);\n }));\n commit('openUserReportingModal', {\n userId: userId,\n statuses: statuses,\n preTickedIds: preTickedIds\n });\n },\n closeUserReportingModal: function closeUserReportingModal(_ref5) {\n var commit = _ref5.commit;\n commit('closeUserReportingModal');\n },\n setReportState: function setReportState(_ref6, _ref7) {\n var commit = _ref6.commit,\n dispatch = _ref6.dispatch,\n rootState = _ref6.rootState;\n var id = _ref7.id,\n state = _ref7.state;\n var oldState = rootState.reports.reports[id].state;\n commit('setReportState', {\n id: id,\n state: state\n });\n rootState.api.backendInteractor.setReportState({\n id: id,\n state: state\n })[\"catch\"](function (e) {\n console.error('Failed to set report state', e);\n dispatch('pushGlobalNotice', {\n level: 'error',\n messageKey: 'general.generic_error_message',\n messageArgs: [e.message],\n timeout: 5000\n });\n commit('setReportState', {\n id: id,\n state: oldState\n });\n });\n },\n addReport: function addReport(_ref8, report) {\n var commit = _ref8.commit;\n commit('addReport', report);\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (reports);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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LENBQUMsQ0FBQztJQUNKLENBQUM7SUFDRHJCLFNBQVMsV0FBQUEsVUFBQWdDLEtBQUEsRUFBYy9CLE1BQU0sRUFBRTtNQUFBLElBQWxCSyxNQUFNLEdBQUEwQixLQUFBLENBQU4xQixNQUFNO01BQ2pCQSxNQUFNLENBQUMsV0FBVyxFQUFFTCxNQUFNLENBQUM7SUFDN0I7RUFDRjtBQUNGLENBQUM7QUFFRCxpRUFBZWhCLE9BQU8iLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL21vZHVsZXMvcmVwb3J0cy5qcz80NDg2Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBmaWx0ZXIgZnJvbSAnbG9kYXNoL2ZpbHRlcidcblxuY29uc3QgcmVwb3J0cyA9IHtcbiAgc3RhdGU6IHtcbiAgICByZXBvcnRNb2RhbDoge1xuICAgICAgdXNlcklkOiBudWxsLFxuICAgICAgc3RhdHVzZXM6IFtdLFxuICAgICAgcHJlVGlja2VkSWRzOiBbXSxcbiAgICAgIGFjdGl2YXRlZDogZmFsc2VcbiAgICB9LFxuICAgIHJlcG9ydHM6IHt9XG4gIH0sXG4gIG11dGF0aW9uczoge1xuICAgIG9wZW5Vc2VyUmVwb3J0aW5nTW9kYWwgKHN0YXRlLCB7IHVzZXJJZCwgc3RhdHVzZXMsIHByZVRpY2tlZElkcyB9KSB7XG4gICAgICBzdGF0ZS5yZXBvcnRNb2RhbC51c2VySWQgPSB1c2VySWRcbiAgICAgIHN0YXRlLnJlcG9ydE1vZGFsLnN0YXR1c2VzID0gc3RhdHVzZXNcbiAgICAgIHN0YXRlLnJlcG9ydE1vZGFsLnByZVRpY2tlZElkcyA9IHByZVRpY2tlZElkc1xuICAgICAgc3RhdGUucmVwb3J0TW9kYWwuYWN0aXZhdGVkID0gdHJ1ZVxuICAgIH0sXG4gICAgY2xvc2VVc2VyUmVwb3J0aW5nTW9kYWwgKHN0YXRlKSB7XG4gICAgICBzdGF0ZS5yZXBvcnRNb2RhbC5hY3RpdmF0ZWQgPSBmYWxzZVxuICAgIH0sXG4gICAgc2V0UmVwb3J0U3RhdGUgKHJlcG9ydHNTdGF0ZSwgeyBpZCwgc3RhdGUgfSkge1xuICAgICAgcmVwb3J0c1N0YXRlLnJlcG9ydHNbaWRdLnN0YXRlID0gc3RhdGVcbiAgICB9LFxuICAgIGFkZFJlcG9ydCAoc3RhdGUsIHJlcG9ydCkge1xuICAgICAgc3RhdGUucmVwb3J0c1tyZXBvcnQuaWRdID0gcmVwb3J0XG4gICAgfVxuICB9LFxuICBhY3Rpb25zOiB7XG4gICAgb3BlblVzZXJSZXBvcnRpbmdNb2RhbCAoeyByb290U3RhdGUsIGNvbW1pdCB9LCB7IHVzZXJJZCwgc3RhdHVzSWRzID0gW10gfSkge1xuICAgICAgY29uc3QgcHJlVGlja2VkU3RhdHVzZXMgPSBzdGF0dXNJZHMubWFwKGlkID0+IHJvb3RTdGF0ZS5zdGF0dXNlcy5hbGxTdGF0dXNlc09iamVjdFtpZF0pXG4gICAgICBjb25zdCBwcmVUaWNrZWRJZHMgPSBzdGF0dXNJZHNcbiAgICAgIGNvbnN0IHN0YXR1c2VzID0gcHJlVGlja2VkU3RhdHVzZXMuY29uY2F0KFxuICAgICAgICBmaWx0ZXIocm9vdFN0YXRlLnN0YXR1c2VzLmFsbFN0YXR1c2VzLFxuICAgICAgICAgIHN0YXR1cyA9PiBzdGF0dXMudXNlci5pZCA9PT0gdXNlcklkICYmICFwcmVUaWNrZWRJZHMuaW5jbHVkZXMoc3RhdHVzLmlkKVxuICAgICAgICApXG4gICAgICApXG4gICAgICBjb21taXQoJ29wZW5Vc2VyUmVwb3J0aW5nTW9kYWwnLCB7IHVzZXJJZCwgc3RhdHVzZXMsIHByZVRpY2tlZElkcyB9KVxuICAgIH0sXG4gICAgY2xvc2VVc2VyUmVwb3J0aW5nTW9kYWwgKHsgY29tbWl0IH0pIHtcbiAgICAgIGNvbW1pdCgnY2xvc2VVc2VyUmVwb3J0aW5nTW9kYWwnKVxuICAgIH0sXG4gICAgc2V0UmVwb3J0U3RhdGUgKHsgY29tbWl0LCBkaXNwYXRjaCwgcm9vdFN0YXRlIH0sIHsgaWQsIHN0YXRlIH0pIHtcbiAgICAgIGNvbnN0IG9sZFN0YXRlID0gcm9vdFN0YXRlLnJlcG9ydHMucmVwb3J0c1tpZF0uc3RhdGVcbiAgICAgIGNvbW1pdCgnc2V0UmVwb3J0U3RhdGUnLCB7IGlkLCBzdGF0ZSB9KVxuICAgICAgcm9vdFN0YXRlLmFwaS5iYWNrZW5kSW50ZXJhY3Rvci5zZXRSZXBvcnRTdGF0ZSh7IGlkLCBzdGF0ZSB9KS5jYXRjaChlID0+IHtcbiAgICAgICAgY29uc29sZS5lcnJvcignRmFpbGVkIHRvIHNldCByZXBvcnQgc3RhdGUnLCBlKVxuICAgICAgICBkaXNwYXRjaCgncHVzaEdsb2JhbE5vdGljZScsIHtcbiAgICAgICAgICBsZXZlbDogJ2Vycm9yJyxcbiAgICAgICAgICBtZXNzYWdlS2V5OiAnZ2VuZXJhbC5nZW5lcmljX2Vycm9yX21lc3NhZ2UnLFxuICAgICAgICAgIG1lc3NhZ2VBcmdzOiBbZS5tZXNzYWdlXSxcbiAgICAgICAgICB0aW1lb3V0OiA1MDAwXG4gICAgICAgIH0pXG4gICAgICAgIGNvbW1pdCgnc2V0UmVwb3J0U3RhdGUnLCB7IGlkLCBzdGF0ZTogb2xkU3RhdGUgfSlcbiAgICAgIH0pXG4gICAgfSxcbiAgICBhZGRSZXBvcnQgKHsgY29tbWl0IH0sIHJlcG9ydCkge1xuICAgICAgY29tbWl0KCdhZGRSZXBvcnQnLCByZXBvcnQpXG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IHJlcG9ydHNcbiJdLCJuYW1lcyI6WyJmaWx0ZXIiLCJyZXBvcnRzIiwic3RhdGUiLCJyZXBvcnRNb2RhbCIsInVzZXJJZCIsInN0YXR1c2VzIiwicHJlVGlja2VkSWRzIiwiYWN0aXZhdGVkIiwibXV0YXRpb25zIiwib3BlblVzZXJSZXBvcnRpbmdNb2RhbCIsIl9yZWYiLCJjbG9zZVVzZXJSZXBvcnRpbmdNb2RhbCIsInNldFJlcG9ydFN0YXRlIiwicmVwb3J0c1N0YXRlIiwiX3JlZjIiLCJpZCIsImFkZFJlcG9ydCIsInJlcG9ydCIsImFjdGlvbnMiLCJfcmVmMyIsIl9yZWY0Iiwicm9vdFN0YXRlIiwiY29tbWl0IiwiX3JlZjQkc3RhdHVzSWRzIiwic3RhdHVzSWRzIiwicHJlVGlja2VkU3RhdHVzZXMiLCJtYXAiLCJhbGxTdGF0dXNlc09iamVjdCIsImNvbmNhdCIsImFsbFN0YXR1c2VzIiwic3RhdHVzIiwidXNlciIsImluY2x1ZGVzIiwiX3JlZjUiLCJfcmVmNiIsIl9yZWY3IiwiZGlzcGF0Y2giLCJvbGRTdGF0ZSIsImFwaSIsImJhY2tlbmRJbnRlcmFjdG9yIiwiZSIsImNvbnNvbGUiLCJlcnJvciIsImxldmVsIiwibWVzc2FnZUtleSIsIm1lc3NhZ2VBcmdzIiwibWVzc2FnZSIsInRpbWVvdXQiLCJfcmVmOCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/modules/reports.js\n");
/***/ }),
/***/ "./src/modules/serverSideStorage.js":
/*!******************************************!*\
!*** ./src/modules/serverSideStorage.js ***!
\******************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"COMMAND_TRIM_FLAGS\": () => (/* binding */ COMMAND_TRIM_FLAGS),\n/* harmony export */ \"COMMAND_TRIM_FLAGS_AND_RESET\": () => (/* binding */ COMMAND_TRIM_FLAGS_AND_RESET),\n/* harmony export */ \"NEW_USER_DATE\": () => (/* binding */ NEW_USER_DATE),\n/* harmony export */ \"VERSION\": () => (/* binding */ VERSION),\n/* harmony export */ \"_doMigrations\": () => (/* binding */ _doMigrations),\n/* harmony export */ \"_getAllFlags\": () => (/* binding */ _getAllFlags),\n/* harmony export */ \"_getRecentData\": () => (/* binding */ _getRecentData),\n/* harmony export */ \"_mergeFlags\": () => (/* binding */ _mergeFlags),\n/* harmony export */ \"_mergePrefs\": () => (/* binding */ _mergePrefs),\n/* harmony export */ \"_moveItemInArray\": () => (/* binding */ _moveItemInArray),\n/* harmony export */ \"_resetFlags\": () => (/* binding */ _resetFlags),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__),\n/* harmony export */ \"defaultState\": () => (/* binding */ defaultState),\n/* harmony export */ \"mutations\": () => (/* binding */ mutations),\n/* harmony export */ \"newUserFlags\": () => (/* binding */ newUserFlags)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ \"./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js\");\n/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ \"./node_modules/@babel/runtime/helpers/esm/slicedToArray.js\");\n/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ \"./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js\");\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"./node_modules/@babel/runtime/helpers/esm/defineProperty.js\");\n/* harmony import */ var lodash_uniqWith__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! lodash/uniqWith */ \"./node_modules/lodash/uniqWith.js\");\n/* harmony import */ var lodash_uniqWith__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(lodash_uniqWith__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var lodash_takeRight__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! lodash/takeRight */ \"./node_modules/lodash/takeRight.js\");\n/* harmony import */ var lodash_takeRight__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(lodash_takeRight__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var lodash_findLastIndex__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! lodash/findLastIndex */ \"./node_modules/lodash/findLastIndex.js\");\n/* harmony import */ var lodash_findLastIndex__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(lodash_findLastIndex__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony import */ var lodash_groupBy__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! lodash/groupBy */ \"./node_modules/lodash/groupBy.js\");\n/* harmony import */ var lodash_groupBy__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(lodash_groupBy__WEBPACK_IMPORTED_MODULE_7__);\n/* harmony import */ var lodash_flatten__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! lodash/flatten */ \"./node_modules/lodash/flatten.js\");\n/* harmony import */ var lodash_flatten__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(lodash_flatten__WEBPACK_IMPORTED_MODULE_8__);\n/* harmony import */ var lodash_clamp__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! lodash/clamp */ \"./node_modules/lodash/clamp.js\");\n/* harmony import */ var lodash_clamp__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(lodash_clamp__WEBPACK_IMPORTED_MODULE_9__);\n/* harmony import */ var lodash_get__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! lodash/get */ \"./node_modules/lodash/get.js\");\n/* harmony import */ var lodash_get__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(lodash_get__WEBPACK_IMPORTED_MODULE_10__);\n/* harmony import */ var lodash_set__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! lodash/set */ \"./node_modules/lodash/set.js\");\n/* harmony import */ var lodash_set__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(lodash_set__WEBPACK_IMPORTED_MODULE_11__);\n/* harmony import */ var lodash_cloneDeep__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! lodash/cloneDeep */ \"./node_modules/lodash/cloneDeep.js\");\n/* harmony import */ var lodash_cloneDeep__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(lodash_cloneDeep__WEBPACK_IMPORTED_MODULE_12__);\n/* harmony import */ var lodash_isEqual__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! lodash/isEqual */ \"./node_modules/lodash/isEqual.js\");\n/* harmony import */ var lodash_isEqual__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(lodash_isEqual__WEBPACK_IMPORTED_MODULE_13__);\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.runtime.esm-bundler.js\");\n/* harmony import */ var src_components_update_notification_update_notification_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! src/components/update_notification/update_notification.js */ \"./src/components/update_notification/update_notification.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar _excluded = [\"_journal\"],\n _excluded2 = [\"_timestamp\", \"_version\"],\n _excluded3 = [\"_timestamp\", \"_version\"];\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\nvar VERSION = 1;\nvar NEW_USER_DATE = new Date('2022-08-04'); // date of writing this, basically\n\nvar COMMAND_TRIM_FLAGS = 1000;\nvar COMMAND_TRIM_FLAGS_AND_RESET = 1001;\nvar defaultState = {\n // do we need to update data on server?\n dirty: false,\n // storage of flags - stuff that can only be set and incremented\n flagStorage: {\n updateCounter: 0,\n // Counter for most recent update notification seen\n reset: 0 // special flag that can be used to force-reset all flags, debug purposes only\n // special reset codes:\n // 1000: trim keys to those known by currently running FE\n // 1001: same as above + reset everything to 0\n },\n\n prefsStorage: {\n _journal: [],\n simple: {\n dontShowUpdateNotifs: false,\n collapseNav: false\n },\n collections: {\n pinnedNavItems: ['home', 'dms', 'chats']\n }\n },\n // raw data\n raw: null,\n // local cache\n cache: null\n};\nvar newUserFlags = _objectSpread(_objectSpread({}, defaultState.flagStorage), {}, {\n updateCounter: src_components_update_notification_update_notification_js__WEBPACK_IMPORTED_MODULE_15__.CURRENT_UPDATE_COUNTER // new users don't need to see update notification\n});\n\nvar _moveItemInArray = function _moveItemInArray(array, value, movement) {\n var oldIndex = array.indexOf(value);\n var newIndex = oldIndex + movement;\n var newArray = (0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(array);\n // remove old\n newArray.splice(oldIndex, 1);\n // add new\n newArray.splice(lodash_clamp__WEBPACK_IMPORTED_MODULE_9___default()(newIndex, 0, newArray.length + 1), 0, value);\n return newArray;\n};\nvar _wrapData = function _wrapData(data, userName) {\n return _objectSpread(_objectSpread({}, data), {}, {\n _user: userName,\n _timestamp: Date.now(),\n _version: VERSION\n });\n};\nvar _checkValidity = function _checkValidity(data) {\n return data._timestamp > 0 && data._version > 0;\n};\nvar _verifyPrefs = function _verifyPrefs(state) {\n state.prefsStorage = state.prefsStorage || {\n simple: {},\n collections: {}\n };\n Object.entries(defaultState.prefsStorage.simple).forEach(function (_ref) {\n var _ref2 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(_ref, 2),\n k = _ref2[0],\n v = _ref2[1];\n if (typeof v === 'number' || typeof v === 'boolean') return;\n console.warn(\"Preference simple.\".concat(k, \" as invalid type, reinitializing\"));\n lodash_set__WEBPACK_IMPORTED_MODULE_11___default()(state.prefsStorage.simple, k, defaultState.prefsStorage.simple[k]);\n });\n Object.entries(defaultState.prefsStorage.collections).forEach(function (_ref3) {\n var _ref4 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(_ref3, 2),\n k = _ref4[0],\n v = _ref4[1];\n if (Array.isArray(v)) return;\n console.warn(\"Preference collections.\".concat(k, \" as invalid type, reinitializing\"));\n lodash_set__WEBPACK_IMPORTED_MODULE_11___default()(state.prefsStorage.collections, k, defaultState.prefsStorage.collections[k]);\n });\n};\nvar _getRecentData = function _getRecentData(cache, live) {\n var result = {\n recent: null,\n stale: null,\n needUpload: false\n };\n var cacheValid = _checkValidity(cache || {});\n var liveValid = _checkValidity(live || {});\n if (!liveValid && cacheValid) {\n result.needUpload = true;\n console.debug('Nothing valid stored on server, assuming cache to be source of truth');\n result.recent = cache;\n result.stale = live;\n } else if (!cacheValid && liveValid) {\n console.debug('Valid storage on server found, no local cache found, using live as source of truth');\n result.recent = live;\n result.stale = cache;\n } else if (cacheValid && liveValid) {\n console.debug('Both sources have valid data, figuring things out...');\n if (live._timestamp === cache._timestamp && live._version === cache._version) {\n console.debug('Same version/timestamp on both source, source of truth irrelevant');\n result.recent = cache;\n result.stale = live;\n } else {\n console.debug('Different timestamp, figuring out which one is more recent');\n if (live._timestamp < cache._timestamp) {\n result.recent = cache;\n result.stale = live;\n } else {\n result.recent = live;\n result.stale = cache;\n }\n }\n } else {\n console.debug('Both sources are invalid, start from scratch');\n result.needUpload = true;\n }\n return result;\n};\nvar _getAllFlags = function _getAllFlags(recent, stale) {\n return Array.from(new Set([].concat((0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(Object.keys((0,vue__WEBPACK_IMPORTED_MODULE_14__.toRaw)((recent || {}).flagStorage || {}))), (0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(Object.keys((0,vue__WEBPACK_IMPORTED_MODULE_14__.toRaw)((stale || {}).flagStorage || {}))))));\n};\nvar _mergeFlags = function _mergeFlags(recent, stale, allFlagKeys) {\n if (!stale.flagStorage) return recent.flagStorage;\n if (!recent.flagStorage) return stale.flagStorage;\n return Object.fromEntries(allFlagKeys.map(function (flag) {\n var recentFlag = recent.flagStorage[flag];\n var staleFlag = stale.flagStorage[flag];\n // use flag that is of higher value\n return [flag, Number((recentFlag > staleFlag ? recentFlag : staleFlag) || 0)];\n }));\n};\nvar _mergeJournal = function _mergeJournal() {\n for (var _len = arguments.length, journals = new Array(_len), _key = 0; _key < _len; _key++) {\n journals[_key] = arguments[_key];\n }\n // Ignore invalid journal entries\n var allJournals = lodash_flatten__WEBPACK_IMPORTED_MODULE_8___default()(journals.map(function (j) {\n return Array.isArray(j) ? j : [];\n })).filter(function (entry) {\n return Object.prototype.hasOwnProperty.call(entry, 'path') && Object.prototype.hasOwnProperty.call(entry, 'operation') && Object.prototype.hasOwnProperty.call(entry, 'args') && Object.prototype.hasOwnProperty.call(entry, 'timestamp');\n });\n var grouped = lodash_groupBy__WEBPACK_IMPORTED_MODULE_7___default()(allJournals, 'path');\n var trimmedGrouped = Object.entries(grouped).map(function (_ref5) {\n var _ref6 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(_ref5, 2),\n path = _ref6[0],\n journal = _ref6[1];\n // side effect\n journal.sort(function (a, b) {\n return a.timestamp > b.timestamp ? 1 : -1;\n });\n if (path.startsWith('collections')) {\n var lastRemoveIndex = lodash_findLastIndex__WEBPACK_IMPORTED_MODULE_6___default()(journal, function (_ref7) {\n var operation = _ref7.operation;\n return operation === 'removeFromCollection';\n });\n // everything before last remove is unimportant\n var remainder;\n if (lastRemoveIndex > 0) {\n remainder = journal.slice(lastRemoveIndex);\n } else {\n // everything else doesn't need trimming\n remainder = journal;\n }\n return lodash_uniqWith__WEBPACK_IMPORTED_MODULE_4___default()(remainder, function (a, b) {\n if (a.path !== b.path) {\n return false;\n }\n if (a.operation !== b.operation) {\n return false;\n }\n if (a.operation === 'addToCollection') {\n return a.args[0] === b.args[0];\n }\n return false;\n });\n } else if (path.startsWith('simple')) {\n // Only the last record is important\n return lodash_takeRight__WEBPACK_IMPORTED_MODULE_5___default()(journal);\n } else {\n return journal;\n }\n });\n return lodash_flatten__WEBPACK_IMPORTED_MODULE_8___default()(trimmedGrouped).sort(function (a, b) {\n return a.timestamp > b.timestamp ? 1 : -1;\n });\n};\nvar _mergePrefs = function _mergePrefs(recent, stale, allFlagKeys) {\n if (!stale) return recent;\n if (!recent) return stale;\n var recentJournal = recent._journal,\n recentData = (0,_babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(recent, _excluded);\n var staleJournal = stale._journal;\n /** Journal entry format:\n * path: path to entry in prefsStorage\n * timestamp: timestamp of the change\n * operation: operation type\n * arguments: array of arguments, depends on operation type\n *\n * currently only supported operation type is \"set\" which just sets the value\n * to requested one. Intended only to be used with simple preferences (boolean, number)\n * shouldn't be used with collections!\n */\n var resultOutput = _objectSpread({}, recentData);\n var totalJournal = _mergeJournal(staleJournal, recentJournal);\n totalJournal.forEach(function (_ref8) {\n var path = _ref8.path,\n timestamp = _ref8.timestamp,\n operation = _ref8.operation,\n command = _ref8.command,\n args = _ref8.args;\n if (path.startsWith('_')) {\n console.error(\"journal contains entry to edit internal (starts with _) field '\".concat(path, \"', something is incorrect here, ignoring.\"));\n return;\n }\n switch (operation) {\n case 'set':\n lodash_set__WEBPACK_IMPORTED_MODULE_11___default()(resultOutput, path, args[0]);\n break;\n case 'addToCollection':\n lodash_set__WEBPACK_IMPORTED_MODULE_11___default()(resultOutput, path, Array.from(new Set(lodash_get__WEBPACK_IMPORTED_MODULE_10___default()(resultOutput, path)).add(args[0])));\n break;\n case 'removeFromCollection':\n {\n var newSet = new Set(lodash_get__WEBPACK_IMPORTED_MODULE_10___default()(resultOutput, path));\n newSet[\"delete\"](args[0]);\n lodash_set__WEBPACK_IMPORTED_MODULE_11___default()(resultOutput, path, Array.from(newSet));\n break;\n }\n case 'reorderCollection':\n {\n var _args = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(args, 2),\n value = _args[0],\n movement = _args[1];\n lodash_set__WEBPACK_IMPORTED_MODULE_11___default()(resultOutput, path, _moveItemInArray(lodash_get__WEBPACK_IMPORTED_MODULE_10___default()(resultOutput, path), value, movement));\n break;\n }\n default:\n console.error(\"Unknown journal operation: '\".concat(operation, \"', did we forget to run reverse migrations beforehand?\"));\n }\n });\n return _objectSpread(_objectSpread({}, resultOutput), {}, {\n _journal: totalJournal\n });\n};\nvar _resetFlags = function _resetFlags(totalFlags) {\n var knownKeys = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : defaultState.flagStorage;\n var result = _objectSpread({}, totalFlags);\n var allFlagKeys = Object.keys(totalFlags);\n // flag reset functionality\n if (totalFlags.reset >= COMMAND_TRIM_FLAGS && totalFlags.reset <= COMMAND_TRIM_FLAGS_AND_RESET) {\n console.debug('Received command to trim the flags');\n var knownKeysSet = new Set(Object.keys(knownKeys));\n\n // Trim\n result = {};\n allFlagKeys.forEach(function (flag) {\n if (knownKeysSet.has(flag)) {\n result[flag] = totalFlags[flag];\n }\n });\n\n // Reset\n if (totalFlags.reset === COMMAND_TRIM_FLAGS_AND_RESET) {\n // 1001 - and reset everything to 0\n console.debug('Received command to reset the flags');\n Object.keys(knownKeys).forEach(function (flag) {\n result[flag] = 0;\n });\n }\n } else if (totalFlags.reset > 0 && totalFlags.reset < 9000) {\n console.debug('Received command to reset the flags');\n allFlagKeys.forEach(function (flag) {\n result[flag] = 0;\n });\n }\n result.reset = 0;\n return result;\n};\nvar _doMigrations = function _doMigrations(cache) {\n if (!cache) return cache;\n if (cache._version < VERSION) {\n console.debug('Local cached data has older version, seeing if there any migrations that can be applied');\n\n // no migrations right now since we only have one version\n console.debug('No migrations found');\n }\n if (cache._version > VERSION) {\n console.debug('Local cached data has newer version, seeing if there any reverse migrations that can be applied');\n\n // no reverse migrations right now but we leave a possibility of loading a hotpatch if need be\n if (window._PLEROMA_HOTPATCH) {\n if (window._PLEROMA_HOTPATCH.reverseMigrations) {\n console.debug('Found hotpatch migration, applying');\n return window._PLEROMA_HOTPATCH.reverseMigrations.call({}, 'serverSideStorage', {\n from: cache._version,\n to: VERSION\n }, cache);\n }\n }\n }\n return cache;\n};\nvar mutations = {\n clearServerSideStorage: function clearServerSideStorage(state, userData) {\n state = _objectSpread({}, lodash_cloneDeep__WEBPACK_IMPORTED_MODULE_12___default()(defaultState));\n },\n setServerSideStorage: function setServerSideStorage(state, userData) {\n var live = userData.storage;\n state.raw = live;\n var cache = state.cache;\n if (cache && cache._user !== userData.fqn) {\n console.warn('cache belongs to another user! reinitializing local cache!');\n cache = null;\n }\n cache = _doMigrations(cache);\n var _getRecentData2 = _getRecentData(cache, live),\n recent = _getRecentData2.recent,\n stale = _getRecentData2.stale,\n needsUpload = _getRecentData2.needsUpload;\n var userNew = userData.created_at > NEW_USER_DATE;\n var flagsTemplate = userNew ? newUserFlags : defaultState.flagStorage;\n var dirty = false;\n if (recent === null) {\n console.debug(\"Data is empty, initializing for \".concat(userNew ? 'new' : 'existing', \" user\"));\n recent = _wrapData({\n flagStorage: _objectSpread({}, flagsTemplate),\n prefsStorage: _objectSpread({}, defaultState.prefsStorage)\n });\n }\n if (!needsUpload && recent && stale) {\n console.debug('Checking if data needs merging...');\n // discarding timestamps and versions\n var _recent = recent,\n _0 = _recent._timestamp,\n _1 = _recent._version,\n recentData = (0,_babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(_recent, _excluded2);\n var _2 = stale._timestamp,\n _3 = stale._version,\n staleData = (0,_babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(stale, _excluded3);\n dirty = !lodash_isEqual__WEBPACK_IMPORTED_MODULE_13___default()(recentData, staleData);\n console.debug(\"Data \".concat(dirty ? 'needs' : 'doesn\\'t need', \" merging\"));\n }\n var allFlagKeys = _getAllFlags(recent, stale);\n var totalFlags;\n var totalPrefs;\n if (dirty) {\n // Merge the flags\n console.debug('Merging the data...');\n totalFlags = _mergeFlags(recent, stale, allFlagKeys);\n _verifyPrefs(recent);\n _verifyPrefs(stale);\n totalPrefs = _mergePrefs(recent.prefsStorage, stale.prefsStorage);\n } else {\n totalFlags = recent.flagStorage;\n totalPrefs = recent.prefsStorage;\n }\n totalFlags = _resetFlags(totalFlags);\n recent.flagStorage = _objectSpread(_objectSpread({}, flagsTemplate), totalFlags);\n recent.prefsStorage = _objectSpread(_objectSpread({}, defaultState.prefsStorage), totalPrefs);\n state.dirty = dirty || needsUpload;\n state.cache = recent;\n // set local timestamp to smaller one if we don't have any changes\n if (stale && recent && !state.dirty) {\n state.cache._timestamp = Math.min(stale._timestamp, recent._timestamp);\n }\n state.flagStorage = state.cache.flagStorage;\n state.prefsStorage = state.cache.prefsStorage;\n },\n setFlag: function setFlag(state, _ref9) {\n var flag = _ref9.flag,\n value = _ref9.value;\n state.flagStorage[flag] = value;\n state.dirty = true;\n },\n setPreference: function setPreference(state, _ref10) {\n var path = _ref10.path,\n value = _ref10.value;\n if (path.startsWith('_')) {\n console.error(\"tried to edit internal (starts with _) field '\".concat(path, \"', ignoring.\"));\n return;\n }\n lodash_set__WEBPACK_IMPORTED_MODULE_11___default()(state.prefsStorage, path, value);\n state.prefsStorage._journal = [].concat((0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(state.prefsStorage._journal), [{\n operation: 'set',\n path: path,\n args: [value],\n timestamp: Date.now()\n }]);\n state.dirty = true;\n },\n addCollectionPreference: function addCollectionPreference(state, _ref11) {\n var path = _ref11.path,\n value = _ref11.value;\n if (path.startsWith('_')) {\n console.error(\"tried to edit internal (starts with _) field '\".concat(path, \"', ignoring.\"));\n return;\n }\n var collection = new Set(lodash_get__WEBPACK_IMPORTED_MODULE_10___default()(state.prefsStorage, path));\n collection.add(value);\n lodash_set__WEBPACK_IMPORTED_MODULE_11___default()(state.prefsStorage, path, (0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(collection));\n state.prefsStorage._journal = [].concat((0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(state.prefsStorage._journal), [{\n operation: 'addToCollection',\n path: path,\n args: [value],\n timestamp: Date.now()\n }]);\n state.dirty = true;\n },\n removeCollectionPreference: function removeCollectionPreference(state, _ref12) {\n var path = _ref12.path,\n value = _ref12.value;\n if (path.startsWith('_')) {\n console.error(\"tried to edit internal (starts with _) field '\".concat(path, \"', ignoring.\"));\n return;\n }\n var collection = new Set(lodash_get__WEBPACK_IMPORTED_MODULE_10___default()(state.prefsStorage, path));\n collection[\"delete\"](value);\n lodash_set__WEBPACK_IMPORTED_MODULE_11___default()(state.prefsStorage, path, (0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(collection));\n state.prefsStorage._journal = [].concat((0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(state.prefsStorage._journal), [{\n operation: 'removeFromCollection',\n path: path,\n args: [value],\n timestamp: Date.now()\n }]);\n state.dirty = true;\n },\n reorderCollectionPreference: function reorderCollectionPreference(state, _ref13) {\n var path = _ref13.path,\n value = _ref13.value,\n movement = _ref13.movement;\n if (path.startsWith('_')) {\n console.error(\"tried to edit internal (starts with _) field '\".concat(path, \"', ignoring.\"));\n return;\n }\n var collection = lodash_get__WEBPACK_IMPORTED_MODULE_10___default()(state.prefsStorage, path);\n var newCollection = _moveItemInArray(collection, value, movement);\n lodash_set__WEBPACK_IMPORTED_MODULE_11___default()(state.prefsStorage, path, newCollection);\n state.prefsStorage._journal = [].concat((0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(state.prefsStorage._journal), [{\n operation: 'arrangeCollection',\n path: path,\n args: [value],\n timestamp: Date.now()\n }]);\n state.dirty = true;\n },\n updateCache: function updateCache(state, _ref14) {\n var username = _ref14.username;\n state.prefsStorage._journal = _mergeJournal(state.prefsStorage._journal);\n state.cache = _wrapData({\n flagStorage: (0,vue__WEBPACK_IMPORTED_MODULE_14__.toRaw)(state.flagStorage),\n prefsStorage: (0,vue__WEBPACK_IMPORTED_MODULE_14__.toRaw)(state.prefsStorage)\n }, username);\n }\n};\nvar serverSideStorage = {\n state: _objectSpread({}, lodash_cloneDeep__WEBPACK_IMPORTED_MODULE_12___default()(defaultState)),\n mutations: mutations,\n actions: {\n pushServerSideStorage: function pushServerSideStorage(_ref15) {\n var state = _ref15.state,\n rootState = _ref15.rootState,\n commit = _ref15.commit;\n var _ref16 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n _ref16$force = _ref16.force,\n force = _ref16$force === void 0 ? false : _ref16$force;\n var needPush = state.dirty || force;\n console.log(needPush);\n if (!needPush) return;\n commit('updateCache', {\n username: rootState.users.currentUser.fqn\n });\n var params = {\n pleroma_settings_store: {\n 'pleroma-fe': state.cache\n }\n };\n rootState.api.backendInteractor.updateProfile({\n params: params\n }).then(function (user) {\n commit('setServerSideStorage', user);\n state.dirty = false;\n });\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (serverSideStorage);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvbW9kdWxlcy9zZXJ2ZXJTaWRlU3RvcmFnZS5qcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBMkI7QUFFdUU7QUFFM0YsSUFBTUUsT0FBTyxHQUFHLENBQUM7QUFDakIsSUFBTUMsYUFBYSxHQUFHLElBQUlDLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBQzs7QUFFN0MsSUFBTUMsa0JBQWtCLEdBQUcsSUFBSTtBQUMvQixJQUFNQyw0QkFBNEIsR0FBRyxJQUFJO0FBRXpDLElBQU1DLFlBQVksR0FBRztFQUMxQjtFQUNBQyxLQUFLLEVBQUUsS0FBSztFQUNaO0VBQ0FDLFdBQVcsRUFBRTtJQUNYQyxhQUFhLEVBQUUsQ0FBQztJQUFFO0lBQ2xCQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ1Q7SUFDQTtJQUNBO0VBQ0YsQ0FBQzs7RUFDREMsWUFBWSxFQUFFO0lBQ1pDLFFBQVEsRUFBRSxFQUFFO0lBQ1pDLE1BQU0sRUFBRTtNQUNOQyxvQkFBb0IsRUFBRSxLQUFLO01BQzNCQyxXQUFXLEVBQUU7SUFDZixDQUFDO0lBQ0RDLFdBQVcsRUFBRTtNQUNYQyxjQUFjLEVBQUUsQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLE9BQU87SUFDekM7RUFDRixDQUFDO0VBQ0Q7RUFDQUMsR0FBRyxFQUFFLElBQUk7RUFDVDtFQUNBQyxLQUFLLEVBQUU7QUFDVCxDQUFDO0FBRU0sSUFBTUMsWUFBWSxHQUFBQyxhQUFBLENBQUFBLGFBQUEsS0FDcEJmLFlBQVksQ0FBQ0UsV0FBVztFQUMzQkMsYUFBYSxFQUFFVCw4R0FBc0IsQ0FBQztBQUFBLEVBQ3ZDOztBQUVNLElBQU1zQixnQkFBZ0IsR0FBRyxTQUFuQkEsZ0JBQWdCQSxDQUFJQyxLQUFLLEVBQUVDLEtBQUssRUFBRUMsUUFBUSxFQUFLO0VBQzFELElBQU1DLFFBQVEsR0FBR0gsS0FBSyxDQUFDSSxPQUFPLENBQUNILEtB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RTtNQUNmSixNQUFNLENBQUMsYUFBYSxFQUFFO1FBQUVOLFFBQVEsRUFBRUssU0FBUyxDQUFDTyxLQUFLLENBQUNDLFdBQVcsQ0FBQzdDO01BQUksQ0FBQyxDQUFDO01BQ3BFLElBQU04QyxNQUFNLEdBQUc7UUFBRUMsc0JBQXNCLEVBQUU7VUFBRSxZQUFZLEVBQUV2SixLQUFLLENBQUN4QjtRQUFNO01BQUUsQ0FBQztNQUN4RXFLLFNBQVMsQ0FBQ1csR0FBRyxDQUFDQyxpQkFBaUIsQ0FDNUJDLGFBQWEsQ0FBQztRQUFFSixNQUFNLEVBQU5BO01BQU8sQ0FBQyxDQUFDLENBQ3pCSyxJQUFJLENBQUMsVUFBQ0MsSUFBSSxFQUFLO1FBQ2RkLE1BQU0sQ0FBQyxzQkFBc0IsRUFBRWMsSUFBSSxDQUFDO1FBQ3BDNUosS0FBSyxDQUFDcEMsS0FBSyxHQUFHLEtBQUs7TUFDckIsQ0FBQyxDQUFDO0lBQ047RUFDRjtBQUNGLENBQUM7QUFFRCxpRUFBZTZLLGlCQUFpQiIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvbW9kdWxlcy9zZXJ2ZXJTaWRlU3RvcmFnZS5qcz8zZjE3Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHRvUmF3IH0gZnJvbSAndnVlJ1xuaW1wb3J0IHsgaXNFcXVhbCwgY2xvbmVEZWVwLCBzZXQsIGdldCwgY2xhbXAsIGZsYXR0ZW4sIGdyb3VwQnksIGZpbmRMYXN0SW5kZXgsIHRha2VSaWdodCwgdW5pcVdpdGggfSBmcm9tICdsb2Rhc2gnXG5pbXBvcnQgeyBDVVJSRU5UX1VQREFURV9DT1VOVEVSIH0gZnJvbSAnc3JjL2NvbXBvbmVudHMvdXBkYXRlX25vdGlmaWNhdGlvbi91cGRhdGVfbm90aWZpY2F0aW9uLmpzJ1xuXG5leHBvcnQgY29uc3QgVkVSU0lPTiA9IDFcbmV4cG9ydCBjb25zdCBORVdfVVNFUl9EQVRFID0gbmV3IERhdGUoJzIwMjItMDgtMDQnKSAvLyBkYXRlIG9mIHdyaXRpbmcgdGhpcywgYmFzaWNhbGx5XG5cbmV4cG9ydCBjb25zdCBDT01NQU5EX1RSSU1fRkxBR1MgPSAxMDAwXG5leHBvcnQgY29uc3QgQ09NTUFORF9UUklNX0ZMQUdTX0FORF9SRVNFVCA9IDEwMDFcblxuZXhwb3J0IGNvbnN0IGRlZmF1bHRTdGF0ZSA9IHtcbiAgLy8gZG8gd2UgbmVlZCB0byB1cGRhdGUgZGF0YSBvbiBzZXJ2ZXI/XG4gIGRpcnR5OiBmYWxzZSxcbiAgLy8gc3RvcmFnZSBvZiBmbGFncyAtIHN0dWZmIHRoYXQgY2FuIG9ubHkgYmUgc2V0IGFuZCBpbmNyZW1lbnRlZFxuICBmbGFnU3RvcmFnZToge1xuICAgIHVwZGF0ZUNvdW50ZXI6IDAsIC8vIENvdW50ZXIgZm9yIG1vc3QgcmVjZW50IHVwZGF0ZSBub3RpZmljYXRpb24gc2VlblxuICAgIHJlc2V0OiAwIC8vIHNwZWNpYWwgZmxhZyB0aGF0IGNhbiBiZSB1c2VkIHRvIGZvcmNlLXJlc2V0IGFsbCBmbGFncywgZGVidWcgcHVycG9zZXMgb25seVxuICAgIC8vIHNwZWNpYWwgcmVzZXQgY29kZXM6XG4gICAgLy8gMTAwMDogdHJpbSBrZXlzIHRvIHRob3NlIGtub3duIGJ5IGN1cnJlbnRseSBydW5uaW5nIEZFXG4gICAgLy8gMTAwMTogc2FtZSBhcyBhYm92ZSArIHJlc2V0IGV2ZXJ5dGhpbmcgdG8gMFxuICB9LFxuICBwcmVmc1N0b3JhZ2U6IHtcbiAgICBfam91cm5hbDogW10sXG4gICAgc2ltcGxlOiB7XG4gICAgICBkb250U2hvd1VwZGF0ZU5vdGlmczogZmFsc2UsXG4gICAgICBjb2xsYXBzZU5hdjogZmFsc2VcbiAgICB9LFxuICAgIGNvbGxlY3Rpb25zOiB7XG4gICAgICBwaW5uZWROYXZJdGVtczogWydob21lJywgJ2RtcycsICdjaGF0cyddXG4gICAgfVxuICB9LFxuICAvLyByYXcgZGF0YVxuICByYXc6IG51bGwsXG4gIC8vIGxvY2FsIGNhY2hlXG4gIGNhY2hlOiBudWxsXG59XG5cbmV4cG9ydCBjb25zdCBuZXdVc2VyRmxhZ3MgPSB7XG4gIC4uLmRlZmF1bHRTdGF0ZS5mbGFnU3RvcmFnZSxcbiAgdXBkYXRlQ291bnRlcjogQ1VSUkVOVF9VUERBVEVfQ09VTlRFUiAvLyBuZXcgdXNlcnMgZG9uJ3QgbmVlZCB0byBzZWUgdXBkYXRlIG5vdGlmaWNhdGlvblxufVxuXG5leHBvcnQgY29uc3QgX21vdmVJdGVtSW5BcnJheSA9IChhcnJheSwgdmFsdWUsIG1vdmVtZW50KSA9PiB7XG4gIGNvbnN0IG9sZEluZGV4ID0gYXJyYXkuaW5kZXhPZih2YWx1ZSlcbiAgY29uc3QgbmV3SW5kZXggPSBvbGRJbmRleCArIG1vdmVtZW50XG4gIGNvbnN0IG5ld0FycmF5ID0gWy4uLmFycmF5XVxuICAvLyByZW1vdmUgb2xkXG4gIG5ld0FycmF5LnNwbGljZShvbGRJbmRleCwgMSlcbiAgLy8gYWRkIG5ld1xuICBuZXdBcnJheS5zcGxpY2UoY2xhbXAobmV3SW5kZXgsIDAsIG5ld0FycmF5Lmxlbmd0aCArIDEpLCAwLCB2YWx1ZSlcbiAgcmV0dXJuIG5ld0FycmF5XG59XG5cbmNvbnN0IF93cmFwRGF0YSA9IChkYXRhLCB1c2VyTmFtZSkgPT4gKHtcbiAgLi4uZGF0YSxcbiAgX3VzZXI6IHVzZXJOYW1lLFxuICBfdGltZXN0YW1wOiBEYXRlLm5vdygpLFxuICBfdmVyc2lvbjogVkVSU0lPTlxufSlcblxuY29uc3QgX2NoZWNrVmFsaWRpdHkgPSAoZGF0YSkgPT4gZGF0YS5fdGltZXN0YW1wID4gMCAmJiBkYXRhLl92ZXJzaW9uID4gMFxuXG5jb25zdCBfdmVyaWZ5UHJlZnMgPSAoc3RhdGUpID0+IHtcbiAgc3RhdGUucHJlZnNTdG9yYWdlID0gc3RhdGUucHJlZnNTdG9yYWdlIHx8IHtcbiAgICBzaW1wbGU6IHt9LFxuICAgIGNvbGxlY3Rpb25zOiB7fVxuICB9XG4gIE9iamVjdC5lbnRyaWVzKGRlZmF1bHRTdGF0ZS5wcmVmc1N0b3JhZ2Uuc2ltcGxlKS5mb3JFYWNoKChbaywgdl0pID0+IHtcbiAgICBpZiAodHlwZW9mIHYgPT09ICdudW1iZXInIHx8IHR5cGVvZiB2ID09PSAnYm9vbGVhbicpIHJldHVyblxuICAgIGNvbnNvbGUud2FybihgUHJlZmVyZW5jZSBzaW1wbGUuJHtrfSBhcyBpbnZhbGlkIHR5cGUsIHJlaW5pdGlhbGl6aW5nYClcbiAgICBzZXQoc3RhdGUucHJlZnNTdG9yYWdlLnNpbXBsZSwgaywgZGVmYXVsdFN0YXRlLnByZWZzU3RvcmFnZS5zaW1wbGVba10pXG4gIH0pXG4gIE9iamVjdC5lbnRyaWVzKGRlZmF1bHRTdGF0ZS5wcmVmc1N0b3JhZ2UuY29sbGVjdGlvbnMpLmZvckVhY2goKFtrLCB2XSkgPT4ge1xuICAgIGlmIChBcnJheS5pc0FycmF5KHYpKSByZXR1cm5cbiAgICBjb25zb2xlLndhcm4oYFByZWZlcmVuY2UgY29sbGVjdGlvbnMuJHtrfSBhcyBpbnZhbGlkIHR5cGUsIHJlaW5pdGlhbGl6aW5nYClcbiAgICBzZXQoc3RhdGUucHJlZnNTdG9yYWdlLmNvbGxlY3Rpb25zLCBrLCBkZWZhdWx0U3RhdGUucHJlZnNTdG9yYWdlLmNvbGxlY3Rpb25zW2tdKVxuICB9KVxufVxuXG5leHBvcnQgY29uc3QgX2dldFJlY2VudERhdGEgPSAoY2FjaGUsIGxpdmUpID0+IHtcbiAgY29uc3QgcmVzdWx0ID0geyByZWNlbnQ6IG51bGwsIHN0YWxlOiBudWxsLCBuZWVkVXBsb2FkOiBmYWxzZSB9XG4gIGNvbnN0IGNhY2hlVmFsaWQgPSBfY2hlY2tWYWxpZGl0eShjYWNoZSB8fCB7fSlcbiAgY29uc3QgbGl2ZVZhbGlkID0gX2NoZWNrVmFsaWRpdHkobGl2ZSB8fCB7fSlcbiAgaWYgKCFsaXZlVmFsaWQgJiYgY2FjaGVWYWxpZCkge1xuICAgIHJlc3VsdC5uZWVkVXBsb2FkID0gdHJ1ZVxuICAgIGNvbnNvbGUuZGVidWcoJ05vdGhpbmcgdmFsaWQgc3RvcmVkIG9uIHNlcnZlciwgYXNzdW1pbmcgY2FjaGUgdG8gYmUgc291cmNlIG9mIHRydXRoJylcbiAgICByZXN1bHQucmVjZW50ID0gY2FjaGVcbiAgICByZXN1bHQuc3RhbGUgPSBsaXZlXG4gIH0gZWxzZSBpZiAoIWNhY2hlVmFsaWQgJiYgbGl2ZVZhbGlkKSB7XG4gICAgY29uc29sZS5kZWJ1ZygnVmFsaWQgc3RvcmFnZSBvbiBzZXJ2ZXIgZm91bmQsIG5vIGxvY2FsIGNhY2hlIGZvdW5kLCB1c2luZyBsaXZlIGFzIHNvdXJjZSBvZiB0cnV0aCcpXG4gICAgcmVzdWx0LnJlY2VudCA9IGxpdmVcbiAgICByZXN1bHQuc3RhbGUgPSBjYWNoZVxuICB9IGVsc2UgaWYgKGNhY2hlVmFsaWQgJiYgbGl2ZVZhbGlkKSB7XG4gICAgY29uc29sZS5kZWJ1ZygnQm90aCBzb3VyY2VzIGhhdmUgdmFsaWQgZGF0YSwgZmlndXJpbmcgdGhpbmdzIG91dC4uLicpXG4gICAgaWYgKGxpdmUuX3RpbWVzdGFtcCA9PT0gY2FjaGUuX3RpbWVzdGFtcCAmJiBsaXZlLl92ZXJzaW9uID09PSBjYWNoZS5fdmVyc2lvbikge1xuICAgICAgY29uc29sZS5kZWJ1ZygnU2FtZSB2ZXJzaW9uL3RpbWVzdGFtcCBvbiBib3RoIHNvdXJjZSwgc291cmNlIG9mIHRydXRoIGlycmVsZXZhbnQnKVxuICAgICAgcmVzdWx0LnJlY2VudCA9IGNhY2hlXG4gICAgICByZXN1bHQuc3RhbGUgPSBsaXZlXG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnNvbGUuZGVidWcoJ0RpZmZlcmVudCB0aW1lc3RhbXAsIGZpZ3VyaW5nIG91dCB3aGljaCBvbmUgaXMgbW9yZSByZWNlbnQnKVxuICAgICAgaWYgKGxpdmUuX3RpbWVzdGFtcCA8IGNhY2hlLl90aW1lc3RhbXApIHtcbiAgICAgICAgcmVzdWx0LnJlY2VudCA9IGNhY2hlXG4gICAgICAgIHJlc3VsdC5zdGFsZSA9IGxpdmVcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJlc3VsdC5yZWNlbnQgPSBsaXZlXG4gICAgICAgIHJlc3VsdC5zdGFsZSA9IGNhY2hlXG4gICAgICB9XG4gICAgfVxuICB9IGVsc2Uge1xuICAgIGNvbnNvbGUuZGVidWcoJ0JvdGggc291cmNlcyBhcmUgaW52YWxpZCwgc3RhcnQgZnJvbSBzY3JhdGNoJylcbiAgICByZXN1bHQubmVlZFVwbG9hZCA9IHRydWVcbiAgfVxuICByZXR1cm4gcmVzdWx0XG59XG5cbmV4cG9ydCBjb25zdCBfZ2V0QWxsRmxhZ3MgPSAocmVjZW50LCBzdGFsZSkgPT4ge1xuICByZXR1cm4gQXJyYXkuZnJvbShuZXcgU2V0KFtcbiAgICAuLi5PYmplY3Qua2V5cyh0b1JhdygocmVjZW50IHx8IHt9KS5mbGFnU3RvcmFnZSB8fCB7fSkpLFxuICAgIC4uLk9iamVjdC5rZXlzKHRvUmF3KChzdGFsZSB8fCB7fSkuZmxhZ1N0b3JhZ2UgfHwge30pKVxuICBdKSlcbn1cblxuZXhwb3J0IGNvbnN0IF9tZXJnZUZsYWdzID0gKHJlY2VudCwgc3RhbGUsIGFsbEZsYWdLZXlzKSA9PiB7XG4gIGlmICghc3RhbGUuZmxhZ1N0b3JhZ2UpIHJldHVybiByZWNlbnQuZmxhZ1N0b3JhZ2VcbiAgaWYgKCFyZWNlbnQuZmxhZ1N0b3JhZ2UpIHJldHVybiBzdGFsZS5mbGFnU3RvcmFnZVxuICByZXR1cm4gT2JqZWN0LmZyb21FbnRyaWVzKGFsbEZsYWdLZXlzLm1hcChmbGFnID0+IHtcbiAgICBjb25zdCByZWNlbnRGbGFnID0gcmVjZW50LmZsYWdTdG9yYWdlW2ZsYWddXG4gICAgY29uc3Qgc3RhbGVGbGFnID0gc3RhbGUuZmxhZ1N0b3JhZ2VbZmxhZ11cbiAgICAvLyB1c2UgZmxhZyB0aGF0IGlzIG9mIGhpZ2hlciB2YWx1ZVxuICAgIHJldHVybiBbZmxhZywgTnVtYmVyKChyZWNlbnRGbGFnID4gc3RhbGVGbGFnID8gcmVjZW50RmxhZyA6IHN0YWxlRmxhZykgfHwgMCldXG4gIH0pKVxufVxuXG5jb25zdCBfbWVyZ2VKb3VybmFsID0gKC4uLmpvdXJuYWxzKSA9PiB7XG4gIC8vIElnbm9yZSBpbnZhbGlkIGpvdXJuYWwgZW50cmllc1xuICBjb25zdCBhbGxKb3VybmFscyA9IGZsYXR0ZW4oXG4gICAgam91cm5hbHMubWFwKGogPT4gQXJyYXkuaXNBcnJheShqKSA/IGogOiBbXSlcbiAgKS5maWx0ZXIoZW50cnkgPT5cbiAgICBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZW50cnksICdwYXRoJykgJiZcbiAgICBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZW50cnksICdvcGVyYXRpb24nKSAmJlxuICAgIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlbnRyeSwgJ2FyZ3MnKSAmJlxuICAgIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlbnRyeSwgJ3RpbWVzdGFtcCcpXG4gIClcbiAgY29uc3QgZ3JvdXBlZCA9IGdyb3VwQnkoYWxsSm91cm5hbHMsICdwYXRoJylcbiAgY29uc3QgdHJpbW1lZEdyb3VwZWQgPSBPYmplY3QuZW50cmllcyhncm91cGVkKS5tYXAoKFtwYXRoLCBqb3VybmFsXSkgPT4ge1xuICAgIC8vIHNpZGUgZWZmZWN0XG4gICAgam91cm5hbC5zb3J0KChhLCBiKSA9PiBhLnRpbWVzdGFtcCA+IGIudGltZXN0YW1wID8gMSA6IC0xKVxuXG4gICAgaWYgKHBhdGguc3RhcnRzV2l0aCgnY29sbGVjdGlvbnMnKSkge1xuICAgICAgY29uc3QgbGFzdFJlbW92ZUluZGV4ID0gZmluZExhc3RJbmRleChqb3VybmFsLCAoeyBvcGVyYXRpb24gfSkgPT4gb3BlcmF0aW9uID09PSAncmVtb3ZlRnJvbUNvbGxlY3Rpb24nKVxuICAgICAgLy8gZXZlcnl0aGluZyBiZWZvcmUgbGFzdCByZW1vdmUgaXMgdW5pbXBvcnRhbnRcbiAgICAgIGxldCByZW1haW5kZXJcbiAgICAgIGlmIChsYXN0UmVtb3ZlSW5kZXggPiAwKSB7XG4gICAgICAgIHJlbWFpbmRlciA9IGpvdXJuYWwuc2xpY2UobGFzdFJlbW92ZUluZGV4KVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gZXZlcnl0aGluZyBlbHNlIGRvZXNuJ3QgbmVlZCB0cmltbWluZ1xuICAgICAgICByZW1haW5kZXIgPSBqb3VybmFsXG4gICAgICB9XG4gICAgICByZXR1cm4gdW5pcVdpdGgocmVtYWluZGVyLCAoYSwgYikgPT4ge1xuICAgICAgICBpZiAoYS5wYXRoICE9PSBiLnBhdGgpIHsgcmV0dXJuIGZhbHNlIH1cbiAgICAgICAgaWYgKGEub3BlcmF0aW9uICE9PSBiLm9wZXJhdGlvbikgeyByZXR1cm4gZmFsc2UgfVxuICAgICAgICBpZiAoYS5vcGVyYXRpb24gPT09ICdhZGRUb0NvbGxlY3Rpb24nKSB7XG4gICAgICAgICAgcmV0dXJuIGEuYXJnc1swXSA9PT0gYi5hcmdzWzBdXG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZhbHNlXG4gICAgICB9KVxuICAgIH0gZWxzZSBpZiAocGF0aC5zdGFydHNXaXRoKCdzaW1wbGUnKSkge1xuICAgICAgLy8gT25seSB0aGUgbGFzdCByZWNvcmQgaXMgaW1wb3J0YW50XG4gICAgICByZXR1cm4gdGFrZVJpZ2h0KGpvdXJuYWwpXG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBqb3VybmFsXG4gICAgfVxuICB9KVxuICByZXR1cm4gZmxhdHRlbih0cmltbWVkR3JvdXBlZClcbiAgICAuc29ydCgoYSwgYikgPT4gYS50aW1lc3RhbXAgPiBiLnRpbWVzdGFtcCA/IDEgOiAtMSlcbn1cblxuZXhwb3J0IGNvbnN0IF9tZXJnZVByZWZzID0gKHJlY2VudCwgc3RhbGUsIGFsbEZsYWdLZXlzKSA9PiB7XG4gIGlmICghc3RhbGUpIHJldHVybiByZWNlbnRcbiAgaWYgKCFyZWNlbnQpIHJldHVybiBzdGFsZVxuICBjb25zdCB7IF9qb3VybmFsOiByZWNlbnRKb3VybmFsLCAuLi5yZWNlbnREYXRhIH0gPSByZWNlbnRcbiAgY29uc3QgeyBfam91cm5hbDogc3RhbGVKb3VybmFsIH0gPSBzdGFsZVxuICAvKiogSm91cm5hbCBlbnRyeSBmb3JtYXQ6XG4gICAqIHBhdGg6IHBhdGggdG8gZW50cnkgaW4gcHJlZnNTdG9yYWdlXG4gICAqIHRpbWVzdGFtcDogdGltZXN0YW1wIG9mIHRoZSBjaGFuZ2VcbiAgICogb3BlcmF0aW9uOiBvcGVyYXRpb24gdHlwZVxuICAgKiBhcmd1bWVudHM6IGFycmF5IG9mIGFyZ3VtZW50cywgZGVwZW5kcyBvbiBvcGVyYXRpb24gdHlwZVxuICAgKlxuICAgKiBjdXJyZW50bHkgb25seSBzdXBwb3J0ZWQgb3BlcmF0aW9uIHR5cGUgaXMgXCJzZXRcIiB3aGljaCBqdXN0IHNldHMgdGhlIHZhbHVlXG4gICAqIHRvIHJlcXVlc3RlZCBvbmUuIEludGVuZGVkIG9ubHkgdG8gYmUgdXNlZCB3aXRoIHNpbXBsZSBwcmVmZXJlbmNlcyAoYm9vbGVhbiwgbnVtYmVyKVxuICAgKiBzaG91bGRuJ3QgYmUgdXNlZCB3aXRoIGNvbGxlY3Rpb25zIVxuICAgKi9cbiAgY29uc3QgcmVzdWx0T3V0cHV0ID0geyAuLi5yZWNlbnREYXRhIH1cbiAgY29uc3QgdG90YWxKb3VybmFsID0gX21lcmdlSm91cm5hbChzdGFsZUpvdXJuYWwsIHJlY2VudEpvdXJuYWwpXG4gIHRvdGFsSm91cm5hbC5mb3JFYWNoKCh7IHBhdGgsIHRpbWVzdGFtcCwgb3BlcmF0aW9uLCBjb21tYW5kLCBhcmdzIH0pID0+IHtcbiAgICBpZiAocGF0aC5zdGFydHNXaXRoKCdfJykpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYGpvdXJuYWwgY29udGFpbnMgZW50cnkgdG8gZWRpdCBpbnRlcm5hbCAoc3RhcnRzIHdpdGggXykgZmllbGQgJyR7cGF0aH0nLCBzb21ldGhpbmcgaXMgaW5jb3JyZWN0IGhlcmUsIGlnbm9yaW5nLmApXG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgc3dpdGNoIChvcGVyYXRpb24pIHtcbiAgICAgIGNhc2UgJ3NldCc6XG4gICAgICAgIHNldChyZXN1bHRPdXRwdXQsIHBhdGgsIGFyZ3NbMF0pXG4gICAgICAgIGJyZWFrXG4gICAgICBjYXNlICdhZGRUb0NvbGxlY3Rpb24nOlxuICAgICAgICBzZXQocmVzdWx0T3V0cHV0LCBwYXRoLCBBcnJheS5mcm9tKG5ldyBTZXQoZ2V0KHJlc3VsdE91dHB1dCwgcGF0aCkpLmFkZChhcmdzWzBdKSkpXG4gICAgICAgIGJyZWFrXG4gICAgICBjYXNlICdyZW1vdmVGcm9tQ29sbGVjdGlvbic6IHtcbiAgICAgICAgY29uc3QgbmV3U2V0ID0gbmV3IFNldChnZXQocmVzdWx0T3V0cHV0LCBwYXRoKSlcbiAgICAgICAgbmV3U2V0LmRlbGV0ZShhcmdzWzBdKVxuICAgICAgICBzZXQocmVzdWx0T3V0cHV0LCBwYXRoLCBBcnJheS5mcm9tKG5ld1NldCkpXG4gICAgICAgIGJyZWFrXG4gICAgICB9XG4gICAgICBjYXNlICdyZW9yZGVyQ29sbGVjdGlvbic6IHtcbiAgICAgICAgY29uc3QgW3ZhbHVlLCBtb3ZlbWVudF0gPSBhcmdzXG4gICAgICAgIHNldChyZXN1bHRPdXRwdXQsIHBhdGgsIF9tb3ZlSXRlbUluQXJyYXkoZ2V0KHJlc3VsdE91dHB1dCwgcGF0aCksIHZhbHVlLCBtb3ZlbWVudCkpXG4gICAgICAgIGJyZWFrXG4gICAgICB9XG4gICAgICBkZWZhdWx0OlxuICAgICAgICBjb25zb2xlLmVycm9yKGBVbmtub3duIGpvdXJuYWwgb3BlcmF0aW9uOiAnJHtvcGVyYXRpb259JywgZGlkIHdlIGZvcmdldCB0byBydW4gcmV2ZXJzZSBtaWdyYXRpb25zIGJlZm9yZWhhbmQ/YClcbiAgICB9XG4gIH0pXG4gIHJldHVybiB7IC4uLnJlc3VsdE91dHB1dCwgX2pvdXJuYWw6IHRvdGFsSm91cm5hbCB9XG59XG5cbmV4cG9ydCBjb25zdCBfcmVzZXRGbGFncyA9ICh0b3RhbEZsYWdzLCBrbm93bktleXMgPSBkZWZhdWx0U3RhdGUuZmxhZ1N0b3JhZ2UpID0+IHtcbiAgbGV0IHJlc3VsdCA9IHsgLi4udG90YWxGbGFncyB9XG4gIGNvbnN0IGFsbEZsYWdLZXlzID0gT2JqZWN0LmtleXModG90YWxGbGFncylcbiAgLy8gZmxhZyByZXNldCBmdW5jdGlvbmFsaXR5XG4gIGlmICh0b3RhbEZsYWdzLnJlc2V0ID49IENPTU1BTkRfVFJJTV9GTEFHUyAmJiB0b3RhbEZsYWdzLnJlc2V0IDw9IENPTU1BTkRfVFJJTV9GTEFHU19BTkRfUkVTRVQpIHtcbiAgICBjb25zb2xlLmRlYnVnKCdSZWNlaXZlZCBjb21tYW5kIHRvIHRyaW0gdGhlIGZsYWdzJylcbiAgICBjb25zdCBrbm93bktleXNTZXQgPSBuZXcgU2V0KE9iamVjdC5rZXlzKGtub3duS2V5cykpXG5cbiAgICAvLyBUcmltXG4gICAgcmVzdWx0ID0ge31cbiAgICBhbGxGbGFnS2V5cy5mb3JFYWNoKGZsYWcgPT4ge1xuICAgICAgaWYgKGtub3duS2V5c1NldC5oYXMoZmxhZykpIHtcbiAgICAgICAgcmVzdWx0W2ZsYWddID0gdG90YWxGbGFnc1tmbGFnXVxuICAgICAgfVxuICAgIH0pXG5cbiAgICAvLyBSZXNldFxuICAgIGlmICh0b3RhbEZsYWdzLnJlc2V0ID09PSBDT01NQU5EX1RSSU1fRkxBR1NfQU5EX1JFU0VUKSB7XG4gICAgICAvLyAxMDAxIC0gYW5kIHJlc2V0IGV2ZXJ5dGhpbmcgdG8gMFxuICAgICAgY29uc29sZS5kZWJ1ZygnUmVjZWl2ZWQgY29tbWFuZCB0byByZXNldCB0aGUgZmxhZ3MnKVxuICAgICAgT2JqZWN0LmtleXMoa25vd25LZXlzKS5mb3JFYWNoKGZsYWcgPT4geyByZXN1bHRbZmxhZ10gPSAwIH0pXG4gICAgfVxuICB9IGVsc2UgaWYgKHRvdGFsRmxhZ3MucmVzZXQgPiAwICYmIHRvdGFsRmxhZ3MucmVzZXQgPCA5MDAwKSB7XG4gICAgY29uc29sZS5kZWJ1ZygnUmVjZWl2ZWQgY29tbWFuZCB0byByZXNldCB0aGUgZmxhZ3MnKVxuICAgIGFsbEZsYWdLZXlzLmZvckVhY2goZmxhZyA9PiB7IHJlc3VsdFtmbGFnXSA9IDAgfSlcbiAgfVxuICByZXN1bHQucmVzZXQgPSAwXG4gIHJldHVybiByZXN1bHRcbn1cblxuZXhwb3J0IGNvbnN0IF9kb01pZ3JhdGlvbnMgPSAoY2FjaGUpID0+IHtcbiAgaWYgKCFjYWNoZSkgcmV0dXJuIGNhY2hlXG5cbiAgaWYgKGNhY2hlLl92ZXJzaW9uIDwgVkVSU0lPTikge1xuICAgIGNvbnNvbGUuZGVidWcoJ0xvY2FsIGNhY2hlZCBkYXRhIGhhcyBvbGRlciB2ZXJzaW9uLCBzZWVpbmcgaWYgdGhlcmUgYW55IG1pZ3JhdGlvbnMgdGhhdCBjYW4gYmUgYXBwbGllZCcpXG5cbiAgICAvLyBubyBtaWdyYXRpb25zIHJpZ2h0IG5vdyBzaW5jZSB3ZSBvbmx5IGhhdmUgb25lIHZlcnNpb25cbiAgICBjb25zb2xlLmRlYnVnKCdObyBtaWdyYXRpb25zIGZvdW5kJylcbiAgfVxuXG4gIGlmIChjYWNoZS5fdmVyc2lvbiA+IFZFUlNJT04pIHtcbiAgICBjb25zb2xlLmRlYnVnKCdMb2NhbCBjYWNoZWQgZGF0YSBoYXMgbmV3ZXIgdmVyc2lvbiwgc2VlaW5nIGlmIHRoZXJlIGFueSByZXZlcnNlIG1pZ3JhdGlvbnMgdGhhdCBjYW4gYmUgYXBwbGllZCcpXG5cbiAgICAvLyBubyByZXZlcnNlIG1pZ3JhdGlvbnMgcmlnaHQgbm93IGJ1dCB3ZSBsZWF2ZSBhIHBvc3NpYmlsaXR5IG9mIGxvYWRpbmcgYSBob3RwYXRjaCBpZiBuZWVkIGJlXG4gICAgaWYgKHdpbmRvdy5fUExFUk9NQV9IT1RQQVRDSCkge1xuICAgICAgaWYgKHdpbmRvdy5fUExFUk9NQV9IT1RQQVRDSC5yZXZlcnNlTWlncmF0aW9ucykge1xuICAgICAgICBjb25zb2xlLmRlYnVnKCdGb3VuZCBob3RwYXRjaCBtaWdyYXRpb24sIGFwcGx5aW5nJylcbiAgICAgICAgcmV0dXJuIHdpbmRvdy5fUExFUk9NQV9IT1RQQVRDSC5yZXZlcnNlTWlncmF0aW9ucy5jYWxsKHt9LCAnc2VydmVyU2lkZVN0b3JhZ2UnLCB7IGZyb206IGNhY2hlLl92ZXJzaW9uLCB0bzogVkVSU0lPTiB9LCBjYWNoZSlcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gY2FjaGVcbn1cblxuZXhwb3J0IGNvbnN0IG11dGF0aW9ucyA9IHtcbiAgY2xlYXJTZXJ2ZXJTaWRlU3RvcmFnZSAoc3RhdGUsIHVzZXJEYXRhKSB7XG4gICAgc3RhdGUgPSB7IC4uLmNsb25lRGVlcChkZWZhdWx0U3RhdGUpIH1cbiAgfSxcbiAgc2V0U2VydmVyU2lkZVN0b3JhZ2UgKHN0YXRlLCB1c2VyRGF0YSkge1xuICAgIGNvbnN0IGxpdmUgPSB1c2VyRGF0YS5zdG9yYWdlXG4gICAgc3RhdGUucmF3ID0gbGl2ZVxuICAgIGxldCBjYWNoZSA9IHN0YXRlLmNhY2hlXG4gICAgaWYgKGNhY2hlICYmIGNhY2hlLl91c2VyICE9PSB1c2VyRGF0YS5mcW4pIHtcbiAgICAgIGNvbnNvbGUud2FybignY2FjaGUgYmVsb25ncyB0byBhbm90aGVyIHVzZXIhIHJlaW5pdGlhbGl6aW5nIGxvY2FsIGNhY2hlIScpXG4gICAgICBjYWNoZSA9IG51bGxcbiAgICB9XG5cbiAgICBjYWNoZSA9IF9kb01pZ3JhdGlvbnMoY2FjaGUpXG5cbiAgICBsZXQgeyByZWNlbnQsIHN0YWxlLCBuZWVkc1VwbG9hZCB9ID0gX2dldFJlY2VudERhdGEoY2FjaGUsIGxpdmUpXG5cbiAgICBjb25zdCB1c2VyTmV3ID0gdXNlckRhdGEuY3JlYXRlZF9hdCA+IE5FV19VU0VSX0RBVEVcbiAgICBjb25zdCBmbGFnc1RlbXBsYXRlID0gdXNlck5ldyA/IG5ld1VzZXJGbGFncyA6IGRlZmF1bHRTdGF0ZS5mbGFnU3RvcmFnZVxuICAgIGxldCBkaXJ0eSA9IGZhbHNlXG5cbiAgICBpZiAocmVjZW50ID09PSBudWxsKSB7XG4gICAgICBjb25zb2xlLmRlYnVnKGBEYXRhIGlzIGVtcHR5LCBpbml0aWFsaXppbmcgZm9yICR7dXNlck5ldyA/ICduZXcnIDogJ2V4aXN0aW5nJ30gdXNlcmApXG4gICAgICByZWNlbnQgPSBfd3JhcERhdGEoe1xuICAgICAgICBmbGFnU3RvcmFnZTogeyAuLi5mbGFnc1RlbXBsYXRlIH0sXG4gICAgICAgIHByZWZzU3RvcmFnZTogeyAuLi5kZWZhdWx0U3RhdGUucHJlZnNTdG9yYWdlIH1cbiAgICAgIH0pXG4gICAgfVxuXG4gICAgaWYgKCFuZWVkc1VwbG9hZCAmJiByZWNlbnQgJiYgc3RhbGUpIHtcbiAgICAgIGNvbnNvbGUuZGVidWcoJ0NoZWNraW5nIGlmIGRhdGEgbmVlZHMgbWVyZ2luZy4uLicpXG4gICAgICAvLyBkaXNjYXJkaW5nIHRpbWVzdGFtcHMgYW5kIHZlcnNpb25zXG4gICAgICBjb25zdCB7IF90aW1lc3RhbXA6IF8wLCBfdmVyc2lvbjogXzEsIC4uLnJlY2VudERhdGEgfSA9IHJlY2VudFxuICAgICAgY29uc3QgeyBfdGltZXN0YW1wOiBfMiwgX3ZlcnNpb246IF8zLCAuLi5zdGFsZURhdGEgfSA9IHN0YWxlXG4gICAgICBkaXJ0eSA9ICFpc0VxdWFsKHJlY2VudERhdGEsIHN0YWxlRGF0YSlcbiAgICAgIGNvbnNvbGUuZGVidWcoYERhdGEgJHtkaXJ0eSA/ICduZWVkcycgOiAnZG9lc25cXCd0IG5lZWQnfSBtZXJnaW5nYClcbiAgICB9XG5cbiAgICBjb25zdCBhbGxGbGFnS2V5cyA9IF9nZXRBbGxGbGFncyhyZWNlbnQsIHN0YWxlKVxuICAgIGxldCB0b3RhbEZsYWdzXG4gICAgbGV0IHRvdGFsUHJlZnNcbiAgICBpZiAoZGlydHkpIHtcbiAgICAgIC8vIE1lcmdlIHRoZSBmbGFnc1xuICAgICAgY29uc29sZS5kZWJ1ZygnTWVyZ2luZyB0aGUgZGF0YS4uLicpXG4gICAgICB0b3RhbEZsYWdzID0gX21lcmdlRmxhZ3MocmVjZW50LCBzdGFsZSwgYWxsRmxhZ0tleXMpXG4gICAgICBfdmVyaWZ5UHJlZnMocmVjZW50KVxuICAgICAgX3ZlcmlmeVByZWZzKHN0YWxlKVxuICAgICAgdG90YWxQcmVmcyA9IF9tZXJnZVByZWZzKHJlY2VudC5wcmVmc1N0b3JhZ2UsIHN0YWxlLnByZWZzU3RvcmFnZSlcbiAgICB9IGVsc2Uge1xuICAgICAgdG90YWxGbGFncyA9IHJlY2VudC5mbGFnU3RvcmFnZVxuICAgICAgdG90YWxQcmVmcyA9IHJlY2VudC5wcmVmc1N0b3JhZ2VcbiAgICB9XG5cbiAgICB0b3RhbEZsYWdzID0gX3Jlc2V0RmxhZ3ModG90YWxGbGFncylcblxuICAgIHJlY2VudC5mbGFnU3RvcmFnZSA9IHsgLi4uZmxhZ3NUZW1wbGF0ZSwgLi4udG90YWxGbGFncyB9XG4gICAgcmVjZW50LnByZWZzU3RvcmFnZSA9IHsgLi4uZGVmYXVsdFN0YXRlLnByZWZzU3RvcmFnZSwgLi4udG90YWxQcmVmcyB9XG5cbiAgICBzdGF0ZS5kaXJ0eSA9IGRpcnR5IHx8IG5lZWRzVXBsb2FkXG4gICAgc3RhdGUuY2FjaGUgPSByZWNlbnRcbiAgICAvLyBzZXQgbG9jYWwgdGltZXN0YW1wIHRvIHNtYWxsZXIgb25lIGlmIHdlIGRvbid0IGhhdmUgYW55IGNoYW5nZXNcbiAgICBpZiAoc3RhbGUgJiYgcmVjZW50ICYmICFzdGF0ZS5kaXJ0eSkge1xuICAgICAgc3RhdGUuY2FjaGUuX3RpbWVzdGFtcCA9IE1hdGgubWluKHN0YWxlLl90aW1lc3RhbXAsIHJlY2VudC5fdGltZXN0YW1wKVxuICAgIH1cbiAgICBzdGF0ZS5mbGFnU3RvcmFnZSA9IHN0YXRlLmNhY2hlLmZsYWdTdG9yYWdlXG4gICAgc3RhdGUucHJlZnNTdG9yYWdlID0gc3RhdGUuY2FjaGUucHJlZnNTdG9yYWdlXG4gIH0sXG4gIHNldEZsYWcgKHN0YXRlLCB7IGZsYWcsIHZhbHVlIH0pIHtcbiAgICBzdGF0ZS5mbGFnU3RvcmFnZVtmbGFnXSA9IHZhbHVlXG4gICAgc3RhdGUuZGlydHkgPSB0cnVlXG4gIH0sXG4gIHNldFByZWZlcmVuY2UgKHN0YXRlLCB7IHBhdGgsIHZhbHVlIH0pIHtcbiAgICBpZiAocGF0aC5zdGFydHNXaXRoKCdfJykpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYHRyaWVkIHRvIGVkaXQgaW50ZXJuYWwgKHN0YXJ0cyB3aXRoIF8pIGZpZWxkICcke3BhdGh9JywgaWdub3JpbmcuYClcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICBzZXQoc3RhdGUucHJlZnNTdG9yYWdlLCBwYXRoLCB2YWx1ZSlcbiAgICBzdGF0ZS5wcmVmc1N0b3JhZ2UuX2pvdXJuYWwgPSBbXG4gICAgICAuLi5zdGF0ZS5wcmVmc1N0b3JhZ2UuX2pvdXJuYWwsXG4gICAgICB7IG9wZXJhdGlvbjogJ3NldCcsIHBhdGgsIGFyZ3M6IFt2YWx1ZV0sIHRpbWVzdGFtcDogRGF0ZS5ub3coKSB9XG4gICAgXVxuICAgIHN0YXRlLmRpcnR5ID0gdHJ1ZVxuICB9LFxuICBhZGRDb2xsZWN0aW9uUHJlZmVyZW5jZSAoc3RhdGUsIHsgcGF0aCwgdmFsdWUgfSkge1xuICAgIGlmIChwYXRoLnN0YXJ0c1dpdGgoJ18nKSkge1xuICAgICAgY29uc29sZS5lcnJvcihgdHJpZWQgdG8gZWRpdCBpbnRlcm5hbCAoc3RhcnRzIHdpdGggXykgZmllbGQgJyR7cGF0aH0nLCBpZ25vcmluZy5gKVxuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIGNvbnN0IGNvbGxlY3Rpb24gPSBuZXcgU2V0KGdldChzdGF0ZS5wcmVmc1N0b3JhZ2UsIHBhdGgpKVxuICAgIGNvbGxlY3Rpb24uYWRkKHZhbHVlKVxuICAgIHNldChzdGF0ZS5wcmVmc1N0b3JhZ2UsIHBhdGgsIFsuLi5jb2xsZWN0aW9uXSlcbiAgICBzdGF0ZS5wcmVmc1N0b3JhZ2UuX2pvdXJuYWwgPSBbXG4gICAgICAuLi5zdGF0ZS5wcmVmc1N0b3JhZ2UuX2pvdXJuYWwsXG4gICAgICB7IG9wZXJhdGlvbjogJ2FkZFRvQ29sbGVjdGlvbicsIHBhdGgsIGFyZ3M6IFt2YWx1ZV0sIHRpbWVzdGFtcDogRGF0ZS5ub3coKSB9XG4gICAgXVxuICAgIHN0YXRlLmRpcnR5ID0gdHJ1ZVxuICB9LFxuICByZW1vdmVDb2xsZWN0aW9uUHJlZmVyZW5jZSAoc3RhdGUsIHsgcGF0aCwgdmFsdWUgfSkge1xuICAgIGlmIChwYXRoLnN0YXJ0c1dpdGgoJ18nKSkge1xuICAgICAgY29uc29sZS5lcnJvcihgdHJpZWQgdG8gZWRpdCBpbnRlcm5hbCAoc3RhcnRzIHdpdGggXykgZmllbGQgJyR7cGF0aH0nLCBpZ25vcmluZy5gKVxuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIGNvbnN0IGNvbGxlY3Rpb24gPSBuZXcgU2V0KGdldChzdGF0ZS5wcmVmc1N0b3JhZ2UsIHBhdGgpKVxuICAgIGNvbGxlY3Rpb24uZGVsZXRlKHZhbHVlKVxuICAgIHNldChzdGF0ZS5wcmVmc1N0b3JhZ2UsIHBhdGgsIFsuLi5jb2xsZWN0aW9uXSlcbiAgICBzdGF0ZS5wcmVmc1N0b3JhZ2UuX2pvdXJuYWwgPSBbXG4gICAgICAuLi5zdGF0ZS5wcmVmc1N0b3JhZ2UuX2pvdXJuYWwsXG4gICAgICB7IG9wZXJhdGlvbjogJ3JlbW92ZUZyb21Db2xsZWN0aW9uJywgcGF0aCwgYXJnczogW3ZhbHVlXSwgdGltZXN0YW1wOiBEYXRlLm5vdygpIH1cbiAgICBdXG4gICAgc3RhdGUuZGlydHkgPSB0cnVlXG4gIH0sXG4gIHJlb3JkZXJDb2xsZWN0aW9uUHJlZmVyZW5jZSAoc3RhdGUsIHsgcGF0aCwgdmFsdWUsIG1vdmVtZW50IH0pIHtcbiAgICBpZiAocGF0aC5zdGFydHNXaXRoKCdfJykpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYHRyaWVkIHRvIGVkaXQgaW50ZXJuYWwgKHN0YXJ0cyB3aXRoIF8pIGZpZWxkICcke3BhdGh9JywgaWdub3JpbmcuYClcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICBjb25zdCBjb2xsZWN0aW9uID0gZ2V0KHN0YXRlLnByZWZzU3RvcmFnZSwgcGF0aClcbiAgICBjb25zdCBuZXdDb2xsZWN0aW9uID0gX21vdmVJdGVtSW5BcnJheShjb2xsZWN0aW9uLCB2YWx1ZSwgbW92ZW1lbnQpXG4gICAgc2V0KHN0YXRlLnByZWZzU3RvcmFnZSwgcGF0aCwgbmV3Q29sbGVjdGlvbilcbiAgICBzdGF0ZS5wcmVmc1N0b3JhZ2UuX2pvdXJuYWwgPSBbXG4gICAgICAuLi5zdGF0ZS5wcmVmc1N0b3JhZ2UuX2pvdXJuYWwsXG4gICAgICB7IG9wZXJhdGlvbjogJ2FycmFuZ2VDb2xsZWN0aW9uJywgcGF0aCwgYXJnczogW3ZhbHVlXSwgdGltZXN0YW1wOiBEYXRlLm5vdygpIH1cbiAgICBdXG4gICAgc3RhdGUuZGlydHkgPSB0cnVlXG4gIH0sXG4gIHVwZGF0ZUNhY2hlIChzdGF0ZSwgeyB1c2VybmFtZSB9KSB7XG4gICAgc3RhdGUucHJlZnNTdG9yYWdlLl9qb3VybmFsID0gX21lcmdlSm91cm5hbChzdGF0ZS5wcmVmc1N0b3JhZ2UuX2pvdXJuYWwpXG4gICAgc3RhdGUuY2FjaGUgPSBfd3JhcERhdGEoe1xuICAgICAgZmxhZ1N0b3JhZ2U6IHRvUmF3KHN0YXRlLmZsYWdTdG9yYWdlKSxcbiAgICAgIHByZWZzU3RvcmFnZTogdG9SYXcoc3RhdGUucHJlZnNTdG9yYWdlKVxuICAgIH0sIHVzZXJuYW1lKVxuICB9XG59XG5cbmNvbnN0IHNlcnZlclNpZGVTdG9yYWdlID0ge1xuICBzdGF0ZToge1xuICAgIC4uLmNsb25lRGVlcChkZWZhdWx0U3RhdGUpXG4gIH0sXG4gIG11dGF0aW9ucyxcbiAgYWN0aW9uczoge1xuICAgIHB1c2hTZXJ2ZXJTaWRlU3RvcmFnZSAoeyBzdGF0ZSwgcm9vdFN0YXRlLCBjb21taXQgfSwgeyBmb3JjZSA9IGZhbHNlIH0gPSB7fSkge1xuICAgICAgY29uc3QgbmVlZFB1c2ggPSBzdGF0ZS5kaXJ0eSB8fCBmb3JjZVxuICAgICAgY29uc29sZS5sb2cobmVlZFB1c2gpXG4gICAgICBpZiAoIW5lZWRQdXNoKSByZXR1cm5cbiAgICAgIGNvbW1pdCgndXBkYXRlQ2FjaGUnLCB7IHVzZXJuYW1lOiByb290U3RhdGUudXNlcnMuY3VycmVudFVzZXIuZnFuIH0pXG4gICAgICBjb25zdCBwYXJhbXMgPSB7IHBsZXJvbWFfc2V0dGluZ3Nfc3RvcmU6IHsgJ3BsZXJvbWEtZmUnOiBzdGF0ZS5jYWNoZSB9IH1cbiAgICAgIHJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3JcbiAgICAgICAgLnVwZGF0ZVByb2ZpbGUoeyBwYXJhbXMgfSlcbiAgICAgICAgLnRoZW4oKHVzZXIpID0+IHtcbiAgICAgICAgICBjb21taXQoJ3NldFNlcnZlclNpZGVTdG9yYWdlJywgdXNlcilcbiAgICAgICAgICBzdGF0ZS5kaXJ0eSA9IGZhbHNlXG4gICAgICAgIH0pXG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IHNlcnZlclNpZGVTdG9yYWdlXG4iXSwibmFtZXMiOlsidG9SYXciLCJDVVJSRU5UX1VQREFURV9DT1VOVEVSIiwiVkVSU0lPTiIsIk5FV19VU0VSX0RBVEUiLCJEYXRlIiwiQ09NTUFORF9UUklNX0ZMQUdTIiwiQ09NTUFORF9UUklNX0ZMQUdTX0FORF9SRVNFVCIsImRlZmF1bHRTdGF0ZSIsImRpcnR5IiwiZmxhZ1N0b3JhZ2UiLCJ1cGRhdGVDb3VudGVyIiwicmVzZXQiLCJwcmVmc1N0b3JhZ2UiLCJfam91cm5hbCIsInNpbXBsZSIsImRvbnRTaG93VXBkYXRlTm90aWZzIiwiY29sbGFwc2VOYXYiLCJjb2xsZWN0aW9ucyIsInBpbm5lZE5hdkl0ZW1zIiwicmF3IiwiY2FjaGUiLCJuZXdVc2VyRmxhZ3MiLCJfb2JqZWN0U3ByZWFkIiwiX21vdmVJdGVtSW5BcnJheSIsImFycmF5IiwidmFsdWUiLCJtb3ZlbWVudCIsIm9sZEluZGV4IiwiaW5kZXhPZiIsIm5ld0luZGV4IiwibmV3QXJyYXkiLCJfdG9Db25zdW1hYmxlQXJyYXkiLCJzcGxpY2UiLCJfY2xhbXAiLCJsZW5ndGgiLCJfd3JhcERhdGEiLCJkYXRhIiwidXNlck5hbWUiLCJfdXNlciIsIl90aW1lc3RhbXAiLCJub3ciLCJfdmVyc2lvbiIsIl9jaGVja1ZhbGlkaXR5IiwiX3ZlcmlmeVByZWZzIiwic3RhdGUiLCJPYmplY3QiLCJlbnRyaWVzIiwiZm9yRWFjaCIsIl9yZWYiLCJfcmVmMiIsIl9zbGljZWRUb0FycmF5IiwiayIsInYiLCJjb25zb2xlIiwid2FybiIsImNvbmNhdCIsIl9zZXQiLCJfcmVmMyIsIl9yZWY0IiwiQXJyYXkiLCJpc0FycmF5IiwiX2dldFJlY2VudERhdGEiLCJsaXZlIiwicmVzdWx0IiwicmVjZW50Iiwic3RhbGUiLCJuZWVkVXBsb2FkIiwiY2FjaGVWYWxpZCIsImxpdmVWYWxpZCIsImRlYnVnIiwiX2dldEFsbEZsYWdzIiwiZnJvbSIsIlNldCIsImtleXMiLCJfbWVyZ2VGbGFncyIsImFsbEZsYWdLZXlzIiwiZnJvbUVudHJpZXMiLCJtYXAiLCJmbGFnIiwicmVjZW50RmxhZyIsInN0YWxlRmxhZyIsIk51bWJlciIsIl9tZXJnZUpvdXJuYWwiLCJfbGVuIiwiYXJndW1lbnRzIiwiam91cm5hbHMiLCJfa2V5IiwiYWxsSm91cm5hbHMiLCJfZmxhdHRlbiIsImoiLCJmaWx0ZXIiLCJlbnRyeSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImdyb3VwZWQiLCJfZ3JvdXBCeSIsInRyaW1tZWRHcm91cGVkIiwiX3JlZjUiLCJfcmVmNiIsInBhdGgiLCJqb3VybmFsIiwic29ydCIsImEiLCJiIiwidGltZXN0YW1wIiwic3RhcnRzV2l0aCIsImxhc3RSZW1vdmVJbmRleCIsIl9maW5kTGFzdEluZGV4IiwiX3JlZjciLCJvcGVyYXRpb24iLCJyZW1haW5kZXIiLCJzbGljZSIsIl91bmlxV2l0aCIsImFyZ3MiLCJfdGFrZVJpZ2h0IiwiX21lcmdlUHJlZnMiLCJyZWNlbnRKb3VybmFsIiwicmVjZW50RGF0YSIsIl9vYmplY3RXaXRob3V0UHJvcGVydGllcyIsIl9leGNsdWRlZCIsInN0YWxlSm91cm5hbCIsInJlc3VsdE91dHB1dCIsInRvdGFsSm91cm5hbCIsIl9yZWY4IiwiY29tbWFuZCIsImVycm9yIiwiX2dldCIsImFkZCIsIm5ld1NldCIsIl9hcmdzIiwiX3Jlc2V0RmxhZ3MiLCJ0b3RhbEZsYWdzIiwia25vd25LZXlzIiwidW5kZWZpbmVkIiwia25vd25LZXlzU2V0IiwiaGFzIiwiX2RvTWlncmF0aW9ucyIsIndpbmRvdyIsIl9QTEVST01BX0hPVFBBVENIIiwicmV2ZXJzZU1pZ3JhdGlvbnMiLCJ0byIsIm11dGF0aW9ucyIsImNsZWFyU2VydmVyU2lkZVN0b3JhZ2UiLCJ1c2VyRGF0YSIsIl9jbG9uZURlZXAiLCJzZXRTZXJ2ZXJTaWRlU3RvcmFnZSIsInN0b3JhZ2UiLCJmcW4iLCJfZ2V0UmVjZW50RGF0YTIiLCJuZWVkc1VwbG9hZCIsInVzZXJOZXciLCJjcmVhdGVkX2F0IiwiZmxhZ3NUZW1wbGF0ZSIsIl9yZWNlbnQiLCJfMCIsIl8xIiwiX2V4Y2x1ZGVkMiIsIl8yIiwiXzMiLCJzdGFsZURhdGEiLCJfZXhjbHVkZWQzIiwiX2lzRXF1YWwiLCJ0b3RhbFByZWZzIiwiTWF0aCIsIm1pbiIsInNldEZsYWciLCJfcmVmOSIsInNldFByZWZlcmVuY2UiLCJfcmVmMTAiLCJhZGRDb2xsZWN0aW9uUHJlZmVyZW5jZSIsIl9yZWYxMSIsImNvbGxlY3Rpb24iLCJyZW1vdmVDb2xsZWN0aW9uUHJlZmVyZW5jZSIsIl9yZWYxMiIsInJlb3JkZXJDb2xsZWN0aW9uUHJlZmVyZW5jZSIsIl9yZWYxMyIsIm5ld0NvbGxlY3Rpb24iLCJ1cGRhdGVDYWNoZSIsIl9yZWYxNCIsInVzZXJuYW1lIiwic2VydmVyU2lkZVN0b3JhZ2UiLCJhY3Rpb25zIiwicHVzaFNlcnZlclNpZGVTdG9yYWdlIiwiX3JlZjE1Iiwicm9vdFN0YXRlIiwiY29tbWl0IiwiX3JlZjE2IiwiX3JlZjE2JGZvcmNlIiwiZm9yY2UiLCJuZWVkUHVzaCIsImxvZyIsInVzZXJzIiwiY3VycmVudFVzZXIiLCJwYXJhbXMiLCJwbGVyb21hX3NldHRpbmdzX3N0b3JlIiwiYXBpIiwiYmFja2VuZEludGVyYWN0b3IiLCJ1cGRhdGVQcm9maWxlIiwidGhlbiIsInVzZXIiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/modules/serverSideStorage.js\n");
/***/ }),
/***/ "./src/modules/shout.js":
/*!******************************!*\
!*** ./src/modules/shout.js ***!
\******************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\nvar shout = {\n state: {\n messages: [],\n channel: {\n state: ''\n },\n joined: false\n },\n mutations: {\n setChannel: function setChannel(state, channel) {\n state.channel = channel;\n },\n addMessage: function addMessage(state, message) {\n state.messages.push(message);\n state.messages = state.messages.slice(-19, 20);\n },\n setMessages: function setMessages(state, messages) {\n state.messages = messages.slice(-19, 20);\n },\n setJoined: function setJoined(state, joined) {\n state.joined = joined;\n }\n },\n actions: {\n initializeShout: function initializeShout(store, socket) {\n var channel = socket.channel('chat:public');\n channel.joinPush.receive('ok', function () {\n store.commit('setJoined', true);\n });\n channel.onClose(function () {\n store.commit('setJoined', false);\n });\n channel.onError(function () {\n store.commit('setJoined', false);\n });\n channel.on('new_msg', function (msg) {\n store.commit('addMessage', msg);\n });\n channel.on('messages', function (_ref) {\n var messages = _ref.messages;\n store.commit('setMessages', messages);\n });\n channel.join();\n store.commit('setChannel', channel);\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (shout);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvbW9kdWxlcy9zaG91dC5qcy5qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUEsSUFBTUEsS0FBSyxHQUFHO0VBQ1pDLEtBQUssRUFBRTtJQUNMQyxRQUFRLEVBQUUsRUFBRTtJQUNaQyxPQUFPLEVBQUU7TUFBRUYsS0FBSyxFQUFFO0lBQUcsQ0FBQztJQUN0QkcsTUFBTSxFQUFFO0VBQ1YsQ0FBQztFQUNEQyxTQUFTLEVBQUU7SUFDVEMsVUFBVSxXQUFBQSxXQUFFTCxLQUFLLEVBQUVFLE9BQU8sRUFBRTtNQUMxQkYsS0FBSyxDQUFDRSxPQUFPLEdBQUdBLE9BQU87SUFDekIsQ0FBQztJQUNESSxVQUFVLFdBQUFBLFdBQUVOLEtBQUssRUFBRU8sT0FBTyxFQUFFO01BQzFCUCxLQUFLLENBQUNDLFFBQVEsQ0FBQ08sSUFBSSxDQUFDRCxPQUFPLENBQUM7TUFDNUJQLEtBQUssQ0FBQ0MsUUFBUSxHQUFHRCxLQUFLLENBQUNDLFFBQVEsQ0FBQ1EsS0FBSyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQztJQUNoRCxDQUFDO0lBQ0RDLFdBQVcsV0FBQUEsWUFBRVYsS0FBSyxFQUFFQyxRQUFRLEVBQUU7TUFDNUJELEtBQUssQ0FBQ0MsUUFBUSxHQUFHQSxRQUFRLENBQUNRLEtBQUssQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUM7SUFDMUMsQ0FBQztJQUNERSxTQUFTLFdBQUFBLFVBQUVYLEtBQUssRUFBRUcsTUFBTSxFQUFFO01BQ3hCSCxLQUFLLENBQUNHLE1BQU0sR0FBR0EsTUFBTTtJQUN2QjtFQUNGLENBQUM7RUFDRFMsT0FBTyxFQUFFO0lBQ1BDLGVBQWUsV0FBQUEsZ0JBQUVDLEtBQUssRUFBRUMsTUFBTSxFQUFFO01BQzlCLElBQU1iLE9BQU8sR0FBR2EsTUFBTSxDQUFDYixPQUFPLENBQUMsYUFBYSxDQUFDO01BQzdDQSxPQUFPLENBQUNjLFFBQVEsQ0FBQ0MsT0FBTyxDQUFDLElBQUksRUFBRSxZQUFNO1FBQ25DSCxLQUFLLENBQUNJLE1BQU0sQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDO01BQ2pDLENBQUMsQ0FBQztNQUNGaEIsT0FBTyxDQUFDaUIsT0FBTyxDQUFDLFlBQU07UUFDcEJMLEtBQUssQ0FBQ0ksTUFBTSxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUM7TUFDbEMsQ0FBQyxDQUFDO01BQ0ZoQixPQUFPLENBQUNrQixPQUFPLENBQUMsWUFBTTtRQUNwQk4sS0FBSyxDQUFDSSxNQUFNLENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQztNQUNsQyxDQUFDLENBQUM7TUFDRmhCLE9BQU8sQ0FBQ21CLEVBQUUsQ0FBQyxTQUFTLEVBQUUsVUFBQ0MsR0FBRyxFQUFLO1FBQzdCUixLQUFLLENBQUNJLE1BQU0sQ0FBQyxZQUFZLEVBQUVJLEdBQUcsQ0FBQztNQUNqQyxDQUFDLENBQUM7TUFDRnBCLE9BQU8sQ0FBQ21CLEVBQUUsQ0FBQyxVQUFVLEVBQUUsVUFBQUUsSUFBQSxFQUFrQjtRQUFBLElBQWZ0QixRQUFRLEdBQUFzQixJQUFBLENBQVJ0QixRQUFRO1FBQ2hDYSxLQUFLLENBQUNJLE1BQU0sQ0FBQyxhQUFhLEVBQUVqQixRQUFRLENBQUM7TUFDdkMsQ0FBQyxDQUFDO01BQ0ZDLE9BQU8sQ0FBQ3NCLElBQUksQ0FBQyxDQUFDO01BQ2RWLEtBQUssQ0FBQ0ksTUFBTSxDQUFDLFlBQVksRUFBRWhCLE9BQU8sQ0FBQztJQUNyQztFQUNGO0FBQ0YsQ0FBQztBQUVELGlFQUFlSCxLQUFLIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9tb2R1bGVzL3Nob3V0LmpzPzVlNjUiXSwic291cmNlc0NvbnRlbnQiOlsiY29uc3Qgc2hvdXQgPSB7XG4gIHN0YXRlOiB7XG4gICAgbWVzc2FnZXM6IFtdLFxuICAgIGNoYW5uZWw6IHsgc3RhdGU6ICcnIH0sXG4gICAgam9pbmVkOiBmYWxzZVxuICB9LFxuICBtdXRhdGlvbnM6IHtcbiAgICBzZXRDaGFubmVsIChzdGF0ZSwgY2hhbm5lbCkge1xuICAgICAgc3RhdGUuY2hhbm5lbCA9IGNoYW5uZWxcbiAgICB9LFxuICAgIGFkZE1lc3NhZ2UgKHN0YXRlLCBtZXNzYWdlKSB7XG4gICAgICBzdGF0ZS5tZXNzYWdlcy5wdXNoKG1lc3NhZ2UpXG4gICAgICBzdGF0ZS5tZXNzYWdlcyA9IHN0YXRlLm1lc3NhZ2VzLnNsaWNlKC0xOSwgMjApXG4gICAgfSxcbiAgICBzZXRNZXNzYWdlcyAoc3RhdGUsIG1lc3NhZ2VzKSB7XG4gICAgICBzdGF0ZS5tZXNzYWdlcyA9IG1lc3NhZ2VzLnNsaWNlKC0xOSwgMjApXG4gICAgfSxcbiAgICBzZXRKb2luZWQgKHN0YXRlLCBqb2luZWQpIHtcbiAgICAgIHN0YXRlLmpvaW5lZCA9IGpvaW5lZFxuICAgIH1cbiAgfSxcbiAgYWN0aW9uczoge1xuICAgIGluaXRpYWxpemVTaG91dCAoc3RvcmUsIHNvY2tldCkge1xuICAgICAgY29uc3QgY2hhbm5lbCA9IHNvY2tldC5jaGFubmVsKCdjaGF0OnB1YmxpYycpXG4gICAgICBjaGFubmVsLmpvaW5QdXNoLnJlY2VpdmUoJ29rJywgKCkgPT4ge1xuICAgICAgICBzdG9yZS5jb21taXQoJ3NldEpvaW5lZCcsIHRydWUpXG4gICAgICB9KVxuICAgICAgY2hhbm5lbC5vbkNsb3NlKCgpID0+IHtcbiAgICAgICAgc3RvcmUuY29tbWl0KCdzZXRKb2luZWQnLCBmYWxzZSlcbiAgICAgIH0pXG4gICAgICBjaGFubmVsLm9uRXJyb3IoKCkgPT4ge1xuICAgICAgICBzdG9yZS5jb21taXQoJ3NldEpvaW5lZCcsIGZhbHNlKVxuICAgICAgfSlcbiAgICAgIGNoYW5uZWwub24oJ25ld19tc2cnLCAobXNnKSA9PiB7XG4gICAgICAgIHN0b3JlLmNvbW1pdCgnYWRkTWVzc2FnZScsIG1zZylcbiAgICAgIH0pXG4gICAgICBjaGFubmVsLm9uKCdtZXNzYWdlcycsICh7IG1lc3NhZ2VzIH0pID0+IHtcbiAgICAgICAgc3RvcmUuY29tbWl0KCdzZXRNZXNzYWdlcycsIG1lc3NhZ2VzKVxuICAgICAgfSlcbiAgICAgIGNoYW5uZWwuam9pbigpXG4gICAgICBzdG9yZS5jb21taXQoJ3NldENoYW5uZWwnLCBjaGFubmVsKVxuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBzaG91dFxuIl0sIm5hbWVzIjpbInNob3V0Iiwic3RhdGUiLCJtZXNzYWdlcyIsImNoYW5uZWwiLCJqb2luZWQiLCJtdXRhdGlvbnMiLCJzZXRDaGFubmVsIiwiYWRkTWVzc2FnZSIsIm1lc3NhZ2UiLCJwdXNoIiwic2xpY2UiLCJzZXRNZXNzYWdlcyIsInNldEpvaW5lZCIsImFjdGlvbnMiLCJpbml0aWFsaXplU2hvdXQiLCJzdG9yZSIsInNvY2tldCIsImpvaW5QdXNoIiwicmVjZWl2ZSIsImNvbW1pdCIsIm9uQ2xvc2UiLCJvbkVycm9yIiwib24iLCJtc2ciLCJfcmVmIiwiam9pbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/modules/shout.js\n");
/***/ }),
/***/ "./src/modules/statusHistory.js":
/*!**************************************!*\
!*** ./src/modules/statusHistory.js ***!
\**************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\nvar statusHistory = {\n state: {\n params: {},\n modalActivated: false\n },\n mutations: {\n openStatusHistoryModal: function openStatusHistoryModal(state, params) {\n state.params = params;\n state.modalActivated = true;\n },\n closeStatusHistoryModal: function closeStatusHistoryModal(state) {\n state.modalActivated = false;\n }\n },\n actions: {\n openStatusHistoryModal: function openStatusHistoryModal(_ref, params) {\n var commit = _ref.commit;\n commit('openStatusHistoryModal', params);\n },\n closeStatusHistoryModal: function closeStatusHistoryModal(_ref2) {\n var commit = _ref2.commit;\n commit('closeStatusHistoryModal');\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (statusHistory);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvbW9kdWxlcy9zdGF0dXNIaXN0b3J5LmpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQSxJQUFNQSxhQUFhLEdBQUc7RUFDcEJDLEtBQUssRUFBRTtJQUNMQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQ1ZDLGNBQWMsRUFBRTtFQUNsQixDQUFDO0VBQ0RDLFNBQVMsRUFBRTtJQUNUQyxzQkFBc0IsV0FBQUEsdUJBQUVKLEtBQUssRUFBRUMsTUFBTSxFQUFFO01BQ3JDRCxLQUFLLENBQUNDLE1BQU0sR0FBR0EsTUFBTTtNQUNyQkQsS0FBSyxDQUFDRSxjQUFjLEdBQUcsSUFBSTtJQUM3QixDQUFDO0lBQ0RHLHVCQUF1QixXQUFBQSx3QkFBRUwsS0FBSyxFQUFFO01BQzlCQSxLQUFLLENBQUNFLGNBQWMsR0FBRyxLQUFLO0lBQzlCO0VBQ0YsQ0FBQztFQUNESSxPQUFPLEVBQUU7SUFDUEYsc0JBQXNCLFdBQUFBLHVCQUFBRyxJQUFBLEVBQWNOLE1BQU0sRUFBRTtNQUFBLElBQWxCTyxNQUFNLEdBQUFELElBQUEsQ0FBTkMsTUFBTTtNQUM5QkEsTUFBTSxDQUFDLHdCQUF3QixFQUFFUCxNQUFNLENBQUM7SUFDMUMsQ0FBQztJQUNESSx1QkFBdUIsV0FBQUEsd0JBQUFJLEtBQUEsRUFBYztNQUFBLElBQVZELE1BQU0sR0FBQUMsS0FBQSxDQUFORCxNQUFNO01BQy9CQSxNQUFNLENBQUMseUJBQXlCLENBQUM7SUFDbkM7RUFDRjtBQUNGLENBQUM7QUFFRCxpRUFBZVQsYUFBYSIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvbW9kdWxlcy9zdGF0dXNIaXN0b3J5LmpzP2I1ZjEiXSwic291cmNlc0NvbnRlbnQiOlsiY29uc3Qgc3RhdHVzSGlzdG9yeSA9IHtcbiAgc3RhdGU6IHtcbiAgICBwYXJhbXM6IHt9LFxuICAgIG1vZGFsQWN0aXZhdGVkOiBmYWxzZVxuICB9LFxuICBtdXRhdGlvbnM6IHtcbiAgICBvcGVuU3RhdHVzSGlzdG9yeU1vZGFsIChzdGF0ZSwgcGFyYW1zKSB7XG4gICAgICBzdGF0ZS5wYXJhbXMgPSBwYXJhbXNcbiAgICAgIHN0YXRlLm1vZGFsQWN0aXZhdGVkID0gdHJ1ZVxuICAgIH0sXG4gICAgY2xvc2VTdGF0dXNIaXN0b3J5TW9kYWwgKHN0YXRlKSB7XG4gICAgICBzdGF0ZS5tb2RhbEFjdGl2YXRlZCA9IGZhbHNlXG4gICAgfVxuICB9LFxuICBhY3Rpb25zOiB7XG4gICAgb3BlblN0YXR1c0hpc3RvcnlNb2RhbCAoeyBjb21taXQgfSwgcGFyYW1zKSB7XG4gICAgICBjb21taXQoJ29wZW5TdGF0dXNIaXN0b3J5TW9kYWwnLCBwYXJhbXMpXG4gICAgfSxcbiAgICBjbG9zZVN0YXR1c0hpc3RvcnlNb2RhbCAoeyBjb21taXQgfSkge1xuICAgICAgY29tbWl0KCdjbG9zZVN0YXR1c0hpc3RvcnlNb2RhbCcpXG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IHN0YXR1c0hpc3RvcnlcbiJdLCJuYW1lcyI6WyJzdGF0dXNIaXN0b3J5Iiwic3RhdGUiLCJwYXJhbXMiLCJtb2RhbEFjdGl2YXRlZCIsIm11dGF0aW9ucyIsIm9wZW5TdGF0dXNIaXN0b3J5TW9kYWwiLCJjbG9zZVN0YXR1c0hpc3RvcnlNb2RhbCIsImFjdGlvbnMiLCJfcmVmIiwiY29tbWl0IiwiX3JlZjIiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/modules/statusHistory.js\n");
/***/ }),
/***/ "./src/modules/statuses.js":
/*!*********************************!*\
!*** ./src/modules/statuses.js ***!
\*********************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__),\n/* harmony export */ \"defaultState\": () => (/* binding */ defaultState),\n/* harmony export */ \"mutations\": () => (/* binding */ mutations),\n/* harmony export */ \"prepareStatus\": () => (/* binding */ prepareStatus)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ \"./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js\");\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"./node_modules/@babel/runtime/helpers/esm/defineProperty.js\");\n/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ \"./node_modules/@babel/runtime/helpers/esm/slicedToArray.js\");\n/* harmony import */ var lodash_omitBy__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! lodash/omitBy */ \"./node_modules/lodash/omitBy.js\");\n/* harmony import */ var lodash_omitBy__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(lodash_omitBy__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var lodash_isArray__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! lodash/isArray */ \"./node_modules/lodash/isArray.js\");\n/* harmony import */ var lodash_isArray__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(lodash_isArray__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var lodash_last__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! lodash/last */ \"./node_modules/lodash/last.js\");\n/* harmony import */ var lodash_last__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(lodash_last__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var lodash_first__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! lodash/first */ \"./node_modules/lodash/first.js\");\n/* harmony import */ var lodash_first__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(lodash_first__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony import */ var lodash_merge__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! lodash/merge */ \"./node_modules/lodash/merge.js\");\n/* harmony import */ var lodash_merge__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(lodash_merge__WEBPACK_IMPORTED_MODULE_7__);\n/* harmony import */ var lodash_minBy__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! lodash/minBy */ \"./node_modules/lodash/minBy.js\");\n/* harmony import */ var lodash_minBy__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(lodash_minBy__WEBPACK_IMPORTED_MODULE_8__);\n/* harmony import */ var lodash_maxBy__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! lodash/maxBy */ \"./node_modules/lodash/maxBy.js\");\n/* harmony import */ var lodash_maxBy__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(lodash_maxBy__WEBPACK_IMPORTED_MODULE_9__);\n/* harmony import */ var lodash_find__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! lodash/find */ \"./node_modules/lodash/find.js\");\n/* harmony import */ var lodash_find__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(lodash_find__WEBPACK_IMPORTED_MODULE_10__);\n/* harmony import */ var lodash_findIndex__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! lodash/findIndex */ \"./node_modules/lodash/findIndex.js\");\n/* harmony import */ var lodash_findIndex__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(lodash_findIndex__WEBPACK_IMPORTED_MODULE_11__);\n/* harmony import */ var lodash_each__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! lodash/each */ \"./node_modules/lodash/each.js\");\n/* harmony import */ var lodash_each__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(lodash_each__WEBPACK_IMPORTED_MODULE_12__);\n/* harmony import */ var lodash_slice__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! lodash/slice */ \"./node_modules/lodash/slice.js\");\n/* harmony import */ var lodash_slice__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(lodash_slice__WEBPACK_IMPORTED_MODULE_13__);\n/* harmony import */ var lodash_remove__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! lodash/remove */ \"./node_modules/lodash/remove.js\");\n/* harmony import */ var lodash_remove__WEBPACK_IMPORTED_MODULE_14___default = /*#__PURE__*/__webpack_require__.n(lodash_remove__WEBPACK_IMPORTED_MODULE_14__);\n/* harmony import */ var _services_notification_utils_notification_utils_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../services/notification_utils/notification_utils.js */ \"./src/services/notification_utils/notification_utils.js\");\n/* harmony import */ var _services_api_api_service_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../services/api/api.service.js */ \"./src/services/api/api.service.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\nvar emptyTl = function emptyTl() {\n var userId = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n return {\n statuses: [],\n statusesObject: {},\n faves: [],\n visibleStatuses: [],\n visibleStatusesObject: {},\n newStatusCount: 0,\n maxId: 0,\n minId: 0,\n minVisibleId: 0,\n loading: false,\n followers: [],\n friends: [],\n userId: userId,\n flushMarker: 0\n };\n};\nvar emptyNotifications = function emptyNotifications() {\n return {\n desktopNotificationSilence: true,\n maxId: 0,\n minId: Number.POSITIVE_INFINITY,\n data: [],\n idStore: {},\n loading: false\n };\n};\nvar defaultState = function defaultState() {\n return {\n allStatuses: [],\n allStatusesObject: {},\n conversationsObject: {},\n maxId: 0,\n notifications: emptyNotifications(),\n favorites: new Set(),\n timelines: {\n mentions: emptyTl(),\n \"public\": emptyTl(),\n user: emptyTl(),\n favorites: emptyTl(),\n media: emptyTl(),\n publicAndExternal: emptyTl(),\n friends: emptyTl(),\n tag: emptyTl(),\n dms: emptyTl(),\n bookmarks: emptyTl(),\n list: emptyTl()\n }\n };\n};\nvar prepareStatus = function prepareStatus(status) {\n // Set deleted flag\n status.deleted = false;\n\n // To make the array reactive\n status.attachments = status.attachments || [];\n return status;\n};\nvar mergeOrAdd = function mergeOrAdd(arr, obj, item) {\n var oldItem = obj[item.id];\n if (oldItem) {\n // We already have this, so only merge the new info.\n // We ignore null values to avoid overwriting existing properties with missing data\n // we also skip 'user' because that is handled by users module\n lodash_merge__WEBPACK_IMPORTED_MODULE_7___default()(oldItem, lodash_omitBy__WEBPACK_IMPORTED_MODULE_3___default()(item, function (v, k) {\n return v === null || k === 'user';\n }));\n // Reactivity fix.\n oldItem.attachments.splice(oldItem.attachments.length);\n return {\n item: oldItem,\n \"new\": false\n };\n } else {\n // This is a new item, prepare it\n prepareStatus(item);\n arr.push(item);\n obj[item.id] = item;\n return {\n item: item,\n \"new\": true\n };\n }\n};\nvar sortById = function sortById(a, b) {\n var seqA = Number(a.id);\n var seqB = Number(b.id);\n var isSeqA = !Number.isNaN(seqA);\n var isSeqB = !Number.isNaN(seqB);\n if (isSeqA && isSeqB) {\n return seqA > seqB ? -1 : 1;\n } else if (isSeqA && !isSeqB) {\n return 1;\n } else if (!isSeqA && isSeqB) {\n return -1;\n } else {\n return a.id > b.id ? -1 : 1;\n }\n};\nvar sortTimeline = function sortTimeline(timeline) {\n timeline.visibleStatuses = timeline.visibleStatuses.sort(sortById);\n timeline.statuses = timeline.statuses.sort(sortById);\n timeline.minVisibleId = (lodash_last__WEBPACK_IMPORTED_MODULE_5___default()(timeline.visibleStatuses) || {}).id;\n return timeline;\n};\n\n// Add status to the global storages (arrays and objects maintaining statuses) except timelines\nvar addStatusToGlobalStorage = function addStatusToGlobalStorage(state, data) {\n var result = mergeOrAdd(state.allStatuses, state.allStatusesObject, data);\n if (result[\"new\"]) {\n // Add to conversation\n var status = result.item;\n var conversationsObject = state.conversationsObject;\n var conversationId = status.statusnet_conversation_id;\n if (conversationsObject[conversationId]) {\n conversationsObject[conversationId].push(status);\n } else {\n conversationsObject[conversationId] = [status];\n }\n }\n return result;\n};\n\n// Remove status from the global storages (arrays and objects maintaining statuses) except timelines\nvar removeStatusFromGlobalStorage = function removeStatusFromGlobalStorage(state, status) {\n lodash_remove__WEBPACK_IMPORTED_MODULE_14___default()(state.allStatuses, {\n id: status.id\n });\n\n // TODO: Need to remove from allStatusesObject?\n\n // Remove possible notification\n lodash_remove__WEBPACK_IMPORTED_MODULE_14___default()(state.notifications.data, function (_ref) {\n var id = _ref.action.id;\n return id === status.id;\n });\n\n // Remove from conversation\n var conversationId = status.statusnet_conversation_id;\n if (state.conversationsObject[conversationId]) {\n lodash_remove__WEBPACK_IMPORTED_MODULE_14___default()(state.conversationsObject[conversationId], {\n id: status.id\n });\n }\n};\nvar addNewStatuses = function addNewStatuses(state, _ref2) {\n var statuses = _ref2.statuses,\n _ref2$showImmediately = _ref2.showImmediately,\n showImmediately = _ref2$showImmediately === void 0 ? false : _ref2$showImmediately,\n timeline = _ref2.timeline,\n _ref2$user = _ref2.user,\n user = _ref2$user === void 0 ? {} : _ref2$user,\n _ref2$noIdUpdate = _ref2.noIdUpdate,\n noIdUpdate = _ref2$noIdUpdate === void 0 ? false : _ref2$noIdUpdate,\n userId = _ref2.userId,\n _ref2$pagination = _ref2.pagination,\n pagination = _ref2$pagination === void 0 ? {} : _ref2$pagination;\n // Sanity check\n if (!lodash_isArray__WEBPACK_IMPORTED_MODULE_4___default()(statuses)) {\n return false;\n }\n var allStatuses = state.allStatuses;\n var timelineObject = state.timelines[timeline];\n\n // Mismatch between API pagination and our internal minId/maxId tracking systems:\n // pagination.maxId is the oldest of the returned statuses when fetching older,\n // and pagination.minId is the newest when fetching newer. The names come directly\n // from the arguments they're supposed to be passed as for the next fetch.\n var minNew = pagination.maxId || (statuses.length > 0 ? lodash_minBy__WEBPACK_IMPORTED_MODULE_8___default()(statuses, 'id').id : 0);\n var maxNew = pagination.minId || (statuses.length > 0 ? lodash_maxBy__WEBPACK_IMPORTED_MODULE_9___default()(statuses, 'id').id : 0);\n var newer = timeline && (maxNew > timelineObject.maxId || timelineObject.maxId === 0) && statuses.length > 0;\n var older = timeline && (minNew < timelineObject.minId || timelineObject.minId === 0) && statuses.length > 0;\n if (!noIdUpdate && newer) {\n timelineObject.maxId = maxNew;\n }\n if (!noIdUpdate && older) {\n timelineObject.minId = minNew;\n }\n\n // This makes sure that user timeline won't get data meant for other\n // user. I.e. opening different user profiles makes request which could\n // return data late after user already viewing different user profile\n if ((timeline === 'user' || timeline === 'media') && timelineObject.userId !== userId) {\n return;\n }\n var addStatus = function addStatus(data, showImmediately) {\n var addToTimeline = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;\n var result = addStatusToGlobalStorage(state, data);\n var status = result.item;\n if (result[\"new\"]) {\n // We are mentioned in a post\n if (status.type === 'status' && lodash_find__WEBPACK_IMPORTED_MODULE_10___default()(status.attentions, {\n id: user.id\n })) {\n var mentions = state.timelines.mentions;\n\n // Add the mention to the mentions timeline\n if (timelineObject !== mentions) {\n mergeOrAdd(mentions.statuses, mentions.statusesObject, status);\n mentions.newStatusCount += 1;\n sortTimeline(mentions);\n }\n }\n if (status.visibility === 'direct') {\n var dms = state.timelines.dms;\n mergeOrAdd(dms.statuses, dms.statusesObject, status);\n dms.newStatusCount += 1;\n sortTimeline(dms);\n }\n }\n\n // Decide if we should treat the status as new for this timeline.\n var resultForCurrentTimeline;\n // Some statuses should only be added to the global status repository.\n if (timeline && addToTimeline) {\n resultForCurrentTimeline = mergeOrAdd(timelineObject.statuses, timelineObject.statusesObject, status);\n }\n if (timeline && showImmediately) {\n // Add it directly to the visibleStatuses, don't change\n // newStatusCount\n mergeOrAdd(timelineObject.visibleStatuses, timelineObject.visibleStatusesObject, status);\n } else if (timeline && addToTimeline && resultForCurrentTimeline[\"new\"]) {\n // Just change newStatuscount\n timelineObject.newStatusCount += 1;\n }\n if (status.quote) {\n addStatus(status.quote, /* showImmediately = */false, /* addToTimeline = */false);\n }\n return status;\n };\n var favoriteStatus = function favoriteStatus(favorite, counter) {\n var status = lodash_find__WEBPACK_IMPORTED_MODULE_10___default()(allStatuses, {\n id: favorite.in_reply_to_status_id\n });\n if (status) {\n // This is our favorite, so the relevant bit.\n if (favorite.user.id === user.id) {\n status.favorited = true;\n } else {\n status.fave_num += 1;\n }\n }\n return status;\n };\n var processors = {\n status: function status(_status) {\n addStatus(_status, showImmediately);\n },\n edit: function edit(status) {\n addStatus(status, showImmediately);\n },\n retweet: function retweet(status) {\n // RetweetedStatuses are never shown immediately\n var retweetedStatus = addStatus(status.retweeted_status, false, false);\n var retweet;\n // If the retweeted status is already there, don't add the retweet\n // to the timeline.\n if (timeline && lodash_find__WEBPACK_IMPORTED_MODULE_10___default()(timelineObject.statuses, function (s) {\n if (s.retweeted_status) {\n return s.id === retweetedStatus.id || s.retweeted_status.id === retweetedStatus.id;\n } else {\n return s.id === retweetedStatus.id;\n }\n })) {\n // Already have it visible (either as the original or another RT), don't add to timeline, don't show.\n retweet = addStatus(status, false, false);\n } else {\n retweet = addStatus(status, showImmediately);\n }\n retweet.retweeted_status = retweetedStatus;\n },\n favorite: function favorite(_favorite) {\n // Only update if this is a new favorite.\n // Ignore our own favorites because we get info about likes as response to like request\n if (!state.favorites.has(_favorite.id)) {\n state.favorites.add(_favorite.id);\n favoriteStatus(_favorite);\n }\n },\n deletion: function deletion(_deletion) {\n var uri = _deletion.uri;\n var status = lodash_find__WEBPACK_IMPORTED_MODULE_10___default()(allStatuses, {\n uri: uri\n });\n if (!status) {\n return;\n }\n removeStatusFromGlobalStorage(state, status);\n if (timeline) {\n lodash_remove__WEBPACK_IMPORTED_MODULE_14___default()(timelineObject.statuses, {\n uri: uri\n });\n lodash_remove__WEBPACK_IMPORTED_MODULE_14___default()(timelineObject.visibleStatuses, {\n uri: uri\n });\n }\n },\n follow: function follow(_follow) {\n // NOOP, it is known status but we don't do anything about it for now\n },\n \"default\": function _default(unknown) {\n console.log('unknown status type');\n console.log(unknown);\n }\n };\n lodash_each__WEBPACK_IMPORTED_MODULE_12___default()(statuses, function (status) {\n var type = status.type;\n var processor = processors[type] || processors[\"default\"];\n processor(status);\n });\n\n // Keep the visible statuses sorted\n if (timeline && !(timeline === 'bookmarks')) {\n sortTimeline(timelineObject);\n }\n};\nvar updateNotificationsMinMaxId = function updateNotificationsMinMaxId(state, notification) {\n state.notifications.maxId = notification.id > state.notifications.maxId ? notification.id : state.notifications.maxId;\n state.notifications.minId = notification.id < state.notifications.minId ? notification.id : state.notifications.minId;\n};\nvar addNewNotifications = function addNewNotifications(state, _ref3) {\n var dispatch = _ref3.dispatch,\n notifications = _ref3.notifications,\n older = _ref3.older,\n visibleNotificationTypes = _ref3.visibleNotificationTypes,\n rootGetters = _ref3.rootGetters,\n newNotificationSideEffects = _ref3.newNotificationSideEffects;\n lodash_each__WEBPACK_IMPORTED_MODULE_12___default()(notifications, function (notification) {\n // If invalid notification, update ids but don't add it to store\n if (!(0,_services_notification_utils_notification_utils_js__WEBPACK_IMPORTED_MODULE_15__.isValidNotification)(notification)) {\n console.error('Invalid notification:', notification);\n updateNotificationsMinMaxId(state, notification);\n return;\n }\n if ((0,_services_notification_utils_notification_utils_js__WEBPACK_IMPORTED_MODULE_15__.isStatusNotification)(notification.type)) {\n notification.action = addStatusToGlobalStorage(state, notification.action).item;\n notification.status = notification.status && addStatusToGlobalStorage(state, notification.status).item;\n }\n if (notification.type === 'pleroma:report') {\n dispatch('addReport', notification.report);\n }\n if (notification.type === 'pleroma:emoji_reaction') {\n dispatch('fetchEmojiReactionsBy', notification.status.id);\n }\n\n // Only add a new notification if we don't have one for the same action\n // eslint-disable-next-line no-prototype-builtins\n if (!state.notifications.idStore.hasOwnProperty(notification.id)) {\n updateNotificationsMinMaxId(state, notification);\n state.notifications.data.push(notification);\n state.notifications.idStore[notification.id] = notification;\n newNotificationSideEffects(notification);\n } else if (notification.seen) {\n state.notifications.idStore[notification.id].seen = true;\n }\n });\n};\nvar removeStatus = function removeStatus(state, _ref4) {\n var timeline = _ref4.timeline,\n userId = _ref4.userId;\n var timelineObject = state.timelines[timeline];\n if (userId) {\n lodash_remove__WEBPACK_IMPORTED_MODULE_14___default()(timelineObject.statuses, {\n user: {\n id: userId\n }\n });\n lodash_remove__WEBPACK_IMPORTED_MODULE_14___default()(timelineObject.visibleStatuses, {\n user: {\n id: userId\n }\n });\n timelineObject.minVisibleId = timelineObject.visibleStatuses.length > 0 ? lodash_last__WEBPACK_IMPORTED_MODULE_5___default()(timelineObject.visibleStatuses).id : 0;\n timelineObject.maxId = timelineObject.statuses.length > 0 ? lodash_first__WEBPACK_IMPORTED_MODULE_6___default()(timelineObject.statuses).id : 0;\n }\n};\nvar mutations = {\n addNewStatuses: addNewStatuses,\n addNewNotifications: addNewNotifications,\n removeStatus: removeStatus,\n showNewStatuses: function showNewStatuses(state, _ref5) {\n var timeline = _ref5.timeline;\n var oldTimeline = state.timelines[timeline];\n oldTimeline.newStatusCount = 0;\n oldTimeline.visibleStatuses = lodash_slice__WEBPACK_IMPORTED_MODULE_13___default()(oldTimeline.statuses, 0, 50);\n oldTimeline.minVisibleId = lodash_last__WEBPACK_IMPORTED_MODULE_5___default()(oldTimeline.visibleStatuses).id;\n oldTimeline.minId = oldTimeline.minVisibleId;\n oldTimeline.visibleStatusesObject = {};\n lodash_each__WEBPACK_IMPORTED_MODULE_12___default()(oldTimeline.visibleStatuses, function (status) {\n oldTimeline.visibleStatusesObject[status.id] = status;\n });\n },\n resetStatuses: function resetStatuses(state) {\n var emptyState = defaultState();\n Object.entries(emptyState).forEach(function (_ref6) {\n var _ref7 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(_ref6, 2),\n key = _ref7[0],\n value = _ref7[1];\n state[key] = value;\n });\n },\n clearTimeline: function clearTimeline(state, _ref8) {\n var timeline = _ref8.timeline,\n _ref8$excludeUserId = _ref8.excludeUserId,\n excludeUserId = _ref8$excludeUserId === void 0 ? false : _ref8$excludeUserId;\n var userId = excludeUserId ? state.timelines[timeline].userId : undefined;\n state.timelines[timeline] = emptyTl(userId);\n },\n clearNotifications: function clearNotifications(state) {\n state.notifications = emptyNotifications();\n },\n setFavorited: function setFavorited(state, _ref9) {\n var status = _ref9.status,\n value = _ref9.value;\n var newStatus = state.allStatusesObject[status.id];\n if (newStatus.favorited !== value) {\n if (value) {\n newStatus.fave_num++;\n } else {\n newStatus.fave_num--;\n }\n }\n newStatus.favorited = value;\n },\n setFavoritedConfirm: function setFavoritedConfirm(state, _ref10) {\n var status = _ref10.status,\n user = _ref10.user;\n var newStatus = state.allStatusesObject[status.id];\n newStatus.favorited = status.favorited;\n newStatus.fave_num = status.fave_num;\n var index = lodash_findIndex__WEBPACK_IMPORTED_MODULE_11___default()(newStatus.favoritedBy, {\n id: user.id\n });\n if (index !== -1 && !newStatus.favorited) {\n newStatus.favoritedBy.splice(index, 1);\n } else if (index === -1 && newStatus.favorited) {\n newStatus.favoritedBy.push(user);\n }\n },\n setMutedStatus: function setMutedStatus(state, status) {\n var newStatus = state.allStatusesObject[status.id];\n newStatus.thread_muted = status.thread_muted;\n if (newStatus.thread_muted !== undefined) {\n state.conversationsObject[newStatus.statusnet_conversation_id].forEach(function (status) {\n status.thread_muted = newStatus.thread_muted;\n });\n }\n },\n setRetweeted: function setRetweeted(state, _ref11) {\n var status = _ref11.status,\n value = _ref11.value;\n var newStatus = state.allStatusesObject[status.id];\n if (newStatus.repeated !== value) {\n if (value) {\n newStatus.repeat_num++;\n } else {\n newStatus.repeat_num--;\n }\n }\n newStatus.repeated = value;\n },\n setRetweetedConfirm: function setRetweetedConfirm(state, _ref12) {\n var status = _ref12.status,\n user = _ref12.user;\n var newStatus = state.allStatusesObject[status.id];\n newStatus.repeated = status.repeated;\n newStatus.repeat_num = status.repeat_num;\n var index = lodash_findIndex__WEBPACK_IMPORTED_MODULE_11___default()(newStatus.rebloggedBy, {\n id: user.id\n });\n if (index !== -1 && !newStatus.repeated) {\n newStatus.rebloggedBy.splice(index, 1);\n } else if (index === -1 && newStatus.repeated) {\n newStatus.rebloggedBy.push(user);\n }\n },\n setBookmarked: function setBookmarked(state, _ref13) {\n var status = _ref13.status,\n value = _ref13.value;\n var newStatus = state.allStatusesObject[status.id];\n newStatus.bookmarked = value;\n },\n setBookmarkedConfirm: function setBookmarkedConfirm(state, _ref14) {\n var status = _ref14.status;\n var newStatus = state.allStatusesObject[status.id];\n newStatus.bookmarked = status.bookmarked;\n },\n setDeleted: function setDeleted(state, _ref15) {\n var status = _ref15.status;\n var newStatus = state.allStatusesObject[status.id];\n if (newStatus) newStatus.deleted = true;\n },\n setManyDeleted: function setManyDeleted(state, condition) {\n Object.values(state.allStatusesObject).forEach(function (status) {\n if (condition(status)) {\n status.deleted = true;\n }\n });\n },\n setLoading: function setLoading(state, _ref16) {\n var timeline = _ref16.timeline,\n value = _ref16.value;\n state.timelines[timeline].loading = value;\n },\n setNsfw: function setNsfw(state, _ref17) {\n var id = _ref17.id,\n nsfw = _ref17.nsfw;\n var newStatus = state.allStatusesObject[id];\n newStatus.nsfw = nsfw;\n },\n setNotificationsLoading: function setNotificationsLoading(state, _ref18) {\n var value = _ref18.value;\n state.notifications.loading = value;\n },\n setNotificationsSilence: function setNotificationsSilence(state, _ref19) {\n var value = _ref19.value;\n state.notifications.desktopNotificationSilence = value;\n },\n markNotificationsAsSeen: function markNotificationsAsSeen(state) {\n lodash_each__WEBPACK_IMPORTED_MODULE_12___default()(state.notifications.data, function (notification) {\n notification.seen = true;\n });\n },\n markSingleNotificationAsSeen: function markSingleNotificationAsSeen(state, _ref20) {\n var id = _ref20.id;\n var notification = lodash_find__WEBPACK_IMPORTED_MODULE_10___default()(state.notifications.data, function (n) {\n return n.id === id;\n });\n if (notification) notification.seen = true;\n },\n dismissNotification: function dismissNotification(state, _ref21) {\n var id = _ref21.id;\n state.notifications.data = state.notifications.data.filter(function (n) {\n return n.id !== id;\n });\n },\n dismissNotifications: function dismissNotifications(state, _ref22) {\n var finder = _ref22.finder;\n state.notifications.data = state.notifications.data.filter(function (n) {\n return finder;\n });\n },\n updateNotification: function updateNotification(state, _ref23) {\n var id = _ref23.id,\n updater = _ref23.updater;\n var notification = lodash_find__WEBPACK_IMPORTED_MODULE_10___default()(state.notifications.data, function (n) {\n return n.id === id;\n });\n notification && updater(notification);\n },\n queueFlush: function queueFlush(state, _ref24) {\n var timeline = _ref24.timeline,\n id = _ref24.id;\n state.timelines[timeline].flushMarker = id;\n },\n queueFlushAll: function queueFlushAll(state) {\n Object.keys(state.timelines).forEach(function (timeline) {\n state.timelines[timeline].flushMarker = state.timelines[timeline].maxId;\n });\n },\n addRepeats: function addRepeats(state, _ref25) {\n var id = _ref25.id,\n rebloggedByUsers = _ref25.rebloggedByUsers,\n currentUser = _ref25.currentUser;\n var newStatus = state.allStatusesObject[id];\n newStatus.rebloggedBy = rebloggedByUsers.filter(function (_) {\n return _;\n });\n // repeats stats can be incorrect based on polling condition, let's update them using the most recent data\n newStatus.repeat_num = newStatus.rebloggedBy.length;\n newStatus.repeated = !!newStatus.rebloggedBy.find(function (_ref26) {\n var id = _ref26.id;\n return currentUser.id === id;\n });\n },\n addFavs: function addFavs(state, _ref27) {\n var id = _ref27.id,\n favoritedByUsers = _ref27.favoritedByUsers,\n currentUser = _ref27.currentUser;\n var newStatus = state.allStatusesObject[id];\n newStatus.favoritedBy = favoritedByUsers.filter(function (_) {\n return _;\n });\n // favorites stats can be incorrect based on polling condition, let's update them using the most recent data\n newStatus.fave_num = newStatus.favoritedBy.length;\n newStatus.favorited = !!newStatus.favoritedBy.find(function (_ref28) {\n var id = _ref28.id;\n return currentUser.id === id;\n });\n },\n addEmojiReactionsBy: function addEmojiReactionsBy(state, _ref29) {\n var id = _ref29.id,\n emojiReactions = _ref29.emojiReactions,\n currentUser = _ref29.currentUser;\n var status = state.allStatusesObject[id];\n status.emoji_reactions = emojiReactions;\n },\n addOwnReaction: function addOwnReaction(state, _ref30) {\n var id = _ref30.id,\n emoji = _ref30.emoji,\n currentUser = _ref30.currentUser;\n var status = state.allStatusesObject[id];\n var reactionIndex = lodash_findIndex__WEBPACK_IMPORTED_MODULE_11___default()(status.emoji_reactions, {\n name: emoji\n });\n var reaction = status.emoji_reactions[reactionIndex] || {\n name: emoji,\n count: 0,\n accounts: []\n };\n var newReaction = _objectSpread(_objectSpread({}, reaction), {}, {\n count: reaction.count + 1,\n me: true,\n accounts: [].concat((0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(reaction.accounts), [currentUser])\n });\n\n // Update count of existing reaction if it exists, otherwise append at the end\n if (reactionIndex >= 0) {\n status.emoji_reactions[reactionIndex] = newReaction;\n } else {\n status.emoji_reactions = [].concat((0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(status.emoji_reactions), [newReaction]);\n }\n },\n removeOwnReaction: function removeOwnReaction(state, _ref31) {\n var id = _ref31.id,\n emoji = _ref31.emoji,\n currentUser = _ref31.currentUser;\n var status = state.allStatusesObject[id];\n var reactionIndex = lodash_findIndex__WEBPACK_IMPORTED_MODULE_11___default()(status.emoji_reactions, {\n name: emoji\n });\n if (reactionIndex < 0) return;\n var reaction = status.emoji_reactions[reactionIndex];\n var accounts = reaction.accounts || [];\n var newReaction = _objectSpread(_objectSpread({}, reaction), {}, {\n count: reaction.count - 1,\n me: false,\n accounts: accounts.filter(function (acc) {\n return acc.id !== currentUser.id;\n })\n });\n if (newReaction.count > 0) {\n status.emoji_reactions[reactionIndex] = newReaction;\n } else {\n status.emoji_reactions = status.emoji_reactions.filter(function (r) {\n return r.name !== emoji;\n });\n }\n },\n updateStatusWithPoll: function updateStatusWithPoll(state, _ref32) {\n var id = _ref32.id,\n poll = _ref32.poll;\n var status = state.allStatusesObject[id];\n status.poll = poll;\n },\n setVirtualHeight: function setVirtualHeight(state, _ref33) {\n var statusId = _ref33.statusId,\n height = _ref33.height;\n state.allStatusesObject[statusId].virtualHeight = height;\n }\n};\nvar statuses = {\n state: defaultState(),\n actions: {\n addNewStatuses: function addNewStatuses(_ref34, _ref35) {\n var rootState = _ref34.rootState,\n commit = _ref34.commit;\n var statuses = _ref35.statuses,\n _ref35$showImmediatel = _ref35.showImmediately,\n showImmediately = _ref35$showImmediatel === void 0 ? false : _ref35$showImmediatel,\n _ref35$timeline = _ref35.timeline,\n timeline = _ref35$timeline === void 0 ? false : _ref35$timeline,\n _ref35$noIdUpdate = _ref35.noIdUpdate,\n noIdUpdate = _ref35$noIdUpdate === void 0 ? false : _ref35$noIdUpdate,\n userId = _ref35.userId,\n pagination = _ref35.pagination;\n commit('addNewStatuses', {\n statuses: statuses,\n showImmediately: showImmediately,\n timeline: timeline,\n noIdUpdate: noIdUpdate,\n user: rootState.users.currentUser,\n userId: userId,\n pagination: pagination\n });\n },\n addNewNotifications: function addNewNotifications(store, _ref36) {\n var notifications = _ref36.notifications,\n older = _ref36.older;\n var commit = store.commit,\n dispatch = store.dispatch,\n rootGetters = store.rootGetters;\n var newNotificationSideEffects = function newNotificationSideEffects(notification) {\n (0,_services_notification_utils_notification_utils_js__WEBPACK_IMPORTED_MODULE_15__.maybeShowNotification)(store, notification);\n };\n commit('addNewNotifications', {\n dispatch: dispatch,\n notifications: notifications,\n older: older,\n rootGetters: rootGetters,\n newNotificationSideEffects: newNotificationSideEffects\n });\n },\n setNotificationsLoading: function setNotificationsLoading(_ref37, _ref38) {\n var rootState = _ref37.rootState,\n commit = _ref37.commit;\n var value = _ref38.value;\n commit('setNotificationsLoading', {\n value: value\n });\n },\n setNotificationsSilence: function setNotificationsSilence(_ref39, _ref40) {\n var rootState = _ref39.rootState,\n commit = _ref39.commit;\n var value = _ref40.value;\n commit('setNotificationsSilence', {\n value: value\n });\n },\n fetchStatus: function fetchStatus(_ref41, id) {\n var rootState = _ref41.rootState,\n dispatch = _ref41.dispatch;\n return rootState.api.backendInteractor.fetchStatus({\n id: id\n }).then(function (status) {\n return dispatch('addNewStatuses', {\n statuses: [status]\n });\n });\n },\n fetchStatusSource: function fetchStatusSource(_ref42, status) {\n var rootState = _ref42.rootState,\n dispatch = _ref42.dispatch;\n return _services_api_api_service_js__WEBPACK_IMPORTED_MODULE_16__[\"default\"].fetchStatusSource({\n id: status.id,\n credentials: rootState.users.currentUser.credentials\n });\n },\n fetchStatusHistory: function fetchStatusHistory(_ref43, status) {\n var rootState = _ref43.rootState,\n dispatch = _ref43.dispatch;\n return _services_api_api_service_js__WEBPACK_IMPORTED_MODULE_16__[\"default\"].fetchStatusHistory({\n status: status\n });\n },\n deleteStatus: function deleteStatus(_ref44, status) {\n var rootState = _ref44.rootState,\n commit = _ref44.commit,\n dispatch = _ref44.dispatch;\n _services_api_api_service_js__WEBPACK_IMPORTED_MODULE_16__[\"default\"].deleteStatus({\n id: status.id,\n credentials: rootState.users.currentUser.credentials\n }).then(function (_) {\n commit('setDeleted', {\n status: status\n });\n })[\"catch\"](function (e) {\n dispatch('pushGlobalNotice', {\n level: 'error',\n messageKey: 'status.delete_error',\n messageArgs: [e.message],\n timeout: 5000\n });\n });\n },\n deleteStatusById: function deleteStatusById(_ref45, id) {\n var rootState = _ref45.rootState,\n commit = _ref45.commit;\n var status = rootState.statuses.allStatusesObject[id];\n commit('setDeleted', {\n status: status\n });\n },\n markStatusesAsDeleted: function markStatusesAsDeleted(_ref46, condition) {\n var commit = _ref46.commit;\n commit('setManyDeleted', condition);\n },\n favorite: function favorite(_ref47, status) {\n var rootState = _ref47.rootState,\n commit = _ref47.commit;\n // Optimistic favoriting...\n commit('setFavorited', {\n status: status,\n value: true\n });\n rootState.api.backendInteractor.favorite({\n id: status.id\n }).then(function (status) {\n return commit('setFavoritedConfirm', {\n status: status,\n user: rootState.users.currentUser\n });\n });\n },\n unfavorite: function unfavorite(_ref48, status) {\n var rootState = _ref48.rootState,\n commit = _ref48.commit;\n // Optimistic unfavoriting...\n commit('setFavorited', {\n status: status,\n value: false\n });\n rootState.api.backendInteractor.unfavorite({\n id: status.id\n }).then(function (status) {\n return commit('setFavoritedConfirm', {\n status: status,\n user: rootState.users.currentUser\n });\n });\n },\n fetchPinnedStatuses: function fetchPinnedStatuses(_ref49, userId) {\n var rootState = _ref49.rootState,\n dispatch = _ref49.dispatch;\n rootState.api.backendInteractor.fetchPinnedStatuses({\n id: userId\n }).then(function (statuses) {\n return dispatch('addNewStatuses', {\n statuses: statuses,\n timeline: 'user',\n userId: userId,\n showImmediately: true,\n noIdUpdate: true\n });\n });\n },\n pinStatus: function pinStatus(_ref50, statusId) {\n var rootState = _ref50.rootState,\n dispatch = _ref50.dispatch;\n return rootState.api.backendInteractor.pinOwnStatus({\n id: statusId\n }).then(function (status) {\n return dispatch('addNewStatuses', {\n statuses: [status]\n });\n });\n },\n unpinStatus: function unpinStatus(_ref51, statusId) {\n var rootState = _ref51.rootState,\n dispatch = _ref51.dispatch;\n rootState.api.backendInteractor.unpinOwnStatus({\n id: statusId\n }).then(function (status) {\n return dispatch('addNewStatuses', {\n statuses: [status]\n });\n });\n },\n muteConversation: function muteConversation(_ref52, statusId) {\n var rootState = _ref52.rootState,\n commit = _ref52.commit;\n return rootState.api.backendInteractor.muteConversation({\n id: statusId\n }).then(function (status) {\n return commit('setMutedStatus', status);\n });\n },\n unmuteConversation: function unmuteConversation(_ref53, statusId) {\n var rootState = _ref53.rootState,\n commit = _ref53.commit;\n return rootState.api.backendInteractor.unmuteConversation({\n id: statusId\n }).then(function (status) {\n return commit('setMutedStatus', status);\n });\n },\n retweet: function retweet(_ref54, status) {\n var rootState = _ref54.rootState,\n commit = _ref54.commit;\n // Optimistic retweeting...\n commit('setRetweeted', {\n status: status,\n value: true\n });\n rootState.api.backendInteractor.retweet({\n id: status.id\n }).then(function (status) {\n return commit('setRetweetedConfirm', {\n status: status.retweeted_status,\n user: rootState.users.currentUser\n });\n });\n },\n unretweet: function unretweet(_ref55, status) {\n var rootState = _ref55.rootState,\n commit = _ref55.commit;\n // Optimistic unretweeting...\n commit('setRetweeted', {\n status: status,\n value: false\n });\n rootState.api.backendInteractor.unretweet({\n id: status.id\n }).then(function (status) {\n return commit('setRetweetedConfirm', {\n status: status,\n user: rootState.users.currentUser\n });\n });\n },\n bookmark: function bookmark(_ref56, status) {\n var rootState = _ref56.rootState,\n commit = _ref56.commit;\n commit('setBookmarked', {\n status: status,\n value: true\n });\n rootState.api.backendInteractor.bookmarkStatus({\n id: status.id\n }).then(function (status) {\n commit('setBookmarkedConfirm', {\n status: status\n });\n });\n },\n unbookmark: function unbookmark(_ref57, status) {\n var rootState = _ref57.rootState,\n commit = _ref57.commit;\n commit('setBookmarked', {\n status: status,\n value: false\n });\n rootState.api.backendInteractor.unbookmarkStatus({\n id: status.id\n }).then(function (status) {\n commit('setBookmarkedConfirm', {\n status: status\n });\n });\n },\n queueFlush: function queueFlush(_ref58, _ref59) {\n var rootState = _ref58.rootState,\n commit = _ref58.commit;\n var timeline = _ref59.timeline,\n id = _ref59.id;\n commit('queueFlush', {\n timeline: timeline,\n id: id\n });\n },\n queueFlushAll: function queueFlushAll(_ref60) {\n var rootState = _ref60.rootState,\n commit = _ref60.commit;\n commit('queueFlushAll');\n },\n markNotificationsAsSeen: function markNotificationsAsSeen(_ref61) {\n var rootState = _ref61.rootState,\n commit = _ref61.commit;\n commit('markNotificationsAsSeen');\n _services_api_api_service_js__WEBPACK_IMPORTED_MODULE_16__[\"default\"].markNotificationsAsSeen({\n id: rootState.statuses.notifications.maxId,\n credentials: rootState.users.currentUser.credentials\n });\n },\n markSingleNotificationAsSeen: function markSingleNotificationAsSeen(_ref62, _ref63) {\n var rootState = _ref62.rootState,\n commit = _ref62.commit;\n var id = _ref63.id;\n commit('markSingleNotificationAsSeen', {\n id: id\n });\n _services_api_api_service_js__WEBPACK_IMPORTED_MODULE_16__[\"default\"].markNotificationsAsSeen({\n single: true,\n id: id,\n credentials: rootState.users.currentUser.credentials\n });\n },\n dismissNotificationLocal: function dismissNotificationLocal(_ref64, _ref65) {\n var rootState = _ref64.rootState,\n commit = _ref64.commit;\n var id = _ref65.id;\n commit('dismissNotification', {\n id: id\n });\n },\n dismissNotification: function dismissNotification(_ref66, _ref67) {\n var rootState = _ref66.rootState,\n commit = _ref66.commit;\n var id = _ref67.id;\n commit('dismissNotification', {\n id: id\n });\n rootState.api.backendInteractor.dismissNotification({\n id: id\n });\n },\n updateNotification: function updateNotification(_ref68, _ref69) {\n var rootState = _ref68.rootState,\n commit = _ref68.commit;\n var id = _ref69.id,\n updater = _ref69.updater;\n commit('updateNotification', {\n id: id,\n updater: updater\n });\n },\n fetchFavsAndRepeats: function fetchFavsAndRepeats(_ref70, id) {\n var rootState = _ref70.rootState,\n commit = _ref70.commit;\n Promise.all([rootState.api.backendInteractor.fetchFavoritedByUsers({\n id: id\n }), rootState.api.backendInteractor.fetchRebloggedByUsers({\n id: id\n })]).then(function (_ref71) {\n var _ref72 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(_ref71, 2),\n favoritedByUsers = _ref72[0],\n rebloggedByUsers = _ref72[1];\n commit('addFavs', {\n id: id,\n favoritedByUsers: favoritedByUsers,\n currentUser: rootState.users.currentUser\n });\n commit('addRepeats', {\n id: id,\n rebloggedByUsers: rebloggedByUsers,\n currentUser: rootState.users.currentUser\n });\n });\n },\n reactWithEmoji: function reactWithEmoji(_ref73, _ref74) {\n var rootState = _ref73.rootState,\n dispatch = _ref73.dispatch,\n commit = _ref73.commit;\n var id = _ref74.id,\n emoji = _ref74.emoji;\n var currentUser = rootState.users.currentUser;\n if (!currentUser) return;\n commit('addOwnReaction', {\n id: id,\n emoji: emoji,\n currentUser: currentUser\n });\n rootState.api.backendInteractor.reactWithEmoji({\n id: id,\n emoji: emoji\n }).then(function (ok) {\n dispatch('fetchEmojiReactionsBy', id);\n });\n },\n unreactWithEmoji: function unreactWithEmoji(_ref75, _ref76) {\n var rootState = _ref75.rootState,\n dispatch = _ref75.dispatch,\n commit = _ref75.commit;\n var id = _ref76.id,\n emoji = _ref76.emoji;\n var currentUser = rootState.users.currentUser;\n if (!currentUser) return;\n commit('removeOwnReaction', {\n id: id,\n emoji: emoji,\n currentUser: currentUser\n });\n rootState.api.backendInteractor.unreactWithEmoji({\n id: id,\n emoji: emoji\n }).then(function (ok) {\n dispatch('fetchEmojiReactionsBy', id);\n });\n },\n fetchEmojiReactionsBy: function fetchEmojiReactionsBy(_ref77, id) {\n var rootState = _ref77.rootState,\n commit = _ref77.commit;\n return rootState.api.backendInteractor.fetchEmojiReactions({\n id: id\n }).then(function (emojiReactions) {\n commit('addEmojiReactionsBy', {\n id: id,\n emojiReactions: emojiReactions,\n currentUser: rootState.users.currentUser\n });\n });\n },\n fetchFavs: function fetchFavs(_ref78, id) {\n var rootState = _ref78.rootState,\n commit = _ref78.commit;\n rootState.api.backendInteractor.fetchFavoritedByUsers({\n id: id\n }).then(function (favoritedByUsers) {\n return commit('addFavs', {\n id: id,\n favoritedByUsers: favoritedByUsers,\n currentUser: rootState.users.currentUser\n });\n });\n },\n fetchRepeats: function fetchRepeats(_ref79, id) {\n var rootState = _ref79.rootState,\n commit = _ref79.commit;\n rootState.api.backendInteractor.fetchRebloggedByUsers({\n id: id\n }).then(function (rebloggedByUsers) {\n return commit('addRepeats', {\n id: id,\n rebloggedByUsers: rebloggedByUsers,\n currentUser: rootState.users.currentUser\n });\n });\n },\n search: function search(store, _ref80) {\n var q = _ref80.q,\n resolve = _ref80.resolve,\n limit = _ref80.limit,\n offset = _ref80.offset,\n following = _ref80.following,\n type = _ref80.type;\n return store.rootState.api.backendInteractor.search2({\n q: q,\n resolve: resolve,\n limit: limit,\n offset: offset,\n following: following,\n type: type\n }).then(function (data) {\n store.commit('addNewUsers', data.accounts);\n store.commit('addNewUsers', data.statuses.map(function (s) {\n return s.user;\n }).filter(function (u) {\n return u;\n }));\n store.commit('addNewStatuses', {\n statuses: data.statuses\n });\n return data;\n });\n },\n setVirtualHeight: function setVirtualHeight(_ref81, _ref82) {\n var commit = _ref81.commit;\n var statusId = _ref82.statusId,\n height = _ref82.height;\n commit('setVirtualHeight', {\n statusId: statusId,\n height: height\n });\n }\n },\n mutations: mutations\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (statuses);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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LElBQUksRUFBSkE7TUFBSyxDQUFDLENBQUMsQ0FDakdnTCxJQUFJLENBQUMsVUFBQzFQLElBQUksRUFBSztRQUNkZ1AsS0FBSyxDQUFDTCxNQUFNLENBQUMsYUFBYSxFQUFFM08sSUFBSSxDQUFDcU4sUUFBUSxDQUFDO1FBQzFDMkIsS0FBSyxDQUFDTCxNQUFNLENBQUMsYUFBYSxFQUFFM08sSUFBSSxDQUFDakIsUUFBUSxDQUFDaVcsR0FBRyxDQUFDLFVBQUFyUCxDQUFDO1VBQUEsT0FBSUEsQ0FBQyxDQUFDaEYsSUFBSTtRQUFBLEVBQUMsQ0FBQ3lLLE1BQU0sQ0FBQyxVQUFBNkosQ0FBQztVQUFBLE9BQUlBLENBQUM7UUFBQSxFQUFDLENBQUM7UUFDMUVqRyxLQUFLLENBQUNMLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRTtVQUFFNVAsUUFBUSxFQUFFaUIsSUFBSSxDQUFDakI7UUFBUyxDQUFDLENBQUM7UUFDM0QsT0FBT2lCLElBQUk7TUFDYixDQUFDLENBQUM7SUFDTixDQUFDO0lBQ0RrTyxnQkFBZ0IsV0FBQUEsaUJBQUFnSCxNQUFBLEVBQUFDLE1BQUEsRUFBb0M7TUFBQSxJQUFoQ3hHLE1BQU0sR0FBQXVHLE1BQUEsQ0FBTnZHLE1BQU07TUFBQSxJQUFNUCxRQUFRLEdBQUErRyxNQUFBLENBQVIvRyxRQUFRO1FBQUVDLE1BQU0sR0FBQThHLE1BQUEsQ0FBTjlHLE1BQU07TUFDOUNNLE1BQU0sQ0FBQyxrQkFBa0IsRUFBRTtRQUFFUCxRQUFRLEVBQVJBLFFBQVE7UUFBRUMsTUFBTSxFQUFOQTtNQUFPLENBQUMsQ0FBQztJQUNsRDtFQUNGLENBQUM7RUFDRC9HLFNBQVMsRUFBVEE7QUFDRixDQUFDO0FBRUQsaUVBQWV2SSxRQUFRIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9tb2R1bGVzL3N0YXR1c2VzLmpzPzlkODAiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgcmVtb3ZlLFxuICBzbGljZSxcbiAgZWFjaCxcbiAgZmluZEluZGV4LFxuICBmaW5kLFxuICBtYXhCeSxcbiAgbWluQnksXG4gIG1lcmdlLFxuICBmaXJzdCxcbiAgbGFzdCxcbiAgaXNBcnJheSxcbiAgb21pdEJ5XG59IGZyb20gJ2xvZGFzaCdcbmltcG9ydCB7XG4gIGlzU3RhdHVzTm90aWZpY2F0aW9uLFxuICBpc1ZhbGlkTm90aWZpY2F0aW9uLFxuICBtYXliZVNob3dOb3RpZmljYXRpb25cbn0gZnJvbSAnLi4vc2VydmljZXMvbm90aWZpY2F0aW9uX3V0aWxzL25vdGlmaWNhdGlvbl91dGlscy5qcydcbmltcG9ydCBhcGlTZXJ2aWNlIGZyb20gJy4uL3NlcnZpY2VzL2FwaS9hcGkuc2VydmljZS5qcydcblxuY29uc3QgZW1wdHlUbCA9ICh1c2VySWQgPSAwKSA9PiAoe1xuICBzdGF0dXNlczogW10sXG4gIHN0YXR1c2VzT2JqZWN0OiB7fSxcbiAgZmF2ZXM6IFtdLFxuICB2aXNpYmxlU3RhdHVzZXM6IFtdLFxuICB2aXNpYmxlU3RhdHVzZXNPYmplY3Q6IHt9LFxuICBuZXdTdGF0dXNDb3VudDogMCxcbiAgbWF4SWQ6IDAsXG4gIG1pbklkOiAwLFxuICBtaW5WaXNpYmxlSWQ6IDAsXG4gIGxvYWRpbmc6IGZhbHNlLFxuICBmb2xsb3dlcnM6IFtdLFxuICBmcmllbmRzOiBbXSxcbiAgdXNlcklkLFxuICBmbHVzaE1hcmtlcjogMFxufSlcblxuY29uc3QgZW1wdHlOb3RpZmljYXRpb25zID0gKCkgPT4gKHtcbiAgZGVza3RvcE5vdGlmaWNhdGlvblNpbGVuY2U6IHRydWUsXG4gIG1heElkOiAwLFxuICBtaW5JZDogTnVtYmVyLlBPU0lUSVZFX0lORklOSVRZLFxuICBkYXRhOiBbXSxcbiAgaWRTdG9yZToge30sXG4gIGxvYWRpbmc6IGZhbHNlXG59KVxuXG5leHBvcnQgY29uc3QgZGVmYXVsdFN0YXRlID0gKCkgPT4gKHtcbiAgYWxsU3RhdHVzZXM6IFtdLFxuICBhbGxTdGF0dXNlc09iamVjdDoge30sXG4gIGNvbnZlcnNhdGlvbnNPYmplY3Q6IHt9LFxuICBtYXhJZDogMCxcbiAgbm90aWZpY2F0aW9uczogZW1wdHlOb3RpZmljYXRpb25zKCksXG4gIGZhdm9yaXRlczogbmV3IFNldCgpLFxuICB0aW1lbGluZXM6IHtcbiAgICBtZW50aW9uczogZW1wdHlUbCgpLFxuICAgIHB1YmxpYzogZW1wdHlUbCgpLFxuICAgIHVzZXI6IGVtcHR5VGwoKSxcbiAgICBmYXZvcml0ZXM6IGVtcHR5VGwoKSxcbiAgICBtZWRpYTogZW1wdHlUbCgpLFxuICAgIHB1YmxpY0FuZEV4dGVybmFsOiBlbXB0eVRsKCksXG4gICAgZnJpZW5kczogZW1wdHlUbCgpLFxuICAgIHRhZzogZW1wdHlUbCgpLFxuICAgIGRtczogZW1wdHlUbCgpLFxuICAgIGJvb2ttYXJrczogZW1wdHlUbCgpLFxuICAgIGxpc3Q6IGVtcHR5VGwoKVxuICB9XG59KVxuXG5leHBvcnQgY29uc3QgcHJlcGFyZVN0YXR1cyA9IChzdGF0dXMpID0+IHtcbiAgLy8gU2V0IGRlbGV0ZWQgZmxhZ1xuICBzdGF0dXMuZGVsZXRlZCA9IGZhbHNlXG5cbiAgLy8gVG8gbWFrZSB0aGUgYXJyYXkgcmVhY3RpdmVcbiAgc3RhdHVzLmF0dGFjaG1lbnRzID0gc3RhdHVzLmF0dGFjaG1lbnRzIHx8IFtdXG5cbiAgcmV0dXJuIHN0YXR1c1xufVxuXG5jb25zdCBtZXJnZU9yQWRkID0gKGFyciwgb2JqLCBpdGVtKSA9PiB7XG4gIGNvbnN0IG9sZEl0ZW0gPSBvYmpbaXRlbS5pZF1cblxuICBpZiAob2xkSXRlbSkge1xuICAgIC8vIFdlIGFscmVhZHkgaGF2ZSB0aGlzLCBzbyBvbmx5IG1lcmdlIHRoZSBuZXcgaW5mby5cbiAgICAvLyBXZSBpZ25vcmUgbnVsbCB2YWx1ZXMgdG8gYXZvaWQgb3ZlcndyaXRpbmcgZXhpc3RpbmcgcHJvcGVydGllcyB3aXRoIG1pc3NpbmcgZGF0YVxuICAgIC8vIHdlIGFsc28gc2tpcCAndXNlcicgYmVjYXVzZSB0aGF0IGlzIGhhbmRsZWQgYnkgdXNlcnMgbW9kdWxlXG4gICAgbWVyZ2Uob2xkSXRlbSwgb21pdEJ5KGl0ZW0sICh2LCBrKSA9PiB2ID09PSBudWxsIHx8IGsgPT09ICd1c2VyJykpXG4gICAgLy8gUmVhY3Rpdml0eSBmaXguXG4gICAgb2xkSXRlbS5hdHRhY2htZW50cy5zcGxpY2Uob2xkSXRlbS5hdHRhY2htZW50cy5sZW5ndGgpXG4gICAgcmV0dXJuIHsgaXRlbTogb2xkSXRlbSwgbmV3OiBmYWxzZSB9XG4gIH0gZWxzZSB7XG4gICAgLy8gVGhpcyBpcyBhIG5ldyBpdGVtLCBwcmVwYXJlIGl0XG4gICAgcHJlcGFyZVN0YXR1cyhpdGVtKVxuICAgIGFyci5wdXNoKGl0ZW0pXG4gICAgb2JqW2l0ZW0uaWRdID0gaXRlbVxuICAgIHJldHVybiB7IGl0ZW0sIG5ldzogdHJ1ZSB9XG4gIH1cbn1cblxuY29uc3Qgc29ydEJ5SWQgPSAoYSwgYikgPT4ge1xuICBjb25zdCBzZXFBID0gTnVtYmVyKGEuaWQpXG4gIGNvbnN0IHNlcUIgPSBOdW1iZXIoYi5pZClcbiAgY29uc3QgaXNTZXFBID0gIU51bWJlci5pc05hTihzZXFBKVxuICBjb25zdCBpc1NlcUIgPSAhTnVtYmVyLmlzTmFOKHNlcUIpXG4gIGlmIChpc1NlcUEgJiYgaXNTZXFCKSB7XG4gICAgcmV0dXJuIHNlcUEgPiBzZXFCID8gLTEgOiAxXG4gIH0gZWxzZSBpZiAoaXNTZXFBICYmICFpc1NlcUIpIHtcbiAgICByZXR1cm4gMVxuICB9IGVsc2UgaWYgKCFpc1NlcUEgJiYgaXNTZXFCKSB7XG4gICAgcmV0dXJuIC0xXG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIGEuaWQgPiBiLmlkID8gLTEgOiAxXG4gIH1cbn1cblxuY29uc3Qgc29ydFRpbWVsaW5lID0gKHRpbWVsaW5lKSA9PiB7XG4gIHRpbWVsaW5lLnZpc2libGVTdGF0dXNlcyA9IHRpbWVsaW5lLnZpc2libGVTdGF0dXNlcy5zb3J0KHNvcnRCeUlkKVxuICB0aW1lbGluZS5zdGF0dXNlcyA9IHRpbWVsaW5lLnN0YXR1c2VzLnNvcnQoc29ydEJ5SWQpXG4gIHRpbWVsaW5lLm1pblZpc2libGVJZCA9IChsYXN0KHRpbWVsaW5lLnZpc2libGVTdGF0dXNlcykgfHwge30pLmlkXG4gIHJldHVybiB0aW1lbGluZVxufVxuXG4vLyBBZGQgc3RhdHVzIHRvIHRoZSBnbG9iYWwgc3RvcmFnZXMgKGFycmF5cyBhbmQgb2JqZWN0cyBtYWludGFpbmluZyBzdGF0dXNlcykgZXhjZXB0IHRpbWVsaW5lc1xuY29uc3QgYWRkU3RhdHVzVG9HbG9iYWxTdG9yYWdlID0gKHN0YXRlLCBkYXRhKSA9PiB7XG4gIGNvbnN0IHJlc3VsdCA9IG1lcmdlT3JBZGQoc3RhdGUuYWxsU3RhdHVzZXMsIHN0YXRlLmFsbFN0YXR1c2VzT2JqZWN0LCBkYXRhKVxuICBpZiAocmVzdWx0Lm5ldykge1xuICAgIC8vIEFkZCB0byBjb252ZXJzYXRpb25cbiAgICBjb25zdCBzdGF0dXMgPSByZXN1bHQuaXRlbVxuICAgIGNvbnN0IGNvbnZlcnNhdGlvbnNPYmplY3QgPSBzdGF0ZS5jb252ZXJzYXRpb25zT2JqZWN0XG4gICAgY29uc3QgY29udmVyc2F0aW9uSWQgPSBzdGF0dXMuc3RhdHVzbmV0X2NvbnZlcnNhdGlvbl9pZFxuICAgIGlmIChjb252ZXJzYXRpb25zT2JqZWN0W2NvbnZlcnNhdGlvbklkXSkge1xuICAgICAgY29udmVyc2F0aW9uc09iamVjdFtjb252ZXJzYXRpb25JZF0ucHVzaChzdGF0dXMpXG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnZlcnNhdGlvbnNPYmplY3RbY29udmVyc2F0aW9uSWRdID0gW3N0YXR1c11cbiAgICB9XG4gIH1cbiAgcmV0dXJuIHJlc3VsdFxufVxuXG4vLyBSZW1vdmUgc3RhdHVzIGZyb20gdGhlIGdsb2JhbCBzdG9yYWdlcyAoYXJyYXlzIGFuZCBvYmplY3RzIG1haW50YWluaW5nIHN0YXR1c2VzKSBleGNlcHQgdGltZWxpbmVzXG5jb25zdCByZW1vdmVTdGF0dXNGcm9tR2xvYmFsU3RvcmFnZSA9IChzdGF0ZSwgc3RhdHVzKSA9PiB7XG4gIHJlbW92ZShzdGF0ZS5hbGxTdGF0dXNlcywgeyBpZDogc3RhdHVzLmlkIH0pXG5cbiAgLy8gVE9ETzogTmVlZCB0byByZW1vdmUgZnJvbSBhbGxTdGF0dXNlc09iamVjdD9cblxuICAvLyBSZW1vdmUgcG9zc2libGUgbm90aWZpY2F0aW9uXG4gIHJlbW92ZShzdGF0ZS5ub3RpZmljYXRpb25zLmRhdGEsICh7IGFjdGlvbjogeyBpZCB9IH0pID0+IGlkID09PSBzdGF0dXMuaWQpXG5cbiAgLy8gUmVtb3ZlIGZyb20gY29udmVyc2F0aW9uXG4gIGNvbnN0IGNvbnZlcnNhdGlvbklkID0gc3RhdHVzLnN0YXR1c25ldF9jb252ZXJzYXRpb25faWRcbiAgaWYgKHN0YXRlLmNvbnZlcnNhdGlvbnNPYmplY3RbY29udmVyc2F0aW9uSWRdKSB7XG4gICAgcmVtb3ZlKHN0YXRlLmNvbnZlcnNhdGlvbnNPYmplY3RbY29udmVyc2F0aW9uSWRdLCB7IGlkOiBzdGF0dXMuaWQgfSlcbiAgfVxufVxuXG5jb25zdCBhZGROZXdTdGF0dXNlcyA9IChzdGF0ZSwgeyBzdGF0dXNlcywgc2hvd0ltbWVkaWF0ZWx5ID0gZmFsc2UsIHRpbWVsaW5lLCB1c2VyID0ge30sIG5vSWRVcGRhdGUgPSBmYWxzZSwgdXNlcklkLCBwYWdpbmF0aW9uID0ge30gfSkgPT4ge1xuICAvLyBTYW5pdHkgY2hlY2tcbiAgaWYgKCFpc0FycmF5KHN0YXR1c2VzKSkge1xuICAgIHJldHVybiBmYWxzZVxuICB9XG5cbiAgY29uc3QgYWxsU3RhdHVzZXMgPSBzdGF0ZS5hbGxTdGF0dXNlc1xuICBjb25zdCB0aW1lbGluZU9iamVjdCA9IHN0YXRlLnRpbWVsaW5lc1t0aW1lbGluZV1cblxuICAvLyBNaXNtYXRjaCBiZXR3ZWVuIEFQSSBwYWdpbmF0aW9uIGFuZCBvdXIgaW50ZXJuYWwgbWluSWQvbWF4SWQgdHJhY2tpbmcgc3lzdGVtczpcbiAgLy8gcGFnaW5hdGlvbi5tYXhJZCBpcyB0aGUgb2xkZXN0IG9mIHRoZSByZXR1cm5lZCBzdGF0dXNlcyB3aGVuIGZldGNoaW5nIG9sZGVyLFxuICAvLyBhbmQgcGFnaW5hdGlvbi5taW5JZCBpcyB0aGUgbmV3ZXN0IHdoZW4gZmV0Y2hpbmcgbmV3ZXIuIFRoZSBuYW1lcyBjb21lIGRpcmVjdGx5XG4gIC8vIGZyb20gdGhlIGFyZ3VtZW50cyB0aGV5J3JlIHN1cHBvc2VkIHRvIGJlIHBhc3NlZCBhcyBmb3IgdGhlIG5leHQgZmV0Y2guXG4gIGNvbnN0IG1pbk5ldyA9IHBhZ2luYXRpb24ubWF4SWQgfHwgKHN0YXR1c2VzLmxlbmd0aCA+IDAgPyBtaW5CeShzdGF0dXNlcywgJ2lkJykuaWQgOiAwKVxuICBjb25zdCBtYXhOZXcgPSBwYWdpbmF0aW9uLm1pbklkIHx8IChzdGF0dXNlcy5sZW5ndGggPiAwID8gbWF4Qnkoc3RhdHVzZXMsICdpZCcpLmlkIDogMClcblxuICBjb25zdCBuZXdlciA9IHRpbWVsaW5lICYmIChtYXhOZXcgPiB0aW1lbGluZU9iamVjdC5tYXhJZCB8fCB0aW1lbGluZU9iamVjdC5tYXhJZCA9PT0gMCkgJiYgc3RhdHVzZXMubGVuZ3RoID4gMFxuICBjb25zdCBvbGRlciA9IHRpbWVsaW5lICYmIChtaW5OZXcgPCB0aW1lbGluZU9iamVjdC5taW5JZCB8fCB0aW1lbGluZU9iamVjdC5taW5JZCA9PT0gMCkgJiYgc3RhdHVzZXMubGVuZ3RoID4gMFxuXG4gIGlmICghbm9JZFVwZGF0ZSAmJiBuZXdlcikge1xuICAgIHRpbWVsaW5lT2JqZWN0Lm1heElkID0gbWF4TmV3XG4gIH1cbiAgaWYgKCFub0lkVXBkYXRlICYmIG9sZGVyKSB7XG4gICAgdGltZWxpbmVPYmplY3QubWluSWQgPSBtaW5OZXdcbiAgfVxuXG4gIC8vIFRoaXMgbWFrZXMgc3VyZSB0aGF0IHVzZXIgdGltZWxpbmUgd29uJ3QgZ2V0IGRhdGEgbWVhbnQgZm9yIG90aGVyXG4gIC8vIHVzZXIuIEkuZS4gb3BlbmluZyBkaWZmZXJlbnQgdXNlciBwcm9maWxlcyBtYWtlcyByZXF1ZXN0IHdoaWNoIGNvdWxkXG4gIC8vIHJldHVybiBkYXRhIGxhdGUgYWZ0ZXIgdXNlciBhbHJlYWR5IHZpZXdpbmcgZGlmZmVyZW50IHVzZXIgcHJvZmlsZVxuICBpZiAoKHRpbWVsaW5lID09PSAndXNlcicgfHwgdGltZWxpbmUgPT09ICdtZWRpYScpICYmIHRpbWVsaW5lT2JqZWN0LnVzZXJJZCAhPT0gdXNlcklkKSB7XG4gICAgcmV0dXJuXG4gIH1cblxuICBjb25zdCBhZGRTdGF0dXMgPSAoZGF0YSwgc2hvd0ltbWVkaWF0ZWx5LCBhZGRUb1RpbWVsaW5lID0gdHJ1ZSkgPT4ge1xuICAgIGNvbnN0IHJlc3VsdCA9IGFkZFN0YXR1c1RvR2xvYmFsU3RvcmFnZShzdGF0ZSwgZGF0YSlcbiAgICBjb25zdCBzdGF0dXMgPSByZXN1bHQuaXRlbVxuXG4gICAgaWYgKHJlc3VsdC5uZXcpIHtcbiAgICAgIC8vIFdlIGFyZSBtZW50aW9uZWQgaW4gYSBwb3N0XG4gICAgICBpZiAoc3RhdHVzLnR5cGUgPT09ICdzdGF0dXMnICYmIGZpbmQoc3RhdHVzLmF0dGVudGlvbnMsIHsgaWQ6IHVzZXIuaWQgfSkpIHtcbiAgICAgICAgY29uc3QgbWVudGlvbnMgPSBzdGF0ZS50aW1lbGluZXMubWVudGlvbnNcblxuICAgICAgICAvLyBBZGQgdGhlIG1lbnRpb24gdG8gdGhlIG1lbnRpb25zIHRpbWVsaW5lXG4gICAgICAgIGlmICh0aW1lbGluZU9iamVjdCAhPT0gbWVudGlvbnMpIHtcbiAgICAgICAgICBtZXJnZU9yQWRkKG1lbnRpb25zLnN0YXR1c2VzLCBtZW50aW9ucy5zdGF0dXNlc09iamVjdCwgc3RhdHVzKVxuICAgICAgICAgIG1lbnRpb25zLm5ld1N0YXR1c0NvdW50ICs9IDFcblxuICAgICAgICAgIHNvcnRUaW1lbGluZShtZW50aW9ucylcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKHN0YXR1cy52aXNpYmlsaXR5ID09PSAnZGlyZWN0Jykge1xuICAgICAgICBjb25zdCBkbXMgPSBzdGF0ZS50aW1lbGluZXMuZG1zXG5cbiAgICAgICAgbWVyZ2VPckFkZChkbXMuc3RhdHVzZXMsIGRtcy5zdGF0dXNlc09iamVjdCwgc3RhdHVzKVxuICAgICAgICBkbXMubmV3U3RhdHVzQ291bnQgKz0gMVxuXG4gICAgICAgIHNvcnRUaW1lbGluZShkbXMpXG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGVjaWRlIGlmIHdlIHNob3VsZCB0cmVhdCB0aGUgc3RhdHVzIGFzIG5ldyBmb3IgdGhpcyB0aW1lbGluZS5cbiAgICBsZXQgcmVzdWx0Rm9yQ3VycmVudFRpbWVsaW5lXG4gICAgLy8gU29tZSBzdGF0dXNlcyBzaG91bGQgb25seSBiZSBhZGRlZCB0byB0aGUgZ2xvYmFsIHN0YXR1cyByZXBvc2l0b3J5LlxuICAgIGlmICh0aW1lbGluZSAmJiBhZGRUb1RpbWVsaW5lKSB7XG4gICAgICByZXN1bHRGb3JDdXJyZW50VGltZWxpbmUgPSBtZXJnZU9yQWRkKHRpbWVsaW5lT2JqZWN0LnN0YXR1c2VzLCB0aW1lbGluZU9iamVjdC5zdGF0dXNlc09iamVjdCwgc3RhdHVzKVxuICAgIH1cblxuICAgIGlmICh0aW1lbGluZSAmJiBzaG93SW1tZWRpYXRlbHkpIHtcbiAgICAgIC8vIEFkZCBpdCBkaXJlY3RseSB0byB0aGUgdmlzaWJsZVN0YXR1c2VzLCBkb24ndCBjaGFuZ2VcbiAgICAgIC8vIG5ld1N0YXR1c0NvdW50XG4gICAgICBtZXJnZU9yQWRkKHRpbWVsaW5lT2JqZWN0LnZpc2libGVTdGF0dXNlcywgdGltZWxpbmVPYmplY3QudmlzaWJsZVN0YXR1c2VzT2JqZWN0LCBzdGF0dXMpXG4gICAgfSBlbHNlIGlmICh0aW1lbGluZSAmJiBhZGRUb1RpbWVsaW5lICYmIHJlc3VsdEZvckN1cnJlbnRUaW1lbGluZS5uZXcpIHtcbiAgICAgIC8vIEp1c3QgY2hhbmdlIG5ld1N0YXR1c2NvdW50XG4gICAgICB0aW1lbGluZU9iamVjdC5uZXdTdGF0dXNDb3VudCArPSAxXG4gICAgfVxuXG4gICAgaWYgKHN0YXR1cy5xdW90ZSkge1xuICAgICAgYWRkU3RhdHVzKHN0YXR1cy5xdW90ZSwgLyogc2hvd0ltbWVkaWF0ZWx5ID0gKi8gZmFsc2UsIC8qIGFkZFRvVGltZWxpbmUgPSAqLyBmYWxzZSlcbiAgICB9XG5cbiAgICByZXR1cm4gc3RhdHVzXG4gIH1cblxuICBjb25zdCBmYXZvcml0ZVN0YXR1cyA9IChmYXZvcml0ZSwgY291bnRlcikgPT4ge1xuICAgIGNvbnN0IHN0YXR1cyA9IGZpbmQoYWxsU3RhdHVzZXMsIHsgaWQ6IGZhdm9yaXRlLmluX3JlcGx5X3RvX3N0YXR1c19pZCB9KVxuICAgIGlmIChzdGF0dXMpIHtcbiAgICAgIC8vIFRoaXMgaXMgb3VyIGZhdm9yaXRlLCBzbyB0aGUgcmVsZXZhbnQgYml0LlxuICAgICAgaWYgKGZhdm9yaXRlLnVzZXIuaWQgPT09IHVzZXIuaWQpIHtcbiAgICAgICAgc3RhdHVzLmZhdm9yaXRlZCA9IHRydWVcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHN0YXR1cy5mYXZlX251bSArPSAxXG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBzdGF0dXNcbiAgfVxuXG4gIGNvbnN0IHByb2Nlc3NvcnMgPSB7XG4gICAgc3RhdHVzOiAoc3RhdHVzKSA9PiB7XG4gICAgICBhZGRTdGF0dXMoc3RhdHVzLCBzaG93SW1tZWRpYXRlbHkpXG4gICAgfSxcbiAgICBlZGl0OiAoc3RhdHVzKSA9PiB7XG4gICAgICBhZGRTdGF0dXMoc3RhdHVzLCBzaG93SW1tZWRpYXRlbHkpXG4gICAgfSxcbiAgICByZXR3ZWV0OiAoc3RhdHVzKSA9PiB7XG4gICAgICAvLyBSZXR3ZWV0ZWRTdGF0dXNlcyBhcmUgbmV2ZXIgc2hvd24gaW1tZWRpYXRlbHlcbiAgICAgIGNvbnN0IHJldHdlZXRlZFN0YXR1cyA9IGFkZFN0YXR1cyhzdGF0dXMucmV0d2VldGVkX3N0YXR1cywgZmFsc2UsIGZhbHNlKVxuXG4gICAgICBsZXQgcmV0d2VldFxuICAgICAgLy8gSWYgdGhlIHJldHdlZXRlZCBzdGF0dXMgaXMgYWxyZWFkeSB0aGVyZSwgZG9uJ3QgYWRkIHRoZSByZXR3ZWV0XG4gICAgICAvLyB0byB0aGUgdGltZWxpbmUuXG4gICAgICBpZiAodGltZWxpbmUgJiYgZmluZCh0aW1lbGluZU9iamVjdC5zdGF0dXNlcywgKHMpID0+IHtcbiAgICAgICAgaWYgKHMucmV0d2VldGVkX3N0YXR1cykge1xuICAgICAgICAgIHJldHVybiBzLmlkID09PSByZXR3ZWV0ZWRTdGF0dXMuaWQgfHwgcy5yZXR3ZWV0ZWRfc3RhdHVzLmlkID09PSByZXR3ZWV0ZWRTdGF0dXMuaWRcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gcy5pZCA9PT0gcmV0d2VldGVkU3RhdHVzLmlkXG4gICAgICAgIH1cbiAgICAgIH0pKSB7XG4gICAgICAgIC8vIEFscmVhZHkgaGF2ZSBpdCB2aXNpYmxlIChlaXRoZXIgYXMgdGhlIG9yaWdpbmFsIG9yIGFub3RoZXIgUlQpLCBkb24ndCBhZGQgdG8gdGltZWxpbmUsIGRvbid0IHNob3cuXG4gICAgICAgIHJldHdlZXQgPSBhZGRTdGF0dXMoc3RhdHVzLCBmYWxzZSwgZmFsc2UpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR3ZWV0ID0gYWRkU3RhdHVzKHN0YXR1cywgc2hvd0ltbWVkaWF0ZWx5KVxuICAgICAgfVxuXG4gICAgICByZXR3ZWV0LnJldHdlZXRlZF9zdGF0dXMgPSByZXR3ZWV0ZWRTdGF0dXNcbiAgICB9LFxuICAgIGZhdm9yaXRlOiAoZmF2b3JpdGUpID0+IHtcbiAgICAgIC8vIE9ubHkgdXBkYXRlIGlmIHRoaXMgaXMgYSBuZXcgZmF2b3JpdGUuXG4gICAgICAvLyBJZ25vcmUgb3VyIG93biBmYXZvcml0ZXMgYmVjYXVzZSB3ZSBnZXQgaW5mbyBhYm91dCBsaWtlcyBhcyByZXNwb25zZSB0byBsaWtlIHJlcXVlc3RcbiAgICAgIGlmICghc3RhdGUuZmF2b3JpdGVzLmhhcyhmYXZvcml0ZS5pZCkpIHtcbiAgICAgICAgc3RhdGUuZmF2b3JpdGVzLmFkZChmYXZvcml0ZS5pZClcbiAgICAgICAgZmF2b3JpdGVTdGF0dXMoZmF2b3JpdGUpXG4gICAgICB9XG4gICAgfSxcbiAgICBkZWxldGlvbjogKGRlbGV0aW9uKSA9PiB7XG4gICAgICBjb25zdCB1cmkgPSBkZWxldGlvbi51cmlcbiAgICAgIGNvbnN0IHN0YXR1cyA9IGZpbmQoYWxsU3RhdHVzZXMsIHsgdXJpIH0pXG4gICAgICBpZiAoIXN0YXR1cykge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgcmVtb3ZlU3RhdHVzRnJvbUdsb2JhbFN0b3JhZ2Uoc3RhdGUsIHN0YXR1cylcblxuICAgICAgaWYgKHRpbWVsaW5lKSB7XG4gICAgICAgIHJlbW92ZSh0aW1lbGluZU9iamVjdC5zdGF0dXNlcywgeyB1cmkgfSlcbiAgICAgICAgcmVtb3ZlKHRpbWVsaW5lT2JqZWN0LnZpc2libGVTdGF0dXNlcywgeyB1cmkgfSlcbiAgICAgIH1cbiAgICB9LFxuICAgIGZvbGxvdzogKGZvbGxvdykgPT4ge1xuICAgICAgLy8gTk9PUCwgaXQgaXMga25vd24gc3RhdHVzIGJ1dCB3ZSBkb24ndCBkbyBhbnl0aGluZyBhYm91dCBpdCBmb3Igbm93XG4gICAgfSxcbiAgICBkZWZhdWx0OiAodW5rbm93bikgPT4ge1xuICAgICAgY29uc29sZS5sb2coJ3Vua25vd24gc3RhdHVzIHR5cGUnKVxuICAgICAgY29uc29sZS5sb2codW5rbm93bilcbiAgICB9XG4gIH1cblxuICBlYWNoKHN0YXR1c2VzLCAoc3RhdHVzKSA9PiB7XG4gICAgY29uc3QgdHlwZSA9IHN0YXR1cy50eXBlXG4gICAgY29uc3QgcHJvY2Vzc29yID0gcHJvY2Vzc29yc1t0eXBlXSB8fCBwcm9jZXNzb3JzLmRlZmF1bHRcbiAgICBwcm9jZXNzb3Ioc3RhdHVzKVxuICB9KVxuXG4gIC8vIEtlZXAgdGhlIHZpc2libGUgc3RhdHVzZXMgc29ydGVkXG4gIGlmICh0aW1lbGluZSAmJiAhKHRpbWVsaW5lID09PSAnYm9va21hcmtzJykpIHtcbiAgICBzb3J0VGltZWxpbmUodGltZWxpbmVPYmplY3QpXG4gIH1cbn1cblxuY29uc3QgdXBkYXRlTm90aWZpY2F0aW9uc01pbk1heElkID0gKHN0YXRlLCBub3RpZmljYXRpb24pID0+IHtcbiAgc3RhdGUubm90aWZpY2F0aW9ucy5tYXhJZCA9IG5vdGlmaWNhdGlvbi5pZCA+IHN0YXRlLm5vdGlmaWNhdGlvbnMubWF4SWRcbiAgICA/IG5vdGlmaWNhdGlvbi5pZFxuICAgIDogc3RhdGUubm90aWZpY2F0aW9ucy5tYXhJZFxuICBzdGF0ZS5ub3RpZmljYXRpb25zLm1pbklkID0gbm90aWZpY2F0aW9uLmlkIDwgc3RhdGUubm90aWZpY2F0aW9ucy5taW5JZFxuICAgID8gbm90aWZpY2F0aW9uLmlkXG4gICAgOiBzdGF0ZS5ub3RpZmljYXRpb25zLm1pbklkXG59XG5cbmNvbnN0IGFkZE5ld05vdGlmaWNhdGlvbnMgPSAoc3RhdGUsIHsgZGlzcGF0Y2gsIG5vdGlmaWNhdGlvbnMsIG9sZGVyLCB2aXNpYmxlTm90aWZpY2F0aW9uVHlwZXMsIHJvb3RHZXR0ZXJzLCBuZXdOb3RpZmljYXRpb25TaWRlRWZmZWN0cyB9KSA9PiB7XG4gIGVhY2gobm90aWZpY2F0aW9ucywgKG5vdGlmaWNhdGlvbikgPT4ge1xuICAgIC8vIElmIGludmFsaWQgbm90aWZpY2F0aW9uLCB1cGRhdGUgaWRzIGJ1dCBkb24ndCBhZGQgaXQgdG8gc3RvcmVcbiAgICBpZiAoIWlzVmFsaWROb3RpZmljYXRpb24obm90aWZpY2F0aW9uKSkge1xuICAgICAgY29uc29sZS5lcnJvcignSW52YWxpZCBub3RpZmljYXRpb246Jywgbm90aWZpY2F0aW9uKVxuICAgICAgdXBkYXRlTm90aWZpY2F0aW9uc01pbk1heElkKHN0YXRlLCBub3RpZmljYXRpb24pXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBpZiAoaXNTdGF0dXNOb3RpZmljYXRpb24obm90aWZpY2F0aW9uLnR5cGUpKSB7XG4gICAgICBub3RpZmljYXRpb24uYWN0aW9uID0gYWRkU3RhdHVzVG9HbG9iYWxTdG9yYWdlKHN0YXRlLCBub3RpZmljYXRpb24uYWN0aW9uKS5pdGVtXG4gICAgICBub3RpZmljYXRpb24uc3RhdHVzID0gbm90aWZpY2F0aW9uLnN0YXR1cyAmJiBhZGRTdGF0dXNUb0dsb2JhbFN0b3JhZ2Uoc3RhdGUsIG5vdGlmaWNhdGlvbi5zdGF0dXMpLml0ZW1cbiAgICB9XG5cbiAgICBpZiAobm90aWZpY2F0aW9uLnR5cGUgPT09ICdwbGVyb21hOnJlcG9ydCcpIHtcbiAgICAgIGRpc3BhdGNoKCdhZGRSZXBvcnQnLCBub3RpZmljYXRpb24ucmVwb3J0KVxuICAgIH1cblxuICAgIGlmIChub3RpZmljYXRpb24udHlwZSA9PT0gJ3BsZXJvbWE6ZW1vamlfcmVhY3Rpb24nKSB7XG4gICAgICBkaXNwYXRjaCgnZmV0Y2hFbW9qaVJlYWN0aW9uc0J5Jywgbm90aWZpY2F0aW9uLnN0YXR1cy5pZClcbiAgICB9XG5cbiAgICAvLyBPbmx5IGFkZCBhIG5ldyBub3RpZmljYXRpb24gaWYgd2UgZG9uJ3QgaGF2ZSBvbmUgZm9yIHRoZSBzYW1lIGFjdGlvblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1wcm90b3R5cGUtYnVpbHRpbnNcbiAgICBpZiAoIXN0YXRlLm5vdGlmaWNhdGlvbnMuaWRTdG9yZS5oYXNPd25Qcm9wZXJ0eShub3RpZmljYXRpb24uaWQpKSB7XG4gICAgICB1cGRhdGVOb3RpZmljYXRpb25zTWluTWF4SWQoc3RhdGUsIG5vdGlmaWNhdGlvbilcblxuICAgICAgc3RhdGUubm90aWZpY2F0aW9ucy5kYXRhLnB1c2gobm90aWZpY2F0aW9uKVxuICAgICAgc3RhdGUubm90aWZpY2F0aW9ucy5pZFN0b3JlW25vdGlmaWNhdGlvbi5pZF0gPSBub3RpZmljYXRpb25cblxuICAgICAgbmV3Tm90aWZpY2F0aW9uU2lkZUVmZmVjdHMobm90aWZpY2F0aW9uKVxuICAgIH0gZWxzZSBpZiAobm90aWZpY2F0aW9uLnNlZW4pIHtcbiAgICAgIHN0YXRlLm5vdGlmaWNhdGlvbnMuaWRTdG9yZVtub3RpZmljYXRpb24uaWRdLnNlZW4gPSB0cnVlXG4gICAgfVxuICB9KVxufVxuXG5jb25zdCByZW1vdmVTdGF0dXMgPSAoc3RhdGUsIHsgdGltZWxpbmUsIHVzZXJJZCB9KSA9PiB7XG4gIGNvbnN0IHRpbWVsaW5lT2JqZWN0ID0gc3RhdGUudGltZWxpbmVzW3RpbWVsaW5lXVxuICBpZiAodXNlcklkKSB7XG4gICAgcmVtb3ZlKHRpbWVsaW5lT2JqZWN0LnN0YXR1c2VzLCB7IHVzZXI6IHsgaWQ6IHVzZXJJZCB9IH0pXG4gICAgcmVtb3ZlKHRpbWVsaW5lT2JqZWN0LnZpc2libGVTdGF0dXNlcywgeyB1c2VyOiB7IGlkOiB1c2VySWQgfSB9KVxuICAgIHRpbWVsaW5lT2JqZWN0Lm1pblZpc2libGVJZCA9IHRpbWVsaW5lT2JqZWN0LnZpc2libGVTdGF0dXNlcy5sZW5ndGggPiAwID8gbGFzdCh0aW1lbGluZU9iamVjdC52aXNpYmxlU3RhdHVzZXMpLmlkIDogMFxuICAgIHRpbWVsaW5lT2JqZWN0Lm1heElkID0gdGltZWxpbmVPYmplY3Quc3RhdHVzZXMubGVuZ3RoID4gMCA/IGZpcnN0KHRpbWVsaW5lT2JqZWN0LnN0YXR1c2VzKS5pZCA6IDBcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgbXV0YXRpb25zID0ge1xuICBhZGROZXdTdGF0dXNlcyxcbiAgYWRkTmV3Tm90aWZpY2F0aW9ucyxcbiAgcmVtb3ZlU3RhdHVzLFxuICBzaG93TmV3U3RhdHVzZXMgKHN0YXRlLCB7IHRpbWVsaW5lIH0pIHtcbiAgICBjb25zdCBvbGRUaW1lbGluZSA9IChzdGF0ZS50aW1lbGluZXNbdGltZWxpbmVdKVxuXG4gICAgb2xkVGltZWxpbmUubmV3U3RhdHVzQ291bnQgPSAwXG4gICAgb2xkVGltZWxpbmUudmlzaWJsZVN0YXR1c2VzID0gc2xpY2Uob2xkVGltZWxpbmUuc3RhdHVzZXMsIDAsIDUwKVxuICAgIG9sZFRpbWVsaW5lLm1pblZpc2libGVJZCA9IGxhc3Qob2xkVGltZWxpbmUudmlzaWJsZVN0YXR1c2VzKS5pZFxuICAgIG9sZFRpbWVsaW5lLm1pbklkID0gb2xkVGltZWxpbmUubWluVmlzaWJsZUlkXG4gICAgb2xkVGltZWxpbmUudmlzaWJsZVN0YXR1c2VzT2JqZWN0ID0ge31cbiAgICBlYWNoKG9sZFRpbWVsaW5lLnZpc2libGVTdGF0dXNlcywgKHN0YXR1cykgPT4geyBvbGRUaW1lbGluZS52aXNpYmxlU3RhdHVzZXNPYmplY3Rbc3RhdHVzLmlkXSA9IHN0YXR1cyB9KVxuICB9LFxuICByZXNldFN0YXR1c2VzIChzdGF0ZSkge1xuICAgIGNvbnN0IGVtcHR5U3RhdGUgPSBkZWZhdWx0U3RhdGUoKVxuICAgIE9iamVjdC5lbnRyaWVzKGVtcHR5U3RhdGUpLmZvckVhY2goKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgc3RhdGVba2V5XSA9IHZhbHVlXG4gICAgfSlcbiAgfSxcbiAgY2xlYXJUaW1lbGluZSAoc3RhdGUsIHsgdGltZWxpbmUsIGV4Y2x1ZGVVc2VySWQgPSBmYWxzZSB9KSB7XG4gICAgY29uc3QgdXNlcklkID0gZXhjbHVkZVVzZXJJZCA/IHN0YXRlLnRpbWVsaW5lc1t0aW1lbGluZV0udXNlcklkIDogdW5kZWZpbmVkXG4gICAgc3RhdGUudGltZWxpbmVzW3RpbWVsaW5lXSA9IGVtcHR5VGwodXNlcklkKVxuICB9LFxuICBjbGVhck5vdGlmaWNhdGlvbnMgKHN0YXRlKSB7XG4gICAgc3RhdGUubm90aWZpY2F0aW9ucyA9IGVtcHR5Tm90aWZpY2F0aW9ucygpXG4gIH0sXG4gIHNldEZhdm9yaXRlZCAoc3RhdGUsIHsgc3RhdHVzLCB2YWx1ZSB9KSB7XG4gICAgY29uc3QgbmV3U3RhdHVzID0gc3RhdGUuYWxsU3RhdHVzZXNPYmplY3Rbc3RhdHVzLmlkXVxuXG4gICAgaWYgKG5ld1N0YXR1cy5mYXZvcml0ZWQgIT09IHZhbHVlKSB7XG4gICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgbmV3U3RhdHVzLmZhdmVfbnVtKytcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG5ld1N0YXR1cy5mYXZlX251bS0tXG4gICAgICB9XG4gICAgfVxuXG4gICAgbmV3U3RhdHVzLmZhdm9yaXRlZCA9IHZhbHVlXG4gIH0sXG4gIHNldEZhdm9yaXRlZENvbmZpcm0gKHN0YXRlLCB7IHN0YXR1cywgdXNlciB9KSB7XG4gICAgY29uc3QgbmV3U3RhdHVzID0gc3RhdGUuYWxsU3RhdHVzZXNPYmplY3Rbc3RhdHVzLmlkXVxuICAgIG5ld1N0YXR1cy5mYXZvcml0ZWQgPSBzdGF0dXMuZmF2b3JpdGVkXG4gICAgbmV3U3RhdHVzLmZhdmVfbnVtID0gc3RhdHVzLmZhdmVfbnVtXG4gICAgY29uc3QgaW5kZXggPSBmaW5kSW5kZXgobmV3U3RhdHVzLmZhdm9yaXRlZEJ5LCB7IGlkOiB1c2VyLmlkIH0pXG4gICAgaWYgKGluZGV4ICE9PSAtMSAmJiAhbmV3U3RhdHVzLmZhdm9yaXRlZCkge1xuICAgICAgbmV3U3RhdHVzLmZhdm9yaXRlZEJ5LnNwbGljZShpbmRleCwgMSlcbiAgICB9IGVsc2UgaWYgKGluZGV4ID09PSAtMSAmJiBuZXdTdGF0dXMuZmF2b3JpdGVkKSB7XG4gICAgICBuZXdTdGF0dXMuZmF2b3JpdGVkQnkucHVzaCh1c2VyKVxuICAgIH1cbiAgfSxcbiAgc2V0TXV0ZWRTdGF0dXMgKHN0YXRlLCBzdGF0dXMpIHtcbiAgICBjb25zdCBuZXdTdGF0dXMgPSBzdGF0ZS5hbGxTdGF0dXNlc09iamVjdFtzdGF0dXMuaWRdXG4gICAgbmV3U3RhdHVzLnRocmVhZF9tdXRlZCA9IHN0YXR1cy50aHJlYWRfbXV0ZWRcblxuICAgIGlmIChuZXdTdGF0dXMudGhyZWFkX211dGVkICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHN0YXRlLmNvbnZlcnNhdGlvbnNPYmplY3RbbmV3U3RhdHVzLnN0YXR1c25ldF9jb252ZXJzYXRpb25faWRdLmZvckVhY2goc3RhdHVzID0+IHsgc3RhdHVzLnRocmVhZF9tdXRlZCA9IG5ld1N0YXR1cy50aHJlYWRfbXV0ZWQgfSlcbiAgICB9XG4gIH0sXG4gIHNldFJldHdlZXRlZCAoc3RhdGUsIHsgc3RhdHVzLCB2YWx1ZSB9KSB7XG4gICAgY29uc3QgbmV3U3RhdHVzID0gc3RhdGUuYWxsU3RhdHVzZXNPYmplY3Rbc3RhdHVzLmlkXVxuXG4gICAgaWYgKG5ld1N0YXR1cy5yZXBlYXRlZCAhPT0gdmFsdWUpIHtcbiAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICBuZXdTdGF0dXMucmVwZWF0X251bSsrXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBuZXdTdGF0dXMucmVwZWF0X251bS0tXG4gICAgICB9XG4gICAgfVxuXG4gICAgbmV3U3RhdHVzLnJlcGVhdGVkID0gdmFsdWVcbiAgfSxcbiAgc2V0UmV0d2VldGVkQ29uZmlybSAoc3RhdGUsIHsgc3RhdHVzLCB1c2VyIH0pIHtcbiAgICBjb25zdCBuZXdTdGF0dXMgPSBzdGF0ZS5hbGxTdGF0dXNlc09iamVjdFtzdGF0dXMuaWRdXG4gICAgbmV3U3RhdHVzLnJlcGVhdGVkID0gc3RhdHVzLnJlcGVhdGVkXG4gICAgbmV3U3RhdHVzLnJlcGVhdF9udW0gPSBzdGF0dXMucmVwZWF0X251bVxuICAgIGNvbnN0IGluZGV4ID0gZmluZEluZGV4KG5ld1N0YXR1cy5yZWJsb2dnZWRCeSwgeyBpZDogdXNlci5pZCB9KVxuICAgIGlmIChpbmRleCAhPT0gLTEgJiYgIW5ld1N0YXR1cy5yZXBlYXRlZCkge1xuICAgICAgbmV3U3RhdHVzLnJlYmxvZ2dlZEJ5LnNwbGljZShpbmRleCwgMSlcbiAgICB9IGVsc2UgaWYgKGluZGV4ID09PSAtMSAmJiBuZXdTdGF0dXMucmVwZWF0ZWQpIHtcbiAgICAgIG5ld1N0YXR1cy5yZWJsb2dnZWRCeS5wdXNoKHVzZXIpXG4gICAgfVxuICB9LFxuICBzZXRCb29rbWFya2VkIChzdGF0ZSwgeyBzdGF0dXMsIHZhbHVlIH0pIHtcbiAgICBjb25zdCBuZXdTdGF0dXMgPSBzdGF0ZS5hbGxTdGF0dXNlc09iamVjdFtzdGF0dXMuaWRdXG4gICAgbmV3U3RhdHVzLmJvb2ttYXJrZWQgPSB2YWx1ZVxuICB9LFxuICBzZXRCb29rbWFya2VkQ29uZmlybSAoc3RhdGUsIHsgc3RhdHVzIH0pIHtcbiAgICBjb25zdCBuZXdTdGF0dXMgPSBzdGF0ZS5hbGxTdGF0dXNlc09iamVjdFtzdGF0dXMuaWRdXG4gICAgbmV3U3RhdHVzLmJvb2ttYXJrZWQgPSBzdGF0dXMuYm9va21hcmtlZFxuICB9LFxuICBzZXREZWxldGVkIChzdGF0ZSwgeyBzdGF0dXMgfSkge1xuICAgIGNvbnN0IG5ld1N0YXR1cyA9IHN0YXRlLmFsbFN0YXR1c2VzT2JqZWN0W3N0YXR1cy5pZF1cbiAgICBpZiAobmV3U3RhdHVzKSBuZXdTdGF0dXMuZGVsZXRlZCA9IHRydWVcbiAgfSxcbiAgc2V0TWFueURlbGV0ZWQgKHN0YXRlLCBjb25kaXRpb24pIHtcbiAgICBPYmplY3QudmFsdWVzKHN0YXRlLmFsbFN0YXR1c2VzT2JqZWN0KS5mb3JFYWNoKHN0YXR1cyA9PiB7XG4gICAgICBpZiAoY29uZGl0aW9uKHN0YXR1cykpIHtcbiAgICAgICAgc3RhdHVzLmRlbGV0ZWQgPSB0cnVlXG4gICAgICB9XG4gICAgfSlcbiAgfSxcbiAgc2V0TG9hZGluZyAoc3RhdGUsIHsgdGltZWxpbmUsIHZhbHVlIH0pIHtcbiAgICBzdGF0ZS50aW1lbGluZXNbdGltZWxpbmVdLmxvYWRpbmcgPSB2YWx1ZVxuICB9LFxuICBzZXROc2Z3IChzdGF0ZSwgeyBpZCwgbnNmdyB9KSB7XG4gICAgY29uc3QgbmV3U3RhdHVzID0gc3RhdGUuYWxsU3RhdHVzZXNPYmplY3RbaWRdXG4gICAgbmV3U3RhdHVzLm5zZncgPSBuc2Z3XG4gIH0sXG4gIHNldE5vdGlmaWNhdGlvbnNMb2FkaW5nIChzdGF0ZSwgeyB2YWx1ZSB9KSB7XG4gICAgc3RhdGUubm90aWZpY2F0aW9ucy5sb2FkaW5nID0gdmFsdWVcbiAgfSxcbiAgc2V0Tm90aWZpY2F0aW9uc1NpbGVuY2UgKHN0YXRlLCB7IHZhbHVlIH0pIHtcbiAgICBzdGF0ZS5ub3RpZmljYXRpb25zLmRlc2t0b3BOb3RpZmljYXRpb25TaWxlbmNlID0gdmFsdWVcbiAgfSxcbiAgbWFya05vdGlmaWNhdGlvbnNBc1NlZW4gKHN0YXRlKSB7XG4gICAgZWFjaChzdGF0ZS5ub3RpZmljYXRpb25zLmRhdGEsIChub3RpZmljYXRpb24pID0+IHtcbiAgICAgIG5vdGlmaWNhdGlvbi5zZWVuID0gdHJ1ZVxuICAgIH0pXG4gIH0sXG4gIG1hcmtTaW5nbGVOb3RpZmljYXRpb25Bc1NlZW4gKHN0YXRlLCB7IGlkIH0pIHtcbiAgICBjb25zdCBub3RpZmljYXRpb24gPSBmaW5kKHN0YXRlLm5vdGlmaWNhdGlvbnMuZGF0YSwgbiA9PiBuLmlkID09PSBpZClcbiAgICBpZiAobm90aWZpY2F0aW9uKSBub3RpZmljYXRpb24uc2VlbiA9IHRydWVcbiAgfSxcbiAgZGlzbWlzc05vdGlmaWNhdGlvbiAoc3RhdGUsIHsgaWQgfSkge1xuICAgIHN0YXRlLm5vdGlmaWNhdGlvbnMuZGF0YSA9IHN0YXRlLm5vdGlmaWNhdGlvbnMuZGF0YS5maWx0ZXIobiA9PiBuLmlkICE9PSBpZClcbiAgfSxcbiAgZGlzbWlzc05vdGlmaWNhdGlvbnMgKHN0YXRlLCB7IGZpbmRlciB9KSB7XG4gICAgc3RhdGUubm90aWZpY2F0aW9ucy5kYXRhID0gc3RhdGUubm90aWZpY2F0aW9ucy5kYXRhLmZpbHRlcihuID0+IGZpbmRlcilcbiAgfSxcbiAgdXBkYXRlTm90aWZpY2F0aW9uIChzdGF0ZSwgeyBpZCwgdXBkYXRlciB9KSB7XG4gICAgY29uc3Qgbm90aWZpY2F0aW9uID0gZmluZChzdGF0ZS5ub3RpZmljYXRpb25zLmRhdGEsIG4gPT4gbi5pZCA9PT0gaWQpXG4gICAgbm90aWZpY2F0aW9uICYmIHVwZGF0ZXIobm90aWZpY2F0aW9uKVxuICB9LFxuICBxdWV1ZUZsdXNoIChzdGF0ZSwgeyB0aW1lbGluZSwgaWQgfSkge1xuICAgIHN0YXRlLnRpbWVsaW5lc1t0aW1lbGluZV0uZmx1c2hNYXJrZXIgPSBpZFxuICB9LFxuICBxdWV1ZUZsdXNoQWxsIChzdGF0ZSkge1xuICAgIE9iamVjdC5rZXlzKHN0YXRlLnRpbWVsaW5lcykuZm9yRWFjaCgodGltZWxpbmUpID0+IHtcbiAgICAgIHN0YXRlLnRpbWVsaW5lc1t0aW1lbGluZV0uZmx1c2hNYXJrZXIgPSBzdGF0ZS50aW1lbGluZXNbdGltZWxpbmVdLm1heElkXG4gICAgfSlcbiAgfSxcbiAgYWRkUmVwZWF0cyAoc3RhdGUsIHsgaWQsIHJlYmxvZ2dlZEJ5VXNlcnMsIGN1cnJlbnRVc2VyIH0pIHtcbiAgICBjb25zdCBuZXdTdGF0dXMgPSBzdGF0ZS5hbGxTdGF0dXNlc09iamVjdFtpZF1cbiAgICBuZXdTdGF0dXMucmVibG9nZ2VkQnkgPSByZWJsb2dnZWRCeVVzZXJzLmZpbHRlcihfID0+IF8pXG4gICAgLy8gcmVwZWF0cyBzdGF0cyBjYW4gYmUgaW5jb3JyZWN0IGJhc2VkIG9uIHBvbGxpbmcgY29uZGl0aW9uLCBsZXQncyB1cGRhdGUgdGhlbSB1c2luZyB0aGUgbW9zdCByZWNlbnQgZGF0YVxuICAgIG5ld1N0YXR1cy5yZXBlYXRfbnVtID0gbmV3U3RhdHVzLnJlYmxvZ2dlZEJ5Lmxlbmd0aFxuICAgIG5ld1N0YXR1cy5yZXBlYXRlZCA9ICEhbmV3U3RhdHVzLnJlYmxvZ2dlZEJ5LmZpbmQoKHsgaWQgfSkgPT4gY3VycmVudFVzZXIuaWQgPT09IGlkKVxuICB9LFxuICBhZGRGYXZzIChzdGF0ZSwgeyBpZCwgZmF2b3JpdGVkQnlVc2VycywgY3VycmVudFVzZXIgfSkge1xuICAgIGNvbnN0IG5ld1N0YXR1cyA9IHN0YXRlLmFsbFN0YXR1c2VzT2JqZWN0W2lkXVxuICAgIG5ld1N0YXR1cy5mYXZvcml0ZWRCeSA9IGZhdm9yaXRlZEJ5VXNlcnMuZmlsdGVyKF8gPT4gXylcbiAgICAvLyBmYXZvcml0ZXMgc3RhdHMgY2FuIGJlIGluY29ycmVjdCBiYXNlZCBvbiBwb2xsaW5nIGNvbmRpdGlvbiwgbGV0J3MgdXBkYXRlIHRoZW0gdXNpbmcgdGhlIG1vc3QgcmVjZW50IGRhdGFcbiAgICBuZXdTdGF0dXMuZmF2ZV9udW0gPSBuZXdTdGF0dXMuZmF2b3JpdGVkQnkubGVuZ3RoXG4gICAgbmV3U3RhdHVzLmZhdm9yaXRlZCA9ICEhbmV3U3RhdHVzLmZhdm9yaXRlZEJ5LmZpbmQoKHsgaWQgfSkgPT4gY3VycmVudFVzZXIuaWQgPT09IGlkKVxuICB9LFxuICBhZGRFbW9qaVJlYWN0aW9uc0J5IChzdGF0ZSwgeyBpZCwgZW1vamlSZWFjdGlvbnMsIGN1cnJlbnRVc2VyIH0pIHtcbiAgICBjb25zdCBzdGF0dXMgPSBzdGF0ZS5hbGxTdGF0dXNlc09iamVjdFtpZF1cbiAgICBzdGF0dXMuZW1vamlfcmVhY3Rpb25zID0gZW1vamlSZWFjdGlvbnNcbiAgfSxcbiAgYWRkT3duUmVhY3Rpb24gKHN0YXRlLCB7IGlkLCBlbW9qaSwgY3VycmVudFVzZXIgfSkge1xuICAgIGNvbnN0IHN0YXR1cyA9IHN0YXRlLmFsbFN0YXR1c2VzT2JqZWN0W2lkXVxuICAgIGNvbnN0IHJlYWN0aW9uSW5kZXggPSBmaW5kSW5kZXgoc3RhdHVzLmVtb2ppX3JlYWN0aW9ucywgeyBuYW1lOiBlbW9qaSB9KVxuICAgIGNvbnN0IHJlYWN0aW9uID0gc3RhdHVzLmVtb2ppX3JlYWN0aW9uc1tyZWFjdGlvbkluZGV4XSB8fCB7IG5hbWU6IGVtb2ppLCBjb3VudDogMCwgYWNjb3VudHM6IFtdIH1cblxuICAgIGNvbnN0IG5ld1JlYWN0aW9uID0ge1xuICAgICAgLi4ucmVhY3Rpb24sXG4gICAgICBjb3VudDogcmVhY3Rpb24uY291bnQgKyAxLFxuICAgICAgbWU6IHRydWUsXG4gICAgICBhY2NvdW50czogW1xuICAgICAgICAuLi5yZWFjdGlvbi5hY2NvdW50cyxcbiAgICAgICAgY3VycmVudFVzZXJcbiAgICAgIF1cbiAgICB9XG5cbiAgICAvLyBVcGRhdGUgY291bnQgb2YgZXhpc3RpbmcgcmVhY3Rpb24gaWYgaXQgZXhpc3RzLCBvdGhlcndpc2UgYXBwZW5kIGF0IHRoZSBlbmRcbiAgICBpZiAocmVhY3Rpb25JbmRleCA+PSAwKSB7XG4gICAgICBzdGF0dXMuZW1vamlfcmVhY3Rpb25zW3JlYWN0aW9uSW5kZXhdID0gbmV3UmVhY3Rpb25cbiAgICB9IGVsc2Uge1xuICAgICAgc3RhdHVzLmVtb2ppX3JlYWN0aW9ucyA9IFsuLi5zdGF0dXMuZW1vamlfcmVhY3Rpb25zLCBuZXdSZWFjdGlvbl1cbiAgICB9XG4gIH0sXG4gIHJlbW92ZU93blJlYWN0aW9uIChzdGF0ZSwgeyBpZCwgZW1vamksIGN1cnJlbnRVc2VyIH0pIHtcbiAgICBjb25zdCBzdGF0dXMgPSBzdGF0ZS5hbGxTdGF0dXNlc09iamVjdFtpZF1cbiAgICBjb25zdCByZWFjdGlvbkluZGV4ID0gZmluZEluZGV4KHN0YXR1cy5lbW9qaV9yZWFjdGlvbnMsIHsgbmFtZTogZW1vamkgfSlcbiAgICBpZiAocmVhY3Rpb25JbmRleCA8IDApIHJldHVyblxuXG4gICAgY29uc3QgcmVhY3Rpb24gPSBzdGF0dXMuZW1vamlfcmVhY3Rpb25zW3JlYWN0aW9uSW5kZXhdXG4gICAgY29uc3QgYWNjb3VudHMgPSByZWFjdGlvbi5hY2NvdW50cyB8fCBbXVxuXG4gICAgY29uc3QgbmV3UmVhY3Rpb24gPSB7XG4gICAgICAuLi5yZWFjdGlvbixcbiAgICAgIGNvdW50OiByZWFjdGlvbi5jb3VudCAtIDEsXG4gICAgICBtZTogZmFsc2UsXG4gICAgICBhY2NvdW50czogYWNjb3VudHMuZmlsdGVyKGFjYyA9PiBhY2MuaWQgIT09IGN1cnJlbnRVc2VyLmlkKVxuICAgIH1cblxuICAgIGlmIChuZXdSZWFjdGlvbi5jb3VudCA+IDApIHtcbiAgICAgIHN0YXR1cy5lbW9qaV9yZWFjdGlvbnNbcmVhY3Rpb25JbmRleF0gPSBuZXdSZWFjdGlvblxuICAgIH0gZWxzZSB7XG4gICAgICBzdGF0dXMuZW1vamlfcmVhY3Rpb25zID0gc3RhdHVzLmVtb2ppX3JlYWN0aW9ucy5maWx0ZXIociA9PiByLm5hbWUgIT09IGVtb2ppKVxuICAgIH1cbiAgfSxcbiAgdXBkYXRlU3RhdHVzV2l0aFBvbGwgKHN0YXRlLCB7IGlkLCBwb2xsIH0pIHtcbiAgICBjb25zdCBzdGF0dXMgPSBzdGF0ZS5hbGxTdGF0dXNlc09iamVjdFtpZF1cbiAgICBzdGF0dXMucG9sbCA9IHBvbGxcbiAgfSxcbiAgc2V0VmlydHVhbEhlaWdodCAoc3RhdGUsIHsgc3RhdHVzSWQsIGhlaWdodCB9KSB7XG4gICAgc3RhdGUuYWxsU3RhdHVzZXNPYmplY3Rbc3RhdHVzSWRdLnZpcnR1YWxIZWlnaHQgPSBoZWlnaHRcbiAgfVxufVxuXG5jb25zdCBzdGF0dXNlcyA9IHtcbiAgc3RhdGU6IGRlZmF1bHRTdGF0ZSgpLFxuICBhY3Rpb25zOiB7XG4gICAgYWRkTmV3U3RhdHVzZXMgKHsgcm9vdFN0YXRlLCBjb21taXQgfSwgeyBzdGF0dXNlcywgc2hvd0ltbWVkaWF0ZWx5ID0gZmFsc2UsIHRpbWVsaW5lID0gZmFsc2UsIG5vSWRVcGRhdGUgPSBmYWxzZSwgdXNlcklkLCBwYWdpbmF0aW9uIH0pIHtcbiAgICAgIGNvbW1pdCgnYWRkTmV3U3RhdHVzZXMnLCB7IHN0YXR1c2VzLCBzaG93SW1tZWRpYXRlbHksIHRpbWVsaW5lLCBub0lkVXBkYXRlLCB1c2VyOiByb290U3RhdGUudXNlcnMuY3VycmVudFVzZXIsIHVzZXJJZCwgcGFnaW5hdGlvbiB9KVxuICAgIH0sXG4gICAgYWRkTmV3Tm90aWZpY2F0aW9ucyAoc3RvcmUsIHsgbm90aWZpY2F0aW9ucywgb2xkZXIgfSkge1xuICAgICAgY29uc3QgeyBjb21taXQsIGRpc3BhdGNoLCByb290R2V0dGVycyB9ID0gc3RvcmVcblxuICAgICAgY29uc3QgbmV3Tm90aWZpY2F0aW9uU2lkZUVmZmVjdHMgPSAobm90aWZpY2F0aW9uKSA9PiB7XG4gICAgICAgIG1heWJlU2hvd05vdGlmaWNhdGlvbihzdG9yZSwgbm90aWZpY2F0aW9uKVxuICAgICAgfVxuICAgICAgY29tbWl0KCdhZGROZXdOb3RpZmljYXRpb25zJywgeyBkaXNwYXRjaCwgbm90aWZpY2F0aW9ucywgb2xkZXIsIHJvb3RHZXR0ZXJzLCBuZXdOb3RpZmljYXRpb25TaWRlRWZmZWN0cyB9KVxuICAgIH0sXG4gICAgc2V0Tm90aWZpY2F0aW9uc0xvYWRpbmcgKHsgcm9vdFN0YXRlLCBjb21taXQgfSwgeyB2YWx1ZSB9KSB7XG4gICAgICBjb21taXQoJ3NldE5vdGlmaWNhdGlvbnNMb2FkaW5nJywgeyB2YWx1ZSB9KVxuICAgIH0sXG4gICAgc2V0Tm90aWZpY2F0aW9uc1NpbGVuY2UgKHsgcm9vdFN0YXRlLCBjb21taXQgfSwgeyB2YWx1ZSB9KSB7XG4gICAgICBjb21taXQoJ3NldE5vdGlmaWNhdGlvbnNTaWxlbmNlJywgeyB2YWx1ZSB9KVxuICAgIH0sXG4gICAgZmV0Y2hTdGF0dXMgKHsgcm9vdFN0YXRlLCBkaXNwYXRjaCB9LCBpZCkge1xuICAgICAgcmV0dXJuIHJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IuZmV0Y2hTdGF0dXMoeyBpZCB9KVxuICAgICAgICAudGhlbigoc3RhdHVzKSA9PiBkaXNwYXRjaCgnYWRkTmV3U3RhdHVzZXMnLCB7IHN0YXR1c2VzOiBbc3RhdHVzXSB9KSlcbiAgICB9LFxuICAgIGZldGNoU3RhdHVzU291cmNlICh7IHJvb3RTdGF0ZSwgZGlzcGF0Y2ggfSwgc3RhdHVzKSB7XG4gICAgICByZXR1cm4gYXBpU2VydmljZS5mZXRjaFN0YXR1c1NvdXJjZSh7IGlkOiBzdGF0dXMuaWQsIGNyZWRlbnRpYWxzOiByb290U3RhdGUudXNlcnMuY3VycmVudFVzZXIuY3JlZGVudGlhbHMgfSlcbiAgICB9LFxuICAgIGZldGNoU3RhdHVzSGlzdG9yeSAoeyByb290U3RhdGUsIGRpc3BhdGNoIH0sIHN0YXR1cykge1xuICAgICAgcmV0dXJuIGFwaVNlcnZpY2UuZmV0Y2hTdGF0dXNIaXN0b3J5KHsgc3RhdHVzIH0pXG4gICAgfSxcbiAgICBkZWxldGVTdGF0dXMgKHsgcm9vdFN0YXRlLCBjb21taXQsIGRpc3BhdGNoIH0sIHN0YXR1cykge1xuICAgICAgYXBpU2VydmljZS5kZWxldGVTdGF0dXMoeyBpZDogc3RhdHVzLmlkLCBjcmVkZW50aWFsczogcm9vdFN0YXRlLnVzZXJzLmN1cnJlbnRVc2VyLmNyZWRlbnRpYWxzIH0pXG4gICAgICAgIC50aGVuKChfKSA9PiB7XG4gICAgICAgICAgY29tbWl0KCdzZXREZWxldGVkJywgeyBzdGF0dXMgfSlcbiAgICAgICAgfSlcbiAgICAgICAgLmNhdGNoKChlKSA9PiB7XG4gICAgICAgICAgZGlzcGF0Y2goJ3B1c2hHbG9iYWxOb3RpY2UnLCB7XG4gICAgICAgICAgICBsZXZlbDogJ2Vycm9yJyxcbiAgICAgICAgICAgIG1lc3NhZ2VLZXk6ICdzdGF0dXMuZGVsZXRlX2Vycm9yJyxcbiAgICAgICAgICAgIG1lc3NhZ2VBcmdzOiBbZS5tZXNzYWdlXSxcbiAgICAgICAgICAgIHRpbWVvdXQ6IDUwMDBcbiAgICAgICAgICB9KVxuICAgICAgICB9KVxuICAgIH0sXG4gICAgZGVsZXRlU3RhdHVzQnlJZCAoeyByb290U3RhdGUsIGNvbW1pdCB9LCBpZCkge1xuICAgICAgY29uc3Qgc3RhdHVzID0gcm9vdFN0YXRlLnN0YXR1c2VzLmFsbFN0YXR1c2VzT2JqZWN0W2lkXVxuICAgICAgY29tbWl0KCdzZXREZWxldGVkJywgeyBzdGF0dXMgfSlcbiAgICB9LFxuICAgIG1hcmtTdGF0dXNlc0FzRGVsZXRlZCAoeyBjb21taXQgfSwgY29uZGl0aW9uKSB7XG4gICAgICBjb21taXQoJ3NldE1hbnlEZWxldGVkJywgY29uZGl0aW9uKVxuICAgIH0sXG4gICAgZmF2b3JpdGUgKHsgcm9vdFN0YXRlLCBjb21taXQgfSwgc3RhdHVzKSB7XG4gICAgICAvLyBPcHRpbWlzdGljIGZhdm9yaXRpbmcuLi5cbiAgICAgIGNvbW1pdCgnc2V0RmF2b3JpdGVkJywgeyBzdGF0dXMsIHZhbHVlOiB0cnVlIH0pXG4gICAgICByb290U3RhdGUuYXBpLmJhY2tlbmRJbnRlcmFjdG9yLmZhdm9yaXRlKHsgaWQ6IHN0YXR1cy5pZCB9KVxuICAgICAgICAudGhlbihzdGF0dXMgPT4gY29tbWl0KCdzZXRGYXZvcml0ZWRDb25maXJtJywgeyBzdGF0dXMsIHVzZXI6IHJvb3RTdGF0ZS51c2Vycy5jdXJyZW50VXNlciB9KSlcbiAgICB9LFxuICAgIHVuZmF2b3JpdGUgKHsgcm9vdFN0YXRlLCBjb21taXQgfSwgc3RhdHVzKSB7XG4gICAgICAvLyBPcHRpbWlzdGljIHVuZmF2b3JpdGluZy4uLlxuICAgICAgY29tbWl0KCdzZXRGYXZvcml0ZWQnLCB7IHN0YXR1cywgdmFsdWU6IGZhbHNlIH0pXG4gICAgICByb290U3RhdGUuYXBpLmJhY2tlbmRJbnRlcmFjdG9yLnVuZmF2b3JpdGUoeyBpZDogc3RhdHVzLmlkIH0pXG4gICAgICAgIC50aGVuKHN0YXR1cyA9PiBjb21taXQoJ3NldEZhdm9yaXRlZENvbmZpcm0nLCB7IHN0YXR1cywgdXNlcjogcm9vdFN0YXRlLnVzZXJzLmN1cnJlbnRVc2VyIH0pKVxuICAgIH0sXG4gICAgZmV0Y2hQaW5uZWRTdGF0dXNlcyAoeyByb290U3RhdGUsIGRpc3BhdGNoIH0sIHVzZXJJZCkge1xuICAgICAgcm9vdFN0YXRlLmFwaS5iYWNrZW5kSW50ZXJhY3Rvci5mZXRjaFBpbm5lZFN0YXR1c2VzKHsgaWQ6IHVzZXJJZCB9KVxuICAgICAgICAudGhlbihzdGF0dXNlcyA9PiBkaXNwYXRjaCgnYWRkTmV3U3RhdHVzZXMnLCB7IHN0YXR1c2VzLCB0aW1lbGluZTogJ3VzZXInLCB1c2VySWQsIHNob3dJbW1lZGlhdGVseTogdHJ1ZSwgbm9JZFVwZGF0ZTogdHJ1ZSB9KSlcbiAgICB9LFxuICAgIHBpblN0YXR1cyAoeyByb290U3RhdGUsIGRpc3BhdGNoIH0sIHN0YXR1c0lkKSB7XG4gICAgICByZXR1cm4gcm9vdFN0YXRlLmFwaS5iYWNrZW5kSW50ZXJhY3Rvci5waW5Pd25TdGF0dXMoeyBpZDogc3RhdHVzSWQgfSlcbiAgICAgICAgLnRoZW4oKHN0YXR1cykgPT4gZGlzcGF0Y2goJ2FkZE5ld1N0YXR1c2VzJywgeyBzdGF0dXNlczogW3N0YXR1c10gfSkpXG4gICAgfSxcbiAgICB1bnBpblN0YXR1cyAoeyByb290U3RhdGUsIGRpc3BhdGNoIH0sIHN0YXR1c0lkKSB7XG4gICAgICByb290U3RhdGUuYXBpLmJhY2tlbmRJbnRlcmFjdG9yLnVucGluT3duU3RhdHVzKHsgaWQ6IHN0YXR1c0lkIH0pXG4gICAgICAgIC50aGVuKChzdGF0dXMpID0+IGRpc3BhdGNoKCdhZGROZXdTdGF0dXNlcycsIHsgc3RhdHVzZXM6IFtzdGF0dXNdIH0pKVxuICAgIH0sXG4gICAgbXV0ZUNvbnZlcnNhdGlvbiAoeyByb290U3RhdGUsIGNvbW1pdCB9LCBzdGF0dXNJZCkge1xuICAgICAgcmV0dXJuIHJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IubXV0ZUNvbnZlcnNhdGlvbih7IGlkOiBzdGF0dXNJZCB9KVxuICAgICAgICAudGhlbigoc3RhdHVzKSA9PiBjb21taXQoJ3NldE11dGVkU3RhdHVzJywgc3RhdHVzKSlcbiAgICB9LFxuICAgIHVubXV0ZUNvbnZlcnNhdGlvbiAoeyByb290U3RhdGUsIGNvbW1pdCB9LCBzdGF0dXNJZCkge1xuICAgICAgcmV0dXJuIHJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IudW5tdXRlQ29udmVyc2F0aW9uKHsgaWQ6IHN0YXR1c0lkIH0pXG4gICAgICAgIC50aGVuKChzdGF0dXMpID0+IGNvbW1pdCgnc2V0TXV0ZWRTdGF0dXMnLCBzdGF0dXMpKVxuICAgIH0sXG4gICAgcmV0d2VldCAoeyByb290U3RhdGUsIGNvbW1pdCB9LCBzdGF0dXMpIHtcbiAgICAgIC8vIE9wdGltaXN0aWMgcmV0d2VldGluZy4uLlxuICAgICAgY29tbWl0KCdzZXRSZXR3ZWV0ZWQnLCB7IHN0YXR1cywgdmFsdWU6IHRydWUgfSlcbiAgICAgIHJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IucmV0d2VldCh7IGlkOiBzdGF0dXMuaWQgfSlcbiAgICAgICAgLnRoZW4oc3RhdHVzID0+IGNvbW1pdCgnc2V0UmV0d2VldGVkQ29uZmlybScsIHsgc3RhdHVzOiBzdGF0dXMucmV0d2VldGVkX3N0YXR1cywgdXNlcjogcm9vdFN0YXRlLnVzZXJzLmN1cnJlbnRVc2VyIH0pKVxuICAgIH0sXG4gICAgdW5yZXR3ZWV0ICh7IHJvb3RTdGF0ZSwgY29tbWl0IH0sIHN0YXR1cykge1xuICAgICAgLy8gT3B0aW1pc3RpYyB1bnJldHdlZXRpbmcuLi5cbiAgICAgIGNvbW1pdCgnc2V0UmV0d2VldGVkJywgeyBzdGF0dXMsIHZhbHVlOiBmYWxzZSB9KVxuICAgICAgcm9vdFN0YXRlLmFwaS5iYWNrZW5kSW50ZXJhY3Rvci51bnJldHdlZXQoeyBpZDogc3RhdHVzLmlkIH0pXG4gICAgICAgIC50aGVuKHN0YXR1cyA9PiBjb21taXQoJ3NldFJldHdlZXRlZENvbmZpcm0nLCB7IHN0YXR1cywgdXNlcjogcm9vdFN0YXRlLnVzZXJzLmN1cnJlbnRVc2VyIH0pKVxuICAgIH0sXG4gICAgYm9va21hcmsgKHsgcm9vdFN0YXRlLCBjb21taXQgfSwgc3RhdHVzKSB7XG4gICAgICBjb21taXQoJ3NldEJvb2ttYXJrZWQnLCB7IHN0YXR1cywgdmFsdWU6IHRydWUgfSlcbiAgICAgIHJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IuYm9va21hcmtTdGF0dXMoeyBpZDogc3RhdHVzLmlkIH0pXG4gICAgICAgIC50aGVuKHN0YXR1cyA9PiB7XG4gICAgICAgICAgY29tbWl0KCdzZXRCb29rbWFya2VkQ29uZmlybScsIHsgc3RhdHVzIH0pXG4gICAgICAgIH0pXG4gICAgfSxcbiAgICB1bmJvb2ttYXJrICh7IHJvb3RTdGF0ZSwgY29tbWl0IH0sIHN0YXR1cykge1xuICAgICAgY29tbWl0KCdzZXRCb29rbWFya2VkJywgeyBzdGF0dXMsIHZhbHVlOiBmYWxzZSB9KVxuICAgICAgcm9vdFN0YXRlLmFwaS5iYWNrZW5kSW50ZXJhY3Rvci51bmJvb2ttYXJrU3RhdHVzKHsgaWQ6IHN0YXR1cy5pZCB9KVxuICAgICAgICAudGhlbihzdGF0dXMgPT4ge1xuICAgICAgICAgIGNvbW1pdCgnc2V0Qm9va21hcmtlZENvbmZpcm0nLCB7IHN0YXR1cyB9KVxuICAgICAgICB9KVxuICAgIH0sXG4gICAgcXVldWVGbHVzaCAoeyByb290U3RhdGUsIGNvbW1pdCB9LCB7IHRpbWVsaW5lLCBpZCB9KSB7XG4gICAgICBjb21taXQoJ3F1ZXVlRmx1c2gnLCB7IHRpbWVsaW5lLCBpZCB9KVxuICAgIH0sXG4gICAgcXVldWVGbHVzaEFsbCAoeyByb290U3RhdGUsIGNvbW1pdCB9KSB7XG4gICAgICBjb21taXQoJ3F1ZXVlRmx1c2hBbGwnKVxuICAgIH0sXG4gICAgbWFya05vdGlmaWNhdGlvbnNBc1NlZW4gKHsgcm9vdFN0YXRlLCBjb21taXQgfSkge1xuICAgICAgY29tbWl0KCdtYXJrTm90aWZpY2F0aW9uc0FzU2VlbicpXG4gICAgICBhcGlTZXJ2aWNlLm1hcmtOb3RpZmljYXRpb25zQXNTZWVuKHtcbiAgICAgICAgaWQ6IHJvb3RTdGF0ZS5zdGF0dXNlcy5ub3RpZmljYXRpb25zLm1heElkLFxuICAgICAgICBjcmVkZW50aWFsczogcm9vdFN0YXRlLnVzZXJzLmN1cnJlbnRVc2VyLmNyZWRlbnRpYWxzXG4gICAgICB9KVxuICAgIH0sXG4gICAgbWFya1NpbmdsZU5vdGlmaWNhdGlvbkFzU2VlbiAoeyByb290U3RhdGUsIGNvbW1pdCB9LCB7IGlkIH0pIHtcbiAgICAgIGNvbW1pdCgnbWFya1NpbmdsZU5vdGlmaWNhdGlvbkFzU2VlbicsIHsgaWQgfSlcbiAgICAgIGFwaVNlcnZpY2UubWFya05vdGlmaWNhdGlvbnNBc1NlZW4oe1xuICAgICAgICBzaW5nbGU6IHRydWUsXG4gICAgICAgIGlkLFxuICAgICAgICBjcmVkZW50aWFsczogcm9vdFN0YXRlLnVzZXJzLmN1cnJlbnRVc2VyLmNyZWRlbnRpYWxzXG4gICAgICB9KVxuICAgIH0sXG4gICAgZGlzbWlzc05vdGlmaWNhdGlvbkxvY2FsICh7IHJvb3RTdGF0ZSwgY29tbWl0IH0sIHsgaWQgfSkge1xuICAgICAgY29tbWl0KCdkaXNtaXNzTm90aWZpY2F0aW9uJywgeyBpZCB9KVxuICAgIH0sXG4gICAgZGlzbWlzc05vdGlmaWNhdGlvbiAoeyByb290U3RhdGUsIGNvbW1pdCB9LCB7IGlkIH0pIHtcbiAgICAgIGNvbW1pdCgnZGlzbWlzc05vdGlmaWNhdGlvbicsIHsgaWQgfSlcbiAgICAgIHJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IuZGlzbWlzc05vdGlmaWNhdGlvbih7IGlkIH0pXG4gICAgfSxcbiAgICB1cGRhdGVOb3RpZmljYXRpb24gKHsgcm9vdFN0YXRlLCBjb21taXQgfSwgeyBpZCwgdXBkYXRlciB9KSB7XG4gICAgICBjb21taXQoJ3VwZGF0ZU5vdGlmaWNhdGlvbicsIHsgaWQsIHVwZGF0ZXIgfSlcbiAgICB9LFxuICAgIGZldGNoRmF2c0FuZFJlcGVhdHMgKHsgcm9vdFN0YXRlLCBjb21taXQgfSwgaWQpIHtcbiAgICAgIFByb21pc2UuYWxsKFtcbiAgICAgICAgcm9vdFN0YXRlLmFwaS5iYWNrZW5kSW50ZXJhY3Rvci5mZXRjaEZhdm9yaXRlZEJ5VXNlcnMoeyBpZCB9KSxcbiAgICAgICAgcm9vdFN0YXRlLmFwaS5iYWNrZW5kSW50ZXJhY3Rvci5mZXRjaFJlYmxvZ2dlZEJ5VXNlcnMoeyBpZCB9KVxuICAgICAgXSkudGhlbigoW2Zhdm9yaXRlZEJ5VXNlcnMsIHJlYmxvZ2dlZEJ5VXNlcnNdKSA9PiB7XG4gICAgICAgIGNvbW1pdCgnYWRkRmF2cycsIHsgaWQsIGZhdm9yaXRlZEJ5VXNlcnMsIGN1cnJlbnRVc2VyOiByb290U3RhdGUudXNlcnMuY3VycmVudFVzZXIgfSlcbiAgICAgICAgY29tbWl0KCdhZGRSZXBlYXRzJywgeyBpZCwgcmVibG9nZ2VkQnlVc2VycywgY3VycmVudFVzZXI6IHJvb3RTdGF0ZS51c2Vycy5jdXJyZW50VXNlciB9KVxuICAgICAgfSlcbiAgICB9LFxuICAgIHJlYWN0V2l0aEVtb2ppICh7IHJvb3RTdGF0ZSwgZGlzcGF0Y2gsIGNvbW1pdCB9LCB7IGlkLCBlbW9qaSB9KSB7XG4gICAgICBjb25zdCBjdXJyZW50VXNlciA9IHJvb3RTdGF0ZS51c2Vycy5jdXJyZW50VXNlclxuICAgICAgaWYgKCFjdXJyZW50VXNlcikgcmV0dXJuXG5cbiAgICAgIGNvbW1pdCgnYWRkT3duUmVhY3Rpb24nLCB7IGlkLCBlbW9qaSwgY3VycmVudFVzZXIgfSlcbiAgICAgIHJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IucmVhY3RXaXRoRW1vamkoeyBpZCwgZW1vamkgfSkudGhlbihcbiAgICAgICAgb2sgPT4ge1xuICAgICAgICAgIGRpc3BhdGNoKCdmZXRjaEVtb2ppUmVhY3Rpb25zQnknLCBpZClcbiAgICAgICAgfVxuICAgICAgKVxuICAgIH0sXG4gICAgdW5yZWFjdFdpdGhFbW9qaSAoeyByb290U3RhdGUsIGRpc3BhdGNoLCBjb21taXQgfSwgeyBpZCwgZW1vamkgfSkge1xuICAgICAgY29uc3QgY3VycmVudFVzZXIgPSByb290U3RhdGUudXNlcnMuY3VycmVudFVzZXJcbiAgICAgIGlmICghY3VycmVudFVzZXIpIHJldHVyblxuXG4gICAgICBjb21taXQoJ3JlbW92ZU93blJlYWN0aW9uJywgeyBpZCwgZW1vamksIGN1cnJlbnRVc2VyIH0pXG4gICAgICByb290U3RhdGUuYXBpLmJhY2tlbmRJbnRlcmFjdG9yLnVucmVhY3RXaXRoRW1vamkoeyBpZCwgZW1vamkgfSkudGhlbihcbiAgICAgICAgb2sgPT4ge1xuICAgICAgICAgIGRpc3BhdGNoKCdmZXRjaEVtb2ppUmVhY3Rpb25zQnknLCBpZClcbiAgICAgICAgfVxuICAgICAgKVxuICAgIH0sXG4gICAgZmV0Y2hFbW9qaVJlYWN0aW9uc0J5ICh7IHJvb3RTdGF0ZSwgY29tbWl0IH0sIGlkKSB7XG4gICAgICByZXR1cm4gcm9vdFN0YXRlLmFwaS5iYWNrZW5kSW50ZXJhY3Rvci5mZXRjaEVtb2ppUmVhY3Rpb25zKHsgaWQgfSkudGhlbihcbiAgICAgICAgZW1vamlSZWFjdGlvbnMgPT4ge1xuICAgICAgICAgIGNvbW1pdCgnYWRkRW1vamlSZWFjdGlvbnNCeScsIHsgaWQsIGVtb2ppUmVhY3Rpb25zLCBjdXJyZW50VXNlcjogcm9vdFN0YXRlLnVzZXJzLmN1cnJlbnRVc2VyIH0pXG4gICAgICAgIH1cbiAgICAgIClcbiAgICB9LFxuICAgIGZldGNoRmF2cyAoeyByb290U3RhdGUsIGNvbW1pdCB9LCBpZCkge1xuICAgICAgcm9vdFN0YXRlLmFwaS5iYWNrZW5kSW50ZXJhY3Rvci5mZXRjaEZhdm9yaXRlZEJ5VXNlcnMoeyBpZCB9KVxuICAgICAgICAudGhlbihmYXZvcml0ZWRCeVVzZXJzID0+IGNvbW1pdCgnYWRkRmF2cycsIHsgaWQsIGZhdm9yaXRlZEJ5VXNlcnMsIGN1cnJlbnRVc2VyOiByb290U3RhdGUudXNlcnMuY3VycmVudFVzZXIgfSkpXG4gICAgfSxcbiAgICBmZXRjaFJlcGVhdHMgKHsgcm9vdFN0YXRlLCBjb21taXQgfSwgaWQpIHtcbiAgICAgIHJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IuZmV0Y2hSZWJsb2dnZWRCeVVzZXJzKHsgaWQgfSlcbiAgICAgICAgLnRoZW4ocmVibG9nZ2VkQnlVc2VycyA9PiBjb21taXQoJ2FkZFJlcGVhdHMnLCB7IGlkLCByZWJsb2dnZWRCeVVzZXJzLCBjdXJyZW50VXNlcjogcm9vdFN0YXRlLnVzZXJzLmN1cnJlbnRVc2VyIH0pKVxuICAgIH0sXG4gICAgc2VhcmNoIChzdG9yZSwgeyBxLCByZXNvbHZlLCBsaW1pdCwgb2Zmc2V0LCBmb2xsb3dpbmcsIHR5cGUgfSkge1xuICAgICAgcmV0dXJuIHN0b3JlLnJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3Iuc2VhcmNoMih7IHEsIHJlc29sdmUsIGxpbWl0LCBvZmZzZXQsIGZvbGxvd2luZywgdHlwZSB9KVxuICAgICAgICAudGhlbigoZGF0YSkgPT4ge1xuICAgICAgICAgIHN0b3JlLmNvbW1pdCgnYWRkTmV3VXNlcnMnLCBkYXRhLmFjY291bnRzKVxuICAgICAgICAgIHN0b3JlLmNvbW1pdCgnYWRkTmV3VXNlcnMnLCBkYXRhLnN0YXR1c2VzLm1hcChzID0+IHMudXNlcikuZmlsdGVyKHUgPT4gdSkpXG4gICAgICAgICAgc3RvcmUuY29tbWl0KCdhZGROZXdTdGF0dXNlcycsIHsgc3RhdHVzZXM6IGRhdGEuc3RhdHVzZXMgfSlcbiAgICAgICAgICByZXR1cm4gZGF0YVxuICAgICAgICB9KVxuICAgIH0sXG4gICAgc2V0VmlydHVhbEhlaWdodCAoeyBjb21taXQgfSwgeyBzdGF0dXNJZCwgaGVpZ2h0IH0pIHtcbiAgICAgIGNvbW1pdCgnc2V0VmlydHVhbEhlaWdodCcsIHsgc3RhdHVzSWQsIGhlaWdodCB9KVxuICAgIH1cbiAgfSxcbiAgbXV0YXRpb25zXG59XG5cbmV4cG9ydCBkZWZhdWx0IHN0YXR1c2VzXG4iXSwibmFtZXMiOlsiaXNTdGF0dXNOb3RpZmljYXRpb24iLCJpc1ZhbGlkTm90aWZpY2F0aW9uIiwibWF5YmVTaG93Tm90aWZpY2F0aW9uIiwiYXBpU2VydmljZSIsImVtcHR5VGwiLCJ1c2VySWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJ1bmRlZmluZWQiLCJzdGF0dXNlcyIsInN0YXR1c2VzT2JqZWN0IiwiZmF2ZXMiLCJ2aXNpYmxlU3RhdHVzZXMiLCJ2aXNpYmxlU3RhdHVzZXNPYmplY3QiLCJuZXdTdGF0dXNDb3VudCIsIm1heElkIiwibWluSWQiLCJtaW5WaXNpYmxlSWQiLCJsb2FkaW5nIiwiZm9sbG93ZXJzIiwiZnJpZW5kcyIsImZsdXNoTWFya2VyIiwiZW1wdHlOb3RpZmljYXRpb25zIiwiZGVza3RvcE5vdGlmaWNhdGlvblNpbGVuY2UiLCJOdW1iZXIiLCJQT1NJVElWRV9JTkZJTklUWSIsImRhdGEiLCJpZFN0b3JlIiwiZGVmYXVsdFN0YXRlIiwiYWxsU3RhdHVzZXMiLCJhbGxTdGF0dXNlc09iamVjdCIsImNvbnZlcnNhdGlvbnNPYmplY3QiLCJub3RpZmljYXRpb25zIiwiZmF2b3JpdGVzIiwiU2V0IiwidGltZWxpbmVzIiwibWVudGlvbnMiLCJ1c2VyIiwibWVkaWEiLCJwdWJsaWNBbmRFeHRlcm5hbCIsInRhZyIsImRtcyIsImJvb2ttYXJrcyIsImxpc3QiLCJwcmVwYXJlU3RhdHVzIiwic3RhdHVzIiwiZGVsZXRlZCIsImF0dGFjaG1lbnRzIiwibWVyZ2VPckFkZCIsImFyciIsIm9iaiIsIml0ZW0iLCJvbGRJdGVtIiwiaWQiLCJfbWVyZ2UiLCJfb21pdEJ5IiwidiIsImsiLCJzcGxpY2UiLCJwdXNoIiwic29ydEJ5SWQiLCJhIiwiYiIsInNlcUEiLCJzZXFCIiwiaXNTZXFBIiwiaXNOYU4iLCJpc1NlcUIiLCJzb3J0VGltZWxpbmUiLCJ0aW1lbGluZSIsInNvcnQiLCJfbGFzdCIsImFkZFN0YXR1c1RvR2xvYmFsU3RvcmFnZSIsInN0YXRlIiwicmVzdWx0IiwiY29udmVyc2F0aW9uSWQiLCJzdGF0dXNuZXRfY29udmVyc2F0aW9uX2lkIiwicmVtb3ZlU3RhdHVzRnJvbUdsb2JhbFN0b3JhZ2UiLCJfcmVtb3ZlIiwiX3JlZiIsImFjdGlvbiIsImFkZE5ld1N0YXR1c2VzIiwiX3JlZjIiLCJfcmVmMiRzaG93SW1tZWRpYXRlbHkiLCJzaG93SW1tZWRpYXRlbHkiLCJfcmVmMiR1c2VyIiwiX3JlZjIkbm9JZFVwZGF0ZSIsIm5vSWRVcGRhdGUiLCJfcmVmMiRwYWdpbmF0aW9uIiwicGFnaW5hdGlvbiIsIl9pc0FycmF5IiwidGltZWxpbmVPYmplY3QiLCJtaW5OZXciLCJfbWluQnkiLCJtYXhOZXciLCJfbWF4QnkiLCJuZXdlciIsIm9sZGVyIiwiYWRkU3RhdHVzIiwiYWRkVG9UaW1lbGluZSIsInR5cGUiLCJfZmluZCIsImF0dGVudGlvbnMiLCJ2aXNpYmlsaXR5IiwicmVzdWx0Rm9yQ3VycmVudFRpbWVsaW5lIiwicXVvdGUiLCJmYXZvcml0ZVN0YXR1cyIsImZhdm9yaXRlIiwiY291bnRlciIsImluX3JlcGx5X3RvX3N0YXR1c19pZCIsImZhdm9yaXRlZCIsImZhdmVfbnVtIiwicHJvY2Vzc29ycyIsImVkaXQiLCJyZXR3ZWV0IiwicmV0d2VldGVkU3RhdHVzIiwicmV0d2VldGVkX3N0YXR1cyIsInMiLCJoYXMiLCJhZGQiLCJkZWxldGlvbiIsInVyaSIsImZvbGxvdyIsIl9kZWZhdWx0IiwidW5rbm93biIsImNvbnNvbGUiLCJsb2ciLCJfZWFjaCIsInByb2Nlc3NvciIsInVwZGF0ZU5vdGlmaWNhdGlvbnNNaW5NYXhJZCIsIm5vdGlmaWNhdGlvbiIsImFkZE5ld05vdGlmaWNhdGlvbnMiLCJfcmVmMyIsImRpc3BhdGNoIiwidmlzaWJsZU5vdGlmaWNhdGlvblR5cGVzIiwicm9vdEdldHRlcnMiLCJuZXdOb3RpZmljYXRpb25TaWRlRWZmZWN0cyIsImVycm9yIiwicmVwb3J0IiwiaGFzT3duUHJvcGVydHkiLCJzZWVuIiwicmVtb3ZlU3RhdHVzIiwiX3JlZjQiLCJfZmlyc3QiLCJtdXRhdGlvbnMiLCJzaG93TmV3U3RhdHVzZXMiLCJfcmVmNSIsIm9sZFRpbWVsaW5lIiwiX3NsaWNlIiwicmVzZXRTdGF0dXNlcyIsImVtcHR5U3RhdGUiLCJPYmplY3QiLCJlbnRyaWVzIiwiZm9yRWFjaCIsIl9yZWY2IiwiX3JlZjciLCJfc2xpY2VkVG9BcnJheSIsImtleSIsInZhbHVlIiwiY2xlYXJUaW1lbGluZSIsIl9yZWY4IiwiX3JlZjgkZXhjbHVkZVVzZXJJZCIsImV4Y2x1ZGVVc2VySWQiLCJjbGVhck5vdGlmaWNhdGlvbnMiLCJzZXRGYXZvcml0ZWQiLCJfcmVmOSIsIm5ld1N0YXR1cyIsInNldEZhdm9yaXRlZENvbmZpcm0iLCJfcmVmMTAiLCJpbmRleCIsIl9maW5kSW5kZXgiLCJmYXZvcml0ZWRCeSIsInNldE11dGVkU3RhdHVzIiwidGhyZWFkX211dGVkIiwic2V0UmV0d2VldGVkIiwiX3JlZjExIiwicmVwZWF0ZWQiLCJyZXBlYXRfbnVtIiwic2V0UmV0d2VldGVkQ29uZmlybSIsIl9yZWYxMiIsInJlYmxvZ2dlZEJ5Iiwic2V0Qm9va21hcmtlZCIsIl9yZWYxMyIsImJvb2ttYXJrZWQiLCJzZXRCb29rbWFya2VkQ29uZmlybSIsIl9yZWYxNCIsInNldERlbGV0ZWQiLCJfcmVmMTUiLCJzZXRNYW55RGVsZXRlZCIsImNvbmRpdGlvbiIsInZhbHVlcyIsInNldExvYWRpbmciLCJfcmVmMTYiLCJzZXROc2Z3IiwiX3JlZjE3IiwibnNmdyIsInNldE5vdGlmaWNhdGlvbnNMb2FkaW5nIiwiX3JlZjE4Iiwic2V0Tm90aWZpY2F0aW9uc1NpbGVuY2UiLCJfcmVmMTkiLCJtYXJrTm90aWZpY2F0aW9uc0FzU2VlbiIsIm1hcmtTaW5nbGVOb3RpZmljYXRpb25Bc1NlZW4iLCJfcmVmMjAiLCJuIiwiZGlzbWlzc05vdGlmaWNhdGlvbiIsIl9yZWYyMSIsImZpbHRlciIsImRpc21pc3NOb3RpZmljYXRpb25zIiwiX3JlZjIyIiwiZmluZGVyIiwidXBkYXRlTm90aWZpY2F0aW9uIiwiX3JlZjIzIiwidXBkYXRlciIsInF1ZXVlRmx1c2giLCJfcmVmMjQiLCJxdWV1ZUZsdXNoQWxsIiwia2V5cyIsImFkZFJlcGVhdHMiLCJfcmVmMjUiLCJyZWJsb2dnZWRCeVVzZXJzIiwiY3VycmVudFVzZXIiLCJfIiwiZmluZCIsIl9yZWYyNiIsImFkZEZhdnMiLCJfcmVmMjciLCJmYXZvcml0ZWRCeVVzZXJzIiwiX3JlZjI4IiwiYWRkRW1vamlSZWFjdGlvbnNCeSIsIl9yZWYyOSIsImVtb2ppUmVhY3Rpb25zIiwiZW1vamlfcmVhY3Rpb25zIiwiYWRkT3duUmVhY3Rpb24iLCJfcmVmMzAiLCJlbW9qaSIsInJlYWN0aW9uSW5kZXgiLCJuYW1lIiwicmVhY3Rpb24iLCJjb3VudCIsImFjY291bnRzIiwibmV3UmVhY3Rpb24iLCJfb2JqZWN0U3ByZWFkIiwibWUiLCJjb25jYXQiLCJfdG9Db25zdW1hYmxlQXJyYXkiLCJyZW1vdmVPd25SZWFjdGlvbiIsIl9yZWYzMSIsImFjYyIsInIiLCJ1cGRhdGVTdGF0dXNXaXRoUG9sbCIsIl9yZWYzMiIsInBvbGwiLCJzZXRWaXJ0dWFsSGVpZ2h0IiwiX3JlZjMzIiwic3RhdHVzSWQiLCJoZWlnaHQiLCJ2aXJ0dWFsSGVpZ2h0IiwiYWN0aW9ucyIsIl9yZWYzNCIsIl9yZWYzNSIsInJvb3RTdGF0ZSIsImNvbW1pdCIsIl9yZWYzNSRzaG93SW1tZWRpYXRlbCIsIl9yZWYzNSR0aW1lbGluZSIsIl9yZWYzNSRub0lkVXBkYXRlIiwidXNlcnMiLCJzdG9yZSIsIl9yZWYzNiIsIl9yZWYzNyIsIl9yZWYzOCIsIl9yZWYzOSIsIl9yZWY0MCIsImZldGNoU3RhdHVzIiwiX3JlZjQxIiwiYXBpIiwiYmFja2VuZEludGVyYWN0b3IiLCJ0aGVuIiwiZmV0Y2hTdGF0dXNTb3VyY2UiLCJfcmVmNDIiLCJjcmVkZW50aWFscyIsImZldGNoU3RhdHVzSGlzdG9yeSIsIl9yZWY0MyIsImRlbGV0ZVN0YXR1cyIsIl9yZWY0NCIsImUiLCJsZXZlbCIsIm1lc3NhZ2VLZXkiLCJtZXNzYWdlQXJncyIsIm1lc3NhZ2UiLCJ0aW1lb3V0IiwiZGVsZXRlU3RhdHVzQnlJZCIsIl9yZWY0NSIsIm1hcmtTdGF0dXNlc0FzRGVsZXRlZCIsIl9yZWY0NiIsIl9yZWY0NyIsInVuZmF2b3JpdGUiLCJfcmVmNDgiLCJmZXRjaFBpbm5lZFN0YXR1c2VzIiwiX3JlZjQ5IiwicGluU3RhdHVzIiwiX3JlZjUwIiwicGluT3duU3RhdHVzIiwidW5waW5TdGF0dXMiLCJfcmVmNTEiLCJ1bnBpbk93blN0YXR1cyIsIm11dGVDb252ZXJzYXRpb24iLCJfcmVmNTIiLCJ1bm11dGVDb252ZXJzYXRpb24iLCJfcmVmNTMiLCJfcmVmNTQiLCJ1bnJldHdlZXQiLCJfcmVmNTUiLCJib29rbWFyayIsIl9yZWY1NiIsImJvb2ttYXJrU3RhdHVzIiwidW5ib29rbWFyayIsIl9yZWY1NyIsInVuYm9va21hcmtTdGF0dXMiLCJfcmVmNTgiLCJfcmVmNTkiLCJfcmVmNjAiLCJfcmVmNjEiLCJfcmVmNjIiLCJfcmVmNjMiLCJzaW5nbGUiLCJkaXNtaXNzTm90aWZpY2F0aW9uTG9jYWwiLCJfcmVmNjQiLCJfcmVmNjUiLCJfcmVmNjYiLCJfcmVmNjciLCJfcmVmNjgiLCJfcmVmNjkiLCJmZXRjaEZhdnNBbmRSZXBlYXRzIiwiX3JlZjcwIiwiUHJvbWlzZSIsImFsbCIsImZldGNoRmF2b3JpdGVkQnlVc2VycyIsImZldGNoUmVibG9nZ2VkQnlVc2VycyIsIl9yZWY3MSIsIl9yZWY3MiIsInJlYWN0V2l0aEVtb2ppIiwiX3JlZjczIiwiX3JlZjc0Iiwib2siLCJ1bnJlYWN0V2l0aEVtb2ppIiwiX3JlZjc1IiwiX3JlZjc2IiwiZmV0Y2hFbW9qaVJlYWN0aW9uc0J5IiwiX3JlZjc3IiwiZmV0Y2hFbW9qaVJlYWN0aW9ucyIsImZldGNoRmF2cyIsIl9yZWY3OCIsImZldGNoUmVwZWF0cyIsIl9yZWY3OSIsInNlYXJjaCIsIl9yZWY4MCIsInEiLCJyZXNvbHZlIiwibGltaXQiLCJvZmZzZXQiLCJmb2xsb3dpbmciLCJzZWFyY2gyIiwibWFwIiwidSIsIl9yZWY4MSIsIl9yZWY4MiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/modules/statuses.js\n");
/***/ }),
/***/ "./src/modules/users.js":
/*!******************************!*\
!*** ./src/modules/users.js ***!
\******************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__),\n/* harmony export */ \"defaultState\": () => (/* binding */ defaultState),\n/* harmony export */ \"getters\": () => (/* binding */ getters),\n/* harmony export */ \"mergeOrAdd\": () => (/* binding */ mergeOrAdd),\n/* harmony export */ \"mutations\": () => (/* binding */ mutations)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"./node_modules/@babel/runtime/helpers/esm/defineProperty.js\");\n/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ \"./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js\");\n/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ \"./node_modules/@babel/runtime/helpers/esm/slicedToArray.js\");\n/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/typeof */ \"./node_modules/@babel/runtime/helpers/esm/typeof.js\");\n/* harmony import */ var lodash_isArray__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! lodash/isArray */ \"./node_modules/lodash/isArray.js\");\n/* harmony import */ var lodash_isArray__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(lodash_isArray__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var lodash_uniq__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! lodash/uniq */ \"./node_modules/lodash/uniq.js\");\n/* harmony import */ var lodash_uniq__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(lodash_uniq__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var lodash_concat__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! lodash/concat */ \"./node_modules/lodash/concat.js\");\n/* harmony import */ var lodash_concat__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(lodash_concat__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony import */ var lodash_last__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! lodash/last */ \"./node_modules/lodash/last.js\");\n/* harmony import */ var lodash_last__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(lodash_last__WEBPACK_IMPORTED_MODULE_7__);\n/* harmony import */ var lodash_mergeWith__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! lodash/mergeWith */ \"./node_modules/lodash/mergeWith.js\");\n/* harmony import */ var lodash_mergeWith__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(lodash_mergeWith__WEBPACK_IMPORTED_MODULE_8__);\n/* harmony import */ var lodash_each__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! lodash/each */ \"./node_modules/lodash/each.js\");\n/* harmony import */ var lodash_each__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(lodash_each__WEBPACK_IMPORTED_MODULE_9__);\n/* harmony import */ var lodash_map__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! lodash/map */ \"./node_modules/lodash/map.js\");\n/* harmony import */ var lodash_map__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(lodash_map__WEBPACK_IMPORTED_MODULE_10__);\n/* harmony import */ var lodash_compact__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! lodash/compact */ \"./node_modules/lodash/compact.js\");\n/* harmony import */ var lodash_compact__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(lodash_compact__WEBPACK_IMPORTED_MODULE_11__);\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! @babel/runtime/regenerator */ \"./node_modules/@babel/runtime/regenerator/index.js\");\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_12__);\n/* harmony import */ var _services_backend_interactor_service_backend_interactor_service_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../services/backend_interactor_service/backend_interactor_service.js */ \"./src/services/backend_interactor_service/backend_interactor_service.js\");\n/* harmony import */ var _services_window_utils_window_utils__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../services/window_utils/window_utils */ \"./src/services/window_utils/window_utils.js\");\n/* harmony import */ var _services_new_api_oauth_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../services/new_api/oauth.js */ \"./src/services/new_api/oauth.js\");\n/* harmony import */ var _services_push_push_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../services/push/push.js */ \"./src/services/push/push.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\n\n\n\n// TODO: Unify with mergeOrAdd in statuses.js\nvar mergeOrAdd = function mergeOrAdd(arr, obj, item) {\n if (!item) {\n return false;\n }\n var oldItem = obj[item.id];\n if (oldItem) {\n // We already have this, so only merge the new info.\n lodash_mergeWith__WEBPACK_IMPORTED_MODULE_8___default()(oldItem, item, mergeArrayLength);\n return {\n item: oldItem,\n \"new\": false\n };\n } else {\n // This is a new item, prepare it\n arr.push(item);\n obj[item.id] = item;\n return {\n item: item,\n \"new\": true\n };\n }\n};\nvar mergeArrayLength = function mergeArrayLength(oldValue, newValue) {\n if (lodash_isArray__WEBPACK_IMPORTED_MODULE_4___default()(oldValue) && lodash_isArray__WEBPACK_IMPORTED_MODULE_4___default()(newValue)) {\n oldValue.length = newValue.length;\n return lodash_mergeWith__WEBPACK_IMPORTED_MODULE_8___default()(oldValue, newValue, mergeArrayLength);\n }\n};\nvar getNotificationPermission = function getNotificationPermission() {\n var Notification = window.Notification;\n if (!Notification) return Promise.resolve(null);\n if (Notification.permission === 'default') return Notification.requestPermission();\n return Promise.resolve(Notification.permission);\n};\nvar _blockUser = function blockUser(store, id) {\n return store.rootState.api.backendInteractor.blockUser({\n id: id\n }).then(function (relationship) {\n store.commit('updateUserRelationship', [relationship]);\n store.commit('addBlockId', id);\n store.commit('removeStatus', {\n timeline: 'friends',\n userId: id\n });\n store.commit('removeStatus', {\n timeline: 'public',\n userId: id\n });\n store.commit('removeStatus', {\n timeline: 'publicAndExternal',\n userId: id\n });\n });\n};\nvar _unblockUser = function unblockUser(store, id) {\n return store.rootState.api.backendInteractor.unblockUser({\n id: id\n }).then(function (relationship) {\n return store.commit('updateUserRelationship', [relationship]);\n });\n};\nvar _removeUserFromFollowers = function removeUserFromFollowers(store, id) {\n return store.rootState.api.backendInteractor.removeUserFromFollowers({\n id: id\n }).then(function (relationship) {\n return store.commit('updateUserRelationship', [relationship]);\n });\n};\nvar _editUserNote = function editUserNote(store, _ref) {\n var id = _ref.id,\n comment = _ref.comment;\n return store.rootState.api.backendInteractor.editUserNote({\n id: id,\n comment: comment\n }).then(function (relationship) {\n return store.commit('updateUserRelationship', [relationship]);\n });\n};\nvar _muteUser = function muteUser(store, args) {\n var id = (0,_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(args) === 'object' ? args.id : args;\n var expiresIn = (0,_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(args) === 'object' ? args.expiresIn : 0;\n var predictedRelationship = store.state.relationships[id] || {\n id: id\n };\n predictedRelationship.muting = true;\n store.commit('updateUserRelationship', [predictedRelationship]);\n store.commit('addMuteId', id);\n return store.rootState.api.backendInteractor.muteUser({\n id: id,\n expiresIn: expiresIn\n }).then(function (relationship) {\n store.commit('updateUserRelationship', [relationship]);\n store.commit('addMuteId', id);\n });\n};\nvar _unmuteUser = function unmuteUser(store, id) {\n var predictedRelationship = store.state.relationships[id] || {\n id: id\n };\n predictedRelationship.muting = false;\n store.commit('updateUserRelationship', [predictedRelationship]);\n return store.rootState.api.backendInteractor.unmuteUser({\n id: id\n }).then(function (relationship) {\n return store.commit('updateUserRelationship', [relationship]);\n });\n};\nvar _hideReblogs = function hideReblogs(store, userId) {\n return store.rootState.api.backendInteractor.followUser({\n id: userId,\n reblogs: false\n }).then(function (relationship) {\n store.commit('updateUserRelationship', [relationship]);\n });\n};\nvar _showReblogs = function showReblogs(store, userId) {\n return store.rootState.api.backendInteractor.followUser({\n id: userId,\n reblogs: true\n }).then(function (relationship) {\n return store.commit('updateUserRelationship', [relationship]);\n });\n};\nvar _muteDomain = function muteDomain(store, domain) {\n return store.rootState.api.backendInteractor.muteDomain({\n domain: domain\n }).then(function () {\n return store.commit('addDomainMute', domain);\n });\n};\nvar _unmuteDomain = function unmuteDomain(store, domain) {\n return store.rootState.api.backendInteractor.unmuteDomain({\n domain: domain\n }).then(function () {\n return store.commit('removeDomainMute', domain);\n });\n};\nvar mutations = {\n tagUser: function tagUser(state, _ref2) {\n var id = _ref2.user.id,\n tag = _ref2.tag;\n var user = state.usersObject[id];\n var tags = user.tags || [];\n var newTags = tags.concat([tag]);\n user.tags = newTags;\n },\n untagUser: function untagUser(state, _ref3) {\n var id = _ref3.user.id,\n tag = _ref3.tag;\n var user = state.usersObject[id];\n var tags = user.tags || [];\n var newTags = tags.filter(function (t) {\n return t !== tag;\n });\n user.tags = newTags;\n },\n updateRight: function updateRight(state, _ref4) {\n var id = _ref4.user.id,\n right = _ref4.right,\n value = _ref4.value;\n var user = state.usersObject[id];\n var newRights = user.rights;\n newRights[right] = value;\n user.rights = newRights;\n },\n updateActivationStatus: function updateActivationStatus(state, _ref5) {\n var id = _ref5.user.id,\n deactivated = _ref5.deactivated;\n var user = state.usersObject[id];\n user.deactivated = deactivated;\n },\n setCurrentUser: function setCurrentUser(state, user) {\n state.lastLoginName = user.screen_name;\n state.currentUser = lodash_mergeWith__WEBPACK_IMPORTED_MODULE_8___default()(state.currentUser || {}, user, mergeArrayLength);\n },\n clearCurrentUser: function clearCurrentUser(state) {\n state.currentUser = false;\n state.lastLoginName = false;\n },\n beginLogin: function beginLogin(state) {\n state.loggingIn = true;\n },\n endLogin: function endLogin(state) {\n state.loggingIn = false;\n },\n saveFriendIds: function saveFriendIds(state, _ref6) {\n var id = _ref6.id,\n friendIds = _ref6.friendIds;\n var user = state.usersObject[id];\n user.friendIds = lodash_uniq__WEBPACK_IMPORTED_MODULE_5___default()(lodash_concat__WEBPACK_IMPORTED_MODULE_6___default()(user.friendIds || [], friendIds));\n },\n saveFollowerIds: function saveFollowerIds(state, _ref7) {\n var id = _ref7.id,\n followerIds = _ref7.followerIds;\n var user = state.usersObject[id];\n user.followerIds = lodash_uniq__WEBPACK_IMPORTED_MODULE_5___default()(lodash_concat__WEBPACK_IMPORTED_MODULE_6___default()(user.followerIds || [], followerIds));\n },\n // Because frontend doesn't have a reason to keep these stuff in memory\n // outside of viewing someones user profile.\n clearFriends: function clearFriends(state, userId) {\n var user = state.usersObject[userId];\n if (user) {\n user.friendIds = [];\n }\n },\n clearFollowers: function clearFollowers(state, userId) {\n var user = state.usersObject[userId];\n if (user) {\n user.followerIds = [];\n }\n },\n addNewUsers: function addNewUsers(state, users) {\n lodash_each__WEBPACK_IMPORTED_MODULE_9___default()(users, function (user) {\n if (user.relationship) {\n state.relationships[user.relationship.id] = user.relationship;\n }\n var res = mergeOrAdd(state.users, state.usersObject, user);\n var item = res.item;\n if (res[\"new\"] && item.screen_name && !item.screen_name.includes('@')) {\n state.usersByNameObject[item.screen_name.toLowerCase()] = item;\n }\n });\n },\n updateUserRelationship: function updateUserRelationship(state, relationships) {\n relationships.forEach(function (relationship) {\n state.relationships[relationship.id] = relationship;\n });\n },\n updateUserInLists: function updateUserInLists(state, _ref8) {\n var id = _ref8.id,\n inLists = _ref8.inLists;\n state.usersObject[id].inLists = inLists;\n },\n saveBlockIds: function saveBlockIds(state, blockIds) {\n state.currentUser.blockIds = blockIds;\n },\n addBlockId: function addBlockId(state, blockId) {\n if (state.currentUser.blockIds.indexOf(blockId) === -1) {\n state.currentUser.blockIds.push(blockId);\n }\n },\n setBlockIdsMaxId: function setBlockIdsMaxId(state, blockIdsMaxId) {\n state.currentUser.blockIdsMaxId = blockIdsMaxId;\n },\n saveMuteIds: function saveMuteIds(state, muteIds) {\n state.currentUser.muteIds = muteIds;\n },\n setMuteIdsMaxId: function setMuteIdsMaxId(state, muteIdsMaxId) {\n state.currentUser.muteIdsMaxId = muteIdsMaxId;\n },\n addMuteId: function addMuteId(state, muteId) {\n if (state.currentUser.muteIds.indexOf(muteId) === -1) {\n state.currentUser.muteIds.push(muteId);\n }\n },\n saveDomainMutes: function saveDomainMutes(state, domainMutes) {\n state.currentUser.domainMutes = domainMutes;\n },\n addDomainMute: function addDomainMute(state, domain) {\n if (state.currentUser.domainMutes.indexOf(domain) === -1) {\n state.currentUser.domainMutes.push(domain);\n }\n },\n removeDomainMute: function removeDomainMute(state, domain) {\n var index = state.currentUser.domainMutes.indexOf(domain);\n if (index !== -1) {\n state.currentUser.domainMutes.splice(index, 1);\n }\n },\n setPinnedToUser: function setPinnedToUser(state, status) {\n var user = state.usersObject[status.user.id];\n user.pinnedStatusIds = user.pinnedStatusIds || [];\n var index = user.pinnedStatusIds.indexOf(status.id);\n if (status.pinned && index === -1) {\n user.pinnedStatusIds.push(status.id);\n } else if (!status.pinned && index !== -1) {\n user.pinnedStatusIds.splice(index, 1);\n }\n },\n setUserForStatus: function setUserForStatus(state, status) {\n status.user = state.usersObject[status.user.id];\n },\n setUserForNotification: function setUserForNotification(state, notification) {\n if (notification.type !== 'follow') {\n notification.action.user = state.usersObject[notification.action.user.id];\n }\n notification.from_profile = state.usersObject[notification.from_profile.id];\n },\n setColor: function setColor(state, _ref9) {\n var id = _ref9.user.id,\n highlighted = _ref9.highlighted;\n var user = state.usersObject[id];\n user.highlight = highlighted;\n },\n signUpPending: function signUpPending(state) {\n state.signUpPending = true;\n state.signUpErrors = [];\n },\n signUpSuccess: function signUpSuccess(state) {\n state.signUpPending = false;\n },\n signUpFailure: function signUpFailure(state, errors) {\n state.signUpPending = false;\n state.signUpErrors = errors;\n }\n};\nvar getters = {\n findUser: function findUser(state) {\n return function (query) {\n return state.usersObject[query];\n };\n },\n findUserByName: function findUserByName(state) {\n return function (query) {\n return state.usersByNameObject[query.toLowerCase()];\n };\n },\n findUserByUrl: function findUserByUrl(state) {\n return function (query) {\n return state.users.find(function (u) {\n return u.statusnet_profile_url && u.statusnet_profile_url.toLowerCase() === query.toLowerCase();\n });\n };\n },\n relationship: function relationship(state) {\n return function (id) {\n var rel = id && state.relationships[id];\n return rel || {\n id: id,\n loading: true\n };\n };\n }\n};\nvar defaultState = {\n loggingIn: false,\n lastLoginName: false,\n currentUser: false,\n users: [],\n usersObject: {},\n usersByNameObject: {},\n signUpPending: false,\n signUpErrors: [],\n relationships: {}\n};\nvar users = {\n state: defaultState,\n mutations: mutations,\n getters: getters,\n actions: {\n fetchUserIfMissing: function fetchUserIfMissing(store, id) {\n if (!store.getters.findUser(id)) {\n store.dispatch('fetchUser', id);\n }\n },\n fetchUser: function fetchUser(store, id) {\n return store.rootState.api.backendInteractor.fetchUser({\n id: id\n }).then(function (user) {\n store.commit('addNewUsers', [user]);\n return user;\n });\n },\n fetchUserByName: function fetchUserByName(store, name) {\n return store.rootState.api.backendInteractor.fetchUserByName({\n name: name\n }).then(function (user) {\n store.commit('addNewUsers', [user]);\n return user;\n });\n },\n fetchUserRelationship: function fetchUserRelationship(store, id) {\n if (store.state.currentUser) {\n store.rootState.api.backendInteractor.fetchUserRelationship({\n id: id\n }).then(function (relationships) {\n return store.commit('updateUserRelationship', relationships);\n });\n }\n },\n fetchUserInLists: function fetchUserInLists(store, id) {\n if (store.state.currentUser) {\n store.rootState.api.backendInteractor.fetchUserInLists({\n id: id\n }).then(function (inLists) {\n return store.commit('updateUserInLists', {\n id: id,\n inLists: inLists\n });\n });\n }\n },\n fetchBlocks: function fetchBlocks(store, args) {\n var _ref10 = args || {},\n reset = _ref10.reset;\n var maxId = store.state.currentUser.blockIdsMaxId;\n return store.rootState.api.backendInteractor.fetchBlocks({\n maxId: maxId\n }).then(function (blocks) {\n if (reset) {\n store.commit('saveBlockIds', lodash_map__WEBPACK_IMPORTED_MODULE_10___default()(blocks, 'id'));\n } else {\n lodash_map__WEBPACK_IMPORTED_MODULE_10___default()(blocks, 'id').map(function (id) {\n return store.commit('addBlockId', id);\n });\n }\n if (blocks.length) {\n store.commit('setBlockIdsMaxId', lodash_last__WEBPACK_IMPORTED_MODULE_7___default()(blocks).id);\n }\n store.commit('addNewUsers', blocks);\n return blocks;\n });\n },\n blockUser: function blockUser(store, id) {\n return _blockUser(store, id);\n },\n unblockUser: function unblockUser(store, id) {\n return _unblockUser(store, id);\n },\n removeUserFromFollowers: function removeUserFromFollowers(store, id) {\n return _removeUserFromFollowers(store, id);\n },\n blockUsers: function blockUsers(store) {\n var ids = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];\n return Promise.all(ids.map(function (id) {\n return _blockUser(store, id);\n }));\n },\n unblockUsers: function unblockUsers(store) {\n var ids = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];\n return Promise.all(ids.map(function (id) {\n return _unblockUser(store, id);\n }));\n },\n editUserNote: function editUserNote(store, args) {\n return _editUserNote(store, args);\n },\n fetchMutes: function fetchMutes(store, args) {\n var _ref11 = args || {},\n reset = _ref11.reset;\n var maxId = store.state.currentUser.muteIdsMaxId;\n return store.rootState.api.backendInteractor.fetchMutes({\n maxId: maxId\n }).then(function (mutes) {\n if (reset) {\n store.commit('saveMuteIds', lodash_map__WEBPACK_IMPORTED_MODULE_10___default()(mutes, 'id'));\n } else {\n lodash_map__WEBPACK_IMPORTED_MODULE_10___default()(mutes, 'id').map(function (id) {\n return store.commit('addMuteId', id);\n });\n }\n if (mutes.length) {\n store.commit('setMuteIdsMaxId', lodash_last__WEBPACK_IMPORTED_MODULE_7___default()(mutes).id);\n }\n store.commit('addNewUsers', mutes);\n return mutes;\n });\n },\n muteUser: function muteUser(store, id) {\n return _muteUser(store, id);\n },\n unmuteUser: function unmuteUser(store, id) {\n return _unmuteUser(store, id);\n },\n hideReblogs: function hideReblogs(store, id) {\n return _hideReblogs(store, id);\n },\n showReblogs: function showReblogs(store, id) {\n return _showReblogs(store, id);\n },\n muteUsers: function muteUsers(store) {\n var ids = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];\n return Promise.all(ids.map(function (id) {\n return _muteUser(store, id);\n }));\n },\n unmuteUsers: function unmuteUsers(store) {\n var ids = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];\n return Promise.all(ids.map(function (id) {\n return _unmuteUser(store, id);\n }));\n },\n fetchDomainMutes: function fetchDomainMutes(store) {\n return store.rootState.api.backendInteractor.fetchDomainMutes().then(function (domainMutes) {\n store.commit('saveDomainMutes', domainMutes);\n return domainMutes;\n });\n },\n muteDomain: function muteDomain(store, domain) {\n return _muteDomain(store, domain);\n },\n unmuteDomain: function unmuteDomain(store, domain) {\n return _unmuteDomain(store, domain);\n },\n muteDomains: function muteDomains(store) {\n var domains = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];\n return Promise.all(domains.map(function (domain) {\n return _muteDomain(store, domain);\n }));\n },\n unmuteDomains: function unmuteDomains(store) {\n var domain = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];\n return Promise.all(domain.map(function (domain) {\n return _unmuteDomain(store, domain);\n }));\n },\n fetchFriends: function fetchFriends(_ref12, id) {\n var rootState = _ref12.rootState,\n commit = _ref12.commit;\n var user = rootState.users.usersObject[id];\n var maxId = lodash_last__WEBPACK_IMPORTED_MODULE_7___default()(user.friendIds);\n return rootState.api.backendInteractor.fetchFriends({\n id: id,\n maxId: maxId\n }).then(function (friends) {\n commit('addNewUsers', friends);\n commit('saveFriendIds', {\n id: id,\n friendIds: lodash_map__WEBPACK_IMPORTED_MODULE_10___default()(friends, 'id')\n });\n return friends;\n });\n },\n fetchFollowers: function fetchFollowers(_ref13, id) {\n var rootState = _ref13.rootState,\n commit = _ref13.commit;\n var user = rootState.users.usersObject[id];\n var maxId = lodash_last__WEBPACK_IMPORTED_MODULE_7___default()(user.followerIds);\n return rootState.api.backendInteractor.fetchFollowers({\n id: id,\n maxId: maxId\n }).then(function (followers) {\n commit('addNewUsers', followers);\n commit('saveFollowerIds', {\n id: id,\n followerIds: lodash_map__WEBPACK_IMPORTED_MODULE_10___default()(followers, 'id')\n });\n return followers;\n });\n },\n clearFriends: function clearFriends(_ref14, userId) {\n var commit = _ref14.commit;\n commit('clearFriends', userId);\n },\n clearFollowers: function clearFollowers(_ref15, userId) {\n var commit = _ref15.commit;\n commit('clearFollowers', userId);\n },\n subscribeUser: function subscribeUser(_ref16, id) {\n var rootState = _ref16.rootState,\n commit = _ref16.commit;\n return rootState.api.backendInteractor.subscribeUser({\n id: id\n }).then(function (relationship) {\n return commit('updateUserRelationship', [relationship]);\n });\n },\n unsubscribeUser: function unsubscribeUser(_ref17, id) {\n var rootState = _ref17.rootState,\n commit = _ref17.commit;\n return rootState.api.backendInteractor.unsubscribeUser({\n id: id\n }).then(function (relationship) {\n return commit('updateUserRelationship', [relationship]);\n });\n },\n toggleActivationStatus: function toggleActivationStatus(_ref18, _ref19) {\n var rootState = _ref18.rootState,\n commit = _ref18.commit;\n var user = _ref19.user;\n var api = user.deactivated ? rootState.api.backendInteractor.activateUser : rootState.api.backendInteractor.deactivateUser;\n api({\n user: user\n }).then(function (user) {\n var deactivated = !user.is_active;\n commit('updateActivationStatus', {\n user: user,\n deactivated: deactivated\n });\n });\n },\n registerPushNotifications: function registerPushNotifications(store) {\n var token = store.state.currentUser.credentials;\n var vapidPublicKey = store.rootState.instance.vapidPublicKey;\n var isEnabled = store.rootState.config.webPushNotifications;\n var notificationVisibility = store.rootState.config.notificationVisibility;\n (0,_services_push_push_js__WEBPACK_IMPORTED_MODULE_16__.registerPushNotifications)(isEnabled, vapidPublicKey, token, notificationVisibility);\n },\n unregisterPushNotifications: function unregisterPushNotifications(store) {\n var token = store.state.currentUser.credentials;\n (0,_services_push_push_js__WEBPACK_IMPORTED_MODULE_16__.unregisterPushNotifications)(token);\n },\n addNewUsers: function addNewUsers(_ref20, users) {\n var commit = _ref20.commit;\n commit('addNewUsers', users);\n },\n addNewStatuses: function addNewStatuses(store, _ref21) {\n var statuses = _ref21.statuses;\n var users = lodash_map__WEBPACK_IMPORTED_MODULE_10___default()(statuses, 'user');\n var retweetedUsers = lodash_compact__WEBPACK_IMPORTED_MODULE_11___default()(lodash_map__WEBPACK_IMPORTED_MODULE_10___default()(statuses, 'retweeted_status.user'));\n store.commit('addNewUsers', users);\n store.commit('addNewUsers', retweetedUsers);\n lodash_each__WEBPACK_IMPORTED_MODULE_9___default()(statuses, function (status) {\n // Reconnect users to statuses\n store.commit('setUserForStatus', status);\n // Set pinned statuses to user\n store.commit('setPinnedToUser', status);\n });\n lodash_each__WEBPACK_IMPORTED_MODULE_9___default()(lodash_compact__WEBPACK_IMPORTED_MODULE_11___default()(lodash_map__WEBPACK_IMPORTED_MODULE_10___default()(statuses, 'retweeted_status')), function (status) {\n // Reconnect users to retweets\n store.commit('setUserForStatus', status);\n // Set pinned retweets to user\n store.commit('setPinnedToUser', status);\n });\n },\n addNewNotifications: function addNewNotifications(store, _ref22) {\n var notifications = _ref22.notifications;\n var users = lodash_map__WEBPACK_IMPORTED_MODULE_10___default()(notifications, 'from_profile');\n var targetUsers = lodash_map__WEBPACK_IMPORTED_MODULE_10___default()(notifications, 'target').filter(function (_) {\n return _;\n });\n var notificationIds = notifications.map(function (_) {\n return _.id;\n });\n store.commit('addNewUsers', users);\n store.commit('addNewUsers', targetUsers);\n var notificationsObject = store.rootState.statuses.notifications.idStore;\n var relevantNotifications = Object.entries(notificationsObject).filter(function (_ref23) {\n var _ref24 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(_ref23, 2),\n k = _ref24[0],\n val = _ref24[1];\n return notificationIds.includes(k);\n }).map(function (_ref25) {\n var _ref26 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(_ref25, 2),\n k = _ref26[0],\n val = _ref26[1];\n return val;\n });\n\n // Reconnect users to notifications\n lodash_each__WEBPACK_IMPORTED_MODULE_9___default()(relevantNotifications, function (notification) {\n store.commit('setUserForNotification', notification);\n });\n },\n searchUsers: function searchUsers(_ref27, _ref28) {\n var rootState = _ref27.rootState,\n commit = _ref27.commit;\n var query = _ref28.query;\n return rootState.api.backendInteractor.searchUsers({\n query: query\n }).then(function (users) {\n commit('addNewUsers', users);\n return users;\n });\n },\n signUp: function signUp(store, userInfo) {\n return (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__[\"default\"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_12___default().mark(function _callee() {\n var rootState, data, errors;\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_12___default().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n store.commit('signUpPending');\n rootState = store.rootState;\n _context.prev = 2;\n _context.next = 5;\n return rootState.api.backendInteractor.register({\n params: _objectSpread({}, userInfo)\n });\n case 5:\n data = _context.sent;\n store.commit('signUpSuccess');\n store.commit('setToken', data.access_token);\n store.dispatch('loginUser', data.access_token);\n _context.next = 16;\n break;\n case 11:\n _context.prev = 11;\n _context.t0 = _context[\"catch\"](2);\n errors = _context.t0.message;\n store.commit('signUpFailure', errors);\n throw _context.t0;\n case 16:\n case \"end\":\n return _context.stop();\n }\n }, _callee, null, [[2, 11]]);\n }))();\n },\n getCaptcha: function getCaptcha(store) {\n return (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__[\"default\"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_12___default().mark(function _callee2() {\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_12___default().wrap(function _callee2$(_context2) {\n while (1) switch (_context2.prev = _context2.next) {\n case 0:\n return _context2.abrupt(\"return\", store.rootState.api.backendInteractor.getCaptcha());\n case 1:\n case \"end\":\n return _context2.stop();\n }\n }, _callee2);\n }))();\n },\n logout: function logout(store) {\n var _store$rootState = store.rootState,\n oauth = _store$rootState.oauth,\n instance = _store$rootState.instance;\n var data = _objectSpread(_objectSpread({}, oauth), {}, {\n commit: store.commit,\n instance: instance.server\n });\n return _services_new_api_oauth_js__WEBPACK_IMPORTED_MODULE_15__[\"default\"].getOrCreateApp(data).then(function (app) {\n var params = {\n app: app,\n instance: data.instance,\n token: oauth.userToken\n };\n return _services_new_api_oauth_js__WEBPACK_IMPORTED_MODULE_15__[\"default\"].revokeToken(params);\n }).then(function () {\n store.commit('clearCurrentUser');\n store.dispatch('disconnectFromSocket');\n store.commit('clearToken');\n store.dispatch('stopFetchingTimeline', 'friends');\n store.commit('setBackendInteractor', (0,_services_backend_interactor_service_backend_interactor_service_js__WEBPACK_IMPORTED_MODULE_13__[\"default\"])(store.getters.getToken()));\n store.dispatch('stopFetchingNotifications');\n store.dispatch('stopFetchingLists');\n store.dispatch('stopFetchingFollowRequests');\n store.commit('clearNotifications');\n store.commit('resetStatuses');\n store.dispatch('resetChats');\n store.dispatch('setLastTimeline', 'public-timeline');\n store.dispatch('setLayoutWidth', (0,_services_window_utils_window_utils__WEBPACK_IMPORTED_MODULE_14__.windowWidth)());\n store.dispatch('setLayoutHeight', (0,_services_window_utils_window_utils__WEBPACK_IMPORTED_MODULE_14__.windowHeight)());\n store.commit('clearServerSideStorage');\n });\n },\n loginUser: function loginUser(store, accessToken) {\n return new Promise(function (resolve, reject) {\n var commit = store.commit;\n var dispatch = store.dispatch;\n commit('beginLogin');\n store.rootState.api.backendInteractor.verifyCredentials(accessToken).then(function (data) {\n if (!data.error) {\n var user = data;\n // user.credentials = userCredentials\n user.credentials = accessToken;\n user.blockIds = [];\n user.muteIds = [];\n user.domainMutes = [];\n commit('setCurrentUser', user);\n commit('setServerSideStorage', user);\n commit('addNewUsers', [user]);\n dispatch('fetchEmoji');\n getNotificationPermission().then(function (permission) {\n return commit('setNotificationPermission', permission);\n });\n\n // Set our new backend interactor\n commit('setBackendInteractor', (0,_services_backend_interactor_service_backend_interactor_service_js__WEBPACK_IMPORTED_MODULE_13__[\"default\"])(accessToken));\n dispatch('pushServerSideStorage');\n if (user.token) {\n dispatch('setWsToken', user.token);\n\n // Initialize the shout socket.\n dispatch('initializeSocket');\n }\n var startPolling = function startPolling() {\n // Start getting fresh posts.\n dispatch('startFetchingTimeline', {\n timeline: 'friends'\n });\n\n // Start fetching notifications\n dispatch('startFetchingNotifications');\n\n // Start fetching chats\n dispatch('startFetchingChats');\n };\n dispatch('startFetchingLists');\n if (user.locked) {\n dispatch('startFetchingFollowRequests');\n }\n if (store.getters.mergedConfig.useStreamingApi) {\n dispatch('fetchTimeline', {\n timeline: 'friends',\n since: null\n });\n dispatch('fetchNotifications', {\n since: null\n });\n dispatch('enableMastoSockets', true)[\"catch\"](function (error) {\n console.error('Failed initializing MastoAPI Streaming socket', error);\n }).then(function () {\n dispatch('fetchChats', {\n latest: true\n });\n setTimeout(function () {\n return dispatch('setNotificationsSilence', false);\n }, 10000);\n });\n } else {\n startPolling();\n }\n\n // Get user mutes\n dispatch('fetchMutes');\n dispatch('setLayoutWidth', (0,_services_window_utils_window_utils__WEBPACK_IMPORTED_MODULE_14__.windowWidth)());\n dispatch('setLayoutHeight', (0,_services_window_utils_window_utils__WEBPACK_IMPORTED_MODULE_14__.windowHeight)());\n\n // Fetch our friends\n store.rootState.api.backendInteractor.fetchFriends({\n id: user.id\n }).then(function (friends) {\n return commit('addNewUsers', friends);\n });\n } else {\n var response = data.error;\n // Authentication failed\n commit('endLogin');\n\n // remove authentication token on client/authentication errors\n if ([400, 401, 403, 422].includes(response.status)) {\n commit('clearToken');\n }\n if (response.status === 401) {\n reject(new Error('Wrong username or password'));\n } else {\n reject(new Error('An error occurred, please try again'));\n }\n }\n commit('endLogin');\n resolve();\n })[\"catch\"](function (error) {\n console.log(error);\n commit('endLogin');\n reject(new Error('Failed to connect to server, try again'));\n });\n });\n }\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (users);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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LE1BQU0sQ0FBQyxJQUFJWSxLQUFLLENBQUMsd0NBQXdDLENBQUMsQ0FBQztRQUM3RCxDQUFDLENBQUM7TUFDTixDQUFDLENBQUM7SUFDSjtFQUNGO0FBQ0YsQ0FBQztBQUVELGlFQUFlaE0sS0FBSyIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvbW9kdWxlcy91c2Vycy5qcz82ZDAzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBiYWNrZW5kSW50ZXJhY3RvclNlcnZpY2UgZnJvbSAnLi4vc2VydmljZXMvYmFja2VuZF9pbnRlcmFjdG9yX3NlcnZpY2UvYmFja2VuZF9pbnRlcmFjdG9yX3NlcnZpY2UuanMnXG5pbXBvcnQgeyB3aW5kb3dXaWR0aCwgd2luZG93SGVpZ2h0IH0gZnJvbSAnLi4vc2VydmljZXMvd2luZG93X3V0aWxzL3dpbmRvd191dGlscydcbmltcG9ydCBvYXV0aEFwaSBmcm9tICcuLi9zZXJ2aWNlcy9uZXdfYXBpL29hdXRoLmpzJ1xuaW1wb3J0IHsgY29tcGFjdCwgbWFwLCBlYWNoLCBtZXJnZVdpdGgsIGxhc3QsIGNvbmNhdCwgdW5pcSwgaXNBcnJheSB9IGZyb20gJ2xvZGFzaCdcbmltcG9ydCB7IHJlZ2lzdGVyUHVzaE5vdGlmaWNhdGlvbnMsIHVucmVnaXN0ZXJQdXNoTm90aWZpY2F0aW9ucyB9IGZyb20gJy4uL3NlcnZpY2VzL3B1c2gvcHVzaC5qcydcblxuLy8gVE9ETzogVW5pZnkgd2l0aCBtZXJnZU9yQWRkIGluIHN0YXR1c2VzLmpzXG5leHBvcnQgY29uc3QgbWVyZ2VPckFkZCA9IChhcnIsIG9iaiwgaXRlbSkgPT4ge1xuICBpZiAoIWl0ZW0pIHsgcmV0dXJuIGZhbHNlIH1cbiAgY29uc3Qgb2xkSXRlbSA9IG9ialtpdGVtLmlkXVxuICBpZiAob2xkSXRlbSkge1xuICAgIC8vIFdlIGFscmVhZHkgaGF2ZSB0aGlzLCBzbyBvbmx5IG1lcmdlIHRoZSBuZXcgaW5mby5cbiAgICBtZXJnZVdpdGgob2xkSXRlbSwgaXRlbSwgbWVyZ2VBcnJheUxlbmd0aClcbiAgICByZXR1cm4geyBpdGVtOiBvbGRJdGVtLCBuZXc6IGZhbHNlIH1cbiAgfSBlbHNlIHtcbiAgICAvLyBUaGlzIGlzIGEgbmV3IGl0ZW0sIHByZXBhcmUgaXRcbiAgICBhcnIucHVzaChpdGVtKVxuICAgIG9ialtpdGVtLmlkXSA9IGl0ZW1cbiAgICByZXR1cm4geyBpdGVtLCBuZXc6IHRydWUgfVxuICB9XG59XG5cbmNvbnN0IG1lcmdlQXJyYXlMZW5ndGggPSAob2xkVmFsdWUsIG5ld1ZhbHVlKSA9PiB7XG4gIGlmIChpc0FycmF5KG9sZFZhbHVlKSAmJiBpc0FycmF5KG5ld1ZhbHVlKSkge1xuICAgIG9sZFZhbHVlLmxlbmd0aCA9IG5ld1ZhbHVlLmxlbmd0aFxuICAgIHJldHVybiBtZXJnZVdpdGgob2xkVmFsdWUsIG5ld1ZhbHVlLCBtZXJnZUFycmF5TGVuZ3RoKVxuICB9XG59XG5cbmNvbnN0IGdldE5vdGlmaWNhdGlvblBlcm1pc3Npb24gPSAoKSA9PiB7XG4gIGNvbnN0IE5vdGlmaWNhdGlvbiA9IHdpbmRvdy5Ob3RpZmljYXRpb25cblxuICBpZiAoIU5vdGlmaWNhdGlvbikgcmV0dXJuIFByb21pc2UucmVzb2x2ZShudWxsKVxuICBpZiAoTm90aWZpY2F0aW9uLnBlcm1pc3Npb24gPT09ICdkZWZhdWx0JykgcmV0dXJuIE5vdGlmaWNhdGlvbi5yZXF1ZXN0UGVybWlzc2lvbigpXG4gIHJldHVybiBQcm9taXNlLnJlc29sdmUoTm90aWZpY2F0aW9uLnBlcm1pc3Npb24pXG59XG5cbmNvbnN0IGJsb2NrVXNlciA9IChzdG9yZSwgaWQpID0+IHtcbiAgcmV0dXJuIHN0b3JlLnJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IuYmxvY2tVc2VyKHsgaWQgfSlcbiAgICAudGhlbigocmVsYXRpb25zaGlwKSA9PiB7XG4gICAgICBzdG9yZS5jb21taXQoJ3VwZGF0ZVVzZXJSZWxhdGlvbnNoaXAnLCBbcmVsYXRpb25zaGlwXSlcbiAgICAgIHN0b3JlLmNvbW1pdCgnYWRkQmxvY2tJZCcsIGlkKVxuICAgICAgc3RvcmUuY29tbWl0KCdyZW1vdmVTdGF0dXMnLCB7IHRpbWVsaW5lOiAnZnJpZW5kcycsIHVzZXJJZDogaWQgfSlcbiAgICAgIHN0b3JlLmNvbW1pdCgncmVtb3ZlU3RhdHVzJywgeyB0aW1lbGluZTogJ3B1YmxpYycsIHVzZXJJZDogaWQgfSlcbiAgICAgIHN0b3JlLmNvbW1pdCgncmVtb3ZlU3RhdHVzJywgeyB0aW1lbGluZTogJ3B1YmxpY0FuZEV4dGVybmFsJywgdXNlcklkOiBpZCB9KVxuICAgIH0pXG59XG5cbmNvbnN0IHVuYmxvY2tVc2VyID0gKHN0b3JlLCBpZCkgPT4ge1xuICByZXR1cm4gc3RvcmUucm9vdFN0YXRlLmFwaS5iYWNrZW5kSW50ZXJhY3Rvci51bmJsb2NrVXNlcih7IGlkIH0pXG4gICAgLnRoZW4oKHJlbGF0aW9uc2hpcCkgPT4gc3RvcmUuY29tbWl0KCd1cGRhdGVVc2VyUmVsYXRpb25zaGlwJywgW3JlbGF0aW9uc2hpcF0pKVxufVxuXG5jb25zdCByZW1vdmVVc2VyRnJvbUZvbGxvd2VycyA9IChzdG9yZSwgaWQpID0+IHtcbiAgcmV0dXJuIHN0b3JlLnJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IucmVtb3ZlVXNlckZyb21Gb2xsb3dlcnMoeyBpZCB9KVxuICAgIC50aGVuKChyZWxhdGlvbnNoaXApID0+IHN0b3JlLmNvbW1pdCgndXBkYXRlVXNlclJlbGF0aW9uc2hpcCcsIFtyZWxhdGlvbnNoaXBdKSlcbn1cblxuY29uc3QgZWRpdFVzZXJOb3RlID0gKHN0b3JlLCB7IGlkLCBjb21tZW50IH0pID0+IHtcbiAgcmV0dXJuIHN0b3JlLnJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IuZWRpdFVzZXJOb3RlKHsgaWQsIGNvbW1lbnQgfSlcbiAgICAudGhlbigocmVsYXRpb25zaGlwKSA9PiBzdG9yZS5jb21taXQoJ3VwZGF0ZVVzZXJSZWxhdGlvbnNoaXAnLCBbcmVsYXRpb25zaGlwXSkpXG59XG5cbmNvbnN0IG11dGVVc2VyID0gKHN0b3JlLCBhcmdzKSA9PiB7XG4gIGNvbnN0IGlkID0gdHlwZW9mIGFyZ3MgPT09ICdvYmplY3QnID8gYXJncy5pZCA6IGFyZ3NcbiAgY29uc3QgZXhwaXJlc0luID0gdHlwZW9mIGFyZ3MgPT09ICdvYmplY3QnID8gYXJncy5leHBpcmVzSW4gOiAwXG5cbiAgY29uc3QgcHJlZGljdGVkUmVsYXRpb25zaGlwID0gc3RvcmUuc3RhdGUucmVsYXRpb25zaGlwc1tpZF0gfHwgeyBpZCB9XG4gIHByZWRpY3RlZFJlbGF0aW9uc2hpcC5tdXRpbmcgPSB0cnVlXG4gIHN0b3JlLmNvbW1pdCgndXBkYXRlVXNlclJlbGF0aW9uc2hpcCcsIFtwcmVkaWN0ZWRSZWxhdGlvbnNoaXBdKVxuICBzdG9yZS5jb21taXQoJ2FkZE11dGVJZCcsIGlkKVxuXG4gIHJldHVybiBzdG9yZS5yb290U3RhdGUuYXBpLmJhY2tlbmRJbnRlcmFjdG9yLm11dGVVc2VyKHsgaWQsIGV4cGlyZXNJbiB9KVxuICAgIC50aGVuKChyZWxhdGlvbnNoaXApID0+IHtcbiAgICAgIHN0b3JlLmNvbW1pdCgndXBkYXRlVXNlclJlbGF0aW9uc2hpcCcsIFtyZWxhdGlvbnNoaXBdKVxuICAgICAgc3RvcmUuY29tbWl0KCdhZGRNdXRlSWQnLCBpZClcbiAgICB9KVxufVxuXG5jb25zdCB1bm11dGVVc2VyID0gKHN0b3JlLCBpZCkgPT4ge1xuICBjb25zdCBwcmVkaWN0ZWRSZWxhdGlvbnNoaXAgPSBzdG9yZS5zdGF0ZS5yZWxhdGlvbnNoaXBzW2lkXSB8fCB7IGlkIH1cbiAgcHJlZGljdGVkUmVsYXRpb25zaGlwLm11dGluZyA9IGZhbHNlXG4gIHN0b3JlLmNvbW1pdCgndXBkYXRlVXNlclJlbGF0aW9uc2hpcCcsIFtwcmVkaWN0ZWRSZWxhdGlvbnNoaXBdKVxuXG4gIHJldHVybiBzdG9yZS5yb290U3RhdGUuYXBpLmJhY2tlbmRJbnRlcmFjdG9yLnVubXV0ZVVzZXIoeyBpZCB9KVxuICAgIC50aGVuKChyZWxhdGlvbnNoaXApID0+IHN0b3JlLmNvbW1pdCgndXBkYXRlVXNlclJlbGF0aW9uc2hpcCcsIFtyZWxhdGlvbnNoaXBdKSlcbn1cblxuY29uc3QgaGlkZVJlYmxvZ3MgPSAoc3RvcmUsIHVzZXJJZCkgPT4ge1xuICByZXR1cm4gc3RvcmUucm9vdFN0YXRlLmFwaS5iYWNrZW5kSW50ZXJhY3Rvci5mb2xsb3dVc2VyKHsgaWQ6IHVzZXJJZCwgcmVibG9nczogZmFsc2UgfSlcbiAgICAudGhlbigocmVsYXRpb25zaGlwKSA9PiB7XG4gICAgICBzdG9yZS5jb21taXQoJ3VwZGF0ZVVzZXJSZWxhdGlvbnNoaXAnLCBbcmVsYXRpb25zaGlwXSlcbiAgICB9KVxufVxuXG5jb25zdCBzaG93UmVibG9ncyA9IChzdG9yZSwgdXNlcklkKSA9PiB7XG4gIHJldHVybiBzdG9yZS5yb290U3RhdGUuYXBpLmJhY2tlbmRJbnRlcmFjdG9yLmZvbGxvd1VzZXIoeyBpZDogdXNlcklkLCByZWJsb2dzOiB0cnVlIH0pXG4gICAgLnRoZW4oKHJlbGF0aW9uc2hpcCkgPT4gc3RvcmUuY29tbWl0KCd1cGRhdGVVc2VyUmVsYXRpb25zaGlwJywgW3JlbGF0aW9uc2hpcF0pKVxufVxuXG5jb25zdCBtdXRlRG9tYWluID0gKHN0b3JlLCBkb21haW4pID0+IHtcbiAgcmV0dXJuIHN0b3JlLnJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IubXV0ZURvbWFpbih7IGRvbWFpbiB9KVxuICAgIC50aGVuKCgpID0+IHN0b3JlLmNvbW1pdCgnYWRkRG9tYWluTXV0ZScsIGRvbWFpbikpXG59XG5cbmNvbnN0IHVubXV0ZURvbWFpbiA9IChzdG9yZSwgZG9tYWluKSA9PiB7XG4gIHJldHVybiBzdG9yZS5yb290U3RhdGUuYXBpLmJhY2tlbmRJbnRlcmFjdG9yLnVubXV0ZURvbWFpbih7IGRvbWFpbiB9KVxuICAgIC50aGVuKCgpID0+IHN0b3JlLmNvbW1pdCgncmVtb3ZlRG9tYWluTXV0ZScsIGRvbWFpbikpXG59XG5cbmV4cG9ydCBjb25zdCBtdXRhdGlvbnMgPSB7XG4gIHRhZ1VzZXIgKHN0YXRlLCB7IHVzZXI6IHsgaWQgfSwgdGFnIH0pIHtcbiAgICBjb25zdCB1c2VyID0gc3RhdGUudXNlcnNPYmplY3RbaWRdXG4gICAgY29uc3QgdGFncyA9IHVzZXIudGFncyB8fCBbXVxuICAgIGNvbnN0IG5ld1RhZ3MgPSB0YWdzLmNvbmNhdChbdGFnXSlcbiAgICB1c2VyLnRhZ3MgPSBuZXdUYWdzXG4gIH0sXG4gIHVudGFnVXNlciAoc3RhdGUsIHsgdXNlcjogeyBpZCB9LCB0YWcgfSkge1xuICAgIGNvbnN0IHVzZXIgPSBzdGF0ZS51c2Vyc09iamVjdFtpZF1cbiAgICBjb25zdCB0YWdzID0gdXNlci50YWdzIHx8IFtdXG4gICAgY29uc3QgbmV3VGFncyA9IHRhZ3MuZmlsdGVyKHQgPT4gdCAhPT0gdGFnKVxuICAgIHVzZXIudGFncyA9IG5ld1RhZ3NcbiAgfSxcbiAgdXBkYXRlUmlnaHQgKHN0YXRlLCB7IHVzZXI6IHsgaWQgfSwgcmlnaHQsIHZhbHVlIH0pIHtcbiAgICBjb25zdCB1c2VyID0gc3RhdGUudXNlcnNPYmplY3RbaWRdXG4gICAgY29uc3QgbmV3UmlnaHRzID0gdXNlci5yaWdodHNcbiAgICBuZXdSaWdodHNbcmlnaHRdID0gdmFsdWVcbiAgICB1c2VyLnJpZ2h0cyA9IG5ld1JpZ2h0c1xuICB9LFxuICB1cGRhdGVBY3RpdmF0aW9uU3RhdHVzIChzdGF0ZSwgeyB1c2VyOiB7IGlkIH0sIGRlYWN0aXZhdGVkIH0pIHtcbiAgICBjb25zdCB1c2VyID0gc3RhdGUudXNlcnNPYmplY3RbaWRdXG4gICAgdXNlci5kZWFjdGl2YXRlZCA9IGRlYWN0aXZhdGVkXG4gIH0sXG4gIHNldEN1cnJlbnRVc2VyIChzdGF0ZSwgdXNlcikge1xuICAgIHN0YXRlLmxhc3RMb2dpbk5hbWUgPSB1c2VyLnNjcmVlbl9uYW1lXG4gICAgc3RhdGUuY3VycmVudFVzZXIgPSBtZXJnZVdpdGgoc3RhdGUuY3VycmVudFVzZXIgfHwge30sIHVzZXIsIG1lcmdlQXJyYXlMZW5ndGgpXG4gIH0sXG4gIGNsZWFyQ3VycmVudFVzZXIgKHN0YXRlKSB7XG4gICAgc3RhdGUuY3VycmVudFVzZXIgPSBmYWxzZVxuICAgIHN0YXRlLmxhc3RMb2dpbk5hbWUgPSBmYWxzZVxuICB9LFxuICBiZWdpbkxvZ2luIChzdGF0ZSkge1xuICAgIHN0YXRlLmxvZ2dpbmdJbiA9IHRydWVcbiAgfSxcbiAgZW5kTG9naW4gKHN0YXRlKSB7XG4gICAgc3RhdGUubG9nZ2luZ0luID0gZmFsc2VcbiAgfSxcbiAgc2F2ZUZyaWVuZElkcyAoc3RhdGUsIHsgaWQsIGZyaWVuZElkcyB9KSB7XG4gICAgY29uc3QgdXNlciA9IHN0YXRlLnVzZXJzT2JqZWN0W2lkXVxuICAgIHVzZXIuZnJpZW5kSWRzID0gdW5pcShjb25jYXQodXNlci5mcmllbmRJZHMgfHwgW10sIGZyaWVuZElkcykpXG4gIH0sXG4gIHNhdmVGb2xsb3dlcklkcyAoc3RhdGUsIHsgaWQsIGZvbGxvd2VySWRzIH0pIHtcbiAgICBjb25zdCB1c2VyID0gc3RhdGUudXNlcnNPYmplY3RbaWRdXG4gICAgdXNlci5mb2xsb3dlcklkcyA9IHVuaXEoY29uY2F0KHVzZXIuZm9sbG93ZXJJZHMgfHwgW10sIGZvbGxvd2VySWRzKSlcbiAgfSxcbiAgLy8gQmVjYXVzZSBmcm9udGVuZCBkb2Vzbid0IGhhdmUgYSByZWFzb24gdG8ga2VlcCB0aGVzZSBzdHVmZiBpbiBtZW1vcnlcbiAgLy8gb3V0c2lkZSBvZiB2aWV3aW5nIHNvbWVvbmVzIHVzZXIgcHJvZmlsZS5cbiAgY2xlYXJGcmllbmRzIChzdGF0ZSwgdXNlcklkKSB7XG4gICAgY29uc3QgdXNlciA9IHN0YXRlLnVzZXJzT2JqZWN0W3VzZXJJZF1cbiAgICBpZiAodXNlcikge1xuICAgICAgdXNlci5mcmllbmRJZHMgPSBbXVxuICAgIH1cbiAgfSxcbiAgY2xlYXJGb2xsb3dlcnMgKHN0YXRlLCB1c2VySWQpIHtcbiAgICBjb25zdCB1c2VyID0gc3RhdGUudXNlcnNPYmplY3RbdXNlcklkXVxuICAgIGlmICh1c2VyKSB7XG4gICAgICB1c2VyLmZvbGxvd2VySWRzID0gW11cbiAgICB9XG4gIH0sXG4gIGFkZE5ld1VzZXJzIChzdGF0ZSwgdXNlcnMpIHtcbiAgICBlYWNoKHVzZXJzLCAodXNlcikgPT4ge1xuICAgICAgaWYgKHVzZXIucmVsYXRpb25zaGlwKSB7XG4gICAgICAgIHN0YXRlLnJlbGF0aW9uc2hpcHNbdXNlci5yZWxhdGlvbnNoaXAuaWRdID0gdXNlci5yZWxhdGlvbnNoaXBcbiAgICAgIH1cbiAgICAgIGNvbnN0IHJlcyA9IG1lcmdlT3JBZGQoc3RhdGUudXNlcnMsIHN0YXRlLnVzZXJzT2JqZWN0LCB1c2VyKVxuICAgICAgY29uc3QgaXRlbSA9IHJlcy5pdGVtXG4gICAgICBpZiAocmVzLm5ldyAmJiBpdGVtLnNjcmVlbl9uYW1lICYmICFpdGVtLnNjcmVlbl9uYW1lLmluY2x1ZGVzKCdAJykpIHtcbiAgICAgICAgc3RhdGUudXNlcnNCeU5hbWVPYmplY3RbaXRlbS5zY3JlZW5fbmFtZS50b0xvd2VyQ2FzZSgpXSA9IGl0ZW1cbiAgICAgIH1cbiAgICB9KVxuICB9LFxuICB1cGRhdGVVc2VyUmVsYXRpb25zaGlwIChzdGF0ZSwgcmVsYXRpb25zaGlwcykge1xuICAgIHJlbGF0aW9uc2hpcHMuZm9yRWFjaCgocmVsYXRpb25zaGlwKSA9PiB7XG4gICAgICBzdGF0ZS5yZWxhdGlvbnNoaXBzW3JlbGF0aW9uc2hpcC5pZF0gPSByZWxhdGlvbnNoaXBcbiAgICB9KVxuICB9LFxuICB1cGRhdGVVc2VySW5MaXN0cyAoc3RhdGUsIHsgaWQsIGluTGlzdHMgfSkge1xuICAgIHN0YXRlLnVzZXJzT2JqZWN0W2lkXS5pbkxpc3RzID0gaW5MaXN0c1xuICB9LFxuICBzYXZlQmxvY2tJZHMgKHN0YXRlLCBibG9ja0lkcykge1xuICAgIHN0YXRlLmN1cnJlbnRVc2VyLmJsb2NrSWRzID0gYmxvY2tJZHNcbiAgfSxcbiAgYWRkQmxvY2tJZCAoc3RhdGUsIGJsb2NrSWQpIHtcbiAgICBpZiAoc3RhdGUuY3VycmVudFVzZXIuYmxvY2tJZHMuaW5kZXhPZihibG9ja0lkKSA9PT0gLTEpIHtcbiAgICAgIHN0YXRlLmN1cnJlbnRVc2VyLmJsb2NrSWRzLnB1c2goYmxvY2tJZClcbiAgICB9XG4gIH0sXG4gIHNldEJsb2NrSWRzTWF4SWQgKHN0YXRlLCBibG9ja0lkc01heElkKSB7XG4gICAgc3RhdGUuY3VycmVudFVzZXIuYmxvY2tJZHNNYXhJZCA9IGJsb2NrSWRzTWF4SWRcbiAgfSxcbiAgc2F2ZU11dGVJZHMgKHN0YXRlLCBtdXRlSWRzKSB7XG4gICAgc3RhdGUuY3VycmVudFVzZXIubXV0ZUlkcyA9IG11dGVJZHNcbiAgfSxcbiAgc2V0TXV0ZUlkc01heElkIChzdGF0ZSwgbXV0ZUlkc01heElkKSB7XG4gICAgc3RhdGUuY3VycmVudFVzZXIubXV0ZUlkc01heElkID0gbXV0ZUlkc01heElkXG4gIH0sXG4gIGFkZE11dGVJZCAoc3RhdGUsIG11dGVJZCkge1xuICAgIGlmIChzdGF0ZS5jdXJyZW50VXNlci5tdXRlSWRzLmluZGV4T2YobXV0ZUlkKSA9PT0gLTEpIHtcbiAgICAgIHN0YXRlLmN1cnJlbnRVc2VyLm11dGVJZHMucHVzaChtdXRlSWQpXG4gICAgfVxuICB9LFxuICBzYXZlRG9tYWluTXV0ZXMgKHN0YXRlLCBkb21haW5NdXRlcykge1xuICAgIHN0YXRlLmN1cnJlbnRVc2VyLmRvbWFpbk11dGVzID0gZG9tYWluTXV0ZXNcbiAgfSxcbiAgYWRkRG9tYWluTXV0ZSAoc3RhdGUsIGRvbWFpbikge1xuICAgIGlmIChzdGF0ZS5jdXJyZW50VXNlci5kb21haW5NdXRlcy5pbmRleE9mKGRvbWFpbikgPT09IC0xKSB7XG4gICAgICBzdGF0ZS5jdXJyZW50VXNlci5kb21haW5NdXRlcy5wdXNoKGRvbWFpbilcbiAgICB9XG4gIH0sXG4gIHJlbW92ZURvbWFpbk11dGUgKHN0YXRlLCBkb21haW4pIHtcbiAgICBjb25zdCBpbmRleCA9IHN0YXRlLmN1cnJlbnRVc2VyLmRvbWFpbk11dGVzLmluZGV4T2YoZG9tYWluKVxuICAgIGlmIChpbmRleCAhPT0gLTEpIHtcbiAgICAgIHN0YXRlLmN1cnJlbnRVc2VyLmRvbWFpbk11dGVzLnNwbGljZShpbmRleCwgMSlcbiAgICB9XG4gIH0sXG4gIHNldFBpbm5lZFRvVXNlciAoc3RhdGUsIHN0YXR1cykge1xuICAgIGNvbnN0IHVzZXIgPSBzdGF0ZS51c2Vyc09iamVjdFtzdGF0dXMudXNlci5pZF1cbiAgICB1c2VyLnBpbm5lZFN0YXR1c0lkcyA9IHVzZXIucGlubmVkU3RhdHVzSWRzIHx8IFtdXG4gICAgY29uc3QgaW5kZXggPSB1c2VyLnBpbm5lZFN0YXR1c0lkcy5pbmRleE9mKHN0YXR1cy5pZClcblxuICAgIGlmIChzdGF0dXMucGlubmVkICYmIGluZGV4ID09PSAtMSkge1xuICAgICAgdXNlci5waW5uZWRTdGF0dXNJZHMucHVzaChzdGF0dXMuaWQpXG4gICAgfSBlbHNlIGlmICghc3RhdHVzLnBpbm5lZCAmJiBpbmRleCAhPT0gLTEpIHtcbiAgICAgIHVzZXIucGlubmVkU3RhdHVzSWRzLnNwbGljZShpbmRleCwgMSlcbiAgICB9XG4gIH0sXG4gIHNldFVzZXJGb3JTdGF0dXMgKHN0YXRlLCBzdGF0dXMpIHtcbiAgICBzdGF0dXMudXNlciA9IHN0YXRlLnVzZXJzT2JqZWN0W3N0YXR1cy51c2VyLmlkXVxuICB9LFxuICBzZXRVc2VyRm9yTm90aWZpY2F0aW9uIChzdGF0ZSwgbm90aWZpY2F0aW9uKSB7XG4gICAgaWYgKG5vdGlmaWNhdGlvbi50eXBlICE9PSAnZm9sbG93Jykge1xuICAgICAgbm90aWZpY2F0aW9uLmFjdGlvbi51c2VyID0gc3RhdGUudXNlcnNPYmplY3Rbbm90aWZpY2F0aW9uLmFjdGlvbi51c2VyLmlkXVxuICAgIH1cbiAgICBub3RpZmljYXRpb24uZnJvbV9wcm9maWxlID0gc3RhdGUudXNlcnNPYmplY3Rbbm90aWZpY2F0aW9uLmZyb21fcHJvZmlsZS5pZF1cbiAgfSxcbiAgc2V0Q29sb3IgKHN0YXRlLCB7IHVzZXI6IHsgaWQgfSwgaGlnaGxpZ2h0ZWQgfSkge1xuICAgIGNvbnN0IHVzZXIgPSBzdGF0ZS51c2Vyc09iamVjdFtpZF1cbiAgICB1c2VyLmhpZ2hsaWdodCA9IGhpZ2hsaWdodGVkXG4gIH0sXG4gIHNpZ25VcFBlbmRpbmcgKHN0YXRlKSB7XG4gICAgc3RhdGUuc2lnblVwUGVuZGluZyA9IHRydWVcbiAgICBzdGF0ZS5zaWduVXBFcnJvcnMgPSBbXVxuICB9LFxuICBzaWduVXBTdWNjZXNzIChzdGF0ZSkge1xuICAgIHN0YXRlLnNpZ25VcFBlbmRpbmcgPSBmYWxzZVxuICB9LFxuICBzaWduVXBGYWlsdXJlIChzdGF0ZSwgZXJyb3JzKSB7XG4gICAgc3RhdGUuc2lnblVwUGVuZGluZyA9IGZhbHNlXG4gICAgc3RhdGUuc2lnblVwRXJyb3JzID0gZXJyb3JzXG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IGdldHRlcnMgPSB7XG4gIGZpbmRVc2VyOiBzdGF0ZSA9PiBxdWVyeSA9PiB7XG4gICAgcmV0dXJuIHN0YXRlLnVzZXJzT2JqZWN0W3F1ZXJ5XVxuICB9LFxuICBmaW5kVXNlckJ5TmFtZTogc3RhdGUgPT4gcXVlcnkgPT4ge1xuICAgIHJldHVybiBzdGF0ZS51c2Vyc0J5TmFtZU9iamVjdFtxdWVyeS50b0xvd2VyQ2FzZSgpXVxuICB9LFxuICBmaW5kVXNlckJ5VXJsOiBzdGF0ZSA9PiBxdWVyeSA9PiB7XG4gICAgcmV0dXJuIHN0YXRlLnVzZXJzXG4gICAgICAuZmluZCh1ID0+IHUuc3RhdHVzbmV0X3Byb2ZpbGVfdXJsICYmXG4gICAgICAgICAgICB1LnN0YXR1c25ldF9wcm9maWxlX3VybC50b0xvd2VyQ2FzZSgpID09PSBxdWVyeS50b0xvd2VyQ2FzZSgpKVxuICB9LFxuICByZWxhdGlvbnNoaXA6IHN0YXRlID0+IGlkID0+IHtcbiAgICBjb25zdCByZWwgPSBpZCAmJiBzdGF0ZS5yZWxhdGlvbnNoaXBzW2lkXVxuICAgIHJldHVybiByZWwgfHwgeyBpZCwgbG9hZGluZzogdHJ1ZSB9XG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IGRlZmF1bHRTdGF0ZSA9IHtcbiAgbG9nZ2luZ0luOiBmYWxzZSxcbiAgbGFzdExvZ2luTmFtZTogZmFsc2UsXG4gIGN1cnJlbnRVc2VyOiBmYWxzZSxcbiAgdXNlcnM6IFtdLFxuICB1c2Vyc09iamVjdDoge30sXG4gIHVzZXJzQnlOYW1lT2JqZWN0OiB7fSxcbiAgc2lnblVwUGVuZGluZzogZmFsc2UsXG4gIHNpZ25VcEVycm9yczogW10sXG4gIHJlbGF0aW9uc2hpcHM6IHt9XG59XG5cbmNvbnN0IHVzZXJzID0ge1xuICBzdGF0ZTogZGVmYXVsdFN0YXRlLFxuICBtdXRhdGlvbnMsXG4gIGdldHRlcnMsXG4gIGFjdGlvbnM6IHtcbiAgICBmZXRjaFVzZXJJZk1pc3NpbmcgKHN0b3JlLCBpZCkge1xuICAgICAgaWYgKCFzdG9yZS5nZXR0ZXJzLmZpbmRVc2VyKGlkKSkge1xuICAgICAgICBzdG9yZS5kaXNwYXRjaCgnZmV0Y2hVc2VyJywgaWQpXG4gICAgICB9XG4gICAgfSxcbiAgICBmZXRjaFVzZXIgKHN0b3JlLCBpZCkge1xuICAgICAgcmV0dXJuIHN0b3JlLnJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IuZmV0Y2hVc2VyKHsgaWQgfSlcbiAgICAgICAgLnRoZW4oKHVzZXIpID0+IHtcbiAgICAgICAgICBzdG9yZS5jb21taXQoJ2FkZE5ld1VzZXJzJywgW3VzZXJdKVxuICAgICAgICAgIHJldHVybiB1c2VyXG4gICAgICAgIH0pXG4gICAgfSxcbiAgICBmZXRjaFVzZXJCeU5hbWUgKHN0b3JlLCBuYW1lKSB7XG4gICAgICByZXR1cm4gc3RvcmUucm9vdFN0YXRlLmFwaS5iYWNrZW5kSW50ZXJhY3Rvci5mZXRjaFVzZXJCeU5hbWUoeyBuYW1lIH0pXG4gICAgICAgIC50aGVuKCh1c2VyKSA9PiB7XG4gICAgICAgICAgc3RvcmUuY29tbWl0KCdhZGROZXdVc2VycycsIFt1c2VyXSlcbiAgICAgICAgICByZXR1cm4gdXNlclxuICAgICAgICB9KVxuICAgIH0sXG4gICAgZmV0Y2hVc2VyUmVsYXRpb25zaGlwIChzdG9yZSwgaWQpIHtcbiAgICAgIGlmIChzdG9yZS5zdGF0ZS5jdXJyZW50VXNlcikge1xuICAgICAgICBzdG9yZS5yb290U3RhdGUuYXBpLmJhY2tlbmRJbnRlcmFjdG9yLmZldGNoVXNlclJlbGF0aW9uc2hpcCh7IGlkIH0pXG4gICAgICAgICAgLnRoZW4oKHJlbGF0aW9uc2hpcHMpID0+IHN0b3JlLmNvbW1pdCgndXBkYXRlVXNlclJlbGF0aW9uc2hpcCcsIHJlbGF0aW9uc2hpcHMpKVxuICAgICAgfVxuICAgIH0sXG4gICAgZmV0Y2hVc2VySW5MaXN0cyAoc3RvcmUsIGlkKSB7XG4gICAgICBpZiAoc3RvcmUuc3RhdGUuY3VycmVudFVzZXIpIHtcbiAgICAgICAgc3RvcmUucm9vdFN0YXRlLmFwaS5iYWNrZW5kSW50ZXJhY3Rvci5mZXRjaFVzZXJJbkxpc3RzKHsgaWQgfSlcbiAgICAgICAgICAudGhlbigoaW5MaXN0cykgPT4gc3RvcmUuY29tbWl0KCd1cGRhdGVVc2VySW5MaXN0cycsIHsgaWQsIGluTGlzdHMgfSkpXG4gICAgICB9XG4gICAgfSxcbiAgICBmZXRjaEJsb2NrcyAoc3RvcmUsIGFyZ3MpIHtcbiAgICAgIGNvbnN0IHsgcmVzZXQgfSA9IGFyZ3MgfHwge31cblxuICAgICAgY29uc3QgbWF4SWQgPSBzdG9yZS5zdGF0ZS5jdXJyZW50VXNlci5ibG9ja0lkc01heElkXG4gICAgICByZXR1cm4gc3RvcmUucm9vdFN0YXRlLmFwaS5iYWNrZW5kSW50ZXJhY3Rvci5mZXRjaEJsb2Nrcyh7IG1heElkIH0pXG4gICAgICAgIC50aGVuKChibG9ja3MpID0+IHtcbiAgICAgICAgICBpZiAocmVzZXQpIHtcbiAgICAgICAgICAgIHN0b3JlLmNvbW1pdCgnc2F2ZUJsb2NrSWRzJywgbWFwKGJsb2NrcywgJ2lkJykpXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG1hcChibG9ja3MsICdpZCcpLm1hcChpZCA9PiBzdG9yZS5jb21taXQoJ2FkZEJsb2NrSWQnLCBpZCkpXG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChibG9ja3MubGVuZ3RoKSB7XG4gICAgICAgICAgICBzdG9yZS5jb21taXQoJ3NldEJsb2NrSWRzTWF4SWQnLCBsYXN0KGJsb2NrcykuaWQpXG4gICAgICAgICAgfVxuICAgICAgICAgIHN0b3JlLmNvbW1pdCgnYWRkTmV3VXNlcnMnLCBibG9ja3MpXG4gICAgICAgICAgcmV0dXJuIGJsb2Nrc1xuICAgICAgICB9KVxuICAgIH0sXG4gICAgYmxvY2tVc2VyIChzdG9yZSwgaWQpIHtcbiAgICAgIHJldHVybiBibG9ja1VzZXIoc3RvcmUsIGlkKVxuICAgIH0sXG4gICAgdW5ibG9ja1VzZXIgKHN0b3JlLCBpZCkge1xuICAgICAgcmV0dXJuIHVuYmxvY2tVc2VyKHN0b3JlLCBpZClcbiAgICB9LFxuICAgIHJlbW92ZVVzZXJGcm9tRm9sbG93ZXJzIChzdG9yZSwgaWQpIHtcbiAgICAgIHJldHVybiByZW1vdmVVc2VyRnJvbUZvbGxvd2VycyhzdG9yZSwgaWQpXG4gICAgfSxcbiAgICBibG9ja1VzZXJzIChzdG9yZSwgaWRzID0gW10pIHtcbiAgICAgIHJldHVybiBQcm9taXNlLmFsbChpZHMubWFwKGlkID0+IGJsb2NrVXNlcihzdG9yZSwgaWQpKSlcbiAgICB9LFxuICAgIHVuYmxvY2tVc2VycyAoc3RvcmUsIGlkcyA9IFtdKSB7XG4gICAgICByZXR1cm4gUHJvbWlzZS5hbGwoaWRzLm1hcChpZCA9PiB1bmJsb2NrVXNlcihzdG9yZSwgaWQpKSlcbiAgICB9LFxuICAgIGVkaXRVc2VyTm90ZSAoc3RvcmUsIGFyZ3MpIHtcbiAgICAgIHJldHVybiBlZGl0VXNlck5vdGUoc3RvcmUsIGFyZ3MpXG4gICAgfSxcbiAgICBmZXRjaE11dGVzIChzdG9yZSwgYXJncykge1xuICAgICAgY29uc3QgeyByZXNldCB9ID0gYXJncyB8fCB7fVxuXG4gICAgICBjb25zdCBtYXhJZCA9IHN0b3JlLnN0YXRlLmN1cnJlbnRVc2VyLm11dGVJZHNNYXhJZFxuICAgICAgcmV0dXJuIHN0b3JlLnJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IuZmV0Y2hNdXRlcyh7IG1heElkIH0pXG4gICAgICAgIC50aGVuKChtdXRlcykgPT4ge1xuICAgICAgICAgIGlmIChyZXNldCkge1xuICAgICAgICAgICAgc3RvcmUuY29tbWl0KCdzYXZlTXV0ZUlkcycsIG1hcChtdXRlcywgJ2lkJykpXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG1hcChtdXRlcywgJ2lkJykubWFwKGlkID0+IHN0b3JlLmNvbW1pdCgnYWRkTXV0ZUlkJywgaWQpKVxuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAobXV0ZXMubGVuZ3RoKSB7XG4gICAgICAgICAgICBzdG9yZS5jb21taXQoJ3NldE11dGVJZHNNYXhJZCcsIGxhc3QobXV0ZXMpLmlkKVxuICAgICAgICAgIH1cbiAgICAgICAgICBzdG9yZS5jb21taXQoJ2FkZE5ld1VzZXJzJywgbXV0ZXMpXG4gICAgICAgICAgcmV0dXJuIG11dGVzXG4gICAgICAgIH0pXG4gICAgfSxcbiAgICBtdXRlVXNlciAoc3RvcmUsIGlkKSB7XG4gICAgICByZXR1cm4gbXV0ZVVzZXIoc3RvcmUsIGlkKVxuICAgIH0sXG4gICAgdW5tdXRlVXNlciAoc3RvcmUsIGlkKSB7XG4gICAgICByZXR1cm4gdW5tdXRlVXNlcihzdG9yZSwgaWQpXG4gICAgfSxcbiAgICBoaWRlUmVibG9ncyAoc3RvcmUsIGlkKSB7XG4gICAgICByZXR1cm4gaGlkZVJlYmxvZ3Moc3RvcmUsIGlkKVxuICAgIH0sXG4gICAgc2hvd1JlYmxvZ3MgKHN0b3JlLCBpZCkge1xuICAgICAgcmV0dXJuIHNob3dSZWJsb2dzKHN0b3JlLCBpZClcbiAgICB9LFxuICAgIG11dGVVc2VycyAoc3RvcmUsIGlkcyA9IFtdKSB7XG4gICAgICByZXR1cm4gUHJvbWlzZS5hbGwoaWRzLm1hcChpZCA9PiBtdXRlVXNlcihzdG9yZSwgaWQpKSlcbiAgICB9LFxuICAgIHVubXV0ZVVzZXJzIChzdG9yZSwgaWRzID0gW10pIHtcbiAgICAgIHJldHVybiBQcm9taXNlLmFsbChpZHMubWFwKGlkID0+IHVubXV0ZVVzZXIoc3RvcmUsIGlkKSkpXG4gICAgfSxcbiAgICBmZXRjaERvbWFpbk11dGVzIChzdG9yZSkge1xuICAgICAgcmV0dXJuIHN0b3JlLnJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IuZmV0Y2hEb21haW5NdXRlcygpXG4gICAgICAgIC50aGVuKChkb21haW5NdXRlcykgPT4ge1xuICAgICAgICAgIHN0b3JlLmNvbW1pdCgnc2F2ZURvbWFpbk11dGVzJywgZG9tYWluTXV0ZXMpXG4gICAgICAgICAgcmV0dXJuIGRvbWFpbk11dGVzXG4gICAgICAgIH0pXG4gICAgfSxcbiAgICBtdXRlRG9tYWluIChzdG9yZSwgZG9tYWluKSB7XG4gICAgICByZXR1cm4gbXV0ZURvbWFpbihzdG9yZSwgZG9tYWluKVxuICAgIH0sXG4gICAgdW5tdXRlRG9tYWluIChzdG9yZSwgZG9tYWluKSB7XG4gICAgICByZXR1cm4gdW5tdXRlRG9tYWluKHN0b3JlLCBkb21haW4pXG4gICAgfSxcbiAgICBtdXRlRG9tYWlucyAoc3RvcmUsIGRvbWFpbnMgPSBbXSkge1xuICAgICAgcmV0dXJuIFByb21pc2UuYWxsKGRvbWFpbnMubWFwKGRvbWFpbiA9PiBtdXRlRG9tYWluKHN0b3JlLCBkb21haW4pKSlcbiAgICB9LFxuICAgIHVubXV0ZURvbWFpbnMgKHN0b3JlLCBkb21haW4gPSBbXSkge1xuICAgICAgcmV0dXJuIFByb21pc2UuYWxsKGRvbWFpbi5tYXAoZG9tYWluID0+IHVubXV0ZURvbWFpbihzdG9yZSwgZG9tYWluKSkpXG4gICAgfSxcbiAgICBmZXRjaEZyaWVuZHMgKHsgcm9vdFN0YXRlLCBjb21taXQgfSwgaWQpIHtcbiAgICAgIGNvbnN0IHVzZXIgPSByb290U3RhdGUudXNlcnMudXNlcnNPYmplY3RbaWRdXG4gICAgICBjb25zdCBtYXhJZCA9IGxhc3QodXNlci5mcmllbmRJZHMpXG4gICAgICByZXR1cm4gcm9vdFN0YXRlLmFwaS5iYWNrZW5kSW50ZXJhY3Rvci5mZXRjaEZyaWVuZHMoeyBpZCwgbWF4SWQgfSlcbiAgICAgICAgLnRoZW4oKGZyaWVuZHMpID0+IHtcbiAgICAgICAgICBjb21taXQoJ2FkZE5ld1VzZXJzJywgZnJpZW5kcylcbiAgICAgICAgICBjb21taXQoJ3NhdmVGcmllbmRJZHMnLCB7IGlkLCBmcmllbmRJZHM6IG1hcChmcmllbmRzLCAnaWQnKSB9KVxuICAgICAgICAgIHJldHVybiBmcmllbmRzXG4gICAgICAgIH0pXG4gICAgfSxcbiAgICBmZXRjaEZvbGxvd2VycyAoeyByb290U3RhdGUsIGNvbW1pdCB9LCBpZCkge1xuICAgICAgY29uc3QgdXNlciA9IHJvb3RTdGF0ZS51c2Vycy51c2Vyc09iamVjdFtpZF1cbiAgICAgIGNvbnN0IG1heElkID0gbGFzdCh1c2VyLmZvbGxvd2VySWRzKVxuICAgICAgcmV0dXJuIHJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IuZmV0Y2hGb2xsb3dlcnMoeyBpZCwgbWF4SWQgfSlcbiAgICAgICAgLnRoZW4oKGZvbGxvd2VycykgPT4ge1xuICAgICAgICAgIGNvbW1pdCgnYWRkTmV3VXNlcnMnLCBmb2xsb3dlcnMpXG4gICAgICAgICAgY29tbWl0KCdzYXZlRm9sbG93ZXJJZHMnLCB7IGlkLCBmb2xsb3dlcklkczogbWFwKGZvbGxvd2VycywgJ2lkJykgfSlcbiAgICAgICAgICByZXR1cm4gZm9sbG93ZXJzXG4gICAgICAgIH0pXG4gICAgfSxcbiAgICBjbGVhckZyaWVuZHMgKHsgY29tbWl0IH0sIHVzZXJJZCkge1xuICAgICAgY29tbWl0KCdjbGVhckZyaWVuZHMnLCB1c2VySWQpXG4gICAgfSxcbiAgICBjbGVhckZvbGxvd2VycyAoeyBjb21taXQgfSwgdXNlcklkKSB7XG4gICAgICBjb21taXQoJ2NsZWFyRm9sbG93ZXJzJywgdXNlcklkKVxuICAgIH0sXG4gICAgc3Vic2NyaWJlVXNlciAoeyByb290U3RhdGUsIGNvbW1pdCB9LCBpZCkge1xuICAgICAgcmV0dXJuIHJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3Iuc3Vic2NyaWJlVXNlcih7IGlkIH0pXG4gICAgICAgIC50aGVuKChyZWxhdGlvbnNoaXApID0+IGNvbW1pdCgndXBkYXRlVXNlclJlbGF0aW9uc2hpcCcsIFtyZWxhdGlvbnNoaXBdKSlcbiAgICB9LFxuICAgIHVuc3Vic2NyaWJlVXNlciAoeyByb290U3RhdGUsIGNvbW1pdCB9LCBpZCkge1xuICAgICAgcmV0dXJuIHJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IudW5zdWJzY3JpYmVVc2VyKHsgaWQgfSlcbiAgICAgICAgLnRoZW4oKHJlbGF0aW9uc2hpcCkgPT4gY29tbWl0KCd1cGRhdGVVc2VyUmVsYXRpb25zaGlwJywgW3JlbGF0aW9uc2hpcF0pKVxuICAgIH0sXG4gICAgdG9nZ2xlQWN0aXZhdGlvblN0YXR1cyAoeyByb290U3RhdGUsIGNvbW1pdCB9LCB7IHVzZXIgfSkge1xuICAgICAgY29uc3QgYXBpID0gdXNlci5kZWFjdGl2YXRlZCA/IHJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IuYWN0aXZhdGVVc2VyIDogcm9vdFN0YXRlLmFwaS5iYWNrZW5kSW50ZXJhY3Rvci5kZWFjdGl2YXRlVXNlclxuICAgICAgYXBpKHsgdXNlciB9KVxuICAgICAgICAudGhlbigodXNlcikgPT4geyBjb25zdCBkZWFjdGl2YXRlZCA9ICF1c2VyLmlzX2FjdGl2ZTsgY29tbWl0KCd1cGRhdGVBY3RpdmF0aW9uU3RhdHVzJywgeyB1c2VyLCBkZWFjdGl2YXRlZCB9KSB9KVxuICAgIH0sXG4gICAgcmVnaXN0ZXJQdXNoTm90aWZpY2F0aW9ucyAoc3RvcmUpIHtcbiAgICAgIGNvbnN0IHRva2VuID0gc3RvcmUuc3RhdGUuY3VycmVudFVzZXIuY3JlZGVudGlhbHNcbiAgICAgIGNvbnN0IHZhcGlkUHVibGljS2V5ID0gc3RvcmUucm9vdFN0YXRlLmluc3RhbmNlLnZhcGlkUHVibGljS2V5XG4gICAgICBjb25zdCBpc0VuYWJsZWQgPSBzdG9yZS5yb290U3RhdGUuY29uZmlnLndlYlB1c2hOb3RpZmljYXRpb25zXG4gICAgICBjb25zdCBub3RpZmljYXRpb25WaXNpYmlsaXR5ID0gc3RvcmUucm9vdFN0YXRlLmNvbmZpZy5ub3RpZmljYXRpb25WaXNpYmlsaXR5XG5cbiAgICAgIHJlZ2lzdGVyUHVzaE5vdGlmaWNhdGlvbnMoaXNFbmFibGVkLCB2YXBpZFB1YmxpY0tleSwgdG9rZW4sIG5vdGlmaWNhdGlvblZpc2liaWxpdHkpXG4gICAgfSxcbiAgICB1bnJlZ2lzdGVyUHVzaE5vdGlmaWNhdGlvbnMgKHN0b3JlKSB7XG4gICAgICBjb25zdCB0b2tlbiA9IHN0b3JlLnN0YXRlLmN1cnJlbnRVc2VyLmNyZWRlbnRpYWxzXG5cbiAgICAgIHVucmVnaXN0ZXJQdXNoTm90aWZpY2F0aW9ucyh0b2tlbilcbiAgICB9LFxuICAgIGFkZE5ld1VzZXJzICh7IGNvbW1pdCB9LCB1c2Vycykge1xuICAgICAgY29tbWl0KCdhZGROZXdVc2VycycsIHVzZXJzKVxuICAgIH0sXG4gICAgYWRkTmV3U3RhdHVzZXMgKHN0b3JlLCB7IHN0YXR1c2VzIH0pIHtcbiAgICAgIGNvbnN0IHVzZXJzID0gbWFwKHN0YXR1c2VzLCAndXNlcicpXG4gICAgICBjb25zdCByZXR3ZWV0ZWRVc2VycyA9IGNvbXBhY3QobWFwKHN0YXR1c2VzLCAncmV0d2VldGVkX3N0YXR1cy51c2VyJykpXG4gICAgICBzdG9yZS5jb21taXQoJ2FkZE5ld1VzZXJzJywgdXNlcnMpXG4gICAgICBzdG9yZS5jb21taXQoJ2FkZE5ld1VzZXJzJywgcmV0d2VldGVkVXNlcnMpXG5cbiAgICAgIGVhY2goc3RhdHVzZXMsIChzdGF0dXMpID0+IHtcbiAgICAgICAgLy8gUmVjb25uZWN0IHVzZXJzIHRvIHN0YXR1c2VzXG4gICAgICAgIHN0b3JlLmNvbW1pdCgnc2V0VXNlckZvclN0YXR1cycsIHN0YXR1cylcbiAgICAgICAgLy8gU2V0IHBpbm5lZCBzdGF0dXNlcyB0byB1c2VyXG4gICAgICAgIHN0b3JlLmNvbW1pdCgnc2V0UGlubmVkVG9Vc2VyJywgc3RhdHVzKVxuICAgICAgfSlcbiAgICAgIGVhY2goY29tcGFjdChtYXAoc3RhdHVzZXMsICdyZXR3ZWV0ZWRfc3RhdHVzJykpLCAoc3RhdHVzKSA9PiB7XG4gICAgICAgIC8vIFJlY29ubmVjdCB1c2VycyB0byByZXR3ZWV0c1xuICAgICAgICBzdG9yZS5jb21taXQoJ3NldFVzZXJGb3JTdGF0dXMnLCBzdGF0dXMpXG4gICAgICAgIC8vIFNldCBwaW5uZWQgcmV0d2VldHMgdG8gdXNlclxuICAgICAgICBzdG9yZS5jb21taXQoJ3NldFBpbm5lZFRvVXNlcicsIHN0YXR1cylcbiAgICAgIH0pXG4gICAgfSxcbiAgICBhZGROZXdOb3RpZmljYXRpb25zIChzdG9yZSwgeyBub3RpZmljYXRpb25zIH0pIHtcbiAgICAgIGNvbnN0IHVzZXJzID0gbWFwKG5vdGlmaWNhdGlvbnMsICdmcm9tX3Byb2ZpbGUnKVxuICAgICAgY29uc3QgdGFyZ2V0VXNlcnMgPSBtYXAobm90aWZpY2F0aW9ucywgJ3RhcmdldCcpLmZpbHRlcihfID0+IF8pXG4gICAgICBjb25zdCBub3RpZmljYXRpb25JZHMgPSBub3RpZmljYXRpb25zLm1hcChfID0+IF8uaWQpXG4gICAgICBzdG9yZS5jb21taXQoJ2FkZE5ld1VzZXJzJywgdXNlcnMpXG4gICAgICBzdG9yZS5jb21taXQoJ2FkZE5ld1VzZXJzJywgdGFyZ2V0VXNlcnMpXG5cbiAgICAgIGNvbnN0IG5vdGlmaWNhdGlvbnNPYmplY3QgPSBzdG9yZS5yb290U3RhdGUuc3RhdHVzZXMubm90aWZpY2F0aW9ucy5pZFN0b3JlXG4gICAgICBjb25zdCByZWxldmFudE5vdGlmaWNhdGlvbnMgPSBPYmplY3QuZW50cmllcyhub3RpZmljYXRpb25zT2JqZWN0KVxuICAgICAgICAuZmlsdGVyKChbaywgdmFsXSkgPT4gbm90aWZpY2F0aW9uSWRzLmluY2x1ZGVzKGspKVxuICAgICAgICAubWFwKChbaywgdmFsXSkgPT4gdmFsKVxuXG4gICAgICAvLyBSZWNvbm5lY3QgdXNlcnMgdG8gbm90aWZpY2F0aW9uc1xuICAgICAgZWFjaChyZWxldmFudE5vdGlmaWNhdGlvbnMsIChub3RpZmljYXRpb24pID0+IHtcbiAgICAgICAgc3RvcmUuY29tbWl0KCdzZXRVc2VyRm9yTm90aWZpY2F0aW9uJywgbm90aWZpY2F0aW9uKVxuICAgICAgfSlcbiAgICB9LFxuICAgIHNlYXJjaFVzZXJzICh7IHJvb3RTdGF0ZSwgY29tbWl0IH0sIHsgcXVlcnkgfSkge1xuICAgICAgcmV0dXJuIHJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3Iuc2VhcmNoVXNlcnMoeyBxdWVyeSB9KVxuICAgICAgICAudGhlbigodXNlcnMpID0+IHtcbiAgICAgICAgICBjb21taXQoJ2FkZE5ld1VzZXJzJywgdXNlcnMpXG4gICAgICAgICAgcmV0dXJuIHVzZXJzXG4gICAgICAgIH0pXG4gICAgfSxcbiAgICBhc3luYyBzaWduVXAgKHN0b3JlLCB1c2VySW5mbykge1xuICAgICAgc3RvcmUuY29tbWl0KCdzaWduVXBQZW5kaW5nJylcblxuICAgICAgY29uc3Qgcm9vdFN0YXRlID0gc3RvcmUucm9vdFN0YXRlXG5cbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCByb290U3RhdGUuYXBpLmJhY2tlbmRJbnRlcmFjdG9yLnJlZ2lzdGVyKFxuICAgICAgICAgIHsgcGFyYW1zOiB7IC4uLnVzZXJJbmZvIH0gfVxuICAgICAgICApXG4gICAgICAgIHN0b3JlLmNvbW1pdCgnc2lnblVwU3VjY2VzcycpXG4gICAgICAgIHN0b3JlLmNvbW1pdCgnc2V0VG9rZW4nLCBkYXRhLmFjY2Vzc190b2tlbilcbiAgICAgICAgc3RvcmUuZGlzcGF0Y2goJ2xvZ2luVXNlcicsIGRhdGEuYWNjZXNzX3Rva2VuKVxuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBjb25zdCBlcnJvcnMgPSBlLm1lc3NhZ2VcbiAgICAgICAgc3RvcmUuY29tbWl0KCdzaWduVXBGYWlsdXJlJywgZXJyb3JzKVxuICAgICAgICB0aHJvdyBlXG4gICAgICB9XG4gICAgfSxcbiAgICBhc3luYyBnZXRDYXB0Y2hhIChzdG9yZSkge1xuICAgICAgcmV0dXJuIHN0b3JlLnJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IuZ2V0Q2FwdGNoYSgpXG4gICAgfSxcblxuICAgIGxvZ291dCAoc3RvcmUpIHtcbiAgICAgIGNvbnN0IHsgb2F1dGgsIGluc3RhbmNlIH0gPSBzdG9yZS5yb290U3RhdGVcblxuICAgICAgY29uc3QgZGF0YSA9IHtcbiAgICAgICAgLi4ub2F1dGgsXG4gICAgICAgIGNvbW1pdDogc3RvcmUuY29tbWl0LFxuICAgICAgICBpbnN0YW5jZTogaW5zdGFuY2Uuc2VydmVyXG4gICAgICB9XG5cbiAgICAgIHJldHVybiBvYXV0aEFwaS5nZXRPckNyZWF0ZUFwcChkYXRhKVxuICAgICAgICAudGhlbigoYXBwKSA9PiB7XG4gICAgICAgICAgY29uc3QgcGFyYW1zID0ge1xuICAgICAgICAgICAgYXBwLFxuICAgICAgICAgICAgaW5zdGFuY2U6IGRhdGEuaW5zdGFuY2UsXG4gICAgICAgICAgICB0b2tlbjogb2F1dGgudXNlclRva2VuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIG9hdXRoQXBpLnJldm9rZVRva2VuKHBhcmFtcylcbiAgICAgICAgfSlcbiAgICAgICAgLnRoZW4oKCkgPT4ge1xuICAgICAgICAgIHN0b3JlLmNvbW1pdCgnY2xlYXJDdXJyZW50VXNlcicpXG4gICAgICAgICAgc3RvcmUuZGlzcGF0Y2goJ2Rpc2Nvbm5lY3RGcm9tU29ja2V0JylcbiAgICAgICAgICBzdG9yZS5jb21taXQoJ2NsZWFyVG9rZW4nKVxuICAgICAgICAgIHN0b3JlLmRpc3BhdGNoKCdzdG9wRmV0Y2hpbmdUaW1lbGluZScsICdmcmllbmRzJylcbiAgICAgICAgICBzdG9yZS5jb21taXQoJ3NldEJhY2tlbmRJbnRlcmFjdG9yJywgYmFja2VuZEludGVyYWN0b3JTZXJ2aWNlKHN0b3JlLmdldHRlcnMuZ2V0VG9rZW4oKSkpXG4gICAgICAgICAgc3RvcmUuZGlzcGF0Y2goJ3N0b3BGZXRjaGluZ05vdGlmaWNhdGlvbnMnKVxuICAgICAgICAgIHN0b3JlLmRpc3BhdGNoKCdzdG9wRmV0Y2hpbmdMaXN0cycpXG4gICAgICAgICAgc3RvcmUuZGlzcGF0Y2goJ3N0b3BGZXRjaGluZ0ZvbGxvd1JlcXVlc3RzJylcbiAgICAgICAgICBzdG9yZS5jb21taXQoJ2NsZWFyTm90aWZpY2F0aW9ucycpXG4gICAgICAgICAgc3RvcmUuY29tbWl0KCdyZXNldFN0YXR1c2VzJylcbiAgICAgICAgICBzdG9yZS5kaXNwYXRjaCgncmVzZXRDaGF0cycpXG4gICAgICAgICAgc3RvcmUuZGlzcGF0Y2goJ3NldExhc3RUaW1lbGluZScsICdwdWJsaWMtdGltZWxpbmUnKVxuICAgICAgICAgIHN0b3JlLmRpc3BhdGNoKCdzZXRMYXlvdXRXaWR0aCcsIHdpbmRvd1dpZHRoKCkpXG4gICAgICAgICAgc3RvcmUuZGlzcGF0Y2goJ3NldExheW91dEhlaWdodCcsIHdpbmRvd0hlaWdodCgpKVxuICAgICAgICAgIHN0b3JlLmNvbW1pdCgnY2xlYXJTZXJ2ZXJTaWRlU3RvcmFnZScpXG4gICAgICAgIH0pXG4gICAgfSxcbiAgICBsb2dpblVzZXIgKHN0b3JlLCBhY2Nlc3NUb2tlbikge1xuICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgY29uc3QgY29tbWl0ID0gc3RvcmUuY29tbWl0XG4gICAgICAgIGNvbnN0IGRpc3BhdGNoID0gc3RvcmUuZGlzcGF0Y2hcbiAgICAgICAgY29tbWl0KCdiZWdpbkxvZ2luJylcbiAgICAgICAgc3RvcmUucm9vdFN0YXRlLmFwaS5iYWNrZW5kSW50ZXJhY3Rvci52ZXJpZnlDcmVkZW50aWFscyhhY2Nlc3NUb2tlbilcbiAgICAgICAgICAudGhlbigoZGF0YSkgPT4ge1xuICAgICAgICAgICAgaWYgKCFkYXRhLmVycm9yKSB7XG4gICAgICAgICAgICAgIGNvbnN0IHVzZXIgPSBkYXRhXG4gICAgICAgICAgICAgIC8vIHVzZXIuY3JlZGVudGlhbHMgPSB1c2VyQ3JlZGVudGlhbHNcbiAgICAgICAgICAgICAgdXNlci5jcmVkZW50aWFscyA9IGFjY2Vzc1Rva2VuXG4gICAgICAgICAgICAgIHVzZXIuYmxvY2tJZHMgPSBbXVxuICAgICAgICAgICAgICB1c2VyLm11dGVJZHMgPSBbXVxuICAgICAgICAgICAgICB1c2VyLmRvbWFpbk11dGVzID0gW11cbiAgICAgICAgICAgICAgY29tbWl0KCdzZXRDdXJyZW50VXNlcicsIHVzZXIpXG4gICAgICAgICAgICAgIGNvbW1pdCgnc2V0U2VydmVyU2lkZVN0b3JhZ2UnLCB1c2VyKVxuICAgICAgICAgICAgICBjb21taXQoJ2FkZE5ld1VzZXJzJywgW3VzZXJdKVxuXG4gICAgICAgICAgICAgIGRpc3BhdGNoKCdmZXRjaEVtb2ppJylcblxuICAgICAgICAgICAgICBnZXROb3RpZmljYXRpb25QZXJtaXNzaW9uKClcbiAgICAgICAgICAgICAgICAudGhlbihwZXJtaXNzaW9uID0+IGNvbW1pdCgnc2V0Tm90aWZpY2F0aW9uUGVybWlzc2lvbicsIHBlcm1pc3Npb24pKVxuXG4gICAgICAgICAgICAgIC8vIFNldCBvdXIgbmV3IGJhY2tlbmQgaW50ZXJhY3RvclxuICAgICAgICAgICAgICBjb21taXQoJ3NldEJhY2tlbmRJbnRlcmFjdG9yJywgYmFja2VuZEludGVyYWN0b3JTZXJ2aWNlKGFjY2Vzc1Rva2VuKSlcbiAgICAgICAgICAgICAgZGlzcGF0Y2goJ3B1c2hTZXJ2ZXJTaWRlU3RvcmFnZScpXG5cbiAgICAgICAgICAgICAgaWYgKHVzZXIudG9rZW4pIHtcbiAgICAgICAgICAgICAgICBkaXNwYXRjaCgnc2V0V3NUb2tlbicsIHVzZXIudG9rZW4pXG5cbiAgICAgICAgICAgICAgICAvLyBJbml0aWFsaXplIHRoZSBzaG91dCBzb2NrZXQuXG4gICAgICAgICAgICAgICAgZGlzcGF0Y2goJ2luaXRpYWxpemVTb2NrZXQnKVxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgY29uc3Qgc3RhcnRQb2xsaW5nID0gKCkgPT4ge1xuICAgICAgICAgICAgICAgIC8vIFN0YXJ0IGdldHRpbmcgZnJlc2ggcG9zdHMuXG4gICAgICAgICAgICAgICAgZGlzcGF0Y2goJ3N0YXJ0RmV0Y2hpbmdUaW1lbGluZScsIHsgdGltZWxpbmU6ICdmcmllbmRzJyB9KVxuXG4gICAgICAgICAgICAgICAgLy8gU3RhcnQgZmV0Y2hpbmcgbm90aWZpY2F0aW9uc1xuICAgICAgICAgICAgICAgIGRpc3BhdGNoKCdzdGFydEZldGNoaW5nTm90aWZpY2F0aW9ucycpXG5cbiAgICAgICAgICAgICAgICAvLyBTdGFydCBmZXRjaGluZyBjaGF0c1xuICAgICAgICAgICAgICAgIGRpc3BhdGNoKCdzdGFydEZldGNoaW5nQ2hhdHMnKVxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgZGlzcGF0Y2goJ3N0YXJ0RmV0Y2hpbmdMaXN0cycpXG5cbiAgICAgICAgICAgICAgaWYgKHVzZXIubG9ja2VkKSB7XG4gICAgICAgICAgICAgICAgZGlzcGF0Y2goJ3N0YXJ0RmV0Y2hpbmdGb2xsb3dSZXF1ZXN0cycpXG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBpZiAoc3RvcmUuZ2V0dGVycy5tZXJnZWRDb25maWcudXNlU3RyZWFtaW5nQXBpKSB7XG4gICAgICAgICAgICAgICAgZGlzcGF0Y2goJ2ZldGNoVGltZWxpbmUnLCB7IHRpbWVsaW5lOiAnZnJpZW5kcycsIHNpbmNlOiBudWxsIH0pXG4gICAgICAgICAgICAgICAgZGlzcGF0Y2goJ2ZldGNoTm90aWZpY2F0aW9ucycsIHsgc2luY2U6IG51bGwgfSlcbiAgICAgICAgICAgICAgICBkaXNwYXRjaCgnZW5hYmxlTWFzdG9Tb2NrZXRzJywgdHJ1ZSkuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgaW5pdGlhbGl6aW5nIE1hc3RvQVBJIFN0cmVhbWluZyBzb2NrZXQnLCBlcnJvcilcbiAgICAgICAgICAgICAgICB9KS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgIGRpc3BhdGNoKCdmZXRjaENoYXRzJywgeyBsYXRlc3Q6IHRydWUgfSlcbiAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4gZGlzcGF0Y2goJ3NldE5vdGlmaWNhdGlvbnNTaWxlbmNlJywgZmFsc2UpLCAxMDAwMClcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHN0YXJ0UG9sbGluZygpXG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAvLyBHZXQgdXNlciBtdXRlc1xuICAgICAgICAgICAgICBkaXNwYXRjaCgnZmV0Y2hNdXRlcycpXG5cbiAgICAgICAgICAgICAgZGlzcGF0Y2goJ3NldExheW91dFdpZHRoJywgd2luZG93V2lkdGgoKSlcbiAgICAgICAgICAgICAgZGlzcGF0Y2goJ3NldExheW91dEhlaWdodCcsIHdpbmRvd0hlaWdodCgpKVxuXG4gICAgICAgICAgICAgIC8vIEZldGNoIG91ciBmcmllbmRzXG4gICAgICAgICAgICAgIHN0b3JlLnJvb3RTdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IuZmV0Y2hGcmllbmRzKHsgaWQ6IHVzZXIuaWQgfSlcbiAgICAgICAgICAgICAgICAudGhlbigoZnJpZW5kcykgPT4gY29tbWl0KCdhZGROZXdVc2VycycsIGZyaWVuZHMpKVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgY29uc3QgcmVzcG9uc2UgPSBkYXRhLmVycm9yXG4gICAgICAgICAgICAgIC8vIEF1dGhlbnRpY2F0aW9uIGZhaWxlZFxuICAgICAgICAgICAgICBjb21taXQoJ2VuZExvZ2luJylcblxuICAgICAgICAgICAgICAvLyByZW1vdmUgYXV0aGVudGljYXRpb24gdG9rZW4gb24gY2xpZW50L2F1dGhlbnRpY2F0aW9uIGVycm9yc1xuICAgICAgICAgICAgICBpZiAoWzQwMCwgNDAxLCA0MDMsIDQyMl0uaW5jbHVkZXMocmVzcG9uc2Uuc3RhdHVzKSkge1xuICAgICAgICAgICAgICAgIGNvbW1pdCgnY2xlYXJUb2tlbicpXG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBpZiAocmVzcG9uc2Uuc3RhdHVzID09PSA0MDEpIHtcbiAgICAgICAgICAgICAgICByZWplY3QobmV3IEVycm9yKCdXcm9uZyB1c2VybmFtZSBvciBwYXNzd29yZCcpKVxuICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHJlamVjdChuZXcgRXJyb3IoJ0FuIGVycm9yIG9jY3VycmVkLCBwbGVhc2UgdHJ5IGFnYWluJykpXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbW1pdCgnZW5kTG9naW4nKVxuICAgICAgICAgICAgcmVzb2x2ZSgpXG4gICAgICAgICAgfSlcbiAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgICAgICAgICBjb25zb2xlLmxvZyhlcnJvcilcbiAgICAgICAgICAgIGNvbW1pdCgnZW5kTG9naW4nKVxuICAgICAgICAgICAgcmVqZWN0KG5ldyBFcnJvcignRmFpbGVkIHRvIGNvbm5lY3QgdG8gc2VydmVyLCB0cnkgYWdhaW4nKSlcbiAgICAgICAgICB9KVxuICAgICAgfSlcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdXNlcnNcbiJdLCJuYW1lcyI6WyJiYWNrZW5kSW50ZXJhY3RvclNlcnZpY2UiLCJ3aW5kb3dXaWR0aCIsIndpbmRvd0hlaWdodCIsIm9hdXRoQXBpIiwicmVnaXN0ZXJQdXNoTm90aWZpY2F0aW9ucyIsInVucmVnaXN0ZXJQdXNoTm90aWZpY2F0aW9ucyIsIm1lcmdlT3JBZGQiLCJhcnIiLCJvYmoiLCJpdGVtIiwib2xkSXRlbSIsImlkIiwiX21lcmdlV2l0aCIsIm1lcmdlQXJyYXlMZW5ndGgiLCJwdXNoIiwib2xkVmFsdWUiLCJuZXdWYWx1ZSIsIl9pc0FycmF5IiwibGVuZ3RoIiwiZ2V0Tm90aWZpY2F0aW9uUGVybWlzc2lvbiIsIk5vdGlmaWNhdGlvbiIsIndpbmRvdyIsIlByb21pc2UiLCJyZXNvbHZlIiwicGVybWlzc2lvbiIsInJlcXVlc3RQZXJtaXNzaW9uIiwiYmxvY2tVc2VyIiwic3RvcmUiLCJyb290U3RhdGUiLCJhcGkiLCJiYWNrZW5kSW50ZXJhY3RvciIsInRoZW4iLCJyZWxhdGlvbnNoaXAiLCJjb21taXQiLCJ0aW1lbGluZSIsInVzZXJJZCIsInVuYmxvY2tVc2VyIiwicmVtb3ZlVXNlckZyb21Gb2xsb3dlcnMiLCJlZGl0VXNlck5vdGUiLCJfcmVmIiwiY29tbWVudCIsIm11dGVVc2VyIiwiYXJncyIsIl90eXBlb2YiLCJleHBpcmVzSW4iLCJwcmVkaWN0ZWRSZWxhdGlvbnNoaXAiLCJzdGF0ZSIsInJlbGF0aW9uc2hpcHMiLCJtdXRpbmciLCJ1bm11dGVVc2VyIiwiaGlkZVJlYmxvZ3MiLCJmb2xsb3dVc2VyIiwicmVibG9ncyIsInNob3dSZWJsb2dzIiwibXV0ZURvbWFpbiIsImRvbWFpbiIsInVubXV0ZURvbWFpbiIsIm11dGF0aW9ucyIsInRhZ1VzZXIiLCJfcmVmMiIsInVzZXIiLCJ0YWciLCJ1c2Vyc09iamVjdCIsInRhZ3MiLCJuZXdUYWdzIiwiY29uY2F0IiwidW50YWdVc2VyIiwiX3JlZjMiLCJmaWx0ZXIiLCJ0IiwidXBkYXRlUmlnaHQiLCJfcmVmNCIsInJpZ2h0IiwidmFsdWUiLCJuZXdSaWdodHMiLCJyaWdodHMiLCJ1cGRhdGVBY3RpdmF0aW9uU3RhdHVzIiwiX3JlZjUiLCJkZWFjdGl2YXRlZCIsInNldEN1cnJlbnRVc2VyIiwibGFzdExvZ2luTmFtZSIsInNjcmVlbl9uYW1lIiwiY3VycmVudFVzZXIiLCJjbGVhckN1cnJlbnRVc2VyIiwiYmVnaW5Mb2dpbiIsImxvZ2dpbmdJbiIsImVuZExvZ2luIiwic2F2ZUZyaWVuZElkcyIsIl9yZWY2IiwiZnJpZW5kSWRzIiwiX3VuaXEiLCJfY29uY2F0Iiwic2F2ZUZvbGxvd2VySWRzIiwiX3JlZjciLCJmb2xsb3dlcklkcyIsImNsZWFyRnJpZW5kcyIsImNsZWFyRm9sbG93ZXJzIiwiYWRkTmV3VXNlcnMiLCJ1c2VycyIsIl9lYWNoIiwicmVzIiwiaW5jbHVkZXMiLCJ1c2Vyc0J5TmFtZU9iamVjdCIsInRvTG93ZXJDYXNlIiwidXBkYXRlVXNlclJlbGF0aW9uc2hpcCIsImZvckVhY2giLCJ1cGRhdGVVc2VySW5MaXN0cyIsIl9yZWY4IiwiaW5MaXN0cyIsInNhdmVCbG9ja0lkcyIsImJsb2NrSWRzIiwiYWRkQmxvY2tJZCIsImJsb2NrSWQiLCJpbmRleE9mIiwic2V0QmxvY2tJZHNNYXhJZCIsImJsb2NrSWRzTWF4SWQiLCJzYXZlTXV0ZUlkcyIsIm11dGVJZHMiLCJzZXRNdXRlSWRzTWF4SWQiLCJtdXRlSWRzTWF4SWQiLCJhZGRNdXRlSWQiLCJtdXRlSWQiLCJzYXZlRG9tYWluTXV0ZXMiLCJkb21haW5NdXRlcyIsImFkZERvbWFpbk11dGUiLCJyZW1vdmVEb21haW5NdXRlIiwiaW5kZXgiLCJzcGxpY2UiLCJzZXRQaW5uZWRUb1VzZXIiLCJzdGF0dXMiLCJwaW5uZWRTdGF0dXNJZHMiLCJwaW5uZWQiLCJzZXRVc2VyRm9yU3RhdHVzIiwic2V0VXNlckZvck5vdGlmaWNhdGlvbiIsIm5vdGlmaWNhdGlvbiIsInR5cGUiLCJhY3Rpb24iLCJmcm9tX3Byb2ZpbGUiLCJzZXRDb2xvciIsIl9yZWY5IiwiaGlnaGxpZ2h0ZWQiLCJoaWdobGlnaHQiLCJzaWduVXBQZW5kaW5nIiwic2lnblVwRXJyb3JzIiwic2lnblVwU3VjY2VzcyIsInNpZ25VcEZhaWx1cmUiLCJlcnJvcnMiLCJnZXR0ZXJzIiwiZmluZFVzZXIiLCJxdWVyeSIsImZpbmRVc2VyQnlOYW1lIiwiZmluZFVzZXJCeVVybCIsImZpbmQiLCJ1Iiwic3RhdHVzbmV0X3Byb2ZpbGVfdXJsIiwicmVsIiwibG9hZGluZyIsImRlZmF1bHRTdGF0ZSIsImFjdGlvbnMiLCJmZXRjaFVzZXJJZk1pc3NpbmciLCJkaXNwYXRjaCIsImZldGNoVXNlciIsImZldGNoVXNlckJ5TmFtZSIsIm5hbWUiLCJmZXRjaFVzZXJSZWxhdGlvbnNoaXAiLCJmZXRjaFVzZXJJbkxpc3RzIiwiZmV0Y2hCbG9ja3MiLCJfcmVmMTAiLCJyZXNldCIsIm1heElkIiwiYmxvY2tzIiwiX21hcCIsIm1hcCIsIl9sYXN0IiwiYmxvY2tVc2VycyIsImlkcyIsImFyZ3VtZW50cyIsInVuZGVmaW5lZCIsImFsbCIsInVuYmxvY2tVc2VycyIsImZldGNoTXV0ZXMiLCJfcmVmMTEiLCJtdXRlcyIsIm11dGVVc2VycyIsInVubXV0ZVVzZXJzIiwiZmV0Y2hEb21haW5NdXRlcyIsIm11dGVEb21haW5zIiwiZG9tYWlucyIsInVubXV0ZURvbWFpbnMiLCJmZXRjaEZyaWVuZHMiLCJfcmVmMTIiLCJmcmllbmRzIiwiZmV0Y2hGb2xsb3dlcnMiLCJfcmVmMTMiLCJmb2xsb3dlcnMiLCJfcmVmMTQiLCJfcmVmMTUiLCJzdWJzY3JpYmVVc2VyIiwiX3JlZjE2IiwidW5zdWJzY3JpYmVVc2VyIiwiX3JlZjE3IiwidG9nZ2xlQWN0aXZhdGlvblN0YXR1cyIsIl9yZWYxOCIsIl9yZWYxOSIsImFjdGl2YXRlVXNlciIsImRlYWN0aXZhdGVVc2VyIiwiaXNfYWN0aXZlIiwidG9rZW4iLCJjcmVkZW50aWFscyIsInZhcGlkUHVibGljS2V5IiwiaW5zdGFuY2UiLCJpc0VuYWJsZWQiLCJjb25maWciLCJ3ZWJQdXNoTm90aWZpY2F0aW9ucyIsIm5vdGlmaWNhdGlvblZpc2liaWxpdHkiLCJfcmVmMjAiLCJhZGROZXdTdGF0dXNlcyIsIl9yZWYyMSIsInN0YXR1c2VzIiwicmV0d2VldGVkVXNlcnMiLCJfY29tcGFjdCIsImFkZE5ld05vdGlmaWNhdGlvbnMiLCJfcmVmMjIiLCJub3RpZmljYXRpb25zIiwidGFyZ2V0VXNlcnMiLCJfIiwibm90aWZpY2F0aW9uSWRzIiwibm90aWZpY2F0aW9uc09iamVjdCIsImlkU3RvcmUiLCJyZWxldmFudE5vdGlmaWNhdGlvbnMiLCJPYmplY3QiLCJlbnRyaWVzIiwiX3JlZjIzIiwiX3JlZjI0IiwiX3NsaWNlZFRvQXJyYXkiLCJrIiwidmFsIiwiX3JlZjI1IiwiX3JlZjI2Iiwic2VhcmNoVXNlcnMiLCJfcmVmMjciLCJfcmVmMjgiLCJzaWduVXAiLCJ1c2VySW5mbyIsIl9hc3luY1RvR2VuZXJhdG9yIiwiX3JlZ2VuZXJhdG9yUnVudGltZSIsIm1hcmsiLCJfY2FsbGVlIiwiZGF0YSIsIndyYXAiLCJfY2FsbGVlJCIsIl9jb250ZXh0IiwicHJldiIsIm5leHQiLCJyZWdpc3RlciIsInBhcmFtcyIsIl9vYmplY3RTcHJlYWQiLCJzZW50IiwiYWNjZXNzX3Rva2VuIiwidDAiLCJtZXNzYWdlIiwic3RvcCIsImdldENhcHRjaGEiLCJfY2FsbGVlMiIsIl9jYWxsZWUyJCIsIl9jb250ZXh0MiIsImFicnVwdCIsImxvZ291dCIsIl9zdG9yZSRyb290U3RhdGUiLCJvYXV0aCIsInNlcnZlciIsImdldE9yQ3JlYXRlQXBwIiwiYXBwIiwidXNlclRva2VuIiwicmV2b2tlVG9rZW4iLCJnZXRUb2tlbiIsImxvZ2luVXNlciIsImFjY2Vzc1Rva2VuIiwicmVqZWN0IiwidmVyaWZ5Q3JlZGVudGlhbHMiLCJlcnJvciIsInN0YXJ0UG9sbGluZyIsImxvY2tlZCIsIm1lcmdlZENvbmZpZyIsInVzZVN0cmVhbWluZ0FwaSIsInNpbmNlIiwiY29uc29sZSIsImxhdGVzdCIsInNldFRpbWVvdXQiLCJyZXNwb25zZSIsIkVycm9yIiwibG9nIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/modules/users.js\n");
/***/ }),
/***/ "./src/services/api/api.service.js":
/*!*****************************************!*\
!*** ./src/services/api/api.service.js ***!
\*****************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"ProcessedWS\": () => (/* binding */ ProcessedWS),\n/* harmony export */ \"WSConnectionStatus\": () => (/* binding */ WSConnectionStatus),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__),\n/* harmony export */ \"getMastodonSocketURI\": () => (/* binding */ getMastodonSocketURI),\n/* harmony export */ \"handleMastoWS\": () => (/* binding */ handleMastoWS)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ \"./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js\");\n/* harmony import */ var _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ \"./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js\");\n/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ \"./node_modules/@babel/runtime/helpers/esm/slicedToArray.js\");\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"./node_modules/@babel/runtime/helpers/esm/defineProperty.js\");\n/* harmony import */ var lodash_get__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! lodash/get */ \"./node_modules/lodash/get.js\");\n/* harmony import */ var lodash_get__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(lodash_get__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var lodash_last__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! lodash/last */ \"./node_modules/lodash/last.js\");\n/* harmony import */ var lodash_last__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(lodash_last__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var lodash_concat__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! lodash/concat */ \"./node_modules/lodash/concat.js\");\n/* harmony import */ var lodash_concat__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(lodash_concat__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony import */ var lodash_map__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! lodash/map */ \"./node_modules/lodash/map.js\");\n/* harmony import */ var lodash_map__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(lodash_map__WEBPACK_IMPORTED_MODULE_7__);\n/* harmony import */ var lodash_each__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! lodash/each */ \"./node_modules/lodash/each.js\");\n/* harmony import */ var lodash_each__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(lodash_each__WEBPACK_IMPORTED_MODULE_8__);\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @babel/runtime/regenerator */ \"./node_modules/@babel/runtime/regenerator/index.js\");\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_9__);\n/* harmony import */ var _entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../entity_normalizer/entity_normalizer.service.js */ \"./src/services/entity_normalizer/entity_normalizer.service.js\");\n/* harmony import */ var _errors_errors__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../errors/errors */ \"./src/services/errors/errors.js\");\n\n\n\n\n\n\n\n\n\nvar _excluded = [\"nickname\"],\n _excluded2 = [\"id\", \"credentials\"];\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\n\n/* eslint-env browser */\nvar MUTES_IMPORT_URL = '/api/pleroma/mutes_import';\nvar BLOCKS_IMPORT_URL = '/api/pleroma/blocks_import';\nvar FOLLOW_IMPORT_URL = '/api/pleroma/follow_import';\nvar DELETE_ACCOUNT_URL = '/api/pleroma/delete_account';\nvar CHANGE_EMAIL_URL = '/api/pleroma/change_email';\nvar CHANGE_PASSWORD_URL = '/api/pleroma/change_password';\nvar MOVE_ACCOUNT_URL = '/api/pleroma/move_account';\nvar ALIASES_URL = '/api/pleroma/aliases';\nvar TAG_USER_URL = '/api/pleroma/admin/users/tag';\nvar PERMISSION_GROUP_URL = function PERMISSION_GROUP_URL(screenName, right) {\n return \"/api/pleroma/admin/users/\".concat(screenName, \"/permission_group/\").concat(right);\n};\nvar ACTIVATE_USER_URL = '/api/pleroma/admin/users/activate';\nvar DEACTIVATE_USER_URL = '/api/pleroma/admin/users/deactivate';\nvar ADMIN_USERS_URL = '/api/pleroma/admin/users';\nvar SUGGESTIONS_URL = '/api/v1/suggestions';\nvar NOTIFICATION_SETTINGS_URL = '/api/pleroma/notification_settings';\nvar NOTIFICATION_READ_URL = '/api/v1/pleroma/notifications/read';\nvar MFA_SETTINGS_URL = '/api/pleroma/accounts/mfa';\nvar MFA_BACKUP_CODES_URL = '/api/pleroma/accounts/mfa/backup_codes';\nvar MFA_SETUP_OTP_URL = '/api/pleroma/accounts/mfa/setup/totp';\nvar MFA_CONFIRM_OTP_URL = '/api/pleroma/accounts/mfa/confirm/totp';\nvar MFA_DISABLE_OTP_URL = '/api/pleroma/accounts/mfa/totp';\nvar MASTODON_LOGIN_URL = '/api/v1/accounts/verify_credentials';\nvar MASTODON_REGISTRATION_URL = '/api/v1/accounts';\nvar MASTODON_USER_FAVORITES_TIMELINE_URL = '/api/v1/favourites';\nvar MASTODON_USER_NOTIFICATIONS_URL = '/api/v1/notifications';\nvar MASTODON_DISMISS_NOTIFICATION_URL = function MASTODON_DISMISS_NOTIFICATION_URL(id) {\n return \"/api/v1/notifications/\".concat(id, \"/dismiss\");\n};\nvar MASTODON_FAVORITE_URL = function MASTODON_FAVORITE_URL(id) {\n return \"/api/v1/statuses/\".concat(id, \"/favourite\");\n};\nvar MASTODON_UNFAVORITE_URL = function MASTODON_UNFAVORITE_URL(id) {\n return \"/api/v1/statuses/\".concat(id, \"/unfavourite\");\n};\nvar MASTODON_RETWEET_URL = function MASTODON_RETWEET_URL(id) {\n return \"/api/v1/statuses/\".concat(id, \"/reblog\");\n};\nvar MASTODON_UNRETWEET_URL = function MASTODON_UNRETWEET_URL(id) {\n return \"/api/v1/statuses/\".concat(id, \"/unreblog\");\n};\nvar MASTODON_DELETE_URL = function MASTODON_DELETE_URL(id) {\n return \"/api/v1/statuses/\".concat(id);\n};\nvar MASTODON_FOLLOW_URL = function MASTODON_FOLLOW_URL(id) {\n return \"/api/v1/accounts/\".concat(id, \"/follow\");\n};\nvar MASTODON_UNFOLLOW_URL = function MASTODON_UNFOLLOW_URL(id) {\n return \"/api/v1/accounts/\".concat(id, \"/unfollow\");\n};\nvar MASTODON_FOLLOWING_URL = function MASTODON_FOLLOWING_URL(id) {\n return \"/api/v1/accounts/\".concat(id, \"/following\");\n};\nvar MASTODON_FOLLOWERS_URL = function MASTODON_FOLLOWERS_URL(id) {\n return \"/api/v1/accounts/\".concat(id, \"/followers\");\n};\nvar MASTODON_FOLLOW_REQUESTS_URL = '/api/v1/follow_requests';\nvar MASTODON_APPROVE_USER_URL = function MASTODON_APPROVE_USER_URL(id) {\n return \"/api/v1/follow_requests/\".concat(id, \"/authorize\");\n};\nvar MASTODON_DENY_USER_URL = function MASTODON_DENY_USER_URL(id) {\n return \"/api/v1/follow_requests/\".concat(id, \"/reject\");\n};\nvar MASTODON_DIRECT_MESSAGES_TIMELINE_URL = '/api/v1/timelines/direct';\nvar MASTODON_PUBLIC_TIMELINE = '/api/v1/timelines/public';\nvar MASTODON_USER_HOME_TIMELINE_URL = '/api/v1/timelines/home';\nvar MASTODON_STATUS_URL = function MASTODON_STATUS_URL(id) {\n return \"/api/v1/statuses/\".concat(id);\n};\nvar MASTODON_STATUS_CONTEXT_URL = function MASTODON_STATUS_CONTEXT_URL(id) {\n return \"/api/v1/statuses/\".concat(id, \"/context\");\n};\nvar MASTODON_STATUS_SOURCE_URL = function MASTODON_STATUS_SOURCE_URL(id) {\n return \"/api/v1/statuses/\".concat(id, \"/source\");\n};\nvar MASTODON_STATUS_HISTORY_URL = function MASTODON_STATUS_HISTORY_URL(id) {\n return \"/api/v1/statuses/\".concat(id, \"/history\");\n};\nvar MASTODON_USER_URL = '/api/v1/accounts';\nvar MASTODON_USER_LOOKUP_URL = '/api/v1/accounts/lookup';\nvar MASTODON_USER_RELATIONSHIPS_URL = '/api/v1/accounts/relationships';\nvar MASTODON_USER_TIMELINE_URL = function MASTODON_USER_TIMELINE_URL(id) {\n return \"/api/v1/accounts/\".concat(id, \"/statuses\");\n};\nvar MASTODON_USER_IN_LISTS = function MASTODON_USER_IN_LISTS(id) {\n return \"/api/v1/accounts/\".concat(id, \"/lists\");\n};\nvar MASTODON_LIST_URL = function MASTODON_LIST_URL(id) {\n return \"/api/v1/lists/\".concat(id);\n};\nvar MASTODON_LIST_TIMELINE_URL = function MASTODON_LIST_TIMELINE_URL(id) {\n return \"/api/v1/timelines/list/\".concat(id);\n};\nvar MASTODON_LIST_ACCOUNTS_URL = function MASTODON_LIST_ACCOUNTS_URL(id) {\n return \"/api/v1/lists/\".concat(id, \"/accounts\");\n};\nvar MASTODON_TAG_TIMELINE_URL = function MASTODON_TAG_TIMELINE_URL(tag) {\n return \"/api/v1/timelines/tag/\".concat(tag);\n};\nvar MASTODON_BOOKMARK_TIMELINE_URL = '/api/v1/bookmarks';\nvar MASTODON_USER_BLOCKS_URL = '/api/v1/blocks/';\nvar MASTODON_USER_MUTES_URL = '/api/v1/mutes/';\nvar MASTODON_BLOCK_USER_URL = function MASTODON_BLOCK_USER_URL(id) {\n return \"/api/v1/accounts/\".concat(id, \"/block\");\n};\nvar MASTODON_UNBLOCK_USER_URL = function MASTODON_UNBLOCK_USER_URL(id) {\n return \"/api/v1/accounts/\".concat(id, \"/unblock\");\n};\nvar MASTODON_MUTE_USER_URL = function MASTODON_MUTE_USER_URL(id) {\n return \"/api/v1/accounts/\".concat(id, \"/mute\");\n};\nvar MASTODON_UNMUTE_USER_URL = function MASTODON_UNMUTE_USER_URL(id) {\n return \"/api/v1/accounts/\".concat(id, \"/unmute\");\n};\nvar MASTODON_REMOVE_USER_FROM_FOLLOWERS = function MASTODON_REMOVE_USER_FROM_FOLLOWERS(id) {\n return \"/api/v1/accounts/\".concat(id, \"/remove_from_followers\");\n};\nvar MASTODON_SUBSCRIBE_USER = function MASTODON_SUBSCRIBE_USER(id) {\n return \"/api/v1/pleroma/accounts/\".concat(id, \"/subscribe\");\n};\nvar MASTODON_UNSUBSCRIBE_USER = function MASTODON_UNSUBSCRIBE_USER(id) {\n return \"/api/v1/pleroma/accounts/\".concat(id, \"/unsubscribe\");\n};\nvar MASTODON_USER_NOTE_URL = function MASTODON_USER_NOTE_URL(id) {\n return \"/api/v1/accounts/\".concat(id, \"/note\");\n};\nvar MASTODON_BOOKMARK_STATUS_URL = function MASTODON_BOOKMARK_STATUS_URL(id) {\n return \"/api/v1/statuses/\".concat(id, \"/bookmark\");\n};\nvar MASTODON_UNBOOKMARK_STATUS_URL = function MASTODON_UNBOOKMARK_STATUS_URL(id) {\n return \"/api/v1/statuses/\".concat(id, \"/unbookmark\");\n};\nvar MASTODON_POST_STATUS_URL = '/api/v1/statuses';\nvar MASTODON_MEDIA_UPLOAD_URL = '/api/v1/media';\nvar MASTODON_VOTE_URL = function MASTODON_VOTE_URL(id) {\n return \"/api/v1/polls/\".concat(id, \"/votes\");\n};\nvar MASTODON_POLL_URL = function MASTODON_POLL_URL(id) {\n return \"/api/v1/polls/\".concat(id);\n};\nvar MASTODON_STATUS_FAVORITEDBY_URL = function MASTODON_STATUS_FAVORITEDBY_URL(id) {\n return \"/api/v1/statuses/\".concat(id, \"/favourited_by\");\n};\nvar MASTODON_STATUS_REBLOGGEDBY_URL = function MASTODON_STATUS_REBLOGGEDBY_URL(id) {\n return \"/api/v1/statuses/\".concat(id, \"/reblogged_by\");\n};\nvar MASTODON_PROFILE_UPDATE_URL = '/api/v1/accounts/update_credentials';\nvar MASTODON_REPORT_USER_URL = '/api/v1/reports';\nvar MASTODON_PIN_OWN_STATUS = function MASTODON_PIN_OWN_STATUS(id) {\n return \"/api/v1/statuses/\".concat(id, \"/pin\");\n};\nvar MASTODON_UNPIN_OWN_STATUS = function MASTODON_UNPIN_OWN_STATUS(id) {\n return \"/api/v1/statuses/\".concat(id, \"/unpin\");\n};\nvar MASTODON_MUTE_CONVERSATION = function MASTODON_MUTE_CONVERSATION(id) {\n return \"/api/v1/statuses/\".concat(id, \"/mute\");\n};\nvar MASTODON_UNMUTE_CONVERSATION = function MASTODON_UNMUTE_CONVERSATION(id) {\n return \"/api/v1/statuses/\".concat(id, \"/unmute\");\n};\nvar MASTODON_SEARCH_2 = '/api/v2/search';\nvar MASTODON_USER_SEARCH_URL = '/api/v1/accounts/search';\nvar MASTODON_DOMAIN_BLOCKS_URL = '/api/v1/domain_blocks';\nvar MASTODON_LISTS_URL = '/api/v1/lists';\nvar MASTODON_STREAMING = '/api/v1/streaming';\nvar MASTODON_KNOWN_DOMAIN_LIST_URL = '/api/v1/instance/peers';\nvar MASTODON_ANNOUNCEMENTS_URL = '/api/v1/announcements';\nvar MASTODON_ANNOUNCEMENTS_DISMISS_URL = function MASTODON_ANNOUNCEMENTS_DISMISS_URL(id) {\n return \"/api/v1/announcements/\".concat(id, \"/dismiss\");\n};\nvar PLEROMA_EMOJI_REACTIONS_URL = function PLEROMA_EMOJI_REACTIONS_URL(id) {\n return \"/api/v1/pleroma/statuses/\".concat(id, \"/reactions\");\n};\nvar PLEROMA_EMOJI_REACT_URL = function PLEROMA_EMOJI_REACT_URL(id, emoji) {\n return \"/api/v1/pleroma/statuses/\".concat(id, \"/reactions/\").concat(emoji);\n};\nvar PLEROMA_EMOJI_UNREACT_URL = function PLEROMA_EMOJI_UNREACT_URL(id, emoji) {\n return \"/api/v1/pleroma/statuses/\".concat(id, \"/reactions/\").concat(emoji);\n};\nvar PLEROMA_CHATS_URL = '/api/v1/pleroma/chats';\nvar PLEROMA_CHAT_URL = function PLEROMA_CHAT_URL(id) {\n return \"/api/v1/pleroma/chats/by-account-id/\".concat(id);\n};\nvar PLEROMA_CHAT_MESSAGES_URL = function PLEROMA_CHAT_MESSAGES_URL(id) {\n return \"/api/v1/pleroma/chats/\".concat(id, \"/messages\");\n};\nvar PLEROMA_CHAT_READ_URL = function PLEROMA_CHAT_READ_URL(id) {\n return \"/api/v1/pleroma/chats/\".concat(id, \"/read\");\n};\nvar PLEROMA_DELETE_CHAT_MESSAGE_URL = function PLEROMA_DELETE_CHAT_MESSAGE_URL(chatId, messageId) {\n return \"/api/v1/pleroma/chats/\".concat(chatId, \"/messages/\").concat(messageId);\n};\nvar PLEROMA_ADMIN_REPORTS = '/api/pleroma/admin/reports';\nvar PLEROMA_BACKUP_URL = '/api/v1/pleroma/backups';\nvar PLEROMA_ANNOUNCEMENTS_URL = '/api/v1/pleroma/admin/announcements';\nvar PLEROMA_POST_ANNOUNCEMENT_URL = '/api/v1/pleroma/admin/announcements';\nvar PLEROMA_EDIT_ANNOUNCEMENT_URL = function PLEROMA_EDIT_ANNOUNCEMENT_URL(id) {\n return \"/api/v1/pleroma/admin/announcements/\".concat(id);\n};\nvar PLEROMA_DELETE_ANNOUNCEMENT_URL = function PLEROMA_DELETE_ANNOUNCEMENT_URL(id) {\n return \"/api/v1/pleroma/admin/announcements/\".concat(id);\n};\nvar PLEROMA_ADMIN_CONFIG_URL = '/api/pleroma/admin/config';\nvar PLEROMA_ADMIN_DESCRIPTIONS_URL = '/api/pleroma/admin/config/descriptions';\nvar PLEROMA_ADMIN_FRONTENDS_URL = '/api/pleroma/admin/frontends';\nvar PLEROMA_ADMIN_FRONTENDS_INSTALL_URL = '/api/pleroma/admin/frontends/install';\nvar oldfetch = window.fetch;\nvar fetch = function fetch(url, options) {\n options = options || {};\n var baseUrl = '';\n var fullUrl = baseUrl + url;\n options.credentials = 'same-origin';\n return oldfetch(fullUrl, options);\n};\nvar promisedRequest = function promisedRequest(_ref) {\n var method = _ref.method,\n url = _ref.url,\n params = _ref.params,\n payload = _ref.payload,\n credentials = _ref.credentials,\n _ref$headers = _ref.headers,\n headers = _ref$headers === void 0 ? {} : _ref$headers;\n var options = {\n method: method,\n headers: _objectSpread({\n Accept: 'application/json',\n 'Content-Type': 'application/json'\n }, headers)\n };\n if (params) {\n url += '?' + Object.entries(params).map(function (_ref2) {\n var _ref3 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(_ref2, 2),\n key = _ref3[0],\n value = _ref3[1];\n return encodeURIComponent(key) + '=' + encodeURIComponent(value);\n }).join('&');\n }\n if (payload) {\n options.body = JSON.stringify(payload);\n }\n if (credentials) {\n options.headers = _objectSpread(_objectSpread({}, options.headers), authHeaders(credentials));\n }\n return fetch(url, options).then(function (response) {\n return new Promise(function (resolve, reject) {\n return response.json().then(function (json) {\n if (!response.ok) {\n return reject(new _errors_errors__WEBPACK_IMPORTED_MODULE_11__.StatusCodeError(response.status, json, {\n url: url,\n options: options\n }, response));\n }\n return resolve(json);\n })[\"catch\"](function (error) {\n return reject(new _errors_errors__WEBPACK_IMPORTED_MODULE_11__.StatusCodeError(response.status, error, {\n url: url,\n options: options\n }, response));\n });\n });\n });\n};\nvar updateNotificationSettings = function updateNotificationSettings(_ref4) {\n var credentials = _ref4.credentials,\n settings = _ref4.settings;\n var form = new FormData();\n lodash_each__WEBPACK_IMPORTED_MODULE_8___default()(settings, function (value, key) {\n form.append(key, value);\n });\n return fetch(\"\".concat(NOTIFICATION_SETTINGS_URL, \"?\").concat(new URLSearchParams(settings)), {\n headers: authHeaders(credentials),\n method: 'PUT',\n body: form\n }).then(function (data) {\n return data.json();\n });\n};\nvar updateProfileImages = function updateProfileImages(_ref5) {\n var credentials = _ref5.credentials,\n _ref5$avatar = _ref5.avatar,\n avatar = _ref5$avatar === void 0 ? null : _ref5$avatar,\n _ref5$avatarName = _ref5.avatarName,\n avatarName = _ref5$avatarName === void 0 ? null : _ref5$avatarName,\n _ref5$banner = _ref5.banner,\n banner = _ref5$banner === void 0 ? null : _ref5$banner,\n _ref5$background = _ref5.background,\n background = _ref5$background === void 0 ? null : _ref5$background;\n var form = new FormData();\n if (avatar !== null) {\n if (avatarName !== null) {\n form.append('avatar', avatar, avatarName);\n } else {\n form.append('avatar', avatar);\n }\n }\n if (banner !== null) form.append('header', banner);\n if (background !== null) form.append('pleroma_background_image', background);\n return fetch(MASTODON_PROFILE_UPDATE_URL, {\n headers: authHeaders(credentials),\n method: 'PATCH',\n body: form\n }).then(function (data) {\n return data.json();\n }).then(function (data) {\n if (data.error) {\n throw new Error(data.error);\n }\n return (0,_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseUser)(data);\n });\n};\nvar updateProfile = function updateProfile(_ref6) {\n var credentials = _ref6.credentials,\n params = _ref6.params;\n return promisedRequest({\n url: MASTODON_PROFILE_UPDATE_URL,\n method: 'PATCH',\n payload: params,\n credentials: credentials\n }).then(function (data) {\n return (0,_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseUser)(data);\n });\n};\n\n// Params needed:\n// nickname\n// email\n// fullname\n// password\n// password_confirm\n//\n// Optional\n// bio\n// homepage\n// location\n// token\n// language\nvar register = function register(_ref7) {\n var params = _ref7.params,\n credentials = _ref7.credentials;\n var nickname = params.nickname,\n rest = (0,_babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(params, _excluded);\n return fetch(MASTODON_REGISTRATION_URL, {\n method: 'POST',\n headers: _objectSpread(_objectSpread({}, authHeaders(credentials)), {}, {\n 'Content-Type': 'application/json'\n }),\n body: JSON.stringify(_objectSpread({\n nickname: nickname,\n locale: 'en_US',\n agreement: true\n }, rest))\n }).then(function (response) {\n if (response.ok) {\n return response.json();\n } else {\n return response.json().then(function (error) {\n throw new _errors_errors__WEBPACK_IMPORTED_MODULE_11__.RegistrationError(error);\n });\n }\n });\n};\nvar getCaptcha = function getCaptcha() {\n return fetch('/api/pleroma/captcha').then(function (resp) {\n return resp.json();\n });\n};\nvar authHeaders = function authHeaders(accessToken) {\n if (accessToken) {\n return {\n Authorization: \"Bearer \".concat(accessToken)\n };\n } else {\n return {};\n }\n};\nvar followUser = function followUser(_ref8) {\n var id = _ref8.id,\n credentials = _ref8.credentials,\n options = (0,_babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(_ref8, _excluded2);\n var url = MASTODON_FOLLOW_URL(id);\n var form = {};\n if (options.reblogs !== undefined) {\n form.reblogs = options.reblogs;\n }\n return fetch(url, {\n body: JSON.stringify(form),\n headers: _objectSpread(_objectSpread({}, authHeaders(credentials)), {}, {\n 'Content-Type': 'application/json'\n }),\n method: 'POST'\n }).then(function (data) {\n return data.json();\n });\n};\nvar unfollowUser = function unfollowUser(_ref9) {\n var id = _ref9.id,\n credentials = _ref9.credentials;\n var url = MASTODON_UNFOLLOW_URL(id);\n return fetch(url, {\n headers: authHeaders(credentials),\n method: 'POST'\n }).then(function (data) {\n return data.json();\n });\n};\nvar fetchUserInLists = function fetchUserInLists(_ref10) {\n var id = _ref10.id,\n credentials = _ref10.credentials;\n var url = MASTODON_USER_IN_LISTS(id);\n return fetch(url, {\n headers: authHeaders(credentials)\n }).then(function (data) {\n return data.json();\n });\n};\nvar pinOwnStatus = function pinOwnStatus(_ref11) {\n var id = _ref11.id,\n credentials = _ref11.credentials;\n return promisedRequest({\n url: MASTODON_PIN_OWN_STATUS(id),\n credentials: credentials,\n method: 'POST'\n }).then(function (data) {\n return (0,_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseStatus)(data);\n });\n};\nvar unpinOwnStatus = function unpinOwnStatus(_ref12) {\n var id = _ref12.id,\n credentials = _ref12.credentials;\n return promisedRequest({\n url: MASTODON_UNPIN_OWN_STATUS(id),\n credentials: credentials,\n method: 'POST'\n }).then(function (data) {\n return (0,_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseStatus)(data);\n });\n};\nvar muteConversation = function muteConversation(_ref13) {\n var id = _ref13.id,\n credentials = _ref13.credentials;\n return promisedRequest({\n url: MASTODON_MUTE_CONVERSATION(id),\n credentials: credentials,\n method: 'POST'\n }).then(function (data) {\n return (0,_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseStatus)(data);\n });\n};\nvar unmuteConversation = function unmuteConversation(_ref14) {\n var id = _ref14.id,\n credentials = _ref14.credentials;\n return promisedRequest({\n url: MASTODON_UNMUTE_CONVERSATION(id),\n credentials: credentials,\n method: 'POST'\n }).then(function (data) {\n return (0,_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseStatus)(data);\n });\n};\nvar blockUser = function blockUser(_ref15) {\n var id = _ref15.id,\n credentials = _ref15.credentials;\n return fetch(MASTODON_BLOCK_USER_URL(id), {\n headers: authHeaders(credentials),\n method: 'POST'\n }).then(function (data) {\n return data.json();\n });\n};\nvar unblockUser = function unblockUser(_ref16) {\n var id = _ref16.id,\n credentials = _ref16.credentials;\n return fetch(MASTODON_UNBLOCK_USER_URL(id), {\n headers: authHeaders(credentials),\n method: 'POST'\n }).then(function (data) {\n return data.json();\n });\n};\nvar removeUserFromFollowers = function removeUserFromFollowers(_ref17) {\n var id = _ref17.id,\n credentials = _ref17.credentials;\n return fetch(MASTODON_REMOVE_USER_FROM_FOLLOWERS(id), {\n headers: authHeaders(credentials),\n method: 'POST'\n }).then(function (data) {\n return data.json();\n });\n};\nvar editUserNote = function editUserNote(_ref18) {\n var id = _ref18.id,\n credentials = _ref18.credentials,\n comment = _ref18.comment;\n return promisedRequest({\n url: MASTODON_USER_NOTE_URL(id),\n credentials: credentials,\n payload: {\n comment: comment\n },\n method: 'POST'\n });\n};\nvar approveUser = function approveUser(_ref19) {\n var id = _ref19.id,\n credentials = _ref19.credentials;\n var url = MASTODON_APPROVE_USER_URL(id);\n return fetch(url, {\n headers: authHeaders(credentials),\n method: 'POST'\n }).then(function (data) {\n return data.json();\n });\n};\nvar denyUser = function denyUser(_ref20) {\n var id = _ref20.id,\n credentials = _ref20.credentials;\n var url = MASTODON_DENY_USER_URL(id);\n return fetch(url, {\n headers: authHeaders(credentials),\n method: 'POST'\n }).then(function (data) {\n return data.json();\n });\n};\nvar fetchUser = function fetchUser(_ref21) {\n var id = _ref21.id,\n credentials = _ref21.credentials;\n var url = \"\".concat(MASTODON_USER_URL, \"/\").concat(id);\n return promisedRequest({\n url: url,\n credentials: credentials\n }).then(function (data) {\n return (0,_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseUser)(data);\n });\n};\nvar fetchUserByName = function fetchUserByName(_ref22) {\n var name = _ref22.name,\n credentials = _ref22.credentials;\n return promisedRequest({\n url: MASTODON_USER_LOOKUP_URL,\n credentials: credentials,\n params: {\n acct: name\n }\n }).then(function (data) {\n return data.id;\n })[\"catch\"](function (error) {\n if (error && error.statusCode === 404) {\n // Either the backend does not support lookup endpoint,\n // or there is no user with such name. Fallback and treat name as id.\n return name;\n } else {\n throw error;\n }\n }).then(function (id) {\n return fetchUser({\n id: id,\n credentials: credentials\n });\n });\n};\nvar fetchUserRelationship = function fetchUserRelationship(_ref23) {\n var id = _ref23.id,\n credentials = _ref23.credentials;\n var url = \"\".concat(MASTODON_USER_RELATIONSHIPS_URL, \"/?id=\").concat(id);\n return fetch(url, {\n headers: authHeaders(credentials)\n }).then(function (response) {\n return new Promise(function (resolve, reject) {\n return response.json().then(function (json) {\n if (!response.ok) {\n return reject(new _errors_errors__WEBPACK_IMPORTED_MODULE_11__.StatusCodeError(response.status, json, {\n url: url\n }, response));\n }\n return resolve(json);\n });\n });\n });\n};\nvar fetchFriends = function fetchFriends(_ref24) {\n var id = _ref24.id,\n maxId = _ref24.maxId,\n sinceId = _ref24.sinceId,\n _ref24$limit = _ref24.limit,\n limit = _ref24$limit === void 0 ? 20 : _ref24$limit,\n credentials = _ref24.credentials;\n var url = MASTODON_FOLLOWING_URL(id);\n var args = [maxId && \"max_id=\".concat(maxId), sinceId && \"since_id=\".concat(sinceId), limit && \"limit=\".concat(limit), 'with_relationships=true'].filter(function (_) {\n return _;\n }).join('&');\n url = url + (args ? '?' + args : '');\n return fetch(url, {\n headers: authHeaders(credentials)\n }).then(function (data) {\n return data.json();\n }).then(function (data) {\n return data.map(_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseUser);\n });\n};\nvar exportFriends = function exportFriends(_ref25) {\n var id = _ref25.id,\n credentials = _ref25.credentials;\n // eslint-disable-next-line no-async-promise-executor\n return new Promise( /*#__PURE__*/function () {\n var _ref26 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__[\"default\"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_9___default().mark(function _callee(resolve, reject) {\n var friends, more, maxId, users;\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_9___default().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n _context.prev = 0;\n friends = [];\n more = true;\n case 3:\n if (!more) {\n _context.next = 12;\n break;\n }\n maxId = friends.length > 0 ? lodash_last__WEBPACK_IMPORTED_MODULE_5___default()(friends).id : undefined;\n _context.next = 7;\n return fetchFriends({\n id: id,\n maxId: maxId,\n credentials: credentials\n });\n case 7:\n users = _context.sent;\n friends = lodash_concat__WEBPACK_IMPORTED_MODULE_6___default()(friends, users);\n if (users.length === 0) {\n more = false;\n }\n _context.next = 3;\n break;\n case 12:\n resolve(friends);\n _context.next = 18;\n break;\n case 15:\n _context.prev = 15;\n _context.t0 = _context[\"catch\"](0);\n reject(_context.t0);\n case 18:\n case \"end\":\n return _context.stop();\n }\n }, _callee, null, [[0, 15]]);\n }));\n return function (_x, _x2) {\n return _ref26.apply(this, arguments);\n };\n }());\n};\nvar fetchFollowers = function fetchFollowers(_ref27) {\n var id = _ref27.id,\n maxId = _ref27.maxId,\n sinceId = _ref27.sinceId,\n _ref27$limit = _ref27.limit,\n limit = _ref27$limit === void 0 ? 20 : _ref27$limit,\n credentials = _ref27.credentials;\n var url = MASTODON_FOLLOWERS_URL(id);\n var args = [maxId && \"max_id=\".concat(maxId), sinceId && \"since_id=\".concat(sinceId), limit && \"limit=\".concat(limit), 'with_relationships=true'].filter(function (_) {\n return _;\n }).join('&');\n url += args ? '?' + args : '';\n return fetch(url, {\n headers: authHeaders(credentials)\n }).then(function (data) {\n return data.json();\n }).then(function (data) {\n return data.map(_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseUser);\n });\n};\nvar fetchFollowRequests = function fetchFollowRequests(_ref28) {\n var credentials = _ref28.credentials;\n var url = MASTODON_FOLLOW_REQUESTS_URL;\n return fetch(url, {\n headers: authHeaders(credentials)\n }).then(function (data) {\n return data.json();\n }).then(function (data) {\n return data.map(_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseUser);\n });\n};\nvar fetchLists = function fetchLists(_ref29) {\n var credentials = _ref29.credentials;\n var url = MASTODON_LISTS_URL;\n return fetch(url, {\n headers: authHeaders(credentials)\n }).then(function (data) {\n return data.json();\n });\n};\nvar createList = function createList(_ref30) {\n var title = _ref30.title,\n credentials = _ref30.credentials;\n var url = MASTODON_LISTS_URL;\n var headers = authHeaders(credentials);\n headers['Content-Type'] = 'application/json';\n return fetch(url, {\n headers: headers,\n method: 'POST',\n body: JSON.stringify({\n title: title\n })\n }).then(function (data) {\n return data.json();\n });\n};\nvar getList = function getList(_ref31) {\n var listId = _ref31.listId,\n credentials = _ref31.credentials;\n var url = MASTODON_LIST_URL(listId);\n return fetch(url, {\n headers: authHeaders(credentials)\n }).then(function (data) {\n return data.json();\n });\n};\nvar updateList = function updateList(_ref32) {\n var listId = _ref32.listId,\n title = _ref32.title,\n credentials = _ref32.credentials;\n var url = MASTODON_LIST_URL(listId);\n var headers = authHeaders(credentials);\n headers['Content-Type'] = 'application/json';\n return fetch(url, {\n headers: headers,\n method: 'PUT',\n body: JSON.stringify({\n title: title\n })\n });\n};\nvar getListAccounts = function getListAccounts(_ref33) {\n var listId = _ref33.listId,\n credentials = _ref33.credentials;\n var url = MASTODON_LIST_ACCOUNTS_URL(listId);\n return fetch(url, {\n headers: authHeaders(credentials)\n }).then(function (data) {\n return data.json();\n }).then(function (data) {\n return data.map(function (_ref34) {\n var id = _ref34.id;\n return id;\n });\n });\n};\nvar addAccountsToList = function addAccountsToList(_ref35) {\n var listId = _ref35.listId,\n accountIds = _ref35.accountIds,\n credentials = _ref35.credentials;\n var url = MASTODON_LIST_ACCOUNTS_URL(listId);\n var headers = authHeaders(credentials);\n headers['Content-Type'] = 'application/json';\n return fetch(url, {\n headers: headers,\n method: 'POST',\n body: JSON.stringify({\n account_ids: accountIds\n })\n });\n};\nvar removeAccountsFromList = function removeAccountsFromList(_ref36) {\n var listId = _ref36.listId,\n accountIds = _ref36.accountIds,\n credentials = _ref36.credentials;\n var url = MASTODON_LIST_ACCOUNTS_URL(listId);\n var headers = authHeaders(credentials);\n headers['Content-Type'] = 'application/json';\n return fetch(url, {\n headers: headers,\n method: 'DELETE',\n body: JSON.stringify({\n account_ids: accountIds\n })\n });\n};\nvar deleteList = function deleteList(_ref37) {\n var listId = _ref37.listId,\n credentials = _ref37.credentials;\n var url = MASTODON_LIST_URL(listId);\n return fetch(url, {\n method: 'DELETE',\n headers: authHeaders(credentials)\n });\n};\nvar fetchConversation = function fetchConversation(_ref38) {\n var id = _ref38.id,\n credentials = _ref38.credentials;\n var urlContext = MASTODON_STATUS_CONTEXT_URL(id);\n return fetch(urlContext, {\n headers: authHeaders(credentials)\n }).then(function (data) {\n if (data.ok) {\n return data;\n }\n throw new Error('Error fetching timeline', data);\n }).then(function (data) {\n return data.json();\n }).then(function (_ref39) {\n var ancestors = _ref39.ancestors,\n descendants = _ref39.descendants;\n return {\n ancestors: ancestors.map(_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseStatus),\n descendants: descendants.map(_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseStatus)\n };\n });\n};\nvar fetchStatus = function fetchStatus(_ref40) {\n var id = _ref40.id,\n credentials = _ref40.credentials;\n var url = MASTODON_STATUS_URL(id);\n return fetch(url, {\n headers: authHeaders(credentials)\n }).then(function (data) {\n if (data.ok) {\n return data;\n }\n throw new Error('Error fetching timeline', data);\n }).then(function (data) {\n return data.json();\n }).then(function (data) {\n return (0,_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseStatus)(data);\n });\n};\nvar fetchStatusSource = function fetchStatusSource(_ref41) {\n var id = _ref41.id,\n credentials = _ref41.credentials;\n var url = MASTODON_STATUS_SOURCE_URL(id);\n return fetch(url, {\n headers: authHeaders(credentials)\n }).then(function (data) {\n if (data.ok) {\n return data;\n }\n throw new Error('Error fetching source', data);\n }).then(function (data) {\n return data.json();\n }).then(function (data) {\n return (0,_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseSource)(data);\n });\n};\nvar fetchStatusHistory = function fetchStatusHistory(_ref42) {\n var status = _ref42.status,\n credentials = _ref42.credentials;\n var url = MASTODON_STATUS_HISTORY_URL(status.id);\n return promisedRequest({\n url: url,\n credentials: credentials\n }).then(function (data) {\n data.reverse();\n return data.map(function (item) {\n item.originalStatus = status;\n return (0,_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseStatus)(item);\n });\n });\n};\nvar tagUser = function tagUser(_ref43) {\n var tag = _ref43.tag,\n credentials = _ref43.credentials,\n user = _ref43.user;\n var screenName = user.screen_name;\n var form = {\n nicknames: [screenName],\n tags: [tag]\n };\n var headers = authHeaders(credentials);\n headers['Content-Type'] = 'application/json';\n return fetch(TAG_USER_URL, {\n method: 'PUT',\n headers: headers,\n body: JSON.stringify(form)\n });\n};\nvar untagUser = function untagUser(_ref44) {\n var tag = _ref44.tag,\n credentials = _ref44.credentials,\n user = _ref44.user;\n var screenName = user.screen_name;\n var body = {\n nicknames: [screenName],\n tags: [tag]\n };\n var headers = authHeaders(credentials);\n headers['Content-Type'] = 'application/json';\n return fetch(TAG_USER_URL, {\n method: 'DELETE',\n headers: headers,\n body: JSON.stringify(body)\n });\n};\nvar addRight = function addRight(_ref45) {\n var right = _ref45.right,\n credentials = _ref45.credentials,\n user = _ref45.user;\n var screenName = user.screen_name;\n return fetch(PERMISSION_GROUP_URL(screenName, right), {\n method: 'POST',\n headers: authHeaders(credentials),\n body: {}\n });\n};\nvar deleteRight = function deleteRight(_ref46) {\n var right = _ref46.right,\n credentials = _ref46.credentials,\n user = _ref46.user;\n var screenName = user.screen_name;\n return fetch(PERMISSION_GROUP_URL(screenName, right), {\n method: 'DELETE',\n headers: authHeaders(credentials),\n body: {}\n });\n};\nvar activateUser = function activateUser(_ref47) {\n var credentials = _ref47.credentials,\n nickname = _ref47.user.screen_name;\n return promisedRequest({\n url: ACTIVATE_USER_URL,\n method: 'PATCH',\n credentials: credentials,\n payload: {\n nicknames: [nickname]\n }\n }).then(function (response) {\n return lodash_get__WEBPACK_IMPORTED_MODULE_4___default()(response, 'users.0');\n });\n};\nvar deactivateUser = function deactivateUser(_ref48) {\n var credentials = _ref48.credentials,\n nickname = _ref48.user.screen_name;\n return promisedRequest({\n url: DEACTIVATE_USER_URL,\n method: 'PATCH',\n credentials: credentials,\n payload: {\n nicknames: [nickname]\n }\n }).then(function (response) {\n return lodash_get__WEBPACK_IMPORTED_MODULE_4___default()(response, 'users.0');\n });\n};\nvar deleteUser = function deleteUser(_ref49) {\n var credentials = _ref49.credentials,\n user = _ref49.user;\n var screenName = user.screen_name;\n var headers = authHeaders(credentials);\n return fetch(\"\".concat(ADMIN_USERS_URL, \"?nickname=\").concat(screenName), {\n method: 'DELETE',\n headers: headers\n });\n};\nvar fetchTimeline = function fetchTimeline(_ref50) {\n var timeline = _ref50.timeline,\n credentials = _ref50.credentials,\n _ref50$since = _ref50.since,\n since = _ref50$since === void 0 ? false : _ref50$since,\n _ref50$until = _ref50.until,\n until = _ref50$until === void 0 ? false : _ref50$until,\n _ref50$userId = _ref50.userId,\n userId = _ref50$userId === void 0 ? false : _ref50$userId,\n _ref50$listId = _ref50.listId,\n listId = _ref50$listId === void 0 ? false : _ref50$listId,\n _ref50$tag = _ref50.tag,\n tag = _ref50$tag === void 0 ? false : _ref50$tag,\n _ref50$withMuted = _ref50.withMuted,\n withMuted = _ref50$withMuted === void 0 ? false : _ref50$withMuted,\n _ref50$replyVisibilit = _ref50.replyVisibility,\n replyVisibility = _ref50$replyVisibilit === void 0 ? 'all' : _ref50$replyVisibilit,\n _ref50$includeTypes = _ref50.includeTypes,\n includeTypes = _ref50$includeTypes === void 0 ? [] : _ref50$includeTypes;\n var timelineUrls = {\n \"public\": MASTODON_PUBLIC_TIMELINE,\n friends: MASTODON_USER_HOME_TIMELINE_URL,\n dms: MASTODON_DIRECT_MESSAGES_TIMELINE_URL,\n notifications: MASTODON_USER_NOTIFICATIONS_URL,\n publicAndExternal: MASTODON_PUBLIC_TIMELINE,\n user: MASTODON_USER_TIMELINE_URL,\n media: MASTODON_USER_TIMELINE_URL,\n list: MASTODON_LIST_TIMELINE_URL,\n favorites: MASTODON_USER_FAVORITES_TIMELINE_URL,\n tag: MASTODON_TAG_TIMELINE_URL,\n bookmarks: MASTODON_BOOKMARK_TIMELINE_URL\n };\n var isNotifications = timeline === 'notifications';\n var params = [];\n var url = timelineUrls[timeline];\n if (timeline === 'user' || timeline === 'media') {\n url = url(userId);\n }\n if (timeline === 'list') {\n url = url(listId);\n }\n if (since) {\n params.push(['since_id', since]);\n }\n if (until) {\n params.push(['max_id', until]);\n }\n if (tag) {\n url = url(tag);\n }\n if (timeline === 'media') {\n params.push(['only_media', 1]);\n }\n if (timeline === 'public') {\n params.push(['local', true]);\n }\n if (timeline === 'public' || timeline === 'publicAndExternal') {\n params.push(['only_media', false]);\n }\n if (timeline !== 'favorites' && timeline !== 'bookmarks') {\n params.push(['with_muted', withMuted]);\n }\n if (replyVisibility !== 'all') {\n params.push(['reply_visibility', replyVisibility]);\n }\n if (includeTypes.length > 0) {\n includeTypes.forEach(function (type) {\n params.push(['include_types[]', type]);\n });\n }\n params.push(['limit', 20]);\n var queryString = lodash_map__WEBPACK_IMPORTED_MODULE_7___default()(params, function (param) {\n return \"\".concat(param[0], \"=\").concat(param[1]);\n }).join('&');\n url += \"?\".concat(queryString);\n return fetch(url, {\n headers: authHeaders(credentials)\n }).then( /*#__PURE__*/function () {\n var _ref51 = (0,_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0__[\"default\"])( /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_9___default().mark(function _callee2(response) {\n var success, data, pagination;\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_9___default().wrap(function _callee2$(_context2) {\n while (1) switch (_context2.prev = _context2.next) {\n case 0:\n success = response.ok;\n _context2.next = 3;\n return response.json();\n case 3:\n data = _context2.sent;\n if (!(success && !data.errors)) {\n _context2.next = 9;\n break;\n }\n pagination = (0,_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseLinkHeaderPagination)(response.headers.get('Link'), {\n flakeId: timeline !== 'bookmarks' && timeline !== 'notifications'\n });\n return _context2.abrupt(\"return\", {\n data: data.map(isNotifications ? _entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseNotification : _entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseStatus),\n pagination: pagination\n });\n case 9:\n data.errors || (data.errors = []);\n data.status = response.status;\n data.statusText = response.statusText;\n return _context2.abrupt(\"return\", data);\n case 13:\n case \"end\":\n return _context2.stop();\n }\n }, _callee2);\n }));\n return function (_x3) {\n return _ref51.apply(this, arguments);\n };\n }());\n};\nvar fetchPinnedStatuses = function fetchPinnedStatuses(_ref52) {\n var id = _ref52.id,\n credentials = _ref52.credentials;\n var url = MASTODON_USER_TIMELINE_URL(id) + '?pinned=true';\n return promisedRequest({\n url: url,\n credentials: credentials\n }).then(function (data) {\n return data.map(_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseStatus);\n });\n};\nvar verifyCredentials = function verifyCredentials(user) {\n return fetch(MASTODON_LOGIN_URL, {\n headers: authHeaders(user)\n }).then(function (response) {\n if (response.ok) {\n return response.json();\n } else {\n return {\n error: response\n };\n }\n }).then(function (data) {\n return data.error ? data : (0,_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseUser)(data);\n });\n};\nvar favorite = function favorite(_ref53) {\n var id = _ref53.id,\n credentials = _ref53.credentials;\n return promisedRequest({\n url: MASTODON_FAVORITE_URL(id),\n method: 'POST',\n credentials: credentials\n }).then(function (data) {\n return (0,_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseStatus)(data);\n });\n};\nvar unfavorite = function unfavorite(_ref54) {\n var id = _ref54.id,\n credentials = _ref54.credentials;\n return promisedRequest({\n url: MASTODON_UNFAVORITE_URL(id),\n method: 'POST',\n credentials: credentials\n }).then(function (data) {\n return (0,_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseStatus)(data);\n });\n};\nvar retweet = function retweet(_ref55) {\n var id = _ref55.id,\n credentials = _ref55.credentials;\n return promisedRequest({\n url: MASTODON_RETWEET_URL(id),\n method: 'POST',\n credentials: credentials\n }).then(function (data) {\n return (0,_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseStatus)(data);\n });\n};\nvar unretweet = function unretweet(_ref56) {\n var id = _ref56.id,\n credentials = _ref56.credentials;\n return promisedRequest({\n url: MASTODON_UNRETWEET_URL(id),\n method: 'POST',\n credentials: credentials\n }).then(function (data) {\n return (0,_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseStatus)(data);\n });\n};\nvar bookmarkStatus = function bookmarkStatus(_ref57) {\n var id = _ref57.id,\n credentials = _ref57.credentials;\n return promisedRequest({\n url: MASTODON_BOOKMARK_STATUS_URL(id),\n headers: authHeaders(credentials),\n method: 'POST'\n });\n};\nvar unbookmarkStatus = function unbookmarkStatus(_ref58) {\n var id = _ref58.id,\n credentials = _ref58.credentials;\n return promisedRequest({\n url: MASTODON_UNBOOKMARK_STATUS_URL(id),\n headers: authHeaders(credentials),\n method: 'POST'\n });\n};\nvar postStatus = function postStatus(_ref59) {\n var credentials = _ref59.credentials,\n status = _ref59.status,\n spoilerText = _ref59.spoilerText,\n visibility = _ref59.visibility,\n sensitive = _ref59.sensitive,\n poll = _ref59.poll,\n _ref59$mediaIds = _ref59.mediaIds,\n mediaIds = _ref59$mediaIds === void 0 ? [] : _ref59$mediaIds,\n inReplyToStatusId = _ref59.inReplyToStatusId,\n quoteId = _ref59.quoteId,\n contentType = _ref59.contentType,\n preview = _ref59.preview,\n idempotencyKey = _ref59.idempotencyKey;\n var form = new FormData();\n var pollOptions = poll.options || [];\n form.append('status', status);\n form.append('source', 'Pleroma FE');\n if (spoilerText) form.append('spoiler_text', spoilerText);\n if (visibility) form.append('visibility', visibility);\n if (sensitive) form.append('sensitive', sensitive);\n if (contentType) form.append('content_type', contentType);\n mediaIds.forEach(function (val) {\n form.append('media_ids[]', val);\n });\n if (pollOptions.some(function (option) {\n return option !== '';\n })) {\n var normalizedPoll = {\n expires_in: parseInt(poll.expiresIn, 10),\n multiple: poll.multiple\n };\n Object.keys(normalizedPoll).forEach(function (key) {\n form.append(\"poll[\".concat(key, \"]\"), normalizedPoll[key]);\n });\n pollOptions.forEach(function (option) {\n form.append('poll[options][]', option);\n });\n }\n if (inReplyToStatusId) {\n form.append('in_reply_to_id', inReplyToStatusId);\n }\n if (quoteId) {\n form.append('quote_id', quoteId);\n }\n if (preview) {\n form.append('preview', 'true');\n }\n var postHeaders = authHeaders(credentials);\n if (idempotencyKey) {\n postHeaders['idempotency-key'] = idempotencyKey;\n }\n return fetch(MASTODON_POST_STATUS_URL, {\n body: form,\n method: 'POST',\n headers: postHeaders\n }).then(function (response) {\n return response.json();\n }).then(function (data) {\n return data.error ? data : (0,_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseStatus)(data);\n });\n};\nvar editStatus = function editStatus(_ref60) {\n var id = _ref60.id,\n credentials = _ref60.credentials,\n status = _ref60.status,\n spoilerText = _ref60.spoilerText,\n sensitive = _ref60.sensitive,\n poll = _ref60.poll,\n _ref60$mediaIds = _ref60.mediaIds,\n mediaIds = _ref60$mediaIds === void 0 ? [] : _ref60$mediaIds,\n contentType = _ref60.contentType;\n var form = new FormData();\n var pollOptions = poll.options || [];\n form.append('status', status);\n if (spoilerText) form.append('spoiler_text', spoilerText);\n if (sensitive) form.append('sensitive', sensitive);\n if (contentType) form.append('content_type', contentType);\n mediaIds.forEach(function (val) {\n form.append('media_ids[]', val);\n });\n if (pollOptions.some(function (option) {\n return option !== '';\n })) {\n var normalizedPoll = {\n expires_in: parseInt(poll.expiresIn, 10),\n multiple: poll.multiple\n };\n Object.keys(normalizedPoll).forEach(function (key) {\n form.append(\"poll[\".concat(key, \"]\"), normalizedPoll[key]);\n });\n pollOptions.forEach(function (option) {\n form.append('poll[options][]', option);\n });\n }\n var putHeaders = authHeaders(credentials);\n return fetch(MASTODON_STATUS_URL(id), {\n body: form,\n method: 'PUT',\n headers: putHeaders\n }).then(function (response) {\n return response.json();\n }).then(function (data) {\n return data.error ? data : (0,_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseStatus)(data);\n });\n};\nvar deleteStatus = function deleteStatus(_ref61) {\n var id = _ref61.id,\n credentials = _ref61.credentials;\n return promisedRequest({\n url: MASTODON_DELETE_URL(id),\n credentials: credentials,\n method: 'DELETE'\n });\n};\nvar uploadMedia = function uploadMedia(_ref62) {\n var formData = _ref62.formData,\n credentials = _ref62.credentials;\n return fetch(MASTODON_MEDIA_UPLOAD_URL, {\n body: formData,\n method: 'POST',\n headers: authHeaders(credentials)\n }).then(function (data) {\n return data.json();\n }).then(function (data) {\n return (0,_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseAttachment)(data);\n });\n};\nvar setMediaDescription = function setMediaDescription(_ref63) {\n var id = _ref63.id,\n description = _ref63.description,\n credentials = _ref63.credentials;\n return promisedRequest({\n url: \"\".concat(MASTODON_MEDIA_UPLOAD_URL, \"/\").concat(id),\n method: 'PUT',\n headers: authHeaders(credentials),\n payload: {\n description: description\n }\n }).then(function (data) {\n return (0,_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseAttachment)(data);\n });\n};\nvar importMutes = function importMutes(_ref64) {\n var file = _ref64.file,\n credentials = _ref64.credentials;\n var formData = new FormData();\n formData.append('list', file);\n return fetch(MUTES_IMPORT_URL, {\n body: formData,\n method: 'POST',\n headers: authHeaders(credentials)\n }).then(function (response) {\n return response.ok;\n });\n};\nvar importBlocks = function importBlocks(_ref65) {\n var file = _ref65.file,\n credentials = _ref65.credentials;\n var formData = new FormData();\n formData.append('list', file);\n return fetch(BLOCKS_IMPORT_URL, {\n body: formData,\n method: 'POST',\n headers: authHeaders(credentials)\n }).then(function (response) {\n return response.ok;\n });\n};\nvar importFollows = function importFollows(_ref66) {\n var file = _ref66.file,\n credentials = _ref66.credentials;\n var formData = new FormData();\n formData.append('list', file);\n return fetch(FOLLOW_IMPORT_URL, {\n body: formData,\n method: 'POST',\n headers: authHeaders(credentials)\n }).then(function (response) {\n return response.ok;\n });\n};\nvar deleteAccount = function deleteAccount(_ref67) {\n var credentials = _ref67.credentials,\n password = _ref67.password;\n var form = new FormData();\n form.append('password', password);\n return fetch(DELETE_ACCOUNT_URL, {\n body: form,\n method: 'POST',\n headers: authHeaders(credentials)\n }).then(function (response) {\n return response.json();\n });\n};\nvar changeEmail = function changeEmail(_ref68) {\n var credentials = _ref68.credentials,\n email = _ref68.email,\n password = _ref68.password;\n var form = new FormData();\n form.append('email', email);\n form.append('password', password);\n return fetch(CHANGE_EMAIL_URL, {\n body: form,\n method: 'POST',\n headers: authHeaders(credentials)\n }).then(function (response) {\n return response.json();\n });\n};\nvar moveAccount = function moveAccount(_ref69) {\n var credentials = _ref69.credentials,\n password = _ref69.password,\n targetAccount = _ref69.targetAccount;\n var form = new FormData();\n form.append('password', password);\n form.append('target_account', targetAccount);\n return fetch(MOVE_ACCOUNT_URL, {\n body: form,\n method: 'POST',\n headers: authHeaders(credentials)\n }).then(function (response) {\n return response.json();\n });\n};\nvar addAlias = function addAlias(_ref70) {\n var credentials = _ref70.credentials,\n alias = _ref70.alias;\n return promisedRequest({\n url: ALIASES_URL,\n method: 'PUT',\n credentials: credentials,\n payload: {\n alias: alias\n }\n });\n};\nvar deleteAlias = function deleteAlias(_ref71) {\n var credentials = _ref71.credentials,\n alias = _ref71.alias;\n return promisedRequest({\n url: ALIASES_URL,\n method: 'DELETE',\n credentials: credentials,\n payload: {\n alias: alias\n }\n });\n};\nvar listAliases = function listAliases(_ref72) {\n var credentials = _ref72.credentials;\n return promisedRequest({\n url: ALIASES_URL,\n method: 'GET',\n credentials: credentials,\n params: {\n _cacheBooster: new Date().getTime()\n }\n });\n};\nvar changePassword = function changePassword(_ref73) {\n var credentials = _ref73.credentials,\n password = _ref73.password,\n newPassword = _ref73.newPassword,\n newPasswordConfirmation = _ref73.newPasswordConfirmation;\n var form = new FormData();\n form.append('password', password);\n form.append('new_password', newPassword);\n form.append('new_password_confirmation', newPasswordConfirmation);\n return fetch(CHANGE_PASSWORD_URL, {\n body: form,\n method: 'POST',\n headers: authHeaders(credentials)\n }).then(function (response) {\n return response.json();\n });\n};\nvar settingsMFA = function settingsMFA(_ref74) {\n var credentials = _ref74.credentials;\n return fetch(MFA_SETTINGS_URL, {\n headers: authHeaders(credentials),\n method: 'GET'\n }).then(function (data) {\n return data.json();\n });\n};\nvar mfaDisableOTP = function mfaDisableOTP(_ref75) {\n var credentials = _ref75.credentials,\n password = _ref75.password;\n var form = new FormData();\n form.append('password', password);\n return fetch(MFA_DISABLE_OTP_URL, {\n body: form,\n method: 'DELETE',\n headers: authHeaders(credentials)\n }).then(function (response) {\n return response.json();\n });\n};\nvar mfaConfirmOTP = function mfaConfirmOTP(_ref76) {\n var credentials = _ref76.credentials,\n password = _ref76.password,\n token = _ref76.token;\n var form = new FormData();\n form.append('password', password);\n form.append('code', token);\n return fetch(MFA_CONFIRM_OTP_URL, {\n body: form,\n headers: authHeaders(credentials),\n method: 'POST'\n }).then(function (data) {\n return data.json();\n });\n};\nvar mfaSetupOTP = function mfaSetupOTP(_ref77) {\n var credentials = _ref77.credentials;\n return fetch(MFA_SETUP_OTP_URL, {\n headers: authHeaders(credentials),\n method: 'GET'\n }).then(function (data) {\n return data.json();\n });\n};\nvar generateMfaBackupCodes = function generateMfaBackupCodes(_ref78) {\n var credentials = _ref78.credentials;\n return fetch(MFA_BACKUP_CODES_URL, {\n headers: authHeaders(credentials),\n method: 'GET'\n }).then(function (data) {\n return data.json();\n });\n};\nvar fetchMutes = function fetchMutes(_ref79) {\n var maxId = _ref79.maxId,\n credentials = _ref79.credentials;\n var query = new URLSearchParams({\n with_relationships: true\n });\n if (maxId) {\n query.append('max_id', maxId);\n }\n return promisedRequest({\n url: \"\".concat(MASTODON_USER_MUTES_URL, \"?\").concat(query.toString()),\n credentials: credentials\n }).then(function (users) {\n return users.map(_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseUser);\n });\n};\nvar muteUser = function muteUser(_ref80) {\n var id = _ref80.id,\n expiresIn = _ref80.expiresIn,\n credentials = _ref80.credentials;\n var payload = {};\n if (expiresIn) {\n payload.expires_in = expiresIn;\n }\n return promisedRequest({\n url: MASTODON_MUTE_USER_URL(id),\n credentials: credentials,\n method: 'POST',\n payload: payload\n });\n};\nvar unmuteUser = function unmuteUser(_ref81) {\n var id = _ref81.id,\n credentials = _ref81.credentials;\n return promisedRequest({\n url: MASTODON_UNMUTE_USER_URL(id),\n credentials: credentials,\n method: 'POST'\n });\n};\nvar subscribeUser = function subscribeUser(_ref82) {\n var id = _ref82.id,\n credentials = _ref82.credentials;\n return promisedRequest({\n url: MASTODON_SUBSCRIBE_USER(id),\n credentials: credentials,\n method: 'POST'\n });\n};\nvar unsubscribeUser = function unsubscribeUser(_ref83) {\n var id = _ref83.id,\n credentials = _ref83.credentials;\n return promisedRequest({\n url: MASTODON_UNSUBSCRIBE_USER(id),\n credentials: credentials,\n method: 'POST'\n });\n};\nvar fetchBlocks = function fetchBlocks(_ref84) {\n var maxId = _ref84.maxId,\n credentials = _ref84.credentials;\n var query = new URLSearchParams({\n with_relationships: true\n });\n if (maxId) {\n query.append('max_id', maxId);\n }\n return promisedRequest({\n url: \"\".concat(MASTODON_USER_BLOCKS_URL, \"?\").concat(query.toString()),\n credentials: credentials\n }).then(function (users) {\n return users.map(_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseUser);\n });\n};\nvar addBackup = function addBackup(_ref85) {\n var credentials = _ref85.credentials;\n return promisedRequest({\n url: PLEROMA_BACKUP_URL,\n method: 'POST',\n credentials: credentials\n });\n};\nvar listBackups = function listBackups(_ref86) {\n var credentials = _ref86.credentials;\n return promisedRequest({\n url: PLEROMA_BACKUP_URL,\n method: 'GET',\n credentials: credentials,\n params: {\n _cacheBooster: new Date().getTime()\n }\n });\n};\nvar fetchOAuthTokens = function fetchOAuthTokens(_ref87) {\n var credentials = _ref87.credentials;\n var url = '/api/oauth_tokens.json';\n return fetch(url, {\n headers: authHeaders(credentials)\n }).then(function (data) {\n if (data.ok) {\n return data.json();\n }\n throw new Error('Error fetching auth tokens', data);\n });\n};\nvar revokeOAuthToken = function revokeOAuthToken(_ref88) {\n var id = _ref88.id,\n credentials = _ref88.credentials;\n var url = \"/api/oauth_tokens/\".concat(id);\n return fetch(url, {\n headers: authHeaders(credentials),\n method: 'DELETE'\n });\n};\nvar suggestions = function suggestions(_ref89) {\n var credentials = _ref89.credentials;\n return fetch(SUGGESTIONS_URL, {\n headers: authHeaders(credentials)\n }).then(function (data) {\n return data.json();\n });\n};\nvar markNotificationsAsSeen = function markNotificationsAsSeen(_ref90) {\n var id = _ref90.id,\n credentials = _ref90.credentials,\n _ref90$single = _ref90.single,\n single = _ref90$single === void 0 ? false : _ref90$single;\n var body = new FormData();\n if (single) {\n body.append('id', id);\n } else {\n body.append('max_id', id);\n }\n return fetch(NOTIFICATION_READ_URL, {\n body: body,\n headers: authHeaders(credentials),\n method: 'POST'\n }).then(function (data) {\n return data.json();\n });\n};\nvar vote = function vote(_ref91) {\n var pollId = _ref91.pollId,\n choices = _ref91.choices,\n credentials = _ref91.credentials;\n var form = new FormData();\n form.append('choices', choices);\n return promisedRequest({\n url: MASTODON_VOTE_URL(encodeURIComponent(pollId)),\n method: 'POST',\n credentials: credentials,\n payload: {\n choices: choices\n }\n });\n};\nvar fetchPoll = function fetchPoll(_ref92) {\n var pollId = _ref92.pollId,\n credentials = _ref92.credentials;\n return promisedRequest({\n url: MASTODON_POLL_URL(encodeURIComponent(pollId)),\n method: 'GET',\n credentials: credentials\n });\n};\nvar fetchFavoritedByUsers = function fetchFavoritedByUsers(_ref93) {\n var id = _ref93.id,\n credentials = _ref93.credentials;\n return promisedRequest({\n url: MASTODON_STATUS_FAVORITEDBY_URL(id),\n method: 'GET',\n credentials: credentials\n }).then(function (users) {\n return users.map(_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseUser);\n });\n};\nvar fetchRebloggedByUsers = function fetchRebloggedByUsers(_ref94) {\n var id = _ref94.id,\n credentials = _ref94.credentials;\n return promisedRequest({\n url: MASTODON_STATUS_REBLOGGEDBY_URL(id),\n method: 'GET',\n credentials: credentials\n }).then(function (users) {\n return users.map(_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseUser);\n });\n};\nvar fetchEmojiReactions = function fetchEmojiReactions(_ref95) {\n var id = _ref95.id,\n credentials = _ref95.credentials;\n return promisedRequest({\n url: PLEROMA_EMOJI_REACTIONS_URL(id),\n credentials: credentials\n }).then(function (reactions) {\n return reactions.map(function (r) {\n r.accounts = r.accounts.map(_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseUser);\n return r;\n });\n });\n};\nvar reactWithEmoji = function reactWithEmoji(_ref96) {\n var id = _ref96.id,\n emoji = _ref96.emoji,\n credentials = _ref96.credentials;\n return promisedRequest({\n url: PLEROMA_EMOJI_REACT_URL(id, emoji),\n method: 'PUT',\n credentials: credentials\n }).then(_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseStatus);\n};\nvar unreactWithEmoji = function unreactWithEmoji(_ref97) {\n var id = _ref97.id,\n emoji = _ref97.emoji,\n credentials = _ref97.credentials;\n return promisedRequest({\n url: PLEROMA_EMOJI_UNREACT_URL(id, emoji),\n method: 'DELETE',\n credentials: credentials\n }).then(_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseStatus);\n};\nvar reportUser = function reportUser(_ref98) {\n var credentials = _ref98.credentials,\n userId = _ref98.userId,\n statusIds = _ref98.statusIds,\n comment = _ref98.comment,\n forward = _ref98.forward;\n return promisedRequest({\n url: MASTODON_REPORT_USER_URL,\n method: 'POST',\n payload: {\n account_id: userId,\n status_ids: statusIds,\n comment: comment,\n forward: forward\n },\n credentials: credentials\n });\n};\nvar searchUsers = function searchUsers(_ref99) {\n var credentials = _ref99.credentials,\n query = _ref99.query;\n return promisedRequest({\n url: MASTODON_USER_SEARCH_URL,\n params: {\n q: query,\n resolve: true\n },\n credentials: credentials\n }).then(function (data) {\n return data.map(_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseUser);\n });\n};\nvar search2 = function search2(_ref100) {\n var credentials = _ref100.credentials,\n q = _ref100.q,\n resolve = _ref100.resolve,\n limit = _ref100.limit,\n offset = _ref100.offset,\n following = _ref100.following,\n type = _ref100.type;\n var url = MASTODON_SEARCH_2;\n var params = [];\n if (q) {\n params.push(['q', encodeURIComponent(q)]);\n }\n if (resolve) {\n params.push(['resolve', resolve]);\n }\n if (limit) {\n params.push(['limit', limit]);\n }\n if (offset) {\n params.push(['offset', offset]);\n }\n if (following) {\n params.push(['following', true]);\n }\n if (type) {\n params.push(['following', type]);\n }\n params.push(['with_relationships', true]);\n var queryString = lodash_map__WEBPACK_IMPORTED_MODULE_7___default()(params, function (param) {\n return \"\".concat(param[0], \"=\").concat(param[1]);\n }).join('&');\n url += \"?\".concat(queryString);\n return fetch(url, {\n headers: authHeaders(credentials)\n }).then(function (data) {\n if (data.ok) {\n return data;\n }\n throw new Error('Error fetching search result', data);\n }).then(function (data) {\n return data.json();\n }).then(function (data) {\n data.accounts = data.accounts.slice(0, limit).map(function (u) {\n return (0,_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseUser)(u);\n });\n data.statuses = data.statuses.slice(0, limit).map(function (s) {\n return (0,_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseStatus)(s);\n });\n return data;\n });\n};\nvar fetchKnownDomains = function fetchKnownDomains(_ref101) {\n var credentials = _ref101.credentials;\n return promisedRequest({\n url: MASTODON_KNOWN_DOMAIN_LIST_URL,\n credentials: credentials\n });\n};\nvar fetchDomainMutes = function fetchDomainMutes(_ref102) {\n var credentials = _ref102.credentials;\n return promisedRequest({\n url: MASTODON_DOMAIN_BLOCKS_URL,\n credentials: credentials\n });\n};\nvar muteDomain = function muteDomain(_ref103) {\n var domain = _ref103.domain,\n credentials = _ref103.credentials;\n return promisedRequest({\n url: MASTODON_DOMAIN_BLOCKS_URL,\n method: 'POST',\n payload: {\n domain: domain\n },\n credentials: credentials\n });\n};\nvar unmuteDomain = function unmuteDomain(_ref104) {\n var domain = _ref104.domain,\n credentials = _ref104.credentials;\n return promisedRequest({\n url: MASTODON_DOMAIN_BLOCKS_URL,\n method: 'DELETE',\n payload: {\n domain: domain\n },\n credentials: credentials\n });\n};\nvar dismissNotification = function dismissNotification(_ref105) {\n var credentials = _ref105.credentials,\n id = _ref105.id;\n return promisedRequest({\n url: MASTODON_DISMISS_NOTIFICATION_URL(id),\n method: 'POST',\n payload: {\n id: id\n },\n credentials: credentials\n });\n};\nvar adminFetchAnnouncements = function adminFetchAnnouncements(_ref106) {\n var credentials = _ref106.credentials;\n return promisedRequest({\n url: PLEROMA_ANNOUNCEMENTS_URL,\n credentials: credentials\n });\n};\nvar fetchAnnouncements = function fetchAnnouncements(_ref107) {\n var credentials = _ref107.credentials;\n return promisedRequest({\n url: MASTODON_ANNOUNCEMENTS_URL,\n credentials: credentials\n });\n};\nvar dismissAnnouncement = function dismissAnnouncement(_ref108) {\n var id = _ref108.id,\n credentials = _ref108.credentials;\n return promisedRequest({\n url: MASTODON_ANNOUNCEMENTS_DISMISS_URL(id),\n credentials: credentials,\n method: 'POST'\n });\n};\nvar announcementToPayload = function announcementToPayload(_ref109) {\n var content = _ref109.content,\n startsAt = _ref109.startsAt,\n endsAt = _ref109.endsAt,\n allDay = _ref109.allDay;\n var payload = {\n content: content\n };\n if (typeof startsAt !== 'undefined') {\n payload.starts_at = startsAt ? new Date(startsAt).toISOString() : null;\n }\n if (typeof endsAt !== 'undefined') {\n payload.ends_at = endsAt ? new Date(endsAt).toISOString() : null;\n }\n if (typeof allDay !== 'undefined') {\n payload.all_day = allDay;\n }\n return payload;\n};\nvar postAnnouncement = function postAnnouncement(_ref110) {\n var credentials = _ref110.credentials,\n content = _ref110.content,\n startsAt = _ref110.startsAt,\n endsAt = _ref110.endsAt,\n allDay = _ref110.allDay;\n return promisedRequest({\n url: PLEROMA_POST_ANNOUNCEMENT_URL,\n credentials: credentials,\n method: 'POST',\n payload: announcementToPayload({\n content: content,\n startsAt: startsAt,\n endsAt: endsAt,\n allDay: allDay\n })\n });\n};\nvar editAnnouncement = function editAnnouncement(_ref111) {\n var id = _ref111.id,\n credentials = _ref111.credentials,\n content = _ref111.content,\n startsAt = _ref111.startsAt,\n endsAt = _ref111.endsAt,\n allDay = _ref111.allDay;\n return promisedRequest({\n url: PLEROMA_EDIT_ANNOUNCEMENT_URL(id),\n credentials: credentials,\n method: 'PATCH',\n payload: announcementToPayload({\n content: content,\n startsAt: startsAt,\n endsAt: endsAt,\n allDay: allDay\n })\n });\n};\nvar deleteAnnouncement = function deleteAnnouncement(_ref112) {\n var id = _ref112.id,\n credentials = _ref112.credentials;\n return promisedRequest({\n url: PLEROMA_DELETE_ANNOUNCEMENT_URL(id),\n credentials: credentials,\n method: 'DELETE'\n });\n};\nvar getMastodonSocketURI = function getMastodonSocketURI(_ref113) {\n var credentials = _ref113.credentials,\n stream = _ref113.stream,\n _ref113$args = _ref113.args,\n args = _ref113$args === void 0 ? {} : _ref113$args;\n return Object.entries(_objectSpread(_objectSpread({}, credentials ? {\n access_token: credentials\n } : {}), {}, {\n stream: stream\n }, args)).reduce(function (acc, _ref114) {\n var _ref115 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(_ref114, 2),\n key = _ref115[0],\n val = _ref115[1];\n return acc + \"\".concat(key, \"=\").concat(val, \"&\");\n }, MASTODON_STREAMING + '?');\n};\nvar MASTODON_STREAMING_EVENTS = new Set(['update', 'notification', 'delete', 'filters_changed', 'status.update']);\nvar PLEROMA_STREAMING_EVENTS = new Set(['pleroma:chat_update']);\n\n// A thin wrapper around WebSocket API that allows adding a pre-processor to it\n// Uses EventTarget and a CustomEvent to proxy events\nvar ProcessedWS = function ProcessedWS(_ref116) {\n var url = _ref116.url,\n _ref116$preprocessor = _ref116.preprocessor,\n preprocessor = _ref116$preprocessor === void 0 ? handleMastoWS : _ref116$preprocessor,\n _ref116$id = _ref116.id,\n id = _ref116$id === void 0 ? 'Unknown' : _ref116$id;\n var eventTarget = new EventTarget();\n var socket = new WebSocket(url);\n if (!socket) throw new Error(\"Failed to create socket \".concat(id));\n var proxy = function proxy(original, eventName) {\n var processor = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : function (a) {\n return a;\n };\n original.addEventListener(eventName, function (eventData) {\n eventTarget.dispatchEvent(new CustomEvent(eventName, {\n detail: processor(eventData)\n }));\n });\n };\n socket.addEventListener('open', function (wsEvent) {\n console.debug(\"[WS][\".concat(id, \"] Socket connected\"), wsEvent);\n });\n socket.addEventListener('error', function (wsEvent) {\n console.debug(\"[WS][\".concat(id, \"] Socket errored\"), wsEvent);\n });\n socket.addEventListener('close', function (wsEvent) {\n console.debug(\"[WS][\".concat(id, \"] Socket disconnected with code \").concat(wsEvent.code), wsEvent);\n });\n // Commented code reason: very spammy, uncomment to enable message debug logging\n /*\n socket.addEventListener('message', (wsEvent) => {\n console.debug(\n `[WS][${id}] Message received`,\n wsEvent\n )\n })\n /**/\n\n proxy(socket, 'open');\n proxy(socket, 'close');\n proxy(socket, 'message', preprocessor);\n proxy(socket, 'error');\n\n // 1000 = Normal Closure\n eventTarget.close = function () {\n socket.close(1000, 'Shutting down socket');\n };\n eventTarget.getState = function () {\n return socket.readyState;\n };\n return eventTarget;\n};\nvar handleMastoWS = function handleMastoWS(wsEvent) {\n var data = wsEvent.data;\n if (!data) return;\n var parsedEvent = JSON.parse(data);\n var event = parsedEvent.event,\n payload = parsedEvent.payload;\n if (MASTODON_STREAMING_EVENTS.has(event) || PLEROMA_STREAMING_EVENTS.has(event)) {\n // MastoBE and PleromaBE both send payload for delete as a PLAIN string\n if (event === 'delete') {\n return {\n event: event,\n id: payload\n };\n }\n var _data = payload ? JSON.parse(payload) : null;\n if (event === 'update') {\n return {\n event: event,\n status: (0,_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseStatus)(_data)\n };\n } else if (event === 'status.update') {\n return {\n event: event,\n status: (0,_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseStatus)(_data)\n };\n } else if (event === 'notification') {\n return {\n event: event,\n notification: (0,_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseNotification)(_data)\n };\n } else if (event === 'pleroma:chat_update') {\n return {\n event: event,\n chatUpdate: (0,_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseChat)(_data)\n };\n }\n } else {\n console.warn('Unknown event', wsEvent);\n return null;\n }\n};\nvar WSConnectionStatus = Object.freeze({\n JOINED: 1,\n CLOSED: 2,\n ERROR: 3,\n DISABLED: 4,\n STARTING: 5,\n STARTING_INITIAL: 6\n});\nvar chats = function chats(_ref117) {\n var credentials = _ref117.credentials;\n return fetch(PLEROMA_CHATS_URL, {\n headers: authHeaders(credentials)\n }).then(function (data) {\n return data.json();\n }).then(function (data) {\n return {\n chats: data.map(_entity_normalizer_entity_normalizer_service_js__WEBPACK_IMPORTED_MODULE_10__.parseChat).filter(function (c) {\n return c;\n })\n };\n });\n};\nvar getOrCreateChat = function getOrCreateChat(_ref118) {\n var accountId = _ref118.accountId,\n credentials = _ref118.credentials;\n return promisedRequest({\n url: PLEROMA_CHAT_URL(accountId),\n method: 'POST',\n credentials: credentials\n });\n};\nvar chatMessages = function chatMessages(_ref119) {\n var id = _ref119.id,\n credentials = _ref119.credentials,\n maxId = _ref119.maxId,\n sinceId = _ref119.sinceId,\n _ref119$limit = _ref119.limit,\n limit = _ref119$limit === void 0 ? 20 : _ref119$limit;\n var url = PLEROMA_CHAT_MESSAGES_URL(id);\n var args = [maxId && \"max_id=\".concat(maxId), sinceId && \"since_id=\".concat(sinceId), limit && \"limit=\".concat(limit)].filter(function (_) {\n return _;\n }).join('&');\n url = url + (args ? '?' + args : '');\n return promisedRequest({\n url: url,\n method: 'GET',\n credentials: credentials\n });\n};\nvar sendChatMessage = function sendChatMessage(_ref120) {\n var id = _ref120.id,\n content = _ref120.content,\n _ref120$mediaId = _ref120.mediaId,\n mediaId = _ref120$mediaId === void 0 ? null : _ref120$mediaId,\n idempotencyKey = _ref120.idempotencyKey,\n credentials = _ref120.credentials;\n var payload = {\n content: content\n };\n if (mediaId) {\n payload.media_id = mediaId;\n }\n var headers = {};\n if (idempotencyKey) {\n headers['idempotency-key'] = idempotencyKey;\n }\n return promisedRequest({\n url: PLEROMA_CHAT_MESSAGES_URL(id),\n method: 'POST',\n payload: payload,\n credentials: credentials,\n headers: headers\n });\n};\nvar readChat = function readChat(_ref121) {\n var id = _ref121.id,\n lastReadId = _ref121.lastReadId,\n credentials = _ref121.credentials;\n return promisedRequest({\n url: PLEROMA_CHAT_READ_URL(id),\n method: 'POST',\n payload: {\n last_read_id: lastReadId\n },\n credentials: credentials\n });\n};\nvar deleteChatMessage = function deleteChatMessage(_ref122) {\n var chatId = _ref122.chatId,\n messageId = _ref122.messageId,\n credentials = _ref122.credentials;\n return promisedRequest({\n url: PLEROMA_DELETE_CHAT_MESSAGE_URL(chatId, messageId),\n method: 'DELETE',\n credentials: credentials\n });\n};\nvar setReportState = function setReportState(_ref123) {\n var id = _ref123.id,\n state = _ref123.state,\n credentials = _ref123.credentials;\n // TODO: Can't use promisedRequest because on OK this does not return json\n // See https://git.pleroma.social/pleroma/pleroma-fe/-/merge_requests/1322\n return fetch(PLEROMA_ADMIN_REPORTS, {\n headers: _objectSpread(_objectSpread({}, authHeaders(credentials)), {}, {\n Accept: 'application/json',\n 'Content-Type': 'application/json'\n }),\n method: 'PATCH',\n body: JSON.stringify({\n reports: [{\n id: id,\n state: state\n }]\n })\n }).then(function (data) {\n if (data.status >= 500) {\n throw Error(data.statusText);\n } else if (data.status >= 400) {\n return data.json();\n }\n return data;\n }).then(function (data) {\n if (data.errors) {\n throw Error(data.errors[0].message);\n }\n });\n};\n\n// ADMIN STUFF // EXPERIMENTAL\nvar fetchInstanceDBConfig = function fetchInstanceDBConfig(_ref124) {\n var credentials = _ref124.credentials;\n return fetch(PLEROMA_ADMIN_CONFIG_URL, {\n headers: authHeaders(credentials)\n }).then(function (response) {\n if (response.ok) {\n return response.json();\n } else {\n return {\n error: response\n };\n }\n });\n};\nvar fetchInstanceConfigDescriptions = function fetchInstanceConfigDescriptions(_ref125) {\n var credentials = _ref125.credentials;\n return fetch(PLEROMA_ADMIN_DESCRIPTIONS_URL, {\n headers: authHeaders(credentials)\n }).then(function (response) {\n if (response.ok) {\n return response.json();\n } else {\n return {\n error: response\n };\n }\n });\n};\nvar fetchAvailableFrontends = function fetchAvailableFrontends(_ref126) {\n var credentials = _ref126.credentials;\n return fetch(PLEROMA_ADMIN_FRONTENDS_URL, {\n headers: authHeaders(credentials)\n }).then(function (response) {\n if (response.ok) {\n return response.json();\n } else {\n return {\n error: response\n };\n }\n });\n};\nvar pushInstanceDBConfig = function pushInstanceDBConfig(_ref127) {\n var credentials = _ref127.credentials,\n payload = _ref127.payload;\n return fetch(PLEROMA_ADMIN_CONFIG_URL, {\n headers: _objectSpread({\n Accept: 'application/json',\n 'Content-Type': 'application/json'\n }, authHeaders(credentials)),\n method: 'POST',\n body: JSON.stringify(payload)\n }).then(function (response) {\n if (response.ok) {\n return response.json();\n } else {\n return {\n error: response\n };\n }\n });\n};\nvar installFrontend = function installFrontend(_ref128) {\n var credentials = _ref128.credentials,\n payload = _ref128.payload;\n return fetch(PLEROMA_ADMIN_FRONTENDS_INSTALL_URL, {\n headers: _objectSpread({\n Accept: 'application/json',\n 'Content-Type': 'application/json'\n }, authHeaders(credentials)),\n method: 'POST',\n body: JSON.stringify(payload)\n }).then(function (response) {\n if (response.ok) {\n return response.json();\n } else {\n return {\n error: response\n };\n }\n });\n};\nvar apiService = {\n verifyCredentials: verifyCredentials,\n fetchTimeline: fetchTimeline,\n fetchPinnedStatuses: fetchPinnedStatuses,\n fetchConversation: fetchConversation,\n fetchStatus: fetchStatus,\n fetchStatusSource: fetchStatusSource,\n fetchStatusHistory: fetchStatusHistory,\n fetchFriends: fetchFriends,\n exportFriends: exportFriends,\n fetchFollowers: fetchFollowers,\n followUser: followUser,\n unfollowUser: unfollowUser,\n pinOwnStatus: pinOwnStatus,\n unpinOwnStatus: unpinOwnStatus,\n muteConversation: muteConversation,\n unmuteConversation: unmuteConversation,\n blockUser: blockUser,\n unblockUser: unblockUser,\n removeUserFromFollowers: removeUserFromFollowers,\n editUserNote: editUserNote,\n fetchUser: fetchUser,\n fetchUserByName: fetchUserByName,\n fetchUserRelationship: fetchUserRelationship,\n favorite: favorite,\n unfavorite: unfavorite,\n retweet: retweet,\n unretweet: unretweet,\n bookmarkStatus: bookmarkStatus,\n unbookmarkStatus: unbookmarkStatus,\n postStatus: postStatus,\n editStatus: editStatus,\n deleteStatus: deleteStatus,\n uploadMedia: uploadMedia,\n setMediaDescription: setMediaDescription,\n fetchMutes: fetchMutes,\n muteUser: muteUser,\n unmuteUser: unmuteUser,\n subscribeUser: subscribeUser,\n unsubscribeUser: unsubscribeUser,\n fetchBlocks: fetchBlocks,\n fetchOAuthTokens: fetchOAuthTokens,\n revokeOAuthToken: revokeOAuthToken,\n tagUser: tagUser,\n untagUser: untagUser,\n deleteUser: deleteUser,\n addRight: addRight,\n deleteRight: deleteRight,\n activateUser: activateUser,\n deactivateUser: deactivateUser,\n register: register,\n getCaptcha: getCaptcha,\n updateProfileImages: updateProfileImages,\n updateProfile: updateProfile,\n importMutes: importMutes,\n importBlocks: importBlocks,\n importFollows: importFollows,\n deleteAccount: deleteAccount,\n changeEmail: changeEmail,\n moveAccount: moveAccount,\n addAlias: addAlias,\n deleteAlias: deleteAlias,\n listAliases: listAliases,\n changePassword: changePassword,\n settingsMFA: settingsMFA,\n mfaDisableOTP: mfaDisableOTP,\n generateMfaBackupCodes: generateMfaBackupCodes,\n mfaSetupOTP: mfaSetupOTP,\n mfaConfirmOTP: mfaConfirmOTP,\n addBackup: addBackup,\n listBackups: listBackups,\n fetchFollowRequests: fetchFollowRequests,\n fetchLists: fetchLists,\n createList: createList,\n getList: getList,\n updateList: updateList,\n getListAccounts: getListAccounts,\n addAccountsToList: addAccountsToList,\n removeAccountsFromList: removeAccountsFromList,\n deleteList: deleteList,\n approveUser: approveUser,\n denyUser: denyUser,\n suggestions: suggestions,\n markNotificationsAsSeen: markNotificationsAsSeen,\n dismissNotification: dismissNotification,\n vote: vote,\n fetchPoll: fetchPoll,\n fetchFavoritedByUsers: fetchFavoritedByUsers,\n fetchRebloggedByUsers: fetchRebloggedByUsers,\n fetchEmojiReactions: fetchEmojiReactions,\n reactWithEmoji: reactWithEmoji,\n unreactWithEmoji: unreactWithEmoji,\n reportUser: reportUser,\n updateNotificationSettings: updateNotificationSettings,\n search2: search2,\n searchUsers: searchUsers,\n fetchKnownDomains: fetchKnownDomains,\n fetchDomainMutes: fetchDomainMutes,\n muteDomain: muteDomain,\n unmuteDomain: unmuteDomain,\n chats: chats,\n getOrCreateChat: getOrCreateChat,\n chatMessages: chatMessages,\n sendChatMessage: sendChatMessage,\n readChat: readChat,\n deleteChatMessage: deleteChatMessage,\n setReportState: setReportState,\n fetchUserInLists: fetchUserInLists,\n fetchAnnouncements: fetchAnnouncements,\n dismissAnnouncement: dismissAnnouncement,\n postAnnouncement: postAnnouncement,\n editAnnouncement: editAnnouncement,\n deleteAnnouncement: deleteAnnouncement,\n adminFetchAnnouncements: adminFetchAnnouncements,\n fetchInstanceDBConfig: fetchInstanceDBConfig,\n fetchInstanceConfigDescriptions: fetchInstanceConfigDescriptions,\n fetchAvailableFrontends: fetchAvailableFrontends,\n pushInstanceDBConfig: pushInstanceDBConfig,\n installFrontend: installFrontend\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (apiService);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvYXBpL2FwaS5zZXJ2aWNlLmpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDaUw7QUFDNUc7O0FBRXJFO0FBQ0EsSUFBTVMsZ0JBQWdCLEdBQUcsMkJBQTJCO0FBQ3BELElBQU1DLGlCQUFpQixHQUFHLDRCQUE0QjtBQUN0RCxJQUFNQyxpQkFBaUIsR0FBRyw0QkFBNEI7QUFDdEQsSUFBTUMsa0JBQWtCLEdBQUcsNkJBQTZCO0FBQ3hELElBQU1DLGdCQUFnQixHQUFHLDJCQUEyQjtBQUNwRCxJQUFNQyxtQkFBbUIsR0FBRyw4QkFBOEI7QUFDMUQsSUFBTUMsZ0JBQWdCLEdBQUcsMkJBQTJCO0FBQ3BELElBQU1DLFdBQVcsR0FBRyxzQkFBc0I7QUFDMUMsSUFBTUMsWUFBWSxHQUFHLDhCQUE4QjtBQUNuRCxJQUFNQyxvQkFBb0IsR0FBRyxTQUF2QkEsb0JBQW9CQSxDQUFJQyxVQUFVLEVBQUVDLEtBQUs7RUFBQSxtQ0FBQUMsTUFBQSxDQUFpQ0YsVUFBVSx3QkFBQUUsTUFBQSxDQUFxQkQsS0FBSztBQUFBLENBQUU7QUFDdEgsSUFBTUUsaUJBQWlCLEdBQUcsbUNBQW1DO0FBQzdELElBQU1DLG1CQUFtQixHQUFHLHFDQUFxQztBQUNqRSxJQUFNQyxlQUFlLEdBQUcsMEJBQTBCO0FBQ2xELElBQU1DLGVBQWUsR0FBRyxxQkFBcUI7QUFDN0MsSUFBTUMseUJBQXlCLEdBQUcsb0NBQW9DO0FBQ3RFLElBQU1DLHFCQUFxQixHQUFHLG9DQUFvQztBQUVsRSxJQUFNQyxnQkFBZ0IsR0FBRywyQkFBMkI7QUFDcEQsSUFBTUMsb0JBQW9CLEdBQUcsd0NBQXdDO0FBRXJFLElBQU1DLGlCQUFpQixHQUFHLHNDQUFzQztBQUNoRSxJQUFNQyxtQkFBbUIsR0FBRyx3Q0FBd0M7QUFDcEUsSUFBTUMsbUJBQW1CLEdBQUcsZ0NBQWdDO0FBRTVELElBQU1DLGtCQUFrQixHQUFHLHFDQUFxQztBQUNo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QW5CQSxtQkFBbUI7RUFDbkJZLGdCQUFnQixFQUFoQkEsZ0JBQWdCO0VBQ2hCRSxnQkFBZ0IsRUFBaEJBLGdCQUFnQjtFQUNoQkUsa0JBQWtCLEVBQWxCQSxrQkFBa0I7RUFDbEJwQix1QkFBdUIsRUFBdkJBLHVCQUF1QjtFQUN2QnFHLHFCQUFxQixFQUFyQkEscUJBQXFCO0VBQ3JCRSwrQkFBK0IsRUFBL0JBLCtCQUErQjtFQUMvQkUsdUJBQXVCLEVBQXZCQSx1QkFBdUI7RUFDdkJFLG9CQUFvQixFQUFwQkEsb0JBQW9CO0VBQ3BCRSxlQUFlLEVBQWZBO0FBQ0YsQ0FBQztBQUVELGlFQUFlRSxVQUFVIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9zZXJ2aWNlcy9hcGkvYXBpLnNlcnZpY2UuanM/ZjBjNSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBlYWNoLCBtYXAsIGNvbmNhdCwgbGFzdCwgZ2V0IH0gZnJvbSAnbG9kYXNoJ1xuaW1wb3J0IHsgcGFyc2VTdGF0dXMsIHBhcnNlU291cmNlLCBwYXJzZVVzZXIsIHBhcnNlTm90aWZpY2F0aW9uLCBwYXJzZUF0dGFjaG1lbnQsIHBhcnNlQ2hhdCwgcGFyc2VMaW5rSGVhZGVyUGFnaW5hdGlvbiB9IGZyb20gJy4uL2VudGl0eV9ub3JtYWxpemVyL2VudGl0eV9ub3JtYWxpemVyLnNlcnZpY2UuanMnXG5pbXBvcnQgeyBSZWdpc3RyYXRpb25FcnJvciwgU3RhdHVzQ29kZUVycm9yIH0gZnJvbSAnLi4vZXJyb3JzL2Vycm9ycydcblxuLyogZXNsaW50LWVudiBicm93c2VyICovXG5jb25zdCBNVVRFU19JTVBPUlRfVVJMID0gJy9hcGkvcGxlcm9tYS9tdXRlc19pbXBvcnQnXG5jb25zdCBCTE9DS1NfSU1QT1JUX1VSTCA9ICcvYXBpL3BsZXJvbWEvYmxvY2tzX2ltcG9ydCdcbmNvbnN0IEZPTExPV19JTVBPUlRfVVJMID0gJy9hcGkvcGxlcm9tYS9mb2xsb3dfaW1wb3J0J1xuY29uc3QgREVMRVRFX0FDQ09VTlRfVVJMID0gJy9hcGkvcGxlcm9tYS9kZWxldGVfYWNjb3VudCdcbmNvbnN0IENIQU5HRV9FTUFJTF9VUkwgPSAnL2FwaS9wbGVyb21hL2NoYW5nZV9lbWFpbCdcbmNvbnN0IENIQU5HRV9QQVNTV09SRF9VUkwgPSAnL2FwaS9wbGVyb21hL2NoYW5nZV9wYXNzd29yZCdcbmNvbnN0IE1PVkVfQUNDT1VOVF9VUkwgPSAnL2FwaS9wbGVyb21hL21vdmVfYWNjb3VudCdcbmNvbnN0IEFMSUFTRVNfVVJMID0gJy9hcGkvcGxlcm9tYS9hbGlhc2VzJ1xuY29uc3QgVEFHX1VTRVJfVVJMID0gJy9hcGkvcGxlcm9tYS9hZG1pbi91c2Vycy90YWcnXG5jb25zdCBQRVJNSVNTSU9OX0dST1VQX1VSTCA9IChzY3JlZW5OYW1lLCByaWdodCkgPT4gYC9hcGkvcGxlcm9tYS9hZG1pbi91c2Vycy8ke3NjcmVlbk5hbWV9L3Blcm1pc3Npb25fZ3JvdXAvJHtyaWdodH1gXG5jb25zdCBBQ1RJVkFURV9VU0VSX1VSTCA9ICcvYXBpL3BsZXJvbWEvYWRtaW4vdXNlcnMvYWN0aXZhdGUnXG5jb25zdCBERUFDVElWQVRFX1VTRVJfVVJMID0gJy9hcGkvcGxlcm9tYS9hZG1pbi91c2Vycy9kZWFjdGl2YXRlJ1xuY29uc3QgQURNSU5fVVNFUlNfVVJMID0gJy9hcGkvcGxlcm9tYS9hZG1pbi91c2VycydcbmNvbnN0IFNVR0dFU1RJT05TX1VSTCA9ICcvYXBpL3YxL3N1Z2dlc3Rpb25zJ1xuY29uc3QgTk9USUZJQ0FUSU9OX1NFVFRJTkdTX1VSTCA9ICcvYXBpL3BsZXJvbWEvbm90aWZpY2F0aW9uX3NldHRpbmdzJ1xuY29uc3QgTk9USUZJQ0FUSU9OX1JFQURfVVJMID0gJy9hcGkvdjEvcGxlcm9tYS9ub3RpZmljYXRpb25zL3JlYWQnXG5cbmNvbnN0IE1GQV9TRVRUSU5HU19VUkwgPSAnL2FwaS9wbGVyb21hL2FjY291bnRzL21mYSdcbmNvbnN0IE1GQV9CQUNLVVBfQ09ERVNfVVJMID0gJy9hcGkvcGxlcm9tYS9hY2NvdW50cy9tZmEvYmFja3VwX2NvZGVzJ1xuXG5jb25zdCBNRkFfU0VUVVBfT1RQX1VSTCA9ICcvYXBpL3BsZXJvbWEvYWNjb3VudHMvbWZhL3NldHVwL3RvdHAnXG5jb25zdCBNRkFfQ09ORklSTV9PVFBfVVJMID0gJy9hcGkvcGxlcm9tYS9hY2NvdW50cy9tZmEvY29uZmlybS90b3RwJ1xuY29uc3QgTUZBX0RJU0FCTEVfT1RQX1VSTCA9ICcvYXBpL3BsZXJvbWEvYWNjb3VudHMvbWZhL3RvdHAnXG5cbmNvbnN0IE1BU1RPRE9OX0xPR0lOX1VSTCA9ICcvYXBpL3YxL2FjY291bnRzL3ZlcmlmeV9jcmVkZW50aWFscydcbmNvbnN0IE1BU1RPRE9OX1JFR0lTVFJBVElPTl9VUkwgPSAnL2FwaS92MS9hY2NvdW50cydcbmNvbnN0IE1BU1RPRE9OX1VTRVJfRkFWT1JJVEVTX1RJTUVMSU5FX1VSTCA9ICcvYXBpL3YxL2Zhdm91cml0ZXMnXG5jb25zdCBNQVNUT0RPTl9VU0VSX05PVElGSUNBVElPTlNfVVJMID0gJy9hcGkvdjEvbm90aWZpY2F0aW9ucydcbmNvbnN0IE1BU1RPRE9OX0RJU01JU1NfTk9USUZJQ0FUSU9OX1VSTCA9IGlkID0+IGAvYXBpL3YxL25vdGlmaWNhdGlvbnMvJHtpZH0vZGlzbWlzc2BcbmNvbnN0IE1BU1RPRE9OX0ZBVk9SSVRFX1VSTCA9IGlkID0+IGAvYXBpL3YxL3N0YXR1c2VzLyR7aWR9L2Zhdm91cml0ZWBcbmNvbnN0IE1BU1RPRE9OX1VORkFWT1JJVEVfVVJMID0gaWQgPT4gYC9hcGkvdjEvc3RhdHVzZXMvJHtpZH0vdW5mYXZvdXJpdGVgXG5jb25zdCBNQVNUT0RPTl9SRVRXRUVUX1VSTCA9IGlkID0+IGAvYXBpL3YxL3N0YXR1c2VzLyR7aWR9L3JlYmxvZ2BcbmNvbnN0IE1BU1RPRE9OX1VOUkVUV0VFVF9VUkwgPSBpZCA9PiBgL2FwaS92MS9zdGF0dXNlcy8ke2lkfS91bnJlYmxvZ2BcbmNvbnN0IE1BU1RPRE9OX0RFTEVURV9VUkwgPSBpZCA9PiBgL2FwaS92MS9zdGF0dXNlcy8ke2lkfWBcbmNvbnN0IE1BU1RPRE9OX0ZPTExPV19VUkwgPSBpZCA9PiBgL2FwaS92MS9hY2NvdW50cy8ke2lkfS9mb2xsb3dgXG5jb25zdCBNQVNUT0RPTl9VTkZPTExPV19VUkwgPSBpZCA9PiBgL2FwaS92MS9hY2NvdW50cy8ke2lkfS91bmZvbGxvd2BcbmNvbnN0IE1BU1RPRE9OX0ZPTExPV0lOR19VUkwgPSBpZCA9PiBgL2FwaS92MS9hY2NvdW50cy8ke2lkfS9mb2xsb3dpbmdgXG5jb25zdCBNQVNUT0RPTl9GT0xMT1dFUlNfVVJMID0gaWQgPT4gYC9hcGkvdjEvYWNjb3VudHMvJHtpZH0vZm9sbG93ZXJzYFxuY29uc3QgTUFTVE9ET05fRk9MTE9XX1JFUVVFU1RTX1VSTCA9ICcvYXBpL3YxL2ZvbGxvd19yZXF1ZXN0cydcbmNvbnN0IE1BU1RPRE9OX0FQUFJPVkVfVVNFUl9VUkwgPSBpZCA9PiBgL2FwaS92MS9mb2xsb3dfcmVxdWVzdHMvJHtpZH0vYXV0aG9yaXplYFxuY29uc3QgTUFTVE9ET05fREVOWV9VU0VSX1VSTCA9IGlkID0+IGAvYXBpL3YxL2ZvbGxvd19yZXF1ZXN0cy8ke2lkfS9yZWplY3RgXG5jb25zdCBNQVNUT0RPTl9ESVJFQ1RfTUVTU0FHRVNfVElNRUxJTkVfVVJMID0gJy9hcGkvdjEvdGltZWxpbmVzL2RpcmVjdCdcbmNvbnN0IE1BU1RPRE9OX1BVQkxJQ19USU1FTElORSA9ICcvYXBpL3YxL3RpbWVsaW5lcy9wdWJsaWMnXG5jb25zdCBNQVNUT0RPTl9VU0VSX0hPTUVfVElNRUxJTkVfVVJMID0gJy9hcGkvdjEvdGltZWxpbmVzL2hvbWUnXG5jb25zdCBNQVNUT0RPTl9TVEFUVVNfVVJMID0gaWQgPT4gYC9hcGkvdjEvc3RhdHVzZXMvJHtpZH1gXG5jb25zdCBNQVNUT0RPTl9TVEFUVVNfQ09OVEVYVF9VUkwgPSBpZCA9PiBgL2FwaS92MS9zdGF0dXNlcy8ke2lkfS9jb250ZXh0YFxuY29uc3QgTUFTVE9ET05fU1RBVFVTX1NPVVJDRV9VUkwgPSBpZCA9PiBgL2FwaS92MS9zdGF0dXNlcy8ke2lkfS9zb3VyY2VgXG5jb25zdCBNQVNUT0RPTl9TVEFUVVNfSElTVE9SWV9VUkwgPSBpZCA9PiBgL2FwaS92MS9zdGF0dXNlcy8ke2lkfS9oaXN0b3J5YFxuY29uc3QgTUFTVE9ET05fVVNFUl9VUkwgPSAnL2FwaS92MS9hY2NvdW50cydcbmNvbnN0IE1BU1RPRE9OX1VTRVJfTE9PS1VQX1VSTCA9ICcvYXBpL3YxL2FjY291bnRzL2xvb2t1cCdcbmNvbnN0IE1BU1RPRE9OX1VTRVJfUkVMQVRJT05TSElQU19VUkwgPSAnL2FwaS92MS9hY2NvdW50cy9yZWxhdGlvbnNoaXBzJ1xuY29uc3QgTUFTVE9ET05fVVNFUl9USU1FTElORV9VUkwgPSBpZCA9PiBgL2FwaS92MS9hY2NvdW50cy8ke2lkfS9zdGF0dXNlc2BcbmNvbnN0IE1BU1RPRE9OX1VTRVJfSU5fTElTVFMgPSBpZCA9PiBgL2FwaS92MS9hY2NvdW50cy8ke2lkfS9saXN0c2BcbmNvbnN0IE1BU1RPRE9OX0xJU1RfVVJMID0gaWQgPT4gYC9hcGkvdjEvbGlzdHMvJHtpZH1gXG5jb25zdCBNQVNUT0RPTl9MSVNUX1RJTUVMSU5FX1VSTCA9IGlkID0+IGAvYXBpL3YxL3RpbWVsaW5lcy9saXN0LyR7aWR9YFxuY29uc3QgTUFTVE9ET05fTElTVF9BQ0NPVU5UU19VUkwgPSBpZCA9PiBgL2FwaS92MS9saXN0cy8ke2lkfS9hY2NvdW50c2BcbmNvbnN0IE1BU1RPRE9OX1RBR19USU1FTElORV9VUkwgPSB0YWcgPT4gYC9hcGkvdjEvdGltZWxpbmVzL3RhZy8ke3RhZ31gXG5jb25zdCBNQVNUT0RPTl9CT09LTUFSS19USU1FTElORV9VUkwgPSAnL2FwaS92MS9ib29rbWFya3MnXG5jb25zdCBNQVNUT0RPTl9VU0VSX0JMT0NLU19VUkwgPSAnL2FwaS92MS9ibG9ja3MvJ1xuY29uc3QgTUFTVE9ET05fVVNFUl9NVVRFU19VUkwgPSAnL2FwaS92MS9tdXRlcy8nXG5jb25zdCBNQVNUT0RPTl9CTE9DS19VU0VSX1VSTCA9IGlkID0+IGAvYXBpL3YxL2FjY291bnRzLyR7aWR9L2Jsb2NrYFxuY29uc3QgTUFTVE9ET05fVU5CTE9DS19VU0VSX1VSTCA9IGlkID0+IGAvYXBpL3YxL2FjY291bnRzLyR7aWR9L3VuYmxvY2tgXG5jb25zdCBNQVNUT0RPTl9NVVRFX1VTRVJfVVJMID0gaWQgPT4gYC9hcGkvdjEvYWNjb3VudHMvJHtpZH0vbXV0ZWBcbmNvbnN0IE1BU1RPRE9OX1VOTVVURV9VU0VSX1VSTCA9IGlkID0+IGAvYXBpL3YxL2FjY291bnRzLyR7aWR9L3VubXV0ZWBcbmNvbnN0IE1BU1RPRE9OX1JFTU9WRV9VU0VSX0ZST01fRk9MTE9XRVJTID0gaWQgPT4gYC9hcGkvdjEvYWNjb3VudHMvJHtpZH0vcmVtb3ZlX2Zyb21fZm9sbG93ZXJzYFxuY29uc3QgTUFTVE9ET05fU1VCU0NSSUJFX1VTRVIgPSBpZCA9PiBgL2FwaS92MS9wbGVyb21hL2FjY291bnRzLyR7aWR9L3N1YnNjcmliZWBcbmNvbnN0IE1BU1RPRE9OX1VOU1VCU0NSSUJFX1VTRVIgPSBpZCA9PiBgL2FwaS92MS9wbGVyb21hL2FjY291bnRzLyR7aWR9L3Vuc3Vic2NyaWJlYFxuY29uc3QgTUFTVE9ET05fVVNFUl9OT1RFX1VSTCA9IGlkID0+IGAvYXBpL3YxL2FjY291bnRzLyR7aWR9L25vdGVgXG5jb25zdCBNQVNUT0RPTl9CT09LTUFSS19TVEFUVVNfVVJMID0gaWQgPT4gYC9hcGkvdjEvc3RhdHVzZXMvJHtpZH0vYm9va21hcmtgXG5jb25zdCBNQVNUT0RPTl9VTkJPT0tNQVJLX1NUQVRVU19VUkwgPSBpZCA9PiBgL2FwaS92MS9zdGF0dXNlcy8ke2lkfS91bmJvb2ttYXJrYFxuY29uc3QgTUFTVE9ET05fUE9TVF9TVEFUVVNfVVJMID0gJy9hcGkvdjEvc3RhdHVzZXMnXG5jb25zdCBNQVNUT0RPTl9NRURJQV9VUExPQURfVVJMID0gJy9hcGkvdjEvbWVkaWEnXG5jb25zdCBNQVNUT0RPTl9WT1RFX1VSTCA9IGlkID0+IGAvYXBpL3YxL3BvbGxzLyR7aWR9L3ZvdGVzYFxuY29uc3QgTUFTVE9ET05fUE9MTF9VUkwgPSBpZCA9PiBgL2FwaS92MS9wb2xscy8ke2lkfWBcbmNvbnN0IE1BU1RPRE9OX1NUQVRVU19GQVZPUklURURCWV9VUkwgPSBpZCA9PiBgL2FwaS92MS9zdGF0dXNlcy8ke2lkfS9mYXZvdXJpdGVkX2J5YFxuY29uc3QgTUFTVE9ET05fU1RBVFVTX1JFQkxPR0dFREJZX1VSTCA9IGlkID0+IGAvYXBpL3YxL3N0YXR1c2VzLyR7aWR9L3JlYmxvZ2dlZF9ieWBcbmNvbnN0IE1BU1RPRE9OX1BST0ZJTEVfVVBEQVRFX1VSTCA9ICcvYXBpL3YxL2FjY291bnRzL3VwZGF0ZV9jcmVkZW50aWFscydcbmNvbnN0IE1BU1RPRE9OX1JFUE9SVF9VU0VSX1VSTCA9ICcvYXBpL3YxL3JlcG9ydHMnXG5jb25zdCBNQVNUT0RPTl9QSU5fT1dOX1NUQVRVUyA9IGlkID0+IGAvYXBpL3YxL3N0YXR1c2VzLyR7aWR9L3BpbmBcbmNvbnN0IE1BU1RPRE9OX1VOUElOX09XTl9TVEFUVVMgPSBpZCA9PiBgL2FwaS92MS9zdGF0dXNlcy8ke2lkfS91bnBpbmBcbmNvbnN0IE1BU1RPRE9OX01VVEVfQ09OVkVSU0FUSU9OID0gaWQgPT4gYC9hcGkvdjEvc3RhdHVzZXMvJHtpZH0vbXV0ZWBcbmNvbnN0IE1BU1RPRE9OX1VOTVVURV9DT05WRVJTQVRJT04gPSBpZCA9PiBgL2FwaS92MS9zdGF0dXNlcy8ke2lkfS91bm11dGVgXG5jb25zdCBNQVNUT0RPTl9TRUFSQ0hfMiA9ICcvYXBpL3YyL3NlYXJjaCdcbmNvbnN0IE1BU1RPRE9OX1VTRVJfU0VBUkNIX1VSTCA9ICcvYXBpL3YxL2FjY291bnRzL3NlYXJjaCdcbmNvbnN0IE1BU1RPRE9OX0RPTUFJTl9CTE9DS1NfVVJMID0gJy9hcGkvdjEvZG9tYWluX2Jsb2NrcydcbmNvbnN0IE1BU1RPRE9OX0xJU1RTX1VSTCA9ICcvYXBpL3YxL2xpc3RzJ1xuY29uc3QgTUFTVE9ET05fU1RSRUFNSU5HID0gJy9hcGkvdjEvc3RyZWFtaW5nJ1xuY29uc3QgTUFTVE9ET05fS05PV05fRE9NQUlOX0xJU1RfVVJMID0gJy9hcGkvdjEvaW5zdGFuY2UvcGVlcnMnXG5jb25zdCBNQVNUT0RPTl9BTk5PVU5DRU1FTlRTX1VSTCA9ICcvYXBpL3YxL2Fubm91bmNlbWVudHMnXG5jb25zdCBNQVNUT0RPTl9BTk5PVU5DRU1FTlRTX0RJU01JU1NfVVJMID0gaWQgPT4gYC9hcGkvdjEvYW5ub3VuY2VtZW50cy8ke2lkfS9kaXNtaXNzYFxuY29uc3QgUExFUk9NQV9FTU9KSV9SRUFDVElPTlNfVVJMID0gaWQgPT4gYC9hcGkvdjEvcGxlcm9tYS9zdGF0dXNlcy8ke2lkfS9yZWFjdGlvbnNgXG5jb25zdCBQTEVST01BX0VNT0pJX1JFQUNUX1VSTCA9IChpZCwgZW1vamkpID0+IGAvYXBpL3YxL3BsZXJvbWEvc3RhdHVzZXMvJHtpZH0vcmVhY3Rpb25zLyR7ZW1vaml9YFxuY29uc3QgUExFUk9NQV9FTU9KSV9VTlJFQUNUX1VSTCA9IChpZCwgZW1vamkpID0+IGAvYXBpL3YxL3BsZXJvbWEvc3RhdHVzZXMvJHtpZH0vcmVhY3Rpb25zLyR7ZW1vaml9YFxuY29uc3QgUExFUk9NQV9DSEFUU19VUkwgPSAnL2FwaS92MS9wbGVyb21hL2NoYXRzJ1xuY29uc3QgUExFUk9NQV9DSEFUX1VSTCA9IGlkID0+IGAvYXBpL3YxL3BsZXJvbWEvY2hhdHMvYnktYWNjb3VudC1pZC8ke2lkfWBcbmNvbnN0IFBMRVJPTUFfQ0hBVF9NRVNTQUdFU19VUkwgPSBpZCA9PiBgL2FwaS92MS9wbGVyb21hL2NoYXRzLyR7aWR9L21lc3NhZ2VzYFxuY29uc3QgUExFUk9NQV9DSEFUX1JFQURfVVJMID0gaWQgPT4gYC9hcGkvdjEvcGxlcm9tYS9jaGF0cy8ke2lkfS9yZWFkYFxuY29uc3QgUExFUk9NQV9ERUxFVEVfQ0hBVF9NRVNTQUdFX1VSTCA9IChjaGF0SWQsIG1lc3NhZ2VJZCkgPT4gYC9hcGkvdjEvcGxlcm9tYS9jaGF0cy8ke2NoYXRJZH0vbWVzc2FnZXMvJHttZXNzYWdlSWR9YFxuY29uc3QgUExFUk9NQV9BRE1JTl9SRVBPUlRTID0gJy9hcGkvcGxlcm9tYS9hZG1pbi9yZXBvcnRzJ1xuY29uc3QgUExFUk9NQV9CQUNLVVBfVVJMID0gJy9hcGkvdjEvcGxlcm9tYS9iYWNrdXBzJ1xuY29uc3QgUExFUk9NQV9BTk5PVU5DRU1FTlRTX1VSTCA9ICcvYXBpL3YxL3BsZXJvbWEvYWRtaW4vYW5ub3VuY2VtZW50cydcbmNvbnN0IFBMRVJPTUFfUE9TVF9BTk5PVU5DRU1FTlRfVVJMID0gJy9hcGkvdjEvcGxlcm9tYS9hZG1pbi9hbm5vdW5jZW1lbnRzJ1xuY29uc3QgUExFUk9NQV9FRElUX0FOTk9VTkNFTUVOVF9VUkwgPSBpZCA9PiBgL2FwaS92MS9wbGVyb21hL2FkbWluL2Fubm91bmNlbWVudHMvJHtpZH1gXG5jb25zdCBQTEVST01BX0RFTEVURV9BTk5PVU5DRU1FTlRfVVJMID0gaWQgPT4gYC9hcGkvdjEvcGxlcm9tYS9hZG1pbi9hbm5vdW5jZW1lbnRzLyR7aWR9YFxuXG5jb25zdCBQTEVST01BX0FETUlOX0NPTkZJR19VUkwgPSAnL2FwaS9wbGVyb21hL2FkbWluL2NvbmZpZydcbmNvbnN0IFBMRVJPTUFfQURNSU5fREVTQ1JJUFRJT05TX1VSTCA9ICcvYXBpL3BsZXJvbWEvYWRtaW4vY29uZmlnL2Rlc2NyaXB0aW9ucydcbmNvbnN0IFBMRVJPTUFfQURNSU5fRlJPTlRFTkRTX1VSTCA9ICcvYXBpL3BsZXJvbWEvYWRtaW4vZnJvbnRlbmRzJ1xuY29uc3QgUExFUk9NQV9BRE1JTl9GUk9OVEVORFNfSU5TVEFMTF9VUkwgPSAnL2FwaS9wbGVyb21hL2FkbWluL2Zyb250ZW5kcy9pbnN0YWxsJ1xuXG5jb25zdCBvbGRmZXRjaCA9IHdpbmRvdy5mZXRjaFxuXG5jb25zdCBmZXRjaCA9ICh1cmwsIG9wdGlvbnMpID0+IHtcbiAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge31cbiAgY29uc3QgYmFzZVVybCA9ICcnXG4gIGNvbnN0IGZ1bGxVcmwgPSBiYXNlVXJsICsgdXJsXG4gIG9wdGlvbnMuY3JlZGVudGlhbHMgPSAnc2FtZS1vcmlnaW4nXG4gIHJldHVybiBvbGRmZXRjaChmdWxsVXJsLCBvcHRpb25zKVxufVxuXG5jb25zdCBwcm9taXNlZFJlcXVlc3QgPSAoeyBtZXRob2QsIHVybCwgcGFyYW1zLCBwYXlsb2FkLCBjcmVkZW50aWFscywgaGVhZGVycyA9IHt9IH0pID0+IHtcbiAgY29uc3Qgb3B0aW9ucyA9IHtcbiAgICBtZXRob2QsXG4gICAgaGVhZGVyczoge1xuICAgICAgQWNjZXB0OiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgLi4uaGVhZGVyc1xuICAgIH1cbiAgfVxuICBpZiAocGFyYW1zKSB7XG4gICAgdXJsICs9ICc/JyArIE9iamVjdC5lbnRyaWVzKHBhcmFtcylcbiAgICAgIC5tYXAoKFtrZXksIHZhbHVlXSkgPT4gZW5jb2RlVVJJQ29tcG9uZW50KGtleSkgKyAnPScgKyBlbmNvZGVVUklDb21wb25lbnQodmFsdWUpKVxuICAgICAgLmpvaW4oJyYnKVxuICB9XG4gIGlmIChwYXlsb2FkKSB7XG4gICAgb3B0aW9ucy5ib2R5ID0gSlNPTi5zdHJpbmdpZnkocGF5bG9hZClcbiAgfVxuICBpZiAoY3JlZGVudGlhbHMpIHtcbiAgICBvcHRpb25zLmhlYWRlcnMgPSB7XG4gICAgICAuLi5vcHRpb25zLmhlYWRlcnMsXG4gICAgICAuLi5hdXRoSGVhZGVycyhjcmVkZW50aWFscylcbiAgICB9XG4gIH1cbiAgcmV0dXJuIGZldGNoKHVybCwgb3B0aW9ucylcbiAgICAudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiByZXNwb25zZS5qc29uKClcbiAgICAgICAgLnRoZW4oKGpzb24pID0+IHtcbiAgICAgICAgICBpZiAoIXJlc3BvbnNlLm9rKSB7XG4gICAgICAgICAgICByZXR1cm4gcmVqZWN0KG5ldyBTdGF0dXNDb2RlRXJyb3IocmVzcG9uc2Uuc3RhdHVzLCBqc29uLCB7IHVybCwgb3B0aW9ucyB9LCByZXNwb25zZSkpXG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiByZXNvbHZlKGpzb24pXG4gICAgICAgIH0pXG4gICAgICAgIC5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICAgICAgICByZXR1cm4gcmVqZWN0KG5ldyBTdGF0dXNDb2RlRXJyb3IocmVzcG9uc2Uuc3RhdHVzLCBlcnJvciwgeyB1cmwsIG9wdGlvbnMgfSwgcmVzcG9uc2UpKVxuICAgICAgICB9KVxuICAgICAgKVxuICAgIH0pXG59XG5cbmNvbnN0IHVwZGF0ZU5vdGlmaWNhdGlvblNldHRpbmdzID0gKHsgY3JlZGVudGlhbHMsIHNldHRpbmdzIH0pID0+IHtcbiAgY29uc3QgZm9ybSA9IG5ldyBGb3JtRGF0YSgpXG5cbiAgZWFjaChzZXR0aW5ncywgKHZhbHVlLCBrZXkpID0+IHtcbiAgICBmb3JtLmFwcGVuZChrZXksIHZhbHVlKVxuICB9KVxuXG4gIHJldHVybiBmZXRjaChgJHtOT1RJRklDQVRJT05fU0VUVElOR1NfVVJMfT8ke25ldyBVUkxTZWFyY2hQYXJhbXMoc2V0dGluZ3MpfWAsIHtcbiAgICBoZWFkZXJzOiBhdXRoSGVhZGVycyhjcmVkZW50aWFscyksXG4gICAgbWV0aG9kOiAnUFVUJyxcbiAgICBib2R5OiBmb3JtXG4gIH0pLnRoZW4oKGRhdGEpID0+IGRhdGEuanNvbigpKVxufVxuXG5jb25zdCB1cGRhdGVQcm9maWxlSW1hZ2VzID0gKHsgY3JlZGVudGlhbHMsIGF2YXRhciA9IG51bGwsIGF2YXRhck5hbWUgPSBudWxsLCBiYW5uZXIgPSBudWxsLCBiYWNrZ3JvdW5kID0gbnVsbCB9KSA9PiB7XG4gIGNvbnN0IGZvcm0gPSBuZXcgRm9ybURhdGEoKVxuICBpZiAoYXZhdGFyICE9PSBudWxsKSB7XG4gICAgaWYgKGF2YXRhck5hbWUgIT09IG51bGwpIHtcbiAgICAgIGZvcm0uYXBwZW5kKCdhdmF0YXInLCBhdmF0YXIsIGF2YXRhck5hbWUpXG4gICAgfSBlbHNlIHtcbiAgICAgIGZvcm0uYXBwZW5kKCdhdmF0YXInLCBhdmF0YXIpXG4gICAgfVxuICB9XG4gIGlmIChiYW5uZXIgIT09IG51bGwpIGZvcm0uYXBwZW5kKCdoZWFkZXInLCBiYW5uZXIpXG4gIGlmIChiYWNrZ3JvdW5kICE9PSBudWxsKSBmb3JtLmFwcGVuZCgncGxlcm9tYV9iYWNrZ3JvdW5kX2ltYWdlJywgYmFja2dyb3VuZClcbiAgcmV0dXJuIGZldGNoKE1BU1RPRE9OX1BST0ZJTEVfVVBEQVRFX1VSTCwge1xuICAgIGhlYWRlcnM6IGF1dGhIZWFkZXJzKGNyZWRlbnRpYWxzKSxcbiAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgYm9keTogZm9ybVxuICB9KVxuICAgIC50aGVuKChkYXRhKSA9PiBkYXRhLmpzb24oKSlcbiAgICAudGhlbigoZGF0YSkgPT4ge1xuICAgICAgaWYgKGRhdGEuZXJyb3IpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGRhdGEuZXJyb3IpXG4gICAgICB9XG4gICAgICByZXR1cm4gcGFyc2VVc2VyKGRhdGEpXG4gICAgfSlcbn1cblxuY29uc3QgdXBkYXRlUHJvZmlsZSA9ICh7IGNyZWRlbnRpYWxzLCBwYXJhbXMgfSkgPT4ge1xuICByZXR1cm4gcHJvbWlzZWRSZXF1ZXN0KHtcbiAgICB1cmw6IE1BU1RPRE9OX1BST0ZJTEVfVVBEQVRFX1VSTCxcbiAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgcGF5bG9hZDogcGFyYW1zLFxuICAgIGNyZWRlbnRpYWxzXG4gIH0pLnRoZW4oKGRhdGEpID0+IHBhcnNlVXNlcihkYXRhKSlcbn1cblxuLy8gUGFyYW1zIG5lZWRlZDpcbi8vIG5pY2tuYW1lXG4vLyBlbWFpbFxuLy8gZnVsbG5hbWVcbi8vIHBhc3N3b3JkXG4vLyBwYXNzd29yZF9jb25maXJtXG4vL1xuLy8gT3B0aW9uYWxcbi8vIGJpb1xuLy8gaG9tZXBhZ2Vcbi8vIGxvY2F0aW9uXG4vLyB0b2tlblxuLy8gbGFuZ3VhZ2VcbmNvbnN0IHJlZ2lzdGVyID0gKHsgcGFyYW1zLCBjcmVkZW50aWFscyB9KSA9PiB7XG4gIGNvbnN0IHsgbmlja25hbWUsIC4uLnJlc3QgfSA9IHBhcmFtc1xuICByZXR1cm4gZmV0Y2goTUFTVE9ET05fUkVHSVNUUkFUSU9OX1VSTCwge1xuICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgIGhlYWRlcnM6IHtcbiAgICAgIC4uLmF1dGhIZWFkZXJzKGNyZWRlbnRpYWxzKSxcbiAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbidcbiAgICB9LFxuICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHtcbiAgICAgIG5pY2tuYW1lLFxuICAgICAgbG9jYWxlOiAnZW5fVVMnLFxuICAgICAgYWdyZWVtZW50OiB0cnVlLFxuICAgICAgLi4ucmVzdFxuICAgIH0pXG4gIH0pXG4gICAgLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICBpZiAocmVzcG9uc2Uub2spIHtcbiAgICAgICAgcmV0dXJuIHJlc3BvbnNlLmpzb24oKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIHJlc3BvbnNlLmpzb24oKS50aGVuKChlcnJvcikgPT4geyB0aHJvdyBuZXcgUmVnaXN0cmF0aW9uRXJyb3IoZXJyb3IpIH0pXG4gICAgICB9XG4gICAgfSlcbn1cblxuY29uc3QgZ2V0Q2FwdGNoYSA9ICgpID0+IGZldGNoKCcvYXBpL3BsZXJvbWEvY2FwdGNoYScpLnRoZW4ocmVzcCA9PiByZXNwLmpzb24oKSlcblxuY29uc3QgYXV0aEhlYWRlcnMgPSAoYWNjZXNzVG9rZW4pID0+IHtcbiAgaWYgKGFjY2Vzc1Rva2VuKSB7XG4gICAgcmV0dXJuIHsgQXV0aG9yaXphdGlvbjogYEJlYXJlciAke2FjY2Vzc1Rva2VufWAgfVxuICB9IGVsc2Uge1xuICAgIHJldHVybiB7IH1cbiAgfVxufVxuXG5jb25zdCBmb2xsb3dVc2VyID0gKHsgaWQsIGNyZWRlbnRpYWxzLCAuLi5vcHRpb25zIH0pID0+IHtcbiAgY29uc3QgdXJsID0gTUFTVE9ET05fRk9MTE9XX1VSTChpZClcbiAgY29uc3QgZm9ybSA9IHt9XG4gIGlmIChvcHRpb25zLnJlYmxvZ3MgIT09IHVuZGVmaW5lZCkgeyBmb3JtLnJlYmxvZ3MgPSBvcHRpb25zLnJlYmxvZ3MgfVxuICByZXR1cm4gZmV0Y2godXJsLCB7XG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkoZm9ybSksXG4gICAgaGVhZGVyczoge1xuICAgICAgLi4uYXV0aEhlYWRlcnMoY3JlZGVudGlhbHMpLFxuICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJ1xuICAgIH0sXG4gICAgbWV0aG9kOiAnUE9TVCdcbiAgfSkudGhlbigoZGF0YSkgPT4gZGF0YS5qc29uKCkpXG59XG5cbmNvbnN0IHVuZm9sbG93VXNlciA9ICh7IGlkLCBjcmVkZW50aWFscyB9KSA9PiB7XG4gIGNvbnN0IHVybCA9IE1BU1RPRE9OX1VORk9MTE9XX1VSTChpZClcbiAgcmV0dXJuIGZldGNoKHVybCwge1xuICAgIGhlYWRlcnM6IGF1dGhIZWFkZXJzKGNyZWRlbnRpYWxzKSxcbiAgICBtZXRob2Q6ICdQT1NUJ1xuICB9KS50aGVuKChkYXRhKSA9PiBkYXRhLmpzb24oKSlcbn1cblxuY29uc3QgZmV0Y2hVc2VySW5MaXN0cyA9ICh7IGlkLCBjcmVkZW50aWFscyB9KSA9PiB7XG4gIGNvbnN0IHVybCA9IE1BU1RPRE9OX1VTRVJfSU5fTElTVFMoaWQpXG4gIHJldHVybiBmZXRjaCh1cmwsIHtcbiAgICBoZWFkZXJzOiBhdXRoSGVhZGVycyhjcmVkZW50aWFscylcbiAgfSkudGhlbigoZGF0YSkgPT4gZGF0YS5qc29uKCkpXG59XG5cbmNvbnN0IHBpbk93blN0YXR1cyA9ICh7IGlkLCBjcmVkZW50aWFscyB9KSA9PiB7XG4gIHJldHVybiBwcm9taXNlZFJlcXVlc3QoeyB1cmw6IE1BU1RPRE9OX1BJTl9PV05fU1RBVFVTKGlkKSwgY3JlZGVudGlhbHMsIG1ldGhvZDogJ1BPU1QnIH0pXG4gICAgLnRoZW4oKGRhdGEpID0+IHBhcnNlU3RhdHVzKGRhdGEpKVxufVxuXG5jb25zdCB1bnBpbk93blN0YXR1cyA9ICh7IGlkLCBjcmVkZW50aWFscyB9KSA9PiB7XG4gIHJldHVybiBwcm9taXNlZFJlcXVlc3QoeyB1cmw6IE1BU1RPRE9OX1VOUElOX09XTl9TVEFUVVMoaWQpLCBjcmVkZW50aWFscywgbWV0aG9kOiAnUE9TVCcgfSlcbiAgICAudGhlbigoZGF0YSkgPT4gcGFyc2VTdGF0dXMoZGF0YSkpXG59XG5cbmNvbnN0IG11dGVDb252ZXJzYXRpb24gPSAoeyBpZCwgY3JlZGVudGlhbHMgfSkgPT4ge1xuICByZXR1cm4gcHJvbWlzZWRSZXF1ZXN0KHsgdXJsOiBNQVNUT0RPTl9NVVRFX0NPTlZFUlNBVElPTihpZCksIGNyZWRlbnRpYWxzLCBtZXRob2Q6ICdQT1NUJyB9KVxuICAgIC50aGVuKChkYXRhKSA9PiBwYXJzZVN0YXR1cyhkYXRhKSlcbn1cblxuY29uc3QgdW5tdXRlQ29udmVyc2F0aW9uID0gKHsgaWQsIGNyZWRlbnRpYWxzIH0pID0+IHtcbiAgcmV0dXJuIHByb21pc2VkUmVxdWVzdCh7IHVybDogTUFTVE9ET05fVU5NVVRFX0NPTlZFUlNBVElPTihpZCksIGNyZWRlbnRpYWxzLCBtZXRob2Q6ICdQT1NUJyB9KVxuICAgIC50aGVuKChkYXRhKSA9PiBwYXJzZVN0YXR1cyhkYXRhKSlcbn1cblxuY29uc3QgYmxvY2tVc2VyID0gKHsgaWQsIGNyZWRlbnRpYWxzIH0pID0+IHtcbiAgcmV0dXJuIGZldGNoKE1BU1RPRE9OX0JMT0NLX1VTRVJfVVJMKGlkKSwge1xuICAgIGhlYWRlcnM6IGF1dGhIZWFkZXJzKGNyZWRlbnRpYWxzKSxcbiAgICBtZXRob2Q6ICdQT1NUJ1xuICB9KS50aGVuKChkYXRhKSA9PiBkYXRhLmpzb24oKSlcbn1cblxuY29uc3QgdW5ibG9ja1VzZXIgPSAoeyBpZCwgY3JlZGVudGlhbHMgfSkgPT4ge1xuICByZXR1cm4gZmV0Y2goTUFTVE9ET05fVU5CTE9DS19VU0VSX1VSTChpZCksIHtcbiAgICBoZWFkZXJzOiBhdXRoSGVhZGVycyhjcmVkZW50aWFscyksXG4gICAgbWV0aG9kOiAnUE9TVCdcbiAgfSkudGhlbigoZGF0YSkgPT4gZGF0YS5qc29uKCkpXG59XG5cbmNvbnN0IHJlbW92ZVVzZXJGcm9tRm9sbG93ZXJzID0gKHsgaWQsIGNyZWRlbnRpYWxzIH0pID0+IHtcbiAgcmV0dXJuIGZldGNoKE1BU1RPRE9OX1JFTU9WRV9VU0VSX0ZST01fRk9MTE9XRVJTKGlkKSwge1xuICAgIGhlYWRlcnM6IGF1dGhIZWFkZXJzKGNyZWRlbnRpYWxzKSxcbiAgICBtZXRob2Q6ICdQT1NUJ1xuICB9KS50aGVuKChkYXRhKSA9PiBkYXRhLmpzb24oKSlcbn1cblxuY29uc3QgZWRpdFVzZXJOb3RlID0gKHsgaWQsIGNyZWRlbnRpYWxzLCBjb21tZW50IH0pID0+IHtcbiAgcmV0dXJuIHByb21pc2VkUmVxdWVzdCh7XG4gICAgdXJsOiBNQVNUT0RPTl9VU0VSX05PVEVfVVJMKGlkKSxcbiAgICBjcmVkZW50aWFscyxcbiAgICBwYXlsb2FkOiB7XG4gICAgICBjb21tZW50XG4gICAgfSxcbiAgICBtZXRob2Q6ICdQT1NUJ1xuICB9KVxufVxuXG5jb25zdCBhcHByb3ZlVXNlciA9ICh7IGlkLCBjcmVkZW50aWFscyB9KSA9PiB7XG4gIGNvbnN0IHVybCA9IE1BU1RPRE9OX0FQUFJPVkVfVVNFUl9VUkwoaWQpXG4gIHJldHVybiBmZXRjaCh1cmwsIHtcbiAgICBoZWFkZXJzOiBhdXRoSGVhZGVycyhjcmVkZW50aWFscyksXG4gICAgbWV0aG9kOiAnUE9TVCdcbiAgfSkudGhlbigoZGF0YSkgPT4gZGF0YS5qc29uKCkpXG59XG5cbmNvbnN0IGRlbnlVc2VyID0gKHsgaWQsIGNyZWRlbnRpYWxzIH0pID0+IHtcbiAgY29uc3QgdXJsID0gTUFTVE9ET05fREVOWV9VU0VSX1VSTChpZClcbiAgcmV0dXJuIGZldGNoKHVybCwge1xuICAgIGhlYWRlcnM6IGF1dGhIZWFkZXJzKGNyZWRlbnRpYWxzKSxcbiAgICBtZXRob2Q6ICdQT1NUJ1xuICB9KS50aGVuKChkYXRhKSA9PiBkYXRhLmpzb24oKSlcbn1cblxuY29uc3QgZmV0Y2hVc2VyID0gKHsgaWQsIGNyZWRlbnRpYWxzIH0pID0+IHtcbiAgY29uc3QgdXJsID0gYCR7TUFTVE9ET05fVVNFUl9VUkx9LyR7aWR9YFxuICByZXR1cm4gcHJvbWlzZWRSZXF1ZXN0KHsgdXJsLCBjcmVkZW50aWFscyB9KVxuICAgIC50aGVuKChkYXRhKSA9PiBwYXJzZVVzZXIoZGF0YSkpXG59XG5cbmNvbnN0IGZldGNoVXNlckJ5TmFtZSA9ICh7IG5hbWUsIGNyZWRlbnRpYWxzIH0pID0+IHtcbiAgcmV0dXJuIHByb21pc2VkUmVxdWVzdCh7XG4gICAgdXJsOiBNQVNUT0RPTl9VU0VSX0xPT0tVUF9VUkwsXG4gICAgY3JlZGVudGlhbHMsXG4gICAgcGFyYW1zOiB7IGFjY3Q6IG5hbWUgfVxuICB9KVxuICAgIC50aGVuKGRhdGEgPT4gZGF0YS5pZClcbiAgICAuY2F0Y2goZXJyb3IgPT4ge1xuICAgICAgaWYgKGVycm9yICYmIGVycm9yLnN0YXR1c0NvZGUgPT09IDQwNCkge1xuICAgICAgICAvLyBFaXRoZXIgdGhlIGJhY2tlbmQgZG9lcyBub3Qgc3VwcG9ydCBsb29rdXAgZW5kcG9pbnQsXG4gICAgICAgIC8vIG9yIHRoZXJlIGlzIG5vIHVzZXIgd2l0aCBzdWNoIG5hbWUuIEZhbGxiYWNrIGFuZCB0cmVhdCBuYW1lIGFzIGlkLlxuICAgICAgICByZXR1cm4gbmFtZVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhyb3cgZXJyb3JcbiAgICAgIH1cbiAgICB9KVxuICAgIC50aGVuKGlkID0+IGZldGNoVXNlcih7IGlkLCBjcmVkZW50aWFscyB9KSlcbn1cblxuY29uc3QgZmV0Y2hVc2VyUmVsYXRpb25zaGlwID0gKHsgaWQsIGNyZWRlbnRpYWxzIH0pID0+IHtcbiAgY29uc3QgdXJsID0gYCR7TUFTVE9ET05fVVNFUl9SRUxBVElPTlNISVBTX1VSTH0vP2lkPSR7aWR9YFxuICByZXR1cm4gZmV0Y2godXJsLCB7IGhlYWRlcnM6IGF1dGhIZWFkZXJzKGNyZWRlbnRpYWxzKSB9KVxuICAgIC50aGVuKChyZXNwb25zZSkgPT4ge1xuICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHJlc3BvbnNlLmpzb24oKVxuICAgICAgICAudGhlbigoanNvbikgPT4ge1xuICAgICAgICAgIGlmICghcmVzcG9uc2Uub2spIHtcbiAgICAgICAgICAgIHJldHVybiByZWplY3QobmV3IFN0YXR1c0NvZGVFcnJvcihyZXNwb25zZS5zdGF0dXMsIGpzb24sIHsgdXJsIH0sIHJlc3BvbnNlKSlcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIHJlc29sdmUoanNvbilcbiAgICAgICAgfSkpXG4gICAgfSlcbn1cblxuY29uc3QgZmV0Y2hGcmllbmRzID0gKHsgaWQsIG1heElkLCBzaW5jZUlkLCBsaW1pdCA9IDIwLCBjcmVkZW50aWFscyB9KSA9PiB7XG4gIGxldCB1cmwgPSBNQVNUT0RPTl9GT0xMT1dJTkdfVVJMKGlkKVxuICBjb25zdCBhcmdzID0gW1xuICAgIG1heElkICYmIGBtYXhfaWQ9JHttYXhJZH1gLFxuICAgIHNpbmNlSWQgJiYgYHNpbmNlX2lkPSR7c2luY2VJZH1gLFxuICAgIGxpbWl0ICYmIGBsaW1pdD0ke2xpbWl0fWAsXG4gICAgJ3dpdGhfcmVsYXRpb25zaGlwcz10cnVlJ1xuICBdLmZpbHRlcihfID0+IF8pLmpvaW4oJyYnKVxuXG4gIHVybCA9IHVybCArIChhcmdzID8gJz8nICsgYXJncyA6ICcnKVxuICByZXR1cm4gZmV0Y2godXJsLCB7IGhlYWRlcnM6IGF1dGhIZWFkZXJzKGNyZWRlbnRpYWxzKSB9KVxuICAgIC50aGVuKChkYXRhKSA9PiBkYXRhLmpzb24oKSlcbiAgICAudGhlbigoZGF0YSkgPT4gZGF0YS5tYXAocGFyc2VVc2VyKSlcbn1cblxuY29uc3QgZXhwb3J0RnJpZW5kcyA9ICh7IGlkLCBjcmVkZW50aWFscyB9KSA9PiB7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1hc3luYy1wcm9taXNlLWV4ZWN1dG9yXG4gIHJldHVybiBuZXcgUHJvbWlzZShhc3luYyAocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIGxldCBmcmllbmRzID0gW11cbiAgICAgIGxldCBtb3JlID0gdHJ1ZVxuICAgICAgd2hpbGUgKG1vcmUpIHtcbiAgICAgICAgY29uc3QgbWF4SWQgPSBmcmllbmRzLmxlbmd0aCA+IDAgPyBsYXN0KGZyaWVuZHMpLmlkIDogdW5kZWZpbmVkXG4gICAgICAgIGNvbnN0IHVzZXJzID0gYXdhaXQgZmV0Y2hGcmllbmRzKHsgaWQsIG1heElkLCBjcmVkZW50aWFscyB9KVxuICAgICAgICBmcmllbmRzID0gY29uY2F0KGZyaWVuZHMsIHVzZXJzKVxuICAgICAgICBpZiAodXNlcnMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgbW9yZSA9IGZhbHNlXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJlc29sdmUoZnJpZW5kcylcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIHJlamVjdChlcnIpXG4gICAgfVxuICB9KVxufVxuXG5jb25zdCBmZXRjaEZvbGxvd2VycyA9ICh7IGlkLCBtYXhJZCwgc2luY2VJZCwgbGltaXQgPSAyMCwgY3JlZGVudGlhbHMgfSkgPT4ge1xuICBsZXQgdXJsID0gTUFTVE9ET05fRk9MTE9XRVJTX1VSTChpZClcbiAgY29uc3QgYXJncyA9IFtcbiAgICBtYXhJZCAmJiBgbWF4X2lkPSR7bWF4SWR9YCxcbiAgICBzaW5jZUlkICYmIGBzaW5jZV9pZD0ke3NpbmNlSWR9YCxcbiAgICBsaW1pdCAmJiBgbGltaXQ9JHtsaW1pdH1gLFxuICAgICd3aXRoX3JlbGF0aW9uc2hpcHM9dHJ1ZSdcbiAgXS5maWx0ZXIoXyA9PiBfKS5qb2luKCcmJylcblxuICB1cmwgKz0gYXJncyA/ICc/JyArIGFyZ3MgOiAnJ1xuICByZXR1cm4gZmV0Y2godXJsLCB7IGhlYWRlcnM6IGF1dGhIZWFkZXJzKGNyZWRlbnRpYWxzKSB9KVxuICAgIC50aGVuKChkYXRhKSA9PiBkYXRhLmpzb24oKSlcbiAgICAudGhlbigoZGF0YSkgPT4gZGF0YS5tYXAocGFyc2VVc2VyKSlcbn1cblxuY29uc3QgZmV0Y2hGb2xsb3dSZXF1ZXN0cyA9ICh7IGNyZWRlbnRpYWxzIH0pID0+IHtcbiAgY29uc3QgdXJsID0gTUFTVE9ET05fRk9MTE9XX1JFUVVFU1RTX1VSTFxuICByZXR1cm4gZmV0Y2godXJsLCB7IGhlYWRlcnM6IGF1dGhIZWFkZXJzKGNyZWRlbnRpYWxzKSB9KVxuICAgIC50aGVuKChkYXRhKSA9PiBkYXRhLmpzb24oKSlcbiAgICAudGhlbigoZGF0YSkgPT4gZGF0YS5tYXAocGFyc2VVc2VyKSlcbn1cblxuY29uc3QgZmV0Y2hMaXN0cyA9ICh7IGNyZWRlbnRpYWxzIH0pID0+IHtcbiAgY29uc3QgdXJsID0gTUFTVE9ET05fTElTVFNfVVJMXG4gIHJldHVybiBmZXRjaCh1cmwsIHsgaGVhZGVyczogYXV0aEhlYWRlcnMoY3JlZGVudGlhbHMpIH0pXG4gICAgLnRoZW4oKGRhdGEpID0+IGRhdGEuanNvbigpKVxufVxuXG5jb25zdCBjcmVhdGVMaXN0ID0gKHsgdGl0bGUsIGNyZWRlbnRpYWxzIH0pID0+IHtcbiAgY29uc3QgdXJsID0gTUFTVE9ET05fTElTVFNfVVJMXG4gIGNvbnN0IGhlYWRlcnMgPSBhdXRoSGVhZGVycyhjcmVkZW50aWFscylcbiAgaGVhZGVyc1snQ29udGVudC1UeXBlJ10gPSAnYXBwbGljYXRpb24vanNvbidcblxuICByZXR1cm4gZmV0Y2godXJsLCB7XG4gICAgaGVhZGVycyxcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeSh7IHRpdGxlIH0pXG4gIH0pLnRoZW4oKGRhdGEpID0+IGRhdGEuanNvbigpKVxufVxuXG5jb25zdCBnZXRMaXN0ID0gKHsgbGlzdElkLCBjcmVkZW50aWFscyB9KSA9PiB7XG4gIGNvbnN0IHVybCA9IE1BU1RPRE9OX0xJU1RfVVJMKGxpc3RJZClcbiAgcmV0dXJuIGZldGNoKHVybCwgeyBoZWFkZXJzOiBhdXRoSGVhZGVycyhjcmVkZW50aWFscykgfSlcbiAgICAudGhlbigoZGF0YSkgPT4gZGF0YS5qc29uKCkpXG59XG5cbmNvbnN0IHVwZGF0ZUxpc3QgPSAoeyBsaXN0SWQsIHRpdGxlLCBjcmVkZW50aWFscyB9KSA9PiB7XG4gIGNvbnN0IHVybCA9IE1BU1RPRE9OX0xJU1RfVVJMKGxpc3RJZClcbiAgY29uc3QgaGVhZGVycyA9IGF1dGhIZWFkZXJzKGNyZWRlbnRpYWxzKVxuICBoZWFkZXJzWydDb250ZW50LVR5cGUnXSA9ICdhcHBsaWNhdGlvbi9qc29uJ1xuXG4gIHJldHVybiBmZXRjaCh1cmwsIHtcbiAgICBoZWFkZXJzLFxuICAgIG1ldGhvZDogJ1BVVCcsXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkoeyB0aXRsZSB9KVxuICB9KVxufVxuXG5jb25zdCBnZXRMaXN0QWNjb3VudHMgPSAoeyBsaXN0SWQsIGNyZWRlbnRpYWxzIH0pID0+IHtcbiAgY29uc3QgdXJsID0gTUFTVE9ET05fTElTVF9BQ0NPVU5UU19VUkwobGlzdElkKVxuICByZXR1cm4gZmV0Y2godXJsLCB7IGhlYWRlcnM6IGF1dGhIZWFkZXJzKGNyZWRlbnRpYWxzKSB9KVxuICAgIC50aGVuKChkYXRhKSA9PiBkYXRhLmpzb24oKSlcbiAgICAudGhlbigoZGF0YSkgPT4gZGF0YS5tYXAoKHsgaWQgfSkgPT4gaWQpKVxufVxuXG5jb25zdCBhZGRBY2NvdW50c1RvTGlzdCA9ICh7IGxpc3RJZCwgYWNjb3VudElkcywgY3JlZGVudGlhbHMgfSkgPT4ge1xuICBjb25zdCB1cmwgPSBNQVNUT0RPTl9MSVNUX0FDQ09VTlRTX1VSTChsaXN0SWQpXG4gIGNvbnN0IGhlYWRlcnMgPSBhdXRoSGVhZGVycyhjcmVkZW50aWFscylcbiAgaGVhZGVyc1snQ29udGVudC1UeXBlJ10gPSAnYXBwbGljYXRpb24vanNvbidcblxuICByZXR1cm4gZmV0Y2godXJsLCB7XG4gICAgaGVhZGVycyxcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeSh7IGFjY291bnRfaWRzOiBhY2NvdW50SWRzIH0pXG4gIH0pXG59XG5cbmNvbnN0IHJlbW92ZUFjY291bnRzRnJvbUxpc3QgPSAoeyBsaXN0SWQsIGFjY291bnRJZHMsIGNyZWRlbnRpYWxzIH0pID0+IHtcbiAgY29uc3QgdXJsID0gTUFTVE9ET05fTElTVF9BQ0NPVU5UU19VUkwobGlzdElkKVxuICBjb25zdCBoZWFkZXJzID0gYXV0aEhlYWRlcnMoY3JlZGVudGlhbHMpXG4gIGhlYWRlcnNbJ0NvbnRlbnQtVHlwZSddID0gJ2FwcGxpY2F0aW9uL2pzb24nXG5cbiAgcmV0dXJuIGZldGNoKHVybCwge1xuICAgIGhlYWRlcnMsXG4gICAgbWV0aG9kOiAnREVMRVRFJyxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeSh7IGFjY291bnRfaWRzOiBhY2NvdW50SWRzIH0pXG4gIH0pXG59XG5cbmNvbnN0IGRlbGV0ZUxpc3QgPSAoeyBsaXN0SWQsIGNyZWRlbnRpYWxzIH0pID0+IHtcbiAgY29uc3QgdXJsID0gTUFTVE9ET05fTElTVF9VUkwobGlzdElkKVxuICByZXR1cm4gZmV0Y2godXJsLCB7XG4gICAgbWV0aG9kOiAnREVMRVRFJyxcbiAgICBoZWFkZXJzOiBhdXRoSGVhZGVycyhjcmVkZW50aWFscylcbiAgfSlcbn1cblxuY29uc3QgZmV0Y2hDb252ZXJzYXRpb24gPSAoeyBpZCwgY3JlZGVudGlhbHMgfSkgPT4ge1xuICBjb25zdCB1cmxDb250ZXh0ID0gTUFTVE9ET05fU1RBVFVTX0NPTlRFWFRfVVJMKGlkKVxuICByZXR1cm4gZmV0Y2godXJsQ29udGV4dCwgeyBoZWFkZXJzOiBhdXRoSGVhZGVycyhjcmVkZW50aWFscykgfSlcbiAgICAudGhlbigoZGF0YSkgPT4ge1xuICAgICAgaWYgKGRhdGEub2spIHtcbiAgICAgICAgcmV0dXJuIGRhdGFcbiAgICAgIH1cbiAgICAgIHRocm93IG5ldyBFcnJvcignRXJyb3IgZmV0Y2hpbmcgdGltZWxpbmUnLCBkYXRhKVxuICAgIH0pXG4gICAgLnRoZW4oKGRhdGEpID0+IGRhdGEuanNvbigpKVxuICAgIC50aGVuKCh7IGFuY2VzdG9ycywgZGVzY2VuZGFudHMgfSkgPT4gKHtcbiAgICAgIGFuY2VzdG9yczogYW5jZXN0b3JzLm1hcChwYXJzZVN0YXR1cyksXG4gICAgICBkZXNjZW5kYW50czogZGVzY2VuZGFudHMubWFwKHBhcnNlU3RhdHVzKVxuICAgIH0pKVxufVxuXG5jb25zdCBmZXRjaFN0YXR1cyA9ICh7IGlkLCBjcmVkZW50aWFscyB9KSA9PiB7XG4gIGNvbnN0IHVybCA9IE1BU1RPRE9OX1NUQVRVU19VUkwoaWQpXG4gIHJldHVybiBmZXRjaCh1cmwsIHsgaGVhZGVyczogYXV0aEhlYWRlcnMoY3JlZGVudGlhbHMpIH0pXG4gICAgLnRoZW4oKGRhdGEpID0+IHtcbiAgICAgIGlmIChkYXRhLm9rKSB7XG4gICAgICAgIHJldHVybiBkYXRhXG4gICAgICB9XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0Vycm9yIGZldGNoaW5nIHRpbWVsaW5lJywgZGF0YSlcbiAgICB9KVxuICAgIC50aGVuKChkYXRhKSA9PiBkYXRhLmpzb24oKSlcbiAgICAudGhlbigoZGF0YSkgPT4gcGFyc2VTdGF0dXMoZGF0YSkpXG59XG5cbmNvbnN0IGZldGNoU3RhdHVzU291cmNlID0gKHsgaWQsIGNyZWRlbnRpYWxzIH0pID0+IHtcbiAgY29uc3QgdXJsID0gTUFTVE9ET05fU1RBVFVTX1NPVVJDRV9VUkwoaWQpXG4gIHJldHVybiBmZXRjaCh1cmwsIHsgaGVhZGVyczogYXV0aEhlYWRlcnMoY3JlZGVudGlhbHMpIH0pXG4gICAgLnRoZW4oKGRhdGEpID0+IHtcbiAgICAgIGlmIChkYXRhLm9rKSB7XG4gICAgICAgIHJldHVybiBkYXRhXG4gICAgICB9XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0Vycm9yIGZldGNoaW5nIHNvdXJjZScsIGRhdGEpXG4gICAgfSlcbiAgICAudGhlbigoZGF0YSkgPT4gZGF0YS5qc29uKCkpXG4gICAgLnRoZW4oKGRhdGEpID0+IHBhcnNlU291cmNlKGRhdGEpKVxufVxuXG5jb25zdCBmZXRjaFN0YXR1c0hpc3RvcnkgPSAoeyBzdGF0dXMsIGNyZWRlbnRpYWxzIH0pID0+IHtcbiAgY29uc3QgdXJsID0gTUFTVE9ET05fU1RBVFVTX0hJU1RPUllfVVJMKHN0YXR1cy5pZClcbiAgcmV0dXJuIHByb21pc2VkUmVxdWVzdCh7IHVybCwgY3JlZGVudGlhbHMgfSlcbiAgICAudGhlbigoZGF0YSkgPT4ge1xuICAgICAgZGF0YS5yZXZlcnNlKClcbiAgICAgIHJldHVybiBkYXRhLm1hcCgoaXRlbSkgPT4ge1xuICAgICAgICBpdGVtLm9yaWdpbmFsU3RhdHVzID0gc3RhdHVzXG4gICAgICAgIHJldHVybiBwYXJzZVN0YXR1cyhpdGVtKVxuICAgICAgfSlcbiAgICB9KVxufVxuXG5jb25zdCB0YWdVc2VyID0gKHsgdGFnLCBjcmVkZW50aWFscywgdXNlciB9KSA9PiB7XG4gIGNvbnN0IHNjcmVlbk5hbWUgPSB1c2VyLnNjcmVlbl9uYW1lXG4gIGNvbnN0IGZvcm0gPSB7XG4gICAgbmlja25hbWVzOiBbc2NyZWVuTmFtZV0sXG4gICAgdGFnczogW3RhZ11cbiAgfVxuXG4gIGNvbnN0IGhlYWRlcnMgPSBhdXRoSGVhZGVycyhjcmVkZW50aWFscylcbiAgaGVhZGVyc1snQ29udGVudC1UeXBlJ10gPSAnYXBwbGljYXRpb24vanNvbidcblxuICByZXR1cm4gZmV0Y2goVEFHX1VTRVJfVVJMLCB7XG4gICAgbWV0aG9kOiAnUFVUJyxcbiAgICBoZWFkZXJzLFxuICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KGZvcm0pXG4gIH0pXG59XG5cbmNvbnN0IHVudGFnVXNlciA9ICh7IHRhZywgY3JlZGVudGlhbHMsIHVzZXIgfSkgPT4ge1xuICBjb25zdCBzY3JlZW5OYW1lID0gdXNlci5zY3JlZW5fbmFtZVxuICBjb25zdCBib2R5ID0ge1xuICAgIG5pY2tuYW1lczogW3NjcmVlbk5hbWVdLFxuICAgIHRhZ3M6IFt0YWddXG4gIH1cblxuICBjb25zdCBoZWFkZXJzID0gYXV0aEhlYWRlcnMoY3JlZGVudGlhbHMpXG4gIGhlYWRlcnNbJ0NvbnRlbnQtVHlwZSddID0gJ2FwcGxpY2F0aW9uL2pzb24nXG5cbiAgcmV0dXJuIGZldGNoKFRBR19VU0VSX1VSTCwge1xuICAgIG1ldGhvZDogJ0RFTEVURScsXG4gICAgaGVhZGVycyxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeShib2R5KVxuICB9KVxufVxuXG5jb25zdCBhZGRSaWdodCA9ICh7IHJpZ2h0LCBjcmVkZW50aWFscywgdXNlciB9KSA9PiB7XG4gIGNvbnN0IHNjcmVlbk5hbWUgPSB1c2VyLnNjcmVlbl9uYW1lXG5cbiAgcmV0dXJuIGZldGNoKFBFUk1JU1NJT05fR1JPVVBfVVJMKHNjcmVlbk5hbWUsIHJpZ2h0KSwge1xuICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgIGhlYWRlcnM6IGF1dGhIZWFkZXJzKGNyZWRlbnRpYWxzKSxcbiAgICBib2R5OiB7fVxuICB9KVxufVxuXG5jb25zdCBkZWxldGVSaWdodCA9ICh7IHJpZ2h0LCBjcmVkZW50aWFscywgdXNlciB9KSA9PiB7XG4gIGNvbnN0IHNjcmVlbk5hbWUgPSB1c2VyLnNjcmVlbl9uYW1lXG5cbiAgcmV0dXJuIGZldGNoKFBFUk1JU1NJT05fR1JPVVBfVVJMKHNjcmVlbk5hbWUsIHJpZ2h0KSwge1xuICAgIG1ldGhvZDogJ0RFTEVURScsXG4gICAgaGVhZGVyczogYXV0aEhlYWRlcnMoY3JlZGVudGlhbHMpLFxuICAgIGJvZHk6IHt9XG4gIH0pXG59XG5cbmNvbnN0IGFjdGl2YXRlVXNlciA9ICh7IGNyZWRlbnRpYWxzLCB1c2VyOiB7IHNjcmVlbl9uYW1lOiBuaWNrbmFtZSB9IH0pID0+IHtcbiAgcmV0dXJuIHByb21pc2VkUmVxdWVzdCh7XG4gICAgdXJsOiBBQ1RJVkFURV9VU0VSX1VSTCxcbiAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgY3JlZGVudGlhbHMsXG4gICAgcGF5bG9hZDoge1xuICAgICAgbmlja25hbWVzOiBbbmlja25hbWVdXG4gICAgfVxuICB9KS50aGVuKHJlc3BvbnNlID0+IGdldChyZXNwb25zZSwgJ3VzZXJzLjAnKSlcbn1cblxuY29uc3QgZGVhY3RpdmF0ZVVzZXIgPSAoeyBjcmVkZW50aWFscywgdXNlcjogeyBzY3JlZW5fbmFtZTogbmlja25hbWUgfSB9KSA9PiB7XG4gIHJldHVybiBwcm9taXNlZFJlcXVlc3Qoe1xuICAgIHVybDogREVBQ1RJVkFURV9VU0VSX1VSTCxcbiAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgY3JlZGVudGlhbHMsXG4gICAgcGF5bG9hZDoge1xuICAgICAgbmlja25hbWVzOiBbbmlja25hbWVdXG4gICAgfVxuICB9KS50aGVuKHJlc3BvbnNlID0+IGdldChyZXNwb25zZSwgJ3VzZXJzLjAnKSlcbn1cblxuY29uc3QgZGVsZXRlVXNlciA9ICh7IGNyZWRlbnRpYWxzLCB1c2VyIH0pID0+IHtcbiAgY29uc3Qgc2NyZWVuTmFtZSA9IHVzZXIuc2NyZWVuX25hbWVcbiAgY29uc3QgaGVhZGVycyA9IGF1dGhIZWFkZXJzKGNyZWRlbnRpYWxzKVxuXG4gIHJldHVybiBmZXRjaChgJHtBRE1JTl9VU0VSU19VUkx9P25pY2tuYW1lPSR7c2NyZWVuTmFtZX1gLCB7XG4gICAgbWV0aG9kOiAnREVMRVRFJyxcbiAgICBoZWFkZXJzXG4gIH0pXG59XG5cbmNvbnN0IGZldGNoVGltZWxpbmUgPSAoe1xuICB0aW1lbGluZSxcbiAgY3JlZGVudGlhbHMsXG4gIHNpbmNlID0gZmFsc2UsXG4gIHVudGlsID0gZmFsc2UsXG4gIHVzZXJJZCA9IGZhbHNlLFxuICBsaXN0SWQgPSBmYWxzZSxcbiAgdGFnID0gZmFsc2UsXG4gIHdpdGhNdXRlZCA9IGZhbHNlLFxuICByZXBseVZpc2liaWxpdHkgPSAnYWxsJyxcbiAgaW5jbHVkZVR5cGVzID0gW11cbn0pID0+IHtcbiAgY29uc3QgdGltZWxpbmVVcmxzID0ge1xuICAgIHB1YmxpYzogTUFTVE9ET05fUFVCTElDX1RJTUVMSU5FLFxuICAgIGZyaWVuZHM6IE1BU1RPRE9OX1VTRVJfSE9NRV9USU1FTElORV9VUkwsXG4gICAgZG1zOiBNQVNUT0RPTl9ESVJFQ1RfTUVTU0FHRVNfVElNRUxJTkVfVVJMLFxuICAgIG5vdGlmaWNhdGlvbnM6IE1BU1RPRE9OX1VTRVJfTk9USUZJQ0FUSU9OU19VUkwsXG4gICAgcHVibGljQW5kRXh0ZXJuYWw6IE1BU1RPRE9OX1BVQkxJQ19USU1FTElORSxcbiAgICB1c2VyOiBNQVNUT0RPTl9VU0VSX1RJTUVMSU5FX1VSTCxcbiAgICBtZWRpYTogTUFTVE9ET05fVVNFUl9USU1FTElORV9VUkwsXG4gICAgbGlzdDogTUFTVE9ET05fTElTVF9USU1FTElORV9VUkwsXG4gICAgZmF2b3JpdGVzOiBNQVNUT0RPTl9VU0VSX0ZBVk9SSVRFU19USU1FTElORV9VUkwsXG4gICAgdGFnOiBNQVNUT0RPTl9UQUdfVElNRUxJTkVfVVJMLFxuICAgIGJvb2ttYXJrczogTUFTVE9ET05fQk9PS01BUktfVElNRUxJTkVfVVJMXG4gIH1cbiAgY29uc3QgaXNOb3RpZmljYXRpb25zID0gdGltZWxpbmUgPT09ICdub3RpZmljYXRpb25zJ1xuICBjb25zdCBwYXJhbXMgPSBbXVxuXG4gIGxldCB1cmwgPSB0aW1lbGluZVVybHNbdGltZWxpbmVdXG5cbiAgaWYgKHRpbWVsaW5lID09PSAndXNlcicgfHwgdGltZWxpbmUgPT09ICdtZWRpYScpIHtcbiAgICB1cmwgPSB1cmwodXNlcklkKVxuICB9XG5cbiAgaWYgKHRpbWVsaW5lID09PSAnbGlzdCcpIHtcbiAgICB1cmwgPSB1cmwobGlzdElkKVxuICB9XG5cbiAgaWYgKHNpbmNlKSB7XG4gICAgcGFyYW1zLnB1c2goWydzaW5jZV9pZCcsIHNpbmNlXSlcbiAgfVxuICBpZiAodW50aWwpIHtcbiAgICBwYXJhbXMucHVzaChbJ21heF9pZCcsIHVudGlsXSlcbiAgfVxuICBpZiAodGFnKSB7XG4gICAgdXJsID0gdXJsKHRhZylcbiAgfVxuICBpZiAodGltZWxpbmUgPT09ICdtZWRpYScpIHtcbiAgICBwYXJhbXMucHVzaChbJ29ubHlfbWVkaWEnLCAxXSlcbiAgfVxuICBpZiAodGltZWxpbmUgPT09ICdwdWJsaWMnKSB7XG4gICAgcGFyYW1zLnB1c2goWydsb2NhbCcsIHRydWVdKVxuICB9XG4gIGlmICh0aW1lbGluZSA9PT0gJ3B1YmxpYycgfHwgdGltZWxpbmUgPT09ICdwdWJsaWNBbmRFeHRlcm5hbCcpIHtcbiAgICBwYXJhbXMucHVzaChbJ29ubHlfbWVkaWEnLCBmYWxzZV0pXG4gIH1cbiAgaWYgKHRpbWVsaW5lICE9PSAnZmF2b3JpdGVzJyAmJiB0aW1lbGluZSAhPT0gJ2Jvb2ttYXJrcycpIHtcbiAgICBwYXJhbXMucHVzaChbJ3dpdGhfbXV0ZWQnLCB3aXRoTXV0ZWRdKVxuICB9XG4gIGlmIChyZXBseVZpc2liaWxpdHkgIT09ICdhbGwnKSB7XG4gICAgcGFyYW1zLnB1c2goWydyZXBseV92aXNpYmlsaXR5JywgcmVwbHlWaXNpYmlsaXR5XSlcbiAgfVxuICBpZiAoaW5jbHVkZVR5cGVzLmxlbmd0aCA+IDApIHtcbiAgICBpbmNsdWRlVHlwZXMuZm9yRWFjaCh0eXBlID0+IHtcbiAgICAgIHBhcmFtcy5wdXNoKFsnaW5jbHVkZV90eXBlc1tdJywgdHlwZV0pXG4gICAgfSlcbiAgfVxuXG4gIHBhcmFtcy5wdXNoKFsnbGltaXQnLCAyMF0pXG5cbiAgY29uc3QgcXVlcnlTdHJpbmcgPSBtYXAocGFyYW1zLCAocGFyYW0pID0+IGAke3BhcmFtWzBdfT0ke3BhcmFtWzFdfWApLmpvaW4oJyYnKVxuICB1cmwgKz0gYD8ke3F1ZXJ5U3RyaW5nfWBcblxuICByZXR1cm4gZmV0Y2godXJsLCB7IGhlYWRlcnM6IGF1dGhIZWFkZXJzKGNyZWRlbnRpYWxzKSB9KVxuICAgIC50aGVuKGFzeW5jIChyZXNwb25zZSkgPT4ge1xuICAgICAgY29uc3Qgc3VjY2VzcyA9IHJlc3BvbnNlLm9rXG5cbiAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCByZXNwb25zZS5qc29uKClcblxuICAgICAgaWYgKHN1Y2Nlc3MgJiYgIWRhdGEuZXJyb3JzKSB7XG4gICAgICAgIGNvbnN0IHBhZ2luYXRpb24gPSBwYXJzZUxpbmtIZWFkZXJQYWdpbmF0aW9uKHJlc3BvbnNlLmhlYWRlcnMuZ2V0KCdMaW5rJyksIHtcbiAgICAgICAgICBmbGFrZUlkOiB0aW1lbGluZSAhPT0gJ2Jvb2ttYXJrcycgJiYgdGltZWxpbmUgIT09ICdub3RpZmljYXRpb25zJ1xuICAgICAgICB9KVxuXG4gICAgICAgIHJldHVybiB7IGRhdGE6IGRhdGEubWFwKGlzTm90aWZpY2F0aW9ucyA/IHBhcnNlTm90aWZpY2F0aW9uIDogcGFyc2VTdGF0dXMpLCBwYWdpbmF0aW9uIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGRhdGEuZXJyb3JzIHx8PSBbXVxuICAgICAgICBkYXRhLnN0YXR1cyA9IHJlc3BvbnNlLnN0YXR1c1xuICAgICAgICBkYXRhLnN0YXR1c1RleHQgPSByZXNwb25zZS5zdGF0dXNUZXh0XG4gICAgICAgIHJldHVybiBkYXRhXG4gICAgICB9XG4gICAgfSlcbn1cblxuY29uc3QgZmV0Y2hQaW5uZWRTdGF0dXNlcyA9ICh7IGlkLCBjcmVkZW50aWFscyB9KSA9PiB7XG4gIGNvbnN0IHVybCA9IE1BU1RPRE9OX1VTRVJfVElNRUxJTkVfVVJMKGlkKSArICc/cGlubmVkPXRydWUnXG4gIHJldHVybiBwcm9taXNlZFJlcXVlc3QoeyB1cmwsIGNyZWRlbnRpYWxzIH0pXG4gICAgLnRoZW4oKGRhdGEpID0+IGRhdGEubWFwKHBhcnNlU3RhdHVzKSlcbn1cblxuY29uc3QgdmVyaWZ5Q3JlZGVudGlhbHMgPSAodXNlcikgPT4ge1xuICByZXR1cm4gZmV0Y2goTUFTVE9ET05fTE9HSU5fVVJMLCB7XG4gICAgaGVhZGVyczogYXV0aEhlYWRlcnModXNlcilcbiAgfSlcbiAgICAudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgIGlmIChyZXNwb25zZS5vaykge1xuICAgICAgICByZXR1cm4gcmVzcG9uc2UuanNvbigpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGVycm9yOiByZXNwb25zZVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSlcbiAgICAudGhlbigoZGF0YSkgPT4gZGF0YS5lcnJvciA/IGRhdGEgOiBwYXJzZVVzZXIoZGF0YSkpXG59XG5cbmNvbnN0IGZhdm9yaXRlID0gKHsgaWQsIGNyZWRlbnRpYWxzIH0pID0+IHtcbiAgcmV0dXJuIHByb21pc2VkUmVxdWVzdCh7IHVybDogTUFTVE9ET05fRkFWT1JJVEVfVVJMKGlkKSwgbWV0aG9kOiAnUE9TVCcsIGNyZWRlbnRpYWxzIH0pXG4gICAgLnRoZW4oKGRhdGEpID0+IHBhcnNlU3RhdHVzKGRhdGEpKVxufVxuXG5jb25zdCB1bmZhdm9yaXRlID0gKHsgaWQsIGNyZWRlbnRpYWxzIH0pID0+IHtcbiAgcmV0dXJuIHByb21pc2VkUmVxdWVzdCh7IHVybDogTUFTVE9ET05fVU5GQVZPUklURV9VUkwoaWQpLCBtZXRob2Q6ICdQT1NUJywgY3JlZGVudGlhbHMgfSlcbiAgICAudGhlbigoZGF0YSkgPT4gcGFyc2VTdGF0dXMoZGF0YSkpXG59XG5cbmNvbnN0IHJldHdlZXQgPSAoeyBpZCwgY3JlZGVudGlhbHMgfSkgPT4ge1xuICByZXR1cm4gcHJvbWlzZWRSZXF1ZXN0KHsgdXJsOiBNQVNUT0RPTl9SRVRXRUVUX1VSTChpZCksIG1ldGhvZDogJ1BPU1QnLCBjcmVkZW50aWFscyB9KVxuICAgIC50aGVuKChkYXRhKSA9PiBwYXJzZVN0YXR1cyhkYXRhKSlcbn1cblxuY29uc3QgdW5yZXR3ZWV0ID0gKHsgaWQsIGNyZWRlbnRpYWxzIH0pID0+IHtcbiAgcmV0dXJuIHByb21pc2VkUmVxdWVzdCh7IHVybDogTUFTVE9ET05fVU5SRVRXRUVUX1VSTChpZCksIG1ldGhvZDogJ1BPU1QnLCBjcmVkZW50aWFscyB9KVxuICAgIC50aGVuKChkYXRhKSA9PiBwYXJzZVN0YXR1cyhkYXRhKSlcbn1cblxuY29uc3QgYm9va21hcmtTdGF0dXMgPSAoeyBpZCwgY3JlZGVudGlhbHMgfSkgPT4ge1xuICByZXR1cm4gcHJvbWlzZWRSZXF1ZXN0KHtcbiAgICB1cmw6IE1BU1RPRE9OX0JPT0tNQVJLX1NUQVRVU19VUkwoaWQpLFxuICAgIGhlYWRlcnM6IGF1dGhIZWFkZXJzKGNyZWRlbnRpYWxzKSxcbiAgICBtZXRob2Q6ICdQT1NUJ1xuICB9KVxufVxuXG5jb25zdCB1bmJvb2ttYXJrU3RhdHVzID0gKHsgaWQsIGNyZWRlbnRpYWxzIH0pID0+IHtcbiAgcmV0dXJuIHByb21pc2VkUmVxdWVzdCh7XG4gICAgdXJsOiBNQVNUT0RPTl9VTkJPT0tNQVJLX1NUQVRVU19VUkwoaWQpLFxuICAgIGhlYWRlcnM6IGF1dGhIZWFkZXJzKGNyZWRlbnRpYWxzKSxcbiAgICBtZXRob2Q6ICdQT1NUJ1xuICB9KVxufVxuXG5jb25zdCBwb3N0U3RhdHVzID0gKHtcbiAgY3JlZGVudGlhbHMsXG4gIHN0YXR1cyxcbiAgc3BvaWxlclRleHQsXG4gIHZpc2liaWxpdHksXG4gIHNlbnNpdGl2ZSxcbiAgcG9sbCxcbiAgbWVkaWFJZHMgPSBbXSxcbiAgaW5SZXBseVRvU3RhdHVzSWQsXG4gIHF1b3RlSWQsXG4gIGNvbnRlbnRUeXBlLFxuICBwcmV2aWV3LFxuICBpZGVtcG90ZW5jeUtleVxufSkgPT4ge1xuICBjb25zdCBmb3JtID0gbmV3IEZvcm1EYXRhKClcbiAgY29uc3QgcG9sbE9wdGlvbnMgPSBwb2xsLm9wdGlvbnMgfHwgW11cblxuICBmb3JtLmFwcGVuZCgnc3RhdHVzJywgc3RhdHVzKVxuICBmb3JtLmFwcGVuZCgnc291cmNlJywgJ1BsZXJvbWEgRkUnKVxuICBpZiAoc3BvaWxlclRleHQpIGZvcm0uYXBwZW5kKCdzcG9pbGVyX3RleHQnLCBzcG9pbGVyVGV4dClcbiAgaWYgKHZpc2liaWxpdHkpIGZvcm0uYXBwZW5kKCd2aXNpYmlsaXR5JywgdmlzaWJpbGl0eSlcbiAgaWYgKHNlbnNpdGl2ZSkgZm9ybS5hcHBlbmQoJ3NlbnNpdGl2ZScsIHNlbnNpdGl2ZSlcbiAgaWYgKGNvbnRlbnRUeXBlKSBmb3JtLmFwcGVuZCgnY29udGVudF90eXBlJywgY29udGVudFR5cGUpXG4gIG1lZGlhSWRzLmZvckVhY2godmFsID0+IHtcbiAgICBmb3JtLmFwcGVuZCgnbWVkaWFfaWRzW10nLCB2YWwpXG4gIH0pXG4gIGlmIChwb2xsT3B0aW9ucy5zb21lKG9wdGlvbiA9PiBvcHRpb24gIT09ICcnKSkge1xuICAgIGNvbnN0IG5vcm1hbGl6ZWRQb2xsID0ge1xuICAgICAgZXhwaXJlc19pbjogcGFyc2VJbnQocG9sbC5leHBpcmVzSW4sIDEwKSxcbiAgICAgIG11bHRpcGxlOiBwb2xsLm11bHRpcGxlXG4gICAgfVxuICAgIE9iamVjdC5rZXlzKG5vcm1hbGl6ZWRQb2xsKS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICBmb3JtLmFwcGVuZChgcG9sbFske2tleX1dYCwgbm9ybWFsaXplZFBvbGxba2V5XSlcbiAgICB9KVxuXG4gICAgcG9sbE9wdGlvbnMuZm9yRWFjaChvcHRpb24gPT4ge1xuICAgICAgZm9ybS5hcHBlbmQoJ3BvbGxbb3B0aW9uc11bXScsIG9wdGlvbilcbiAgICB9KVxuICB9XG4gIGlmIChpblJlcGx5VG9TdGF0dXNJZCkge1xuICAgIGZvcm0uYXBwZW5kKCdpbl9yZXBseV90b19pZCcsIGluUmVwbHlUb1N0YXR1c0lkKVxuICB9XG4gIGlmIChxdW90ZUlkKSB7XG4gICAgZm9ybS5hcHBlbmQoJ3F1b3RlX2lkJywgcXVvdGVJZClcbiAgfVxuICBpZiAocHJldmlldykge1xuICAgIGZvcm0uYXBwZW5kKCdwcmV2aWV3JywgJ3RydWUnKVxuICB9XG5cbiAgY29uc3QgcG9zdEhlYWRlcnMgPSBhdXRoSGVhZGVycyhjcmVkZW50aWFscylcbiAgaWYgKGlkZW1wb3RlbmN5S2V5KSB7XG4gICAgcG9zdEhlYWRlcnNbJ2lkZW1wb3RlbmN5LWtleSddID0gaWRlbXBvdGVuY3lLZXlcbiAgfVxuXG4gIHJldHVybiBmZXRjaChNQVNUT0RPTl9QT1NUX1NUQVRVU19VUkwsIHtcbiAgICBib2R5OiBmb3JtLFxuICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgIGhlYWRlcnM6IHBvc3RIZWFkZXJzXG4gIH0pXG4gICAgLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICByZXR1cm4gcmVzcG9uc2UuanNvbigpXG4gICAgfSlcbiAgICAudGhlbigoZGF0YSkgPT4gZGF0YS5lcnJvciA/IGRhdGEgOiBwYXJzZVN0YXR1cyhkYXRhKSlcbn1cblxuY29uc3QgZWRpdFN0YXR1cyA9ICh7XG4gIGlkLFxuICBjcmVkZW50aWFscyxcbiAgc3RhdHVzLFxuICBzcG9pbGVyVGV4dCxcbiAgc2Vuc2l0aXZlLFxuICBwb2xsLFxuICBtZWRpYUlkcyA9IFtdLFxuICBjb250ZW50VHlwZVxufSkgPT4ge1xuICBjb25zdCBmb3JtID0gbmV3IEZvcm1EYXRhKClcbiAgY29uc3QgcG9sbE9wdGlvbnMgPSBwb2xsLm9wdGlvbnMgfHwgW11cblxuICBmb3JtLmFwcGVuZCgnc3RhdHVzJywgc3RhdHVzKVxuICBpZiAoc3BvaWxlclRleHQpIGZvcm0uYXBwZW5kKCdzcG9pbGVyX3RleHQnLCBzcG9pbGVyVGV4dClcbiAgaWYgKHNlbnNpdGl2ZSkgZm9ybS5hcHBlbmQoJ3NlbnNpdGl2ZScsIHNlbnNpdGl2ZSlcbiAgaWYgKGNvbnRlbnRUeXBlKSBmb3JtLmFwcGVuZCgnY29udGVudF90eXBlJywgY29udGVudFR5cGUpXG4gIG1lZGlhSWRzLmZvckVhY2godmFsID0+IHtcbiAgICBmb3JtLmFwcGVuZCgnbWVkaWFfaWRzW10nLCB2YWwpXG4gIH0pXG5cbiAgaWYgKHBvbGxPcHRpb25zLnNvbWUob3B0aW9uID0+IG9wdGlvbiAhPT0gJycpKSB7XG4gICAgY29uc3Qgbm9ybWFsaXplZFBvbGwgPSB7XG4gICAgICBleHBpcmVzX2luOiBwYXJzZUludChwb2xsLmV4cGlyZXNJbiwgMTApLFxuICAgICAgbXVsdGlwbGU6IHBvbGwubXVsdGlwbGVcbiAgICB9XG4gICAgT2JqZWN0LmtleXMobm9ybWFsaXplZFBvbGwpLmZvckVhY2goa2V5ID0+IHtcbiAgICAgIGZvcm0uYXBwZW5kKGBwb2xsWyR7a2V5fV1gLCBub3JtYWxpemVkUG9sbFtrZXldKVxuICAgIH0pXG5cbiAgICBwb2xsT3B0aW9ucy5mb3JFYWNoKG9wdGlvbiA9PiB7XG4gICAgICBmb3JtLmFwcGVuZCgncG9sbFtvcHRpb25zXVtdJywgb3B0aW9uKVxuICAgIH0pXG4gIH1cblxuICBjb25zdCBwdXRIZWFkZXJzID0gYXV0aEhlYWRlcnMoY3JlZGVudGlhbHMpXG5cbiAgcmV0dXJuIGZldGNoKE1BU1RPRE9OX1NUQVRVU19VUkwoaWQpLCB7XG4gICAgYm9keTogZm9ybSxcbiAgICBtZXRob2Q6ICdQVVQnLFxuICAgIGhlYWRlcnM6IHB1dEhlYWRlcnNcbiAgfSlcbiAgICAudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgIHJldHVybiByZXNwb25zZS5qc29uKClcbiAgICB9KVxuICAgIC50aGVuKChkYXRhKSA9PiBkYXRhLmVycm9yID8gZGF0YSA6IHBhcnNlU3RhdHVzKGRhdGEpKVxufVxuXG5jb25zdCBkZWxldGVTdGF0dXMgPSAoeyBpZCwgY3JlZGVudGlhbHMgfSkgPT4ge1xuICByZXR1cm4gcHJvbWlzZWRSZXF1ZXN0KHtcbiAgICB1cmw6IE1BU1RPRE9OX0RFTEVURV9VUkwoaWQpLFxuICAgIGNyZWRlbnRpYWxzLFxuICAgIG1ldGhvZDogJ0RFTEVURSdcbiAgfSlcbn1cblxuY29uc3QgdXBsb2FkTWVkaWEgPSAoeyBmb3JtRGF0YSwgY3JlZGVudGlhbHMgfSkgPT4ge1xuICByZXR1cm4gZmV0Y2goTUFTVE9ET05fTUVESUFfVVBMT0FEX1VSTCwge1xuICAgIGJvZHk6IGZvcm1EYXRhLFxuICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgIGhlYWRlcnM6IGF1dGhIZWFkZXJzKGNyZWRlbnRpYWxzKVxuICB9KVxuICAgIC50aGVuKChkYXRhKSA9PiBkYXRhLmpzb24oKSlcbiAgICAudGhlbigoZGF0YSkgPT4gcGFyc2VBdHRhY2htZW50KGRhdGEpKVxufVxuXG5jb25zdCBzZXRNZWRpYURlc2NyaXB0aW9uID0gKHsgaWQsIGRlc2NyaXB0aW9uLCBjcmVkZW50aWFscyB9KSA9PiB7XG4gIHJldHVybiBwcm9taXNlZFJlcXVlc3Qoe1xuICAgIHVybDogYCR7TUFTVE9ET05fTUVESUFfVVBMT0FEX1VSTH0vJHtpZH1gLFxuICAgIG1ldGhvZDogJ1BVVCcsXG4gICAgaGVhZGVyczogYXV0aEhlYWRlcnMoY3JlZGVudGlhbHMpLFxuICAgIHBheWxvYWQ6IHtcbiAgICAgIGRlc2NyaXB0aW9uXG4gICAgfVxuICB9KS50aGVuKChkYXRhKSA9PiBwYXJzZUF0dGFjaG1lbnQoZGF0YSkpXG59XG5cbmNvbnN0IGltcG9ydE11dGVzID0gKHsgZmlsZSwgY3JlZGVudGlhbHMgfSkgPT4ge1xuICBjb25zdCBmb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpXG4gIGZvcm1EYXRhLmFwcGVuZCgnbGlzdCcsIGZpbGUpXG4gIHJldHVybiBmZXRjaChNVVRFU19JTVBPUlRfVVJMLCB7XG4gICAgYm9keTogZm9ybURhdGEsXG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogYXV0aEhlYWRlcnMoY3JlZGVudGlhbHMpXG4gIH0pXG4gICAgLnRoZW4oKHJlc3BvbnNlKSA9PiByZXNwb25zZS5vaylcbn1cblxuY29uc3QgaW1wb3J0QmxvY2tzID0gKHsgZmlsZSwgY3JlZGVudGlhbHMgfSkgPT4ge1xuICBjb25zdCBmb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpXG4gIGZvcm1EYXRhLmFwcGVuZCgnbGlzdCcsIGZpbGUpXG4gIHJldHVybiBmZXRjaChCTE9DS1NfSU1QT1JUX1VSTCwge1xuICAgIGJvZHk6IGZvcm1EYXRhLFxuICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgIGhlYWRlcnM6IGF1dGhIZWFkZXJzKGNyZWRlbnRpYWxzKVxuICB9KVxuICAgIC50aGVuKChyZXNwb25zZSkgPT4gcmVzcG9uc2Uub2spXG59XG5cbmNvbnN0IGltcG9ydEZvbGxvd3MgPSAoeyBmaWxlLCBjcmVkZW50aWFscyB9KSA9PiB7XG4gIGNvbnN0IGZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKClcbiAgZm9ybURhdGEuYXBwZW5kKCdsaXN0JywgZmlsZSlcbiAgcmV0dXJuIGZldGNoKEZPTExPV19JTVBPUlRfVVJMLCB7XG4gICAgYm9keTogZm9ybURhdGEsXG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogYXV0aEhlYWRlcnMoY3JlZGVudGlhbHMpXG4gIH0pXG4gICAgLnRoZW4oKHJlc3BvbnNlKSA9PiByZXNwb25zZS5vaylcbn1cblxuY29uc3QgZGVsZXRlQWNjb3VudCA9ICh7IGNyZWRlbnRpYWxzLCBwYXNzd29yZCB9KSA9PiB7XG4gIGNvbnN0IGZvcm0gPSBuZXcgRm9ybURhdGEoKVxuXG4gIGZvcm0uYXBwZW5kKCdwYXNzd29yZCcsIHBhc3N3b3JkKVxuXG4gIHJldHVybiBmZXRjaChERUxFVEVfQUNDT1VOVF9VUkwsIHtcbiAgICBib2R5OiBmb3JtLFxuICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgIGhlYWRlcnM6IGF1dGhIZWFkZXJzKGNyZWRlbnRpYWxzKVxuICB9KVxuICAgIC50aGVuKChyZXNwb25zZSkgPT4gcmVzcG9uc2UuanNvbigpKVxufVxuXG5jb25zdCBjaGFuZ2VFbWFpbCA9ICh7IGNyZWRlbnRpYWxzLCBlbWFpbCwgcGFzc3dvcmQgfSkgPT4ge1xuICBjb25zdCBmb3JtID0gbmV3IEZvcm1EYXRhKClcblxuICBmb3JtLmFwcGVuZCgnZW1haWwnLCBlbWFpbClcbiAgZm9ybS5hcHBlbmQoJ3Bhc3N3b3JkJywgcGFzc3dvcmQpXG5cbiAgcmV0dXJuIGZldGNoKENIQU5HRV9FTUFJTF9VUkwsIHtcbiAgICBib2R5OiBmb3JtLFxuICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgIGhlYWRlcnM6IGF1dGhIZWFkZXJzKGNyZWRlbnRpYWxzKVxuICB9KVxuICAgIC50aGVuKChyZXNwb25zZSkgPT4gcmVzcG9uc2UuanNvbigpKVxufVxuXG5jb25zdCBtb3ZlQWNjb3VudCA9ICh7IGNyZWRlbnRpYWxzLCBwYXNzd29yZCwgdGFyZ2V0QWNjb3VudCB9KSA9PiB7XG4gIGNvbnN0IGZvcm0gPSBuZXcgRm9ybURhdGEoKVxuXG4gIGZvcm0uYXBwZW5kKCdwYXNzd29yZCcsIHBhc3N3b3JkKVxuICBmb3JtLmFwcGVuZCgndGFyZ2V0X2FjY291bnQnLCB0YXJnZXRBY2NvdW50KVxuXG4gIHJldHVybiBmZXRjaChNT1ZFX0FDQ09VTlRfVVJMLCB7XG4gICAgYm9keTogZm9ybSxcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzOiBhdXRoSGVhZGVycyhjcmVkZW50aWFscylcbiAgfSlcbiAgICAudGhlbigocmVzcG9uc2UpID0+IHJlc3BvbnNlLmpzb24oKSlcbn1cblxuY29uc3QgYWRkQWxpYXMgPSAoeyBjcmVkZW50aWFscywgYWxpYXMgfSkgPT4ge1xuICByZXR1cm4gcHJvbWlzZWRSZXF1ZXN0KHtcbiAgICB1cmw6IEFMSUFTRVNfVVJMLFxuICAgIG1ldGhvZDogJ1BVVCcsXG4gICAgY3JlZGVudGlhbHMsXG4gICAgcGF5bG9hZDogeyBhbGlhcyB9XG4gIH0pXG59XG5cbmNvbnN0IGRlbGV0ZUFsaWFzID0gKHsgY3JlZGVudGlhbHMsIGFsaWFzIH0pID0+IHtcbiAgcmV0dXJuIHByb21pc2VkUmVxdWVzdCh7XG4gICAgdXJsOiBBTElBU0VTX1VSTCxcbiAgICBtZXRob2Q6ICdERUxFVEUnLFxuICAgIGNyZWRlbnRpYWxzLFxuICAgIHBheWxvYWQ6IHsgYWxpYXMgfVxuICB9KVxufVxuXG5jb25zdCBsaXN0QWxpYXNlcyA9ICh7IGNyZWRlbnRpYWxzIH0pID0+IHtcbiAgcmV0dXJuIHByb21pc2VkUmVxdWVzdCh7XG4gICAgdXJsOiBBTElBU0VTX1VSTCxcbiAgICBtZXRob2Q6ICdHRVQnLFxuICAgIGNyZWRlbnRpYWxzLFxuICAgIHBhcmFtczoge1xuICAgICAgX2NhY2hlQm9vc3RlcjogKG5ldyBEYXRlKCkpLmdldFRpbWUoKVxuICAgIH1cbiAgfSlcbn1cblxuY29uc3QgY2hhbmdlUGFzc3dvcmQgPSAoeyBjcmVkZW50aWFscywgcGFzc3dvcmQsIG5ld1Bhc3N3b3JkLCBuZXdQYXNzd29yZENvbmZpcm1hdGlvbiB9KSA9PiB7XG4gIGNvbnN0IGZvcm0gPSBuZXcgRm9ybURhdGEoKVxuXG4gIGZvcm0uYXBwZW5kKCdwYXNzd29yZCcsIHBhc3N3b3JkKVxuICBmb3JtLmFwcGVuZCgnbmV3X3Bhc3N3b3JkJywgbmV3UGFzc3dvcmQpXG4gIGZvcm0uYXBwZW5kKCduZXdfcGFzc3dvcmRfY29uZmlybWF0aW9uJywgbmV3UGFzc3dvcmRDb25maXJtYXRpb24pXG5cbiAgcmV0dXJuIGZldGNoKENIQU5HRV9QQVNTV09SRF9VUkwsIHtcbiAgICBib2R5OiBmb3JtLFxuICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgIGhlYWRlcnM6IGF1dGhIZWFkZXJzKGNyZWRlbnRpYWxzKVxuICB9KVxuICAgIC50aGVuKChyZXNwb25zZSkgPT4gcmVzcG9uc2UuanNvbigpKVxufVxuXG5jb25zdCBzZXR0aW5nc01GQSA9ICh7IGNyZWRlbnRpYWxzIH0pID0+IHtcbiAgcmV0dXJuIGZldGNoKE1GQV9TRVRUSU5HU19VUkwsIHtcbiAgICBoZWFkZXJzOiBhdXRoSGVhZGVycyhjcmVkZW50aWFscyksXG4gICAgbWV0aG9kOiAnR0VUJ1xuICB9KS50aGVuKChkYXRhKSA9PiBkYXRhLmpzb24oKSlcbn1cblxuY29uc3QgbWZhRGlzYWJsZU9UUCA9ICh7IGNyZWRlbnRpYWxzLCBwYXNzd29yZCB9KSA9PiB7XG4gIGNvbnN0IGZvcm0gPSBuZXcgRm9ybURhdGEoKVxuXG4gIGZvcm0uYXBwZW5kKCdwYXNzd29yZCcsIHBhc3N3b3JkKVxuXG4gIHJldHVybiBmZXRjaChNRkFfRElTQUJMRV9PVFBfVVJMLCB7XG4gICAgYm9keTogZm9ybSxcbiAgICBtZXRob2Q6ICdERUxFVEUnLFxuICAgIGhlYWRlcnM6IGF1dGhIZWFkZXJzKGNyZWRlbnRpYWxzKVxuICB9KVxuICAgIC50aGVuKChyZXNwb25zZSkgPT4gcmVzcG9uc2UuanNvbigpKVxufVxuXG5jb25zdCBtZmFDb25maXJtT1RQID0gKHsgY3JlZGVudGlhbHMsIHBhc3N3b3JkLCB0b2tlbiB9KSA9PiB7XG4gIGNvbnN0IGZvcm0gPSBuZXcgRm9ybURhdGEoKVxuXG4gIGZvcm0uYXBwZW5kKCdwYXNzd29yZCcsIHBhc3N3b3JkKVxuICBmb3JtLmFwcGVuZCgnY29kZScsIHRva2VuKVxuXG4gIHJldHVybiBmZXRjaChNRkFfQ09ORklSTV9PVFBfVVJMLCB7XG4gICAgYm9keTogZm9ybSxcbiAgICBoZWFkZXJzOiBhdXRoSGVhZGVycyhjcmVkZW50aWFscyksXG4gICAgbWV0aG9kOiAnUE9TVCdcbiAgfSkudGhlbigoZGF0YSkgPT4gZGF0YS5qc29uKCkpXG59XG5jb25zdCBtZmFTZXR1cE9UUCA9ICh7IGNyZWRlbnRpYWxzIH0pID0+IHtcbiAgcmV0dXJuIGZldGNoKE1GQV9TRVRVUF9PVFBfVVJMLCB7XG4gICAgaGVhZGVyczogYXV0aEhlYWRlcnMoY3JlZGVudGlhbHMpLFxuICAgIG1ldGhvZDogJ0dFVCdcbiAgfSkudGhlbigoZGF0YSkgPT4gZGF0YS5qc29uKCkpXG59XG5jb25zdCBnZW5lcmF0ZU1mYUJhY2t1cENvZGVzID0gKHsgY3JlZGVudGlhbHMgfSkgPT4ge1xuICByZXR1cm4gZmV0Y2goTUZBX0JBQ0tVUF9DT0RFU19VUkwsIHtcbiAgICBoZWFkZXJzOiBhdXRoSGVhZGVycyhjcmVkZW50aWFscyksXG4gICAgbWV0aG9kOiAnR0VUJ1xuICB9KS50aGVuKChkYXRhKSA9PiBkYXRhLmpzb24oKSlcbn1cblxuY29uc3QgZmV0Y2hNdXRlcyA9ICh7IG1heElkLCBjcmVkZW50aWFscyB9KSA9PiB7XG4gIGNvbnN0IHF1ZXJ5ID0gbmV3IFVSTFNlYXJjaFBhcmFtcyh7IHdpdGhfcmVsYXRpb25zaGlwczogdHJ1ZSB9KVxuICBpZiAobWF4SWQpIHtcbiAgICBxdWVyeS5hcHBlbmQoJ21heF9pZCcsIG1heElkKVxuICB9XG4gIHJldHVybiBwcm9taXNlZFJlcXVlc3QoeyB1cmw6IGAke01BU1RPRE9OX1VTRVJfTVVURVNfVVJMfT8ke3F1ZXJ5LnRvU3RyaW5nKCl9YCwgY3JlZGVudGlhbHMgfSlcbiAgICAudGhlbigodXNlcnMpID0+IHVzZXJzLm1hcChwYXJzZVVzZXIpKVxufVxuXG5jb25zdCBtdXRlVXNlciA9ICh7IGlkLCBleHBpcmVzSW4sIGNyZWRlbnRpYWxzIH0pID0+IHtcbiAgY29uc3QgcGF5bG9hZCA9IHt9XG4gIGlmIChleHBpcmVzSW4pIHtcbiAgICBwYXlsb2FkLmV4cGlyZXNfaW4gPSBleHBpcmVzSW5cbiAgfVxuICByZXR1cm4gcHJvbWlzZWRSZXF1ZXN0KHsgdXJsOiBNQVNUT0RPTl9NVVRFX1VTRVJfVVJMKGlkKSwgY3JlZGVudGlhbHMsIG1ldGhvZDogJ1BPU1QnLCBwYXlsb2FkIH0pXG59XG5cbmNvbnN0IHVubXV0ZVVzZXIgPSAoeyBpZCwgY3JlZGVudGlhbHMgfSkgPT4ge1xuICByZXR1cm4gcHJvbWlzZWRSZXF1ZXN0KHsgdXJsOiBNQVNUT0RPTl9VTk1VVEVfVVNFUl9VUkwoaWQpLCBjcmVkZW50aWFscywgbWV0aG9kOiAnUE9TVCcgfSlcbn1cblxuY29uc3Qgc3Vic2NyaWJlVXNlciA9ICh7IGlkLCBjcmVkZW50aWFscyB9KSA9PiB7XG4gIHJldHVybiBwcm9taXNlZFJlcXVlc3QoeyB1cmw6IE1BU1RPRE9OX1NVQlNDUklCRV9VU0VSKGlkKSwgY3JlZGVudGlhbHMsIG1ldGhvZDogJ1BPU1QnIH0pXG59XG5cbmNvbnN0IHVuc3Vic2NyaWJlVXNlciA9ICh7IGlkLCBjcmVkZW50aWFscyB9KSA9PiB7XG4gIHJldHVybiBwcm9taXNlZFJlcXVlc3QoeyB1cmw6IE1BU1RPRE9OX1VOU1VCU0NSSUJFX1VTRVIoaWQpLCBjcmVkZW50aWFscywgbWV0aG9kOiAnUE9TVCcgfSlcbn1cblxuY29uc3QgZmV0Y2hCbG9ja3MgPSAoeyBtYXhJZCwgY3JlZGVudGlhbHMgfSkgPT4ge1xuICBjb25zdCBxdWVyeSA9IG5ldyBVUkxTZWFyY2hQYXJhbXMoeyB3aXRoX3JlbGF0aW9uc2hpcHM6IHRydWUgfSlcbiAgaWYgKG1heElkKSB7XG4gICAgcXVlcnkuYXBwZW5kKCdtYXhfaWQnLCBtYXhJZClcbiAgfVxuICByZXR1cm4gcHJvbWlzZWRSZXF1ZXN0KHsgdXJsOiBgJHtNQVNUT0RPTl9VU0VSX0JMT0NLU19VUkx9PyR7cXVlcnkudG9TdHJpbmcoKX1gLCBjcmVkZW50aWFscyB9KVxuICAgIC50aGVuKCh1c2VycykgPT4gdXNlcnMubWFwKHBhcnNlVXNlcikpXG59XG5cbmNvbnN0IGFkZEJhY2t1cCA9ICh7IGNyZWRlbnRpYWxzIH0pID0+IHtcbiAgcmV0dXJuIHByb21pc2VkUmVxdWVzdCh7XG4gICAgdXJsOiBQTEVST01BX0JBQ0tVUF9VUkwsXG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgY3JlZGVudGlhbHNcbiAgfSlcbn1cblxuY29uc3QgbGlzdEJhY2t1cHMgPSAoeyBjcmVkZW50aWFscyB9KSA9PiB7XG4gIHJldHVybiBwcm9taXNlZFJlcXVlc3Qoe1xuICAgIHVybDogUExFUk9NQV9CQUNLVVBfVVJMLFxuICAgIG1ldGhvZDogJ0dFVCcsXG4gICAgY3JlZGVudGlhbHMsXG4gICAgcGFyYW1zOiB7XG4gICAgICBfY2FjaGVCb29zdGVyOiAobmV3IERhdGUoKSkuZ2V0VGltZSgpXG4gICAgfVxuICB9KVxufVxuXG5jb25zdCBmZXRjaE9BdXRoVG9rZW5zID0gKHsgY3JlZGVudGlhbHMgfSkgPT4ge1xuICBjb25zdCB1cmwgPSAnL2FwaS9vYXV0aF90b2tlbnMuanNvbidcblxuICByZXR1cm4gZmV0Y2godXJsLCB7XG4gICAgaGVhZGVyczogYXV0aEhlYWRlcnMoY3JlZGVudGlhbHMpXG4gIH0pLnRoZW4oKGRhdGEpID0+IHtcbiAgICBpZiAoZGF0YS5vaykge1xuICAgICAgcmV0dXJuIGRhdGEuanNvbigpXG4gICAgfVxuICAgIHRocm93IG5ldyBFcnJvcignRXJyb3IgZmV0Y2hpbmcgYXV0aCB0b2tlbnMnLCBkYXRhKVxuICB9KVxufVxuXG5jb25zdCByZXZva2VPQXV0aFRva2VuID0gKHsgaWQsIGNyZWRlbnRpYWxzIH0pID0+IHtcbiAgY29uc3QgdXJsID0gYC9hcGkvb2F1dGhfdG9rZW5zLyR7aWR9YFxuXG4gIHJldHVybiBmZXRjaCh1cmwsIHtcbiAgICBoZWFkZXJzOiBhdXRoSGVhZGVycyhjcmVkZW50aWFscyksXG4gICAgbWV0aG9kOiAnREVMRVRFJ1xuICB9KVxufVxuXG5jb25zdCBzdWdnZXN0aW9ucyA9ICh7IGNyZWRlbnRpYWxzIH0pID0+IHtcbiAgcmV0dXJuIGZldGNoKFNVR0dFU1RJT05TX1VSTCwge1xuICAgIGhlYWRlcnM6IGF1dGhIZWFkZXJzKGNyZWRlbnRpYWxzKVxuICB9KS50aGVuKChkYXRhKSA9PiBkYXRhLmpzb24oKSlcbn1cblxuY29uc3QgbWFya05vdGlmaWNhdGlvbnNBc1NlZW4gPSAoeyBpZCwgY3JlZGVudGlhbHMsIHNpbmdsZSA9IGZhbHNlIH0pID0+IHtcbiAgY29uc3QgYm9keSA9IG5ldyBGb3JtRGF0YSgpXG5cbiAgaWYgKHNpbmdsZSkge1xuICAgIGJvZHkuYXBwZW5kKCdpZCcsIGlkKVxuICB9IGVsc2Uge1xuICAgIGJvZHkuYXBwZW5kKCdtYXhfaWQnLCBpZClcbiAgfVxuXG4gIHJldHVybiBmZXRjaChOT1RJRklDQVRJT05fUkVBRF9VUkwsIHtcbiAgICBib2R5LFxuICAgIGhlYWRlcnM6IGF1dGhIZWFkZXJzKGNyZWRlbnRpYWxzKSxcbiAgICBtZXRob2Q6ICdQT1NUJ1xuICB9KS50aGVuKChkYXRhKSA9PiBkYXRhLmpzb24oKSlcbn1cblxuY29uc3Qgdm90ZSA9ICh7IHBvbGxJZCwgY2hvaWNlcywgY3JlZGVudGlhbHMgfSkgPT4ge1xuICBjb25zdCBmb3JtID0gbmV3IEZvcm1EYXRhKClcbiAgZm9ybS5hcHBlbmQoJ2Nob2ljZXMnLCBjaG9pY2VzKVxuXG4gIHJldHVybiBwcm9taXNlZFJlcXVlc3Qoe1xuICAgIHVybDogTUFTVE9ET05fVk9URV9VUkwoZW5jb2RlVVJJQ29tcG9uZW50KHBvbGxJZCkpLFxuICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgIGNyZWRlbnRpYWxzLFxuICAgIHBheWxvYWQ6IHtcbiAgICAgIGNob2ljZXNcbiAgICB9XG4gIH0pXG59XG5cbmNvbnN0IGZldGNoUG9sbCA9ICh7IHBvbGxJZCwgY3JlZGVudGlhbHMgfSkgPT4ge1xuICByZXR1cm4gcHJvbWlzZWRSZXF1ZXN0KFxuICAgIHtcbiAgICAgIHVybDogTUFTVE9ET05fUE9MTF9VUkwoZW5jb2RlVVJJQ29tcG9uZW50KHBvbGxJZCkpLFxuICAgICAgbWV0aG9kOiAnR0VUJyxcbiAgICAgIGNyZWRlbnRpYWxzXG4gICAgfVxuICApXG59XG5cbmNvbnN0IGZldGNoRmF2b3JpdGVkQnlVc2VycyA9ICh7IGlkLCBjcmVkZW50aWFscyB9KSA9PiB7XG4gIHJldHVybiBwcm9taXNlZFJlcXVlc3Qoe1xuICAgIHVybDogTUFTVE9ET05fU1RBVFVTX0ZBVk9SSVRFREJZX1VSTChpZCksXG4gICAgbWV0aG9kOiAnR0VUJyxcbiAgICBjcmVkZW50aWFsc1xuICB9KS50aGVuKCh1c2VycykgPT4gdXNlcnMubWFwKHBhcnNlVXNlcikpXG59XG5cbmNvbnN0IGZldGNoUmVibG9nZ2VkQnlVc2VycyA9ICh7IGlkLCBjcmVkZW50aWFscyB9KSA9PiB7XG4gIHJldHVybiBwcm9taXNlZFJlcXVlc3Qoe1xuICAgIHVybDogTUFTVE9ET05fU1RBVFVTX1JFQkxPR0dFREJZX1VSTChpZCksXG4gICAgbWV0aG9kOiAnR0VUJyxcbiAgICBjcmVkZW50aWFsc1xuICB9KS50aGVuKCh1c2VycykgPT4gdXNlcnMubWFwKHBhcnNlVXNlcikpXG59XG5cbmNvbnN0IGZldGNoRW1vamlSZWFjdGlvbnMgPSAoeyBpZCwgY3JlZGVudGlhbHMgfSkgPT4ge1xuICByZXR1cm4gcHJvbWlzZWRSZXF1ZXN0KHsgdXJsOiBQTEVST01BX0VNT0pJX1JFQUNUSU9OU19VUkwoaWQpLCBjcmVkZW50aWFscyB9KVxuICAgIC50aGVuKChyZWFjdGlvbnMpID0+IHJlYWN0aW9ucy5tYXAociA9PiB7XG4gICAgICByLmFjY291bnRzID0gci5hY2NvdW50cy5tYXAocGFyc2VVc2VyKVxuICAgICAgcmV0dXJuIHJcbiAgICB9KSlcbn1cblxuY29uc3QgcmVhY3RXaXRoRW1vamkgPSAoeyBpZCwgZW1vamksIGNyZWRlbnRpYWxzIH0pID0+IHtcbiAgcmV0dXJuIHByb21pc2VkUmVxdWVzdCh7XG4gICAgdXJsOiBQTEVST01BX0VNT0pJX1JFQUNUX1VSTChpZCwgZW1vamkpLFxuICAgIG1ldGhvZDogJ1BVVCcsXG4gICAgY3JlZGVudGlhbHNcbiAgfSkudGhlbihwYXJzZVN0YXR1cylcbn1cblxuY29uc3QgdW5yZWFjdFdpdGhFbW9qaSA9ICh7IGlkLCBlbW9qaSwgY3JlZGVudGlhbHMgfSkgPT4ge1xuICByZXR1cm4gcHJvbWlzZWRSZXF1ZXN0KHtcbiAgICB1cmw6IFBMRVJPTUFfRU1PSklfVU5SRUFDVF9VUkwoaWQsIGVtb2ppKSxcbiAgICBtZXRob2Q6ICdERUxFVEUnLFxuICAgIGNyZWRlbnRpYWxzXG4gIH0pLnRoZW4ocGFyc2VTdGF0dXMpXG59XG5cbmNvbnN0IHJlcG9ydFVzZXIgPSAoeyBjcmVkZW50aWFscywgdXNlcklkLCBzdGF0dXNJZHMsIGNvbW1lbnQsIGZvcndhcmQgfSkgPT4ge1xuICByZXR1cm4gcHJvbWlzZWRSZXF1ZXN0KHtcbiAgICB1cmw6IE1BU1RPRE9OX1JFUE9SVF9VU0VSX1VSTCxcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBwYXlsb2FkOiB7XG4gICAgICBhY2NvdW50X2lkOiB1c2VySWQsXG4gICAgICBzdGF0dXNfaWRzOiBzdGF0dXNJZHMsXG4gICAgICBjb21tZW50LFxuICAgICAgZm9yd2FyZFxuICAgIH0sXG4gICAgY3JlZGVudGlhbHNcbiAgfSlcbn1cblxuY29uc3Qgc2VhcmNoVXNlcnMgPSAoeyBjcmVkZW50aWFscywgcXVlcnkgfSkgPT4ge1xuICByZXR1cm4gcHJvbWlzZWRSZXF1ZXN0KHtcbiAgICB1cmw6IE1BU1RPRE9OX1VTRVJfU0VBUkNIX1VSTCxcbiAgICBwYXJhbXM6IHtcbiAgICAgIHE6IHF1ZXJ5LFxuICAgICAgcmVzb2x2ZTogdHJ1ZVxuICAgIH0sXG4gICAgY3JlZGVudGlhbHNcbiAgfSlcbiAgICAudGhlbigoZGF0YSkgPT4gZGF0YS5tYXAocGFyc2VVc2VyKSlcbn1cblxuY29uc3Qgc2VhcmNoMiA9ICh7IGNyZWRlbnRpYWxzLCBxLCByZXNvbHZlLCBsaW1pdCwgb2Zmc2V0LCBmb2xsb3dpbmcsIHR5cGUgfSkgPT4ge1xuICBsZXQgdXJsID0gTUFTVE9ET05fU0VBUkNIXzJcbiAgY29uc3QgcGFyYW1zID0gW11cblxuICBpZiAocSkge1xuICAgIHBhcmFtcy5wdXNoKFsncScsIGVuY29kZVVSSUNvbXBvbmVudChxKV0pXG4gIH1cblxuICBpZiAocmVzb2x2ZSkge1xuICAgIHBhcmFtcy5wdXNoKFsncmVzb2x2ZScsIHJlc29sdmVdKVxuICB9XG5cbiAgaWYgKGxpbWl0KSB7XG4gICAgcGFyYW1zLnB1c2goWydsaW1pdCcsIGxpbWl0XSlcbiAgfVxuXG4gIGlmIChvZmZzZXQpIHtcbiAgICBwYXJhbXMucHVzaChbJ29mZnNldCcsIG9mZnNldF0pXG4gIH1cblxuICBpZiAoZm9sbG93aW5nKSB7XG4gICAgcGFyYW1zLnB1c2goWydmb2xsb3dpbmcnLCB0cnVlXSlcbiAgfVxuXG4gIGlmICh0eXBlKSB7XG4gICAgcGFyYW1zLnB1c2goWydmb2xsb3dpbmcnLCB0eXBlXSlcbiAgfVxuXG4gIHBhcmFtcy5wdXNoKFsnd2l0aF9yZWxhdGlvbnNoaXBzJywgdHJ1ZV0pXG5cbiAgY29uc3QgcXVlcnlTdHJpbmcgPSBtYXAocGFyYW1zLCAocGFyYW0pID0+IGAke3BhcmFtWzBdfT0ke3BhcmFtWzFdfWApLmpvaW4oJyYnKVxuICB1cmwgKz0gYD8ke3F1ZXJ5U3RyaW5nfWBcblxuICByZXR1cm4gZmV0Y2godXJsLCB7IGhlYWRlcnM6IGF1dGhIZWFkZXJzKGNyZWRlbnRpYWxzKSB9KVxuICAgIC50aGVuKChkYXRhKSA9PiB7XG4gICAgICBpZiAoZGF0YS5vaykge1xuICAgICAgICByZXR1cm4gZGF0YVxuICAgICAgfVxuICAgICAgdGhyb3cgbmV3IEVycm9yKCdFcnJvciBmZXRjaGluZyBzZWFyY2ggcmVzdWx0JywgZGF0YSlcbiAgICB9KVxuICAgIC50aGVuKChkYXRhKSA9PiB7IHJldHVybiBkYXRhLmpzb24oKSB9KVxuICAgIC50aGVuKChkYXRhKSA9PiB7XG4gICAgICBkYXRhLmFjY291bnRzID0gZGF0YS5hY2NvdW50cy5zbGljZSgwLCBsaW1pdCkubWFwKHUgPT4gcGFyc2VVc2VyKHUpKVxuICAgICAgZGF0YS5zdGF0dXNlcyA9IGRhdGEuc3RhdHVzZXMuc2xpY2UoMCwgbGltaXQpLm1hcChzID0+IHBhcnNlU3RhdHVzKHMpKVxuICAgICAgcmV0dXJuIGRhdGFcbiAgICB9KVxufVxuXG5jb25zdCBmZXRjaEtub3duRG9tYWlucyA9ICh7IGNyZWRlbnRpYWxzIH0pID0+IHtcbiAgcmV0dXJuIHByb21pc2VkUmVxdWVzdCh7IHVybDogTUFTVE9ET05fS05PV05fRE9NQUlOX0xJU1RfVVJMLCBjcmVkZW50aWFscyB9KVxufVxuXG5jb25zdCBmZXRjaERvbWFpbk11dGVzID0gKHsgY3JlZGVudGlhbHMgfSkgPT4ge1xuICByZXR1cm4gcHJvbWlzZWRSZXF1ZXN0KHsgdXJsOiBNQVNUT0RPTl9ET01BSU5fQkxPQ0tTX1VSTCwgY3JlZGVudGlhbHMgfSlcbn1cblxuY29uc3QgbXV0ZURvbWFpbiA9ICh7IGRvbWFpbiwgY3JlZGVudGlhbHMgfSkgPT4ge1xuICByZXR1cm4gcHJvbWlzZWRSZXF1ZXN0KHtcbiAgICB1cmw6IE1BU1RPRE9OX0RPTUFJTl9CTE9DS1NfVVJMLFxuICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgIHBheWxvYWQ6IHsgZG9tYWluIH0sXG4gICAgY3JlZGVudGlhbHNcbiAgfSlcbn1cblxuY29uc3QgdW5tdXRlRG9tYWluID0gKHsgZG9tYWluLCBjcmVkZW50aWFscyB9KSA9PiB7XG4gIHJldHVybiBwcm9taXNlZFJlcXVlc3Qoe1xuICAgIHVybDogTUFTVE9ET05fRE9NQUlOX0JMT0NLU19VUkwsXG4gICAgbWV0aG9kOiAnREVMRVRFJyxcbiAgICBwYXlsb2FkOiB7IGRvbWFpbiB9LFxuICAgIGNyZWRlbnRpYWxzXG4gIH0pXG59XG5cbmNvbnN0IGRpc21pc3NOb3RpZmljYXRpb24gPSAoeyBjcmVkZW50aWFscywgaWQgfSkgPT4ge1xuICByZXR1cm4gcHJvbWlzZWRSZXF1ZXN0KHtcbiAgICB1cmw6IE1BU1RPRE9OX0RJU01JU1NfTk9USUZJQ0FUSU9OX1VSTChpZCksXG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgcGF5bG9hZDogeyBpZCB9LFxuICAgIGNyZWRlbnRpYWxzXG4gIH0pXG59XG5cbmNvbnN0IGFkbWluRmV0Y2hBbm5vdW5jZW1lbnRzID0gKHsgY3JlZGVudGlhbHMgfSkgPT4ge1xuICByZXR1cm4gcHJvbWlzZWRSZXF1ZXN0KHsgdXJsOiBQTEVST01BX0FOTk9VTkNFTUVOVFNfVVJMLCBjcmVkZW50aWFscyB9KVxufVxuXG5jb25zdCBmZXRjaEFubm91bmNlbWVudHMgPSAoeyBjcmVkZW50aWFscyB9KSA9PiB7XG4gIHJldHVybiBwcm9taXNlZFJlcXVlc3QoeyB1cmw6IE1BU1RPRE9OX0FOTk9VTkNFTUVOVFNfVVJMLCBjcmVkZW50aWFscyB9KVxufVxuXG5jb25zdCBkaXNtaXNzQW5ub3VuY2VtZW50ID0gKHsgaWQsIGNyZWRlbnRpYWxzIH0pID0+IHtcbiAgcmV0dXJuIHByb21pc2VkUmVxdWVzdCh7XG4gICAgdXJsOiBNQVNUT0RPTl9BTk5PVU5DRU1FTlRTX0RJU01JU1NfVVJMKGlkKSxcbiAgICBjcmVkZW50aWFscyxcbiAgICBtZXRob2Q6ICdQT1NUJ1xuICB9KVxufVxuXG5jb25zdCBhbm5vdW5jZW1lbnRUb1BheWxvYWQgPSAoeyBjb250ZW50LCBzdGFydHNBdCwgZW5kc0F0LCBhbGxEYXkgfSkgPT4ge1xuICBjb25zdCBwYXlsb2FkID0geyBjb250ZW50IH1cblxuICBpZiAodHlwZW9mIHN0YXJ0c0F0ICE9PSAndW5kZWZpbmVkJykge1xuICAgIHBheWxvYWQuc3RhcnRzX2F0ID0gc3RhcnRzQXQgPyBuZXcgRGF0ZShzdGFydHNBdCkudG9JU09TdHJpbmcoKSA6IG51bGxcbiAgfVxuXG4gIGlmICh0eXBlb2YgZW5kc0F0ICE9PSAndW5kZWZpbmVkJykge1xuICAgIHBheWxvYWQuZW5kc19hdCA9IGVuZHNBdCA/IG5ldyBEYXRlKGVuZHNBdCkudG9JU09TdHJpbmcoKSA6IG51bGxcbiAgfVxuXG4gIGlmICh0eXBlb2YgYWxsRGF5ICE9PSAndW5kZWZpbmVkJykge1xuICAgIHBheWxvYWQuYWxsX2RheSA9IGFsbERheVxuICB9XG5cbiAgcmV0dXJuIHBheWxvYWRcbn1cblxuY29uc3QgcG9zdEFubm91bmNlbWVudCA9ICh7IGNyZWRlbnRpYWxzLCBjb250ZW50LCBzdGFydHNBdCwgZW5kc0F0LCBhbGxEYXkgfSkgPT4ge1xuICByZXR1cm4gcHJvbWlzZWRSZXF1ZXN0KHtcbiAgICB1cmw6IFBMRVJPTUFfUE9TVF9BTk5PVU5DRU1FTlRfVVJMLFxuICAgIGNyZWRlbnRpYWxzLFxuICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgIHBheWxvYWQ6IGFubm91bmNlbWVudFRvUGF5bG9hZCh7IGNvbnRlbnQsIHN0YXJ0c0F0LCBlbmRzQXQsIGFsbERheSB9KVxuICB9KVxufVxuXG5jb25zdCBlZGl0QW5ub3VuY2VtZW50ID0gKHsgaWQsIGNyZWRlbnRpYWxzLCBjb250ZW50LCBzdGFydHNBdCwgZW5kc0F0LCBhbGxEYXkgfSkgPT4ge1xuICByZXR1cm4gcHJvbWlzZWRSZXF1ZXN0KHtcbiAgICB1cmw6IFBMRVJPTUFfRURJVF9BTk5PVU5DRU1FTlRfVVJMKGlkKSxcbiAgICBjcmVkZW50aWFscyxcbiAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgcGF5bG9hZDogYW5ub3VuY2VtZW50VG9QYXlsb2FkKHsgY29udGVudCwgc3RhcnRzQXQsIGVuZHNBdCwgYWxsRGF5IH0pXG4gIH0pXG59XG5cbmNvbnN0IGRlbGV0ZUFubm91bmNlbWVudCA9ICh7IGlkLCBjcmVkZW50aWFscyB9KSA9PiB7XG4gIHJldHVybiBwcm9taXNlZFJlcXVlc3Qoe1xuICAgIHVybDogUExFUk9NQV9ERUxFVEVfQU5OT1VOQ0VNRU5UX1VSTChpZCksXG4gICAgY3JlZGVudGlhbHMsXG4gICAgbWV0aG9kOiAnREVMRVRFJ1xuICB9KVxufVxuXG5leHBvcnQgY29uc3QgZ2V0TWFzdG9kb25Tb2NrZXRVUkkgPSAoeyBjcmVkZW50aWFscywgc3RyZWFtLCBhcmdzID0ge30gfSkgPT4ge1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMoe1xuICAgIC4uLihjcmVkZW50aWFsc1xuICAgICAgPyB7IGFjY2Vzc190b2tlbjogY3JlZGVudGlhbHMgfVxuICAgICAgOiB7fVxuICAgICksXG4gICAgc3RyZWFtLFxuICAgIC4uLmFyZ3NcbiAgfSkucmVkdWNlKChhY2MsIFtrZXksIHZhbF0pID0+IHtcbiAgICByZXR1cm4gYWNjICsgYCR7a2V5fT0ke3ZhbH0mYFxuICB9LCBNQVNUT0RPTl9TVFJFQU1JTkcgKyAnPycpXG59XG5cbmNvbnN0IE1BU1RPRE9OX1NUUkVBTUlOR19FVkVOVFMgPSBuZXcgU2V0KFtcbiAgJ3VwZGF0ZScsXG4gICdub3RpZmljYXRpb24nLFxuICAnZGVsZXRlJyxcbiAgJ2ZpbHRlcnNfY2hhbmdlZCcsXG4gICdzdGF0dXMudXBkYXRlJ1xuXSlcblxuY29uc3QgUExFUk9NQV9TVFJFQU1JTkdfRVZFTlRTID0gbmV3IFNldChbXG4gICdwbGVyb21hOmNoYXRfdXBkYXRlJ1xuXSlcblxuLy8gQSB0aGluIHdyYXBwZXIgYXJvdW5kIFdlYlNvY2tldCBBUEkgdGhhdCBhbGxvd3MgYWRkaW5nIGEgcHJlLXByb2Nlc3NvciB0byBpdFxuLy8gVXNlcyBFdmVudFRhcmdldCBhbmQgYSBDdXN0b21FdmVudCB0byBwcm94eSBldmVudHNcbmV4cG9ydCBjb25zdCBQcm9jZXNzZWRXUyA9ICh7XG4gIHVybCxcbiAgcHJlcHJvY2Vzc29yID0gaGFuZGxlTWFzdG9XUyxcbiAgaWQgPSAnVW5rbm93bidcbn0pID0+IHtcbiAgY29uc3QgZXZlbnRUYXJnZXQgPSBuZXcgRXZlbnRUYXJnZXQoKVxuICBjb25zdCBzb2NrZXQgPSBuZXcgV2ViU29ja2V0KHVybClcbiAgaWYgKCFzb2NrZXQpIHRocm93IG5ldyBFcnJvcihgRmFpbGVkIHRvIGNyZWF0ZSBzb2NrZXQgJHtpZH1gKVxuICBjb25zdCBwcm94eSA9IChvcmlnaW5hbCwgZXZlbnROYW1lLCBwcm9jZXNzb3IgPSBhID0+IGEpID0+IHtcbiAgICBvcmlnaW5hbC5hZGRFdmVudExpc3RlbmVyKGV2ZW50TmFtZSwgKGV2ZW50RGF0YSkgPT4ge1xuICAgICAgZXZlbnRUYXJnZXQuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoXG4gICAgICAgIGV2ZW50TmFtZSxcbiAgICAgICAgeyBkZXRhaWw6IHByb2Nlc3NvcihldmVudERhdGEpIH1cbiAgICAgICkpXG4gICAgfSlcbiAgfVxuICBzb2NrZXQuYWRkRXZlbnRMaXN0ZW5lcignb3BlbicsICh3c0V2ZW50KSA9PiB7XG4gICAgY29uc29sZS5kZWJ1ZyhgW1dTXVske2lkfV0gU29ja2V0IGNvbm5lY3RlZGAsIHdzRXZlbnQpXG4gIH0pXG4gIHNvY2tldC5hZGRFdmVudExpc3RlbmVyKCdlcnJvcicsICh3c0V2ZW50KSA9PiB7XG4gICAgY29uc29sZS5kZWJ1ZyhgW1dTXVske2lkfV0gU29ja2V0IGVycm9yZWRgLCB3c0V2ZW50KVxuICB9KVxuICBzb2NrZXQuYWRkRXZlbnRMaXN0ZW5lcignY2xvc2UnLCAod3NFdmVudCkgPT4ge1xuICAgIGNvbnNvbGUuZGVidWcoXG4gICAgICBgW1dTXVske2lkfV0gU29ja2V0IGRpc2Nvbm5lY3RlZCB3aXRoIGNvZGUgJHt3c0V2ZW50LmNvZGV9YCxcbiAgICAgIHdzRXZlbnRcbiAgICApXG4gIH0pXG4gIC8vIENvbW1lbnRlZCBjb2RlIHJlYXNvbjogdmVyeSBzcGFtbXksIHVuY29tbWVudCB0byBlbmFibGUgbWVzc2FnZSBkZWJ1ZyBsb2dnaW5nXG4gIC8qXG4gIHNvY2tldC5hZGRFdmVudExpc3RlbmVyKCdtZXNzYWdlJywgKHdzRXZlbnQpID0+IHtcbiAgICBjb25zb2xlLmRlYnVnKFxuICAgICAgYFtXU11bJHtpZH1dIE1lc3NhZ2UgcmVjZWl2ZWRgLFxuICAgICAgd3NFdmVudFxuICAgIClcbiAgfSlcbiAgLyoqL1xuXG4gIHByb3h5KHNvY2tldCwgJ29wZW4nKVxuICBwcm94eShzb2NrZXQsICdjbG9zZScpXG4gIHByb3h5KHNvY2tldCwgJ21lc3NhZ2UnLCBwcmVwcm9jZXNzb3IpXG4gIHByb3h5KHNvY2tldCwgJ2Vycm9yJylcblxuICAvLyAxMDAwID0gTm9ybWFsIENsb3N1cmVcbiAgZXZlbnRUYXJnZXQuY2xvc2UgPSAoKSA9PiB7IHNvY2tldC5jbG9zZSgxMDAwLCAnU2h1dHRpbmcgZG93biBzb2NrZXQnKSB9XG4gIGV2ZW50VGFyZ2V0LmdldFN0YXRlID0gKCkgPT4gc29ja2V0LnJlYWR5U3RhdGVcblxuICByZXR1cm4gZXZlbnRUYXJnZXRcbn1cblxuZXhwb3J0IGNvbnN0IGhhbmRsZU1hc3RvV1MgPSAod3NFdmVudCkgPT4ge1xuICBjb25zdCB7IGRhdGEgfSA9IHdzRXZlbnRcbiAgaWYgKCFkYXRhKSByZXR1cm5cbiAgY29uc3QgcGFyc2VkRXZlbnQgPSBKU09OLnBhcnNlKGRhdGEpXG4gIGNvbnN0IHsgZXZlbnQsIHBheWxvYWQgfSA9IHBhcnNlZEV2ZW50XG4gIGlmIChNQVNUT0RPTl9TVFJFQU1JTkdfRVZFTlRTLmhhcyhldmVudCkgfHwgUExFUk9NQV9TVFJFQU1JTkdfRVZFTlRTLmhhcyhldmVudCkpIHtcbiAgICAvLyBNYXN0b0JFIGFuZCBQbGVyb21hQkUgYm90aCBzZW5kIHBheWxvYWQgZm9yIGRlbGV0ZSBhcyBhIFBMQUlOIHN0cmluZ1xuICAgIGlmIChldmVudCA9PT0gJ2RlbGV0ZScpIHtcbiAgICAgIHJldHVybiB7IGV2ZW50LCBpZDogcGF5bG9hZCB9XG4gICAgfVxuICAgIGNvbnN0IGRhdGEgPSBwYXlsb2FkID8gSlNPTi5wYXJzZShwYXlsb2FkKSA6IG51bGxcbiAgICBpZiAoZXZlbnQgPT09ICd1cGRhdGUnKSB7XG4gICAgICByZXR1cm4geyBldmVudCwgc3RhdHVzOiBwYXJzZVN0YXR1cyhkYXRhKSB9XG4gICAgfSBlbHNlIGlmIChldmVudCA9PT0gJ3N0YXR1cy51cGRhdGUnKSB7XG4gICAgICByZXR1cm4geyBldmVudCwgc3RhdHVzOiBwYXJzZVN0YXR1cyhkYXRhKSB9XG4gICAgfSBlbHNlIGlmIChldmVudCA9PT0gJ25vdGlmaWNhdGlvbicpIHtcbiAgICAgIHJldHVybiB7IGV2ZW50LCBub3RpZmljYXRpb246IHBhcnNlTm90aWZpY2F0aW9uKGRhdGEpIH1cbiAgICB9IGVsc2UgaWYgKGV2ZW50ID09PSAncGxlcm9tYTpjaGF0X3VwZGF0ZScpIHtcbiAgICAgIHJldHVybiB7IGV2ZW50LCBjaGF0VXBkYXRlOiBwYXJzZUNoYXQoZGF0YSkgfVxuICAgIH1cbiAgfSBlbHNlIHtcbiAgICBjb25zb2xlLndhcm4oJ1Vua25vd24gZXZlbnQnLCB3c0V2ZW50KVxuICAgIHJldHVybiBudWxsXG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IFdTQ29ubmVjdGlvblN0YXR1cyA9IE9iamVjdC5mcmVlemUoe1xuICBKT0lORUQ6IDEsXG4gIENMT1NFRDogMixcbiAgRVJST1I6IDMsXG4gIERJU0FCTEVEOiA0LFxuICBTVEFSVElORzogNSxcbiAgU1RBUlRJTkdfSU5JVElBTDogNlxufSlcblxuY29uc3QgY2hhdHMgPSAoeyBjcmVkZW50aWFscyB9KSA9PiB7XG4gIHJldHVybiBmZXRjaChQTEVST01BX0NIQVRTX1VSTCwgeyBoZWFkZXJzOiBhdXRoSGVhZGVycyhjcmVkZW50aWFscykgfSlcbiAgICAudGhlbigoZGF0YSkgPT4gZGF0YS5qc29uKCkpXG4gICAgLnRoZW4oKGRhdGEpID0+IHtcbiAgICAgIHJldHVybiB7IGNoYXRzOiBkYXRhLm1hcChwYXJzZUNoYXQpLmZpbHRlcihjID0+IGMpIH1cbiAgICB9KVxufVxuXG5jb25zdCBnZXRPckNyZWF0ZUNoYXQgPSAoeyBhY2NvdW50SWQsIGNyZWRlbnRpYWxzIH0pID0+IHtcbiAgcmV0dXJuIHByb21pc2VkUmVxdWVzdCh7XG4gICAgdXJsOiBQTEVST01BX0NIQVRfVVJMKGFjY291bnRJZCksXG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgY3JlZGVudGlhbHNcbiAgfSlcbn1cblxuY29uc3QgY2hhdE1lc3NhZ2VzID0gKHsgaWQsIGNyZWRlbnRpYWxzLCBtYXhJZCwgc2luY2VJZCwgbGltaXQgPSAyMCB9KSA9PiB7XG4gIGxldCB1cmwgPSBQTEVST01BX0NIQVRfTUVTU0FHRVNfVVJMKGlkKVxuICBjb25zdCBhcmdzID0gW1xuICAgIG1heElkICYmIGBtYXhfaWQ9JHttYXhJZH1gLFxuICAgIHNpbmNlSWQgJiYgYHNpbmNlX2lkPSR7c2luY2VJZH1gLFxuICAgIGxpbWl0ICYmIGBsaW1pdD0ke2xpbWl0fWBcbiAgXS5maWx0ZXIoXyA9PiBfKS5qb2luKCcmJylcblxuICB1cmwgPSB1cmwgKyAoYXJncyA/ICc/JyArIGFyZ3MgOiAnJylcblxuICByZXR1cm4gcHJvbWlzZWRSZXF1ZXN0KHtcbiAgICB1cmwsXG4gICAgbWV0aG9kOiAnR0VUJyxcbiAgICBjcmVkZW50aWFsc1xuICB9KVxufVxuXG5jb25zdCBzZW5kQ2hhdE1lc3NhZ2UgPSAoeyBpZCwgY29udGVudCwgbWVkaWFJZCA9IG51bGwsIGlkZW1wb3RlbmN5S2V5LCBjcmVkZW50aWFscyB9KSA9PiB7XG4gIGNvbnN0IHBheWxvYWQgPSB7XG4gICAgY29udGVudFxuICB9XG5cbiAgaWYgKG1lZGlhSWQpIHtcbiAgICBwYXlsb2FkLm1lZGlhX2lkID0gbWVkaWFJZFxuICB9XG5cbiAgY29uc3QgaGVhZGVycyA9IHt9XG5cbiAgaWYgKGlkZW1wb3RlbmN5S2V5KSB7XG4gICAgaGVhZGVyc1snaWRlbXBvdGVuY3kta2V5J10gPSBpZGVtcG90ZW5jeUtleVxuICB9XG5cbiAgcmV0dXJuIHByb21pc2VkUmVxdWVzdCh7XG4gICAgdXJsOiBQTEVST01BX0NIQVRfTUVTU0FHRVNfVVJMKGlkKSxcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBwYXlsb2FkLFxuICAgIGNyZWRlbnRpYWxzLFxuICAgIGhlYWRlcnNcbiAgfSlcbn1cblxuY29uc3QgcmVhZENoYXQgPSAoeyBpZCwgbGFzdFJlYWRJZCwgY3JlZGVudGlhbHMgfSkgPT4ge1xuICByZXR1cm4gcHJvbWlzZWRSZXF1ZXN0KHtcbiAgICB1cmw6IFBMRVJPTUFfQ0hBVF9SRUFEX1VSTChpZCksXG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgcGF5bG9hZDoge1xuICAgICAgbGFzdF9yZWFkX2lkOiBsYXN0UmVhZElkXG4gICAgfSxcbiAgICBjcmVkZW50aWFsc1xuICB9KVxufVxuXG5jb25zdCBkZWxldGVDaGF0TWVzc2FnZSA9ICh7IGNoYXRJZCwgbWVzc2FnZUlkLCBjcmVkZW50aWFscyB9KSA9PiB7XG4gIHJldHVybiBwcm9taXNlZFJlcXVlc3Qoe1xuICAgIHVybDogUExFUk9NQV9ERUxFVEVfQ0hBVF9NRVNTQUdFX1VSTChjaGF0SWQsIG1lc3NhZ2VJZCksXG4gICAgbWV0aG9kOiAnREVMRVRFJyxcbiAgICBjcmVkZW50aWFsc1xuICB9KVxufVxuXG5jb25zdCBzZXRSZXBvcnRTdGF0ZSA9ICh7IGlkLCBzdGF0ZSwgY3JlZGVudGlhbHMgfSkgPT4ge1xuICAvLyBUT0RPOiBDYW4ndCB1c2UgcHJvbWlzZWRSZXF1ZXN0IGJlY2F1c2Ugb24gT0sgdGhpcyBkb2VzIG5vdCByZXR1cm4ganNvblxuICAvLyBTZWUgaHR0cHM6Ly9naXQucGxlcm9tYS5zb2NpYWwvcGxlcm9tYS9wbGVyb21hLWZlLy0vbWVyZ2VfcmVxdWVzdHMvMTMyMlxuICByZXR1cm4gZmV0Y2goUExFUk9NQV9BRE1JTl9SRVBPUlRTLCB7XG4gICAgaGVhZGVyczoge1xuICAgICAgLi4uYXV0aEhlYWRlcnMoY3JlZGVudGlhbHMpLFxuICAgICAgQWNjZXB0OiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nXG4gICAgfSxcbiAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgcmVwb3J0czogW3tcbiAgICAgICAgaWQsXG4gICAgICAgIHN0YXRlXG4gICAgICB9XVxuICAgIH0pXG4gIH0pXG4gICAgLnRoZW4oZGF0YSA9PiB7XG4gICAgICBpZiAoZGF0YS5zdGF0dXMgPj0gNTAwKSB7XG4gICAgICAgIHRocm93IEVycm9yKGRhdGEuc3RhdHVzVGV4dClcbiAgICAgIH0gZWxzZSBpZiAoZGF0YS5zdGF0dXMgPj0gNDAwKSB7XG4gICAgICAgIHJldHVybiBkYXRhLmpzb24oKVxuICAgICAgfVxuICAgICAgcmV0dXJuIGRhdGFcbiAgICB9KVxuICAgIC50aGVuKGRhdGEgPT4ge1xuICAgICAgaWYgKGRhdGEuZXJyb3JzKSB7XG4gICAgICAgIHRocm93IEVycm9yKGRhdGEuZXJyb3JzWzBdLm1lc3NhZ2UpXG4gICAgICB9XG4gICAgfSlcbn1cblxuLy8gQURNSU4gU1RVRkYgLy8gRVhQRVJJTUVOVEFMXG5jb25zdCBmZXRjaEluc3RhbmNlREJDb25maWcgPSAoeyBjcmVkZW50aWFscyB9KSA9PiB7XG4gIHJldHVybiBmZXRjaChQTEVST01BX0FETUlOX0NPTkZJR19VUkwsIHtcbiAgICBoZWFkZXJzOiBhdXRoSGVhZGVycyhjcmVkZW50aWFscylcbiAgfSlcbiAgICAudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgIGlmIChyZXNwb25zZS5vaykge1xuICAgICAgICByZXR1cm4gcmVzcG9uc2UuanNvbigpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGVycm9yOiByZXNwb25zZVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSlcbn1cblxuY29uc3QgZmV0Y2hJbnN0YW5jZUNvbmZpZ0Rlc2NyaXB0aW9ucyA9ICh7IGNyZWRlbnRpYWxzIH0pID0+IHtcbiAgcmV0dXJuIGZldGNoKFBMRVJPTUFfQURNSU5fREVTQ1JJUFRJT05TX1VSTCwge1xuICAgIGhlYWRlcnM6IGF1dGhIZWFkZXJzKGNyZWRlbnRpYWxzKVxuICB9KVxuICAgIC50aGVuKChyZXNwb25zZSkgPT4ge1xuICAgICAgaWYgKHJlc3BvbnNlLm9rKSB7XG4gICAgICAgIHJldHVybiByZXNwb25zZS5qc29uKClcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgZXJyb3I6IHJlc3BvbnNlXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KVxufVxuXG5jb25zdCBmZXRjaEF2YWlsYWJsZUZyb250ZW5kcyA9ICh7IGNyZWRlbnRpYWxzIH0pID0+IHtcbiAgcmV0dXJuIGZldGNoKFBMRVJPTUFfQURNSU5fRlJPTlRFTkRTX1VSTCwge1xuICAgIGhlYWRlcnM6IGF1dGhIZWFkZXJzKGNyZWRlbnRpYWxzKVxuICB9KVxuICAgIC50aGVuKChyZXNwb25zZSkgPT4ge1xuICAgICAgaWYgKHJlc3BvbnNlLm9rKSB7XG4gICAgICAgIHJldHVybiByZXNwb25zZS5qc29uKClcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgZXJyb3I6IHJlc3BvbnNlXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KVxufVxuXG5jb25zdCBwdXNoSW5zdGFuY2VEQkNvbmZpZyA9ICh7IGNyZWRlbnRpYWxzLCBwYXlsb2FkIH0pID0+IHtcbiAgcmV0dXJuIGZldGNoKFBMRVJPTUFfQURNSU5fQ09ORklHX1VSTCwge1xuICAgIGhlYWRlcnM6IHtcbiAgICAgIEFjY2VwdDogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgIC4uLmF1dGhIZWFkZXJzKGNyZWRlbnRpYWxzKVxuICAgIH0sXG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZClcbiAgfSlcbiAgICAudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgIGlmIChyZXNwb25zZS5vaykge1xuICAgICAgICByZXR1cm4gcmVzcG9uc2UuanNvbigpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGVycm9yOiByZXNwb25zZVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSlcbn1cblxuY29uc3QgaW5zdGFsbEZyb250ZW5kID0gKHsgY3JlZGVudGlhbHMsIHBheWxvYWQgfSkgPT4ge1xuICByZXR1cm4gZmV0Y2goUExFUk9NQV9BRE1JTl9GUk9OVEVORFNfSU5TVEFMTF9VUkwsIHtcbiAgICBoZWFkZXJzOiB7XG4gICAgICBBY2NlcHQ6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICAuLi5hdXRoSGVhZGVycyhjcmVkZW50aWFscylcbiAgICB9LFxuICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHBheWxvYWQpXG4gIH0pXG4gICAgLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICBpZiAocmVzcG9uc2Uub2spIHtcbiAgICAgICAgcmV0dXJuIHJlc3BvbnNlLmpzb24oKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBlcnJvcjogcmVzcG9uc2VcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pXG59XG5cbmNvbnN0IGFwaVNlcnZpY2UgPSB7XG4gIHZlcmlmeUNyZWRlbnRpYWxzLFxuICBmZXRjaFRpbWVsaW5lLFxuICBmZXRjaFBpbm5lZFN0YXR1c2VzLFxuICBmZXRjaENvbnZlcnNhdGlvbixcbiAgZmV0Y2hTdGF0dXMsXG4gIGZldGNoU3RhdHVzU291cmNlLFxuICBmZXRjaFN0YXR1c0hpc3RvcnksXG4gIGZldGNoRnJpZW5kcyxcbiAgZXhwb3J0RnJpZW5kcyxcbiAgZmV0Y2hGb2xsb3dlcnMsXG4gIGZvbGxvd1VzZXIsXG4gIHVuZm9sbG93VXNlcixcbiAgcGluT3duU3RhdHVzLFxuICB1bnBpbk93blN0YXR1cyxcbiAgbXV0ZUNvbnZlcnNhdGlvbixcbiAgdW5tdXRlQ29udmVyc2F0aW9uLFxuICBibG9ja1VzZXIsXG4gIHVuYmxvY2tVc2VyLFxuICByZW1vdmVVc2VyRnJvbUZvbGxvd2VycyxcbiAgZWRpdFVzZXJOb3RlLFxuICBmZXRjaFVzZXIsXG4gIGZldGNoVXNlckJ5TmFtZSxcbiAgZmV0Y2hVc2VyUmVsYXRpb25zaGlwLFxuICBmYXZvcml0ZSxcbiAgdW5mYXZvcml0ZSxcbiAgcmV0d2VldCxcbiAgdW5yZXR3ZWV0LFxuICBib29rbWFya1N0YXR1cyxcbiAgdW5ib29rbWFya1N0YXR1cyxcbiAgcG9zdFN0YXR1cyxcbiAgZWRpdFN0YXR1cyxcbiAgZGVsZXRlU3RhdHVzLFxuICB1cGxvYWRNZWRpYSxcbiAgc2V0TWVkaWFEZXNjcmlwdGlvbixcbiAgZmV0Y2hNdXRlcyxcbiAgbXV0ZVVzZXIsXG4gIHVubXV0ZVVzZXIsXG4gIHN1YnNjcmliZVVzZXIsXG4gIHVuc3Vic2NyaWJlVXNlcixcbiAgZmV0Y2hCbG9ja3MsXG4gIGZldGNoT0F1dGhUb2tlbnMsXG4gIHJldm9rZU9BdXRoVG9rZW4sXG4gIHRhZ1VzZXIsXG4gIHVudGFnVXNlcixcbiAgZGVsZXRlVXNlcixcbiAgYWRkUmlnaHQsXG4gIGRlbGV0ZVJpZ2h0LFxuICBhY3RpdmF0ZVVzZXIsXG4gIGRlYWN0aXZhdGVVc2VyLFxuICByZWdpc3RlcixcbiAgZ2V0Q2FwdGNoYSxcbiAgdXBkYXRlUHJvZmlsZUltYWdlcyxcbiAgdXBkYXRlUHJvZmlsZSxcbiAgaW1wb3J0TXV0ZXMsXG4gIGltcG9ydEJsb2NrcyxcbiAgaW1wb3J0Rm9sbG93cyxcbiAgZGVsZXRlQWNjb3VudCxcbiAgY2hhbmdlRW1haWwsXG4gIG1vdmVBY2NvdW50LFxuICBhZGRBbGlhcyxcbiAgZGVsZXRlQWxpYXMsXG4gIGxpc3RBbGlhc2VzLFxuICBjaGFuZ2VQYXNzd29yZCxcbiAgc2V0dGluZ3NNRkEsXG4gIG1mYURpc2FibGVPVFAsXG4gIGdlbmVyYXRlTWZhQmFja3VwQ29kZXMsXG4gIG1mYVNldHVwT1RQLFxuICBtZmFDb25maXJtT1RQLFxuICBhZGRCYWNrdXAsXG4gIGxpc3RCYWNrdXBzLFxuICBmZXRjaEZvbGxvd1JlcXVlc3RzLFxuICBmZXRjaExpc3RzLFxuICBjcmVhdGVMaXN0LFxuICBnZXRMaXN0LFxuICB1cGRhdGVMaXN0LFxuICBnZXRMaXN0QWNjb3VudHMsXG4gIGFkZEFjY291bnRzVG9MaXN0LFxuICByZW1vdmVBY2NvdW50c0Zyb21MaXN0LFxuICBkZWxldGVMaXN0LFxuICBhcHByb3ZlVXNlcixcbiAgZGVueVVzZXIsXG4gIHN1Z2dlc3Rpb25zLFxuICBtYXJrTm90aWZpY2F0aW9uc0FzU2VlbixcbiAgZGlzbWlzc05vdGlmaWNhdGlvbixcbiAgdm90ZSxcbiAgZmV0Y2hQb2xsLFxuICBmZXRjaEZhdm9yaXRlZEJ5VXNlcnMsXG4gIGZldGNoUmVibG9nZ2VkQnlVc2VycyxcbiAgZmV0Y2hFbW9qaVJlYWN0aW9ucyxcbiAgcmVhY3RXaXRoRW1vamksXG4gIHVucmVhY3RXaXRoRW1vamksXG4gIHJlcG9ydFVzZXIsXG4gIHVwZGF0ZU5vdGlmaWNhdGlvblNldHRpbmdzLFxuICBzZWFyY2gyLFxuICBzZWFyY2hVc2VycyxcbiAgZmV0Y2hLbm93bkRvbWFpbnMsXG4gIGZldGNoRG9tYWluTXV0ZXMsXG4gIG11dGVEb21haW4sXG4gIHVubXV0ZURvbWFpbixcbiAgY2hhdHMsXG4gIGdldE9yQ3JlYXRlQ2hhdCxcbiAgY2hhdE1lc3NhZ2VzLFxuICBzZW5kQ2hhdE1lc3NhZ2UsXG4gIHJlYWRDaGF0LFxuICBkZWxldGVDaGF0TWVzc2FnZSxcbiAgc2V0UmVwb3J0U3RhdGUsXG4gIGZldGNoVXNlckluTGlzdHMsXG4gIGZldGNoQW5ub3VuY2VtZW50cyxcbiAgZGlzbWlzc0Fubm91bmNlbWVudCxcbiAgcG9zdEFubm91bmNlbWVudCxcbiAgZWRpdEFubm91bmNlbWVudCxcbiAgZGVsZXRlQW5ub3VuY2VtZW50LFxuICBhZG1pbkZldGNoQW5ub3VuY2VtZW50cyxcbiAgZmV0Y2hJbnN0YW5jZURCQ29uZmlnLFxuICBmZXRjaEluc3RhbmNlQ29uZmlnRGVzY3JpcHRpb25zLFxuICBmZXRjaEF2YWlsYWJsZUZyb250ZW5kcyxcbiAgcHVzaEluc3RhbmNlREJDb25maWcsXG4gIGluc3RhbGxGcm9udGVuZFxufVxuXG5leHBvcnQgZGVmYXVsdCBhcGlTZXJ2aWNlXG4iXSwibmFtZXMiOlsicGFyc2VTdGF0dXMiLCJwYXJzZVNvdXJjZSIsInBhcnNlVXNlciIsInBhcnNlTm90aWZpY2F0aW9uIiwicGFyc2VBdHRhY2htZW50IiwicGFyc2VDaGF0IiwicGFyc2VMaW5rSGVhZGVyUGFnaW5hdGlvbiIsIlJlZ2lzdHJhdGlvbkVycm9yIiwiU3RhdHVzQ29kZUVycm9yIiwiTVVURVNfSU1QT1JUX1VSTCIsIkJMT0NLU19JTVBPUlRfVVJMIiwiRk9MTE9XX0lNUE9SVF9VUkwiLCJERUxFVEVfQUNDT1VOVF9VUkwiLCJDSEFOR0VfRU1BSUxfVVJMIiwiQ0hBTkdFX1BBU1NXT1JEX1VSTCIsIk1PVkVfQUNDT1VOVF9VUkwiLCJBTElBU0VTX1VSTCIsIlRBR19VU0VSX1VSTCIsIlBFUk1JU1NJT05fR1JPVVBfVVJMIiwic2NyZWVuTmFtZSIsInJpZ2h0IiwiY29uY2F0IiwiQUNUSVZBVEVfVVNFUl9VUkwiLCJERUFDVElWQVRFX1VTRVJfVVJMIiwiQURNSU5fVVNFUlNfVVJMIiwiU1VHR0VTVElPTlNfVVJMIiwiTk9USUZJQ0FUSU9OX1NFVFRJTkdTX1VSTCIsIk5PVElGSUNBVElPTl9SRUFEX1VSTCIsIk1GQV9TRVRUSU5HU19VUkwiLCJNRkFfQkFDS1VQX0NPREVTX1VSTCIsIk1GQV9TRVRVUF9PVFBfVVJMIiwiTUZBX0NPTkZJUk1fT1RQX1VSTCIsIk1GQV9ESVNBQkxFX09UUF9VUkwiLCJNQVNUT0RPTl9MT0dJTl9VUkwiLCJNQVNUT0RPTl9SRUdJU1RSQVRJT05fVVJMIiwiTUFTVE9ET05fVVNFUl9GQVZPUklURVNfVElNRUxJTkVfVVJMIiwiTUFTVE9ET05fVVNFUl9OT1RJRklDQVRJT05TX1VSTCIsIk1BU1RPRE9OX0RJU01JU1NfTk9USUZJQ0FUSU9OX1VSTCIsImlkIiwiTUFTVE9ET05fRkFWT1JJVEVfVVJMIiwiTUFTVE9ET05fVU5GQVZPUklURV9VUkwiLCJNQVNUT0RPTl9SRVRXRUVUX1VSTCIsIk1BU1RPRE9OX1VOUkVUV0VFVF9VUkwiLCJNQVNUT0RPTl9ERUxFVEVfVVJMIiwiTUFTVE9ET05fRk9MTE9XX1VSTCIsIk1BU1RPRE9OX1VORk9MTE9XX1VSTCIsIk1BU1RPRE9OX0ZPTExPV0lOR19VUkwiLCJNQVNUT0RPTl9GT0xMT1dFUlNfVVJMIiwiTUFTVE9ET05fRk9MTE9XX1JFUVVFU1RTX1VSTCIsIk1BU1RPRE9OX0FQUFJPVkVfVVNFUl9VUkwiLCJNQVNUT0RPTl9ERU5ZX1VTRVJfVVJMIiwiTUFTVE9ET05fRElSRUNUX01FU1NBR0VTX1RJTUVMSU5FX1VSTCIsIk1BU1RPRE9OX1BVQkxJQ19USU1FTElORSIsIk1BU1RPRE9OX1VTRVJfSE9NRV9USU1FTElORV9VUkwiLCJNQVNUT0RPTl9TVEFUVVNfVVJMIiwiTUFTVE9ET05fU1RBVFVTX0NPTlRFWFRfVVJMIiwiTUFTVE9ET05fU1RBVFVTX1NPVVJDRV9VUkwiLCJNQVNUT0RPTl9TVEFUVVNfSElTVE9SWV9VUkwiLCJNQVNUT0RPTl9VU0VSX1VSTCIsIk1BU1RPRE9OX1VTRVJfTE9PS1VQX1VSTCIsIk1BU1RPRE9OX1VTRVJfUkVMQVRJT05TSElQU19VUkwiLCJNQVNUT0RPTl9VU0VSX1RJTUVMSU5FX1VSTCIsIk1BU1RPRE9OX1VTRVJfSU5fTElTVFMiLCJNQVNUT0RPTl9MSVNUX1VSTCIsIk1BU1RPRE9OX0xJU1RfVElNRUxJTkVfVVJMIiwiTUFTVE9ET05fTElTVF9BQ0NPVU5UU19VUkwiLCJNQVNUT0RPTl9UQUdfVElNRUxJTkVfVVJMIiwidGFnIiwiTUFTVE9ET05fQk9PS01BUktfVElNRUxJTkVfVVJMIiwiTUFTVE9ET05fVVNFUl9CTE9DS1NfVVJMIiwiTUFTVE9ET05fVVNFUl9NVVRFU19VUkwiLCJNQVNUT0RPTl9CTE9DS19VU0VSX1VSTCIsIk1BU1RPRE9OX1VOQkxPQ0tfVVNFUl9VUkwiLCJNQVNUT0RPTl9NVVRFX1VTRVJfVVJMIiwiTUFTVE9ET05fVU5NVVRFX1VTRVJfVVJMIiwiTUFTVE9ET05fUkVNT1ZFX1VTRVJfRlJPTV9GT0xMT1dFUlMiLCJNQVNUT0RPTl9TVUJTQ1JJQkVfVVNFUiIsIk1BU1RPRE9OX1VOU1VCU0NSSUJFX1VTRVIiLCJNQVNUT0RPTl9VU0VSX05PVEVfVVJMIiwiTUFTVE9ET05fQk9PS01BUktfU1RBVFVTX1VSTCIsIk1BU1RPRE9OX1VOQk9PS01BUktfU1RBVFVTX1VSTCIsIk1BU1RPRE9OX1BPU1RfU1RBVFVTX1VSTCIsIk1BU1RPRE9OX01FRElBX1VQTE9BRF9VUkwiLCJNQVNUT0RPTl9WT1RFX1VSTCIsIk1BU1RPRE9OX1BPTExfVVJMIiwiTUFTVE9ET05fU1RBVFVTX0ZBVk9SSVRFREJZX1VSTCIsIk1BU1RPRE9OX1NUQVRVU19SRUJMT0dHRURCWV9VUkwiLCJNQVNUT0RPTl9QUk9GSUxFX1VQREFURV9VUkwiLCJNQVNUT0RPTl9SRVBPUlRfVVNFUl9VUkwiLCJNQVNUT0RPTl9QSU5fT1dOX1NUQVRVUyIsIk1BU1RPRE9OX1VOUElOX09XTl9TVEFUVVMiLCJNQVNUT0RPTl9NVVRFX0NPTlZFUlNBVElPTiIsIk1BU1RPRE9OX1VOTVVURV9DT05WRVJTQVRJT04iLCJNQVNUT0RPTl9TRUFSQ0hfMiIsIk1BU1RPRE9OX1VTRVJfU0VBUkNIX1VSTCIsIk1BU1RPRE9OX0RPTUFJTl9CTE9DS1NfVVJMIiwiTUFTVE9ET05fTElTVFNfVVJMIiwiTUFTVE9ET05fU1RSRUFNSU5HIiwiTUFTVE9ET05fS05PV05fRE9NQUlOX0xJU1RfVVJMIiwiTUFTVE9ET05fQU5OT1VOQ0VNRU5UU19VUkwiLCJNQVNUT0RPTl9BTk5PVU5DRU1FTlRTX0RJU01JU1NfVVJMIiwiUExFUk9NQV9FTU9KSV9SRUFDVElPTlNfVVJMIiwiUExFUk9NQV9FTU9KSV9SRUFDVF9VUkwiLCJlbW9qaSIsIlBMRVJPTUFfRU1PSklfVU5SRUFDVF9VUkwiLCJQTEVST01BX0NIQVRTX1VSTCIsIlBMRVJPTUFfQ0hBVF9VUkwiLCJQTEVST01BX0NIQVRfTUVTU0FHRVNfVVJMIiwiUExFUk9NQV9DSEFUX1JFQURfVVJMIiwiUExFUk9NQV9ERUxFVEVfQ0hBVF9NRVNTQUdFX1VSTCIsImNoYXRJZCIsIm1lc3NhZ2VJZCIsIlBMRVJPTUFfQURNSU5fUkVQT1JUUyIsIlBMRVJPTUFfQkFDS1VQX1VSTCIsIlBMRVJPTUFfQU5OT1VOQ0VNRU5UU19VUkwiLCJQTEVST01BX1BPU1RfQU5OT1VOQ0VNRU5UX1VSTCIsIlBMRVJPTUFfRURJVF9BTk5PVU5DRU1FTlRfVVJMIiwiUExFUk9NQV9ERUxFVEVfQU5OT1VOQ0VNRU5UX1VSTCIsIlBMRVJPTUFfQURNSU5fQ09ORklHX1VSTCIsIlBMRVJPTUFfQURNSU5fREVTQ1JJUFRJT05TX1VSTCIsIlBMRVJPTUFfQURNSU5fRlJPTlRFTkRTX1VSTCIsIlBMRVJPTUFfQURNSU5fRlJPTlRFTkRTX0lOU1RBTExfVVJMIiwib2xkZmV0Y2giLCJ3aW5kb3ciLCJmZXRjaCIsInVybCIsIm9wdGlvbnMiLCJiYXNlVXJsIiwiZnVsbFVybCIsImNyZWRlbnRpYWxzIiwicHJvbWlzZWRSZXF1ZXN0IiwiX3JlZiIsIm1ldGhvZCIsInBhcmFtcyIsInBheWxvYWQiLCJfcmVmJGhlYWRlcnMiLCJoZWFkZXJzIiwiX29iamVjdFNwcmVhZCIsIkFjY2VwdCIsIk9iamVjdCIsImVudHJpZXMiLCJtYXAiLCJfcmVmMiIsIl9yZWYzIiwiX3NsaWNlZFRvQXJyYXkiLCJrZXkiLCJ2YWx1ZSIsImVuY29kZVVSSUNvbXBvbmVudCIsImpvaW4iLCJib2R5IiwiSlNPTiIsInN0cmluZ2lmeSIsImF1dGhIZWFkZXJzIiwidGhlbiIsInJlc3BvbnNlIiwiUHJvbWlzZSIsInJlc29sdmUiLCJyZWplY3QiLCJqc29uIiwib2siLCJzdGF0dXMiLCJlcnJvciIsInVwZGF0ZU5vdGlmaWNhdGlvblNldHRpbmdzIiwiX3JlZjQiLCJzZXR0aW5ncyIsImZvcm0iLCJGb3JtRGF0YSIsIl9lYWNoIiwiYXBwZW5kIiwiVVJMU2VhcmNoUGFyYW1zIiwiZGF0YSIsInVwZGF0ZVByb2ZpbGVJbWFnZXMiLCJfcmVmNSIsIl9yZWY1JGF2YXRhciIsImF2YXRhciIsIl9yZWY1JGF2YXRhck5hbWUiLCJhdmF0YXJOYW1lIiwiX3JlZjUkYmFubmVyIiwiYmFubmVyIiwiX3JlZjUkYmFja2dyb3VuZCIsImJhY2tncm91bmQiLCJFcnJvciIsInVwZGF0ZVByb2ZpbGUiLCJfcmVmNiIsInJlZ2lzdGVyIiwiX3JlZjciLCJuaWNrbmFtZSIsInJlc3QiLCJfb2JqZWN0V2l0aG91dFByb3BlcnRpZXMiLCJfZXhjbHVkZWQiLCJsb2NhbGUiLCJhZ3JlZW1lbnQiLCJnZXRDYXB0Y2hhIiwicmVzcCIsImFjY2Vzc1Rva2VuIiwiQXV0aG9yaXphdGlvbiIsImZvbGxvd1VzZXIiLCJfcmVmOCIsIl9leGNsdWRlZDIiLCJyZWJsb2dzIiwidW5kZWZpbmVkIiwidW5mb2xsb3dVc2VyIiwiX3JlZjkiLCJmZXRjaFVzZXJJbkxpc3RzIiwiX3JlZjEwIiwicGluT3duU3RhdHVzIiwiX3JlZjExIiwidW5waW5Pd25TdGF0dXMiLCJfcmVmMTIiLCJtdXRlQ29udmVyc2F0aW9uIiwiX3JlZjEzIiwidW5tdXRlQ29udmVyc2F0aW9uIiwiX3JlZjE0IiwiYmxvY2tVc2VyIiwiX3JlZjE1IiwidW5ibG9ja1VzZXIiLCJfcmVmMTYiLCJyZW1vdmVVc2VyRnJvbUZvbGxvd2VycyIsIl9yZWYxNyIsImVkaXRVc2VyTm90ZSIsIl9yZWYxOCIsImNvbW1lbnQiLCJhcHByb3ZlVXNlciIsIl9yZWYxOSIsImRlbnlVc2VyIiwiX3JlZjIwIiwiZmV0Y2hVc2VyIiwiX3JlZjIxIiwiZmV0Y2hVc2VyQnlOYW1lIiwiX3JlZjIyIiwibmFtZSIsImFjY3QiLCJzdGF0dXNDb2RlIiwiZmV0Y2hVc2VyUmVsYXRpb25zaGlwIiwiX3JlZjIzIiwiZmV0Y2hGcmllbmRzIiwiX3JlZjI0IiwibWF4SWQiLCJzaW5jZUlkIiwiX3JlZjI0JGxpbWl0IiwibGltaXQiLCJhcmdzIiwiZmlsdGVyIiwiXyIsImV4cG9ydEZyaWVuZHMiLCJfcmVmMjUiLCJfcmVmMjYiLCJfYXN5bmNUb0dlbmVyYXRvciIsIl9yZWdlbmVyYXRvclJ1bnRpbWUiLCJtYXJrIiwiX2NhbGxlZSIsImZyaWVuZHMiLCJtb3JlIiwidXNlcnMiLCJ3cmFwIiwiX2NhbGxlZSQiLCJfY29udGV4dCIsInByZXYiLCJuZXh0IiwibGVuZ3RoIiwiX2xhc3QiLCJzZW50IiwiX2NvbmNhdCIsInQwIiwic3RvcCIsIl94IiwiX3gyIiwiYXBwbHkiLCJhcmd1bWVudHMiLCJmZXRjaEZvbGxvd2VycyIsIl9yZWYyNyIsIl9yZWYyNyRsaW1pdCIsImZldGNoRm9sbG93UmVxdWVzdHMiLCJfcmVmMjgiLCJmZXRjaExpc3RzIiwiX3JlZjI5IiwiY3JlYXRlTGlzdCIsIl9yZWYzMCIsInRpdGxlIiwiZ2V0TGlzdCIsIl9yZWYzMSIsImxpc3RJZCIsInVwZGF0ZUxpc3QiLCJfcmVmMzIiLCJnZXRMaXN0QWNjb3VudHMiLCJfcmVmMzMiLCJfcmVmMzQiLCJhZGRBY2NvdW50c1RvTGlzdCIsIl9yZWYzNSIsImFjY291bnRJZHMiLCJhY2NvdW50X2lkcyIsInJlbW92ZUFjY291bnRzRnJvbUxpc3QiLCJfcmVmMzYiLCJkZWxldGVMaXN0IiwiX3JlZjM3IiwiZmV0Y2hDb252ZXJzYXRpb24iLCJfcmVmMzgiLCJ1cmxDb250ZXh0IiwiX3JlZjM5IiwiYW5jZXN0b3JzIiwiZGVzY2VuZGFudHMiLCJmZXRjaFN0YXR1cyIsIl9yZWY0MCIsImZldGNoU3RhdHVzU291cmNlIiwiX3JlZjQxIiwiZmV0Y2hTdGF0dXNIaXN0b3J5IiwiX3JlZjQyIiwicmV2ZXJzZSIsIml0ZW0iLCJvcmlnaW5hbFN0YXR1cyIsInRhZ1VzZXIiLCJfcmVmNDMiLCJ1c2VyIiwic2NyZWVuX25hbWUiLCJuaWNrbmFtZXMiLCJ0YWdzIiwidW50YWdVc2VyIiwiX3JlZjQ0IiwiYWRkUmlnaHQiLCJfcmVmNDUiLCJkZWxldGVSaWdodCIsIl9yZWY0NiIsImFjdGl2YXRlVXNlciIsIl9yZWY0NyIsIl9nZXQiLCJkZWFjdGl2YXRlVXNlciIsIl9yZWY0OCIsImRlbGV0ZVVzZXIiLCJfcmVmNDkiLCJmZXRjaFRpbWVsaW5lIiwiX3JlZjUwIiwidGltZWxpbmUiLCJfcmVmNTAkc2luY2UiLCJzaW5jZSIsIl9yZWY1MCR1bnRpbCIsInVudGlsIiwiX3JlZjUwJHVzZXJJZCIsInVzZXJJZCIsIl9yZWY1MCRsaXN0SWQiLCJfcmVmNTAkdGFnIiwiX3JlZjUwJHdpdGhNdXRlZCIsIndpdGhNdXRlZCIsIl9yZWY1MCRyZXBseVZpc2liaWxpdCIsInJlcGx5VmlzaWJpbGl0eSIsIl9yZWY1MCRpbmNsdWRlVHlwZXMiLCJpbmNsdWRlVHlwZXMiLCJ0aW1lbGluZVVybHMiLCJkbXMiLCJub3RpZmljYXRpb25zIiwicHVibGljQW5kRXh0ZXJuYWwiLCJtZWRpYSIsImxpc3QiLCJmYXZvcml0ZXMiLCJib29rbWFya3MiLCJpc05vdGlmaWNhdGlvbnMiLCJwdXNoIiwiZm9yRWFjaCIsInR5cGUiLCJxdWVyeVN0cmluZyIsIl9tYXAiLCJwYXJhbSIsIl9yZWY1MSIsIl9jYWxsZWUyIiwic3VjY2VzcyIsInBhZ2luYXRpb24iLCJfY2FsbGVlMiQiLCJfY29udGV4dDIiLCJlcnJvcnMiLCJnZXQiLCJmbGFrZUlkIiwiYWJydXB0Iiwic3RhdHVzVGV4dCIsIl94MyIsImZldGNoUGlubmVkU3RhdHVzZXMiLCJfcmVmNTIiLCJ2ZXJpZnlDcmVkZW50aWFscyIsImZhdm9yaXRlIiwiX3JlZjUzIiwidW5mYXZvcml0ZSIsIl9yZWY1NCIsInJldHdlZXQiLCJfcmVmNTUiLCJ1bnJldHdlZXQiLCJfcmVmNTYiLCJib29rbWFya1N0YXR1cyIsIl9yZWY1NyIsInVuYm9va21hcmtTdGF0dXMiLCJfcmVmNTgiLCJwb3N0U3RhdHVzIiwiX3JlZjU5Iiwic3BvaWxlclRleHQiLCJ2aXNpYmlsaXR5Iiwic2Vuc2l0aXZlIiwicG9sbCIsIl9yZWY1OSRtZWRpYUlkcyIsIm1lZGlhSWRzIiwiaW5SZXBseVRvU3RhdHVzSWQiLCJxdW90ZUlkIiwiY29udGVudFR5cGUiLCJwcmV2aWV3IiwiaWRlbXBvdGVuY3lLZXkiLCJwb2xsT3B0aW9ucyIsInZhbCIsInNvbWUiLCJvcHRpb24iLCJub3JtYWxpemVkUG9sbCIsImV4cGlyZXNfaW4iLCJwYXJzZUludCIsImV4cGlyZXNJbiIsIm11bHRpcGxlIiwia2V5cyIsInBvc3RIZWFkZXJzIiwiZWRpdFN0YXR1cyIsIl9yZWY2MCIsIl9yZWY2MCRtZWRpYUlkcyIsInB1dEhlYWRlcnMiLCJkZWxldGVTdGF0dXMiLCJfcmVmNjEiLCJ1cGxvYWRNZWRpYSIsIl9yZWY2MiIsImZvcm1EYXRhIiwic2V0TWVkaWFEZXNjcmlwdGlvbiIsIl9yZWY2MyIsImRlc2NyaXB0aW9uIiwiaW1wb3J0TXV0ZXMiLCJfcmVmNjQiLCJmaWxlIiwiaW1wb3J0QmxvY2tzIiwiX3JlZjY1IiwiaW1wb3J0Rm9sbG93cyIsIl9yZWY2NiIsImRlbGV0ZUFjY291bnQiLCJfcmVmNjciLCJwYXNzd29yZCIsImNoYW5nZUVtYWlsIiwiX3JlZjY4IiwiZW1haWwiLCJtb3ZlQWNjb3VudCIsIl9yZWY2OSIsInRhcmdldEFjY291bnQiLCJhZGRBbGlhcyIsIl9yZWY3MCIsImFsaWFzIiwiZGVsZXRlQWxpYXMiLCJfcmVmNzEiLCJsaXN0QWxpYXNlcyIsIl9yZWY3MiIsIl9jYWNoZUJvb3N0ZXIiLCJEYXRlIiwiZ2V0VGltZSIsImNoYW5nZVBhc3N3b3JkIiwiX3JlZjczIiwibmV3UGFzc3dvcmQiLCJuZXdQYXNzd29yZENvbmZpcm1hdGlvbiIsInNldHRpbmdzTUZBIiwiX3JlZjc0IiwibWZhRGlzYWJsZU9UUCIsIl9yZWY3NSIsIm1mYUNvbmZpcm1PVFAiLCJfcmVmNzYiLCJ0b2tlbiIsIm1mYVNldHVwT1RQIiwiX3JlZjc3IiwiZ2VuZXJhdGVNZmFCYWNrdXBDb2RlcyIsIl9yZWY3OCIsImZldGNoTXV0ZXMiLCJfcmVmNzkiLCJxdWVyeSIsIndpdGhfcmVsYXRpb25zaGlwcyIsInRvU3RyaW5nIiwibXV0ZVVzZXIiLCJfcmVmODAiLCJ1bm11dGVVc2VyIiwiX3JlZjgxIiwic3Vic2NyaWJlVXNlciIsIl9yZWY4MiIsInVuc3Vic2NyaWJlVXNlciIsIl9yZWY4MyIsImZldGNoQmxvY2tzIiwiX3JlZjg0IiwiYWRkQmFja3VwIiwiX3JlZjg1IiwibGlzdEJhY2t1cHMiLCJfcmVmODYiLCJmZXRjaE9BdXRoVG9rZW5zIiwiX3JlZjg3IiwicmV2b2tlT0F1dGhUb2tlbiIsIl9yZWY4OCIsInN1Z2dlc3Rpb25zIiwiX3JlZjg5IiwibWFya05vdGlmaWNhdGlvbnNBc1NlZW4iLCJfcmVmOTAiLCJfcmVmOTAkc2luZ2xlIiwic2luZ2xlIiwidm90ZSIsIl9yZWY5MSIsInBvbGxJZCIsImNob2ljZXMiLCJmZXRjaFBvbGwiLCJfcmVmOTIiLCJmZXRjaEZhdm9yaXRlZEJ5VXNlcnMiLCJfcmVmOTMiLCJmZXRjaFJlYmxvZ2dlZEJ5VXNlcnMiLCJfcmVmOTQiLCJmZXRjaEVtb2ppUmVhY3Rpb25zIiwiX3JlZjk1IiwicmVhY3Rpb25zIiwiciIsImFjY291bnRzIiwicmVhY3RXaXRoRW1vamkiLCJfcmVmOTYiLCJ1bnJlYWN0V2l0aEVtb2ppIiwiX3JlZjk3IiwicmVwb3J0VXNlciIsIl9yZWY5OCIsInN0YXR1c0lkcyIsImZvcndhcmQiLCJhY2NvdW50X2lkIiwic3RhdHVzX2lkcyIsInNlYXJjaFVzZXJzIiwiX3JlZjk5IiwicSIsInNlYXJjaDIiLCJfcmVmMTAwIiwib2Zmc2V0IiwiZm9sbG93aW5nIiwic2xpY2UiLCJ1Iiwic3RhdHVzZXMiLCJzIiwiZmV0Y2hLbm93bkRvbWFpbnMiLCJfcmVmMTAxIiwiZmV0Y2hEb21haW5NdXRlcyIsIl9yZWYxMDIiLCJtdXRlRG9tYWluIiwiX3JlZjEwMyIsImRvbWFpbiIsInVubXV0ZURvbWFpbiIsIl9yZWYxMDQiLCJkaXNtaXNzTm90aWZpY2F0aW9uIiwiX3JlZjEwNSIsImFkbWluRmV0Y2hBbm5vdW5jZW1lbnRzIiwiX3JlZjEwNiIsImZldGNoQW5ub3VuY2VtZW50cyIsIl9yZWYxMDciLCJkaXNtaXNzQW5ub3VuY2VtZW50IiwiX3JlZjEwOCIsImFubm91bmNlbWVudFRvUGF5bG9hZCIsIl9yZWYxMDkiLCJjb250ZW50Iiwic3RhcnRzQXQiLCJlbmRzQXQiLCJhbGxEYXkiLCJzdGFydHNfYXQiLCJ0b0lTT1N0cmluZyIsImVuZHNfYXQiLCJhbGxfZGF5IiwicG9zdEFubm91bmNlbWVudCIsIl9yZWYxMTAiLCJlZGl0QW5ub3VuY2VtZW50IiwiX3JlZjExMSIsImRlbGV0ZUFubm91bmNlbWVudCIsIl9yZWYxMTIiLCJnZXRNYXN0b2RvblNvY2tldFVSSSIsIl9yZWYxMTMiLCJzdHJlYW0iLCJfcmVmMTEzJGFyZ3MiLCJhY2Nlc3NfdG9rZW4iLCJyZWR1Y2UiLCJhY2MiLCJfcmVmMTE0IiwiX3JlZjExNSIsIk1BU1RPRE9OX1NUUkVBTUlOR19FVkVOVFMiLCJTZXQiLCJQTEVST01BX1NUUkVBTUlOR19FVkVOVFMiLCJQcm9jZXNzZWRXUyIsIl9yZWYxMTYiLCJfcmVmMTE2JHByZXByb2Nlc3NvciIsInByZXByb2Nlc3NvciIsImhhbmRsZU1hc3RvV1MiLCJfcmVmMTE2JGlkIiwiZXZlbnRUYXJnZXQiLCJFdmVudFRhcmdldCIsInNvY2tldCIsIldlYlNvY2tldCIsInByb3h5Iiwib3JpZ2luYWwiLCJldmVudE5hbWUiLCJwcm9jZXNzb3IiLCJhIiwiYWRkRXZlbnRMaXN0ZW5lciIsImV2ZW50RGF0YSIsImRpc3BhdGNoRXZlbnQiLCJDdXN0b21FdmVudCIsImRldGFpbCIsIndzRXZlbnQiLCJjb25zb2xlIiwiZGVidWciLCJjb2RlIiwiY2xvc2UiLCJnZXRTdGF0ZSIsInJlYWR5U3RhdGUiLCJwYXJzZWRFdmVudCIsInBhcnNlIiwiZXZlbnQiLCJoYXMiLCJub3RpZmljYXRpb24iLCJjaGF0VXBkYXRlIiwid2FybiIsIldTQ29ubmVjdGlvblN0YXR1cyIsImZyZWV6ZSIsIkpPSU5FRCIsIkNMT1NFRCIsIkVSUk9SIiwiRElTQUJMRUQiLCJTVEFSVElORyIsIlNUQVJUSU5HX0lOSVRJQUwiLCJjaGF0cyIsIl9yZWYxMTciLCJjIiwiZ2V0T3JDcmVhdGVDaGF0IiwiX3JlZjExOCIsImFjY291bnRJZCIsImNoYXRNZXNzYWdlcyIsIl9yZWYxMTkiLCJfcmVmMTE5JGxpbWl0Iiwic2VuZENoYXRNZXNzYWdlIiwiX3JlZjEyMCIsIl9yZWYxMjAkbWVkaWFJZCIsIm1lZGlhSWQiLCJtZWRpYV9pZCIsInJlYWRDaGF0IiwiX3JlZjEyMSIsImxhc3RSZWFkSWQiLCJsYXN0X3JlYWRfaWQiLCJkZWxldGVDaGF0TWVzc2FnZSIsIl9yZWYxMjIiLCJzZXRSZXBvcnRTdGF0ZSIsIl9yZWYxMjMiLCJzdGF0ZSIsInJlcG9ydHMiLCJtZXNzYWdlIiwiZmV0Y2hJbnN0YW5jZURCQ29uZmlnIiwiX3JlZjEyNCIsImZldGNoSW5zdGFuY2VDb25maWdEZXNjcmlwdGlvbnMiLCJfcmVmMTI1IiwiZmV0Y2hBdmFpbGFibGVGcm9udGVuZHMiLCJfcmVmMTI2IiwicHVzaEluc3RhbmNlREJDb25maWciLCJfcmVmMTI3IiwiaW5zdGFsbEZyb250ZW5kIiwiX3JlZjEyOCIsImFwaVNlcnZpY2UiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/services/api/api.service.js\n");
/***/ }),
/***/ "./src/services/attributes_helper/attributes_helper.service.js":
/*!*********************************************************************!*\
!*** ./src/services/attributes_helper/attributes_helper.service.js ***!
\*********************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"propsToNative\": () => (/* binding */ propsToNative)\n/* harmony export */ });\n/* harmony import */ var lodash_kebabCase__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/kebabCase */ \"./node_modules/lodash/kebabCase.js\");\n/* harmony import */ var lodash_kebabCase__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_kebabCase__WEBPACK_IMPORTED_MODULE_0__);\n\nvar propsToNative = function propsToNative(props) {\n return Object.keys(props).reduce(function (acc, cur) {\n acc[lodash_kebabCase__WEBPACK_IMPORTED_MODULE_0___default()(cur)] = props[cur];\n return acc;\n }, {});\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvYXR0cmlidXRlc19oZWxwZXIvYXR0cmlidXRlc19oZWxwZXIuc2VydmljZS5qcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7O0FBRUEsSUFBTUEsYUFBYSxHQUFHLFNBQWhCQSxhQUFhQSxDQUFHQyxLQUFLO0VBQUEsT0FBSUMsTUFBTSxDQUFDQyxJQUFJLENBQUNGLEtBQUssQ0FBQyxDQUFDRyxNQUFNLENBQUMsVUFBQ0MsR0FBRyxFQUFFQyxHQUFHLEVBQUs7SUFDckVELEdBQUcsQ0FBQ0UsdURBQUEsQ0FBVUQsR0FBRyxDQUFDLENBQUMsR0FBR0wsS0FBSyxDQUFDSyxHQUFHLENBQUM7SUFDaEMsT0FBT0QsR0FBRztFQUNaLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztBQUFBIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9zZXJ2aWNlcy9hdHRyaWJ1dGVzX2hlbHBlci9hdHRyaWJ1dGVzX2hlbHBlci5zZXJ2aWNlLmpzPzBkMTkiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsga2ViYWJDYXNlIH0gZnJvbSAnbG9kYXNoJ1xuXG5jb25zdCBwcm9wc1RvTmF0aXZlID0gcHJvcHMgPT4gT2JqZWN0LmtleXMocHJvcHMpLnJlZHVjZSgoYWNjLCBjdXIpID0+IHtcbiAgYWNjW2tlYmFiQ2FzZShjdXIpXSA9IHByb3BzW2N1cl1cbiAgcmV0dXJuIGFjY1xufSwge30pXG5cbmV4cG9ydCB7IHByb3BzVG9OYXRpdmUgfVxuIl0sIm5hbWVzIjpbInByb3BzVG9OYXRpdmUiLCJwcm9wcyIsIk9iamVjdCIsImtleXMiLCJyZWR1Y2UiLCJhY2MiLCJjdXIiLCJfa2ViYWJDYXNlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/services/attributes_helper/attributes_helper.service.js\n");
/***/ }),
/***/ "./src/services/backend_interactor_service/backend_interactor_service.js":
/*!*******************************************************************************!*\
!*** ./src/services/backend_interactor_service/backend_interactor_service.js ***!
\*******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ \"./node_modules/@babel/runtime/helpers/esm/slicedToArray.js\");\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"./node_modules/@babel/runtime/helpers/esm/defineProperty.js\");\n/* harmony import */ var _api_api_service_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../api/api.service.js */ \"./src/services/api/api.service.js\");\n/* harmony import */ var _timeline_fetcher_timeline_fetcher_service_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../timeline_fetcher/timeline_fetcher.service.js */ \"./src/services/timeline_fetcher/timeline_fetcher.service.js\");\n/* harmony import */ var _notifications_fetcher_notifications_fetcher_service_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../notifications_fetcher/notifications_fetcher.service.js */ \"./src/services/notifications_fetcher/notifications_fetcher.service.js\");\n/* harmony import */ var _services_follow_request_fetcher_follow_request_fetcher_service__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../services/follow_request_fetcher/follow_request_fetcher.service */ \"./src/services/follow_request_fetcher/follow_request_fetcher.service.js\");\n/* harmony import */ var _services_lists_fetcher_lists_fetcher_service_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../services/lists_fetcher/lists_fetcher.service.js */ \"./src/services/lists_fetcher/lists_fetcher.service.js\");\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\n\n\n\nvar backendInteractorService = function backendInteractorService(credentials) {\n return _objectSpread(_objectSpread({\n startFetchingTimeline: function startFetchingTimeline(_ref) {\n var timeline = _ref.timeline,\n store = _ref.store,\n _ref$userId = _ref.userId,\n userId = _ref$userId === void 0 ? false : _ref$userId,\n _ref$listId = _ref.listId,\n listId = _ref$listId === void 0 ? false : _ref$listId,\n tag = _ref.tag;\n return _timeline_fetcher_timeline_fetcher_service_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].startFetching({\n timeline: timeline,\n store: store,\n credentials: credentials,\n userId: userId,\n listId: listId,\n tag: tag\n });\n },\n fetchTimeline: function fetchTimeline(args) {\n return _timeline_fetcher_timeline_fetcher_service_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"].fetchAndUpdate(_objectSpread(_objectSpread({}, args), {}, {\n credentials: credentials\n }));\n },\n startFetchingNotifications: function startFetchingNotifications(_ref2) {\n var store = _ref2.store;\n return _notifications_fetcher_notifications_fetcher_service_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"].startFetching({\n store: store,\n credentials: credentials\n });\n },\n fetchNotifications: function fetchNotifications(args) {\n return _notifications_fetcher_notifications_fetcher_service_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"].fetchAndUpdate(_objectSpread(_objectSpread({}, args), {}, {\n credentials: credentials\n }));\n },\n startFetchingFollowRequests: function startFetchingFollowRequests(_ref3) {\n var store = _ref3.store;\n return _services_follow_request_fetcher_follow_request_fetcher_service__WEBPACK_IMPORTED_MODULE_5__[\"default\"].startFetching({\n store: store,\n credentials: credentials\n });\n },\n startFetchingLists: function startFetchingLists(_ref4) {\n var store = _ref4.store;\n return _services_lists_fetcher_lists_fetcher_service_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"].startFetching({\n store: store,\n credentials: credentials\n });\n },\n startUserSocket: function startUserSocket(_ref5) {\n var store = _ref5.store;\n var serv = store.rootState.instance.server.replace('http', 'ws');\n var url = serv + (0,_api_api_service_js__WEBPACK_IMPORTED_MODULE_2__.getMastodonSocketURI)({\n credentials: credentials,\n stream: 'user'\n });\n return (0,_api_api_service_js__WEBPACK_IMPORTED_MODULE_2__.ProcessedWS)({\n url: url,\n id: 'User'\n });\n }\n }, Object.entries(_api_api_service_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"]).reduce(function (acc, _ref6) {\n var _ref7 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(_ref6, 2),\n key = _ref7[0],\n func = _ref7[1];\n return _objectSpread(_objectSpread({}, acc), {}, (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__[\"default\"])({}, key, function (args) {\n return func(_objectSpread({\n credentials: credentials\n }, args));\n }));\n }, {})), {}, {\n verifyCredentials: _api_api_service_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"].verifyCredentials\n });\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (backendInteractorService);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvYmFja2VuZF9pbnRlcmFjdG9yX3NlcnZpY2UvYmFja2VuZF9pbnRlcmFjdG9yX3NlcnZpY2UuanMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0FBQXFGO0FBQ1I7QUFDZTtBQUNXO0FBQ3ZCO0FBRWhGLElBQU1PLHdCQUF3QixHQUFHLFNBQTNCQSx3QkFBd0JBLENBQUdDLFdBQVc7RUFBQSxPQUFBQyxhQUFBLENBQUFBLGFBQUE7SUFDMUNDLHFCQUFxQixXQUFBQSxzQkFBQUMsSUFBQSxFQUE0RDtNQUFBLElBQXhEQyxRQUFRLEdBQUFELElBQUEsQ0FBUkMsUUFBUTtRQUFFQyxLQUFLLEdBQUFGLElBQUEsQ0FBTEUsS0FBSztRQUFBQyxXQUFBLEdBQUFILElBQUEsQ0FBRUksTUFBTTtRQUFOQSxNQUFNLEdBQUFELFdBQUEsY0FBRyxLQUFLLEdBQUFBLFdBQUE7UUFBQUUsV0FBQSxHQUFBTCxJQUFBLENBQUVNLE1BQU07UUFBTkEsTUFBTSxHQUFBRCxXQUFBLGNBQUcsS0FBSyxHQUFBQSxXQUFBO1FBQUVFLEdBQUcsR0FBQVAsSUFBQSxDQUFITyxHQUFHO01BQzNFLE9BQU9mLG1HQUE2QixDQUFDO1FBQUVTLFFBQVEsRUFBUkEsUUFBUTtRQUFFQyxLQUFLLEVBQUxBLEtBQUs7UUFBRUwsV0FBVyxFQUFYQSxXQUFXO1FBQUVPLE1BQU0sRUFBTkEsTUFBTTtRQUFFRSxNQUFNLEVBQU5BLE1BQU07UUFBRUMsR0FBRyxFQUFIQTtNQUFJLENBQUMsQ0FBQztJQUM3RixDQUFDO0lBRURFLGFBQWEsV0FBQUEsY0FBRUMsSUFBSSxFQUFFO01BQ25CLE9BQU9sQixvR0FBOEIsQ0FBQU0sYUFBQSxDQUFBQSxhQUFBLEtBQU1ZLElBQUk7UUFBRWIsV0FBVyxFQUFYQTtNQUFXLEVBQUUsQ0FBQztJQUNqRSxDQUFDO0lBRURlLDBCQUEwQixXQUFBQSwyQkFBQUMsS0FBQSxFQUFhO01BQUEsSUFBVFgsS0FBSyxHQUFBVyxLQUFBLENBQUxYLEtBQUs7TUFDakMsT0FBT1QsNkdBQWtDLENBQUM7UUFBRVMsS0FBSyxFQUFMQSxLQUFLO1FBQUVMLFdBQVcsRUFBWEE7TUFBWSxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVEaUIsa0JBQWtCLFdBQUFBLG1CQUFFSixJQUFJLEVBQUU7TUFDeEIsT0FBT2pCLDhHQUFtQyxDQUFBSyxhQUFBLENBQUFBLGFBQUEsS0FBTVksSUFBSTtRQUFFYixXQUFXLEVBQVhBO01BQVcsRUFBRSxDQUFDO0lBQ3RFLENBQUM7SUFFRGtCLDJCQUEyQixXQUFBQSw0QkFBQUMsS0FBQSxFQUFhO01BQUEsSUFBVGQsS0FBSyxHQUFBYyxLQUFBLENBQUxkLEtBQUs7TUFDbEMsT0FBT1IscUhBQWtDLENBQUM7UUFBRVEsS0FBSyxFQUFMQSxLQUFLO1FBQUVMLFdBQVcsRUFBWEE7TUFBWSxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVEb0Isa0JBQWtCLFdBQUFBLG1CQUFBQyxLQUFBLEVBQWE7TUFBQSxJQUFUaEIsS0FBSyxHQUFBZ0IsS0FBQSxDQUFMaEIsS0FBSztNQUN6QixPQUFPUCxzR0FBMEIsQ0FBQztRQUFFTyxLQUFLLEVBQUxBLEtBQUs7UUFBRUwsV0FBVyxFQUFYQTtNQUFZLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRURzQixlQUFlLFdBQUFBLGdCQUFBQyxLQUFBLEVBQWE7TUFBQSxJQUFUbEIsS0FBSyxHQUFBa0IsS0FBQSxDQUFMbEIsS0FBSztNQUN0QixJQUFNbUIsSUFBSSxHQUFHbkIsS0FBSyxDQUFDb0IsU0FBUyxDQUFDQyxRQUFRLENBQUNDLE1BQU0sQ0FBQ0MsT0FBTyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUM7TUFDbEUsSUFBTUMsR0FBRyxHQUFHTCxJQUFJLEdBQUcvQix5RUFBb0IsQ0FBQztRQUFFTyxXQUFXLEVBQVhBLFdBQVc7UUFBRThCLE1BQU0sRUFBRTtNQUFPLENBQUMsQ0FBQztNQUN4RSxPQUFPcEMsZ0VBQVcsQ0FBQztRQUFFbUMsR0FBRyxFQUFIQSxHQUFHO1FBQUVFLEVBQUUsRUFBRTtNQUFPLENBQUMsQ0FBQztJQUN6QztFQUFDLEdBRUVDLE1BQU0sQ0FBQ0MsT0FBTyxDQUFDekMsMkRBQVUsQ0FBQyxDQUFDMEMsTUFBTSxDQUFDLFVBQUNDLEdBQUcsRUFBQUMsS0FBQSxFQUFrQjtJQUFBLElBQUFDLEtBQUEsR0FBQUMsZ0ZBQUEsQ0FBQUYsS0FBQTtNQUFmRyxHQUFHLEdBQUFGLEtBQUE7TUFBRUcsSUFBSSxHQUFBSCxLQUFBO0lBQ25ELE9BQUFwQyxhQUFBLENBQUFBLGFBQUEsS0FDS2tDLEdBQUcsT0FBQU0saUZBQUEsS0FDTEYsR0FBRyxFQUFHLFVBQUMxQixJQUFJO01BQUEsT0FBSzJCLElBQUksQ0FBQXZDLGFBQUE7UUFBR0QsV0FBVyxFQUFYQTtNQUFXLEdBQUthLElBQUksQ0FBRSxDQUFDO0lBQUE7RUFFbkQsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBRU42QixpQkFBaUIsRUFBRWxELDZFQUE0QmtEO0VBQUE7QUFBQSxDQUMvQztBQUVGLGlFQUFlM0Msd0JBQXdCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9zZXJ2aWNlcy9iYWNrZW5kX2ludGVyYWN0b3Jfc2VydmljZS9iYWNrZW5kX2ludGVyYWN0b3Jfc2VydmljZS5qcz9hY2Q2Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBhcGlTZXJ2aWNlLCB7IGdldE1hc3RvZG9uU29ja2V0VVJJLCBQcm9jZXNzZWRXUyB9IGZyb20gJy4uL2FwaS9hcGkuc2VydmljZS5qcydcbmltcG9ydCB0aW1lbGluZUZldGNoZXIgZnJvbSAnLi4vdGltZWxpbmVfZmV0Y2hlci90aW1lbGluZV9mZXRjaGVyLnNlcnZpY2UuanMnXG5pbXBvcnQgbm90aWZpY2F0aW9uc0ZldGNoZXIgZnJvbSAnLi4vbm90aWZpY2F0aW9uc19mZXRjaGVyL25vdGlmaWNhdGlvbnNfZmV0Y2hlci5zZXJ2aWNlLmpzJ1xuaW1wb3J0IGZvbGxvd1JlcXVlc3RGZXRjaGVyIGZyb20gJy4uLy4uL3NlcnZpY2VzL2ZvbGxvd19yZXF1ZXN0X2ZldGNoZXIvZm9sbG93X3JlcXVlc3RfZmV0Y2hlci5zZXJ2aWNlJ1xuaW1wb3J0IGxpc3RzRmV0Y2hlciBmcm9tICcuLi8uLi9zZXJ2aWNlcy9saXN0c19mZXRjaGVyL2xpc3RzX2ZldGNoZXIuc2VydmljZS5qcydcblxuY29uc3QgYmFja2VuZEludGVyYWN0b3JTZXJ2aWNlID0gY3JlZGVudGlhbHMgPT4gKHtcbiAgc3RhcnRGZXRjaGluZ1RpbWVsaW5lICh7IHRpbWVsaW5lLCBzdG9yZSwgdXNlcklkID0gZmFsc2UsIGxpc3RJZCA9IGZhbHNlLCB0YWcgfSkge1xuICAgIHJldHVybiB0aW1lbGluZUZldGNoZXIuc3RhcnRGZXRjaGluZyh7IHRpbWVsaW5lLCBzdG9yZSwgY3JlZGVudGlhbHMsIHVzZXJJZCwgbGlzdElkLCB0YWcgfSlcbiAgfSxcblxuICBmZXRjaFRpbWVsaW5lIChhcmdzKSB7XG4gICAgcmV0dXJuIHRpbWVsaW5lRmV0Y2hlci5mZXRjaEFuZFVwZGF0ZSh7IC4uLmFyZ3MsIGNyZWRlbnRpYWxzIH0pXG4gIH0sXG5cbiAgc3RhcnRGZXRjaGluZ05vdGlmaWNhdGlvbnMgKHsgc3RvcmUgfSkge1xuICAgIHJldHVybiBub3RpZmljYXRpb25zRmV0Y2hlci5zdGFydEZldGNoaW5nKHsgc3RvcmUsIGNyZWRlbnRpYWxzIH0pXG4gIH0sXG5cbiAgZmV0Y2hOb3RpZmljYXRpb25zIChhcmdzKSB7XG4gICAgcmV0dXJuIG5vdGlmaWNhdGlvbnNGZXRjaGVyLmZldGNoQW5kVXBkYXRlKHsgLi4uYXJncywgY3JlZGVudGlhbHMgfSlcbiAgfSxcblxuICBzdGFydEZldGNoaW5nRm9sbG93UmVxdWVzdHMgKHsgc3RvcmUgfSkge1xuICAgIHJldHVybiBmb2xsb3dSZXF1ZXN0RmV0Y2hlci5zdGFydEZldGNoaW5nKHsgc3RvcmUsIGNyZWRlbnRpYWxzIH0pXG4gIH0sXG5cbiAgc3RhcnRGZXRjaGluZ0xpc3RzICh7IHN0b3JlIH0pIHtcbiAgICByZXR1cm4gbGlzdHNGZXRjaGVyLnN0YXJ0RmV0Y2hpbmcoeyBzdG9yZSwgY3JlZGVudGlhbHMgfSlcbiAgfSxcblxuICBzdGFydFVzZXJTb2NrZXQgKHsgc3RvcmUgfSkge1xuICAgIGNvbnN0IHNlcnYgPSBzdG9yZS5yb290U3RhdGUuaW5zdGFuY2Uuc2VydmVyLnJlcGxhY2UoJ2h0dHAnLCAnd3MnKVxuICAgIGNvbnN0IHVybCA9IHNlcnYgKyBnZXRNYXN0b2RvblNvY2tldFVSSSh7IGNyZWRlbnRpYWxzLCBzdHJlYW06ICd1c2VyJyB9KVxuICAgIHJldHVybiBQcm9jZXNzZWRXUyh7IHVybCwgaWQ6ICdVc2VyJyB9KVxuICB9LFxuXG4gIC4uLk9iamVjdC5lbnRyaWVzKGFwaVNlcnZpY2UpLnJlZHVjZSgoYWNjLCBba2V5LCBmdW5jXSkgPT4ge1xuICAgIHJldHVybiB7XG4gICAgICAuLi5hY2MsXG4gICAgICBba2V5XTogKGFyZ3MpID0+IGZ1bmMoeyBjcmVkZW50aWFscywgLi4uYXJncyB9KVxuICAgIH1cbiAgfSwge30pLFxuXG4gIHZlcmlmeUNyZWRlbnRpYWxzOiBhcGlTZXJ2aWNlLnZlcmlmeUNyZWRlbnRpYWxzXG59KVxuXG5leHBvcnQgZGVmYXVsdCBiYWNrZW5kSW50ZXJhY3RvclNlcnZpY2VcbiJdLCJuYW1lcyI6WyJhcGlTZXJ2aWNlIiwiZ2V0TWFzdG9kb25Tb2NrZXRVUkkiLCJQcm9jZXNzZWRXUyIsInRpbWVsaW5lRmV0Y2hlciIsIm5vdGlmaWNhdGlvbnNGZXRjaGVyIiwiZm9sbG93UmVxdWVzdEZldGNoZXIiLCJsaXN0c0ZldGNoZXIiLCJiYWNrZW5kSW50ZXJhY3RvclNlcnZpY2UiLCJjcmVkZW50aWFscyIsIl9vYmplY3RTcHJlYWQiLCJzdGFydEZldGNoaW5nVGltZWxpbmUiLCJfcmVmIiwidGltZWxpbmUiLCJzdG9yZSIsIl9yZWYkdXNlcklkIiwidXNlcklkIiwiX3JlZiRsaXN0SWQiLCJsaXN0SWQiLCJ0YWciLCJzdGFydEZldGNoaW5nIiwiZmV0Y2hUaW1lbGluZSIsImFyZ3MiLCJmZXRjaEFuZFVwZGF0ZSIsInN0YXJ0RmV0Y2hpbmdOb3RpZmljYXRpb25zIiwiX3JlZjIiLCJmZXRjaE5vdGlmaWNhdGlvbnMiLCJzdGFydEZldGNoaW5nRm9sbG93UmVxdWVzdHMiLCJfcmVmMyIsInN0YXJ0RmV0Y2hpbmdMaXN0cyIsIl9yZWY0Iiwic3RhcnRVc2VyU29ja2V0IiwiX3JlZjUiLCJzZXJ2Iiwicm9vdFN0YXRlIiwiaW5zdGFuY2UiLCJzZXJ2ZXIiLCJyZXBsYWNlIiwidXJsIiwic3RyZWFtIiwiaWQiLCJPYmplY3QiLCJlbnRyaWVzIiwicmVkdWNlIiwiYWNjIiwiX3JlZjYiLCJfcmVmNyIsIl9zbGljZWRUb0FycmF5Iiwia2V5IiwiZnVuYyIsIl9kZWZpbmVQcm9wZXJ0eSIsInZlcmlmeUNyZWRlbnRpYWxzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/services/backend_interactor_service/backend_interactor_service.js\n");
/***/ }),
/***/ "./src/services/chat_service/chat_service.js":
/*!***************************************************!*\
!*** ./src/services/chat_service/chat_service.js ***!
\***************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/typeof */ \"./node_modules/@babel/runtime/helpers/esm/typeof.js\");\n/* harmony import */ var lodash_uniqueId__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! lodash/uniqueId */ \"./node_modules/lodash/uniqueId.js\");\n/* harmony import */ var lodash_uniqueId__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash_uniqueId__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var lodash_orderBy__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! lodash/orderBy */ \"./node_modules/lodash/orderBy.js\");\n/* harmony import */ var lodash_orderBy__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(lodash_orderBy__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var lodash_sortBy__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! lodash/sortBy */ \"./node_modules/lodash/sortBy.js\");\n/* harmony import */ var lodash_sortBy__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(lodash_sortBy__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var lodash_minBy__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! lodash/minBy */ \"./node_modules/lodash/minBy.js\");\n/* harmony import */ var lodash_minBy__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(lodash_minBy__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var lodash_maxBy__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! lodash/maxBy */ \"./node_modules/lodash/maxBy.js\");\n/* harmony import */ var lodash_maxBy__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(lodash_maxBy__WEBPACK_IMPORTED_MODULE_5__);\n\n\n\n\n\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nvar empty = function empty(chatId) {\n return {\n idIndex: {},\n idempotencyKeyIndex: {},\n messages: [],\n newMessageCount: 0,\n lastSeenMessageId: '0',\n chatId: chatId,\n minId: undefined,\n maxId: undefined\n };\n};\nvar clear = function clear(storage) {\n var failedMessageIds = [];\n var _iterator = _createForOfIteratorHelper(storage.messages),\n _step;\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var message = _step.value;\n if (message.error) {\n failedMessageIds.push(message.id);\n } else {\n delete storage.idIndex[message.id];\n delete storage.idempotencyKeyIndex[message.idempotency_key];\n }\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n storage.messages = storage.messages.filter(function (m) {\n return failedMessageIds.includes(m.id);\n });\n storage.newMessageCount = 0;\n storage.lastSeenMessageId = '0';\n storage.minId = undefined;\n storage.maxId = undefined;\n};\nvar deleteMessage = function deleteMessage(storage, messageId) {\n if (!storage) {\n return;\n }\n storage.messages = storage.messages.filter(function (m) {\n return m.id !== messageId;\n });\n delete storage.idIndex[messageId];\n if (storage.maxId === messageId) {\n var lastMessage = lodash_maxBy__WEBPACK_IMPORTED_MODULE_5___default()(storage.messages, 'id');\n storage.maxId = lastMessage.id;\n }\n if (storage.minId === messageId) {\n var firstMessage = lodash_minBy__WEBPACK_IMPORTED_MODULE_4___default()(storage.messages, 'id');\n storage.minId = firstMessage.id;\n }\n};\nvar cullOlderMessages = function cullOlderMessages(storage) {\n var maxIndex = storage.messages.length;\n var minIndex = maxIndex - 50;\n if (maxIndex <= 50) return;\n storage.messages = lodash_sortBy__WEBPACK_IMPORTED_MODULE_3___default()(storage.messages, ['id']);\n storage.minId = storage.messages[minIndex].id;\n var _iterator2 = _createForOfIteratorHelper(storage.messages),\n _step2;\n try {\n for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {\n var message = _step2.value;\n if (message.id < storage.minId) {\n delete storage.idIndex[message.id];\n delete storage.idempotencyKeyIndex[message.idempotency_key];\n }\n }\n } catch (err) {\n _iterator2.e(err);\n } finally {\n _iterator2.f();\n }\n storage.messages = storage.messages.slice(minIndex, maxIndex);\n};\nvar handleMessageError = function handleMessageError(storage, fakeId, isRetry) {\n if (!storage) {\n return;\n }\n var fakeMessage = storage.idIndex[fakeId];\n if (fakeMessage) {\n fakeMessage.error = true;\n fakeMessage.pending = false;\n if (!isRetry) {\n // Ensure the failed message doesn't stay at the bottom of the list.\n var lastPersistedMessage = lodash_orderBy__WEBPACK_IMPORTED_MODULE_2___default()(storage.messages, ['pending', 'id'], ['asc', 'desc'])[0];\n if (lastPersistedMessage) {\n var oldId = fakeMessage.id;\n fakeMessage.id = \"\".concat(lastPersistedMessage.id, \"-\").concat(new Date().getTime());\n storage.idIndex[fakeMessage.id] = fakeMessage;\n delete storage.idIndex[oldId];\n }\n }\n }\n};\nvar add = function add(storage, _ref) {\n var newMessages = _ref.messages,\n _ref$updateMaxId = _ref.updateMaxId,\n updateMaxId = _ref$updateMaxId === void 0 ? true : _ref$updateMaxId;\n if (!storage) {\n return;\n }\n var _loop = function _loop() {\n var message = newMessages[i];\n\n // sanity check\n if (message.chat_id !== storage.chatId) {\n return {\n v: void 0\n };\n }\n if (message.fakeId) {\n var fakeMessage = storage.idIndex[message.fakeId];\n if (fakeMessage) {\n // In case the same id exists (chat update before POST response)\n // make sure to remove the older duplicate message.\n if (storage.idIndex[message.id]) {\n delete storage.idIndex[message.id];\n storage.messages = storage.messages.filter(function (msg) {\n return msg.id !== message.id;\n });\n }\n Object.assign(fakeMessage, message, {\n error: false\n });\n delete fakeMessage.fakeId;\n storage.idIndex[fakeMessage.id] = fakeMessage;\n delete storage.idIndex[message.fakeId];\n return {\n v: void 0\n };\n }\n }\n if (!storage.minId || !message.pending && message.id < storage.minId) {\n storage.minId = message.id;\n }\n if (!storage.maxId || message.id > storage.maxId) {\n if (updateMaxId) {\n storage.maxId = message.id;\n }\n }\n if (!storage.idIndex[message.id] && !isConfirmation(storage, message)) {\n if (storage.lastSeenMessageId < message.id) {\n storage.newMessageCount++;\n }\n storage.idIndex[message.id] = message;\n storage.messages.push(storage.idIndex[message.id]);\n storage.idempotencyKeyIndex[message.idempotency_key] = true;\n }\n };\n for (var i = 0; i < newMessages.length; i++) {\n var _ret = _loop();\n if ((0,_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(_ret) === \"object\") return _ret.v;\n }\n};\nvar isConfirmation = function isConfirmation(storage, message) {\n if (!message.idempotency_key) return;\n return storage.idempotencyKeyIndex[message.idempotency_key];\n};\nvar resetNewMessageCount = function resetNewMessageCount(storage) {\n if (!storage) {\n return;\n }\n storage.newMessageCount = 0;\n storage.lastSeenMessageId = storage.maxId;\n};\n\n// Inserts date separators and marks the head and tail if it's the chain of messages made by the same user\nvar getView = function getView(storage) {\n if (!storage) {\n return [];\n }\n var result = [];\n var messages = lodash_orderBy__WEBPACK_IMPORTED_MODULE_2___default()(storage.messages, ['pending', 'id'], ['asc', 'asc']);\n var firstMessage = messages[0];\n var previousMessage = messages[messages.length - 1];\n var currentMessageChainId;\n if (firstMessage) {\n var date = new Date(firstMessage.created_at);\n date.setHours(0, 0, 0, 0);\n result.push({\n type: 'date',\n date: date,\n id: date.getTime().toString()\n });\n }\n var afterDate = false;\n for (var i = 0; i < messages.length; i++) {\n var message = messages[i];\n var nextMessage = messages[i + 1];\n var _date = new Date(message.created_at);\n _date.setHours(0, 0, 0, 0);\n\n // insert date separator and start a new message chain\n if (previousMessage && previousMessage.date < _date) {\n result.push({\n type: 'date',\n date: _date,\n id: _date.getTime().toString()\n });\n previousMessage.isTail = true;\n currentMessageChainId = undefined;\n afterDate = true;\n }\n var object = {\n type: 'message',\n data: message,\n date: _date,\n id: message.id,\n messageChainId: currentMessageChainId\n };\n\n // end a message chian\n if ((nextMessage && nextMessage.account_id) !== message.account_id) {\n object.isTail = true;\n currentMessageChainId = undefined;\n }\n\n // start a new message chain\n if ((previousMessage && previousMessage.data && previousMessage.data.account_id) !== message.account_id || afterDate) {\n currentMessageChainId = lodash_uniqueId__WEBPACK_IMPORTED_MODULE_1___default()();\n object.isHead = true;\n object.messageChainId = currentMessageChainId;\n }\n result.push(object);\n previousMessage = object;\n afterDate = false;\n }\n return result;\n};\nvar ChatService = {\n add: add,\n empty: empty,\n getView: getView,\n deleteMessage: deleteMessage,\n cullOlderMessages: cullOlderMessages,\n resetNewMessageCount: resetNewMessageCount,\n clear: clear,\n handleMessageError: handleMessageError\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ChatService);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvY2hhdF9zZXJ2aWNlL2NoYXRfc2VydmljZS5qcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFQSxJQUFNQSxLQUFLLEdBQUcsU0FBUkEsS0FBS0EsQ0FBSUMsTUFBTSxFQUFLO0VBQ3hCLE9BQU87SUFDTEMsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUNYQyxtQkFBbUIsRUFBRSxDQUFDLENBQUM7SUFDdkJDLFFBQVEsRUFBRSxFQUFFO0lBQ1pDLGVBQWUsRUFBRSxDQUFDO0lBQ2xCQyxpQkFBaUIsRUFBRSxHQUFHO0lBQ3RCTCxNQUFNLEVBQU5BLE1BQU07SUFDTk0sS0FBSyxFQUFFQyxTQUFTO0lBQ2hCQyxLQUFLLEVBQUVEO0VBQ1QsQ0FBQztBQUNILENBQUM7QUFFRCxJQUFNRSxLQUFLLEdBQUcsU0FBUkEsS0FBS0EsQ0FBSUMsT0FBTyxFQUFLO0VBQ3pCLElBQU1DLGdCQUFnQixHQUFHLEVBQUU7RUFBQSxJQUFBQyxTQUFBLEdBQUFDLDBCQUFBLENBRUxILE9BQU8sQ0FBQ1AsUUFBUTtJQUFBVyxLQUFBO0VBQUE7SUFBdEMsS0FBQUYsU0FBQSxDQUFBRyxDQUFBLE1BQUFELEtBQUEsR0FBQUYsU0FBQSxDQUFBSSxDQUFBLElBQUFDLElBQUEsR0FBd0M7TUFBQSxJQUE3QkMsT0FBTyxHQUFBSixLQUFBLENBQUFLLEtBQUE7TUFDaEIsSUFBSUQsT0FBTyxDQUFDRSxLQUFLLEVBQUU7UUFDakJULGdCQUFnQixDQUFDVSxJQUFJLENBQUNILE9BQU8sQ0FBQ0ksRUFBRSxDQUFDO01BQ25DLENBQUMsTUFBTTtRQUNMLE9BQU9aLE9BQU8sQ0FBQ1QsT0FBTyxDQUFDaUIsT0FBTyxDQUFDSSxFQUFFLENBQUM7UUFDbEMsT0FBT1osT0FBTyxDQUFDUixtQkFBbUIsQ0FBQ2dCLE9BQU8sQ0FBQ0ssZUFBZSxDQUFDO01BQzdEO0lBQ0Y7RUFBQyxTQUFBQyxHQUFBO0lBQUFaLFNBQUEsQ0FBQWEsQ0FBQSxDQUFBRCxH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YXRfc2VydmljZS9jaGF0X3NlcnZpY2UuanM/MzE0ZiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgXyBmcm9tICdsb2Rhc2gnXG5cbmNvbnN0IGVtcHR5ID0gKGNoYXRJZCkgPT4ge1xuICByZXR1cm4ge1xuICAgIGlkSW5kZXg6IHt9LFxuICAgIGlkZW1wb3RlbmN5S2V5SW5kZXg6IHt9LFxuICAgIG1lc3NhZ2VzOiBbXSxcbiAgICBuZXdNZXNzYWdlQ291bnQ6IDAsXG4gICAgbGFzdFNlZW5NZXNzYWdlSWQ6ICcwJyxcbiAgICBjaGF0SWQsXG4gICAgbWluSWQ6IHVuZGVmaW5lZCxcbiAgICBtYXhJZDogdW5kZWZpbmVkXG4gIH1cbn1cblxuY29uc3QgY2xlYXIgPSAoc3RvcmFnZSkgPT4ge1xuICBjb25zdCBmYWlsZWRNZXNzYWdlSWRzID0gW11cblxuICBmb3IgKGNvbnN0IG1lc3NhZ2Ugb2Ygc3RvcmFnZS5tZXNzYWdlcykge1xuICAgIGlmIChtZXNzYWdlLmVycm9yKSB7XG4gICAgICBmYWlsZWRNZXNzYWdlSWRzLnB1c2gobWVzc2FnZS5pZClcbiAgICB9IGVsc2Uge1xuICAgICAgZGVsZXRlIHN0b3JhZ2UuaWRJbmRleFttZXNzYWdlLmlkXVxuICAgICAgZGVsZXRlIHN0b3JhZ2UuaWRlbXBvdGVuY3lLZXlJbmRleFttZXNzYWdlLmlkZW1wb3RlbmN5X2tleV1cbiAgICB9XG4gIH1cblxuICBzdG9yYWdlLm1lc3NhZ2VzID0gc3RvcmFnZS5tZXNzYWdlcy5maWx0ZXIobSA9PiBmYWlsZWRNZXNzYWdlSWRzLmluY2x1ZGVzKG0uaWQpKVxuICBzdG9yYWdlLm5ld01lc3NhZ2VDb3VudCA9IDBcbiAgc3RvcmFnZS5sYXN0U2Vlbk1lc3NhZ2VJZCA9ICcwJ1xuICBzdG9yYWdlLm1pbklkID0gdW5kZWZpbmVkXG4gIHN0b3JhZ2UubWF4SWQgPSB1bmRlZmluZWRcbn1cblxuY29uc3QgZGVsZXRlTWVzc2FnZSA9IChzdG9yYWdlLCBtZXNzYWdlSWQpID0+IHtcbiAgaWYgKCFzdG9yYWdlKSB7IHJldHVybiB9XG4gIHN0b3JhZ2UubWVzc2FnZXMgPSBzdG9yYWdlLm1lc3NhZ2VzLmZpbHRlcihtID0+IG0uaWQgIT09IG1lc3NhZ2VJZClcbiAgZGVsZXRlIHN0b3JhZ2UuaWRJbmRleFttZXNzYWdlSWRdXG5cbiAgaWYgKHN0b3JhZ2UubWF4SWQgPT09IG1lc3NhZ2VJZCkge1xuICAgIGNvbnN0IGxhc3RNZXNzYWdlID0gXy5tYXhCeShzdG9yYWdlLm1lc3NhZ2VzLCAnaWQnKVxuICAgIHN0b3JhZ2UubWF4SWQgPSBsYXN0TWVzc2FnZS5pZFxuICB9XG5cbiAgaWYgKHN0b3JhZ2UubWluSWQgPT09IG1lc3NhZ2VJZCkge1xuICAgIGNvbnN0IGZpcnN0TWVzc2FnZSA9IF8ubWluQnkoc3RvcmFnZS5tZXNzYWdlcywgJ2lkJylcbiAgICBzdG9yYWdlLm1pbklkID0gZmlyc3RNZXNzYWdlLmlkXG4gIH1cbn1cblxuY29uc3QgY3VsbE9sZGVyTWVzc2FnZXMgPSAoc3RvcmFnZSkgPT4ge1xuICBjb25zdCBtYXhJbmRleCA9IHN0b3JhZ2UubWVzc2FnZXMubGVuZ3RoXG4gIGNvbnN0IG1pbkluZGV4ID0gbWF4SW5kZXggLSA1MFxuICBpZiAobWF4SW5kZXggPD0gNTApIHJldHVyblxuXG4gIHN0b3JhZ2UubWVzc2FnZXMgPSBfLnNvcnRCeShzdG9yYWdlLm1lc3NhZ2VzLCBbJ2lkJ10pXG4gIHN0b3JhZ2UubWluSWQgPSBzdG9yYWdlLm1lc3NhZ2VzW21pbkluZGV4XS5pZFxuICBmb3IgKGNvbnN0IG1lc3NhZ2Ugb2Ygc3RvcmFnZS5tZXNzYWdlcykge1xuICAgIGlmIChtZXNzYWdlLmlkIDwgc3RvcmFnZS5taW5JZCkge1xuICAgICAgZGVsZXRlIHN0b3JhZ2UuaWRJbmRleFttZXNzYWdlLmlkXVxuICAgICAgZGVsZXRlIHN0b3JhZ2UuaWRlbXBvdGVuY3lLZXlJbmRleFttZXNzYWdlLmlkZW1wb3RlbmN5X2tleV1cbiAgICB9XG4gIH1cbiAgc3RvcmFnZS5tZXNzYWdlcyA9IHN0b3JhZ2UubWVzc2FnZXMuc2xpY2UobWluSW5kZXgsIG1heEluZGV4KVxufVxuXG5jb25zdCBoYW5kbGVNZXNzYWdlRXJyb3IgPSAoc3RvcmFnZSwgZmFrZUlkLCBpc1JldHJ5KSA9PiB7XG4gIGlmICghc3RvcmFnZSkgeyByZXR1cm4gfVxuICBjb25zdCBmYWtlTWVzc2FnZSA9IHN0b3JhZ2UuaWRJbmRleFtmYWtlSWRdXG4gIGlmIChmYWtlTWVzc2FnZSkge1xuICAgIGZha2VNZXNzYWdlLmVycm9yID0gdHJ1ZVxuICAgIGZha2VNZXNzYWdlLnBlbmRpbmcgPSBmYWxzZVxuICAgIGlmICghaXNSZXRyeSkge1xuICAgICAgLy8gRW5zdXJlIHRoZSBmYWlsZWQgbWVzc2FnZSBkb2Vzbid0IHN0YXkgYXQgdGhlIGJvdHRvbSBvZiB0aGUgbGlzdC5cbiAgICAgIGNvbnN0IGxhc3RQZXJzaXN0ZWRNZXNzYWdlID0gXy5vcmRlckJ5KHN0b3JhZ2UubWVzc2FnZXMsIFsncGVuZGluZycsICdpZCddLCBbJ2FzYycsICdkZXNjJ10pWzBdXG4gICAgICBpZiAobGFzdFBlcnNpc3RlZE1lc3NhZ2UpIHtcbiAgICAgICAgY29uc3Qgb2xkSWQgPSBmYWtlTWVzc2FnZS5pZFxuICAgICAgICBmYWtlTWVzc2FnZS5pZCA9IGAke2xhc3RQZXJzaXN0ZWRNZXNzYWdlLmlkfS0ke25ldyBEYXRlKCkuZ2V0VGltZSgpfWBcbiAgICAgICAgc3RvcmFnZS5pZEluZGV4W2Zha2VNZXNzYWdlLmlkXSA9IGZha2VNZXNzYWdlXG4gICAgICAgIGRlbGV0ZSBzdG9yYWdlLmlkSW5kZXhbb2xkSWRdXG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbmNvbnN0IGFkZCA9IChzdG9yYWdlLCB7IG1lc3NhZ2VzOiBuZXdNZXNzYWdlcywgdXBkYXRlTWF4SWQgPSB0cnVlIH0pID0+IHtcbiAgaWYgKCFzdG9yYWdlKSB7IHJldHVybiB9XG4gIGZvciAobGV0IGkgPSAwOyBpIDwgbmV3TWVzc2FnZXMubGVuZ3RoOyBpKyspIHtcbiAgICBjb25zdCBtZXNzYWdlID0gbmV3TWVzc2FnZXNbaV1cblxuICAgIC8vIHNhbml0eSBjaGVja1xuICAgIGlmIChtZXNzYWdlLmNoYXRfaWQgIT09IHN0b3JhZ2UuY2hhdElkKSB7IHJldHVybiB9XG5cbiAgICBpZiAobWVzc2FnZS5mYWtlSWQpIHtcbiAgICAgIGNvbnN0IGZha2VNZXNzYWdlID0gc3RvcmFnZS5pZEluZGV4W21lc3NhZ2UuZmFrZUlkXVxuICAgICAgaWYgKGZha2VNZXNzYWdlKSB7XG4gICAgICAgIC8vIEluIGNhc2UgdGhlIHNhbWUgaWQgZXhpc3RzIChjaGF0IHVwZGF0ZSBiZWZvcmUgUE9TVCByZXNwb25zZSlcbiAgICAgICAgLy8gbWFrZSBzdXJlIHRvIHJlbW92ZSB0aGUgb2xkZXIgZHVwbGljYXRlIG1lc3NhZ2UuXG4gICAgICAgIGlmIChzdG9yYWdlLmlkSW5kZXhbbWVzc2FnZS5pZF0pIHtcbiAgICAgICAgICBkZWxldGUgc3RvcmFnZS5pZEluZGV4W21lc3NhZ2UuaWRdXG4gICAgICAgICAgc3RvcmFnZS5tZXNzYWdlcyA9IHN0b3JhZ2UubWVzc2FnZXMuZmlsdGVyKG1zZyA9PiBtc2cuaWQgIT09IG1lc3NhZ2UuaWQpXG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbihmYWtlTWVzc2FnZSwgbWVzc2FnZSwgeyBlcnJvcjogZmFsc2UgfSlcbiAgICAgICAgZGVsZXRlIGZha2VNZXNzYWdlLmZha2VJZFxuICAgICAgICBzdG9yYWdlLmlkSW5kZXhbZmFrZU1lc3NhZ2UuaWRdID0gZmFrZU1lc3NhZ2VcbiAgICAgICAgZGVsZXRlIHN0b3JhZ2UuaWRJbmRleFttZXNzYWdlLmZha2VJZF1cblxuICAgICAgICByZXR1cm5cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoIXN0b3JhZ2UubWluSWQgfHwgKCFtZXNzYWdlLnBlbmRpbmcgJiYgbWVzc2FnZS5pZCA8IHN0b3JhZ2UubWluSWQpKSB7XG4gICAgICBzdG9yYWdlLm1pbklkID0gbWVzc2FnZS5pZFxuICAgIH1cblxuICAgIGlmICghc3RvcmFnZS5tYXhJZCB8fCBtZXNzYWdlLmlkID4gc3RvcmFnZS5tYXhJZCkge1xuICAgICAgaWYgKHVwZGF0ZU1heElkKSB7XG4gICAgICAgIHN0b3JhZ2UubWF4SWQgPSBtZXNzYWdlLmlkXG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKCFzdG9yYWdlLmlkSW5kZXhbbWVzc2FnZS5pZF0gJiYgIWlzQ29uZmlybWF0aW9uKHN0b3JhZ2UsIG1lc3NhZ2UpKSB7XG4gICAgICBpZiAoc3RvcmFnZS5sYXN0U2Vlbk1lc3NhZ2VJZCA8IG1lc3NhZ2UuaWQpIHtcbiAgICAgICAgc3RvcmFnZS5uZXdNZXNzYWdlQ291bnQrK1xuICAgICAgfVxuICAgICAgc3RvcmFnZS5pZEluZGV4W21lc3NhZ2UuaWRdID0gbWVzc2FnZVxuICAgICAgc3RvcmFnZS5tZXNzYWdlcy5wdXNoKHN0b3JhZ2UuaWRJbmRleFttZXNzYWdlLmlkXSlcbiAgICAgIHN0b3JhZ2UuaWRlbXBvdGVuY3lLZXlJbmRleFttZXNzYWdlLmlkZW1wb3RlbmN5X2tleV0gPSB0cnVlXG4gICAgfVxuICB9XG59XG5cbmNvbnN0IGlzQ29uZmlybWF0aW9uID0gKHN0b3JhZ2UsIG1lc3NhZ2UpID0+IHtcbiAgaWYgKCFtZXNzYWdlLmlkZW1wb3RlbmN5X2tleSkgcmV0dXJuXG4gIHJldHVybiBzdG9yYWdlLmlkZW1wb3RlbmN5S2V5SW5kZXhbbWVzc2FnZS5pZGVtcG90ZW5jeV9rZXldXG59XG5cbmNvbnN0IHJlc2V0TmV3TWVzc2FnZUNvdW50ID0gKHN0b3JhZ2UpID0+IHtcbiAgaWYgKCFzdG9yYWdlKSB7IHJldHVybiB9XG4gIHN0b3JhZ2UubmV3TWVzc2FnZUNvdW50ID0gMFxuICBzdG9yYWdlLmxhc3RTZWVuTWVzc2FnZUlkID0gc3RvcmFnZS5tYXhJZFxufVxuXG4vLyBJbnNlcnRzIGRhdGUgc2VwYXJhdG9ycyBhbmQgbWFya3MgdGhlIGhlYWQgYW5kIHRhaWwgaWYgaXQncyB0aGUgY2hhaW4gb2YgbWVzc2FnZXMgbWFkZSBieSB0aGUgc2FtZSB1c2VyXG5jb25zdCBnZXRWaWV3ID0gKHN0b3JhZ2UpID0+IHtcbiAgaWYgKCFzdG9yYWdlKSB7IHJldHVybiBbXSB9XG5cbiAgY29uc3QgcmVzdWx0ID0gW11cbiAgY29uc3QgbWVzc2FnZXMgPSBfLm9yZGVyQnkoc3RvcmFnZS5tZXNzYWdlcywgWydwZW5kaW5nJywgJ2lkJ10sIFsnYXNjJywgJ2FzYyddKVxuICBjb25zdCBmaXJzdE1lc3NhZ2UgPSBtZXNzYWdlc1swXVxuICBsZXQgcHJldmlvdXNNZXNzYWdlID0gbWVzc2FnZXNbbWVzc2FnZXMubGVuZ3RoIC0gMV1cbiAgbGV0IGN1cnJlbnRNZXNzYWdlQ2hhaW5JZFxuXG4gIGlmIChmaXJzdE1lc3NhZ2UpIHtcbiAgICBjb25zdCBkYXRlID0gbmV3IERhdGUoZmlyc3RNZXNzYWdlLmNyZWF0ZWRfYXQpXG4gICAgZGF0ZS5zZXRIb3VycygwLCAwLCAwLCAwKVxuICAgIHJlc3VsdC5wdXNoKHtcbiAgICAgIHR5cGU6ICdkYXRlJyxcbiAgICAgIGRhdGUsXG4gICAgICBpZDogZGF0ZS5nZXRUaW1lKCkudG9TdHJpbmcoKVxuICAgIH0pXG4gIH1cblxuICBsZXQgYWZ0ZXJEYXRlID0gZmFsc2VcblxuICBmb3IgKGxldCBpID0gMDsgaSA8IG1lc3NhZ2VzLmxlbmd0aDsgaSsrKSB7XG4gICAgY29uc3QgbWVzc2FnZSA9IG1lc3NhZ2VzW2ldXG4gICAgY29uc3QgbmV4dE1lc3NhZ2UgPSBtZXNzYWdlc1tpICsgMV1cblxuICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZShtZXNzYWdlLmNyZWF0ZWRfYXQpXG4gICAgZGF0ZS5zZXRIb3VycygwLCAwLCAwLCAwKVxuXG4gICAgLy8gaW5zZXJ0IGRhdGUgc2VwYXJhdG9yIGFuZCBzdGFydCBhIG5ldyBtZXNzYWdlIGNoYWluXG4gICAgaWYgKHByZXZpb3VzTWVzc2FnZSAmJiBwcmV2aW91c01lc3NhZ2UuZGF0ZSA8IGRhdGUpIHtcbiAgICAgIHJlc3VsdC5wdXNoKHtcbiAgICAgICAgdHlwZTogJ2RhdGUnLFxuICAgICAgICBkYXRlLFxuICAgICAgICBpZDogZGF0ZS5nZXRUaW1lKCkudG9TdHJpbmcoKVxuICAgICAgfSlcblxuICAgICAgcHJldmlvdXNNZXNzYWdlLmlzVGFpbCA9IHRydWVcbiAgICAgIGN1cnJlbnRNZXNzYWdlQ2hhaW5JZCA9IHVuZGVmaW5lZFxuICAgICAgYWZ0ZXJEYXRlID0gdHJ1ZVxuICAgIH1cblxuICAgIGNvbnN0IG9iamVjdCA9IHtcbiAgICAgIHR5cGU6ICdtZXNzYWdlJyxcbiAgICAgIGRhdGE6IG1lc3NhZ2UsXG4gICAgICBkYXRlLFxuICAgICAgaWQ6IG1lc3NhZ2UuaWQsXG4gICAgICBtZXNzYWdlQ2hhaW5JZDogY3VycmVudE1lc3NhZ2VDaGFpbklkXG4gICAgfVxuXG4gICAgLy8gZW5kIGEgbWVzc2FnZSBjaGlhblxuICAgIGlmICgobmV4dE1lc3NhZ2UgJiYgbmV4dE1lc3NhZ2UuYWNjb3VudF9pZCkgIT09IG1lc3NhZ2UuYWNjb3VudF9pZCkge1xuICAgICAgb2JqZWN0LmlzVGFpbCA9IHRydWVcbiAgICAgIGN1cnJlbnRNZXNzYWdlQ2hhaW5JZCA9IHVuZGVmaW5lZFxuICAgIH1cblxuICAgIC8vIHN0YXJ0IGEgbmV3IG1lc3NhZ2UgY2hhaW5cbiAgICBpZiAoKHByZXZpb3VzTWVzc2FnZSAmJiBwcmV2aW91c01lc3NhZ2UuZGF0YSAmJiBwcmV2aW91c01lc3NhZ2UuZGF0YS5hY2NvdW50X2lkKSAhPT0gbWVzc2FnZS5hY2NvdW50X2lkIHx8IGFmdGVyRGF0ZSkge1xuICAgICAgY3VycmVudE1lc3NhZ2VDaGFpbklkID0gXy51bmlxdWVJZCgpXG4gICAgICBvYmplY3QuaXNIZWFkID0gdHJ1ZVxuICAgICAgb2JqZWN0Lm1lc3NhZ2VDaGFpbklkID0gY3VycmVudE1lc3NhZ2VDaGFpbklkXG4gICAgfVxuXG4gICAgcmVzdWx0LnB1c2gob2JqZWN0KVxuICAgIHByZXZpb3VzTWVzc2FnZSA9IG9iamVjdFxuICAgIGFmdGVyRGF0ZSA9IGZhbHNlXG4gIH1cblxuICByZXR1cm4gcmVzdWx0XG59XG5cbmNvbnN0IENoYXRTZXJ2aWNlID0ge1xuICBhZGQsXG4gIGVtcHR5LFxuICBnZXRWaWV3LFxuICBkZWxldGVNZXNzYWdlLFxuICBjdWxsT2xkZXJNZXNzYWdlcyxcbiAgcmVzZXROZXdNZXNzYWdlQ291bnQsXG4gIGNsZWFyLFxuICBoYW5kbGVNZXNzYWdlRXJyb3Jcbn1cblxuZXhwb3J0IGRlZmF1bHQgQ2hhdFNlcnZpY2VcbiJdLCJuYW1lcyI6WyJlbXB0eSIsImNoYXRJZCIsImlkSW5kZXgiLCJpZGVtcG90ZW5jeUtleUluZGV4IiwibWVzc2FnZXMiLCJuZXdNZXNzYWdlQ291bnQiLCJsYXN0U2Vlbk1lc3NhZ2VJZCIsIm1pbklkIiwidW5kZWZpbmVkIiwibWF4SWQiLCJjbGVhciIsInN0b3JhZ2UiLCJmYWlsZWRNZXNzYWdlSWRzIiwiX2l0ZXJhdG9yIiwiX2NyZWF0ZUZvck9mSXRlcmF0b3JIZWxwZXIiLCJfc3RlcCIsInMiLCJuIiwiZG9uZSIsIm1lc3NhZ2UiLCJ2YWx1ZSIsImVycm9yIiwicHVzaCIsImlkIiwiaWRlbXBvdGVuY3lfa2V5IiwiZXJyIiwiZSIsImYiLCJmaWx0ZXIiLCJtIiwiaW5jbHVkZXMiLCJkZWxldGVNZXNzYWdlIiwibWVzc2FnZUlkIiwibGFzdE1lc3NhZ2UiLCJfbWF4QnkiLCJmaXJzdE1lc3NhZ2UiLCJfbWluQnkiLCJjdWxsT2xkZXJNZXNzYWdlcyIsIm1heEluZGV4IiwibGVuZ3RoIiwibWluSW5kZXgiLCJfc29ydEJ5IiwiX2l0ZXJhdG9yMiIsIl9zdGVwMiIsInNsaWNlIiwiaGFuZGxlTWVzc2FnZUVycm9yIiwiZmFrZUlkIiwiaXNSZXRyeSIsImZha2VNZXNzYWdlIiwicGVuZGluZyIsImxhc3RQZXJzaXN0ZWRNZXNzYWdlIiwiX29yZGVyQnkiLCJvbGRJZCIsImNvbmNhdCIsIkRhdGUiLCJnZXRUaW1lIiwiYWRkIiwiX3JlZiIsIm5ld01lc3NhZ2VzIiwiX3JlZiR1cGRhdGVNYXhJZCIsInVwZGF0ZU1heElkIiwiX2xvb3AiLCJpIiwiY2hhdF9pZCIsInYiLCJtc2ciLCJPYmplY3QiLCJhc3NpZ24iLCJpc0NvbmZpcm1hdGlvbiIsIl9yZXQiLCJfdHlwZW9mIiwicmVzZXROZXdNZXNzYWdlQ291bnQiLCJnZXRWaWV3IiwicmVzdWx0IiwicHJldmlvdXNNZXNzYWdlIiwiY3VycmVudE1lc3NhZ2VDaGFpbklkIiwiZGF0ZSIsImNyZWF0ZWRfYXQiLCJzZXRIb3VycyIsInR5cGUiLCJ0b1N0cmluZyIsImFmdGVyRGF0ZSIsIm5leHRNZXNzYWdlIiwiaXNUYWlsIiwib2JqZWN0IiwiZGF0YSIsIm1lc3NhZ2VDaGFpbklkIiwiYWNjb3VudF9pZCIsIl91bmlxdWVJZCIsImlzSGVhZCIsIkNoYXRTZXJ2aWNlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/services/chat_service/chat_service.js\n");
/***/ }),
/***/ "./src/services/chat_utils/chat_utils.js":
/*!***********************************************!*\
!*** ./src/services/chat_utils/chat_utils.js ***!
\***********************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"buildFakeMessage\": () => (/* binding */ buildFakeMessage),\n/* harmony export */ \"maybeShowChatNotification\": () => (/* binding */ maybeShowChatNotification)\n/* harmony export */ });\n/* harmony import */ var _desktop_notification_utils_desktop_notification_utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../desktop_notification_utils/desktop_notification_utils.js */ \"./src/services/desktop_notification_utils/desktop_notification_utils.js\");\n\nvar maybeShowChatNotification = function maybeShowChatNotification(store, chat) {\n if (!chat.lastMessage) return;\n if (store.rootState.chats.currentChatId === chat.id && !document.hidden) return;\n if (store.rootState.users.currentUser.id === chat.lastMessage.account_id) return;\n var opts = {\n tag: chat.lastMessage.id,\n title: chat.account.name,\n icon: chat.account.profile_image_url,\n body: chat.lastMessage.content\n };\n if (chat.lastMessage.attachment && chat.lastMessage.attachment.type === 'image') {\n opts.image = chat.lastMessage.attachment.preview_url;\n }\n (0,_desktop_notification_utils_desktop_notification_utils_js__WEBPACK_IMPORTED_MODULE_0__.showDesktopNotification)(store.rootState, opts);\n};\nvar buildFakeMessage = function buildFakeMessage(_ref) {\n var content = _ref.content,\n chatId = _ref.chatId,\n attachments = _ref.attachments,\n userId = _ref.userId,\n idempotencyKey = _ref.idempotencyKey;\n var fakeMessage = {\n content: content,\n chat_id: chatId,\n created_at: new Date(),\n id: \"\".concat(new Date().getTime()),\n attachments: attachments,\n account_id: userId,\n idempotency_key: idempotencyKey,\n emojis: [],\n pending: true,\n isNormalized: true\n };\n if (attachments[0]) {\n fakeMessage.attachment = attachments[0];\n }\n return fakeMessage;\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvY2hhdF91dGlscy9jaGF0X3V0aWxzLmpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUFxRztBQUU5RixJQUFNQyx5QkFBeUIsR0FBRyxTQUE1QkEseUJBQXlCQSxDQUFJQyxLQUFLLEVBQUVDLElBQUksRUFBSztFQUN4RCxJQUFJLENBQUNBLElBQUksQ0FBQ0MsV0FBVyxFQUFFO0VBQ3ZCLElBQUlGLEtBQUssQ0FBQ0csU0FBUyxDQUFDQyxLQUFLLENBQUNDLGFBQWEsS0FBS0osSUFBSSxDQUFDSyxFQUFFLElBQUksQ0FBQ0MsUUFBUSxDQUFDQyxNQUFNLEVBQUU7RUFDekUsSUFBSVIsS0FBSyxDQUFDRyxTQUFTLENBQUNNLEtBQUssQ0FBQ0MsV0FBVyxDQUFDSixFQUFFLEtBQUtMLElBQUksQ0FBQ0MsV0FBVyxDQUFDUyxVQUFVLEVBQUU7RUFFMUUsSUFBTUMsSUFBSSxHQUFHO0lBQ1hDLEdBQUcsRUFBRVosSUFBSSxDQUFDQyxXQUFXLENBQUNJLEVBQUU7SUFDeEJRLEtBQUssRUFBRWIsSUFBSSxDQUFDYyxPQUFPLENBQUNDLElBQUk7SUFDeEJDLElBQUksRUFBRWhCLElBQUksQ0FBQ2MsT0FBTyxDQUFDRyxpQkFBaUI7SUFDcENDLElBQUksRUFBRWxCLElBQUksQ0FBQ0MsV0FBVyxDQUFDa0I7RUFDekIsQ0FBQztFQUVELElBQUluQixJQUFJLENBQUNDLFdBQVcsQ0FBQ21CLFVBQVUsSUFBSXBCLElBQUksQ0FBQ0MsV0FBVyxDQUFDbUIsVUFBVSxDQUFDQyxJQUFJLEtBQUssT0FBTyxFQUFFO0lBQy9FVixJQUFJLENBQUNXLEtBQUssR0FBR3RCLElBQUksQ0FBQ0MsV0FBVyxDQUFDbUIsVUFBVSxDQUFDRyxXQUFXO0VBQ3REO0VBRUExQixrSEFBdUIsQ0FBQ0UsS0FBSyxDQUFDRyxTQUFTLEVBQUVTLElBQUksQ0FBQztBQUNoRCxDQUFDO0FBRU0sSUFBTWEsZ0JBQWdCLEdBQUcsU0FBbkJBLGdCQUFnQkEsQ0FBQUMsSUFBQSxFQUFpRTtFQUFBLElBQTNETixPQUFPLEdBQUFNLElBQUEsQ0FBUE4sT0FBTztJQUFFTyxNQUFNLEdBQUFELElBQUEsQ0FBTkMsTUFBTTtJQUFFQyxXQUFXLEdBQUFGLElBQUEsQ0FBWEUsV0FBVztJQUFFQyxNQUFNLEdBQUFILElBQUEsQ0FBTkcsTUFBTTtJQUFFQyxjQUFjLEdBQUFKLElBQUEsQ0FBZEksY0FBYztFQUNyRixJQUFNQyxXQUFXLEdBQUc7SUFDbEJYLE9BQU8sRUFBUEEsT0FBTztJQUNQWSxPQUFPLEVBQUVMLE1BQU07SUFDZk0sVUFBVSxFQUFFLElBQUlDLElBQUksQ0FBQyxDQUFDO0lBQ3RCNUIsRUFBRSxLQUFBNkIsTUFBQSxDQUFLLElBQUlELElBQUksQ0FBQyxDQUFDLENBQUNFLE9BQU8sQ0FBQyxDQUFDLENBQUU7SUFDN0JSLFdBQVcsRUFBWEEsV0FBVztJQUNYakIsVUFBVSxFQUFFa0IsTUFBTTtJQUNsQlEsZUFBZSxFQUFFUCxjQUFjO0lBQy9CUSxNQUFNLEVBQUUsRUFBRTtJQUNWQyxPQUFPLEVBQUUsSUFBSTtJQUNiQyxZQUFZLEVBQUU7RUFDaEIsQ0FBQztFQUVELElBQUlaLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRTtJQUNsQkcsV0FBVyxDQUFDVixVQUFVLEdBQUdPLFdBQVcsQ0FBQyxDQUFDLENBQUM7RUFDekM7RUFFQSxPQUFPRyxXQUFXO0FBQ3BCLENBQUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL3NlcnZpY2VzL2NoYXRfdXRpbHMvY2hhdF91dGlscy5qcz8yZWE4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHNob3dEZXNrdG9wTm90aWZpY2F0aW9uIH0gZnJvbSAnLi4vZGVza3RvcF9ub3RpZmljYXRpb25fdXRpbHMvZGVza3RvcF9ub3RpZmljYXRpb25fdXRpbHMuanMnXG5cbmV4cG9ydCBjb25zdCBtYXliZVNob3dDaGF0Tm90aWZpY2F0aW9uID0gKHN0b3JlLCBjaGF0KSA9PiB7XG4gIGlmICghY2hhdC5sYXN0TWVzc2FnZSkgcmV0dXJuXG4gIGlmIChzdG9yZS5yb290U3RhdGUuY2hhdHMuY3VycmVudENoYXRJZCA9PT0gY2hhdC5pZCAmJiAhZG9jdW1lbnQuaGlkZGVuKSByZXR1cm5cbiAgaWYgKHN0b3JlLnJvb3RTdGF0ZS51c2Vycy5jdXJyZW50VXNlci5pZCA9PT0gY2hhdC5sYXN0TWVzc2FnZS5hY2NvdW50X2lkKSByZXR1cm5cblxuICBjb25zdCBvcHRzID0ge1xuICAgIHRhZzogY2hhdC5sYXN0TWVzc2FnZS5pZCxcbiAgICB0aXRsZTogY2hhdC5hY2NvdW50Lm5hbWUsXG4gICAgaWNvbjogY2hhdC5hY2NvdW50LnByb2ZpbGVfaW1hZ2VfdXJsLFxuICAgIGJvZHk6IGNoYXQubGFzdE1lc3NhZ2UuY29udGVudFxuICB9XG5cbiAgaWYgKGNoYXQubGFzdE1lc3NhZ2UuYXR0YWNobWVudCAmJiBjaGF0Lmxhc3RNZXNzYWdlLmF0dGFjaG1lbnQudHlwZSA9PT0gJ2ltYWdlJykge1xuICAgIG9wdHMuaW1hZ2UgPSBjaGF0Lmxhc3RNZXNzYWdlLmF0dGFjaG1lbnQucHJldmlld191cmxcbiAgfVxuXG4gIHNob3dEZXNrdG9wTm90aWZpY2F0aW9uKHN0b3JlLnJvb3RTdGF0ZSwgb3B0cylcbn1cblxuZXhwb3J0IGNvbnN0IGJ1aWxkRmFrZU1lc3NhZ2UgPSAoeyBjb250ZW50LCBjaGF0SWQsIGF0dGFjaG1lbnRzLCB1c2VySWQsIGlkZW1wb3RlbmN5S2V5IH0pID0+IHtcbiAgY29uc3QgZmFrZU1lc3NhZ2UgPSB7XG4gICAgY29udGVudCxcbiAgICBjaGF0X2lkOiBjaGF0SWQsXG4gICAgY3JlYXRlZF9hdDogbmV3IERhdGUoKSxcbiAgICBpZDogYCR7bmV3IERhdGUoKS5nZXRUaW1lKCl9YCxcbiAgICBhdHRhY2htZW50cyxcbiAgICBhY2NvdW50X2lkOiB1c2VySWQsXG4gICAgaWRlbXBvdGVuY3lfa2V5OiBpZGVtcG90ZW5jeUtleSxcbiAgICBlbW9qaXM6IFtdLFxuICAgIHBlbmRpbmc6IHRydWUsXG4gICAgaXNOb3JtYWxpemVkOiB0cnVlXG4gIH1cblxuICBpZiAoYXR0YWNobWVudHNbMF0pIHtcbiAgICBmYWtlTWVzc2FnZS5hdHRhY2htZW50ID0gYXR0YWNobWVudHNbMF1cbiAgfVxuXG4gIHJldHVybiBmYWtlTWVzc2FnZVxufVxuIl0sIm5hbWVzIjpbInNob3dEZXNrdG9wTm90aWZpY2F0aW9uIiwibWF5YmVTaG93Q2hhdE5vdGlmaWNhdGlvbiIsInN0b3JlIiwiY2hhdCIsImxhc3RNZXNzYWdlIiwicm9vdFN0YXRlIiwiY2hhdHMiLCJjdXJyZW50Q2hhdElkIiwiaWQiLCJkb2N1bWVudCIsImhpZGRlbiIsInVzZXJzIiwiY3VycmVudFVzZXIiLCJhY2NvdW50X2lkIiwib3B0cyIsInRhZyIsInRpdGxlIiwiYWNjb3VudCIsIm5hbWUiLCJpY29uIiwicHJvZmlsZV9pbWFnZV91cmwiLCJib2R5IiwiY29udGVudCIsImF0dGFjaG1lbnQiLCJ0eXBlIiwiaW1hZ2UiLCJwcmV2aWV3X3VybCIsImJ1aWxkRmFrZU1lc3NhZ2UiLCJfcmVmIiwiY2hhdElkIiwiYXR0YWNobWVudHMiLCJ1c2VySWQiLCJpZGVtcG90ZW5jeUtleSIsImZha2VNZXNzYWdlIiwiY2hhdF9pZCIsImNyZWF0ZWRfYXQiLCJEYXRlIiwiY29uY2F0IiwiZ2V0VGltZSIsImlkZW1wb3RlbmN5X2tleSIsImVtb2ppcyIsInBlbmRpbmciLCJpc05vcm1hbGl6ZWQiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/services/chat_utils/chat_utils.js\n");
/***/ }),
/***/ "./src/services/color_convert/color_convert.js":
/*!*****************************************************!*\
!*** ./src/services/color_convert/color_convert.js ***!
\*****************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"alphaBlend\": () => (/* binding */ alphaBlend),\n/* harmony export */ \"alphaBlendLayers\": () => (/* binding */ alphaBlendLayers),\n/* harmony export */ \"consoleColor\": () => (/* binding */ consoleColor),\n/* harmony export */ \"getContrastRatio\": () => (/* binding */ getContrastRatio),\n/* harmony export */ \"getContrastRatioLayers\": () => (/* binding */ getContrastRatioLayers),\n/* harmony export */ \"getCssColor\": () => (/* binding */ getCssColor),\n/* harmony export */ \"getTextColor\": () => (/* binding */ getTextColor),\n/* harmony export */ \"hex2rgb\": () => (/* binding */ hex2rgb),\n/* harmony export */ \"invert\": () => (/* binding */ invert),\n/* harmony export */ \"mixrgb\": () => (/* binding */ mixrgb),\n/* harmony export */ \"relativeLuminance\": () => (/* binding */ relativeLuminance),\n/* harmony export */ \"rgb2hex\": () => (/* binding */ rgb2hex),\n/* harmony export */ \"rgba2css\": () => (/* binding */ rgba2css)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"./node_modules/@babel/runtime/helpers/esm/defineProperty.js\");\n/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ \"./node_modules/@babel/runtime/helpers/esm/slicedToArray.js\");\n/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/typeof */ \"./node_modules/@babel/runtime/helpers/esm/typeof.js\");\n/* harmony import */ var chromatism__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! chromatism */ \"./node_modules/chromatism/dist/chromatism.cjs.js\");\n\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\n// useful for visualizing color when debugging\nvar consoleColor = function consoleColor(color) {\n return console.log('%c##########', 'background: ' + color + '; color: ' + color);\n};\n\n/**\n * Convert r, g, b values into hex notation. All components are [0-255]\n *\n * @param {Number|String|Object} r - Either red component, {r,g,b} object, or hex string\n * @param {Number} [g] - Green component\n * @param {Number} [b] - Blue component\n */\nvar rgb2hex = function rgb2hex(r, g, b) {\n if (r === null || typeof r === 'undefined') {\n return undefined;\n }\n // TODO: clean up this mess\n if (r[0] === '#' || r === 'transparent') {\n return r;\n }\n if ((0,_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(r) === 'object') {\n var _r = r;\n r = _r.r;\n g = _r.g;\n b = _r.b;\n }\n var _map = [r, g, b].map(function (val) {\n val = Math.ceil(val);\n val = val < 0 ? 0 : val;\n val = val > 255 ? 255 : val;\n return val;\n });\n var _map2 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(_map, 3);\n r = _map2[0];\n g = _map2[1];\n b = _map2[2];\n return \"#\".concat(((1 << 24) + (r << 16) + (g << 8) + b).toString(16).slice(1));\n};\n\n/**\n * Converts 8-bit RGB component into linear component\n * https://www.w3.org/TR/2008/REC-WCAG20-20081211/#relativeluminancedef\n * https://www.w3.org/TR/2008/REC-WCAG20-20081211/relative-luminance.xml\n * https://en.wikipedia.org/wiki/SRGB#The_reverse_transformation\n *\n * @param {Number} bit - color component [0..255]\n * @returns {Number} linear component [0..1]\n */\nvar c2linear = function c2linear(bit) {\n // W3C gives 0.03928 while wikipedia states 0.04045\n // what those magical numbers mean - I don't know.\n // something about gamma-correction, i suppose.\n // Sticking with W3C example.\n var c = bit / 255;\n if (c < 0.03928) {\n return c / 12.92;\n } else {\n return Math.pow((c + 0.055) / 1.055, 2.4);\n }\n};\n\n/**\n * Converts sRGB into linear RGB\n * @param {Object} srgb - sRGB color\n * @returns {Object} linear rgb color\n */\nvar srgbToLinear = function srgbToLinear(srgb) {\n return 'rgb'.split('').reduce(function (acc, c) {\n acc[c] = c2linear(srgb[c]);\n return acc;\n }, {});\n};\n\n/**\n * Calculates relative luminance for given color\n * https://www.w3.org/TR/2008/REC-WCAG20-20081211/#relativeluminancedef\n * https://www.w3.org/TR/2008/REC-WCAG20-20081211/relative-luminance.xml\n *\n * @param {Object} srgb - sRGB color\n * @returns {Number} relative luminance\n */\nvar relativeLuminance = function relativeLuminance(srgb) {\n var _srgbToLinear = srgbToLinear(srgb),\n r = _srgbToLinear.r,\n g = _srgbToLinear.g,\n b = _srgbToLinear.b;\n return 0.2126 * r + 0.7152 * g + 0.0722 * b;\n};\n\n/**\n * Generates color ratio between two colors. Order is unimporant\n * https://www.w3.org/TR/2008/REC-WCAG20-20081211/#contrast-ratiodef\n *\n * @param {Object} a - sRGB color\n * @param {Object} b - sRGB color\n * @returns {Number} color ratio\n */\nvar getContrastRatio = function getContrastRatio(a, b) {\n var la = relativeLuminance(a);\n var lb = relativeLuminance(b);\n var _ref = la > lb ? [la, lb] : [lb, la],\n _ref2 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(_ref, 2),\n l1 = _ref2[0],\n l2 = _ref2[1];\n return (l1 + 0.05) / (l2 + 0.05);\n};\n\n/**\n * Same as `getContrastRatio` but for multiple layers in-between\n *\n * @param {Object} text - text color (topmost layer)\n * @param {[Object, Number]} layers[] - layers between text and bedrock\n * @param {Object} bedrock - layer at the very bottom\n */\nvar getContrastRatioLayers = function getContrastRatioLayers(text, layers, bedrock) {\n return getContrastRatio(alphaBlendLayers(bedrock, layers), text);\n};\n\n/**\n * This performs alpha blending between solid background and semi-transparent foreground\n *\n * @param {Object} fg - top layer color\n * @param {Number} fga - top layer's alpha\n * @param {Object} bg - bottom layer color\n * @returns {Object} sRGB of resulting color\n */\nvar alphaBlend = function alphaBlend(fg, fga, bg) {\n if (fga === 1 || typeof fga === 'undefined') return fg;\n return 'rgb'.split('').reduce(function (acc, c) {\n // Simplified https://en.wikipedia.org/wiki/Alpha_compositing#Alpha_blending\n // for opaque bg and transparent fg\n acc[c] = fg[c] * fga + bg[c] * (1 - fga);\n return acc;\n }, {});\n};\n\n/**\n * Same as `alphaBlend` but for multiple layers in-between\n *\n * @param {Object} bedrock - layer at the very bottom\n * @param {[Object, Number]} layers[] - layers between text and bedrock\n */\nvar alphaBlendLayers = function alphaBlendLayers(bedrock, layers) {\n return layers.reduce(function (acc, _ref3) {\n var _ref4 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(_ref3, 2),\n color = _ref4[0],\n opacity = _ref4[1];\n return alphaBlend(color, opacity, acc);\n }, bedrock);\n};\nvar invert = function invert(rgb) {\n return 'rgb'.split('').reduce(function (acc, c) {\n acc[c] = 255 - rgb[c];\n return acc;\n }, {});\n};\n\n/**\n * Converts #rrggbb hex notation into an {r, g, b} object\n *\n * @param {String} hex - #rrggbb string\n * @returns {Object} rgb representation of the color, values are 0-255\n */\nvar hex2rgb = function hex2rgb(hex) {\n var result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex);\n return result ? {\n r: parseInt(result[1], 16),\n g: parseInt(result[2], 16),\n b: parseInt(result[3], 16)\n } : null;\n};\n\n/**\n * Old somewhat weird function for mixing two colors together\n *\n * @param {Object} a - one color (rgb)\n * @param {Object} b - other color (rgb)\n * @returns {Object} result\n */\nvar mixrgb = function mixrgb(a, b) {\n return 'rgb'.split('').reduce(function (acc, k) {\n acc[k] = (a[k] + b[k]) / 2;\n return acc;\n }, {});\n};\n/**\n * Converts rgb object into a CSS rgba() color\n *\n * @param {Object} color - rgb\n * @returns {String} CSS rgba() color\n */\nvar rgba2css = function rgba2css(rgba) {\n return \"rgba(\".concat(Math.floor(rgba.r), \", \").concat(Math.floor(rgba.g), \", \").concat(Math.floor(rgba.b), \", \").concat(rgba.a, \")\");\n};\n\n/**\n * Get text color for given background color and intended text color\n * This checks if text and background don't have enough color and inverts\n * text color's lightness if needed. If text color is still not enough it\n * will fall back to black or white\n *\n * @param {Object} bg - background color\n * @param {Object} text - intended text color\n * @param {Boolean} preserve - try to preserve intended text color's hue/saturation (i.e. no BW)\n */\nvar getTextColor = function getTextColor(bg, text, preserve) {\n var contrast = getContrastRatio(bg, text);\n if (contrast < 4.5) {\n var base = typeof text.a !== 'undefined' ? {\n a: text.a\n } : {};\n var result = Object.assign(base, (0,chromatism__WEBPACK_IMPORTED_MODULE_3__.invertLightness)(text).rgb);\n if (!preserve && getContrastRatio(bg, result) < 4.5) {\n // B&W\n return (0,chromatism__WEBPACK_IMPORTED_MODULE_3__.contrastRatio)(bg, text).rgb;\n }\n // Inverted color\n return result;\n }\n return text;\n};\n\n/**\n * Converts color to CSS Color value\n *\n * @param {Object|String} input - color\n * @param {Number} [a] - alpha value\n * @returns {String} a CSS Color value\n */\nvar getCssColor = function getCssColor(input, a) {\n var rgb = {};\n if ((0,_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(input) === 'object') {\n rgb = input;\n } else if (typeof input === 'string') {\n if (input.startsWith('#')) {\n rgb = hex2rgb(input);\n } else {\n return input;\n }\n }\n return rgba2css(_objectSpread(_objectSpread({}, rgb), {}, {\n a: a\n }));\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvY29sb3JfY29udmVydC9jb2xvcl9jb252ZXJ0LmpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBMkQ7O0FBRTNEO0FBQ08sSUFBTUUsWUFBWSxHQUFHLFNBQWZBLFlBQVlBLENBQUlDLEtBQUs7RUFBQSxPQUFLQyxPQUFPLENBQUNDLEdBQUcsQ0FBQyxjQUFjLEVBQUUsY0FBYyxHQUFHRixLQUFLLEdBQUcsV0FBVyxHQUFHQSxLQUFLLENBQUM7QUFBQTs7QUFFaEg7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyxJQUFNRyxPQUFPLEdBQUcsU0FBVkEsT0FBT0EsQ0FBSUMsQ0FBQyxFQUFFQyxDQUFDLEVBQUVDLENBQUMsRUFBSztFQUNsQyxJQUFJRixDQUFDLEtBQUssSUFBSSxJQUFJLE9BQU9BLENBQUMsS0FBSyxXQUFXLEVBQUU7SUFDMUMsT0FBT0csU0FBUztFQUNsQjtFQUNBO0VBQ0EsSUFBSUgsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsSUFBSUEsQ0FBQyxLQUFLLGFBQWEsRUFBRTtJQUN2QyxPQUFPQSxDQUFDO0VBQ1Y7RUFDQSxJQUFJSSx5RUFBQSxDQUFPSixDQUFDLE1BQUssUUFBUSxFQUFFO0lBQUEsSUFBQUssRUFBQSxHQUNWTCxDQUFDO0lBQWJBLENBQUMsR0FBQUssRUFBQSxDQUFETCxDQUFDO0lBQUVDLENBQUMsR0FBQUksRUFBQSxDQUFESixDQUFDO0lBQUVDLENBQUMsR0FBQUcsRUFBQSxDQUFESCxDQUFDO0VBQ1o7RUFBQyxJQUFBSSxJQUFBLEdBQ1csQ0FBQ04sQ0FBQyxFQUFFQyxDQUFDLEVBQUVDLENBQUMsQ0FBQyxDQUFDSyxHQUFHLENBQUMsVUFBQUMsR0FBRyxFQUFJO0lBQy9CQSxHQUFHLEdBQUdDLElBQUksQ0FBQ0MsSUFBSSxDQUFDRixHQUFHLENBQUM7SUFDcEJBLEdBQUcsR0FBR0EsR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUdB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LElBQUlqQyxnQkFBZ0IsQ0FBQ2dCLEVBQUUsRUFBRVEsTUFBTSxDQUFDLEdBQUcsR0FBRyxFQUFFO01BQ25EO01BQ0EsT0FBT3pELHlEQUFhLENBQUNpRCxFQUFFLEVBQUVQLElBQUksQ0FBQyxDQUFDWSxHQUFHO0lBQ3BDO0lBQ0E7SUFDQSxPQUFPRyxNQUFNO0VBQ2Y7RUFDQSxPQUFPZixJQUFJO0FBQ2IsQ0FBQzs7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLElBQU02QixXQUFXLEdBQUcsU0FBZEEsV0FBV0EsQ0FBSUMsS0FBSyxFQUFFdEMsQ0FBQyxFQUFLO0VBQ3ZDLElBQUlvQixHQUFHLEdBQUcsQ0FBQyxDQUFDO0VBQ1osSUFBSTVDLHlFQUFBLENBQU84RCxLQUFLLE1BQUssUUFBUSxFQUFFO0lBQzdCbEIsR0FBRyxHQUFHa0IsS0FBSztFQUNiLENBQUMsTUFBTSxJQUFJLE9BQU9BLEtBQUssS0FBSyxRQUFRLEVBQUU7SUFDcEMsSUFBSUEsS0FBSyxDQUFDQyxVQUFVLENBQUMsR0FBRyxDQUFDLEVBQUU7TUFDekJuQixHQUFHLEdBQUdDLE9BQU8sQ0FBQ2lCLEtBQUssQ0FBQztJQUN0QixDQUFDLE1BQU07TUFDTCxPQUFPQSxLQUFLO0lBQ2Q7RUFDRjtFQUNBLE9BQU9WLFFBQVEsQ0FBQVksYUFBQSxDQUFBQSxhQUFBLEtBQU1wQixHQUFHO0lBQUVwQixDQUFDLEVBQURBO0VBQUMsRUFBRSxDQUFDO0FBQ2hDLENBQUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL3NlcnZpY2VzL2NvbG9yX2NvbnZlcnQvY29sb3JfY29udmVydC5qcz83ZDU2Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGludmVydExpZ2h0bmVzcywgY29udHJhc3RSYXRpbyB9IGZyb20gJ2Nocm9tYXRpc20nXG5cbi8vIHVzZWZ1bCBmb3IgdmlzdWFsaXppbmcgY29sb3Igd2hlbiBkZWJ1Z2dpbmdcbmV4cG9ydCBjb25zdCBjb25zb2xlQ29sb3IgPSAoY29sb3IpID0+IGNvbnNvbGUubG9nKCclYyMjIyMjIyMjIyMnLCAnYmFja2dyb3VuZDogJyArIGNvbG9yICsgJzsgY29sb3I6ICcgKyBjb2xvcilcblxuLyoqXG4gKiBDb252ZXJ0IHIsIGcsIGIgdmFsdWVzIGludG8gaGV4IG5vdGF0aW9uLiBBbGwgY29tcG9uZW50cyBhcmUgWzAtMjU1XVxuICpcbiAqIEBwYXJhbSB7TnVtYmVyfFN0cmluZ3xPYmplY3R9IHIgLSBFaXRoZXIgcmVkIGNvbXBvbmVudCwge3IsZyxifSBvYmplY3QsIG9yIGhleCBzdHJpbmdcbiAqIEBwYXJhbSB7TnVtYmVyfSBbZ10gLSBHcmVlbiBjb21wb25lbnRcbiAqIEBwYXJhbSB7TnVtYmVyfSBbYl0gLSBCbHVlIGNvbXBvbmVudFxuICovXG5leHBvcnQgY29uc3QgcmdiMmhleCA9IChyLCBnLCBiKSA9PiB7XG4gIGlmIChyID09PSBudWxsIHx8IHR5cGVvZiByID09PSAndW5kZWZpbmVkJykge1xuICAgIHJldHVybiB1bmRlZmluZWRcbiAgfVxuICAvLyBUT0RPOiBjbGVhbiB1cCB0aGlzIG1lc3NcbiAgaWYgKHJbMF0gPT09ICcjJyB8fCByID09PSAndHJhbnNwYXJlbnQnKSB7XG4gICAgcmV0dXJuIHJcbiAgfVxuICBpZiAodHlwZW9mIHIgPT09ICdvYmplY3QnKSB7XG4gICAgKHsgciwgZywgYiB9ID0gcilcbiAgfVxuICBbciwgZywgYl0gPSBbciwgZywgYl0ubWFwKHZhbCA9PiB7XG4gICAgdmFsID0gTWF0aC5jZWlsKHZhbClcbiAgICB2YWwgPSB2YWwgPCAwID8gMCA6IHZhbFxuICAgIHZhbCA9IHZhbCA+IDI1NSA/IDI1NSA6IHZhbFxuICAgIHJldHVybiB2YWxcbiAgfSlcbiAgcmV0dXJuIGAjJHsoKDEgPDwgMjQpICsgKHIgPDwgMTYpICsgKGcgPDwgOCkgKyBiKS50b1N0cmluZygxNikuc2xpY2UoMSl9YFxufVxuXG4vKipcbiAqIENvbnZlcnRzIDgtYml0IFJHQiBjb21wb25lbnQgaW50byBsaW5lYXIgY29tcG9uZW50XG4gKiBodHRwczovL3d3dy53My5vcmcvVFIvMjAwOC9SRUMtV0NBRzIwLTIwMDgxMjExLyNyZWxhdGl2ZWx1bWluYW5jZWRlZlxuICogaHR0cHM6Ly93d3cudzMub3JnL1RSLzIwMDgvUkVDLVdDQUcyMC0yMDA4MTIxMS9yZWxhdGl2ZS1sdW1pbmFuY2UueG1sXG4gKiBodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9TUkdCI1RoZV9yZXZlcnNlX3RyYW5zZm9ybWF0aW9uXG4gKlxuICogQHBhcmFtIHtOdW1iZXJ9IGJpdCAtIGNvbG9yIGNvbXBvbmVudCBbMC4uMjU1XVxuICogQHJldHVybnMge051bWJlcn0gbGluZWFyIGNvbXBvbmVudCBbMC4uMV1cbiAqL1xuY29uc3QgYzJsaW5lYXIgPSAoYml0KSA9PiB7XG4gIC8vIFczQyBnaXZlcyAwLjAzOTI4IHdoaWxlIHdpa2lwZWRpYSBzdGF0ZXMgMC4wNDA0NVxuICAvLyB3aGF0IHRob3NlIG1hZ2ljYWwgbnVtYmVycyBtZWFuIC0gSSBkb24ndCBrbm93LlxuICAvLyBzb21ldGhpbmcgYWJvdXQgZ2FtbWEtY29ycmVjdGlvbiwgaSBzdXBwb3NlLlxuICAvLyBTdGlja2luZyB3aXRoIFczQyBleGFtcGxlLlxuICBjb25zdCBjID0gYml0IC8gMjU1XG4gIGlmIChjIDwgMC4wMzkyOCkge1xuICAgIHJldHVybiBjIC8gMTIuOTJcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gTWF0aC5wb3coKGMgKyAwLjA1NSkgLyAxLjA1NSwgMi40KVxuICB9XG59XG5cbi8qKlxuICogQ29udmVydHMgc1JHQiBpbnRvIGxpbmVhciBSR0JcbiAqIEBwYXJhbSB7T2JqZWN0fSBzcmdiIC0gc1JHQiBjb2xvclxuICogQHJldHVybnMge09iamVjdH0gbGluZWFyIHJnYiBjb2xvclxuICovXG5jb25zdCBzcmdiVG9MaW5lYXIgPSAoc3JnYikgPT4ge1xuICByZXR1cm4gJ3JnYicuc3BsaXQoJycpLnJlZHVjZSgoYWNjLCBjKSA9PiB7IGFjY1tjXSA9IGMybGluZWFyKHNyZ2JbY10pOyByZXR1cm4gYWNjIH0sIHt9KVxufVxuXG4vKipcbiAqIENhbGN1bGF0ZXMgcmVsYXRpdmUgbHVtaW5hbmNlIGZvciBnaXZlbiBjb2xvclxuICogaHR0cHM6Ly93d3cudzMub3JnL1RSLzIwMDgvUkVDLVdDQUcyMC0yMDA4MTIxMS8jcmVsYXRpdmVsdW1pbmFuY2VkZWZcbiAqIGh0dHBzOi8vd3d3LnczLm9yZy9UUi8yMDA4L1JFQy1XQ0FHMjAtMjAwODEyMTEvcmVsYXRpdmUtbHVtaW5hbmNlLnhtbFxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSBzcmdiIC0gc1JHQiBjb2xvclxuICogQHJldHVybnMge051bWJlcn0gcmVsYXRpdmUgbHVtaW5hbmNlXG4gKi9cbmV4cG9ydCBjb25zdCByZWxhdGl2ZUx1bWluYW5jZSA9IChzcmdiKSA9PiB7XG4gIGNvbnN0IHsgciwgZywgYiB9ID0gc3JnYlRvTGluZWFyKHNyZ2IpXG4gIHJldHVybiAwLjIxMjYgKiByICsgMC43MTUyICogZyArIDAuMDcyMiAqIGJcbn1cblxuLyoqXG4gKiBHZW5lcmF0ZXMgY29sb3IgcmF0aW8gYmV0d2VlbiB0d28gY29sb3JzLiBPcmRlciBpcyB1bmltcG9yYW50XG4gKiBodHRwczovL3d3dy53My5vcmcvVFIvMjAwOC9SRUMtV0NBRzIwLTIwMDgxMjExLyNjb250cmFzdC1yYXRpb2RlZlxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSBhIC0gc1JHQiBjb2xvclxuICogQHBhcmFtIHtPYmplY3R9IGIgLSBzUkdCIGNvbG9yXG4gKiBAcmV0dXJucyB7TnVtYmVyfSBjb2xvciByYXRpb1xuICovXG5leHBvcnQgY29uc3QgZ2V0Q29udHJhc3RSYXRpbyA9IChhLCBiKSA9PiB7XG4gIGNvbnN0IGxhID0gcmVsYXRpdmVMdW1pbmFuY2UoYSlcbiAgY29uc3QgbGIgPSByZWxhdGl2ZUx1bWluYW5jZShiKVxuICBjb25zdCBbbDEsIGwyXSA9IGxhID4gbGIgPyBbbGEsIGxiXSA6IFtsYiwgbGFdXG5cbiAgcmV0dXJuIChsMSArIDAuMDUpIC8gKGwyICsgMC4wNSlcbn1cblxuLyoqXG4gKiBTYW1lIGFzIGBnZXRDb250cmFzdFJhdGlvYCBidXQgZm9yIG11bHRpcGxlIGxheWVycyBpbi1iZXR3ZWVuXG4gKlxuICogQHBhcmFtIHtPYmplY3R9IHRleHQgLSB0ZXh0IGNvbG9yICh0b3Btb3N0IGxheWVyKVxuICogQHBhcmFtIHtbT2JqZWN0LCBOdW1iZXJdfSBsYXllcnNbXSAtIGxheWVycyBiZXR3ZWVuIHRleHQgYW5kIGJlZHJvY2tcbiAqIEBwYXJhbSB7T2JqZWN0fSBiZWRyb2NrIC0gbGF5ZXIgYXQgdGhlIHZlcnkgYm90dG9tXG4gKi9cbmV4cG9ydCBjb25zdCBnZXRDb250cmFzdFJhdGlvTGF5ZXJzID0gKHRleHQsIGxheWVycywgYmVkcm9jaykgPT4ge1xuICByZXR1cm4gZ2V0Q29udHJhc3RSYXRpbyhhbHBoYUJsZW5kTGF5ZXJzKGJlZHJvY2ssIGxheWVycyksIHRleHQpXG59XG5cbi8qKlxuICogVGhpcyBwZXJmb3JtcyBhbHBoYSBibGVuZGluZyBiZXR3ZWVuIHNvbGlkIGJhY2tncm91bmQgYW5kIHNlbWktdHJhbnNwYXJlbnQgZm9yZWdyb3VuZFxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSBmZyAtIHRvcCBsYXllciBjb2xvclxuICogQHBhcmFtIHtOdW1iZXJ9IGZnYSAtIHRvcCBsYXllcidzIGFscGhhXG4gKiBAcGFyYW0ge09iamVjdH0gYmcgLSBib3R0b20gbGF5ZXIgY29sb3JcbiAqIEByZXR1cm5zIHtPYmplY3R9IHNSR0Igb2YgcmVzdWx0aW5nIGNvbG9yXG4gKi9cbmV4cG9ydCBjb25zdCBhbHBoYUJsZW5kID0gKGZnLCBmZ2EsIGJnKSA9PiB7XG4gIGlmIChmZ2EgPT09IDEgfHwgdHlwZW9mIGZnYSA9PT0gJ3VuZGVmaW5lZCcpIHJldHVybiBmZ1xuICByZXR1cm4gJ3JnYicuc3BsaXQoJycpLnJlZHVjZSgoYWNjLCBjKSA9PiB7XG4gICAgLy8gU2ltcGxpZmllZCBodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9BbHBoYV9jb21wb3NpdGluZyNBbHBoYV9ibGVuZGluZ1xuICAgIC8vIGZvciBvcGFxdWUgYmcgYW5kIHRyYW5zcGFyZW50IGZnXG4gICAgYWNjW2NdID0gKGZnW2NdICogZmdhICsgYmdbY10gKiAoMSAtIGZnYSkpXG4gICAgcmV0dXJuIGFjY1xuICB9LCB7fSlcbn1cblxuLyoqXG4gKiBTYW1lIGFzIGBhbHBoYUJsZW5kYCBidXQgZm9yIG11bHRpcGxlIGxheWVycyBpbi1iZXR3ZWVuXG4gKlxuICogQHBhcmFtIHtPYmplY3R9IGJlZHJvY2sgLSBsYXllciBhdCB0aGUgdmVyeSBib3R0b21cbiAqIEBwYXJhbSB7W09iamVjdCwgTnVtYmVyXX0gbGF5ZXJzW10gLSBsYXllcnMgYmV0d2VlbiB0ZXh0IGFuZCBiZWRyb2NrXG4gKi9cbmV4cG9ydCBjb25zdCBhbHBoYUJsZW5kTGF5ZXJzID0gKGJlZHJvY2ssIGxheWVycykgPT4gbGF5ZXJzLnJlZHVjZSgoYWNjLCBbY29sb3IsIG9wYWNpdHldKSA9PiB7XG4gIHJldHVybiBhbHBoYUJsZW5kKGNvbG9yLCBvcGFjaXR5LCBhY2MpXG59LCBiZWRyb2NrKVxuXG5leHBvcnQgY29uc3QgaW52ZXJ0ID0gKHJnYikgPT4ge1xuICByZXR1cm4gJ3JnYicuc3BsaXQoJycpLnJlZHVjZSgoYWNjLCBjKSA9PiB7XG4gICAgYWNjW2NdID0gMjU1IC0gcmdiW2NdXG4gICAgcmV0dXJuIGFjY1xuICB9LCB7fSlcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyAjcnJnZ2JiIGhleCBub3RhdGlvbiBpbnRvIGFuIHtyLCBnLCBifSBvYmplY3RcbiAqXG4gKiBAcGFyYW0ge1N0cmluZ30gaGV4IC0gI3JyZ2diYiBzdHJpbmdcbiAqIEByZXR1cm5zIHtPYmplY3R9IHJnYiByZXByZXNlbnRhdGlvbiBvZiB0aGUgY29sb3IsIHZhbHVlcyBhcmUgMC0yNTVcbiAqL1xuZXhwb3J0IGNvbnN0IGhleDJyZ2IgPSAoaGV4KSA9PiB7XG4gIGNvbnN0IHJlc3VsdCA9IC9eIz8oW2EtZlxcZF17Mn0pKFthLWZcXGRdezJ9KShbYS1mXFxkXXsyfSkkL2kuZXhlYyhoZXgpXG4gIHJldHVybiByZXN1bHRcbiAgICA/IHtcbiAgICAgICAgcjogcGFyc2VJbnQocmVzdWx0WzFdLCAxNiksXG4gICAgICAgIGc6IHBhcnNlSW50KHJlc3VsdFsyXSwgMTYpLFxuICAgICAgICBiOiBwYXJzZUludChyZXN1bHRbM10sIDE2KVxuICAgICAgfVxuICAgIDogbnVsbFxufVxuXG4vKipcbiAqIE9sZCBzb21ld2hhdCB3ZWlyZCBmdW5jdGlvbiBmb3IgbWl4aW5nIHR3byBjb2xvcnMgdG9nZXRoZXJcbiAqXG4gKiBAcGFyYW0ge09iamVjdH0gYSAtIG9uZSBjb2xvciAocmdiKVxuICogQHBhcmFtIHtPYmplY3R9IGIgLSBvdGhlciBjb2xvciAocmdiKVxuICogQHJldHVybnMge09iamVjdH0gcmVzdWx0XG4gKi9cbmV4cG9ydCBjb25zdCBtaXhyZ2IgPSAoYSwgYikgPT4ge1xuICByZXR1cm4gJ3JnYicuc3BsaXQoJycpLnJlZHVjZSgoYWNjLCBrKSA9PiB7XG4gICAgYWNjW2tdID0gKGFba10gKyBiW2tdKSAvIDJcbiAgICByZXR1cm4gYWNjXG4gIH0sIHt9KVxufVxuLyoqXG4gKiBDb252ZXJ0cyByZ2Igb2JqZWN0IGludG8gYSBDU1MgcmdiYSgpIGNvbG9yXG4gKlxuICogQHBhcmFtIHtPYmplY3R9IGNvbG9yIC0gcmdiXG4gKiBAcmV0dXJucyB7U3RyaW5nfSBDU1MgcmdiYSgpIGNvbG9yXG4gKi9cbmV4cG9ydCBjb25zdCByZ2JhMmNzcyA9IGZ1bmN0aW9uIChyZ2JhKSB7XG4gIHJldHVybiBgcmdiYSgke01hdGguZmxvb3IocmdiYS5yKX0sICR7TWF0aC5mbG9vcihyZ2JhLmcpfSwgJHtNYXRoLmZsb29yKHJnYmEuYil9LCAke3JnYmEuYX0pYFxufVxuXG4vKipcbiAqIEdldCB0ZXh0IGNvbG9yIGZvciBnaXZlbiBiYWNrZ3JvdW5kIGNvbG9yIGFuZCBpbnRlbmRlZCB0ZXh0IGNvbG9yXG4gKiBUaGlzIGNoZWNrcyBpZiB0ZXh0IGFuZCBiYWNrZ3JvdW5kIGRvbid0IGhhdmUgZW5vdWdoIGNvbG9yIGFuZCBpbnZlcnRzXG4gKiB0ZXh0IGNvbG9yJ3MgbGlnaHRuZXNzIGlmIG5lZWRlZC4gSWYgdGV4dCBjb2xvciBpcyBzdGlsbCBub3QgZW5vdWdoIGl0XG4gKiB3aWxsIGZhbGwgYmFjayB0byBibGFjayBvciB3aGl0ZVxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSBiZyAtIGJhY2tncm91bmQgY29sb3JcbiAqIEBwYXJhbSB7T2JqZWN0fSB0ZXh0IC0gaW50ZW5kZWQgdGV4dCBjb2xvclxuICogQHBhcmFtIHtCb29sZWFufSBwcmVzZXJ2ZSAtIHRyeSB0byBwcmVzZXJ2ZSBpbnRlbmRlZCB0ZXh0IGNvbG9yJ3MgaHVlL3NhdHVyYXRpb24gKGkuZS4gbm8gQlcpXG4gKi9cbmV4cG9ydCBjb25zdCBnZXRUZXh0Q29sb3IgPSBmdW5jdGlvbiAoYmcsIHRleHQsIHByZXNlcnZlKSB7XG4gIGNvbnN0IGNvbnRyYXN0ID0gZ2V0Q29udHJhc3RSYXRpbyhiZywgdGV4dClcblxuICBpZiAoY29udHJhc3QgPCA0LjUpIHtcbiAgICBjb25zdCBiYXNlID0gdHlwZW9mIHRleHQuYSAhPT0gJ3VuZGVmaW5lZCcgPyB7IGE6IHRleHQuYSB9IDoge31cbiAgICBjb25zdCByZXN1bHQgPSBPYmplY3QuYXNzaWduKGJhc2UsIGludmVydExpZ2h0bmVzcyh0ZXh0KS5yZ2IpXG4gICAgaWYgKCFwcmVzZXJ2ZSAmJiBnZXRDb250cmFzdFJhdGlvKGJnLCByZXN1bHQpIDwgNC41KSB7XG4gICAgICAvLyBCJldcbiAgICAgIHJldHVybiBjb250cmFzdFJhdGlvKGJnLCB0ZXh0KS5yZ2JcbiAgICB9XG4gICAgLy8gSW52ZXJ0ZWQgY29sb3JcbiAgICByZXR1cm4gcmVzdWx0XG4gIH1cbiAgcmV0dXJuIHRleHRcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBjb2xvciB0byBDU1MgQ29sb3IgdmFsdWVcbiAqXG4gKiBAcGFyYW0ge09iamVjdHxTdHJpbmd9IGlucHV0IC0gY29sb3JcbiAqIEBwYXJhbSB7TnVtYmVyfSBbYV0gLSBhbHBoYSB2YWx1ZVxuICogQHJldHVybnMge1N0cmluZ30gYSBDU1MgQ29sb3IgdmFsdWVcbiAqL1xuZXhwb3J0IGNvbnN0IGdldENzc0NvbG9yID0gKGlucHV0LCBhKSA9PiB7XG4gIGxldCByZ2IgPSB7fVxuICBpZiAodHlwZW9mIGlucHV0ID09PSAnb2JqZWN0Jykge1xuICAgIHJnYiA9IGlucHV0XG4gIH0gZWxzZSBpZiAodHlwZW9mIGlucHV0ID09PSAnc3RyaW5nJykge1xuICAgIGlmIChpbnB1dC5zdGFydHNXaXRoKCcjJykpIHtcbiAgICAgIHJnYiA9IGhleDJyZ2IoaW5wdXQpXG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBpbnB1dFxuICAgIH1cbiAgfVxuICByZXR1cm4gcmdiYTJjc3MoeyAuLi5yZ2IsIGEgfSlcbn1cbiJdLCJuYW1lcyI6WyJpbnZlcnRMaWdodG5lc3MiLCJjb250cmFzdFJhdGlvIiwiY29uc29sZUNvbG9yIiwiY29sb3IiLCJjb25zb2xlIiwibG9nIiwicmdiMmhleCIsInIiLCJnIiwiYiIsInVuZGVmaW5lZCIsIl90eXBlb2YiLCJfciIsIl9tYXAiLCJtYXAiLCJ2YWwiLCJNYXRoIiwiY2VpbCIsIl9tYXAyIiwiX3NsaWNlZFRvQXJyYXkiLCJjb25jYXQiLCJ0b1N0cmluZyIsInNsaWNlIiwiYzJsaW5lYXIiLCJiaXQiLCJjIiwicG93Iiwic3JnYlRvTGluZWFyIiwic3JnYiIsInNwbGl0IiwicmVkdWNlIiwiYWNjIiwicmVsYXRpdmVMdW1pbmFuY2UiLCJfc3JnYlRvTGluZWFyIiwiZ2V0Q29udHJhc3RSYXRpbyIsImEiLCJsYSIsImxiIiwiX3JlZiIsIl9yZWYyIiwibDEiLCJsMiIsImdldENvbnRyYXN0UmF0aW9MYXllcnMiLCJ0ZXh0IiwibGF5ZXJzIiwiYmVkcm9jayIsImFscGhhQmxlbmRMYXllcnMiLCJhbHBoYUJsZW5kIiwiZmciLCJmZ2EiLCJiZyIsIl9yZWYzIiwiX3JlZjQiLCJvcGFjaXR5IiwiaW52ZXJ0IiwicmdiIiwiaGV4MnJnYiIsImhleCIsInJlc3VsdCIsImV4ZWMiLCJwYXJzZUludCIsIm1peHJnYiIsImsiLCJyZ2JhMmNzcyIsInJnYmEiLCJmbG9vciIsImdldFRleHRDb2xvciIsInByZXNlcnZlIiwiY29udHJhc3QiLCJiYXNlIiwiT2JqZWN0IiwiYXNzaWduIiwiZ2V0Q3NzQ29sb3IiLCJpbnB1dCIsInN0YXJ0c1dpdGgiLCJfb2JqZWN0U3ByZWFkIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/services/color_convert/color_convert.js\n");
/***/ }),
/***/ "./src/services/completion/completion.js":
/*!***********************************************!*\
!*** ./src/services/completion/completion.js ***!
\***********************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"addPositionToWords\": () => (/* binding */ addPositionToWords),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__),\n/* harmony export */ \"replaceWord\": () => (/* binding */ replaceWord),\n/* harmony export */ \"splitByWhitespaceBoundary\": () => (/* binding */ splitByWhitespaceBoundary),\n/* harmony export */ \"wordAtPosition\": () => (/* binding */ wordAtPosition)\n/* harmony export */ });\n/* harmony import */ var lodash_find__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/find */ \"./node_modules/lodash/find.js\");\n/* harmony import */ var lodash_find__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_find__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var lodash_reduce__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! lodash/reduce */ \"./node_modules/lodash/reduce.js\");\n/* harmony import */ var lodash_reduce__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash_reduce__WEBPACK_IMPORTED_MODULE_1__);\n\n\nvar replaceWord = function replaceWord(str, toReplace, replacement) {\n return str.slice(0, toReplace.start) + replacement + str.slice(toReplace.end);\n};\nvar wordAtPosition = function wordAtPosition(str, pos) {\n var words = splitByWhitespaceBoundary(str);\n var wordsWithPosition = addPositionToWords(words);\n return lodash_find__WEBPACK_IMPORTED_MODULE_0___default()(wordsWithPosition, function (_ref) {\n var start = _ref.start,\n end = _ref.end;\n return start <= pos && end > pos;\n });\n};\nvar addPositionToWords = function addPositionToWords(words) {\n return lodash_reduce__WEBPACK_IMPORTED_MODULE_1___default()(words, function (result, word) {\n var data = {\n word: word,\n start: 0,\n end: word.length\n };\n if (result.length > 0) {\n var previous = result.pop();\n data.start += previous.end;\n data.end += previous.end;\n result.push(previous);\n }\n result.push(data);\n return result;\n }, []);\n};\nvar splitByWhitespaceBoundary = function splitByWhitespaceBoundary(str) {\n var result = [];\n var currentWord = '';\n for (var i = 0; i < str.length; i++) {\n var currentChar = str[i];\n // Starting a new word\n if (!currentWord) {\n currentWord = currentChar;\n continue;\n }\n // current character is whitespace while word isn't, or vice versa:\n // add our current word to results, start over the current word.\n if (!!currentChar.trim() !== !!currentWord.trim()) {\n result.push(currentWord);\n currentWord = currentChar;\n continue;\n }\n currentWord += currentChar;\n }\n // Add the last word we were working on\n if (currentWord) {\n result.push(currentWord);\n }\n return result;\n};\nvar completion = {\n wordAtPosition: wordAtPosition,\n addPositionToWords: addPositionToWords,\n splitByWhitespaceBoundary: splitByWhitespaceBoundary,\n replaceWord: replaceWord\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (completion);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvY29tcGxldGlvbi9jb21wbGV0aW9uLmpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0FBRU8sSUFBTUEsV0FBVyxHQUFHLFNBQWRBLFdBQVdBLENBQUlDLEdBQUcsRUFBRUMsU0FBUyxFQUFFQyxXQUFXLEVBQUs7RUFDMUQsT0FBT0YsR0FBRyxDQUFDRyxLQUFLLENBQUMsQ0FBQyxFQUFFRixTQUFTLENBQUNHLEtBQUssQ0FBQyxHQUFHRixXQUFXLEdBQUdGLEdBQUcsQ0FBQ0csS0FBSyxDQUFDRixTQUFTLENBQUNJLEdBQUcsQ0FBQztBQUMvRSxDQUFDO0FBRU0sSUFBTUMsY0FBYyxHQUFHLFNBQWpCQSxjQUFjQSxDQUFJTixHQUFHLEVBQUVPLEdBQUcsRUFBSztFQUMxQyxJQUFNQyxLQUFLLEdBQUdDLHlCQUF5QixDQUFDVCxHQUFHLENBQUM7RUFDNUMsSUFBTVUsaUJBQWlCLEdBQUdDLGtCQUFrQixDQUFDSCxLQUFLLENBQUM7RUFFbkQsT0FBT0ksa0RBQUEsQ0FBS0YsaUJBQWlCLEVBQUUsVUFBQUcsSUFBQTtJQUFBLElBQUdULEtBQUssR0FBQVMsSUFBQSxDQUFMVCxLQUFLO01BQUVDLEdBQUcsR0FBQVEsSUFBQSxDQUFIUixHQUFHO0lBQUEsT0FBT0QsS0FBSyxJQUFJRyxHQUFHLElBQUlGLEdBQUcsR0FBR0UsR0FBRztFQUFBLEVBQUM7QUFDL0UsQ0FBQztBQUVNLElBQU1JLGtCQUFrQixHQUFHLFNBQXJCQSxrQkFBa0JBLENBQUlILEtBQUssRUFBSztFQUMzQyxPQUFPTSxvREFBQSxDQUFPTixLQUFLLEVBQUUsVUFBQ08sTUFBTSxFQUFFQyxJQUFJLEVBQUs7SUFDckMsSUFBTUMsSUFBSSxHQUFHO01BQ1hELElBQUksRUFBSkEsSUFBSTtNQUNKWixLQUFLLEVBQUUsQ0FBQztNQUNSQyxHQUFHLEVBQUVXLElBQUksQ0FBQ0U7SUFDWixDQUFDO0lBRUQsSUFBSUgsTUFBTSxDQUFDRyxNQUFNLEdBQUcsQ0FBQyxFQUFFO01BQ3JCLElBQU1DLFFBQVEsR0FBR0osTUFBTSxDQUFDSyxHQUFHLENBQUMsQ0FBQztNQUU3QkgsSUFBSSxDQUFDYixLQUFLLElBQUllLFFBQVEsQ0FBQ2QsR0FBRztNQUMxQlksSUFBSSxDQUFDWixHQUFHLElBQUljLFFBQVEsQ0FBQ2QsR0FBRztNQUV4QlUsTUFBTSxDQUFDTSxJQUFJLENBQUNGLFFBQVEsQ0FBQztJQUN2QjtJQUVBSixNQUFNLENBQUNNLElBQUksQ0FBQ0osSUFBSSxDQUFDO0lBRWpCLE9BQU9GLE1BQU07RUFDZixDQUFDLEVBQUUsRUFBRSxDQUFDO0FBQ1IsQ0FBQztBQUVNLElBQU1OLHlCQUF5QixHQUFHLFNBQTVCQSx5QkFBeUJBLENBQUlULEdBQUcsRUFBSztFQUNoRCxJQUFNZSxNQUFNLEdBQUcsRUFBRTtFQUNqQixJQUFJTyxXQUFXLEdBQUcsRUFBRTtFQUNwQixLQUFLLElBQUlDLENBQUMsR0FBRyxDQUFDLEVBQUVBLENBQUMsR0FBR3ZCLEdBQUcsQ0FBQ2tCLE1BQU0sRUFBRUssQ0FBQyxFQUFFLEVBQUU7SUFDbkMsSUFBTUMsV0FBVyxHQUFHeEIsR0FBRyxDQUFDdUIsQ0FBQyxDQUFDO0lBQzFCO0lBQ0EsSUFBSSxDQUFDRCxXQUFXLEVBQUU7TUFDaEJBLFdBQVcsR0FBR0UsV0FBVztNQUN6QjtJQUNGO0lBQ0E7SUFDQTtJQUNBLElBQUksQ0FBQyxDQUFDQSxXQUFXLENBQUNDLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDSCxXQUFXLENBQUNHLElBQUksQ0FBQyxDQUFDLEVBQUU7TUFDakRWLE1BQU0sQ0FBQ00sSUFBSSxDQUFDQyxXQUFXLENBQUM7TUFDeEJBLFdBQVcsR0FBR0UsV0FBVztNQUN6QjtJQUNGO0lBQ0FGLFdBQVcsSUFBSUUsV0FBVztFQUM1QjtFQUNBO0VBQ0EsSUFBSUYsV0FBVyxFQUFFO0lBQ2ZQLE1BQU0sQ0FBQ00sSUFBSSxDQUFDQyxXQUFXLENBQUM7RUFDMUI7RUFDQSxPQUFPUCxNQUFNO0FBQ2YsQ0FBQztBQUVELElBQU1XLFVBQVUsR0FBRztFQUNqQnBCLGNBQWMsRUFBZEEsY0FBYztFQUNkSyxrQkFBa0IsRUFBbEJBLGtCQUFrQjtFQUNsQkYseUJBQXlCLEVBQXpCQSx5QkFBeUI7RUFDekJWLFdBQVcsRUFBWEE7QUFDRixDQUFDO0FBRUQsaUVBQWUyQixVQUFVIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9zZXJ2aWNlcy9jb21wbGV0aW9uL2NvbXBsZXRpb24uanM/MmYzNiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByZWR1Y2UsIGZpbmQgfSBmcm9tICdsb2Rhc2gnXG5cbmV4cG9ydCBjb25zdCByZXBsYWNlV29yZCA9IChzdHIsIHRvUmVwbGFjZSwgcmVwbGFjZW1lbnQpID0+IHtcbiAgcmV0dXJuIHN0ci5zbGljZSgwLCB0b1JlcGxhY2Uuc3RhcnQpICsgcmVwbGFjZW1lbnQgKyBzdHIuc2xpY2UodG9SZXBsYWNlLmVuZClcbn1cblxuZXhwb3J0IGNvbnN0IHdvcmRBdFBvc2l0aW9uID0gKHN0ciwgcG9zKSA9PiB7XG4gIGNvbnN0IHdvcmRzID0gc3BsaXRCeVdoaXRlc3BhY2VCb3VuZGFyeShzdHIpXG4gIGNvbnN0IHdvcmRzV2l0aFBvc2l0aW9uID0gYWRkUG9zaXRpb25Ub1dvcmRzKHdvcmRzKVxuXG4gIHJldHVybiBmaW5kKHdvcmRzV2l0aFBvc2l0aW9uLCAoeyBzdGFydCwgZW5kIH0pID0+IHN0YXJ0IDw9IHBvcyAmJiBlbmQgPiBwb3MpXG59XG5cbmV4cG9ydCBjb25zdCBhZGRQb3NpdGlvblRvV29yZHMgPSAod29yZHMpID0+IHtcbiAgcmV0dXJuIHJlZHVjZSh3b3JkcywgKHJlc3VsdCwgd29yZCkgPT4ge1xuICAgIGNvbnN0IGRhdGEgPSB7XG4gICAgICB3b3JkLFxuICAgICAgc3RhcnQ6IDAsXG4gICAgICBlbmQ6IHdvcmQubGVuZ3RoXG4gICAgfVxuXG4gICAgaWYgKHJlc3VsdC5sZW5ndGggPiAwKSB7XG4gICAgICBjb25zdCBwcmV2aW91cyA9IHJlc3VsdC5wb3AoKVxuXG4gICAgICBkYXRhLnN0YXJ0ICs9IHByZXZpb3VzLmVuZFxuICAgICAgZGF0YS5lbmQgKz0gcHJldmlvdXMuZW5kXG5cbiAgICAgIHJlc3VsdC5wdXNoKHByZXZpb3VzKVxuICAgIH1cblxuICAgIHJlc3VsdC5wdXNoKGRhdGEpXG5cbiAgICByZXR1cm4gcmVzdWx0XG4gIH0sIFtdKVxufVxuXG5leHBvcnQgY29uc3Qgc3BsaXRCeVdoaXRlc3BhY2VCb3VuZGFyeSA9IChzdHIpID0+IHtcbiAgY29uc3QgcmVzdWx0ID0gW11cbiAgbGV0IGN1cnJlbnRXb3JkID0gJydcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBzdHIubGVuZ3RoOyBpKyspIHtcbiAgICBjb25zdCBjdXJyZW50Q2hhciA9IHN0cltpXVxuICAgIC8vIFN0YXJ0aW5nIGEgbmV3IHdvcmRcbiAgICBpZiAoIWN1cnJlbnRXb3JkKSB7XG4gICAgICBjdXJyZW50V29yZCA9IGN1cnJlbnRDaGFyXG4gICAgICBjb250aW51ZVxuICAgIH1cbiAgICAvLyBjdXJyZW50IGNoYXJhY3RlciBpcyB3aGl0ZXNwYWNlIHdoaWxlIHdvcmQgaXNuJ3QsIG9yIHZpY2UgdmVyc2E6XG4gICAgLy8gYWRkIG91ciBjdXJyZW50IHdvcmQgdG8gcmVzdWx0cywgc3RhcnQgb3ZlciB0aGUgY3VycmVudCB3b3JkLlxuICAgIGlmICghIWN1cnJlbnRDaGFyLnRyaW0oKSAhPT0gISFjdXJyZW50V29yZC50cmltKCkpIHtcbiAgICAgIHJlc3VsdC5wdXNoKGN1cnJlbnRXb3JkKVxuICAgICAgY3VycmVudFdvcmQgPSBjdXJyZW50Q2hhclxuICAgICAgY29udGludWVcbiAgICB9XG4gICAgY3VycmVudFdvcmQgKz0gY3VycmVudENoYXJcbiAgfVxuICAvLyBBZGQgdGhlIGxhc3Qgd29yZCB3ZSB3ZXJlIHdvcmtpbmcgb25cbiAgaWYgKGN1cnJlbnRXb3JkKSB7XG4gICAgcmVzdWx0LnB1c2goY3VycmVudFdvcmQpXG4gIH1cbiAgcmV0dXJuIHJlc3VsdFxufVxuXG5jb25zdCBjb21wbGV0aW9uID0ge1xuICB3b3JkQXRQb3NpdGlvbixcbiAgYWRkUG9zaXRpb25Ub1dvcmRzLFxuICBzcGxpdEJ5V2hpdGVzcGFjZUJvdW5kYXJ5LFxuICByZXBsYWNlV29yZFxufVxuXG5leHBvcnQgZGVmYXVsdCBjb21wbGV0aW9uXG4iXSwibmFtZXMiOlsicmVwbGFjZVdvcmQiLCJzdHIiLCJ0b1JlcGxhY2UiLCJyZXBsYWNlbWVudCIsInNsaWNlIiwic3RhcnQiLCJlbmQiLCJ3b3JkQXRQb3NpdGlvbiIsInBvcyIsIndvcmRzIiwic3BsaXRCeVdoaXRlc3BhY2VCb3VuZGFyeSIsIndvcmRzV2l0aFBvc2l0aW9uIiwiYWRkUG9zaXRpb25Ub1dvcmRzIiwiX2ZpbmQiLCJfcmVmIiwiX3JlZHVjZSIsInJlc3VsdCIsIndvcmQiLCJkYXRhIiwibGVuZ3RoIiwicHJldmlvdXMiLCJwb3AiLCJwdXNoIiwiY3VycmVudFdvcmQiLCJpIiwiY3VycmVudENoYXIiLCJ0cmltIiwiY29tcGxldGlvbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/services/completion/completion.js\n");
/***/ }),
/***/ "./src/services/component_utils/component_utils.js":
/*!*********************************************************!*\
!*** ./src/services/component_utils/component_utils.js ***!
\*********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"getComponentOptions\": () => (/* binding */ getComponentOptions),\n/* harmony export */ \"getComponentProps\": () => (/* binding */ getComponentProps)\n/* harmony export */ });\n/* harmony import */ var lodash_isFunction__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/isFunction */ \"./node_modules/lodash/isFunction.js\");\n/* harmony import */ var lodash_isFunction__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_isFunction__WEBPACK_IMPORTED_MODULE_0__);\n\nvar getComponentOptions = function getComponentOptions(Component) {\n return lodash_isFunction__WEBPACK_IMPORTED_MODULE_0___default()(Component) ? Component.options : Component;\n};\nvar getComponentProps = function getComponentProps(Component) {\n return getComponentOptions(Component).props;\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvY29tcG9uZW50X3V0aWxzL2NvbXBvbmVudF91dGlscy5qcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQTBDO0FBRTFDLElBQU1DLG1CQUFtQixHQUFHLFNBQXRCQSxtQkFBbUJBLENBQUlDLFNBQVM7RUFBQSxPQUFNRix3REFBVSxDQUFDRSxTQUFTLENBQUMsR0FBSUEsU0FBUyxDQUFDQyxPQUFPLEdBQUdELFNBQVM7QUFBQTtBQUVsRyxJQUFNRSxpQkFBaUIsR0FBRyxTQUFwQkEsaUJBQWlCQSxDQUFJRixTQUFTO0VBQUEsT0FBS0QsbUJBQW1CLENBQUNDLFNBQVMsQ0FBQyxDQUFDRyxLQUFLO0FBQUEiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL3NlcnZpY2VzL2NvbXBvbmVudF91dGlscy9jb21wb25lbnRfdXRpbHMuanM/OTBhMCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgaXNGdW5jdGlvbiBmcm9tICdsb2Rhc2gvaXNGdW5jdGlvbidcblxuY29uc3QgZ2V0Q29tcG9uZW50T3B0aW9ucyA9IChDb21wb25lbnQpID0+IChpc0Z1bmN0aW9uKENvbXBvbmVudCkpID8gQ29tcG9uZW50Lm9wdGlvbnMgOiBDb21wb25lbnRcblxuY29uc3QgZ2V0Q29tcG9uZW50UHJvcHMgPSAoQ29tcG9uZW50KSA9PiBnZXRDb21wb25lbnRPcHRpb25zKENvbXBvbmVudCkucHJvcHNcblxuZXhwb3J0IHtcbiAgZ2V0Q29tcG9uZW50T3B0aW9ucyxcbiAgZ2V0Q29tcG9uZW50UHJvcHNcbn1cbiJdLCJuYW1lcyI6WyJpc0Z1bmN0aW9uIiwiZ2V0Q29tcG9uZW50T3B0aW9ucyIsIkNvbXBvbmVudCIsIm9wdGlvbnMiLCJnZXRDb21wb25lbnRQcm9wcyIsInByb3BzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/services/component_utils/component_utils.js\n");
/***/ }),
/***/ "./src/services/date_utils/date_utils.js":
/*!***********************************************!*\
!*** ./src/services/date_utils/date_utils.js ***!
\***********************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"DAY\": () => (/* binding */ DAY),\n/* harmony export */ \"HOUR\": () => (/* binding */ HOUR),\n/* harmony export */ \"MINUTE\": () => (/* binding */ MINUTE),\n/* harmony export */ \"MONTH\": () => (/* binding */ MONTH),\n/* harmony export */ \"SECOND\": () => (/* binding */ SECOND),\n/* harmony export */ \"WEEK\": () => (/* binding */ WEEK),\n/* harmony export */ \"YEAR\": () => (/* binding */ YEAR),\n/* harmony export */ \"relativeTime\": () => (/* binding */ relativeTime),\n/* harmony export */ \"relativeTimeShort\": () => (/* binding */ relativeTimeShort),\n/* harmony export */ \"secondsToUnit\": () => (/* binding */ secondsToUnit),\n/* harmony export */ \"unitToSeconds\": () => (/* binding */ unitToSeconds)\n/* harmony export */ });\nvar SECOND = 1000;\nvar MINUTE = 60 * SECOND;\nvar HOUR = 60 * MINUTE;\nvar DAY = 24 * HOUR;\nvar WEEK = 7 * DAY;\nvar MONTH = 30 * DAY;\nvar YEAR = 365.25 * DAY;\nvar relativeTime = function relativeTime(date) {\n var nowThreshold = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;\n if (typeof date === 'string') date = Date.parse(date);\n var round = Date.now() > date ? Math.floor : Math.ceil;\n var d = Math.abs(Date.now() - date);\n var r = {\n num: round(d / YEAR),\n key: 'time.unit.years'\n };\n if (d < nowThreshold * SECOND) {\n r.num = 0;\n r.key = 'time.now';\n } else if (d < MINUTE) {\n r.num = round(d / SECOND);\n r.key = 'time.unit.seconds';\n } else if (d < HOUR) {\n r.num = round(d / MINUTE);\n r.key = 'time.unit.minutes';\n } else if (d < DAY) {\n r.num = round(d / HOUR);\n r.key = 'time.unit.hours';\n } else if (d < WEEK) {\n r.num = round(d / DAY);\n r.key = 'time.unit.days';\n } else if (d < MONTH) {\n r.num = round(d / WEEK);\n r.key = 'time.unit.weeks';\n } else if (d < YEAR) {\n r.num = round(d / MONTH);\n r.key = 'time.unit.months';\n }\n return r;\n};\nvar relativeTimeShort = function relativeTimeShort(date) {\n var nowThreshold = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;\n var r = relativeTime(date, nowThreshold);\n r.key += '_short';\n return r;\n};\nvar unitToSeconds = function unitToSeconds(unit, amount) {\n switch (unit) {\n case 'minutes':\n return 0.001 * amount * MINUTE;\n case 'hours':\n return 0.001 * amount * HOUR;\n case 'days':\n return 0.001 * amount * DAY;\n }\n};\nvar secondsToUnit = function secondsToUnit(unit, amount) {\n switch (unit) {\n case 'minutes':\n return 1000 * amount / MINUTE;\n case 'hours':\n return 1000 * amount / HOUR;\n case 'days':\n return 1000 * amount / DAY;\n }\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvZGF0ZV91dGlscy9kYXRlX3V0aWxzLmpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0FBQU8sSUFBTUEsTUFBTSxHQUFHLElBQUk7QUFDbkIsSUFBTUMsTUFBTSxHQUFHLEVBQUUsR0FBR0QsTUFBTTtBQUMxQixJQUFNRSxJQUFJLEdBQUcsRUFBRSxHQUFHRCxNQUFNO0FBQ3hCLElBQU1FLEdBQUcsR0FBRyxFQUFFLEdBQUdELElBQUk7QUFDckIsSUFBTUUsSUFBSSxHQUFHLENBQUMsR0FBR0QsR0FBRztBQUNwQixJQUFNRSxLQUFLLEdBQUcsRUFBRSxHQUFHRixHQUFHO0FBQ3RCLElBQU1HLElBQUksR0FBRyxNQUFNLEdBQUdILEdBQUc7QUFFekIsSUFBTUksWUFBWSxHQUFHLFNBQWZBLFlBQVlBLENBQUlDLElBQUksRUFBdUI7RUFBQSxJQUFyQkMsWUFBWSxHQUFBQyxTQUFBLENBQUFDLE1BQUEsUUFBQUQsU0FBQSxRQUFBRSxTQUFBLEdBQUFGLFNBQUEsTUFBRyxDQUFDO0VBQ2pELElBQUksT0FBT0YsSUFBSSxLQUFLLFFBQVEsRUFBRUEsSUFBSSxHQUFHSyxJQUFJLENBQUNDLEtBQUssQ0FBQ04sSUFBSSxDQUFDO0VBQ3JELElBQU1PLEtBQUssR0FBR0YsSUFBSSxDQUFDRyxHQUFHLENBQUMsQ0FBQyxHQUFHUixJQUFJLEdBQUdTLElBQUksQ0FBQ0MsS0FBSyxHQUFHRCxJQUFJLENBQUNFLElBQUk7RUFDeEQsSUFBTUMsQ0FBQyxHQUFHSCxJQUFJLENBQUNJLEdBQUcsQ0FBQ1IsSUFBSSxDQUFDRyxHQUFHLENBQUMsQ0FBQyxHQUFHUixJQUFJLENBQUM7RUFDckMsSUFBTWMsQ0FBQyxHQUFHO0lBQUVDLEdBQUcsRUFBRVIsS0FBSyxDQUFDSyxDQUFDLEdBQUdkLElBQUksQ0FBQztJQUFFa0IsR0FBRyxFQUFFO0VBQWtCLENBQUM7RUFDMUQsSUFBSUosQ0FBQyxHQUFHWCxZQUFZLEdBQUdULE1BQU0sRUFBRTtJQUM3QnNCLENBQUMsQ0FBQ0MsR0FBRyxHQUFHLENBQUM7SUFDVEQsQ0FBQyxDQUFDRSxHQUFHLEdBQUcsVUFBVTtFQUNwQixDQUFDLE1BQU0sSUFBSUosQ0FBQyxHQUFHbkIsTUFBTSxFQUFFO0lBQ3JCcUIsQ0FBQyxDQUFDQyxHQUFHLEdBQUdSLEtBQUssQ0FBQ0ssQ0FBQyxHQUFHcEIsTUFBTSxDQUFDO0lBQ3pCc0IsQ0FBQyxDQUFDRSxHQUFHLEdBQUcsbUJBQW1CO0VBQzdCLENBQUMsTUFBTSxJQUFJSixDQUFDLEdBQUdsQixJQUFJLEVBQUU7SUFDbkJvQixDQUFDLENBQUNDLEdBQUcsR0FBR1IsS0FBSyxDQUFDSyxDQUFDLEdBQUduQixNQUFNLENBQUM7SUFDekJxQixDQUFDLENBQUNFLEdBQUcsR0FBRyxtQkFBbUI7RUFDN0IsQ0FBQyxNQUFNLElBQUlKLENBQUMsR0FBR2pCLEdBQUcsRUFBRTtJQUNsQm1CLENBQUMsQ0FBQ0MsR0FBRyxHQUFHUixLQUFLLENBQUNLLENBQUMsR0FBR2xCLElBQUksQ0FBQztJQUN2Qm9CLENBQUMsQ0FBQ0UsR0FBRyxHQUFHLGlCQUFpQjtFQUMzQixDQUFDLE1BQU0sSUFBSUosQ0FBQyxHQUFHaEIsSUFBSSxFQUFFO0lBQ25Ca0IsQ0FBQyxDQUFDQyxHQUFHLEdBQUdSLEtBQUssQ0FBQ0ssQ0FBQyxHQUFHakIsR0FBRyxDQUFDO0lBQ3RCbUIsQ0FBQyxDQUFDRSxHQUFHLEdBQUcsZ0JBQWdCO0VBQzFCLENBQUMsTUFBTSxJQUFJSixDQUFDLEdBQUdmLEtBQUssRUFBRTtJQUNwQmlCLENBQUMsQ0FBQ0MsR0FBRyxHQUFHUixLQUFLLENBQUNLLENBQUMsR0FBR2hCLElBQUksQ0FBQztJQUN2QmtCLENBQUMsQ0FBQ0UsR0FBRyxHQUFHLGlCQUFpQjtFQUMzQixDQUFDLE1BQU0sSUFBSUosQ0FBQyxHQUFHZCxJQUFJLEVBQUU7SUFDbkJnQixDQUFDLENBQUNDLEdBQUcsR0FBR1IsS0FBSyxDQUFDSyxDQUFDLEdBQUdmLEtBQUssQ0FBQztJQUN4QmlCLENBQUMsQ0FBQ0UsR0FBRyxHQUFHLGtCQUFrQjtFQUM1QjtFQUNBLE9BQU9GLENBQUM7QUFDVixDQUFDO0FBRU0sSUFBTUcsaUJBQWlCLEdBQUcsU0FBcEJBLGlCQUFpQkEsQ0FBSWpCLElBQUksRUFBdUI7RUFBQSxJQUFyQkMsWUFBWSxHQUFBQyxTQUFBLENBQUFDLE1BQUEsUUFBQUQsU0FBQSxRQUFBRSxTQUFBLEdBQUFGLFNBQUEsTUFBRyxDQUFDO0VBQ3RELElBQU1ZLENBQUMsR0FBR2YsWUFBWSxDQUFDQyxJQUFJLEVBQUVDLFlBQVksQ0FBQztFQUMxQ2EsQ0FBQyxDQUFDRSxHQUFHLElBQUksUUFBUTtFQUNqQixPQUFPRixDQUFDO0FBQ1YsQ0FBQztBQUVNLElBQU1JLGFBQWEsR0FBRyxTQUFoQkEsYUFBYUEsQ0FBSUMsSUFBSSxFQUFFQyxNQUFNLEVBQUs7RUFDN0MsUUFBUUQsSUFBSTtJQUNWLEtBQUssU0FBUztNQUFFLE9BQU8sS0FBSyxHQUFHQyxNQUFNLEdBQUczQixNQUFNO0lBQzlDLEtBQUssT0FBTztNQUFFLE9BQU8sS0FBSyxHQUFHMkIsTUFBTSxHQUFHMUIsSUFBSTtJQUMxQyxLQUFLLE1BQU07TUFBRSxPQUFPLEtBQUssR0FBRzBCLE1BQU0sR0FBR3pCLEdBQUc7RUFDMUM7QUFDRixDQUFDO0FBRU0sSUFBTTBCLGFBQWEsR0FBRyxTQUFoQkEsYUFBYUEsQ0FBSUYsSUFBSSxFQUFFQyxNQUFNLEVBQUs7RUFDN0MsUUFBUUQsSUFBSTtJQUNWLEtBQUssU0FBUztNQUFFLE9BQVEsSUFBSSxHQUFHQyxNQUFNLEdBQUkzQixNQUFNO0lBQy9DLEtBQUssT0FBTztNQUFFLE9BQVEsSUFBSSxHQUFHMkIsTUFBTSxHQUFJMUIsSUFBSTtJQUMzQyxLQUFLLE1BQU07TUFBRSxPQUFRLElBQUksR0FBRzBCLE1BQU0sR0FBSXpCLEdBQUc7RUFDM0M7QUFDRixDQUFDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9zZXJ2aWNlcy9kYXRlX3V0aWxzL2RhdGVfdXRpbHMuanM/NTRjNyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgU0VDT05EID0gMTAwMFxuZXhwb3J0IGNvbnN0IE1JTlVURSA9IDYwICogU0VDT05EXG5leHBvcnQgY29uc3QgSE9VUiA9IDYwICogTUlOVVRFXG5leHBvcnQgY29uc3QgREFZID0gMjQgKiBIT1VSXG5leHBvcnQgY29uc3QgV0VFSyA9IDcgKiBEQVlcbmV4cG9ydCBjb25zdCBNT05USCA9IDMwICogREFZXG5leHBvcnQgY29uc3QgWUVBUiA9IDM2NS4yNSAqIERBWVxuXG5leHBvcnQgY29uc3QgcmVsYXRpdmVUaW1lID0gKGRhdGUsIG5vd1RocmVzaG9sZCA9IDEpID0+IHtcbiAgaWYgKHR5cGVvZiBkYXRlID09PSAnc3RyaW5nJykgZGF0ZSA9IERhdGUucGFyc2UoZGF0ZSlcbiAgY29uc3Qgcm91bmQgPSBEYXRlLm5vdygpID4gZGF0ZSA/IE1hdGguZmxvb3IgOiBNYXRoLmNlaWxcbiAgY29uc3QgZCA9IE1hdGguYWJzKERhdGUubm93KCkgLSBkYXRlKVxuICBjb25zdCByID0geyBudW06IHJvdW5kKGQgLyBZRUFSKSwga2V5OiAndGltZS51bml0LnllYXJzJyB9XG4gIGlmIChkIDwgbm93VGhyZXNob2xkICogU0VDT05EKSB7XG4gICAgci5udW0gPSAwXG4gICAgci5rZXkgPSAndGltZS5ub3cnXG4gIH0gZWxzZSBpZiAoZCA8IE1JTlVURSkge1xuICAgIHIubnVtID0gcm91bmQoZCAvIFNFQ09ORClcbiAgICByLmtleSA9ICd0aW1lLnVuaXQuc2Vjb25kcydcbiAgfSBlbHNlIGlmIChkIDwgSE9VUikge1xuICAgIHIubnVtID0gcm91bmQoZCAvIE1JTlVURSlcbiAgICByLmtleSA9ICd0aW1lLnVuaXQubWludXRlcydcbiAgfSBlbHNlIGlmIChkIDwgREFZKSB7XG4gICAgci5udW0gPSByb3VuZChkIC8gSE9VUilcbiAgICByLmtleSA9ICd0aW1lLnVuaXQuaG91cnMnXG4gIH0gZWxzZSBpZiAoZCA8IFdFRUspIHtcbiAgICByLm51bSA9IHJvdW5kKGQgLyBEQVkpXG4gICAgci5rZXkgPSAndGltZS51bml0LmRheXMnXG4gIH0gZWxzZSBpZiAoZCA8IE1PTlRIKSB7XG4gICAgci5udW0gPSByb3VuZChkIC8gV0VFSylcbiAgICByLmtleSA9ICd0aW1lLnVuaXQud2Vla3MnXG4gIH0gZWxzZSBpZiAoZCA8IFlFQVIpIHtcbiAgICByLm51bSA9IHJvdW5kKGQgLyBNT05USClcbiAgICByLmtleSA9ICd0aW1lLnVuaXQubW9udGhzJ1xuICB9XG4gIHJldHVybiByXG59XG5cbmV4cG9ydCBjb25zdCByZWxhdGl2ZVRpbWVTaG9ydCA9IChkYXRlLCBub3dUaHJlc2hvbGQgPSAxKSA9PiB7XG4gIGNvbnN0IHIgPSByZWxhdGl2ZVRpbWUoZGF0ZSwgbm93VGhyZXNob2xkKVxuICByLmtleSArPSAnX3Nob3J0J1xuICByZXR1cm4gclxufVxuXG5leHBvcnQgY29uc3QgdW5pdFRvU2Vjb25kcyA9ICh1bml0LCBhbW91bnQpID0+IHtcbiAgc3dpdGNoICh1bml0KSB7XG4gICAgY2FzZSAnbWludXRlcyc6IHJldHVybiAwLjAwMSAqIGFtb3VudCAqIE1JTlVURVxuICAgIGNhc2UgJ2hvdXJzJzogcmV0dXJuIDAuMDAxICogYW1vdW50ICogSE9VUlxuICAgIGNhc2UgJ2RheXMnOiByZXR1cm4gMC4wMDEgKiBhbW91bnQgKiBEQVlcbiAgfVxufVxuXG5leHBvcnQgY29uc3Qgc2Vjb25kc1RvVW5pdCA9ICh1bml0LCBhbW91bnQpID0+IHtcbiAgc3dpdGNoICh1bml0KSB7XG4gICAgY2FzZSAnbWludXRlcyc6IHJldHVybiAoMTAwMCAqIGFtb3VudCkgLyBNSU5VVEVcbiAgICBjYXNlICdob3Vycyc6IHJldHVybiAoMTAwMCAqIGFtb3VudCkgLyBIT1VSXG4gICAgY2FzZSAnZGF5cyc6IHJldHVybiAoMTAwMCAqIGFtb3VudCkgLyBEQVlcbiAgfVxufVxuIl0sIm5hbWVzIjpbIlNFQ09ORCIsIk1JTlVURSIsIkhPVVIiLCJEQVkiLCJXRUVLIiwiTU9OVEgiLCJZRUFSIiwicmVsYXRpdmVUaW1lIiwiZGF0ZSIsIm5vd1RocmVzaG9sZCIsImFyZ3VtZW50cyIsImxlbmd0aCIsInVuZGVmaW5lZCIsIkRhdGUiLCJwYXJzZSIsInJvdW5kIiwibm93IiwiTWF0aCIsImZsb29yIiwiY2VpbCIsImQiLCJhYnMiLCJyIiwibnVtIiwia2V5IiwicmVsYXRpdmVUaW1lU2hvcnQiLCJ1bml0VG9TZWNvbmRzIiwidW5pdCIsImFtb3VudCIsInNlY29uZHNUb1VuaXQiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/services/date_utils/date_utils.js\n");
/***/ }),
/***/ "./src/services/desktop_notification_utils/desktop_notification_utils.js":
/*!*******************************************************************************!*\
!*** ./src/services/desktop_notification_utils/desktop_notification_utils.js ***!
\*******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"showDesktopNotification\": () => (/* binding */ showDesktopNotification)\n/* harmony export */ });\nvar showDesktopNotification = function showDesktopNotification(rootState, desktopNotificationOpts) {\n if (!('Notification' in window && window.Notification.permission === 'granted')) return;\n if (rootState.statuses.notifications.desktopNotificationSilence) {\n return;\n }\n var desktopNotification = new window.Notification(desktopNotificationOpts.title, desktopNotificationOpts);\n // Chrome is known for not closing notifications automatically\n // according to MDN, anyway.\n setTimeout(desktopNotification.close.bind(desktopNotification), 5000);\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvZGVza3RvcF9ub3RpZmljYXRpb25fdXRpbHMvZGVza3RvcF9ub3RpZmljYXRpb25fdXRpbHMuanMuanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFPLElBQU1BLHVCQUF1QixHQUFHLFNBQTFCQSx1QkFBdUJBLENBQUlDLFNBQVMsRUFBRUMsdUJBQXVCLEVBQUs7RUFDN0UsSUFBSSxFQUFFLGNBQWMsSUFBSUMsTUFBTSxJQUFJQSxNQUFNLENBQUNDLFlBQVksQ0FBQ0MsVUFBVSxLQUFLLFNBQVMsQ0FBQyxFQUFFO0VBQ2pGLElBQUlKLFNBQVMsQ0FBQ0ssUUFBUSxDQUFDQyxhQUFhLENBQUNDLDBCQUEwQixFQUFFO0lBQUU7RUFBTztFQUUxRSxJQUFNQyxtQkFBbUIsR0FBRyxJQUFJTixNQUFNLENBQUNDLFlBQVksQ0FBQ0YsdUJBQXVCLENBQUNRLEtBQUssRUFBRVIsdUJBQXVCLENBQUM7RUFDM0c7RUFDQTtFQUNBUyxVQUFVLENBQUNGLG1CQUFtQixDQUFDRyxLQUFLLENBQUNDLElBQUksQ0FBQ0osbUJBQW1CLENBQUMsRUFBRSxJQUFJLENBQUM7QUFDdkUsQ0FBQyIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvc2VydmljZXMvZGVza3RvcF9ub3RpZmljYXRpb25fdXRpbHMvZGVza3RvcF9ub3RpZmljYXRpb25fdXRpbHMuanM/NGJhMiJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3Qgc2hvd0Rlc2t0b3BOb3RpZmljYXRpb24gPSAocm9vdFN0YXRlLCBkZXNrdG9wTm90aWZpY2F0aW9uT3B0cykgPT4ge1xuICBpZiAoISgnTm90aWZpY2F0aW9uJyBpbiB3aW5kb3cgJiYgd2luZG93Lk5vdGlmaWNhdGlvbi5wZXJtaXNzaW9uID09PSAnZ3JhbnRlZCcpKSByZXR1cm5cbiAgaWYgKHJvb3RTdGF0ZS5zdGF0dXNlcy5ub3RpZmljYXRpb25zLmRlc2t0b3BOb3RpZmljYXRpb25TaWxlbmNlKSB7IHJldHVybiB9XG5cbiAgY29uc3QgZGVza3RvcE5vdGlmaWNhdGlvbiA9IG5ldyB3aW5kb3cuTm90aWZpY2F0aW9uKGRlc2t0b3BOb3RpZmljYXRpb25PcHRzLnRpdGxlLCBkZXNrdG9wTm90aWZpY2F0aW9uT3B0cylcbiAgLy8gQ2hyb21lIGlzIGtub3duIGZvciBub3QgY2xvc2luZyBub3RpZmljYXRpb25zIGF1dG9tYXRpY2FsbHlcbiAgLy8gYWNjb3JkaW5nIHRvIE1ETiwgYW55d2F5LlxuICBzZXRUaW1lb3V0KGRlc2t0b3BOb3RpZmljYXRpb24uY2xvc2UuYmluZChkZXNrdG9wTm90aWZpY2F0aW9uKSwgNTAwMClcbn1cbiJdLCJuYW1lcyI6WyJzaG93RGVza3RvcE5vdGlmaWNhdGlvbiIsInJvb3RTdGF0ZSIsImRlc2t0b3BOb3RpZmljYXRpb25PcHRzIiwid2luZG93IiwiTm90aWZpY2F0aW9uIiwicGVybWlzc2lvbiIsInN0YXR1c2VzIiwibm90aWZpY2F0aW9ucyIsImRlc2t0b3BOb3RpZmljYXRpb25TaWxlbmNlIiwiZGVza3RvcE5vdGlmaWNhdGlvbiIsInRpdGxlIiwic2V0VGltZW91dCIsImNsb3NlIiwiYmluZCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/services/desktop_notification_utils/desktop_notification_utils.js\n");
/***/ }),
/***/ "./src/services/entity_normalizer/entity_normalizer.service.js":
/*!*********************************************************************!*\
!*** ./src/services/entity_normalizer/entity_normalizer.service.js ***!
\*********************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"parseAttachment\": () => (/* binding */ parseAttachment),\n/* harmony export */ \"parseChat\": () => (/* binding */ parseChat),\n/* harmony export */ \"parseChatMessage\": () => (/* binding */ parseChatMessage),\n/* harmony export */ \"parseLinkHeaderPagination\": () => (/* binding */ parseLinkHeaderPagination),\n/* harmony export */ \"parseNotification\": () => (/* binding */ parseNotification),\n/* harmony export */ \"parseSource\": () => (/* binding */ parseSource),\n/* harmony export */ \"parseStatus\": () => (/* binding */ parseStatus),\n/* harmony export */ \"parseUser\": () => (/* binding */ parseUser)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"./node_modules/@babel/runtime/helpers/esm/defineProperty.js\");\n/* harmony import */ var escape_html__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! escape-html */ \"./node_modules/escape-html/index.js\");\n/* harmony import */ var escape_html__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(escape_html__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var parse_link_header__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! parse-link-header */ \"./node_modules/parse-link-header/index.js\");\n/* harmony import */ var parse_link_header__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(parse_link_header__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _notification_utils_notification_utils_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../notification_utils/notification_utils.js */ \"./src/services/notification_utils/notification_utils.js\");\n/* harmony import */ var punycode_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! punycode.js */ \"./node_modules/punycode.js/punycode.es6.js\");\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\n\n\n\n/** NOTICE! **\n * Do not initialize UI-generated data here.\n * It will override existing data.\n *\n * i.e. user.pinnedStatusIds was set to [] here\n * UI code would update it with data but upon next user fetch\n * it would be reverted back to []\n */\n\nvar qvitterStatusType = function qvitterStatusType(status) {\n if (status.is_post_verb) {\n return 'status';\n }\n if (status.retweeted_status) {\n return 'retweet';\n }\n if (typeof status.uri === 'string' && status.uri.match(/(fave|objectType=Favourite)/) || typeof status.text === 'string' && status.text.match(/favorited/)) {\n return 'favorite';\n }\n if (status.text.match(/deleted notice {{tag/) || status.qvitter_delete_notice) {\n return 'deletion';\n }\n if (status.text.match(/started following/) || status.activity_type === 'follow') {\n return 'follow';\n }\n return 'unknown';\n};\nvar parseUser = function parseUser(data) {\n var output = {};\n var masto = Object.prototype.hasOwnProperty.call(data, 'acct');\n // case for users in \"mentions\" property for statuses in MastoAPI\n var mastoShort = masto && !Object.prototype.hasOwnProperty.call(data, 'avatar');\n output.inLists = null;\n output.id = String(data.id);\n output._original = data; // used for server-side settings\n\n if (masto) {\n output.screen_name = data.acct;\n output.fqn = data.fqn;\n output.statusnet_profile_url = data.url;\n\n // There's nothing else to get\n if (mastoShort) {\n return output;\n }\n output.emoji = data.emojis;\n output.name = escape_html__WEBPACK_IMPORTED_MODULE_1___default()(data.display_name);\n output.name_html = output.name;\n output.name_unescaped = data.display_name;\n output.description = data.note;\n // TODO cleanup this shit, output.description is overriden with source data\n output.description_html = data.note;\n output.fields = data.fields;\n output.fields_html = data.fields.map(function (field) {\n return {\n name: escape_html__WEBPACK_IMPORTED_MODULE_1___default()(field.name),\n value: field.value\n };\n });\n output.fields_text = data.fields.map(function (field) {\n return {\n name: unescape(field.name.replace(/<[^>]*>/g, '')),\n value: unescape(field.value.replace(/<[^>]*>/g, ''))\n };\n });\n\n // Utilize avatar_static for gif avatars?\n output.profile_image_url = data.avatar;\n output.profile_image_url_original = data.avatar;\n\n // Same, utilize header_static?\n output.cover_photo = data.header;\n output.friends_count = data.following_count;\n output.bot = data.bot;\n if (data.pleroma) {\n if (data.pleroma.settings_store) {\n output.storage = data.pleroma.settings_store['pleroma-fe'];\n }\n var relationship = data.pleroma.relationship;\n output.background_image = data.pleroma.background_image;\n output.favicon = data.pleroma.favicon;\n output.token = data.pleroma.chat_token;\n if (relationship) {\n output.relationship = relationship;\n }\n output.allow_following_move = data.pleroma.allow_following_move;\n output.hide_follows = data.pleroma.hide_follows;\n output.hide_followers = data.pleroma.hide_followers;\n output.hide_follows_count = data.pleroma.hide_follows_count;\n output.hide_followers_count = data.pleroma.hide_followers_count;\n output.rights = {\n moderator: data.pleroma.is_moderator,\n admin: data.pleroma.is_admin\n };\n // TODO: Clean up in UI? This is duplication from what BE does for qvitterapi\n if (output.rights.admin) {\n output.role = 'admin';\n } else if (output.rights.moderator) {\n output.role = 'moderator';\n } else {\n output.role = 'member';\n }\n output.birthday = data.pleroma.birthday;\n if (data.pleroma.privileges) {\n output.privileges = data.pleroma.privileges;\n } else if (data.pleroma.is_admin) {\n output.privileges = ['users_read', 'users_manage_invites', 'users_manage_activation_state', 'users_manage_tags', 'users_manage_credentials', 'users_delete', 'messages_read', 'messages_delete', 'instances_delete', 'reports_manage_reports', 'moderation_log_read', 'announcements_manage_announcements', 'emoji_manage_emoji', 'statistics_read'];\n } else if (data.pleroma.is_moderator) {\n output.privileges = ['messages_delete', 'reports_manage_reports'];\n } else {\n output.privileges = [];\n }\n }\n if (data.source) {\n output.description = data.source.note;\n output.default_scope = data.source.privacy;\n output.fields = data.source.fields;\n if (data.source.pleroma) {\n output.no_rich_text = data.source.pleroma.no_rich_text;\n output.show_role = data.source.pleroma.show_role;\n output.discoverable = data.source.pleroma.discoverable;\n output.show_birthday = data.pleroma.show_birthday;\n }\n }\n\n // TODO: handle is_local\n output.is_local = !output.screen_name.includes('@');\n } else {\n output.screen_name = data.screen_name;\n output.name = data.name;\n output.name_html = data.name_html;\n output.description = data.description;\n output.description_html = data.description_html;\n output.profile_image_url = data.profile_image_url;\n output.profile_image_url_original = data.profile_image_url_original;\n output.cover_photo = data.cover_photo;\n output.friends_count = data.friends_count;\n\n // output.bot = ??? missing\n\n output.statusnet_profile_url = data.statusnet_profile_url;\n output.is_local = data.is_local;\n output.role = data.role;\n output.show_role = data.show_role;\n if (data.rights) {\n output.rights = {\n moderator: data.rights.delete_others_notice,\n admin: data.rights.admin\n };\n }\n output.no_rich_text = data.no_rich_text;\n output.default_scope = data.default_scope;\n output.hide_follows = data.hide_follows;\n output.hide_followers = data.hide_followers;\n output.hide_follows_count = data.hide_follows_count;\n output.hide_followers_count = data.hide_followers_count;\n output.background_image = data.background_image;\n // Websocket token\n output.token = data.token;\n\n // Convert relationsip data to expected format\n output.relationship = {\n muting: data.muted,\n blocking: data.statusnet_blocking,\n followed_by: data.follows_you,\n following: data.following\n };\n }\n output.created_at = new Date(data.created_at);\n output.locked = data.locked;\n output.followers_count = data.followers_count;\n output.statuses_count = data.statuses_count;\n if (data.pleroma) {\n output.follow_request_count = data.pleroma.follow_request_count;\n output.tags = data.pleroma.tags;\n\n // deactivated was changed to is_active in Pleroma 2.3.0\n // so check if is_active is present\n output.deactivated = typeof data.pleroma.is_active !== 'undefined' ? !data.pleroma.is_active // new backend\n : data.pleroma.deactivated; // old backend\n\n output.notification_settings = data.pleroma.notification_settings;\n output.unread_chat_count = data.pleroma.unread_chat_count;\n }\n output.tags = output.tags || [];\n output.rights = output.rights || {};\n output.notification_settings = output.notification_settings || {};\n\n // Convert punycode to unicode for UI\n output.screen_name_ui = output.screen_name;\n if (output.screen_name && output.screen_name.includes('@')) {\n var parts = output.screen_name.split('@');\n var unicodeDomain = punycode_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"].toUnicode(parts[1]);\n if (unicodeDomain !== parts[1]) {\n // Add some identifier so users can potentially spot spoofing attempts:\n // lain.com and xn--lin-6cd.com would appear identical otherwise.\n output.screen_name_ui_contains_non_ascii = true;\n output.screen_name_ui = [parts[0], unicodeDomain].join('@');\n } else {\n output.screen_name_ui_contains_non_ascii = false;\n }\n }\n return output;\n};\nvar parseAttachment = function parseAttachment(data) {\n var output = {};\n var masto = !Object.prototype.hasOwnProperty.call(data, 'oembed');\n if (masto) {\n // Not exactly same...\n output.mimetype = data.pleroma ? data.pleroma.mime_type : data.type;\n output.meta = data.meta; // not present in BE yet\n output.id = data.id;\n } else {\n output.mimetype = data.mimetype;\n // output.meta = ??? missing\n }\n\n output.url = data.url;\n output.large_thumb_url = data.preview_url;\n output.description = data.description;\n return output;\n};\nvar parseSource = function parseSource(data) {\n var output = {};\n output.text = data.text;\n output.spoiler_text = data.spoiler_text;\n output.content_type = data.content_type;\n return output;\n};\nvar parseStatus = function parseStatus(data) {\n var output = {};\n var masto = Object.prototype.hasOwnProperty.call(data, 'account');\n if (masto) {\n output.favorited = data.favourited;\n output.fave_num = data.favourites_count;\n output.repeated = data.reblogged;\n output.repeat_num = data.reblogs_count;\n output.bookmarked = data.bookmarked;\n output.type = data.reblog ? 'retweet' : 'status';\n output.nsfw = data.sensitive;\n output.raw_html = data.content;\n output.emojis = data.emojis;\n output.tags = data.tags;\n output.edited_at = data.edited_at;\n if (data.pleroma) {\n var pleroma = data.pleroma;\n output.text = pleroma.content ? data.pleroma.content['text/plain'] : data.content;\n output.summary = pleroma.spoiler_text ? data.pleroma.spoiler_text['text/plain'] : data.spoiler_text;\n output.statusnet_conversation_id = data.pleroma.conversation_id;\n output.is_local = pleroma.local;\n output.in_reply_to_screen_name = data.pleroma.in_reply_to_account_acct;\n output.thread_muted = pleroma.thread_muted;\n output.emoji_reactions = pleroma.emoji_reactions;\n output.parent_visible = pleroma.parent_visible === undefined ? true : pleroma.parent_visible;\n output.quote = pleroma.quote ? parseStatus(pleroma.quote) : undefined;\n output.quote_id = pleroma.quote_id ? pleroma.quote_id : output.quote ? output.quote.id : undefined;\n output.quote_url = pleroma.quote_url;\n output.quote_visible = pleroma.quote_visible;\n } else {\n output.text = data.content;\n output.summary = data.spoiler_text;\n }\n output.in_reply_to_status_id = data.in_reply_to_id;\n output.in_reply_to_user_id = data.in_reply_to_account_id;\n output.replies_count = data.replies_count;\n if (output.type === 'retweet') {\n output.retweeted_status = parseStatus(data.reblog);\n }\n output.summary_raw_html = escape_html__WEBPACK_IMPORTED_MODULE_1___default()(data.spoiler_text);\n output.external_url = data.url;\n output.poll = data.poll;\n if (output.poll) {\n output.poll.options = (output.poll.options || []).map(function (field) {\n return _objectSpread(_objectSpread({}, field), {}, {\n title_html: escape_html__WEBPACK_IMPORTED_MODULE_1___default()(field.title)\n });\n });\n }\n output.pinned = data.pinned;\n output.muted = data.muted;\n } else {\n output.favorited = data.favorited;\n output.fave_num = data.fave_num;\n output.repeated = data.repeated;\n output.repeat_num = data.repeat_num;\n\n // catchall, temporary\n // Object.assign(output, data)\n\n output.type = qvitterStatusType(data);\n if (data.nsfw === undefined) {\n output.nsfw = isNsfw(data);\n if (data.retweeted_status) {\n output.nsfw = data.retweeted_status.nsfw;\n }\n } else {\n output.nsfw = data.nsfw;\n }\n output.raw_html = data.statusnet_html;\n output.text = data.text;\n output.in_reply_to_status_id = data.in_reply_to_status_id;\n output.in_reply_to_user_id = data.in_reply_to_user_id;\n output.in_reply_to_screen_name = data.in_reply_to_screen_name;\n output.statusnet_conversation_id = data.statusnet_conversation_id;\n if (output.type === 'retweet') {\n output.retweeted_status = parseStatus(data.retweeted_status);\n }\n output.summary = data.summary;\n output.summary_html = data.summary_html;\n output.external_url = data.external_url;\n output.is_local = data.is_local;\n }\n output.id = String(data.id);\n output.visibility = data.visibility;\n output.card = data.card;\n output.created_at = new Date(data.created_at);\n\n // Converting to string, the right way.\n output.in_reply_to_status_id = output.in_reply_to_status_id ? String(output.in_reply_to_status_id) : null;\n output.in_reply_to_user_id = output.in_reply_to_user_id ? String(output.in_reply_to_user_id) : null;\n output.user = parseUser(masto ? data.account : data.user);\n output.attentions = ((masto ? data.mentions : data.attentions) || []).map(parseUser);\n output.attachments = ((masto ? data.media_attachments : data.attachments) || []).map(parseAttachment);\n var retweetedStatus = masto ? data.reblog : data.retweeted_status;\n if (retweetedStatus) {\n output.retweeted_status = parseStatus(retweetedStatus);\n }\n output.favoritedBy = [];\n output.rebloggedBy = [];\n if (Object.prototype.hasOwnProperty.call(data, 'originalStatus')) {\n Object.assign(output, data.originalStatus);\n }\n return output;\n};\nvar parseNotification = function parseNotification(data) {\n var mastoDict = {\n favourite: 'like',\n reblog: 'repeat'\n };\n var masto = !Object.prototype.hasOwnProperty.call(data, 'ntype');\n var output = {};\n if (masto) {\n output.type = mastoDict[data.type] || data.type;\n output.seen = data.pleroma.is_seen;\n output.status = (0,_notification_utils_notification_utils_js__WEBPACK_IMPORTED_MODULE_3__.isStatusNotification)(output.type) ? parseStatus(data.status) : null;\n output.action = output.status; // TODO: Refactor, this is unneeded\n output.target = output.type !== 'move' ? null : parseUser(data.target);\n output.from_profile = parseUser(data.account);\n output.emoji = data.emoji;\n output.emoji_url = data.emoji_url;\n if (data.report) {\n output.report = data.report;\n output.report.content = data.report.content;\n output.report.acct = parseUser(data.report.account);\n output.report.actor = parseUser(data.report.actor);\n output.report.statuses = data.report.statuses.map(parseStatus);\n }\n } else {\n var parsedNotice = parseStatus(data.notice);\n output.type = data.ntype;\n output.seen = Boolean(data.is_seen);\n output.status = output.type === 'like' ? parseStatus(data.notice.favorited_status) : parsedNotice;\n output.action = parsedNotice;\n output.from_profile = output.type === 'pleroma:chat_mention' ? parseUser(data.account) : parseUser(data.from_profile);\n }\n output.created_at = new Date(data.created_at);\n output.id = parseInt(data.id);\n return output;\n};\nvar isNsfw = function isNsfw(status) {\n var nsfwRegex = /#nsfw/i;\n return (status.tags || []).includes('nsfw') || !!(status.text || '').match(nsfwRegex);\n};\nvar parseLinkHeaderPagination = function parseLinkHeaderPagination(linkHeader) {\n var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var flakeId = opts.flakeId;\n var parsedLinkHeader = parse_link_header__WEBPACK_IMPORTED_MODULE_2___default()(linkHeader);\n if (!parsedLinkHeader) return;\n var maxId = parsedLinkHeader.next.max_id;\n var minId = parsedLinkHeader.prev.min_id;\n return {\n maxId: flakeId ? maxId : parseInt(maxId, 10),\n minId: flakeId ? minId : parseInt(minId, 10)\n };\n};\nvar parseChat = function parseChat(chat) {\n var output = {};\n output.id = chat.id;\n output.account = parseUser(chat.account);\n output.unread = chat.unread;\n output.lastMessage = parseChatMessage(chat.last_message);\n output.updated_at = new Date(chat.updated_at);\n return output;\n};\nvar parseChatMessage = function parseChatMessage(message) {\n if (!message) {\n return;\n }\n if (message.isNormalized) {\n return message;\n }\n var output = message;\n output.id = message.id;\n output.created_at = new Date(message.created_at);\n output.chat_id = message.chat_id;\n output.emojis = message.emojis;\n output.content = message.content;\n if (message.attachment) {\n output.attachments = [parseAttachment(message.attachment)];\n } else {\n output.attachments = [];\n }\n output.pending = !!message.pending;\n output.error = false;\n output.idempotency_key = message.idempotency_key;\n output.isNormalized = true;\n return output;\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvZW50aXR5X25vcm1hbGl6ZXIvZW50aXR5X25vcm1hbGl6ZXIuc2VydmljZS5qcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBZ0M7QUFDZTtBQUNtQztBQUNoRDs7QUFFbEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSxJQUFNSSxpQkFBaUIsR0FBRyxTQUFwQkEsaUJBQWlCQSxDQUFJQyxNQUFNLEVBQUs7RUFDcEMsSUFBSUEsTUFBTSxDQUFDQyxZQUFZLEVBQUU7SUFDdkIsT0FBTyxRQUFRO0VBQ2pCO0VBRUEsSUFBSUQsTUFBTSxDQUFDRSxnQkFBZ0IsRUFBRTtJQUMzQixPQUFPLFNBQVM7RUFDbEI7RUFFQSxJQUFLLE9BQU9GLE1BQU0sQ0FBQ0csR0FBRyxLQUFLLFFBQVEsSUFBSUgsTUFBTSxDQUFDRyxHQUFHLENBQUNDLEtBQUssQ0FBQyw2QkFBNkIsQ0FBQyxJQUNqRixPQUFPSixNQUFNLENBQUNLLElBQUksS0FBSyxRQUFRLElBQUlMLE1BQU0sQ0FBQ0ssSUFBSSxDQUFDRCxLQUFLLENBQUMsV0FBVyxDQUFFLEVBQUU7SUFDdkUsT0FBTyxVQUFVO0VBQ25CO0VBRUEsSUFBSUosTUFBTSxDQUFDSyxJQUFJLENBQUNELEtBQUssQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJSixNQUFNLENBQUNNLHFCQUFxQixFQUFFO0lBQzdFLE9BQU8sVUFBVTtFQUNuQjtFQUVBLElBQUlOLE1BQU0sQ0FBQ0ssSUFBSSxDQUFDRCxLQUFLLENBQUMsbUJBQW1CLENBQUMsSUFBSUosTUFBTSxDQUFDTyxhQUFhLEtBQUssUUFBUSxFQUFFO0lBQy9FLE9BQU8sUUFBUTtFQUNqQjtFQUVBLE9BQU8sU0FBUztBQUNsQixDQUFDO0FBRU0sSUFBTUMsU0FBUyxHQUFHLFNBQVpBLFNBQVNBLENBQUlDLElBQUksRUFBSztFQUNqQyxJQUFNQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0VBQ2pCLElBQU1DLEtBQUss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TUFBTSxDQUFDUSxFQUFFLEdBQUdxTSxPQUFPLENBQUNyTSxFQUFFO0VBQ3RCUixNQUFNLENBQUMrRSxVQUFVLEdBQUcsSUFBSUMsSUFBSSxDQUFDNkgsT0FBTyxDQUFDOUgsVUFBVSxDQUFDO0VBQ2hEL0UsTUFBTSxDQUFDK00sT0FBTyxHQUFHRixPQUFPLENBQUNFLE9BQU87RUFDaEMvTSxNQUFNLENBQUNpQixNQUFNLEdBQUc0TCxPQUFPLENBQUM1TCxNQUFNO0VBQzlCakIsTUFBTSxDQUFDeUgsT0FBTyxHQUFHb0YsT0FBTyxDQUFDcEYsT0FBTztFQUNoQyxJQUFJb0YsT0FBTyxDQUFDRyxVQUFVLEVBQUU7SUFDdEJoTixNQUFNLENBQUMrSixXQUFXLEdBQUcsQ0FBQzlELGVBQWUsQ0FBQzRHLE9BQU8sQ0FBQ0csVUFBVSxDQUFDLENBQUM7RUFDNUQsQ0FBQyxNQUFNO0lBQ0xoTixNQUFNLENBQUMrSixXQUFXLEdBQUcsRUFBRTtFQUN6QjtFQUNBL0osTUFBTSxDQUFDaU4sT0FBTyxHQUFHLENBQUMsQ0FBQ0osT0FBTyxDQUFDSSxPQUFPO0VBQ2xDak4sTUFBTSxDQUFDa04sS0FBSyxHQUFHLEtBQUs7RUFDcEJsTixNQUFNLENBQUNtTixlQUFlLEdBQUdOLE9BQU8sQ0FBQ00sZUFBZTtFQUNoRG5OLE1BQU0sQ0FBQzhNLFlBQVksR0FBRyxJQUFJO0VBQzFCLE9BQU85TSxNQUFNO0FBQ2YsQ0FBQyIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvc2VydmljZXMvZW50aXR5X25vcm1hbGl6ZXIvZW50aXR5X25vcm1hbGl6ZXIuc2VydmljZS5qcz81NjRmIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBlc2NhcGUgZnJvbSAnZXNjYXBlLWh0bWwnXG5pbXBvcnQgcGFyc2VMaW5rSGVhZGVyIGZyb20gJ3BhcnNlLWxpbmstaGVhZGVyJ1xuaW1wb3J0IHsgaXNTdGF0dXNOb3RpZmljYXRpb24gfSBmcm9tICcuLi9ub3RpZmljYXRpb25fdXRpbHMvbm90aWZpY2F0aW9uX3V0aWxzLmpzJ1xuaW1wb3J0IHB1bnljb2RlIGZyb20gJ3B1bnljb2RlLmpzJ1xuXG4vKiogTk9USUNFISAqKlxuICogRG8gbm90IGluaXRpYWxpemUgVUktZ2VuZXJhdGVkIGRhdGEgaGVyZS5cbiAqIEl0IHdpbGwgb3ZlcnJpZGUgZXhpc3RpbmcgZGF0YS5cbiAqXG4gKiBpLmUuIHVzZXIucGlubmVkU3RhdHVzSWRzIHdhcyBzZXQgdG8gW10gaGVyZVxuICogVUkgY29kZSB3b3VsZCB1cGRhdGUgaXQgd2l0aCBkYXRhIGJ1dCB1cG9uIG5leHQgdXNlciBmZXRjaFxuICogaXQgd291bGQgYmUgcmV2ZXJ0ZWQgYmFjayB0byBbXVxuICovXG5cbmNvbnN0IHF2aXR0ZXJTdGF0dXNUeXBlID0gKHN0YXR1cykgPT4ge1xuICBpZiAoc3RhdHVzLmlzX3Bvc3RfdmVyYikge1xuICAgIHJldHVybiAnc3RhdHVzJ1xuICB9XG5cbiAgaWYgKHN0YXR1cy5yZXR3ZWV0ZWRfc3RhdHVzKSB7XG4gICAgcmV0dXJuICdyZXR3ZWV0J1xuICB9XG5cbiAgaWYgKCh0eXBlb2Ygc3RhdHVzLnVyaSA9PT0gJ3N0cmluZycgJiYgc3RhdHVzLnVyaS5tYXRjaCgvKGZhdmV8b2JqZWN0VHlwZT1GYXZvdXJpdGUpLykpIHx8XG4gICAgICAodHlwZW9mIHN0YXR1cy50ZXh0ID09PSAnc3RyaW5nJyAmJiBzdGF0dXMudGV4dC5tYXRjaCgvZmF2b3JpdGVkLykpKSB7XG4gICAgcmV0dXJuICdmYXZvcml0ZSdcbiAgfVxuXG4gIGlmIChzdGF0dXMudGV4dC5tYXRjaCgvZGVsZXRlZCBub3RpY2Uge3t0YWcvKSB8fCBzdGF0dXMucXZpdHRlcl9kZWxldGVfbm90aWNlKSB7XG4gICAgcmV0dXJuICdkZWxldGlvbidcbiAgfVxuXG4gIGlmIChzdGF0dXMudGV4dC5tYXRjaCgvc3RhcnRlZCBmb2xsb3dpbmcvKSB8fCBzdGF0dXMuYWN0aXZpdHlfdHlwZSA9PT0gJ2ZvbGxvdycpIHtcbiAgICByZXR1cm4gJ2ZvbGxvdydcbiAgfVxuXG4gIHJldHVybiAndW5rbm93bidcbn1cblxuZXhwb3J0IGNvbnN0IHBhcnNlVXNlciA9IChkYXRhKSA9PiB7XG4gIGNvbnN0IG91dHB1dCA9IHt9XG4gIGNvbnN0IG1hc3RvID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGRhdGEsICdhY2N0JylcbiAgLy8gY2FzZSBmb3IgdXNlcnMgaW4gXCJtZW50aW9uc1wiIHByb3BlcnR5IGZvciBzdGF0dXNlcyBpbiBNYXN0b0FQSVxuICBjb25zdCBtYXN0b1Nob3J0ID0gbWFzdG8gJiYgIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChkYXRhLCAnYXZhdGFyJylcblxuICBvdXRwdXQuaW5MaXN0cyA9IG51bGxcbiAgb3V0cHV0LmlkID0gU3RyaW5nKGRhdGEuaWQpXG4gIG91dHB1dC5fb3JpZ2luYWwgPSBkYXRhIC8vIHVzZWQgZm9yIHNlcnZlci1zaWRlIHNldHRpbmdzXG5cbiAgaWYgKG1hc3RvKSB7XG4gICAgb3V0cHV0LnNjcmVlbl9uYW1lID0gZGF0YS5hY2N0XG4gICAgb3V0cHV0LmZxbiA9IGRhdGEuZnFuXG4gICAgb3V0cHV0LnN0YXR1c25ldF9wcm9maWxlX3VybCA9IGRhdGEudXJsXG5cbiAgICAvLyBUaGVyZSdzIG5vdGhpbmcgZWxzZSB0byBnZXRcbiAgICBpZiAobWFzdG9TaG9ydCkge1xuICAgICAgcmV0dXJuIG91dHB1dFxuICAgIH1cblxuICAgIG91dHB1dC5lbW9qaSA9IGRhdGEuZW1vamlzXG4gICAgb3V0cHV0Lm5hbWUgPSBlc2NhcGUoZGF0YS5kaXNwbGF5X25hbWUpXG4gICAgb3V0cHV0Lm5hbWVfaHRtbCA9IG91dHB1dC5uYW1lXG4gICAgb3V0cHV0Lm5hbWVfdW5lc2NhcGVkID0gZGF0YS5kaXNwbGF5X25hbWVcblxuICAgIG91dHB1dC5kZXNjcmlwdGlvbiA9IGRhdGEubm90ZVxuICAgIC8vIFRPRE8gY2xlYW51cCB0aGlzIHNoaXQsIG91dHB1dC5kZXNjcmlwdGlvbiBpcyBvdmVycmlkZW4gd2l0aCBzb3VyY2UgZGF0YVxuICAgIG91dHB1dC5kZXNjcmlwdGlvbl9odG1sID0gZGF0YS5ub3RlXG5cbiAgICBvdXRwdXQuZmllbGRzID0gZGF0YS5maWVsZHNcbiAgICBvdXRwdXQuZmllbGRzX2h0bWwgPSBkYXRhLmZpZWxkcy5tYXAoZmllbGQgPT4ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgbmFtZTogZXNjYXBlKGZpZWxkLm5hbWUpLFxuICAgICAgICB2YWx1ZTogZmllbGQudmFsdWVcbiAgICAgIH1cbiAgICB9KVxuICAgIG91dHB1dC5maWVsZHNfdGV4dCA9IGRhdGEuZmllbGRzLm1hcChmaWVsZCA9PiB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBuYW1lOiB1bmVzY2FwZShmaWVsZC5uYW1lLnJlcGxhY2UoLzxbXj5dKj4vZywgJycpKSxcbiAgICAgICAgdmFsdWU6IHVuZXNjYXBlKGZpZWxkLnZhbHVlLnJlcGxhY2UoLzxbXj5dKj4vZywgJycpKVxuICAgICAgfVxuICAgIH0pXG5cbiAgICAvLyBVdGlsaXplIGF2YXRhcl9zdGF0aWMgZm9yIGdpZiBhdmF0YXJzP1xuICAgIG91dHB1dC5wcm9maWxlX2ltYWdlX3VybCA9IGRhdGEuYXZhdGFyXG4gICAgb3V0cHV0LnByb2ZpbGVfaW1hZ2VfdXJsX29yaWdpbmFsID0gZGF0YS5hdmF0YXJcblxuICAgIC8vIFNhbWUsIHV0aWxpemUgaGVhZGVyX3N0YXRpYz9cbiAgICBvdXRwdXQuY292ZXJfcGhvdG8gPSBkYXRhLmhlYWRlclxuXG4gICAgb3V0cHV0LmZyaWVuZHNfY291bnQgPSBkYXRhLmZvbGxvd2luZ19jb3VudFxuXG4gICAgb3V0cHV0LmJvdCA9IGRhdGEuYm90XG5cbiAgICBpZiAoZGF0YS5wbGVyb21hKSB7XG4gICAgICBpZiAoZGF0YS5wbGVyb21hLnNldHRpbmdzX3N0b3JlKSB7XG4gICAgICAgIG91dHB1dC5zdG9yYWdlID0gZGF0YS5wbGVyb21hLnNldHRpbmdzX3N0b3JlWydwbGVyb21hLWZlJ11cbiAgICAgIH1cbiAgICAgIGNvbnN0IHJlbGF0aW9uc2hpcCA9IGRhdGEucGxlcm9tYS5yZWxhdGlvbnNoaXBcblxuICAgICAgb3V0cHV0LmJhY2tncm91bmRfaW1hZ2UgPSBkYXRhLnBsZXJvbWEuYmFja2dyb3VuZF9pbWFnZVxuICAgICAgb3V0cHV0LmZhdmljb24gPSBkYXRhLnBsZXJvbWEuZmF2aWNvblxuICAgICAgb3V0cHV0LnRva2VuID0gZGF0YS5wbGVyb21hLmNoYXRfdG9rZW5cblxuICAgICAgaWYgKHJlbGF0aW9uc2hpcCkge1xuICAgICAgICBvdXRwdXQucmVsYXRpb25zaGlwID0gcmVsYXRpb25zaGlwXG4gICAgICB9XG5cbiAgICAgIG91dHB1dC5hbGxvd19mb2xsb3dpbmdfbW92ZSA9IGRhdGEucGxlcm9tYS5hbGxvd19mb2xsb3dpbmdfbW92ZVxuXG4gICAgICBvdXRwdXQuaGlkZV9mb2xsb3dzID0gZGF0YS5wbGVyb21hLmhpZGVfZm9sbG93c1xuICAgICAgb3V0cHV0LmhpZGVfZm9sbG93ZXJzID0gZGF0YS5wbGVyb21hLmhpZGVfZm9sbG93ZXJzXG4gICAgICBvdXRwdXQuaGlkZV9mb2xsb3dzX2NvdW50ID0gZGF0YS5wbGVyb21hLmhpZGVfZm9sbG93c19jb3VudFxuICAgICAgb3V0cHV0LmhpZGVfZm9sbG93ZXJzX2NvdW50ID0gZGF0YS5wbGVyb21hLmhpZGVfZm9sbG93ZXJzX2NvdW50XG5cbiAgICAgIG91dHB1dC5yaWdodHMgPSB7XG4gICAgICAgIG1vZGVyYXRvcjogZGF0YS5wbGVyb21hLmlzX21vZGVyYXRvcixcbiAgICAgICAgYWRtaW46IGRhdGEucGxlcm9tYS5pc19hZG1pblxuICAgICAgfVxuICAgICAgLy8gVE9ETzogQ2xlYW4gdXAgaW4gVUk/IFRoaXMgaXMgZHVwbGljYXRpb24gZnJvbSB3aGF0IEJFIGRvZXMgZm9yIHF2aXR0ZXJhcGlcbiAgICAgIGlmIChvdXRwdXQucmlnaHRzLmFkbWluKSB7XG4gICAgICAgIG91dHB1dC5yb2xlID0gJ2FkbWluJ1xuICAgICAgfSBlbHNlIGlmIChvdXRwdXQucmlnaHRzLm1vZGVyYXRvcikge1xuICAgICAgICBvdXRwdXQucm9sZSA9ICdtb2RlcmF0b3InXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBvdXRwdXQucm9sZSA9ICdtZW1iZXInXG4gICAgICB9XG5cbiAgICAgIG91dHB1dC5iaXJ0aGRheSA9IGRhdGEucGxlcm9tYS5iaXJ0aGRheVxuXG4gICAgICBpZiAoZGF0YS5wbGVyb21hLnByaXZpbGVnZXMpIHtcbiAgICAgICAgb3V0cHV0LnByaXZpbGVnZXMgPSBkYXRhLnBsZXJvbWEucHJpdmlsZWdlc1xuICAgICAgfSBlbHNlIGlmIChkYXRhLnBsZXJvbWEuaXNfYWRtaW4pIHtcbiAgICAgICAgb3V0cHV0LnByaXZpbGVnZXMgPSBbXG4gICAgICAgICAgJ3VzZXJzX3JlYWQnLFxuICAgICAgICAgICd1c2Vyc19tYW5hZ2VfaW52aXRlcycsXG4gICAgICAgICAgJ3VzZXJzX21hbmFnZV9hY3RpdmF0aW9uX3N0YXRlJyxcbiAgICAgICAgICAndXNlcnNfbWFuYWdlX3RhZ3MnLFxuICAgICAgICAgICd1c2Vyc19tYW5hZ2VfY3JlZGVudGlhbHMnLFxuICAgICAgICAgICd1c2Vyc19kZWxldGUnLFxuICAgICAgICAgICdtZXNzYWdlc19yZWFkJyxcbiAgICAgICAgICAnbWVzc2FnZXNfZGVsZXRlJyxcbiAgICAgICAgICAnaW5zdGFuY2VzX2RlbGV0ZScsXG4gICAgICAgICAgJ3JlcG9ydHNfbWFuYWdlX3JlcG9ydHMnLFxuICAgICAgICAgICdtb2RlcmF0aW9uX2xvZ19yZWFkJyxcbiAgICAgICAgICAnYW5ub3VuY2VtZW50c19tYW5hZ2VfYW5ub3VuY2VtZW50cycsXG4gICAgICAgICAgJ2Vtb2ppX21hbmFnZV9lbW9qaScsXG4gICAgICAgICAgJ3N0YXRpc3RpY3NfcmVhZCdcbiAgICAgICAgXVxuICAgICAgfSBlbHNlIGlmIChkYXRhLnBsZXJvbWEuaXNfbW9kZXJhdG9yKSB7XG4gICAgICAgIG91dHB1dC5wcml2aWxlZ2VzID0gW1xuICAgICAgICAgICdtZXNzYWdlc19kZWxldGUnLFxuICAgICAgICAgICdyZXBvcnRzX21hbmFnZV9yZXBvcnRzJ1xuICAgICAgICBdXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBvdXRwdXQucHJpdmlsZWdlcyA9IFtdXG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGRhdGEuc291cmNlKSB7XG4gICAgICBvdXRwdXQuZGVzY3JpcHRpb24gPSBkYXRhLnNvdXJjZS5ub3RlXG4gICAgICBvdXRwdXQuZGVmYXVsdF9zY29wZSA9IGRhdGEuc291cmNlLnByaXZhY3lcbiAgICAgIG91dHB1dC5maWVsZHMgPSBkYXRhLnNvdXJjZS5maWVsZHNcbiAgICAgIGlmIChkYXRhLnNvdXJjZS5wbGVyb21hKSB7XG4gICAgICAgIG91dHB1dC5ub19yaWNoX3RleHQgPSBkYXRhLnNvdXJjZS5wbGVyb21hLm5vX3JpY2hfdGV4dFxuICAgICAgICBvdXRwdXQuc2hvd19yb2xlID0gZGF0YS5zb3VyY2UucGxlcm9tYS5zaG93X3JvbGVcbiAgICAgICAgb3V0cHV0LmRpc2NvdmVyYWJsZSA9IGRhdGEuc291cmNlLnBsZXJvbWEuZGlzY292ZXJhYmxlXG4gICAgICAgIG91dHB1dC5zaG93X2JpcnRoZGF5ID0gZGF0YS5wbGVyb21hLnNob3dfYmlydGhkYXlcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBUT0RPOiBoYW5kbGUgaXNfbG9jYWxcbiAgICBvdXRwdXQuaXNfbG9jYWwgPSAhb3V0cHV0LnNjcmVlbl9uYW1lLmluY2x1ZGVzKCdAJylcbiAgfSBlbHNlIHtcbiAgICBvdXRwdXQuc2NyZWVuX25hbWUgPSBkYXRhLnNjcmVlbl9uYW1lXG5cbiAgICBvdXRwdXQubmFtZSA9IGRhdGEubmFtZVxuICAgIG91dHB1dC5uYW1lX2h0bWwgPSBkYXRhLm5hbWVfaHRtbFxuXG4gICAgb3V0cHV0LmRlc2NyaXB0aW9uID0gZGF0YS5kZXNjcmlwdGlvblxuICAgIG91dHB1dC5kZXNjcmlwdGlvbl9odG1sID0gZGF0YS5kZXNjcmlwdGlvbl9odG1sXG5cbiAgICBvdXRwdXQucHJvZmlsZV9pbWFnZV91cmwgPSBkYXRhLnByb2ZpbGVfaW1hZ2VfdXJsXG4gICAgb3V0cHV0LnByb2ZpbGVfaW1hZ2VfdXJsX29yaWdpbmFsID0gZGF0YS5wcm9maWxlX2ltYWdlX3VybF9vcmlnaW5hbFxuXG4gICAgb3V0cHV0LmNvdmVyX3Bob3RvID0gZGF0YS5jb3Zlcl9waG90b1xuXG4gICAgb3V0cHV0LmZyaWVuZHNfY291bnQgPSBkYXRhLmZyaWVuZHNfY291bnRcblxuICAgIC8vIG91dHB1dC5ib3QgPSA/Pz8gbWlzc2luZ1xuXG4gICAgb3V0cHV0LnN0YXR1c25ldF9wcm9maWxlX3VybCA9IGRhdGEuc3RhdHVzbmV0X3Byb2ZpbGVfdXJsXG5cbiAgICBvdXRwdXQuaXNfbG9jYWwgPSBkYXRhLmlzX2xvY2FsXG4gICAgb3V0cHV0LnJvbGUgPSBkYXRhLnJvbGVcbiAgICBvdXRwdXQuc2hvd19yb2xlID0gZGF0YS5zaG93X3JvbGVcblxuICAgIGlmIChkYXRhLnJpZ2h0cykge1xuICAgICAgb3V0cHV0LnJpZ2h0cyA9IHtcbiAgICAgICAgbW9kZXJhdG9yOiBkYXRhLnJpZ2h0cy5kZWxldGVfb3RoZXJzX25vdGljZSxcbiAgICAgICAgYWRtaW46IGRhdGEucmlnaHRzLmFkbWluXG4gICAgICB9XG4gICAgfVxuICAgIG91dHB1dC5ub19yaWNoX3RleHQgPSBkYXRhLm5vX3JpY2hfdGV4dFxuICAgIG91dHB1dC5kZWZhdWx0X3Njb3BlID0gZGF0YS5kZWZhdWx0X3Njb3BlXG4gICAgb3V0cHV0LmhpZGVfZm9sbG93cyA9IGRhdGEuaGlkZV9mb2xsb3dzXG4gICAgb3V0cHV0LmhpZGVfZm9sbG93ZXJzID0gZGF0YS5oaWRlX2ZvbGxvd2Vyc1xuICAgIG91dHB1dC5oaWRlX2ZvbGxvd3NfY291bnQgPSBkYXRhLmhpZGVfZm9sbG93c19jb3VudFxuICAgIG91dHB1dC5oaWRlX2ZvbGxvd2Vyc19jb3VudCA9IGRhdGEuaGlkZV9mb2xsb3dlcnNfY291bnRcbiAgICBvdXRwdXQuYmFja2dyb3VuZF9pbWFnZSA9IGRhdGEuYmFja2dyb3VuZF9pbWFnZVxuICAgIC8vIFdlYnNvY2tldCB0b2tlblxuICAgIG91dHB1dC50b2tlbiA9IGRhdGEudG9rZW5cblxuICAgIC8vIENvbnZlcnQgcmVsYXRpb25zaXAgZGF0YSB0byBleHBlY3RlZCBmb3JtYXRcbiAgICBvdXRwdXQucmVsYXRpb25zaGlwID0ge1xuICAgICAgbXV0aW5nOiBkYXRhLm11dGVkLFxuICAgICAgYmxvY2tpbmc6IGRhdGEuc3RhdHVzbmV0X2Jsb2NraW5nLFxuICAgICAgZm9sbG93ZWRfYnk6IGRhdGEuZm9sbG93c195b3UsXG4gICAgICBmb2xsb3dpbmc6IGRhdGEuZm9sbG93aW5nXG4gICAgfVxuICB9XG5cbiAgb3V0cHV0LmNyZWF0ZWRfYXQgPSBuZXcgRGF0ZShkYXRhLmNyZWF0ZWRfYXQpXG4gIG91dHB1dC5sb2NrZWQgPSBkYXRhLmxvY2tlZFxuICBvdXRwdXQuZm9sbG93ZXJzX2NvdW50ID0gZGF0YS5mb2xsb3dlcnNfY291bnRcbiAgb3V0cHV0LnN0YXR1c2VzX2NvdW50ID0gZGF0YS5zdGF0dXNlc19jb3VudFxuXG4gIGlmIChkYXRhLnBsZXJvbWEpIHtcbiAgICBvdXRwdXQuZm9sbG93X3JlcXVlc3RfY291bnQgPSBkYXRhLnBsZXJvbWEuZm9sbG93X3JlcXVlc3RfY291bnRcblxuICAgIG91dHB1dC50YWdzID0gZGF0YS5wbGVyb21hLnRhZ3NcblxuICAgIC8vIGRlYWN0aXZhdGVkIHdhcyBjaGFuZ2VkIHRvIGlzX2FjdGl2ZSBpbiBQbGVyb21hIDIuMy4wXG4gICAgLy8gc28gY2hlY2sgaWYgaXNfYWN0aXZlIGlzIHByZXNlbnRcbiAgICBvdXRwdXQuZGVhY3RpdmF0ZWQgPSB0eXBlb2YgZGF0YS5wbGVyb21hLmlzX2FjdGl2ZSAhPT0gJ3VuZGVmaW5lZCdcbiAgICAgID8gIWRhdGEucGxlcm9tYS5pc19hY3RpdmUgLy8gbmV3IGJhY2tlbmRcbiAgICAgIDogZGF0YS5wbGVyb21hLmRlYWN0aXZhdGVkIC8vIG9sZCBiYWNrZW5kXG5cbiAgICBvdXRwdXQubm90aWZpY2F0aW9uX3NldHRpbmdzID0gZGF0YS5wbGVyb21hLm5vdGlmaWNhdGlvbl9zZXR0aW5nc1xuICAgIG91dHB1dC51bnJlYWRfY2hhdF9jb3VudCA9IGRhdGEucGxlcm9tYS51bnJlYWRfY2hhdF9jb3VudFxuICB9XG5cbiAgb3V0cHV0LnRhZ3MgPSBvdXRwdXQudGFncyB8fCBbXVxuICBvdXRwdXQucmlnaHRzID0gb3V0cHV0LnJpZ2h0cyB8fCB7fVxuICBvdXRwdXQubm90aWZpY2F0aW9uX3NldHRpbmdzID0gb3V0cHV0Lm5vdGlmaWNhdGlvbl9zZXR0aW5ncyB8fCB7fVxuXG4gIC8vIENvbnZlcnQgcHVueWNvZGUgdG8gdW5pY29kZSBmb3IgVUlcbiAgb3V0cHV0LnNjcmVlbl9uYW1lX3VpID0gb3V0cHV0LnNjcmVlbl9uYW1lXG4gIGlmIChvdXRwdXQuc2NyZWVuX25hbWUgJiYgb3V0cHV0LnNjcmVlbl9uYW1lLmluY2x1ZGVzKCdAJykpIHtcbiAgICBjb25zdCBwYXJ0cyA9IG91dHB1dC5zY3JlZW5fbmFtZS5zcGxpdCgnQCcpXG4gICAgY29uc3QgdW5pY29kZURvbWFpbiA9IHB1bnljb2RlLnRvVW5pY29kZShwYXJ0c1sxXSlcbiAgICBpZiAodW5pY29kZURvbWFpbiAhPT0gcGFydHNbMV0pIHtcbiAgICAgIC8vIEFkZCBzb21lIGlkZW50aWZpZXIgc28gdXNlcnMgY2FuIHBvdGVudGlhbGx5IHNwb3Qgc3Bvb2ZpbmcgYXR0ZW1wdHM6XG4gICAgICAvLyBsYWluLmNvbSBhbmQgeG4tLWxpbi02Y2QuY29tIHdvdWxkIGFwcGVhciBpZGVudGljYWwgb3RoZXJ3aXNlLlxuICAgICAgb3V0cHV0LnNjcmVlbl9uYW1lX3VpX2NvbnRhaW5zX25vbl9hc2NpaSA9IHRydWVcbiAgICAgIG91dHB1dC5zY3JlZW5fbmFtZV91aSA9IFtwYXJ0c1swXSwgdW5pY29kZURvbWFpbl0uam9pbignQCcpXG4gICAgfSBlbHNlIHtcbiAgICAgIG91dHB1dC5zY3JlZW5fbmFtZV91aV9jb250YWluc19ub25fYXNjaWkgPSBmYWxzZVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBvdXRwdXRcbn1cblxuZXhwb3J0IGNvbnN0IHBhcnNlQXR0YWNobWVudCA9IChkYXRhKSA9PiB7XG4gIGNvbnN0IG91dHB1dCA9IHt9XG4gIGNvbnN0IG1hc3RvID0gIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChkYXRhLCAnb2VtYmVkJylcblxuICBpZiAobWFzdG8pIHtcbiAgICAvLyBOb3QgZXhhY3RseSBzYW1lLi4uXG4gICAgb3V0cHV0Lm1pbWV0eXBlID0gZGF0YS5wbGVyb21hID8gZGF0YS5wbGVyb21hLm1pbWVfdHlwZSA6IGRhdGEudHlwZVxuICAgIG91dHB1dC5tZXRhID0gZGF0YS5tZXRhIC8vIG5vdCBwcmVzZW50IGluIEJFIHlldFxuICAgIG91dHB1dC5pZCA9IGRhdGEuaWRcbiAgfSBlbHNlIHtcbiAgICBvdXRwdXQubWltZXR5cGUgPSBkYXRhLm1pbWV0eXBlXG4gICAgLy8gb3V0cHV0Lm1ldGEgPSA/Pz8gbWlzc2luZ1xuICB9XG5cbiAgb3V0cHV0LnVybCA9IGRhdGEudXJsXG4gIG91dHB1dC5sYXJnZV90aHVtYl91cmwgPSBkYXRhLnByZXZpZXdfdXJsXG4gIG91dHB1dC5kZXNjcmlwdGlvbiA9IGRhdGEuZGVzY3JpcHRpb25cblxuICByZXR1cm4gb3V0cHV0XG59XG5cbmV4cG9ydCBjb25zdCBwYXJzZVNvdXJjZSA9IChkYXRhKSA9PiB7XG4gIGNvbnN0IG91dHB1dCA9IHt9XG5cbiAgb3V0cHV0LnRleHQgPSBkYXRhLnRleHRcbiAgb3V0cHV0LnNwb2lsZXJfdGV4dCA9IGRhdGEuc3BvaWxlcl90ZXh0XG4gIG91dHB1dC5jb250ZW50X3R5cGUgPSBkYXRhLmNvbnRlbnRfdHlwZVxuXG4gIHJldHVybiBvdXRwdXRcbn1cblxuZXhwb3J0IGNvbnN0IHBhcnNlU3RhdHVzID0gKGRhdGEpID0+IHtcbiAgY29uc3Qgb3V0cHV0ID0ge31cbiAgY29uc3QgbWFzdG8gPSBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZGF0YSwgJ2FjY291bnQnKVxuXG4gIGlmIChtYXN0bykge1xuICAgIG91dHB1dC5mYXZvcml0ZWQgPSBkYXRhLmZhdm91cml0ZWRcbiAgICBvdXRwdXQuZmF2ZV9udW0gPSBkYXRhLmZhdm91cml0ZXNfY291bnRcblxuICAgIG91dHB1dC5yZXBlYXRlZCA9IGRhdGEucmVibG9nZ2VkXG4gICAgb3V0cHV0LnJlcGVhdF9udW0gPSBkYXRhLnJlYmxvZ3NfY291bnRcblxuICAgIG91dHB1dC5ib29rbWFya2VkID0gZGF0YS5ib29rbWFya2VkXG5cbiAgICBvdXRwdXQudHlwZSA9IGRhdGEucmVibG9nID8gJ3JldHdlZXQnIDogJ3N0YXR1cydcbiAgICBvdXRwdXQubnNmdyA9IGRhdGEuc2Vuc2l0aXZlXG5cbiAgICBvdXRwdXQucmF3X2h0bWwgPSBkYXRhLmNvbnRlbnRcbiAgICBvdXRwdXQuZW1vamlzID0gZGF0YS5lbW9qaXNcblxuICAgIG91dHB1dC50YWdzID0gZGF0YS50YWdzXG5cbiAgICBvdXRwdXQuZWRpdGVkX2F0ID0gZGF0YS5lZGl0ZWRfYXRcblxuICAgIGlmIChkYXRhLnBsZXJvbWEpIHtcbiAgICAgIGNvbnN0IHsgcGxlcm9tYSB9ID0gZGF0YVxuICAgICAgb3V0cHV0LnRleHQgPSBwbGVyb21hLmNvbnRlbnQgPyBkYXRhLnBsZXJvbWEuY29udGVudFsndGV4dC9wbGFpbiddIDogZGF0YS5jb250ZW50XG4gICAgICBvdXRwdXQuc3VtbWFyeSA9IHBsZXJvbWEuc3BvaWxlcl90ZXh0ID8gZGF0YS5wbGVyb21hLnNwb2lsZXJfdGV4dFsndGV4dC9wbGFpbiddIDogZGF0YS5zcG9pbGVyX3RleHRcbiAgICAgIG91dHB1dC5zdGF0dXNuZXRfY29udmVyc2F0aW9uX2lkID0gZGF0YS5wbGVyb21hLmNvbnZlcnNhdGlvbl9pZFxuICAgICAgb3V0cHV0LmlzX2xvY2FsID0gcGxlcm9tYS5sb2NhbFxuICAgICAgb3V0cHV0LmluX3JlcGx5X3RvX3NjcmVlbl9uYW1lID0gZGF0YS5wbGVyb21hLmluX3JlcGx5X3RvX2FjY291bnRfYWNjdFxuICAgICAgb3V0cHV0LnRocmVhZF9tdXRlZCA9IHBsZXJvbWEudGhyZWFkX211dGVkXG4gICAgICBvdXRwdXQuZW1vamlfcmVhY3Rpb25zID0gcGxlcm9tYS5lbW9qaV9yZWFjdGlvbnNcbiAgICAgIG91dHB1dC5wYXJlbnRfdmlzaWJsZSA9IHBsZXJvbWEucGFyZW50X3Zpc2libGUgPT09IHVuZGVmaW5lZCA/IHRydWUgOiBwbGVyb21hLnBhcmVudF92aXNpYmxlXG4gICAgICBvdXRwdXQucXVvdGUgPSBwbGVyb21hLnF1b3RlID8gcGFyc2VTdGF0dXMocGxlcm9tYS5xdW90ZSkgOiB1bmRlZmluZWRcbiAgICAgIG91dHB1dC5xdW90ZV9pZCA9IHBsZXJvbWEucXVvdGVfaWQgPyBwbGVyb21hLnF1b3RlX2lkIDogKG91dHB1dC5xdW90ZSA/IG91dHB1dC5xdW90ZS5pZCA6IHVuZGVmaW5lZClcbiAgICAgIG91dHB1dC5xdW90ZV91cmwgPSBwbGVyb21hLnF1b3RlX3VybFxuICAgICAgb3V0cHV0LnF1b3RlX3Zpc2libGUgPSBwbGVyb21hLnF1b3RlX3Zpc2libGVcbiAgICB9IGVsc2Uge1xuICAgICAgb3V0cHV0LnRleHQgPSBkYXRhLmNvbnRlbnRcbiAgICAgIG91dHB1dC5zdW1tYXJ5ID0gZGF0YS5zcG9pbGVyX3RleHRcbiAgICB9XG5cbiAgICBvdXRwdXQuaW5fcmVwbHlfdG9fc3RhdHVzX2lkID0gZGF0YS5pbl9yZXBseV90b19pZFxuICAgIG91dHB1dC5pbl9yZXBseV90b191c2VyX2lkID0gZGF0YS5pbl9yZXBseV90b19hY2NvdW50X2lkXG4gICAgb3V0cHV0LnJlcGxpZXNfY291bnQgPSBkYXRhLnJlcGxpZXNfY291bnRcblxuICAgIGlmIChvdXRwdXQudHlwZSA9PT0gJ3JldHdlZXQnKSB7XG4gICAgICBvdXRwdXQucmV0d2VldGVkX3N0YXR1cyA9IHBhcnNlU3RhdHVzKGRhdGEucmVibG9nKVxuICAgIH1cblxuICAgIG91dHB1dC5zdW1tYXJ5X3Jhd19odG1sID0gZXNjYXBlKGRhdGEuc3BvaWxlcl90ZXh0KVxuICAgIG91dHB1dC5leHRlcm5hbF91cmwgPSBkYXRhLnVybFxuICAgIG91dHB1dC5wb2xsID0gZGF0YS5wb2xsXG4gICAgaWYgKG91dHB1dC5wb2xsKSB7XG4gICAgICBvdXRwdXQucG9sbC5vcHRpb25zID0gKG91dHB1dC5wb2xsLm9wdGlvbnMgfHwgW10pLm1hcChmaWVsZCA9PiAoe1xuICAgICAgICAuLi5maWVsZCxcbiAgICAgICAgdGl0bGVfaHRtbDogZXNjYXBlKGZpZWxkLnRpdGxlKVxuICAgICAgfSkpXG4gICAgfVxuICAgIG91dHB1dC5waW5uZWQgPSBkYXRhLnBpbm5lZFxuICAgIG91dHB1dC5tdXRlZCA9IGRhdGEubXV0ZWRcbiAgfSBlbHNlIHtcbiAgICBvdXRwdXQuZmF2b3JpdGVkID0gZGF0YS5mYXZvcml0ZWRcbiAgICBvdXRwdXQuZmF2ZV9udW0gPSBkYXRhLmZhdmVfbnVtXG5cbiAgICBvdXRwdXQucmVwZWF0ZWQgPSBkYXRhLnJlcGVhdGVkXG4gICAgb3V0cHV0LnJlcGVhdF9udW0gPSBkYXRhLnJlcGVhdF9udW1cblxuICAgIC8vIGNhdGNoYWxsLCB0ZW1wb3JhcnlcbiAgICAvLyBPYmplY3QuYXNzaWduKG91dHB1dCwgZGF0YSlcblxuICAgIG91dHB1dC50eXBlID0gcXZpdHRlclN0YXR1c1R5cGUoZGF0YSlcblxuICAgIGlmIChkYXRhLm5zZncgPT09IHVuZGVmaW5lZCkge1xuICAgICAgb3V0cHV0Lm5zZncgPSBpc05zZncoZGF0YSlcbiAgICAgIGlmIChkYXRhLnJldHdlZXRlZF9zdGF0dXMpIHtcbiAgICAgICAgb3V0cHV0Lm5zZncgPSBkYXRhLnJldHdlZXRlZF9zdGF0dXMubnNmd1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBvdXRwdXQubnNmdyA9IGRhdGEubnNmd1xuICAgIH1cblxuICAgIG91dHB1dC5yYXdfaHRtbCA9IGRhdGEuc3RhdHVzbmV0X2h0bWxcbiAgICBvdXRwdXQudGV4dCA9IGRhdGEudGV4dFxuXG4gICAgb3V0cHV0LmluX3JlcGx5X3RvX3N0YXR1c19pZCA9IGRhdGEuaW5fcmVwbHlfdG9fc3RhdHVzX2lkXG4gICAgb3V0cHV0LmluX3JlcGx5X3RvX3VzZXJfaWQgPSBkYXRhLmluX3JlcGx5X3RvX3VzZXJfaWRcbiAgICBvdXRwdXQuaW5fcmVwbHlfdG9fc2NyZWVuX25hbWUgPSBkYXRhLmluX3JlcGx5X3RvX3NjcmVlbl9uYW1lXG4gICAgb3V0cHV0LnN0YXR1c25ldF9jb252ZXJzYXRpb25faWQgPSBkYXRhLnN0YXR1c25ldF9jb252ZXJzYXRpb25faWRcblxuICAgIGlmIChvdXRwdXQudHlwZSA9PT0gJ3JldHdlZXQnKSB7XG4gICAgICBvdXRwdXQucmV0d2VldGVkX3N0YXR1cyA9IHBhcnNlU3RhdHVzKGRhdGEucmV0d2VldGVkX3N0YXR1cylcbiAgICB9XG5cbiAgICBvdXRwdXQuc3VtbWFyeSA9IGRhdGEuc3VtbWFyeVxuICAgIG91dHB1dC5zdW1tYXJ5X2h0bWwgPSBkYXRhLnN1bW1hcnlfaHRtbFxuICAgIG91dHB1dC5leHRlcm5hbF91cmwgPSBkYXRhLmV4dGVybmFsX3VybFxuICAgIG91dHB1dC5pc19sb2NhbCA9IGRhdGEuaXNfbG9jYWxcbiAgfVxuXG4gIG91dHB1dC5pZCA9IFN0cmluZyhkYXRhLmlkKVxuICBvdXRwdXQudmlzaWJpbGl0eSA9IGRhdGEudmlzaWJpbGl0eVxuICBvdXRwdXQuY2FyZCA9IGRhdGEuY2FyZFxuICBvdXRwdXQuY3JlYXRlZF9hdCA9IG5ldyBEYXRlKGRhdGEuY3JlYXRlZF9hdClcblxuICAvLyBDb252ZXJ0aW5nIHRvIHN0cmluZywgdGhlIHJpZ2h0IHdheS5cbiAgb3V0cHV0LmluX3JlcGx5X3RvX3N0YXR1c19pZCA9IG91dHB1dC5pbl9yZXBseV90b19zdGF0dXNfaWRcbiAgICA/IFN0cmluZyhvdXRwdXQuaW5fcmVwbHlfdG9fc3RhdHVzX2lkKVxuICAgIDogbnVsbFxuICBvdXRwdXQuaW5fcmVwbHlfdG9fdXNlcl9pZCA9IG91dHB1dC5pbl9yZXBseV90b191c2VyX2lkXG4gICAgPyBTdHJpbmcob3V0cHV0LmluX3JlcGx5X3RvX3VzZXJfaWQpXG4gICAgOiBudWxsXG5cbiAgb3V0cHV0LnVzZXIgPSBwYXJzZVVzZXIobWFzdG8gPyBkYXRhLmFjY291bnQgOiBkYXRhLnVzZXIpXG5cbiAgb3V0cHV0LmF0dGVudGlvbnMgPSAoKG1hc3RvID8gZGF0YS5tZW50aW9ucyA6IGRhdGEuYXR0ZW50aW9ucykgfHwgW10pLm1hcChwYXJzZVVzZXIpXG5cbiAgb3V0cHV0LmF0dGFjaG1lbnRzID0gKChtYXN0byA/IGRhdGEubWVkaWFfYXR0YWNobWVudHMgOiBkYXRhLmF0dGFjaG1lbnRzKSB8fCBbXSlcbiAgICAubWFwKHBhcnNlQXR0YWNobWVudClcblxuICBjb25zdCByZXR3ZWV0ZWRTdGF0dXMgPSBtYXN0byA/IGRhdGEucmVibG9nIDogZGF0YS5yZXR3ZWV0ZWRfc3RhdHVzXG4gIGlmIChyZXR3ZWV0ZWRTdGF0dXMpIHtcbiAgICBvdXRwdXQucmV0d2VldGVkX3N0YXR1cyA9IHBhcnNlU3RhdHVzKHJldHdlZXRlZFN0YXR1cylcbiAgfVxuXG4gIG91dHB1dC5mYXZvcml0ZWRCeSA9IFtdXG4gIG91dHB1dC5yZWJsb2dnZWRCeSA9IFtdXG5cbiAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChkYXRhLCAnb3JpZ2luYWxTdGF0dXMnKSkge1xuICAgIE9iamVjdC5hc3NpZ24ob3V0cHV0LCBkYXRhLm9yaWdpbmFsU3RhdHVzKVxuICB9XG5cbiAgcmV0dXJuIG91dHB1dFxufVxuXG5leHBvcnQgY29uc3QgcGFyc2VOb3RpZmljYXRpb24gPSAoZGF0YSkgPT4ge1xuICBjb25zdCBtYXN0b0RpY3QgPSB7XG4gICAgZmF2b3VyaXRlOiAnbGlrZScsXG4gICAgcmVibG9nOiAncmVwZWF0J1xuICB9XG4gIGNvbnN0IG1hc3RvID0gIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChkYXRhLCAnbnR5cGUnKVxuICBjb25zdCBvdXRwdXQgPSB7fVxuXG4gIGlmIChtYXN0bykge1xuICAgIG91dHB1dC50eXBlID0gbWFzdG9EaWN0W2RhdGEudHlwZV0gfHwgZGF0YS50eXBlXG4gICAgb3V0cHV0LnNlZW4gPSBkYXRhLnBsZXJvbWEuaXNfc2VlblxuICAgIG91dHB1dC5zdGF0dXMgPSBpc1N0YXR1c05vdGlmaWNhdGlvbihvdXRwdXQudHlwZSkgPyBwYXJzZVN0YXR1cyhkYXRhLnN0YXR1cykgOiBudWxsXG4gICAgb3V0cHV0LmFjdGlvbiA9IG91dHB1dC5zdGF0dXMgLy8gVE9ETzogUmVmYWN0b3IsIHRoaXMgaXMgdW5uZWVkZWRcbiAgICBvdXRwdXQudGFyZ2V0ID0gb3V0cHV0LnR5cGUgIT09ICdtb3ZlJ1xuICAgICAgPyBudWxsXG4gICAgICA6IHBhcnNlVXNlcihkYXRhLnRhcmdldClcbiAgICBvdXRwdXQuZnJvbV9wcm9maWxlID0gcGFyc2VVc2VyKGRhdGEuYWNjb3VudClcbiAgICBvdXRwdXQuZW1vamkgPSBkYXRhLmVtb2ppXG4gICAgb3V0cHV0LmVtb2ppX3VybCA9IGRhdGEuZW1vamlfdXJsXG4gICAgaWYgKGRhdGEucmVwb3J0KSB7XG4gICAgICBvdXRwdXQucmVwb3J0ID0gZGF0YS5yZXBvcnRcbiAgICAgIG91dHB1dC5yZXBvcnQuY29udGVudCA9IGRhdGEucmVwb3J0LmNvbnRlbnRcbiAgICAgIG91dHB1dC5yZXBvcnQuYWNjdCA9IHBhcnNlVXNlcihkYXRhLnJlcG9ydC5hY2NvdW50KVxuICAgICAgb3V0cHV0LnJlcG9ydC5hY3RvciA9IHBhcnNlVXNlcihkYXRhLnJlcG9ydC5hY3RvcilcbiAgICAgIG91dHB1dC5yZXBvcnQuc3RhdHVzZXMgPSBkYXRhLnJlcG9ydC5zdGF0dXNlcy5tYXAocGFyc2VTdGF0dXMpXG4gICAgfVxuICB9IGVsc2Uge1xuICAgIGNvbnN0IHBhcnNlZE5vdGljZSA9IHBhcnNlU3RhdHVzKGRhdGEubm90aWNlKVxuICAgIG91dHB1dC50eXBlID0gZGF0YS5udHlwZVxuICAgIG91dHB1dC5zZWVuID0gQm9vbGVhbihkYXRhLmlzX3NlZW4pXG4gICAgb3V0cHV0LnN0YXR1cyA9IG91dHB1dC50eXBlID09PSAnbGlrZSdcbiAgICAgID8gcGFyc2VTdGF0dXMoZGF0YS5ub3RpY2UuZmF2b3JpdGVkX3N0YXR1cylcbiAgICAgIDogcGFyc2VkTm90aWNlXG4gICAgb3V0cHV0LmFjdGlvbiA9IHBhcnNlZE5vdGljZVxuICAgIG91dHB1dC5mcm9tX3Byb2ZpbGUgPSBvdXRwdXQudHlwZSA9PT0gJ3BsZXJvbWE6Y2hhdF9tZW50aW9uJyA/IHBhcnNlVXNlcihkYXRhLmFjY291bnQpIDogcGFyc2VVc2VyKGRhdGEuZnJvbV9wcm9maWxlKVxuICB9XG5cbiAgb3V0cHV0LmNyZWF0ZWRfYXQgPSBuZXcgRGF0ZShkYXRhLmNyZWF0ZWRfYXQpXG4gIG91dHB1dC5pZCA9IHBhcnNlSW50KGRhdGEuaWQpXG5cbiAgcmV0dXJuIG91dHB1dFxufVxuXG5jb25zdCBpc05zZncgPSAoc3RhdHVzKSA9PiB7XG4gIGNvbnN0IG5zZndSZWdleCA9IC8jbnNmdy9pXG4gIHJldHVybiAoc3RhdHVzLnRhZ3MgfHwgW10pLmluY2x1ZGVzKCduc2Z3JykgfHwgISEoc3RhdHVzLnRleHQgfHwgJycpLm1hdGNoKG5zZndSZWdleClcbn1cblxuZXhwb3J0IGNvbnN0IHBhcnNlTGlua0hlYWRlclBhZ2luYXRpb24gPSAobGlua0hlYWRlciwgb3B0cyA9IHt9KSA9PiB7XG4gIGNvbnN0IGZsYWtlSWQgPSBvcHRzLmZsYWtlSWRcbiAgY29uc3QgcGFyc2VkTGlua0hlYWRlciA9IHBhcnNlTGlua0hlYWRlcihsaW5rSGVhZGVyKVxuICBpZiAoIXBhcnNlZExpbmtIZWFkZXIpIHJldHVyblxuICBjb25zdCBtYXhJZCA9IHBhcnNlZExpbmtIZWFkZXIubmV4dC5tYXhfaWRcbiAgY29uc3QgbWluSWQgPSBwYXJzZWRMaW5rSGVhZGVyLnByZXYubWluX2lkXG5cbiAgcmV0dXJuIHtcbiAgICBtYXhJZDogZmxha2VJZCA/IG1heElkIDogcGFyc2VJbnQobWF4SWQsIDEwKSxcbiAgICBtaW5JZDogZmxha2VJZCA/IG1pbklkIDogcGFyc2VJbnQobWluSWQsIDEwKVxuICB9XG59XG5cbmV4cG9ydCBjb25zdCBwYXJzZUNoYXQgPSAoY2hhdCkgPT4ge1xuICBjb25zdCBvdXRwdXQgPSB7fVxuICBvdXRwdXQuaWQgPSBjaGF0LmlkXG4gIG91dHB1dC5hY2NvdW50ID0gcGFyc2VVc2VyKGNoYXQuYWNjb3VudClcbiAgb3V0cHV0LnVucmVhZCA9IGNoYXQudW5yZWFkXG4gIG91dHB1dC5sYXN0TWVzc2FnZSA9IHBhcnNlQ2hhdE1lc3NhZ2UoY2hhdC5sYXN0X21lc3NhZ2UpXG4gIG91dHB1dC51cGRhdGVkX2F0ID0gbmV3IERhdGUoY2hhdC51cGRhdGVkX2F0KVxuICByZXR1cm4gb3V0cHV0XG59XG5cbmV4cG9ydCBjb25zdCBwYXJzZUNoYXRNZXNzYWdlID0gKG1lc3NhZ2UpID0+IHtcbiAgaWYgKCFtZXNzYWdlKSB7IHJldHVybiB9XG4gIGlmIChtZXNzYWdlLmlzTm9ybWFsaXplZCkgeyByZXR1cm4gbWVzc2FnZSB9XG4gIGNvbnN0IG91dHB1dCA9IG1lc3NhZ2VcbiAgb3V0cHV0LmlkID0gbWVzc2FnZS5pZFxuICBvdXRwdXQuY3JlYXRlZF9hdCA9IG5ldyBEYXRlKG1lc3NhZ2UuY3JlYXRlZF9hdClcbiAgb3V0cHV0LmNoYXRfaWQgPSBtZXNzYWdlLmNoYXRfaWRcbiAgb3V0cHV0LmVtb2ppcyA9IG1lc3NhZ2UuZW1vamlzXG4gIG91dHB1dC5jb250ZW50ID0gbWVzc2FnZS5jb250ZW50XG4gIGlmIChtZXNzYWdlLmF0dGFjaG1lbnQpIHtcbiAgICBvdXRwdXQuYXR0YWNobWVudHMgPSBbcGFyc2VBdHRhY2htZW50KG1lc3NhZ2UuYXR0YWNobWVudCldXG4gIH0gZWxzZSB7XG4gICAgb3V0cHV0LmF0dGFjaG1lbnRzID0gW11cbiAgfVxuICBvdXRwdXQucGVuZGluZyA9ICEhbWVzc2FnZS5wZW5kaW5nXG4gIG91dHB1dC5lcnJvciA9IGZhbHNlXG4gIG91dHB1dC5pZGVtcG90ZW5jeV9rZXkgPSBtZXNzYWdlLmlkZW1wb3RlbmN5X2tleVxuICBvdXRwdXQuaXNOb3JtYWxpemVkID0gdHJ1ZVxuICByZXR1cm4gb3V0cHV0XG59XG4iXSwibmFtZXMiOlsiZXNjYXBlIiwicGFyc2VMaW5rSGVhZGVyIiwiaXNTdGF0dXNOb3RpZmljYXRpb24iLCJwdW55Y29kZSIsInF2aXR0ZXJTdGF0dXNUeXBlIiwic3RhdHVzIiwiaXNfcG9zdF92ZXJiIiwicmV0d2VldGVkX3N0YXR1cyIsInVyaSIsIm1hdGNoIiwidGV4dCIsInF2aXR0ZXJfZGVsZXRlX25vdGljZSIsImFjdGl2aXR5X3R5cGUiLCJwYXJzZVVzZXIiLCJkYXRhIiwib3V0cHV0IiwibWFzdG8iLCJPYmplY3QiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJtYXN0b1Nob3J0IiwiaW5MaXN0cyIsImlkIiwiU3RyaW5nIiwiX29yaWdpbmFsIiwic2NyZWVuX25hbWUiLCJhY2N0IiwiZnFuIiwic3RhdHVzbmV0X3Byb2ZpbGVfdXJsIiwidXJsIiwiZW1vamkiLCJlbW9qaXMiLCJuYW1lIiwiZGlzcGxheV9uYW1lIiwibmFtZV9odG1sIiwibmFtZV91bmVzY2FwZWQiLCJkZXNjcmlwdGlvbiIsIm5vdGUiLCJkZXNjcmlwdGlvbl9odG1sIiwiZmllbGRzIiwiZmllbGRzX2h0bWwiLCJtYXAiLCJmaWVsZCIsInZhbHVlIiwiZmllbGRzX3RleHQiLCJ1bmVzY2FwZSIsInJlcGxhY2UiLCJwcm9maWxlX2ltYWdlX3VybCIsImF2YXRhciIsInByb2ZpbGVfaW1hZ2VfdXJsX29yaWdpbmFsIiwiY292ZXJfcGhvdG8iLCJoZWFkZXIiLCJmcmllbmRzX2NvdW50IiwiZm9sbG93aW5nX2NvdW50IiwiYm90IiwicGxlcm9tYSIsInNldHRpbmdzX3N0b3JlIiwic3RvcmFnZSIsInJlbGF0aW9uc2hpcCIsImJhY2tncm91bmRfaW1hZ2UiLCJmYXZpY29uIiwidG9rZW4iLCJjaGF0X3Rva2VuIiwiYWxsb3dfZm9sbG93aW5nX21vdmUiLCJoaWRlX2ZvbGxvd3MiLCJoaWRlX2ZvbGxvd2VycyIsImhpZGVfZm9sbG93c19jb3VudCIsImhpZGVfZm9sbG93ZXJzX2NvdW50IiwicmlnaHRzIiwibW9kZXJhdG9yIiwiaXNfbW9kZXJhdG9yIiwiYWRtaW4iLCJpc19hZG1pbiIsInJvbGUiLCJiaXJ0aGRheSIsInByaXZpbGVnZXMiLCJzb3VyY2UiLCJkZWZhdWx0X3Njb3BlIiwicHJpdmFjeSIsIm5vX3JpY2hfdGV4dCIsInNob3dfcm9sZSIsImRpc2NvdmVyYWJsZSIsInNob3dfYmlydGhkYXkiLCJpc19sb2NhbCIsImluY2x1ZGVzIiwiZGVsZXRlX290aGVyc19ub3RpY2UiLCJtdXRpbmciLCJtdXRlZCIsImJsb2NraW5nIiwic3RhdHVzbmV0X2Jsb2NraW5nIiwiZm9sbG93ZWRfYnkiLCJmb2xsb3dzX3lvdSIsImZvbGxvd2luZyIsImNyZWF0ZWRfYXQiLCJEYXRlIiwibG9ja2VkIiwiZm9sbG93ZXJzX2NvdW50Iiwic3RhdHVzZXNfY291bnQiLCJmb2xsb3dfcmVxdWVzdF9jb3VudCIsInRhZ3MiLCJkZWFjdGl2YXRlZCIsImlzX2FjdGl2ZSIsIm5vdGlmaWNhdGlvbl9zZXR0aW5ncyIsInVucmVhZF9jaGF0X2NvdW50Iiwic2NyZWVuX25hbWVfdWkiLCJwYXJ0cyIsInNwbGl0IiwidW5pY29kZURvbWFpbiIsInRvVW5pY29kZSIsInNjcmVlbl9uYW1lX3VpX2NvbnRhaW5zX25vbl9hc2NpaSIsImpvaW4iLCJwYXJzZUF0dGFjaG1lbnQiLCJtaW1ldHlwZSIsIm1pbWVfdHlwZSIsInR5cGUiLCJtZXRhIiwibGFyZ2VfdGh1bWJfdXJsIiwicHJldmlld191cmwiLCJwYXJzZVNvdXJjZSIsInNwb2lsZXJfdGV4dCIsImNvbnRlbnRfdHlwZSIsInBhcnNlU3RhdHVzIiwiZmF2b3JpdGVkIiwiZmF2b3VyaXRlZCIsImZhdmVfbnVtIiwiZmF2b3VyaXRlc19jb3VudCIsInJlcGVhdGVkIiwicmVibG9nZ2VkIiwicmVwZWF0X251bSIsInJlYmxvZ3NfY291bnQiLCJib29rbWFya2VkIiwicmVibG9nIiwibnNmdyIsInNlbnNpdGl2ZSIsInJhd19odG1sIiwiY29udGVudCIsImVkaXRlZF9hdCIsInN1bW1hcnkiLCJzdGF0dXNuZXRfY29udmVyc2F0aW9uX2lkIiwiY29udmVyc2F0aW9uX2lkIiwibG9jYWwiLCJpbl9yZXBseV90b19zY3JlZW5fbmFtZSIsImluX3JlcGx5X3RvX2FjY291bnRfYWNjdCIsInRocmVhZF9tdXRlZCIsImVtb2ppX3JlYWN0aW9ucyIsInBhcmVudF92aXNpYmxlIiwidW5kZWZpbmVkIiwicXVvdGUiLCJxdW90ZV9pZCIsInF1b3RlX3VybCIsInF1b3RlX3Zpc2libGUiLCJpbl9yZXBseV90b19zdGF0dXNfaWQiLCJpbl9yZXBseV90b19pZCIsImluX3JlcGx5X3RvX3VzZXJfaWQiLCJpbl9yZXBseV90b19hY2NvdW50X2lkIiwicmVwbGllc19jb3VudCIsInN1bW1hcnlfcmF3X2h0bWwiLCJleHRlcm5hbF91cmwiLCJwb2xsIiwib3B0aW9ucyIsIl9vYmplY3RTcHJlYWQiLCJ0aXRsZV9odG1sIiwidGl0bGUiLCJwaW5uZWQiLCJpc05zZnciLCJzdGF0dXNuZXRfaHRtbCIsInN1bW1hcnlfaHRtbCIsInZpc2liaWxpdHkiLCJjYXJkIiwidXNlciIsImFjY291bnQiLCJhdHRlbnRpb25zIiwibWVudGlvbnMiLCJhdHRhY2htZW50cyIsIm1lZGlhX2F0dGFjaG1lbnRzIiwicmV0d2VldGVkU3RhdHVzIiwiZmF2b3JpdGVkQnkiLCJyZWJsb2dnZWRCeSIsImFzc2lnbiIsIm9yaWdpbmFsU3RhdHVzIiwicGFyc2VOb3RpZmljYXRpb24iLCJtYXN0b0RpY3QiLCJmYXZvdXJpdGUiLCJzZWVuIiwiaXNfc2VlbiIsImFjdGlvbiIsInRhcmdldCIsImZyb21fcHJvZmlsZSIsImVtb2ppX3VybCIsInJlcG9ydCIsImFjdG9yIiwic3RhdHVzZXMiLCJwYXJzZWROb3RpY2UiLCJub3RpY2UiLCJudHlwZSIsIkJvb2xlYW4iLCJmYXZvcml0ZWRfc3RhdHVzIiwicGFyc2VJbnQiLCJuc2Z3UmVnZXgiLCJwYXJzZUxpbmtIZWFkZXJQYWdpbmF0aW9uIiwibGlua0hlYWRlciIsIm9wdHMiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmbGFrZUlkIiwicGFyc2VkTGlua0hlYWRlciIsIm1heElkIiwibmV4dCIsIm1heF9pZCIsIm1pbklkIiwicHJldiIsIm1pbl9pZCIsInBhcnNlQ2hhdCIsImNoYXQiLCJ1bnJlYWQiLCJsYXN0TWVzc2FnZSIsInBhcnNlQ2hhdE1lc3NhZ2UiLCJsYXN0X21lc3NhZ2UiLCJ1cGRhdGVkX2F0IiwibWVzc2FnZSIsImlzTm9ybWFsaXplZCIsImNoYXRfaWQiLCJhdHRhY2htZW50IiwicGVuZGluZyIsImVycm9yIiwiaWRlbXBvdGVuY3lfa2V5Il0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/services/entity_normalizer/entity_normalizer.service.js\n");
/***/ }),
/***/ "./src/services/errors/errors.js":
/*!***************************************!*\
!*** ./src/services/errors/errors.js ***!
\***************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"RegistrationError\": () => (/* binding */ RegistrationError),\n/* harmony export */ \"StatusCodeError\": () => (/* binding */ StatusCodeError)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/typeof */ \"./node_modules/@babel/runtime/helpers/esm/typeof.js\");\n/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ \"./node_modules/@babel/runtime/helpers/esm/createClass.js\");\n/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ \"./node_modules/@babel/runtime/helpers/esm/classCallCheck.js\");\n/* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ \"./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js\");\n/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ \"./node_modules/@babel/runtime/helpers/esm/inherits.js\");\n/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ \"./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js\");\n/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ \"./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js\");\n/* harmony import */ var _babel_runtime_helpers_wrapNativeSuper__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @babel/runtime/helpers/wrapNativeSuper */ \"./node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js\");\n/* harmony import */ var _modules_errors__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../modules/errors */ \"./src/modules/errors.js\");\n\n\n\n\n\n\n\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0,_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0,_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_5__[\"default\"])(this, result); }; }\nfunction _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; } }\n\nfunction StatusCodeError(statusCode, body, options, response) {\n this.name = 'StatusCodeError';\n this.statusCode = statusCode;\n this.message = statusCode + ' - ' + (JSON && JSON.stringify ? JSON.stringify(body) : body);\n this.error = body; // legacy attribute\n this.options = options;\n this.response = response;\n if (Error.captureStackTrace) {\n // required for non-V8 environments\n Error.captureStackTrace(this);\n }\n}\nStatusCodeError.prototype = Object.create(Error.prototype);\nStatusCodeError.prototype.constructor = StatusCodeError;\nvar RegistrationError = /*#__PURE__*/function (_Error) {\n (0,_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__[\"default\"])(RegistrationError, _Error);\n var _super = _createSuper(RegistrationError);\n function RegistrationError(error) {\n var _this;\n (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(this, RegistrationError);\n _this = _super.call(this);\n if (Error.captureStackTrace) {\n Error.captureStackTrace((0,_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(_this));\n }\n try {\n // the error is probably a JSON object with a single key, \"errors\", whose value is another JSON object containing the real errors\n if (typeof error === 'string') {\n error = JSON.parse(error);\n // eslint-disable-next-line\n if (error.hasOwnProperty('error')) {\n error = JSON.parse(error.error);\n }\n }\n if ((0,_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(error) === 'object') {\n var errorContents = JSON.parse(error.error);\n // keys will have the property that has the error, for example 'ap_id',\n // 'email' or 'captcha', the value will be an array of its error\n // like \"ap_id\": [\"has been taken\"] or \"captcha\": [\"Invalid CAPTCHA\"]\n\n // replace ap_id with username\n if (errorContents.ap_id) {\n errorContents.username = errorContents.ap_id;\n delete errorContents.ap_id;\n }\n _this.message = (0,_modules_errors__WEBPACK_IMPORTED_MODULE_8__.humanizeErrors)(errorContents);\n } else {\n _this.message = error;\n }\n } catch (e) {\n // can't parse it, so just treat it like a string\n _this.message = error;\n }\n return _this;\n }\n return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(RegistrationError);\n}( /*#__PURE__*/(0,_babel_runtime_helpers_wrapNativeSuper__WEBPACK_IMPORTED_MODULE_7__[\"default\"])(Error));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvZXJyb3JzL2Vycm9ycy5qcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBcUQ7QUFFOUMsU0FBU0MsZUFBZUEsQ0FBRUMsVUFBVSxFQUFFQyxJQUFJLEVBQUVDLE9BQU8sRUFBRUMsUUFBUSxFQUFFO0VBQ3BFLElBQUksQ0FBQ0MsSUFBSSxHQUFHLGlCQUFpQjtFQUM3QixJQUFJLENBQUNKLFVBQVUsR0FBR0EsVUFBVTtFQUM1QixJQUFJLENBQUNLLE9BQU8sR0FBR0wsVUFBVSxHQUFHLEtBQUssSUFBSU0sSUFBSSxJQUFJQSxJQUFJLENBQUNDLFNBQVMsR0FBR0QsSUFBSSxDQUFDQyxTQUFTLENBQUNOLElBQUksQ0FBQyxHQUFHQSxJQUFJLENBQUM7RUFDMUYsSUFBSSxDQUFDTyxLQUFLLEdBQUdQLElBQUksRUFBQztFQUNsQixJQUFJLENBQUNDLE9BQU8sR0FBR0EsT0FBTztFQUN0QixJQUFJLENBQUNDLFFBQVEsR0FBR0EsUUFBUTtFQUV4QixJQUFJTSxLQUFLLENBQUNDLGlCQUFpQixFQUFFO0lBQUU7SUFDN0JELEtBQUssQ0FBQ0MsaUJBQWlCLENBQUMsSUFBSSxDQUFDO0VBQy9CO0FBQ0Y7QUFDQVgsZUFBZSxDQUFDWSxTQUFTLEdBQUdDLE1BQU0sQ0FBQ0MsTUFBTSxDQUFDSixLQUFLLENBQUNFLFNBQVMsQ0FBQztBQUMxRFosZUFBZSxDQUFDWSxTQUFTLENBQUNHLFdBQVcsR0FBR2YsZUFBZTtBQUVoRCxJQUFNZ0IsaUJBQWlCLDBCQUFBQyxNQUFBO0VBQUFDLDJFQUFBLENBQUFGLGlCQUFBLEVBQUFDLE1BQUE7RUFBQSxJQUFBRSxNQUFBLEdBQUFDLFlBQUEsQ0FBQUosaUJBQUE7RUFDNUIsU0FBQUEsa0JBQWFQLEtBQUssRUFBRTtJQUFBLElBQUFZLEtBQUE7SUFBQUMsaUZBQUEsT0FBQU4saUJBQUE7SUFDbEJLLEtBQUEsR0FBQUYsTUFBQSxDQUFBSSxJQUFBO0lBQ0EsSUFBSWIsS0FBSyxDQUFDQyxpQkFBaUIsRUFBRTtNQUMzQkQsS0FBSyxDQUFDQyxpQkFBaUIsQ0FBQWEsd0ZBQUEsQ0FBQUgsS0FBQSxDQUFLLENBQUM7SUFDL0I7SUFFQSxJQUFJO01BQ0Y7TUFDQSxJQUFJLE9BQU9aLEtBQUssS0FBSyxRQUFRLEVBQUU7UUFDN0JBLEtBQUssR0FBR0YsSUFBSSxDQUFDa0IsS0FBSyxDQUFDaEIsS0FBSyxDQUFDO1FBQ3pCO1FBQ0EsSUFBSUEsS0FBSyxDQUFDaUIsY0FBYyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1VBQ2pDakIsS0FBSyxHQUFHRixJQUFJLENBQUNrQixLQUFLLENBQUNoQixLQUFLLENBQUNBLEtBQUssQ0FBQztRQUNqQztNQUNGO01BRUEsSUFBSWtCLHlFQUFBLENBQU9sQixLQUFLLE1BQUssUUFBUSxFQUFFO1FBQzdCLElBQU1tQixhQUFhLEdBQUdyQixJQUFJLENBQUNrQixLQUFLLENBQUNoQixLQUFLLENBQUNBLEtBQUssQ0FBQztRQUM3QztRQUNBO1FBQ0E7O1FBRUE7UUFDQSxJQUFJbUIsYUFBYSxDQUFDQyxLQUFLLEVBQUU7VUFDdkJELGFBQWEsQ0FBQ0UsUUFBUSxHQUFHRixhQUFhLENBQUNDLEtBQUs7VUFDNUMsT0FBT0QsYUFBYSxDQUFDQyxLQUFLO1FBQzVCO1FBRUFSLEtBQUEsQ0FBS2YsT0FBTyxHQUFHUCwrREFBYyxDQUFDNkIsYUFBYSxDQUFDO01BQzlDLENBQUMsTUFBTTtRQUNMUCxLQUFBLENBQUtmLE9BQU8sR0FBR0csS0FBSztNQUN0QjtJQUNGLENBQUMsQ0FBQyxPQUFPc0IsQ0FBQyxFQUFFO01BQ1Y7TUFDQVYsS0FBQSxDQUFLZixPQUFPLEdBQUdHLEtBQUs7SUFDdEI7SUFBQyxPQUFBWSxLQUFBO0VBQ0g7RUFBQyxPQUFBVyw4RUFBQSxDQUFBaEIsaUJBQUE7QUFBQSxnQkFBQWlCLGtGQUFBLENBckNvQ3ZCLEtBQUsiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL3NlcnZpY2VzL2Vycm9ycy9lcnJvcnMuanM/NjBlZiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBodW1hbml6ZUVycm9ycyB9IGZyb20gJy4uLy4uL21vZHVsZXMvZXJyb3JzJ1xuXG5leHBvcnQgZnVuY3Rpb24gU3RhdHVzQ29kZUVycm9yIChzdGF0dXNDb2RlLCBib2R5LCBvcHRpb25zLCByZXNwb25zZSkge1xuICB0aGlzLm5hbWUgPSAnU3RhdHVzQ29kZUVycm9yJ1xuICB0aGlzLnN0YXR1c0NvZGUgPSBzdGF0dXNDb2RlXG4gIHRoaXMubWVzc2FnZSA9IHN0YXR1c0NvZGUgKyAnIC0gJyArIChKU09OICYmIEpTT04uc3RyaW5naWZ5ID8gSlNPTi5zdHJpbmdpZnkoYm9keSkgOiBib2R5KVxuICB0aGlzLmVycm9yID0gYm9keSAvLyBsZWdhY3kgYXR0cmlidXRlXG4gIHRoaXMub3B0aW9ucyA9IG9wdGlvbnNcbiAgdGhpcy5yZXNwb25zZSA9IHJlc3BvbnNlXG5cbiAgaWYgKEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKSB7IC8vIHJlcXVpcmVkIGZvciBub24tVjggZW52aXJvbm1lbnRzXG4gICAgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcylcbiAgfVxufVxuU3RhdHVzQ29kZUVycm9yLnByb3RvdHlwZSA9IE9iamVjdC5jcmVhdGUoRXJyb3IucHJvdG90eXBlKVxuU3RhdHVzQ29kZUVycm9yLnByb3RvdHlwZS5jb25zdHJ1Y3RvciA9IFN0YXR1c0NvZGVFcnJvclxuXG5leHBvcnQgY2xhc3MgUmVnaXN0cmF0aW9uRXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gIGNvbnN0cnVjdG9yIChlcnJvcikge1xuICAgIHN1cGVyKClcbiAgICBpZiAoRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UpIHtcbiAgICAgIEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKHRoaXMpXG4gICAgfVxuXG4gICAgdHJ5IHtcbiAgICAgIC8vIHRoZSBlcnJvciBpcyBwcm9iYWJseSBhIEpTT04gb2JqZWN0IHdpdGggYSBzaW5nbGUga2V5LCBcImVycm9yc1wiLCB3aG9zZSB2YWx1ZSBpcyBhbm90aGVyIEpTT04gb2JqZWN0IGNvbnRhaW5pbmcgdGhlIHJlYWwgZXJyb3JzXG4gICAgICBpZiAodHlwZW9mIGVycm9yID09PSAnc3RyaW5nJykge1xuICAgICAgICBlcnJvciA9IEpTT04ucGFyc2UoZXJyb3IpXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICAgICAgICBpZiAoZXJyb3IuaGFzT3duUHJvcGVydHkoJ2Vycm9yJykpIHtcbiAgICAgICAgICBlcnJvciA9IEpTT04ucGFyc2UoZXJyb3IuZXJyb3IpXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKHR5cGVvZiBlcnJvciA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgY29uc3QgZXJyb3JDb250ZW50cyA9IEpTT04ucGFyc2UoZXJyb3IuZXJyb3IpXG4gICAgICAgIC8vIGtleXMgd2lsbCBoYXZlIHRoZSBwcm9wZXJ0eSB0aGF0IGhhcyB0aGUgZXJyb3IsIGZvciBleGFtcGxlICdhcF9pZCcsXG4gICAgICAgIC8vICdlbWFpbCcgb3IgJ2NhcHRjaGEnLCB0aGUgdmFsdWUgd2lsbCBiZSBhbiBhcnJheSBvZiBpdHMgZXJyb3JcbiAgICAgICAgLy8gbGlrZSBcImFwX2lkXCI6IFtcImhhcyBiZWVuIHRha2VuXCJdIG9yIFwiY2FwdGNoYVwiOiBbXCJJbnZhbGlkIENBUFRDSEFcIl1cblxuICAgICAgICAvLyByZXBsYWNlIGFwX2lkIHdpdGggdXNlcm5hbWVcbiAgICAgICAgaWYgKGVycm9yQ29udGVudHMuYXBfaWQpIHtcbiAgICAgICAgICBlcnJvckNvbnRlbnRzLnVzZXJuYW1lID0gZXJyb3JDb250ZW50cy5hcF9pZFxuICAgICAgICAgIGRlbGV0ZSBlcnJvckNvbnRlbnRzLmFwX2lkXG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLm1lc3NhZ2UgPSBodW1hbml6ZUVycm9ycyhlcnJvckNvbnRlbnRzKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5tZXNzYWdlID0gZXJyb3JcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICAvLyBjYW4ndCBwYXJzZSBpdCwgc28ganVzdCB0cmVhdCBpdCBsaWtlIGEgc3RyaW5nXG4gICAgICB0aGlzLm1lc3NhZ2UgPSBlcnJvclxuICAgIH1cbiAgfVxufVxuIl0sIm5hbWVzIjpbImh1bWFuaXplRXJyb3JzIiwiU3RhdHVzQ29kZUVycm9yIiwic3RhdHVzQ29kZSIsImJvZHkiLCJvcHRpb25zIiwicmVzcG9uc2UiLCJuYW1lIiwibWVzc2FnZSIsIkpTT04iLCJzdHJpbmdpZnkiLCJlcnJvciIsIkVycm9yIiwiY2FwdHVyZVN0YWNrVHJhY2UiLCJwcm90b3R5cGUiLCJPYmplY3QiLCJjcmVhdGUiLCJjb25zdHJ1Y3RvciIsIlJlZ2lzdHJhdGlvbkVycm9yIiwiX0Vycm9yIiwiX2luaGVyaXRzIiwiX3N1cGVyIiwiX2NyZWF0ZVN1cGVyIiwiX3RoaXMiLCJfY2xhc3NDYWxsQ2hlY2siLCJjYWxsIiwiX2Fzc2VydFRoaXNJbml0aWFsaXplZCIsInBhcnNlIiwiaGFzT3duUHJvcGVydHkiLCJfdHlwZW9mIiwiZXJyb3JDb250ZW50cyIsImFwX2lkIiwidXNlcm5hbWUiLCJlIiwiX2NyZWF0ZUNsYXNzIiwiX3dyYXBOYXRpdmVTdXBlciJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/services/errors/errors.js\n");
/***/ }),
/***/ "./src/services/favicon_service/favicon_service.js":
/*!*********************************************************!*\
!*** ./src/services/favicon_service/favicon_service.js ***!
\*********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\nvar createFaviconService = function createFaviconService() {\n var favicons = [];\n var faviconWidth = 128;\n var faviconHeight = 128;\n var badgeRadius = 32;\n var initFaviconService = function initFaviconService() {\n var nodes = document.querySelectorAll('link[rel=\"icon\"]');\n nodes.forEach(function (favicon) {\n if (favicon) {\n var favcanvas = document.createElement('canvas');\n favcanvas.width = faviconWidth;\n favcanvas.height = faviconHeight;\n var favimg = new Image();\n favimg.crossOrigin = 'anonymous';\n favimg.src = favicon.href;\n var favcontext = favcanvas.getContext('2d');\n favicons.push({\n favcanvas: favcanvas,\n favimg: favimg,\n favcontext: favcontext,\n favicon: favicon\n });\n }\n });\n };\n var isImageLoaded = function isImageLoaded(img) {\n return img.complete && img.naturalHeight !== 0;\n };\n var clearFaviconBadge = function clearFaviconBadge() {\n if (favicons.length === 0) return;\n favicons.forEach(function (_ref) {\n var favimg = _ref.favimg,\n favcanvas = _ref.favcanvas,\n favcontext = _ref.favcontext,\n favicon = _ref.favicon;\n if (!favimg || !favcontext || !favicon) return;\n favcontext.clearRect(0, 0, faviconWidth, faviconHeight);\n if (isImageLoaded(favimg)) {\n favcontext.drawImage(favimg, 0, 0, favimg.width, favimg.height, 0, 0, faviconWidth, faviconHeight);\n }\n favicon.href = favcanvas.toDataURL('image/png');\n });\n };\n var drawFaviconBadge = function drawFaviconBadge() {\n if (favicons.length === 0) return;\n clearFaviconBadge();\n favicons.forEach(function (_ref2) {\n var favimg = _ref2.favimg,\n favcanvas = _ref2.favcanvas,\n favcontext = _ref2.favcontext,\n favicon = _ref2.favicon;\n if (!favimg || !favcontext || !favcontext) return;\n var style = getComputedStyle(document.body);\n var badgeColor = \"\".concat(style.getPropertyValue('--badgeNotification') || 'rgb(240, 100, 100)');\n if (isImageLoaded(favimg)) {\n favcontext.drawImage(favimg, 0, 0, favimg.width, favimg.height, 0, 0, faviconWidth, faviconHeight);\n }\n favcontext.fillStyle = badgeColor;\n favcontext.beginPath();\n favcontext.arc(faviconWidth - badgeRadius, badgeRadius, badgeRadius, 0, 2 * Math.PI, false);\n favcontext.fill();\n favicon.href = favcanvas.toDataURL('image/png');\n });\n };\n return {\n initFaviconService: initFaviconService,\n clearFaviconBadge: clearFaviconBadge,\n drawFaviconBadge: drawFaviconBadge\n };\n};\nvar FaviconService = createFaviconService();\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (FaviconService);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvZmF2aWNvbl9zZXJ2aWNlL2Zhdmljb25fc2VydmljZS5qcy5qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUEsSUFBTUEsb0JBQW9CLEdBQUcsU0FBdkJBLG9CQUFvQkEsQ0FBQSxFQUFTO0VBQ2pDLElBQU1DLFFBQVEsR0FBRyxFQUFFO0VBQ25CLElBQU1DLFlBQVksR0FBRyxHQUFHO0VBQ3hCLElBQU1DLGFBQWEsR0FBRyxHQUFHO0VBQ3pCLElBQU1DLFdBQVcsR0FBRyxFQUFFO0VBRXRCLElBQU1DLGtCQUFrQixHQUFHLFNBQXJCQSxrQkFBa0JBLENBQUEsRUFBUztJQUMvQixJQUFNQyxLQUFLLEdBQUdDLFFBQVEsQ0FBQ0MsZ0JBQWdCLENBQUMsa0JBQWtCLENBQUM7SUFDM0RGLEtBQUssQ0FBQ0csT0FBTyxDQUFDLFVBQUFDLE9BQU8sRUFBSTtNQUN2QixJQUFJQSxPQUFPLEVBQUU7UUFDWCxJQUFNQyxTQUFTLEdBQUdKLFFBQVEsQ0FBQ0ssYUFBYSxDQUFDLFFBQVEsQ0FBQztRQUNsREQsU0FBUyxDQUFDRSxLQUFLLEdBQUdYLFlBQVk7UUFDOUJTLFNBQVMsQ0FBQ0csTUFBTSxHQUFHWCxhQUFhO1FBQ2hDLElBQU1ZLE1BQU0sR0FBRyxJQUFJQyxLQUFLLENBQUMsQ0FBQztRQUMxQkQsTUFBTSxDQUFDRSxXQUFXLEdBQUcsV0FBVztRQUNoQ0YsTUFBTSxDQUFDRyxHQUFHLEdBQUdSLE9BQU8sQ0FBQ1MsSUFBSTtRQUN6QixJQUFNQyxVQUFVLEdBQUdULFNBQVMsQ0FBQ1UsVUFBVSxDQUFDLElBQUksQ0FBQztRQUM3Q3BCLFFBQVEsQ0FBQ3FCLElBQUksQ0FBQztVQUFFWCxTQUFTLEVBQVRBLFNBQVM7VUFBRUksTUFBTSxFQUFOQSxNQUFNO1VBQUVLLFVBQVUsRUFBVkEsVUFBVTtVQUFFVixPQUFPLEVBQVBBO1FBQVEsQ0FBQyxDQUFDO01BQzNEO0lBQ0YsQ0FBQyxDQUFDO0VBQ0osQ0FBQztFQUVELElBQU1hLGFBQWEsR0FBRyxTQUFo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QUVELE9BQU87SUFDTDNCLGtCQUFrQixFQUFsQkEsa0JBQWtCO0lBQ2xCc0IsaUJBQWlCLEVBQWpCQSxpQkFBaUI7SUFDakJNLGdCQUFnQixFQUFoQkE7RUFDRixDQUFDO0FBQ0gsQ0FBQztBQUVELElBQU1jLGNBQWMsR0FBRy9DLG9CQUFvQixDQUFDLENBQUM7QUFFN0MsaUVBQWUrQyxjQUFjIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9zZXJ2aWNlcy9mYXZpY29uX3NlcnZpY2UvZmF2aWNvbl9zZXJ2aWNlLmpzPzg5M2MiXSwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgY3JlYXRlRmF2aWNvblNlcnZpY2UgPSAoKSA9PiB7XG4gIGNvbnN0IGZhdmljb25zID0gW11cbiAgY29uc3QgZmF2aWNvbldpZHRoID0gMTI4XG4gIGNvbnN0IGZhdmljb25IZWlnaHQgPSAxMjhcbiAgY29uc3QgYmFkZ2VSYWRpdXMgPSAzMlxuXG4gIGNvbnN0IGluaXRGYXZpY29uU2VydmljZSA9ICgpID0+IHtcbiAgICBjb25zdCBub2RlcyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ2xpbmtbcmVsPVwiaWNvblwiXScpXG4gICAgbm9kZXMuZm9yRWFjaChmYXZpY29uID0+IHtcbiAgICAgIGlmIChmYXZpY29uKSB7XG4gICAgICAgIGNvbnN0IGZhdmNhbnZhcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpXG4gICAgICAgIGZhdmNhbnZhcy53aWR0aCA9IGZhdmljb25XaWR0aFxuICAgICAgICBmYXZjYW52YXMuaGVpZ2h0ID0gZmF2aWNvbkhlaWdodFxuICAgICAgICBjb25zdCBmYXZpbWcgPSBuZXcgSW1hZ2UoKVxuICAgICAgICBmYXZpbWcuY3Jvc3NPcmlnaW4gPSAnYW5vbnltb3VzJ1xuICAgICAgICBmYXZpbWcuc3JjID0gZmF2aWNvbi5ocmVmXG4gICAgICAgIGNvbnN0IGZhdmNvbnRleHQgPSBmYXZjYW52YXMuZ2V0Q29udGV4dCgnMmQnKVxuICAgICAgICBmYXZpY29ucy5wdXNoKHsgZmF2Y2FudmFzLCBmYXZpbWcsIGZhdmNvbnRleHQsIGZhdmljb24gfSlcbiAgICAgIH1cbiAgICB9KVxuICB9XG5cbiAgY29uc3QgaXNJbWFnZUxvYWRlZCA9IChpbWcpID0+IGltZy5jb21wbGV0ZSAmJiBpbWcubmF0dXJhbEhlaWdodCAhPT0gMFxuXG4gIGNvbnN0IGNsZWFyRmF2aWNvbkJhZGdlID0gKCkgPT4ge1xuICAgIGlmIChmYXZpY29ucy5sZW5ndGggPT09IDApIHJldHVyblxuICAgIGZhdmljb25zLmZvckVhY2goKHsgZmF2aW1nLCBmYXZjYW52YXMsIGZhdmNvbnRleHQsIGZhdmljb24gfSkgPT4ge1xuICAgICAgaWYgKCFmYXZpbWcgfHwgIWZhdmNvbnRleHQgfHwgIWZhdmljb24pIHJldHVyblxuXG4gICAgICBmYXZjb250ZXh0LmNsZWFyUmVjdCgwLCAwLCBmYXZpY29uV2lkdGgsIGZhdmljb25IZWlnaHQpXG4gICAgICBpZiAoaXNJbWFnZUxvYWRlZChmYXZpbWcpKSB7XG4gICAgICAgIGZhdmNvbnRleHQuZHJhd0ltYWdlKGZhdmltZywgMCwgMCwgZmF2aW1nLndpZHRoLCBmYXZpbWcuaGVpZ2h0LCAwLCAwLCBmYXZpY29uV2lkdGgsIGZhdmljb25IZWlnaHQpXG4gICAgICB9XG4gICAgICBmYXZpY29uLmhyZWYgPSBmYXZjYW52YXMudG9EYXRhVVJMKCdpbWFnZS9wbmcnKVxuICAgIH0pXG4gIH1cblxuICBjb25zdCBkcmF3RmF2aWNvbkJhZGdlID0gKCkgPT4ge1xuICAgIGlmIChmYXZpY29ucy5sZW5ndGggPT09IDApIHJldHVyblxuICAgIGNsZWFyRmF2aWNvbkJhZGdlKClcbiAgICBmYXZpY29ucy5mb3JFYWNoKCh7IGZhdmltZywgZmF2Y2FudmFzLCBmYXZjb250ZXh0LCBmYXZpY29uIH0pID0+IHtcbiAgICAgIGlmICghZmF2aW1nIHx8ICFmYXZjb250ZXh0IHx8ICFmYXZjb250ZXh0KSByZXR1cm5cblxuICAgICAgY29uc3Qgc3R5bGUgPSBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmJvZHkpXG4gICAgICBjb25zdCBiYWRnZUNvbG9yID0gYCR7c3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgnLS1iYWRnZU5vdGlmaWNhdGlvbicpIHx8ICdyZ2IoMjQwLCAxMDAsIDEwMCknfWBcblxuICAgICAgaWYgKGlzSW1hZ2VMb2FkZWQoZmF2aW1nKSkge1xuICAgICAgICBmYXZjb250ZXh0LmRyYXdJbWFnZShmYXZpbWcsIDAsIDAsIGZhdmltZy53aWR0aCwgZmF2aW1nLmhlaWdodCwgMCwgMCwgZmF2aWNvbldpZHRoLCBmYXZpY29uSGVpZ2h0KVxuICAgICAgfVxuICAgICAgZmF2Y29udGV4dC5maWxsU3R5bGUgPSBiYWRnZUNvbG9yXG4gICAgICBmYXZjb250ZXh0LmJlZ2luUGF0aCgpXG4gICAgICBmYXZjb250ZXh0LmFyYyhmYXZpY29uV2lkdGggLSBiYWRnZVJhZGl1cywgYmFkZ2VSYWRpdXMsIGJhZGdlUmFkaXVzLCAwLCAyICogTWF0aC5QSSwgZmFsc2UpXG4gICAgICBmYXZjb250ZXh0LmZpbGwoKVxuICAgICAgZmF2aWNvbi5ocmVmID0gZmF2Y2FudmFzLnRvRGF0YVVSTCgnaW1hZ2UvcG5nJylcbiAgICB9KVxuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBpbml0RmF2aWNvblNlcnZpY2UsXG4gICAgY2xlYXJGYXZpY29uQmFkZ2UsXG4gICAgZHJhd0Zhdmljb25CYWRnZVxuICB9XG59XG5cbmNvbnN0IEZhdmljb25TZXJ2aWNlID0gY3JlYXRlRmF2aWNvblNlcnZpY2UoKVxuXG5leHBvcnQgZGVmYXVsdCBGYXZpY29uU2VydmljZVxuIl0sIm5hbWVzIjpbImNyZWF0ZUZhdmljb25TZXJ2aWNlIiwiZmF2aWNvbnMiLCJmYXZpY29uV2lkdGgiLCJmYXZpY29uSGVpZ2h0IiwiYmFkZ2VSYWRpdXMiLCJpbml0RmF2aWNvblNlcnZpY2UiLCJub2RlcyIsImRvY3VtZW50IiwicXVlcnlTZWxlY3RvckFsbCIsImZvckVhY2giLCJmYXZpY29uIiwiZmF2Y2FudmFzIiwiY3JlYXRlRWxlbWVudCIsIndpZHRoIiwiaGVpZ2h0IiwiZmF2aW1nIiwiSW1hZ2UiLCJjcm9zc09yaWdpbiIsInNyYyIsImhyZWYiLCJmYXZjb250ZXh0IiwiZ2V0Q29udGV4dCIsInB1c2giLCJpc0ltYWdlTG9hZGVkIiwiaW1nIiwiY29tcGxldGUiLCJuYXR1cmFsSGVpZ2h0IiwiY2xlYXJGYXZpY29uQmFkZ2UiLCJsZW5ndGgiLCJfcmVmIiwiY2xlYXJSZWN0IiwiZHJhd0ltYWdlIiwidG9EYXRhVVJMIiwiZHJhd0Zhdmljb25CYWRnZSIsIl9yZWYyIiwic3R5bGUiLCJnZXRDb21wdXRlZFN0eWxlIiwiYm9keSIsImJhZGdlQ29sb3IiLCJjb25jYXQiLCJnZXRQcm9wZXJ0eVZhbHVlIiwiZmlsbFN0eWxlIiwiYmVnaW5QYXRoIiwiYXJjIiwiTWF0aCIsIlBJIiwiZmlsbCIsIkZhdmljb25TZXJ2aWNlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/services/favicon_service/favicon_service.js\n");
/***/ }),
/***/ "./src/services/file_size_format/file_size_format.js":
/*!***********************************************************!*\
!*** ./src/services/file_size_format/file_size_format.js ***!
\***********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\nvar fileSizeFormat = function fileSizeFormat(numArg) {\n var units = ['B', 'KiB', 'MiB', 'GiB', 'TiB'];\n var num = numArg;\n if (num < 1) {\n return num + ' ' + units[0];\n }\n var exponent = Math.min(Math.floor(Math.log(num) / Math.log(1024)), units.length - 1);\n num = (num / Math.pow(1024, exponent)).toFixed(2) * 1;\n var unit = units[exponent];\n return {\n num: num,\n unit: unit\n };\n};\nvar fileSizeFormatService = {\n fileSizeFormat: fileSizeFormat\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (fileSizeFormatService);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvZmlsZV9zaXplX2Zvcm1hdC9maWxlX3NpemVfZm9ybWF0LmpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQSxJQUFNQSxjQUFjLEdBQUcsU0FBakJBLGNBQWNBLENBQUlDLE1BQU0sRUFBSztFQUNqQyxJQUFNQyxLQUFLLEdBQUcsQ0FBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDO0VBQy9DLElBQUlDLEdBQUcsR0FBR0YsTUFBTTtFQUNoQixJQUFJRSxHQUFHLEdBQUcsQ0FBQyxFQUFFO0lBQ1gsT0FBT0EsR0FBRyxHQUFHLEdBQUcsR0FBR0QsS0FBSyxDQUFDLENBQUMsQ0FBQztFQUM3QjtFQUVBLElBQU1FLFFBQVEsR0FBR0MsSUFBSSxDQUFDQyxHQUFHLENBQUNELElBQUksQ0FBQ0UsS0FBSyxDQUFDRixJQUFJLENBQUNHLEdBQUcsQ0FBQ0wsR0FBRyxDQUFDLEdBQUdFLElBQUksQ0FBQ0csR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUVOLEtBQUssQ0FBQ08sTUFBTSxHQUFHLENBQUMsQ0FBQztFQUN2Rk4sR0FBRyxHQUFHLENBQUNBLEdBQUcsR0FBR0UsSUFBSSxDQUFDSyxHQUFHLENBQUMsSUFBSSxFQUFFTixRQUFRLENBQUMsRUFBRU8sT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUM7RUFDckQsSUFBTUMsSUFBSSxHQUFHVixLQUFLLENBQUNFLFFBQVEsQ0FBQztFQUM1QixPQUFPO0lBQUVELEdBQUcsRUFBSEEsR0FBRztJQUFFUyxJQUFJLEVBQUpBO0VBQUssQ0FBQztBQUN0QixDQUFDO0FBQ0QsSUFBTUMscUJBQXFCLEdBQUc7RUFDNUJiLGNBQWMsRUFBZEE7QUFDRixDQUFDO0FBQ0QsaUVBQWVhLHFCQUFxQiIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvc2VydmljZXMvZmlsZV9zaXplX2Zvcm1hdC9maWxlX3NpemVfZm9ybWF0LmpzPzc1NTUiXSwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgZmlsZVNpemVGb3JtYXQgPSAobnVtQXJnKSA9PiB7XG4gIGNvbnN0IHVuaXRzID0gWydCJywgJ0tpQicsICdNaUInLCAnR2lCJywgJ1RpQiddXG4gIGxldCBudW0gPSBudW1BcmdcbiAgaWYgKG51bSA8IDEpIHtcbiAgICByZXR1cm4gbnVtICsgJyAnICsgdW5pdHNbMF1cbiAgfVxuXG4gIGNvbnN0IGV4cG9uZW50ID0gTWF0aC5taW4oTWF0aC5mbG9vcihNYXRoLmxvZyhudW0pIC8gTWF0aC5sb2coMTAyNCkpLCB1bml0cy5sZW5ndGggLSAxKVxuICBudW0gPSAobnVtIC8gTWF0aC5wb3coMTAyNCwgZXhwb25lbnQpKS50b0ZpeGVkKDIpICogMVxuICBjb25zdCB1bml0ID0gdW5pdHNbZXhwb25lbnRdXG4gIHJldHVybiB7IG51bSwgdW5pdCB9XG59XG5jb25zdCBmaWxlU2l6ZUZvcm1hdFNlcnZpY2UgPSB7XG4gIGZpbGVTaXplRm9ybWF0XG59XG5leHBvcnQgZGVmYXVsdCBmaWxlU2l6ZUZvcm1hdFNlcnZpY2VcbiJdLCJuYW1lcyI6WyJmaWxlU2l6ZUZvcm1hdCIsIm51bUFyZyIsInVuaXRzIiwibnVtIiwiZXhwb25lbnQiLCJNYXRoIiwibWluIiwiZmxvb3IiLCJsb2ciLCJsZW5ndGgiLCJwb3ciLCJ0b0ZpeGVkIiwidW5pdCIsImZpbGVTaXplRm9ybWF0U2VydmljZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/services/file_size_format/file_size_format.js\n");
/***/ }),
/***/ "./src/services/file_type/file_type.service.js":
/*!*****************************************************!*\
!*** ./src/services/file_type/file_type.service.js ***!
\*****************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__),\n/* harmony export */ \"fileMatchesSomeType\": () => (/* binding */ fileMatchesSomeType),\n/* harmony export */ \"fileType\": () => (/* binding */ fileType),\n/* harmony export */ \"fileTypeExt\": () => (/* binding */ fileTypeExt)\n/* harmony export */ });\n// TODO this func might as well take the entire file and use its mimetype\n// or the entire service could be just mimetype service that only operates\n// on mimetypes and not files. Currently the naming is confusing.\nvar fileType = function fileType(mimetype) {\n if (mimetype.match(/flash/)) {\n return 'flash';\n }\n if (mimetype.match(/text\\/html/)) {\n return 'html';\n }\n if (mimetype.match(/image/)) {\n return 'image';\n }\n if (mimetype.match(/video/)) {\n return 'video';\n }\n if (mimetype.match(/audio/)) {\n return 'audio';\n }\n return 'unknown';\n};\nvar fileTypeExt = function fileTypeExt(url) {\n if (url.match(/\\.(png|jpe?g|gif|webp|avif)$/)) {\n return 'image';\n }\n if (url.match(/\\.(ogv|mp4|webm|mov)$/)) {\n return 'video';\n }\n if (url.match(/\\.(it|s3m|mod|umx|mp3|aac|m4a|flac|alac|ogg|oga|opus|wav|ape|midi?)$/)) {\n return 'audio';\n }\n return 'unknown';\n};\nvar fileMatchesSomeType = function fileMatchesSomeType(types, file) {\n return types.some(function (type) {\n return fileType(file.mimetype) === type;\n });\n};\nvar fileTypeService = {\n fileType: fileType,\n fileTypeExt: fileTypeExt,\n fileMatchesSomeType: fileMatchesSomeType\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (fileTypeService);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvZmlsZV90eXBlL2ZpbGVfdHlwZS5zZXJ2aWNlLmpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDTyxJQUFNQSxRQUFRLEdBQUcsU0FBWEEsUUFBUUEsQ0FBR0MsUUFBUSxFQUFJO0VBQ2xDLElBQUlBLFFBQVEsQ0FBQ0MsS0FBSyxDQUFDLE9BQU8sQ0FBQyxFQUFFO0lBQzNCLE9BQU8sT0FBTztFQUNoQjtFQUVBLElBQUlELFFBQVEsQ0FBQ0MsS0FBSyxDQUFDLFlBQVksQ0FBQyxFQUFFO0lBQ2hDLE9BQU8sTUFBTTtFQUNmO0VBRUEsSUFBSUQsUUFBUSxDQUFDQyxLQUFLLENBQUMsT0FBTyxDQUFDLEVBQUU7SUFDM0IsT0FBTyxPQUFPO0VBQ2hCO0VBRUEsSUFBSUQsUUFBUSxDQUFDQyxLQUFLLENBQUMsT0FBTyxDQUFDLEVBQUU7SUFDM0IsT0FBTyxPQUFPO0VBQ2hCO0VBRUEsSUFBSUQsUUFBUSxDQUFDQyxLQUFLLENBQUMsT0FBTyxDQUFDLEVBQUU7SUFDM0IsT0FBTyxPQUFPO0VBQ2hCO0VBRUEsT0FBTyxTQUFTO0FBQ2xCLENBQUM7QUFFTSxJQUFNQyxXQUFXLEdBQUcsU0FBZEEsV0FBV0EsQ0FBR0MsR0FBRyxFQUFJO0VBQ2hDLElBQUlBLEdBQUcsQ0FBQ0YsS0FBSyxDQUFDLDhCQUE4QixDQUFDLEVBQUU7SUFDN0MsT0FBTyxPQUFPO0VBQ2hCO0VBQ0EsSUFBSUUsR0FBRyxDQUFDRixLQUFLLENBQUMsdUJBQXVCLENBQUMsRUFBRTtJQUN0QyxPQUFPLE9BQU87RUFDaEI7RUFDQSxJQUFJRSxHQUFHLENBQUNGLEtBQUssQ0FBQyxzRUFBc0UsQ0FBQyxFQUFFO0lBQ3JGLE9BQU8sT0FBTztFQUNoQjtFQUNBLE9BQU8sU0FBUztBQUNsQixDQUFDO0FBRU0sSUFBTUcsbUJBQW1CLEdBQUcsU0FBdEJBLG1CQUFtQkEsQ0FBSUMsS0FBSyxFQUFFQyxJQUFJO0VBQUEsT0FDN0NELEtBQUssQ0FBQ0UsSUFBSSxDQUFDLFVBQUFDLElBQUk7SUFBQSxPQUFJVCxRQUFRLENBQUNPLElBQUksQ0FBQ04sUUFBUSxDQUFDLEtBQUtRLElBQUk7RUFBQSxFQUFDO0FBQUE7QUFFdEQsSUFBTUMsZUFBZSxHQUFHO0VBQ3RCVixRQUFRLEVBQVJBLFFBQVE7RUFDUkcsV0FBVyxFQUFYQSxXQUFXO0VBQ1hFLG1CQUFtQixFQUFuQkE7QUFDRixDQUFDO0FBRUQsaUVBQWVLLGVBQWUiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL3NlcnZpY2VzL2ZpbGVfdHlwZS9maWxlX3R5cGUuc2VydmljZS5qcz85NjQ3Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIFRPRE8gdGhpcyBmdW5jIG1pZ2h0IGFzIHdlbGwgdGFrZSB0aGUgZW50aXJlIGZpbGUgYW5kIHVzZSBpdHMgbWltZXR5cGVcbi8vIG9yIHRoZSBlbnRpcmUgc2VydmljZSBjb3VsZCBiZSBqdXN0IG1pbWV0eXBlIHNlcnZpY2UgdGhhdCBvbmx5IG9wZXJhdGVzXG4vLyBvbiBtaW1ldHlwZXMgYW5kIG5vdCBmaWxlcy4gQ3VycmVudGx5IHRoZSBuYW1pbmcgaXMgY29uZnVzaW5nLlxuZXhwb3J0IGNvbnN0IGZpbGVUeXBlID0gbWltZXR5cGUgPT4ge1xuICBpZiAobWltZXR5cGUubWF0Y2goL2ZsYXNoLykpIHtcbiAgICByZXR1cm4gJ2ZsYXNoJ1xuICB9XG5cbiAgaWYgKG1pbWV0eXBlLm1hdGNoKC90ZXh0XFwvaHRtbC8pKSB7XG4gICAgcmV0dXJuICdodG1sJ1xuICB9XG5cbiAgaWYgKG1pbWV0eXBlLm1hdGNoKC9pbWFnZS8pKSB7XG4gICAgcmV0dXJuICdpbWFnZSdcbiAgfVxuXG4gIGlmIChtaW1ldHlwZS5tYXRjaCgvdmlkZW8vKSkge1xuICAgIHJldHVybiAndmlkZW8nXG4gIH1cblxuICBpZiAobWltZXR5cGUubWF0Y2goL2F1ZGlvLykpIHtcbiAgICByZXR1cm4gJ2F1ZGlvJ1xuICB9XG5cbiAgcmV0dXJuICd1bmtub3duJ1xufVxuXG5leHBvcnQgY29uc3QgZmlsZVR5cGVFeHQgPSB1cmwgPT4ge1xuICBpZiAodXJsLm1hdGNoKC9cXC4ocG5nfGpwZT9nfGdpZnx3ZWJwfGF2aWYpJC8pKSB7XG4gICAgcmV0dXJuICdpbWFnZSdcbiAgfVxuICBpZiAodXJsLm1hdGNoKC9cXC4ob2d2fG1wNHx3ZWJtfG1vdikkLykpIHtcbiAgICByZXR1cm4gJ3ZpZGVvJ1xuICB9XG4gIGlmICh1cmwubWF0Y2goL1xcLihpdHxzM218bW9kfHVteHxtcDN8YWFjfG00YXxmbGFjfGFsYWN8b2dnfG9nYXxvcHVzfHdhdnxhcGV8bWlkaT8pJC8pKSB7XG4gICAgcmV0dXJuICdhdWRpbydcbiAgfVxuICByZXR1cm4gJ3Vua25vd24nXG59XG5cbmV4cG9ydCBjb25zdCBmaWxlTWF0Y2hlc1NvbWVUeXBlID0gKHR5cGVzLCBmaWxlKSA9PlxuICB0eXBlcy5zb21lKHR5cGUgPT4gZmlsZVR5cGUoZmlsZS5taW1ldHlwZSkgPT09IHR5cGUpXG5cbmNvbnN0IGZpbGVUeXBlU2VydmljZSA9IHtcbiAgZmlsZVR5cGUsXG4gIGZpbGVUeXBlRXh0LFxuICBmaWxlTWF0Y2hlc1NvbWVUeXBlXG59XG5cbmV4cG9ydCBkZWZhdWx0IGZpbGVUeXBlU2VydmljZVxuIl0sIm5hbWVzIjpbImZpbGVUeXBlIiwibWltZXR5cGUiLCJtYXRjaCIsImZpbGVUeXBlRXh0IiwidXJsIiwiZmlsZU1hdGNoZXNTb21lVHlwZSIsInR5cGVzIiwiZmlsZSIsInNvbWUiLCJ0eXBlIiwiZmlsZVR5cGVTZXJ2aWNlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/services/file_type/file_type.service.js\n");
/***/ }),
/***/ "./src/services/follow_manipulate/follow_manipulate.js":
/*!*************************************************************!*\
!*** ./src/services/follow_manipulate/follow_manipulate.js ***!
\*************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"requestFollow\": () => (/* binding */ requestFollow),\n/* harmony export */ \"requestUnfollow\": () => (/* binding */ requestUnfollow)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ \"./node_modules/@babel/runtime/helpers/esm/slicedToArray.js\");\n\nvar fetchRelationship = function fetchRelationship(attempt, userId, store) {\n return new Promise(function (resolve, reject) {\n setTimeout(function () {\n store.state.api.backendInteractor.fetchUserRelationship({\n id: userId\n }).then(function (relationship) {\n store.commit('updateUserRelationship', [relationship]);\n return relationship;\n }).then(function (relationship) {\n return resolve([relationship.following, relationship.requested, relationship.locked, attempt]);\n })[\"catch\"](function (e) {\n return reject(e);\n });\n }, 500);\n }).then(function (_ref) {\n var _ref2 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(_ref, 4),\n following = _ref2[0],\n sent = _ref2[1],\n locked = _ref2[2],\n attempt = _ref2[3];\n if (!following && !(locked && sent) && attempt <= 3) {\n // If we BE reports that we still not following that user - retry,\n // increment attempts by one\n fetchRelationship(++attempt, userId, store);\n }\n });\n};\nvar requestFollow = function requestFollow(userId, store) {\n return new Promise(function (resolve, reject) {\n store.state.api.backendInteractor.followUser({\n id: userId\n }).then(function (updated) {\n store.commit('updateUserRelationship', [updated]);\n if (updated.following || updated.locked && updated.requested) {\n // If we get result immediately or the account is locked, just stop.\n resolve();\n return;\n }\n\n // But usually we don't get result immediately, so we ask server\n // for updated user profile to confirm if we are following them\n // Sometimes it takes several tries. Sometimes we end up not following\n // user anyway, probably because they locked themselves and we\n // don't know that yet.\n // Recursive Promise, it will call itself up to 3 times.\n\n return fetchRelationship(1, updated, store).then(function () {\n resolve();\n });\n });\n });\n};\nvar requestUnfollow = function requestUnfollow(userId, store) {\n return new Promise(function (resolve, reject) {\n store.state.api.backendInteractor.unfollowUser({\n id: userId\n }).then(function (updated) {\n store.commit('updateUserRelationship', [updated]);\n resolve({\n updated: updated\n });\n });\n });\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvZm9sbG93X21hbmlwdWxhdGUvZm9sbG93X21hbmlwdWxhdGUuanMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLElBQU1BLGlCQUFpQixHQUFHLFNBQXBCQSxpQkFBaUJBLENBQUlDLE9BQU8sRUFBRUMsTUFBTSxFQUFFQyxLQUFLO0VBQUEsT0FBSyxJQUFJQyxPQUFPLENBQUMsVUFBQ0MsT0FBTyxFQUFFQyxNQUFNLEVBQUs7SUFDckZDLFVBQVUsQ0FBQyxZQUFNO01BQ2ZKLEtBQUssQ0FBQ0ssS0FBSyxDQUFDQyxHQUFHLENBQUNDLGlCQUFpQixDQUFDQyxxQkFBcUIsQ0FBQztRQUFFQyxFQUFFLEVBQUVWO01BQU8sQ0FBQyxDQUFDLENBQ3BFVyxJQUFJLENBQUMsVUFBQ0MsWUFBWSxFQUFLO1FBQ3RCWCxLQUFLLENBQUNZLE1BQU0sQ0FBQyx3QkFBd0IsRUFBRSxDQUFDRCxZQUFZLENBQUMsQ0FBQztRQUN0RCxPQUFPQSxZQUFZO01BQ3JCLENBQUMsQ0FBQyxDQUNERCxJQUFJLENBQUMsVUFBQ0MsWUFBWTtRQUFBLE9BQUtULE9BQU8sQ0FBQyxDQUFDUyxZQUFZLENBQUNFLFNBQVMsRUFBRUYsWUFBWSxDQUFDRyxTQUFTLEVBQUVILFlBQVksQ0FBQ0ksTUFBTSxFQUFFakIsT0FBTyxDQUFDLENBQUM7TUFBQSxFQUFDLFNBQzFHLENBQUMsVUFBQ2tCLENBQUM7UUFBQSxPQUFLYixNQUFNLENBQUNhLENBQUMsQ0FBQztNQUFBLEVBQUM7SUFDNUIsQ0FBQyxFQUFFLEdBQUcsQ0FBQztFQUNULENBQUMsQ0FBQyxDQUFDTixJQUFJLENBQUMsVUFBQU8sSUFBQSxFQUF3QztJQUFBLElBQUFDLEtBQUEsR0FBQUMsZ0ZBQUEsQ0FBQUYsSUFBQTtNQUF0Q0osU0FBUyxHQUFBSyxLQUFBO01BQUVFLElBQUksR0FBQUYsS0FBQTtNQUFFSCxNQUFNLEdBQUFHLEtBQUE7TUFBRXBCLE9BQU8sR0FBQW9CLEtBQUE7SUFDeEMsSUFBSSxDQUFDTCxTQUFTLElBQUksRUFBRUUsTUFBTSxJQUFJSyxJQUFJLENBQUMsSUFBSXRCLE9BQU8sSUFBSSxDQUFDLEVBQUU7TUFDbkQ7TUFDQTtNQUNBRCxpQkFBaUIsQ0FBQyxFQUFFQyxPQUFPLEVBQUVDLE1BQU0sRUFBRUMsS0FBSyxDQUFDO0lBQzdDO0VBQ0YsQ0FBQyxDQUFDO0FBQUE7QUFFSyxJQUFNcUIsYUFBYSxHQUFHLFNBQWhCQSxhQUFhQSxDQUFJdEIsTUFBTSxFQUFFQyxLQUFLO0VBQUEsT0FBSyxJQUFJQyxPQUFPLENBQUMsVUFBQ0MsT0FBTyxFQUFFQyxNQUFNLEVBQUs7SUFDL0VILEtBQUssQ0FBQ0ssS0FBSyxDQUFDQyxHQUFHLENBQUNDLGlCQUFpQixDQUFDZSxVQUFVLENBQUM7TUFBRWIsRUFBRSxFQUFFVjtJQUFPLENBQUMsQ0FBQyxDQUN6RFcsSUFBSSxDQUFDLFVBQUNhLE9BQU8sRUFBSztNQUNqQnZCLEtBQUssQ0FBQ1ksTUFBTSxDQUFDLHdCQUF3QixFQUFFLENBQUNXLE9BQU8sQ0FBQyxDQUFDO01BRWpELElBQUlBLE9BQU8sQ0FBQ1YsU0FBUyxJQUFLVSxPQUFPLENBQUNSLE1BQU0sSUFBSVEsT0FBTyxDQUFDVCxTQUFVLEVBQUU7UUFDOUQ7UUFDQVosT0FBTyxDQUFDLENBQUM7UUFDVDtNQUNGOztNQUVBO01BQ0E7TUFDQTtNQUNBO01BQ0E7TUFDQTs7TUFFQSxPQUFPTCxpQkFBaUIsQ0FBQyxDQUFDLEVBQUUwQixPQUFPLEVBQUV2QixLQUFLLENBQUMsQ0FDeENVLElBQUksQ0FBQyxZQUFNO1FBQ1ZSLE9BQU8sQ0FBQyxDQUFDO01BQ1gsQ0FBQyxDQUFDO0lBQ04sQ0FBQyxDQUFDO0VBQ04sQ0FBQyxDQUFDO0FBQUE7QUFFSyxJQUFNc0IsZUFBZSxHQUFHLFNBQWxCQSxlQUFlQSxDQUFJekIsTUFBTSxFQUFFQyxLQUFLO0VBQUEsT0FBSyxJQUFJQyxPQUFPLENBQUMsVUFBQ0MsT0FBTyxFQUFFQyxNQUFNLEVBQUs7SUFDakZILEtBQUssQ0FBQ0ssS0FBSyxDQUFDQyxHQUFHLENBQUNDLGlCQUFpQixDQUFDa0IsWUFBWSxDQUFDO01BQUVoQixFQUFFLEVBQUVWO0lBQU8sQ0FBQyxDQUFDLENBQzNEVyxJQUFJLENBQUMsVUFBQ2EsT0FBTyxFQUFLO01BQ2pCdkIsS0FBSyxDQUFDWSxNQUFNLENBQUMsd0JBQXdCLEVBQUUsQ0FBQ1csT0FBTyxDQUFDLENBQUM7TUFDakRyQixPQUFPLENBQUM7UUFDTnFCLE9BQU8sRUFBUEE7TUFDRixDQUFDLENBQUM7SUFDSixDQUFDLENBQUM7RUFDTixDQUFDLENBQUM7QUFBQSIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvc2VydmljZXMvZm9sbG93X21hbmlwdWxhdGUvZm9sbG93X21hbmlwdWxhdGUuanM/YjY4YSJdLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBmZXRjaFJlbGF0aW9uc2hpcCA9IChhdHRlbXB0LCB1c2VySWQsIHN0b3JlKSA9PiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgIHN0b3JlLnN0YXRlLmFwaS5iYWNrZW5kSW50ZXJhY3Rvci5mZXRjaFVzZXJSZWxhdGlvbnNoaXAoeyBpZDogdXNlcklkIH0pXG4gICAgICAudGhlbigocmVsYXRpb25zaGlwKSA9PiB7XG4gICAgICAgIHN0b3JlLmNvbW1pdCgndXBkYXRlVXNlclJlbGF0aW9uc2hpcCcsIFtyZWxhdGlvbnNoaXBdKVxuICAgICAgICByZXR1cm4gcmVsYXRpb25zaGlwXG4gICAgICB9KVxuICAgICAgLnRoZW4oKHJlbGF0aW9uc2hpcCkgPT4gcmVzb2x2ZShbcmVsYXRpb25zaGlwLmZvbGxvd2luZywgcmVsYXRpb25zaGlwLnJlcXVlc3RlZCwgcmVsYXRpb25zaGlwLmxvY2tlZCwgYXR0ZW1wdF0pKVxuICAgICAgLmNhdGNoKChlKSA9PiByZWplY3QoZSkpXG4gIH0sIDUwMClcbn0pLnRoZW4oKFtmb2xsb3dpbmcsIHNlbnQsIGxvY2tlZCwgYXR0ZW1wdF0pID0+IHtcbiAgaWYgKCFmb2xsb3dpbmcgJiYgIShsb2NrZWQgJiYgc2VudCkgJiYgYXR0ZW1wdCA8PSAzKSB7XG4gICAgLy8gSWYgd2UgQkUgcmVwb3J0cyB0aGF0IHdlIHN0aWxsIG5vdCBmb2xsb3dpbmcgdGhhdCB1c2VyIC0gcmV0cnksXG4gICAgLy8gaW5jcmVtZW50IGF0dGVtcHRzIGJ5IG9uZVxuICAgIGZldGNoUmVsYXRpb25zaGlwKCsrYXR0ZW1wdCwgdXNlcklkLCBzdG9yZSlcbiAgfVxufSlcblxuZXhwb3J0IGNvbnN0IHJlcXVlc3RGb2xsb3cgPSAodXNlcklkLCBzdG9yZSkgPT4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICBzdG9yZS5zdGF0ZS5hcGkuYmFja2VuZEludGVyYWN0b3IuZm9sbG93VXNlcih7IGlkOiB1c2VySWQgfSlcbiAgICAudGhlbigodXBkYXRlZCkgPT4ge1xuICAgICAgc3RvcmUuY29tbWl0KCd1cGRhdGVVc2VyUmVsYXRpb25zaGlwJywgW3VwZGF0ZWRdKVxuXG4gICAgICBpZiAodXBkYXRlZC5mb2xsb3dpbmcgfHwgKHVwZGF0ZWQubG9ja2VkICYmIHVwZGF0ZWQucmVxdWVzdGVkKSkge1xuICAgICAgICAvLyBJZiB3ZSBnZXQgcmVzdWx0IGltbWVkaWF0ZWx5IG9yIHRoZSBhY2NvdW50IGlzIGxvY2tlZCwganVzdCBzdG9wLlxuICAgICAgICByZXNvbHZlKClcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIC8vIEJ1dCB1c3VhbGx5IHdlIGRvbid0IGdldCByZXN1bHQgaW1tZWRpYXRlbHksIHNvIHdlIGFzayBzZXJ2ZXJcbiAgICAgIC8vIGZvciB1cGRhdGVkIHVzZXIgcHJvZmlsZSB0byBjb25maXJtIGlmIHdlIGFyZSBmb2xsb3dpbmcgdGhlbVxuICAgICAgLy8gU29tZXRpbWVzIGl0IHRha2VzIHNldmVyYWwgdHJpZXMuIFNvbWV0aW1lcyB3ZSBlbmQgdXAgbm90IGZvbGxvd2luZ1xuICAgICAgLy8gdXNlciBhbnl3YXksIHByb2JhYmx5IGJlY2F1c2UgdGhleSBsb2NrZWQgdGhlbXNlbHZlcyBhbmQgd2VcbiAgICAgIC8vIGRvbid0IGtub3cgdGhhdCB5ZXQuXG4gICAgICAvLyBSZWN1cnNpdmUgUHJvbWlzZSwgaXQgd2lsbCBjYWxsIGl0c2VsZiB1cCB0byAzIHRpbWVzLlxuXG4gICAgICByZXR1cm4gZmV0Y2hSZWxhdGlvbnNoaXAoMSwgdXBkYXRlZCwgc3RvcmUpXG4gICAgICAgIC50aGVuKCgpID0+IHtcbiAgICAgICAgICByZXNvbHZlKClcbiAgICAgICAgfSlcbiAgICB9KVxufSlcblxuZXhwb3J0IGNvbnN0IHJlcXVlc3RVbmZvbGxvdyA9ICh1c2VySWQsIHN0b3JlKSA9PiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gIHN0b3JlLnN0YXRlLmFwaS5iYWNrZW5kSW50ZXJhY3Rvci51bmZvbGxvd1VzZXIoeyBpZDogdXNlcklkIH0pXG4gICAgLnRoZW4oKHVwZGF0ZWQpID0+IHtcbiAgICAgIHN0b3JlLmNvbW1pdCgndXBkYXRlVXNlclJlbGF0aW9uc2hpcCcsIFt1cGRhdGVkXSlcbiAgICAgIHJlc29sdmUoe1xuICAgICAgICB1cGRhdGVkXG4gICAgICB9KVxuICAgIH0pXG59KVxuIl0sIm5hbWVzIjpbImZldGNoUmVsYXRpb25zaGlwIiwiYXR0ZW1wdCIsInVzZXJJZCIsInN0b3JlIiwiUHJvbWlzZSIsInJlc29sdmUiLCJyZWplY3QiLCJzZXRUaW1lb3V0Iiwic3RhdGUiLCJhcGkiLCJiYWNrZW5kSW50ZXJhY3RvciIsImZldGNoVXNlclJlbGF0aW9uc2hpcCIsImlkIiwidGhlbiIsInJlbGF0aW9uc2hpcCIsImNvbW1pdCIsImZvbGxvd2luZyIsInJlcXVlc3RlZCIsImxvY2tlZCIsImUiLCJfcmVmIiwiX3JlZjIiLCJfc2xpY2VkVG9BcnJheSIsInNlbnQiLCJyZXF1ZXN0Rm9sbG93IiwiZm9sbG93VXNlciIsInVwZGF0ZWQiLCJyZXF1ZXN0VW5mb2xsb3ciLCJ1bmZvbGxvd1VzZXIiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/services/follow_manipulate/follow_manipulate.js\n");
/***/ }),
/***/ "./src/services/follow_request_fetcher/follow_request_fetcher.service.js":
/*!*******************************************************************************!*\
!*** ./src/services/follow_request_fetcher/follow_request_fetcher.service.js ***!
\*******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _api_api_service_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../api/api.service.js */ \"./src/services/api/api.service.js\");\n/* harmony import */ var _promise_interval_promise_interval_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../promise_interval/promise_interval.js */ \"./src/services/promise_interval/promise_interval.js\");\n\n\nvar fetchAndUpdate = function fetchAndUpdate(_ref) {\n var store = _ref.store,\n credentials = _ref.credentials;\n return _api_api_service_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].fetchFollowRequests({\n credentials: credentials\n }).then(function (requests) {\n store.commit('setFollowRequests', requests);\n store.commit('addNewUsers', requests);\n }, function () {})[\"catch\"](function () {});\n};\nvar startFetching = function startFetching(_ref2) {\n var credentials = _ref2.credentials,\n store = _ref2.store;\n var boundFetchAndUpdate = function boundFetchAndUpdate() {\n return fetchAndUpdate({\n credentials: credentials,\n store: store\n });\n };\n boundFetchAndUpdate();\n return (0,_promise_interval_promise_interval_js__WEBPACK_IMPORTED_MODULE_1__.promiseInterval)(boundFetchAndUpdate, 10000);\n};\nvar followRequestFetcher = {\n startFetching: startFetching\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (followRequestFetcher);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvZm9sbG93X3JlcXVlc3RfZmV0Y2hlci9mb2xsb3dfcmVxdWVzdF9mZXRjaGVyLnNlcnZpY2UuanMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQThDO0FBQzJCO0FBRXpFLElBQU1FLGNBQWMsR0FBRyxTQUFqQkEsY0FBY0EsQ0FBQUMsSUFBQSxFQUErQjtFQUFBLElBQXpCQyxLQUFLLEdBQUFELElBQUEsQ0FBTEMsS0FBSztJQUFFQyxXQUFXLEdBQUFGLElBQUEsQ0FBWEUsV0FBVztFQUMxQyxPQUFPTCwrRUFBOEIsQ0FBQztJQUFFSyxXQUFXLEVBQVhBO0VBQVksQ0FBQyxDQUFDLENBQ25ERSxJQUFJLENBQUMsVUFBQ0MsUUFBUSxFQUFLO0lBQ2xCSixLQUFLLENBQUNLLE1BQU0sQ0FBQyxtQkFBbUIsRUFBRUQsUUFBUSxDQUFDO0lBQzNDSixLQUFLLENBQUNLLE1BQU0sQ0FBQyxhQUFhLEVBQUVELFFBQVEsQ0FBQztFQUN2QyxDQUFDLEVBQUUsWUFBTSxDQUFDLENBQUMsQ0FBQyxTQUNOLENBQUMsWUFBTSxDQUFDLENBQUMsQ0FBQztBQUNwQixDQUFDO0FBRUQsSUFBTUUsYUFBYSxHQUFHLFNBQWhCQSxhQUFhQSxDQUFBQyxLQUFBLEVBQStCO0VBQUEsSUFBekJOLFdBQVcsR0FBQU0sS0FBQSxDQUFYTixXQUFXO0lBQUVELEtBQUssR0FBQU8sS0FBQSxDQUFMUCxLQUFLO0VBQ3pDLElBQU1RLG1CQUFtQixHQUFHLFNBQXRCQSxtQkFBbUJBLENBQUE7SUFBQSxPQUFTVixjQUFjLENBQUM7TUFBRUcsV0FBVyxFQUFYQSxXQUFXO01BQUVELEtBQUssRUFBTEE7SUFBTSxDQUFDLENBQUM7RUFBQTtFQUN4RVEsbUJBQW1CLENBQUMsQ0FBQztFQUNyQixPQUFPWCxzRkFBZSxDQUFDVyxtQkFBbUIsRUFBRSxLQUFLLENBQUM7QUFDcEQsQ0FBQztBQUVELElBQU1DLG9CQUFvQixHQUFHO0VBQzNCSCxhQUFhLEVBQWJBO0FBQ0YsQ0FBQztBQUVELGlFQUFlRyxvQkFBb0IiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL3NlcnZpY2VzL2ZvbGxvd19yZXF1ZXN0X2ZldGNoZXIvZm9sbG93X3JlcXVlc3RfZmV0Y2hlci5zZXJ2aWNlLmpzPzk0NmYiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGFwaVNlcnZpY2UgZnJvbSAnLi4vYXBpL2FwaS5zZXJ2aWNlLmpzJ1xuaW1wb3J0IHsgcHJvbWlzZUludGVydmFsIH0gZnJvbSAnLi4vcHJvbWlzZV9pbnRlcnZhbC9wcm9taXNlX2ludGVydmFsLmpzJ1xuXG5jb25zdCBmZXRjaEFuZFVwZGF0ZSA9ICh7IHN0b3JlLCBjcmVkZW50aWFscyB9KSA9PiB7XG4gIHJldHVybiBhcGlTZXJ2aWNlLmZldGNoRm9sbG93UmVxdWVzdHMoeyBjcmVkZW50aWFscyB9KVxuICAgIC50aGVuKChyZXF1ZXN0cykgPT4ge1xuICAgICAgc3RvcmUuY29tbWl0KCdzZXRGb2xsb3dSZXF1ZXN0cycsIHJlcXVlc3RzKVxuICAgICAgc3RvcmUuY29tbWl0KCdhZGROZXdVc2VycycsIHJlcXVlc3RzKVxuICAgIH0sICgpID0+IHt9KVxuICAgIC5jYXRjaCgoKSA9PiB7fSlcbn1cblxuY29uc3Qgc3RhcnRGZXRjaGluZyA9ICh7IGNyZWRlbnRpYWxzLCBzdG9yZSB9KSA9PiB7XG4gIGNvbnN0IGJvdW5kRmV0Y2hBbmRVcGRhdGUgPSAoKSA9PiBmZXRjaEFuZFVwZGF0ZSh7IGNyZWRlbnRpYWxzLCBzdG9yZSB9KVxuICBib3VuZEZldGNoQW5kVXBkYXRlKClcbiAgcmV0dXJuIHByb21pc2VJbnRlcnZhbChib3VuZEZldGNoQW5kVXBkYXRlLCAxMDAwMClcbn1cblxuY29uc3QgZm9sbG93UmVxdWVzdEZldGNoZXIgPSB7XG4gIHN0YXJ0RmV0Y2hpbmdcbn1cblxuZXhwb3J0IGRlZmF1bHQgZm9sbG93UmVxdWVzdEZldGNoZXJcbiJdLCJuYW1lcyI6WyJhcGlTZXJ2aWNlIiwicHJvbWlzZUludGVydmFsIiwiZmV0Y2hBbmRVcGRhdGUiLCJfcmVmIiwic3RvcmUiLCJjcmVkZW50aWFscyIsImZldGNoRm9sbG93UmVxdWVzdHMiLCJ0aGVuIiwicmVxdWVzdHMiLCJjb21taXQiLCJzdGFydEZldGNoaW5nIiwiX3JlZjIiLCJib3VuZEZldGNoQW5kVXBkYXRlIiwiZm9sbG93UmVxdWVzdEZldGNoZXIiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/services/follow_request_fetcher/follow_request_fetcher.service.js\n");
/***/ }),
/***/ "./src/services/gesture_service/gesture_service.js":
/*!*********************************************************!*\
!*** ./src/services/gesture_service/gesture_service.js ***!
\*********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ \"./node_modules/@babel/runtime/helpers/esm/classCallCheck.js\");\n/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ \"./node_modules/@babel/runtime/helpers/esm/createClass.js\");\n\n\nvar DIRECTION_LEFT = [-1, 0];\nvar DIRECTION_RIGHT = [1, 0];\nvar DIRECTION_UP = [0, -1];\nvar DIRECTION_DOWN = [0, 1];\nvar BUTTON_LEFT = 0;\nvar deltaCoord = function deltaCoord(oldCoord, newCoord) {\n return [newCoord[0] - oldCoord[0], newCoord[1] - oldCoord[1]];\n};\nvar touchCoord = function touchCoord(touch) {\n return [touch.screenX, touch.screenY];\n};\nvar touchEventCoord = function touchEventCoord(e) {\n return touchCoord(e.touches[0]);\n};\nvar pointerEventCoord = function pointerEventCoord(e) {\n return [e.clientX, e.clientY];\n};\nvar vectorLength = function vectorLength(v) {\n return Math.sqrt(v[0] * v[0] + v[1] * v[1]);\n};\nvar perpendicular = function perpendicular(v) {\n return [v[1], -v[0]];\n};\nvar dotProduct = function dotProduct(v1, v2) {\n return v1[0] * v2[0] + v1[1] * v2[1];\n};\nvar project = function project(v1, v2) {\n var scalar = dotProduct(v1, v2) / dotProduct(v2, v2);\n return [scalar * v2[0], scalar * v2[1]];\n};\n\n// direction: either use the constants above or an arbitrary 2d vector.\n// threshold: how many Px to move from touch origin before checking if the\n// callback should be called.\n// divergentTolerance: a scalar for much of divergent direction we tolerate when\n// above threshold. for example, with 1.0 we only call the callback if\n// divergent component of delta is < 1.0 * direction component of delta.\nvar swipeGesture = function swipeGesture(direction, onSwipe) {\n var threshold = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 30;\n var perpendicularTolerance = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 1.0;\n return {\n direction: direction,\n onSwipe: onSwipe,\n threshold: threshold,\n perpendicularTolerance: perpendicularTolerance,\n _startPos: [0, 0],\n _swiping: false\n };\n};\nvar beginSwipe = function beginSwipe(event, gesture) {\n gesture._startPos = touchEventCoord(event);\n gesture._swiping = true;\n};\nvar updateSwipe = function updateSwipe(event, gesture) {\n if (!gesture._swiping) return;\n // movement too small\n var delta = deltaCoord(gesture._startPos, touchEventCoord(event));\n if (vectorLength(delta) < gesture.threshold) return;\n // movement is opposite from direction\n if (dotProduct(delta, gesture.direction) < 0) return;\n // movement perpendicular to direction is too much\n var towardsDir = project(delta, gesture.direction);\n var perpendicularDir = perpendicular(gesture.direction);\n var towardsPerpendicular = project(delta, perpendicularDir);\n if (vectorLength(towardsDir) * gesture.perpendicularTolerance < vectorLength(towardsPerpendicular)) return;\n gesture.onSwipe();\n gesture._swiping = false;\n};\nvar SwipeAndClickGesture = /*#__PURE__*/function () {\n // swipePreviewCallback(offsets: Array[Number])\n // offsets: the offset vector which the underlying component should move, from the starting position\n // swipeEndCallback(sign: 0|-1|1)\n // sign: if the swipe does not meet the threshold, 0\n // if the swipe meets the threshold in the positive direction, 1\n // if the swipe meets the threshold in the negative direction, -1\n function SwipeAndClickGesture(_ref) {\n var direction = _ref.direction,\n swipePreviewCallback = _ref.swipePreviewCallback,\n swipeEndCallback = _ref.swipeEndCallback,\n swipeCancelCallback = _ref.swipeCancelCallback,\n swipelessClickCallback = _ref.swipelessClickCallback,\n _ref$threshold = _ref.threshold,\n threshold = _ref$threshold === void 0 ? 30 : _ref$threshold,\n _ref$perpendicularTol = _ref.perpendicularTolerance,\n perpendicularTolerance = _ref$perpendicularTol === void 0 ? 1.0 : _ref$perpendicularTol,\n _ref$disableClickThre = _ref.disableClickThreshold,\n disableClickThreshold = _ref$disableClickThre === void 0 ? 1 : _ref$disableClickThre;\n (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(this, SwipeAndClickGesture);\n var nop = function nop() {};\n this.direction = direction;\n this.swipePreviewCallback = swipePreviewCallback || nop;\n this.swipeEndCallback = swipeEndCallback || nop;\n this.swipeCancelCallback = swipeCancelCallback || nop;\n this.swipelessClickCallback = swipelessClickCallback || nop;\n this.threshold = typeof threshold === 'function' ? threshold : function () {\n return threshold;\n };\n this.disableClickThreshold = typeof disableClickThreshold === 'function' ? disableClickThreshold : function () {\n return disableClickThreshold;\n };\n this.perpendicularTolerance = perpendicularTolerance;\n this._reset();\n }\n (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(SwipeAndClickGesture, [{\n key: \"_reset\",\n value: function _reset() {\n this._startPos = [0, 0];\n this._pointerId = -1;\n this._swiping = false;\n this._swiped = false;\n this._preventNextClick = false;\n }\n }, {\n key: \"start\",\n value: function start(event) {\n // Only handle left click\n if (event.button !== BUTTON_LEFT) {\n return;\n }\n this._startPos = pointerEventCoord(event);\n this._pointerId = event.pointerId;\n this._swiping = true;\n this._swiped = false;\n }\n }, {\n key: \"move\",\n value: function move(event) {\n if (this._swiping && this._pointerId === event.pointerId) {\n this._swiped = true;\n var coord = pointerEventCoord(event);\n var delta = deltaCoord(this._startPos, coord);\n this.swipePreviewCallback(delta);\n }\n }\n }, {\n key: \"cancel\",\n value: function cancel(event) {\n if (!this._swiping || this._pointerId !== event.pointerId) {\n return;\n }\n this.swipeCancelCallback();\n }\n }, {\n key: \"end\",\n value: function end(event) {\n var _this = this;\n if (!this._swiping) {\n return;\n }\n if (this._pointerId !== event.pointerId) {\n return;\n }\n this._swiping = false;\n\n // movement too small\n var coord = pointerEventCoord(event);\n var delta = deltaCoord(this._startPos, coord);\n var sign = function () {\n if (vectorLength(delta) < _this.threshold()) {\n return 0;\n }\n // movement is opposite from direction\n var isPositive = dotProduct(delta, _this.direction) > 0;\n\n // movement perpendicular to direction is too much\n var towardsDir = project(delta, _this.direction);\n var perpendicularDir = perpendicular(_this.direction);\n var towardsPerpendicular = project(delta, perpendicularDir);\n if (vectorLength(towardsDir) * _this.perpendicularTolerance < vectorLength(towardsPerpendicular)) {\n return 0;\n }\n return isPositive ? 1 : -1;\n }();\n if (this._swiped) {\n this.swipeEndCallback(sign);\n }\n this._reset();\n // Only a mouse will fire click event when\n // the end point is far from the starting point\n // so for other kinds of pointers do not check\n // whether we have swiped\n if (vectorLength(delta) >= this.disableClickThreshold() && event.pointerType === 'mouse') {\n this._preventNextClick = true;\n }\n }\n }, {\n key: \"click\",\n value: function click(event) {\n if (!this._preventNextClick) {\n this.swipelessClickCallback();\n }\n this._reset();\n }\n }]);\n return SwipeAndClickGesture;\n}();\nvar GestureService = {\n DIRECTION_LEFT: DIRECTION_LEFT,\n DIRECTION_RIGHT: DIRECTION_RIGHT,\n DIRECTION_UP: DIRECTION_UP,\n DIRECTION_DOWN: DIRECTION_DOWN,\n swipeGesture: swipeGesture,\n beginSwipe: beginSwipe,\n updateSwipe: updateSwipe,\n SwipeAndClickGesture: SwipeAndClickGesture\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (GestureService);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvZ2VzdHVyZV9zZXJ2aWNlL2dlc3R1cmVfc2VydmljZS5qcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUNBLElBQU1BLGNBQWMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUM5QixJQUFNQyxlQUFlLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0FBQzlCLElBQU1DLFlBQVksR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztBQUM1QixJQUFNQyxjQUFjLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0FBRTdCLElBQU1DLFdBQVcsR0FBRyxDQUFDO0FBRXJCLElBQU1DLFVBQVUsR0FBRyxTQUFiQSxVQUFVQSxDQUFJQyxRQUFRLEVBQUVDLFFBQVE7RUFBQSxPQUFLLENBQUNBLFFBQVEsQ0FBQyxDQUFDLENBQUMsR0FBR0QsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUdELFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUFBO0FBRWpHLElBQU1FLFVBQVUsR0FBRyxTQUFiQSxVQUFVQSxDQUFHQyxLQUFLO0VBQUEsT0FBSSxDQUFDQSxLQUFLLENBQUNDLE9BQU8sRUFBRUQsS0FBSyxDQUFDRSxPQUFPLENBQUM7QUFBQTtBQUUxRCxJQUFNQyxlQUFlLEdBQUcsU0FBbEJBLGVBQWVBLENBQUdDLENBQUM7RUFBQSxPQUFJTCxVQUFVLENBQUNLLENBQUMsQ0FBQ0MsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQUE7QUFFckQsSUFBTUMsaUJBQWlCLEdBQUcsU0FBcEJBLGlCQUFpQkEsQ0FBR0YsQ0FBQztFQUFBLE9BQUksQ0FBQ0EsQ0FBQyxDQUFDRyxPQUFPLEVBQUVILENBQUMsQ0FBQ0ksT0FBTyxDQUFDO0FBQUE7QUFFckQsSUFBTUMsWUFBWSxHQUFHLFNBQWZBLFlBQVlBLENBQUdDLENBQUM7RUFBQSxPQUFJQyxJQUFJLENBQUNDLElB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QixpQkFBaUIsRUFBRTtRQUMzQixJQUFJLENBQUNiLHNCQUFzQixDQUFDLENBQUM7TUFDL0I7TUFDQSxJQUFJLENBQUNPLE1BQU0sQ0FBQyxDQUFDO0lBQ2Y7RUFBQztFQUFBLE9BQUFaLG9CQUFBO0FBQUE7QUFHSCxJQUFNK0IsY0FBYyxHQUFHO0VBQ3JCN0UsY0FBYyxFQUFkQSxjQUFjO0VBQ2RDLGVBQWUsRUFBZkEsZUFBZTtFQUNmQyxZQUFZLEVBQVpBLFlBQVk7RUFDWkMsY0FBYyxFQUFkQSxjQUFjO0VBQ2R5QixZQUFZLEVBQVpBLFlBQVk7RUFDWlUsVUFBVSxFQUFWQSxVQUFVO0VBQ1ZHLFdBQVcsRUFBWEEsV0FBVztFQUNYSyxvQkFBb0IsRUFBcEJBO0FBQ0YsQ0FBQztBQUVELGlFQUFlK0IsY0FBYyIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvc2VydmljZXMvZ2VzdHVyZV9zZXJ2aWNlL2dlc3R1cmVfc2VydmljZS5qcz9kYjQ4Il0sInNvdXJjZXNDb250ZW50IjpbIlxuY29uc3QgRElSRUNUSU9OX0xFRlQgPSBbLTEsIDBdXG5jb25zdCBESVJFQ1RJT05fUklHSFQgPSBbMSwgMF1cbmNvbnN0IERJUkVDVElPTl9VUCA9IFswLCAtMV1cbmNvbnN0IERJUkVDVElPTl9ET1dOID0gWzAsIDFdXG5cbmNvbnN0IEJVVFRPTl9MRUZUID0gMFxuXG5jb25zdCBkZWx0YUNvb3JkID0gKG9sZENvb3JkLCBuZXdDb29yZCkgPT4gW25ld0Nvb3JkWzBdIC0gb2xkQ29vcmRbMF0sIG5ld0Nvb3JkWzFdIC0gb2xkQ29vcmRbMV1dXG5cbmNvbnN0IHRvdWNoQ29vcmQgPSB0b3VjaCA9PiBbdG91Y2guc2NyZWVuWCwgdG91Y2guc2NyZWVuWV1cblxuY29uc3QgdG91Y2hFdmVudENvb3JkID0gZSA9PiB0b3VjaENvb3JkKGUudG91Y2hlc1swXSlcblxuY29uc3QgcG9pbnRlckV2ZW50Q29vcmQgPSBlID0+IFtlLmNsaWVudFgsIGUuY2xpZW50WV1cblxuY29uc3QgdmVjdG9yTGVuZ3RoID0gdiA9PiBNYXRoLnNxcnQodlswXSAqIHZbMF0gKyB2WzFdICogdlsxXSlcblxuY29uc3QgcGVycGVuZGljdWxhciA9IHYgPT4gW3ZbMV0sIC12WzBdXVxuXG5jb25zdCBkb3RQcm9kdWN0ID0gKHYxLCB2MikgPT4gdjFbMF0gKiB2MlswXSArIHYxWzFdICogdjJbMV1cblxuY29uc3QgcHJvamVjdCA9ICh2MSwgdjIpID0+IHtcbiAgY29uc3Qgc2NhbGFyID0gKGRvdFByb2R1Y3QodjEsIHYyKSAvIGRvdFByb2R1Y3QodjIsIHYyKSlcbiAgcmV0dXJuIFtzY2FsYXIgKiB2MlswXSwgc2NhbGFyICogdjJbMV1dXG59XG5cbi8vIGRpcmVjdGlvbjogZWl0aGVyIHVzZSB0aGUgY29uc3RhbnRzIGFib3ZlIG9yIGFuIGFyYml0cmFyeSAyZCB2ZWN0b3IuXG4vLyB0aHJlc2hvbGQ6IGhvdyBtYW55IFB4IHRvIG1vdmUgZnJvbSB0b3VjaCBvcmlnaW4gYmVmb3JlIGNoZWNraW5nIGlmIHRoZVxuLy8gICAgY2FsbGJhY2sgc2hvdWxkIGJlIGNhbGxlZC5cbi8vIGRpdmVyZ2VudFRvbGVyYW5jZTogYSBzY2FsYXIgZm9yIG11Y2ggb2YgZGl2ZXJnZW50IGRpcmVjdGlvbiB3ZSB0b2xlcmF0ZSB3aGVuXG4vLyAgICBhYm92ZSB0aHJlc2hvbGQuIGZvciBleGFtcGxlLCB3aXRoIDEuMCB3ZSBvbmx5IGNhbGwgdGhlIGNhbGxiYWNrIGlmXG4vLyAgICBkaXZlcmdlbnQgY29tcG9uZW50IG9mIGRlbHRhIGlzIDwgMS4wICogZGlyZWN0aW9uIGNvbXBvbmVudCBvZiBkZWx0YS5cbmNvbnN0IHN3aXBlR2VzdHVyZSA9IChkaXJlY3Rpb24sIG9uU3dpcGUsIHRocmVzaG9sZCA9IDMwLCBwZXJwZW5kaWN1bGFyVG9sZXJhbmNlID0gMS4wKSA9PiB7XG4gIHJldHVybiB7XG4gICAgZGlyZWN0aW9uLFxuICAgIG9uU3dpcGUsXG4gICAgdGhyZXNob2xkLFxuICAgIHBlcnBlbmRpY3VsYXJUb2xlcmFuY2UsXG4gICAgX3N0YXJ0UG9zOiBbMCwgMF0sXG4gICAgX3N3aXBpbmc6IGZhbHNlXG4gIH1cbn1cblxuY29uc3QgYmVnaW5Td2lwZSA9IChldmVudCwgZ2VzdHVyZSkgPT4ge1xuICBnZXN0dXJlLl9zdGFydFBvcyA9IHRvdWNoRXZlbnRDb29yZChldmVudClcbiAgZ2VzdHVyZS5fc3dpcGluZyA9IHRydWVcbn1cblxuY29uc3QgdXBkYXRlU3dpcGUgPSAoZXZlbnQsIGdlc3R1cmUpID0+IHtcbiAgaWYgKCFnZXN0dXJlLl9zd2lwaW5nKSByZXR1cm5cbiAgLy8gbW92ZW1lbnQgdG9vIHNtYWxsXG4gIGNvbnN0IGRlbHRhID0gZGVsdGFDb29yZChnZXN0dXJlLl9zdGFydFBvcywgdG91Y2hFdmVudENvb3JkKGV2ZW50KSlcbiAgaWYgKHZlY3Rvckxlbmd0aChkZWx0YSkgPCBnZXN0dXJlLnRocmVzaG9sZCkgcmV0dXJuXG4gIC8vIG1vdmVtZW50IGlzIG9wcG9zaXRlIGZyb20gZGlyZWN0aW9uXG4gIGlmIChkb3RQcm9kdWN0KGRlbHRhLCBnZXN0dXJlLmRpcmVjdGlvbikgPCAwKSByZXR1cm5cbiAgLy8gbW92ZW1lbnQgcGVycGVuZGljdWxhciB0byBkaXJlY3Rpb24gaXMgdG9vIG11Y2hcbiAgY29uc3QgdG93YXJkc0RpciA9IHByb2plY3QoZGVsdGEsIGdlc3R1cmUuZGlyZWN0aW9uKVxuICBjb25zdCBwZXJwZW5kaWN1bGFyRGlyID0gcGVycGVuZGljdWxhcihnZXN0dXJlLmRpcmVjdGlvbilcbiAgY29uc3QgdG93YXJkc1BlcnBlbmRpY3VsYXIgPSBwcm9qZWN0KGRlbHRhLCBwZXJwZW5kaWN1bGFyRGlyKVxuICBpZiAoXG4gICAgdmVjdG9yTGVuZ3RoKHRvd2FyZHNEaXIpICogZ2VzdHVyZS5wZXJwZW5kaWN1bGFyVG9sZXJhbmNlIDxcbiAgICB2ZWN0b3JMZW5ndGgodG93YXJkc1BlcnBlbmRpY3VsYXIpXG4gICkgcmV0dXJuXG5cbiAgZ2VzdHVyZS5vblN3aXBlKClcbiAgZ2VzdHVyZS5fc3dpcGluZyA9IGZhbHNlXG59XG5cbmNsYXNzIFN3aXBlQW5kQ2xpY2tHZXN0dXJlIHtcbiAgLy8gc3dpcGVQcmV2aWV3Q2FsbGJhY2sob2Zmc2V0czogQXJyYXlbTnVtYmVyXSlcbiAgLy8gICBvZmZzZXRzOiB0aGUgb2Zmc2V0IHZlY3RvciB3aGljaCB0aGUgdW5kZXJseWluZyBjb21wb25lbnQgc2hvdWxkIG1vdmUsIGZyb20gdGhlIHN0YXJ0aW5nIHBvc2l0aW9uXG4gIC8vIHN3aXBlRW5kQ2FsbGJhY2soc2lnbjogMHwtMXwxKVxuICAvLyAgIHNpZ246IGlmIHRoZSBzd2lwZSBkb2VzIG5vdCBtZWV0IHRoZSB0aHJlc2hvbGQsIDBcbiAgLy8gICAgICAgICBpZiB0aGUgc3dpcGUgbWVldHMgdGhlIHRocmVzaG9sZCBpbiB0aGUgcG9zaXRpdmUgZGlyZWN0aW9uLCAxXG4gIC8vICAgICAgICAgaWYgdGhlIHN3aXBlIG1lZXRzIHRoZSB0aHJlc2hvbGQgaW4gdGhlIG5lZ2F0aXZlIGRpcmVjdGlvbiwgLTFcbiAgY29uc3RydWN0b3IgKHtcbiAgICBkaXJlY3Rpb24sXG4gICAgLy8gc3dpcGVTdGFydENhbGxiYWNrXG4gICAgc3dpcGVQcmV2aWV3Q2FsbGJhY2ssXG4gICAgc3dpcGVFbmRDYWxsYmFjayxcbiAgICBzd2lwZUNhbmNlbENhbGxiYWNrLFxuICAgIHN3aXBlbGVzc0NsaWNrQ2FsbGJhY2ssXG4gICAgdGhyZXNob2xkID0gMzAsXG4gICAgcGVycGVuZGljdWxhclRvbGVyYW5jZSA9IDEuMCxcbiAgICBkaXNhYmxlQ2xpY2tUaHJlc2hvbGQgPSAxXG4gIH0pIHtcbiAgICBjb25zdCBub3AgPSAoKSA9PiB7fVxuICAgIHRoaXMuZGlyZWN0aW9uID0gZGlyZWN0aW9uXG4gICAgdGhpcy5zd2lwZVByZXZpZXdDYWxsYmFjayA9IHN3aXBlUHJldmlld0NhbGxiYWNrIHx8IG5vcFxuICAgIHRoaXMuc3dpcGVFbmRDYWxsYmFjayA9IHN3aXBlRW5kQ2FsbGJhY2sgfHwgbm9wXG4gICAgdGhpcy5zd2lwZUNhbmNlbENhbGxiYWNrID0gc3dpcGVDYW5jZWxDYWxsYmFjayB8fCBub3BcbiAgICB0aGlzLnN3aXBlbGVzc0NsaWNrQ2FsbGJhY2sgPSBzd2lwZWxlc3NDbGlja0NhbGxiYWNrIHx8IG5vcFxuICAgIHRoaXMudGhyZXNob2xkID0gdHlwZW9mIHRocmVzaG9sZCA9PT0gJ2Z1bmN0aW9uJyA/IHRocmVzaG9sZCA6ICgpID0+IHRocmVzaG9sZFxuICAgIHRoaXMuZGlzYWJsZUNsaWNrVGhyZXNob2xkID0gdHlwZW9mIGRpc2FibGVDbGlja1RocmVzaG9sZCA9PT0gJ2Z1bmN0aW9uJyA/IGRpc2FibGVDbGlja1RocmVzaG9sZCA6ICgpID0+IGRpc2FibGVDbGlja1RocmVzaG9sZFxuICAgIHRoaXMucGVycGVuZGljdWxhclRvbGVyYW5jZSA9IHBlcnBlbmRpY3VsYXJUb2xlcmFuY2VcbiAgICB0aGlzLl9yZXNldCgpXG4gIH1cblxuICBfcmVzZXQgKCkge1xuICAgIHRoaXMuX3N0YXJ0UG9zID0gWzAsIDBdXG4gICAgdGhpcy5fcG9pbnRlcklkID0gLTFcbiAgICB0aGlzLl9zd2lwaW5nID0gZmFsc2VcbiAgICB0aGlzLl9zd2lwZWQgPSBmYWxzZVxuICAgIHRoaXMuX3ByZXZlbnROZXh0Q2xpY2sgPSBmYWxzZVxuICB9XG5cbiAgc3RhcnQgKGV2ZW50KSB7XG4gICAgLy8gT25seSBoYW5kbGUgbGVmdCBjbGlja1xuICAgIGlmIChldmVudC5idXR0b24gIT09IEJVVFRPTl9MRUZUKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICB0aGlzLl9zdGFydFBvcyA9IHBvaW50ZXJFdmVudENvb3JkKGV2ZW50KVxuICAgIHRoaXMuX3BvaW50ZXJJZCA9IGV2ZW50LnBvaW50ZXJJZFxuICAgIHRoaXMuX3N3aXBpbmcgPSB0cnVlXG4gICAgdGhpcy5fc3dpcGVkID0gZmFsc2VcbiAgfVxuXG4gIG1vdmUgKGV2ZW50KSB7XG4gICAgaWYgKHRoaXMuX3N3aXBpbmcgJiYgdGhpcy5fcG9pbnRlcklkID09PSBldmVudC5wb2ludGVySWQpIHtcbiAgICAgIHRoaXMuX3N3aXBlZCA9IHRydWVcblxuICAgICAgY29uc3QgY29vcmQgPSBwb2ludGVyRXZlbnRDb29yZChldmVudClcbiAgICAgIGNvbnN0IGRlbHRhID0gZGVsdGFDb29yZCh0aGlzLl9zdGFydFBvcywgY29vcmQpXG5cbiAgICAgIHRoaXMuc3dpcGVQcmV2aWV3Q2FsbGJhY2soZGVsdGEpXG4gICAgfVxuICB9XG5cbiAgY2FuY2VsIChldmVudCkge1xuICAgIGlmICghdGhpcy5fc3dpcGluZyB8fCB0aGlzLl9wb2ludGVySWQgIT09IGV2ZW50LnBvaW50ZXJJZCkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgdGhpcy5zd2lwZUNhbmNlbENhbGxiYWNrKClcbiAgfVxuXG4gIGVuZCAoZXZlbnQpIHtcbiAgICBpZiAoIXRoaXMuX3N3aXBpbmcpIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGlmICh0aGlzLl9wb2ludGVySWQgIT09IGV2ZW50LnBvaW50ZXJJZCkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgdGhpcy5fc3dpcGluZyA9IGZhbHNlXG5cbiAgICAvLyBtb3ZlbWVudCB0b28gc21hbGxcbiAgICBjb25zdCBjb29yZCA9IHBvaW50ZXJFdmVudENvb3JkKGV2ZW50KVxuICAgIGNvbnN0IGRlbHRhID0gZGVsdGFDb29yZCh0aGlzLl9zdGFydFBvcywgY29vcmQpXG5cbiAgICBjb25zdCBzaWduID0gKCgpID0+IHtcbiAgICAgIGlmICh2ZWN0b3JMZW5ndGgoZGVsdGEpIDwgdGhpcy50aHJlc2hvbGQoKSkge1xuICAgICAgICByZXR1cm4gMFxuICAgICAgfVxuICAgICAgLy8gbW92ZW1lbnQgaXMgb3Bwb3NpdGUgZnJvbSBkaXJlY3Rpb25cbiAgICAgIGNvbnN0IGlzUG9zaXRpdmUgPSBkb3RQcm9kdWN0KGRlbHRhLCB0aGlzLmRpcmVjdGlvbikgPiAwXG5cbiAgICAgIC8vIG1vdmVtZW50IHBlcnBlbmRpY3VsYXIgdG8gZGlyZWN0aW9uIGlzIHRvbyBtdWNoXG4gICAgICBjb25zdCB0b3dhcmRzRGlyID0gcHJvamVjdChkZWx0YSwgdGhpcy5kaXJlY3Rpb24pXG4gICAgICBjb25zdCBwZXJwZW5kaWN1bGFyRGlyID0gcGVycGVuZGljdWxhcih0aGlzLmRpcmVjdGlvbilcbiAgICAgIGNvbnN0IHRvd2FyZHNQZXJwZW5kaWN1bGFyID0gcHJvamVjdChkZWx0YSwgcGVycGVuZGljdWxhckRpcilcbiAgICAgIGlmIChcbiAgICAgICAgdmVjdG9yTGVuZ3RoKHRvd2FyZHNEaXIpICogdGhpcy5wZXJwZW5kaWN1bGFyVG9sZXJhbmNlIDxcbiAgICAgICAgICB2ZWN0b3JMZW5ndGgodG93YXJkc1BlcnBlbmRpY3VsYXIpXG4gICAgICApIHtcbiAgICAgICAgcmV0dXJuIDBcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGlzUG9zaXRpdmUgPyAxIDogLTFcbiAgICB9KSgpXG5cbiAgICBpZiAodGhpcy5fc3dpcGVkKSB7XG4gICAgICB0aGlzLnN3aXBlRW5kQ2FsbGJhY2soc2lnbilcbiAgICB9XG4gICAgdGhpcy5fcmVzZXQoKVxuICAgIC8vIE9ubHkgYSBtb3VzZSB3aWxsIGZpcmUgY2xpY2sgZXZlbnQgd2hlblxuICAgIC8vIHRoZSBlbmQgcG9pbnQgaXMgZmFyIGZyb20gdGhlIHN0YXJ0aW5nIHBvaW50XG4gICAgLy8gc28gZm9yIG90aGVyIGtpbmRzIG9mIHBvaW50ZXJzIGRvIG5vdCBjaGVja1xuICAgIC8vIHdoZXRoZXIgd2UgaGF2ZSBzd2lwZWRcbiAgICBpZiAodmVjdG9yTGVuZ3RoKGRlbHRhKSA+PSB0aGlzLmRpc2FibGVDbGlja1RocmVzaG9sZCgpICYmIGV2ZW50LnBvaW50ZXJUeXBlID09PSAnbW91c2UnKSB7XG4gICAgICB0aGlzLl9wcmV2ZW50TmV4dENsaWNrID0gdHJ1ZVxuICAgIH1cbiAgfVxuXG4gIGNsaWNrIChldmVudCkge1xuICAgIGlmICghdGhpcy5fcHJldmVudE5leHRDbGljaykge1xuICAgICAgdGhpcy5zd2lwZWxlc3NDbGlja0NhbGxiYWNrKClcbiAgICB9XG4gICAgdGhpcy5fcmVzZXQoKVxuICB9XG59XG5cbmNvbnN0IEdlc3R1cmVTZXJ2aWNlID0ge1xuICBESVJFQ1RJT05fTEVGVCxcbiAgRElSRUNUSU9OX1JJR0hULFxuICBESVJFQ1RJT05fVVAsXG4gIERJUkVDVElPTl9ET1dOLFxuICBzd2lwZUdlc3R1cmUsXG4gIGJlZ2luU3dpcGUsXG4gIHVwZGF0ZVN3aXBlLFxuICBTd2lwZUFuZENsaWNrR2VzdHVyZVxufVxuXG5leHBvcnQgZGVmYXVsdCBHZXN0dXJlU2VydmljZVxuIl0sIm5hbWVzIjpbIkRJUkVDVElPTl9MRUZUIiwiRElSRUNUSU9OX1JJR0hUIiwiRElSRUNUSU9OX1VQIiwiRElSRUNUSU9OX0RPV04iLCJCVVRUT05fTEVGVCIsImRlbHRhQ29vcmQiLCJvbGRDb29yZCIsIm5ld0Nvb3JkIiwidG91Y2hDb29yZCIsInRvdWNoIiwic2NyZWVuWCIsInNjcmVlblkiLCJ0b3VjaEV2ZW50Q29vcmQiLCJlIiwidG91Y2hlcyIsInBvaW50ZXJFdmVudENvb3JkIiwiY2xpZW50WCIsImNsaWVudFkiLCJ2ZWN0b3JMZW5ndGgiLCJ2IiwiTWF0aCIsInNxcnQiLCJwZXJwZW5kaWN1bGFyIiwiZG90UHJvZHVjdCIsInYxIiwidjIiLCJwcm9qZWN0Iiwic2NhbGFyIiwic3dpcGVHZXN0dXJlIiwiZGlyZWN0aW9uIiwib25Td2lwZSIsInRocmVzaG9sZCIsImFyZ3VtZW50cyIsImxlbmd0aCIsInVuZGVmaW5lZCIsInBlcnBlbmRpY3VsYXJUb2xlcmFuY2UiLCJfc3RhcnRQb3MiLCJfc3dpcGluZyIsImJlZ2luU3dpcGUiLCJldmVudCIsImdlc3R1cmUiLCJ1cGRhdGVTd2lwZSIsImRlbHRhIiwidG93YXJkc0RpciIsInBlcnBlbmRpY3VsYXJEaXIiLCJ0b3dhcmRzUGVycGVuZGljdWxhciIsIlN3aXBlQW5kQ2xpY2tHZXN0dXJlIiwiX3JlZiIsInN3aXBlUHJldmlld0NhbGxiYWNrIiwic3dpcGVFbmRDYWxsYmFjayIsInN3aXBlQ2FuY2VsQ2FsbGJhY2siLCJzd2lwZWxlc3NDbGlja0NhbGxiYWNrIiwiX3JlZiR0aHJlc2hvbGQiLCJfcmVmJHBlcnBlbmRpY3VsYXJUb2wiLCJfcmVmJGRpc2FibGVDbGlja1RocmUiLCJkaXNhYmxlQ2xpY2tUaHJlc2hvbGQiLCJfY2xhc3NDYWxsQ2hlY2siLCJub3AiLCJfcmVzZXQiLCJfY3JlYXRlQ2xhc3MiLCJrZXkiLCJ2YWx1ZSIsIl9wb2ludGVySWQiLCJfc3dpcGVkIiwiX3ByZXZlbnROZXh0Q2xpY2siLCJzdGFydCIsImJ1dHRvbiIsInBvaW50ZXJJZCIsIm1vdmUiLCJjb29yZCIsImNhbmNlbCIsImVuZCIsIl90aGlzIiwic2lnbiIsImlzUG9zaXRpdmUiLCJwb2ludGVyVHlwZSIsImNsaWNrIiwiR2VzdHVyZVNlcnZpY2UiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/services/gesture_service/gesture_service.js\n");
/***/ }),
/***/ "./src/services/html_converter/html_line_converter.service.js":
/*!********************************************************************!*\
!*** ./src/services/html_converter/html_line_converter.service.js ***!
\********************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"convertHtmlToLines\": () => (/* binding */ convertHtmlToLines)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ \"./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js\");\n/* harmony import */ var _utility_service_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utility.service.js */ \"./src/services/html_converter/utility.service.js\");\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\n\n\n/**\n * This is a tiny purpose-built HTML parser/processor. This basically detects\n * any type of visual newline and converts entire HTML into a array structure.\n *\n * Text nodes are represented as object with single property - text - containing\n * the visual line. Intended usage is to process the array with .map() in which\n * map function returns a string and resulting array can be converted back to html\n * with a .join('').\n *\n * Generally this isn't very useful except for when you really need to either\n * modify visual lines (greentext i.e. simple quoting) or do something with\n * first/last line.\n *\n * known issue: doesn't handle CDATA so nested CDATA might not work well\n *\n * @param {Object} input - input data\n * @return {(string|{ text: string })[]} processed html in form of a list.\n */\nvar convertHtmlToLines = function convertHtmlToLines() {\n var html = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n // Elements that are implicitly self-closing\n // https://developer.mozilla.org/en-US/docs/Glossary/empty_element\n var emptyElements = new Set(['area', 'base', 'br', 'col', 'embed', 'hr', 'img', 'input', 'keygen', 'link', 'meta', 'param', 'source', 'track', 'wbr']);\n // Block-level element (they make a visual line)\n // https://developer.mozilla.org/en-US/docs/Web/HTML/Block-level_elements\n var blockElements = new Set(['address', 'article', 'aside', 'blockquote', 'details', 'dialog', 'dd', 'div', 'dl', 'dt', 'fieldset', 'figcaption', 'figure', 'footer', 'form', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'header', 'hgroup', 'hr', 'li', 'main', 'nav', 'ol', 'p', 'pre', 'section', 'table', 'ul']);\n // br is very weird in a way that it's technically not block-level, it's\n // essentially converted to a \\n (or \\r\\n). There's also wbr but it doesn't\n // guarantee linebreak, only suggest it.\n var linebreakElements = new Set(['br']);\n var visualLineElements = new Set([].concat((0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(blockElements.values()), (0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(linebreakElements.values())));\n\n // All block-level elements that aren't empty elements, i.e. not
\n var nonEmptyElements = new Set(visualLineElements);\n // Difference\n var _iterator = _createForOfIteratorHelper(emptyElements),\n _step;\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var elem = _step.value;\n nonEmptyElements[\"delete\"](elem);\n }\n\n // All elements that we are recognizing\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n var allElements = new Set([].concat((0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(nonEmptyElements.values()), (0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(emptyElements.values())));\n var buffer = []; // Current output buffer\n var level = []; // How deep we are in tags and which tags were there\n var textBuffer = ''; // Current line content\n var tagBuffer = null; // Current tag buffer, if null = we are not currently reading a tag\n\n var flush = function flush() {\n // Processes current line buffer, adds it to output buffer and clears line buffer\n if (textBuffer.trim().length > 0) {\n buffer.push({\n level: [].concat(level),\n text: textBuffer\n });\n } else {\n buffer.push(textBuffer);\n }\n textBuffer = '';\n };\n var handleBr = function handleBr(tag) {\n // handles single newlines/linebreaks/selfclosing\n flush();\n buffer.push(tag);\n };\n var handleOpen = function handleOpen(tag) {\n // handles opening tags\n flush();\n buffer.push(tag);\n level.unshift((0,_utility_service_js__WEBPACK_IMPORTED_MODULE_1__.getTagName)(tag));\n };\n var handleClose = function handleClose(tag) {\n // handles closing tags\n if (level[0] === (0,_utility_service_js__WEBPACK_IMPORTED_MODULE_1__.getTagName)(tag)) {\n flush();\n buffer.push(tag);\n level.shift();\n } else {\n // Broken case\n textBuffer += tag;\n }\n };\n for (var i = 0; i < html.length; i++) {\n var _char = html[i];\n if (_char === '<' && tagBuffer === null) {\n tagBuffer = _char;\n } else if (_char !== '>' && tagBuffer !== null) {\n tagBuffer += _char;\n } else if (_char === '>' && tagBuffer !== null) {\n tagBuffer += _char;\n var tagFull = tagBuffer;\n tagBuffer = null;\n var tagName = (0,_utility_service_js__WEBPACK_IMPORTED_MODULE_1__.getTagName)(tagFull);\n if (allElements.has(tagName)) {\n if (linebreakElements.has(tagName)) {\n handleBr(tagFull);\n } else if (nonEmptyElements.has(tagName)) {\n if (tagFull[1] === '/') {\n handleClose(tagFull);\n } else if (tagFull[tagFull.length - 2] === '/') {\n // self-closing\n handleBr(tagFull);\n } else {\n handleOpen(tagFull);\n }\n } else {\n textBuffer += tagFull;\n }\n } else {\n textBuffer += tagFull;\n }\n } else if (_char === '\\n') {\n handleBr(_char);\n } else {\n textBuffer += _char;\n }\n }\n if (tagBuffer) {\n textBuffer += tagBuffer;\n }\n flush();\n return buffer;\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvaHRtbF9jb252ZXJ0ZXIvaHRtbF9saW5lX2NvbnZlcnRlci5zZXJ2aWNlLmpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBaUQ7O0FBRWpEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLElBQU1DLGtCQUFrQixHQUFHLFNBQXJCQSxrQkFBa0JBLENBQUEsRUFBa0I7RUFBQSxJQUFkQyxJQUFJLEdBQUFDLFNBQUEsQ0FBQUMsTUFBQSxRQUFBRCxTQUFBLFFBQUFFLFNBQUEsR0FBQUYsU0FBQSxNQUFHLEVBQUU7RUFDMUM7RUFDQTtFQUNBLElBQU1HLGFBQWEsR0FBRyxJQUFJQyxHQUFHLENBQUMsQ0FDNUIsTUFBTSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFDMUQsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsS0FBSyxDQUM1RCxDQUFDO0VBQ0Y7RUFDQTtFQUNBLElBQU1DLGFBQWEsR0FBRyxJQUFJRCxHQUFHLENBQUMsQ0FDNUIsU0FBUyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUN0RSxLQUFLLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUN2RSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUMxRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVB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QUNGLENBQUMsTUFBTTtVQUNMZCxVQUFVLElBQUljLE9BQU87UUFDdkI7TUFDRixDQUFDLE1BQU07UUFDTGQsVUFBVSxJQUFJYyxPQUFPO01BQ3ZCO0lBQ0YsQ0FBQyxNQUFNLElBQUlELEtBQUksS0FBSyxJQUFJLEVBQUU7TUFDeEJQLFFBQVEsQ0FBQ08sS0FBSSxDQUFDO0lBQ2hCLENBQUMsTUFBTTtNQUNMYixVQUFVLElBQUlhLEtBQUk7SUFDcEI7RUFDRjtFQUNBLElBQUlaLFNBQVMsRUFBRTtJQUNiRCxVQUFVLElBQUlDLFNBQVM7RUFDekI7RUFFQUMsS0FBSyxDQUFDLENBQUM7RUFFUCxPQUFPSixNQUFNO0FBQ2YsQ0FBQyIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvc2VydmljZXMvaHRtbF9jb252ZXJ0ZXIvaHRtbF9saW5lX2NvbnZlcnRlci5zZXJ2aWNlLmpzPzk0YzciXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZ2V0VGFnTmFtZSB9IGZyb20gJy4vdXRpbGl0eS5zZXJ2aWNlLmpzJ1xuXG4vKipcbiAqIFRoaXMgaXMgYSB0aW55IHB1cnBvc2UtYnVpbHQgSFRNTCBwYXJzZXIvcHJvY2Vzc29yLiBUaGlzIGJhc2ljYWxseSBkZXRlY3RzXG4gKiBhbnkgdHlwZSBvZiB2aXN1YWwgbmV3bGluZSBhbmQgY29udmVydHMgZW50aXJlIEhUTUwgaW50byBhIGFycmF5IHN0cnVjdHVyZS5cbiAqXG4gKiBUZXh0IG5vZGVzIGFyZSByZXByZXNlbnRlZCBhcyBvYmplY3Qgd2l0aCBzaW5nbGUgcHJvcGVydHkgLSB0ZXh0IC0gY29udGFpbmluZ1xuICogdGhlIHZpc3VhbCBsaW5lLiBJbnRlbmRlZCB1c2FnZSBpcyB0byBwcm9jZXNzIHRoZSBhcnJheSB3aXRoIC5tYXAoKSBpbiB3aGljaFxuICogbWFwIGZ1bmN0aW9uIHJldHVybnMgYSBzdHJpbmcgYW5kIHJlc3VsdGluZyBhcnJheSBjYW4gYmUgY29udmVydGVkIGJhY2sgdG8gaHRtbFxuICogd2l0aCBhIC5qb2luKCcnKS5cbiAqXG4gKiBHZW5lcmFsbHkgdGhpcyBpc24ndCB2ZXJ5IHVzZWZ1bCBleGNlcHQgZm9yIHdoZW4geW91IHJlYWxseSBuZWVkIHRvIGVpdGhlclxuICogbW9kaWZ5IHZpc3VhbCBsaW5lcyAoZ3JlZW50ZXh0IGkuZS4gc2ltcGxlIHF1b3RpbmcpIG9yIGRvIHNvbWV0aGluZyB3aXRoXG4gKiBmaXJzdC9sYXN0IGxpbmUuXG4gKlxuICoga25vd24gaXNzdWU6IGRvZXNuJ3QgaGFuZGxlIENEQVRBIHNvIG5lc3RlZCBDREFUQSBtaWdodCBub3Qgd29yayB3ZWxsXG4gKlxuICogQHBhcmFtIHtPYmplY3R9IGlucHV0IC0gaW5wdXQgZGF0YVxuICogQHJldHVybiB7KHN0cmluZ3x7IHRleHQ6IHN0cmluZyB9KVtdfSBwcm9jZXNzZWQgaHRtbCBpbiBmb3JtIG9mIGEgbGlzdC5cbiAqL1xuZXhwb3J0IGNvbnN0IGNvbnZlcnRIdG1sVG9MaW5lcyA9IChodG1sID0gJycpID0+IHtcbiAgLy8gRWxlbWVudHMgdGhhdCBhcmUgaW1wbGljaXRseSBzZWxmLWNsb3NpbmdcbiAgLy8gaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9HbG9zc2FyeS9lbXB0eV9lbGVtZW50XG4gIGNvbnN0IGVtcHR5RWxlbWVudHMgPSBuZXcgU2V0KFtcbiAgICAnYXJlYScsICdiYXNlJywgJ2JyJywgJ2NvbCcsICdlbWJlZCcsICdocicsICdpbWcnLCAnaW5wdXQnLFxuICAgICdrZXlnZW4nLCAnbGluaycsICdtZXRhJywgJ3BhcmFtJywgJ3NvdXJjZScsICd0cmFjaycsICd3YnInXG4gIF0pXG4gIC8vIEJsb2NrLWxldmVsIGVsZW1lbnQgKHRoZXkgbWFrZSBhIHZpc3VhbCBsaW5lKVxuICAvLyBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9IVE1ML0Jsb2NrLWxldmVsX2VsZW1lbnRzXG4gIGNvbnN0IGJsb2NrRWxlbWVudHMgPSBuZXcgU2V0KFtcbiAgICAnYWRkcmVzcycsICdhcnRpY2xlJywgJ2FzaWRlJywgJ2Jsb2NrcXVvdGUnLCAnZGV0YWlscycsICdkaWFsb2cnLCAnZGQnLFxuICAgICdkaXYnLCAnZGwnLCAnZHQnLCAnZmllbGRzZXQnLCAnZmlnY2FwdGlvbicsICdmaWd1cmUnLCAnZm9vdGVyJywgJ2Zvcm0nLFxuICAgICdoMScsICdoMicsICdoMycsICdoNCcsICdoNScsICdoNicsICdoZWFkZXInLCAnaGdyb3VwJywgJ2hyJywgJ2xpJywgJ21haW4nLFxuICAgICduYXYnLCAnb2wnLCAncCcsICdwcmUnLCAnc2VjdGlvbicsICd0YWJsZScsICd1bCdcbiAgXSlcbiAgLy8gYnIgaXMgdmVyeSB3ZWlyZCBpbiBhIHdheSB0aGF0IGl0J3MgdGVjaG5pY2FsbHkgbm90IGJsb2NrLWxldmVsLCBpdCdzXG4gIC8vIGVzc2VudGlhbGx5IGNvbnZlcnRlZCB0byBhIFxcbiAob3IgXFxyXFxuKS4gVGhlcmUncyBhbHNvIHdiciBidXQgaXQgZG9lc24ndFxuICAvLyBndWFyYW50ZWUgbGluZWJyZWFrLCBvbmx5IHN1Z2dlc3QgaXQuXG4gIGNvbnN0IGxpbmVicmVha0VsZW1lbnRzID0gbmV3IFNldChbJ2JyJ10pXG5cbiAgY29uc3QgdmlzdWFsTGluZUVsZW1lbnRzID0gbmV3IFNldChbXG4gICAgLi4uYmxvY2tFbGVtZW50cy52YWx1ZXMoKSxcbiAgICAuLi5saW5lYnJlYWtFbGVtZW50cy52YWx1ZXMoKVxuICBdKVxuXG4gIC8vIEFsbCBibG9jay1sZXZlbCBlbGVtZW50cyB0aGF0IGFyZW4ndCBlbXB0eSBlbGVtZW50cywgaS5lLiBub3QgPGhyPlxuICBjb25zdCBub25FbXB0eUVsZW1lbnRzID0gbmV3IFNldCh2aXN1YWxMaW5lRWxlbWVudHMpXG4gIC8vIERpZmZlcmVuY2VcbiAgZm9yIChjb25zdCBlbGVtIG9mIGVtcHR5RWxlbWVudHMpIHtcbiAgICBub25FbXB0eUVsZW1lbnRzLmRlbGV0ZShlbGVtKVxuICB9XG5cbiAgLy8gQWxsIGVsZW1lbnRzIHRoYXQgd2UgYXJlIHJlY29nbml6aW5nXG4gIGNvbnN0IGFsbEVsZW1lbnRzID0gbmV3IFNldChbXG4gICAgLi4ubm9uRW1wdHlFbGVtZW50cy52YWx1ZXMoKSxcbiAgICAuLi5lbXB0eUVsZW1lbnRzLnZhbHVlcygpXG4gIF0pXG5cbiAgY29uc3QgYnVmZmVyID0gW10gLy8gQ3VycmVudCBvdXRwdXQgYnVmZmVyXG4gIGNvbnN0IGxldmVsID0gW10gLy8gSG93IGRlZXAgd2UgYXJlIGluIHRhZ3MgYW5kIHdoaWNoIHRhZ3Mgd2VyZSB0aGVyZVxuICBsZXQgdGV4dEJ1ZmZlciA9ICcnIC8vIEN1cnJlbnQgbGluZSBjb250ZW50XG4gIGxldCB0YWdCdWZmZXIgPSBudWxsIC8vIEN1cnJlbnQgdGFnIGJ1ZmZlciwgaWYgbnVsbCA9IHdlIGFyZSBub3QgY3VycmVudGx5IHJlYWRpbmcgYSB0YWdcblxuICBjb25zdCBmbHVzaCA9ICgpID0+IHsgLy8gUHJvY2Vzc2VzIGN1cnJlbnQgbGluZSBidWZmZXIsIGFkZHMgaXQgdG8gb3V0cHV0IGJ1ZmZlciBhbmQgY2xlYXJzIGxpbmUgYnVmZmVyXG4gICAgaWYgKHRleHRCdWZmZXIudHJpbSgpLmxlbmd0aCA+IDApIHtcbiAgICAgIGJ1ZmZlci5wdXNoKHsgbGV2ZWw6IFsuLi5sZXZlbF0sIHRleHQ6IHRleHRCdWZmZXIgfSlcbiAgICB9IGVsc2Uge1xuICAgICAgYnVmZmVyLnB1c2godGV4dEJ1ZmZlcilcbiAgICB9XG4gICAgdGV4dEJ1ZmZlciA9ICcnXG4gIH1cblxuICBjb25zdCBoYW5kbGVCciA9ICh0YWcpID0+IHsgLy8gaGFuZGxlcyBzaW5nbGUgbmV3bGluZXMvbGluZWJyZWFrcy9zZWxmY2xvc2luZ1xuICAgIGZsdXNoKClcbiAgICBidWZmZXIucHVzaCh0YWcpXG4gIH1cblxuICBjb25zdCBoYW5kbGVPcGVuID0gKHRhZykgPT4geyAvLyBoYW5kbGVzIG9wZW5pbmcgdGFnc1xuICAgIGZsdXNoKClcbiAgICBidWZmZXIucHVzaCh0YWcpXG4gICAgbGV2ZWwudW5zaGlmdChnZXRUYWdOYW1lKHRhZykpXG4gIH1cblxuICBjb25zdCBoYW5kbGVDbG9zZSA9ICh0YWcpID0+IHsgLy8gaGFuZGxlcyBjbG9zaW5nIHRhZ3NcbiAgICBpZiAobGV2ZWxbMF0gPT09IGdldFRhZ05hbWUodGFnKSkge1xuICAgICAgZmx1c2goKVxuICAgICAgYnVmZmVyLnB1c2godGFnKVxuICAgICAgbGV2ZWwuc2hpZnQoKVxuICAgIH0gZWxzZSB7IC8vIEJyb2tlbiBjYXNlXG4gICAgICB0ZXh0QnVmZmVyICs9IHRhZ1xuICAgIH1cbiAgfVxuXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgaHRtbC5sZW5ndGg7IGkrKykge1xuICAgIGNvbnN0IGNoYXIgPSBodG1sW2ldXG4gICAgaWYgKGNoYXIgPT09ICc8JyAmJiB0YWdCdWZmZXIgPT09IG51bGwpIHtcbiAgICAgIHRhZ0J1ZmZlciA9IGNoYXJcbiAgICB9IGVsc2UgaWYgKGNoYXIgIT09ICc+JyAmJiB0YWdCdWZmZXIgIT09IG51bGwpIHtcbiAgICAgIHRhZ0J1ZmZlciArPSBjaGFyXG4gICAgfSBlbHNlIGlmIChjaGFyID09PSAnPicgJiYgdGFnQnVmZmVyICE9PSBudWxsKSB7XG4gICAgICB0YWdCdWZmZXIgKz0gY2hhclxuICAgICAgY29uc3QgdGFnRnVsbCA9IHRhZ0J1ZmZlclxuICAgICAgdGFnQnVmZmVyID0gbnVsbFxuICAgICAgY29uc3QgdGFnTmFtZSA9IGdldFRhZ05hbWUodGFnRnVsbClcbiAgICAgIGlmIChhbGxFbGVtZW50cy5oYXModGFnTmFtZSkpIHtcbiAgICAgICAgaWYgKGxpbmVicmVha0VsZW1lbnRzLmhhcyh0YWdOYW1lKSkge1xuICAgICAgICAgIGhhbmRsZUJyKHRhZ0Z1bGwpXG4gICAgICAgIH0gZWxzZSBpZiAobm9uRW1wdHlFbGVtZW50cy5oYXModGFnTmFtZSkpIHtcbiAgICAgICAgICBpZiAodGFnRnVsbFsxXSA9PT0gJy8nKSB7XG4gICAgICAgICAgICBoYW5kbGVDbG9zZSh0YWdGdWxsKVxuICAgICAgICAgIH0gZWxzZSBpZiAodGFnRnVsbFt0YWdGdWxsLmxlbmd0aCAtIDJdID09PSAnLycpIHtcbiAgICAgICAgICAgIC8vIHNlbGYtY2xvc2luZ1xuICAgICAgICAgICAgaGFuZGxlQnIodGFnRnVsbClcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaGFuZGxlT3Blbih0YWdGdWxsKVxuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0ZXh0QnVmZmVyICs9IHRhZ0Z1bGxcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGV4dEJ1ZmZlciArPSB0YWdGdWxsXG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChjaGFyID09PSAnXFxuJykge1xuICAgICAgaGFuZGxlQnIoY2hhcilcbiAgICB9IGVsc2Uge1xuICAgICAgdGV4dEJ1ZmZlciArPSBjaGFyXG4gICAgfVxuICB9XG4gIGlmICh0YWdCdWZmZXIpIHtcbiAgICB0ZXh0QnVmZmVyICs9IHRhZ0J1ZmZlclxuICB9XG5cbiAgZmx1c2goKVxuXG4gIHJldHVybiBidWZmZXJcbn1cbiJdLCJuYW1lcyI6WyJnZXRUYWdOYW1lIiwiY29udmVydEh0bWxUb0xpbmVzIiwiaHRtbCIsImFyZ3VtZW50cyIsImxlbmd0aCIsInVuZGVmaW5lZCIsImVtcHR5RWxlbWVudHMiLCJTZXQiLCJibG9ja0VsZW1lbnRzIiwibGluZWJyZWFrRWxlbWVudHMiLCJ2aXN1YWxMaW5lRWxlbWVudHMiLCJjb25jYXQiLCJfdG9Db25zdW1hYmxlQXJyYXkiLCJ2YWx1ZXMiLCJub25FbXB0eUVsZW1lbnRzIiwiX2l0ZXJhdG9yIiwiX2NyZWF0ZUZvck9mSXRlcmF0b3JIZWxwZXIiLCJfc3RlcCIsInMiLCJuIiwiZG9uZSIsImVsZW0iLCJ2YWx1ZSIsImVyciIsImUiLCJmIiwiYWxsRWxlbWVudHMiLCJidWZmZXIiLCJsZXZlbCIsInRleHRCdWZmZXIiLCJ0YWdCdWZmZXIiLCJmbHVzaCIsInRyaW0iLCJwdXNoIiwidGV4dCIsImhhbmRsZUJyIiwidGFnIiwiaGFuZGxlT3BlbiIsInVuc2hpZnQiLCJoYW5kbGVDbG9zZSIsInNoaWZ0IiwiaSIsImNoYXIiLCJ0YWdGdWxsIiwidGFnTmFtZSIsImhhcyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/services/html_converter/html_line_converter.service.js\n");
/***/ }),
/***/ "./src/services/html_converter/html_tree_converter.service.js":
/*!********************************************************************!*\
!*** ./src/services/html_converter/html_tree_converter.service.js ***!
\********************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"convertHtmlToTree\": () => (/* binding */ convertHtmlToTree)\n/* harmony export */ });\n/* harmony import */ var lodash_unescape__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/unescape */ \"./node_modules/lodash/unescape.js\");\n/* harmony import */ var lodash_unescape__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_unescape__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _utility_service_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utility.service.js */ \"./src/services/html_converter/utility.service.js\");\n\n\n/**\n * This is a not-so-tiny purpose-built HTML parser/processor. This parses html\n * and converts it into a tree structure representing tag openers/closers and\n * children.\n *\n * Structure follows this pattern: [opener, [...children], closer] except root\n * node which is just [...children]. Text nodes can only be within children and\n * are represented as strings.\n *\n * Intended use is to convert HTML structure and then recursively iterate over it\n * most likely using a map. Very useful for dynamically rendering html replacing\n * tags with JSX elements in a render function.\n *\n * known issue: doesn't handle CDATA so CDATA might not work well\n * known issue: doesn't handle HTML comments\n *\n * @param {Object} input - input data\n * @return {string} processed html\n */\nvar convertHtmlToTree = function convertHtmlToTree() {\n var html = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n // Elements that are implicitly self-closing\n // https://developer.mozilla.org/en-US/docs/Glossary/empty_element\n var emptyElements = new Set(['area', 'base', 'br', 'col', 'embed', 'hr', 'img', 'input', 'keygen', 'link', 'meta', 'param', 'source', 'track', 'wbr']);\n // TODO For future - also parse HTML5 multi-source components?\n\n var buffer = []; // Current output buffer\n var levels = [['', buffer]]; // How deep we are in tags and which tags were there\n var textBuffer = ''; // Current line content\n var tagBuffer = null; // Current tag buffer, if null = we are not currently reading a tag\n\n var getCurrentBuffer = function getCurrentBuffer() {\n return levels[levels.length - 1][1];\n };\n var flushText = function flushText() {\n // Processes current line buffer, adds it to output buffer and clears line buffer\n if (textBuffer === '') return;\n getCurrentBuffer().push(textBuffer);\n textBuffer = '';\n };\n var handleSelfClosing = function handleSelfClosing(tag) {\n getCurrentBuffer().push([tag]);\n };\n var handleOpen = function handleOpen(tag) {\n var curBuf = getCurrentBuffer();\n var newLevel = [lodash_unescape__WEBPACK_IMPORTED_MODULE_0___default()(tag), []];\n levels.push(newLevel);\n curBuf.push(newLevel);\n };\n var handleClose = function handleClose(tag) {\n var currentTag = levels[levels.length - 1];\n if ((0,_utility_service_js__WEBPACK_IMPORTED_MODULE_1__.getTagName)(levels[levels.length - 1][0]) === (0,_utility_service_js__WEBPACK_IMPORTED_MODULE_1__.getTagName)(tag)) {\n currentTag.push(tag);\n levels.pop();\n } else {\n getCurrentBuffer().push(tag);\n }\n };\n for (var i = 0; i < html.length; i++) {\n var _char = html[i];\n if (_char === '<' && tagBuffer === null) {\n flushText();\n tagBuffer = _char;\n } else if (_char !== '>' && tagBuffer !== null) {\n tagBuffer += _char;\n } else if (_char === '>' && tagBuffer !== null) {\n tagBuffer += _char;\n var tagFull = tagBuffer;\n tagBuffer = null;\n var tagName = (0,_utility_service_js__WEBPACK_IMPORTED_MODULE_1__.getTagName)(tagFull);\n if (tagFull[1] === '/') {\n handleClose(tagFull);\n } else if (emptyElements.has(tagName) || tagFull[tagFull.length - 2] === '/') {\n // self-closing\n handleSelfClosing(tagFull);\n } else {\n handleOpen(tagFull);\n }\n } else {\n textBuffer += _char;\n }\n }\n if (tagBuffer) {\n textBuffer += tagBuffer;\n }\n flushText();\n return buffer;\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvaHRtbF9jb252ZXJ0ZXIvaHRtbF90cmVlX2NvbnZlcnRlci5zZXJ2aWNlLmpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQWlEO0FBR2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sSUFBTUMsaUJBQWlCLEdBQUcsU0FBcEJBLGlCQUFpQkEsQ0FBQSxFQUFrQjtFQUFBLElBQWRDLElBQUksR0FBQUMsU0FBQSxDQUFBQyxNQUFBLFFBQUFELFNBQUEsUUFBQUUsU0FBQSxHQUFBRixTQUFBLE1BQUcsRUFBRTtFQUN6QztFQUNBO0VBQ0EsSUFBTUcsYUFBYSxHQUFHLElBQUlDLEdBQUcsQ0FBQyxDQUM1QixNQUFNLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUMxRCxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxLQUFLLENBQzVELENBQUM7RUFDRjs7RUFFQSxJQUFNQyxNQUFNLEdBQUcsRUFBRSxFQUFDO0VBQ2xCLElBQU1DLE1BQU0sR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFRCxNQUFNLENBQUMsQ0FBQyxFQUFDO0VBQzlCLElBQUlFLFVBQVUsR0FBRyxFQUFFLEVBQUM7RUFDcEIsSUFBSUMsU0FBUyxHQUFHLElBQUksRUFBQzs7RUFFckIsSUFBTUMsZ0JBQWdCLEdBQUcsU0FBbkJBLGdCQUFnQkEsQ0FBQSxFQUFTO0lBQzdCLE9BQU9ILE1BQU0sQ0FBQ0EsTUFBTSxDQUFDTCxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0VBQ3JDLENBQUM7RUFFRCxJQUFNUyxTQUFTLEdBQUcsU0FBWkEsU0FBU0EsQ0FBQSxFQUFTO0lBQUU7SUFDeEIsSUFB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d2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvc2VydmljZXMvaHRtbF9jb252ZXJ0ZXIvaHRtbF90cmVlX2NvbnZlcnRlci5zZXJ2aWNlLmpzPzBiODkiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZ2V0VGFnTmFtZSB9IGZyb20gJy4vdXRpbGl0eS5zZXJ2aWNlLmpzJ1xuaW1wb3J0IHsgdW5lc2NhcGUgfSBmcm9tICdsb2Rhc2gnXG5cbi8qKlxuICogVGhpcyBpcyBhIG5vdC1zby10aW55IHB1cnBvc2UtYnVpbHQgSFRNTCBwYXJzZXIvcHJvY2Vzc29yLiBUaGlzIHBhcnNlcyBodG1sXG4gKiBhbmQgY29udmVydHMgaXQgaW50byBhIHRyZWUgc3RydWN0dXJlIHJlcHJlc2VudGluZyB0YWcgb3BlbmVycy9jbG9zZXJzIGFuZFxuICogY2hpbGRyZW4uXG4gKlxuICogU3RydWN0dXJlIGZvbGxvd3MgdGhpcyBwYXR0ZXJuOiBbb3BlbmVyLCBbLi4uY2hpbGRyZW5dLCBjbG9zZXJdIGV4Y2VwdCByb290XG4gKiBub2RlIHdoaWNoIGlzIGp1c3QgWy4uLmNoaWxkcmVuXS4gVGV4dCBub2RlcyBjYW4gb25seSBiZSB3aXRoaW4gY2hpbGRyZW4gYW5kXG4gKiBhcmUgcmVwcmVzZW50ZWQgYXMgc3RyaW5ncy5cbiAqXG4gKiBJbnRlbmRlZCB1c2UgaXMgdG8gY29udmVydCBIVE1MIHN0cnVjdHVyZSBhbmQgdGhlbiByZWN1cnNpdmVseSBpdGVyYXRlIG92ZXIgaXRcbiAqIG1vc3QgbGlrZWx5IHVzaW5nIGEgbWFwLiBWZXJ5IHVzZWZ1bCBmb3IgZHluYW1pY2FsbHkgcmVuZGVyaW5nIGh0bWwgcmVwbGFjaW5nXG4gKiB0YWdzIHdpdGggSlNYIGVsZW1lbnRzIGluIGEgcmVuZGVyIGZ1bmN0aW9uLlxuICpcbiAqIGtub3duIGlzc3VlOiBkb2Vzbid0IGhhbmRsZSBDREFUQSBzbyBDREFUQSBtaWdodCBub3Qgd29yayB3ZWxsXG4gKiBrbm93biBpc3N1ZTogZG9lc24ndCBoYW5kbGUgSFRNTCBjb21tZW50c1xuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSBpbnB1dCAtIGlucHV0IGRhdGFcbiAqIEByZXR1cm4ge3N0cmluZ30gcHJvY2Vzc2VkIGh0bWxcbiAqL1xuZXhwb3J0IGNvbnN0IGNvbnZlcnRIdG1sVG9UcmVlID0gKGh0bWwgPSAnJykgPT4ge1xuICAvLyBFbGVtZW50cyB0aGF0IGFyZSBpbXBsaWNpdGx5IHNlbGYtY2xvc2luZ1xuICAvLyBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL0dsb3NzYXJ5L2VtcHR5X2VsZW1lbnRcbiAgY29uc3QgZW1wdHlFbGVtZW50cyA9IG5ldyBTZXQoW1xuICAgICdhcmVhJywgJ2Jhc2UnLCAnYnInLCAnY29sJywgJ2VtYmVkJywgJ2hyJywgJ2ltZycsICdpbnB1dCcsXG4gICAgJ2tleWdlbicsICdsaW5rJywgJ21ldGEnLCAncGFyYW0nLCAnc291cmNlJywgJ3RyYWNrJywgJ3dicidcbiAgXSlcbiAgLy8gVE9ETyBGb3IgZnV0dXJlIC0gYWxzbyBwYXJzZSBIVE1MNSBtdWx0aS1zb3VyY2UgY29tcG9uZW50cz9cblxuICBjb25zdCBidWZmZXIgPSBbXSAvLyBDdXJyZW50IG91dHB1dCBidWZmZXJcbiAgY29uc3QgbGV2ZWxzID0gW1snJywgYnVmZmVyXV0gLy8gSG93IGRlZXAgd2UgYXJlIGluIHRhZ3MgYW5kIHdoaWNoIHRhZ3Mgd2VyZSB0aGVyZVxuICBsZXQgdGV4dEJ1ZmZlciA9ICcnIC8vIEN1cnJlbnQgbGluZSBjb250ZW50XG4gIGxldCB0YWdCdWZmZXIgPSBudWxsIC8vIEN1cnJlbnQgdGFnIGJ1ZmZlciwgaWYgbnVsbCA9IHdlIGFyZSBub3QgY3VycmVudGx5IHJlYWRpbmcgYSB0YWdcblxuICBjb25zdCBnZXRDdXJyZW50QnVmZmVyID0gKCkgPT4ge1xuICAgIHJldHVybiBsZXZlbHNbbGV2ZWxzLmxlbmd0aCAtIDFdWzFdXG4gIH1cblxuICBjb25zdCBmbHVzaFRleHQgPSAoKSA9PiB7IC8vIFByb2Nlc3NlcyBjdXJyZW50IGxpbmUgYnVmZmVyLCBhZGRzIGl0IHRvIG91dHB1dCBidWZmZXIgYW5kIGNsZWFycyBsaW5lIGJ1ZmZlclxuICAgIGlmICh0ZXh0QnVmZmVyID09PSAnJykgcmV0dXJuXG4gICAgZ2V0Q3VycmVudEJ1ZmZlcigpLnB1c2godGV4dEJ1ZmZlcilcbiAgICB0ZXh0QnVmZmVyID0gJydcbiAgfVxuXG4gIGNvbnN0IGhhbmRsZVNlbGZDbG9zaW5nID0gKHRhZykgPT4ge1xuICAgIGdldEN1cnJlbnRCdWZmZXIoKS5wdXNoKFt0YWddKVxuICB9XG5cbiAgY29uc3QgaGFuZGxlT3BlbiA9ICh0YWcpID0+IHtcbiAgICBjb25zdCBjdXJCdWYgPSBnZXRDdXJyZW50QnVmZmVyKClcbiAgICBjb25zdCBuZXdMZXZlbCA9IFt1bmVzY2FwZSh0YWcpLCBbXV1cbiAgICBsZXZlbHMucHVzaChuZXdMZXZlbClcbiAgICBjdXJCdWYucHVzaChuZXdMZXZlbClcbiAgfVxuXG4gIGNvbnN0IGhhbmRsZUNsb3NlID0gKHRhZykgPT4ge1xuICAgIGNvbnN0IGN1cnJlbnRUYWcgPSBsZXZlbHNbbGV2ZWxzLmxlbmd0aCAtIDFdXG4gICAgaWYgKGdldFRhZ05hbWUobGV2ZWxzW2xldmVscy5sZW5ndGggLSAxXVswXSkgPT09IGdldFRhZ05hbWUodGFnKSkge1xuICAgICAgY3VycmVudFRhZy5wdXNoKHRhZylcbiAgICAgIGxldmVscy5wb3AoKVxuICAgIH0gZWxzZSB7XG4gICAgICBnZXRDdXJyZW50QnVmZmVyKCkucHVzaCh0YWcpXG4gICAgfVxuICB9XG5cbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBodG1sLmxlbmd0aDsgaSsrKSB7XG4gICAgY29uc3QgY2hhciA9IGh0bWxbaV1cbiAgICBpZiAoY2hhciA9PT0gJzwnICYmIHRhZ0J1ZmZlciA9PT0gbnVsbCkge1xuICAgICAgZmx1c2hUZXh0KClcbiAgICAgIHRhZ0J1ZmZlciA9IGNoYXJcbiAgICB9IGVsc2UgaWYgKGNoYXIgIT09ICc+JyAmJiB0YWdCdWZmZXIgIT09IG51bGwpIHtcbiAgICAgIHRhZ0J1ZmZlciArPSBjaGFyXG4gICAgfSBlbHNlIGlmIChjaGFyID09PSAnPicgJiYgdGFnQnVmZmVyICE9PSBudWxsKSB7XG4gICAgICB0YWdCdWZmZXIgKz0gY2hhclxuICAgICAgY29uc3QgdGFnRnVsbCA9IHRhZ0J1ZmZlclxuICAgICAgdGFnQnVmZmVyID0gbnVsbFxuICAgICAgY29uc3QgdGFnTmFtZSA9IGdldFRhZ05hbWUodGFnRnVsbClcbiAgICAgIGlmICh0YWdGdWxsWzFdID09PSAnLycpIHtcbiAgICAgICAgaGFuZGxlQ2xvc2UodGFnRnVsbClcbiAgICAgIH0gZWxzZSBpZiAoZW1wdHlFbGVtZW50cy5oYXModGFnTmFtZSkgfHwgdGFnRnVsbFt0YWdGdWxsLmxlbmd0aCAtIDJdID09PSAnLycpIHtcbiAgICAgICAgLy8gc2VsZi1jbG9zaW5nXG4gICAgICAgIGhhbmRsZVNlbGZDbG9zaW5nKHRhZ0Z1bGwpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBoYW5kbGVPcGVuKHRhZ0Z1bGwpXG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRleHRCdWZmZXIgKz0gY2hhclxuICAgIH1cbiAgfVxuICBpZiAodGFnQnVmZmVyKSB7XG4gICAgdGV4dEJ1ZmZlciArPSB0YWdCdWZmZXJcbiAgfVxuXG4gIGZsdXNoVGV4dCgpXG4gIHJldHVybiBidWZmZXJcbn1cbiJdLCJuYW1lcyI6WyJnZXRUYWdOYW1lIiwiY29udmVydEh0bWxUb1RyZWUiLCJodG1sIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwidW5kZWZpbmVkIiwiZW1wdHlFbGVtZW50cyIsIlNldCIsImJ1ZmZlciIsImxldmVscyIsInRleHRCdWZmZXIiLCJ0YWdCdWZmZXIiLCJnZXRDdXJyZW50QnVmZmVyIiwiZmx1c2hUZXh0IiwicHVzaCIsImhhbmRsZVNlbGZDbG9zaW5nIiwidGFnIiwiaGFuZGxlT3BlbiIsImN1ckJ1ZiIsIm5ld0xldmVsIiwiX3VuZXNjYXBlIiwiaGFuZGxlQ2xvc2UiLCJjdXJyZW50VGFnIiwicG9wIiwiaSIsImNoYXIiLCJ0YWdGdWxsIiwidGFnTmFtZSIsImhhcyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/services/html_converter/html_tree_converter.service.js\n");
/***/ }),
/***/ "./src/services/html_converter/utility.service.js":
/*!********************************************************!*\
!*** ./src/services/html_converter/utility.service.js ***!
\********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"getAttrs\": () => (/* binding */ getAttrs),\n/* harmony export */ \"getTagName\": () => (/* binding */ getTagName),\n/* harmony export */ \"processTextForEmoji\": () => (/* binding */ processTextForEmoji)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ \"./node_modules/@babel/runtime/helpers/esm/slicedToArray.js\");\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\n/**\n * Extract tag name from tag opener/closer.\n *\n * @param {String} tag - tag string, i.e. ''\n * @return {String} - tagname, i.e. \"div\"\n */\nvar getTagName = function getTagName(tag) {\n var result = /(?:<\\/(\\w+)>|<(\\w+)\\s?[\\s\\S]*?\\/?>)/gi.exec(tag);\n return result && (result[1] || result[2]);\n};\n\n/**\n * Extract attributes from tag opener.\n *\n * @param {String} tag - tag string, i.e. ''\n * @return {Object} - map of attributes key = attribute name, value = attribute value\n * attributes without values represented as boolean true\n */\nvar getAttrs = function getAttrs(tag, filter) {\n var innertag = tag.substring(1, tag.length - 1).replace(new RegExp('^' + getTagName(tag)), '').replace(/\\/?$/, '').trim();\n var attrs = Array.from(innertag.matchAll(/([a-z]+[a-z0-9-]*)(?:=(\"[^\"]+?\"|'[^']+?'))?/gi)).map(function (_ref) {\n var _ref2 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(_ref, 3),\n trash = _ref2[0],\n key = _ref2[1],\n value = _ref2[2];\n return [key, value];\n }).map(function (_ref3) {\n var _ref4 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(_ref3, 2),\n k = _ref4[0],\n v = _ref4[1];\n if (!v) return [k, true];\n return [k, v.substring(1, v.length - 1)];\n });\n var defaultFilter = function defaultFilter(_ref5) {\n var _ref6 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(_ref5, 2),\n k = _ref6[0],\n v = _ref6[1];\n var attrKey = k.toLowerCase();\n if (attrKey === 'style') return false;\n if (attrKey === 'class') {\n return v === 'greentext' || v === 'cyantext';\n }\n return true;\n };\n return Object.fromEntries(attrs.filter(filter || defaultFilter));\n};\n\n/**\n * Finds shortcodes in text\n *\n * @param {String} text - original text to find emojis in\n * @param {{ url: String, shortcode: Sring }[]} emoji - list of shortcodes to find\n * @param {Function} processor - function to call on each encountered emoji,\n * function is passed single object containing matching emoji ({ url, shortcode })\n * return value will be inserted into resulting array instead of :shortcode:\n * @return {Array} resulting array with non-emoji parts of text and whatever {processor}\n * returned for emoji\n */\nvar processTextForEmoji = function processTextForEmoji(text, emojis, processor) {\n var buffer = [];\n var textBuffer = '';\n for (var i = 0; i < text.length; i++) {\n var _char = text[i];\n if (_char === ':') {\n var next = text.slice(i + 1);\n var found = false;\n var _iterator = _createForOfIteratorHelper(emojis),\n _step;\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var emoji = _step.value;\n if (next.slice(0, emoji.shortcode.length + 1) === emoji.shortcode + ':') {\n found = emoji;\n break;\n }\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n if (found) {\n buffer.push(textBuffer);\n textBuffer = '';\n buffer.push(processor(found));\n i += found.shortcode.length + 1;\n } else {\n textBuffer += _char;\n }\n } else {\n textBuffer += _char;\n }\n }\n if (textBuffer) buffer.push(textBuffer);\n return buffer;\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvaHRtbF9jb252ZXJ0ZXIvdXRpbGl0eS5zZXJ2aWNlLmpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sSUFBTUEsVUFBVSxHQUFHLFNBQWJBLFVBQVVBLENBQUlDLEdBQUcsRUFBSztFQUNqQyxJQUFNQyxNQUFNLEdBQUcsdUNBQW1DLENBQUNDLElBQUksQ0FBQ0YsR0FBRyxDQUFDO0VBQzVELE9BQU9DLE1BQU0sS0FBS0EsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJQSxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDM0MsQ0FBQzs7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLElBQU1FLFFBQVEsR0FBRyxTQUFYQSxRQUFRQSxDQUFJSCxHQUFHLEVBQUVJLE1BQU0sRUFBSztFQUN2QyxJQUFNQyxRQUFRLEdBQUdMLEdBQUcsQ0FDakJNLFNBQVMsQ0FBQyxDQUFDLEVBQUVOLEdBQUcsQ0FBQ08sTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUM1QkMsT0FBTyxDQUFDLElBQUlDLE1BQU0sQ0FBQyxHQUFHLEdBQUdWLFVBQVUsQ0FBQ0MsR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FDOUNRLE9BQU8sQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQ25CRSxJQUFJLENBQUMsQ0FBQztFQUNULElBQU1DLEtBQUssR0FBR0MsS0FBSyxDQUFDQyxJQUFJLENBQUNSLFFBQVEsQ0FBQ1MsUUFBUSxDQUFDLCtDQUErQyxDQUFDLENBQUMsQ0FDekZDLEdBQUcsQ0FBQyxVQUFBQyxJQUFBO0lBQUEsSUFBQUMsS0FBQSxHQUFBQyxnRkFBQSxDQUFBRixJQUFBO01BQUVHLEtBQUssR0FBQUYsS0FBQTtNQUFFRyxHQUFHLEdBQUFILEtBQUE7TUFBRUksS0FBSyxHQUFBSixLQUFBO0lBQUEsT0FBTSxDQUFDRyxHQUFHLEVBQUVDLEtBQUssQ0FBQztFQUFB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LFVBQVUsSUFBSUUsS0FBSTtNQUNwQjtJQUNGLENBQUMsTUFBTTtNQUNMRixVQUFVLElBQUlFLEtBQUk7SUFDcEI7RUFDRjtFQUNBLElBQUlGLFVBQVUsRUFBRUQsTUFBTSxDQUFDa0IsSUFBSSxDQUFDakIsVUFBVSxDQUFDO0VBQ3ZDLE9BQU9ELE1BQU07QUFDZixDQUFDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9zZXJ2aWNlcy9odG1sX2NvbnZlcnRlci91dGlsaXR5LnNlcnZpY2UuanM/MjcxYSJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEV4dHJhY3QgdGFnIG5hbWUgZnJvbSB0YWcgb3BlbmVyL2Nsb3Nlci5cbiAqXG4gKiBAcGFyYW0ge1N0cmluZ30gdGFnIC0gdGFnIHN0cmluZywgaS5lLiAnPGEgaHJlZj1cIi4uLlwiPidcbiAqIEByZXR1cm4ge1N0cmluZ30gLSB0YWduYW1lLCBpLmUuIFwiZGl2XCJcbiAqL1xuZXhwb3J0IGNvbnN0IGdldFRhZ05hbWUgPSAodGFnKSA9PiB7XG4gIGNvbnN0IHJlc3VsdCA9IC8oPzo8XFwvKFxcdyspPnw8KFxcdyspXFxzPy4qP1xcLz8+KS9naXMuZXhlYyh0YWcpXG4gIHJldHVybiByZXN1bHQgJiYgKHJlc3VsdFsxXSB8fCByZXN1bHRbMl0pXG59XG5cbi8qKlxuICogRXh0cmFjdCBhdHRyaWJ1dGVzIGZyb20gdGFnIG9wZW5lci5cbiAqXG4gKiBAcGFyYW0ge1N0cmluZ30gdGFnIC0gdGFnIHN0cmluZywgaS5lLiAnPGEgaHJlZj1cIi4uLlwiPidcbiAqIEByZXR1cm4ge09iamVjdH0gLSBtYXAgb2YgYXR0cmlidXRlcyBrZXkgPSBhdHRyaWJ1dGUgbmFtZSwgdmFsdWUgPSBhdHRyaWJ1dGUgdmFsdWVcbiAqICAgYXR0cmlidXRlcyB3aXRob3V0IHZhbHVlcyByZXByZXNlbnRlZCBhcyBib29sZWFuIHRydWVcbiAqL1xuZXhwb3J0IGNvbnN0IGdldEF0dHJzID0gKHRhZywgZmlsdGVyKSA9PiB7XG4gIGNvbnN0IGlubmVydGFnID0gdGFnXG4gICAgLnN1YnN0cmluZygxLCB0YWcubGVuZ3RoIC0gMSlcbiAgICAucmVwbGFjZShuZXcgUmVnRXhwKCdeJyArIGdldFRhZ05hbWUodGFnKSksICcnKVxuICAgIC5yZXBsYWNlKC9cXC8/JC8sICcnKVxuICAgIC50cmltKClcbiAgY29uc3QgYXR0cnMgPSBBcnJheS5mcm9tKGlubmVydGFnLm1hdGNoQWxsKC8oW2Etel0rW2EtejAtOS1dKikoPzo9KFwiW15cIl0rP1wifCdbXiddKz8nKSk/L2dpKSlcbiAgICAubWFwKChbdHJhc2gsIGtleSwgdmFsdWVdKSA9PiBba2V5LCB2YWx1ZV0pXG4gICAgLm1hcCgoW2ssIHZdKSA9PiB7XG4gICAgICBpZiAoIXYpIHJldHVybiBbaywgdHJ1ZV1cbiAgICAgIHJldHVybiBbaywgdi5zdWJzdHJpbmcoMSwgdi5sZW5ndGggLSAxKV1cbiAgICB9KVxuICBjb25zdCBkZWZhdWx0RmlsdGVyID0gKFtrLCB2XSkgPT4ge1xuICAgIGNvbnN0IGF0dHJLZXkgPSBrLnRvTG93ZXJDYXNlKClcbiAgICBpZiAoYXR0cktleSA9PT0gJ3N0eWxlJykgcmV0dXJuIGZhbHNlXG4gICAgaWYgKGF0dHJLZXkgPT09ICdjbGFzcycpIHtcbiAgICAgIHJldHVybiB2ID09PSAnZ3JlZW50ZXh0JyB8fCB2ID09PSAnY3lhbnRleHQnXG4gICAgfVxuICAgIHJldHVybiB0cnVlXG4gIH1cbiAgcmV0dXJuIE9iamVjdC5mcm9tRW50cmllcyhhdHRycy5maWx0ZXIoZmlsdGVyIHx8IGRlZmF1bHRGaWx0ZXIpKVxufVxuXG4vKipcbiAqIEZpbmRzIHNob3J0Y29kZXMgaW4gdGV4dFxuICpcbiAqIEBwYXJhbSB7U3RyaW5nfSB0ZXh0IC0gb3JpZ2luYWwgdGV4dCB0byBmaW5kIGVtb2ppcyBpblxuICogQHBhcmFtIHt7IHVybDogU3RyaW5nLCBzaG9ydGNvZGU6IFNyaW5nIH1bXX0gZW1vamkgLSBsaXN0IG9mIHNob3J0Y29kZXMgdG8gZmluZFxuICogQHBhcmFtIHtGdW5jdGlvbn0gcHJvY2Vzc29yIC0gZnVuY3Rpb24gdG8gY2FsbCBvbiBlYWNoIGVuY291bnRlcmVkIGVtb2ppLFxuICogICBmdW5jdGlvbiBpcyBwYXNzZWQgc2luZ2xlIG9iamVjdCBjb250YWluaW5nIG1hdGNoaW5nIGVtb2ppICh7IHVybCwgc2hvcnRjb2RlIH0pXG4gKiAgIHJldHVybiB2YWx1ZSB3aWxsIGJlIGluc2VydGVkIGludG8gcmVzdWx0aW5nIGFycmF5IGluc3RlYWQgb2YgOnNob3J0Y29kZTpcbiAqIEByZXR1cm4ge0FycmF5fSByZXN1bHRpbmcgYXJyYXkgd2l0aCBub24tZW1vamkgcGFydHMgb2YgdGV4dCBhbmQgd2hhdGV2ZXIge3Byb2Nlc3Nvcn1cbiAqICAgcmV0dXJuZWQgZm9yIGVtb2ppXG4gKi9cbmV4cG9ydCBjb25zdCBwcm9jZXNzVGV4dEZvckVtb2ppID0gKHRleHQsIGVtb2ppcywgcHJvY2Vzc29yKSA9PiB7XG4gIGNvbnN0IGJ1ZmZlciA9IFtdXG4gIGxldCB0ZXh0QnVmZmVyID0gJydcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCB0ZXh0Lmxlbmd0aDsgaSsrKSB7XG4gICAgY29uc3QgY2hhciA9IHRleHRbaV1cbiAgICBpZiAoY2hhciA9PT0gJzonKSB7XG4gICAgICBjb25zdCBuZXh0ID0gdGV4dC5zbGljZShpICsgMSlcbiAgICAgIGxldCBmb3VuZCA9IGZhbHNlXG4gICAgICBmb3IgKGNvbnN0IGVtb2ppIG9mIGVtb2ppcykge1xuICAgICAgICBpZiAobmV4dC5zbGljZSgwLCBlbW9qaS5zaG9ydGNvZGUubGVuZ3RoICsgMSkgPT09IChlbW9qaS5zaG9ydGNvZGUgKyAnOicpKSB7XG4gICAgICAgICAgZm91bmQgPSBlbW9qaVxuICAgICAgICAgIGJyZWFrXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGlmIChmb3VuZCkge1xuICAgICAgICBidWZmZXIucHVzaCh0ZXh0QnVmZmVyKVxuICAgICAgICB0ZXh0QnVmZmVyID0gJydcbiAgICAgICAgYnVmZmVyLnB1c2gocHJvY2Vzc29yKGZvdW5kKSlcbiAgICAgICAgaSArPSBmb3VuZC5zaG9ydGNvZGUubGVuZ3RoICsgMVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGV4dEJ1ZmZlciArPSBjaGFyXG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRleHRCdWZmZXIgKz0gY2hhclxuICAgIH1cbiAgfVxuICBpZiAodGV4dEJ1ZmZlcikgYnVmZmVyLnB1c2godGV4dEJ1ZmZlcilcbiAgcmV0dXJuIGJ1ZmZlclxufVxuIl0sIm5hbWVzIjpbImdldFRhZ05hbWUiLCJ0YWciLCJyZXN1bHQiLCJleGVjIiwiZ2V0QXR0cnMiLCJmaWx0ZXIiLCJpbm5lcnRhZyIsInN1YnN0cmluZyIsImxlbmd0aCIsInJlcGxhY2UiLCJSZWdFeHAiLCJ0cmltIiwiYXR0cnMiLCJBcnJheSIsImZyb20iLCJtYXRjaEFsbCIsIm1hcCIsIl9yZWYiLCJfcmVmMiIsIl9zbGljZWRUb0FycmF5IiwidHJhc2giLCJrZXkiLCJ2YWx1ZSIsIl9yZWYzIiwiX3JlZjQiLCJrIiwidiIsImRlZmF1bHRGaWx0ZXIiLCJfcmVmNSIsIl9yZWY2IiwiYXR0cktleSIsInRvTG93ZXJDYXNlIiwiT2JqZWN0IiwiZnJvbUVudHJpZXMiLCJwcm9jZXNzVGV4dEZvckVtb2ppIiwidGV4dCIsImVtb2ppcyIsInByb2Nlc3NvciIsImJ1ZmZlciIsInRleHRCdWZmZXIiLCJpIiwiY2hhciIsIm5leHQiLCJzbGljZSIsImZvdW5kIiwiX2l0ZXJhdG9yIiwiX2NyZWF0ZUZvck9mSXRlcmF0b3JIZWxwZXIiLCJfc3RlcCIsInMiLCJuIiwiZG9uZSIsImVtb2ppIiwic2hvcnRjb2RlIiwiZXJyIiwiZSIsImYiLCJwdXNoIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/services/html_converter/utility.service.js\n");
/***/ }),
/***/ "./src/services/lists_fetcher/lists_fetcher.service.js":
/*!*************************************************************!*\
!*** ./src/services/lists_fetcher/lists_fetcher.service.js ***!
\*************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _api_api_service_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../api/api.service.js */ \"./src/services/api/api.service.js\");\n/* harmony import */ var _promise_interval_promise_interval_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../promise_interval/promise_interval.js */ \"./src/services/promise_interval/promise_interval.js\");\n\n\nvar fetchAndUpdate = function fetchAndUpdate(_ref) {\n var store = _ref.store,\n credentials = _ref.credentials;\n return _api_api_service_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].fetchLists({\n credentials: credentials\n }).then(function (lists) {\n store.commit('setLists', lists);\n }, function () {})[\"catch\"](function () {});\n};\nvar startFetching = function startFetching(_ref2) {\n var credentials = _ref2.credentials,\n store = _ref2.store;\n var boundFetchAndUpdate = function boundFetchAndUpdate() {\n return fetchAndUpdate({\n credentials: credentials,\n store: store\n });\n };\n boundFetchAndUpdate();\n return (0,_promise_interval_promise_interval_js__WEBPACK_IMPORTED_MODULE_1__.promiseInterval)(boundFetchAndUpdate, 240000);\n};\nvar listsFetcher = {\n startFetching: startFetching\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (listsFetcher);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvbGlzdHNfZmV0Y2hlci9saXN0c19mZXRjaGVyLnNlcnZpY2UuanMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQThDO0FBQzJCO0FBRXpFLElBQU1FLGNBQWMsR0FBRyxTQUFqQkEsY0FBY0EsQ0FBQUMsSUFBQSxFQUErQjtFQUFBLElBQXpCQyxLQUFLLEdBQUFELElBQUEsQ0FBTEMsS0FBSztJQUFFQyxXQUFXLEdBQUFGLElBQUEsQ0FBWEUsV0FBVztFQUMxQyxPQUFPTCxzRUFBcUIsQ0FBQztJQUFFSyxXQUFXLEVBQVhBO0VBQVksQ0FBQyxDQUFDLENBQzFDRSxJQUFJLENBQUMsVUFBQUMsS0FBSyxFQUFJO0lBQ2JKLEtBQUssQ0FBQ0ssTUFBTSxDQUFDLFVBQVUsRUFBRUQsS0FBSyxDQUFDO0VBQ2pDLENBQUMsRUFBRSxZQUFNLENBQUMsQ0FBQyxDQUFDLFNBQ04sQ0FBQyxZQUFNLENBQUMsQ0FBQyxDQUFDO0FBQ3BCLENBQUM7QUFFRCxJQUFNRSxhQUFhLEdBQUcsU0FBaEJBLGFBQWFBLENBQUFDLEtBQUEsRUFBK0I7RUFBQSxJQUF6Qk4sV0FBVyxHQUFBTSxLQUFBLENBQVhOLFdBQVc7SUFBRUQsS0FBSyxHQUFBTyxLQUFBLENBQUxQLEtBQUs7RUFDekMsSUFBTVEsbUJBQW1CLEdBQUcsU0FBdEJBLG1CQUFtQkEsQ0FBQTtJQUFBLE9BQVNWLGNBQWMsQ0FBQztNQUFFRyxXQUFXLEVBQVhBLFdBQVc7TUFBRUQsS0FBSyxFQUFMQTtJQUFNLENBQUMsQ0FBQztFQUFBO0VBQ3hFUSxtQkFBbUIsQ0FBQyxDQUFDO0VBQ3JCLE9BQU9YLHNGQUFlLENBQUNXLG1CQUFtQixFQUFFLE1BQU0sQ0FBQztBQUNyRCxDQUFDO0FBRUQsSUFBTUMsWUFBWSxHQUFHO0VBQ25CSCxhQUFhLEVBQWJBO0FBQ0YsQ0FBQztBQUVELGlFQUFlRyxZQUFZIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9zZXJ2aWNlcy9saXN0c19mZXRjaGVyL2xpc3RzX2ZldGNoZXIuc2VydmljZS5qcz9lZjIwIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBhcGlTZXJ2aWNlIGZyb20gJy4uL2FwaS9hcGkuc2VydmljZS5qcydcbmltcG9ydCB7IHByb21pc2VJbnRlcnZhbCB9IGZyb20gJy4uL3Byb21pc2VfaW50ZXJ2YWwvcHJvbWlzZV9pbnRlcnZhbC5qcydcblxuY29uc3QgZmV0Y2hBbmRVcGRhdGUgPSAoeyBzdG9yZSwgY3JlZGVudGlhbHMgfSkgPT4ge1xuICByZXR1cm4gYXBpU2VydmljZS5mZXRjaExpc3RzKHsgY3JlZGVudGlhbHMgfSlcbiAgICAudGhlbihsaXN0cyA9PiB7XG4gICAgICBzdG9yZS5jb21taXQoJ3NldExpc3RzJywgbGlzdHMpXG4gICAgfSwgKCkgPT4ge30pXG4gICAgLmNhdGNoKCgpID0+IHt9KVxufVxuXG5jb25zdCBzdGFydEZldGNoaW5nID0gKHsgY3JlZGVudGlhbHMsIHN0b3JlIH0pID0+IHtcbiAgY29uc3QgYm91bmRGZXRjaEFuZFVwZGF0ZSA9ICgpID0+IGZldGNoQW5kVXBkYXRlKHsgY3JlZGVudGlhbHMsIHN0b3JlIH0pXG4gIGJvdW5kRmV0Y2hBbmRVcGRhdGUoKVxuICByZXR1cm4gcHJvbWlzZUludGVydmFsKGJvdW5kRmV0Y2hBbmRVcGRhdGUsIDI0MDAwMClcbn1cblxuY29uc3QgbGlzdHNGZXRjaGVyID0ge1xuICBzdGFydEZldGNoaW5nXG59XG5cbmV4cG9ydCBkZWZhdWx0IGxpc3RzRmV0Y2hlclxuIl0sIm5hbWVzIjpbImFwaVNlcnZpY2UiLCJwcm9taXNlSW50ZXJ2YWwiLCJmZXRjaEFuZFVwZGF0ZSIsIl9yZWYiLCJzdG9yZSIsImNyZWRlbnRpYWxzIiwiZmV0Y2hMaXN0cyIsInRoZW4iLCJsaXN0cyIsImNvbW1pdCIsInN0YXJ0RmV0Y2hpbmciLCJfcmVmMiIsImJvdW5kRmV0Y2hBbmRVcGRhdGUiLCJsaXN0c0ZldGNoZXIiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/services/lists_fetcher/lists_fetcher.service.js\n");
/***/ }),
/***/ "./src/services/locale/locale.service.js":
/*!***********************************************!*\
!*** ./src/services/locale/locale.service.js ***!
\***********************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var lodash_map__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/map */ \"./node_modules/lodash/map.js\");\n/* harmony import */ var lodash_map__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_map__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _i18n_messages__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../i18n/messages */ \"./src/i18n/messages.js\");\n/* harmony import */ var iso_639_1__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! iso-639-1 */ \"./node_modules/iso-639-1/src/index.js\");\n\n\n\nvar specialLanguageCodes = {\n ja_easy: 'ja',\n zh_Hant: 'zh-HANT',\n zh: 'zh-Hans'\n};\nvar internalToBrowserLocale = function internalToBrowserLocale(code) {\n return specialLanguageCodes[code] || code;\n};\nvar internalToBackendLocale = function internalToBackendLocale(code) {\n return internalToBrowserLocale(code).replace('_', '-');\n};\nvar internalToBackendLocaleMulti = function internalToBackendLocaleMulti(codes) {\n var langs = Array.isArray(codes) ? codes : [codes];\n return langs.map(internalToBackendLocale).join(',');\n};\nvar getLanguageName = function getLanguageName(code) {\n var specialLanguageNames = {\n ja_easy: 'やさしいにほんご',\n 'nan-TW': '臺語(閩南語)',\n zh: '简体中文',\n zh_Hant: '繁體中文'\n };\n var languageName = specialLanguageNames[code] || iso_639_1__WEBPACK_IMPORTED_MODULE_2__[\"default\"].getNativeName(code);\n var browserLocale = internalToBrowserLocale(code);\n return languageName.charAt(0).toLocaleUpperCase(browserLocale) + languageName.slice(1);\n};\nvar languages = lodash_map__WEBPACK_IMPORTED_MODULE_0___default()(_i18n_messages__WEBPACK_IMPORTED_MODULE_1__[\"default\"].languages, function (code) {\n return {\n code: code,\n name: getLanguageName(code)\n };\n}).sort(function (a, b) {\n return a.name.localeCompare(b.name);\n});\nvar localeService = {\n internalToBrowserLocale: internalToBrowserLocale,\n internalToBackendLocale: internalToBackendLocale,\n internalToBackendLocaleMulti: internalToBackendLocaleMulti,\n languages: languages,\n getLanguageName: getLanguageName\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (localeService);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvbG9jYWxlL2xvY2FsZS5zZXJ2aWNlLmpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFpRDtBQUNsQjtBQUcvQixJQUFNRSxvQkFBb0IsR0FBRztFQUMzQkMsT0FBTyxFQUFFLElBQUk7RUFDYkMsT0FBTyxFQUFFLFNBQVM7RUFDbEJDLEVBQUUsRUFBRTtBQUNOLENBQUM7QUFFRCxJQUFNQyx1QkFBdUIsR0FBRyxTQUExQkEsdUJBQXVCQSxDQUFHQyxJQUFJO0VBQUEsT0FBSUwsb0JBQW9CLENBQUNLLElBQUksQ0FBQyxJQUFJQSxJQUFJO0FBQUE7QUFFMUUsSUFBTUMsdUJBQXVCLEdBQUcsU0FBMUJBLHVCQUF1QkEsQ0FBR0QsSUFBSTtFQUFBLE9BQUlELHVCQUF1QixDQUFDQyxJQUFJLENBQUMsQ0FBQ0UsT0FBTyxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUM7QUFBQTtBQUN2RixJQUFNQyw0QkFBNEIsR0FBRyxTQUEvQkEsNEJBQTRCQSxDQUFHQyxLQUFLLEVBQUk7RUFDNUMsSUFBTUMsS0FBSyxHQUFHQyxLQUFLLENBQUNDLE9BQU8sQ0FBQ0gsS0FBSyxDQUFDLEdBQUdBLEtBQUssR0FBRyxDQUFDQSxLQUFLLENBQUM7RUFDcEQsT0FBT0MsS0FBSyxDQUFDRyxHQUFHLENBQUNQLHVCQUF1QixDQUFDLENBQUNRLElBQUksQ0FBQyxHQUFHLENBQUM7QUFDckQsQ0FBQztBQUVELElBQU1DLGVBQWUsR0FBRyxTQUFsQkEsZUFBZUEsQ0FBSVYsSUFBSSxFQUFLO0VBQ2hDLElBQU1XLG9CQUFvQixHQUFHO0lBQzNCZixPQUFPLEVBQUUsVUFBVTtJQUNuQixRQUFRLEVBQUUsU0FBUztJQUNuQkUsRUFBRSxFQUFFLE1BQU07SUFDVkQsT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNELElBQU1lLFlBQVksR0FBR0Qsb0JBQW9CLENBQUNYLElBQUksQ0FBQyxJQUFJTiwrREFBcUIsQ0FBQ00sSUFBSSxDQUFDO0VBQzlFLElBQU1jLGFBQWEsR0FBR2YsdUJBQXVCLENBQUNDLElBQUksQ0FBQztFQUNuRCxPQUFPWSxZQUFZLENBQUNHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQ0MsaUJBQWlCLENBQUNGLGFBQWEsQ0FBQyxHQUFHRixZQUFZLENBQUNLLEtBQUssQ0FBQyxDQUFDLENBQUM7QUFDeEYsQ0FBQztBQUVELElBQU1DLFNBQVMsR0FBR0MsaURBQUEsQ0FBTTFCLGdFQUF5QixFQUFFLFVBQUNPLElBQUk7RUFBQSxPQUFNO0lBQUVBLElBQUksRUFBSkEsSUFBSTtJQUFFb0IsSUFBSSxFQUFFVixlQUFlLENBQUNWLElBQUk7RUFBRSxDQUFDO0FBQUEsQ0FBQyxDQUFDLENBQUNxQixJQUFJLENBQUMsVUFBQ0MsQ0FBQyxFQUFFQyxDQUFDO0VBQUEsT0FBS0QsQ0FBQyxDQUFDRixJQUFJLENBQUNJLGFBQWEsQ0FBQ0QsQ0FBQyxDQUFDSCxJQUFJLENBQUM7QUFBQSxFQUFDO0FBRWxKLElBQU1LLGFBQWEsR0FBRztFQUNwQjFCLHVCQUF1QixFQUF2QkEsdUJBQXVCO0VBQ3ZCRSx1QkFBdUIsRUFBdkJBLHVCQUF1QjtFQUN2QkUsNEJBQTRCLEVBQTVCQSw0QkFBNEI7RUFDNUJlLFNBQVMsRUFBVEEsU0FBUztFQUNUUixlQUFlLEVBQWZBO0FBQ0YsQ0FBQztBQUVELGlFQUFlZSxhQUFhIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9zZXJ2aWNlcy9sb2NhbGUvbG9jYWxlLnNlcnZpY2UuanM/ZjM5NSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgbGFuZ3VhZ2VzT2JqZWN0IGZyb20gJy4uLy4uL2kxOG4vbWVzc2FnZXMnXG5pbXBvcnQgSVNPNjM5MSBmcm9tICdpc28tNjM5LTEnXG5pbXBvcnQgXyBmcm9tICdsb2Rhc2gnXG5cbmNvbnN0IHNwZWNpYWxMYW5ndWFnZUNvZGVzID0ge1xuICBqYV9lYXN5OiAnamEnLFxuICB6aF9IYW50OiAnemgtSEFOVCcsXG4gIHpoOiAnemgtSGFucydcbn1cblxuY29uc3QgaW50ZXJuYWxUb0Jyb3dzZXJMb2NhbGUgPSBjb2RlID0+IHNwZWNpYWxMYW5ndWFnZUNvZGVzW2NvZGVdIHx8IGNvZGVcblxuY29uc3QgaW50ZXJuYWxUb0JhY2tlbmRMb2NhbGUgPSBjb2RlID0+IGludGVybmFsVG9Ccm93c2VyTG9jYWxlKGNvZGUpLnJlcGxhY2UoJ18nLCAnLScpXG5jb25zdCBpbnRlcm5hbFRvQmFja2VuZExvY2FsZU11bHRpID0gY29kZXMgPT4ge1xuICBjb25zdCBsYW5ncyA9IEFycmF5LmlzQXJyYXkoY29kZXMpID8gY29kZXMgOiBbY29kZXNdXG4gIHJldHVybiBsYW5ncy5tYXAoaW50ZXJuYWxUb0JhY2tlbmRMb2NhbGUpLmpvaW4oJywnKVxufVxuXG5jb25zdCBnZXRMYW5ndWFnZU5hbWUgPSAoY29kZSkgPT4ge1xuICBjb25zdCBzcGVjaWFsTGFuZ3VhZ2VOYW1lcyA9IHtcbiAgICBqYV9lYXN5OiAn44KE44GV44GX44GE44Gr44G744KT44GUJyxcbiAgICAnbmFuLVRXJzogJ+iHuuiqnu+8iOmWqeWNl+iqnu+8iScsXG4gICAgemg6ICfnroDkvZPkuK3mlocnLFxuICAgIHpoX0hhbnQ6ICfnuYHpq5TkuK3mlocnXG4gIH1cbiAgY29uc3QgbGFuZ3VhZ2VOYW1lID0gc3BlY2lhbExhbmd1YWdlTmFtZXNbY29kZV0gfHwgSVNPNjM5MS5nZXROYXRpdmVOYW1lKGNvZGUpXG4gIGNvbnN0IGJyb3dzZXJMb2NhbGUgPSBpbnRlcm5hbFRvQnJvd3NlckxvY2FsZShjb2RlKVxuICByZXR1cm4gbGFuZ3VhZ2VOYW1lLmNoYXJBdCgwKS50b0xvY2FsZVVwcGVyQ2FzZShicm93c2VyTG9jYWxlKSArIGxhbmd1YWdlTmFtZS5zbGljZSgxKVxufVxuXG5jb25zdCBsYW5ndWFnZXMgPSBfLm1hcChsYW5ndWFnZXNPYmplY3QubGFuZ3VhZ2VzLCAoY29kZSkgPT4gKHsgY29kZSwgbmFtZTogZ2V0TGFuZ3VhZ2VOYW1lKGNvZGUpIH0pKS5zb3J0KChhLCBiKSA9PiBhLm5hbWUubG9jYWxlQ29tcGFyZShiLm5hbWUpKVxuXG5jb25zdCBsb2NhbGVTZXJ2aWNlID0ge1xuICBpbnRlcm5hbFRvQnJvd3NlckxvY2FsZSxcbiAgaW50ZXJuYWxUb0JhY2tlbmRMb2NhbGUsXG4gIGludGVybmFsVG9CYWNrZW5kTG9jYWxlTXVsdGksXG4gIGxhbmd1YWdlcyxcbiAgZ2V0TGFuZ3VhZ2VOYW1lXG59XG5cbmV4cG9ydCBkZWZhdWx0IGxvY2FsZVNlcnZpY2VcbiJdLCJuYW1lcyI6WyJsYW5ndWFnZXNPYmplY3QiLCJJU082MzkxIiwic3BlY2lhbExhbmd1YWdlQ29kZXMiLCJqYV9lYXN5IiwiemhfSGFudCIsInpoIiwiaW50ZXJuYWxUb0Jyb3dzZXJMb2NhbGUiLCJjb2RlIiwiaW50ZXJuYWxUb0JhY2tlbmRMb2NhbGUiLCJyZXBsYWNlIiwiaW50ZXJuYWxUb0JhY2tlbmRMb2NhbGVNdWx0aSIsImNvZGVzIiwibGFuZ3MiLCJBcnJheSIsImlzQXJyYXkiLCJtYXAiLCJqb2luIiwiZ2V0TGFuZ3VhZ2VOYW1lIiwic3BlY2lhbExhbmd1YWdlTmFtZXMiLCJsYW5ndWFnZU5hbWUiLCJnZXROYXRpdmVOYW1lIiwiYnJvd3NlckxvY2FsZSIsImNoYXJBdCIsInRvTG9jYWxlVXBwZXJDYXNlIiwic2xpY2UiLCJsYW5ndWFnZXMiLCJfbWFwIiwibmFtZSIsInNvcnQiLCJhIiwiYiIsImxvY2FsZUNvbXBhcmUiLCJsb2NhbGVTZXJ2aWNlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/services/locale/locale.service.js\n");
/***/ }),
/***/ "./src/services/matcher/matcher.service.js":
/*!*************************************************!*\
!*** ./src/services/matcher/matcher.service.js ***!
\*************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"extractTagFromUrl\": () => (/* binding */ extractTagFromUrl),\n/* harmony export */ \"mentionMatchesUrl\": () => (/* binding */ mentionMatchesUrl)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ \"./node_modules/@babel/runtime/helpers/esm/slicedToArray.js\");\n\nvar mentionMatchesUrl = function mentionMatchesUrl(attention, url) {\n if (url === attention.statusnet_profile_url) {\n return true;\n }\n var _attention$screen_nam = attention.screen_name.split('@'),\n _attention$screen_nam2 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(_attention$screen_nam, 2),\n namepart = _attention$screen_nam2[0],\n instancepart = _attention$screen_nam2[1];\n var matchstring = new RegExp('://' + instancepart + '/.*' + namepart + '$', 'g');\n return !!url.match(matchstring);\n};\n\n/**\n * Extract tag name from pleroma or mastodon url.\n * i.e https://bikeshed.party/tag/photo or https://quey.org/tags/sky\n * @param {string} url\n */\nvar extractTagFromUrl = function extractTagFromUrl(url) {\n var decoded = decodeURI(url);\n // https://git.pleroma.social/pleroma/elixir-libraries/linkify/-/blob/master/lib/linkify/parser.ex\n // https://www.pcre.org/original/doc/html/pcrepattern.html\n var regex = /tags*\\/((?:[0-9A-Z_a-z\\xAA\\xB2\\xB3\\xB5\\xB9\\xBA\\xBC-\\xBE\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0370-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0560-\\u0588\\u05D0-\\u05EA\\u05EF-\\u05F2\\u0620-\\u064A\\u0660-\\u0669\\u066E\\u066F\\u0671-\\u06D3\\u06D5\\u06E5\\u06E6\\u06EE-\\u06FC\\u06FF\\u0710\\u0712-\\u072F\\u074D-\\u07A5\\u07B1\\u07C0-\\u07EA\\u07F4\\u07F5\\u07FA\\u0800-\\u0815\\u081A\\u0824\\u0828\\u0840-\\u0858\\u0860-\\u086A\\u0870-\\u0887\\u0889-\\u088E\\u08A0-\\u08C9\\u0904-\\u0939\\u093D\\u0950\\u0958-\\u0961\\u0966-\\u096F\\u0971-\\u0980\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD\\u09CE\\u09DC\\u09DD\\u09DF-\\u09E1\\u09E6-\\u09F1\\u09F4-\\u09F9\\u09FC\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A59-\\u0A5C\\u0A5E\\u0A66-\\u0A6F\\u0A72-\\u0A74\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABD\\u0AD0\\u0AE0\\u0AE1\\u0AE6-\\u0AEF\\u0AF9\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3D\\u0B5C\\u0B5D\\u0B5F-\\u0B61\\u0B66-\\u0B6F\\u0B71-\\u0B77\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BD0\\u0BE6-\\u0BF2\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D\\u0C58-\\u0C5A\\u0C5D\\u0C60\\u0C61\\u0C66-\\u0C6F\\u0C78-\\u0C7E\\u0C80\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDD\\u0CDE\\u0CE0\\u0CE1\\u0CE6-\\u0CEF\\u0CF1\\u0CF2\\u0D04-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D\\u0D4E\\u0D54-\\u0D56\\u0D58-\\u0D61\\u0D66-\\u0D78\\u0D7A-\\u0D7F\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0DE6-\\u0DEF\\u0E01-\\u0E30\\u0E32\\u0E33\\u0E40-\\u0E46\\u0E50-\\u0E59\\u0E81\\u0E82\\u0E84\\u0E86-\\u0E8A\\u0E8C-\\u0EA3\\u0EA5\\u0EA7-\\u0EB0\\u0EB2\\u0EB3\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0ED0-\\u0ED9\\u0EDC-\\u0EDF\\u0F00\\u0F20-\\u0F33\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F88-\\u0F8C\\u1000-\\u102A\\u103F-\\u1049\\u1050-\\u1055\\u105A-\\u105D\\u1061\\u1065\\u1066\\u106E-\\u1070\\u1075-\\u1081\\u108E\\u1090-\\u1099\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1369-\\u137C\\u1380-\\u138F\\u13A0-\\u13F5\\u13F8-\\u13FD\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16EE-\\u16F8\\u1700-\\u1711\\u171F-\\u1731\\u1740-\\u1751\\u1760-\\u176C\\u176E-\\u1770\\u1780-\\u17B3\\u17D7\\u17DC\\u17E0-\\u17E9\\u17F0-\\u17F9\\u1810-\\u1819\\u1820-\\u1878\\u1880-\\u1884\\u1887-\\u18A8\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1946-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19B0-\\u19C9\\u19D0-\\u19DA\\u1A00-\\u1A16\\u1A20-\\u1A54\\u1A80-\\u1A89\\u1A90-\\u1A99\\u1AA7\\u1B05-\\u1B33\\u1B45-\\u1B4C\\u1B50-\\u1B59\\u1B83-\\u1BA0\\u1BAE-\\u1BE5\\u1C00-\\u1C23\\u1C40-\\u1C49\\u1C4D-\\u1C7D\\u1C80-\\u1C88\\u1C90-\\u1CBA\\u1CBD-\\u1CBF\\u1CE9-\\u1CEC\\u1CEE-\\u1CF3\\u1CF5\\u1CF6\\u1CFA\\u1D00-\\u1DBF\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u2070\\u2071\\u2074-\\u2079\\u207F-\\u2089\\u2090-\\u209C\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2150-\\u2189\\u2460-\\u249B\\u24EA-\\u24FF\\u2776-\\u2793\\u2C00-\\u2CE4\\u2CEB-\\u2CEE\\u2CF2\\u2CF3\\u2CFD\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2E2F\\u3005-\\u3007\\u3021-\\u3029\\u3031-\\u3035\\u3038-\\u303C\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312F\\u3131-\\u318E\\u3192-\\u3195\\u31A0-\\u31BF\\u31F0-\\u31FF\\u3220-\\u3229\\u3248-\\u324F\\u3251-\\u325F\\u3280-\\u3289\\u32B1-\\u32BF\\u3400-\\u4DBF\\u4E00-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA62B\\uA640-\\uA66E\\uA67F-\\uA69D\\uA6A0-\\uA6EF\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA7CA\\uA7D0\\uA7D1\\uA7D3\\uA7D5-\\uA7D9\\uA7F2-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA830-\\uA835\\uA840-\\uA873\\uA882-\\uA8B3\\uA8D0-\\uA8D9\\uA8F2-\\uA8F7\\uA8FB\\uA8FD\\uA8FE\\uA900-\\uA925\\uA930-\\uA946\\uA960-\\uA97C\\uA984-\\uA9B2\\uA9CF-\\uA9D9\\uA9E0-\\uA9E4\\uA9E6-\\uA9FE\\uAA00-\\uAA28\\uAA40-\\uAA42\\uAA44-\\uAA4B\\uAA50-\\uAA59\\uAA60-\\uAA76\\uAA7A\\uAA7E-\\uAAAF\\uAAB1\\uAAB5\\uAAB6\\uAAB9-\\uAABD\\uAAC0\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEA\\uAAF2-\\uAAF4\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB69\\uAB70-\\uABE2\\uABF0-\\uABF9\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D\\uFB1F-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF10-\\uFF19\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]|\\uD800[\\uDC00-\\uDC0B\\uDC0D-\\uDC26\\uDC28-\\uDC3A\\uDC3C\\uDC3D\\uDC3F-\\uDC4D\\uDC50-\\uDC5D\\uDC80-\\uDCFA\\uDD07-\\uDD33\\uDD40-\\uDD78\\uDD8A\\uDD8B\\uDE80-\\uDE9C\\uDEA0-\\uDED0\\uDEE1-\\uDEFB\\uDF00-\\uDF23\\uDF2D-\\uDF4A\\uDF50-\\uDF75\\uDF80-\\uDF9D\\uDFA0-\\uDFC3\\uDFC8-\\uDFCF\\uDFD1-\\uDFD5]|\\uD801[\\uDC00-\\uDC9D\\uDCA0-\\uDCA9\\uDCB0-\\uDCD3\\uDCD8-\\uDCFB\\uDD00-\\uDD27\\uDD30-\\uDD63\\uDD70-\\uDD7A\\uDD7C-\\uDD8A\\uDD8C-\\uDD92\\uDD94\\uDD95\\uDD97-\\uDDA1\\uDDA3-\\uDDB1\\uDDB3-\\uDDB9\\uDDBB\\uDDBC\\uDE00-\\uDF36\\uDF40-\\uDF55\\uDF60-\\uDF67\\uDF80-\\uDF85\\uDF87-\\uDFB0\\uDFB2-\\uDFBA]|\\uD802[\\uDC00-\\uDC05\\uDC08\\uDC0A-\\uDC35\\uDC37\\uDC38\\uDC3C\\uDC3F-\\uDC55\\uDC58-\\uDC76\\uDC79-\\uDC9E\\uDCA7-\\uDCAF\\uDCE0-\\uDCF2\\uDCF4\\uDCF5\\uDCFB-\\uDD1B\\uDD20-\\uDD39\\uDD80-\\uDDB7\\uDDBC-\\uDDCF\\uDDD2-\\uDE00\\uDE10-\\uDE13\\uDE15-\\uDE17\\uDE19-\\uDE35\\uDE40-\\uDE48\\uDE60-\\uDE7E\\uDE80-\\uDE9F\\uDEC0-\\uDEC7\\uDEC9-\\uDEE4\\uDEEB-\\uDEEF\\uDF00-\\uDF35\\uDF40-\\uDF55\\uDF58-\\uDF72\\uDF78-\\uDF91\\uDFA9-\\uDFAF]|\\uD803[\\uDC00-\\uDC48\\uDC80-\\uDCB2\\uDCC0-\\uDCF2\\uDCFA-\\uDD23\\uDD30-\\uDD39\\uDE60-\\uDE7E\\uDE80-\\uDEA9\\uDEB0\\uDEB1\\uDF00-\\uDF27\\uDF30-\\uDF45\\uDF51-\\uDF54\\uDF70-\\uDF81\\uDFB0-\\uDFCB\\uDFE0-\\uDFF6]|\\uD804[\\uDC03-\\uDC37\\uDC52-\\uDC6F\\uDC71\\uDC72\\uDC75\\uDC83-\\uDCAF\\uDCD0-\\uDCE8\\uDCF0-\\uDCF9\\uDD03-\\uDD26\\uDD36-\\uDD3F\\uDD44\\uDD47\\uDD50-\\uDD72\\uDD76\\uDD83-\\uDDB2\\uDDC1-\\uDDC4\\uDDD0-\\uDDDA\\uDDDC\\uDDE1-\\uDDF4\\uDE00-\\uDE11\\uDE13-\\uDE2B\\uDE80-\\uDE86\\uDE88\\uDE8A-\\uDE8D\\uDE8F-\\uDE9D\\uDE9F-\\uDEA8\\uDEB0-\\uDEDE\\uDEF0-\\uDEF9\\uDF05-\\uDF0C\\uDF0F\\uDF10\\uDF13-\\uDF28\\uDF2A-\\uDF30\\uDF32\\uDF33\\uDF35-\\uDF39\\uDF3D\\uDF50\\uDF5D-\\uDF61]|\\uD805[\\uDC00-\\uDC34\\uDC47-\\uDC4A\\uDC50-\\uDC59\\uDC5F-\\uDC61\\uDC80-\\uDCAF\\uDCC4\\uDCC5\\uDCC7\\uDCD0-\\uDCD9\\uDD80-\\uDDAE\\uDDD8-\\uDDDB\\uDE00-\\uDE2F\\uDE44\\uDE50-\\uDE59\\uDE80-\\uDEAA\\uDEB8\\uDEC0-\\uDEC9\\uDF00-\\uDF1A\\uDF30-\\uDF3B\\uDF40-\\uDF46]|\\uD806[\\uDC00-\\uDC2B\\uDCA0-\\uDCF2\\uDCFF-\\uDD06\\uDD09\\uDD0C-\\uDD13\\uDD15\\uDD16\\uDD18-\\uDD2F\\uDD3F\\uDD41\\uDD50-\\uDD59\\uDDA0-\\uDDA7\\uDDAA-\\uDDD0\\uDDE1\\uDDE3\\uDE00\\uDE0B-\\uDE32\\uDE3A\\uDE50\\uDE5C-\\uDE89\\uDE9D\\uDEB0-\\uDEF8]|\\uD807[\\uDC00-\\uDC08\\uDC0A-\\uDC2E\\uDC40\\uDC50-\\uDC6C\\uDC72-\\uDC8F\\uDD00-\\uDD06\\uDD08\\uDD09\\uDD0B-\\uDD30\\uDD46\\uDD50-\\uDD59\\uDD60-\\uDD65\\uDD67\\uDD68\\uDD6A-\\uDD89\\uDD98\\uDDA0-\\uDDA9\\uDEE0-\\uDEF2\\uDFB0\\uDFC0-\\uDFD4]|\\uD808[\\uDC00-\\uDF99]|\\uD809[\\uDC00-\\uDC6E\\uDC80-\\uDD43]|\\uD80B[\\uDF90-\\uDFF0]|[\\uD80C\\uD81C-\\uD820\\uD822\\uD840-\\uD868\\uD86A-\\uD86C\\uD86F-\\uD872\\uD874-\\uD879\\uD880-\\uD883][\\uDC00-\\uDFFF]|\\uD80D[\\uDC00-\\uDC2E]|\\uD811[\\uDC00-\\uDE46]|\\uD81A[\\uDC00-\\uDE38\\uDE40-\\uDE5E\\uDE60-\\uDE69\\uDE70-\\uDEBE\\uDEC0-\\uDEC9\\uDED0-\\uDEED\\uDF00-\\uDF2F\\uDF40-\\uDF43\\uDF50-\\uDF59\\uDF5B-\\uDF61\\uDF63-\\uDF77\\uDF7D-\\uDF8F]|\\uD81B[\\uDE40-\\uDE96\\uDF00-\\uDF4A\\uDF50\\uDF93-\\uDF9F\\uDFE0\\uDFE1\\uDFE3]|\\uD821[\\uDC00-\\uDFF7]|\\uD823[\\uDC00-\\uDCD5\\uDD00-\\uDD08]|\\uD82B[\\uDFF0-\\uDFF3\\uDFF5-\\uDFFB\\uDFFD\\uDFFE]|\\uD82C[\\uDC00-\\uDD22\\uDD50-\\uDD52\\uDD64-\\uDD67\\uDD70-\\uDEFB]|\\uD82F[\\uDC00-\\uDC6A\\uDC70-\\uDC7C\\uDC80-\\uDC88\\uDC90-\\uDC99]|\\uD834[\\uDEE0-\\uDEF3\\uDF60-\\uDF78]|\\uD835[\\uDC00-\\uDC54\\uDC56-\\uDC9C\\uDC9E\\uDC9F\\uDCA2\\uDCA5\\uDCA6\\uDCA9-\\uDCAC\\uDCAE-\\uDCB9\\uDCBB\\uDCBD-\\uDCC3\\uDCC5-\\uDD05\\uDD07-\\uDD0A\\uDD0D-\\uDD14\\uDD16-\\uDD1C\\uDD1E-\\uDD39\\uDD3B-\\uDD3E\\uDD40-\\uDD44\\uDD46\\uDD4A-\\uDD50\\uDD52-\\uDEA5\\uDEA8-\\uDEC0\\uDEC2-\\uDEDA\\uDEDC-\\uDEFA\\uDEFC-\\uDF14\\uDF16-\\uDF34\\uDF36-\\uDF4E\\uDF50-\\uDF6E\\uDF70-\\uDF88\\uDF8A-\\uDFA8\\uDFAA-\\uDFC2\\uDFC4-\\uDFCB\\uDFCE-\\uDFFF]|\\uD837[\\uDF00-\\uDF1E]|\\uD838[\\uDD00-\\uDD2C\\uDD37-\\uDD3D\\uDD40-\\uDD49\\uDD4E\\uDE90-\\uDEAD\\uDEC0-\\uDEEB\\uDEF0-\\uDEF9]|\\uD839[\\uDFE0-\\uDFE6\\uDFE8-\\uDFEB\\uDFED\\uDFEE\\uDFF0-\\uDFFE]|\\uD83A[\\uDC00-\\uDCC4\\uDCC7-\\uDCCF\\uDD00-\\uDD43\\uDD4B\\uDD50-\\uDD59]|\\uD83B[\\uDC71-\\uDCAB\\uDCAD-\\uDCAF\\uDCB1-\\uDCB4\\uDD01-\\uDD2D\\uDD2F-\\uDD3D\\uDE00-\\uDE03\\uDE05-\\uDE1F\\uDE21\\uDE22\\uDE24\\uDE27\\uDE29-\\uDE32\\uDE34-\\uDE37\\uDE39\\uDE3B\\uDE42\\uDE47\\uDE49\\uDE4B\\uDE4D-\\uDE4F\\uDE51\\uDE52\\uDE54\\uDE57\\uDE59\\uDE5B\\uDE5D\\uDE5F\\uDE61\\uDE62\\uDE64\\uDE67-\\uDE6A\\uDE6C-\\uDE72\\uDE74-\\uDE77\\uDE79-\\uDE7C\\uDE7E\\uDE80-\\uDE89\\uDE8B-\\uDE9B\\uDEA1-\\uDEA3\\uDEA5-\\uDEA9\\uDEAB-\\uDEBB]|\\uD83C[\\uDD00-\\uDD0C]|\\uD83E[\\uDFF0-\\uDFF9]|\\uD869[\\uDC00-\\uDEDF\\uDF00-\\uDFFF]|\\uD86D[\\uDC00-\\uDF38\\uDF40-\\uDFFF]|\\uD86E[\\uDC00-\\uDC1D\\uDC20-\\uDFFF]|\\uD873[\\uDC00-\\uDEA1\\uDEB0-\\uDFFF]|\\uD87A[\\uDC00-\\uDFE0]|\\uD87E[\\uDC00-\\uDE1D]|\\uD884[\\uDC00-\\uDF4A])*(?:[A-Z_a-z\\xAA\\xB5\\xB7\\xBA\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0345\\u0370-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0560-\\u0588\\u05B0-\\u05BD\\u05BF\\u05C1\\u05C2\\u05C4\\u05C5\\u05C7\\u05D0-\\u05EA\\u05EF-\\u05F2\\u0610-\\u061A\\u0620-\\u0657\\u0659-\\u065F\\u066E-\\u06D3\\u06D5-\\u06DC\\u06E1-\\u06E8\\u06ED-\\u06EF\\u06FA-\\u06FC\\u06FF\\u0710-\\u073F\\u074D-\\u07B1\\u07CA-\\u07EA\\u07F4\\u07F5\\u07FA\\u0800-\\u0817\\u081A-\\u082C\\u0840-\\u0858\\u0860-\\u086A\\u0870-\\u0887\\u0889-\\u088E\\u08A0-\\u08C9\\u08D4-\\u08DF\\u08E3-\\u08E9\\u08F0-\\u093B\\u093D-\\u094C\\u094E-\\u0950\\u0955-\\u0963\\u0971-\\u0983\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD-\\u09C4\\u09C7\\u09C8\\u09CB\\u09CC\\u09CE\\u09D7\\u09DC\\u09DD\\u09DF-\\u09E3\\u09F0\\u09F1\\u09FC\\u0A01-\\u0A03\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A3E-\\u0A42\\u0A47\\u0A48\\u0A4B\\u0A4C\\u0A51\\u0A59-\\u0A5C\\u0A5E\\u0A70-\\u0A75\\u0A81-\\u0A83\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABD-\\u0AC5\\u0AC7-\\u0AC9\\u0ACB\\u0ACC\\u0AD0\\u0AE0-\\u0AE3\\u0AF9-\\u0AFC\\u0B01-\\u0B03\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3D-\\u0B44\\u0B47\\u0B48\\u0B4B\\u0B4C\\u0B56\\u0B57\\u0B5C\\u0B5D\\u0B5F-\\u0B63\\u0B71\\u0B82\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BBE-\\u0BC2\\u0BC6-\\u0BC8\\u0BCA-\\u0BCC\\u0BD0\\u0BD7\\u0C00-\\u0C03\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D-\\u0C44\\u0C46-\\u0C48\\u0C4A-\\u0C4C\\u0C55\\u0C56\\u0C58-\\u0C5A\\u0C5D\\u0C60-\\u0C63\\u0C80-\\u0C83\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD-\\u0CC4\\u0CC6-\\u0CC8\\u0CCA-\\u0CCC\\u0CD5\\u0CD6\\u0CDD\\u0CDE\\u0CE0-\\u0CE3\\u0CF1\\u0CF2\\u0D00-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D-\\u0D44\\u0D46-\\u0D48\\u0D4A-\\u0D4C\\u0D4E\\u0D54-\\u0D57\\u0D5F-\\u0D63\\u0D7A-\\u0D7F\\u0D81-\\u0D83\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0DCF-\\u0DD4\\u0DD6\\u0DD8-\\u0DDF\\u0DF2\\u0DF3\\u0E01-\\u0E3A\\u0E40-\\u0E46\\u0E4D\\u0E81\\u0E82\\u0E84\\u0E86-\\u0E8A\\u0E8C-\\u0EA3\\u0EA5\\u0EA7-\\u0EB9\\u0EBB-\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0ECD\\u0EDC-\\u0EDF\\u0F00\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F71-\\u0F81\\u0F88-\\u0F97\\u0F99-\\u0FBC\\u1000-\\u1036\\u1038\\u103B-\\u103F\\u1050-\\u108F\\u109A-\\u109D\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1380-\\u138F\\u13A0-\\u13F5\\u13F8-\\u13FD\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16EE-\\u16F8\\u1700-\\u1713\\u171F-\\u1733\\u1740-\\u1753\\u1760-\\u176C\\u176E-\\u1770\\u1772\\u1773\\u1780-\\u17B3\\u17B6-\\u17C8\\u17D7\\u17DC\\u1820-\\u1878\\u1880-\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1920-\\u192B\\u1930-\\u1938\\u1950-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19B0-\\u19C9\\u1A00-\\u1A1B\\u1A20-\\u1A5E\\u1A61-\\u1A74\\u1AA7\\u1ABF\\u1AC0\\u1ACC-\\u1ACE\\u1B00-\\u1B33\\u1B35-\\u1B43\\u1B45-\\u1B4C\\u1B80-\\u1BA9\\u1BAC-\\u1BAF\\u1BBA-\\u1BE5\\u1BE7-\\u1BF1\\u1C00-\\u1C36\\u1C4D-\\u1C4F\\u1C5A-\\u1C7D\\u1C80-\\u1C88\\u1C90-\\u1CBA\\u1CBD-\\u1CBF\\u1CE9-\\u1CEC\\u1CEE-\\u1CF3\\u1CF5\\u1CF6\\u1CFA\\u1D00-\\u1DBF\\u1DE7-\\u1DF4\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u200C\\u2071\\u207F\\u2090-\\u209C\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2160-\\u2188\\u24B6-\\u24E9\\u2C00-\\u2CE4\\u2CEB-\\u2CEE\\u2CF2\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2DE0-\\u2DFF\\u2E2F\\u3005-\\u3007\\u3021-\\u3029\\u3031-\\u3035\\u3038-\\u303C\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312F\\u3131-\\u318E\\u31A0-\\u31BF\\u31F0-\\u31FF\\u3400-\\u4DBF\\u4E00-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA61F\\uA62A\\uA62B\\uA640-\\uA66E\\uA674-\\uA67B\\uA67F-\\uA6EF\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA7CA\\uA7D0\\uA7D1\\uA7D3\\uA7D5-\\uA7D9\\uA7F2-\\uA805\\uA807-\\uA827\\uA840-\\uA873\\uA880-\\uA8C3\\uA8C5\\uA8F2-\\uA8F7\\uA8FB\\uA8FD-\\uA8FF\\uA90A-\\uA92A\\uA930-\\uA952\\uA960-\\uA97C\\uA980-\\uA9B2\\uA9B4-\\uA9BF\\uA9CF\\uA9E0-\\uA9EF\\uA9FA-\\uA9FE\\uAA00-\\uAA36\\uAA40-\\uAA4D\\uAA60-\\uAA76\\uAA7A-\\uAABE\\uAAC0\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEF\\uAAF2-\\uAAF5\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB69\\uAB70-\\uABEA\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]|\\uD800[\\uDC00-\\uDC0B\\uDC0D-\\uDC26\\uDC28-\\uDC3A\\uDC3C\\uDC3D\\uDC3F-\\uDC4D\\uDC50-\\uDC5D\\uDC80-\\uDCFA\\uDD40-\\uDD74\\uDE80-\\uDE9C\\uDEA0-\\uDED0\\uDF00-\\uDF1F\\uDF2D-\\uDF4A\\uDF50-\\uDF7A\\uDF80-\\uDF9D\\uDFA0-\\uDFC3\\uDFC8-\\uDFCF\\uDFD1-\\uDFD5]|\\uD801[\\uDC00-\\uDC9D\\uDCB0-\\uDCD3\\uDCD8-\\uDCFB\\uDD00-\\uDD27\\uDD30-\\uDD63\\uDD70-\\uDD7A\\uDD7C-\\uDD8A\\uDD8C-\\uDD92\\uDD94\\uDD95\\uDD97-\\uDDA1\\uDDA3-\\uDDB1\\uDDB3-\\uDDB9\\uDDBB\\uDDBC\\uDE00-\\uDF36\\uDF40-\\uDF55\\uDF60-\\uDF67\\uDF80-\\uDF85\\uDF87-\\uDFB0\\uDFB2-\\uDFBA]|\\uD802[\\uDC00-\\uDC05\\uDC08\\uDC0A-\\uDC35\\uDC37\\uDC38\\uDC3C\\uDC3F-\\uDC55\\uDC60-\\uDC76\\uDC80-\\uDC9E\\uDCE0-\\uDCF2\\uDCF4\\uDCF5\\uDD00-\\uDD15\\uDD20-\\uDD39\\uDD80-\\uDDB7\\uDDBE\\uDDBF\\uDE00-\\uDE03\\uDE05\\uDE06\\uDE0C-\\uDE13\\uDE15-\\uDE17\\uDE19-\\uDE35\\uDE60-\\uDE7C\\uDE80-\\uDE9C\\uDEC0-\\uDEC7\\uDEC9-\\uDEE4\\uDF00-\\uDF35\\uDF40-\\uDF55\\uDF60-\\uDF72\\uDF80-\\uDF91]|\\uD803[\\uDC00-\\uDC48\\uDC80-\\uDCB2\\uDCC0-\\uDCF2\\uDD00-\\uDD27\\uDE80-\\uDEA9\\uDEAB\\uDEAC\\uDEB0\\uDEB1\\uDF00-\\uDF1C\\uDF27\\uDF30-\\uDF45\\uDF70-\\uDF81\\uDFB0-\\uDFC4\\uDFE0-\\uDFF6]|\\uD804[\\uDC00-\\uDC45\\uDC71-\\uDC75\\uDC82-\\uDCB8\\uDCC2\\uDCD0-\\uDCE8\\uDD00-\\uDD32\\uDD44-\\uDD47\\uDD50-\\uDD72\\uDD76\\uDD80-\\uDDBF\\uDDC1-\\uDDC4\\uDDCE\\uDDCF\\uDDDA\\uDDDC\\uDE00-\\uDE11\\uDE13-\\uDE34\\uDE37\\uDE3E\\uDE80-\\uDE86\\uDE88\\uDE8A-\\uDE8D\\uDE8F-\\uDE9D\\uDE9F-\\uDEA8\\uDEB0-\\uDEE8\\uDF00-\\uDF03\\uDF05-\\uDF0C\\uDF0F\\uDF10\\uDF13-\\uDF28\\uDF2A-\\uDF30\\uDF32\\uDF33\\uDF35-\\uDF39\\uDF3D-\\uDF44\\uDF47\\uDF48\\uDF4B\\uDF4C\\uDF50\\uDF57\\uDF5D-\\uDF63]|\\uD805[\\uDC00-\\uDC41\\uDC43-\\uDC45\\uDC47-\\uDC4A\\uDC5F-\\uDC61\\uDC80-\\uDCC1\\uDCC4\\uDCC5\\uDCC7\\uDD80-\\uDDB5\\uDDB8-\\uDDBE\\uDDD8-\\uDDDD\\uDE00-\\uDE3E\\uDE40\\uDE44\\uDE80-\\uDEB5\\uDEB8\\uDF00-\\uDF1A\\uDF1D-\\uDF2A\\uDF40-\\uDF46]|\\uD806[\\uDC00-\\uDC38\\uDCA0-\\uDCDF\\uDCFF-\\uDD06\\uDD09\\uDD0C-\\uDD13\\uDD15\\uDD16\\uDD18-\\uDD35\\uDD37\\uDD38\\uDD3B\\uDD3C\\uDD3F-\\uDD42\\uDDA0-\\uDDA7\\uDDAA-\\uDDD7\\uDDDA-\\uDDDF\\uDDE1\\uDDE3\\uDDE4\\uDE00-\\uDE32\\uDE35-\\uDE3E\\uDE50-\\uDE97\\uDE9D\\uDEB0-\\uDEF8]|\\uD807[\\uDC00-\\uDC08\\uDC0A-\\uDC36\\uDC38-\\uDC3E\\uDC40\\uDC72-\\uDC8F\\uDC92-\\uDCA7\\uDCA9-\\uDCB6\\uDD00-\\uDD06\\uDD08\\uDD09\\uDD0B-\\uDD36\\uDD3A\\uDD3C\\uDD3D\\uDD3F-\\uDD41\\uDD43\\uDD46\\uDD47\\uDD60-\\uDD65\\uDD67\\uDD68\\uDD6A-\\uDD8E\\uDD90\\uDD91\\uDD93-\\uDD96\\uDD98\\uDEE0-\\uDEF6\\uDFB0]|\\uD808[\\uDC00-\\uDF99]|\\uD809[\\uDC00-\\uDC6E\\uDC80-\\uDD43]|\\uD80B[\\uDF90-\\uDFF0]|[\\uD80C\\uD81C-\\uD820\\uD822\\uD840-\\uD868\\uD86A-\\uD86C\\uD86F-\\uD872\\uD874-\\uD879\\uD880-\\uD883][\\uDC00-\\uDFFF]|\\uD80D[\\uDC00-\\uDC2E]|\\uD811[\\uDC00-\\uDE46]|\\uD81A[\\uDC00-\\uDE38\\uDE40-\\uDE5E\\uDE70-\\uDEBE\\uDED0-\\uDEED\\uDF00-\\uDF2F\\uDF40-\\uDF43\\uDF63-\\uDF77\\uDF7D-\\uDF8F]|\\uD81B[\\uDE40-\\uDE7F\\uDF00-\\uDF4A\\uDF4F-\\uDF87\\uDF8F-\\uDF9F\\uDFE0\\uDFE1\\uDFE3\\uDFF0\\uDFF1]|\\uD821[\\uDC00-\\uDFF7]|\\uD823[\\uDC00-\\uDCD5\\uDD00-\\uDD08]|\\uD82B[\\uDFF0-\\uDFF3\\uDFF5-\\uDFFB\\uDFFD\\uDFFE]|\\uD82C[\\uDC00-\\uDD22\\uDD50-\\uDD52\\uDD64-\\uDD67\\uDD70-\\uDEFB]|\\uD82F[\\uDC00-\\uDC6A\\uDC70-\\uDC7C\\uDC80-\\uDC88\\uDC90-\\uDC99\\uDC9E]|\\uD835[\\uDC00-\\uDC54\\uDC56-\\uDC9C\\uDC9E\\uDC9F\\uDCA2\\uDCA5\\uDCA6\\uDCA9-\\uDCAC\\uDCAE-\\uDCB9\\uDCBB\\uDCBD-\\uDCC3\\uDCC5-\\uDD05\\uDD07-\\uDD0A\\uDD0D-\\uDD14\\uDD16-\\uDD1C\\uDD1E-\\uDD39\\uDD3B-\\uDD3E\\uDD40-\\uDD44\\uDD46\\uDD4A-\\uDD50\\uDD52-\\uDEA5\\uDEA8-\\uDEC0\\uDEC2-\\uDEDA\\uDEDC-\\uDEFA\\uDEFC-\\uDF14\\uDF16-\\uDF34\\uDF36-\\uDF4E\\uDF50-\\uDF6E\\uDF70-\\uDF88\\uDF8A-\\uDFA8\\uDFAA-\\uDFC2\\uDFC4-\\uDFCB]|\\uD837[\\uDF00-\\uDF1E]|\\uD838[\\uDC00-\\uDC06\\uDC08-\\uDC18\\uDC1B-\\uDC21\\uDC23\\uDC24\\uDC26-\\uDC2A\\uDD00-\\uDD2C\\uDD37-\\uDD3D\\uDD4E\\uDE90-\\uDEAD\\uDEC0-\\uDEEB]|\\uD839[\\uDFE0-\\uDFE6\\uDFE8-\\uDFEB\\uDFED\\uDFEE\\uDFF0-\\uDFFE]|\\uD83A[\\uDC00-\\uDCC4\\uDD00-\\uDD43\\uDD47\\uDD4B]|\\uD83B[\\uDE00-\\uDE03\\uDE05-\\uDE1F\\uDE21\\uDE22\\uDE24\\uDE27\\uDE29-\\uDE32\\uDE34-\\uDE37\\uDE39\\uDE3B\\uDE42\\uDE47\\uDE49\\uDE4B\\uDE4D-\\uDE4F\\uDE51\\uDE52\\uDE54\\uDE57\\uDE59\\uDE5B\\uDE5D\\uDE5F\\uDE61\\uDE62\\uDE64\\uDE67-\\uDE6A\\uDE6C-\\uDE72\\uDE74-\\uDE77\\uDE79-\\uDE7C\\uDE7E\\uDE80-\\uDE89\\uDE8B-\\uDE9B\\uDEA1-\\uDEA3\\uDEA5-\\uDEA9\\uDEAB-\\uDEBB]|\\uD83C[\\uDD30-\\uDD49\\uDD50-\\uDD69\\uDD70-\\uDD89]|\\uD869[\\uDC00-\\uDEDF\\uDF00-\\uDFFF]|\\uD86D[\\uDC00-\\uDF38\\uDF40-\\uDFFF]|\\uD86E[\\uDC00-\\uDC1D\\uDC20-\\uDFFF]|\\uD873[\\uDC00-\\uDEA1\\uDEB0-\\uDFFF]|\\uD87A[\\uDC00-\\uDFE0]|\\uD87E[\\uDC00-\\uDE1D]|\\uD884[\\uDC00-\\uDF4A])(?:[0-9A-Z_a-z\\xAA\\xB2\\xB3\\xB5\\xB7\\xB9\\xBA\\xBC-\\xBE\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0300-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u0483-\\u052F\\u0531-\\u0556\\u0559\\u0560-\\u0588\\u0591-\\u05BD\\u05BF\\u05C1\\u05C2\\u05C4\\u05C5\\u05C7\\u05D0-\\u05EA\\u05EF-\\u05F2\\u0610-\\u061A\\u0620-\\u0669\\u066E-\\u06D3\\u06D5-\\u06DC\\u06DF-\\u06E8\\u06EA-\\u06FC\\u06FF\\u0710-\\u074A\\u074D-\\u07B1\\u07C0-\\u07F5\\u07FA\\u07FD\\u0800-\\u082D\\u0840-\\u085B\\u0860-\\u086A\\u0870-\\u0887\\u0889-\\u088E\\u0898-\\u08E1\\u08E3-\\u0963\\u0966-\\u096F\\u0971-\\u0983\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BC-\\u09C4\\u09C7\\u09C8\\u09CB-\\u09CE\\u09D7\\u09DC\\u09DD\\u09DF-\\u09E3\\u09E6-\\u09F1\\u09F4-\\u09F9\\u09FC\\u09FE\\u0A01-\\u0A03\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A3C\\u0A3E-\\u0A42\\u0A47\\u0A48\\u0A4B-\\u0A4D\\u0A51\\u0A59-\\u0A5C\\u0A5E\\u0A66-\\u0A75\\u0A81-\\u0A83\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABC-\\u0AC5\\u0AC7-\\u0AC9\\u0ACB-\\u0ACD\\u0AD0\\u0AE0-\\u0AE3\\u0AE6-\\u0AEF\\u0AF9-\\u0AFF\\u0B01-\\u0B03\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3C-\\u0B44\\u0B47\\u0B48\\u0B4B-\\u0B4D\\u0B55-\\u0B57\\u0B5C\\u0B5D\\u0B5F-\\u0B63\\u0B66-\\u0B6F\\u0B71-\\u0B77\\u0B82\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BBE-\\u0BC2\\u0BC6-\\u0BC8\\u0BCA-\\u0BCD\\u0BD0\\u0BD7\\u0BE6-\\u0BF2\\u0C00-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3C-\\u0C44\\u0C46-\\u0C48\\u0C4A-\\u0C4D\\u0C55\\u0C56\\u0C58-\\u0C5A\\u0C5D\\u0C60-\\u0C63\\u0C66-\\u0C6F\\u0C78-\\u0C7E\\u0C80-\\u0C83\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBC-\\u0CC4\\u0CC6-\\u0CC8\\u0CCA-\\u0CCD\\u0CD5\\u0CD6\\u0CDD\\u0CDE\\u0CE0-\\u0CE3\\u0CE6-\\u0CEF\\u0CF1\\u0CF2\\u0D00-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D44\\u0D46-\\u0D48\\u0D4A-\\u0D4E\\u0D54-\\u0D63\\u0D66-\\u0D78\\u0D7A-\\u0D7F\\u0D81-\\u0D83\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0DCA\\u0DCF-\\u0DD4\\u0DD6\\u0DD8-\\u0DDF\\u0DE6-\\u0DEF\\u0DF2\\u0DF3\\u0E01-\\u0E3A\\u0E40-\\u0E4E\\u0E50-\\u0E59\\u0E81\\u0E82\\u0E84\\u0E86-\\u0E8A\\u0E8C-\\u0EA3\\u0EA5\\u0EA7-\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EC8-\\u0ECD\\u0ED0-\\u0ED9\\u0EDC-\\u0EDF\\u0F00\\u0F18\\u0F19\\u0F20-\\u0F33\\u0F35\\u0F37\\u0F39\\u0F3E-\\u0F47\\u0F49-\\u0F6C\\u0F71-\\u0F84\\u0F86-\\u0F97\\u0F99-\\u0FBC\\u0FC6\\u1000-\\u1049\\u1050-\\u109D\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u135D-\\u135F\\u1369-\\u137C\\u1380-\\u138F\\u13A0-\\u13F5\\u13F8-\\u13FD\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16EE-\\u16F8\\u1700-\\u1715\\u171F-\\u1734\\u1740-\\u1753\\u1760-\\u176C\\u176E-\\u1770\\u1772\\u1773\\u1780-\\u17D3\\u17D7\\u17DC\\u17DD\\u17E0-\\u17E9\\u17F0-\\u17F9\\u180B-\\u180D\\u180F-\\u1819\\u1820-\\u1878\\u1880-\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1920-\\u192B\\u1930-\\u193B\\u1946-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19B0-\\u19C9\\u19D0-\\u19DA\\u1A00-\\u1A1B\\u1A20-\\u1A5E\\u1A60-\\u1A7C\\u1A7F-\\u1A89\\u1A90-\\u1A99\\u1AA7\\u1AB0-\\u1ACE\\u1B00-\\u1B4C\\u1B50-\\u1B59\\u1B6B-\\u1B73\\u1B80-\\u1BF3\\u1C00-\\u1C37\\u1C40-\\u1C49\\u1C4D-\\u1C7D\\u1C80-\\u1C88\\u1C90-\\u1CBA\\u1CBD-\\u1CBF\\u1CD0-\\u1CD2\\u1CD4-\\u1CFA\\u1D00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u200C\\u2070\\u2071\\u2074-\\u2079\\u207F-\\u2089\\u2090-\\u209C\\u20D0-\\u20F0\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2150-\\u2189\\u2460-\\u249B\\u24EA-\\u24FF\\u2776-\\u2793\\u2C00-\\u2CE4\\u2CEB-\\u2CF3\\u2CFD\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D7F-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2DE0-\\u2DFF\\u2E2F\\u3005-\\u3007\\u3021-\\u302F\\u3031-\\u3035\\u3038-\\u303C\\u3041-\\u3096\\u3099\\u309A\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312F\\u3131-\\u318E\\u3192-\\u3195\\u31A0-\\u31BF\\u31F0-\\u31FF\\u3220-\\u3229\\u3248-\\u324F\\u3251-\\u325F\\u3280-\\u3289\\u32B1-\\u32BF\\u3400-\\u4DBF\\u4E00-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA62B\\uA640-\\uA672\\uA674-\\uA67D\\uA67F-\\uA6F1\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA7CA\\uA7D0\\uA7D1\\uA7D3\\uA7D5-\\uA7D9\\uA7F2-\\uA827\\uA82C\\uA830-\\uA835\\uA840-\\uA873\\uA880-\\uA8C5\\uA8D0-\\uA8D9\\uA8E0-\\uA8F7\\uA8FB\\uA8FD-\\uA92D\\uA930-\\uA953\\uA960-\\uA97C\\uA980-\\uA9C0\\uA9CF-\\uA9D9\\uA9E0-\\uA9FE\\uAA00-\\uAA36\\uAA40-\\uAA4D\\uAA50-\\uAA59\\uAA60-\\uAA76\\uAA7A-\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEF\\uAAF2-\\uAAF6\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB69\\uAB70-\\uABEA\\uABEC\\uABED\\uABF0-\\uABF9\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE00-\\uFE0F\\uFE20-\\uFE2F\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF10-\\uFF19\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]|\\uD800[\\uDC00-\\uDC0B\\uDC0D-\\uDC26\\uDC28-\\uDC3A\\uDC3C\\uDC3D\\uDC3F-\\uDC4D\\uDC50-\\uDC5D\\uDC80-\\uDCFA\\uDD07-\\uDD33\\uDD40-\\uDD78\\uDD8A\\uDD8B\\uDDFD\\uDE80-\\uDE9C\\uDEA0-\\uDED0\\uDEE0-\\uDEFB\\uDF00-\\uDF23\\uDF2D-\\uDF4A\\uDF50-\\uDF7A\\uDF80-\\uDF9D\\uDFA0-\\uDFC3\\uDFC8-\\uDFCF\\uDFD1-\\uDFD5]|\\uD801[\\uDC00-\\uDC9D\\uDCA0-\\uDCA9\\uDCB0-\\uDCD3\\uDCD8-\\uDCFB\\uDD00-\\uDD27\\uDD30-\\uDD63\\uDD70-\\uDD7A\\uDD7C-\\uDD8A\\uDD8C-\\uDD92\\uDD94\\uDD95\\uDD97-\\uDDA1\\uDDA3-\\uDDB1\\uDDB3-\\uDDB9\\uDDBB\\uDDBC\\uDE00-\\uDF36\\uDF40-\\uDF55\\uDF60-\\uDF67\\uDF80-\\uDF85\\uDF87-\\uDFB0\\uDFB2-\\uDFBA]|\\uD802[\\uDC00-\\uDC05\\uDC08\\uDC0A-\\uDC35\\uDC37\\uDC38\\uDC3C\\uDC3F-\\uDC55\\uDC58-\\uDC76\\uDC79-\\uDC9E\\uDCA7-\\uDCAF\\uDCE0-\\uDCF2\\uDCF4\\uDCF5\\uDCFB-\\uDD1B\\uDD20-\\uDD39\\uDD80-\\uDDB7\\uDDBC-\\uDDCF\\uDDD2-\\uDE03\\uDE05\\uDE06\\uDE0C-\\uDE13\\uDE15-\\uDE17\\uDE19-\\uDE35\\uDE38-\\uDE3A\\uDE3F-\\uDE48\\uDE60-\\uDE7E\\uDE80-\\uDE9F\\uDEC0-\\uDEC7\\uDEC9-\\uDEE6\\uDEEB-\\uDEEF\\uDF00-\\uDF35\\uDF40-\\uDF55\\uDF58-\\uDF72\\uDF78-\\uDF91\\uDFA9-\\uDFAF]|\\uD803[\\uDC00-\\uDC48\\uDC80-\\uDCB2\\uDCC0-\\uDCF2\\uDCFA-\\uDD27\\uDD30-\\uDD39\\uDE60-\\uDE7E\\uDE80-\\uDEA9\\uDEAB\\uDEAC\\uDEB0\\uDEB1\\uDF00-\\uDF27\\uDF30-\\uDF54\\uDF70-\\uDF85\\uDFB0-\\uDFCB\\uDFE0-\\uDFF6]|\\uD804[\\uDC00-\\uDC46\\uDC52-\\uDC75\\uDC7F-\\uDCBA\\uDCC2\\uDCD0-\\uDCE8\\uDCF0-\\uDCF9\\uDD00-\\uDD34\\uDD36-\\uDD3F\\uDD44-\\uDD47\\uDD50-\\uDD73\\uDD76\\uDD80-\\uDDC4\\uDDC9-\\uDDCC\\uDDCE-\\uDDDA\\uDDDC\\uDDE1-\\uDDF4\\uDE00-\\uDE11\\uDE13-\\uDE37\\uDE3E\\uDE80-\\uDE86\\uDE88\\uDE8A-\\uDE8D\\uDE8F-\\uDE9D\\uDE9F-\\uDEA8\\uDEB0-\\uDEEA\\uDEF0-\\uDEF9\\uDF00-\\uDF03\\uDF05-\\uDF0C\\uDF0F\\uDF10\\uDF13-\\uDF28\\uDF2A-\\uDF30\\uDF32\\uDF33\\uDF35-\\uDF39\\uDF3B-\\uDF44\\uDF47\\uDF48\\uDF4B-\\uDF4D\\uDF50\\uDF57\\uDF5D-\\uDF63\\uDF66-\\uDF6C\\uDF70-\\uDF74]|\\uD805[\\uDC00-\\uDC4A\\uDC50-\\uDC59\\uDC5E-\\uDC61\\uDC80-\\uDCC5\\uDCC7\\uDCD0-\\uDCD9\\uDD80-\\uDDB5\\uDDB8-\\uDDC0\\uDDD8-\\uDDDD\\uDE00-\\uDE40\\uDE44\\uDE50-\\uDE59\\uDE80-\\uDEB8\\uDEC0-\\uDEC9\\uDF00-\\uDF1A\\uDF1D-\\uDF2B\\uDF30-\\uDF3B\\uDF40-\\uDF46]|\\uD806[\\uDC00-\\uDC3A\\uDCA0-\\uDCF2\\uDCFF-\\uDD06\\uDD09\\uDD0C-\\uDD13\\uDD15\\uDD16\\uDD18-\\uDD35\\uDD37\\uDD38\\uDD3B-\\uDD43\\uDD50-\\uDD59\\uDDA0-\\uDDA7\\uDDAA-\\uDDD7\\uDDDA-\\uDDE1\\uDDE3\\uDDE4\\uDE00-\\uDE3E\\uDE47\\uDE50-\\uDE99\\uDE9D\\uDEB0-\\uDEF8]|\\uD807[\\uDC00-\\uDC08\\uDC0A-\\uDC36\\uDC38-\\uDC40\\uDC50-\\uDC6C\\uDC72-\\uDC8F\\uDC92-\\uDCA7\\uDCA9-\\uDCB6\\uDD00-\\uDD06\\uDD08\\uDD09\\uDD0B-\\uDD36\\uDD3A\\uDD3C\\uDD3D\\uDD3F-\\uDD47\\uDD50-\\uDD59\\uDD60-\\uDD65\\uDD67\\uDD68\\uDD6A-\\uDD8E\\uDD90\\uDD91\\uDD93-\\uDD98\\uDDA0-\\uDDA9\\uDEE0-\\uDEF6\\uDFB0\\uDFC0-\\uDFD4]|\\uD808[\\uDC00-\\uDF99]|\\uD809[\\uDC00-\\uDC6E\\uDC80-\\uDD43]|\\uD80B[\\uDF90-\\uDFF0]|[\\uD80C\\uD81C-\\uD820\\uD822\\uD840-\\uD868\\uD86A-\\uD86C\\uD86F-\\uD872\\uD874-\\uD879\\uD880-\\uD883][\\uDC00-\\uDFFF]|\\uD80D[\\uDC00-\\uDC2E]|\\uD811[\\uDC00-\\uDE46]|\\uD81A[\\uDC00-\\uDE38\\uDE40-\\uDE5E\\uDE60-\\uDE69\\uDE70-\\uDEBE\\uDEC0-\\uDEC9\\uDED0-\\uDEED\\uDEF0-\\uDEF4\\uDF00-\\uDF36\\uDF40-\\uDF43\\uDF50-\\uDF59\\uDF5B-\\uDF61\\uDF63-\\uDF77\\uDF7D-\\uDF8F]|\\uD81B[\\uDE40-\\uDE96\\uDF00-\\uDF4A\\uDF4F-\\uDF87\\uDF8F-\\uDF9F\\uDFE0\\uDFE1\\uDFE3\\uDFE4\\uDFF0\\uDFF1]|\\uD821[\\uDC00-\\uDFF7]|\\uD823[\\uDC00-\\uDCD5\\uDD00-\\uDD08]|\\uD82B[\\uDFF0-\\uDFF3\\uDFF5-\\uDFFB\\uDFFD\\uDFFE]|\\uD82C[\\uDC00-\\uDD22\\uDD50-\\uDD52\\uDD64-\\uDD67\\uDD70-\\uDEFB]|\\uD82F[\\uDC00-\\uDC6A\\uDC70-\\uDC7C\\uDC80-\\uDC88\\uDC90-\\uDC99\\uDC9D\\uDC9E]|\\uD833[\\uDF00-\\uDF2D\\uDF30-\\uDF46]|\\uD834[\\uDD65-\\uDD69\\uDD6D-\\uDD72\\uDD7B-\\uDD82\\uDD85-\\uDD8B\\uDDAA-\\uDDAD\\uDE42-\\uDE44\\uDEE0-\\uDEF3\\uDF60-\\uDF78]|\\uD835[\\uDC00-\\uDC54\\uDC56-\\uDC9C\\uDC9E\\uDC9F\\uDCA2\\uDCA5\\uDCA6\\uDCA9-\\uDCAC\\uDCAE-\\uDCB9\\uDCBB\\uDCBD-\\uDCC3\\uDCC5-\\uDD05\\uDD07-\\uDD0A\\uDD0D-\\uDD14\\uDD16-\\uDD1C\\uDD1E-\\uDD39\\uDD3B-\\uDD3E\\uDD40-\\uDD44\\uDD46\\uDD4A-\\uDD50\\uDD52-\\uDEA5\\uDEA8-\\uDEC0\\uDEC2-\\uDEDA\\uDEDC-\\uDEFA\\uDEFC-\\uDF14\\uDF16-\\uDF34\\uDF36-\\uDF4E\\uDF50-\\uDF6E\\uDF70-\\uDF88\\uDF8A-\\uDFA8\\uDFAA-\\uDFC2\\uDFC4-\\uDFCB\\uDFCE-\\uDFFF]|\\uD836[\\uDE00-\\uDE36\\uDE3B-\\uDE6C\\uDE75\\uDE84\\uDE9B-\\uDE9F\\uDEA1-\\uDEAF]|\\uD837[\\uDF00-\\uDF1E]|\\uD838[\\uDC00-\\uDC06\\uDC08-\\uDC18\\uDC1B-\\uDC21\\uDC23\\uDC24\\uDC26-\\uDC2A\\uDD00-\\uDD2C\\uDD30-\\uDD3D\\uDD40-\\uDD49\\uDD4E\\uDE90-\\uDEAE\\uDEC0-\\uDEF9]|\\uD839[\\uDFE0-\\uDFE6\\uDFE8-\\uDFEB\\uDFED\\uDFEE\\uDFF0-\\uDFFE]|\\uD83A[\\uDC00-\\uDCC4\\uDCC7-\\uDCD6\\uDD00-\\uDD4B\\uDD50-\\uDD59]|\\uD83B[\\uDC71-\\uDCAB\\uDCAD-\\uDCAF\\uDCB1-\\uDCB4\\uDD01-\\uDD2D\\uDD2F-\\uDD3D\\uDE00-\\uDE03\\uDE05-\\uDE1F\\uDE21\\uDE22\\uDE24\\uDE27\\uDE29-\\uDE32\\uDE34-\\uDE37\\uDE39\\uDE3B\\uDE42\\uDE47\\uDE49\\uDE4B\\uDE4D-\\uDE4F\\uDE51\\uDE52\\uDE54\\uDE57\\uDE59\\uDE5B\\uDE5D\\uDE5F\\uDE61\\uDE62\\uDE64\\uDE67-\\uDE6A\\uDE6C-\\uDE72\\uDE74-\\uDE77\\uDE79-\\uDE7C\\uDE7E\\uDE80-\\uDE89\\uDE8B-\\uDE9B\\uDEA1-\\uDEA3\\uDEA5-\\uDEA9\\uDEAB-\\uDEBB]|\\uD83C[\\uDD00-\\uDD0C]|\\uD83E[\\uDFF0-\\uDFF9]|\\uD869[\\uDC00-\\uDEDF\\uDF00-\\uDFFF]|\\uD86D[\\uDC00-\\uDF38\\uDF40-\\uDFFF]|\\uD86E[\\uDC00-\\uDC1D\\uDC20-\\uDFFF]|\\uD873[\\uDC00-\\uDEA1\\uDEB0-\\uDFFF]|\\uD87A[\\uDC00-\\uDFE0]|\\uD87E[\\uDC00-\\uDE1D]|\\uD884[\\uDC00-\\uDF4A]|\\uDB40[\\uDD00-\\uDDEF])*)$/g;\n var result = regex.exec(decoded);\n if (!result) {\n return false;\n }\n return result[1];\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvbWF0Y2hlci9tYXRjaGVyLnNlcnZpY2UuanMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFPLElBQU1BLGlCQUFpQixHQUFHLFNBQXBCQSxpQkFBaUJBLENBQUlDLFNBQVMsRUFBRUMsR0FBRyxFQUFLO0VBQ25ELElBQUlBLEdBQUcsS0FBS0QsU0FBUyxDQUFDRSxxQkFBcUIsRUFBRTtJQUMzQyxPQUFPLElBQUk7RUFDYjtFQUNBLElBQUFDLHFCQUFBLEdBQWlDSCxTQUFTLENBQUNJLFdBQVcsQ0FBQ0MsS0FBSyxDQUFDLEdBQUcsQ0FBQztJQUFBQyxzQkFBQSxHQUFBQyxnRkFBQSxDQUFBSixxQkFBQTtJQUExREssUUFBUSxHQUFBRixzQkFBQTtJQUFFRyxZQUFZLEdBQUFILHNCQUFBO0VBQzdCLElBQU1JLFdBQVcsR0FBRyxJQUFJQyxNQUFNLENBQUMsS0FBSyxHQUFHRixZQUFZLEdBQUcsS0FBSyxHQUFHRCxRQUFRLEdBQUcsR0FBRyxFQUFFLEdBQUcsQ0FBQztFQUVsRixPQUFPLENBQUMsQ0FBQ1AsR0FBRyxDQUFDVyxLQUFLLENBQUNGLFdBQVcsQ0FBQztBQUNqQyxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyxJQUFNRyxpQkFBaUIsR0FBRyxTQUFwQkEsaUJBQWlCQSxDQUFJWixHQUFHLEVBQUs7RUFDeEMsSUFBTWEsT0FBTyxHQUFHQyxTQUFTLENBQUNkLEdBQUcsQ0FBQztFQUM5QjtFQUNBO0VBQ0EsSUFBTWUsS0FBSyxHQUFHLDJyMkJBQW9GO0VBQ2xHLElBQU1DLE1BQU0sR0FBR0QsS0FBSyxDQUFDRSxJQUFJLENBQUNKLE9BQU8sQ0FBQztFQUNsQyxJQUFJLENBQUNHLE1BQU0sRUFBRTtJQUNYLE9BQU8sS0FBSztFQUNkO0VBQ0EsT0FBT0EsTUFBTSxDQUFDLENBQUMsQ0FBQztBQUNsQixDQUFDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9zZXJ2aWNlcy9tYXRjaGVyL21hdGNoZXIuc2VydmljZS5qcz85ZTA4Il0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBtZW50aW9uTWF0Y2hlc1VybCA9IChhdHRlbnRpb24sIHVybCkgPT4ge1xuICBpZiAodXJsID09PSBhdHRlbnRpb24uc3RhdHVzbmV0X3Byb2ZpbGVfdXJsKSB7XG4gICAgcmV0dXJuIHRydWVcbiAgfVxuICBjb25zdCBbbmFtZXBhcnQsIGluc3RhbmNlcGFydF0gPSBhdHRlbnRpb24uc2NyZWVuX25hbWUuc3BsaXQoJ0AnKVxuICBjb25zdCBtYXRjaHN0cmluZyA9IG5ldyBSZWdFeHAoJzovLycgKyBpbnN0YW5jZXBhcnQgKyAnLy4qJyArIG5hbWVwYXJ0ICsgJyQnLCAnZycpXG5cbiAgcmV0dXJuICEhdXJsLm1hdGNoKG1hdGNoc3RyaW5nKVxufVxuXG4vKipcbiAqIEV4dHJhY3QgdGFnIG5hbWUgZnJvbSBwbGVyb21hIG9yIG1hc3RvZG9uIHVybC5cbiAqIGkuZSBodHRwczovL2Jpa2VzaGVkLnBhcnR5L3RhZy9waG90byBvciBodHRwczovL3F1ZXkub3JnL3RhZ3Mvc2t5XG4gKiBAcGFyYW0ge3N0cmluZ30gdXJsXG4gKi9cbmV4cG9ydCBjb25zdCBleHRyYWN0VGFnRnJvbVVybCA9ICh1cmwpID0+IHtcbiAgY29uc3QgZGVjb2RlZCA9IGRlY29kZVVSSSh1cmwpXG4gIC8vIGh0dHBzOi8vZ2l0LnBsZXJvbWEuc29jaWFsL3BsZXJvbWEvZWxpeGlyLWxpYnJhcmllcy9saW5raWZ5Ly0vYmxvYi9tYXN0ZXIvbGliL2xpbmtpZnkvcGFyc2VyLmV4XG4gIC8vIGh0dHBzOi8vd3d3LnBjcmUub3JnL29yaWdpbmFsL2RvYy9odG1sL3BjcmVwYXR0ZXJuLmh0bWxcbiAgY29uc3QgcmVnZXggPSAvdGFnW3NdKlxcLyhbXFxwe0x9XFxwe059X10qW1xccHtBbHBoYWJldGljfV/Ct1xcdXsyMDBjfV1bXFxwe0x9XFxwe059X8K3XFxwe019XFx1ezIwMGN9XSopJC91Z1xuICBjb25zdCByZXN1bHQgPSByZWdleC5leGVjKGRlY29kZWQpXG4gIGlmICghcmVzdWx0KSB7XG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cbiAgcmV0dXJuIHJlc3VsdFsxXVxufVxuIl0sIm5hbWVzIjpbIm1lbnRpb25NYXRjaGVzVXJsIiwiYXR0ZW50aW9uIiwidXJsIiwic3RhdHVzbmV0X3Byb2ZpbGVfdXJsIiwiX2F0dGVudGlvbiRzY3JlZW5fbmFtIiwic2NyZWVuX25hbWUiLCJzcGxpdCIsIl9hdHRlbnRpb24kc2NyZWVuX25hbTIiLCJfc2xpY2VkVG9BcnJheSIsIm5hbWVwYXJ0IiwiaW5zdGFuY2VwYXJ0IiwibWF0Y2hzdHJpbmciLCJSZWdFeHAiLCJtYXRjaCIsImV4dHJhY3RUYWdGcm9tVXJsIiwiZGVjb2RlZCIsImRlY29kZVVSSSIsInJlZ2V4IiwicmVzdWx0IiwiZXhlYyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/services/matcher/matcher.service.js\n");
/***/ }),
/***/ "./src/services/new_api/mfa.js":
/*!*************************************!*\
!*** ./src/services/new_api/mfa.js ***!
\*************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\nvar verifyOTPCode = function verifyOTPCode(_ref) {\n var clientId = _ref.clientId,\n clientSecret = _ref.clientSecret,\n instance = _ref.instance,\n mfaToken = _ref.mfaToken,\n code = _ref.code;\n var url = \"\".concat(instance, \"/oauth/mfa/challenge\");\n var form = new window.FormData();\n form.append('client_id', clientId);\n form.append('client_secret', clientSecret);\n form.append('mfa_token', mfaToken);\n form.append('code', code);\n form.append('challenge_type', 'totp');\n return window.fetch(url, {\n method: 'POST',\n body: form\n }).then(function (data) {\n return data.json();\n });\n};\nvar verifyRecoveryCode = function verifyRecoveryCode(_ref2) {\n var clientId = _ref2.clientId,\n clientSecret = _ref2.clientSecret,\n instance = _ref2.instance,\n mfaToken = _ref2.mfaToken,\n code = _ref2.code;\n var url = \"\".concat(instance, \"/oauth/mfa/challenge\");\n var form = new window.FormData();\n form.append('client_id', clientId);\n form.append('client_secret', clientSecret);\n form.append('mfa_token', mfaToken);\n form.append('code', code);\n form.append('challenge_type', 'recovery');\n return window.fetch(url, {\n method: 'POST',\n body: form\n }).then(function (data) {\n return data.json();\n });\n};\nvar mfa = {\n verifyOTPCode: verifyOTPCode,\n verifyRecoveryCode: verifyRecoveryCode\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (mfa);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvbmV3X2FwaS9tZmEuanMuanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBLElBQU1BLGFBQWEsR0FBRyxTQUFoQkEsYUFBYUEsQ0FBQUMsSUFBQSxFQUE2RDtFQUFBLElBQXZEQyxRQUFRLEdBQUFELElBQUEsQ0FBUkMsUUFBUTtJQUFFQyxZQUFZLEdBQUFGLElBQUEsQ0FBWkUsWUFBWTtJQUFFQyxRQUFRLEdBQUFILElBQUEsQ0FBUkcsUUFBUTtJQUFFQyxRQUFRLEdBQUFKLElBQUEsQ0FBUkksUUFBUTtJQUFFQyxJQUFJLEdBQUFMLElBQUEsQ0FBSkssSUFBSTtFQUN2RSxJQUFNQyxHQUFHLE1BQUFDLE1BQUEsQ0FBTUosUUFBUSx5QkFBc0I7RUFDN0MsSUFBTUssSUFBSSxHQUFHLElBQUlDLE1BQU0sQ0FBQ0MsUUFBUSxDQUFDLENBQUM7RUFFbENGLElBQUksQ0FBQ0csTUFBTSxDQUFDLFdBQVcsRUFBRVYsUUFBUSxDQUFDO0VBQ2xDTyxJQUFJLENBQUNHLE1BQU0sQ0FBQyxlQUFlLEVBQUVULFlBQVksQ0FBQztFQUMxQ00sSUFBSSxDQUFDRyxNQUFNLENBQUMsV0FBVyxFQUFFUCxRQUFRLENBQUM7RUFDbENJLElBQUksQ0FBQ0csTUFBTSxDQUFDLE1BQU0sRUFBRU4sSUFBSSxDQUFDO0VBQ3pCRyxJQUFJLENBQUNHLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxNQUFNLENBQUM7RUFFckMsT0FBT0YsTUFBTSxDQUFDRyxLQUFLLENBQUNOLEdBQUcsRUFBRTtJQUN2Qk8sTUFBTSxFQUFFLE1BQU07SUFDZEMsSUFBSSxFQUFFTjtFQUNSLENBQUMsQ0FBQyxDQUFDTyxJQUFJLENBQUMsVUFBQ0MsSUFBSTtJQUFBLE9BQUtBLElBQUksQ0FBQ0MsSUFBSSxDQUFDLENBQUM7RUFBQSxFQUFDO0FBQ2hDLENBQUM7QUFFRCxJQUFNQyxrQkFBa0IsR0FBRyxTQUFyQkEsa0JBQWtCQSxDQUFBQyxLQUFBLEVBQTZEO0VBQUEsSUFBdkRsQixRQUFRLEdBQUFrQixLQUFBLENBQVJsQixRQUFRO0lBQUVDLFlBQVksR0FBQWlCLEtBQUEsQ0FBWmpCLFlBQVk7SUFBRUMsUUFBUSxHQUFBZ0IsS0FBQSxDQUFSaEIsUUFBUTtJQUFFQyxRQUFRLEdBQUFlLEtBQUEsQ0FBUmYsUUFBUTtJQUFFQyxJQUFJLEdBQUFjLEtBQUEsQ0FBSmQsSUFBSTtFQUM1RSxJQUFNQyxHQUFHLE1BQUFDLE1BQUEsQ0FBTUosUUFBUSx5QkFBc0I7RUFDN0MsSUFBTUssSUFBSSxHQUFHLElBQUlDLE1BQU0sQ0FBQ0MsUUFBUSxDQUFDLENBQUM7RUFFbENGLElBQUksQ0FBQ0csTUFBTSxDQUFDLFdBQVcsRUFBRVYsUUFBUSxDQUFDO0VBQ2xDTyxJQUFJLENBQUNHLE1BQU0sQ0FBQyxlQUFlLEVBQUVULFlBQVksQ0FBQztFQUMxQ00sSUFBSSxDQUFDRyxNQUFNLENBQUMsV0FBVyxFQUFFUCxRQUFRLENBQUM7RUFDbENJLElBQUksQ0FBQ0csTUFBTSxDQUFDLE1BQU0sRUFBRU4sSUFBSSxDQUFDO0VBQ3pCRyxJQUFJLENBQUNHLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxVQUFVLENBQUM7RUFFekMsT0FBT0YsTUFBTSxDQUFDRyxLQUFLLENBQUNOLEdBQUcsRUFBRTtJQUN2Qk8sTUFBTSxFQUFFLE1BQU07SUFDZEMsSUFBSSxFQUFFTjtFQUNSLENBQUMsQ0FBQyxDQUFDTyxJQUFJLENBQUMsVUFBQ0MsSUFBSTtJQUFBLE9BQUtBLElBQUksQ0FBQ0MsSUFBSSxDQUFDLENBQUM7RUFBQSxFQUFDO0FBQ2hDLENBQUM7QUFFRCxJQUFNRyxHQUFHLEdBQUc7RUFDVnJCLGFBQWEsRUFBYkEsYUFBYTtFQUNibUIsa0JBQWtCLEVBQWxCQTtBQUNGLENBQUM7QUFFRCxpRUFBZUUsR0FBRyIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvc2VydmljZXMvbmV3X2FwaS9tZmEuanM/MzJlNSJdLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCB2ZXJpZnlPVFBDb2RlID0gKHsgY2xpZW50SWQsIGNsaWVudFNlY3JldCwgaW5zdGFuY2UsIG1mYVRva2VuLCBjb2RlIH0pID0+IHtcbiAgY29uc3QgdXJsID0gYCR7aW5zdGFuY2V9L29hdXRoL21mYS9jaGFsbGVuZ2VgXG4gIGNvbnN0IGZvcm0gPSBuZXcgd2luZG93LkZvcm1EYXRhKClcblxuICBmb3JtLmFwcGVuZCgnY2xpZW50X2lkJywgY2xpZW50SWQpXG4gIGZvcm0uYXBwZW5kKCdjbGllbnRfc2VjcmV0JywgY2xpZW50U2VjcmV0KVxuICBmb3JtLmFwcGVuZCgnbWZhX3Rva2VuJywgbWZhVG9rZW4pXG4gIGZvcm0uYXBwZW5kKCdjb2RlJywgY29kZSlcbiAgZm9ybS5hcHBlbmQoJ2NoYWxsZW5nZV90eXBlJywgJ3RvdHAnKVxuXG4gIHJldHVybiB3aW5kb3cuZmV0Y2godXJsLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgYm9keTogZm9ybVxuICB9KS50aGVuKChkYXRhKSA9PiBkYXRhLmpzb24oKSlcbn1cblxuY29uc3QgdmVyaWZ5UmVjb3ZlcnlDb2RlID0gKHsgY2xpZW50SWQsIGNsaWVudFNlY3JldCwgaW5zdGFuY2UsIG1mYVRva2VuLCBjb2RlIH0pID0+IHtcbiAgY29uc3QgdXJsID0gYCR7aW5zdGFuY2V9L29hdXRoL21mYS9jaGFsbGVuZ2VgXG4gIGNvbnN0IGZvcm0gPSBuZXcgd2luZG93LkZvcm1EYXRhKClcblxuICBmb3JtLmFwcGVuZCgnY2xpZW50X2lkJywgY2xpZW50SWQpXG4gIGZvcm0uYXBwZW5kKCdjbGllbnRfc2VjcmV0JywgY2xpZW50U2VjcmV0KVxuICBmb3JtLmFwcGVuZCgnbWZhX3Rva2VuJywgbWZhVG9rZW4pXG4gIGZvcm0uYXBwZW5kKCdjb2RlJywgY29kZSlcbiAgZm9ybS5hcHBlbmQoJ2NoYWxsZW5nZV90eXBlJywgJ3JlY292ZXJ5JylcblxuICByZXR1cm4gd2luZG93LmZldGNoKHVybCwge1xuICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgIGJvZHk6IGZvcm1cbiAgfSkudGhlbigoZGF0YSkgPT4gZGF0YS5qc29uKCkpXG59XG5cbmNvbnN0IG1mYSA9IHtcbiAgdmVyaWZ5T1RQQ29kZSxcbiAgdmVyaWZ5UmVjb3ZlcnlDb2RlXG59XG5cbmV4cG9ydCBkZWZhdWx0IG1mYVxuIl0sIm5hbWVzIjpbInZlcmlmeU9UUENvZGUiLCJfcmVmIiwiY2xpZW50SWQiLCJjbGllbnRTZWNyZXQiLCJpbnN0YW5jZSIsIm1mYVRva2VuIiwiY29kZSIsInVybCIsImNvbmNhdCIsImZvcm0iLCJ3aW5kb3ciLCJGb3JtRGF0YSIsImFwcGVuZCIsImZldGNoIiwibWV0aG9kIiwiYm9keSIsInRoZW4iLCJkYXRhIiwianNvbiIsInZlcmlmeVJlY292ZXJ5Q29kZSIsIl9yZWYyIiwibWZhIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/services/new_api/mfa.js\n");
/***/ }),
/***/ "./src/services/new_api/oauth.js":
/*!***************************************!*\
!*** ./src/services/new_api/oauth.js ***!
\***************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__),\n/* harmony export */ \"getClientToken\": () => (/* binding */ getClientToken),\n/* harmony export */ \"getOrCreateApp\": () => (/* binding */ getOrCreateApp)\n/* harmony export */ });\n/* harmony import */ var lodash_reduce__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/reduce */ \"./node_modules/lodash/reduce.js\");\n/* harmony import */ var lodash_reduce__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_reduce__WEBPACK_IMPORTED_MODULE_0__);\n\nvar REDIRECT_URI = \"\".concat(window.location.origin, \"/oauth-callback\");\nvar getOrCreateApp = function getOrCreateApp(_ref) {\n var clientId = _ref.clientId,\n clientSecret = _ref.clientSecret,\n instance = _ref.instance,\n commit = _ref.commit;\n if (clientId && clientSecret) {\n return Promise.resolve({\n clientId: clientId,\n clientSecret: clientSecret\n });\n }\n var url = \"\".concat(instance, \"/api/v1/apps\");\n var form = new window.FormData();\n form.append('client_name', \"PleromaFE_\".concat(window.___pleromafe_commit_hash, \"_\").concat(new Date().toISOString()));\n form.append('redirect_uris', REDIRECT_URI);\n form.append('scopes', 'read write follow push admin');\n return window.fetch(url, {\n method: 'POST',\n body: form\n }).then(function (data) {\n return data.json();\n }).then(function (app) {\n return {\n clientId: app.client_id,\n clientSecret: app.client_secret\n };\n }).then(function (app) {\n return commit('setClientData', app) || app;\n });\n};\nvar login = function login(_ref2) {\n var instance = _ref2.instance,\n clientId = _ref2.clientId;\n var data = {\n response_type: 'code',\n client_id: clientId,\n redirect_uri: REDIRECT_URI,\n scope: 'read write follow push admin'\n };\n var dataString = lodash_reduce__WEBPACK_IMPORTED_MODULE_0___default()(data, function (acc, v, k) {\n var encoded = \"\".concat(k, \"=\").concat(encodeURIComponent(v));\n if (!acc) {\n return encoded;\n } else {\n return \"\".concat(acc, \"&\").concat(encoded);\n }\n }, false);\n\n // Do the redirect...\n var url = \"\".concat(instance, \"/oauth/authorize?\").concat(dataString);\n window.location.href = url;\n};\nvar getTokenWithCredentials = function getTokenWithCredentials(_ref3) {\n var clientId = _ref3.clientId,\n clientSecret = _ref3.clientSecret,\n instance = _ref3.instance,\n username = _ref3.username,\n password = _ref3.password;\n var url = \"\".concat(instance, \"/oauth/token\");\n var form = new window.FormData();\n form.append('client_id', clientId);\n form.append('client_secret', clientSecret);\n form.append('grant_type', 'password');\n form.append('username', username);\n form.append('password', password);\n return window.fetch(url, {\n method: 'POST',\n body: form\n }).then(function (data) {\n return data.json();\n });\n};\nvar getToken = function getToken(_ref4) {\n var clientId = _ref4.clientId,\n clientSecret = _ref4.clientSecret,\n instance = _ref4.instance,\n code = _ref4.code;\n var url = \"\".concat(instance, \"/oauth/token\");\n var form = new window.FormData();\n form.append('client_id', clientId);\n form.append('client_secret', clientSecret);\n form.append('grant_type', 'authorization_code');\n form.append('code', code);\n form.append('redirect_uri', \"\".concat(window.location.origin, \"/oauth-callback\"));\n return window.fetch(url, {\n method: 'POST',\n body: form\n }).then(function (data) {\n return data.json();\n });\n};\nvar getClientToken = function getClientToken(_ref5) {\n var clientId = _ref5.clientId,\n clientSecret = _ref5.clientSecret,\n instance = _ref5.instance;\n var url = \"\".concat(instance, \"/oauth/token\");\n var form = new window.FormData();\n form.append('client_id', clientId);\n form.append('client_secret', clientSecret);\n form.append('grant_type', 'client_credentials');\n form.append('redirect_uri', \"\".concat(window.location.origin, \"/oauth-callback\"));\n return window.fetch(url, {\n method: 'POST',\n body: form\n }).then(function (data) {\n return data.json();\n });\n};\nvar verifyOTPCode = function verifyOTPCode(_ref6) {\n var app = _ref6.app,\n instance = _ref6.instance,\n mfaToken = _ref6.mfaToken,\n code = _ref6.code;\n var url = \"\".concat(instance, \"/oauth/mfa/challenge\");\n var form = new window.FormData();\n form.append('client_id', app.client_id);\n form.append('client_secret', app.client_secret);\n form.append('mfa_token', mfaToken);\n form.append('code', code);\n form.append('challenge_type', 'totp');\n return window.fetch(url, {\n method: 'POST',\n body: form\n }).then(function (data) {\n return data.json();\n });\n};\nvar verifyRecoveryCode = function verifyRecoveryCode(_ref7) {\n var app = _ref7.app,\n instance = _ref7.instance,\n mfaToken = _ref7.mfaToken,\n code = _ref7.code;\n var url = \"\".concat(instance, \"/oauth/mfa/challenge\");\n var form = new window.FormData();\n form.append('client_id', app.client_id);\n form.append('client_secret', app.client_secret);\n form.append('mfa_token', mfaToken);\n form.append('code', code);\n form.append('challenge_type', 'recovery');\n return window.fetch(url, {\n method: 'POST',\n body: form\n }).then(function (data) {\n return data.json();\n });\n};\nvar revokeToken = function revokeToken(_ref8) {\n var app = _ref8.app,\n instance = _ref8.instance,\n token = _ref8.token;\n var url = \"\".concat(instance, \"/oauth/revoke\");\n var form = new window.FormData();\n form.append('client_id', app.clientId);\n form.append('client_secret', app.clientSecret);\n form.append('token', token);\n return window.fetch(url, {\n method: 'POST',\n body: form\n }).then(function (data) {\n return data.json();\n });\n};\nvar oauth = {\n login: login,\n getToken: getToken,\n getTokenWithCredentials: getTokenWithCredentials,\n getOrCreateApp: getOrCreateApp,\n verifyOTPCode: verifyOTPCode,\n verifyRecoveryCode: verifyRecoveryCode,\n revokeToken: revokeToken\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (oauth);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvbmV3X2FwaS9vYXV0aC5qcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFFQSxJQUFNQSxZQUFZLE1BQUFDLE1BQUEsQ0FBTUMsTUFBTSxDQUFDQyxRQUFRLENBQUNDLE1BQU0sb0JBQWlCO0FBRXhELElBQU1DLGNBQWMsR0FBRyxTQUFqQkEsY0FBY0EsQ0FBQUMsSUFBQSxFQUFxRDtFQUFBLElBQS9DQyxRQUFRLEdBQUFELElBQUEsQ0FBUkMsUUFBUTtJQUFFQyxZQUFZLEdBQUFGLElBQUEsQ0FBWkUsWUFBWTtJQUFFQyxRQUFRLEdBQUFILElBQUEsQ0FBUkcsUUFBUTtJQUFFQyxNQUFNLEdBQUFKLElBQUEsQ0FBTkksTUFBTTtFQUN2RSxJQUFJSCxRQUFRLElBQUlDLFlBQVksRUFBRTtJQUM1QixPQUFPRyxPQUFPLENBQUNDLE9BQU8sQ0FBQztNQUFFTCxRQUFRLEVBQVJBLFFBQVE7TUFBRUMsWUFBWSxFQUFaQTtJQUFhLENBQUMsQ0FBQztFQUNwRDtFQUVBLElBQU1LLEdBQUcsTUFBQVosTUFBQSxDQUFNUSxRQUFRLGlCQUFjO0VBQ3JDLElBQU1LLElBQUksR0FBRyxJQUFJWixNQUFNLENBQUNhLFFBQVEsQ0FBQyxDQUFDO0VBRWxDRCxJQUFJLENBQUNFLE1BQU0sQ0FBQyxhQUFhLGVBQUFmLE1BQUEsQ0FBZUMsTUFBTSxDQUFDZSx3QkFBd0IsT0FBQWhCLE1BQUEsQ0FBSyxJQUFJaUIsSUFBSSxDQUFDLENBQUMsQ0FBRUMsV0FBVyxDQUFDLENBQUMsQ0FBRSxDQUFDO0VBQ3hHTCxJQUFJLENBQUNFLE1BQU0sQ0FBQyxlQUFlLEVBQUVoQixZQUFZLENBQUM7RUFDMUNjLElBQUksQ0FBQ0UsTUFBTSxDQUFDLFFBQVEsRUFBRSw4QkFBOEIsQ0FBQztFQUVyRCxPQUFPZCxNQUFNLENBQUNrQixLQUFLLENBQUNQLEdBQUcsRUFBRTtJQUN2QlEsTUFBTSxFQUFFLE1BQU07SUFDZEMsSUFBSSxFQUFFUjtFQUNSLENBQUMsQ0FBQyxDQUNDUyxJQUFJLENBQUMsVUFBQ0MsSUFBSTtJQUFBLE9BQUtBLElBQUksQ0FBQ0MsSUFBSSxDQUFDLENBQUM7RUFBQSxFQUFDLENBQzNCRixJQUFJLENBQUMsVUFBQ0csR0FBRztJQUFBLE9BQU07TUFBRW5CLFFBQVEsRUFBRW1CLEdBQUcsQ0FBQ0MsU0FBUztNQUFFbkIsWUFBWSxFQUFFa0IsR0FBRyxDQUFDRTtJQUFjLENBQUM7RUFBQSxDQUFDLENBQUMsQ0FDN0VMLElBQUksQ0FBQyxVQUFDRyxHQUFHO0lBQUEsT0FBS2hCLE1BQU0sQ0FBQyxlQUFlLEVBQUVnQixHQUFHLENBQUMsSUFBSUEsR0FBRztFQUFBLEVBQUM7QUFDdkQsQ0FBQztBQUVELElBQU1HLEtBQUssR0FBRyxTQUFSQSxLQUFLQSxDQUFBQyxLQUFBLEVBQStCO0VBQUEsSUFBekJyQixRQUFRLEdBQUFxQixLQUFBLENBQVJyQixRQUFRO0lBQUVGLFFBQVEsR0FBQXVCLEtBQUEsQ0FBUnZCLFFBQVE7RUFDakMsSUFBTWlCLElBQUksR0FBRztJQUNYTyxhQUFhLEVBQUUsTUFBTTtJQUNyQkosU0FBUyxFQUFFcEIsUUFBUTtJQUNuQnlCLFlBQVksRUFBRWhDLFlBQVk7SUFDMUJpQyxLQUFLLEVBQUU7RUFDVCxDQUFDO0VBRUQsSUFBTUMsVUFBVSxHQUFHQyxvREFBQSxDQUFPWCxJQUFJLEVBQUUsVUFBQ1ksR0FBRyxFQUFFQyxDQUFDLEVBQUVDLENBQUMsRUFBSztJQUM3QyxJQUFNQyxPQUFPLE1BQUF0QyxNQUFBLENBQU1xQyxDQUFDLE9BQUFyQyxNQUFBLENBQUl1QyxrQkFBa0IsQ0FBQ0gsQ0FBQyxDQUFDLENBQUU7SUFDL0MsSUFBSSxDQUFDRCxHQUFHLEVBQUU7TUFDUixPQUFPRyxPQUFPO0lBQ2hCLENBQUMsTUFBTTtNQUNMLFVBQUF0QyxNQUFBLENBQVVtQyxHQUFHLE9BQUFuQyxNQUFBLENBQUlzQyxPQUFPO0lBQzFCO0VBQ0YsQ0FBQyxFQUFFLEtBQUssQ0FBQzs7RUFFVDtFQUNBLElBQU0xQixHQUFHLE1BQUFaLE1BQUEsQ0FBTVEsUUFBUSx1QkFBQVIsTUFBQSxDQUFvQmlDLFVBQVUsQ0FBRTtFQUV2RGhDLE1BQU0sQ0FBQ0MsUUFBUSxDQUFDc0MsSUFBSSxHQUFHNUIsR0FBRztBQUM1QixDQUFDO0FBRUQsSUFBTTZCLHVCQUF1QixHQUFHLFNBQTFCQSx1QkFBdUJBLENBQUFDLEtBQUEsRUFBaUU7RUFBQSxJQUEzRHBDLFFBQVEsR0FBQW9DLEtBQUEsQ0FBUnBDLFFBQVE7SUFBRUMsWUFBWSxHQUFBbUMsS0FBQSxDQUFabkMsWUFBWTtJQUFFQyxRQUFRLEdBQUFrQyxLQUFBLENBQVJsQyxRQUFRO0lBQUVtQyxRQUFRLEdBQUFELEtBQUEsQ0FBUkMsUUFBUTtJQUFFQyxRQUFRLEdBQUFGLEtBQUEsQ0FBUkUsUUFBUTtFQUNyRixJQUFNaEMsR0FBRyxNQUFBWixNQUFBLENBQU1RLFFBQVEsaUJBQWM7RUFDckMsSUFBTUssSUFBSSxHQUFHLElBQUlaLE1BQU0sQ0FBQ2EsUUFBUSxDQUFDLENBQUM7RUFFbENELElBQUksQ0FBQ0UsTUFBTSxDQUFDLFdBQVcsRUFBRVQsUUFBUSxDQUFDO0VBQ2xDTyxJQUFJLENBQUNFLE1BQU0sQ0FBQyxlQUFlLEVBQUVSLFlBQVksQ0FBQztFQUMxQ00sSUFBSSxDQUFDRSxNQUFNLENBQUMsWUFBWSxFQUFFLFVBQVUsQ0FBQztFQUNyQ0YsSUFBSSxDQUFDRSxNQUFNLENBQUMsVUFBVSxFQUFFNEIsUUFBUSxDQUFDO0VBQ2pDOUIsSUFBSSxDQUFDRSxNQUFNLENBQUMsVUFBVSxFQUFFNkIsUUFBUSxDQUFDO0VBRWpDLE9BQU8zQyxNQUFNLENBQUNrQixLQUFLLENBQUNQLEdBQUcsRUFBRTtJQUN2QlEsTUFBTSxFQUFFLE1BQU07SUFDZEMsSUFBSSxFQUFFUjtFQUNSLENBQUMsQ0FBQyxDQUFDUyxJQUFJLENBQUMsVUFBQ0MsSUFBSTtJQUFBLE9BQUtBLElBQUksQ0FBQ0MsSUFBSSxDQUFDLENBQUM7RUFBQSxFQUFDO0FBQ2hDLENBQUM7QUFFRCxJQUFNcUIsUUFBUSxHQUFHLFNBQVhBLFFBQVFBLENBQUFDLEtBQUEsRUFBbUQ7RUFBQSxJQUE3Q3hDLFFBQVEsR0FBQXdDLEtBQUEsQ0FBUnhDLFFBQVE7SUFBRUMsWUFBWSxHQUFBdUMsS0FBQSxDQUFadkMsWUFBWTtJQUFFQyxRQUFRLEdBQUFzQyxLQUFBLENBQVJ0QyxRQUFRO0lBQUV1QyxJQUFJLEdBQUFELEtBQUEsQ0FBSkMsSUFBSTtFQUN4RCxJQUFNbkMsR0FBRyxNQUFBWixNQUFBLENBQU1RLFFBQVEsaUJBQWM7RUFDckMsSUFBTUssSUFBSSxHQUFHLElBQUlaLE1BQU0sQ0FBQ2EsUUFBUSxDQUFDLENBQUM7RUFFbENELElBQUksQ0FBQ0UsTUFBTSxDQUFDLFdBQVcsRUFBRVQsUUFBUSxDQUFDO0VBQ2xDTyxJQUFJLENBQUNFLE1BQU0sQ0FBQyxlQUFlLEVBQUVSLFlBQVksQ0FBQztFQUMxQ00sSUFBSSxDQUFDRSxNQUFNLENBQUMsWUFBWSxFQUFFLG9CQUFvQixDQUFDO0VBQy9DRixJQUFJLENBQUNFLE1BQU0sQ0FBQyxNQUFNLEVBQUVnQyxJQUFJLENBQUM7RUFDekJsQyxJQUFJLENBQUNFLE1BQU0sQ0FBQyxjQUFjLEtBQUFmLE1BQUEsQ0FBS0MsTUFBTSxDQUFDQyxRQUFRLENBQUNDLE1BQU0sb0JBQWlCLENBQUM7RUFFdkUsT0FBT0YsTUFBTSxDQUFDa0IsS0FBSyxDQUFDUCxHQUFHLEVBQUU7SUFDdkJRLE1BQU0sRUFBRSxNQUFNO0lBQ2RDLElBQUksRUFBRVI7RUFDUixDQUFDLENBQUMsQ0FDQ1MsSUFBSSxDQUFDLFVBQUNDLElBQUk7SUFBQSxPQUFLQSxJQUFJLENBQUNDLElBQUksQ0FBQyxDQUFDO0VBQUEsRUFBQztBQUNoQyxDQUFDO0FBRU0sSUFBTXdCLGNBQWMsR0FBRyxTQUFqQkEsY0FBY0EsQ0FBQUMsS0FBQSxFQUE2QztFQUFBLElBQXZDM0MsUUFBUSxHQUFBMkMsS0FBQSxDQUFSM0MsUUFBUTtJQUFFQyxZQUFZLEdBQUEwQyxLQUFBLENBQVoxQyxZQUFZO0lBQUVDLFFBQVEsR0FBQXlDLEtBQUEsQ0FBUnpDLFFBQVE7RUFDL0QsSUFBTUksR0FBRyxNQUFBWixNQUFBLENBQU1RLFFBQVEsaUJBQWM7RUFDckMsSUFBTUssSUFBSSxHQUFHLElBQUlaLE1BQU0sQ0FBQ2EsUUFBUSxDQUFDLENBQUM7RUFFbENELElBQUksQ0FBQ0UsTUFBTSxDQUFDLFdBQVcsRUFBRVQsUUFBUSxDQUFDO0VBQ2xDTyxJQUFJLENBQUNFLE1BQU0sQ0FBQyxlQUFlLEVBQUVSLFlBQVksQ0FBQztFQUMxQ00sSUFBSSxDQUFDRSxNQUFNLENBQUMsWUFBWSxFQUFFLG9CQUFvQixDQUFDO0VBQy9DRixJQUFJLENBQUNFLE1BQU0sQ0FBQyxjQUFjLEtBQUFmLE1BQUEsQ0FBS0MsTUFBTSxDQUFDQyxRQUFRLENBQUNDLE1BQU0sb0JBQWlCLENBQUM7RUFFdkUsT0FBT0YsTUFBTSxDQUFDa0IsS0FBSyxDQUFDUCxHQUFHLEVBQUU7SUFDdkJRLE1BQU0sRUFBRSxNQUFNO0lBQ2RDLElBQUksRUFBRVI7RUFDUixDQUFDLENBQUMsQ0FBQ1MsSUFBSSxDQUFDLFVBQUNDLElBQUk7SUFBQSxPQUFLQSxJQUFJLENBQUNDLElBQUksQ0FBQyxDQUFDO0VBQUEsRUFBQztBQUNoQyxDQUFDO0FBQ0QsSUFBTTBCLGFBQWEsR0FBRyxTQUFoQkEsYUFBYUEsQ0FBQUMsS0FBQSxFQUEwQztFQUFBLElBQXBDMUIsR0FBRyxHQUFBMEIsS0FBQSxDQUFIMUIsR0FBRztJQUFFakIsUUFBUSxHQUFBMkMsS0FBQSxDQUFSM0MsUUFBUTtJQUFFNEMsUUFBUSxHQUFBRCxLQUFBLENBQVJDLFFBQVE7SUFBRUwsSUFBSSxHQUFBSSxLQUFBLENBQUpKLElBQUk7RUFDcEQsSUFBTW5DLEdBQUcsTUFBQVosTUFBQSxDQUFNUSxRQUFRLHlCQUFzQjtFQUM3QyxJQUFNSyxJQUFJLEdBQUcsSUFBSVosTUFBTSxDQUFDYSxRQUFRLENBQUMsQ0FBQztFQUVsQ0QsSUFBSSxDQUFDRSxNQUFNLENBQUMsV0FBVyxFQUFFVSxHQUFHLENBQUNDLFNBQVMsQ0FBQztFQUN2Q2IsSUFBSSxDQUFDRSxNQUFNLENBQUMsZUFBZSxFQUFFVSxHQUFHLENBQUNFLGFBQWEsQ0FBQztFQUMvQ2QsSUFBSSxDQUFDRSxNQUFNLENBQUMsV0FBVyxFQUFFcUMsUUFBUSxDQUFDO0VBQ2xDdkMsSUFBSSxDQUFDRSxNQUFNLENBQUMsTUFBTSxFQUFFZ0MsSUFBSSxDQUFDO0VBQ3pCbEMsSUFBSSxDQUFDRSxNQUFNLENBQUMsZ0JBQWdCLEVBQUUsTUFBTSxDQUFDO0VBRXJDLE9BQU9kLE1BQU0sQ0FBQ2tCLEtBQUssQ0FBQ1AsR0FBRyxFQUFFO0lBQ3ZCUSxNQUFNLEVBQUUsTUFBTTtJQUNkQyxJQUFJLEVBQUVSO0VBQ1IsQ0FBQyxDQUFDLENBQUNTLElBQUksQ0FBQyxVQUFDQyxJQUFJO0lBQUEsT0FBS0EsSUFBSSxDQUFDQyxJQUFJLENBQUMsQ0FBQztFQUFBLEVBQUM7QUFDaEMsQ0FBQztBQUVELElBQU02QixrQkFBa0IsR0FBRyxTQUFyQkEsa0JBQWtCQSxDQUFBQyxLQUFBLEVBQTBDO0VBQUEsSUFBcEM3QixHQUFHLEdBQUE2QixLQUFBLENBQUg3QixHQUFHO0lBQUVqQixRQUFRLEdBQUE4QyxLQUFBLENBQVI5QyxRQUFRO0lBQUU0QyxRQUFRLEdBQUFFLEtBQUEsQ0FBUkYsUUFBUTtJQUFFTCxJQUFJLEdBQUFPLEtBQUEsQ0FBSlAsSUFBSTtFQUN6RCxJQUFNbkMsR0FBRyxNQUFBWixNQUFBLENBQU1RLFFBQVEseUJBQXNCO0VBQzdDLElBQU1LLElBQUksR0FBRyxJQUFJWixNQUFNLENBQUNhLFFBQVEsQ0FBQyxDQUFDO0VBRWxDRCxJQUFJLENBQUNFLE1BQU0sQ0FBQyxXQUFXLEVBQUVVLEdBQUcsQ0FBQ0MsU0FBUyxDQUFDO0VBQ3ZDYixJQUFJLENBQUNFLE1BQU0sQ0FBQyxlQUFlLEVBQUVVLEdBQUcsQ0FBQ0UsYUFBYSxDQUFDO0VBQy9DZCxJQUFJLENBQUNFLE1BQU0sQ0FBQyxXQUFXLEVBQUVxQyxRQUFRLENBQUM7RUFDbEN2QyxJQUFJLENBQUNFLE1BQU0sQ0FBQyxNQUFNLEVBQUVnQyxJQUFJLENBQUM7RUFDekJsQyxJQUFJLENBQUNFLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxVQUFVLENBQUM7RUFFekMsT0FBT2QsTUFBTSxDQUFDa0IsS0FBSyxDQUFDUCxHQUFHLEVBQUU7SUFDdkJRLE1BQU0sRUFBRSxNQUFNO0lBQ2RDLElBQUksRUFBRVI7RUFDUixDQUFDLENBQUMsQ0FBQ1MsSUFBSSxDQUFDLFVBQUNDLElBQUk7SUFBQSxPQUFLQSxJQUFJLENBQUNDLElBQUksQ0FBQyxDQUFDO0VBQUEsRUFBQztBQUNoQyxDQUFDO0FBRUQsSUFBTStCLFdBQVcsR0FBRyxTQUFkQSxXQUFXQSxDQUFBQyxLQUFBLEVBQWlDO0VBQUEsSUFBM0IvQixHQUFHLEdBQUErQixLQUFBLENBQUgvQixHQUFHO0lBQUVqQixRQUFRLEdBQUFnRCxLQUFBLENBQVJoRCxRQUFRO0lBQUVpRCxLQUFLLEdBQUFELEtBQUEsQ0FBTEMsS0FBSztFQUN6QyxJQUFNN0MsR0FBRyxNQUFBWixNQUFBLENBQU1RLFFBQVEsa0JBQWU7RUFDdEMsSUFBTUssSUFBSSxHQUFHLElBQUlaLE1BQU0sQ0FBQ2EsUUFBUSxDQUFDLENBQUM7RUFFbENELElBQUksQ0FBQ0UsTUFBTSxDQUFDLFdBQVcsRUFBRVUsR0FBRyxDQUFDbkIsUUFBUSxDQUFDO0VBQ3RDTyxJQUFJLENBQUNFLE1BQU0sQ0FBQyxlQUFlLEVBQUVVLEdBQUcsQ0FBQ2xCLFlBQVksQ0FBQztFQUM5Q00sSUFBSSxDQUFDRSxNQUFNLENBQUMsT0FBTyxFQUFFMEMsS0FBSyxDQUFDO0VBRTNCLE9BQU94RCxNQUFNLENBQUNrQixLQUFLLENBQUNQLEdBQUcsRUFBRTtJQUN2QlEsTUFBTSxFQUFFLE1BQU07SUFDZEMsSUFBSSxFQUFFUjtFQUNSLENBQUMsQ0FBQyxDQUFDUyxJQUFJLENBQUMsVUFBQ0MsSUFBSTtJQUFBLE9BQUtBLElBQUksQ0FBQ0MsSUFBSSxDQUFDLENBQUM7RUFBQSxFQUFDO0FBQ2hDLENBQUM7QUFFRCxJQUFNa0MsS0FBSyxHQUFHO0VBQ1o5QixLQUFLLEVBQUxBLEtBQUs7RUFDTGlCLFFBQVEsRUFBUkEsUUFBUTtFQUNSSix1QkFBdUIsRUFBdkJBLHVCQUF1QjtFQUN2QnJDLGNBQWMsRUFBZEEsY0FBYztFQUNkOEMsYUFBYSxFQUFiQSxhQUFhO0VBQ2JHLGtCQUFrQixFQUFsQkEsa0JBQWtCO0VBQ2xCRSxXQUFXLEVBQVhBO0FBQ0YsQ0FBQztBQUVELGlFQUFlRyxLQUFLIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9zZXJ2aWNlcy9uZXdfYXBpL29hdXRoLmpzPzIxNzIiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmVkdWNlIH0gZnJvbSAnbG9kYXNoJ1xuXG5jb25zdCBSRURJUkVDVF9VUkkgPSBgJHt3aW5kb3cubG9jYXRpb24ub3JpZ2lufS9vYXV0aC1jYWxsYmFja2BcblxuZXhwb3J0IGNvbnN0IGdldE9yQ3JlYXRlQXBwID0gKHsgY2xpZW50SWQsIGNsaWVudFNlY3JldCwgaW5zdGFuY2UsIGNvbW1pdCB9KSA9PiB7XG4gIGlmIChjbGllbnRJZCAmJiBjbGllbnRTZWNyZXQpIHtcbiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHsgY2xpZW50SWQsIGNsaWVudFNlY3JldCB9KVxuICB9XG5cbiAgY29uc3QgdXJsID0gYCR7aW5zdGFuY2V9L2FwaS92MS9hcHBzYFxuICBjb25zdCBmb3JtID0gbmV3IHdpbmRvdy5Gb3JtRGF0YSgpXG5cbiAgZm9ybS5hcHBlbmQoJ2NsaWVudF9uYW1lJywgYFBsZXJvbWFGRV8ke3dpbmRvdy5fX19wbGVyb21hZmVfY29tbWl0X2hhc2h9XyR7KG5ldyBEYXRlKCkpLnRvSVNPU3RyaW5nKCl9YClcbiAgZm9ybS5hcHBlbmQoJ3JlZGlyZWN0X3VyaXMnLCBSRURJUkVDVF9VUkkpXG4gIGZvcm0uYXBwZW5kKCdzY29wZXMnLCAncmVhZCB3cml0ZSBmb2xsb3cgcHVzaCBhZG1pbicpXG5cbiAgcmV0dXJuIHdpbmRvdy5mZXRjaCh1cmwsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBib2R5OiBmb3JtXG4gIH0pXG4gICAgLnRoZW4oKGRhdGEpID0+IGRhdGEuanNvbigpKVxuICAgIC50aGVuKChhcHApID0+ICh7IGNsaWVudElkOiBhcHAuY2xpZW50X2lkLCBjbGllbnRTZWNyZXQ6IGFwcC5jbGllbnRfc2VjcmV0IH0pKVxuICAgIC50aGVuKChhcHApID0+IGNvbW1pdCgnc2V0Q2xpZW50RGF0YScsIGFwcCkgfHwgYXBwKVxufVxuXG5jb25zdCBsb2dpbiA9ICh7IGluc3RhbmNlLCBjbGllbnRJZCB9KSA9PiB7XG4gIGNvbnN0IGRhdGEgPSB7XG4gICAgcmVzcG9uc2VfdHlwZTogJ2NvZGUnLFxuICAgIGNsaWVudF9pZDogY2xpZW50SWQsXG4gICAgcmVkaXJlY3RfdXJpOiBSRURJUkVDVF9VUkksXG4gICAgc2NvcGU6ICdyZWFkIHdyaXRlIGZvbGxvdyBwdXNoIGFkbWluJ1xuICB9XG5cbiAgY29uc3QgZGF0YVN0cmluZyA9IHJlZHVjZShkYXRhLCAoYWNjLCB2LCBrKSA9PiB7XG4gICAgY29uc3QgZW5jb2RlZCA9IGAke2t9PSR7ZW5jb2RlVVJJQ29tcG9uZW50KHYpfWBcbiAgICBpZiAoIWFjYykge1xuICAgICAgcmV0dXJuIGVuY29kZWRcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGAke2FjY30mJHtlbmNvZGVkfWBcbiAgICB9XG4gIH0sIGZhbHNlKVxuXG4gIC8vIERvIHRoZSByZWRpcmVjdC4uLlxuICBjb25zdCB1cmwgPSBgJHtpbnN0YW5jZX0vb2F1dGgvYXV0aG9yaXplPyR7ZGF0YVN0cmluZ31gXG5cbiAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSB1cmxcbn1cblxuY29uc3QgZ2V0VG9rZW5XaXRoQ3JlZGVudGlhbHMgPSAoeyBjbGllbnRJZCwgY2xpZW50U2VjcmV0LCBpbnN0YW5jZSwgdXNlcm5hbWUsIHBhc3N3b3JkIH0pID0+IHtcbiAgY29uc3QgdXJsID0gYCR7aW5zdGFuY2V9L29hdXRoL3Rva2VuYFxuICBjb25zdCBmb3JtID0gbmV3IHdpbmRvdy5Gb3JtRGF0YSgpXG5cbiAgZm9ybS5hcHBlbmQoJ2NsaWVudF9pZCcsIGNsaWVudElkKVxuICBmb3JtLmFwcGVuZCgnY2xpZW50X3NlY3JldCcsIGNsaWVudFNlY3JldClcbiAgZm9ybS5hcHBlbmQoJ2dyYW50X3R5cGUnLCAncGFzc3dvcmQnKVxuICBmb3JtLmFwcGVuZCgndXNlcm5hbWUnLCB1c2VybmFtZSlcbiAgZm9ybS5hcHBlbmQoJ3Bhc3N3b3JkJywgcGFzc3dvcmQpXG5cbiAgcmV0dXJuIHdpbmRvdy5mZXRjaCh1cmwsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBib2R5OiBmb3JtXG4gIH0pLnRoZW4oKGRhdGEpID0+IGRhdGEuanNvbigpKVxufVxuXG5jb25zdCBnZXRUb2tlbiA9ICh7IGNsaWVudElkLCBjbGllbnRTZWNyZXQsIGluc3RhbmNlLCBjb2RlIH0pID0+IHtcbiAgY29uc3QgdXJsID0gYCR7aW5zdGFuY2V9L29hdXRoL3Rva2VuYFxuICBjb25zdCBmb3JtID0gbmV3IHdpbmRvdy5Gb3JtRGF0YSgpXG5cbiAgZm9ybS5hcHBlbmQoJ2NsaWVudF9pZCcsIGNsaWVudElkKVxuICBmb3JtLmFwcGVuZCgnY2xpZW50X3NlY3JldCcsIGNsaWVudFNlY3JldClcbiAgZm9ybS5hcHBlbmQoJ2dyYW50X3R5cGUnLCAnYXV0aG9yaXphdGlvbl9jb2RlJylcbiAgZm9ybS5hcHBlbmQoJ2NvZGUnLCBjb2RlKVxuICBmb3JtLmFwcGVuZCgncmVkaXJlY3RfdXJpJywgYCR7d2luZG93LmxvY2F0aW9uLm9yaWdpbn0vb2F1dGgtY2FsbGJhY2tgKVxuXG4gIHJldHVybiB3aW5kb3cuZmV0Y2godXJsLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgYm9keTogZm9ybVxuICB9KVxuICAgIC50aGVuKChkYXRhKSA9PiBkYXRhLmpzb24oKSlcbn1cblxuZXhwb3J0IGNvbnN0IGdldENsaWVudFRva2VuID0gKHsgY2xpZW50SWQsIGNsaWVudFNlY3JldCwgaW5zdGFuY2UgfSkgPT4ge1xuICBjb25zdCB1cmwgPSBgJHtpbnN0YW5jZX0vb2F1dGgvdG9rZW5gXG4gIGNvbnN0IGZvcm0gPSBuZXcgd2luZG93LkZvcm1EYXRhKClcblxuICBmb3JtLmFwcGVuZCgnY2xpZW50X2lkJywgY2xpZW50SWQpXG4gIGZvcm0uYXBwZW5kKCdjbGllbnRfc2VjcmV0JywgY2xpZW50U2VjcmV0KVxuICBmb3JtLmFwcGVuZCgnZ3JhbnRfdHlwZScsICdjbGllbnRfY3JlZGVudGlhbHMnKVxuICBmb3JtLmFwcGVuZCgncmVkaXJlY3RfdXJpJywgYCR7d2luZG93LmxvY2F0aW9uLm9yaWdpbn0vb2F1dGgtY2FsbGJhY2tgKVxuXG4gIHJldHVybiB3aW5kb3cuZmV0Y2godXJsLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgYm9keTogZm9ybVxuICB9KS50aGVuKChkYXRhKSA9PiBkYXRhLmpzb24oKSlcbn1cbmNvbnN0IHZlcmlmeU9UUENvZGUgPSAoeyBhcHAsIGluc3RhbmNlLCBtZmFUb2tlbiwgY29kZSB9KSA9PiB7XG4gIGNvbnN0IHVybCA9IGAke2luc3RhbmNlfS9vYXV0aC9tZmEvY2hhbGxlbmdlYFxuICBjb25zdCBmb3JtID0gbmV3IHdpbmRvdy5Gb3JtRGF0YSgpXG5cbiAgZm9ybS5hcHBlbmQoJ2NsaWVudF9pZCcsIGFwcC5jbGllbnRfaWQpXG4gIGZvcm0uYXBwZW5kKCdjbGllbnRfc2VjcmV0JywgYXBwLmNsaWVudF9zZWNyZXQpXG4gIGZvcm0uYXBwZW5kKCdtZmFfdG9rZW4nLCBtZmFUb2tlbilcbiAgZm9ybS5hcHBlbmQoJ2NvZGUnLCBjb2RlKVxuICBmb3JtLmFwcGVuZCgnY2hhbGxlbmdlX3R5cGUnLCAndG90cCcpXG5cbiAgcmV0dXJuIHdpbmRvdy5mZXRjaCh1cmwsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBib2R5OiBmb3JtXG4gIH0pLnRoZW4oKGRhdGEpID0+IGRhdGEuanNvbigpKVxufVxuXG5jb25zdCB2ZXJpZnlSZWNvdmVyeUNvZGUgPSAoeyBhcHAsIGluc3RhbmNlLCBtZmFUb2tlbiwgY29kZSB9KSA9PiB7XG4gIGNvbnN0IHVybCA9IGAke2luc3RhbmNlfS9vYXV0aC9tZmEvY2hhbGxlbmdlYFxuICBjb25zdCBmb3JtID0gbmV3IHdpbmRvdy5Gb3JtRGF0YSgpXG5cbiAgZm9ybS5hcHBlbmQoJ2NsaWVudF9pZCcsIGFwcC5jbGllbnRfaWQpXG4gIGZvcm0uYXBwZW5kKCdjbGllbnRfc2VjcmV0JywgYXBwLmNsaWVudF9zZWNyZXQpXG4gIGZvcm0uYXBwZW5kKCdtZmFfdG9rZW4nLCBtZmFUb2tlbilcbiAgZm9ybS5hcHBlbmQoJ2NvZGUnLCBjb2RlKVxuICBmb3JtLmFwcGVuZCgnY2hhbGxlbmdlX3R5cGUnLCAncmVjb3ZlcnknKVxuXG4gIHJldHVybiB3aW5kb3cuZmV0Y2godXJsLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgYm9keTogZm9ybVxuICB9KS50aGVuKChkYXRhKSA9PiBkYXRhLmpzb24oKSlcbn1cblxuY29uc3QgcmV2b2tlVG9rZW4gPSAoeyBhcHAsIGluc3RhbmNlLCB0b2tlbiB9KSA9PiB7XG4gIGNvbnN0IHVybCA9IGAke2luc3RhbmNlfS9vYXV0aC9yZXZva2VgXG4gIGNvbnN0IGZvcm0gPSBuZXcgd2luZG93LkZvcm1EYXRhKClcblxuICBmb3JtLmFwcGVuZCgnY2xpZW50X2lkJywgYXBwLmNsaWVudElkKVxuICBmb3JtLmFwcGVuZCgnY2xpZW50X3NlY3JldCcsIGFwcC5jbGllbnRTZWNyZXQpXG4gIGZvcm0uYXBwZW5kKCd0b2tlbicsIHRva2VuKVxuXG4gIHJldHVybiB3aW5kb3cuZmV0Y2godXJsLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgYm9keTogZm9ybVxuICB9KS50aGVuKChkYXRhKSA9PiBkYXRhLmpzb24oKSlcbn1cblxuY29uc3Qgb2F1dGggPSB7XG4gIGxvZ2luLFxuICBnZXRUb2tlbixcbiAgZ2V0VG9rZW5XaXRoQ3JlZGVudGlhbHMsXG4gIGdldE9yQ3JlYXRlQXBwLFxuICB2ZXJpZnlPVFBDb2RlLFxuICB2ZXJpZnlSZWNvdmVyeUNvZGUsXG4gIHJldm9rZVRva2VuXG59XG5cbmV4cG9ydCBkZWZhdWx0IG9hdXRoXG4iXSwibmFtZXMiOlsiUkVESVJFQ1RfVVJJIiwiY29uY2F0Iiwid2luZG93IiwibG9jYXRpb24iLCJvcmlnaW4iLCJnZXRPckNyZWF0ZUFwcCIsIl9yZWYiLCJjbGllbnRJZCIsImNsaWVudFNlY3JldCIsImluc3RhbmNlIiwiY29tbWl0IiwiUHJvbWlzZSIsInJlc29sdmUiLCJ1cmwiLCJmb3JtIiwiRm9ybURhdGEiLCJhcHBlbmQiLCJfX19wbGVyb21hZmVfY29tbWl0X2hhc2giLCJEYXRlIiwidG9JU09TdHJpbmciLCJmZXRjaCIsIm1ldGhvZCIsImJvZHkiLCJ0aGVuIiwiZGF0YSIsImpzb24iLCJhcHAiLCJjbGllbnRfaWQiLCJjbGllbnRfc2VjcmV0IiwibG9naW4iLCJfcmVmMiIsInJlc3BvbnNlX3R5cGUiLCJyZWRpcmVjdF91cmkiLCJzY29wZSIsImRhdGFTdHJpbmciLCJfcmVkdWNlIiwiYWNjIiwidiIsImsiLCJlbmNvZGVkIiwiZW5jb2RlVVJJQ29tcG9uZW50IiwiaHJlZiIsImdldFRva2VuV2l0aENyZWRlbnRpYWxzIiwiX3JlZjMiLCJ1c2VybmFtZSIsInBhc3N3b3JkIiwiZ2V0VG9rZW4iLCJfcmVmNCIsImNvZGUiLCJnZXRDbGllbnRUb2tlbiIsIl9yZWY1IiwidmVyaWZ5T1RQQ29kZSIsIl9yZWY2IiwibWZhVG9rZW4iLCJ2ZXJpZnlSZWNvdmVyeUNvZGUiLCJfcmVmNyIsInJldm9rZVRva2VuIiwiX3JlZjgiLCJ0b2tlbiIsIm9hdXRoIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/services/new_api/oauth.js\n");
/***/ }),
/***/ "./src/services/new_api/password_reset.js":
/*!************************************************!*\
!*** ./src/services/new_api/password_reset.js ***!
\************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var lodash_reduce__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/reduce */ \"./node_modules/lodash/reduce.js\");\n/* harmony import */ var lodash_reduce__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_reduce__WEBPACK_IMPORTED_MODULE_0__);\n\nvar MASTODON_PASSWORD_RESET_URL = '/auth/password';\nvar resetPassword = function resetPassword(_ref) {\n var instance = _ref.instance,\n email = _ref.email;\n var params = {\n email: email\n };\n var query = lodash_reduce__WEBPACK_IMPORTED_MODULE_0___default()(params, function (acc, v, k) {\n var encoded = \"\".concat(k, \"=\").concat(encodeURIComponent(v));\n return \"\".concat(acc, \"&\").concat(encoded);\n }, '');\n var url = \"\".concat(instance).concat(MASTODON_PASSWORD_RESET_URL, \"?\").concat(query);\n return window.fetch(url, {\n method: 'POST'\n });\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (resetPassword);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvbmV3X2FwaS9wYXNzd29yZF9yZXNldC5qcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7O0FBRUEsSUFBTUEsMkJBQTJCLEdBQUcsZ0JBQWdCO0FBRXBELElBQU1DLGFBQWEsR0FBRyxTQUFoQkEsYUFBYUEsQ0FBQUMsSUFBQSxFQUE0QjtFQUFBLElBQXRCQyxRQUFRLEdBQUFELElBQUEsQ0FBUkMsUUFBUTtJQUFFQyxLQUFLLEdBQUFGLElBQUEsQ0FBTEUsS0FBSztFQUN0QyxJQUFNQyxNQUFNLEdBQUc7SUFBRUQsS0FBSyxFQUFMQTtFQUFNLENBQUM7RUFDeEIsSUFBTUUsS0FBSyxHQUFHQyxvREFBQSxDQUFPRixNQUFNLEVBQUUsVUFBQ0csR0FBRyxFQUFFQyxDQUFDLEVBQUVDLENBQUMsRUFBSztJQUMxQyxJQUFNQyxPQUFPLE1BQUFDLE1BQUEsQ0FBTUYsQ0FBQyxPQUFBRSxNQUFBLENBQUlDLGtCQUFrQixDQUFDSixDQUFDLENBQUMsQ0FBRTtJQUMvQyxVQUFBRyxNQUFBLENBQVVKLEdBQUcsT0FBQUksTUFBQSxDQUFJRCxPQUFPO0VBQzFCLENBQUMsRUFBRSxFQUFFLENBQUM7RUFDTixJQUFNRyxHQUFHLE1BQUFGLE1BQUEsQ0FBTVQsUUFBUSxFQUFBUyxNQUFBLENBQUdaLDJCQUEyQixPQUFBWSxNQUFBLENBQUlOLEtBQUssQ0FBRTtFQUVoRSxPQUFPUyxNQUFNLENBQUNDLEtBQUssQ0FBQ0YsR0FBRyxFQUFFO0lBQ3ZCRyxNQUFNLEVBQUU7RUFDVixDQUFDLENBQUM7QUFDSixDQUFDO0FBRUQsaUVBQWVoQixhQUFhIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9zZXJ2aWNlcy9uZXdfYXBpL3Bhc3N3b3JkX3Jlc2V0LmpzPzNjNTQiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmVkdWNlIH0gZnJvbSAnbG9kYXNoJ1xuXG5jb25zdCBNQVNUT0RPTl9QQVNTV09SRF9SRVNFVF9VUkwgPSAnL2F1dGgvcGFzc3dvcmQnXG5cbmNvbnN0IHJlc2V0UGFzc3dvcmQgPSAoeyBpbnN0YW5jZSwgZW1haWwgfSkgPT4ge1xuICBjb25zdCBwYXJhbXMgPSB7IGVtYWlsIH1cbiAgY29uc3QgcXVlcnkgPSByZWR1Y2UocGFyYW1zLCAoYWNjLCB2LCBrKSA9PiB7XG4gICAgY29uc3QgZW5jb2RlZCA9IGAke2t9PSR7ZW5jb2RlVVJJQ29tcG9uZW50KHYpfWBcbiAgICByZXR1cm4gYCR7YWNjfSYke2VuY29kZWR9YFxuICB9LCAnJylcbiAgY29uc3QgdXJsID0gYCR7aW5zdGFuY2V9JHtNQVNUT0RPTl9QQVNTV09SRF9SRVNFVF9VUkx9PyR7cXVlcnl9YFxuXG4gIHJldHVybiB3aW5kb3cuZmV0Y2godXJsLCB7XG4gICAgbWV0aG9kOiAnUE9TVCdcbiAgfSlcbn1cblxuZXhwb3J0IGRlZmF1bHQgcmVzZXRQYXNzd29yZFxuIl0sIm5hbWVzIjpbIk1BU1RPRE9OX1BBU1NXT1JEX1JFU0VUX1VSTCIsInJlc2V0UGFzc3dvcmQiLCJfcmVmIiwiaW5zdGFuY2UiLCJlbWFpbCIsInBhcmFtcyIsInF1ZXJ5IiwiX3JlZHVjZSIsImFjYyIsInYiLCJrIiwiZW5jb2RlZCIsImNvbmNhdCIsImVuY29kZVVSSUNvbXBvbmVudCIsInVybCIsIndpbmRvdyIsImZldGNoIiwibWV0aG9kIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/services/new_api/password_reset.js\n");
/***/ }),
/***/ "./src/services/notification_utils/notification_utils.js":
/*!***************************************************************!*\
!*** ./src/services/notification_utils/notification_utils.js ***!
\***************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"filteredNotificationsFromStore\": () => (/* binding */ filteredNotificationsFromStore),\n/* harmony export */ \"isStatusNotification\": () => (/* binding */ isStatusNotification),\n/* harmony export */ \"isValidNotification\": () => (/* binding */ isValidNotification),\n/* harmony export */ \"maybeShowNotification\": () => (/* binding */ maybeShowNotification),\n/* harmony export */ \"notificationsFromStore\": () => (/* binding */ notificationsFromStore),\n/* harmony export */ \"prepareNotificationObject\": () => (/* binding */ prepareNotificationObject),\n/* harmony export */ \"unseenNotificationsFromStore\": () => (/* binding */ unseenNotificationsFromStore),\n/* harmony export */ \"visibleTypes\": () => (/* binding */ visibleTypes)\n/* harmony export */ });\n/* harmony import */ var lodash_includes__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/includes */ \"./node_modules/lodash/includes.js\");\n/* harmony import */ var lodash_includes__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_includes__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var lodash_sortBy__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! lodash/sortBy */ \"./node_modules/lodash/sortBy.js\");\n/* harmony import */ var lodash_sortBy__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash_sortBy__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var lodash_filter__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! lodash/filter */ \"./node_modules/lodash/filter.js\");\n/* harmony import */ var lodash_filter__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(lodash_filter__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _status_parser_status_parser_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../status_parser/status_parser.js */ \"./src/services/status_parser/status_parser.js\");\n/* harmony import */ var _desktop_notification_utils_desktop_notification_utils_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../desktop_notification_utils/desktop_notification_utils.js */ \"./src/services/desktop_notification_utils/desktop_notification_utils.js\");\n\n\n\n\n\nvar notificationsFromStore = function notificationsFromStore(store) {\n return store.state.statuses.notifications.data;\n};\nvar visibleTypes = function visibleTypes(store) {\n var rootState = store.rootState || store.state;\n return [rootState.config.notificationVisibility.likes && 'like', rootState.config.notificationVisibility.mentions && 'mention', rootState.config.notificationVisibility.repeats && 'repeat', rootState.config.notificationVisibility.follows && 'follow', rootState.config.notificationVisibility.followRequest && 'follow_request', rootState.config.notificationVisibility.moves && 'move', rootState.config.notificationVisibility.emojiReactions && 'pleroma:emoji_reaction', rootState.config.notificationVisibility.reports && 'pleroma:report', rootState.config.notificationVisibility.polls && 'poll'].filter(function (_) {\n return _;\n });\n};\nvar statusNotifications = ['like', 'mention', 'repeat', 'pleroma:emoji_reaction', 'poll'];\nvar isStatusNotification = function isStatusNotification(type) {\n return lodash_includes__WEBPACK_IMPORTED_MODULE_0___default()(statusNotifications, type);\n};\nvar isValidNotification = function isValidNotification(notification) {\n if (isStatusNotification(notification.type) && !notification.status) {\n return false;\n }\n return true;\n};\nvar sortById = function sortById(a, b) {\n var seqA = Number(a.id);\n var seqB = Number(b.id);\n var isSeqA = !Number.isNaN(seqA);\n var isSeqB = !Number.isNaN(seqB);\n if (isSeqA && isSeqB) {\n return seqA > seqB ? -1 : 1;\n } else if (isSeqA && !isSeqB) {\n return 1;\n } else if (!isSeqA && isSeqB) {\n return -1;\n } else {\n return a.id > b.id ? -1 : 1;\n }\n};\nvar isMutedNotification = function isMutedNotification(store, notification) {\n if (!notification.status) return;\n return notification.status.muted || (0,_status_parser_status_parser_js__WEBPACK_IMPORTED_MODULE_3__.muteWordHits)(notification.status, store.rootGetters.mergedConfig.muteWords).length > 0;\n};\nvar maybeShowNotification = function maybeShowNotification(store, notification) {\n var rootState = store.rootState || store.state;\n if (notification.seen) return;\n if (!visibleTypes(store).includes(notification.type)) return;\n if (notification.type === 'mention' && isMutedNotification(store, notification)) return;\n var notificationObject = prepareNotificationObject(notification, store.rootGetters.i18n);\n (0,_desktop_notification_utils_desktop_notification_utils_js__WEBPACK_IMPORTED_MODULE_4__.showDesktopNotification)(rootState, notificationObject);\n};\nvar filteredNotificationsFromStore = function filteredNotificationsFromStore(store, types) {\n // map is just to clone the array since sort mutates it and it causes some issues\n var sortedNotifications = notificationsFromStore(store).map(function (_) {\n return _;\n }).sort(sortById);\n sortedNotifications = lodash_sortBy__WEBPACK_IMPORTED_MODULE_1___default()(sortedNotifications, 'seen');\n return sortedNotifications.filter(function (notification) {\n return (types || visibleTypes(store)).includes(notification.type);\n });\n};\nvar unseenNotificationsFromStore = function unseenNotificationsFromStore(store) {\n return lodash_filter__WEBPACK_IMPORTED_MODULE_2___default()(filteredNotificationsFromStore(store), function (_ref) {\n var seen = _ref.seen;\n return !seen;\n });\n};\nvar prepareNotificationObject = function prepareNotificationObject(notification, i18n) {\n var notifObj = {\n tag: notification.id\n };\n var status = notification.status;\n var title = notification.from_profile.name;\n notifObj.title = title;\n notifObj.icon = notification.from_profile.profile_image_url;\n var i18nString;\n switch (notification.type) {\n case 'like':\n i18nString = 'favorited_you';\n break;\n case 'repeat':\n i18nString = 'repeated_you';\n break;\n case 'follow':\n i18nString = 'followed_you';\n break;\n case 'move':\n i18nString = 'migrated_to';\n break;\n case 'follow_request':\n i18nString = 'follow_request';\n break;\n case 'pleroma:report':\n i18nString = 'submitted_report';\n break;\n case 'poll':\n i18nString = 'poll_ended';\n break;\n }\n if (notification.type === 'pleroma:emoji_reaction') {\n notifObj.body = i18n.t('notifications.reacted_with', [notification.emoji]);\n } else if (i18nString) {\n notifObj.body = i18n.t('notifications.' + i18nString);\n } else if (isStatusNotification(notification.type)) {\n notifObj.body = notification.status.text;\n }\n\n // Shows first attached non-nsfw image, if any. Should add configuration for this somehow...\n if (status && status.attachments && status.attachments.length > 0 && !status.nsfw && status.attachments[0].mimetype.startsWith('image/')) {\n notifObj.image = status.attachments[0].url;\n }\n return notifObj;\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvbm90aWZpY2F0aW9uX3V0aWxzL25vdGlmaWNhdGlvbl91dGlscy5qcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQ2dFO0FBQ3FDO0FBRTlGLElBQU1FLHNCQUFzQixHQUFHLFNBQXpCQSxzQkFBc0JBLENBQUdDLEtBQUs7RUFBQSxPQUFJQSxLQUFLLENBQUNDLEtBQUssQ0FBQ0MsUUFBUSxDQUFDQyxhQUFhLENBQUNDLElBQUk7QUFBQTtBQUUvRSxJQUFNQyxZQUFZLEdBQUcsU0FBZkEsWUFBWUEsQ0FBR0wsS0FBSyxFQUFJO0VBQ25DLElBQU1NLFNBQVMsR0FBR04sS0FBSyxDQUFDTSxTQUFTLElBQUlOLEtBQUssQ0FBQ0MsS0FBSztFQUVoRCxPQUFRLENBQ05LLFNBQVMsQ0FBQ0MsTUFBTSxDQUFDQyxzQkFBc0IsQ0FBQ0MsS0FBSyxJQUFJLE1BQU0sRUFDdkRILFNBQVMsQ0FBQ0MsTUFBTSxDQUFDQyxzQkFBc0IsQ0FBQ0UsUUFBUSxJQUFJLFNBQVMsRUFDN0RKLFNBQVMsQ0FBQ0MsTUFBTSxDQUFDQyxzQkFBc0IsQ0FBQ0csT0FBTyxJQUFJLFFBQVEsRUFDM0RMLFNBQVMsQ0FBQ0MsTUFBTSxDQUFDQyxzQkFBc0IsQ0FBQ0ksT0FBTyxJQUFJLFFBQVEsRUFDM0ROLFNBQVMsQ0FBQ0MsTUFBTSxDQUFDQyxzQkFBc0IsQ0FBQ0ssYUFBYSxJQUFJLGdCQUFnQixFQUN6RVAsU0FBUyxDQUFDQyxNQUFNLENBQUNDLHNCQUFzQixDQUFDTSxLQUFLLElBQUksTUFBTSxFQUN2RFIsU0FBUyxDQUFDQyxNQUFNLENBQUNDLHNCQUFzQixDQUFDTyxjQUFjLElBQUksd0JBQXdCLEVBQ2xGVCxTQUFTLENBQUNDLE1BQU0sQ0FBQ0Msc0JBQXNCLENBQUNRLE9BQU8sSUFBSSxnQkFBZ0IsRUFDbkVWLFNBQVMsQ0FBQ0MsTUFBTSxDQUFDQyxzQkFBc0IsQ0FBQ1MsS0FBSyxJQUFJLE1BQU0sQ0FDeEQsQ0FBQ0MsTUFBTSxD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QUNDLFVBQVUsQ0FBQyxRQUFRLENBQUMsRUFBRTtJQUNyRGYsUUFBUSxDQUFDZ0IsS0FBSyxHQUFHaEQsTUFBTSxDQUFDNEMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDSyxHQUFHO0VBQzVDO0VBRUEsT0FBT2pCLFFBQVE7QUFDakIsQ0FBQyIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvc2VydmljZXMvbm90aWZpY2F0aW9uX3V0aWxzL25vdGlmaWNhdGlvbl91dGlscy5qcz83NzAwIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZpbHRlciwgc29ydEJ5LCBpbmNsdWRlcyB9IGZyb20gJ2xvZGFzaCdcbmltcG9ydCB7IG11dGVXb3JkSGl0cyB9IGZyb20gJy4uL3N0YXR1c19wYXJzZXIvc3RhdHVzX3BhcnNlci5qcydcbmltcG9ydCB7IHNob3dEZXNrdG9wTm90aWZpY2F0aW9uIH0gZnJvbSAnLi4vZGVza3RvcF9ub3RpZmljYXRpb25fdXRpbHMvZGVza3RvcF9ub3RpZmljYXRpb25fdXRpbHMuanMnXG5cbmV4cG9ydCBjb25zdCBub3RpZmljYXRpb25zRnJvbVN0b3JlID0gc3RvcmUgPT4gc3RvcmUuc3RhdGUuc3RhdHVzZXMubm90aWZpY2F0aW9ucy5kYXRhXG5cbmV4cG9ydCBjb25zdCB2aXNpYmxlVHlwZXMgPSBzdG9yZSA9PiB7XG4gIGNvbnN0IHJvb3RTdGF0ZSA9IHN0b3JlLnJvb3RTdGF0ZSB8fCBzdG9yZS5zdGF0ZVxuXG4gIHJldHVybiAoW1xuICAgIHJvb3RTdGF0ZS5jb25maWcubm90aWZpY2F0aW9uVmlzaWJpbGl0eS5saWtlcyAmJiAnbGlrZScsXG4gICAgcm9vdFN0YXRlLmNvbmZpZy5ub3RpZmljYXRpb25WaXNpYmlsaXR5Lm1lbnRpb25zICYmICdtZW50aW9uJyxcbiAgICByb290U3RhdGUuY29uZmlnLm5vdGlmaWNhdGlvblZpc2liaWxpdHkucmVwZWF0cyAmJiAncmVwZWF0JyxcbiAgICByb290U3RhdGUuY29uZmlnLm5vdGlmaWNhdGlvblZpc2liaWxpdHkuZm9sbG93cyAmJiAnZm9sbG93JyxcbiAgICByb290U3RhdGUuY29uZmlnLm5vdGlmaWNhdGlvblZpc2liaWxpdHkuZm9sbG93UmVxdWVzdCAmJiAnZm9sbG93X3JlcXVlc3QnLFxuICAgIHJvb3RTdGF0ZS5jb25maWcubm90aWZpY2F0aW9uVmlzaWJpbGl0eS5tb3ZlcyAmJiAnbW92ZScsXG4gICAgcm9vdFN0YXRlLmNvbmZpZy5ub3RpZmljYXRpb25WaXNpYmlsaXR5LmVtb2ppUmVhY3Rpb25zICYmICdwbGVyb21hOmVtb2ppX3JlYWN0aW9uJyxcbiAgICByb290U3RhdGUuY29uZmlnLm5vdGlmaWNhdGlvblZpc2liaWxpdHkucmVwb3J0cyAmJiAncGxlcm9tYTpyZXBvcnQnLFxuICAgIHJvb3RTdGF0ZS5jb25maWcubm90aWZpY2F0aW9uVmlzaWJpbGl0eS5wb2xscyAmJiAncG9sbCdcbiAgXS5maWx0ZXIoXyA9PiBfKSlcbn1cblxuY29uc3Qgc3RhdHVzTm90aWZpY2F0aW9ucyA9IFsnbGlrZScsICdtZW50aW9uJywgJ3JlcGVhdCcsICdwbGVyb21hOmVtb2ppX3JlYWN0aW9uJywgJ3BvbGwnXVxuXG5leHBvcnQgY29uc3QgaXNTdGF0dXNOb3RpZmljYXRpb24gPSAodHlwZSkgPT4gaW5jbHVkZXMoc3RhdHVzTm90aWZpY2F0aW9ucywgdHlwZSlcblxuZXhwb3J0IGNvbnN0IGlzVmFsaWROb3RpZmljYXRpb24gPSAobm90aWZpY2F0aW9uKSA9PiB7XG4gIGlmIChpc1N0YXR1c05vdGlmaWNhdGlvbihub3RpZmljYXRpb24udHlwZSkgJiYgIW5vdGlmaWNhdGlvbi5zdGF0dXMpIHtcbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuICByZXR1cm4gdHJ1ZVxufVxuXG5jb25zdCBzb3J0QnlJZCA9IChhLCBiKSA9PiB7XG4gIGNvbnN0IHNlcUEgPSBOdW1iZXIoYS5pZClcbiAgY29uc3Qgc2VxQiA9IE51bWJlcihiLmlkKVxuICBjb25zdCBpc1NlcUEgPSAhTnVtYmVyLmlzTmFOKHNlcUEpXG4gIGNvbnN0IGlzU2VxQiA9ICFOdW1iZXIuaXNOYU4oc2VxQilcbiAgaWYgKGlzU2VxQSAmJiBpc1NlcUIpIHtcbiAgICByZXR1cm4gc2VxQSA+IHNlcUIgPyAtMSA6IDFcbiAgfSBlbHNlIGlmIChpc1NlcUEgJiYgIWlzU2VxQikge1xuICAgIHJldHVybiAxXG4gIH0gZWxzZSBpZiAoIWlzU2VxQSAmJiBpc1NlcUIpIHtcbiAgICByZXR1cm4gLTFcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gYS5pZCA+IGIuaWQgPyAtMSA6IDFcbiAgfVxufVxuXG5jb25zdCBpc011dGVkTm90aWZpY2F0aW9uID0gKHN0b3JlLCBub3RpZmljYXRpb24pID0+IHtcbiAgaWYgKCFub3RpZmljYXRpb24uc3RhdHVzKSByZXR1cm5cbiAgcmV0dXJuIG5vdGlmaWNhdGlvbi5zdGF0dXMubXV0ZWQgfHwgbXV0ZVdvcmRIaXRzKG5vdGlmaWNhdGlvbi5zdGF0dXMsIHN0b3JlLnJvb3RHZXR0ZXJzLm1lcmdlZENvbmZpZy5tdXRlV29yZHMpLmxlbmd0aCA+IDBcbn1cblxuZXhwb3J0IGNvbnN0IG1heWJlU2hvd05vdGlmaWNhdGlvbiA9IChzdG9yZSwgbm90aWZpY2F0aW9uKSA9PiB7XG4gIGNvbnN0IHJvb3RTdGF0ZSA9IHN0b3JlLnJvb3RTdGF0ZSB8fCBzdG9yZS5zdGF0ZVxuXG4gIGlmIChub3RpZmljYXRpb24uc2VlbikgcmV0dXJuXG4gIGlmICghdmlzaWJsZVR5cGVzKHN0b3JlKS5pbmNsdWRlcyhub3RpZmljYXRpb24udHlwZSkpIHJldHVyblxuICBpZiAobm90aWZpY2F0aW9uLnR5cGUgPT09ICdtZW50aW9uJyAmJiBpc011dGVkTm90aWZpY2F0aW9uKHN0b3JlLCBub3RpZmljYXRpb24pKSByZXR1cm5cblxuICBjb25zdCBub3RpZmljYXRpb25PYmplY3QgPSBwcmVwYXJlTm90aWZpY2F0aW9uT2JqZWN0KG5vdGlmaWNhdGlvbiwgc3RvcmUucm9vdEdldHRlcnMuaTE4bilcbiAgc2hvd0Rlc2t0b3BOb3RpZmljYXRpb24ocm9vdFN0YXRlLCBub3RpZmljYXRpb25PYmplY3QpXG59XG5cbmV4cG9ydCBjb25zdCBmaWx0ZXJlZE5vdGlmaWNhdGlvbnNGcm9tU3RvcmUgPSAoc3RvcmUsIHR5cGVzKSA9PiB7XG4gIC8vIG1hcCBpcyBqdXN0IHRvIGNsb25lIHRoZSBhcnJheSBzaW5jZSBzb3J0IG11dGF0ZXMgaXQgYW5kIGl0IGNhdXNlcyBzb21lIGlzc3Vlc1xuICBsZXQgc29ydGVkTm90aWZpY2F0aW9ucyA9IG5vdGlmaWNhdGlvbnNGcm9tU3RvcmUoc3RvcmUpLm1hcChfID0+IF8pLnNvcnQoc29ydEJ5SWQpXG4gIHNvcnRlZE5vdGlmaWNhdGlvbnMgPSBzb3J0Qnkoc29ydGVkTm90aWZpY2F0aW9ucywgJ3NlZW4nKVxuICByZXR1cm4gc29ydGVkTm90aWZpY2F0aW9ucy5maWx0ZXIoXG4gICAgKG5vdGlmaWNhdGlvbikgPT4gKHR5cGVzIHx8IHZpc2libGVUeXBlcyhzdG9yZSkpLmluY2x1ZGVzKG5vdGlmaWNhdGlvbi50eXBlKVxuICApXG59XG5cbmV4cG9ydCBjb25zdCB1bnNlZW5Ob3RpZmljYXRpb25zRnJvbVN0b3JlID0gc3RvcmUgPT5cbiAgZmlsdGVyKGZpbHRlcmVkTm90aWZpY2F0aW9uc0Zyb21TdG9yZShzdG9yZSksICh7IHNlZW4gfSkgPT4gIXNlZW4pXG5cbmV4cG9ydCBjb25zdCBwcmVwYXJlTm90aWZpY2F0aW9uT2JqZWN0ID0gKG5vdGlmaWNhdGlvbiwgaTE4bikgPT4ge1xuICBjb25zdCBub3RpZk9iaiA9IHtcbiAgICB0YWc6IG5vdGlmaWNhdGlvbi5pZFxuICB9XG4gIGNvbnN0IHN0YXR1cyA9IG5vdGlmaWNhdGlvbi5zdGF0dXNcbiAgY29uc3QgdGl0bGUgPSBub3RpZmljYXRpb24uZnJvbV9wcm9maWxlLm5hbWVcbiAgbm90aWZPYmoudGl0bGUgPSB0aXRsZVxuICBub3RpZk9iai5pY29uID0gbm90aWZpY2F0aW9uLmZyb21fcHJvZmlsZS5wcm9maWxlX2ltYWdlX3VybFxuICBsZXQgaTE4blN0cmluZ1xuICBzd2l0Y2ggKG5vdGlmaWNhdGlvbi50eXBlKSB7XG4gICAgY2FzZSAnbGlrZSc6XG4gICAgICBpMThuU3RyaW5nID0gJ2Zhdm9yaXRlZF95b3UnXG4gICAgICBicmVha1xuICAgIGNhc2UgJ3JlcGVhdCc6XG4gICAgICBpMThuU3RyaW5nID0gJ3JlcGVhdGVkX3lvdSdcbiAgICAgIGJyZWFrXG4gICAgY2FzZSAnZm9sbG93JzpcbiAgICAgIGkxOG5TdHJpbmcgPSAnZm9sbG93ZWRfeW91J1xuICAgICAgYnJlYWtcbiAgICBjYXNlICdtb3ZlJzpcbiAgICAgIGkxOG5TdHJpbmcgPSAnbWlncmF0ZWRfdG8nXG4gICAgICBicmVha1xuICAgIGNhc2UgJ2ZvbGxvd19yZXF1ZXN0JzpcbiAgICAgIGkxOG5TdHJpbmcgPSAnZm9sbG93X3JlcXVlc3QnXG4gICAgICBicmVha1xuICAgIGNhc2UgJ3BsZXJvbWE6cmVwb3J0JzpcbiAgICAgIGkxOG5TdHJpbmcgPSAnc3VibWl0dGVkX3JlcG9ydCdcbiAgICAgIGJyZWFrXG4gICAgY2FzZSAncG9sbCc6XG4gICAgICBpMThuU3RyaW5nID0gJ3BvbGxfZW5kZWQnXG4gICAgICBicmVha1xuICB9XG5cbiAgaWYgKG5vdGlmaWNhdGlvbi50eXBlID09PSAncGxlcm9tYTplbW9qaV9yZWFjdGlvbicpIHtcbiAgICBub3RpZk9iai5ib2R5ID0gaTE4bi50KCdub3RpZmljYXRpb25zLnJlYWN0ZWRfd2l0aCcsIFtub3RpZmljYXRpb24uZW1vamldKVxuICB9IGVsc2UgaWYgKGkxOG5TdHJpbmcpIHtcbiAgICBub3RpZk9iai5ib2R5ID0gaTE4bi50KCdub3RpZmljYXRpb25zLicgKyBpMThuU3RyaW5nKVxuICB9IGVsc2UgaWYgKGlzU3RhdHVzTm90aWZpY2F0aW9uKG5vdGlmaWNhdGlvbi50eXBlKSkge1xuICAgIG5vdGlmT2JqLmJvZHkgPSBub3RpZmljYXRpb24uc3RhdHVzLnRleHRcbiAgfVxuXG4gIC8vIFNob3dzIGZpcnN0IGF0dGFjaGVkIG5vbi1uc2Z3IGltYWdlLCBpZiBhbnkuIFNob3VsZCBhZGQgY29uZmlndXJhdGlvbiBmb3IgdGhpcyBzb21laG93Li4uXG4gIGlmIChzdGF0dXMgJiYgc3RhdHVzLmF0dGFjaG1lbnRzICYmIHN0YXR1cy5hdHRhY2htZW50cy5sZW5ndGggPiAwICYmICFzdGF0dXMubnNmdyAmJlxuICAgIHN0YXR1cy5hdHRhY2htZW50c1swXS5taW1ldHlwZS5zdGFydHNXaXRoKCdpbWFnZS8nKSkge1xuICAgIG5vdGlmT2JqLmltYWdlID0gc3RhdHVzLmF0dGFjaG1lbnRzWzBdLnVybFxuICB9XG5cbiAgcmV0dXJuIG5vdGlmT2JqXG59XG4iXSwibmFtZXMiOlsibXV0ZVdvcmRIaXRzIiwic2hvd0Rlc2t0b3BOb3RpZmljYXRpb24iLCJub3RpZmljYXRpb25zRnJvbVN0b3JlIiwic3RvcmUiLCJzdGF0ZSIsInN0YXR1c2VzIiwibm90aWZpY2F0aW9ucyIsImRhdGEiLCJ2aXNpYmxlVHlwZXMiLCJyb290U3RhdGUiLCJjb25maWciLCJub3RpZmljYXRpb25WaXNpYmlsaXR5IiwibGlrZXMiLCJtZW50aW9ucyIsInJlcGVhdHMiLCJmb2xsb3dzIiwiZm9sbG93UmVxdWVzdCIsIm1vdmVzIiwiZW1vamlSZWFjdGlvbnMiLCJyZXBvcnRzIiwicG9sbHMiLCJmaWx0ZXIiLCJfIiwic3RhdHVzTm90aWZpY2F0aW9ucyIsImlzU3RhdHVzTm90aWZpY2F0aW9uIiwidHlwZSIsIl9pbmNsdWRlcyIsImlzVmFsaWROb3RpZmljYXRpb24iLCJub3RpZmljYXRpb24iLCJzdGF0dXMiLCJzb3J0QnlJZCIsImEiLCJiIiwic2VxQSIsIk51bWJlciIsImlkIiwic2VxQiIsImlzU2VxQSIsImlzTmFOIiwiaXNTZXFCIiwiaXNNdXRlZE5vdGlmaWNhdGlvbiIsIm11dGVkIiwicm9vdEdldHRlcnMiLCJtZXJnZWRDb25maWciLCJtdXRlV29yZHMiLCJsZW5ndGgiLCJtYXliZVNob3dOb3RpZmljYXRpb24iLCJzZWVuIiwiaW5jbHVkZXMiLCJub3RpZmljYXRpb25PYmplY3QiLCJwcmVwYXJlTm90aWZpY2F0aW9uT2JqZWN0IiwiaTE4biIsImZpbHRlcmVkTm90aWZpY2F0aW9uc0Zyb21TdG9yZSIsInR5cGVzIiwic29ydGVkTm90aWZpY2F0aW9ucyIsIm1hcCIsInNvcnQiLCJfc29ydEJ5IiwidW5zZWVuTm90aWZpY2F0aW9uc0Zyb21TdG9yZSIsIl9maWx0ZXIiLCJfcmVmIiwibm90aWZPYmoiLCJ0YWciLCJ0aXRsZSIsImZyb21fcHJvZmlsZSIsIm5hbWUiLCJpY29uIiwicHJvZmlsZV9pbWFnZV91cmwiLCJpMThuU3RyaW5nIiwiYm9keSIsInQiLCJlbW9qaSIsInRleHQiLCJhdHRhY2htZW50cyIsIm5zZnciLCJtaW1ldHlwZSIsInN0YXJ0c1dpdGgiLCJpbWFnZSIsInVybCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/services/notification_utils/notification_utils.js\n");
/***/ }),
/***/ "./src/services/notifications_fetcher/notifications_fetcher.service.js":
/*!*****************************************************************************!*\
!*** ./src/services/notifications_fetcher/notifications_fetcher.service.js ***!
\*****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ \"./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js\");\n/* harmony import */ var _api_api_service_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../api/api.service.js */ \"./src/services/api/api.service.js\");\n/* harmony import */ var _promise_interval_promise_interval_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../promise_interval/promise_interval.js */ \"./src/services/promise_interval/promise_interval.js\");\n\n\n\n\n// For using include_types when fetching notifications.\n// Note: chat_mention excluded as pleroma-fe polls them separately\nvar mastoApiNotificationTypes = ['mention', 'favourite', 'reblog', 'follow', 'move', 'pleroma:emoji_reaction', 'pleroma:report'];\nvar update = function update(_ref) {\n var store = _ref.store,\n notifications = _ref.notifications,\n older = _ref.older;\n store.dispatch('addNewNotifications', {\n notifications: notifications,\n older: older\n });\n};\nvar fetchAndUpdate = function fetchAndUpdate(_ref2) {\n var store = _ref2.store,\n credentials = _ref2.credentials,\n _ref2$older = _ref2.older,\n older = _ref2$older === void 0 ? false : _ref2$older,\n since = _ref2.since;\n var args = {\n credentials: credentials\n };\n var getters = store.getters;\n var rootState = store.rootState || store.state;\n var timelineData = rootState.statuses.notifications;\n var hideMutedPosts = getters.mergedConfig.hideMutedPosts;\n args.includeTypes = mastoApiNotificationTypes;\n args.withMuted = !hideMutedPosts;\n args.timeline = 'notifications';\n if (older) {\n if (timelineData.minId !== Number.POSITIVE_INFINITY) {\n args.until = timelineData.minId;\n }\n return fetchNotifications({\n store: store,\n args: args,\n older: older\n });\n } else {\n // fetch new notifications\n if (since === undefined && timelineData.maxId !== Number.POSITIVE_INFINITY) {\n args.since = timelineData.maxId;\n } else if (since !== null) {\n args.since = since;\n }\n var result = fetchNotifications({\n store: store,\n args: args,\n older: older\n });\n\n // If there's any unread notifications, try fetch notifications since\n // the newest read notification to check if any of the unread notifs\n // have changed their 'seen' state (marked as read in another session), so\n // we can update the state in this session to mark them as read as well.\n // The normal maxId-check does not tell if older notifications have changed\n var notifications = timelineData.data;\n var readNotifsIds = notifications.filter(function (n) {\n return n.seen;\n }).map(function (n) {\n return n.id;\n });\n var numUnseenNotifs = notifications.length - readNotifsIds.length;\n if (numUnseenNotifs > 0 && readNotifsIds.length > 0) {\n args.since = Math.max.apply(Math, (0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(readNotifsIds));\n fetchNotifications({\n store: store,\n args: args,\n older: older\n });\n }\n return result;\n }\n};\nvar fetchNotifications = function fetchNotifications(_ref3) {\n var store = _ref3.store,\n args = _ref3.args,\n older = _ref3.older;\n return _api_api_service_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].fetchTimeline(args).then(function (response) {\n if (response.errors) {\n throw new Error(\"\".concat(response.status, \" \").concat(response.statusText));\n }\n var notifications = response.data;\n update({\n store: store,\n notifications: notifications,\n older: older\n });\n return notifications;\n })[\"catch\"](function (error) {\n store.dispatch('pushGlobalNotice', {\n level: 'error',\n messageKey: 'notifications.error',\n messageArgs: [error.message],\n timeout: 5000\n });\n console.error(error);\n });\n};\nvar startFetching = function startFetching(_ref4) {\n var credentials = _ref4.credentials,\n store = _ref4.store;\n // Initially there's set flag to silence all desktop notifications so\n // that there won't spam of them when user just opened up the FE we\n // reset that flag after a while to show new notifications once again.\n setTimeout(function () {\n return store.dispatch('setNotificationsSilence', false);\n }, 10000);\n var boundFetchAndUpdate = function boundFetchAndUpdate() {\n return fetchAndUpdate({\n credentials: credentials,\n store: store\n });\n };\n boundFetchAndUpdate();\n return (0,_promise_interval_promise_interval_js__WEBPACK_IMPORTED_MODULE_2__.promiseInterval)(boundFetchAndUpdate, 10000);\n};\nvar notificationsFetcher = {\n fetchAndUpdate: fetchAndUpdate,\n startFetching: startFetching\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (notificationsFetcher);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvbm90aWZpY2F0aW9uc19mZXRjaGVyL25vdGlmaWNhdGlvbnNfZmV0Y2hlci5zZXJ2aWNlLmpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQThDO0FBQzJCOztBQUV6RTtBQUNBO0FBQ0EsSUFBTUUseUJBQXlCLEdBQUcsQ0FDaEMsU0FBUyxFQUNULFdBQVcsRUFDWCxRQUFRLEVBQ1IsUUFBUSxFQUNSLE1BQU0sRUFDTix3QkFBd0IsRUFDeEIsZ0JBQWdCLENBQ2pCO0FBRUQsSUFBTUMsTUFBTSxHQUFHLFNBQVRBLE1BQU1BLENBQUFDLElBQUEsRUFBd0M7RUFBQSxJQUFsQ0MsS0FBSyxHQUFBRCxJQUFBLENBQUxDLEtBQUs7SUFBRUMsYUFBYSxHQUFBRixJQUFBLENBQWJFLGFBQWE7SUFBRUMsS0FBSyxHQUFBSCxJQUFBLENBQUxHLEtBQUs7RUFDM0NGLEtBQUssQ0FBQ0csUUFBUSxDQUFDLHFCQUFxQixFQUFFO0lBQUVGLGFBQWEsRUFBYkEsYUFBYTtJQUFFQyxLQUFLLEVBQUxBO0VBQU0sQ0FBQyxDQUFDO0FBQ2pFLENBQUM7QUFFRCxJQUFNRSxjQUFjLEdBQUcsU0FBakJBLGNBQWNBLENBQUFDLEtBQUEsRUFBcUQ7RUFBQSxJQUEvQ0wsS0FBSyxHQUFBSyxLQUFBLENBQUxMLEtBQUs7SUFBRU0sV0FBVyxHQUFBRCxLQUFBLENBQVhDLFdBQVc7SUFBQUMsV0FBQSxHQUFBRixLQUFBLENBQUVILEtBQUs7SUFBTEEsS0FBSyxHQUFBSyxXQUFBLGNBQUcsS0FBSyxHQUFBQSxXQUFBO0lBQUVDLEtBQUssR0FBQUgsS0FBQSxDQUFMRyxLQUFLO0VBQ2hFLElBQU1DLElBQUksR0FBRztJQUFFSCxXQUFXLEVBQVhBO0VBQVksQ0FBQztFQUM1QixJQUFRSSxPQUFPLEdBQUtWLEtBQUssQ0FBakJVLE9BQU87RUFDZixJQUFNQyxTQUFTLEdBQUdYLEtBQUssQ0FBQ1csU0FBUyxJQUFJWCxLQUFLLENBQUNZLEtBQUs7RUFDaEQsSUFBTUMsWUFB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azovL3BsZXJvbWFfZmUvLi9zcmMvc2VydmljZXMvbm90aWZpY2F0aW9uc19mZXRjaGVyL25vdGlmaWNhdGlvbnNfZmV0Y2hlci5zZXJ2aWNlLmpzP2JjNWQiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGFwaVNlcnZpY2UgZnJvbSAnLi4vYXBpL2FwaS5zZXJ2aWNlLmpzJ1xuaW1wb3J0IHsgcHJvbWlzZUludGVydmFsIH0gZnJvbSAnLi4vcHJvbWlzZV9pbnRlcnZhbC9wcm9taXNlX2ludGVydmFsLmpzJ1xuXG4vLyBGb3IgdXNpbmcgaW5jbHVkZV90eXBlcyB3aGVuIGZldGNoaW5nIG5vdGlmaWNhdGlvbnMuXG4vLyBOb3RlOiBjaGF0X21lbnRpb24gZXhjbHVkZWQgYXMgcGxlcm9tYS1mZSBwb2xscyB0aGVtIHNlcGFyYXRlbHlcbmNvbnN0IG1hc3RvQXBpTm90aWZpY2F0aW9uVHlwZXMgPSBbXG4gICdtZW50aW9uJyxcbiAgJ2Zhdm91cml0ZScsXG4gICdyZWJsb2cnLFxuICAnZm9sbG93JyxcbiAgJ21vdmUnLFxuICAncGxlcm9tYTplbW9qaV9yZWFjdGlvbicsXG4gICdwbGVyb21hOnJlcG9ydCdcbl1cblxuY29uc3QgdXBkYXRlID0gKHsgc3RvcmUsIG5vdGlmaWNhdGlvbnMsIG9sZGVyIH0pID0+IHtcbiAgc3RvcmUuZGlzcGF0Y2goJ2FkZE5ld05vdGlmaWNhdGlvbnMnLCB7IG5vdGlmaWNhdGlvbnMsIG9sZGVyIH0pXG59XG5cbmNvbnN0IGZldGNoQW5kVXBkYXRlID0gKHsgc3RvcmUsIGNyZWRlbnRpYWxzLCBvbGRlciA9IGZhbHNlLCBzaW5jZSB9KSA9PiB7XG4gIGNvbnN0IGFyZ3MgPSB7IGNyZWRlbnRpYWxzIH1cbiAgY29uc3QgeyBnZXR0ZXJzIH0gPSBzdG9yZVxuICBjb25zdCByb290U3RhdGUgPSBzdG9yZS5yb290U3RhdGUgfHwgc3RvcmUuc3RhdGVcbiAgY29uc3QgdGltZWxpbmVEYXRhID0gcm9vdFN0YXRlLnN0YXR1c2VzLm5vdGlmaWNhdGlvbnNcbiAgY29uc3QgaGlkZU11dGVkUG9zdHMgPSBnZXR0ZXJzLm1lcmdlZENvbmZpZy5oaWRlTXV0ZWRQb3N0c1xuXG4gIGFyZ3MuaW5jbHVkZVR5cGVzID0gbWFzdG9BcGlOb3RpZmljYXRpb25UeXBlc1xuICBhcmdzLndpdGhNdXRlZCA9ICFoaWRlTXV0ZWRQb3N0c1xuXG4gIGFyZ3MudGltZWxpbmUgPSAnbm90aWZpY2F0aW9ucydcbiAgaWYgKG9sZGVyKSB7XG4gICAgaWYgKHRpbWVsaW5lRGF0YS5taW5JZCAhPT0gTnVtYmVyLlBPU0lUSVZFX0lORklOSVRZKSB7XG4gICAgICBhcmdzLnVudGlsID0gdGltZWxpbmVEYXRhLm1pbklkXG4gICAgfVxuICAgIHJldHVybiBmZXRjaE5vdGlmaWNhdGlvbnMoeyBzdG9yZSwgYXJncywgb2xkZXIgfSlcbiAgfSBlbHNlIHtcbiAgICAvLyBmZXRjaCBuZXcgbm90aWZpY2F0aW9uc1xuICAgIGlmIChzaW5jZSA9PT0gdW5kZWZpbmVkICYmIHRpbWVsaW5lRGF0YS5tYXhJZCAhPT0gTnVtYmVyLlBPU0lUSVZFX0lORklOSVRZKSB7XG4gICAgICBhcmdzLnNpbmNlID0gdGltZWxpbmVEYXRhLm1heElkXG4gICAgfSBlbHNlIGlmIChzaW5jZSAhPT0gbnVsbCkge1xuICAgICAgYXJncy5zaW5jZSA9IHNpbmNlXG4gICAgfVxuICAgIGNvbnN0IHJlc3VsdCA9IGZldGNoTm90aWZpY2F0aW9ucyh7IHN0b3JlLCBhcmdzLCBvbGRlciB9KVxuXG4gICAgLy8gSWYgdGhlcmUncyBhbnkgdW5yZWFkIG5vdGlmaWNhdGlvbnMsIHRyeSBmZXRjaCBub3RpZmljYXRpb25zIHNpbmNlXG4gICAgLy8gdGhlIG5ld2VzdCByZWFkIG5vdGlmaWNhdGlvbiB0byBjaGVjayBpZiBhbnkgb2YgdGhlIHVucmVhZCBub3RpZnNcbiAgICAvLyBoYXZlIGNoYW5nZWQgdGhlaXIgJ3NlZW4nIHN0YXRlIChtYXJrZWQgYXMgcmVhZCBpbiBhbm90aGVyIHNlc3Npb24pLCBzb1xuICAgIC8vIHdlIGNhbiB1cGRhdGUgdGhlIHN0YXRlIGluIHRoaXMgc2Vzc2lvbiB0byBtYXJrIHRoZW0gYXMgcmVhZCBhcyB3ZWxsLlxuICAgIC8vIFRoZSBub3JtYWwgbWF4SWQtY2hlY2sgZG9lcyBub3QgdGVsbCBpZiBvbGRlciBub3RpZmljYXRpb25zIGhhdmUgY2hhbmdlZFxuICAgIGNvbnN0IG5vdGlmaWNhdGlvbnMgPSB0aW1lbGluZURhdGEuZGF0YVxuICAgIGNvbnN0IHJlYWROb3RpZnNJZHMgPSBub3RpZmljYXRpb25zLmZpbHRlcihuID0+IG4uc2VlbikubWFwKG4gPT4gbi5pZClcbiAgICBjb25zdCBudW1VbnNlZW5Ob3RpZnMgPSBub3RpZmljYXRpb25zLmxlbmd0aCAtIHJlYWROb3RpZnNJZHMubGVuZ3RoXG4gICAgaWYgKG51bVVuc2Vlbk5vdGlmcyA+IDAgJiYgcmVhZE5vdGlmc0lkcy5sZW5ndGggPiAwKSB7XG4gICAgICBhcmdzLnNpbmNlID0gTWF0aC5tYXgoLi4ucmVhZE5vdGlmc0lkcylcbiAgICAgIGZldGNoTm90aWZpY2F0aW9ucyh7IHN0b3JlLCBhcmdzLCBvbGRlciB9KVxuICAgIH1cblxuICAgIHJldHVybiByZXN1bHRcbiAgfVxufVxuXG5jb25zdCBmZXRjaE5vdGlmaWNhdGlvbnMgPSAoeyBzdG9yZSwgYXJncywgb2xkZXIgfSkgPT4ge1xuICByZXR1cm4gYXBpU2VydmljZS5mZXRjaFRpbWVsaW5lKGFyZ3MpXG4gICAgLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICBpZiAocmVzcG9uc2UuZXJyb3JzKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgJHtyZXNwb25zZS5zdGF0dXN9ICR7cmVzcG9uc2Uuc3RhdHVzVGV4dH1gKVxuICAgICAgfVxuICAgICAgY29uc3Qgbm90aWZpY2F0aW9ucyA9IHJlc3BvbnNlLmRhdGFcbiAgICAgIHVwZGF0ZSh7IHN0b3JlLCBub3RpZmljYXRpb25zLCBvbGRlciB9KVxuICAgICAgcmV0dXJuIG5vdGlmaWNhdGlvbnNcbiAgICB9KVxuICAgIC5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICAgIHN0b3JlLmRpc3BhdGNoKCdwdXNoR2xvYmFsTm90aWNlJywge1xuICAgICAgICBsZXZlbDogJ2Vycm9yJyxcbiAgICAgICAgbWVzc2FnZUtleTogJ25vdGlmaWNhdGlvbnMuZXJyb3InLFxuICAgICAgICBtZXNzYWdlQXJnczogW2Vycm9yLm1lc3NhZ2VdLFxuICAgICAgICB0aW1lb3V0OiA1MDAwXG4gICAgICB9KVxuICAgICAgY29uc29sZS5lcnJvcihlcnJvcilcbiAgICB9KVxufVxuXG5jb25zdCBzdGFydEZldGNoaW5nID0gKHsgY3JlZGVudGlhbHMsIHN0b3JlIH0pID0+IHtcbiAgLy8gSW5pdGlhbGx5IHRoZXJlJ3Mgc2V0IGZsYWcgdG8gc2lsZW5jZSBhbGwgZGVza3RvcCBub3RpZmljYXRpb25zIHNvXG4gIC8vIHRoYXQgdGhlcmUgd29uJ3Qgc3BhbSBvZiB0aGVtIHdoZW4gdXNlciBqdXN0IG9wZW5lZCB1cCB0aGUgRkUgd2VcbiAgLy8gcmVzZXQgdGhhdCBmbGFnIGFmdGVyIGEgd2hpbGUgdG8gc2hvdyBuZXcgbm90aWZpY2F0aW9ucyBvbmNlIGFnYWluLlxuICBzZXRUaW1lb3V0KCgpID0+IHN0b3JlLmRpc3BhdGNoKCdzZXROb3RpZmljYXRpb25zU2lsZW5jZScsIGZhbHNlKSwgMTAwMDApXG4gIGNvbnN0IGJvdW5kRmV0Y2hBbmRVcGRhdGUgPSAoKSA9PiBmZXRjaEFuZFVwZGF0ZSh7IGNyZWRlbnRpYWxzLCBzdG9yZSB9KVxuICBib3VuZEZldGNoQW5kVXBkYXRlKClcbiAgcmV0dXJuIHByb21pc2VJbnRlcnZhbChib3VuZEZldGNoQW5kVXBkYXRlLCAxMDAwMClcbn1cblxuY29uc3Qgbm90aWZpY2F0aW9uc0ZldGNoZXIgPSB7XG4gIGZldGNoQW5kVXBkYXRlLFxuICBzdGFydEZldGNoaW5nXG59XG5cbmV4cG9ydCBkZWZhdWx0IG5vdGlmaWNhdGlvbnNGZXRjaGVyXG4iXSwibmFtZXMiOlsiYXBpU2VydmljZSIsInByb21pc2VJbnRlcnZhbCIsIm1hc3RvQXBpTm90aWZpY2F0aW9uVHlwZXMiLCJ1cGRhdGUiLCJfcmVmIiwic3RvcmUiLCJub3RpZmljYXRpb25zIiwib2xkZXIiLCJkaXNwYXRjaCIsImZldGNoQW5kVXBkYXRlIiwiX3JlZjIiLCJjcmVkZW50aWFscyIsIl9yZWYyJG9sZGVyIiwic2luY2UiLCJhcmdzIiwiZ2V0dGVycyIsInJvb3RTdGF0ZSIsInN0YXRlIiwidGltZWxpbmVEYXRhIiwic3RhdHVzZXMiLCJoaWRlTXV0ZWRQb3N0cyIsIm1lcmdlZENvbmZpZyIsImluY2x1ZGVUeXBlcyIsIndpdGhNdXRlZCIsInRpbWVsaW5lIiwibWluSWQiLCJOdW1iZXIiLCJQT1NJVElWRV9JTkZJTklUWSIsInVudGlsIiwiZmV0Y2hOb3RpZmljYXRpb25zIiwidW5kZWZpbmVkIiwibWF4SWQiLCJyZXN1bHQiLCJkYXRhIiwicmVhZE5vdGlmc0lkcyIsImZpbHRlciIsIm4iLCJzZWVuIiwibWFwIiwiaWQiLCJudW1VbnNlZW5Ob3RpZnMiLCJsZW5ndGgiLCJNYXRoIiwibWF4IiwiYXBwbHkiLCJfdG9Db25zdW1hYmxlQXJyYXkiLCJfcmVmMyIsImZldGNoVGltZWxpbmUiLCJ0aGVuIiwicmVzcG9uc2UiLCJlcnJvcnMiLCJFcnJvciIsImNvbmNhdCIsInN0YXR1cyIsInN0YXR1c1RleHQiLCJlcnJvciIsImxldmVsIiwibWVzc2FnZUtleSIsIm1lc3NhZ2VBcmdzIiwibWVzc2FnZSIsInRpbWVvdXQiLCJjb25zb2xlIiwic3RhcnRGZXRjaGluZyIsIl9yZWY0Iiwic2V0VGltZW91dCIsImJvdW5kRmV0Y2hBbmRVcGRhdGUiLCJub3RpZmljYXRpb25zRmV0Y2hlciJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/services/notifications_fetcher/notifications_fetcher.service.js\n");
/***/ }),
/***/ "./src/services/offset_finder/offset_finder.service.js":
/*!*************************************************************!*\
!*** ./src/services/offset_finder/offset_finder.service.js ***!
\*************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"findOffset\": () => (/* binding */ findOffset)\n/* harmony export */ });\nvar findOffset = function findOffset(child, parent) {\n var _ref = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {},\n _ref$top = _ref.top,\n top = _ref$top === void 0 ? 0 : _ref$top,\n _ref$left = _ref.left,\n left = _ref$left === void 0 ? 0 : _ref$left;\n var ignorePadding = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;\n var result = {\n top: top + child.offsetTop,\n left: left + child.offsetLeft\n };\n if (!ignorePadding && child !== window) {\n var _findPadding = findPadding(child),\n topPadding = _findPadding.topPadding,\n leftPadding = _findPadding.leftPadding;\n result.top += ignorePadding ? 0 : topPadding;\n result.left += ignorePadding ? 0 : leftPadding;\n }\n if (child.offsetParent && window.getComputedStyle(child.offsetParent).position !== 'sticky' && (parent === window || parent.contains(child.offsetParent) || parent === child.offsetParent)) {\n return findOffset(child.offsetParent, parent, result, false);\n } else {\n if (parent !== window) {\n var _findPadding2 = findPadding(parent),\n _topPadding = _findPadding2.topPadding,\n _leftPadding = _findPadding2.leftPadding;\n result.top += _topPadding;\n result.left += _leftPadding;\n }\n return result;\n }\n};\nvar findPadding = function findPadding(el) {\n var topPaddingStr = window.getComputedStyle(el)['padding-top'];\n var topPadding = Number(topPaddingStr.substring(0, topPaddingStr.length - 2));\n var leftPaddingStr = window.getComputedStyle(el)['padding-left'];\n var leftPadding = Number(leftPaddingStr.substring(0, leftPaddingStr.length - 2));\n return {\n topPadding: topPadding,\n leftPadding: leftPadding\n };\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvb2Zmc2V0X2ZpbmRlci9vZmZzZXRfZmluZGVyLnNlcnZpY2UuanMuanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFPLElBQU1BLFVBQVUsR0FBRyxTQUFiQSxVQUFVQSxDQUFJQyxLQUFLLEVBQUVDLE1BQU0sRUFBdUQ7RUFBQSxJQUFBQyxJQUFBLEdBQUFDLFNBQUEsQ0FBQUMsTUFBQSxRQUFBRCxTQUFBLFFBQUFFLFNBQUEsR0FBQUYsU0FBQSxNQUE3QixDQUFDLENBQUM7SUFBQUcsUUFBQSxHQUFBSixJQUFBLENBQXhCSyxHQUFHO0lBQUhBLEdBQUcsR0FBQUQsUUFBQSxjQUFHLENBQUMsR0FBQUEsUUFBQTtJQUFBRSxTQUFBLEdBQUFOLElBQUEsQ0FBRU8sSUFBSTtJQUFKQSxJQUFJLEdBQUFELFNBQUEsY0FBRyxDQUFDLEdBQUFBLFNBQUE7RUFBQSxJQUFTRSxhQUFhLEdBQUFQLFNBQUEsQ0FBQUMsTUFBQSxRQUFBRCxTQUFBLFFBQUFFLFNBQUEsR0FBQUYsU0FBQSxNQUFHLElBQUk7RUFDeEYsSUFBTVEsTUFBTSxHQUFHO0lBQ2JKLEdBQUcsRUFBRUEsR0FBRyxHQUFHUCxLQUFLLENBQUNZLFNBQVM7SUFDMUJILElBQUksRUFBRUEsSUFBSSxHQUFHVCxLQUFLLENBQUNhO0VBQ3JCLENBQUM7RUFDRCxJQUFJLENBQUNILGFBQWEsSUFBSVYsS0FBSyxLQUFLYyxNQUFNLEVBQUU7SUFDdEMsSUFBQUMsWUFBQSxHQUFvQ0MsV0FBVyxDQUFDaEIsS0FBSyxDQUFDO01BQTlDaUIsVUFBVSxHQUFBRixZQUFBLENBQVZFLFVBQVU7TUFBRUMsV0FBVyxHQUFBSCxZQUFBLENBQVhHLFdBQVc7SUFDL0JQLE1BQU0sQ0FBQ0osR0FBRyxJQUFJRyxhQUFhLEdBQUcsQ0FBQyxHQUFHTyxVQUFVO0lBQzVDTixNQUFNLENBQUNGLElBQUksSUFBSUMsYUFBYSxHQUFHLENBQUMsR0FBR1EsV0FBVztFQUNoRDtFQUVBLElBQUlsQixLQUFLLENBQUNtQixZQUFZLElBQUlMLE1BQU0sQ0FBQ00sZ0JBQWdCLENBQUNwQixLQUFLLENBQUNtQixZQUFZLENBQUMsQ0FBQ0UsUUFBUSxLQUFLLFFBQVEsS0FBS3BCLE1BQU0sS0FBS2EsTUFBTSxJQUFJYixNQUFNLENBQUNxQixRQUFRLENBQUN0QixLQUFLLENBQUNtQixZQUFZLENBQUMsSUFBSWxCLE1BQU0sS0FBS0QsS0FBSyxDQUFDbUIsWUFBWSxDQUFDLEVBQUU7SUFDMUwsT0FBT3BCLFVBQVUsQ0FBQ0MsS0FBSyxDQUFDbUIsWUFBWSxFQUFFbEIsTUFBTSxFQUFFVSxNQUFNLEVBQUUsS0FBSyxDQUFDO0VBQzlELENBQUMsTUFBTTtJQUNMLElBQUlWLE1BQU0sS0FBS2EsTUFBTSxFQUFFO01BQ3JCLElBQUFTLGFBQUEsR0FBb0NQLFdBQVcsQ0FBQ2YsTUFBTSxDQUFDO1FBQS9DZ0IsV0FBVSxHQUFBTSxhQUFBLENBQVZOLFVBQVU7UUFBRUMsWUFBVyxHQUFBSyxhQUFBLENBQVhMLFdBQVc7TUFDL0JQLE1BQU0sQ0FBQ0osR0FBRyxJQUFJVSxXQUFVO01BQ3hCTixNQUFNLENBQUNGLElBQUksSUFBSVMsWUFBVztJQUM1QjtJQUNBLE9BQU9QLE1BQU07RUFDZjtBQUNGLENBQUM7QUFFRCxJQUFNSyxXQUFXLEdBQUcsU0FBZEEsV0FBV0EsQ0FBSVEsRUFBRSxFQUFLO0VBQzFCLElBQU1DLGFBQWEsR0FBR1gsTUFBTSxDQUFDTSxnQkFBZ0IsQ0FBQ0ksRUFBRSxDQUFDLENBQUMsYUFBYSxDQUFDO0VBQ2hFLElBQU1QLFVBQVUsR0FBR1MsTUFBTSxDQUFDRCxhQUFhLENBQUNFLFNBQVMsQ0FBQyxDQUFDLEVBQUVGLGFBQWEsQ0FBQ3JCLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztFQUMvRSxJQUFNd0IsY0FBYyxHQUFHZCxNQUFNLENBQUNNLGdCQUFnQixDQUFDSSxFQUFFLENBQUMsQ0FBQyxjQUFjLENBQUM7RUFDbEUsSUFBTU4sV0FBVyxHQUFHUSxNQUFNLENBQUNFLGNBQWMsQ0FBQ0QsU0FBUyxDQUFDLENBQUMsRUFBRUMsY0FBYyxDQUFDeEIsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO0VBRWxGLE9BQU87SUFBRWEsVUFBVSxFQUFWQSxVQUFVO0lBQUVDLFdBQVcsRUFBWEE7RUFBWSxDQUFDO0FBQ3BDLENBQUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL3NlcnZpY2VzL29mZnNldF9maW5kZXIvb2Zmc2V0X2ZpbmRlci5zZXJ2aWNlLmpzPzhjZDYiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGZpbmRPZmZzZXQgPSAoY2hpbGQsIHBhcmVudCwgeyB0b3AgPSAwLCBsZWZ0ID0gMCB9ID0ge30sIGlnbm9yZVBhZGRpbmcgPSB0cnVlKSA9PiB7XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICB0b3A6IHRvcCArIGNoaWxkLm9mZnNldFRvcCxcbiAgICBsZWZ0OiBsZWZ0ICsgY2hpbGQub2Zmc2V0TGVmdFxuICB9XG4gIGlmICghaWdub3JlUGFkZGluZyAmJiBjaGlsZCAhPT0gd2luZG93KSB7XG4gICAgY29uc3QgeyB0b3BQYWRkaW5nLCBsZWZ0UGFkZGluZyB9ID0gZmluZFBhZGRpbmcoY2hpbGQpXG4gICAgcmVzdWx0LnRvcCArPSBpZ25vcmVQYWRkaW5nID8gMCA6IHRvcFBhZGRpbmdcbiAgICByZXN1bHQubGVmdCArPSBpZ25vcmVQYWRkaW5nID8gMCA6IGxlZnRQYWRkaW5nXG4gIH1cblxuICBpZiAoY2hpbGQub2Zmc2V0UGFyZW50ICYmIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGNoaWxkLm9mZnNldFBhcmVudCkucG9zaXRpb24gIT09ICdzdGlja3knICYmIChwYXJlbnQgPT09IHdpbmRvdyB8fCBwYXJlbnQuY29udGFpbnMoY2hpbGQub2Zmc2V0UGFyZW50KSB8fCBwYXJlbnQgPT09IGNoaWxkLm9mZnNldFBhcmVudCkpIHtcbiAgICByZXR1cm4gZmluZE9mZnNldChjaGlsZC5vZmZzZXRQYXJlbnQsIHBhcmVudCwgcmVzdWx0LCBmYWxzZSlcbiAgfSBlbHNlIHtcbiAgICBpZiAocGFyZW50ICE9PSB3aW5kb3cpIHtcbiAgICAgIGNvbnN0IHsgdG9wUGFkZGluZywgbGVmdFBhZGRpbmcgfSA9IGZpbmRQYWRkaW5nKHBhcmVudClcbiAgICAgIHJlc3VsdC50b3AgKz0gdG9wUGFkZGluZ1xuICAgICAgcmVzdWx0LmxlZnQgKz0gbGVmdFBhZGRpbmdcbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdFxuICB9XG59XG5cbmNvbnN0IGZpbmRQYWRkaW5nID0gKGVsKSA9PiB7XG4gIGNvbnN0IHRvcFBhZGRpbmdTdHIgPSB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShlbClbJ3BhZGRpbmctdG9wJ11cbiAgY29uc3QgdG9wUGFkZGluZyA9IE51bWJlcih0b3BQYWRkaW5nU3RyLnN1YnN0cmluZygwLCB0b3BQYWRkaW5nU3RyLmxlbmd0aCAtIDIpKVxuICBjb25zdCBsZWZ0UGFkZGluZ1N0ciA9IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGVsKVsncGFkZGluZy1sZWZ0J11cbiAgY29uc3QgbGVmdFBhZGRpbmcgPSBOdW1iZXIobGVmdFBhZGRpbmdTdHIuc3Vic3RyaW5nKDAsIGxlZnRQYWRkaW5nU3RyLmxlbmd0aCAtIDIpKVxuXG4gIHJldHVybiB7IHRvcFBhZGRpbmcsIGxlZnRQYWRkaW5nIH1cbn1cbiJdLCJuYW1lcyI6WyJmaW5kT2Zmc2V0IiwiY2hpbGQiLCJwYXJlbnQiLCJfcmVmIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwidW5kZWZpbmVkIiwiX3JlZiR0b3AiLCJ0b3AiLCJfcmVmJGxlZnQiLCJsZWZ0IiwiaWdub3JlUGFkZGluZyIsInJlc3VsdCIsIm9mZnNldFRvcCIsIm9mZnNldExlZnQiLCJ3aW5kb3ciLCJfZmluZFBhZGRpbmciLCJmaW5kUGFkZGluZyIsInRvcFBhZGRpbmciLCJsZWZ0UGFkZGluZyIsIm9mZnNldFBhcmVudCIsImdldENvbXB1dGVkU3R5bGUiLCJwb3NpdGlvbiIsImNvbnRhaW5zIiwiX2ZpbmRQYWRkaW5nMiIsImVsIiwidG9wUGFkZGluZ1N0ciIsIk51bWJlciIsInN1YnN0cmluZyIsImxlZnRQYWRkaW5nU3RyIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/services/offset_finder/offset_finder.service.js\n");
/***/ }),
/***/ "./src/services/promise_interval/promise_interval.js":
/*!***********************************************************!*\
!*** ./src/services/promise_interval/promise_interval.js ***!
\***********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"promiseInterval\": () => (/* binding */ promiseInterval)\n/* harmony export */ });\n// promiseInterval - replacement for setInterval for promises, starts counting\n// the interval only after a promise is done instead of immediately.\n// - promiseCall is a function that returns a promise, it's called the first\n// time after the first interval.\n// - interval is the interval delay in ms.\n\nvar promiseInterval = function promiseInterval(promiseCall, interval) {\n var stopped = false;\n var timeout = null;\n var func = function func() {\n var promise = promiseCall();\n // something unexpected happened and promiseCall did not\n // return a promise, abort the loop.\n if (!(promise && promise[\"finally\"])) {\n console.warn('promiseInterval: promise call did not return a promise, stopping interval.');\n return;\n }\n promise[\"finally\"](function () {\n if (stopped) return;\n timeout = window.setTimeout(func, interval);\n });\n };\n var stopFetcher = function stopFetcher() {\n stopped = true;\n window.clearTimeout(timeout);\n };\n timeout = window.setTimeout(func, interval);\n return {\n stop: stopFetcher\n };\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvcHJvbWlzZV9pbnRlcnZhbC9wcm9taXNlX2ludGVydmFsLmpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVPLElBQU1BLGVBQWUsR0FBRyxTQUFsQkEsZUFBZUEsQ0FBSUMsV0FBVyxFQUFFQyxRQUFRLEVBQUs7RUFDeEQsSUFBSUMsT0FBTyxHQUFHLEtBQUs7RUFDbkIsSUFBSUMsT0FBTyxHQUFHLElBQUk7RUFFbEIsSUFBTUMsSUFBSSxHQUFHLFNBQVBBLElBQUlBLENBQUEsRUFBUztJQUNqQixJQUFNQyxPQUFPLEdBQUdMLFdBQVcsQ0FBQyxDQUFDO0lBQzdCO0lBQ0E7SUFDQSxJQUFJLEVBQUVLLE9BQU8sSUFBSUEsT0FBTyxXQUFRLENBQUMsRUFBRTtNQUNqQ0MsT0FBTyxDQUFDQyxJQUFJLENBQUMsNEVBQTRFLENBQUM7TUFDMUY7SUFDRjtJQUNBRixPQUFPLFdBQVEsQ0FBQyxZQUFNO01BQ3BCLElBQUlILE9BQU8sRUFBRTtNQUNiQyxPQUFPLEdBQUdLLE1BQU0sQ0FBQ0MsVUFBVSxDQUFDTCxJQUFJLEVBQUVILFFBQVEsQ0FBQztJQUM3QyxDQUFDLENBQUM7RUFDSixDQUFDO0VBRUQsSUFBTVMsV0FBVyxHQUFHLFNBQWRBLFdBQVdBLENBQUEsRUFBUztJQUN4QlIsT0FBTyxHQUFHLElBQUk7SUFDZE0sTUFBTSxDQUFDRyxZQUFZLENBQUNSLE9BQU8sQ0FBQztFQUM5QixDQUFDO0VBRURBLE9BQU8sR0FBR0ssTUFBTSxDQUFDQyxVQUFVLENBQUNMLElBQUksRUFBRUgsUUFBUSxDQUFDO0VBRTNDLE9BQU87SUFBRVcsSUFBSSxFQUFFRjtFQUFZLENBQUM7QUFDOUIsQ0FBQyIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvc2VydmljZXMvcHJvbWlzZV9pbnRlcnZhbC9wcm9taXNlX2ludGVydmFsLmpzP2EzOGMiXSwic291cmNlc0NvbnRlbnQiOlsiXG4vLyBwcm9taXNlSW50ZXJ2YWwgLSByZXBsYWNlbWVudCBmb3Igc2V0SW50ZXJ2YWwgZm9yIHByb21pc2VzLCBzdGFydHMgY291bnRpbmdcbi8vIHRoZSBpbnRlcnZhbCBvbmx5IGFmdGVyIGEgcHJvbWlzZSBpcyBkb25lIGluc3RlYWQgb2YgaW1tZWRpYXRlbHkuXG4vLyAtIHByb21pc2VDYWxsIGlzIGEgZnVuY3Rpb24gdGhhdCByZXR1cm5zIGEgcHJvbWlzZSwgaXQncyBjYWxsZWQgdGhlIGZpcnN0XG4vLyB0aW1lIGFmdGVyIHRoZSBmaXJzdCBpbnRlcnZhbC5cbi8vIC0gaW50ZXJ2YWwgaXMgdGhlIGludGVydmFsIGRlbGF5IGluIG1zLlxuXG5leHBvcnQgY29uc3QgcHJvbWlzZUludGVydmFsID0gKHByb21pc2VDYWxsLCBpbnRlcnZhbCkgPT4ge1xuICBsZXQgc3RvcHBlZCA9IGZhbHNlXG4gIGxldCB0aW1lb3V0ID0gbnVsbFxuXG4gIGNvbnN0IGZ1bmMgPSAoKSA9PiB7XG4gICAgY29uc3QgcHJvbWlzZSA9IHByb21pc2VDYWxsKClcbiAgICAvLyBzb21ldGhpbmcgdW5leHBlY3RlZCBoYXBwZW5lZCBhbmQgcHJvbWlzZUNhbGwgZGlkIG5vdFxuICAgIC8vIHJldHVybiBhIHByb21pc2UsIGFib3J0IHRoZSBsb29wLlxuICAgIGlmICghKHByb21pc2UgJiYgcHJvbWlzZS5maW5hbGx5KSkge1xuICAgICAgY29uc29sZS53YXJuKCdwcm9taXNlSW50ZXJ2YWw6IHByb21pc2UgY2FsbCBkaWQgbm90IHJldHVybiBhIHByb21pc2UsIHN0b3BwaW5nIGludGVydmFsLicpXG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgcHJvbWlzZS5maW5hbGx5KCgpID0+IHtcbiAgICAgIGlmIChzdG9wcGVkKSByZXR1cm5cbiAgICAgIHRpbWVvdXQgPSB3aW5kb3cuc2V0VGltZW91dChmdW5jLCBpbnRlcnZhbClcbiAgICB9KVxuICB9XG5cbiAgY29uc3Qgc3RvcEZldGNoZXIgPSAoKSA9PiB7XG4gICAgc3RvcHBlZCA9IHRydWVcbiAgICB3aW5kb3cuY2xlYXJUaW1lb3V0KHRpbWVvdXQpXG4gIH1cblxuICB0aW1lb3V0ID0gd2luZG93LnNldFRpbWVvdXQoZnVuYywgaW50ZXJ2YWwpXG5cbiAgcmV0dXJuIHsgc3RvcDogc3RvcEZldGNoZXIgfVxufVxuIl0sIm5hbWVzIjpbInByb21pc2VJbnRlcnZhbCIsInByb21pc2VDYWxsIiwiaW50ZXJ2YWwiLCJzdG9wcGVkIiwidGltZW91dCIsImZ1bmMiLCJwcm9taXNlIiwiY29uc29sZSIsIndhcm4iLCJ3aW5kb3ciLCJzZXRUaW1lb3V0Iiwic3RvcEZldGNoZXIiLCJjbGVhclRpbWVvdXQiLCJzdG9wIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/services/promise_interval/promise_interval.js\n");
/***/ }),
/***/ "./src/services/push/push.js":
/*!***********************************!*\
!*** ./src/services/push/push.js ***!
\***********************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"registerPushNotifications\": () => (/* binding */ registerPushNotifications),\n/* harmony export */ \"unregisterPushNotifications\": () => (/* binding */ unregisterPushNotifications)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ \"./node_modules/@babel/runtime/helpers/esm/slicedToArray.js\");\n/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ \"./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js\");\n/* harmony import */ var serviceworker_webpack5_plugin_lib_runtime__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! serviceworker-webpack5-plugin/lib/runtime */ \"./node_modules/serviceworker-webpack5-plugin/lib/runtime.js\");\n/* harmony import */ var serviceworker_webpack5_plugin_lib_runtime__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(serviceworker_webpack5_plugin_lib_runtime__WEBPACK_IMPORTED_MODULE_2__);\n\n\n\nfunction urlBase64ToUint8Array(base64String) {\n var padding = '='.repeat((4 - base64String.length % 4) % 4);\n var base64 = (base64String + padding).replace(/-/g, '+').replace(/_/g, '/');\n var rawData = window.atob(base64);\n return Uint8Array.from((0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(rawData).map(function (_char) {\n return _char.charCodeAt(0);\n }));\n}\nfunction isPushSupported() {\n return 'serviceWorker' in navigator && 'PushManager' in window;\n}\nfunction getOrCreateServiceWorker() {\n return serviceworker_webpack5_plugin_lib_runtime__WEBPACK_IMPORTED_MODULE_2___default().register()[\"catch\"](function (err) {\n return console.error('Unable to get or create a service worker.', err);\n });\n}\nfunction subscribePush(registration, isEnabled, vapidPublicKey) {\n if (!isEnabled) return Promise.reject(new Error('Web Push is disabled in config'));\n if (!vapidPublicKey) return Promise.reject(new Error('VAPID public key is not found'));\n var subscribeOptions = {\n userVisibleOnly: true,\n applicationServerKey: urlBase64ToUint8Array(vapidPublicKey)\n };\n return registration.pushManager.subscribe(subscribeOptions);\n}\nfunction unsubscribePush(registration) {\n return registration.pushManager.getSubscription().then(function (subscribtion) {\n if (subscribtion === null) {\n return;\n }\n return subscribtion.unsubscribe();\n });\n}\nfunction deleteSubscriptionFromBackEnd(token) {\n return window.fetch('/api/v1/push/subscription/', {\n method: 'DELETE',\n headers: {\n 'Content-Type': 'application/json',\n Authorization: \"Bearer \".concat(token)\n }\n }).then(function (response) {\n if (!response.ok) throw new Error('Bad status code from server.');\n return response;\n });\n}\nfunction sendSubscriptionToBackEnd(subscription, token, notificationVisibility) {\n return window.fetch('/api/v1/push/subscription/', {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n Authorization: \"Bearer \".concat(token)\n },\n body: JSON.stringify({\n subscription: subscription,\n data: {\n alerts: {\n follow: notificationVisibility.follows,\n favourite: notificationVisibility.likes,\n mention: notificationVisibility.mentions,\n reblog: notificationVisibility.repeats,\n move: notificationVisibility.moves\n }\n }\n })\n }).then(function (response) {\n if (!response.ok) throw new Error('Bad status code from server.');\n return response.json();\n }).then(function (responseData) {\n if (!responseData.id) throw new Error('Bad response from server.');\n return responseData;\n });\n}\nfunction registerPushNotifications(isEnabled, vapidPublicKey, token, notificationVisibility) {\n if (isPushSupported()) {\n getOrCreateServiceWorker().then(function (registration) {\n return subscribePush(registration, isEnabled, vapidPublicKey);\n }).then(function (subscription) {\n return sendSubscriptionToBackEnd(subscription, token, notificationVisibility);\n })[\"catch\"](function (e) {\n return console.warn(\"Failed to setup Web Push Notifications: \".concat(e.message));\n });\n }\n}\nfunction unregisterPushNotifications(token) {\n if (isPushSupported()) {\n Promise.all([deleteSubscriptionFromBackEnd(token), getOrCreateServiceWorker().then(function (registration) {\n return unsubscribePush(registration).then(function (result) {\n return [registration, result];\n });\n }).then(function (_ref) {\n var _ref2 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(_ref, 2),\n registration = _ref2[0],\n unsubResult = _ref2[1];\n if (!unsubResult) {\n console.warn('Push subscription cancellation wasn\\'t successful, killing SW anyway...');\n }\n return registration.unregister().then(function (result) {\n if (!result) {\n console.warn('Failed to kill SW');\n }\n });\n })])[\"catch\"](function (e) {\n return console.warn(\"Failed to disable Web Push Notifications: \".concat(e.message));\n });\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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LENBQUMsbUJBQW1CLENBQUM7UUFDbkM7TUFDRixDQUFDLENBQUM7SUFDSixDQUFDLENBQUMsQ0FDTCxDQUFDLFNBQU0sQ0FBQyxVQUFDRCxDQUFDO01BQUEsT0FBS2xELE9BQU8sQ0FBQ21ELElBQUksOENBQUExQixNQUFBLENBQThDeUIsQ0FBQyxDQUFDRSxPQUFPLENBQUUsQ0FBQztJQUFBLEVBQUM7RUFDekY7QUFDRiIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvc2VydmljZXMvcHVzaC9wdXNoLmpzP2UwNjciXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHJ1bnRpbWUgZnJvbSAnc2VydmljZXdvcmtlci13ZWJwYWNrNS1wbHVnaW4vbGliL3J1bnRpbWUnXG5cbmZ1bmN0aW9uIHVybEJhc2U2NFRvVWludDhBcnJheSAoYmFzZTY0U3RyaW5nKSB7XG4gIGNvbnN0IHBhZGRpbmcgPSAnPScucmVwZWF0KCg0IC0gYmFzZTY0U3RyaW5nLmxlbmd0aCAlIDQpICUgNClcbiAgY29uc3QgYmFzZTY0ID0gKGJhc2U2NFN0cmluZyArIHBhZGRpbmcpXG4gICAgLnJlcGxhY2UoLy0vZywgJysnKVxuICAgIC5yZXBsYWNlKC9fL2csICcvJylcblxuICBjb25zdCByYXdEYXRhID0gd2luZG93LmF0b2IoYmFzZTY0KVxuICByZXR1cm4gVWludDhBcnJheS5mcm9tKFsuLi5yYXdEYXRhXS5tYXAoKGNoYXIpID0+IGNoYXIuY2hhckNvZGVBdCgwKSkpXG59XG5cbmZ1bmN0aW9uIGlzUHVzaFN1cHBvcnRlZCAoKSB7XG4gIHJldHVybiAnc2VydmljZVdvcmtlcicgaW4gbmF2aWdhdG9yICYmICdQdXNoTWFuYWdlcicgaW4gd2luZG93XG59XG5cbmZ1bmN0aW9uIGdldE9yQ3JlYXRlU2VydmljZVdvcmtlciAoKSB7XG4gIHJldHVybiBydW50aW1lLnJlZ2lzdGVyKClcbiAgICAuY2F0Y2goKGVycikgPT4gY29uc29sZS5lcnJvcignVW5hYmxlIHRvIGdldCBvciBjcmVhdGUgYSBzZXJ2aWNlIHdvcmtlci4nLCBlcnIpKVxufVxuXG5mdW5jdGlvbiBzdWJzY3JpYmVQdXNoIChyZWdpc3RyYXRpb24sIGlzRW5hYmxlZCwgdmFwaWRQdWJsaWNLZXkpIHtcbiAgaWYgKCFpc0VuYWJsZWQpIHJldHVybiBQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoJ1dlYiBQdXNoIGlzIGRpc2FibGVkIGluIGNvbmZpZycpKVxuICBpZiAoIXZhcGlkUHVibGljS2V5KSByZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IEVycm9yKCdWQVBJRCBwdWJsaWMga2V5IGlzIG5vdCBmb3VuZCcpKVxuXG4gIGNvbnN0IHN1YnNjcmliZU9wdGlvbnMgPSB7XG4gICAgdXNlclZpc2libGVPbmx5OiB0cnVlLFxuICAgIGFwcGxpY2F0aW9uU2VydmVyS2V5OiB1cmxCYXNlNjRUb1VpbnQ4QXJyYXkodmFwaWRQdWJsaWNLZXkpXG4gIH1cbiAgcmV0dXJuIHJlZ2lzdHJhdGlvbi5wdXNoTWFuYWdlci5zdWJzY3JpYmUoc3Vic2NyaWJlT3B0aW9ucylcbn1cblxuZnVuY3Rpb24gdW5zdWJzY3JpYmVQdXNoIChyZWdpc3RyYXRpb24pIHtcbiAgcmV0dXJuIHJlZ2lzdHJhdGlvbi5wdXNoTWFuYWdlci5nZXRTdWJzY3JpcHRpb24oKVxuICAgIC50aGVuKChzdWJzY3JpYnRpb24pID0+IHtcbiAgICAgIGlmIChzdWJzY3JpYnRpb24gPT09IG51bGwpIHsgcmV0dXJuIH1cbiAgICAgIHJldHVybiBzdWJzY3JpYnRpb24udW5zdWJzY3JpYmUoKVxuICAgIH0pXG59XG5cbmZ1bmN0aW9uIGRlbGV0ZVN1YnNjcmlwdGlvbkZyb21CYWNrRW5kICh0b2tlbikge1xuICByZXR1cm4gd2luZG93LmZldGNoKCcvYXBpL3YxL3B1c2gvc3Vic2NyaXB0aW9uLycsIHtcbiAgICBtZXRob2Q6ICdERUxFVEUnLFxuICAgIGhlYWRlcnM6IHtcbiAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICBBdXRob3JpemF0aW9uOiBgQmVhcmVyICR7dG9rZW59YFxuICAgIH1cbiAgfSkudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICBpZiAoIXJlc3BvbnNlLm9rKSB0aHJvdyBuZXcgRXJyb3IoJ0JhZCBzdGF0dXMgY29kZSBmcm9tIHNlcnZlci4nKVxuICAgIHJldHVybiByZXNwb25zZVxuICB9KVxufVxuXG5mdW5jdGlvbiBzZW5kU3Vic2NyaXB0aW9uVG9CYWNrRW5kIChzdWJzY3JpcHRpb24sIHRva2VuLCBub3RpZmljYXRpb25WaXNpYmlsaXR5KSB7XG4gIHJldHVybiB3aW5kb3cuZmV0Y2goJy9hcGkvdjEvcHVzaC9zdWJzY3JpcHRpb24vJywge1xuICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgIGhlYWRlcnM6IHtcbiAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICBBdXRob3JpemF0aW9uOiBgQmVhcmVyICR7dG9rZW59YFxuICAgIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgc3Vic2NyaXB0aW9uLFxuICAgICAgZGF0YToge1xuICAgICAgICBhbGVydHM6IHtcbiAgICAgICAgICBmb2xsb3c6IG5vdGlmaWNhdGlvblZpc2liaWxpdHkuZm9sbG93cyxcbiAgICAgICAgICBmYXZvdXJpdGU6IG5vdGlmaWNhdGlvblZpc2liaWxpdHkubGlrZXMsXG4gICAgICAgICAgbWVudGlvbjogbm90aWZpY2F0aW9uVmlzaWJpbGl0eS5tZW50aW9ucyxcbiAgICAgICAgICByZWJsb2c6IG5vdGlmaWNhdGlvblZpc2liaWxpdHkucmVwZWF0cyxcbiAgICAgICAgICBtb3ZlOiBub3RpZmljYXRpb25WaXNpYmlsaXR5Lm1vdmVzXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KVxuICB9KS50aGVuKChyZXNwb25zZSkgPT4ge1xuICAgIGlmICghcmVzcG9uc2Uub2spIHRocm93IG5ldyBFcnJvcignQmFkIHN0YXR1cyBjb2RlIGZyb20gc2VydmVyLicpXG4gICAgcmV0dXJuIHJlc3BvbnNlLmpzb24oKVxuICB9KS50aGVuKChyZXNwb25zZURhdGEpID0+IHtcbiAgICBpZiAoIXJlc3BvbnNlRGF0YS5pZCkgdGhyb3cgbmV3IEVycm9yKCdCYWQgcmVzcG9uc2UgZnJvbSBzZXJ2ZXIuJylcbiAgICByZXR1cm4gcmVzcG9uc2VEYXRhXG4gIH0pXG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZWdpc3RlclB1c2hOb3RpZmljYXRpb25zIChpc0VuYWJsZWQsIHZhcGlkUHVibGljS2V5LCB0b2tlbiwgbm90aWZpY2F0aW9uVmlzaWJpbGl0eSkge1xuICBpZiAoaXNQdXNoU3VwcG9ydGVkKCkpIHtcbiAgICBnZXRPckNyZWF0ZVNlcnZpY2VXb3JrZXIoKVxuICAgICAgLnRoZW4oKHJlZ2lzdHJhdGlvbikgPT4gc3Vic2NyaWJlUHVzaChyZWdpc3RyYXRpb24sIGlzRW5hYmxlZCwgdmFwaWRQdWJsaWNLZXkpKVxuICAgICAgLnRoZW4oKHN1YnNjcmlwdGlvbikgPT4gc2VuZFN1YnNjcmlwdGlvblRvQmFja0VuZChzdWJzY3JpcHRpb24sIHRva2VuLCBub3RpZmljYXRpb25WaXNpYmlsaXR5KSlcbiAgICAgIC5jYXRjaCgoZSkgPT4gY29uc29sZS53YXJuKGBGYWlsZWQgdG8gc2V0dXAgV2ViIFB1c2ggTm90aWZpY2F0aW9uczogJHtlLm1lc3NhZ2V9YCkpXG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHVucmVnaXN0ZXJQdXNoTm90aWZpY2F0aW9ucyAodG9rZW4pIHtcbiAgaWYgKGlzUHVzaFN1cHBvcnRlZCgpKSB7XG4gICAgUHJvbWlzZS5hbGwoW1xuICAgICAgZGVsZXRlU3Vic2NyaXB0aW9uRnJvbUJhY2tFbmQodG9rZW4pLFxuICAgICAgZ2V0T3JDcmVhdGVTZXJ2aWNlV29ya2VyKClcbiAgICAgICAgLnRoZW4oKHJlZ2lzdHJhdGlvbikgPT4ge1xuICAgICAgICAgIHJldHVybiB1bnN1YnNjcmliZVB1c2gocmVnaXN0cmF0aW9uKS50aGVuKChyZXN1bHQpID0+IFtyZWdpc3RyYXRpb24sIHJlc3VsdF0pXG4gICAgICAgIH0pXG4gICAgICAgIC50aGVuKChbcmVnaXN0cmF0aW9uLCB1bnN1YlJlc3VsdF0pID0+IHtcbiAgICAgICAgICBpZiAoIXVuc3ViUmVzdWx0KSB7XG4gICAgICAgICAgICBjb25zb2xlLndhcm4oJ1B1c2ggc3Vic2NyaXB0aW9uIGNhbmNlbGxhdGlvbiB3YXNuXFwndCBzdWNjZXNzZnVsLCBraWxsaW5nIFNXIGFueXdheS4uLicpXG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiByZWdpc3RyYXRpb24udW5yZWdpc3RlcigpLnRoZW4oKHJlc3VsdCkgPT4ge1xuICAgICAgICAgICAgaWYgKCFyZXN1bHQpIHtcbiAgICAgICAgICAgICAgY29uc29sZS53YXJuKCdGYWlsZWQgdG8ga2lsbCBTVycpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSlcbiAgICAgICAgfSlcbiAgICBdKS5jYXRjaCgoZSkgPT4gY29uc29sZS53YXJuKGBGYWlsZWQgdG8gZGlzYWJsZSBXZWIgUHVzaCBOb3RpZmljYXRpb25zOiAke2UubWVzc2FnZX1gKSlcbiAgfVxufVxuIl0sIm5hbWVzIjpbInJ1bnRpbWUiLCJ1cmxCYXNlNjRUb1VpbnQ4QXJyYXkiLCJiYXNlNjRTdHJpbmciLCJwYWRkaW5nIiwicmVwZWF0IiwibGVuZ3RoIiwiYmFzZTY0IiwicmVwbGFjZSIsInJhd0RhdGEiLCJ3aW5kb3ciLCJhdG9iIiwiVWludDhBcnJheSIsImZyb20iLCJfdG9Db25zdW1hYmxlQXJyYXkiLCJtYXAiLCJjaGFyIiwiY2hhckNvZGVBdCIsImlzUHVzaFN1cHBvcnRlZCIsIm5hdmlnYXRvciIsImdldE9yQ3JlYXRlU2VydmljZVdvcmtlciIsInJlZ2lzdGVyIiwiZXJyIiwiY29uc29sZSIsImVycm9yIiwic3Vic2NyaWJlUHVzaCIsInJlZ2lzdHJhdGlvbiIsImlzRW5hYmxlZCIsInZhcGlkUHVibGljS2V5IiwiUHJvbWlzZSIsInJlamVjdCIsIkVycm9yIiwic3Vic2NyaWJlT3B0aW9ucyIsInVzZXJWaXNpYmxlT25seSIsImFwcGxpY2F0aW9uU2VydmVyS2V5IiwicHVzaE1hbmFnZXIiLCJzdWJzY3JpYmUiLCJ1bnN1YnNjcmliZVB1c2giLCJnZXRTdWJzY3JpcHRpb24iLCJ0aGVuIiwic3Vic2NyaWJ0aW9uIiwidW5zdWJzY3JpYmUiLCJkZWxldGVTdWJzY3JpcHRpb25Gcm9tQmFja0VuZCIsInRva2VuIiwiZmV0Y2giLCJtZXRob2QiLCJoZWFkZXJzIiwiQXV0aG9yaXphdGlvbiIsImNvbmNhdCIsInJlc3BvbnNlIiwib2siLCJzZW5kU3Vic2NyaXB0aW9uVG9CYWNrRW5kIiwic3Vic2NyaXB0aW9uIiwibm90aWZpY2F0aW9uVmlzaWJpbGl0eSIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiZGF0YSIsImFsZXJ0cyIsImZvbGxvdyIsImZvbGxvd3MiLCJmYXZvdXJpdGUiLCJsaWtlcyIsIm1lbnRpb24iLCJtZW50aW9ucyIsInJlYmxvZyIsInJlcGVhdHMiLCJtb3ZlIiwibW92ZXMiLCJqc29uIiwicmVzcG9uc2VEYXRhIiwiaWQiLCJyZWdpc3RlclB1c2hOb3RpZmljYXRpb25zIiwiZSIsIndhcm4iLCJtZXNzYWdlIiwidW5yZWdpc3RlclB1c2hOb3RpZmljYXRpb25zIiwiYWxsIiwicmVzdWx0IiwiX3JlZiIsIl9yZWYyIiwiX3NsaWNlZFRvQXJyYXkiLCJ1bnN1YlJlc3VsdCIsInVucmVnaXN0ZXIiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/services/push/push.js\n");
/***/ }),
/***/ "./src/services/random_seed/random_seed.service.js":
/*!*********************************************************!*\
!*** ./src/services/random_seed/random_seed.service.js ***!
\*********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\nvar genRandomSeed = function genRandomSeed() {\n return \"\".concat(Math.random()).replace('.', '-');\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (genRandomSeed);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvcmFuZG9tX3NlZWQvcmFuZG9tX3NlZWQuc2VydmljZS5qcy5qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUEsSUFBTUEsYUFBYSxHQUFHLFNBQWhCQSxhQUFhQSxDQUFBO0VBQUEsT0FBUyxHQUFBQyxNQUFBLENBQUdDLElBQUksQ0FBQ0MsTUFBTSxDQUFDLENBQUMsRUFBR0MsT0FBTyxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUM7QUFBQTtBQUVoRSxpRUFBZUosYUFBYSIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvc2VydmljZXMvcmFuZG9tX3NlZWQvcmFuZG9tX3NlZWQuc2VydmljZS5qcz9jY2I5Il0sInNvdXJjZXNDb250ZW50IjpbImNvbnN0IGdlblJhbmRvbVNlZWQgPSAoKSA9PiBgJHtNYXRoLnJhbmRvbSgpfWAucmVwbGFjZSgnLicsICctJylcblxuZXhwb3J0IGRlZmF1bHQgZ2VuUmFuZG9tU2VlZFxuIl0sIm5hbWVzIjpbImdlblJhbmRvbVNlZWQiLCJjb25jYXQiLCJNYXRoIiwicmFuZG9tIiwicmVwbGFjZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/services/random_seed/random_seed.service.js\n");
/***/ }),
/***/ "./src/services/ruffle_service/ruffle_service.js":
/*!*******************************************************!*\
!*** ./src/services/ruffle_service/ruffle_service.js ***!
\*******************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\nvar createRuffleService = function createRuffleService() {\n var ruffleInstance = null;\n var getRuffle = function getRuffle() {\n return new Promise(function (resolve, reject) {\n if (ruffleInstance) {\n resolve(ruffleInstance);\n return;\n }\n // Ruffle needs these to be set before it's loaded\n // https://github.com/ruffle-rs/ruffle/issues/3952\n window.RufflePlayer = {};\n window.RufflePlayer.config = {\n polyfills: false,\n publicPath: '/static/ruffle'\n };\n\n // Currently it's seems like a better way of loading ruffle\n // because it needs the wasm publically accessible, but it needs path to it\n // and filename of wasm seems to be pseudo-randomly generated (is it a hash?)\n var script = document.createElement('script');\n // see webpack config, using CopyPlugin to copy it from node_modules\n // provided via ruffle-mirror\n script.src = '/static/ruffle/ruffle.js';\n script.type = 'text/javascript';\n script.onerror = function (e) {\n reject(e);\n };\n script.onabort = function (e) {\n reject(e);\n };\n script.oncancel = function (e) {\n reject(e);\n };\n script.onload = function () {\n ruffleInstance = window.RufflePlayer;\n resolve(ruffleInstance);\n };\n document.body.appendChild(script);\n });\n };\n return {\n getRuffle: getRuffle\n };\n};\nvar RuffleService = createRuffleService();\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (RuffleService);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvcnVmZmxlX3NlcnZpY2UvcnVmZmxlX3NlcnZpY2UuanMuanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBLElBQU1BLG1CQUFtQixHQUFHLFNBQXRCQSxtQkFBbUJBLENBQUEsRUFBUztFQUNoQyxJQUFJQyxjQUFjLEdBQUcsSUFBSTtFQUV6QixJQUFNQyxTQUFTLEdBQUcsU0FBWkEsU0FBU0EsQ0FBQTtJQUFBLE9BQVMsSUFBSUMsT0FBTyxDQUFDLFVBQUNDLE9BQU8sRUFBRUMsTUFBTSxFQUFLO01BQ3ZELElBQUlKLGNBQWMsRUFBRTtRQUNsQkcsT0FBTyxDQUFDSCxjQUFjLENBQUM7UUFDdkI7TUFDRjtNQUNBO01BQ0E7TUFDQUssTUFBTSxDQUFDQyxZQUFZLEdBQUcsQ0FBQyxDQUFDO01BQ3hCRCxNQUFNLENBQUNDLFlBQVksQ0FBQ0MsTUFBTSxHQUFHO1FBQzNCQyxTQUFTLEVBQUUsS0FBSztRQUNoQkMsVUFBVSxFQUFFO01BQ2QsQ0FBQzs7TUFFRDtNQUNBO01BQ0E7TUFDQSxJQUFNQyxNQUFNLEdBQUdDLFFBQVEsQ0FBQ0MsYUFBYSxDQUFDLFFBQVEsQ0FBQztNQUMvQztNQUNBO01BQ0FGLE1BQU0sQ0FBQ0csR0FBRyxHQUFHLDBCQUEwQjtNQUN2Q0gsTUFBTSxDQUFDSSxJQUFJLEdBQUcsaUJBQWlCO01BQy9CSixNQUFNLENBQUNLLE9BQU8sR0FBRyxVQUFDQyxDQUFDLEVBQUs7UUFBRVosTUFBTSxDQUFDWSxDQUFDLENBQUM7TUFBQyxDQUFDO01BQ3JDTixNQUFNLENBQUNPLE9BQU8sR0FBRyxVQUFDRCxDQUFDLEVBQUs7UUFBRVosTUFBTSxDQUFDWSxDQUFDLENBQUM7TUFBQyxDQUFDO01BQ3JDTixNQUFNLENBQUNRLFFBQVEsR0FBRyxVQUFDRixDQUFDLEVBQUs7UUFBRVosTUFBTSxDQUFDWSxDQUFDLENBQUM7TUFBQyxDQUFDO01BQ3RDTixNQUFNLENBQUNTLE1BQU0sR0FBRyxZQUFNO1FBQ3BCbkIsY0FBYyxHQUFHSyxNQUFNLENBQUNDLFlBQVk7UUFDcENILE9BQU8sQ0FBQ0gsY0FBYyxDQUFDO01BQ3pCLENBQUM7TUFDRFcsUUFBUSxDQUFDUyxJQUFJLENBQUNDLFdBQVcsQ0FBQ1gsTUFBTSxDQUFDO0lBQ25DLENBQUMsQ0FBQztFQUFBO0VBRUYsT0FBTztJQUFFVCxTQUFTLEVBQVRBO0VBQVUsQ0FBQztBQUN0QixDQUFDO0FBRUQsSUFBTXFCLGFBQWEsR0FBR3ZCLG1CQUFtQixDQUFDLENBQUM7QUFFM0MsaUVBQWV1QixhQUFhIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9zZXJ2aWNlcy9ydWZmbGVfc2VydmljZS9ydWZmbGVfc2VydmljZS5qcz9jZTVjIl0sInNvdXJjZXNDb250ZW50IjpbImNvbnN0IGNyZWF0ZVJ1ZmZsZVNlcnZpY2UgPSAoKSA9PiB7XG4gIGxldCBydWZmbGVJbnN0YW5jZSA9IG51bGxcblxuICBjb25zdCBnZXRSdWZmbGUgPSAoKSA9PiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgaWYgKHJ1ZmZsZUluc3RhbmNlKSB7XG4gICAgICByZXNvbHZlKHJ1ZmZsZUluc3RhbmNlKVxuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIC8vIFJ1ZmZsZSBuZWVkcyB0aGVzZSB0byBiZSBzZXQgYmVmb3JlIGl0J3MgbG9hZGVkXG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3J1ZmZsZS1ycy9ydWZmbGUvaXNzdWVzLzM5NTJcbiAgICB3aW5kb3cuUnVmZmxlUGxheWVyID0ge31cbiAgICB3aW5kb3cuUnVmZmxlUGxheWVyLmNvbmZpZyA9IHtcbiAgICAgIHBvbHlmaWxsczogZmFsc2UsXG4gICAgICBwdWJsaWNQYXRoOiAnL3N0YXRpYy9ydWZmbGUnXG4gICAgfVxuXG4gICAgLy8gQ3VycmVudGx5IGl0J3Mgc2VlbXMgbGlrZSBhIGJldHRlciB3YXkgb2YgbG9hZGluZyBydWZmbGVcbiAgICAvLyBiZWNhdXNlIGl0IG5lZWRzIHRoZSB3YXNtIHB1YmxpY2FsbHkgYWNjZXNzaWJsZSwgYnV0IGl0IG5lZWRzIHBhdGggdG8gaXRcbiAgICAvLyBhbmQgZmlsZW5hbWUgb2Ygd2FzbSBzZWVtcyB0byBiZSBwc2V1ZG8tcmFuZG9tbHkgZ2VuZXJhdGVkIChpcyBpdCBhIGhhc2g/KVxuICAgIGNvbnN0IHNjcmlwdCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpXG4gICAgLy8gc2VlIHdlYnBhY2sgY29uZmlnLCB1c2luZyBDb3B5UGx1Z2luIHRvIGNvcHkgaXQgZnJvbSBub2RlX21vZHVsZXNcbiAgICAvLyBwcm92aWRlZCB2aWEgcnVmZmxlLW1pcnJvclxuICAgIHNjcmlwdC5zcmMgPSAnL3N0YXRpYy9ydWZmbGUvcnVmZmxlLmpzJ1xuICAgIHNjcmlwdC50eXBlID0gJ3RleHQvamF2YXNjcmlwdCdcbiAgICBzY3JpcHQub25lcnJvciA9IChlKSA9PiB7IHJlamVjdChlKSB9XG4gICAgc2NyaXB0Lm9uYWJvcnQgPSAoZSkgPT4geyByZWplY3QoZSkgfVxuICAgIHNjcmlwdC5vbmNhbmNlbCA9IChlKSA9PiB7IHJlamVjdChlKSB9XG4gICAgc2NyaXB0Lm9ubG9hZCA9ICgpID0+IHtcbiAgICAgIHJ1ZmZsZUluc3RhbmNlID0gd2luZG93LlJ1ZmZsZVBsYXllclxuICAgICAgcmVzb2x2ZShydWZmbGVJbnN0YW5jZSlcbiAgICB9XG4gICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChzY3JpcHQpXG4gIH0pXG5cbiAgcmV0dXJuIHsgZ2V0UnVmZmxlIH1cbn1cblxuY29uc3QgUnVmZmxlU2VydmljZSA9IGNyZWF0ZVJ1ZmZsZVNlcnZpY2UoKVxuXG5leHBvcnQgZGVmYXVsdCBSdWZmbGVTZXJ2aWNlXG4iXSwibmFtZXMiOlsiY3JlYXRlUnVmZmxlU2VydmljZSIsInJ1ZmZsZUluc3RhbmNlIiwiZ2V0UnVmZmxlIiwiUHJvbWlzZSIsInJlc29sdmUiLCJyZWplY3QiLCJ3aW5kb3ciLCJSdWZmbGVQbGF5ZXIiLCJjb25maWciLCJwb2x5ZmlsbHMiLCJwdWJsaWNQYXRoIiwic2NyaXB0IiwiZG9jdW1lbnQiLCJjcmVhdGVFbGVtZW50Iiwic3JjIiwidHlwZSIsIm9uZXJyb3IiLCJlIiwib25hYm9ydCIsIm9uY2FuY2VsIiwib25sb2FkIiwiYm9keSIsImFwcGVuZENoaWxkIiwiUnVmZmxlU2VydmljZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/services/ruffle_service/ruffle_service.js\n");
/***/ }),
/***/ "./src/services/status_parser/status_parser.js":
/*!*****************************************************!*\
!*** ./src/services/status_parser/status_parser.js ***!
\*****************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"muteWordHits\": () => (/* binding */ muteWordHits)\n/* harmony export */ });\n/* harmony import */ var lodash_filter__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/filter */ \"./node_modules/lodash/filter.js\");\n/* harmony import */ var lodash_filter__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_filter__WEBPACK_IMPORTED_MODULE_0__);\n\nvar muteWordHits = function muteWordHits(status, muteWords) {\n var statusText = status.text.toLowerCase();\n var statusSummary = status.summary.toLowerCase();\n var hits = lodash_filter__WEBPACK_IMPORTED_MODULE_0___default()(muteWords, function (muteWord) {\n return statusText.includes(muteWord.toLowerCase()) || statusSummary.includes(muteWord.toLowerCase());\n });\n return hits;\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvc3RhdHVzX3BhcnNlci9zdGF0dXNfcGFyc2VyLmpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFFTyxJQUFNQSxZQUFZLEdBQUcsU0FBZkEsWUFBWUEsQ0FBSUMsTUFBTSxFQUFFQyxTQUFTLEVBQUs7RUFDakQsSUFBTUMsVUFBVSxHQUFHRixNQUFNLENBQUNHLElBQUksQ0FBQ0MsV0FBVyxDQUFDLENBQUM7RUFDNUMsSUFBTUMsYUFBYSxHQUFHTCxNQUFNLENBQUNNLE9BQU8sQ0FBQ0YsV0FBVyxDQUFDLENBQUM7RUFDbEQsSUFBTUcsSUFBSSxHQUFHQyxvREFBQSxDQUFPUCxTQUFTLEVBQUUsVUFBQ1EsUUFBUSxFQUFLO0lBQzNDLE9BQU9QLFVBQVUsQ0FBQ1EsUUFBUSxDQUFDRCxRQUFRLENBQUNMLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSUMsYUFBYSxDQUFDSyxRQUFRLENBQUNELFFBQVEsQ0FBQ0wsV0FBVyxDQUFDLENBQUMsQ0FBQztFQUN0RyxDQUFDLENBQUM7RUFFRixPQUFPRyxJQUFJO0FBQ2IsQ0FBQyIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvc2VydmljZXMvc3RhdHVzX3BhcnNlci9zdGF0dXNfcGFyc2VyLmpzPzRkN2MiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZmlsdGVyIH0gZnJvbSAnbG9kYXNoJ1xuXG5leHBvcnQgY29uc3QgbXV0ZVdvcmRIaXRzID0gKHN0YXR1cywgbXV0ZVdvcmRzKSA9PiB7XG4gIGNvbnN0IHN0YXR1c1RleHQgPSBzdGF0dXMudGV4dC50b0xvd2VyQ2FzZSgpXG4gIGNvbnN0IHN0YXR1c1N1bW1hcnkgPSBzdGF0dXMuc3VtbWFyeS50b0xvd2VyQ2FzZSgpXG4gIGNvbnN0IGhpdHMgPSBmaWx0ZXIobXV0ZVdvcmRzLCAobXV0ZVdvcmQpID0+IHtcbiAgICByZXR1cm4gc3RhdHVzVGV4dC5pbmNsdWRlcyhtdXRlV29yZC50b0xvd2VyQ2FzZSgpKSB8fCBzdGF0dXNTdW1tYXJ5LmluY2x1ZGVzKG11dGVXb3JkLnRvTG93ZXJDYXNlKCkpXG4gIH0pXG5cbiAgcmV0dXJuIGhpdHNcbn1cbiJdLCJuYW1lcyI6WyJtdXRlV29yZEhpdHMiLCJzdGF0dXMiLCJtdXRlV29yZHMiLCJzdGF0dXNUZXh0IiwidGV4dCIsInRvTG93ZXJDYXNlIiwic3RhdHVzU3VtbWFyeSIsInN1bW1hcnkiLCJoaXRzIiwiX2ZpbHRlciIsIm11dGVXb3JkIiwiaW5jbHVkZXMiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/services/status_parser/status_parser.js\n");
/***/ }),
/***/ "./src/services/status_poster/status_poster.service.js":
/*!*************************************************************!*\
!*** ./src/services/status_poster/status_poster.service.js ***!
\*************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var lodash_map__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/map */ \"./node_modules/lodash/map.js\");\n/* harmony import */ var lodash_map__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_map__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _api_api_service_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../api/api.service.js */ \"./src/services/api/api.service.js\");\n\n\nvar postStatus = function postStatus(_ref) {\n var store = _ref.store,\n status = _ref.status,\n spoilerText = _ref.spoilerText,\n visibility = _ref.visibility,\n sensitive = _ref.sensitive,\n poll = _ref.poll,\n _ref$media = _ref.media,\n media = _ref$media === void 0 ? [] : _ref$media,\n _ref$inReplyToStatusI = _ref.inReplyToStatusId,\n inReplyToStatusId = _ref$inReplyToStatusI === void 0 ? undefined : _ref$inReplyToStatusI,\n _ref$quoteId = _ref.quoteId,\n quoteId = _ref$quoteId === void 0 ? undefined : _ref$quoteId,\n _ref$contentType = _ref.contentType,\n contentType = _ref$contentType === void 0 ? 'text/plain' : _ref$contentType,\n _ref$preview = _ref.preview,\n preview = _ref$preview === void 0 ? false : _ref$preview,\n _ref$idempotencyKey = _ref.idempotencyKey,\n idempotencyKey = _ref$idempotencyKey === void 0 ? '' : _ref$idempotencyKey;\n var mediaIds = lodash_map__WEBPACK_IMPORTED_MODULE_0___default()(media, 'id');\n return _api_api_service_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].postStatus({\n credentials: store.state.users.currentUser.credentials,\n status: status,\n spoilerText: spoilerText,\n visibility: visibility,\n sensitive: sensitive,\n mediaIds: mediaIds,\n inReplyToStatusId: inReplyToStatusId,\n quoteId: quoteId,\n contentType: contentType,\n poll: poll,\n preview: preview,\n idempotencyKey: idempotencyKey\n }).then(function (data) {\n if (!data.error && !preview) {\n store.dispatch('addNewStatuses', {\n statuses: [data],\n timeline: 'friends',\n showImmediately: true,\n noIdUpdate: true // To prevent missing notices on next pull.\n });\n }\n\n return data;\n })[\"catch\"](function (err) {\n return {\n error: err.message\n };\n });\n};\nvar editStatus = function editStatus(_ref2) {\n var store = _ref2.store,\n statusId = _ref2.statusId,\n status = _ref2.status,\n spoilerText = _ref2.spoilerText,\n sensitive = _ref2.sensitive,\n poll = _ref2.poll,\n _ref2$media = _ref2.media,\n media = _ref2$media === void 0 ? [] : _ref2$media,\n _ref2$contentType = _ref2.contentType,\n contentType = _ref2$contentType === void 0 ? 'text/plain' : _ref2$contentType;\n var mediaIds = lodash_map__WEBPACK_IMPORTED_MODULE_0___default()(media, 'id');\n return _api_api_service_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].editStatus({\n id: statusId,\n credentials: store.state.users.currentUser.credentials,\n status: status,\n spoilerText: spoilerText,\n sensitive: sensitive,\n poll: poll,\n mediaIds: mediaIds,\n contentType: contentType\n }).then(function (data) {\n if (!data.error) {\n store.dispatch('addNewStatuses', {\n statuses: [data],\n timeline: 'friends',\n showImmediately: true,\n noIdUpdate: true // To prevent missing notices on next pull.\n });\n }\n\n return data;\n })[\"catch\"](function (err) {\n console.error('Error editing status', err);\n return {\n error: err.message\n };\n });\n};\nvar uploadMedia = function uploadMedia(_ref3) {\n var store = _ref3.store,\n formData = _ref3.formData;\n var credentials = store.state.users.currentUser.credentials;\n return _api_api_service_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].uploadMedia({\n credentials: credentials,\n formData: formData\n });\n};\nvar setMediaDescription = function setMediaDescription(_ref4) {\n var store = _ref4.store,\n id = _ref4.id,\n description = _ref4.description;\n var credentials = store.state.users.currentUser.credentials;\n return _api_api_service_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].setMediaDescription({\n credentials: credentials,\n id: id,\n description: description\n });\n};\nvar statusPosterService = {\n postStatus: postStatus,\n editStatus: editStatus,\n uploadMedia: uploadMedia,\n setMediaDescription: setMediaDescription\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (statusPosterService);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvc3RhdHVzX3Bvc3Rlci9zdGF0dXNfcG9zdGVyLnNlcnZpY2UuanMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFDOEM7QUFFOUMsSUFBTUMsVUFBVSxHQUFHLFNBQWJBLFVBQVVBLENBQUFDLElBQUEsRUFhVjtFQUFBLElBWkpDLEtBQUssR0FBQUQsSUFBQSxDQUFMQyxLQUFLO0lBQ0xDLE1BQU0sR0FBQUYsSUFBQSxDQUFORSxNQUFNO0lBQ05DLFdBQVcsR0FBQUgsSUFBQSxDQUFYRyxXQUFXO0lBQ1hDLFVBQVUsR0FBQUosSUFBQSxDQUFWSSxVQUFVO0lBQ1ZDLFNBQVMsR0FBQUwsSUFBQSxDQUFUSyxTQUFTO0lBQ1RDLElBQUksR0FBQU4sSUFBQSxDQUFKTSxJQUFJO0lBQUFDLFVBQUEsR0FBQVAsSUFBQSxDQUNKUSxLQUFLO0lBQUxBLEtBQUssR0FBQUQsVUFBQSxjQUFHLEVBQUUsR0FBQUEsVUFBQTtJQUFBRSxxQkFBQSxHQUFBVCxJQUFBLENBQ1ZVLGlCQUFpQjtJQUFqQkEsaUJBQWlCLEdBQUFELHFCQUFBLGNBQUdFLFNBQVMsR0FBQUYscUJBQUE7SUFBQUcsWUFBQSxHQUFBWixJQUFBLENBQzdCYSxPQUFPO0lBQVBBLE9BQU8sR0FBQUQsWUFBQSxjQUFHRCxTQUFTLEdBQUFDLFlBQUE7SUFBQUUsZ0JBQUEsR0FBQWQsSUFBQSxDQUNuQmUsV0FBVztJQUFYQSxXQUFXLEdBQUFELGdCQUFBLGNBQUcsWUFBWSxHQUFBQSxnQkFBQTtJQUFBRSxZQUFBLEdBQUFoQixJQUFBLENBQzFCaUIsT0FBTztJQUFQQSxPQUFPLEdBQUFELFlBQUEsY0FBRyxLQUFLLEdBQUFBLFlBQUE7SUFBQUUsbUJBQUEsR0FBQWxCLElBQUEsQ0FDZm1CLGNBQWM7SUFBZEEsY0FBYyxHQUFBRCxtQkFBQSxjQUFHLEVBQUUsR0FBQUEsbUJBQUE7RUFFbkIsSUFBTUUsUUFBUSxHQUFHQyxpREFBQSxDQUFJYixLQUFLLEVBQUUsSUFBSSxDQUFDO0VBRWpDLE9B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ZXJvbWFfZmUvLi9zcmMvc2VydmljZXMvc3RhdHVzX3Bvc3Rlci9zdGF0dXNfcG9zdGVyLnNlcnZpY2UuanM/MDdiYiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBtYXAgfSBmcm9tICdsb2Rhc2gnXG5pbXBvcnQgYXBpU2VydmljZSBmcm9tICcuLi9hcGkvYXBpLnNlcnZpY2UuanMnXG5cbmNvbnN0IHBvc3RTdGF0dXMgPSAoe1xuICBzdG9yZSxcbiAgc3RhdHVzLFxuICBzcG9pbGVyVGV4dCxcbiAgdmlzaWJpbGl0eSxcbiAgc2Vuc2l0aXZlLFxuICBwb2xsLFxuICBtZWRpYSA9IFtdLFxuICBpblJlcGx5VG9TdGF0dXNJZCA9IHVuZGVmaW5lZCxcbiAgcXVvdGVJZCA9IHVuZGVmaW5lZCxcbiAgY29udGVudFR5cGUgPSAndGV4dC9wbGFpbicsXG4gIHByZXZpZXcgPSBmYWxzZSxcbiAgaWRlbXBvdGVuY3lLZXkgPSAnJ1xufSkgPT4ge1xuICBjb25zdCBtZWRpYUlkcyA9IG1hcChtZWRpYSwgJ2lkJylcblxuICByZXR1cm4gYXBpU2VydmljZS5wb3N0U3RhdHVzKHtcbiAgICBjcmVkZW50aWFsczogc3RvcmUuc3RhdGUudXNlcnMuY3VycmVudFVzZXIuY3JlZGVudGlhbHMsXG4gICAgc3RhdHVzLFxuICAgIHNwb2lsZXJUZXh0LFxuICAgIHZpc2liaWxpdHksXG4gICAgc2Vuc2l0aXZlLFxuICAgIG1lZGlhSWRzLFxuICAgIGluUmVwbHlUb1N0YXR1c0lkLFxuICAgIHF1b3RlSWQsXG4gICAgY29udGVudFR5cGUsXG4gICAgcG9sbCxcbiAgICBwcmV2aWV3LFxuICAgIGlkZW1wb3RlbmN5S2V5XG4gIH0pXG4gICAgLnRoZW4oKGRhdGEpID0+IHtcbiAgICAgIGlmICghZGF0YS5lcnJvciAmJiAhcHJldmlldykge1xuICAgICAgICBzdG9yZS5kaXNwYXRjaCgnYWRkTmV3U3RhdHVzZXMnLCB7XG4gICAgICAgICAgc3RhdHVzZXM6IFtkYXRhXSxcbiAgICAgICAgICB0aW1lbGluZTogJ2ZyaWVuZHMnLFxuICAgICAgICAgIHNob3dJbW1lZGlhdGVseTogdHJ1ZSxcbiAgICAgICAgICBub0lkVXBkYXRlOiB0cnVlIC8vIFRvIHByZXZlbnQgbWlzc2luZyBub3RpY2VzIG9uIG5leHQgcHVsbC5cbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICAgIHJldHVybiBkYXRhXG4gICAgfSlcbiAgICAuY2F0Y2goKGVycikgPT4ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgZXJyb3I6IGVyci5tZXNzYWdlXG4gICAgICB9XG4gICAgfSlcbn1cblxuY29uc3QgZWRpdFN0YXR1cyA9ICh7XG4gIHN0b3JlLFxuICBzdGF0dXNJZCxcbiAgc3RhdHVzLFxuICBzcG9pbGVyVGV4dCxcbiAgc2Vuc2l0aXZlLFxuICBwb2xsLFxuICBtZWRpYSA9IFtdLFxuICBjb250ZW50VHlwZSA9ICd0ZXh0L3BsYWluJ1xufSkgPT4ge1xuICBjb25zdCBtZWRpYUlkcyA9IG1hcChtZWRpYSwgJ2lkJylcblxuICByZXR1cm4gYXBpU2VydmljZS5lZGl0U3RhdHVzKHtcbiAgICBpZDogc3RhdHVzSWQsXG4gICAgY3JlZGVudGlhbHM6IHN0b3JlLnN0YXRlLnVzZXJzLmN1cnJlbnRVc2VyLmNyZWRlbnRpYWxzLFxuICAgIHN0YXR1cyxcbiAgICBzcG9pbGVyVGV4dCxcbiAgICBzZW5zaXRpdmUsXG4gICAgcG9sbCxcbiAgICBtZWRpYUlkcyxcbiAgICBjb250ZW50VHlwZVxuICB9KVxuICAgIC50aGVuKChkYXRhKSA9PiB7XG4gICAgICBpZiAoIWRhdGEuZXJyb3IpIHtcbiAgICAgICAgc3RvcmUuZGlzcGF0Y2goJ2FkZE5ld1N0YXR1c2VzJywge1xuICAgICAgICAgIHN0YXR1c2VzOiBbZGF0YV0sXG4gICAgICAgICAgdGltZWxpbmU6ICdmcmllbmRzJyxcbiAgICAgICAgICBzaG93SW1tZWRpYXRlbHk6IHRydWUsXG4gICAgICAgICAgbm9JZFVwZGF0ZTogdHJ1ZSAvLyBUbyBwcmV2ZW50IG1pc3Npbmcgbm90aWNlcyBvbiBuZXh0IHB1bGwuXG4gICAgICAgIH0pXG4gICAgICB9XG4gICAgICByZXR1cm4gZGF0YVxuICAgIH0pXG4gICAgLmNhdGNoKChlcnIpID0+IHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGVkaXRpbmcgc3RhdHVzJywgZXJyKVxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgZXJyb3I6IGVyci5tZXNzYWdlXG4gICAgICB9XG4gICAgfSlcbn1cblxuY29uc3QgdXBsb2FkTWVkaWEgPSAoeyBzdG9yZSwgZm9ybURhdGEgfSkgPT4ge1xuICBjb25zdCBjcmVkZW50aWFscyA9IHN0b3JlLnN0YXRlLnVzZXJzLmN1cnJlbnRVc2VyLmNyZWRlbnRpYWxzXG4gIHJldHVybiBhcGlTZXJ2aWNlLnVwbG9hZE1lZGlhKHsgY3JlZGVudGlhbHMsIGZvcm1EYXRhIH0pXG59XG5cbmNvbnN0IHNldE1lZGlhRGVzY3JpcHRpb24gPSAoeyBzdG9yZSwgaWQsIGRlc2NyaXB0aW9uIH0pID0+IHtcbiAgY29uc3QgY3JlZGVudGlhbHMgPSBzdG9yZS5zdGF0ZS51c2Vycy5jdXJyZW50VXNlci5jcmVkZW50aWFsc1xuICByZXR1cm4gYXBpU2VydmljZS5zZXRNZWRpYURlc2NyaXB0aW9uKHsgY3JlZGVudGlhbHMsIGlkLCBkZXNjcmlwdGlvbiB9KVxufVxuXG5jb25zdCBzdGF0dXNQb3N0ZXJTZXJ2aWNlID0ge1xuICBwb3N0U3RhdHVzLFxuICBlZGl0U3RhdHVzLFxuICB1cGxvYWRNZWRpYSxcbiAgc2V0TWVkaWFEZXNjcmlwdGlvblxufVxuXG5leHBvcnQgZGVmYXVsdCBzdGF0dXNQb3N0ZXJTZXJ2aWNlXG4iXSwibmFtZXMiOlsiYXBpU2VydmljZSIsInBvc3RTdGF0dXMiLCJfcmVmIiwic3RvcmUiLCJzdGF0dXMiLCJzcG9pbGVyVGV4dCIsInZpc2liaWxpdHkiLCJzZW5zaXRpdmUiLCJwb2xsIiwiX3JlZiRtZWRpYSIsIm1lZGlhIiwiX3JlZiRpblJlcGx5VG9TdGF0dXNJIiwiaW5SZXBseVRvU3RhdHVzSWQiLCJ1bmRlZmluZWQiLCJfcmVmJHF1b3RlSWQiLCJxdW90ZUlkIiwiX3JlZiRjb250ZW50VHlwZSIsImNvbnRlbnRUeXBlIiwiX3JlZiRwcmV2aWV3IiwicHJldmlldyIsIl9yZWYkaWRlbXBvdGVuY3lLZXkiLCJpZGVtcG90ZW5jeUtleSIsIm1lZGlhSWRzIiwiX21hcCIsImNyZWRlbnRpYWxzIiwic3RhdGUiLCJ1c2VycyIsImN1cnJlbnRVc2VyIiwidGhlbiIsImRhdGEiLCJlcnJvciIsImRpc3BhdGNoIiwic3RhdHVzZXMiLCJ0aW1lbGluZSIsInNob3dJbW1lZGlhdGVseSIsIm5vSWRVcGRhdGUiLCJlcnIiLCJtZXNzYWdlIiwiZWRpdFN0YXR1cyIsIl9yZWYyIiwic3RhdHVzSWQiLCJfcmVmMiRtZWRpYSIsIl9yZWYyJGNvbnRlbnRUeXBlIiwiaWQiLCJjb25zb2xlIiwidXBsb2FkTWVkaWEiLCJfcmVmMyIsImZvcm1EYXRhIiwic2V0TWVkaWFEZXNjcmlwdGlvbiIsIl9yZWY0IiwiZGVzY3JpcHRpb24iLCJzdGF0dXNQb3N0ZXJTZXJ2aWNlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/services/status_poster/status_poster.service.js\n");
/***/ }),
/***/ "./src/services/style_setter/style_setter.js":
/*!***************************************************!*\
!*** ./src/services/style_setter/style_setter.js ***!
\***************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"DEFAULT_SHADOWS\": () => (/* binding */ DEFAULT_SHADOWS),\n/* harmony export */ \"applyConfig\": () => (/* binding */ applyConfig),\n/* harmony export */ \"applyTheme\": () => (/* binding */ applyTheme),\n/* harmony export */ \"colors2to3\": () => (/* binding */ colors2to3),\n/* harmony export */ \"composePreset\": () => (/* binding */ composePreset),\n/* harmony export */ \"generateColors\": () => (/* binding */ generateColors),\n/* harmony export */ \"generateFonts\": () => (/* binding */ generateFonts),\n/* harmony export */ \"generatePreset\": () => (/* binding */ generatePreset),\n/* harmony export */ \"generateRadii\": () => (/* binding */ generateRadii),\n/* harmony export */ \"generateShadows\": () => (/* binding */ generateShadows),\n/* harmony export */ \"getCssShadow\": () => (/* binding */ getCssShadow),\n/* harmony export */ \"getPreset\": () => (/* binding */ getPreset),\n/* harmony export */ \"getThemes\": () => (/* binding */ getThemes),\n/* harmony export */ \"setPreset\": () => (/* binding */ setPreset),\n/* harmony export */ \"shadows2to3\": () => (/* binding */ shadows2to3)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/typeof */ \"./node_modules/@babel/runtime/helpers/esm/typeof.js\");\n/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ \"./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js\");\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"./node_modules/@babel/runtime/helpers/esm/defineProperty.js\");\n/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ \"./node_modules/@babel/runtime/helpers/esm/slicedToArray.js\");\n/* harmony import */ var chromatism__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! chromatism */ \"./node_modules/chromatism/dist/chromatism.cjs.js\");\n/* harmony import */ var _color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../color_convert/color_convert.js */ \"./src/services/color_convert/color_convert.js\");\n/* harmony import */ var _theme_data_theme_data_service_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../theme_data/theme_data.service.js */ \"./src/services/theme_data/theme_data.service.js\");\n/* harmony import */ var _modules_config_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../modules/config.js */ \"./src/modules/config.js\");\n\n\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\n\n\nvar applyTheme = function applyTheme(input) {\n var _generatePreset = generatePreset(input),\n rules = _generatePreset.rules;\n var head = document.head;\n var body = document.body;\n body.classList.add('hidden');\n var styleEl = document.createElement('style');\n head.appendChild(styleEl);\n var styleSheet = styleEl.sheet;\n styleSheet.toString();\n styleSheet.insertRule(\":root { \".concat(rules.radii, \" }\"), 'index-max');\n styleSheet.insertRule(\":root { \".concat(rules.colors, \" }\"), 'index-max');\n styleSheet.insertRule(\":root { \".concat(rules.shadows, \" }\"), 'index-max');\n styleSheet.insertRule(\":root { \".concat(rules.fonts, \" }\"), 'index-max');\n body.classList.remove('hidden');\n};\nvar configColumns = function configColumns(_ref) {\n var sidebarColumnWidth = _ref.sidebarColumnWidth,\n contentColumnWidth = _ref.contentColumnWidth,\n notifsColumnWidth = _ref.notifsColumnWidth,\n emojiReactionsScale = _ref.emojiReactionsScale;\n return {\n sidebarColumnWidth: sidebarColumnWidth,\n contentColumnWidth: contentColumnWidth,\n notifsColumnWidth: notifsColumnWidth,\n emojiReactionsScale: emojiReactionsScale\n };\n};\nvar defaultConfigColumns = configColumns(_modules_config_js__WEBPACK_IMPORTED_MODULE_7__.defaultState);\nvar applyConfig = function applyConfig(config) {\n var columns = configColumns(config);\n if (columns === defaultConfigColumns) {\n return;\n }\n var head = document.head;\n var body = document.body;\n body.classList.add('hidden');\n var rules = Object.entries(columns).filter(function (_ref2) {\n var _ref3 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(_ref2, 2),\n k = _ref3[0],\n v = _ref3[1];\n return v;\n }).map(function (_ref4) {\n var _ref5 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(_ref4, 2),\n k = _ref5[0],\n v = _ref5[1];\n return \"--\".concat(k, \": \").concat(v);\n }).join(';');\n var styleEl = document.createElement('style');\n head.appendChild(styleEl);\n var styleSheet = styleEl.sheet;\n styleSheet.toString();\n styleSheet.insertRule(\":root { \".concat(rules, \" }\"), 'index-max');\n body.classList.remove('hidden');\n};\nvar getCssShadow = function getCssShadow(input, usesDropShadow) {\n if (input.length === 0) {\n return 'none';\n }\n return input.filter(function (_) {\n return usesDropShadow ? _.inset : _;\n }).map(function (shad) {\n return [shad.x, shad.y, shad.blur, shad.spread].map(function (_) {\n return _ + 'px';\n }).concat([(0,_color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_5__.getCssColor)(shad.color, shad.alpha), shad.inset ? 'inset' : '']).join(' ');\n }).join(', ');\n};\nvar getCssShadowFilter = function getCssShadowFilter(input) {\n if (input.length === 0) {\n return 'none';\n }\n return input\n // drop-shadow doesn't support inset or spread\n .filter(function (shad) {\n return !shad.inset && Number(shad.spread) === 0;\n }).map(function (shad) {\n return [shad.x, shad.y,\n // drop-shadow's blur is twice as strong compared to box-shadow\n shad.blur / 2].map(function (_) {\n return _ + 'px';\n }).concat([(0,_color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_5__.getCssColor)(shad.color, shad.alpha)]).join(' ');\n }).map(function (_) {\n return \"drop-shadow(\".concat(_, \")\");\n }).join(' ');\n};\nvar generateColors = function generateColors(themeData) {\n var sourceColors = !themeData.themeEngineVersion ? colors2to3(themeData.colors || themeData) : themeData.colors || themeData;\n var _getColors = (0,_theme_data_theme_data_service_js__WEBPACK_IMPORTED_MODULE_6__.getColors)(sourceColors, themeData.opacity || {}),\n colors = _getColors.colors,\n opacity = _getColors.opacity;\n var htmlColors = Object.entries(colors).reduce(function (acc, _ref6) {\n var _ref7 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(_ref6, 2),\n k = _ref7[0],\n v = _ref7[1];\n if (!v) return acc;\n acc.solid[k] = (0,_color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_5__.rgb2hex)(v);\n acc.complete[k] = typeof v.a === 'undefined' ? (0,_color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_5__.rgb2hex)(v) : (0,_color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_5__.rgba2css)(v);\n return acc;\n }, {\n complete: {},\n solid: {}\n });\n return {\n rules: {\n colors: Object.entries(htmlColors.complete).filter(function (_ref8) {\n var _ref9 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(_ref8, 2),\n k = _ref9[0],\n v = _ref9[1];\n return v;\n }).map(function (_ref10) {\n var _ref11 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(_ref10, 2),\n k = _ref11[0],\n v = _ref11[1];\n return \"--\".concat(k, \": \").concat(v);\n }).join(';')\n },\n theme: {\n colors: htmlColors.solid,\n opacity: opacity\n }\n };\n};\nvar generateRadii = function generateRadii(input) {\n var inputRadii = input.radii || {};\n // v1 -> v2\n if (typeof input.btnRadius !== 'undefined') {\n inputRadii = Object.entries(input).filter(function (_ref12) {\n var _ref13 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(_ref12, 2),\n k = _ref13[0],\n v = _ref13[1];\n return k.endsWith('Radius');\n }).reduce(function (acc, e) {\n acc[e[0].split('Radius')[0]] = e[1];\n return acc;\n }, {});\n }\n var radii = Object.entries(inputRadii).filter(function (_ref14) {\n var _ref15 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(_ref14, 2),\n k = _ref15[0],\n v = _ref15[1];\n return v;\n }).reduce(function (acc, _ref16) {\n var _ref17 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(_ref16, 2),\n k = _ref17[0],\n v = _ref17[1];\n acc[k] = v;\n return acc;\n }, {\n btn: 4,\n input: 4,\n checkbox: 2,\n panel: 10,\n avatar: 5,\n avatarAlt: 50,\n tooltip: 2,\n attachment: 5,\n chatMessage: inputRadii.panel\n });\n return {\n rules: {\n radii: Object.entries(radii).filter(function (_ref18) {\n var _ref19 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(_ref18, 2),\n k = _ref19[0],\n v = _ref19[1];\n return v;\n }).map(function (_ref20) {\n var _ref21 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(_ref20, 2),\n k = _ref21[0],\n v = _ref21[1];\n return \"--\".concat(k, \"Radius: \").concat(v, \"px\");\n }).join(';')\n },\n theme: {\n radii: radii\n }\n };\n};\nvar generateFonts = function generateFonts(input) {\n var fonts = Object.entries(input.fonts || {}).filter(function (_ref22) {\n var _ref23 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(_ref22, 2),\n k = _ref23[0],\n v = _ref23[1];\n return v;\n }).reduce(function (acc, _ref24) {\n var _ref25 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(_ref24, 2),\n k = _ref25[0],\n v = _ref25[1];\n acc[k] = Object.entries(v).filter(function (_ref26) {\n var _ref27 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(_ref26, 2),\n k = _ref27[0],\n v = _ref27[1];\n return v;\n }).reduce(function (acc, _ref28) {\n var _ref29 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(_ref28, 2),\n k = _ref29[0],\n v = _ref29[1];\n acc[k] = v;\n return acc;\n }, acc[k]);\n return acc;\n }, {\n \"interface\": {\n family: 'sans-serif'\n },\n input: {\n family: 'inherit'\n },\n post: {\n family: 'inherit'\n },\n postCode: {\n family: 'monospace'\n }\n });\n return {\n rules: {\n fonts: Object.entries(fonts).filter(function (_ref30) {\n var _ref31 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(_ref30, 2),\n k = _ref31[0],\n v = _ref31[1];\n return v;\n }).map(function (_ref32) {\n var _ref33 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(_ref32, 2),\n k = _ref33[0],\n v = _ref33[1];\n return \"--\".concat(k, \"Font: \").concat(v.family);\n }).join(';')\n },\n theme: {\n fonts: fonts\n }\n };\n};\nvar border = function border(top, shadow) {\n return {\n x: 0,\n y: top ? 1 : -1,\n blur: 0,\n spread: 0,\n color: shadow ? '#000000' : '#FFFFFF',\n alpha: 0.2,\n inset: true\n };\n};\nvar buttonInsetFakeBorders = [border(true, false), border(false, true)];\nvar inputInsetFakeBorders = [border(true, true), border(false, false)];\nvar hoverGlow = {\n x: 0,\n y: 0,\n blur: 4,\n spread: 0,\n color: '--faint',\n alpha: 1\n};\nvar DEFAULT_SHADOWS = {\n panel: [{\n x: 1,\n y: 1,\n blur: 4,\n spread: 0,\n color: '#000000',\n alpha: 0.6\n }],\n topBar: [{\n x: 0,\n y: 0,\n blur: 4,\n spread: 0,\n color: '#000000',\n alpha: 0.6\n }],\n popup: [{\n x: 2,\n y: 2,\n blur: 3,\n spread: 0,\n color: '#000000',\n alpha: 0.5\n }],\n avatar: [{\n x: 0,\n y: 1,\n blur: 8,\n spread: 0,\n color: '#000000',\n alpha: 0.7\n }],\n avatarStatus: [],\n panelHeader: [],\n button: [{\n x: 0,\n y: 0,\n blur: 2,\n spread: 0,\n color: '#000000',\n alpha: 1\n }].concat(buttonInsetFakeBorders),\n buttonHover: [hoverGlow].concat(buttonInsetFakeBorders),\n buttonPressed: [hoverGlow].concat(inputInsetFakeBorders),\n input: [].concat(inputInsetFakeBorders, [{\n x: 0,\n y: 0,\n blur: 2,\n inset: true,\n spread: 0,\n color: '#000000',\n alpha: 1\n }])\n};\nvar generateShadows = function generateShadows(input, colors) {\n // TODO this is a small hack for `mod` to work with shadows\n // this is used to get the \"context\" of shadow, i.e. for `mod` properly depend on background color of element\n var hackContextDict = {\n button: 'btn',\n panel: 'bg',\n top: 'topBar',\n popup: 'popover',\n avatar: 'bg',\n panelHeader: 'panel',\n input: 'input'\n };\n var cleanInputShadows = Object.fromEntries(Object.entries(input.shadows || {}).map(function (_ref34) {\n var _ref35 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(_ref34, 2),\n name = _ref35[0],\n shadowSlot = _ref35[1];\n return [name,\n // defaulting color to black to avoid potential problems\n shadowSlot.map(function (shadowDef) {\n return _objectSpread({\n color: '#000000'\n }, shadowDef);\n })];\n }));\n var inputShadows = cleanInputShadows && !input.themeEngineVersion ? shadows2to3(cleanInputShadows, input.opacity) : cleanInputShadows || {};\n var shadows = Object.entries(_objectSpread(_objectSpread({}, DEFAULT_SHADOWS), inputShadows)).reduce(function (shadowsAcc, _ref36) {\n var _ref37 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(_ref36, 2),\n slotName = _ref37[0],\n shadowDefs = _ref37[1];\n var slotFirstWord = slotName.replace(/[A-Z].*$/, '');\n var colorSlotName = hackContextDict[slotFirstWord];\n var isLightOnDark = (0,_color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_5__.relativeLuminance)((0,chromatism__WEBPACK_IMPORTED_MODULE_4__.convert)(colors[colorSlotName]).rgb) < 0.5;\n var mod = isLightOnDark ? 1 : -1;\n var newShadow = shadowDefs.reduce(function (shadowAcc, def) {\n return [].concat((0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(shadowAcc), [_objectSpread(_objectSpread({}, def), {}, {\n color: (0,_color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_5__.rgb2hex)((0,_theme_data_theme_data_service_js__WEBPACK_IMPORTED_MODULE_6__.computeDynamicColor)(def.color, function (variableSlot) {\n return (0,chromatism__WEBPACK_IMPORTED_MODULE_4__.convert)(colors[variableSlot]).rgb;\n }, mod))\n })]);\n }, []);\n return _objectSpread(_objectSpread({}, shadowsAcc), {}, (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_2__[\"default\"])({}, slotName, newShadow));\n }, {});\n return {\n rules: {\n shadows: Object.entries(shadows)\n // TODO for v2.2: if shadow doesn't have non-inset shadows with spread > 0 - optionally\n // convert all non-inset shadows into filter: drop-shadow() to boost performance\n .map(function (_ref38) {\n var _ref39 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(_ref38, 2),\n k = _ref39[0],\n v = _ref39[1];\n return [\"--\".concat(k, \"Shadow: \").concat(getCssShadow(v)), \"--\".concat(k, \"ShadowFilter: \").concat(getCssShadowFilter(v)), \"--\".concat(k, \"ShadowInset: \").concat(getCssShadow(v, true))].join(';');\n }).join(';')\n },\n theme: {\n shadows: shadows\n }\n };\n};\nvar composePreset = function composePreset(colors, radii, shadows, fonts) {\n return {\n rules: _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, shadows.rules), colors.rules), radii.rules), fonts.rules),\n theme: _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, shadows.theme), colors.theme), radii.theme), fonts.theme)\n };\n};\nvar generatePreset = function generatePreset(input) {\n var colors = generateColors(input);\n return composePreset(colors, generateRadii(input), generateShadows(input, colors.theme.colors, colors.mod), generateFonts(input));\n};\nvar getThemes = function getThemes() {\n var cache = 'no-store';\n return window.fetch('/static/styles.json', {\n cache: cache\n }).then(function (data) {\n return data.json();\n }).then(function (themes) {\n return Object.entries(themes).map(function (_ref40) {\n var _ref41 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(_ref40, 2),\n k = _ref41[0],\n v = _ref41[1];\n var promise = null;\n if ((0,_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(v) === 'object') {\n promise = Promise.resolve(v);\n } else if (typeof v === 'string') {\n promise = window.fetch(v, {\n cache: cache\n }).then(function (data) {\n return data.json();\n })[\"catch\"](function (e) {\n console.error(e);\n return null;\n });\n }\n return [k, promise];\n });\n }).then(function (promises) {\n return promises.reduce(function (acc, _ref42) {\n var _ref43 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(_ref42, 2),\n k = _ref43[0],\n v = _ref43[1];\n acc[k] = v;\n return acc;\n }, {});\n });\n};\nvar colors2to3 = function colors2to3(colors) {\n return Object.entries(colors).reduce(function (acc, _ref44) {\n var _ref45 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(_ref44, 2),\n slotName = _ref45[0],\n color = _ref45[1];\n var btnPositions = ['', 'Panel', 'TopBar'];\n switch (slotName) {\n case 'lightBg':\n return _objectSpread(_objectSpread({}, acc), {}, {\n highlight: color\n });\n case 'btnText':\n return _objectSpread(_objectSpread({}, acc), btnPositions.reduce(function (statePositionAcc, position) {\n return _objectSpread(_objectSpread({}, statePositionAcc), {}, (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_2__[\"default\"])({}, 'btn' + position + 'Text', color));\n }, {}));\n default:\n return _objectSpread(_objectSpread({}, acc), {}, (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_2__[\"default\"])({}, slotName, color));\n }\n }, {});\n};\n\n/**\n * This handles compatibility issues when importing v2 theme's shadows to current format\n *\n * Back in v2 shadows allowed you to use dynamic colors however those used pure CSS3 variables\n */\nvar shadows2to3 = function shadows2to3(shadows, opacity) {\n return Object.entries(shadows).reduce(function (shadowsAcc, _ref46) {\n var _ref47 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(_ref46, 2),\n slotName = _ref47[0],\n shadowDefs = _ref47[1];\n var isDynamic = function isDynamic(_ref48) {\n var _ref48$color = _ref48.color,\n color = _ref48$color === void 0 ? '#000000' : _ref48$color;\n return color.startsWith('--');\n };\n var getOpacity = function getOpacity(_ref49) {\n var color = _ref49.color;\n return opacity[(0,_theme_data_theme_data_service_js__WEBPACK_IMPORTED_MODULE_6__.getOpacitySlot)(color.substring(2).split(',')[0])];\n };\n var newShadow = shadowDefs.reduce(function (shadowAcc, def) {\n return [].concat((0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(shadowAcc), [_objectSpread(_objectSpread({}, def), {}, {\n alpha: isDynamic(def) ? getOpacity(def) || 1 : def.alpha\n })]);\n }, []);\n return _objectSpread(_objectSpread({}, shadowsAcc), {}, (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_2__[\"default\"])({}, slotName, newShadow));\n }, {});\n};\nvar getPreset = function getPreset(val) {\n return getThemes().then(function (themes) {\n return themes[val] ? themes[val] : themes['pleroma-dark'];\n }).then(function (theme) {\n var isV1 = Array.isArray(theme);\n var data = isV1 ? {} : theme.theme;\n if (isV1) {\n var bg = (0,_color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_5__.hex2rgb)(theme[1]);\n var fg = (0,_color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_5__.hex2rgb)(theme[2]);\n var text = (0,_color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_5__.hex2rgb)(theme[3]);\n var link = (0,_color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_5__.hex2rgb)(theme[4]);\n var cRed = (0,_color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_5__.hex2rgb)(theme[5] || '#FF0000');\n var cGreen = (0,_color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_5__.hex2rgb)(theme[6] || '#00FF00');\n var cBlue = (0,_color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_5__.hex2rgb)(theme[7] || '#0000FF');\n var cOrange = (0,_color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_5__.hex2rgb)(theme[8] || '#E3FF00');\n data.colors = {\n bg: bg,\n fg: fg,\n text: text,\n link: link,\n cRed: cRed,\n cBlue: cBlue,\n cGreen: cGreen,\n cOrange: cOrange\n };\n }\n return {\n theme: data,\n source: theme.source\n };\n });\n};\nvar setPreset = function setPreset(val) {\n return getPreset(val).then(function (data) {\n return applyTheme(data.theme);\n });\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvc3R5bGVfc2V0dGVyL3N0eWxlX3NldHRlci5qcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFvQztBQUMwRTtBQUNWO0FBQzlDO0FBRS9DLElBQU1VLFVBQVUsR0FBRyxTQUFiQSxVQUFVQSxDQUFJQyxLQUFLLEVBQUs7RUFDbkMsSUFBQUMsZUFBQSxHQUFrQkMsY0FBYyxDQUFDRixLQUFLLENBQUM7SUFBL0JHLEtBQUssR0FBQUYsZUFBQSxDQUFMRSxLQUFLO0VBQ2IsSUFBTUMsSUFBSSxHQUFHQyxRQUFRLENBQUNELElBQUk7RUFDMUIsSUFBTUUsSUFBSSxHQUFHRCxRQUFRLENBQUNDLElBQUk7RUFDMUJBLElBQUksQ0FBQ0MsU0FBUyxDQUFDQyxHQUFHLENBQUMsUUFBUSxDQUFDO0VBRTVCLElBQU1DLE9BQU8sR0FBR0osUUFBUSxDQUFDSyxhQUFhLENBQUMsT0FBTyxDQUFDO0VBQy9DTixJQUFJLENBQUNPLFdBQVcsQ0FBQ0YsT0FBTyxDQUFDO0VBQ3pCLElBQU1HLFVBQVUsR0FBR0gsT0FBTyxDQUFDSSxLQUFLO0VBRWhDRCxVQUFVLENBQUNFLFFBQVEsQ0FBQyxDQUFDO0VBQ3JCRixVQUFVLENBQUNHLFVBQVUsWUFBQUMsTUFBQSxDQUFZYixLQUFLLENBQUNjLEtBQUssU0FBTSxXQUFXLENBQUM7RUFDOURMLFVBQVUsQ0FBQ0csVUFBVSxZQUFBQyxNQUFBLENBQVliLEtBQUssQ0FBQ2UsTUFBTSxTQUFNLFdBQVcsQ0FBQztFQUMvRE4sVUFBVSxDQUFDRyxVQUFVLFlBQUFDLE1BQUEsQ0FBWWIsS0FBSyxDQUFDZ0IsT0FBTyxTQUFNLFdBQVcsQ0FBQztFQUNoRVAsVUFBVSxDQUFDRyxVQUFVLFlBQUFDLE1BQUEsQ0FBWWIsS0FBSyxDQUFDaUIsS0FBSyxTQUFNLFdBQVcsQ0FBQztFQUM5RGQsSUFBSSxDQUFDQyxTQUFTLENBQUNjLE1BQU0sQ0FBQyxRQUFRLENBQUM7QUFDakMsQ0FB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R0FBRztRQUFFeUwsRUFBRSxFQUFGQSxFQUFFO1FBQUVDLEVBQUUsRUFBRkEsRUFBRTtRQUFFQyxJQUFJLEVBQUpBLElBQUk7UUFBRUMsSUFBSSxFQUFKQSxJQUFJO1FBQUVDLElBQUksRUFBSkEsSUFBSTtRQUFFRSxLQUFLLEVBQUxBLEtBQUs7UUFBRUQsTUFBTSxFQUFOQSxNQUFNO1FBQUVFLE9BQU8sRUFBUEE7TUFBUSxDQUFDO0lBQ3BFO0lBRUEsT0FBTztNQUFFckksS0FBSyxFQUFFNEYsSUFBSTtNQUFFMEMsTUFBTSxFQUFFdEksS0FBSyxDQUFDc0k7SUFBTyxDQUFDO0VBQzlDLENBQUMsQ0FBQztBQUNOLENBQUM7QUFFTSxJQUFNQyxTQUFTLEdBQUcsU0FBWkEsU0FBU0EsQ0FBSWIsR0FBRztFQUFBLE9BQUtELFNBQVMsQ0FBQ0MsR0FBRyxDQUFDLENBQUMvQixJQUFJLENBQUMsVUFBQUMsSUFBSTtJQUFBLE9BQUkxSyxVQUFVLENBQUMwSyxJQUFJLENBQUM1RixLQUFLLENBQUM7RUFBQSxFQUFDO0FBQUEiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL3NlcnZpY2VzL3N0eWxlX3NldHRlci9zdHlsZV9zZXR0ZXIuanM/OGI2NyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb252ZXJ0IH0gZnJvbSAnY2hyb21hdGlzbSdcbmltcG9ydCB7IHJnYjJoZXgsIGhleDJyZ2IsIHJnYmEyY3NzLCBnZXRDc3NDb2xvciwgcmVsYXRpdmVMdW1pbmFuY2UgfSBmcm9tICcuLi9jb2xvcl9jb252ZXJ0L2NvbG9yX2NvbnZlcnQuanMnXG5pbXBvcnQgeyBnZXRDb2xvcnMsIGNvbXB1dGVEeW5hbWljQ29sb3IsIGdldE9wYWNpdHlTbG90IH0gZnJvbSAnLi4vdGhlbWVfZGF0YS90aGVtZV9kYXRhLnNlcnZpY2UuanMnXG5pbXBvcnQgeyBkZWZhdWx0U3RhdGUgfSBmcm9tICcuLi8uLi9tb2R1bGVzL2NvbmZpZy5qcydcblxuZXhwb3J0IGNvbnN0IGFwcGx5VGhlbWUgPSAoaW5wdXQpID0+IHtcbiAgY29uc3QgeyBydWxlcyB9ID0gZ2VuZXJhdGVQcmVzZXQoaW5wdXQpXG4gIGNvbnN0IGhlYWQgPSBkb2N1bWVudC5oZWFkXG4gIGNvbnN0IGJvZHkgPSBkb2N1bWVudC5ib2R5XG4gIGJvZHkuY2xhc3NMaXN0LmFkZCgnaGlkZGVuJylcblxuICBjb25zdCBzdHlsZUVsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc3R5bGUnKVxuICBoZWFkLmFwcGVuZENoaWxkKHN0eWxlRWwpXG4gIGNvbnN0IHN0eWxlU2hlZXQgPSBzdHlsZUVsLnNoZWV0XG5cbiAgc3R5bGVTaGVldC50b1N0cmluZygpXG4gIHN0eWxlU2hlZXQuaW5zZXJ0UnVsZShgOnJvb3QgeyAke3J1bGVzLnJhZGlpfSB9YCwgJ2luZGV4LW1heCcpXG4gIHN0eWxlU2hlZXQuaW5zZXJ0UnVsZShgOnJvb3QgeyAke3J1bGVzLmNvbG9yc30gfWAsICdpbmRleC1tYXgnKVxuICBzdHlsZVNoZWV0Lmluc2VydFJ1bGUoYDpyb290IHsgJHtydWxlcy5zaGFkb3dzfSB9YCwgJ2luZGV4LW1heCcpXG4gIHN0eWxlU2hlZXQuaW5zZXJ0UnVsZShgOnJvb3QgeyAke3J1bGVzLmZvbnRzfSB9YCwgJ2luZGV4LW1heCcpXG4gIGJvZHkuY2xhc3NMaXN0LnJlbW92ZSgnaGlkZGVuJylcbn1cblxuY29uc3QgY29uZmlnQ29sdW1ucyA9ICh7IHNpZGViYXJDb2x1bW5XaWR0aCwgY29udGVudENvbHVtbldpZHRoLCBub3RpZnNDb2x1bW5XaWR0aCwgZW1vamlSZWFjdGlvbnNTY2FsZSB9KSA9PlxuICAoeyBzaWRlYmFyQ29sdW1uV2lkdGgsIGNvbnRlbnRDb2x1bW5XaWR0aCwgbm90aWZzQ29sdW1uV2lkdGgsIGVtb2ppUmVhY3Rpb25zU2NhbGUgfSlcblxuY29uc3QgZGVmYXVsdENvbmZpZ0NvbHVtbnMgPSBjb25maWdDb2x1bW5zKGRlZmF1bHRTdGF0ZSlcblxuZXhwb3J0IGNvbnN0IGFwcGx5Q29uZmlnID0gKGNvbmZpZykgPT4ge1xuICBjb25zdCBjb2x1bW5zID0gY29uZmlnQ29sdW1ucyhjb25maWcpXG5cbiAgaWYgKGNvbHVtbnMgPT09IGRlZmF1bHRDb25maWdDb2x1bW5zKSB7XG4gICAgcmV0dXJuXG4gIH1cblxuICBjb25zdCBoZWFkID0gZG9jdW1lbnQuaGVhZFxuICBjb25zdCBib2R5ID0gZG9jdW1lbnQuYm9keVxuICBib2R5LmNsYXNzTGlzdC5hZGQoJ2hpZGRlbicpXG5cbiAgY29uc3QgcnVsZXMgPSBPYmplY3RcbiAgICAuZW50cmllcyhjb2x1bW5zKVxuICAgIC5maWx0ZXIoKFtrLCB2XSkgPT4gdilcbiAgICAubWFwKChbaywgdl0pID0+IGAtLSR7a306ICR7dn1gKS5qb2luKCc7JylcblxuICBjb25zdCBzdHlsZUVsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc3R5bGUnKVxuICBoZWFkLmFwcGVuZENoaWxkKHN0eWxlRWwpXG4gIGNvbnN0IHN0eWxlU2hlZXQgPSBzdHlsZUVsLnNoZWV0XG5cbiAgc3R5bGVTaGVldC50b1N0cmluZygpXG4gIHN0eWxlU2hlZXQuaW5zZXJ0UnVsZShgOnJvb3QgeyAke3J1bGVzfSB9YCwgJ2luZGV4LW1heCcpXG4gIGJvZHkuY2xhc3NMaXN0LnJlbW92ZSgnaGlkZGVuJylcbn1cblxuZXhwb3J0IGNvbnN0IGdldENzc1NoYWRvdyA9IChpbnB1dCwgdXNlc0Ryb3BTaGFkb3cpID0+IHtcbiAgaWYgKGlucHV0Lmxlbmd0aCA9PT0gMCkge1xuICAgIHJldHVybiAnbm9uZSdcbiAgfVxuXG4gIHJldHVybiBpbnB1dFxuICAgIC5maWx0ZXIoXyA9PiB1c2VzRHJvcFNoYWRvdyA/IF8uaW5zZXQgOiBfKVxuICAgIC5tYXAoKHNoYWQpID0+IFtcbiAgICAgIHNoYWQueCxcbiAgICAgIHNoYWQueSxcbiAgICAgIHNoYWQuYmx1cixcbiAgICAgIHNoYWQuc3ByZWFkXG4gICAgXS5tYXAoXyA9PiBfICsgJ3B4JykuY29uY2F0KFtcbiAgICAgIGdldENzc0NvbG9yKHNoYWQuY29sb3IsIHNoYWQuYWxwaGEpLFxuICAgICAgc2hhZC5pbnNldCA/ICdpbnNldCcgOiAnJ1xuICAgIF0pLmpvaW4oJyAnKSkuam9pbignLCAnKVxufVxuXG5jb25zdCBnZXRDc3NTaGFkb3dGaWx0ZXIgPSAoaW5wdXQpID0+IHtcbiAgaWYgKGlucHV0Lmxlbmd0aCA9PT0gMCkge1xuICAgIHJldHVybiAnbm9uZSdcbiAgfVxuXG4gIHJldHVybiBpbnB1dFxuICAvLyBkcm9wLXNoYWRvdyBkb2Vzbid0IHN1cHBvcnQgaW5zZXQgb3Igc3ByZWFkXG4gICAgLmZpbHRlcigoc2hhZCkgPT4gIXNoYWQuaW5zZXQgJiYgTnVtYmVyKHNoYWQuc3ByZWFkKSA9PT0gMClcbiAgICAubWFwKChzaGFkKSA9PiBbXG4gICAgICBzaGFkLngsXG4gICAgICBzaGFkLnksXG4gICAgICAvLyBkcm9wLXNoYWRvdydzIGJsdXIgaXMgdHdpY2UgYXMgc3Ryb25nIGNvbXBhcmVkIHRvIGJveC1zaGFkb3dcbiAgICAgIHNoYWQuYmx1ciAvIDJcbiAgICBdLm1hcChfID0+IF8gKyAncHgnKS5jb25jYXQoW1xuICAgICAgZ2V0Q3NzQ29sb3Ioc2hhZC5jb2xvciwgc2hhZC5hbHBoYSlcbiAgICBdKS5qb2luKCcgJykpXG4gICAgLm1hcChfID0+IGBkcm9wLXNoYWRvdygke199KWApXG4gICAgLmpvaW4oJyAnKVxufVxuXG5leHBvcnQgY29uc3QgZ2VuZXJhdGVDb2xvcnMgPSAodGhlbWVEYXRhKSA9PiB7XG4gIGNvbnN0IHNvdXJjZUNvbG9ycyA9ICF0aGVtZURhdGEudGhlbWVFbmdpbmVWZXJzaW9uXG4gICAgPyBjb2xvcnMydG8zKHRoZW1lRGF0YS5jb2xvcnMgfHwgdGhlbWVEYXRhKVxuICAgIDogdGhlbWVEYXRhLmNvbG9ycyB8fCB0aGVtZURhdGFcblxuICBjb25zdCB7IGNvbG9ycywgb3BhY2l0eSB9ID0gZ2V0Q29sb3JzKHNvdXJjZUNvbG9ycywgdGhlbWVEYXRhLm9wYWNpdHkgfHwge30pXG5cbiAgY29uc3QgaHRtbENvbG9ycyA9IE9iamVjdC5lbnRyaWVzKGNvbG9ycylcbiAgICAucmVkdWNlKChhY2MsIFtrLCB2XSkgPT4ge1xuICAgICAgaWYgKCF2KSByZXR1cm4gYWNjXG4gICAgICBhY2Muc29saWRba10gPSByZ2IyaGV4KHYpXG4gICAgICBhY2MuY29tcGxldGVba10gPSB0eXBlb2Ygdi5hID09PSAndW5kZWZpbmVkJyA/IHJnYjJoZXgodikgOiByZ2JhMmNzcyh2KVxuICAgICAgcmV0dXJuIGFjY1xuICAgIH0sIHsgY29tcGxldGU6IHt9LCBzb2xpZDoge30gfSlcbiAgcmV0dXJuIHtcbiAgICBydWxlczoge1xuICAgICAgY29sb3JzOiBPYmplY3QuZW50cmllcyhodG1sQ29sb3JzLmNvbXBsZXRlKVxuICAgICAgICAuZmlsdGVyKChbaywgdl0pID0+IHYpXG4gICAgICAgIC5tYXAoKFtrLCB2XSkgPT4gYC0tJHtrfTogJHt2fWApXG4gICAgICAgIC5qb2luKCc7JylcbiAgICB9LFxuICAgIHRoZW1lOiB7XG4gICAgICBjb2xvcnM6IGh0bWxDb2xvcnMuc29saWQsXG4gICAgICBvcGFjaXR5XG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBjb25zdCBnZW5lcmF0ZVJhZGlpID0gKGlucHV0KSA9PiB7XG4gIGxldCBpbnB1dFJhZGlpID0gaW5wdXQucmFkaWkgfHwge31cbiAgLy8gdjEgLT4gdjJcbiAgaWYgKHR5cGVvZiBpbnB1dC5idG5SYWRpdXMgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgaW5wdXRSYWRpaSA9IE9iamVjdFxuICAgICAgLmVudHJpZXMoaW5wdXQpXG4gICAgICAuZmlsdGVyKChbaywgdl0pID0+IGsuZW5kc1dpdGgoJ1JhZGl1cycpKVxuICAgICAgLnJlZHVjZSgoYWNjLCBlKSA9PiB7IGFjY1tlWzBdLnNwbGl0KCdSYWRpdXMnKVswXV0gPSBlWzFdOyByZXR1cm4gYWNjIH0sIHt9KVxuICB9XG4gIGNvbnN0IHJhZGlpID0gT2JqZWN0LmVudHJpZXMoaW5wdXRSYWRpaSkuZmlsdGVyKChbaywgdl0pID0+IHYpLnJlZHVjZSgoYWNjLCBbaywgdl0pID0+IHtcbiAgICBhY2Nba10gPSB2XG4gICAgcmV0dXJuIGFjY1xuICB9LCB7XG4gICAgYnRuOiA0LFxuICAgIGlucHV0OiA0LFxuICAgIGNoZWNrYm94OiAyLFxuICAgIHBhbmVsOiAxMCxcbiAgICBhdmF0YXI6IDUsXG4gICAgYXZhdGFyQWx0OiA1MCxcbiAgICB0b29sdGlwOiAyLFxuICAgIGF0dGFjaG1lbnQ6IDUsXG4gICAgY2hhdE1lc3NhZ2U6IGlucHV0UmFkaWkucGFuZWxcbiAgfSlcblxuICByZXR1cm4ge1xuICAgIHJ1bGVzOiB7XG4gICAgICByYWRpaTogT2JqZWN0LmVudHJpZXMocmFkaWkpLmZpbHRlcigoW2ssIHZdKSA9PiB2KS5tYXAoKFtrLCB2XSkgPT4gYC0tJHtrfVJhZGl1czogJHt2fXB4YCkuam9pbignOycpXG4gICAgfSxcbiAgICB0aGVtZToge1xuICAgICAgcmFkaWlcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IGdlbmVyYXRlRm9udHMgPSAoaW5wdXQpID0+IHtcbiAgY29uc3QgZm9udHMgPSBPYmplY3QuZW50cmllcyhpbnB1dC5mb250cyB8fCB7fSkuZmlsdGVyKChbaywgdl0pID0+IHYpLnJlZHVjZSgoYWNjLCBbaywgdl0pID0+IHtcbiAgICBhY2Nba10gPSBPYmplY3QuZW50cmllcyh2KS5maWx0ZXIoKFtrLCB2XSkgPT4gdikucmVkdWNlKChhY2MsIFtrLCB2XSkgPT4ge1xuICAgICAgYWNjW2tdID0gdlxuICAgICAgcmV0dXJuIGFjY1xuICAgIH0sIGFjY1trXSlcbiAgICByZXR1cm4gYWNjXG4gIH0sIHtcbiAgICBpbnRlcmZhY2U6IHtcbiAgICAgIGZhbWlseTogJ3NhbnMtc2VyaWYnXG4gICAgfSxcbiAgICBpbnB1dDoge1xuICAgICAgZmFtaWx5OiAnaW5oZXJpdCdcbiAgICB9LFxuICAgIHBvc3Q6IHtcbiAgICAgIGZhbWlseTogJ2luaGVyaXQnXG4gICAgfSxcbiAgICBwb3N0Q29kZToge1xuICAgICAgZmFtaWx5OiAnbW9ub3NwYWNlJ1xuICAgIH1cbiAgfSlcblxuICByZXR1cm4ge1xuICAgIHJ1bGVzOiB7XG4gICAgICBmb250czogT2JqZWN0XG4gICAgICAgIC5lbnRyaWVzKGZvbnRzKVxuICAgICAgICAuZmlsdGVyKChbaywgdl0pID0+IHYpXG4gICAgICAgIC5tYXAoKFtrLCB2XSkgPT4gYC0tJHtrfUZvbnQ6ICR7di5mYW1pbHl9YCkuam9pbignOycpXG4gICAgfSxcbiAgICB0aGVtZToge1xuICAgICAgZm9udHNcbiAgICB9XG4gIH1cbn1cblxuY29uc3QgYm9yZGVyID0gKHRvcCwgc2hhZG93KSA9PiAoe1xuICB4OiAwLFxuICB5OiB0b3AgPyAxIDogLTEsXG4gIGJsdXI6IDAsXG4gIHNwcmVhZDogMCxcbiAgY29sb3I6IHNoYWRvdyA/ICcjMDAwMDAwJyA6ICcjRkZGRkZGJyxcbiAgYWxwaGE6IDAuMixcbiAgaW5zZXQ6IHRydWVcbn0pXG5jb25zdCBidXR0b25JbnNldEZha2VCb3JkZXJzID0gW2JvcmRlcih0cnVlLCBmYWxzZSksIGJvcmRlcihmYWxzZSwgdHJ1ZSldXG5jb25zdCBpbnB1dEluc2V0RmFrZUJvcmRlcnMgPSBbYm9yZGVyKHRydWUsIHRydWUpLCBib3JkZXIoZmFsc2UsIGZhbHNlKV1cbmNvbnN0IGhvdmVyR2xvdyA9IHtcbiAgeDogMCxcbiAgeTogMCxcbiAgYmx1cjogNCxcbiAgc3ByZWFkOiAwLFxuICBjb2xvcjogJy0tZmFpbnQnLFxuICBhbHBoYTogMVxufVxuXG5leHBvcnQgY29uc3QgREVGQVVMVF9TSEFET1dTID0ge1xuICBwYW5lbDogW3tcbiAgICB4OiAxLFxuICAgIHk6IDEsXG4gICAgYmx1cjogNCxcbiAgICBzcHJlYWQ6IDAsXG4gICAgY29sb3I6ICcjMDAwMDAwJyxcbiAgICBhbHBoYTogMC42XG4gIH1dLFxuICB0b3BCYXI6IFt7XG4gICAgeDogMCxcbiAgICB5OiAwLFxuICAgIGJsdXI6IDQsXG4gICAgc3ByZWFkOiAwLFxuICAgIGNvbG9yOiAnIzAwMDAwMCcsXG4gICAgYWxwaGE6IDAuNlxuICB9XSxcbiAgcG9wdXA6IFt7XG4gICAgeDogMixcbiAgICB5OiAyLFxuICAgIGJsdXI6IDMsXG4gICAgc3ByZWFkOiAwLFxuICAgIGNvbG9yOiAnIzAwMDAwMCcsXG4gICAgYWxwaGE6IDAuNVxuICB9XSxcbiAgYXZhdGFyOiBbe1xuICAgIHg6IDAsXG4gICAgeTogMSxcbiAgICBibHVyOiA4LFxuICAgIHNwcmVhZDogMCxcbiAgICBjb2xvcjogJyMwMDAwMDAnLFxuICAgIGFscGhhOiAwLjdcbiAgfV0sXG4gIGF2YXRhclN0YXR1czogW10sXG4gIHBhbmVsSGVhZGVyOiBbXSxcbiAgYnV0dG9uOiBbe1xuICAgIHg6IDAsXG4gICAgeTogMCxcbiAgICBibHVyOiAyLFxuICAgIHNwcmVhZDogMCxcbiAgICBjb2xvcjogJyMwMDAwMDAnLFxuICAgIGFscGhhOiAxXG4gIH0sIC4uLmJ1dHRvbkluc2V0RmFrZUJvcmRlcnNdLFxuICBidXR0b25Ib3ZlcjogW2hvdmVyR2xvdywgLi4uYnV0dG9uSW5zZXRGYWtlQm9yZGVyc10sXG4gIGJ1dHRvblByZXNzZWQ6IFtob3Zlckdsb3csIC4uLmlucHV0SW5zZXRGYWtlQm9yZGVyc10sXG4gIGlucHV0OiBbLi4uaW5wdXRJbnNldEZha2VCb3JkZXJzLCB7XG4gICAgeDogMCxcbiAgICB5OiAwLFxuICAgIGJsdXI6IDIsXG4gICAgaW5zZXQ6IHRydWUsXG4gICAgc3ByZWFkOiAwLFxuICAgIGNvbG9yOiAnIzAwMDAwMCcsXG4gICAgYWxwaGE6IDFcbiAgfV1cbn1cbmV4cG9ydCBjb25zdCBnZW5lcmF0ZVNoYWRvd3MgPSAoaW5wdXQsIGNvbG9ycykgPT4ge1xuICAvLyBUT0RPIHRoaXMgaXMgYSBzbWFsbCBoYWNrIGZvciBgbW9kYCB0byB3b3JrIHdpdGggc2hhZG93c1xuICAvLyB0aGlzIGlzIHVzZWQgdG8gZ2V0IHRoZSBcImNvbnRleHRcIiBvZiBzaGFkb3csIGkuZS4gZm9yIGBtb2RgIHByb3Blcmx5IGRlcGVuZCBvbiBiYWNrZ3JvdW5kIGNvbG9yIG9mIGVsZW1lbnRcbiAgY29uc3QgaGFja0NvbnRleHREaWN0ID0ge1xuICAgIGJ1dHRvbjogJ2J0bicsXG4gICAgcGFuZWw6ICdiZycsXG4gICAgdG9wOiAndG9wQmFyJyxcbiAgICBwb3B1cDogJ3BvcG92ZXInLFxuICAgIGF2YXRhcjogJ2JnJyxcbiAgICBwYW5lbEhlYWRlcjogJ3BhbmVsJyxcbiAgICBpbnB1dDogJ2lucHV0J1xuICB9XG5cbiAgY29uc3QgY2xlYW5JbnB1dFNoYWRvd3MgPSBPYmplY3QuZnJvbUVudHJpZXMoXG4gICAgT2JqZWN0LmVudHJpZXMoaW5wdXQuc2hhZG93cyB8fCB7fSlcbiAgICAgIC5tYXAoKFtuYW1lLCBzaGFkb3dTbG90XSkgPT4gW1xuICAgICAgICBuYW1lLFxuICAgICAgICAvLyBkZWZhdWx0aW5nIGNvbG9yIHRvIGJsYWNrIHRvIGF2b2lkIHBvdGVudGlhbCBwcm9ibGVtc1xuICAgICAgICBzaGFkb3dTbG90Lm1hcChzaGFkb3dEZWYgPT4gKHsgY29sb3I6ICcjMDAwMDAwJywgLi4uc2hhZG93RGVmIH0pKVxuICAgICAgXSlcbiAgKVxuICBjb25zdCBpbnB1dFNoYWRvd3MgPSBjbGVhbklucHV0U2hhZG93cyAmJiAhaW5wdXQudGhlbWVFbmdpbmVWZXJzaW9uXG4gICAgPyBzaGFkb3dzMnRvMyhjbGVhbklucHV0U2hhZG93cywgaW5wdXQub3BhY2l0eSlcbiAgICA6IGNsZWFuSW5wdXRTaGFkb3dzIHx8IHt9XG4gIGNvbnN0IHNoYWRvd3MgPSBPYmplY3QuZW50cmllcyh7XG4gICAgLi4uREVGQVVMVF9TSEFET1dTLFxuICAgIC4uLmlucHV0U2hhZG93c1xuICB9KS5yZWR1Y2UoKHNoYWRvd3NBY2MsIFtzbG90TmFtZSwgc2hhZG93RGVmc10pID0+IHtcbiAgICBjb25zdCBzbG90Rmlyc3RXb3JkID0gc2xvdE5hbWUucmVwbGFjZSgvW0EtWl0uKiQvLCAnJylcbiAgICBjb25zdCBjb2xvclNsb3ROYW1lID0gaGFja0NvbnRleHREaWN0W3Nsb3RGaXJzdFdvcmRdXG4gICAgY29uc3QgaXNMaWdodE9uRGFyayA9IHJlbGF0aXZlTHVtaW5hbmNlKGNvbnZlcnQoY29sb3JzW2NvbG9yU2xvdE5hbWVdKS5yZ2IpIDwgMC41XG4gICAgY29uc3QgbW9kID0gaXNMaWdodE9uRGFyayA/IDEgOiAtMVxuICAgIGNvbnN0IG5ld1NoYWRvdyA9IHNoYWRvd0RlZnMucmVkdWNlKChzaGFkb3dBY2MsIGRlZikgPT4gW1xuICAgICAgLi4uc2hhZG93QWNjLFxuICAgICAge1xuICAgICAgICAuLi5kZWYsXG4gICAgICAgIGNvbG9yOiByZ2IyaGV4KGNvbXB1dGVEeW5hbWljQ29sb3IoXG4gICAgICAgICAgZGVmLmNvbG9yLFxuICAgICAgICAgICh2YXJpYWJsZVNsb3QpID0+IGNvbnZlcnQoY29sb3JzW3ZhcmlhYmxlU2xvdF0pLnJnYixcbiAgICAgICAgICBtb2RcbiAgICAgICAgKSlcbiAgICAgIH1cbiAgICBdLCBbXSlcbiAgICByZXR1cm4geyAuLi5zaGFkb3dzQWNjLCBbc2xvdE5hbWVdOiBuZXdTaGFkb3cgfVxuICB9LCB7fSlcblxuICByZXR1cm4ge1xuICAgIHJ1bGVzOiB7XG4gICAgICBzaGFkb3dzOiBPYmplY3RcbiAgICAgICAgLmVudHJpZXMoc2hhZG93cylcbiAgICAgIC8vIFRPRE8gZm9yIHYyLjI6IGlmIHNoYWRvdyBkb2Vzbid0IGhhdmUgbm9uLWluc2V0IHNoYWRvd3Mgd2l0aCBzcHJlYWQgPiAwIC0gb3B0aW9uYWxseVxuICAgICAgLy8gY29udmVydCBhbGwgbm9uLWluc2V0IHNoYWRvd3MgaW50byBmaWx0ZXI6IGRyb3Atc2hhZG93KCkgdG8gYm9vc3QgcGVyZm9ybWFuY2VcbiAgICAgICAgLm1hcCgoW2ssIHZdKSA9PiBbXG4gICAgICAgICAgYC0tJHtrfVNoYWRvdzogJHtnZXRDc3NTaGFkb3codil9YCxcbiAgICAgICAgICBgLS0ke2t9U2hhZG93RmlsdGVyOiAke2dldENzc1NoYWRvd0ZpbHRlcih2KX1gLFxuICAgICAgICAgIGAtLSR7a31TaGFkb3dJbnNldDogJHtnZXRDc3NTaGFkb3codiwgdHJ1ZSl9YFxuICAgICAgICBdLmpvaW4oJzsnKSlcbiAgICAgICAgLmpvaW4oJzsnKVxuICAgIH0sXG4gICAgdGhlbWU6IHtcbiAgICAgIHNoYWRvd3NcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IGNvbXBvc2VQcmVzZXQgPSAoY29sb3JzLCByYWRpaSwgc2hhZG93cywgZm9udHMpID0+IHtcbiAgcmV0dXJuIHtcbiAgICBydWxlczoge1xuICAgICAgLi4uc2hhZG93cy5ydWxlcyxcbiAgICAgIC4uLmNvbG9ycy5ydWxlcyxcbiAgICAgIC4uLnJhZGlpLnJ1bGVzLFxuICAgICAgLi4uZm9udHMucnVsZXNcbiAgICB9LFxuICAgIHRoZW1lOiB7XG4gICAgICAuLi5zaGFkb3dzLnRoZW1lLFxuICAgICAgLi4uY29sb3JzLnRoZW1lLFxuICAgICAgLi4ucmFkaWkudGhlbWUsXG4gICAgICAuLi5mb250cy50aGVtZVxuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgY29uc3QgZ2VuZXJhdGVQcmVzZXQgPSAoaW5wdXQpID0+IHtcbiAgY29uc3QgY29sb3JzID0gZ2VuZXJhdGVDb2xvcnMoaW5wdXQpXG4gIHJldHVybiBjb21wb3NlUHJlc2V0KFxuICAgIGNvbG9ycyxcbiAgICBnZW5lcmF0ZVJhZGlpKGlucHV0KSxcbiAgICBnZW5lcmF0ZVNoYWRvd3MoaW5wdXQsIGNvbG9ycy50aGVtZS5jb2xvcnMsIGNvbG9ycy5tb2QpLFxuICAgIGdlbmVyYXRlRm9udHMoaW5wdXQpXG4gIClcbn1cblxuZXhwb3J0IGNvbnN0IGdldFRoZW1lcyA9ICgpID0+IHtcbiAgY29uc3QgY2FjaGUgPSAnbm8tc3RvcmUnXG5cbiAgcmV0dXJuIHdpbmRvdy5mZXRjaCgnL3N0YXRpYy9zdHlsZXMuanNvbicsIHsgY2FjaGUgfSlcbiAgICAudGhlbigoZGF0YSkgPT4gZGF0YS5qc29uKCkpXG4gICAgLnRoZW4oKHRoZW1lcykgPT4ge1xuICAgICAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHRoZW1lcykubWFwKChbaywgdl0pID0+IHtcbiAgICAgICAgbGV0IHByb21pc2UgPSBudWxsXG4gICAgICAgIGlmICh0eXBlb2YgdiA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgICBwcm9taXNlID0gUHJvbWlzZS5yZXNvbHZlKHYpXG4gICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHYgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgcHJvbWlzZSA9IHdpbmRvdy5mZXRjaCh2LCB7IGNhY2hlIH0pXG4gICAgICAgICAgICAudGhlbigoZGF0YSkgPT4gZGF0YS5qc29uKCkpXG4gICAgICAgICAgICAuY2F0Y2goKGUpID0+IHtcbiAgICAgICAgICAgICAgY29uc29sZS5lcnJvcihlKVxuICAgICAgICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgICAgICAgfSlcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gW2ssIHByb21pc2VdXG4gICAgICB9KVxuICAgIH0pXG4gICAgLnRoZW4oKHByb21pc2VzKSA9PiB7XG4gICAgICByZXR1cm4gcHJvbWlzZXNcbiAgICAgICAgLnJlZHVjZSgoYWNjLCBbaywgdl0pID0+IHtcbiAgICAgICAgICBhY2Nba10gPSB2XG4gICAgICAgICAgcmV0dXJuIGFjY1xuICAgICAgICB9LCB7fSlcbiAgICB9KVxufVxuZXhwb3J0IGNvbnN0IGNvbG9yczJ0bzMgPSAoY29sb3JzKSA9PiB7XG4gIHJldHVybiBPYmplY3QuZW50cmllcyhjb2xvcnMpLnJlZHVjZSgoYWNjLCBbc2xvdE5hbWUsIGNvbG9yXSkgPT4ge1xuICAgIGNvbnN0IGJ0blBvc2l0aW9ucyA9IFsnJywgJ1BhbmVsJywgJ1RvcEJhciddXG4gICAgc3dpdGNoIChzbG90TmFtZSkge1xuICAgICAgY2FzZSAnbGlnaHRCZyc6XG4gICAgICAgIHJldHVybiB7IC4uLmFjYywgaGlnaGxpZ2h0OiBjb2xvciB9XG4gICAgICBjYXNlICdidG5UZXh0JzpcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAuLi5hY2MsXG4gICAgICAgICAgLi4uYnRuUG9zaXRpb25zXG4gICAgICAgICAgICAucmVkdWNlKFxuICAgICAgICAgICAgICAoc3RhdGVQb3NpdGlvbkFjYywgcG9zaXRpb24pID0+XG4gICAgICAgICAgICAgICAgKHsgLi4uc3RhdGVQb3NpdGlvbkFjYywgWydidG4nICsgcG9zaXRpb24gKyAnVGV4dCddOiBjb2xvciB9KVxuICAgICAgICAgICAgICAsIHt9XG4gICAgICAgICAgICApXG4gICAgICAgIH1cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiB7IC4uLmFjYywgW3Nsb3ROYW1lXTogY29sb3IgfVxuICAgIH1cbiAgfSwge30pXG59XG5cbi8qKlxuICogVGhpcyBoYW5kbGVzIGNvbXBhdGliaWxpdHkgaXNzdWVzIHdoZW4gaW1wb3J0aW5nIHYyIHRoZW1lJ3Mgc2hhZG93cyB0byBjdXJyZW50IGZvcm1hdFxuICpcbiAqIEJhY2sgaW4gdjIgc2hhZG93cyBhbGxvd2VkIHlvdSB0byB1c2UgZHluYW1pYyBjb2xvcnMgaG93ZXZlciB0aG9zZSB1c2VkIHB1cmUgQ1NTMyB2YXJpYWJsZXNcbiAqL1xuZXhwb3J0IGNvbnN0IHNoYWRvd3MydG8zID0gKHNoYWRvd3MsIG9wYWNpdHkpID0+IHtcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHNoYWRvd3MpLnJlZHVjZSgoc2hhZG93c0FjYywgW3Nsb3ROYW1lLCBzaGFkb3dEZWZzXSkgPT4ge1xuICAgIGNvbnN0IGlzRHluYW1pYyA9ICh7IGNvbG9yID0gJyMwMDAwMDAnIH0pID0+IGNvbG9yLnN0YXJ0c1dpdGgoJy0tJylcbiAgICBjb25zdCBnZXRPcGFjaXR5ID0gKHsgY29sb3IgfSkgPT4gb3BhY2l0eVtnZXRPcGFjaXR5U2xvdChjb2xvci5zdWJzdHJpbmcoMikuc3BsaXQoJywnKVswXSldXG4gICAgY29uc3QgbmV3U2hhZG93ID0gc2hhZG93RGVmcy5yZWR1Y2UoKHNoYWRvd0FjYywgZGVmKSA9PiBbXG4gICAgICAuLi5zaGFkb3dBY2MsXG4gICAgICB7XG4gICAgICAgIC4uLmRlZixcbiAgICAgICAgYWxwaGE6IGlzRHluYW1pYyhkZWYpID8gZ2V0T3BhY2l0eShkZWYpIHx8IDEgOiBkZWYuYWxwaGFcbiAgICAgIH1cbiAgICBdLCBbXSlcbiAgICByZXR1cm4geyAuLi5zaGFkb3dzQWNjLCBbc2xvdE5hbWVdOiBuZXdTaGFkb3cgfVxuICB9LCB7fSlcbn1cblxuZXhwb3J0IGNvbnN0IGdldFByZXNldCA9ICh2YWwpID0+IHtcbiAgcmV0dXJuIGdldFRoZW1lcygpXG4gICAgLnRoZW4oKHRoZW1lcykgPT4gdGhlbWVzW3ZhbF0gPyB0aGVtZXNbdmFsXSA6IHRoZW1lc1sncGxlcm9tYS1kYXJrJ10pXG4gICAgLnRoZW4oKHRoZW1lKSA9PiB7XG4gICAgICBjb25zdCBpc1YxID0gQXJyYXkuaXNBcnJheSh0aGVtZSlcbiAgICAgIGNvbnN0IGRhdGEgPSBpc1YxID8ge30gOiB0aGVtZS50aGVtZVxuXG4gICAgICBpZiAoaXNWMSkge1xuICAgICAgICBjb25zdCBiZyA9IGhleDJyZ2IodGhlbWVbMV0pXG4gICAgICAgIGNvbnN0IGZnID0gaGV4MnJnYih0aGVtZVsyXSlcbiAgICAgICAgY29uc3QgdGV4dCA9IGhleDJyZ2IodGhlbWVbM10pXG4gICAgICAgIGNvbnN0IGxpbmsgPSBoZXgycmdiKHRoZW1lWzRdKVxuXG4gICAgICAgIGNvbnN0IGNSZWQgPSBoZXgycmdiKHRoZW1lWzVdIHx8ICcjRkYwMDAwJylcbiAgICAgICAgY29uc3QgY0dyZWVuID0gaGV4MnJnYih0aGVtZVs2XSB8fCAnIzAwRkYwMCcpXG4gICAgICAgIGNvbnN0IGNCbHVlID0gaGV4MnJnYih0aGVtZVs3XSB8fCAnIzAwMDBGRicpXG4gICAgICAgIGNvbnN0IGNPcmFuZ2UgPSBoZXgycmdiKHRoZW1lWzhdIHx8ICcjRTNGRjAwJylcblxuICAgICAgICBkYXRhLmNvbG9ycyA9IHsgYmcsIGZnLCB0ZXh0LCBsaW5rLCBjUmVkLCBjQmx1ZSwgY0dyZWVuLCBjT3JhbmdlIH1cbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHsgdGhlbWU6IGRhdGEsIHNvdXJjZTogdGhlbWUuc291cmNlIH1cbiAgICB9KVxufVxuXG5leHBvcnQgY29uc3Qgc2V0UHJlc2V0ID0gKHZhbCkgPT4gZ2V0UHJlc2V0KHZhbCkudGhlbihkYXRhID0+IGFwcGx5VGhlbWUoZGF0YS50aGVtZSkpXG4iXSwibmFtZXMiOlsiY29udmVydCIsInJnYjJoZXgiLCJoZXgycmdiIiwicmdiYTJjc3MiLCJnZXRDc3NDb2xvciIsInJlbGF0aXZlTHVtaW5hbmNlIiwiZ2V0Q29sb3JzIiwiY29tcHV0ZUR5bmFtaWNDb2xvciIsImdldE9wYWNpdHlTbG90IiwiZGVmYXVsdFN0YXRlIiwiYXBwbHlUaGVtZSIsImlucHV0IiwiX2dlbmVyYXRlUHJlc2V0IiwiZ2VuZXJhdGVQcmVzZXQiLCJydWxlcyIsImhlYWQiLCJkb2N1bWVudCIsImJvZHkiLCJjbGFzc0xpc3QiLCJhZGQiLCJzdHlsZUVsIiwiY3JlYXRlRWxlbWVudCIsImFwcGVuZENoaWxkIiwic3R5bGVTaGVldCIsInNoZWV0IiwidG9TdHJpbmciLCJpbnNlcnRSdWxlIiwiY29uY2F0IiwicmFkaWkiLCJjb2xvcnMiLCJzaGFkb3dzIiwiZm9udHMiLCJyZW1vdmUiLCJjb25maWdDb2x1bW5zIiwiX3JlZiIsInNpZGViYXJDb2x1bW5XaWR0aCIsImNvbnRlbnRDb2x1bW5XaWR0aCIsIm5vdGlmc0NvbHVtbldpZHRoIiwiZW1vamlSZWFjdGlvbnNTY2FsZSIsImRlZmF1bHRDb25maWdDb2x1bW5zIiwiYXBwbHlDb25maWciLCJjb25maWciLCJjb2x1bW5zIiwiT2JqZWN0IiwiZW50cmllcyIsImZpbHRlciIsIl9yZWYyIiwiX3JlZjMiLCJfc2xpY2VkVG9BcnJheSIsImsiLCJ2IiwibWFwIiwiX3JlZjQiLCJfcmVmNSIsImpvaW4iLCJnZXRDc3NTaGFkb3ciLCJ1c2VzRHJvcFNoYWRvdyIsImxlbmd0aCIsIl8iLCJpbnNldCIsInNoYWQiLCJ4IiwieSIsImJsdXIiLCJzcHJlYWQiLCJjb2xvciIsImFscGhhIiwiZ2V0Q3NzU2hhZG93RmlsdGVyIiwiTnVtYmVyIiwiZ2VuZXJhdGVDb2xvcnMiLCJ0aGVtZURhdGEiLCJzb3VyY2VDb2xvcnMiLCJ0aGVtZUVuZ2luZVZlcnNpb24iLCJjb2xvcnMydG8zIiwiX2dldENvbG9ycyIsIm9wYWNpdHkiLCJodG1sQ29sb3JzIiwicmVkdWNlIiwiYWNjIiwiX3JlZjYiLCJfcmVmNyIsInNvbGlkIiwiY29tcGxldGUiLCJhIiwiX3JlZjgiLCJfcmVmOSIsIl9yZWYxMCIsIl9yZWYxMSIsInRoZW1lIiwiZ2VuZXJhdGVSYWRpaSIsImlucHV0UmFkaWkiLCJidG5SYWRpdXMiLCJfcmVmMTIiLCJfcmVmMTMiLCJlbmRzV2l0aCIsImUiLCJzcGxpdCIsIl9yZWYxNCIsIl9yZWYxNSIsIl9yZWYxNiIsIl9yZWYxNyIsImJ0biIsImNoZWNrYm94IiwicGFuZWwiLCJhdmF0YXIiLCJhdmF0YXJBbHQiLCJ0b29sdGlwIiwiYXR0YWNobWVudCIsImNoYXRNZXNzYWdlIiwiX3JlZjE4IiwiX3JlZjE5IiwiX3JlZjIwIiwiX3JlZjIxIiwiZ2VuZXJhdGVGb250cyIsIl9yZWYyMiIsIl9yZWYyMyIsIl9yZWYyNCIsIl9yZWYyNSIsIl9yZWYyNiIsIl9yZWYyNyIsIl9yZWYyOCIsIl9yZWYyOSIsImZhbWlseSIsInBvc3QiLCJwb3N0Q29kZSIsIl9yZWYzMCIsIl9yZWYzMSIsIl9yZWYzMiIsIl9yZWYzMyIsImJvcmRlciIsInRvcCIsInNoYWRvdyIsImJ1dHRvbkluc2V0RmFrZUJvcmRlcnMiLCJpbnB1dEluc2V0RmFrZUJvcmRlcnMiLCJob3Zlckdsb3ciLCJERUZBVUxUX1NIQURPV1MiLCJ0b3BCYXIiLCJwb3B1cCIsImF2YXRhclN0YXR1cyIsInBhbmVsSGVhZGVyIiwiYnV0dG9uIiwiYnV0dG9uSG92ZXIiLCJidXR0b25QcmVzc2VkIiwiZ2VuZXJhdGVTaGFkb3dzIiwiaGFja0NvbnRleHREaWN0IiwiY2xlYW5JbnB1dFNoYWRvd3MiLCJmcm9tRW50cmllcyIsIl9yZWYzNCIsIl9yZWYzNSIsIm5hbWUiLCJzaGFkb3dTbG90Iiwic2hhZG93RGVmIiwiX29iamVjdFNwcmVhZCIsImlucHV0U2hhZG93cyIsInNoYWRvd3MydG8zIiwic2hhZG93c0FjYyIsIl9yZWYzNiIsIl9yZWYzNyIsInNsb3ROYW1lIiwic2hhZG93RGVmcyIsInNsb3RGaXJzdFdvcmQiLCJyZXBsYWNlIiwiY29sb3JTbG90TmFtZSIsImlzTGlnaHRPbkRhcmsiLCJyZ2IiLCJtb2QiLCJuZXdTaGFkb3ciLCJzaGFkb3dBY2MiLCJkZWYiLCJfdG9Db25zdW1hYmxlQXJyYXkiLCJ2YXJpYWJsZVNsb3QiLCJfZGVmaW5lUHJvcGVydHkiLCJfcmVmMzgiLCJfcmVmMzkiLCJjb21wb3NlUHJlc2V0IiwiZ2V0VGhlbWVzIiwiY2FjaGUiLCJ3aW5kb3ciLCJmZXRjaCIsInRoZW4iLCJkYXRhIiwianNvbiIsInRoZW1lcyIsIl9yZWY0MCIsIl9yZWY0MSIsInByb21pc2UiLCJfdHlwZW9mIiwiUHJvbWlzZSIsInJlc29sdmUiLCJjb25zb2xlIiwiZXJyb3IiLCJwcm9taXNlcyIsIl9yZWY0MiIsIl9yZWY0MyIsIl9yZWY0NCIsIl9yZWY0NSIsImJ0blBvc2l0aW9ucyIsImhpZ2hsaWdodCIsInN0YXRlUG9zaXRpb25BY2MiLCJwb3NpdGlvbiIsIl9yZWY0NiIsIl9yZWY0NyIsImlzRHluYW1pYyIsIl9yZWY0OCIsIl9yZWY0OCRjb2xvciIsInN0YXJ0c1dpdGgiLCJnZXRPcGFjaXR5IiwiX3JlZjQ5Iiwic3Vic3RyaW5nIiwiZ2V0UHJlc2V0IiwidmFsIiwiaXNWMSIsIkFycmF5IiwiaXNBcnJheSIsImJnIiwiZmciLCJ0ZXh0IiwibGluayIsImNSZWQiLCJjR3JlZW4iLCJjQmx1ZSIsImNPcmFuZ2UiLCJzb3VyY2UiLCJzZXRQcmVzZXQiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/services/style_setter/style_setter.js\n");
/***/ }),
/***/ "./src/services/theme_data/pleromafe.js":
/*!**********************************************!*\
!*** ./src/services/theme_data/pleromafe.js ***!
\**********************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"DEFAULT_OPACITY\": () => (/* binding */ DEFAULT_OPACITY),\n/* harmony export */ \"LAYERS\": () => (/* binding */ LAYERS),\n/* harmony export */ \"SLOT_INHERITANCE\": () => (/* binding */ SLOT_INHERITANCE)\n/* harmony export */ });\n/* harmony import */ var chromatism__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! chromatism */ \"./node_modules/chromatism/dist/chromatism.cjs.js\");\n/* harmony import */ var _color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../color_convert/color_convert.js */ \"./src/services/color_convert/color_convert.js\");\n\n\n/* This is a definition of all layer combinations\n * each key is a topmost layer, each value represents layer underneath\n * this is essentially a simplified tree\n */\nvar LAYERS = {\n undelay: null,\n // root\n topBar: null,\n // no transparency support\n badge: null,\n // no transparency support\n profileTint: null,\n // doesn't matter\n fg: null,\n bg: 'underlay',\n highlight: 'bg',\n panel: 'bg',\n popover: 'bg',\n selectedMenu: 'popover',\n btn: 'bg',\n btnPanel: 'panel',\n btnTopBar: 'topBar',\n input: 'bg',\n inputPanel: 'panel',\n inputTopBar: 'topBar',\n alert: 'bg',\n alertPanel: 'panel',\n poll: 'bg',\n chatBg: 'underlay',\n chatMessage: 'chatBg'\n};\n\n/* By default opacity slots have 1 as default opacity\n * this allows redefining it to something else\n */\nvar DEFAULT_OPACITY = {\n profileTint: 0.5,\n alert: 0.5,\n input: 0.5,\n faint: 0.5,\n underlay: 0.15,\n alertPopup: 0.95\n};\n\n/** SUBJECT TO CHANGE IN THE FUTURE, this is all beta\n * Color and opacity slots definitions. Each key represents a slot.\n *\n * Short-hands:\n * String beginning with `--` - value after dashes treated as sole\n * dependency - i.e. `--value` equivalent to { depends: ['value']}\n * String beginning with `#` - value would be treated as solid color\n * defined in hexadecimal representation (i.e. #FFFFFF) and will be\n * used as default. `#FFFFFF` is equivalent to { default: '#FFFFFF'}\n *\n * Full definition:\n * @property {String[]} depends - color slot names this color depends ones.\n * cyclic dependencies are supported to some extent but not recommended.\n * @property {String} [opacity] - opacity slot used by this color slot.\n * opacity is inherited from parents. To break inheritance graph use null\n * @property {Number} [priority] - EXPERIMENTAL. used to pre-sort slots so\n * that slots with higher priority come earlier\n * @property {Function(mod, ...colors)} [color] - function that will be\n * used to determine the color. By default it just copies first color in\n * dependency list.\n * @argument {Number} mod - `1` (light-on-dark) or `-1` (dark-on-light)\n * depending on background color (for textColor)/given color.\n * @argument {...Object} deps - each argument after mod represents each\n * color from `depends` array. All colors take user customizations into\n * account and represented by { r, g, b } objects.\n * @returns {Object} resulting color, should be in { r, g, b } form\n *\n * @property {Boolean|String} [textColor] - true to mark color slot as text\n * color. This enables automatic text color generation for the slot. Use\n * 'preserve' string if you don't want text color to fall back to\n * black/white. Use 'bw' to only ever use black or white. This also makes\n * following properties required:\n * @property {String} [layer] - which layer the text sit on top on - used\n * to account for transparency in text color calculation\n * layer is inherited from parents. To break inheritance graph use null\n * @property {String} [variant] - which color slot is background (same as\n * above, used to account for transparency)\n */\nvar SLOT_INHERITANCE = {\n bg: {\n depends: [],\n opacity: 'bg',\n priority: 1\n },\n wallpaper: {\n depends: ['bg'],\n color: function color(mod, bg) {\n return (0,chromatism__WEBPACK_IMPORTED_MODULE_0__.brightness)(-2 * mod, bg).rgb;\n }\n },\n fg: {\n depends: [],\n priority: 1\n },\n text: {\n depends: [],\n layer: 'bg',\n opacity: null,\n priority: 1\n },\n underlay: {\n \"default\": '#000000',\n opacity: 'underlay'\n },\n link: {\n depends: ['accent'],\n priority: 1\n },\n accent: {\n depends: ['link'],\n priority: 1\n },\n faint: {\n depends: ['text'],\n opacity: 'faint'\n },\n faintLink: {\n depends: ['link'],\n opacity: 'faint'\n },\n postFaintLink: {\n depends: ['postLink'],\n opacity: 'faint'\n },\n cBlue: '#0000ff',\n cRed: '#FF0000',\n cGreen: '#00FF00',\n cOrange: '#E3FF00',\n profileBg: {\n depends: ['bg'],\n color: function color(mod, bg) {\n return {\n r: Math.floor(bg.r * 0.53),\n g: Math.floor(bg.g * 0.56),\n b: Math.floor(bg.b * 0.59)\n };\n }\n },\n profileTint: {\n depends: ['bg'],\n layer: 'profileTint',\n opacity: 'profileTint'\n },\n highlight: {\n depends: ['bg'],\n color: function color(mod, bg) {\n return (0,chromatism__WEBPACK_IMPORTED_MODULE_0__.brightness)(5 * mod, bg).rgb;\n }\n },\n highlightLightText: {\n depends: ['lightText'],\n layer: 'highlight',\n textColor: true\n },\n highlightPostLink: {\n depends: ['postLink'],\n layer: 'highlight',\n textColor: 'preserve'\n },\n highlightFaintText: {\n depends: ['faint'],\n layer: 'highlight',\n textColor: true\n },\n highlightFaintLink: {\n depends: ['faintLink'],\n layer: 'highlight',\n textColor: 'preserve'\n },\n highlightPostFaintLink: {\n depends: ['postFaintLink'],\n layer: 'highlight',\n textColor: 'preserve'\n },\n highlightText: {\n depends: ['text'],\n layer: 'highlight',\n textColor: true\n },\n highlightLink: {\n depends: ['link'],\n layer: 'highlight',\n textColor: 'preserve'\n },\n highlightIcon: {\n depends: ['highlight', 'highlightText'],\n color: function color(mod, bg, text) {\n return (0,_color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_1__.mixrgb)(bg, text);\n }\n },\n popover: {\n depends: ['bg'],\n opacity: 'popover'\n },\n popoverLightText: {\n depends: ['lightText'],\n layer: 'popover',\n textColor: true\n },\n popoverPostLink: {\n depends: ['postLink'],\n layer: 'popover',\n textColor: 'preserve'\n },\n popoverFaintText: {\n depends: ['faint'],\n layer: 'popover',\n textColor: true\n },\n popoverFaintLink: {\n depends: ['faintLink'],\n layer: 'popover',\n textColor: 'preserve'\n },\n popoverPostFaintLink: {\n depends: ['postFaintLink'],\n layer: 'popover',\n textColor: 'preserve'\n },\n popoverText: {\n depends: ['text'],\n layer: 'popover',\n textColor: true\n },\n popoverLink: {\n depends: ['link'],\n layer: 'popover',\n textColor: 'preserve'\n },\n popoverIcon: {\n depends: ['popover', 'popoverText'],\n color: function color(mod, bg, text) {\n return (0,_color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_1__.mixrgb)(bg, text);\n }\n },\n selectedPost: '--highlight',\n selectedPostFaintText: {\n depends: ['highlightFaintText'],\n layer: 'highlight',\n variant: 'selectedPost',\n textColor: true\n },\n selectedPostLightText: {\n depends: ['highlightLightText'],\n layer: 'highlight',\n variant: 'selectedPost',\n textColor: true\n },\n selectedPostPostLink: {\n depends: ['highlightPostLink'],\n layer: 'highlight',\n variant: 'selectedPost',\n textColor: 'preserve'\n },\n selectedPostFaintLink: {\n depends: ['highlightFaintLink'],\n layer: 'highlight',\n variant: 'selectedPost',\n textColor: 'preserve'\n },\n selectedPostText: {\n depends: ['highlightText'],\n layer: 'highlight',\n variant: 'selectedPost',\n textColor: true\n },\n selectedPostLink: {\n depends: ['highlightLink'],\n layer: 'highlight',\n variant: 'selectedPost',\n textColor: 'preserve'\n },\n selectedPostIcon: {\n depends: ['selectedPost', 'selectedPostText'],\n color: function color(mod, bg, text) {\n return (0,_color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_1__.mixrgb)(bg, text);\n }\n },\n selectedMenu: {\n depends: ['bg'],\n color: function color(mod, bg) {\n return (0,chromatism__WEBPACK_IMPORTED_MODULE_0__.brightness)(5 * mod, bg).rgb;\n }\n },\n selectedMenuLightText: {\n depends: ['highlightLightText'],\n layer: 'selectedMenu',\n variant: 'selectedMenu',\n textColor: true\n },\n selectedMenuFaintText: {\n depends: ['highlightFaintText'],\n layer: 'selectedMenu',\n variant: 'selectedMenu',\n textColor: true\n },\n selectedMenuFaintLink: {\n depends: ['highlightFaintLink'],\n layer: 'selectedMenu',\n variant: 'selectedMenu',\n textColor: 'preserve'\n },\n selectedMenuText: {\n depends: ['highlightText'],\n layer: 'selectedMenu',\n variant: 'selectedMenu',\n textColor: true\n },\n selectedMenuLink: {\n depends: ['highlightLink'],\n layer: 'selectedMenu',\n variant: 'selectedMenu',\n textColor: 'preserve'\n },\n selectedMenuIcon: {\n depends: ['selectedMenu', 'selectedMenuText'],\n color: function color(mod, bg, text) {\n return (0,_color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_1__.mixrgb)(bg, text);\n }\n },\n selectedMenuPopover: {\n depends: ['popover'],\n color: function color(mod, bg) {\n return (0,chromatism__WEBPACK_IMPORTED_MODULE_0__.brightness)(5 * mod, bg).rgb;\n }\n },\n selectedMenuPopoverLightText: {\n depends: ['selectedMenuLightText'],\n layer: 'selectedMenuPopover',\n variant: 'selectedMenuPopover',\n textColor: true\n },\n selectedMenuPopoverFaintText: {\n depends: ['selectedMenuFaintText'],\n layer: 'selectedMenuPopover',\n variant: 'selectedMenuPopover',\n textColor: true\n },\n selectedMenuPopoverFaintLink: {\n depends: ['selectedMenuFaintLink'],\n layer: 'selectedMenuPopover',\n variant: 'selectedMenuPopover',\n textColor: 'preserve'\n },\n selectedMenuPopoverText: {\n depends: ['selectedMenuText'],\n layer: 'selectedMenuPopover',\n variant: 'selectedMenuPopover',\n textColor: true\n },\n selectedMenuPopoverLink: {\n depends: ['selectedMenuLink'],\n layer: 'selectedMenuPopover',\n variant: 'selectedMenuPopover',\n textColor: 'preserve'\n },\n selectedMenuPopoverIcon: {\n depends: ['selectedMenuPopover', 'selectedMenuText'],\n color: function color(mod, bg, text) {\n return (0,_color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_1__.mixrgb)(bg, text);\n }\n },\n lightText: {\n depends: ['text'],\n layer: 'bg',\n textColor: 'preserve',\n color: function color(mod, text) {\n return (0,chromatism__WEBPACK_IMPORTED_MODULE_0__.brightness)(20 * mod, text).rgb;\n }\n },\n postLink: {\n depends: ['link'],\n layer: 'bg',\n textColor: 'preserve'\n },\n postGreentext: {\n depends: ['cGreen'],\n layer: 'bg',\n textColor: 'preserve'\n },\n postCyantext: {\n depends: ['cBlue'],\n layer: 'bg',\n textColor: 'preserve'\n },\n border: {\n depends: ['fg'],\n opacity: 'border',\n color: function color(mod, fg) {\n return (0,chromatism__WEBPACK_IMPORTED_MODULE_0__.brightness)(2 * mod, fg).rgb;\n }\n },\n poll: {\n depends: ['accent', 'bg'],\n copacity: 'poll',\n color: function color(mod, accent, bg) {\n return (0,_color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_1__.alphaBlend)(accent, 0.4, bg);\n }\n },\n pollText: {\n depends: ['text'],\n layer: 'poll',\n textColor: true\n },\n icon: {\n depends: ['bg', 'text'],\n inheritsOpacity: false,\n color: function color(mod, bg, text) {\n return (0,_color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_1__.mixrgb)(bg, text);\n }\n },\n // Foreground\n fgText: {\n depends: ['text'],\n layer: 'fg',\n textColor: true\n },\n fgLink: {\n depends: ['link'],\n layer: 'fg',\n textColor: 'preserve'\n },\n // Panel header\n panel: {\n depends: ['fg'],\n opacity: 'panel'\n },\n panelText: {\n depends: ['text'],\n layer: 'panel',\n textColor: true\n },\n panelFaint: {\n depends: ['fgText'],\n layer: 'panel',\n opacity: 'faint',\n textColor: true\n },\n panelLink: {\n depends: ['fgLink'],\n layer: 'panel',\n textColor: 'preserve'\n },\n // Top bar\n topBar: '--fg',\n topBarText: {\n depends: ['fgText'],\n layer: 'topBar',\n textColor: true\n },\n topBarLink: {\n depends: ['fgLink'],\n layer: 'topBar',\n textColor: 'preserve'\n },\n // Tabs\n tab: {\n depends: ['btn']\n },\n tabText: {\n depends: ['btnText'],\n layer: 'btn',\n textColor: true\n },\n tabActiveText: {\n depends: ['text'],\n layer: 'bg',\n textColor: true\n },\n // Buttons\n btn: {\n depends: ['fg'],\n variant: 'btn',\n opacity: 'btn'\n },\n btnText: {\n depends: ['fgText'],\n layer: 'btn',\n textColor: true\n },\n btnPanelText: {\n depends: ['btnText'],\n layer: 'btnPanel',\n variant: 'btn',\n textColor: true\n },\n btnTopBarText: {\n depends: ['btnText'],\n layer: 'btnTopBar',\n variant: 'btn',\n textColor: true\n },\n // Buttons: pressed\n btnPressed: {\n depends: ['btn'],\n layer: 'btn'\n },\n btnPressedText: {\n depends: ['btnText'],\n layer: 'btn',\n variant: 'btnPressed',\n textColor: true\n },\n btnPressedPanel: {\n depends: ['btnPressed'],\n layer: 'btn'\n },\n btnPressedPanelText: {\n depends: ['btnPanelText'],\n layer: 'btnPanel',\n variant: 'btnPressed',\n textColor: true\n },\n btnPressedTopBar: {\n depends: ['btnPressed'],\n layer: 'btn'\n },\n btnPressedTopBarText: {\n depends: ['btnTopBarText'],\n layer: 'btnTopBar',\n variant: 'btnPressed',\n textColor: true\n },\n // Buttons: toggled\n btnToggled: {\n depends: ['btn'],\n layer: 'btn',\n color: function color(mod, btn) {\n return (0,chromatism__WEBPACK_IMPORTED_MODULE_0__.brightness)(mod * 20, btn).rgb;\n }\n },\n btnToggledText: {\n depends: ['btnText'],\n layer: 'btn',\n variant: 'btnToggled',\n textColor: true\n },\n btnToggledPanelText: {\n depends: ['btnPanelText'],\n layer: 'btnPanel',\n variant: 'btnToggled',\n textColor: true\n },\n btnToggledTopBarText: {\n depends: ['btnTopBarText'],\n layer: 'btnTopBar',\n variant: 'btnToggled',\n textColor: true\n },\n // Buttons: disabled\n btnDisabled: {\n depends: ['btn', 'bg'],\n color: function color(mod, btn, bg) {\n return (0,_color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_1__.alphaBlend)(btn, 0.25, bg);\n }\n },\n btnDisabledText: {\n depends: ['btnText', 'btnDisabled'],\n layer: 'btn',\n variant: 'btnDisabled',\n color: function color(mod, text, btn) {\n return (0,_color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_1__.alphaBlend)(text, 0.25, btn);\n }\n },\n btnDisabledPanelText: {\n depends: ['btnPanelText', 'btnDisabled'],\n layer: 'btnPanel',\n variant: 'btnDisabled',\n color: function color(mod, text, btn) {\n return (0,_color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_1__.alphaBlend)(text, 0.25, btn);\n }\n },\n btnDisabledTopBarText: {\n depends: ['btnTopBarText', 'btnDisabled'],\n layer: 'btnTopBar',\n variant: 'btnDisabled',\n color: function color(mod, text, btn) {\n return (0,_color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_1__.alphaBlend)(text, 0.25, btn);\n }\n },\n // Input fields\n input: {\n depends: ['fg'],\n opacity: 'input'\n },\n inputText: {\n depends: ['text'],\n layer: 'input',\n textColor: true\n },\n inputPanelText: {\n depends: ['panelText'],\n layer: 'inputPanel',\n variant: 'input',\n textColor: true\n },\n inputTopbarText: {\n depends: ['topBarText'],\n layer: 'inputTopBar',\n variant: 'input',\n textColor: true\n },\n alertError: {\n depends: ['cRed'],\n opacity: 'alert'\n },\n alertErrorText: {\n depends: ['text'],\n layer: 'alert',\n variant: 'alertError',\n textColor: true\n },\n alertErrorPanelText: {\n depends: ['panelText'],\n layer: 'alertPanel',\n variant: 'alertError',\n textColor: true\n },\n alertWarning: {\n depends: ['cOrange'],\n opacity: 'alert'\n },\n alertWarningText: {\n depends: ['text'],\n layer: 'alert',\n variant: 'alertWarning',\n textColor: true\n },\n alertWarningPanelText: {\n depends: ['panelText'],\n layer: 'alertPanel',\n variant: 'alertWarning',\n textColor: true\n },\n alertSuccess: {\n depends: ['cGreen'],\n opacity: 'alert'\n },\n alertSuccessText: {\n depends: ['text'],\n layer: 'alert',\n variant: 'alertSuccess',\n textColor: true\n },\n alertSuccessPanelText: {\n depends: ['panelText'],\n layer: 'alertPanel',\n variant: 'alertSuccess',\n textColor: true\n },\n alertNeutral: {\n depends: ['text'],\n opacity: 'alert'\n },\n alertNeutralText: {\n depends: ['text'],\n layer: 'alert',\n variant: 'alertNeutral',\n color: function color(mod, text) {\n return (0,chromatism__WEBPACK_IMPORTED_MODULE_0__.invertLightness)(text).rgb;\n },\n textColor: true\n },\n alertNeutralPanelText: {\n depends: ['panelText'],\n layer: 'alertPanel',\n variant: 'alertNeutral',\n textColor: true\n },\n alertPopupError: {\n depends: ['alertError'],\n opacity: 'alertPopup'\n },\n alertPopupErrorText: {\n depends: ['alertErrorText'],\n layer: 'popover',\n variant: 'alertPopupError',\n textColor: true\n },\n alertPopupWarning: {\n depends: ['alertWarning'],\n opacity: 'alertPopup'\n },\n alertPopupWarningText: {\n depends: ['alertWarningText'],\n layer: 'popover',\n variant: 'alertPopupWarning',\n textColor: true\n },\n alertPopupSuccess: {\n depends: ['alertSuccess'],\n opacity: 'alertPopup'\n },\n alertPopupSuccessText: {\n depends: ['alertSuccessText'],\n layer: 'popover',\n variant: 'alertPopupSuccess',\n textColor: true\n },\n alertPopupNeutral: {\n depends: ['alertNeutral'],\n opacity: 'alertPopup'\n },\n alertPopupNeutralText: {\n depends: ['alertNeutralText'],\n layer: 'popover',\n variant: 'alertPopupNeutral',\n textColor: true\n },\n badgeNotification: '--cRed',\n badgeNotificationText: {\n depends: ['text', 'badgeNotification'],\n layer: 'badge',\n variant: 'badgeNotification',\n textColor: 'bw'\n },\n badgeNeutral: '--cGreen',\n badgeNeutralText: {\n depends: ['text', 'badgeNeutral'],\n layer: 'badge',\n variant: 'badgeNeutral',\n textColor: 'bw'\n },\n chatBg: {\n depends: ['bg']\n },\n chatMessageIncomingBg: {\n depends: ['chatBg']\n },\n chatMessageIncomingText: {\n depends: ['text'],\n layer: 'chatMessage',\n variant: 'chatMessageIncomingBg',\n textColor: true\n },\n chatMessageIncomingLink: {\n depends: ['link'],\n layer: 'chatMessage',\n variant: 'chatMessageIncomingBg',\n textColor: 'preserve'\n },\n chatMessageIncomingBorder: {\n depends: ['border'],\n opacity: 'border',\n color: function color(mod, border) {\n return (0,chromatism__WEBPACK_IMPORTED_MODULE_0__.brightness)(2 * mod, border).rgb;\n }\n },\n chatMessageOutgoingBg: {\n depends: ['chatMessageIncomingBg'],\n color: function color(mod, chatMessage) {\n return (0,chromatism__WEBPACK_IMPORTED_MODULE_0__.brightness)(5 * mod, chatMessage).rgb;\n }\n },\n chatMessageOutgoingText: {\n depends: ['text'],\n layer: 'chatMessage',\n variant: 'chatMessageOutgoingBg',\n textColor: true\n },\n chatMessageOutgoingLink: {\n depends: ['link'],\n layer: 'chatMessage',\n variant: 'chatMessageOutgoingBg',\n textColor: 'preserve'\n },\n chatMessageOutgoingBorder: {\n depends: ['chatMessageOutgoingBg'],\n opacity: 'border',\n color: function color(mod, border) {\n return (0,chromatism__WEBPACK_IMPORTED_MODULE_0__.brightness)(2 * mod, border).rgb;\n }\n }\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvdGhlbWVfZGF0YS9wbGVyb21hZmUuanMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBd0Q7QUFDYztBQUN0RTtBQUNBO0FBQ0E7QUFDQTtBQUNPLElBQU1JLE1BQU0sR0FBRztFQUNwQkMsT0FBTyxFQUFFLElBQUk7RUFBRTtFQUNmQyxNQUFNLEVBQUUsSUFBSTtFQUFFO0VBQ2RDLEtBQUssRUFBRSxJQUFJO0VBQUU7RUFDYkMsV0FBVyxFQUFFLElBQUk7RUFBRTtFQUNuQkMsRUFBRSxFQUFFLElBQUk7RUFDUkMsRUFBRSxFQUFFLFVBQVU7RUFDZEMsU0FBUyxFQUFFLElBQUk7RUFDZkMsS0FBSyxFQUFFLElBQUk7RUFDWEMsT0FBTyxFQUFFLElBQUk7RUFDYkMsWUFBWSxFQUFFLFNBQVM7RUFDdkJDLEdBQUcsRUFBRSxJQUFJO0VBQ1RDLFFBQVEsRUFBRSxPQUFPO0VBQ2pCQyxTQUFTLEVBQUUsUUFBUTtFQUNuQkMsS0FBSyxFQUFFLElBQUk7RUFDWEMsVUFBVSxFQUFFLE9BQU87RUFDbkJDLFdBQVcsRUFBRSxRQUFRO0VBQ3JCQyxLQUFLLEVBQUUsSUFBSTtFQUNYQyxVQUFVLEVBQUUsT0FBTztFQUNuQkMsSUFBSSxFQUFFLElBQUk7RUFDVkMsTUFBTSxFQUFFLFVBQVU7RUFDbEJDLFdBQVcsRUFBRTtBQUNmLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ08sSUFBTUMsZUFBZSxHQUFHO0VBQzdCbEIsV0FBVyxFQUFFLEdBQUc7RUFDaEJhLEtBQUssRUFBRSxHQUFHO0VBQ1ZILEtBQUssRUFBRSxHQUFHO0VBQ1ZTLEtBQUssRUFBRSxHQUFHO0VBQ1ZDLFFBQVEsRUFBRSxJQUFJO0VBQ2RDLFVBQVUsRUFBRTtBQUNkLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtB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cEksT0FBTyxFQUFFLENBQUMsdUJBQXVCLENBQUM7SUFDbENDLE9BQU8sRUFBRSxRQUFRO0lBQ2pCRyxLQUFLLEVBQUUsU0FBQUEsTUFBQ0MsR0FBRyxFQUFFNkQsTUFBTTtNQUFBLE9BQUtoRyxzREFBVSxDQUFDLENBQUMsR0FBR21DLEdBQUcsRUFBRTZELE1BQU0sQ0FBQyxDQUFDNUQsR0FBRztJQUFBO0VBQ3pEO0FBQ0YsQ0FBQyIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvc2VydmljZXMvdGhlbWVfZGF0YS9wbGVyb21hZmUuanM/OWRiNyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbnZlcnRMaWdodG5lc3MsIGJyaWdodG5lc3MgfSBmcm9tICdjaHJvbWF0aXNtJ1xuaW1wb3J0IHsgYWxwaGFCbGVuZCwgbWl4cmdiIH0gZnJvbSAnLi4vY29sb3JfY29udmVydC9jb2xvcl9jb252ZXJ0LmpzJ1xuLyogVGhpcyBpcyBhIGRlZmluaXRpb24gb2YgYWxsIGxheWVyIGNvbWJpbmF0aW9uc1xuICogZWFjaCBrZXkgaXMgYSB0b3Btb3N0IGxheWVyLCBlYWNoIHZhbHVlIHJlcHJlc2VudHMgbGF5ZXIgdW5kZXJuZWF0aFxuICogdGhpcyBpcyBlc3NlbnRpYWxseSBhIHNpbXBsaWZpZWQgdHJlZVxuICovXG5leHBvcnQgY29uc3QgTEFZRVJTID0ge1xuICB1bmRlbGF5OiBudWxsLCAvLyByb290XG4gIHRvcEJhcjogbnVsbCwgLy8gbm8gdHJhbnNwYXJlbmN5IHN1cHBvcnRcbiAgYmFkZ2U6IG51bGwsIC8vICBubyB0cmFuc3BhcmVuY3kgc3VwcG9ydFxuICBwcm9maWxlVGludDogbnVsbCwgLy8gZG9lc24ndCBtYXR0ZXJcbiAgZmc6IG51bGwsXG4gIGJnOiAndW5kZXJsYXknLFxuICBoaWdobGlnaHQ6ICdiZycsXG4gIHBhbmVsOiAnYmcnLFxuICBwb3BvdmVyOiAnYmcnLFxuICBzZWxlY3RlZE1lbnU6ICdwb3BvdmVyJyxcbiAgYnRuOiAnYmcnLFxuICBidG5QYW5lbDogJ3BhbmVsJyxcbiAgYnRuVG9wQmFyOiAndG9wQmFyJyxcbiAgaW5wdXQ6ICdiZycsXG4gIGlucHV0UGFuZWw6ICdwYW5lbCcsXG4gIGlucHV0VG9wQmFyOiAndG9wQmFyJyxcbiAgYWxlcnQ6ICdiZycsXG4gIGFsZXJ0UGFuZWw6ICdwYW5lbCcsXG4gIHBvbGw6ICdiZycsXG4gIGNoYXRCZzogJ3VuZGVybGF5JyxcbiAgY2hhdE1lc3NhZ2U6ICdjaGF0QmcnXG59XG5cbi8qIEJ5IGRlZmF1bHQgb3BhY2l0eSBzbG90cyBoYXZlIDEgYXMgZGVmYXVsdCBvcGFjaXR5XG4gKiB0aGlzIGFsbG93cyByZWRlZmluaW5nIGl0IHRvIHNvbWV0aGluZyBlbHNlXG4gKi9cbmV4cG9ydCBjb25zdCBERUZBVUxUX09QQUNJVFkgPSB7XG4gIHByb2ZpbGVUaW50OiAwLjUsXG4gIGFsZXJ0OiAwLjUsXG4gIGlucHV0OiAwLjUsXG4gIGZhaW50OiAwLjUsXG4gIHVuZGVybGF5OiAwLjE1LFxuICBhbGVydFBvcHVwOiAwLjk1XG59XG5cbi8qKiAgU1VCSkVDVCBUTyBDSEFOR0UgSU4gVEhFIEZVVFVSRSwgdGhpcyBpcyBhbGwgYmV0YVxuICogQ29sb3IgYW5kIG9wYWNpdHkgc2xvdHMgZGVmaW5pdGlvbnMuIEVhY2gga2V5IHJlcHJlc2VudHMgYSBzbG90LlxuICpcbiAqIFNob3J0LWhhbmRzOlxuICogU3RyaW5nIGJlZ2lubmluZyB3aXRoIGAtLWAgLSB2YWx1ZSBhZnRlciBkYXNoZXMgdHJlYXRlZCBhcyBzb2xlXG4gKiAgICAgZGVwZW5kZW5jeSAtIGkuZS4gYC0tdmFsdWVgIGVxdWl2YWxlbnQgdG8geyBkZXBlbmRzOiBbJ3ZhbHVlJ119XG4gKiBTdHJpbmcgYmVnaW5uaW5nIHdpdGggYCNgIC0gdmFsdWUgd291bGQgYmUgdHJlYXRlZCBhcyBzb2xpZCBjb2xvclxuICogICAgIGRlZmluZWQgaW4gaGV4YWRlY2ltYWwgcmVwcmVzZW50YXRpb24gKGkuZS4gI0ZGRkZGRikgYW5kIHdpbGwgYmVcbiAqICAgICB1c2VkIGFzIGRlZmF1bHQuIGAjRkZGRkZGYCBpcyBlcXVpdmFsZW50IHRvIHsgZGVmYXVsdDogJyNGRkZGRkYnfVxuICpcbiAqIEZ1bGwgZGVmaW5pdGlvbjpcbiAqIEBwcm9wZXJ0eSB7U3RyaW5nW119IGRlcGVuZHMgLSBjb2xvciBzbG90IG5hbWVzIHRoaXMgY29sb3IgZGVwZW5kcyBvbmVzLlxuICogICBjeWNsaWMgZGVwZW5kZW5jaWVzIGFyZSBzdXBwb3J0ZWQgdG8gc29tZSBleHRlbnQgYnV0IG5vdCByZWNvbW1lbmRlZC5cbiAqIEBwcm9wZXJ0eSB7U3RyaW5nfSBbb3BhY2l0eV0gLSBvcGFjaXR5IHNsb3QgdXNlZCBieSB0aGlzIGNvbG9yIHNsb3QuXG4gKiAgIG9wYWNpdHkgaXMgaW5oZXJpdGVkIGZyb20gcGFyZW50cy4gVG8gYnJlYWsgaW5oZXJpdGFuY2UgZ3JhcGggdXNlIG51bGxcbiAqIEBwcm9wZXJ0eSB7TnVtYmVyfSBbcHJpb3JpdHldIC0gRVhQRVJJTUVOVEFMLiB1c2VkIHRvIHByZS1zb3J0IHNsb3RzIHNvXG4gKiAgIHRoYXQgc2xvdHMgd2l0aCBoaWdoZXIgcHJpb3JpdHkgY29tZSBlYXJsaWVyXG4gKiBAcHJvcGVydHkge0Z1bmN0aW9uKG1vZCwgLi4uY29sb3JzKX0gW2NvbG9yXSAtIGZ1bmN0aW9uIHRoYXQgd2lsbCBiZVxuICogICB1c2VkIHRvIGRldGVybWluZSB0aGUgY29sb3IuIEJ5IGRlZmF1bHQgaXQganVzdCBjb3BpZXMgZmlyc3QgY29sb3IgaW5cbiAqICAgZGVwZW5kZW5jeSBsaXN0LlxuICogQGFyZ3VtZW50IHtOdW1iZXJ9IG1vZCAtIGAxYCAobGlnaHQtb24tZGFyaykgb3IgYC0xYCAoZGFyay1vbi1saWdodClcbiAqICAgZGVwZW5kaW5nIG9uIGJhY2tncm91bmQgY29sb3IgKGZvciB0ZXh0Q29sb3IpL2dpdmVuIGNvbG9yLlxuICogQGFyZ3VtZW50IHsuLi5PYmplY3R9IGRlcHMgLSBlYWNoIGFyZ3VtZW50IGFmdGVyIG1vZCByZXByZXNlbnRzIGVhY2hcbiAqICAgY29sb3IgZnJvbSBgZGVwZW5kc2AgYXJyYXkuIEFsbCBjb2xvcnMgdGFrZSB1c2VyIGN1c3RvbWl6YXRpb25zIGludG9cbiAqICAgYWNjb3VudCBhbmQgcmVwcmVzZW50ZWQgYnkgeyByLCBnLCBiIH0gb2JqZWN0cy5cbiAqIEByZXR1cm5zIHtPYmplY3R9IHJlc3VsdGluZyBjb2xvciwgc2hvdWxkIGJlIGluIHsgciwgZywgYiB9IGZvcm1cbiAqXG4gKiBAcHJvcGVydHkge0Jvb2xlYW58U3RyaW5nfSBbdGV4dENvbG9yXSAtIHRydWUgdG8gbWFyayBjb2xvciBzbG90IGFzIHRleHRcbiAqICAgY29sb3IuIFRoaXMgZW5hYmxlcyBhdXRvbWF0aWMgdGV4dCBjb2xvciBnZW5lcmF0aW9uIGZvciB0aGUgc2xvdC4gVXNlXG4gKiAgICdwcmVzZXJ2ZScgc3RyaW5nIGlmIHlvdSBkb24ndCB3YW50IHRleHQgY29sb3IgdG8gZmFsbCBiYWNrIHRvXG4gKiAgIGJsYWNrL3doaXRlLiBVc2UgJ2J3JyB0byBvbmx5IGV2ZXIgdXNlIGJsYWNrIG9yIHdoaXRlLiBUaGlzIGFsc28gbWFrZXNcbiAqICAgZm9sbG93aW5nIHByb3BlcnRpZXMgcmVxdWlyZWQ6XG4gKiBAcHJvcGVydHkge1N0cmluZ30gW2xheWVyXSAtIHdoaWNoIGxheWVyIHRoZSB0ZXh0IHNpdCBvbiB0b3Agb24gLSB1c2VkXG4gKiAgIHRvIGFjY291bnQgZm9yIHRyYW5zcGFyZW5jeSBpbiB0ZXh0IGNvbG9yIGNhbGN1bGF0aW9uXG4gKiAgIGxheWVyIGlzIGluaGVyaXRlZCBmcm9tIHBhcmVudHMuIFRvIGJyZWFrIGluaGVyaXRhbmNlIGdyYXBoIHVzZSBudWxsXG4gKiBAcHJvcGVydHkge1N0cmluZ30gW3ZhcmlhbnRdIC0gd2hpY2ggY29sb3Igc2xvdCBpcyBiYWNrZ3JvdW5kIChzYW1lIGFzXG4gKiAgIGFib3ZlLCB1c2VkIHRvIGFjY291bnQgZm9yIHRyYW5zcGFyZW5jeSlcbiAqL1xuZXhwb3J0IGNvbnN0IFNMT1RfSU5IRVJJVEFOQ0UgPSB7XG4gIGJnOiB7XG4gICAgZGVwZW5kczogW10sXG4gICAgb3BhY2l0eTogJ2JnJyxcbiAgICBwcmlvcml0eTogMVxuICB9LFxuICB3YWxscGFwZXI6IHtcbiAgICBkZXBlbmRzOiBbJ2JnJ10sXG4gICAgY29sb3I6IChtb2QsIGJnKSA9PiBicmlnaHRuZXNzKC0yICogbW9kLCBiZykucmdiXG4gIH0sXG4gIGZnOiB7XG4gICAgZGVwZW5kczogW10sXG4gICAgcHJpb3JpdHk6IDFcbiAgfSxcbiAgdGV4dDoge1xuICAgIGRlcGVuZHM6IFtdLFxuICAgIGxheWVyOiAnYmcnLFxuICAgIG9wYWNpdHk6IG51bGwsXG4gICAgcHJpb3JpdHk6IDFcbiAgfSxcbiAgdW5kZXJsYXk6IHtcbiAgICBkZWZhdWx0OiAnIzAwMDAwMCcsXG4gICAgb3BhY2l0eTogJ3VuZGVybGF5J1xuICB9LFxuICBsaW5rOiB7XG4gICAgZGVwZW5kczogWydhY2NlbnQnXSxcbiAgICBwcmlvcml0eTogMVxuICB9LFxuICBhY2NlbnQ6IHtcbiAgICBkZXBlbmRzOiBbJ2xpbmsnXSxcbiAgICBwcmlvcml0eTogMVxuICB9LFxuICBmYWludDoge1xuICAgIGRlcGVuZHM6IFsndGV4dCddLFxuICAgIG9wYWNpdHk6ICdmYWludCdcbiAgfSxcbiAgZmFpbnRMaW5rOiB7XG4gICAgZGVwZW5kczogWydsaW5rJ10sXG4gICAgb3BhY2l0eTogJ2ZhaW50J1xuICB9LFxuICBwb3N0RmFpbnRMaW5rOiB7XG4gICAgZGVwZW5kczogWydwb3N0TGluayddLFxuICAgIG9wYWNpdHk6ICdmYWludCdcbiAgfSxcblxuICBjQmx1ZTogJyMwMDAwZmYnLFxuICBjUmVkOiAnI0ZGMDAwMCcsXG4gIGNHcmVlbjogJyMwMEZGMDAnLFxuICBjT3JhbmdlOiAnI0UzRkYwMCcsXG5cbiAgcHJvZmlsZUJnOiB7XG4gICAgZGVwZW5kczogWydiZyddLFxuICAgIGNvbG9yOiAobW9kLCBiZykgPT4gKHtcbiAgICAgIHI6IE1hdGguZmxvb3IoYmcuciAqIDAuNTMpLFxuICAgICAgZzogTWF0aC5mbG9vcihiZy5nICogMC41NiksXG4gICAgICBiOiBNYXRoLmZsb29yKGJnLmIgKiAwLjU5KVxuICAgIH0pXG4gIH0sXG4gIHByb2ZpbGVUaW50OiB7XG4gICAgZGVwZW5kczogWydiZyddLFxuICAgIGxheWVyOiAncHJvZmlsZVRpbnQnLFxuICAgIG9wYWNpdHk6ICdwcm9maWxlVGludCdcbiAgfSxcblxuICBoaWdobGlnaHQ6IHtcbiAgICBkZXBlbmRzOiBbJ2JnJ10sXG4gICAgY29sb3I6IChtb2QsIGJnKSA9PiBicmlnaHRuZXNzKDUgKiBtb2QsIGJnKS5yZ2JcbiAgfSxcbiAgaGlnaGxpZ2h0TGlnaHRUZXh0OiB7XG4gICAgZGVwZW5kczogWydsaWdodFRleHQnXSxcbiAgICBsYXllcjogJ2hpZ2hsaWdodCcsXG4gICAgdGV4dENvbG9yOiB0cnVlXG4gIH0sXG4gIGhpZ2hsaWdodFBvc3RMaW5rOiB7XG4gICAgZGVwZW5kczogWydwb3N0TGluayddLFxuICAgIGxheWVyOiAnaGlnaGxpZ2h0JyxcbiAgICB0ZXh0Q29sb3I6ICdwcmVzZXJ2ZSdcbiAgfSxcbiAgaGlnaGxpZ2h0RmFpbnRUZXh0OiB7XG4gICAgZGVwZW5kczogWydmYWludCddLFxuICAgIGxheWVyOiAnaGlnaGxpZ2h0JyxcbiAgICB0ZXh0Q29sb3I6IHRydWVcbiAgfSxcbiAgaGlnaGxpZ2h0RmFpbnRMaW5rOiB7XG4gICAgZGVwZW5kczogWydmYWludExpbmsnXSxcbiAgICBsYXllcjogJ2hpZ2hsaWdodCcsXG4gICAgdGV4dENvbG9yOiAncHJlc2VydmUnXG4gIH0sXG4gIGhpZ2hsaWdodFBvc3RGYWludExpbms6IHtcbiAgICBkZXBlbmRzOiBbJ3Bvc3RGYWludExpbmsnXSxcbiAgICBsYXllcjogJ2hpZ2hsaWdodCcsXG4gICAgdGV4dENvbG9yOiAncHJlc2VydmUnXG4gIH0sXG4gIGhpZ2hsaWdodFRleHQ6IHtcbiAgICBkZXBlbmRzOiBbJ3RleHQnXSxcbiAgICBsYXllcjogJ2hpZ2hsaWdodCcsXG4gICAgdGV4dENvbG9yOiB0cnVlXG4gIH0sXG4gIGhpZ2hsaWdodExpbms6IHtcbiAgICBkZXBlbmRzOiBbJ2xpbmsnXSxcbiAgICBsYXllcjogJ2hpZ2hsaWdodCcsXG4gICAgdGV4dENvbG9yOiAncHJlc2VydmUnXG4gIH0sXG4gIGhpZ2hsaWdodEljb246IHtcbiAgICBkZXBlbmRzOiBbJ2hpZ2hsaWdodCcsICdoaWdobGlnaHRUZXh0J10sXG4gICAgY29sb3I6IChtb2QsIGJnLCB0ZXh0KSA9PiBtaXhyZ2IoYmcsIHRleHQpXG4gIH0sXG5cbiAgcG9wb3Zlcjoge1xuICAgIGRlcGVuZHM6IFsnYmcnXSxcbiAgICBvcGFjaXR5OiAncG9wb3ZlcidcbiAgfSxcbiAgcG9wb3ZlckxpZ2h0VGV4dDoge1xuICAgIGRlcGVuZHM6IFsnbGlnaHRUZXh0J10sXG4gICAgbGF5ZXI6ICdwb3BvdmVyJyxcbiAgICB0ZXh0Q29sb3I6IHRydWVcbiAgfSxcbiAgcG9wb3ZlclBvc3RMaW5rOiB7XG4gICAgZGVwZW5kczogWydwb3N0TGluayddLFxuICAgIGxheWVyOiAncG9wb3ZlcicsXG4gICAgdGV4dENvbG9yOiAncHJlc2VydmUnXG4gIH0sXG4gIHBvcG92ZXJGYWludFRleHQ6IHtcbiAgICBkZXBlbmRzOiBbJ2ZhaW50J10sXG4gICAgbGF5ZXI6ICdwb3BvdmVyJyxcbiAgICB0ZXh0Q29sb3I6IHRydWVcbiAgfSxcbiAgcG9wb3ZlckZhaW50TGluazoge1xuICAgIGRlcGVuZHM6IFsnZmFpbnRMaW5rJ10sXG4gICAgbGF5ZXI6ICdwb3BvdmVyJyxcbiAgICB0ZXh0Q29sb3I6ICdwcmVzZXJ2ZSdcbiAgfSxcbiAgcG9wb3ZlclBvc3RGYWludExpbms6IHtcbiAgICBkZXBlbmRzOiBbJ3Bvc3RGYWludExpbmsnXSxcbiAgICBsYXllcjogJ3BvcG92ZXInLFxuICAgIHRleHRDb2xvcjogJ3ByZXNlcnZlJ1xuICB9LFxuICBwb3BvdmVyVGV4dDoge1xuICAgIGRlcGVuZHM6IFsndGV4dCddLFxuICAgIGxheWVyOiAncG9wb3ZlcicsXG4gICAgdGV4dENvbG9yOiB0cnVlXG4gIH0sXG4gIHBvcG92ZXJMaW5rOiB7XG4gICAgZGVwZW5kczogWydsaW5rJ10sXG4gICAgbGF5ZXI6ICdwb3BvdmVyJyxcbiAgICB0ZXh0Q29sb3I6ICdwcmVzZXJ2ZSdcbiAgfSxcbiAgcG9wb3Zlckljb246IHtcbiAgICBkZXBlbmRzOiBbJ3BvcG92ZXInLCAncG9wb3ZlclRleHQnXSxcbiAgICBjb2xvcjogKG1vZCwgYmcsIHRleHQpID0+IG1peHJnYihiZywgdGV4dClcbiAgfSxcblxuICBzZWxlY3RlZFBvc3Q6ICctLWhpZ2hsaWdodCcsXG4gIHNlbGVjdGVkUG9zdEZhaW50VGV4dDoge1xuICAgIGRlcGVuZHM6IFsnaGlnaGxpZ2h0RmFpbnRUZXh0J10sXG4gICAgbGF5ZXI6ICdoaWdobGlnaHQnLFxuICAgIHZhcmlhbnQ6ICdzZWxlY3RlZFBvc3QnLFxuICAgIHRleHRDb2xvcjogdHJ1ZVxuICB9LFxuICBzZWxlY3RlZFBvc3RMaWdodFRleHQ6IHtcbiAgICBkZXBlbmRzOiBbJ2hpZ2hsaWdodExpZ2h0VGV4dCddLFxuICAgIGxheWVyOiAnaGlnaGxpZ2h0JyxcbiAgICB2YXJpYW50OiAnc2VsZWN0ZWRQb3N0JyxcbiAgICB0ZXh0Q29sb3I6IHRydWVcbiAgfSxcbiAgc2VsZWN0ZWRQb3N0UG9zdExpbms6IHtcbiAgICBkZXBlbmRzOiBbJ2hpZ2hsaWdodFBvc3RMaW5rJ10sXG4gICAgbGF5ZXI6ICdoaWdobGlnaHQnLFxuICAgIHZhcmlhbnQ6ICdzZWxlY3RlZFBvc3QnLFxuICAgIHRleHRDb2xvcjogJ3ByZXNlcnZlJ1xuICB9LFxuICBzZWxlY3RlZFBvc3RGYWludExpbms6IHtcbiAgICBkZXBlbmRzOiBbJ2hpZ2hsaWdodEZhaW50TGluayddLFxuICAgIGxheWVyOiAnaGlnaGxpZ2h0JyxcbiAgICB2YXJpYW50OiAnc2VsZWN0ZWRQb3N0JyxcbiAgICB0ZXh0Q29sb3I6ICdwcmVzZXJ2ZSdcbiAgfSxcbiAgc2VsZWN0ZWRQb3N0VGV4dDoge1xuICAgIGRlcGVuZHM6IFsnaGlnaGxpZ2h0VGV4dCddLFxuICAgIGxheWVyOiAnaGlnaGxpZ2h0JyxcbiAgICB2YXJpYW50OiAnc2VsZWN0ZWRQb3N0JyxcbiAgICB0ZXh0Q29sb3I6IHRydWVcbiAgfSxcbiAgc2VsZWN0ZWRQb3N0TGluazoge1xuICAgIGRlcGVuZHM6IFsnaGlnaGxpZ2h0TGluayddLFxuICAgIGxheWVyOiAnaGlnaGxpZ2h0JyxcbiAgICB2YXJpYW50OiAnc2VsZWN0ZWRQb3N0JyxcbiAgICB0ZXh0Q29sb3I6ICdwcmVzZXJ2ZSdcbiAgfSxcbiAgc2VsZWN0ZWRQb3N0SWNvbjoge1xuICAgIGRlcGVuZHM6IFsnc2VsZWN0ZWRQb3N0JywgJ3NlbGVjdGVkUG9zdFRleHQnXSxcbiAgICBjb2xvcjogKG1vZCwgYmcsIHRleHQpID0+IG1peHJnYihiZywgdGV4dClcbiAgfSxcblxuICBzZWxlY3RlZE1lbnU6IHtcbiAgICBkZXBlbmRzOiBbJ2JnJ10sXG4gICAgY29sb3I6IChtb2QsIGJnKSA9PiBicmlnaHRuZXNzKDUgKiBtb2QsIGJnKS5yZ2JcbiAgfSxcbiAgc2VsZWN0ZWRNZW51TGlnaHRUZXh0OiB7XG4gICAgZGVwZW5kczogWydoaWdobGlnaHRMaWdodFRleHQnXSxcbiAgICBsYXllcjogJ3NlbGVjdGVkTWVudScsXG4gICAgdmFyaWFudDogJ3NlbGVjdGVkTWVudScsXG4gICAgdGV4dENvbG9yOiB0cnVlXG4gIH0sXG4gIHNlbGVjdGVkTWVudUZhaW50VGV4dDoge1xuICAgIGRlcGVuZHM6IFsnaGlnaGxpZ2h0RmFpbnRUZXh0J10sXG4gICAgbGF5ZXI6ICdzZWxlY3RlZE1lbnUnLFxuICAgIHZhcmlhbnQ6ICdzZWxlY3RlZE1lbnUnLFxuICAgIHRleHRDb2xvcjogdHJ1ZVxuICB9LFxuICBzZWxlY3RlZE1lbnVGYWludExpbms6IHtcbiAgICBkZXBlbmRzOiBbJ2hpZ2hsaWdodEZhaW50TGluayddLFxuICAgIGxheWVyOiAnc2VsZWN0ZWRNZW51JyxcbiAgICB2YXJpYW50OiAnc2VsZWN0ZWRNZW51JyxcbiAgICB0ZXh0Q29sb3I6ICdwcmVzZXJ2ZSdcbiAgfSxcbiAgc2VsZWN0ZWRNZW51VGV4dDoge1xuICAgIGRlcGVuZHM6IFsnaGlnaGxpZ2h0VGV4dCddLFxuICAgIGxheWVyOiAnc2VsZWN0ZWRNZW51JyxcbiAgICB2YXJpYW50OiAnc2VsZWN0ZWRNZW51JyxcbiAgICB0ZXh0Q29sb3I6IHRydWVcbiAgfSxcbiAgc2VsZWN0ZWRNZW51TGluazoge1xuICAgIGRlcGVuZHM6IFsnaGlnaGxpZ2h0TGluayddLFxuICAgIGxheWVyOiAnc2VsZWN0ZWRNZW51JyxcbiAgICB2YXJpYW50OiAnc2VsZWN0ZWRNZW51JyxcbiAgICB0ZXh0Q29sb3I6ICdwcmVzZXJ2ZSdcbiAgfSxcbiAgc2VsZWN0ZWRNZW51SWNvbjoge1xuICAgIGRlcGVuZHM6IFsnc2VsZWN0ZWRNZW51JywgJ3NlbGVjdGVkTWVudVRleHQnXSxcbiAgICBjb2xvcjogKG1vZCwgYmcsIHRleHQpID0+IG1peHJnYihiZywgdGV4dClcbiAgfSxcblxuICBzZWxlY3RlZE1lbnVQb3BvdmVyOiB7XG4gICAgZGVwZW5kczogWydwb3BvdmVyJ10sXG4gICAgY29sb3I6IChtb2QsIGJnKSA9PiBicmlnaHRuZXNzKDUgKiBtb2QsIGJnKS5yZ2JcbiAgfSxcbiAgc2VsZWN0ZWRNZW51UG9wb3ZlckxpZ2h0VGV4dDoge1xuICAgIGRlcGVuZHM6IFsnc2VsZWN0ZWRNZW51TGlnaHRUZXh0J10sXG4gICAgbGF5ZXI6ICdzZWxlY3RlZE1lbnVQb3BvdmVyJyxcbiAgICB2YXJpYW50OiAnc2VsZWN0ZWRNZW51UG9wb3ZlcicsXG4gICAgdGV4dENvbG9yOiB0cnVlXG4gIH0sXG4gIHNlbGVjdGVkTWVudVBvcG92ZXJGYWludFRleHQ6IHtcbiAgICBkZXBlbmRzOiBbJ3NlbGVjdGVkTWVudUZhaW50VGV4dCddLFxuICAgIGxheWVyOiAnc2VsZWN0ZWRNZW51UG9wb3ZlcicsXG4gICAgdmFyaWFudDogJ3NlbGVjdGVkTWVudVBvcG92ZXInLFxuICAgIHRleHRDb2xvcjogdHJ1ZVxuICB9LFxuICBzZWxlY3RlZE1lbnVQb3BvdmVyRmFpbnRMaW5rOiB7XG4gICAgZGVwZW5kczogWydzZWxlY3RlZE1lbnVGYWludExpbmsnXSxcbiAgICBsYXllcjogJ3NlbGVjdGVkTWVudVBvcG92ZXInLFxuICAgIHZhcmlhbnQ6ICdzZWxlY3RlZE1lbnVQb3BvdmVyJyxcbiAgICB0ZXh0Q29sb3I6ICdwcmVzZXJ2ZSdcbiAgfSxcbiAgc2VsZWN0ZWRNZW51UG9wb3ZlclRleHQ6IHtcbiAgICBkZXBlbmRzOiBbJ3NlbGVjdGVkTWVudVRleHQnXSxcbiAgICBsYXllcjogJ3NlbGVjdGVkTWVudVBvcG92ZXInLFxuICAgIHZhcmlhbnQ6ICdzZWxlY3RlZE1lbnVQb3BvdmVyJyxcbiAgICB0ZXh0Q29sb3I6IHRydWVcbiAgfSxcbiAgc2VsZWN0ZWRNZW51UG9wb3Zlckxpbms6IHtcbiAgICBkZXBlbmRzOiBbJ3NlbGVjdGVkTWVudUxpbmsnXSxcbiAgICBsYXllcjogJ3NlbGVjdGVkTWVudVBvcG92ZXInLFxuICAgIHZhcmlhbnQ6ICdzZWxlY3RlZE1lbnVQb3BvdmVyJyxcbiAgICB0ZXh0Q29sb3I6ICdwcmVzZXJ2ZSdcbiAgfSxcbiAgc2VsZWN0ZWRNZW51UG9wb3Zlckljb246IHtcbiAgICBkZXBlbmRzOiBbJ3NlbGVjdGVkTWVudVBvcG92ZXInLCAnc2VsZWN0ZWRNZW51VGV4dCddLFxuICAgIGNvbG9yOiAobW9kLCBiZywgdGV4dCkgPT4gbWl4cmdiKGJnLCB0ZXh0KVxuICB9LFxuXG4gIGxpZ2h0VGV4dDoge1xuICAgIGRlcGVuZHM6IFsndGV4dCddLFxuICAgIGxheWVyOiAnYmcnLFxuICAgIHRleHRDb2xvcjogJ3ByZXNlcnZlJyxcbiAgICBjb2xvcjogKG1vZCwgdGV4dCkgPT4gYnJpZ2h0bmVzcygyMCAqIG1vZCwgdGV4dCkucmdiXG4gIH0sXG5cbiAgcG9zdExpbms6IHtcbiAgICBkZXBlbmRzOiBbJ2xpbmsnXSxcbiAgICBsYXllcjogJ2JnJyxcbiAgICB0ZXh0Q29sb3I6ICdwcmVzZXJ2ZSdcbiAgfSxcblxuICBwb3N0R3JlZW50ZXh0OiB7XG4gICAgZGVwZW5kczogWydjR3JlZW4nXSxcbiAgICBsYXllcjogJ2JnJyxcbiAgICB0ZXh0Q29sb3I6ICdwcmVzZXJ2ZSdcbiAgfSxcblxuICBwb3N0Q3lhbnRleHQ6IHtcbiAgICBkZXBlbmRzOiBbJ2NCbHVlJ10sXG4gICAgbGF5ZXI6ICdiZycsXG4gICAgdGV4dENvbG9yOiAncHJlc2VydmUnXG4gIH0sXG5cbiAgYm9yZGVyOiB7XG4gICAgZGVwZW5kczogWydmZyddLFxuICAgIG9wYWNpdHk6ICdib3JkZXInLFxuICAgIGNvbG9yOiAobW9kLCBmZykgPT4gYnJpZ2h0bmVzcygyICogbW9kLCBmZykucmdiXG4gIH0sXG5cbiAgcG9sbDoge1xuICAgIGRlcGVuZHM6IFsnYWNjZW50JywgJ2JnJ10sXG4gICAgY29wYWNpdHk6ICdwb2xsJyxcbiAgICBjb2xvcjogKG1vZCwgYWNjZW50LCBiZykgPT4gYWxwaGFCbGVuZChhY2NlbnQsIDAuNCwgYmcpXG4gIH0sXG4gIHBvbGxUZXh0OiB7XG4gICAgZGVwZW5kczogWyd0ZXh0J10sXG4gICAgbGF5ZXI6ICdwb2xsJyxcbiAgICB0ZXh0Q29sb3I6IHRydWVcbiAgfSxcblxuICBpY29uOiB7XG4gICAgZGVwZW5kczogWydiZycsICd0ZXh0J10sXG4gICAgaW5oZXJpdHNPcGFjaXR5OiBmYWxzZSxcbiAgICBjb2xvcjogKG1vZCwgYmcsIHRleHQpID0+IG1peHJnYihiZywgdGV4dClcbiAgfSxcblxuICAvLyBGb3JlZ3JvdW5kXG4gIGZnVGV4dDoge1xuICAgIGRlcGVuZHM6IFsndGV4dCddLFxuICAgIGxheWVyOiAnZmcnLFxuICAgIHRleHRDb2xvcjogdHJ1ZVxuICB9LFxuICBmZ0xpbms6IHtcbiAgICBkZXBlbmRzOiBbJ2xpbmsnXSxcbiAgICBsYXllcjogJ2ZnJyxcbiAgICB0ZXh0Q29sb3I6ICdwcmVzZXJ2ZSdcbiAgfSxcblxuICAvLyBQYW5lbCBoZWFkZXJcbiAgcGFuZWw6IHtcbiAgICBkZXBlbmRzOiBbJ2ZnJ10sXG4gICAgb3BhY2l0eTogJ3BhbmVsJ1xuICB9LFxuICBwYW5lbFRleHQ6IHtcbiAgICBkZXBlbmRzOiBbJ3RleHQnXSxcbiAgICBsYXllcjogJ3BhbmVsJyxcbiAgICB0ZXh0Q29sb3I6IHRydWVcbiAgfSxcbiAgcGFuZWxGYWludDoge1xuICAgIGRlcGVuZHM6IFsnZmdUZXh0J10sXG4gICAgbGF5ZXI6ICdwYW5lbCcsXG4gICAgb3BhY2l0eTogJ2ZhaW50JyxcbiAgICB0ZXh0Q29sb3I6IHRydWVcbiAgfSxcbiAgcGFuZWxMaW5rOiB7XG4gICAgZGVwZW5kczogWydmZ0xpbmsnXSxcbiAgICBsYXllcjogJ3BhbmVsJyxcbiAgICB0ZXh0Q29sb3I6ICdwcmVzZXJ2ZSdcbiAgfSxcblxuICAvLyBUb3AgYmFyXG4gIHRvcEJhcjogJy0tZmcnLFxuICB0b3BCYXJUZXh0OiB7XG4gICAgZGVwZW5kczogWydmZ1RleHQnXSxcbiAgICBsYXllcjogJ3RvcEJhcicsXG4gICAgdGV4dENvbG9yOiB0cnVlXG4gIH0sXG4gIHRvcEJhckxpbms6IHtcbiAgICBkZXBlbmRzOiBbJ2ZnTGluayddLFxuICAgIGxheWVyOiAndG9wQmFyJyxcbiAgICB0ZXh0Q29sb3I6ICdwcmVzZXJ2ZSdcbiAgfSxcblxuICAvLyBUYWJzXG4gIHRhYjoge1xuICAgIGRlcGVuZHM6IFsnYnRuJ11cbiAgfSxcbiAgdGFiVGV4dDoge1xuICAgIGRlcGVuZHM6IFsnYnRuVGV4dCddLFxuICAgIGxheWVyOiAnYnRuJyxcbiAgICB0ZXh0Q29sb3I6IHRydWVcbiAgfSxcbiAgdGFiQWN0aXZlVGV4dDoge1xuICAgIGRlcGVuZHM6IFsndGV4dCddLFxuICAgIGxheWVyOiAnYmcnLFxuICAgIHRleHRDb2xvcjogdHJ1ZVxuICB9LFxuXG4gIC8vIEJ1dHRvbnNcbiAgYnRuOiB7XG4gICAgZGVwZW5kczogWydmZyddLFxuICAgIHZhcmlhbnQ6ICdidG4nLFxuICAgIG9wYWNpdHk6ICdidG4nXG4gIH0sXG4gIGJ0blRleHQ6IHtcbiAgICBkZXBlbmRzOiBbJ2ZnVGV4dCddLFxuICAgIGxheWVyOiAnYnRuJyxcbiAgICB0ZXh0Q29sb3I6IHRydWVcbiAgfSxcbiAgYnRuUGFuZWxUZXh0OiB7XG4gICAgZGVwZW5kczogWydidG5UZXh0J10sXG4gICAgbGF5ZXI6ICdidG5QYW5lbCcsXG4gICAgdmFyaWFudDogJ2J0bicsXG4gICAgdGV4dENvbG9yOiB0cnVlXG4gIH0sXG4gIGJ0blRvcEJhclRleHQ6IHtcbiAgICBkZXBlbmRzOiBbJ2J0blRleHQnXSxcbiAgICBsYXllcjogJ2J0blRvcEJhcicsXG4gICAgdmFyaWFudDogJ2J0bicsXG4gICAgdGV4dENvbG9yOiB0cnVlXG4gIH0sXG5cbiAgLy8gQnV0dG9uczogcHJlc3NlZFxuICBidG5QcmVzc2VkOiB7XG4gICAgZGVwZW5kczogWydidG4nXSxcbiAgICBsYXllcjogJ2J0bidcbiAgfSxcbiAgYnRuUHJlc3NlZFRleHQ6IHtcbiAgICBkZXBlbmRzOiBbJ2J0blRleHQnXSxcbiAgICBsYXllcjogJ2J0bicsXG4gICAgdmFyaWFudDogJ2J0blByZXNzZWQnLFxuICAgIHRleHRDb2xvcjogdHJ1ZVxuICB9LFxuICBidG5QcmVzc2VkUGFuZWw6IHtcbiAgICBkZXBlbmRzOiBbJ2J0blByZXNzZWQnXSxcbiAgICBsYXllcjogJ2J0bidcbiAgfSxcbiAgYnRuUHJlc3NlZFBhbmVsVGV4dDoge1xuICAgIGRlcGVuZHM6IFsnYnRuUGFuZWxUZXh0J10sXG4gICAgbGF5ZXI6ICdidG5QYW5lbCcsXG4gICAgdmFyaWFudDogJ2J0blByZXNzZWQnLFxuICAgIHRleHRDb2xvcjogdHJ1ZVxuICB9LFxuICBidG5QcmVzc2VkVG9wQmFyOiB7XG4gICAgZGVwZW5kczogWydidG5QcmVzc2VkJ10sXG4gICAgbGF5ZXI6ICdidG4nXG4gIH0sXG4gIGJ0blByZXNzZWRUb3BCYXJUZXh0OiB7XG4gICAgZGVwZW5kczogWydidG5Ub3BCYXJUZXh0J10sXG4gICAgbGF5ZXI6ICdidG5Ub3BCYXInLFxuICAgIHZhcmlhbnQ6ICdidG5QcmVzc2VkJyxcbiAgICB0ZXh0Q29sb3I6IHRydWVcbiAgfSxcblxuICAvLyBCdXR0b25zOiB0b2dnbGVkXG4gIGJ0blRvZ2dsZWQ6IHtcbiAgICBkZXBlbmRzOiBbJ2J0biddLFxuICAgIGxheWVyOiAnYnRuJyxcbiAgICBjb2xvcjogKG1vZCwgYnRuKSA9PiBicmlnaHRuZXNzKG1vZCAqIDIwLCBidG4pLnJnYlxuICB9LFxuICBidG5Ub2dnbGVkVGV4dDoge1xuICAgIGRlcGVuZHM6IFsnYnRuVGV4dCddLFxuICAgIGxheWVyOiAnYnRuJyxcbiAgICB2YXJpYW50OiAnYnRuVG9nZ2xlZCcsXG4gICAgdGV4dENvbG9yOiB0cnVlXG4gIH0sXG4gIGJ0blRvZ2dsZWRQYW5lbFRleHQ6IHtcbiAgICBkZXBlbmRzOiBbJ2J0blBhbmVsVGV4dCddLFxuICAgIGxheWVyOiAnYnRuUGFuZWwnLFxuICAgIHZhcmlhbnQ6ICdidG5Ub2dnbGVkJyxcbiAgICB0ZXh0Q29sb3I6IHRydWVcbiAgfSxcbiAgYnRuVG9nZ2xlZFRvcEJhclRleHQ6IHtcbiAgICBkZXBlbmRzOiBbJ2J0blRvcEJhclRleHQnXSxcbiAgICBsYXllcjogJ2J0blRvcEJhcicsXG4gICAgdmFyaWFudDogJ2J0blRvZ2dsZWQnLFxuICAgIHRleHRDb2xvcjogdHJ1ZVxuICB9LFxuXG4gIC8vIEJ1dHRvbnM6IGRpc2FibGVkXG4gIGJ0bkRpc2FibGVkOiB7XG4gICAgZGVwZW5kczogWydidG4nLCAnYmcnXSxcbiAgICBjb2xvcjogKG1vZCwgYnRuLCBiZykgPT4gYWxwaGFCbGVuZChidG4sIDAuMjUsIGJnKVxuICB9LFxuICBidG5EaXNhYmxlZFRleHQ6IHtcbiAgICBkZXBlbmRzOiBbJ2J0blRleHQnLCAnYnRuRGlzYWJsZWQnXSxcbiAgICBsYXllcjogJ2J0bicsXG4gICAgdmFyaWFudDogJ2J0bkRpc2FibGVkJyxcbiAgICBjb2xvcjogKG1vZCwgdGV4dCwgYnRuKSA9PiBhbHBoYUJsZW5kKHRleHQsIDAuMjUsIGJ0bilcbiAgfSxcbiAgYnRuRGlzYWJsZWRQYW5lbFRleHQ6IHtcbiAgICBkZXBlbmRzOiBbJ2J0blBhbmVsVGV4dCcsICdidG5EaXNhYmxlZCddLFxuICAgIGxheWVyOiAnYnRuUGFuZWwnLFxuICAgIHZhcmlhbnQ6ICdidG5EaXNhYmxlZCcsXG4gICAgY29sb3I6IChtb2QsIHRleHQsIGJ0bikgPT4gYWxwaGFCbGVuZCh0ZXh0LCAwLjI1LCBidG4pXG4gIH0sXG4gIGJ0bkRpc2FibGVkVG9wQmFyVGV4dDoge1xuICAgIGRlcGVuZHM6IFsnYnRuVG9wQmFyVGV4dCcsICdidG5EaXNhYmxlZCddLFxuICAgIGxheWVyOiAnYnRuVG9wQmFyJyxcbiAgICB2YXJpYW50OiAnYnRuRGlzYWJsZWQnLFxuICAgIGNvbG9yOiAobW9kLCB0ZXh0LCBidG4pID0+IGFscGhhQmxlbmQodGV4dCwgMC4yNSwgYnRuKVxuICB9LFxuXG4gIC8vIElucHV0IGZpZWxkc1xuICBpbnB1dDoge1xuICAgIGRlcGVuZHM6IFsnZmcnXSxcbiAgICBvcGFjaXR5OiAnaW5wdXQnXG4gIH0sXG4gIGlucHV0VGV4dDoge1xuICAgIGRlcGVuZHM6IFsndGV4dCddLFxuICAgIGxheWVyOiAnaW5wdXQnLFxuICAgIHRleHRDb2xvcjogdHJ1ZVxuICB9LFxuICBpbnB1dFBhbmVsVGV4dDoge1xuICAgIGRlcGVuZHM6IFsncGFuZWxUZXh0J10sXG4gICAgbGF5ZXI6ICdpbnB1dFBhbmVsJyxcbiAgICB2YXJpYW50OiAnaW5wdXQnLFxuICAgIHRleHRDb2xvcjogdHJ1ZVxuICB9LFxuICBpbnB1dFRvcGJhclRleHQ6IHtcbiAgICBkZXBlbmRzOiBbJ3RvcEJhclRleHQnXSxcbiAgICBsYXllcjogJ2lucHV0VG9wQmFyJyxcbiAgICB2YXJpYW50OiAnaW5wdXQnLFxuICAgIHRleHRDb2xvcjogdHJ1ZVxuICB9LFxuXG4gIGFsZXJ0RXJyb3I6IHtcbiAgICBkZXBlbmRzOiBbJ2NSZWQnXSxcbiAgICBvcGFjaXR5OiAnYWxlcnQnXG4gIH0sXG4gIGFsZXJ0RXJyb3JUZXh0OiB7XG4gICAgZGVwZW5kczogWyd0ZXh0J10sXG4gICAgbGF5ZXI6ICdhbGVydCcsXG4gICAgdmFyaWFudDogJ2FsZXJ0RXJyb3InLFxuICAgIHRleHRDb2xvcjogdHJ1ZVxuICB9LFxuICBhbGVydEVycm9yUGFuZWxUZXh0OiB7XG4gICAgZGVwZW5kczogWydwYW5lbFRleHQnXSxcbiAgICBsYXllcjogJ2FsZXJ0UGFuZWwnLFxuICAgIHZhcmlhbnQ6ICdhbGVydEVycm9yJyxcbiAgICB0ZXh0Q29sb3I6IHRydWVcbiAgfSxcblxuICBhbGVydFdhcm5pbmc6IHtcbiAgICBkZXBlbmRzOiBbJ2NPcmFuZ2UnXSxcbiAgICBvcGFjaXR5OiAnYWxlcnQnXG4gIH0sXG4gIGFsZXJ0V2FybmluZ1RleHQ6IHtcbiAgICBkZXBlbmRzOiBbJ3RleHQnXSxcbiAgICBsYXllcjogJ2FsZXJ0JyxcbiAgICB2YXJpYW50OiAnYWxlcnRXYXJuaW5nJyxcbiAgICB0ZXh0Q29sb3I6IHRydWVcbiAgfSxcbiAgYWxlcnRXYXJuaW5nUGFuZWxUZXh0OiB7XG4gICAgZGVwZW5kczogWydwYW5lbFRleHQnXSxcbiAgICBsYXllcjogJ2FsZXJ0UGFuZWwnLFxuICAgIHZhcmlhbnQ6ICdhbGVydFdhcm5pbmcnLFxuICAgIHRleHRDb2xvcjogdHJ1ZVxuICB9LFxuXG4gIGFsZXJ0U3VjY2Vzczoge1xuICAgIGRlcGVuZHM6IFsnY0dyZWVuJ10sXG4gICAgb3BhY2l0eTogJ2FsZXJ0J1xuICB9LFxuICBhbGVydFN1Y2Nlc3NUZXh0OiB7XG4gICAgZGVwZW5kczogWyd0ZXh0J10sXG4gICAgbGF5ZXI6ICdhbGVydCcsXG4gICAgdmFyaWFudDogJ2FsZXJ0U3VjY2VzcycsXG4gICAgdGV4dENvbG9yOiB0cnVlXG4gIH0sXG4gIGFsZXJ0U3VjY2Vzc1BhbmVsVGV4dDoge1xuICAgIGRlcGVuZHM6IFsncGFuZWxUZXh0J10sXG4gICAgbGF5ZXI6ICdhbGVydFBhbmVsJyxcbiAgICB2YXJpYW50OiAnYWxlcnRTdWNjZXNzJyxcbiAgICB0ZXh0Q29sb3I6IHRydWVcbiAgfSxcblxuICBhbGVydE5ldXRyYWw6IHtcbiAgICBkZXBlbmRzOiBbJ3RleHQnXSxcbiAgICBvcGFjaXR5OiAnYWxlcnQnXG4gIH0sXG4gIGFsZXJ0TmV1dHJhbFRleHQ6IHtcbiAgICBkZXBlbmRzOiBbJ3RleHQnXSxcbiAgICBsYXllcjogJ2FsZXJ0JyxcbiAgICB2YXJpYW50OiAnYWxlcnROZXV0cmFsJyxcbiAgICBjb2xvcjogKG1vZCwgdGV4dCkgPT4gaW52ZXJ0TGlnaHRuZXNzKHRleHQpLnJnYixcbiAgICB0ZXh0Q29sb3I6IHRydWVcbiAgfSxcbiAgYWxlcnROZXV0cmFsUGFuZWxUZXh0OiB7XG4gICAgZGVwZW5kczogWydwYW5lbFRleHQnXSxcbiAgICBsYXllcjogJ2FsZXJ0UGFuZWwnLFxuICAgIHZhcmlhbnQ6ICdhbGVydE5ldXRyYWwnLFxuICAgIHRleHRDb2xvcjogdHJ1ZVxuICB9LFxuXG4gIGFsZXJ0UG9wdXBFcnJvcjoge1xuICAgIGRlcGVuZHM6IFsnYWxlcnRFcnJvciddLFxuICAgIG9wYWNpdHk6ICdhbGVydFBvcHVwJ1xuICB9LFxuICBhbGVydFBvcHVwRXJyb3JUZXh0OiB7XG4gICAgZGVwZW5kczogWydhbGVydEVycm9yVGV4dCddLFxuICAgIGxheWVyOiAncG9wb3ZlcicsXG4gICAgdmFyaWFudDogJ2FsZXJ0UG9wdXBFcnJvcicsXG4gICAgdGV4dENvbG9yOiB0cnVlXG4gIH0sXG5cbiAgYWxlcnRQb3B1cFdhcm5pbmc6IHtcbiAgICBkZXBlbmRzOiBbJ2FsZXJ0V2FybmluZyddLFxuICAgIG9wYWNpdHk6ICdhbGVydFBvcHVwJ1xuICB9LFxuICBhbGVydFBvcHVwV2FybmluZ1RleHQ6IHtcbiAgICBkZXBlbmRzOiBbJ2FsZXJ0V2FybmluZ1RleHQnXSxcbiAgICBsYXllcjogJ3BvcG92ZXInLFxuICAgIHZhcmlhbnQ6ICdhbGVydFBvcHVwV2FybmluZycsXG4gICAgdGV4dENvbG9yOiB0cnVlXG4gIH0sXG5cbiAgYWxlcnRQb3B1cFN1Y2Nlc3M6IHtcbiAgICBkZXBlbmRzOiBbJ2FsZXJ0U3VjY2VzcyddLFxuICAgIG9wYWNpdHk6ICdhbGVydFBvcHVwJ1xuICB9LFxuICBhbGVydFBvcHVwU3VjY2Vzc1RleHQ6IHtcbiAgICBkZXBlbmRzOiBbJ2FsZXJ0U3VjY2Vzc1RleHQnXSxcbiAgICBsYXllcjogJ3BvcG92ZXInLFxuICAgIHZhcmlhbnQ6ICdhbGVydFBvcHVwU3VjY2VzcycsXG4gICAgdGV4dENvbG9yOiB0cnVlXG4gIH0sXG5cbiAgYWxlcnRQb3B1cE5ldXRyYWw6IHtcbiAgICBkZXBlbmRzOiBbJ2FsZXJ0TmV1dHJhbCddLFxuICAgIG9wYWNpdHk6ICdhbGVydFBvcHVwJ1xuICB9LFxuICBhbGVydFBvcHVwTmV1dHJhbFRleHQ6IHtcbiAgICBkZXBlbmRzOiBbJ2FsZXJ0TmV1dHJhbFRleHQnXSxcbiAgICBsYXllcjogJ3BvcG92ZXInLFxuICAgIHZhcmlhbnQ6ICdhbGVydFBvcHVwTmV1dHJhbCcsXG4gICAgdGV4dENvbG9yOiB0cnVlXG4gIH0sXG5cbiAgYmFkZ2VOb3RpZmljYXRpb246ICctLWNSZWQnLFxuICBiYWRnZU5vdGlmaWNhdGlvblRleHQ6IHtcbiAgICBkZXBlbmRzOiBbJ3RleHQnLCAnYmFkZ2VOb3RpZmljYXRpb24nXSxcbiAgICBsYXllcjogJ2JhZGdlJyxcbiAgICB2YXJpYW50OiAnYmFkZ2VOb3RpZmljYXRpb24nLFxuICAgIHRleHRDb2xvcjogJ2J3J1xuICB9LFxuXG4gIGJhZGdlTmV1dHJhbDogJy0tY0dyZWVuJyxcbiAgYmFkZ2VOZXV0cmFsVGV4dDoge1xuICAgIGRlcGVuZHM6IFsndGV4dCcsICdiYWRnZU5ldXRyYWwnXSxcbiAgICBsYXllcjogJ2JhZGdlJyxcbiAgICB2YXJpYW50OiAnYmFkZ2VOZXV0cmFsJyxcbiAgICB0ZXh0Q29sb3I6ICdidydcbiAgfSxcblxuICBjaGF0Qmc6IHtcbiAgICBkZXBlbmRzOiBbJ2JnJ11cbiAgfSxcblxuICBjaGF0TWVzc2FnZUluY29taW5nQmc6IHtcbiAgICBkZXBlbmRzOiBbJ2NoYXRCZyddXG4gIH0sXG5cbiAgY2hhdE1lc3NhZ2VJbmNvbWluZ1RleHQ6IHtcbiAgICBkZXBlbmRzOiBbJ3RleHQnXSxcbiAgICBsYXllcjogJ2NoYXRNZXNzYWdlJyxcbiAgICB2YXJpYW50OiAnY2hhdE1lc3NhZ2VJbmNvbWluZ0JnJyxcbiAgICB0ZXh0Q29sb3I6IHRydWVcbiAgfSxcblxuICBjaGF0TWVzc2FnZUluY29taW5nTGluazoge1xuICAgIGRlcGVuZHM6IFsnbGluayddLFxuICAgIGxheWVyOiAnY2hhdE1lc3NhZ2UnLFxuICAgIHZhcmlhbnQ6ICdjaGF0TWVzc2FnZUluY29taW5nQmcnLFxuICAgIHRleHRDb2xvcjogJ3ByZXNlcnZlJ1xuICB9LFxuXG4gIGNoYXRNZXNzYWdlSW5jb21pbmdCb3JkZXI6IHtcbiAgICBkZXBlbmRzOiBbJ2JvcmRlciddLFxuICAgIG9wYWNpdHk6ICdib3JkZXInLFxuICAgIGNvbG9yOiAobW9kLCBib3JkZXIpID0+IGJyaWdodG5lc3MoMiAqIG1vZCwgYm9yZGVyKS5yZ2JcbiAgfSxcblxuICBjaGF0TWVzc2FnZU91dGdvaW5nQmc6IHtcbiAgICBkZXBlbmRzOiBbJ2NoYXRNZXNzYWdlSW5jb21pbmdCZyddLFxuICAgIGNvbG9yOiAobW9kLCBjaGF0TWVzc2FnZSkgPT4gYnJpZ2h0bmVzcyg1ICogbW9kLCBjaGF0TWVzc2FnZSkucmdiXG4gIH0sXG5cbiAgY2hhdE1lc3NhZ2VPdXRnb2luZ1RleHQ6IHtcbiAgICBkZXBlbmRzOiBbJ3RleHQnXSxcbiAgICBsYXllcjogJ2NoYXRNZXNzYWdlJyxcbiAgICB2YXJpYW50OiAnY2hhdE1lc3NhZ2VPdXRnb2luZ0JnJyxcbiAgICB0ZXh0Q29sb3I6IHRydWVcbiAgfSxcblxuICBjaGF0TWVzc2FnZU91dGdvaW5nTGluazoge1xuICAgIGRlcGVuZHM6IFsnbGluayddLFxuICAgIGxheWVyOiAnY2hhdE1lc3NhZ2UnLFxuICAgIHZhcmlhbnQ6ICdjaGF0TWVzc2FnZU91dGdvaW5nQmcnLFxuICAgIHRleHRDb2xvcjogJ3ByZXNlcnZlJ1xuICB9LFxuXG4gIGNoYXRNZXNzYWdlT3V0Z29pbmdCb3JkZXI6IHtcbiAgICBkZXBlbmRzOiBbJ2NoYXRNZXNzYWdlT3V0Z29pbmdCZyddLFxuICAgIG9wYWNpdHk6ICdib3JkZXInLFxuICAgIGNvbG9yOiAobW9kLCBib3JkZXIpID0+IGJyaWdodG5lc3MoMiAqIG1vZCwgYm9yZGVyKS5yZ2JcbiAgfVxufVxuIl0sIm5hbWVzIjpbImludmVydExpZ2h0bmVzcyIsImJyaWdodG5lc3MiLCJhbHBoYUJsZW5kIiwibWl4cmdiIiwiTEFZRVJTIiwidW5kZWxheSIsInRvcEJhciIsImJhZGdlIiwicHJvZmlsZVRpbnQiLCJmZyIsImJnIiwiaGlnaGxpZ2h0IiwicGFuZWwiLCJwb3BvdmVyIiwic2VsZWN0ZWRNZW51IiwiYnRuIiwiYnRuUGFuZWwiLCJidG5Ub3BCYXIiLCJpbnB1dCIsImlucHV0UGFuZWwiLCJpbnB1dFRvcEJhciIsImFsZXJ0IiwiYWxlcnRQYW5lbCIsInBvbGwiLCJjaGF0QmciLCJjaGF0TWVzc2FnZSIsIkRFRkFVTFRfT1BBQ0lUWSIsImZhaW50IiwidW5kZXJsYXkiLCJhbGVydFBvcHVwIiwiU0xPVF9JTkhFUklUQU5DRSIsImRlcGVuZHMiLCJvcGFjaXR5IiwicHJpb3JpdHkiLCJ3YWxscGFwZXIiLCJjb2xvciIsIm1vZCIsInJnYiIsInRleHQiLCJsYXllciIsImxpbmsiLCJhY2NlbnQiLCJmYWludExpbmsiLCJwb3N0RmFpbnRMaW5rIiwiY0JsdWUiLCJjUmVkIiwiY0dyZWVuIiwiY09yYW5nZSIsInByb2ZpbGVCZyIsInIiLCJNYXRoIiwiZmxvb3IiLCJnIiwiYiIsImhpZ2hsaWdodExpZ2h0VGV4dCIsInRleHRDb2xvciIsImhpZ2hsaWdodFBvc3RMaW5rIiwiaGlnaGxpZ2h0RmFpbnRUZXh0IiwiaGlnaGxpZ2h0RmFpbnRMaW5rIiwiaGlnaGxpZ2h0UG9zdEZhaW50TGluayIsImhpZ2hsaWdodFRleHQiLCJoaWdobGlnaHRMaW5rIiwiaGlnaGxpZ2h0SWNvbiIsInBvcG92ZXJMaWdodFRleHQiLCJwb3BvdmVyUG9zdExpbmsiLCJwb3BvdmVyRmFpbnRUZXh0IiwicG9wb3ZlckZhaW50TGluayIsInBvcG92ZXJQb3N0RmFpbnRMaW5rIiwicG9wb3ZlclRleHQiLCJwb3BvdmVyTGluayIsInBvcG92ZXJJY29uIiwic2VsZWN0ZWRQb3N0Iiwic2VsZWN0ZWRQb3N0RmFpbnRUZXh0IiwidmFyaWFudCIsInNlbGVjdGVkUG9zdExpZ2h0VGV4dCIsInNlbGVjdGVkUG9zdFBvc3RMaW5rIiwic2VsZWN0ZWRQb3N0RmFpbnRMaW5rIiwic2VsZWN0ZWRQb3N0VGV4dCIsInNlbGVjdGVkUG9zdExpbmsiLCJzZWxlY3RlZFBvc3RJY29uIiwic2VsZWN0ZWRNZW51TGlnaHRUZXh0Iiwic2VsZWN0ZWRNZW51RmFpbnRUZXh0Iiwic2VsZWN0ZWRNZW51RmFpbnRMaW5rIiwic2VsZWN0ZWRNZW51VGV4dCIsInNlbGVjdGVkTWVudUxpbmsiLCJzZWxlY3RlZE1lbnVJY29uIiwic2VsZWN0ZWRNZW51UG9wb3ZlciIsInNlbGVjdGVkTWVudVBvcG92ZXJMaWdodFRleHQiLCJzZWxlY3RlZE1lbnVQb3BvdmVyRmFpbnRUZXh0Iiwic2VsZWN0ZWRNZW51UG9wb3ZlckZhaW50TGluayIsInNlbGVjdGVkTWVudVBvcG92ZXJUZXh0Iiwic2VsZWN0ZWRNZW51UG9wb3ZlckxpbmsiLCJzZWxlY3RlZE1lbnVQb3BvdmVySWNvbiIsImxpZ2h0VGV4dCIsInBvc3RMaW5rIiwicG9zdEdyZWVudGV4dCIsInBvc3RDeWFudGV4dCIsImJvcmRlciIsImNvcGFjaXR5IiwicG9sbFRleHQiLCJpY29uIiwiaW5oZXJpdHNPcGFjaXR5IiwiZmdUZXh0IiwiZmdMaW5rIiwicGFuZWxUZXh0IiwicGFuZWxGYWludCIsInBhbmVsTGluayIsInRvcEJhclRleHQiLCJ0b3BCYXJMaW5rIiwidGFiIiwidGFiVGV4dCIsInRhYkFjdGl2ZVRleHQiLCJidG5UZXh0IiwiYnRuUGFuZWxUZXh0IiwiYnRuVG9wQmFyVGV4dCIsImJ0blByZXNzZWQiLCJidG5QcmVzc2VkVGV4dCIsImJ0blByZXNzZWRQYW5lbCIsImJ0blByZXNzZWRQYW5lbFRleHQiLCJidG5QcmVzc2VkVG9wQmFyIiwiYnRuUHJlc3NlZFRvcEJhclRleHQiLCJidG5Ub2dnbGVkIiwiYnRuVG9nZ2xlZFRleHQiLCJidG5Ub2dnbGVkUGFuZWxUZXh0IiwiYnRuVG9nZ2xlZFRvcEJhclRleHQiLCJidG5EaXNhYmxlZCIsImJ0bkRpc2FibGVkVGV4dCIsImJ0bkRpc2FibGVkUGFuZWxUZXh0IiwiYnRuRGlzYWJsZWRUb3BCYXJUZXh0IiwiaW5wdXRUZXh0IiwiaW5wdXRQYW5lbFRleHQiLCJpbnB1dFRvcGJhclRleHQiLCJhbGVydEVycm9yIiwiYWxlcnRFcnJvclRleHQiLCJhbGVydEVycm9yUGFuZWxUZXh0IiwiYWxlcnRXYXJuaW5nIiwiYWxlcnRXYXJuaW5nVGV4dCIsImFsZXJ0V2FybmluZ1BhbmVsVGV4dCIsImFsZXJ0U3VjY2VzcyIsImFsZXJ0U3VjY2Vzc1RleHQiLCJhbGVydFN1Y2Nlc3NQYW5lbFRleHQiLCJhbGVydE5ldXRyYWwiLCJhbGVydE5ldXRyYWxUZXh0IiwiYWxlcnROZXV0cmFsUGFuZWxUZXh0IiwiYWxlcnRQb3B1cEVycm9yIiwiYWxlcnRQb3B1cEVycm9yVGV4dCIsImFsZXJ0UG9wdXBXYXJuaW5nIiwiYWxlcnRQb3B1cFdhcm5pbmdUZXh0IiwiYWxlcnRQb3B1cFN1Y2Nlc3MiLCJhbGVydFBvcHVwU3VjY2Vzc1RleHQiLCJhbGVydFBvcHVwTmV1dHJhbCIsImFsZXJ0UG9wdXBOZXV0cmFsVGV4dCIsImJhZGdlTm90aWZpY2F0aW9uIiwiYmFkZ2VOb3RpZmljYXRpb25UZXh0IiwiYmFkZ2VOZXV0cmFsIiwiYmFkZ2VOZXV0cmFsVGV4dCIsImNoYXRNZXNzYWdlSW5jb21pbmdCZyIsImNoYXRNZXNzYWdlSW5jb21pbmdUZXh0IiwiY2hhdE1lc3NhZ2VJbmNvbWluZ0xpbmsiLCJjaGF0TWVzc2FnZUluY29taW5nQm9yZGVyIiwiY2hhdE1lc3NhZ2VPdXRnb2luZ0JnIiwiY2hhdE1lc3NhZ2VPdXRnb2luZ1RleHQiLCJjaGF0TWVzc2FnZU91dGdvaW5nTGluayIsImNoYXRNZXNzYWdlT3V0Z29pbmdCb3JkZXIiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/services/theme_data/pleromafe.js\n");
/***/ }),
/***/ "./src/services/theme_data/theme_data.service.js":
/*!*******************************************************!*\
!*** ./src/services/theme_data/theme_data.service.js ***!
\*******************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"CURRENT_VERSION\": () => (/* binding */ CURRENT_VERSION),\n/* harmony export */ \"OPACITIES\": () => (/* binding */ OPACITIES),\n/* harmony export */ \"SLOT_ORDERED\": () => (/* binding */ SLOT_ORDERED),\n/* harmony export */ \"computeDynamicColor\": () => (/* binding */ computeDynamicColor),\n/* harmony export */ \"getColors\": () => (/* binding */ getColors),\n/* harmony export */ \"getLayerSlot\": () => (/* binding */ getLayerSlot),\n/* harmony export */ \"getLayers\": () => (/* binding */ getLayers),\n/* harmony export */ \"getLayersArray\": () => (/* binding */ getLayersArray),\n/* harmony export */ \"getOpacitySlot\": () => (/* binding */ getOpacitySlot),\n/* harmony export */ \"topoSort\": () => (/* binding */ topoSort)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"./node_modules/@babel/runtime/helpers/esm/defineProperty.js\");\n/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ \"./node_modules/@babel/runtime/helpers/esm/slicedToArray.js\");\n/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/typeof */ \"./node_modules/@babel/runtime/helpers/esm/typeof.js\");\n/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ \"./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js\");\n/* harmony import */ var chromatism__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! chromatism */ \"./node_modules/chromatism/dist/chromatism.cjs.js\");\n/* harmony import */ var _color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../color_convert/color_convert.js */ \"./src/services/color_convert/color_convert.js\");\n/* harmony import */ var _pleromafe_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./pleromafe.js */ \"./src/services/theme_data/pleromafe.js\");\n\n\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\n\n\n/*\n * # What's all this?\n * Here be theme engine for pleromafe. All of this supposed to ease look\n * and feel customization, making widget styles and make developer's life\n * easier when it comes to supporting themes. Like many other theme systems\n * it operates on color definitions, or \"slots\" - for example you define\n * \"button\" color slot and then in UI component Button's CSS you refer to\n * it as a CSS3 Variable.\n *\n * Some applications allow you to customize colors for certain things.\n * Some UI toolkits allow you to define colors for each type of widget.\n * Most of them are pretty barebones and have no assistance for common\n * problems and cases, and in general themes themselves are very hard to\n * maintain in all aspects. This theme engine tries to solve all of the\n * common problems with themes.\n *\n * You don't have redefine several similar colors if you just want to\n * change one color - all color slots are derived from other ones, so you\n * can have at least one or two \"basic\" colors defined and have all other\n * components inherit and modify basic ones.\n *\n * You don't have to test contrast ratio for colors or pick text color for\n * each element even if you have light-on-dark elements in dark-on-light\n * theme.\n *\n * You don't have to maintain order of code for inheriting slots from othet\n * slots - dependency graph resolving does it for you.\n */\n\n/* This indicates that this version of code outputs similar theme data and\n * should be incremented if output changes - for instance if getTextColor\n * function changes and older themes no longer render text colors as\n * author intended previously.\n */\nvar CURRENT_VERSION = 3;\nvar getLayersArray = function getLayersArray(layer) {\n var data = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _pleromafe_js__WEBPACK_IMPORTED_MODULE_6__.LAYERS;\n var array = [layer];\n var parent = data[layer];\n while (parent) {\n array.unshift(parent);\n parent = data[parent];\n }\n return array;\n};\nvar getLayers = function getLayers(layer) {\n var variant = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : layer;\n var opacitySlot = arguments.length > 2 ? arguments[2] : undefined;\n var colors = arguments.length > 3 ? arguments[3] : undefined;\n var opacity = arguments.length > 4 ? arguments[4] : undefined;\n return getLayersArray(layer).map(function (currentLayer) {\n return [currentLayer === layer ? colors[variant] : colors[currentLayer], currentLayer === layer ? opacity[opacitySlot] || 1 : opacity[currentLayer]];\n });\n};\nvar getDependencies = function getDependencies(key, inheritance) {\n var data = inheritance[key];\n if (typeof data === 'string' && data.startsWith('--')) {\n return [data.substring(2)];\n } else {\n if (data === null) return [];\n var depends = data.depends,\n layer = data.layer,\n variant = data.variant;\n var layerDeps = layer ? getLayersArray(layer).map(function (currentLayer) {\n return currentLayer === layer ? variant || layer : currentLayer;\n }) : [];\n if (Array.isArray(depends)) {\n return [].concat((0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(depends), (0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(layerDeps));\n } else {\n return (0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(layerDeps);\n }\n }\n};\n\n/**\n * Sorts inheritance object topologically - dependant slots come after\n * dependencies\n *\n * @property {Object} inheritance - object defining the nodes\n * @property {Function} getDeps - function that returns dependencies for\n * given value and inheritance object.\n * @returns {String[]} keys of inheritance object, sorted in topological\n * order. Additionally, dependency-less nodes will always be first in line\n */\nvar topoSort = function topoSort() {\n var inheritance = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : _pleromafe_js__WEBPACK_IMPORTED_MODULE_6__.SLOT_INHERITANCE;\n var getDeps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : getDependencies;\n // This is an implementation of https://en.wikipedia.org/wiki/Tarjan%27s_strongly_connected_components_algorithm\n\n var allKeys = Object.keys(inheritance);\n var whites = new Set(allKeys);\n var grays = new Set();\n var blacks = new Set();\n var unprocessed = [].concat(allKeys);\n var output = [];\n var step = function step(node) {\n if (whites.has(node)) {\n // Make node \"gray\"\n whites[\"delete\"](node);\n grays.add(node);\n // Do step for each node connected to it (one way)\n getDeps(node, inheritance).forEach(step);\n // Make node \"black\"\n grays[\"delete\"](node);\n blacks.add(node);\n // Put it into the output list\n output.push(node);\n } else if (grays.has(node)) {\n console.debug('Cyclic depenency in topoSort, ignoring');\n output.push(node);\n } else if (blacks.has(node)) {\n // do nothing\n } else {\n throw new Error('Unintended condition in topoSort!');\n }\n };\n while (unprocessed.length > 0) {\n step(unprocessed.pop());\n }\n\n // The index thing is to make sorting stable on browsers\n // where Array.sort() isn't stable\n return output.map(function (data, index) {\n return {\n data: data,\n index: index\n };\n }).sort(function (_ref, _ref2) {\n var a = _ref.data,\n ai = _ref.index;\n var b = _ref2.data,\n bi = _ref2.index;\n var depsA = getDeps(a, inheritance).length;\n var depsB = getDeps(b, inheritance).length;\n if (depsA === depsB || depsB !== 0 && depsA !== 0) return ai - bi;\n if (depsA === 0 && depsB !== 0) return -1;\n if (depsB === 0 && depsA !== 0) return 1;\n return 0; // failsafe, shouldn't happen?\n }).map(function (_ref3) {\n var data = _ref3.data;\n return data;\n });\n};\nvar expandSlotValue = function expandSlotValue(value) {\n if ((0,_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(value) === 'object') return value;\n return {\n depends: value.startsWith('--') ? [value.substring(2)] : [],\n \"default\": value.startsWith('#') ? value : undefined\n };\n};\n/**\n * retrieves opacity slot for given slot. This goes up the depenency graph\n * to find which parent has opacity slot defined for it.\n * TODO refactor this\n */\nvar getOpacitySlot = function getOpacitySlot(k) {\n var inheritance = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _pleromafe_js__WEBPACK_IMPORTED_MODULE_6__.SLOT_INHERITANCE;\n var getDeps = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : getDependencies;\n var value = expandSlotValue(inheritance[k]);\n if (value.opacity === null) return;\n if (value.opacity) return value.opacity;\n var findInheritedOpacity = function findInheritedOpacity(key) {\n var visited = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [k];\n var depSlot = getDeps(key, inheritance)[0];\n if (depSlot === undefined) return;\n var dependency = inheritance[depSlot];\n if (dependency === undefined) return;\n if (dependency.opacity || dependency === null) {\n return dependency.opacity;\n } else if (dependency.depends && visited.includes(depSlot)) {\n return findInheritedOpacity(depSlot, [].concat((0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(visited), [depSlot]));\n } else {\n return null;\n }\n };\n if (value.depends) {\n return findInheritedOpacity(k);\n }\n};\n\n/**\n * retrieves layer slot for given slot. This goes up the depenency graph\n * to find which parent has opacity slot defined for it.\n * this is basically copypaste of getOpacitySlot except it checks if key is\n * in LAYERS\n * TODO refactor this\n */\nvar getLayerSlot = function getLayerSlot(k) {\n var inheritance = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _pleromafe_js__WEBPACK_IMPORTED_MODULE_6__.SLOT_INHERITANCE;\n var getDeps = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : getDependencies;\n var value = expandSlotValue(inheritance[k]);\n if (_pleromafe_js__WEBPACK_IMPORTED_MODULE_6__.LAYERS[k]) return k;\n if (value.layer === null) return;\n if (value.layer) return value.layer;\n var findInheritedLayer = function findInheritedLayer(key) {\n var visited = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [k];\n var depSlot = getDeps(key, inheritance)[0];\n if (depSlot === undefined) return;\n var dependency = inheritance[depSlot];\n if (dependency === undefined) return;\n if (dependency.layer || dependency === null) {\n return dependency.layer;\n } else if (dependency.depends) {\n return findInheritedLayer(dependency, [].concat((0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(visited), [depSlot]));\n } else {\n return null;\n }\n };\n if (value.depends) {\n return findInheritedLayer(k);\n }\n};\n\n/**\n * topologically sorted SLOT_INHERITANCE\n */\nvar SLOT_ORDERED = topoSort(Object.entries(_pleromafe_js__WEBPACK_IMPORTED_MODULE_6__.SLOT_INHERITANCE).sort(function (_ref4, _ref5) {\n var _ref6 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(_ref4, 2),\n aK = _ref6[0],\n aV = _ref6[1];\n var _ref7 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(_ref5, 2),\n bK = _ref7[0],\n bV = _ref7[1];\n return (aV && aV.priority || 0) - (bV && bV.priority || 0);\n}).reduce(function (acc, _ref8) {\n var _ref9 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(_ref8, 2),\n k = _ref9[0],\n v = _ref9[1];\n return _objectSpread(_objectSpread({}, acc), {}, (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, k, v));\n}, {}));\n\n/**\n * All opacity slots used in color slots, their default values and affected\n * color slots.\n */\nvar OPACITIES = Object.entries(_pleromafe_js__WEBPACK_IMPORTED_MODULE_6__.SLOT_INHERITANCE).reduce(function (acc, _ref10) {\n var _ref11 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(_ref10, 2),\n k = _ref11[0],\n v = _ref11[1];\n var opacity = getOpacitySlot(k, _pleromafe_js__WEBPACK_IMPORTED_MODULE_6__.SLOT_INHERITANCE, getDependencies);\n if (opacity) {\n return _objectSpread(_objectSpread({}, acc), {}, (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, opacity, {\n defaultValue: _pleromafe_js__WEBPACK_IMPORTED_MODULE_6__.DEFAULT_OPACITY[opacity] || 1,\n affectedSlots: [].concat((0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(acc[opacity] && acc[opacity].affectedSlots || []), [k])\n }));\n } else {\n return acc;\n }\n}, {});\n\n/**\n * Handle dynamic color\n */\nvar computeDynamicColor = function computeDynamicColor(sourceColor, getColor, mod) {\n if (typeof sourceColor !== 'string' || !sourceColor.startsWith('--')) return sourceColor;\n var targetColor = null;\n // Color references other color\n var _sourceColor$split$ma = sourceColor.split(/,/g).map(function (str) {\n return str.trim();\n }),\n _sourceColor$split$ma2 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(_sourceColor$split$ma, 2),\n variable = _sourceColor$split$ma2[0],\n modifier = _sourceColor$split$ma2[1];\n var variableSlot = variable.substring(2);\n targetColor = getColor(variableSlot);\n if (modifier) {\n targetColor = (0,chromatism__WEBPACK_IMPORTED_MODULE_4__.brightness)(Number.parseFloat(modifier) * mod, targetColor).rgb;\n }\n return targetColor;\n};\n\n/**\n * THE function you want to use. Takes provided colors and opacities\n * value and uses inheritance data to figure out color needed for the slot.\n */\nvar getColors = function getColors(sourceColors, sourceOpacity) {\n return SLOT_ORDERED.reduce(function (_ref12, key) {\n var colors = _ref12.colors,\n opacity = _ref12.opacity;\n var sourceColor = sourceColors[key];\n var value = expandSlotValue(_pleromafe_js__WEBPACK_IMPORTED_MODULE_6__.SLOT_INHERITANCE[key]);\n var deps = getDependencies(key, _pleromafe_js__WEBPACK_IMPORTED_MODULE_6__.SLOT_INHERITANCE);\n var isTextColor = !!value.textColor;\n var variant = value.variant || value.layer;\n var backgroundColor = null;\n if (isTextColor) {\n backgroundColor = (0,_color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_5__.alphaBlendLayers)(_objectSpread({}, colors[deps[0]] || (0,chromatism__WEBPACK_IMPORTED_MODULE_4__.convert)(sourceColors[key] || '#FF00FF').rgb), getLayers(getLayerSlot(key) || 'bg', variant || 'bg', getOpacitySlot(variant), colors, opacity));\n } else if (variant && variant !== key) {\n backgroundColor = colors[variant] || (0,chromatism__WEBPACK_IMPORTED_MODULE_4__.convert)(sourceColors[variant]).rgb;\n } else {\n backgroundColor = colors.bg || (0,chromatism__WEBPACK_IMPORTED_MODULE_4__.convert)(sourceColors.bg);\n }\n var isLightOnDark = (0,_color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_5__.relativeLuminance)(backgroundColor) < 0.5;\n var mod = isLightOnDark ? 1 : -1;\n var outputColor = null;\n if (sourceColor) {\n // Color is defined in source color\n var targetColor = sourceColor;\n if (targetColor === 'transparent') {\n // We take only layers below current one\n var layers = getLayers(getLayerSlot(key), key, getOpacitySlot(key) || key, colors, opacity).slice(0, -1);\n targetColor = _objectSpread(_objectSpread({}, (0,_color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_5__.alphaBlendLayers)((0,chromatism__WEBPACK_IMPORTED_MODULE_4__.convert)('#FF00FF').rgb, layers)), {}, {\n a: 0\n });\n } else if (typeof sourceColor === 'string' && sourceColor.startsWith('--')) {\n targetColor = computeDynamicColor(sourceColor, function (variableSlot) {\n return colors[variableSlot] || sourceColors[variableSlot];\n }, mod);\n } else if (typeof sourceColor === 'string' && sourceColor.startsWith('#')) {\n targetColor = (0,chromatism__WEBPACK_IMPORTED_MODULE_4__.convert)(targetColor).rgb;\n }\n outputColor = _objectSpread({}, targetColor);\n } else if (value[\"default\"]) {\n // same as above except in object form\n outputColor = (0,chromatism__WEBPACK_IMPORTED_MODULE_4__.convert)(value[\"default\"]).rgb;\n } else {\n // calculate color\n var defaultColorFunc = function defaultColorFunc(mod, dep) {\n return _objectSpread({}, dep);\n };\n var colorFunc = value.color || defaultColorFunc;\n if (value.textColor) {\n if (value.textColor === 'bw') {\n outputColor = (0,chromatism__WEBPACK_IMPORTED_MODULE_4__.contrastRatio)(backgroundColor).rgb;\n } else {\n var color = _objectSpread({}, colors[deps[0]]);\n if (value.color) {\n color = colorFunc.apply(void 0, [mod].concat((0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(deps.map(function (dep) {\n return _objectSpread({}, colors[dep]);\n }))));\n }\n outputColor = (0,_color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_5__.getTextColor)(backgroundColor, _objectSpread({}, color), value.textColor === 'preserve');\n }\n } else {\n // background color case\n outputColor = colorFunc.apply(void 0, [mod].concat((0,_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(deps.map(function (dep) {\n return _objectSpread({}, colors[dep]);\n }))));\n }\n }\n if (!outputColor) {\n throw new Error('Couldn\\'t generate color for ' + key);\n }\n var opacitySlot = value.opacity || getOpacitySlot(key);\n var ownOpacitySlot = value.opacity;\n if (ownOpacitySlot === null) {\n outputColor.a = 1;\n } else if (sourceColor === 'transparent') {\n outputColor.a = 0;\n } else {\n var opacityOverriden = ownOpacitySlot && sourceOpacity[opacitySlot] !== undefined;\n var dependencySlot = deps[0];\n var dependencyColor = dependencySlot && colors[dependencySlot];\n if (!ownOpacitySlot && dependencyColor && !value.textColor && ownOpacitySlot !== null) {\n // Inheriting color from dependency (weird, i know)\n // except if it's a text color or opacity slot is set to 'null'\n outputColor.a = dependencyColor.a;\n } else if (!dependencyColor && !opacitySlot) {\n // Remove any alpha channel if no dependency and no opacitySlot found\n delete outputColor.a;\n } else {\n // Otherwise try to assign opacity\n if (dependencyColor && dependencyColor.a === 0) {\n // transparent dependency shall make dependents transparent too\n outputColor.a = 0;\n } else {\n // Otherwise check if opacity is overriden and use that or default value instead\n outputColor.a = Number(opacityOverriden ? sourceOpacity[opacitySlot] : (OPACITIES[opacitySlot] || {}).defaultValue);\n }\n }\n }\n if (Number.isNaN(outputColor.a) || outputColor.a === undefined) {\n outputColor.a = 1;\n }\n if (opacitySlot) {\n return {\n colors: _objectSpread(_objectSpread({}, colors), {}, (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, key, outputColor)),\n opacity: _objectSpread(_objectSpread({}, opacity), {}, (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, opacitySlot, outputColor.a))\n };\n } else {\n return {\n colors: _objectSpread(_objectSpread({}, colors), {}, (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, key, outputColor)),\n opacity: opacity\n };\n }\n }, {\n colors: {},\n opacity: {}\n });\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvdGhlbWVfZGF0YS90aGVtZV9kYXRhLnNlcnZpY2UuanMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBK0Q7QUFDc0M7QUFDM0I7O0FBRTFFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyxJQUFNUyxlQUFlLEdBQUcsQ0FBQztBQUV6QixJQUFNQyxjQUFjLEdBQUcsU0FBakJBLGNBQWNBLENBQUlDLEtBQUssRUFBb0I7RUFBQSxJQUFsQkMsSUFBSSxHQUFBQyxTQUFBLENBQUFDLE1BQUEsUUFBQUQsU0FBQSxRQUFBRSxTQUFBLEdBQUFGLFNBQUEsTUFBR1AsaURBQU07RUFDakQsSUFBTVUsS0FBSyxHQUFHLENBQUNMLEtBQUssQ0FBQztFQUNyQixJQUFJTSxNQUFNLEdBQUdMLElBQUksQ0FBQ0QsS0FBSyxDQUFDO0VBQ3hCLE9BQU9NLE1BQU0sRUFBRTtJQUNiRCxLQUFLLENBQUNFLE9BQU8sQ0FBQ0QsTUFBTSxDQUFDO0lBQ3JCQSxNQUFNLEdBQUdMLElBQUksQ0FBQ0ssTUFBTSxDQUFDO0VBQ3ZCO0VBQ0EsT0FBT0QsS0FBSztBQUNkLENBQUM7QUFFTSxJQUFNRyxTQUFTLEdBQUcsU0FBWkEsU0FBU0EsQ0FBSVIsS0FBSyxFQUFvRDtFQUFBLElBQWxEUyxPQUFPLEdBQUFQLFNBQUEsQ0FBQUMsTUFBQSxRQUFBRCxTQUFBLFFBQUFFLFNBQUEsR0FBQUYsU0FBQSxNQUFHRixLQUFLO0VBQUEsSUFBRVUsV0FBVyxHQUFBUixTQUFBLENBQUFDLE1BQUEsT0FBQUQsU0FBQSxNQUFBRSxTQUFBO0VBQUEsSUFBRU8sTUFBTSxHQUFBVCxTQUFBLENBQUFDLE1BQUEsT0FBQUQsU0FBQSxNQUFBRSxTQUFBO0VBQUEsSUFBRVEsT0FBTyxHQUFBVixTQUFBLENBQUFDLE1BQUEsT0FBQUQsU0FBQSxNQUFBRSxTQUFBO0VBQzVFLE9BQU9MLGNBQWMsQ0FBQ0MsS0FBSyxDQUFDLENBQUNhLEdBQUcsQ0FBQyxVQUFDQyxZQUFZO0lBQUEsT0FBTSxDQUNsREEsWUFBWSxLQUFLZCxLQUFLLEdBQ2xCVyxNQUFNLENBQUNGLE9BQU8sQ0FBQyxHQUNmRSxNQUFNLENBQUNHLFlBQVksQ0FBQyxFQUN4QkEsWUFBWSxLQUFLZCxLQUFLLEdBQ2xCWSxPQUFPLENBQUNGLFdBQVcsQ0FBQyxJQUFJLENBQUMsR0FDekJFLE9BQU8sQ0FBQ0UsWUFBWSxDQUFDLENBQzFCO0VBQUEsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVELElBQU1DLGVBQWUsR0FBRyxTQUFsQkEsZUFBZUEsQ0FBSUMsR0FBRyxFQUFFQyxXQUFXLEVBQUs7RUFDNUMsSUFBTWhCLElBQUksR0FBR2dCLFdBQVcsQ0FBQ0QsR0FBRyxDQUFDO0VBQzdCLElBQUksT0FBT2YsSUFBSSxLQUFLLFFBQVEsSUFBSUEsSUFBSSxDQUFDaUIsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFO0lBQ3JELE9BQU8sQ0FBQ2pCLElBQUksQ0FBQ2tCLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztFQUM1QixDQUFDLE1BQU07SUFDTCxJQUFJbEIsSUFBSSxLQUFLLElBQUksRUFBRSxPQUFPLEVBQUU7SUFDNUIsSUFBUW1CLE9BQU8sR0FBcUJuQixJQUFJLENBQWhDbUIsT0FBTztNQUFFcEIsS0FBSyxHQUFjQyxJQUFJLENBQXZCRCxLQUFLO01BQUVTLE9BQU8sR0FBS1IsSUFBSSxDQUFoQlEsT0FBTztJQUMvQixJQUFNWSxTQUFTLEdBQUdyQixLQUFLLEdBQ25CRCxjQUFjLENBQUNDLEtBQUssQ0FBQyxDQUFDYSxHQUFHLENBQUMsVUFBQUMsWUFBWSxFQUFJO01BQzFDLE9BQU9BLFlBQVksS0FBS2QsS0FBSyxHQUN6QlMsT0FBTyxJQUFJVCxLQUFLLEdBQ2hCYyxZQUFZO0lBQ2xCLENBQUMsQ0FBQyxHQUNBLEVBQUU7SUFDTixJQUFJUSxLQUFLLENBQUNDLE9BQU8sQ0FBQ0gsT0FBTyxDQUFDLEVBQUU7TUFDMUIsVUFBQUksTUFBQSxDQUFBQyxvRkFBQSxDQUFXTCxPQUFPLEdBQUFLLG9GQUFBLENBQUtKLFNBQVM7SUFDbEMsQ0FBQyxNQUFNO01BQ0wsT0FBQUksb0ZBQUEsQ0FBV0osU0FBUztJQUN0QjtFQUNGO0FBQ0YsQ0FBQzs7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLElBQU1LLFFBQVEsR0FBRyxTQUFYQSxRQUFRQSxDQUFBLEVBR2hCO0VBQUEsSUFGSFQsV0FBVyxHQUFBZixTQUFBLENBQUFDLE1BQUEsUUFBQUQsU0FBQSxRQUFBRSxTQUFBLEdBQUFGLFNBQUEsTUFBR0wsMkRBQWdCO0VBQUEsSUFDOUI4QixPQUFPLEdBQUF6QixTQUFBLENBQUFDLE1BQUEsUUFBQUQsU0FBQSxRQUFBRSxTQUFBLEdBQUFGLFNBQUEsTUFBR2EsZUFBZTtFQUV6Qjs7RUFFQSxJQUFNYSxPQUFPLEdBQUdDLE1BQU0sQ0FBQ0MsSUFBSSxDQUFDYixXQUFXLENBQUM7RUFDeEMsSUFBTWMsTUFBTSxHQUFHLElBQUlDLEdBQUcsQ0FBQ0osT0FBTyxDQUFDO0VBQy9CLElBQU1LLEtBQUssR0FBRyxJQUFJRCxHQUFHLENBQUMsQ0FBQztFQUN2QixJQUFNRSxNQUFNLEdBQUcsSUFBSUYsR0FBRyxDQUFDLENBQUM7RUFDeEIsSUFBTUcsV0FBVyxNQUFBWCxNQUFBLENBQU9JLE9BQU8sQ0FBQztFQUNoQyxJQUFNUSxNQUFNLEdBQUcsRUFBRTtFQUVqQixJQUFNQyxJQUFJLEdBQUcsU0FBUEEsSUFBSUEsQ0FBSUMsSUFBSSxFQUFLO0lBQ3JCLElBQUlQLE1BQU0sQ0FBQ1EsR0FBRyxDQUFDRCxJQUFJLENBQUMsRUFBRTtNQUNwQjtNQUNBUCxNQUFNLFVBQU8sQ0FBQ08sSUFBSSxDQUFDO01BQ25CTCxLQUFLLENBQUNPLEdBQUcsQ0FBQ0YsSUFBSSxDQUFDO01BQ2Y7TUFDQVgsT0FBTyxDQUFDVyxJQUFJLEVBQUVyQixXQUFXLENBQUMsQ0FBQ3dCLE9BQU8sQ0FBQ0osSUFBSSxDQUFDO01BQ3hDO01BQ0FKLEtBQUssVUFBTyxDQUFDSyxJQUFJLENBQUM7TUFDbEJKLE1BQU0sQ0FBQ00sR0FBRyxDQUFDRixJQUFJLENBQUM7TUFDaEI7TUFDQUYsTUFBTSxDQUFDTSxJQUFJLENBQUNKLElBQUksQ0FBQztJQUNuQixDQUFDLE1BQU0sSUFBSUwsS0FBSyxDQUFDTSxHQUFHLENBQUNELElBQUksQ0FBQyxFQUFFO01BQzFCSyxPQUFPLENBQUNDLEtBQUssQ0FBQyx3Q0FBd0MsQ0FBQztNQUN2RFIsTUFBTSxDQUFDTSxJQUFJLENBQUNKLElBQUksQ0FBQztJQUNuQixDQUFDLE1BQU0sSUFBSUosTUFBTSxDQUFDSyxHQUFHLENBQUNELElBQUksQ0FBQyxFQUFFO01BQzNCO0lBQUEsQ0FDRCxNQUFNO01BQ0wsTUFBTSxJQUFJTyxLQUFLLENBQUMsbUNBQW1DLENBQUM7SUFDdEQ7RUFDRixDQUFDO0VBQ0QsT0FBT1YsV0FBVyxDQUFDaEMsTUFBTSxHQUFHLENBQUMsRUFBRTtJQUM3QmtDLElBQUksQ0FBQ0YsV0FBVyxDQUFDVyxHQUFHLENBQUMsQ0FBQyxDQUFDO0VBQ3pCOztFQUVBO0VBQ0E7RUFDQSxPQUFPVixNQUFNLENBQUN2QixHQUFHLENBQUMsVUFBQ1osSUFBSSxFQUFFOEMsS0FBSztJQUFBLE9BQU07TUFBRTlDLElBQUksRUFBSkEsSUFBSTtNQUFFOEMsS0FBSyxFQUFMQTtJQUFNLENBQUM7RUFBQSxDQUFDLENBQUMsQ0FBQ0MsSUFBSSxDQUFDLFVBQUFDLElBQUEsRUFBQUMsS0FBQSxFQUFvRDtJQUFBLElBQTNDQyxDQUFDLEdBQUFGLElBQUEsQ0FBUGhELElBQUk7TUFBWW1ELEVBQUUsR0FBQUgsSUFBQSxDQUFURixLQUFLO0lBQUEsSUFBZ0JNLENBQUMsR0FBQUgsS0FBQSxDQUFQakQsSUFBSTtNQUFZcUQsRUFBRSxHQUFBSixLQUFBLENBQVRILEtBQUs7SUFDbEcsSUFBTVEsS0FBSyxHQUFHNUIsT0FBTyxDQUFDd0IsQ0FBQyxFQUFFbEMsV0FBVyxDQUFDLENBQUNkLE1BQU07SUFDNUMsSUFBTXFELEtBQUssR0FBRzdCLE9BQU8sQ0FBQzBCLENBQUMsRUFBRXBDLFdBQVcsQ0FBQyxDQUFDZCxNQUFNO0lBRTVDLElBQUlvRCxLQUFLLEtBQUtDLEtBQUssSUFBS0EsS0FBSyxLQUFLLENBQUMsSUFBSUQsS0FBSyxLQUFLLENBQUUsRUFBRSxPQUFPSCxFQUFFLEdBQUdFLEVBQUU7SUFDbkUsSUFBSUMsS0FBSyxLQUFLLENBQUMsSUFBSUMsS0FBSyxLQUFLLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN6QyxJQUFJQSxLQUFLLEtBQUssQ0FBQyxJQUFJRCxLQUFLLEtBQUssQ0FBQyxFQUFFLE9BQU8sQ0FBQztJQUN4QyxPQUFPLENBQUMsRUFBQztFQUNYLENBQUMsQ0FBQyxDQUFDMUMsR0FBRyxDQUFDLFVBQUE0QyxLQUFBO0lBQUEsSUFBR3hELElBQUksR0FBQXdELEtBQUEsQ0FBSnhELElBQUk7SUFBQSxPQUFPQSxJQUFJO0VBQUEsRUFBQztBQUM1QixDQUFDO0FBRUQsSUFBTXlELGVBQWUsR0FBRyxTQUFsQkEsZUFBZUEsQ0FBSUMsS0FBSyxFQUFLO0VBQ2pDLElBQUlDLHlFQUFBLENBQU9ELEtBQUssTUFBSyxRQUFRLEVBQUUsT0FBT0EsS0FBSztFQUMzQyxPQUFPO0lBQ0x2QyxPQUFPLEVBQUV1QyxLQUFLLENBQUN6QyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQ3lDLEtBQUssQ0FBQ3hDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUU7SUFDM0QsV0FBU3dDLEtBQUssQ0FBQ3pDLFVBQVUsQ0FBQyxHQUFHLENBQUMsR0FBR3lDLEtBQUssR0FBR3ZEO0VBQzNDLENBQUM7QUFDSCxDQUFDO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLElBQU15RCxjQUFjLEdBQUcsU0FBakJBLGNBQWNBLENBQ3pCQyxDQUFDLEVBR0U7RUFBQSxJQUZIN0MsV0FBVyxHQUFBZixTQUFBLENBQUFDLE1BQUEsUUFBQUQsU0FBQSxRQUFBRSxTQUFBLEdBQUFGLFNBQUEsTUFBR0wsMkRBQWdCO0VBQUEsSUFDOUI4QixPQUFPLEdBQUF6QixTQUFBLENBQUFDLE1BQUEsUUFBQUQsU0FBQSxRQUFBRSxTQUFBLEdBQUFGLFNBQUEsTUFBR2EsZUFBZTtFQUV6QixJQUFNNEMsS0FBSyxHQUFHRCxlQUFlLENBQUN6QyxXQUFXLENBQUM2QyxDQUFDLENBQUMsQ0FBQztFQUM3QyxJQUFJSCxLQUFLLENBQUMvQyxPQUFPLEtBQUssSUFBSSxFQUFFO0VBQzVCLElBQUkrQyxLQUFLLENBQUMvQyxPQUFPLEVBQUUsT0FBTytDLEtBQUssQ0FBQy9DLE9BQU87RUFDdkMsSUFBTW1ELG9CQUFvQixHQUFHLFNBQXZCQSxvQkFBb0JBLENBQUkvQyxHQUFHLEVBQW9CO0lBQUEsSUFBbEJnRCxPQUFPLEdBQUE5RCxTQUFBLENBQUFDLE1BQUEsUUFBQUQsU0FBQSxRQUFBRSxTQUFBLEdBQUFGLFNBQUEsTUFBRyxDQUFDNEQsQ0FBQyxDQUFDO0lBQzlDLElBQU1HLE9BQU8sR0FBR3RDLE9BQU8sQ0FBQ1gsR0FBRyxFQUFFQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDNUMsSUFBSWdELE9BQU8sS0FBSzdELFNBQVMsRUFBRTtJQUMzQixJQUFNOEQsVUFBVSxHQUFHakQsV0FBVyxDQUFDZ0QsT0FBTyxDQUFDO0lBQ3ZDLElBQUlDLFVBQVUsS0FBSzlELFNBQVMsRUFBRTtJQUM5QixJQUFJOEQsVUFBVSxDQUFDdEQsT0FBTyxJQUFJc0QsVUFBVSxLQUFLLElBQUksRUFBRTtNQUM3QyxPQUFPQSxVQUFVLENBQUN0RCxPQUFPO0lBQzNCLENBQUMsTUFBTSxJQUFJc0QsVUFBVSxDQUFDOUMsT0FBTyxJQUFJNEMsT0FBTyxDQUFDRyxRQUFRLENBQUNGLE9BQU8sQ0FBQyxFQUFFO01BQzFELE9BQU9GLG9CQUFvQixDQUFDRSxPQUFPLEtBQUF6QyxNQUFBLENBQUFDLG9GQUFBLENBQU11QyxPQUFPLElBQUVDLE9BQU8sRUFBQyxDQUFDO0lBQzdELENBQUMsTUFBTTtNQUNMLE9BQU8sSUFBSTtJQUNiO0VBQ0YsQ0FBQztFQUNELElBQUlOLEtBQUssQ0FBQ3ZDLE9BQU8sRUFBRTtJQUNqQixPQUFPMkMsb0JBQW9CLENBQUNELENBQUMsQ0FBQztFQUNoQztBQUNGLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyxJQUFNTSxZQUFZLEdBQUcsU0FBZkEsWUFBWUEsQ0FDdkJOLENBQUMsRUFHRTtFQUFBLElBRkg3QyxXQUFXLEdBQUFmLFNBQUEsQ0FBQUMsTUFBQSxRQUFBRCxTQUFBLFFBQUFFLFNBQUEsR0FBQUYsU0FBQSxNQUFHTCwyREFBZ0I7RUFBQSxJQUM5QjhCLE9BQU8sR0FBQXpCLFNBQUEsQ0FBQUMsTUFBQSxRQUFBRCxTQUFBLFFBQUFFLFNBQUEsR0FBQUYsU0FBQSxNQUFHYSxlQUFlO0VBRXpCLElBQU00QyxLQUFLLEdBQUdELGVBQWUsQ0FBQ3pDLFdBQVcsQ0FBQzZDLENBQUMsQ0FBQyxDQUFDO0VBQzdDLElBQUluRSxpREFBTSxDQUFDbUUsQ0FBQyxDQUFDLEVBQUUsT0FBT0EsQ0FBQztFQUN2QixJQUFJSCxLQUFLLENBQUMzRCxLQUFLLEtBQUssSUFBSSxFQUFFO0VBQzFCLElBQUkyRCxLQUFLLENBQUMzRCxLQUFLLEVBQUUsT0FBTzJELEtBQUssQ0FBQzNELEtBQUs7RUFDbkMsSUFBTXFFLGtCQUFrQixHQUFHLFNBQXJCQSxrQkFBa0JBLENBQUlyRCxHQUFHLEVBQW9CO0lBQUEsSUFBbEJnRCxPQUFPLEdBQUE5RCxTQUFBLENBQUFDLE1BQUEsUUFBQUQsU0FBQSxRQUFBRSxTQUFBLEdBQUFGLFNBQUEsTUFBRyxDQUFDNEQsQ0FBQyxDQUFDO0lBQzVDLElBQU1HLE9BQU8sR0FBR3RDLE9BQU8sQ0FBQ1gsR0FBRyxFQUFFQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDNUMsSUFBSWdELE9BQU8sS0FBSzdELFNBQVMsRUFBRTtJQUMzQixJQUFNOEQsVUFBVSxHQUFHakQsV0FBVyxDQUFDZ0QsT0FBTyxDQUFDO0lBQ3ZDLElBQUlDLFVBQVUsS0FBSzlELFNBQVMsRUFBRTtJQUM5QixJQUFJOEQsVUFBVSxDQUFDbEUsS0FBSyxJQUFJa0UsVUFBVSxLQUFLLElBQUksRUFBRTtNQUMzQyxPQUFPQSxVQUFVLENBQUNsRSxLQUFLO0lBQ3pCLENBQUMsTUFBTSxJQUFJa0UsVUFBVSxDQUFDOUMsT0FBTyxFQUFFO01BQzdCLE9BQU9pRCxrQkFBa0IsQ0FBQ0gsVUFBVSxLQUFBMUMsTUFBQSxDQUFBQyxvRkFBQSxDQUFNdUMsT0FBTyxJQUFFQyxPQUFPLEVBQUMsQ0FBQztJQUM5RCxDQUFDLE1BQU07TUFDTCxPQUFPLElBQUk7SUFDYjtFQUNGLENBQUM7RUFDRCxJQUFJTixLQUFLLENBQUN2QyxPQUFPLEVBQUU7SUFDakIsT0FBT2lELGtCQUFrQixDQUFDUCxDQUFDLENBQUM7RUFDOUI7QUFDRixDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNPLElBQU1RLFlBQVksR0FBRzVDLFFBQVEsQ0FDbENHLE1BQU0sQ0FBQzBDLE9BQU8sQ0FBQzFFLDJEQUFnQixDQUFDLENBQzdCbUQsSUFBSSxDQUFDLFVBQUF3QixLQUFBLEVBQUFDLEtBQUE7RUFBQSxJQUFBQyxLQUFBLEdBQUFDLGdGQUFBLENBQUFILEtBQUE7SUFBRUksRUFBRSxHQUFBRixLQUFBO0lBQUVHLEVBQUUsR0FBQUgsS0FBQTtFQUFBLElBQUFJLEtBQUEsR0FBQUgsZ0ZBQUEsQ0FBQUYsS0FBQTtJQUFJTSxFQUFFLEdBQUFELEtBQUE7SUFBRUUsRUFBRSxHQUFBRixLQUFBO0VBQUEsT0FBTSxDQUFFRCxFQUFFLElBQUlBLEVBQUUsQ0FBQ0ksUUFBUSxJQUFLLENBQUMsS0FBTUQsRUFBRSxJQUFJQSxFQUFFLENBQUNDLFFBQVEsSUFBSyxDQUFDLENBQUM7QUFBQSxFQUFDLENBQ3JGQyxNQUFNLENBQUMsVUFBQ0MsR0FBRyxFQUFBQyxLQUFBO0VBQUEsSUFBQUMsS0FBQSxHQUFBVixnRkFBQSxDQUFBUyxLQUFBO0lBQUd0QixDQUFDLEdBQUF1QixLQUFBO0lBQUVDLENBQUMsR0FBQUQsS0FBQTtFQUFBLE9BQUFFLGFBQUEsQ0FBQUEsYUFBQSxLQUFZSixHQUFHLE9BQUFLLGlGQUFBLEtBQUcxQixDQUFDLEVBQUd3QixDQUFDO0FBQUEsQ0FBRyxFQUFFLENBQUMsQ0FBQyxDQUNyRCxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ08sSUFBTUcsU0FBUyxHQUFHNUQsTUFBTSxDQUFDMEMsT0FBTyxDQUFDMUUsMkRBQWdCLENBQUMsQ0FBQ3FGLE1BQU0sQ0FBQyxVQUFDQyxHQUFHLEVBQUFPLE1BQUEsRUFBYTtFQUFBLElBQUFDLE1BQUEsR0FBQWhCLGdGQUFBLENBQUFlLE1BQUE7SUFBVjVCLENBQUMsR0FBQTZCLE1BQUE7SUFBRUwsQ0FBQyxHQUFBSyxNQUFBO0VBQzFFLElBQU0vRSxPQUFPLEdBQUdpRCxjQUFjLENBQUNDLENBQUMsRUFBRWpFLDJEQUFnQixFQUFFa0IsZUFBZSxDQUFDO0VBQ3BFLElBQUlILE9BQU8sRUFBRTtJQUNYLE9BQUEyRSxhQUFBLENBQUFBLGFBQUEsS0FDS0osR0FBRyxPQUFBSyxpRkFBQSxLQUNMNUUsT0FBTyxFQUFHO01BQ1RnRixZQUFZLEVBQUVoRywwREFBZSxDQUFDZ0IsT0FBTyxDQUFDLElBQUksQ0FBQztNQUMzQ2lGLGFBQWEsS0FBQXJFLE1BQUEsQ0FBQUMsb0ZBQUEsQ0FBUTBELEdBQUcsQ0FBQ3ZFLE9BQU8sQ0FBQyxJQUFJdUUsR0FBRyxDQUFDdkUsT0FBTyxDQUFDLENBQUNpRixhQUFhLElBQUssRUFBRSxJQUFHL0IsQ0FBQztJQUM1RSxDQUFDO0VBRUwsQ0FBQyxNQUFNO0lBQ0wsT0FBT3FCLEdBQUc7RUFDWjtBQUNGLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQzs7QUFFTjtBQUNBO0FBQ0E7QUFDTyxJQUFNVyxtQkFBbUIsR0FBRyxTQUF0QkEsbUJBQW1CQSxDQUFJQyxXQUFXLEVBQUVDLFFBQVEsRUFBRUMsR0FBRyxFQUFLO0VBQ2pFLElBQUksT0FBT0YsV0FBVyxLQUFLLFFBQVEsSUFBSSxDQUFDQSxXQUFXLENBQUM3RSxVQUFVLENBQUMsSUFBSSxDQUFDLEVBQUUsT0FBTzZFLFdBQVc7RUFDeEYsSUFBSUcsV0FBVyxHQUFHLElBQUk7RUFDdEI7RUFDQSxJQUFBQyxxQkFBQSxHQUE2QkosV0FBVyxDQUFDSyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUN2RixHQUFHLENBQUMsVUFBQXdGLEdBQUc7TUFBQSxPQUFJQSxHQUFHLENBQUNDLElBQUksQ0FBQyxDQUFDO0lBQUEsRUFBQztJQUFBQyxzQkFBQSxHQUFBNUIsZ0ZBQUEsQ0FBQXdCLHFCQUFBO0lBQXBFSyxRQUFRLEdBQUFELHNCQUFBO0lBQUVFLFFBQVEsR0FBQUYsc0JBQUE7RUFDekIsSUFBTUcsWUFBWSxHQUFHRixRQUFRLENBQUNyRixTQUFTLENBQUMsQ0FBQyxDQUFDO0VBQzFDK0UsV0FBVyxHQUFHRixRQUFRLENBQUNVLFlBQVksQ0FBQztFQUNwQyxJQUFJRCxRQUFRLEVBQUU7SUFDWlAsV0FBVyxHQUFHNUcsc0RBQVUsQ0FBQ3FILE1BQU0sQ0FBQ0MsVUFBVSxDQUFDSCxRQUFRLENBQUMsR0FBR1IsR0FBRyxFQUFFQyxXQUFXLENBQUMsQ0FBQ1csR0FBRztFQUM5RTtFQUNBLE9BQU9YLFdBQVc7QUFDcEIsQ0FBQzs7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNPLElBQU1ZLFNBQVMsR0FBRyxTQUFaQSxTQUFTQSxDQUFJQyxZQUFZLEVBQUVDLGFBQWE7RUFBQSxPQUFLMUMsWUFBWSxDQUFDWSxNQUFNLENBQUMsVUFBQStCLE1BQUEsRUFBc0JqRyxHQUFHLEVBQUs7SUFBQSxJQUEzQkwsTUFBTSxHQUFBc0csTUFBQSxDQUFOdEcsTUFBTTtNQUFFQyxPQUFPLEdBQUFxRyxNQUFBLENBQVByRyxPQUFPO0lBQzlGLElBQU1tRixXQUFXLEdBQUdnQixZQUFZLENBQUMvRixHQUFHLENBQUM7SUFDckMsSUFBTTJDLEtBQUssR0FBR0QsZUFBZSxDQUFDN0QsMkRBQWdCLENBQUNtQixHQUFHLENBQUMsQ0FBQztJQUNwRCxJQUFNa0csSUFBSSxHQUFHbkcsZUFBZSxDQUFDQyxHQUFHLEVBQUVuQiwyREFBZ0IsQ0FBQztJQUNuRCxJQUFNc0gsV0FBVyxHQUFHLENBQUMsQ0FBQ3hELEtBQUssQ0FBQ3lELFNBQVM7SUFDckMsSUFBTTNHLE9BQU8sR0FBR2tELEtBQUssQ0FBQ2xELE9BQU8sSUFBSWtELEtBQUssQ0FBQzNELEtBQUs7SUFFNUMsSUFBSXFILGVBQWUsR0FBRyxJQUFJO0lBRTFCLElBQUlGLFdBQVcsRUFBRTtNQUNmRSxlQUFlLEdBQUc3SCxpRkFBZ0IsQ0FBQStGLGFBQUEsS0FDMUI1RSxNQUFNLENBQUN1RyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSTdILG1EQUFPLENBQUMwSCxZQUFZLENBQUMvRixHQUFHLENBQUMsSUFBSSxTQUFTLENBQUMsQ0FBQzZGLEdBQUcsR0FDcEVyRyxTQUFTLENBQ1A0RCxZQUFZLENBQUNwRCxHQUFHLENBQUMsSUFBSSxJQUFJLEVBQ3pCUCxPQUFPLElBQUksSUFBSSxFQUNmb0QsY0FBYyxDQUFDcEQsT0FBTyxDQUFDLEVBQ3ZCRSxNQUFNLEVBQ05DLE9BQ0YsQ0FDRixDQUFDO0lBQ0gsQ0FBQyxNQUFNLElBQUlILE9BQU8sSUFBSUEsT0FBTyxLQUFLTyxHQUFHLEVBQUU7TUFDckNxRyxlQUFlLEdBQUcxRyxNQUFNLENBQUNGLE9BQU8sQ0FBQyxJQUFJcEIsbURBQU8sQ0FBQzBILFlBQVksQ0FBQ3RHLE9BQU8sQ0FBQyxDQUFDLENBQUNvRyxHQUFHO0lBQ3pFLENBQUMsTUFBTTtNQUNMUSxlQUFlLEdBQUcxRyxNQUFNLENBQUMyRyxFQUFFLElBQUlqSSxtREFBTyxDQUFDMEgsWUFBWSxDQUFDTyxFQUFFLENBQUM7SUFDekQ7SUFFQSxJQUFNQyxhQUFhLEdBQUc3SCxrRkFBaUIsQ0FBQzJILGVBQWUsQ0FBQyxHQUFHLEdBQUc7SUFDOUQsSUFBTXBCLEdBQUcsR0FBR3NCLGFBQWEsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBRWxDLElBQUlDLFdBQVcsR0FBRyxJQUFJO0lBQ3RCLElBQUl6QixXQUFXLEVBQUU7TUFDZjtNQUNBLElBQUlHLFdBQVcsR0FBR0gsV0FBVztNQUM3QixJQUFJRyxXQUFXLEtBQUssYUFBYSxFQUFFO1FBQ2pDO1FBQ0EsSUFBTXVCLE1BQU0sR0FBR2pILFNBQVMsQ0FDdEI0RCxZQUFZLENBQUNwRCxHQUFHLENBQUMsRUFDakJBLEdBQUcsRUFDSDZDLGNBQWMsQ0FBQzdDLEdBQUcsQ0FBQyxJQUFJQSxHQUFHLEVBQzFCTCxNQUFNLEVBQ05DLE9BQ0YsQ0FBQyxDQUFDOEcsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNkeEIsV0FBVyxHQUFBWCxhQUFBLENBQUFBLGFBQUEsS0FDTi9GLGlGQUFnQixDQUNqQkgsbURBQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQ3dILEdBQUcsRUFDdEJZLE1BQ0YsQ0FBQztVQUNEdEUsQ0FBQyxFQUFFO1FBQUMsRUFDTDtNQUNILENBQUMsTUFBTSxJQUFJLE9BQU80QyxXQUFXLEtBQUssUUFBUSxJQUFJQSxXQUFXLENBQUM3RSxVQUFVLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDMUVnRixXQUFXLEdBQUdKLG1CQUFtQixDQUMvQkMsV0FBVyxFQUNYLFVBQUFXLFlBQVk7VUFBQSxPQUFJL0YsTUFBTSxDQUFDK0YsWUFBWSxDQUFDLElBQUlLLFlBQVksQ0FBQ0wsWUFBWSxDQUFDO1FBQUEsR0FDbEVULEdBQ0YsQ0FBQztNQUNILENBQUMsTUFBTSxJQUFJLE9BQU9GLFdBQVcsS0FBSyxRQUFRLElBQUlBLFdBQVcsQ0FBQzdFLFVBQVUsQ0FBQyxHQUFHLENBQUMsRUFBRTtRQUN6RWdGLFdBQVcsR0FBRzdHLG1EQUFPLENBQUM2RyxXQUFXLENBQUMsQ0FBQ1csR0FBRztNQUN4QztNQUNBVyxXQUFXLEdBQUFqQyxhQUFBLEtBQVFXLFdBQVcsQ0FBRTtJQUNsQyxDQUFDLE1BQU0sSUFBSXZDLEtBQUssV0FBUSxFQUFFO01BQ3hCO01BQ0E2RCxXQUFXLEdBQUduSSxtREFBTyxDQUFDc0UsS0FBSyxXQUFRLENBQUMsQ0FBQ2tELEdBQUc7SUFDMUMsQ0FBQyxNQUFNO01BQ0w7TUFDQSxJQUFNYyxnQkFBZ0IsR0FBRyxTQUFuQkEsZ0JBQWdCQSxDQUFJMUIsR0FBRyxFQUFFMkIsR0FBRztRQUFBLE9BQUFyQyxhQUFBLEtBQVdxQyxHQUFHO01BQUEsQ0FBRztNQUNuRCxJQUFNQyxTQUFTLEdBQUdsRSxLQUFLLENBQUNtRSxLQUFLLElBQUlILGdCQUFnQjtNQUVqRCxJQUFJaEUsS0FBSyxDQUFDeUQsU0FBUyxFQUFFO1FBQ25CLElBQUl6RCxLQUFLLENBQUN5RCxTQUFTLEtBQUssSUFBSSxFQUFFO1VBQzVCSSxXQUFXLEdBQUdqSSx5REFBYSxDQUFDOEgsZUFBZSxDQUFDLENBQUNSLEdBQUc7UUFDbEQsQ0FBQyxNQUFNO1VBQ0wsSUFBSWlCLEtBQUssR0FBQXZDLGFBQUEsS0FBUTVFLE1BQU0sQ0FBQ3VHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFFO1VBQ2xDLElBQUl2RCxLQUFLLENBQUNtRSxLQUFLLEVBQUU7WUFDZkEsS0FBSyxHQUFHRCxTQUFTLENBQUFFLEtBQUEsVUFBQzlCLEdBQUcsRUFBQXpFLE1BQUEsQ0FBQUMsb0ZBQUEsQ0FBS3lGLElBQUksQ0FBQ3JHLEdBQUcsQ0FBQyxVQUFDK0csR0FBRztjQUFBLE9BQUFyQyxhQUFBLEtBQVc1RSxNQUFNLENBQUNpSCxHQUFHLENBQUM7WUFBQSxDQUFHLENBQUMsR0FBQztVQUNwRTtVQUNBSixXQUFXLEdBQUcvSCw2RUFBWSxDQUN4QjRILGVBQWUsRUFBQTlCLGFBQUEsS0FDVnVDLEtBQUssR0FDVm5FLEtBQUssQ0FBQ3lELFNBQVMsS0FBSyxVQUN0QixDQUFDO1FBQ0g7TUFDRixDQUFDLE1BQU07UUFDTDtRQUNBSSxXQUFXLEdBQUdLLFNBQVMsQ0FBQUUsS0FBQSxVQUNyQjlCLEdBQUcsRUFBQXpFLE1BQUEsQ0FBQUMsb0ZBQUEsQ0FDQXlGLElBQUksQ0FBQ3JHLEdBQUcsQ0FBQyxVQUFDK0csR0FBRztVQUFBLE9BQUFyQyxhQUFBLEtBQVc1RSxNQUFNLENBQUNpSCxHQUFHLENBQUM7UUFBQSxDQUFHLENBQUMsRUFDNUMsQ0FBQztNQUNIO0lBQ0Y7SUFDQSxJQUFJLENBQUNKLFdBQVcsRUFBRTtNQUNoQixNQUFNLElBQUkzRSxLQUFLLENBQUMsK0JBQStCLEdBQUc3QixHQUFHLENBQUM7SUFDeEQ7SUFFQSxJQUFNTixXQUFXLEdBQUdpRCxLQUFLLENBQUMvQyxPQUFPLElBQUlpRCxjQUFjLENBQUM3QyxHQUFHLENBQUM7SUFDeEQsSUFBTWdILGNBQWMsR0FBR3JFLEtBQUssQ0FBQy9DLE9BQU87SUFFcEMsSUFBSW9ILGNBQWMsS0FBSyxJQUFJLEVBQUU7TUFDM0JSLFdBQVcsQ0FBQ3JFLENBQUMsR0FBRyxDQUFDO0lBQ25CLENBQUMsTUFBTSxJQUFJNEMsV0FBVyxLQUFLLGFBQWEsRUFBRTtNQUN4Q3lCLFdBQVcsQ0FBQ3JFLENBQUMsR0FBRyxDQUFDO0lBQ25CLENBQUMsTUFBTTtNQUNMLElBQU04RSxnQkFBZ0IsR0FBR0QsY0FBYyxJQUFJaEIsYUFBYSxDQUFDdEcsV0FBVyxDQUFDLEtBQUtOLFNBQVM7TUFFbkYsSUFBTThILGNBQWMsR0FBR2hCLElBQUksQ0FBQyxDQUFDLENBQUM7TUFDOUIsSUFBTWlCLGVBQWUsR0FBR0QsY0FBYyxJQUFJdkgsTUFBTSxDQUFDdUgsY0FBYyxDQUFDO01BRWhFLElBQUksQ0FBQ0YsY0FBYyxJQUFJRyxlQUFlLElBQUksQ0FBQ3hFLEtBQUssQ0FBQ3lELFNBQVMsSUFBSVksY0FBYyxLQUFLLElBQUksRUFBRTtRQUNyRjtRQUNBO1FBQ0FSLFdBQVcsQ0FBQ3JFLENBQUMsR0FBR2dGLGVBQWUsQ0FBQ2hGLENBQUM7TUFDbkMsQ0FBQyxNQUFNLElBQUksQ0FBQ2dGLGVBQWUsSUFBSSxDQUFDekgsV0FBVyxFQUFFO1FBQzNDO1FBQ0EsT0FBTzhHLFdBQVcsQ0FBQ3JFLENBQUM7TUFDdEIsQ0FBQyxNQUFNO1FBQ0w7UUFDQSxJQUFJZ0YsZUFBZSxJQUFJQSxlQUFlLENBQUNoRixDQUFDLEtBQUssQ0FBQyxFQUFFO1VBQzlDO1VBQ0FxRSxXQUFXLENBQUNyRSxDQUFDLEdBQUcsQ0FBQztRQUNuQixDQUFDLE1BQU07VUFDTDtVQUNBcUUsV0FBVyxDQUFDckUsQ0FBQyxHQUFHd0QsTUFBTSxDQUNwQnNCLGdCQUFnQixHQUNaakIsYUFBYSxDQUFDdEcsV0FBVyxDQUFDLEdBQzFCLENBQUMrRSxTQUFTLENBQUMvRSxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRWtGLFlBQ3JDLENBQUM7UUFDSDtNQUNGO0lBQ0Y7SUFFQSxJQUFJZSxNQUFNLENBQUN5QixLQUFLLENBQUNaLFdBQVcsQ0FBQ3JFLENBQUMsQ0FBQyxJQUFJcUUsV0FBVyxDQUFDckUsQ0FBQyxLQUFLL0MsU0FBUyxFQUFFO01BQzlEb0gsV0FBVyxDQUFDckUsQ0FBQyxHQUFHLENBQUM7SUFDbkI7SUFFQSxJQUFJekMsV0FBVyxFQUFFO01BQ2YsT0FBTztRQUNMQyxNQUFNLEVBQUE0RSxhQUFBLENBQUFBLGFBQUEsS0FBTzVFLE1BQU0sT0FBQTZFLGlGQUFBLEtBQUd4RSxHQUFHLEVBQUd3RyxXQUFXLEVBQUU7UUFDekM1RyxPQUFPLEVBQUEyRSxhQUFBLENBQUFBLGFBQUEsS0FBTzNFLE9BQU8sT0FBQTRFLGlGQUFBLEtBQUc5RSxXQUFXLEVBQUc4RyxXQUFXLENBQUNyRSxDQUFDO01BQ3JELENBQUM7SUFDSCxDQUFDLE1BQU07TUFDTCxPQUFPO1FBQ0x4QyxNQUFNLEVBQUE0RSxhQUFBLENBQUFBLGFBQUEsS0FBTzVFLE1BQU0sT0FBQTZFLGlGQUFBLEtBQUd4RSxHQUFHLEVBQUd3RyxXQUFXLEVBQUU7UUFDekM1RyxPQUFPLEVBQVBBO01BQ0YsQ0FBQztJQUNIO0VBQ0YsQ0FBQyxFQUFFO0lBQUVELE1BQU0sRUFBRSxDQUFDLENBQUM7SUFBRUMsT0FBTyxFQUFFLENBQUM7RUFBRSxDQUFDLENBQUM7QUFBQSIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvc2VydmljZXMvdGhlbWVfZGF0YS90aGVtZV9kYXRhLnNlcnZpY2UuanM/ZTZiNSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb252ZXJ0LCBicmlnaHRuZXNzLCBjb250cmFzdFJhdGlvIH0gZnJvbSAnY2hyb21hdGlzbSdcbmltcG9ydCB7IGFscGhhQmxlbmRMYXllcnMsIGdldFRleHRDb2xvciwgcmVsYXRpdmVMdW1pbmFuY2UgfSBmcm9tICcuLi9jb2xvcl9jb252ZXJ0L2NvbG9yX2NvbnZlcnQuanMnXG5pbXBvcnQgeyBMQVlFUlMsIERFRkFVTFRfT1BBQ0lUWSwgU0xPVF9JTkhFUklUQU5DRSB9IGZyb20gJy4vcGxlcm9tYWZlLmpzJ1xuXG4vKlxuICogIyBXaGF0J3MgYWxsIHRoaXM/XG4gKiBIZXJlIGJlIHRoZW1lIGVuZ2luZSBmb3IgcGxlcm9tYWZlLiBBbGwgb2YgdGhpcyBzdXBwb3NlZCB0byBlYXNlIGxvb2tcbiAqIGFuZCBmZWVsIGN1c3RvbWl6YXRpb24sIG1ha2luZyB3aWRnZXQgc3R5bGVzIGFuZCBtYWtlIGRldmVsb3BlcidzIGxpZmVcbiAqIGVhc2llciB3aGVuIGl0IGNvbWVzIHRvIHN1cHBvcnRpbmcgdGhlbWVzLiBMaWtlIG1hbnkgb3RoZXIgdGhlbWUgc3lzdGVtc1xuICogaXQgb3BlcmF0ZXMgb24gY29sb3IgZGVmaW5pdGlvbnMsIG9yIFwic2xvdHNcIiAtIGZvciBleGFtcGxlIHlvdSBkZWZpbmVcbiAqIFwiYnV0dG9uXCIgY29sb3Igc2xvdCBhbmQgdGhlbiBpbiBVSSBjb21wb25lbnQgQnV0dG9uJ3MgQ1NTIHlvdSByZWZlciB0b1xuICogaXQgYXMgYSBDU1MzIFZhcmlhYmxlLlxuICpcbiAqIFNvbWUgYXBwbGljYXRpb25zIGFsbG93IHlvdSB0byBjdXN0b21pemUgY29sb3JzIGZvciBjZXJ0YWluIHRoaW5ncy5cbiAqIFNvbWUgVUkgdG9vbGtpdHMgYWxsb3cgeW91IHRvIGRlZmluZSBjb2xvcnMgZm9yIGVhY2ggdHlwZSBvZiB3aWRnZXQuXG4gKiBNb3N0IG9mIHRoZW0gYXJlIHByZXR0eSBiYXJlYm9uZXMgYW5kIGhhdmUgbm8gYXNzaXN0YW5jZSBmb3IgY29tbW9uXG4gKiBwcm9ibGVtcyBhbmQgY2FzZXMsIGFuZCBpbiBnZW5lcmFsIHRoZW1lcyB0aGVtc2VsdmVzIGFyZSB2ZXJ5IGhhcmQgdG9cbiAqIG1haW50YWluIGluIGFsbCBhc3BlY3RzLiBUaGlzIHRoZW1lIGVuZ2luZSB0cmllcyB0byBzb2x2ZSBhbGwgb2YgdGhlXG4gKiBjb21tb24gcHJvYmxlbXMgd2l0aCB0aGVtZXMuXG4gKlxuICogWW91IGRvbid0IGhhdmUgcmVkZWZpbmUgc2V2ZXJhbCBzaW1pbGFyIGNvbG9ycyBpZiB5b3UganVzdCB3YW50IHRvXG4gKiBjaGFuZ2Ugb25lIGNvbG9yIC0gYWxsIGNvbG9yIHNsb3RzIGFyZSBkZXJpdmVkIGZyb20gb3RoZXIgb25lcywgc28geW91XG4gKiBjYW4gaGF2ZSBhdCBsZWFzdCBvbmUgb3IgdHdvIFwiYmFzaWNcIiBjb2xvcnMgZGVmaW5lZCBhbmQgaGF2ZSBhbGwgb3RoZXJcbiAqIGNvbXBvbmVudHMgaW5oZXJpdCBhbmQgbW9kaWZ5IGJhc2ljIG9uZXMuXG4gKlxuICogWW91IGRvbid0IGhhdmUgdG8gdGVzdCBjb250cmFzdCByYXRpbyBmb3IgY29sb3JzIG9yIHBpY2sgdGV4dCBjb2xvciBmb3JcbiAqIGVhY2ggZWxlbWVudCBldmVuIGlmIHlvdSBoYXZlIGxpZ2h0LW9uLWRhcmsgZWxlbWVudHMgaW4gZGFyay1vbi1saWdodFxuICogdGhlbWUuXG4gKlxuICogWW91IGRvbid0IGhhdmUgdG8gbWFpbnRhaW4gb3JkZXIgb2YgY29kZSBmb3IgaW5oZXJpdGluZyBzbG90cyBmcm9tIG90aGV0XG4gKiBzbG90cyAtIGRlcGVuZGVuY3kgZ3JhcGggcmVzb2x2aW5nIGRvZXMgaXQgZm9yIHlvdS5cbiAqL1xuXG4vKiBUaGlzIGluZGljYXRlcyB0aGF0IHRoaXMgdmVyc2lvbiBvZiBjb2RlIG91dHB1dHMgc2ltaWxhciB0aGVtZSBkYXRhIGFuZFxuICogc2hvdWxkIGJlIGluY3JlbWVudGVkIGlmIG91dHB1dCBjaGFuZ2VzIC0gZm9yIGluc3RhbmNlIGlmIGdldFRleHRDb2xvclxuICogZnVuY3Rpb24gY2hhbmdlcyBhbmQgb2xkZXIgdGhlbWVzIG5vIGxvbmdlciByZW5kZXIgdGV4dCBjb2xvcnMgYXNcbiAqIGF1dGhvciBpbnRlbmRlZCBwcmV2aW91c2x5LlxuICovXG5leHBvcnQgY29uc3QgQ1VSUkVOVF9WRVJTSU9OID0gM1xuXG5leHBvcnQgY29uc3QgZ2V0TGF5ZXJzQXJyYXkgPSAobGF5ZXIsIGRhdGEgPSBMQVlFUlMpID0+IHtcbiAgY29uc3QgYXJyYXkgPSBbbGF5ZXJdXG4gIGxldCBwYXJlbnQgPSBkYXRhW2xheWVyXVxuICB3aGlsZSAocGFyZW50KSB7XG4gICAgYXJyYXkudW5zaGlmdChwYXJlbnQpXG4gICAgcGFyZW50ID0gZGF0YVtwYXJlbnRdXG4gIH1cbiAgcmV0dXJuIGFycmF5XG59XG5cbmV4cG9ydCBjb25zdCBnZXRMYXllcnMgPSAobGF5ZXIsIHZhcmlhbnQgPSBsYXllciwgb3BhY2l0eVNsb3QsIGNvbG9ycywgb3BhY2l0eSkgPT4ge1xuICByZXR1cm4gZ2V0TGF5ZXJzQXJyYXkobGF5ZXIpLm1hcCgoY3VycmVudExheWVyKSA9PiAoW1xuICAgIGN1cnJlbnRMYXllciA9PT0gbGF5ZXJcbiAgICAgID8gY29sb3JzW3ZhcmlhbnRdXG4gICAgICA6IGNvbG9yc1tjdXJyZW50TGF5ZXJdLFxuICAgIGN1cnJlbnRMYXllciA9PT0gbGF5ZXJcbiAgICAgID8gb3BhY2l0eVtvcGFjaXR5U2xvdF0gfHwgMVxuICAgICAgOiBvcGFjaXR5W2N1cnJlbnRMYXllcl1cbiAgXSkpXG59XG5cbmNvbnN0IGdldERlcGVuZGVuY2llcyA9IChrZXksIGluaGVyaXRhbmNlKSA9PiB7XG4gIGNvbnN0IGRhdGEgPSBpbmhlcml0YW5jZVtrZXldXG4gIGlmICh0eXBlb2YgZGF0YSA9PT0gJ3N0cmluZycgJiYgZGF0YS5zdGFydHNXaXRoKCctLScpKSB7XG4gICAgcmV0dXJuIFtkYXRhLnN1YnN0cmluZygyKV1cbiAgfSBlbHNlIHtcbiAgICBpZiAoZGF0YSA9PT0gbnVsbCkgcmV0dXJuIFtdXG4gICAgY29uc3QgeyBkZXBlbmRzLCBsYXllciwgdmFyaWFudCB9ID0gZGF0YVxuICAgIGNvbnN0IGxheWVyRGVwcyA9IGxheWVyXG4gICAgICA/IGdldExheWVyc0FycmF5KGxheWVyKS5tYXAoY3VycmVudExheWVyID0+IHtcbiAgICAgICAgcmV0dXJuIGN1cnJlbnRMYXllciA9PT0gbGF5ZXJcbiAgICAgICAgICA/IHZhcmlhbnQgfHwgbGF5ZXJcbiAgICAgICAgICA6IGN1cnJlbnRMYXllclxuICAgICAgfSlcbiAgICAgIDogW11cbiAgICBpZiAoQXJyYXkuaXNBcnJheShkZXBlbmRzKSkge1xuICAgICAgcmV0dXJuIFsuLi5kZXBlbmRzLCAuLi5sYXllckRlcHNdXG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBbLi4ubGF5ZXJEZXBzXVxuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIFNvcnRzIGluaGVyaXRhbmNlIG9iamVjdCB0b3BvbG9naWNhbGx5IC0gZGVwZW5kYW50IHNsb3RzIGNvbWUgYWZ0ZXJcbiAqIGRlcGVuZGVuY2llc1xuICpcbiAqIEBwcm9wZXJ0eSB7T2JqZWN0fSBpbmhlcml0YW5jZSAtIG9iamVjdCBkZWZpbmluZyB0aGUgbm9kZXNcbiAqIEBwcm9wZXJ0eSB7RnVuY3Rpb259IGdldERlcHMgLSBmdW5jdGlvbiB0aGF0IHJldHVybnMgZGVwZW5kZW5jaWVzIGZvclxuICogICBnaXZlbiB2YWx1ZSBhbmQgaW5oZXJpdGFuY2Ugb2JqZWN0LlxuICogQHJldHVybnMge1N0cmluZ1tdfSBrZXlzIG9mIGluaGVyaXRhbmNlIG9iamVjdCwgc29ydGVkIGluIHRvcG9sb2dpY2FsXG4gKiAgIG9yZGVyLiBBZGRpdGlvbmFsbHksIGRlcGVuZGVuY3ktbGVzcyBub2RlcyB3aWxsIGFsd2F5cyBiZSBmaXJzdCBpbiBsaW5lXG4gKi9cbmV4cG9ydCBjb25zdCB0b3BvU29ydCA9IChcbiAgaW5oZXJpdGFuY2UgPSBTTE9UX0lOSEVSSVRBTkNFLFxuICBnZXREZXBzID0gZ2V0RGVwZW5kZW5jaWVzXG4pID0+IHtcbiAgLy8gVGhpcyBpcyBhbiBpbXBsZW1lbnRhdGlvbiBvZiBodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9UYXJqYW4lMjdzX3N0cm9uZ2x5X2Nvbm5lY3RlZF9jb21wb25lbnRzX2FsZ29yaXRobVxuXG4gIGNvbnN0IGFsbEtleXMgPSBPYmplY3Qua2V5cyhpbmhlcml0YW5jZSlcbiAgY29uc3Qgd2hpdGVzID0gbmV3IFNldChhbGxLZXlzKVxuICBjb25zdCBncmF5cyA9IG5ldyBTZXQoKVxuICBjb25zdCBibGFja3MgPSBuZXcgU2V0KClcbiAgY29uc3QgdW5wcm9jZXNzZWQgPSBbLi4uYWxsS2V5c11cbiAgY29uc3Qgb3V0cHV0ID0gW11cblxuICBjb25zdCBzdGVwID0gKG5vZGUpID0+IHtcbiAgICBpZiAod2hpdGVzLmhhcyhub2RlKSkge1xuICAgICAgLy8gTWFrZSBub2RlIFwiZ3JheVwiXG4gICAgICB3aGl0ZXMuZGVsZXRlKG5vZGUpXG4gICAgICBncmF5cy5hZGQobm9kZSlcbiAgICAgIC8vIERvIHN0ZXAgZm9yIGVhY2ggbm9kZSBjb25uZWN0ZWQgdG8gaXQgKG9uZSB3YXkpXG4gICAgICBnZXREZXBzKG5vZGUsIGluaGVyaXRhbmNlKS5mb3JFYWNoKHN0ZXApXG4gICAgICAvLyBNYWtlIG5vZGUgXCJibGFja1wiXG4gICAgICBncmF5cy5kZWxldGUobm9kZSlcbiAgICAgIGJsYWNrcy5hZGQobm9kZSlcbiAgICAgIC8vIFB1dCBpdCBpbnRvIHRoZSBvdXRwdXQgbGlzdFxuICAgICAgb3V0cHV0LnB1c2gobm9kZSlcbiAgICB9IGVsc2UgaWYgKGdyYXlzLmhhcyhub2RlKSkge1xuICAgICAgY29uc29sZS5kZWJ1ZygnQ3ljbGljIGRlcGVuZW5jeSBpbiB0b3BvU29ydCwgaWdub3JpbmcnKVxuICAgICAgb3V0cHV0LnB1c2gobm9kZSlcbiAgICB9IGVsc2UgaWYgKGJsYWNrcy5oYXMobm9kZSkpIHtcbiAgICAgIC8vIGRvIG5vdGhpbmdcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdVbmludGVuZGVkIGNvbmRpdGlvbiBpbiB0b3BvU29ydCEnKVxuICAgIH1cbiAgfVxuICB3aGlsZSAodW5wcm9jZXNzZWQubGVuZ3RoID4gMCkge1xuICAgIHN0ZXAodW5wcm9jZXNzZWQucG9wKCkpXG4gIH1cblxuICAvLyBUaGUgaW5kZXggdGhpbmcgaXMgdG8gbWFrZSBzb3J0aW5nIHN0YWJsZSBvbiBicm93c2Vyc1xuICAvLyB3aGVyZSBBcnJheS5zb3J0KCkgaXNuJ3Qgc3RhYmxlXG4gIHJldHVybiBvdXRwdXQubWFwKChkYXRhLCBpbmRleCkgPT4gKHsgZGF0YSwgaW5kZXggfSkpLnNvcnQoKHsgZGF0YTogYSwgaW5kZXg6IGFpIH0sIHsgZGF0YTogYiwgaW5kZXg6IGJpIH0pID0+IHtcbiAgICBjb25zdCBkZXBzQSA9IGdldERlcHMoYSwgaW5oZXJpdGFuY2UpLmxlbmd0aFxuICAgIGNvbnN0IGRlcHNCID0gZ2V0RGVwcyhiLCBpbmhlcml0YW5jZSkubGVuZ3RoXG5cbiAgICBpZiAoZGVwc0EgPT09IGRlcHNCIHx8IChkZXBzQiAhPT0gMCAmJiBkZXBzQSAhPT0gMCkpIHJldHVybiBhaSAtIGJpXG4gICAgaWYgKGRlcHNBID09PSAwICYmIGRlcHNCICE9PSAwKSByZXR1cm4gLTFcbiAgICBpZiAoZGVwc0IgPT09IDAgJiYgZGVwc0EgIT09IDApIHJldHVybiAxXG4gICAgcmV0dXJuIDAgLy8gZmFpbHNhZmUsIHNob3VsZG4ndCBoYXBwZW4/XG4gIH0pLm1hcCgoeyBkYXRhIH0pID0+IGRhdGEpXG59XG5cbmNvbnN0IGV4cGFuZFNsb3RWYWx1ZSA9ICh2YWx1ZSkgPT4ge1xuICBpZiAodHlwZW9mIHZhbHVlID09PSAnb2JqZWN0JykgcmV0dXJuIHZhbHVlXG4gIHJldHVybiB7XG4gICAgZGVwZW5kczogdmFsdWUuc3RhcnRzV2l0aCgnLS0nKSA/IFt2YWx1ZS5zdWJzdHJpbmcoMildIDogW10sXG4gICAgZGVmYXVsdDogdmFsdWUuc3RhcnRzV2l0aCgnIycpID8gdmFsdWUgOiB1bmRlZmluZWRcbiAgfVxufVxuLyoqXG4gKiByZXRyaWV2ZXMgb3BhY2l0eSBzbG90IGZvciBnaXZlbiBzbG90LiBUaGlzIGdvZXMgdXAgdGhlIGRlcGVuZW5jeSBncmFwaFxuICogdG8gZmluZCB3aGljaCBwYXJlbnQgaGFzIG9wYWNpdHkgc2xvdCBkZWZpbmVkIGZvciBpdC5cbiAqIFRPRE8gcmVmYWN0b3IgdGhpc1xuICovXG5leHBvcnQgY29uc3QgZ2V0T3BhY2l0eVNsb3QgPSAoXG4gIGssXG4gIGluaGVyaXRhbmNlID0gU0xPVF9JTkhFUklUQU5DRSxcbiAgZ2V0RGVwcyA9IGdldERlcGVuZGVuY2llc1xuKSA9PiB7XG4gIGNvbnN0IHZhbHVlID0gZXhwYW5kU2xvdFZhbHVlKGluaGVyaXRhbmNlW2tdKVxuICBpZiAodmFsdWUub3BhY2l0eSA9PT0gbnVsbCkgcmV0dXJuXG4gIGlmICh2YWx1ZS5vcGFjaXR5KSByZXR1cm4gdmFsdWUub3BhY2l0eVxuICBjb25zdCBmaW5kSW5oZXJpdGVkT3BhY2l0eSA9IChrZXksIHZpc2l0ZWQgPSBba10pID0+IHtcbiAgICBjb25zdCBkZXBTbG90ID0gZ2V0RGVwcyhrZXksIGluaGVyaXRhbmNlKVswXVxuICAgIGlmIChkZXBTbG90ID09PSB1bmRlZmluZWQpIHJldHVyblxuICAgIGNvbnN0IGRlcGVuZGVuY3kgPSBpbmhlcml0YW5jZVtkZXBTbG90XVxuICAgIGlmIChkZXBlbmRlbmN5ID09PSB1bmRlZmluZWQpIHJldHVyblxuICAgIGlmIChkZXBlbmRlbmN5Lm9wYWNpdHkgfHwgZGVwZW5kZW5jeSA9PT0gbnVsbCkge1xuICAgICAgcmV0dXJuIGRlcGVuZGVuY3kub3BhY2l0eVxuICAgIH0gZWxzZSBpZiAoZGVwZW5kZW5jeS5kZXBlbmRzICYmIHZpc2l0ZWQuaW5jbHVkZXMoZGVwU2xvdCkpIHtcbiAgICAgIHJldHVybiBmaW5kSW5oZXJpdGVkT3BhY2l0eShkZXBTbG90LCBbLi4udmlzaXRlZCwgZGVwU2xvdF0pXG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBudWxsXG4gICAgfVxuICB9XG4gIGlmICh2YWx1ZS5kZXBlbmRzKSB7XG4gICAgcmV0dXJuIGZpbmRJbmhlcml0ZWRPcGFjaXR5KGspXG4gIH1cbn1cblxuLyoqXG4gKiByZXRyaWV2ZXMgbGF5ZXIgc2xvdCBmb3IgZ2l2ZW4gc2xvdC4gVGhpcyBnb2VzIHVwIHRoZSBkZXBlbmVuY3kgZ3JhcGhcbiAqIHRvIGZpbmQgd2hpY2ggcGFyZW50IGhhcyBvcGFjaXR5IHNsb3QgZGVmaW5lZCBmb3IgaXQuXG4gKiB0aGlzIGlzIGJhc2ljYWxseSBjb3B5cGFzdGUgb2YgZ2V0T3BhY2l0eVNsb3QgZXhjZXB0IGl0IGNoZWNrcyBpZiBrZXkgaXNcbiAqIGluIExBWUVSU1xuICogVE9ETyByZWZhY3RvciB0aGlzXG4gKi9cbmV4cG9ydCBjb25zdCBnZXRMYXllclNsb3QgPSAoXG4gIGssXG4gIGluaGVyaXRhbmNlID0gU0xPVF9JTkhFUklUQU5DRSxcbiAgZ2V0RGVwcyA9IGdldERlcGVuZGVuY2llc1xuKSA9PiB7XG4gIGNvbnN0IHZhbHVlID0gZXhwYW5kU2xvdFZhbHVlKGluaGVyaXRhbmNlW2tdKVxuICBpZiAoTEFZRVJTW2tdKSByZXR1cm4ga1xuICBpZiAodmFsdWUubGF5ZXIgPT09IG51bGwpIHJldHVyblxuICBpZiAodmFsdWUubGF5ZXIpIHJldHVybiB2YWx1ZS5sYXllclxuICBjb25zdCBmaW5kSW5oZXJpdGVkTGF5ZXIgPSAoa2V5LCB2aXNpdGVkID0gW2tdKSA9PiB7XG4gICAgY29uc3QgZGVwU2xvdCA9IGdldERlcHMoa2V5LCBpbmhlcml0YW5jZSlbMF1cbiAgICBpZiAoZGVwU2xvdCA9PT0gdW5kZWZpbmVkKSByZXR1cm5cbiAgICBjb25zdCBkZXBlbmRlbmN5ID0gaW5oZXJpdGFuY2VbZGVwU2xvdF1cbiAgICBpZiAoZGVwZW5kZW5jeSA9PT0gdW5kZWZpbmVkKSByZXR1cm5cbiAgICBpZiAoZGVwZW5kZW5jeS5sYXllciB8fCBkZXBlbmRlbmN5ID09PSBudWxsKSB7XG4gICAgICByZXR1cm4gZGVwZW5kZW5jeS5sYXllclxuICAgIH0gZWxzZSBpZiAoZGVwZW5kZW5jeS5kZXBlbmRzKSB7XG4gICAgICByZXR1cm4gZmluZEluaGVyaXRlZExheWVyKGRlcGVuZGVuY3ksIFsuLi52aXNpdGVkLCBkZXBTbG90XSlcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIG51bGxcbiAgICB9XG4gIH1cbiAgaWYgKHZhbHVlLmRlcGVuZHMpIHtcbiAgICByZXR1cm4gZmluZEluaGVyaXRlZExheWVyKGspXG4gIH1cbn1cblxuLyoqXG4gKiB0b3BvbG9naWNhbGx5IHNvcnRlZCBTTE9UX0lOSEVSSVRBTkNFXG4gKi9cbmV4cG9ydCBjb25zdCBTTE9UX09SREVSRUQgPSB0b3BvU29ydChcbiAgT2JqZWN0LmVudHJpZXMoU0xPVF9JTkhFUklUQU5DRSlcbiAgICAuc29ydCgoW2FLLCBhVl0sIFtiSywgYlZdKSA9PiAoKGFWICYmIGFWLnByaW9yaXR5KSB8fCAwKSAtICgoYlYgJiYgYlYucHJpb3JpdHkpIHx8IDApKVxuICAgIC5yZWR1Y2UoKGFjYywgW2ssIHZdKSA9PiAoeyAuLi5hY2MsIFtrXTogdiB9KSwge30pXG4pXG5cbi8qKlxuICogQWxsIG9wYWNpdHkgc2xvdHMgdXNlZCBpbiBjb2xvciBzbG90cywgdGhlaXIgZGVmYXVsdCB2YWx1ZXMgYW5kIGFmZmVjdGVkXG4gKiBjb2xvciBzbG90cy5cbiAqL1xuZXhwb3J0IGNvbnN0IE9QQUNJVElFUyA9IE9iamVjdC5lbnRyaWVzKFNMT1RfSU5IRVJJVEFOQ0UpLnJlZHVjZSgoYWNjLCBbaywgdl0pID0+IHtcbiAgY29uc3Qgb3BhY2l0eSA9IGdldE9wYWNpdHlTbG90KGssIFNMT1RfSU5IRVJJVEFOQ0UsIGdldERlcGVuZGVuY2llcylcbiAgaWYgKG9wYWNpdHkpIHtcbiAgICByZXR1cm4ge1xuICAgICAgLi4uYWNjLFxuICAgICAgW29wYWNpdHldOiB7XG4gICAgICAgIGRlZmF1bHRWYWx1ZTogREVGQVVMVF9PUEFDSVRZW29wYWNpdHldIHx8IDEsXG4gICAgICAgIGFmZmVjdGVkU2xvdHM6IFsuLi4oKGFjY1tvcGFjaXR5XSAmJiBhY2Nbb3BhY2l0eV0uYWZmZWN0ZWRTbG90cykgfHwgW10pLCBrXVxuICAgICAgfVxuICAgIH1cbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gYWNjXG4gIH1cbn0sIHt9KVxuXG4vKipcbiAqIEhhbmRsZSBkeW5hbWljIGNvbG9yXG4gKi9cbmV4cG9ydCBjb25zdCBjb21wdXRlRHluYW1pY0NvbG9yID0gKHNvdXJjZUNvbG9yLCBnZXRDb2xvciwgbW9kKSA9PiB7XG4gIGlmICh0eXBlb2Ygc291cmNlQ29sb3IgIT09ICdzdHJpbmcnIHx8ICFzb3VyY2VDb2xvci5zdGFydHNXaXRoKCctLScpKSByZXR1cm4gc291cmNlQ29sb3JcbiAgbGV0IHRhcmdldENvbG9yID0gbnVsbFxuICAvLyBDb2xvciByZWZlcmVuY2VzIG90aGVyIGNvbG9yXG4gIGNvbnN0IFt2YXJpYWJsZSwgbW9kaWZpZXJdID0gc291cmNlQ29sb3Iuc3BsaXQoLywvZykubWFwKHN0ciA9PiBzdHIudHJpbSgpKVxuICBjb25zdCB2YXJpYWJsZVNsb3QgPSB2YXJpYWJsZS5zdWJzdHJpbmcoMilcbiAgdGFyZ2V0Q29sb3IgPSBnZXRDb2xvcih2YXJpYWJsZVNsb3QpXG4gIGlmIChtb2RpZmllcikge1xuICAgIHRhcmdldENvbG9yID0gYnJpZ2h0bmVzcyhOdW1iZXIucGFyc2VGbG9hdChtb2RpZmllcikgKiBtb2QsIHRhcmdldENvbG9yKS5yZ2JcbiAgfVxuICByZXR1cm4gdGFyZ2V0Q29sb3Jcbn1cblxuLyoqXG4gKiBUSEUgZnVuY3Rpb24geW91IHdhbnQgdG8gdXNlLiBUYWtlcyBwcm92aWRlZCBjb2xvcnMgYW5kIG9wYWNpdGllc1xuICogdmFsdWUgYW5kIHVzZXMgaW5oZXJpdGFuY2UgZGF0YSB0byBmaWd1cmUgb3V0IGNvbG9yIG5lZWRlZCBmb3IgdGhlIHNsb3QuXG4gKi9cbmV4cG9ydCBjb25zdCBnZXRDb2xvcnMgPSAoc291cmNlQ29sb3JzLCBzb3VyY2VPcGFjaXR5KSA9PiBTTE9UX09SREVSRUQucmVkdWNlKCh7IGNvbG9ycywgb3BhY2l0eSB9LCBrZXkpID0+IHtcbiAgY29uc3Qgc291cmNlQ29sb3IgPSBzb3VyY2VDb2xvcnNba2V5XVxuICBjb25zdCB2YWx1ZSA9IGV4cGFuZFNsb3RWYWx1ZShTTE9UX0lOSEVSSVRBTkNFW2tleV0pXG4gIGNvbnN0IGRlcHMgPSBnZXREZXBlbmRlbmNpZXMoa2V5LCBTTE9UX0lOSEVSSVRBTkNFKVxuICBjb25zdCBpc1RleHRDb2xvciA9ICEhdmFsdWUudGV4dENvbG9yXG4gIGNvbnN0IHZhcmlhbnQgPSB2YWx1ZS52YXJpYW50IHx8IHZhbHVlLmxheWVyXG5cbiAgbGV0IGJhY2tncm91bmRDb2xvciA9IG51bGxcblxuICBpZiAoaXNUZXh0Q29sb3IpIHtcbiAgICBiYWNrZ3JvdW5kQ29sb3IgPSBhbHBoYUJsZW5kTGF5ZXJzKFxuICAgICAgeyAuLi4oY29sb3JzW2RlcHNbMF1dIHx8IGNvbnZlcnQoc291cmNlQ29sb3JzW2tleV0gfHwgJyNGRjAwRkYnKS5yZ2IpIH0sXG4gICAgICBnZXRMYXllcnMoXG4gICAgICAgIGdldExheWVyU2xvdChrZXkpIHx8ICdiZycsXG4gICAgICAgIHZhcmlhbnQgfHwgJ2JnJyxcbiAgICAgICAgZ2V0T3BhY2l0eVNsb3QodmFyaWFudCksXG4gICAgICAgIGNvbG9ycyxcbiAgICAgICAgb3BhY2l0eVxuICAgICAgKVxuICAgIClcbiAgfSBlbHNlIGlmICh2YXJpYW50ICYmIHZhcmlhbnQgIT09IGtleSkge1xuICAgIGJhY2tncm91bmRDb2xvciA9IGNvbG9yc1t2YXJpYW50XSB8fCBjb252ZXJ0KHNvdXJjZUNvbG9yc1t2YXJpYW50XSkucmdiXG4gIH0gZWxzZSB7XG4gICAgYmFja2dyb3VuZENvbG9yID0gY29sb3JzLmJnIHx8IGNvbnZlcnQoc291cmNlQ29sb3JzLmJnKVxuICB9XG5cbiAgY29uc3QgaXNMaWdodE9uRGFyayA9IHJlbGF0aXZlTHVtaW5hbmNlKGJhY2tncm91bmRDb2xvcikgPCAwLjVcbiAgY29uc3QgbW9kID0gaXNMaWdodE9uRGFyayA/IDEgOiAtMVxuXG4gIGxldCBvdXRwdXRDb2xvciA9IG51bGxcbiAgaWYgKHNvdXJjZUNvbG9yKSB7XG4gICAgLy8gQ29sb3IgaXMgZGVmaW5lZCBpbiBzb3VyY2UgY29sb3JcbiAgICBsZXQgdGFyZ2V0Q29sb3IgPSBzb3VyY2VDb2xvclxuICAgIGlmICh0YXJnZXRDb2xvciA9PT0gJ3RyYW5zcGFyZW50Jykge1xuICAgICAgLy8gV2UgdGFrZSBvbmx5IGxheWVycyBiZWxvdyBjdXJyZW50IG9uZVxuICAgICAgY29uc3QgbGF5ZXJzID0gZ2V0TGF5ZXJzKFxuICAgICAgICBnZXRMYXllclNsb3Qoa2V5KSxcbiAgICAgICAga2V5LFxuICAgICAgICBnZXRPcGFjaXR5U2xvdChrZXkpIHx8IGtleSxcbiAgICAgICAgY29sb3JzLFxuICAgICAgICBvcGFjaXR5XG4gICAgICApLnNsaWNlKDAsIC0xKVxuICAgICAgdGFyZ2V0Q29sb3IgPSB7XG4gICAgICAgIC4uLmFscGhhQmxlbmRMYXllcnMoXG4gICAgICAgICAgY29udmVydCgnI0ZGMDBGRicpLnJnYixcbiAgICAgICAgICBsYXllcnNcbiAgICAgICAgKSxcbiAgICAgICAgYTogMFxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAodHlwZW9mIHNvdXJjZUNvbG9yID09PSAnc3RyaW5nJyAmJiBzb3VyY2VDb2xvci5zdGFydHNXaXRoKCctLScpKSB7XG4gICAgICB0YXJnZXRDb2xvciA9IGNvbXB1dGVEeW5hbWljQ29sb3IoXG4gICAgICAgIHNvdXJjZUNvbG9yLFxuICAgICAgICB2YXJpYWJsZVNsb3QgPT4gY29sb3JzW3ZhcmlhYmxlU2xvdF0gfHwgc291cmNlQ29sb3JzW3ZhcmlhYmxlU2xvdF0sXG4gICAgICAgIG1vZFxuICAgICAgKVxuICAgIH0gZWxzZSBpZiAodHlwZW9mIHNvdXJjZUNvbG9yID09PSAnc3RyaW5nJyAmJiBzb3VyY2VDb2xvci5zdGFydHNXaXRoKCcjJykpIHtcbiAgICAgIHRhcmdldENvbG9yID0gY29udmVydCh0YXJnZXRDb2xvcikucmdiXG4gICAgfVxuICAgIG91dHB1dENvbG9yID0geyAuLi50YXJnZXRDb2xvciB9XG4gIH0gZWxzZSBpZiAodmFsdWUuZGVmYXVsdCkge1xuICAgIC8vIHNhbWUgYXMgYWJvdmUgZXhjZXB0IGluIG9iamVjdCBmb3JtXG4gICAgb3V0cHV0Q29sb3IgPSBjb252ZXJ0KHZhbHVlLmRlZmF1bHQpLnJnYlxuICB9IGVsc2Uge1xuICAgIC8vIGNhbGN1bGF0ZSBjb2xvclxuICAgIGNvbnN0IGRlZmF1bHRDb2xvckZ1bmMgPSAobW9kLCBkZXApID0+ICh7IC4uLmRlcCB9KVxuICAgIGNvbnN0IGNvbG9yRnVuYyA9IHZhbHVlLmNvbG9yIHx8IGRlZmF1bHRDb2xvckZ1bmNcblxuICAgIGlmICh2YWx1ZS50ZXh0Q29sb3IpIHtcbiAgICAgIGlmICh2YWx1ZS50ZXh0Q29sb3IgPT09ICdidycpIHtcbiAgICAgICAgb3V0cHV0Q29sb3IgPSBjb250cmFzdFJhdGlvKGJhY2tncm91bmRDb2xvcikucmdiXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBsZXQgY29sb3IgPSB7IC4uLmNvbG9yc1tkZXBzWzBdXSB9XG4gICAgICAgIGlmICh2YWx1ZS5jb2xvcikge1xuICAgICAgICAgIGNvbG9yID0gY29sb3JGdW5jKG1vZCwgLi4uZGVwcy5tYXAoKGRlcCkgPT4gKHsgLi4uY29sb3JzW2RlcF0gfSkpKVxuICAgICAgICB9XG4gICAgICAgIG91dHB1dENvbG9yID0gZ2V0VGV4dENvbG9yKFxuICAgICAgICAgIGJhY2tncm91bmRDb2xvcixcbiAgICAgICAgICB7IC4uLmNvbG9yIH0sXG4gICAgICAgICAgdmFsdWUudGV4dENvbG9yID09PSAncHJlc2VydmUnXG4gICAgICAgIClcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgLy8gYmFja2dyb3VuZCBjb2xvciBjYXNlXG4gICAgICBvdXRwdXRDb2xvciA9IGNvbG9yRnVuYyhcbiAgICAgICAgbW9kLFxuICAgICAgICAuLi5kZXBzLm1hcCgoZGVwKSA9PiAoeyAuLi5jb2xvcnNbZGVwXSB9KSlcbiAgICAgIClcbiAgICB9XG4gIH1cbiAgaWYgKCFvdXRwdXRDb2xvcikge1xuICAgIHRocm93IG5ldyBFcnJvcignQ291bGRuXFwndCBnZW5lcmF0ZSBjb2xvciBmb3IgJyArIGtleSlcbiAgfVxuXG4gIGNvbnN0IG9wYWNpdHlTbG90ID0gdmFsdWUub3BhY2l0eSB8fCBnZXRPcGFjaXR5U2xvdChrZXkpXG4gIGNvbnN0IG93bk9wYWNpdHlTbG90ID0gdmFsdWUub3BhY2l0eVxuXG4gIGlmIChvd25PcGFjaXR5U2xvdCA9PT0gbnVsbCkge1xuICAgIG91dHB1dENvbG9yLmEgPSAxXG4gIH0gZWxzZSBpZiAoc291cmNlQ29sb3IgPT09ICd0cmFuc3BhcmVudCcpIHtcbiAgICBvdXRwdXRDb2xvci5hID0gMFxuICB9IGVsc2Uge1xuICAgIGNvbnN0IG9wYWNpdHlPdmVycmlkZW4gPSBvd25PcGFjaXR5U2xvdCAmJiBzb3VyY2VPcGFjaXR5W29wYWNpdHlTbG90XSAhPT0gdW5kZWZpbmVkXG5cbiAgICBjb25zdCBkZXBlbmRlbmN5U2xvdCA9IGRlcHNbMF1cbiAgICBjb25zdCBkZXBlbmRlbmN5Q29sb3IgPSBkZXBlbmRlbmN5U2xvdCAmJiBjb2xvcnNbZGVwZW5kZW5jeVNsb3RdXG5cbiAgICBpZiAoIW93bk9wYWNpdHlTbG90ICYmIGRlcGVuZGVuY3lDb2xvciAmJiAhdmFsdWUudGV4dENvbG9yICYmIG93bk9wYWNpdHlTbG90ICE9PSBudWxsKSB7XG4gICAgICAvLyBJbmhlcml0aW5nIGNvbG9yIGZyb20gZGVwZW5kZW5jeSAod2VpcmQsIGkga25vdylcbiAgICAgIC8vIGV4Y2VwdCBpZiBpdCdzIGEgdGV4dCBjb2xvciBvciBvcGFjaXR5IHNsb3QgaXMgc2V0IHRvICdudWxsJ1xuICAgICAgb3V0cHV0Q29sb3IuYSA9IGRlcGVuZGVuY3lDb2xvci5hXG4gICAgfSBlbHNlIGlmICghZGVwZW5kZW5jeUNvbG9yICYmICFvcGFjaXR5U2xvdCkge1xuICAgICAgLy8gUmVtb3ZlIGFueSBhbHBoYSBjaGFubmVsIGlmIG5vIGRlcGVuZGVuY3kgYW5kIG5vIG9wYWNpdHlTbG90IGZvdW5kXG4gICAgICBkZWxldGUgb3V0cHV0Q29sb3IuYVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyBPdGhlcndpc2UgdHJ5IHRvIGFzc2lnbiBvcGFjaXR5XG4gICAgICBpZiAoZGVwZW5kZW5jeUNvbG9yICYmIGRlcGVuZGVuY3lDb2xvci5hID09PSAwKSB7XG4gICAgICAgIC8vIHRyYW5zcGFyZW50IGRlcGVuZGVuY3kgc2hhbGwgbWFrZSBkZXBlbmRlbnRzIHRyYW5zcGFyZW50IHRvb1xuICAgICAgICBvdXRwdXRDb2xvci5hID0gMFxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gT3RoZXJ3aXNlIGNoZWNrIGlmIG9wYWNpdHkgaXMgb3ZlcnJpZGVuIGFuZCB1c2UgdGhhdCBvciBkZWZhdWx0IHZhbHVlIGluc3RlYWRcbiAgICAgICAgb3V0cHV0Q29sb3IuYSA9IE51bWJlcihcbiAgICAgICAgICBvcGFjaXR5T3ZlcnJpZGVuXG4gICAgICAgICAgICA/IHNvdXJjZU9wYWNpdHlbb3BhY2l0eVNsb3RdXG4gICAgICAgICAgICA6IChPUEFDSVRJRVNbb3BhY2l0eVNsb3RdIHx8IHt9KS5kZWZhdWx0VmFsdWVcbiAgICAgICAgKVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGlmIChOdW1iZXIuaXNOYU4ob3V0cHV0Q29sb3IuYSkgfHwgb3V0cHV0Q29sb3IuYSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgb3V0cHV0Q29sb3IuYSA9IDFcbiAgfVxuXG4gIGlmIChvcGFjaXR5U2xvdCkge1xuICAgIHJldHVybiB7XG4gICAgICBjb2xvcnM6IHsgLi4uY29sb3JzLCBba2V5XTogb3V0cHV0Q29sb3IgfSxcbiAgICAgIG9wYWNpdHk6IHsgLi4ub3BhY2l0eSwgW29wYWNpdHlTbG90XTogb3V0cHV0Q29sb3IuYSB9XG4gICAgfVxuICB9IGVsc2Uge1xuICAgIHJldHVybiB7XG4gICAgICBjb2xvcnM6IHsgLi4uY29sb3JzLCBba2V5XTogb3V0cHV0Q29sb3IgfSxcbiAgICAgIG9wYWNpdHlcbiAgICB9XG4gIH1cbn0sIHsgY29sb3JzOiB7fSwgb3BhY2l0eToge30gfSlcbiJdLCJuYW1lcyI6WyJjb252ZXJ0IiwiYnJpZ2h0bmVzcyIsImNvbnRyYXN0UmF0aW8iLCJhbHBoYUJsZW5kTGF5ZXJzIiwiZ2V0VGV4dENvbG9yIiwicmVsYXRpdmVMdW1pbmFuY2UiLCJMQVlFUlMiLCJERUZBVUxUX09QQUNJVFkiLCJTTE9UX0lOSEVSSVRBTkNFIiwiQ1VSUkVOVF9WRVJTSU9OIiwiZ2V0TGF5ZXJzQXJyYXkiLCJsYXllciIsImRhdGEiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJ1bmRlZmluZWQiLCJhcnJheSIsInBhcmVudCIsInVuc2hpZnQiLCJnZXRMYXllcnMiLCJ2YXJpYW50Iiwib3BhY2l0eVNsb3QiLCJjb2xvcnMiLCJvcGFjaXR5IiwibWFwIiwiY3VycmVudExheWVyIiwiZ2V0RGVwZW5kZW5jaWVzIiwia2V5IiwiaW5oZXJpdGFuY2UiLCJzdGFydHNXaXRoIiwic3Vic3RyaW5nIiwiZGVwZW5kcyIsImxheWVyRGVwcyIsIkFycmF5IiwiaXNBcnJheSIsImNvbmNhdCIsIl90b0NvbnN1bWFibGVBcnJheSIsInRvcG9Tb3J0IiwiZ2V0RGVwcyIsImFsbEtleXMiLCJPYmplY3QiLCJrZXlzIiwid2hpdGVzIiwiU2V0IiwiZ3JheXMiLCJibGFja3MiLCJ1bnByb2Nlc3NlZCIsIm91dHB1dCIsInN0ZXAiLCJub2RlIiwiaGFzIiwiYWRkIiwiZm9yRWFjaCIsInB1c2giLCJjb25zb2xlIiwiZGVidWciLCJFcnJvciIsInBvcCIsImluZGV4Iiwic29ydCIsIl9yZWYiLCJfcmVmMiIsImEiLCJhaSIsImIiLCJiaSIsImRlcHNBIiwiZGVwc0IiLCJfcmVmMyIsImV4cGFuZFNsb3RWYWx1ZSIsInZhbHVlIiwiX3R5cGVvZiIsImdldE9wYWNpdHlTbG90IiwiayIsImZpbmRJbmhlcml0ZWRPcGFjaXR5IiwidmlzaXRlZCIsImRlcFNsb3QiLCJkZXBlbmRlbmN5IiwiaW5jbHVkZXMiLCJnZXRMYXllclNsb3QiLCJmaW5kSW5oZXJpdGVkTGF5ZXIiLCJTTE9UX09SREVSRUQiLCJlbnRyaWVzIiwiX3JlZjQiLCJfcmVmNSIsIl9yZWY2IiwiX3NsaWNlZFRvQXJyYXkiLCJhSyIsImFWIiwiX3JlZjciLCJiSyIsImJWIiwicHJpb3JpdHkiLCJyZWR1Y2UiLCJhY2MiLCJfcmVmOCIsIl9yZWY5IiwidiIsIl9vYmplY3RTcHJlYWQiLCJfZGVmaW5lUHJvcGVydHkiLCJPUEFDSVRJRVMiLCJfcmVmMTAiLCJfcmVmMTEiLCJkZWZhdWx0VmFsdWUiLCJhZmZlY3RlZFNsb3RzIiwiY29tcHV0ZUR5bmFtaWNDb2xvciIsInNvdXJjZUNvbG9yIiwiZ2V0Q29sb3IiLCJtb2QiLCJ0YXJnZXRDb2xvciIsIl9zb3VyY2VDb2xvciRzcGxpdCRtYSIsInNwbGl0Iiwic3RyIiwidHJpbSIsIl9zb3VyY2VDb2xvciRzcGxpdCRtYTIiLCJ2YXJpYWJsZSIsIm1vZGlmaWVyIiwidmFyaWFibGVTbG90IiwiTnVtYmVyIiwicGFyc2VGbG9hdCIsInJnYiIsImdldENvbG9ycyIsInNvdXJjZUNvbG9ycyIsInNvdXJjZU9wYWNpdHkiLCJfcmVmMTIiLCJkZXBzIiwiaXNUZXh0Q29sb3IiLCJ0ZXh0Q29sb3IiLCJiYWNrZ3JvdW5kQ29sb3IiLCJiZyIsImlzTGlnaHRPbkRhcmsiLCJvdXRwdXRDb2xvciIsImxheWVycyIsInNsaWNlIiwiZGVmYXVsdENvbG9yRnVuYyIsImRlcCIsImNvbG9yRnVuYyIsImNvbG9yIiwiYXBwbHkiLCJvd25PcGFjaXR5U2xvdCIsIm9wYWNpdHlPdmVycmlkZW4iLCJkZXBlbmRlbmN5U2xvdCIsImRlcGVuZGVuY3lDb2xvciIsImlzTmFOIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./src/services/theme_data/theme_data.service.js\n");
/***/ }),
/***/ "./src/services/timeline_fetcher/timeline_fetcher.service.js":
/*!*******************************************************************!*\
!*** ./src/services/timeline_fetcher/timeline_fetcher.service.js ***!
\*******************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var lodash_camelCase__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/camelCase */ \"./node_modules/lodash/camelCase.js\");\n/* harmony import */ var lodash_camelCase__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_camelCase__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _api_api_service_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../api/api.service.js */ \"./src/services/api/api.service.js\");\n/* harmony import */ var _promise_interval_promise_interval_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../promise_interval/promise_interval.js */ \"./src/services/promise_interval/promise_interval.js\");\n\n\n\nvar update = function update(_ref) {\n var store = _ref.store,\n statuses = _ref.statuses,\n timeline = _ref.timeline,\n showImmediately = _ref.showImmediately,\n userId = _ref.userId,\n listId = _ref.listId,\n pagination = _ref.pagination;\n var ccTimeline = lodash_camelCase__WEBPACK_IMPORTED_MODULE_0___default()(timeline);\n store.dispatch('addNewStatuses', {\n timeline: ccTimeline,\n userId: userId,\n listId: listId,\n statuses: statuses,\n showImmediately: showImmediately,\n pagination: pagination\n });\n};\nvar fetchAndUpdate = function fetchAndUpdate(_ref2) {\n var store = _ref2.store,\n credentials = _ref2.credentials,\n _ref2$timeline = _ref2.timeline,\n timeline = _ref2$timeline === void 0 ? 'friends' : _ref2$timeline,\n _ref2$older = _ref2.older,\n older = _ref2$older === void 0 ? false : _ref2$older,\n _ref2$showImmediately = _ref2.showImmediately,\n showImmediately = _ref2$showImmediately === void 0 ? false : _ref2$showImmediately,\n _ref2$userId = _ref2.userId,\n userId = _ref2$userId === void 0 ? false : _ref2$userId,\n _ref2$listId = _ref2.listId,\n listId = _ref2$listId === void 0 ? false : _ref2$listId,\n _ref2$tag = _ref2.tag,\n tag = _ref2$tag === void 0 ? false : _ref2$tag,\n until = _ref2.until,\n since = _ref2.since;\n var args = {\n timeline: timeline,\n credentials: credentials\n };\n var rootState = store.rootState || store.state;\n var getters = store.getters;\n var timelineData = rootState.statuses.timelines[lodash_camelCase__WEBPACK_IMPORTED_MODULE_0___default()(timeline)];\n var _getters$mergedConfig = getters.mergedConfig,\n hideMutedPosts = _getters$mergedConfig.hideMutedPosts,\n replyVisibility = _getters$mergedConfig.replyVisibility;\n var loggedIn = !!rootState.users.currentUser;\n if (older) {\n args.until = until || timelineData.minId;\n } else {\n if (since === undefined) {\n args.since = timelineData.maxId;\n } else if (since !== null) {\n args.since = since;\n }\n }\n args.userId = userId;\n args.listId = listId;\n args.tag = tag;\n args.withMuted = !hideMutedPosts;\n if (loggedIn && ['friends', 'public', 'publicAndExternal'].includes(timeline)) {\n args.replyVisibility = replyVisibility;\n }\n var numStatusesBeforeFetch = timelineData.statuses.length;\n return _api_api_service_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"].fetchTimeline(args).then(function (response) {\n if (response.errors) {\n throw new Error(\"\".concat(response.status, \" \").concat(response.statusText));\n }\n var statuses = response.data,\n pagination = response.pagination;\n if (!older && statuses.length >= 20 && !timelineData.loading && numStatusesBeforeFetch > 0) {\n store.dispatch('queueFlush', {\n timeline: timeline,\n id: timelineData.maxId\n });\n }\n update({\n store: store,\n statuses: statuses,\n timeline: timeline,\n showImmediately: showImmediately,\n userId: userId,\n listId: listId,\n pagination: pagination\n });\n return {\n statuses: statuses,\n pagination: pagination\n };\n })[\"catch\"](function (error) {\n store.dispatch('pushGlobalNotice', {\n level: 'error',\n messageKey: 'timeline.error',\n messageArgs: [error.message],\n timeout: 5000\n });\n });\n};\nvar startFetching = function startFetching(_ref3) {\n var _ref3$timeline = _ref3.timeline,\n timeline = _ref3$timeline === void 0 ? 'friends' : _ref3$timeline,\n credentials = _ref3.credentials,\n store = _ref3.store,\n _ref3$userId = _ref3.userId,\n userId = _ref3$userId === void 0 ? false : _ref3$userId,\n _ref3$listId = _ref3.listId,\n listId = _ref3$listId === void 0 ? false : _ref3$listId,\n _ref3$tag = _ref3.tag,\n tag = _ref3$tag === void 0 ? false : _ref3$tag;\n var rootState = store.rootState || store.state;\n var timelineData = rootState.statuses.timelines[lodash_camelCase__WEBPACK_IMPORTED_MODULE_0___default()(timeline)];\n var showImmediately = timelineData.visibleStatuses.length === 0;\n timelineData.userId = userId;\n timelineData.listId = listId;\n fetchAndUpdate({\n timeline: timeline,\n credentials: credentials,\n store: store,\n showImmediately: showImmediately,\n userId: userId,\n listId: listId,\n tag: tag\n });\n var boundFetchAndUpdate = function boundFetchAndUpdate() {\n return fetchAndUpdate({\n timeline: timeline,\n credentials: credentials,\n store: store,\n userId: userId,\n listId: listId,\n tag: tag\n });\n };\n return (0,_promise_interval_promise_interval_js__WEBPACK_IMPORTED_MODULE_2__.promiseInterval)(boundFetchAndUpdate, 10000);\n};\nvar timelineFetcher = {\n fetchAndUpdate: fetchAndUpdate,\n startFetching: startFetching\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (timelineFetcher);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvdGltZWxpbmVfZmV0Y2hlci90aW1lbGluZV9mZXRjaGVyLnNlcnZpY2UuanMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBRThDO0FBQzJCO0FBRXpFLElBQU1FLE1BQU0sR0FBRyxTQUFUQSxNQUFNQSxDQUFBQyxJQUFBLEVBQW1GO0VBQUEsSUFBN0VDLEtBQUssR0FBQUQsSUFBQSxDQUFMQyxLQUFLO0lBQUVDLFFBQVEsR0FBQUYsSUFBQSxDQUFSRSxRQUFRO0lBQUVDLFFBQVEsR0FBQUgsSUFBQSxDQUFSRyxRQUFRO0lBQUVDLGVBQWUsR0FBQUosSUFBQSxDQUFmSSxlQUFlO0lBQUVDLE1BQU0sR0FBQUwsSUFBQSxDQUFOSyxNQUFNO0lBQUVDLE1BQU0sR0FBQU4sSUFBQSxDQUFOTSxNQUFNO0lBQUVDLFVBQVUsR0FBQVAsSUFBQSxDQUFWTyxVQUFVO0VBQ3RGLElBQU1DLFVBQVUsR0FBR0MsdURBQUEsQ0FBVU4sUUFBUSxDQUFDO0VBRXRDRixLQUFLLENBQUNTLFFBQVEsQ0FBQyxnQkFBZ0IsRUFBRTtJQUMvQlAsUUFBUSxFQUFFSyxVQUFVO0lBQ3BCSCxNQUFNLEVBQU5BLE1BQU07SUFDTkMsTUFBTSxFQUFOQSxNQUFNO0lBQ05KLFFBQVEsRUFBUkEsUUFBUTtJQUNSRSxlQUFlLEVBQWZBLGVBQWU7SUFDZkcsVUFBVSxFQUFWQTtFQUNGLENBQUMsQ0FBQztBQUNKLENBQUM7QUFFRCxJQUFNSSxjQUFjLEdBQUcsU0FBakJBLGNBQWNBLENBQUFDLEtBQUEsRUFXZDtFQUFBLElBVkpYLEtBQUssR0FBQVcsS0FBQSxDQUFMWCxLQUFLO0lBQ0xZLFdBQVcsR0FBQUQsS0FBQSxDQUFYQyxXQUFXO0lBQUFDLGNBQUEsR0FBQUYsS0FBQSxDQUNYVCxRQUFRO0lBQVJBLFFBQVEsR0FBQVcsY0FBQSxjQUFHLFNBQVMsR0FBQUEsY0FBQTtJQUFBQyxXQUFBLEdBQUFILEtBQUEsQ0FDcEJJLEtBQUs7SUFBTEEsS0FBSyxHQUFBRCxXQUFBLGNBQUcsS0FBSyxHQUFBQSxXQUFBO0lBQUFFLHFCQUFBLEdBQUFMLEtBQUEsQ0FDYlIsZUFBZTtJQUFmQSxlQUFlLEdBQUFhLHFCQUFBLGNBQUcsS0FBSyxHQUFBQSxxQkFBQTtJQUFBQyxZQUFBLEdBQUFOLEtBQUEsQ0FDdkJQLE1BQU07SUFBTkEsTUFBTSxHQUFBYSxZQUFBLGNBQUcsS0FBSyxHQUFBQSxZQUFBO0lBQUFDLFlBQUEsR0FBQVAsS0FBQSxDQUNkTixNQUFNO0lBQU5BLE1BQU0sR0FBQWEsWUFBQSxjQUFHLEtBQUssR0FBQUEsWUFBQTtJQUFBQyxTQUFBLEdBQUFSLEtBQUEsQ0FDZFMsR0FBRztJQUFIQSxHQUFHLEdBQUFELFNBQUEsY0FBRyxLQUFLLEdBQUFBLFNBQUE7SUFDWEUsS0FBSyxHQUFBVixLQUFBLENBQUxVLEtBQUs7SUFDTEMsS0FBSyxHQUFBWCxLQUFBLENBQUxXLEtBQUs7RUFFTCxJQUFNQyxJQUFJLEdBQUc7SUFBRXJCLFFBQVEsRUFBUkEsUUFBUTtJQUFFVSxXQUFXLEVBQVhBO0VBQVksQ0FBQztFQUN0QyxJQUFNWSxTQUFTLEdBQUd4QixLQUFLLENBQUN3QixTQUFTLElBQUl4QixLQUFLLENBQUN5QixLQUFLO0VBQ2hELElBQVFDLE9BQU8sR0FBSzFCLEtBQUssQ0FBakIwQixPQUFPO0VBQ2YsSUFBTUMsWUFBWSxHQUFHSCxTQUFTLENBQUN2QixRQUFRLENBQUMyQixTQUFTLENBQUNwQix1REFBQSxDQUFVTixRQUFRLENBQUMsQ0FBQztFQUN0RSxJQUFBMkIscUJBQUEsR0FBNENILE9BQU8sQ0FBQ0ksWUFBWTtJQUF4REMsY0FBYyxHQUFBRixxQkFBQSxDQUFkRSxjQUFjO0lBQUVDLGVBQWUsR0FBQUgscUJBQUEsQ0FBZkcsZUFBZTtFQUN2QyxJQUFNQyxRQUFRLEdBQUcsQ0FBQyxDQUFDVCxTQUFTLENBQUNVLEtBQUssQ0FBQ0MsV0FBVztFQUU5QyxJQUFJcEIsS0FBSyxFQUFFO0lBQ1RRLElBQUksQ0FBQ0YsS0FBSyxHQUFHQSxLQUFLLElBQUlNLFlBQVksQ0FBQ1MsS0FBSztFQUMxQyxDQUFDLE1BQU07SUFDTCxJQUFJZCxLQUFLLEtBQUtlLFNBQVMsRUFBRTtNQUN2QmQsSUFBSSxDQUFDRCxLQUFLLEdBQUdLLFlBQVksQ0FBQ1csS0FBSztJQUNqQyxDQUFDLE1BQU0sSUFBSWhCLEtBQUssS0FBSyxJQUFJLEVBQUU7TUFDekJDLElBQUksQ0FBQ0QsS0FBSyxHQUFHQSxLQUFLO0lBQ3BCO0VBQ0Y7RUFFQUMsSUFBSSxDQUFDbkIsTUFBTSxHQUFHQSxNQUFNO0VBQ3BCbUIsSUFBSSxDQUFDbEIsTUFBTSxHQUFHQSxNQUFNO0VBQ3BCa0IsSUFBSSxDQUFDSCxHQUFHLEdBQUdBLEdBQUc7RUFDZEcsSUFBSSxDQUFDZ0IsU0FBUyxHQUFHLENBQUNSLGNBQWM7RUFDaEMsSUFBSUUsUUFBUSxJQUFJLENBQUMsU0FBUyxFQUFFLFFBQVEsRUFBRSxtQkFBbUIsQ0FBQyxDQUFDTyxRQUFRLENBQUN0QyxRQUFRLENBQUMsRUFBRTtJQUM3RXFCLElBQUksQ0FBQ1MsZUFBZSxHQUFHQSxlQUFlO0VBQ3hDO0VBRUEsSUFBTVMsc0JBQXNCLEdBQUdkLFlBQVksQ0FBQzFCLFFBQVEsQ0FBQ3lDLE1BQU07RUFFM0QsT0FBTzlDLHlFQUF3QixDQUFDMkIsSUFBSSxDQUFDLENBQ2xDcUIsSUFBSSxDQUFDLFVBQUFDLFFBQVEsRUFBSTtJQUNoQixJQUFJQSxRQUFRLENBQUNDLE1BQU0sRUFBRTtNQUNuQixNQUFNLElBQUlDLEtBQUssSUFBQUMsTUFBQSxDQUFJSCxRQUFRLENBQUNJLE1BQU0sT0FBQUQsTUFBQSxDQUFJSCxRQUFRLENBQUNLLFVBQVUsQ0FBRSxDQUFDO0lBQzlEO0lBRUEsSUFBY2pELFFBQVEsR0FBaUI0QyxRQUFRLENBQXZDTSxJQUFJO01BQVk3QyxVQUFVLEdBQUt1QyxRQUFRLENBQXZCdkMsVUFBVTtJQUNsQyxJQUFJLENBQUNTLEtBQUssSUFBSWQsUUFBUSxDQUFDeUMsTUFBTSxJQUFJLEVBQUUsSUFBSSxDQUFDZixZQUFZLENBQUN5QixPQUFPLElBQUlYLHNCQUFzQixHQUFHLENBQUMsRUFBRTtNQUMxRnpDLEtBQUssQ0FBQ1MsUUFBUSxDQUFDLFlBQVksRUFBRTtRQUFFUCxRQUFRLEVBQVJBLFFBQVE7UUFBRW1ELEVBQUUsRUFBRTFCLFlBQVksQ0FBQ1c7TUFBTSxDQUFDLENBQUM7SUFDcEU7SUFDQXhDLE1BQU0sQ0FBQztNQUFFRSxLQUFLLEVBQUxBLEtBQUs7TUFBRUMsUUFBUSxFQUFSQSxRQUFRO01BQUVDLFFBQVEsRUFBUkEsUUFBUTtNQUFFQyxlQUFlLEVBQWZBLGVBQWU7TUFBRUMsTUFBTSxFQUFOQSxNQUFNO01BQUVDLE1BQU0sRUFBTkEsTUFBTTtNQUFFQyxVQUFVLEVBQVZBO0lBQVcsQ0FBQyxDQUFDO0lBQ2xGLE9BQU87TUFBRUwsUUFBUSxFQUFSQSxRQUFRO01BQUVLLFVBQVUsRUFBVkE7SUFBVyxDQUFDO0VBQ2pDLENBQUMsQ0FBQyxTQUNJLENBQUMsVUFBQ2dELEtBQUssRUFBSztJQUNoQnRELEtBQUssQ0FBQ1MsUUFBUSxDQUFDLGtCQUFrQixFQUFFO01BQ2pDOEMsS0FBSyxFQUFFLE9BQU87TUFDZEMsVUFBVSxFQUFFLGdCQUFnQjtNQUM1QkMsV0FBVyxFQUFFLENBQUNILEtBQUssQ0FBQ0ksT0FBTyxDQUFDO01BQzVCQyxPQUFPLEVBQUU7SUFDWCxDQUFDLENBQUM7RUFDSixDQUFDLENBQUM7QUFDTixDQUFDO0FBRUQsSUFBTUMsYUFBYSxHQUFHLFNBQWhCQSxhQUFhQSxDQUFBQyxLQUFBLEVBQWtHO0VBQUEsSUFBQUMsY0FBQSxHQUFBRCxLQUFBLENBQTVGM0QsUUFBUTtJQUFSQSxRQUFRLEdBQUE0RCxjQUFBLGNBQUcsU0FBUyxHQUFBQSxjQUFBO0lBQUVsRCxXQUFXLEdBQUFpRCxLQUFBLENBQVhqRCxXQUFXO0lBQUVaLEtBQUssR0FBQTZELEtBQUEsQ0FBTDdELEtBQUs7SUFBQStELFlBQUEsR0FBQUYsS0FBQSxDQUFFekQsTUFBTTtJQUFOQSxNQUFNLEdBQUEyRCxZQUFBLGNBQUcsS0FBSyxHQUFBQSxZQUFBO0lBQUFDLFlBQUEsR0FBQUgsS0FBQSxDQUFFeEQsTUFBTTtJQUFOQSxNQUFNLEdBQUEyRCxZQUFBLGNBQUcsS0FBSyxHQUFBQSxZQUFBO0lBQUFDLFNBQUEsR0FBQUosS0FBQSxDQUFFekMsR0FBRztJQUFIQSxHQUFHLEdBQUE2QyxTQUFBLGNBQUcsS0FBSyxHQUFBQSxTQUFBO0VBQzVHLElBQU16QyxTQUFTLEdBQUd4QixLQUFLLENBQUN3QixTQUFTLElBQUl4QixLQUFLLENBQUN5QixLQUFLO0VBQ2hELElBQU1FLFlBQVksR0FBR0gsU0FBUyxDQUFDdkIsUUFBUSxDQUFDMkIsU0FBUyxDQUFDcEIsdURBQUEsQ0FBVU4sUUFBUSxDQUFDLENBQUM7RUFDdEUsSUFBTUMsZUFBZSxHQUFHd0IsWUFBWSxDQUFDdUMsZUFBZSxDQUFDeEIsTUFBTSxLQUFLLENBQUM7RUFDakVmLFlBQVksQ0FBQ3ZCLE1BQU0sR0FBR0EsTUFBTTtFQUM1QnVCLFlBQVksQ0FBQ3RCLE1BQU0sR0FBR0EsTUFBTTtFQUM1QkssY0FBYyxDQUFDO0lBQUVSLFFBQVEsRUFBUkEsUUFBUTtJQUFFVSxXQUFXLEVBQVhBLFdBQVc7SUFBRVosS0FBSyxFQUFMQSxLQUFLO0lBQUVHLGVBQWUsRUFBZkEsZUFBZTtJQUFFQyxNQUFNLEVBQU5BLE1BQU07SUFBRUMsTUFBTSxFQUFOQSxNQUFNO0lBQUVlLEdBQUcsRUFBSEE7RUFBSSxDQUFDLENBQUM7RUFDdEYsSUFBTStDLG1CQUFtQixHQUFHLFNBQXRCQSxtQkFBbUJBLENBQUE7SUFBQSxPQUN2QnpELGNBQWMsQ0FBQztNQUFFUixRQUFRLEVBQVJBLFFBQVE7TUFBRVUsV0FBVyxFQUFYQSxXQUFXO01BQUVaLEtBQUssRUFBTEEsS0FBSztNQUFFSSxNQUFNLEVBQU5BLE1BQU07TUFBRUMsTUFBTSxFQUFOQSxNQUFNO01BQUVlLEdBQUcsRUFBSEE7SUFBSSxDQUFDLENBQUM7RUFBQTtFQUN2RSxPQUFPdkIsc0ZBQWUsQ0FBQ3NFLG1CQUFtQixFQUFFLEtBQUssQ0FBQztBQUNwRCxDQUFDO0FBQ0QsSUFBTUMsZUFBZSxHQUFHO0VBQ3RCMUQsY0FBYyxFQUFkQSxjQUFjO0VBQ2RrRCxhQUFhLEVBQWJBO0FBQ0YsQ0FBQztBQUVELGlFQUFlUSxlQUFlIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9zZXJ2aWNlcy90aW1lbGluZV9mZXRjaGVyL3RpbWVsaW5lX2ZldGNoZXIuc2VydmljZS5qcz84MTM2Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNhbWVsQ2FzZSB9IGZyb20gJ2xvZGFzaCdcblxuaW1wb3J0IGFwaVNlcnZpY2UgZnJvbSAnLi4vYXBpL2FwaS5zZXJ2aWNlLmpzJ1xuaW1wb3J0IHsgcHJvbWlzZUludGVydmFsIH0gZnJvbSAnLi4vcHJvbWlzZV9pbnRlcnZhbC9wcm9taXNlX2ludGVydmFsLmpzJ1xuXG5jb25zdCB1cGRhdGUgPSAoeyBzdG9yZSwgc3RhdHVzZXMsIHRpbWVsaW5lLCBzaG93SW1tZWRpYXRlbHksIHVzZXJJZCwgbGlzdElkLCBwYWdpbmF0aW9uIH0pID0+IHtcbiAgY29uc3QgY2NUaW1lbGluZSA9IGNhbWVsQ2FzZSh0aW1lbGluZSlcblxuICBzdG9yZS5kaXNwYXRjaCgnYWRkTmV3U3RhdHVzZXMnLCB7XG4gICAgdGltZWxpbmU6IGNjVGltZWxpbmUsXG4gICAgdXNlcklkLFxuICAgIGxpc3RJZCxcbiAgICBzdGF0dXNlcyxcbiAgICBzaG93SW1tZWRpYXRlbHksXG4gICAgcGFnaW5hdGlvblxuICB9KVxufVxuXG5jb25zdCBmZXRjaEFuZFVwZGF0ZSA9ICh7XG4gIHN0b3JlLFxuICBjcmVkZW50aWFscyxcbiAgdGltZWxpbmUgPSAnZnJpZW5kcycsXG4gIG9sZGVyID0gZmFsc2UsXG4gIHNob3dJbW1lZGlhdGVseSA9IGZhbHNlLFxuICB1c2VySWQgPSBmYWxzZSxcbiAgbGlzdElkID0gZmFsc2UsXG4gIHRhZyA9IGZhbHNlLFxuICB1bnRpbCxcbiAgc2luY2Vcbn0pID0+IHtcbiAgY29uc3QgYXJncyA9IHsgdGltZWxpbmUsIGNyZWRlbnRpYWxzIH1cbiAgY29uc3Qgcm9vdFN0YXRlID0gc3RvcmUucm9vdFN0YXRlIHx8IHN0b3JlLnN0YXRlXG4gIGNvbnN0IHsgZ2V0dGVycyB9ID0gc3RvcmVcbiAgY29uc3QgdGltZWxpbmVEYXRhID0gcm9vdFN0YXRlLnN0YXR1c2VzLnRpbWVsaW5lc1tjYW1lbENhc2UodGltZWxpbmUpXVxuICBjb25zdCB7IGhpZGVNdXRlZFBvc3RzLCByZXBseVZpc2liaWxpdHkgfSA9IGdldHRlcnMubWVyZ2VkQ29uZmlnXG4gIGNvbnN0IGxvZ2dlZEluID0gISFyb290U3RhdGUudXNlcnMuY3VycmVudFVzZXJcblxuICBpZiAob2xkZXIpIHtcbiAgICBhcmdzLnVudGlsID0gdW50aWwgfHwgdGltZWxpbmVEYXRhLm1pbklkXG4gIH0gZWxzZSB7XG4gICAgaWYgKHNpbmNlID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGFyZ3Muc2luY2UgPSB0aW1lbGluZURhdGEubWF4SWRcbiAgICB9IGVsc2UgaWYgKHNpbmNlICE9PSBudWxsKSB7XG4gICAgICBhcmdzLnNpbmNlID0gc2luY2VcbiAgICB9XG4gIH1cblxuICBhcmdzLnVzZXJJZCA9IHVzZXJJZFxuICBhcmdzLmxpc3RJZCA9IGxpc3RJZFxuICBhcmdzLnRhZyA9IHRhZ1xuICBhcmdzLndpdGhNdXRlZCA9ICFoaWRlTXV0ZWRQb3N0c1xuICBpZiAobG9nZ2VkSW4gJiYgWydmcmllbmRzJywgJ3B1YmxpYycsICdwdWJsaWNBbmRFeHRlcm5hbCddLmluY2x1ZGVzKHRpbWVsaW5lKSkge1xuICAgIGFyZ3MucmVwbHlWaXNpYmlsaXR5ID0gcmVwbHlWaXNpYmlsaXR5XG4gIH1cblxuICBjb25zdCBudW1TdGF0dXNlc0JlZm9yZUZldGNoID0gdGltZWxpbmVEYXRhLnN0YXR1c2VzLmxlbmd0aFxuXG4gIHJldHVybiBhcGlTZXJ2aWNlLmZldGNoVGltZWxpbmUoYXJncylcbiAgICAudGhlbihyZXNwb25zZSA9PiB7XG4gICAgICBpZiAocmVzcG9uc2UuZXJyb3JzKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgJHtyZXNwb25zZS5zdGF0dXN9ICR7cmVzcG9uc2Uuc3RhdHVzVGV4dH1gKVxuICAgICAgfVxuXG4gICAgICBjb25zdCB7IGRhdGE6IHN0YXR1c2VzLCBwYWdpbmF0aW9uIH0gPSByZXNwb25zZVxuICAgICAgaWYgKCFvbGRlciAmJiBzdGF0dXNlcy5sZW5ndGggPj0gMjAgJiYgIXRpbWVsaW5lRGF0YS5sb2FkaW5nICYmIG51bVN0YXR1c2VzQmVmb3JlRmV0Y2ggPiAwKSB7XG4gICAgICAgIHN0b3JlLmRpc3BhdGNoKCdxdWV1ZUZsdXNoJywgeyB0aW1lbGluZSwgaWQ6IHRpbWVsaW5lRGF0YS5tYXhJZCB9KVxuICAgICAgfVxuICAgICAgdXBkYXRlKHsgc3RvcmUsIHN0YXR1c2VzLCB0aW1lbGluZSwgc2hvd0ltbWVkaWF0ZWx5LCB1c2VySWQsIGxpc3RJZCwgcGFnaW5hdGlvbiB9KVxuICAgICAgcmV0dXJuIHsgc3RhdHVzZXMsIHBhZ2luYXRpb24gfVxuICAgIH0pXG4gICAgLmNhdGNoKChlcnJvcikgPT4ge1xuICAgICAgc3RvcmUuZGlzcGF0Y2goJ3B1c2hHbG9iYWxOb3RpY2UnLCB7XG4gICAgICAgIGxldmVsOiAnZXJyb3InLFxuICAgICAgICBtZXNzYWdlS2V5OiAndGltZWxpbmUuZXJyb3InLFxuICAgICAgICBtZXNzYWdlQXJnczogW2Vycm9yLm1lc3NhZ2VdLFxuICAgICAgICB0aW1lb3V0OiA1MDAwXG4gICAgICB9KVxuICAgIH0pXG59XG5cbmNvbnN0IHN0YXJ0RmV0Y2hpbmcgPSAoeyB0aW1lbGluZSA9ICdmcmllbmRzJywgY3JlZGVudGlhbHMsIHN0b3JlLCB1c2VySWQgPSBmYWxzZSwgbGlzdElkID0gZmFsc2UsIHRhZyA9IGZhbHNlIH0pID0+IHtcbiAgY29uc3Qgcm9vdFN0YXRlID0gc3RvcmUucm9vdFN0YXRlIHx8IHN0b3JlLnN0YXRlXG4gIGNvbnN0IHRpbWVsaW5lRGF0YSA9IHJvb3RTdGF0ZS5zdGF0dXNlcy50aW1lbGluZXNbY2FtZWxDYXNlKHRpbWVsaW5lKV1cbiAgY29uc3Qgc2hvd0ltbWVkaWF0ZWx5ID0gdGltZWxpbmVEYXRhLnZpc2libGVTdGF0dXNlcy5sZW5ndGggPT09IDBcbiAgdGltZWxpbmVEYXRhLnVzZXJJZCA9IHVzZXJJZFxuICB0aW1lbGluZURhdGEubGlzdElkID0gbGlzdElkXG4gIGZldGNoQW5kVXBkYXRlKHsgdGltZWxpbmUsIGNyZWRlbnRpYWxzLCBzdG9yZSwgc2hvd0ltbWVkaWF0ZWx5LCB1c2VySWQsIGxpc3RJZCwgdGFnIH0pXG4gIGNvbnN0IGJvdW5kRmV0Y2hBbmRVcGRhdGUgPSAoKSA9PlxuICAgIGZldGNoQW5kVXBkYXRlKHsgdGltZWxpbmUsIGNyZWRlbnRpYWxzLCBzdG9yZSwgdXNlcklkLCBsaXN0SWQsIHRhZyB9KVxuICByZXR1cm4gcHJvbWlzZUludGVydmFsKGJvdW5kRmV0Y2hBbmRVcGRhdGUsIDEwMDAwKVxufVxuY29uc3QgdGltZWxpbmVGZXRjaGVyID0ge1xuICBmZXRjaEFuZFVwZGF0ZSxcbiAgc3RhcnRGZXRjaGluZ1xufVxuXG5leHBvcnQgZGVmYXVsdCB0aW1lbGluZUZldGNoZXJcbiJdLCJuYW1lcyI6WyJhcGlTZXJ2aWNlIiwicHJvbWlzZUludGVydmFsIiwidXBkYXRlIiwiX3JlZiIsInN0b3JlIiwic3RhdHVzZXMiLCJ0aW1lbGluZSIsInNob3dJbW1lZGlhdGVseSIsInVzZXJJZCIsImxpc3RJZCIsInBhZ2luYXRpb24iLCJjY1RpbWVsaW5lIiwiX2NhbWVsQ2FzZSIsImRpc3BhdGNoIiwiZmV0Y2hBbmRVcGRhdGUiLCJfcmVmMiIsImNyZWRlbnRpYWxzIiwiX3JlZjIkdGltZWxpbmUiLCJfcmVmMiRvbGRlciIsIm9sZGVyIiwiX3JlZjIkc2hvd0ltbWVkaWF0ZWx5IiwiX3JlZjIkdXNlcklkIiwiX3JlZjIkbGlzdElkIiwiX3JlZjIkdGFnIiwidGFnIiwidW50aWwiLCJzaW5jZSIsImFyZ3MiLCJyb290U3RhdGUiLCJzdGF0ZSIsImdldHRlcnMiLCJ0aW1lbGluZURhdGEiLCJ0aW1lbGluZXMiLCJfZ2V0dGVycyRtZXJnZWRDb25maWciLCJtZXJnZWRDb25maWciLCJoaWRlTXV0ZWRQb3N0cyIsInJlcGx5VmlzaWJpbGl0eSIsImxvZ2dlZEluIiwidXNlcnMiLCJjdXJyZW50VXNlciIsIm1pbklkIiwidW5kZWZpbmVkIiwibWF4SWQiLCJ3aXRoTXV0ZWQiLCJpbmNsdWRlcyIsIm51bVN0YXR1c2VzQmVmb3JlRmV0Y2giLCJsZW5ndGgiLCJmZXRjaFRpbWVsaW5lIiwidGhlbiIsInJlc3BvbnNlIiwiZXJyb3JzIiwiRXJyb3IiLCJjb25jYXQiLCJzdGF0dXMiLCJzdGF0dXNUZXh0IiwiZGF0YSIsImxvYWRpbmciLCJpZCIsImVycm9yIiwibGV2ZWwiLCJtZXNzYWdlS2V5IiwibWVzc2FnZUFyZ3MiLCJtZXNzYWdlIiwidGltZW91dCIsInN0YXJ0RmV0Y2hpbmciLCJfcmVmMyIsIl9yZWYzJHRpbWVsaW5lIiwiX3JlZjMkdXNlcklkIiwiX3JlZjMkbGlzdElkIiwiX3JlZjMkdGFnIiwidmlzaWJsZVN0YXR1c2VzIiwiYm91bmRGZXRjaEFuZFVwZGF0ZSIsInRpbWVsaW5lRmV0Y2hlciJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/services/timeline_fetcher/timeline_fetcher.service.js\n");
/***/ }),
/***/ "./src/services/user_highlighter/user_highlighter.js":
/*!***********************************************************!*\
!*** ./src/services/user_highlighter/user_highlighter.js ***!
\***********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"highlightClass\": () => (/* binding */ highlightClass),\n/* harmony export */ \"highlightStyle\": () => (/* binding */ highlightStyle)\n/* harmony export */ });\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"./node_modules/@babel/runtime/helpers/esm/defineProperty.js\");\n/* harmony import */ var _color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../color_convert/color_convert.js */ \"./src/services/color_convert/color_convert.js\");\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nvar highlightStyle = function highlightStyle(prefs) {\n if (prefs === undefined) return;\n var color = prefs.color,\n type = prefs.type;\n if (typeof color !== 'string') return;\n var rgb = (0,_color_convert_color_convert_js__WEBPACK_IMPORTED_MODULE_1__.hex2rgb)(color);\n if (rgb == null) return;\n var solidColor = \"rgb(\".concat(Math.floor(rgb.r), \", \").concat(Math.floor(rgb.g), \", \").concat(Math.floor(rgb.b), \")\");\n var tintColor = \"rgba(\".concat(Math.floor(rgb.r), \", \").concat(Math.floor(rgb.g), \", \").concat(Math.floor(rgb.b), \", .1)\");\n var tintColor2 = \"rgba(\".concat(Math.floor(rgb.r), \", \").concat(Math.floor(rgb.g), \", \").concat(Math.floor(rgb.b), \", .2)\");\n var customProps = {\n '--____highlight-solidColor': solidColor,\n '--____highlight-tintColor': tintColor,\n '--____highlight-tintColor2': tintColor2\n };\n if (type === 'striped') {\n return _objectSpread({\n backgroundImage: ['repeating-linear-gradient(135deg,', \"\".concat(tintColor, \" ,\"), \"\".concat(tintColor, \" 20px,\"), \"\".concat(tintColor2, \" 20px,\"), \"\".concat(tintColor2, \" 40px\")].join(' '),\n backgroundPosition: '0 0'\n }, customProps);\n } else if (type === 'solid') {\n return _objectSpread({\n backgroundColor: tintColor2\n }, customProps);\n } else if (type === 'side') {\n return _objectSpread({\n backgroundImage: ['linear-gradient(to right,', \"\".concat(solidColor, \" ,\"), \"\".concat(solidColor, \" 2px,\"), 'transparent 6px'].join(' '),\n backgroundPosition: '0 0'\n }, customProps);\n }\n};\nvar highlightClass = function highlightClass(user) {\n return 'USER____' + user.screen_name.replace(/\\./g, '_').replace(/@/g, '_AT_');\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvdXNlcl9oaWdobGlnaHRlci91c2VyX2hpZ2hsaWdodGVyLmpzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBMkQ7QUFDM0QsSUFBTUMsY0FBYyxHQUFHLFNBQWpCQSxjQUFjQSxDQUFJQyxLQUFLLEVBQUs7RUFDaEMsSUFBSUEsS0FBSyxLQUFLQyxTQUFTLEVBQUU7RUFDekIsSUFBUUMsS0FBSyxHQUFXRixLQUFLLENBQXJCRSxLQUFLO0lBQUVDLElBQUksR0FBS0gsS0FBSyxDQUFkRyxJQUFJO0VBQ25CLElBQUksT0FBT0QsS0FBSyxLQUFLLFFBQVEsRUFBRTtFQUMvQixJQUFNRSxHQUFHLEdBQUdOLHdFQUFPLENBQUNJLEtBQUssQ0FBQztFQUMxQixJQUFJRSxHQUFHLElBQUksSUFBSSxFQUFFO0VBQ2pCLElBQU1DLFVBQVUsVUFBQUMsTUFBQSxDQUFVQyxJQUFJLENBQUNDLEtBQUssQ0FBQ0osR0FBRyxDQUFDSyxDQUFDLENBQUMsUUFBQUgsTUFBQSxDQUFLQyxJQUFJLENBQUNDLEtBQUssQ0FBQ0osR0FBRyxDQUFDTSxDQUFDLENBQUMsUUFBQUosTUFBQSxDQUFLQyxJQUFJLENBQUNDLEtBQUssQ0FBQ0osR0FBRyxDQUFDTyxDQUFDLENBQUMsTUFBRztFQUMxRixJQUFNQyxTQUFTLFdBQUFOLE1BQUEsQ0FBV0MsSUFBSSxDQUFDQyxLQUFLLENBQUNKLEdBQUcsQ0FBQ0ssQ0FBQyxDQUFDLFFBQUFILE1BQUEsQ0FBS0MsSUFBSSxDQUFDQyxLQUFLLENBQUNKLEdBQUcsQ0FBQ00sQ0FBQyxDQUFDLFFBQUFKLE1BQUEsQ0FBS0MsSUFBSSxDQUFDQyxLQUFLLENBQUNKLEdBQUcsQ0FBQ08sQ0FBQyxDQUFDLFVBQU87RUFDOUYsSUFBTUUsVUFBVSxXQUFBUCxNQUFBLENBQVdDLElBQUksQ0FBQ0MsS0FBSyxDQUFDSixHQUFHLENBQUNLLENBQUMsQ0FBQyxRQUFBSCxNQUFBLENBQUtDLElBQUksQ0FBQ0MsS0FBSyxDQUFDSixHQUFHLENBQUNNLENBQUMsQ0FBQyxRQUFBSixNQUFBLENBQUtDLElBQUksQ0FBQ0MsS0FBSyxDQUFDSixHQUFHLENBQUNPLENBQUMsQ0FBQyxVQUFPO0VBQy9GLElBQU1HLFdBQVcsR0FBRztJQUNsQiw0QkFBNEIsRUFBRVQsVUFBVTtJQUN4QywyQkFBMkIsRUFBRU8sU0FBUztJQUN0Qyw0QkFBNEIsRUFBRUM7RUFDaEMsQ0FBQztFQUNELElBQUlWLElBQUksS0FBSyxTQUFTLEVBQUU7SUFDdEIsT0FBQVksYUFBQTtNQUNFQyxlQUFlLEVBQUUsQ0FDZixtQ0FBbUMsS0FBQVYsTUFBQSxDQUNoQ00sU0FBUyxZQUFBTixNQUFBLENBQ1RNLFNBQVMsZ0JBQUFOLE1BQUEsQ0FDVE8sVUFBVSxnQkFBQVAsTUFBQSxDQUNWTyxVQUFVLFdBQ2QsQ0FBQ0ksSUFBSSxDQUFDLEdBQUcsQ0FBQztNQUNYQyxrQkFBa0IsRUFBRTtJQUFLLEdBQ3RCSixXQUFXO0VBRWxCLENBQUMsTUFBTSxJQUFJWCxJQUFJLEtBQUssT0FBTyxFQUFFO0lBQzNCLE9BQUFZLGFBQUE7TUFDRUksZUFBZSxFQUFFTjtJQUFVLEdBQ3hCQyxXQUFXO0VBRWxCLENBQUMsTUFBTSxJQUFJWCxJQUFJLEtBQUssTUFBTSxFQUFFO0lBQzFCLE9BQUFZLGFBQUE7TUFDRUMsZUFBZSxFQUFFLENBQ2YsMkJBQTJCLEtBQUFWLE1BQUEsQ0FDeEJELFVBQVUsWUFBQUMsTUFBQSxDQUNWRCxVQUFVLFlBQ2IsaUJBQWlCLENBQ2xCLENBQUNZLElBQUksQ0FBQyxHQUFHLENBQUM7TUFDWEMsa0JBQWtCLEVBQUU7SUFBSyxHQUN0QkosV0FBVztFQUVsQjtBQUNGLENBQUM7QUFFRCxJQUFNTSxjQUFjLEdBQUcsU0FBakJBLGNBQWNBLENBQUlDLElBQUksRUFBSztFQUMvQixPQUFPLFVBQVUsR0FBR0EsSUFBSSxDQUFDQyxXQUFXLENBQ2pDQyxPQUFPLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUNuQkEsT0FBTyxDQUFDLElBQUksRUFBRSxNQUFNLENBQUM7QUFDMUIsQ0FBQyIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvc2VydmljZXMvdXNlcl9oaWdobGlnaHRlci91c2VyX2hpZ2hsaWdodGVyLmpzPzRiMTgiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaGV4MnJnYiB9IGZyb20gJy4uL2NvbG9yX2NvbnZlcnQvY29sb3JfY29udmVydC5qcydcbmNvbnN0IGhpZ2hsaWdodFN0eWxlID0gKHByZWZzKSA9PiB7XG4gIGlmIChwcmVmcyA9PT0gdW5kZWZpbmVkKSByZXR1cm5cbiAgY29uc3QgeyBjb2xvciwgdHlwZSB9ID0gcHJlZnNcbiAgaWYgKHR5cGVvZiBjb2xvciAhPT0gJ3N0cmluZycpIHJldHVyblxuICBjb25zdCByZ2IgPSBoZXgycmdiKGNvbG9yKVxuICBpZiAocmdiID09IG51bGwpIHJldHVyblxuICBjb25zdCBzb2xpZENvbG9yID0gYHJnYigke01hdGguZmxvb3IocmdiLnIpfSwgJHtNYXRoLmZsb29yKHJnYi5nKX0sICR7TWF0aC5mbG9vcihyZ2IuYil9KWBcbiAgY29uc3QgdGludENvbG9yID0gYHJnYmEoJHtNYXRoLmZsb29yKHJnYi5yKX0sICR7TWF0aC5mbG9vcihyZ2IuZyl9LCAke01hdGguZmxvb3IocmdiLmIpfSwgLjEpYFxuICBjb25zdCB0aW50Q29sb3IyID0gYHJnYmEoJHtNYXRoLmZsb29yKHJnYi5yKX0sICR7TWF0aC5mbG9vcihyZ2IuZyl9LCAke01hdGguZmxvb3IocmdiLmIpfSwgLjIpYFxuICBjb25zdCBjdXN0b21Qcm9wcyA9IHtcbiAgICAnLS1fX19faGlnaGxpZ2h0LXNvbGlkQ29sb3InOiBzb2xpZENvbG9yLFxuICAgICctLV9fX19oaWdobGlnaHQtdGludENvbG9yJzogdGludENvbG9yLFxuICAgICctLV9fX19oaWdobGlnaHQtdGludENvbG9yMic6IHRpbnRDb2xvcjJcbiAgfVxuICBpZiAodHlwZSA9PT0gJ3N0cmlwZWQnKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGJhY2tncm91bmRJbWFnZTogW1xuICAgICAgICAncmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudCgxMzVkZWcsJyxcbiAgICAgICAgYCR7dGludENvbG9yfSAsYCxcbiAgICAgICAgYCR7dGludENvbG9yfSAyMHB4LGAsXG4gICAgICAgIGAke3RpbnRDb2xvcjJ9IDIwcHgsYCxcbiAgICAgICAgYCR7dGludENvbG9yMn0gNDBweGBcbiAgICAgIF0uam9pbignICcpLFxuICAgICAgYmFja2dyb3VuZFBvc2l0aW9uOiAnMCAwJyxcbiAgICAgIC4uLmN1c3RvbVByb3BzXG4gICAgfVxuICB9IGVsc2UgaWYgKHR5cGUgPT09ICdzb2xpZCcpIHtcbiAgICByZXR1cm4ge1xuICAgICAgYmFja2dyb3VuZENvbG9yOiB0aW50Q29sb3IyLFxuICAgICAgLi4uY3VzdG9tUHJvcHNcbiAgICB9XG4gIH0gZWxzZSBpZiAodHlwZSA9PT0gJ3NpZGUnKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGJhY2tncm91bmRJbWFnZTogW1xuICAgICAgICAnbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCcsXG4gICAgICAgIGAke3NvbGlkQ29sb3J9ICxgLFxuICAgICAgICBgJHtzb2xpZENvbG9yfSAycHgsYCxcbiAgICAgICAgJ3RyYW5zcGFyZW50IDZweCdcbiAgICAgIF0uam9pbignICcpLFxuICAgICAgYmFja2dyb3VuZFBvc2l0aW9uOiAnMCAwJyxcbiAgICAgIC4uLmN1c3RvbVByb3BzXG4gICAgfVxuICB9XG59XG5cbmNvbnN0IGhpZ2hsaWdodENsYXNzID0gKHVzZXIpID0+IHtcbiAgcmV0dXJuICdVU0VSX19fXycgKyB1c2VyLnNjcmVlbl9uYW1lXG4gICAgLnJlcGxhY2UoL1xcLi9nLCAnXycpXG4gICAgLnJlcGxhY2UoL0AvZywgJ19BVF8nKVxufVxuXG5leHBvcnQge1xuICBoaWdobGlnaHRDbGFzcyxcbiAgaGlnaGxpZ2h0U3R5bGVcbn1cbiJdLCJuYW1lcyI6WyJoZXgycmdiIiwiaGlnaGxpZ2h0U3R5bGUiLCJwcmVmcyIsInVuZGVmaW5lZCIsImNvbG9yIiwidHlwZSIsInJnYiIsInNvbGlkQ29sb3IiLCJjb25jYXQiLCJNYXRoIiwiZmxvb3IiLCJyIiwiZyIsImIiLCJ0aW50Q29sb3IiLCJ0aW50Q29sb3IyIiwiY3VzdG9tUHJvcHMiLCJfb2JqZWN0U3ByZWFkIiwiYmFja2dyb3VuZEltYWdlIiwiam9pbiIsImJhY2tncm91bmRQb3NpdGlvbiIsImJhY2tncm91bmRDb2xvciIsImhpZ2hsaWdodENsYXNzIiwidXNlciIsInNjcmVlbl9uYW1lIiwicmVwbGFjZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/services/user_highlighter/user_highlighter.js\n");
/***/ }),
/***/ "./src/services/user_profile_link_generator/user_profile_link_generator.js":
/*!*********************************************************************************!*\
!*** ./src/services/user_profile_link_generator/user_profile_link_generator.js ***!
\*********************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var lodash_includes__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/includes */ \"./node_modules/lodash/includes.js\");\n/* harmony import */ var lodash_includes__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_includes__WEBPACK_IMPORTED_MODULE_0__);\n\nvar generateProfileLink = function generateProfileLink(id, screenName, restrictedNicknames) {\n var complicated = !screenName || isExternal(screenName) || lodash_includes__WEBPACK_IMPORTED_MODULE_0___default()(restrictedNicknames, screenName);\n return {\n name: complicated ? 'external-user-profile' : 'user-profile',\n params: complicated ? {\n id: id\n } : {\n name: screenName\n }\n };\n};\nvar isExternal = function isExternal(screenName) {\n return screenName && screenName.includes('@');\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (generateProfileLink);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvdXNlcl9wcm9maWxlX2xpbmtfZ2VuZXJhdG9yL3VzZXJfcHJvZmlsZV9saW5rX2dlbmVyYXRvci5qcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7O0FBRUEsSUFBTUEsbUJBQW1CLEdBQUcsU0FBdEJBLG1CQUFtQkEsQ0FBSUMsRUFBRSxFQUFFQyxVQUFVLEVBQUVDLG1CQUFtQixFQUFLO0VBQ25FLElBQU1DLFdBQVcsR0FBRyxDQUFDRixVQUFVLElBQUtHLFVBQVUsQ0FBQ0gsVUFBVSxDQUFDLElBQUlJLHNEQUFBLENBQVNILG1CQUFtQixFQUFFRCxVQUFVLENBQUU7RUFDeEcsT0FBTztJQUNMSyxJQUFJLEVBQUdILFdBQVcsR0FBRyx1QkFBdUIsR0FBRyxjQUFlO0lBQzlESSxNQUFNLEVBQUdKLFdBQVcsR0FBRztNQUFFSCxFQUFFLEVBQUZBO0lBQUcsQ0FBQyxHQUFHO01BQUVNLElBQUksRUFBRUw7SUFBVztFQUNyRCxDQUFDO0FBQ0gsQ0FBQztBQUVELElBQU1HLFVBQVUsR0FBRyxTQUFiQSxVQUFVQSxDQUFHSCxVQUFVO0VBQUEsT0FBSUEsVUFBVSxJQUFJQSxVQUFVLENBQUNPLFFBQVEsQ0FBQyxHQUFHLENBQUM7QUFBQTtBQUV2RSxpRUFBZVQsbUJBQW1CIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9zZXJ2aWNlcy91c2VyX3Byb2ZpbGVfbGlua19nZW5lcmF0b3IvdXNlcl9wcm9maWxlX2xpbmtfZ2VuZXJhdG9yLmpzP2I4MDciXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5jbHVkZXMgfSBmcm9tICdsb2Rhc2gnXG5cbmNvbnN0IGdlbmVyYXRlUHJvZmlsZUxpbmsgPSAoaWQsIHNjcmVlbk5hbWUsIHJlc3RyaWN0ZWROaWNrbmFtZXMpID0+IHtcbiAgY29uc3QgY29tcGxpY2F0ZWQgPSAhc2NyZWVuTmFtZSB8fCAoaXNFeHRlcm5hbChzY3JlZW5OYW1lKSB8fCBpbmNsdWRlcyhyZXN0cmljdGVkTmlja25hbWVzLCBzY3JlZW5OYW1lKSlcbiAgcmV0dXJuIHtcbiAgICBuYW1lOiAoY29tcGxpY2F0ZWQgPyAnZXh0ZXJuYWwtdXNlci1wcm9maWxlJyA6ICd1c2VyLXByb2ZpbGUnKSxcbiAgICBwYXJhbXM6IChjb21wbGljYXRlZCA/IHsgaWQgfSA6IHsgbmFtZTogc2NyZWVuTmFtZSB9KVxuICB9XG59XG5cbmNvbnN0IGlzRXh0ZXJuYWwgPSBzY3JlZW5OYW1lID0+IHNjcmVlbk5hbWUgJiYgc2NyZWVuTmFtZS5pbmNsdWRlcygnQCcpXG5cbmV4cG9ydCBkZWZhdWx0IGdlbmVyYXRlUHJvZmlsZUxpbmtcbiJdLCJuYW1lcyI6WyJnZW5lcmF0ZVByb2ZpbGVMaW5rIiwiaWQiLCJzY3JlZW5OYW1lIiwicmVzdHJpY3RlZE5pY2tuYW1lcyIsImNvbXBsaWNhdGVkIiwiaXNFeHRlcm5hbCIsIl9pbmNsdWRlcyIsIm5hbWUiLCJwYXJhbXMiLCJpbmNsdWRlcyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/services/user_profile_link_generator/user_profile_link_generator.js\n");
/***/ }),
/***/ "./src/services/window_utils/window_utils.js":
/*!***************************************************!*\
!*** ./src/services/window_utils/window_utils.js ***!
\***************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"windowHeight\": () => (/* binding */ windowHeight),\n/* harmony export */ \"windowWidth\": () => (/* binding */ windowWidth)\n/* harmony export */ });\nvar windowWidth = function windowWidth() {\n return window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;\n};\nvar windowHeight = function windowHeight() {\n return window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2VydmljZXMvd2luZG93X3V0aWxzL3dpbmRvd191dGlscy5qcy5qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUNPLElBQU1BLFdBQVcsR0FBRyxTQUFkQSxXQUFXQSxDQUFBO0VBQUEsT0FDdEJDLE1BQU0sQ0FBQ0MsVUFBVSxJQUNqQkMsUUFBUSxDQUFDQyxlQUFlLENBQUNDLFdBQVcsSUFDcENGLFFBQVEsQ0FBQ0csSUFBSSxDQUFDRCxXQUFXO0FBQUE7QUFFcEIsSUFBTUUsWUFBWSxHQUFHLFNBQWZBLFlBQVlBLENBQUE7RUFBQSxPQUN2Qk4sTUFBTSxDQUFDTyxXQUFXLElBQ2xCTCxRQUFRLENBQUNDLGVBQWUsQ0FBQ0ssWUFBWSxJQUNyQ04sUUFBUSxDQUFDRyxJQUFJLENBQUNHLFlBQVk7QUFBQSIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvc2VydmljZXMvd2luZG93X3V0aWxzL3dpbmRvd191dGlscy5qcz9kNjQxIl0sInNvdXJjZXNDb250ZW50IjpbIlxuZXhwb3J0IGNvbnN0IHdpbmRvd1dpZHRoID0gKCkgPT5cbiAgd2luZG93LmlubmVyV2lkdGggfHxcbiAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudFdpZHRoIHx8XG4gIGRvY3VtZW50LmJvZHkuY2xpZW50V2lkdGhcblxuZXhwb3J0IGNvbnN0IHdpbmRvd0hlaWdodCA9ICgpID0+XG4gIHdpbmRvdy5pbm5lckhlaWdodCB8fFxuICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50SGVpZ2h0IHx8XG4gIGRvY3VtZW50LmJvZHkuY2xpZW50SGVpZ2h0XG4iXSwibmFtZXMiOlsid2luZG93V2lkdGgiLCJ3aW5kb3ciLCJpbm5lcldpZHRoIiwiZG9jdW1lbnQiLCJkb2N1bWVudEVsZW1lbnQiLCJjbGllbnRXaWR0aCIsImJvZHkiLCJ3aW5kb3dIZWlnaHQiLCJpbm5lckhlaWdodCIsImNsaWVudEhlaWdodCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./src/services/window_utils/window_utils.js\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./src/components/rich_content/rich_content.scss":
/*!******************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./src/components/rich_content/rich_content.scss ***!
\******************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".RichContent blockquote {\\n margin: 0.2em 0 0.2em 0.2em;\\n font-style: italic;\\n border-left: 0.2em solid var(--faint, rgba(185, 185, 186, 0.5));\\n padding-left: 1em;\\n}\\n.RichContent pre {\\n overflow: auto;\\n}\\n.RichContent code,\\n.RichContent samp,\\n.RichContent kbd,\\n.RichContent var,\\n.RichContent pre {\\n font-family: var(--postCodeFont, monospace);\\n}\\n.RichContent p {\\n margin: 0 0 1em;\\n}\\n.RichContent p:last-child {\\n margin: 0;\\n}\\n.RichContent h1 {\\n font-size: 1.1em;\\n line-height: 1.2em;\\n margin: 1.4em 0;\\n}\\n.RichContent h2 {\\n font-size: 1.1em;\\n margin: 1em 0;\\n}\\n.RichContent h3 {\\n font-size: 1em;\\n margin: 1.2em 0;\\n}\\n.RichContent h4 {\\n margin: 1.1em 0;\\n}\\n.RichContent .img {\\n display: inline-block;\\n}\\n.RichContent .emoji {\\n display: inline-block;\\n width: var(--emoji-size, 32px);\\n height: var(--emoji-size, 32px);\\n}\\n.RichContent .img,\\n.RichContent video {\\n max-width: 100%;\\n max-height: 400px;\\n vertical-align: middle;\\n -o-object-fit: contain;\\n object-fit: contain;\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/rich_content/rich_content.scss\"],\"names\":[],\"mappings\":\"AAGE;EACE,2BAAA;EACA,kBAAA;EACA,+DAAA;EACA,iBAAA;AAFJ;AAKE;EACE,cAAA;AAHJ;AAME;;;;;EAKE,2CAAA;AAJJ;AAOE;EACE,eAAA;AALJ;AAQE;EACE,SAAA;AANJ;AASE;EACE,gBAAA;EACA,kBAAA;EACA,eAAA;AAPJ;AAUE;EACE,gBAAA;EACA,aAAA;AARJ;AAWE;EACE,cAAA;EACA,eAAA;AATJ;AAYE;EACE,eAAA;AAVJ;AAaE;EACE,qBAAA;AAXJ;AAcE;EACE,qBAAA;EACA,8BAAA;EACA,+BAAA;AAZJ;AAeE;;EAEE,eAAA;EACA,iBAAA;EACA,sBAAA;EACA,sBAAA;KAAA,mBAAA;AAbJ\",\"sourcesContent\":[\"@import \\\"../../variables\\\";\\n\\n.RichContent {\\n blockquote {\\n margin: 0.2em 0 0.2em 0.2em;\\n font-style: italic;\\n border-left: 0.2em solid var(--faint, $fallback--faint);\\n padding-left: 1em;\\n }\\n\\n pre {\\n overflow: auto;\\n }\\n\\n code,\\n samp,\\n kbd,\\n var,\\n pre {\\n font-family: var(--postCodeFont, monospace);\\n }\\n\\n p {\\n margin: 0 0 1em;\\n }\\n\\n p:last-child {\\n margin: 0;\\n }\\n\\n h1 {\\n font-size: 1.1em;\\n line-height: 1.2em;\\n margin: 1.4em 0;\\n }\\n\\n h2 {\\n font-size: 1.1em;\\n margin: 1em 0;\\n }\\n\\n h3 {\\n font-size: 1em;\\n margin: 1.2em 0;\\n }\\n\\n h4 {\\n margin: 1.1em 0;\\n }\\n\\n .img {\\n display: inline-block;\\n }\\n\\n .emoji {\\n display: inline-block;\\n width: var(--emoji-size, 32px);\\n height: var(--emoji-size, 32px);\\n }\\n\\n .img,\\n video {\\n max-width: 100%;\\n max-height: 400px;\\n vertical-align: middle;\\n object-fit: contain;\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL3NyYy9jb21wb25lbnRzL3JpY2hfY29udGVudC9yaWNoX2NvbnRlbnQuc2Nzcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBO0FBQ2dIO0FBQ2pCO0FBQy9GLDhCQUE4QixtRkFBMkIsQ0FBQyw0RkFBcUM7QUFDL0Y7QUFDQSxtRUFBbUUsZ0NBQWdDLHVCQUF1QixvRUFBb0Usc0JBQXNCLEdBQUcsb0JBQW9CLG1CQUFtQixHQUFHLGtHQUFrRyxnREFBZ0QsR0FBRyxrQkFBa0Isb0JBQW9CLEdBQUcsNkJBQTZCLGNBQWMsR0FBRyxtQkFBbUIscUJBQXFCLHVCQUF1QixvQkFBb0IsR0FBRyxtQkFBbUIscUJBQXFCLGtCQUFrQixHQUFHLG1CQUFtQixtQkFBbUIsb0JBQW9CLEdBQUcsbUJBQW1CLG9CQUFvQixHQUFHLHFCQUFxQiwwQkFBMEIsR0FBRyx1QkFBdUIsMEJBQTBCLG1DQUFtQyxvQ0FBb0MsR0FBRywwQ0FBMEMsb0JBQW9CLHNCQUFzQiwyQkFBMkIsMkJBQTJCLDJCQUEyQixHQUFHLE9BQU8sZ0hBQWdILFdBQVcsV0FBVyxXQUFXLFdBQVcsS0FBSyxLQUFLLFVBQVUsS0FBSyxTQUFTLFdBQVcsS0FBSyxLQUFLLFVBQVUsS0FBSyxLQUFLLFVBQVUsS0FBSyxLQUFLLFdBQVcsV0FBVyxVQUFVLEtBQUssS0FBSyxXQUFXLFVBQVUsS0FBSyxLQUFLLFVBQVUsVUFBVSxLQUFLLEtBQUssVUFBVSxLQUFLLEtBQUssV0FBVyxLQUFLLEtBQUssV0FBVyxXQUFXLFdBQVcsS0FBSyxNQUFNLFVBQVUsV0FBVyxXQUFXLFdBQVcsV0FBVyxxREFBcUQsa0JBQWtCLGdCQUFnQixrQ0FBa0MseUJBQXlCLDhEQUE4RCx3QkFBd0IsS0FBSyxXQUFXLHFCQUFxQixLQUFLLDZDQUE2QyxrREFBa0QsS0FBSyxTQUFTLHNCQUFzQixLQUFLLG9CQUFvQixnQkFBZ0IsS0FBSyxVQUFVLHVCQUF1Qix5QkFBeUIsc0JBQXNCLEtBQUssVUFBVSx1QkFBdUIsb0JBQW9CLEtBQUssVUFBVSxxQkFBcUIsc0JBQXNCLEtBQUssVUFBVSxzQkFBc0IsS0FBSyxZQUFZLDRCQUE0QixLQUFLLGNBQWMsNEJBQTRCLHFDQUFxQyxzQ0FBc0MsS0FBSyxzQkFBc0Isc0JBQXNCLHdCQUF3Qiw2QkFBNkIsMEJBQTBCLEtBQUssR0FBRyxxQkFBcUI7QUFDaGlGO0FBQ0EsaUVBQWUsdUJBQXVCLEVBQUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL2NvbXBvbmVudHMvcmljaF9jb250ZW50L3JpY2hfY29udGVudC5zY3NzP2M4ZTgiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gSW1wb3J0c1xuaW1wb3J0IF9fX0NTU19MT0FERVJfQVBJX1NPVVJDRU1BUF9JTVBPUlRfX18gZnJvbSBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2Rpc3QvcnVudGltZS9zb3VyY2VNYXBzLmpzXCI7XG5pbXBvcnQgX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fIGZyb20gXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvYXBpLmpzXCI7XG52YXIgX19fQ1NTX0xPQURFUl9FWFBPUlRfX18gPSBfX19DU1NfTE9BREVSX0FQSV9JTVBPUlRfX18oX19fQ1NTX0xPQURFUl9BUElfU09VUkNFTUFQX0lNUE9SVF9fXyk7XG4vLyBNb2R1bGVcbl9fX0NTU19MT0FERVJfRVhQT1JUX19fLnB1c2goW21vZHVsZS5pZCwgXCIuUmljaENvbnRlbnQgYmxvY2txdW90ZSB7XFxuICBtYXJnaW46IDAuMmVtIDAgMC4yZW0gMC4yZW07XFxuICBmb250LXN0eWxlOiBpdGFsaWM7XFxuICBib3JkZXItbGVmdDogMC4yZW0gc29saWQgdmFyKC0tZmFpbnQsIHJnYmEoMTg1LCAxODUsIDE4NiwgMC41KSk7XFxuICBwYWRkaW5nLWxlZnQ6IDFlbTtcXG59XFxuLlJpY2hDb250ZW50IHByZSB7XFxuICBvdmVyZmxvdzogYXV0bztcXG59XFxuLlJpY2hDb250ZW50IGNvZGUsXFxuLlJpY2hDb250ZW50IHNhbXAsXFxuLlJpY2hDb250ZW50IGtiZCxcXG4uUmljaENvbnRlbnQgdmFyLFxcbi5SaWNoQ29udGVudCBwcmUge1xcbiAgZm9udC1mYW1pbHk6IHZhcigtLXBvc3RDb2RlRm9udCwgbW9ub3NwYWNlKTtcXG59XFxuLlJpY2hDb250ZW50IHAge1xcbiAgbWFyZ2luOiAwIDAgMWVtO1xcbn1cXG4uUmljaENvbnRlbnQgcDpsYXN0LWNoaWxkIHtcXG4gIG1hcmdpbjogMDtcXG59XFxuLlJpY2hDb250ZW50IGgxIHtcXG4gIGZvbnQtc2l6ZTogMS4xZW07XFxuICBsaW5lLWhlaWdodDogMS4yZW07XFxuICBtYXJnaW46IDEuNGVtIDA7XFxufVxcbi5SaWNoQ29udGVudCBoMiB7XFxuICBmb250LXNpemU6IDEuMWVtO1xcbiAgbWFyZ2luOiAxZW0gMDtcXG59XFxuLlJpY2hDb250ZW50IGgzIHtcXG4gIGZvbnQtc2l6ZTogMWVtO1xcbiAgbWFyZ2luOiAxLjJlbSAwO1xcbn1cXG4uUmljaENvbnRlbnQgaDQge1xcbiAgbWFyZ2luOiAxLjFlbSAwO1xcbn1cXG4uUmljaENvbnRlbnQgLmltZyB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxufVxcbi5SaWNoQ29udGVudCAuZW1vamkge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgd2lkdGg6IHZhcigtLWVtb2ppLXNpemUsIDMycHgpO1xcbiAgaGVpZ2h0OiB2YXIoLS1lbW9qaS1zaXplLCAzMnB4KTtcXG59XFxuLlJpY2hDb250ZW50IC5pbWcsXFxuLlJpY2hDb250ZW50IHZpZGVvIHtcXG4gIG1heC13aWR0aDogMTAwJTtcXG4gIG1heC1oZWlnaHQ6IDQwMHB4O1xcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcXG4gIC1vLW9iamVjdC1maXQ6IGNvbnRhaW47XFxuICAgICBvYmplY3QtZml0OiBjb250YWluO1xcbn1cIiwgXCJcIix7XCJ2ZXJzaW9uXCI6MyxcInNvdXJjZXNcIjpbXCJ3ZWJwYWNrOi8vLi9zcmMvY29tcG9uZW50cy9yaWNoX2NvbnRlbnQvcmljaF9jb250ZW50LnNjc3NcIl0sXCJuYW1lc1wiOltdLFwibWFwcGluZ3NcIjpcIkFBR0U7RUFDRSwyQkFBQTtFQUNBLGtCQUFBO0VBQ0EsK0RBQUE7RUFDQSxpQkFBQTtBQUZKO0FBS0U7RUFDRSxjQUFBO0FBSEo7QUFNRTs7Ozs7RUFLRSwyQ0FBQTtBQUpKO0FBT0U7RUFDRSxlQUFBO0FBTEo7QUFRRTtFQUNFLFNBQUE7QUFOSjtBQVNFO0VBQ0UsZ0JBQUE7RUFDQSxrQkFBQTtFQUNBLGVBQUE7QUFQSjtBQVVFO0VBQ0UsZ0JBQUE7RUFDQSxhQUFBO0FBUko7QUFXRTtFQUNFLGNBQUE7RUFDQSxlQUFBO0FBVEo7QUFZRTtFQUNFLGVBQUE7QUFWSjtBQWFFO0VBQ0UscUJBQUE7QUFYSjtBQWNFO0VBQ0UscUJBQUE7RUFDQSw4QkFBQTtFQUNBLCtCQUFBO0FBWko7QUFlRTs7RUFFRSxlQUFBO0VBQ0EsaUJBQUE7RUFDQSxzQkFBQTtFQUNBLHNCQUFBO0tBQUEsbUJBQUE7QUFiSlwiLFwic291cmNlc0NvbnRlbnRcIjpbXCJAaW1wb3J0IFxcXCIuLi8uLi92YXJpYWJsZXNcXFwiO1xcblxcbi5SaWNoQ29udGVudCB7XFxuICBibG9ja3F1b3RlIHtcXG4gICAgbWFyZ2luOiAwLjJlbSAwIDAuMmVtIDAuMmVtO1xcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XFxuICAgIGJvcmRlci1sZWZ0OiAwLjJlbSBzb2xpZCB2YXIoLS1mYWludCwgJGZhbGxiYWNrLS1mYWludCk7XFxuICAgIHBhZGRpbmctbGVmdDogMWVtO1xcbiAgfVxcblxcbiAgcHJlIHtcXG4gICAgb3ZlcmZsb3c6IGF1dG87XFxuICB9XFxuXFxuICBjb2RlLFxcbiAgc2FtcCxcXG4gIGtiZCxcXG4gIHZhcixcXG4gIHByZSB7XFxuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1wb3N0Q29kZUZvbnQsIG1vbm9zcGFjZSk7XFxuICB9XFxuXFxuICBwIHtcXG4gICAgbWFyZ2luOiAwIDAgMWVtO1xcbiAgfVxcblxcbiAgcDpsYXN0LWNoaWxkIHtcXG4gICAgbWFyZ2luOiAwO1xcbiAgfVxcblxcbiAgaDEge1xcbiAgICBmb250LXNpemU6IDEuMWVtO1xcbiAgICBsaW5lLWhlaWdodDogMS4yZW07XFxuICAgIG1hcmdpbjogMS40ZW0gMDtcXG4gIH1cXG5cXG4gIGgyIHtcXG4gICAgZm9udC1zaXplOiAxLjFlbTtcXG4gICAgbWFyZ2luOiAxZW0gMDtcXG4gIH1cXG5cXG4gIGgzIHtcXG4gICAgZm9udC1zaXplOiAxZW07XFxuICAgIG1hcmdpbjogMS4yZW0gMDtcXG4gIH1cXG5cXG4gIGg0IHtcXG4gICAgbWFyZ2luOiAxLjFlbSAwO1xcbiAgfVxcblxcbiAgLmltZyB7XFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gIH1cXG5cXG4gIC5lbW9qaSB7XFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gICAgd2lkdGg6IHZhcigtLWVtb2ppLXNpemUsIDMycHgpO1xcbiAgICBoZWlnaHQ6IHZhcigtLWVtb2ppLXNpemUsIDMycHgpO1xcbiAgfVxcblxcbiAgLmltZyxcXG4gIHZpZGVvIHtcXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xcbiAgICBtYXgtaGVpZ2h0OiA0MDBweDtcXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcXG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcXG4gIH1cXG59XFxuXCJdLFwic291cmNlUm9vdFwiOlwiXCJ9XSk7XG4vLyBFeHBvcnRzXG5leHBvcnQgZGVmYXVsdCBfX19DU1NfTE9BREVSX0VYUE9SVF9fXztcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./src/components/rich_content/rich_content.scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./src/components/tab_switcher/tab_switcher.scss":
/*!******************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./src/components/tab_switcher/tab_switcher.scss ***!
\******************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"/* stylelint-disable no-descending-specificity */\\n.tab-switcher {\\n display: flex;\\n}\\n.tab-switcher .tab-icon {\\n margin: 0.2em auto;\\n display: block;\\n}\\n.tab-switcher.top-tabs {\\n flex-direction: column;\\n}\\n.tab-switcher.top-tabs > .tabs {\\n width: 100%;\\n overflow-y: hidden;\\n overflow-x: auto;\\n padding-top: 5px;\\n flex-direction: row;\\n flex: 0 0 auto;\\n}\\n.tab-switcher.top-tabs > .tabs::after, .tab-switcher.top-tabs > .tabs::before {\\n content: \\\"\\\";\\n flex: 1 1 auto;\\n border-bottom: 1px solid;\\n border-bottom-color: #222;\\n border-bottom-color: var(--border, #222);\\n}\\n.tab-switcher.top-tabs > .tabs .tab-wrapper {\\n height: 2em;\\n}\\n.tab-switcher.top-tabs > .tabs .tab-wrapper:not(.active)::after {\\n left: 0;\\n right: 0;\\n bottom: 0;\\n border-bottom: 1px solid;\\n border-bottom-color: #222;\\n border-bottom-color: var(--border, #222);\\n}\\n.tab-switcher.top-tabs > .tabs .tab {\\n width: 100%;\\n min-width: 1px;\\n border-bottom-left-radius: 0;\\n border-bottom-right-radius: 0;\\n padding-bottom: 99px;\\n margin-bottom: -93px;\\n}\\n.tab-switcher.top-tabs .contents.scrollable-tabs {\\n flex-basis: 0;\\n}\\n.tab-switcher.side-tabs {\\n flex-direction: row;\\n}\\n@media all and (max-width: 800px) {\\n .tab-switcher.side-tabs {\\n overflow-x: auto;\\n }\\n}\\n.tab-switcher.side-tabs > .contents {\\n flex: 1 1 auto;\\n}\\n.tab-switcher.side-tabs > .tabs {\\n flex: 0 0 auto;\\n overflow-y: auto;\\n overflow-x: hidden;\\n flex-direction: column;\\n}\\n.tab-switcher.side-tabs > .tabs::after, .tab-switcher.side-tabs > .tabs::before {\\n flex-shrink: 0;\\n flex-basis: 0.5em;\\n content: \\\"\\\";\\n border-right: 1px solid;\\n border-right-color: #222;\\n border-right-color: var(--border, #222);\\n}\\n.tab-switcher.side-tabs > .tabs::after {\\n flex-grow: 1;\\n}\\n.tab-switcher.side-tabs > .tabs::before {\\n flex-grow: 0;\\n}\\n.tab-switcher.side-tabs > .tabs .tab-wrapper {\\n min-width: 10em;\\n display: flex;\\n flex-direction: column;\\n}\\n@media all and (max-width: 800px) {\\n .tab-switcher.side-tabs > .tabs .tab-wrapper {\\n min-width: 4em;\\n }\\n}\\n.tab-switcher.side-tabs > .tabs .tab-wrapper:not(.active)::after {\\n top: 0;\\n right: 0;\\n bottom: 0;\\n border-right: 1px solid;\\n border-right-color: #222;\\n border-right-color: var(--border, #222);\\n}\\n.tab-switcher.side-tabs > .tabs .tab-wrapper::before {\\n flex: 0 0 6px;\\n content: \\\"\\\";\\n border-right: 1px solid;\\n border-right-color: #222;\\n border-right-color: var(--border, #222);\\n}\\n.tab-switcher.side-tabs > .tabs .tab-wrapper:last-child .tab {\\n margin-bottom: 0;\\n}\\n.tab-switcher.side-tabs > .tabs .tab {\\n flex: 1;\\n box-sizing: content-box;\\n min-width: 10em;\\n min-width: 1px;\\n border-top-right-radius: 0;\\n border-bottom-right-radius: 0;\\n padding-left: 1em;\\n padding-right: calc(1em + 200px);\\n margin-right: -200px;\\n margin-left: 1em;\\n}\\n@media all and (max-width: 800px) {\\n .tab-switcher.side-tabs > .tabs .tab {\\n padding-left: 0.25em;\\n padding-right: calc(0.25em + 200px);\\n margin-right: calc(0.25em - 200px);\\n margin-left: 0.25em;\\n }\\n .tab-switcher.side-tabs > .tabs .tab .text {\\n display: none;\\n }\\n}\\n.tab-switcher .contents {\\n flex: 1 0 auto;\\n min-height: 0;\\n}\\n.tab-switcher .contents .hidden {\\n display: none;\\n}\\n.tab-switcher .contents .full-height:not(.hidden) {\\n height: 100%;\\n display: flex;\\n flex-direction: column;\\n}\\n.tab-switcher .contents .full-height:not(.hidden) > *:not(.mobile-label) {\\n flex: 1;\\n}\\n.tab-switcher .contents.scrollable-tabs {\\n overflow-y: auto;\\n}\\n.tab-switcher .tab {\\n position: relative;\\n white-space: nowrap;\\n padding: 6px 1em;\\n}\\n.tab-switcher .tab:not(.active) {\\n z-index: 4;\\n}\\n.tab-switcher .tab:not(.active):hover {\\n z-index: 6;\\n}\\n.tab-switcher .tab.active {\\n background: transparent;\\n z-index: 5;\\n color: #b9b9ba;\\n color: var(--tabActiveText, #b9b9ba);\\n}\\n.tab-switcher .tab img {\\n max-height: 26px;\\n vertical-align: top;\\n margin-top: -5px;\\n}\\n.tab-switcher .tabs {\\n display: flex;\\n position: relative;\\n box-sizing: border-box;\\n}\\n.tab-switcher .tabs::after, .tab-switcher .tabs::before {\\n display: block;\\n flex: 1 1 auto;\\n}\\n.tab-switcher .tab-wrapper {\\n position: relative;\\n display: flex;\\n flex: 0 0 auto;\\n}\\n.tab-switcher .tab-wrapper:not(.active)::after {\\n content: \\\"\\\";\\n position: absolute;\\n z-index: 7;\\n}\\n.tab-switcher .mobile-label {\\n padding-left: 0.3em;\\n padding-bottom: 0.25em;\\n margin-top: 0.5em;\\n margin-left: 0.2em;\\n margin-bottom: 0.25em;\\n border-bottom: 1px solid var(--border, #222);\\n}\\n@media all and (min-width: 800px) {\\n .tab-switcher .mobile-label {\\n display: none;\\n }\\n}\\n\\n/* stylelint-enable no-descending-specificity */\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/tab_switcher/tab_switcher.scss\",\"webpack://./src/_variables.scss\"],\"names\":[],\"mappings\":\"AAEA,gDAAA;AACA;EACE,aAAA;AADF;AAGE;EACE,kBAAA;EACA,cAAA;AADJ;AAIE;EACE,sBAAA;AAFJ;AAII;EACE,WAAA;EACA,kBAAA;EACA,gBAAA;EACA,gBAAA;EACA,mBAAA;EACA,cAAA;AAFN;AAIM;EAEE,WAAA;EACA,cAAA;EACA,wBAAA;EACA,yBCfW;EDgBX,wCAAA;AAHR;AAMM;EACE,WAAA;AAJR;AAMQ;EACE,OAAA;EACA,QAAA;EACA,SAAA;EACA,wBAAA;EACA,yBC3BS;ED4BT,wCAAA;AAJV;AAQM;EACE,WAAA;EACA,cAAA;EACA,4BAAA;EACA,6BAAA;EACA,oBAAA;EACA,oBAAA;AANR;AAUI;EACE,aAAA;AARN;AAYE;EACE,mBAAA;AAVJ;AAYI;EAHF;IAII,gBAAA;EATJ;AACF;AAWI;EACE,cAAA;AATN;AAYI;EACE,cAAA;EACA,gBAAA;EACA,kBAAA;EACA,sBAAA;AAVN;AAYM;EAEE,cAAA;EACA,iBAAA;EACA,WAAA;EACA,uBAAA;EACA,wBCtEW;EDuEX,uCAAA;AAXR;AAcM;EACE,YAAA;AAZR;AAeM;EACE,YAAA;AAbR;AAgBM;EACE,eAAA;EACA,aAAA;EACA,sBAAA;AAdR;AAgBQ;EALF;IAMI,cAAA;EAbR;AACF;AAeQ;EACE,MAAA;EACA,QAAA;EACA,SAAA;EACA,uBAAA;EACA,wBChGS;EDiGT,uCAAA;AAbV;AAgBQ;EACE,aAAA;EACA,WAAA;EACA,uBAAA;EACA,wBCxGS;EDyGT,uCAAA;AAdV;AAiBQ;EACE,gBAAA;AAfV;AAmBM;EACE,OAAA;EACA,uBAAA;EACA,eAAA;EACA,cAAA;EACA,0BAAA;EACA,6BAAA;EACA,iBAAA;EACA,gCAAA;EACA,oBAAA;EACA,gBAAA;AAjBR;AAmBQ;EAZF;IAaI,oBAAA;IACA,mCAAA;IACA,kCAAA;IACA,mBAAA;EAhBR;EAkBQ;IACE,aAAA;EAhBV;AACF;AAsBE;EACE,cAAA;EACA,aAAA;AApBJ;AAsBI;EACE,aAAA;AApBN;AAuBI;EACE,YAAA;EACA,aAAA;EACA,sBAAA;AArBN;AAuBM;EACE,OAAA;AArBR;AAyBI;EACE,gBAAA;AAvBN;AA2BE;EACE,kBAAA;EACA,mBAAA;EACA,gBAAA;AAzBJ;AA2BI;EACE,UAAA;AAzBN;AA2BM;EACE,UAAA;AAzBR;AA6BI;EACE,uBAAA;EACA,UAAA;EACA,cCvLW;EDwLX,oCAAA;AA3BN;AA8BI;EACE,gBAAA;EACA,mBAAA;EACA,gBAAA;AA5BN;AAgCE;EACE,aAAA;EACA,kBAAA;EACA,sBAAA;AA9BJ;AAgCI;EAEE,cAAA;EACA,cAAA;AA/BN;AAmCE;EACE,kBAAA;EACA,aAAA;EACA,cAAA;AAjCJ;AAoCM;EACE,WAAA;EACA,kBAAA;EACA,UAAA;AAlCR;AAuCE;EACE,mBAAA;EACA,sBAAA;EACA,iBAAA;EACA,kBAAA;EACA,qBAAA;EACA,4CAAA;AArCJ;AAuCI;EARF;IASI,aAAA;EApCJ;AACF;;AAuCA,+CAAA\",\"sourcesContent\":[\"@import \\\"../../variables\\\";\\n\\n/* stylelint-disable no-descending-specificity */\\n.tab-switcher {\\n display: flex;\\n\\n .tab-icon {\\n margin: 0.2em auto;\\n display: block;\\n }\\n\\n &.top-tabs {\\n flex-direction: column;\\n\\n > .tabs {\\n width: 100%;\\n overflow-y: hidden;\\n overflow-x: auto;\\n padding-top: 5px;\\n flex-direction: row;\\n flex: 0 0 auto;\\n\\n &::after,\\n &::before {\\n content: \\\"\\\";\\n flex: 1 1 auto;\\n border-bottom: 1px solid;\\n border-bottom-color: $fallback--border;\\n border-bottom-color: var(--border, $fallback--border);\\n }\\n\\n .tab-wrapper {\\n height: 2em;\\n\\n &:not(.active)::after {\\n left: 0;\\n right: 0;\\n bottom: 0;\\n border-bottom: 1px solid;\\n border-bottom-color: $fallback--border;\\n border-bottom-color: var(--border, $fallback--border);\\n }\\n }\\n\\n .tab {\\n width: 100%;\\n min-width: 1px;\\n border-bottom-left-radius: 0;\\n border-bottom-right-radius: 0;\\n padding-bottom: 99px;\\n margin-bottom: 6px - 99px;\\n }\\n }\\n\\n .contents.scrollable-tabs {\\n flex-basis: 0;\\n }\\n }\\n\\n &.side-tabs {\\n flex-direction: row;\\n\\n @media all and (max-width: 800px) {\\n overflow-x: auto;\\n }\\n\\n > .contents {\\n flex: 1 1 auto;\\n }\\n\\n > .tabs {\\n flex: 0 0 auto;\\n overflow-y: auto;\\n overflow-x: hidden;\\n flex-direction: column;\\n\\n &::after,\\n &::before {\\n flex-shrink: 0;\\n flex-basis: 0.5em;\\n content: \\\"\\\";\\n border-right: 1px solid;\\n border-right-color: $fallback--border;\\n border-right-color: var(--border, $fallback--border);\\n }\\n\\n &::after {\\n flex-grow: 1;\\n }\\n\\n &::before {\\n flex-grow: 0;\\n }\\n\\n .tab-wrapper {\\n min-width: 10em;\\n display: flex;\\n flex-direction: column;\\n\\n @media all and (max-width: 800px) {\\n min-width: 4em;\\n }\\n\\n &:not(.active)::after {\\n top: 0;\\n right: 0;\\n bottom: 0;\\n border-right: 1px solid;\\n border-right-color: $fallback--border;\\n border-right-color: var(--border, $fallback--border);\\n }\\n\\n &::before {\\n flex: 0 0 6px;\\n content: \\\"\\\";\\n border-right: 1px solid;\\n border-right-color: $fallback--border;\\n border-right-color: var(--border, $fallback--border);\\n }\\n\\n &:last-child .tab {\\n margin-bottom: 0;\\n }\\n }\\n\\n .tab {\\n flex: 1;\\n box-sizing: content-box;\\n min-width: 10em;\\n min-width: 1px;\\n border-top-right-radius: 0;\\n border-bottom-right-radius: 0;\\n padding-left: 1em;\\n padding-right: calc(1em + 200px);\\n margin-right: -200px;\\n margin-left: 1em;\\n\\n @media all and (max-width: 800px) {\\n padding-left: 0.25em;\\n padding-right: calc(0.25em + 200px);\\n margin-right: calc(0.25em - 200px);\\n margin-left: 0.25em;\\n\\n .text {\\n display: none;\\n }\\n }\\n }\\n }\\n }\\n\\n .contents {\\n flex: 1 0 auto;\\n min-height: 0;\\n\\n .hidden {\\n display: none;\\n }\\n\\n .full-height:not(.hidden) {\\n height: 100%;\\n display: flex;\\n flex-direction: column;\\n\\n > *:not(.mobile-label) {\\n flex: 1;\\n }\\n }\\n\\n &.scrollable-tabs {\\n overflow-y: auto;\\n }\\n }\\n\\n .tab {\\n position: relative;\\n white-space: nowrap;\\n padding: 6px 1em;\\n\\n &:not(.active) {\\n z-index: 4;\\n\\n &:hover {\\n z-index: 6;\\n }\\n }\\n\\n &.active {\\n background: transparent;\\n z-index: 5;\\n color: $fallback--text;\\n color: var(--tabActiveText, $fallback--text);\\n }\\n\\n img {\\n max-height: 26px;\\n vertical-align: top;\\n margin-top: -5px;\\n }\\n }\\n\\n .tabs {\\n display: flex;\\n position: relative;\\n box-sizing: border-box;\\n\\n &::after,\\n &::before {\\n display: block;\\n flex: 1 1 auto;\\n }\\n }\\n\\n .tab-wrapper {\\n position: relative;\\n display: flex;\\n flex: 0 0 auto;\\n\\n &:not(.active) {\\n &::after {\\n content: \\\"\\\";\\n position: absolute;\\n z-index: 7;\\n }\\n }\\n }\\n\\n .mobile-label {\\n padding-left: 0.3em;\\n padding-bottom: 0.25em;\\n margin-top: 0.5em;\\n margin-left: 0.2em;\\n margin-bottom: 0.25em;\\n border-bottom: 1px solid var(--border, $fallback--border);\\n\\n @media all and (min-width: 800px) {\\n display: none;\\n }\\n }\\n}\\n/* stylelint-enable no-descending-specificity */\\n\",\"$main-color: #f58d2c;\\n$main-background: white;\\n$darkened-background: whitesmoke;\\n\\n$fallback--bg: #121a24;\\n$fallback--fg: #182230;\\n$fallback--faint: rgb(185 185 186 / 50%);\\n$fallback--text: #b9b9ba;\\n$fallback--link: #d8a070;\\n$fallback--icon: #666;\\n$fallback--lightBg: rgb(21 30 42);\\n$fallback--lightText: #b9b9ba;\\n$fallback--border: #222;\\n$fallback--cRed: #f00;\\n$fallback--cBlue: #0095ff;\\n$fallback--cGreen: #0fa00f;\\n$fallback--cOrange: orange;\\n\\n$fallback--alertError: rgb(211 16 20 / 50%);\\n$fallback--alertWarning: rgb(111 111 20 / 50%);\\n\\n$fallback--panelRadius: 10px;\\n$fallback--checkboxRadius: 2px;\\n$fallback--btnRadius: 4px;\\n$fallback--inputRadius: 4px;\\n$fallback--tooltipRadius: 5px;\\n$fallback--avatarRadius: 4px;\\n$fallback--avatarAltRadius: 10px;\\n$fallback--attachmentRadius: 10px;\\n$fallback--chatMessageRadius: 10px;\\n\\n$fallback--buttonShadow: 0 0 2px 0 rgb(0 0 0 / 100%),\\n 0 1px 0 0 rgb(255 255 255 / 20%) inset,\\n 0 -1px 0 0 rgb(0 0 0 / 20%) inset;\\n\\n$status-margin: 0.75em;\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL3NyYy9jb21wb25lbnRzL3RhYl9zd2l0Y2hlci90YWJfc3dpdGNoZXIuc2Nzcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBO0FBQ2dIO0FBQ2pCO0FBQy9GLDhCQUE4QixtRkFBMkIsQ0FBQyw0RkFBcUM7QUFDL0Y7QUFDQSw0R0FBNEcsa0JBQWtCLEdBQUcsMkJBQTJCLHVCQUF1QixtQkFBbUIsR0FBRywwQkFBMEIsMkJBQTJCLEdBQUcsa0NBQWtDLGdCQUFnQix1QkFBdUIscUJBQXFCLHFCQUFxQix3QkFBd0IsbUJBQW1CLEdBQUcsaUZBQWlGLGtCQUFrQixtQkFBbUIsNkJBQTZCLDhCQUE4Qiw2Q0FBNkMsR0FBRywrQ0FBK0MsZ0JBQWdCLEdBQUcsbUVBQW1FLFlBQVksYUFBYSxjQUFjLDZCQUE2Qiw4QkFBOEIsNkNBQTZDLEdBQUcsdUNBQXVDLGdCQUFnQixtQkFBbUIsaUNBQWlDLGtDQUFrQyx5QkFBeUIseUJBQXlCLEdBQUcsb0RBQW9ELGtCQUFrQixHQUFHLDJCQUEyQix3QkFBd0IsR0FBRyxxQ0FBcUMsNkJBQTZCLHVCQUF1QixLQUFLLEdBQUcsdUNBQXVDLG1CQUFtQixHQUFHLG1DQUFtQyxtQkFBbUIscUJBQXFCLHVCQUF1QiwyQkFBMkIsR0FBRyxtRkFBbUYsbUJBQW1CLHNCQUFzQixrQkFBa0IsNEJBQTRCLDZCQUE2Qiw0Q0FBNEMsR0FBRywwQ0FBMEMsaUJBQWlCLEdBQUcsMkNBQTJDLGlCQUFpQixHQUFHLGdEQUFnRCxvQkFBb0Isa0JBQWtCLDJCQUEyQixHQUFHLHFDQUFxQyxrREFBa0QscUJBQXFCLEtBQUssR0FBRyxvRUFBb0UsV0FBVyxhQUFhLGNBQWMsNEJBQTRCLDZCQUE2Qiw0Q0FBNEMsR0FBRyx3REFBd0Qsa0JBQWtCLGtCQUFrQiw0QkFBNEIsNkJBQTZCLDRDQUE0QyxHQUFHLGdFQUFnRSxxQkFBcUIsR0FBRyx3Q0FBd0MsWUFBWSw0QkFBNEIsb0JBQW9CLG1CQUFtQiwrQkFBK0Isa0NBQWtDLHNCQUFzQixxQ0FBcUMseUJBQXlCLHFCQUFxQixHQUFHLHFDQUFxQywwQ0FBMEMsMkJBQTJCLDBDQUEwQyx5Q0FBeUMsMEJBQTBCLEtBQUssZ0RBQWdELG9CQUFvQixLQUFLLEdBQUcsMkJBQTJCLG1CQUFtQixrQkFBa0IsR0FBRyxtQ0FBbUMsa0JBQWtCLEdBQUcscURBQXFELGlCQUFpQixrQkFBa0IsMkJBQTJCLEdBQUcsNEVBQTRFLFlBQVksR0FBRywyQ0FBMkMscUJBQXFCLEdBQUcsc0JBQXNCLHVCQUF1Qix3QkFBd0IscUJBQXFCLEdBQUcsbUNBQW1DLGVBQWUsR0FBRyx5Q0FBeUMsZUFBZSxHQUFHLDZCQUE2Qiw0QkFBNEIsZUFBZSxtQkFBbUIseUNBQXlDLEdBQUcsMEJBQTBCLHFCQUFxQix3QkFBd0IscUJBQXFCLEdBQUcsdUJBQXVCLGtCQUFrQix1QkFBdUIsMkJBQTJCLEdBQUcsMkRBQTJELG1CQUFtQixtQkFBbUIsR0FBRyw4QkFBOEIsdUJBQXVCLGtCQUFrQixtQkFBbUIsR0FBRyxrREFBa0Qsa0JBQWtCLHVCQUF1QixlQUFlLEdBQUcsK0JBQStCLHdCQUF3QiwyQkFBMkIsc0JBQXNCLHVCQUF1QiwwQkFBMEIsaURBQWlELEdBQUcscUNBQXFDLGlDQUFpQyxvQkFBb0IsS0FBSyxHQUFHLDJEQUEyRCx3SkFBd0osS0FBSyxVQUFVLEtBQUssS0FBSyxXQUFXLFVBQVUsS0FBSyxLQUFLLFdBQVcsS0FBSyxLQUFLLFVBQVUsV0FBVyxXQUFXLFdBQVcsV0FBVyxVQUFVLEtBQUssS0FBSyxVQUFVLFVBQVUsV0FBVyxXQUFXLFlBQVksS0FBSyxLQUFLLFVBQVUsS0FBSyxLQUFLLFVBQVUsVUFBVSxVQUFVLFdBQVcsWUFBWSxZQUFZLEtBQUssS0FBSyxVQUFVLFVBQVUsV0FBVyxXQUFXLFdBQVcsV0FBVyxLQUFLLEtBQUssVUFBVSxLQUFLLEtBQUssV0FBVyxLQUFLLEtBQUssS0FBSyxXQUFXLEtBQUssS0FBSyxLQUFLLFVBQVUsS0FBSyxLQUFLLFVBQVUsV0FBVyxXQUFXLFdBQVcsS0FBSyxLQUFLLFVBQVUsV0FBVyxVQUFVLFdBQVcsWUFBWSxZQUFZLEtBQUssS0FBSyxVQUFVLEtBQUssS0FBSyxVQUFVLEtBQUssTUFBTSxVQUFVLFVBQVUsV0FBVyxLQUFLLE1BQU0sS0FBSyxVQUFVLEtBQUssS0FBSyxLQUFLLFVBQVUsVUFBVSxVQUFVLFdBQVcsWUFBWSxZQUFZLEtBQUssTUFBTSxVQUFVLFVBQVUsV0FBVyxZQUFZLFlBQVksS0FBSyxNQUFNLFdBQVcsS0FBSyxNQUFNLFVBQVUsV0FBVyxVQUFVLFVBQVUsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFdBQVcsTUFBTSxNQUFNLEtBQUssV0FBVyxXQUFXLFdBQVcsV0FBVyxNQUFNLE1BQU0sVUFBVSxNQUFNLEtBQUssTUFBTSxVQUFVLFVBQVUsTUFBTSxNQUFNLFVBQVUsTUFBTSxNQUFNLFVBQVUsVUFBVSxXQUFXLE1BQU0sTUFBTSxVQUFVLE1BQU0sTUFBTSxXQUFXLE1BQU0sTUFBTSxXQUFXLFdBQVcsV0FBVyxNQUFNLE1BQU0sVUFBVSxNQUFNLE1BQU0sVUFBVSxNQUFNLE1BQU0sV0FBVyxVQUFVLFdBQVcsWUFBWSxNQUFNLE1BQU0sV0FBVyxXQUFXLFdBQVcsTUFBTSxNQUFNLFVBQVUsV0FBVyxXQUFXLE1BQU0sTUFBTSxVQUFVLFVBQVUsTUFBTSxNQUFNLFdBQVcsVUFBVSxVQUFVLE1BQU0sTUFBTSxVQUFVLFdBQVcsVUFBVSxNQUFNLE1BQU0sV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFdBQVcsTUFBTSxNQUFNLEtBQUssVUFBVSxNQUFNLE1BQU0sNERBQTRELHNFQUFzRSxrQkFBa0IsaUJBQWlCLHlCQUF5QixxQkFBcUIsS0FBSyxrQkFBa0IsNkJBQTZCLGlCQUFpQixvQkFBb0IsMkJBQTJCLHlCQUF5Qix5QkFBeUIsNEJBQTRCLHVCQUF1QixzQ0FBc0Msd0JBQXdCLHlCQUF5QixtQ0FBbUMsaURBQWlELGdFQUFnRSxTQUFTLHdCQUF3QixzQkFBc0IsbUNBQW1DLG9CQUFvQixxQkFBcUIsc0JBQXNCLHFDQUFxQyxtREFBbUQsa0VBQWtFLFdBQVcsU0FBUyxnQkFBZ0Isc0JBQXNCLHlCQUF5Qix1Q0FBdUMsd0NBQXdDLCtCQUErQixvQ0FBb0MsU0FBUyxPQUFPLG1DQUFtQyxzQkFBc0IsT0FBTyxLQUFLLG1CQUFtQiwwQkFBMEIsMkNBQTJDLHlCQUF5QixPQUFPLHFCQUFxQix1QkFBdUIsT0FBTyxpQkFBaUIsdUJBQXVCLHlCQUF5QiwyQkFBMkIsK0JBQStCLHNDQUFzQyx5QkFBeUIsNEJBQTRCLHdCQUF3QixrQ0FBa0MsZ0RBQWdELCtEQUErRCxTQUFTLG9CQUFvQix1QkFBdUIsU0FBUyxxQkFBcUIsdUJBQXVCLFNBQVMsd0JBQXdCLDBCQUEwQix3QkFBd0IsaUNBQWlDLCtDQUErQywyQkFBMkIsV0FBVyxtQ0FBbUMsbUJBQW1CLHFCQUFxQixzQkFBc0Isb0NBQW9DLGtEQUFrRCxpRUFBaUUsV0FBVyx1QkFBdUIsMEJBQTBCLDBCQUEwQixvQ0FBb0Msa0RBQWtELGlFQUFpRSxXQUFXLCtCQUErQiw2QkFBNkIsV0FBVyxTQUFTLGdCQUFnQixrQkFBa0Isa0NBQWtDLDBCQUEwQix5QkFBeUIscUNBQXFDLHdDQUF3Qyw0QkFBNEIsMkNBQTJDLCtCQUErQiwyQkFBMkIsK0NBQStDLGlDQUFpQyxnREFBZ0QsK0NBQStDLGdDQUFnQyxxQkFBcUIsNEJBQTRCLGFBQWEsV0FBVyxTQUFTLE9BQU8sS0FBSyxpQkFBaUIscUJBQXFCLG9CQUFvQixpQkFBaUIsc0JBQXNCLE9BQU8sbUNBQW1DLHFCQUFxQixzQkFBc0IsK0JBQStCLGtDQUFrQyxrQkFBa0IsU0FBUyxPQUFPLDJCQUEyQix5QkFBeUIsT0FBTyxLQUFLLFlBQVkseUJBQXlCLDBCQUEwQix1QkFBdUIsd0JBQXdCLG1CQUFtQixtQkFBbUIscUJBQXFCLFNBQVMsT0FBTyxrQkFBa0IsZ0NBQWdDLG1CQUFtQiwrQkFBK0IscURBQXFELE9BQU8sYUFBYSx5QkFBeUIsNEJBQTRCLHlCQUF5QixPQUFPLEtBQUssYUFBYSxvQkFBb0IseUJBQXlCLDZCQUE2QixrQ0FBa0MsdUJBQXVCLHVCQUF1QixPQUFPLEtBQUssb0JBQW9CLHlCQUF5QixvQkFBb0IscUJBQXFCLHdCQUF3QixrQkFBa0Isd0JBQXdCLDZCQUE2QixxQkFBcUIsU0FBUyxPQUFPLEtBQUsscUJBQXFCLDBCQUEwQiw2QkFBNkIsd0JBQXdCLHlCQUF5Qiw0QkFBNEIsZ0VBQWdFLDJDQUEyQyxzQkFBc0IsT0FBTyxLQUFLLEdBQUcsNEVBQTRFLDBCQUEwQixtQ0FBbUMsMkJBQTJCLHlCQUF5QiwyQ0FBMkMsMkJBQTJCLDJCQUEyQix3QkFBd0Isb0NBQW9DLGdDQUFnQywwQkFBMEIsd0JBQXdCLDRCQUE0Qiw2QkFBNkIsNkJBQTZCLGdEQUFnRCxpREFBaUQsaUNBQWlDLGlDQUFpQyw0QkFBNEIsOEJBQThCLGdDQUFnQywrQkFBK0IsbUNBQW1DLG9DQUFvQyxxQ0FBcUMsMElBQTBJLDJCQUEyQixxQkFBcUI7QUFDaHlZO0FBQ0EsaUVBQWUsdUJBQXVCLEVBQUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL2NvbXBvbmVudHMvdGFiX3N3aXRjaGVyL3RhYl9zd2l0Y2hlci5zY3NzPzkyZjEiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gSW1wb3J0c1xuaW1wb3J0IF9fX0NTU19MT0FERVJfQVBJX1NPVVJDRU1BUF9JTVBPUlRfX18gZnJvbSBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2Rpc3QvcnVudGltZS9zb3VyY2VNYXBzLmpzXCI7XG5pbXBvcnQgX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fIGZyb20gXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvYXBpLmpzXCI7XG52YXIgX19fQ1NTX0xPQURFUl9FWFBPUlRfX18gPSBfX19DU1NfTE9BREVSX0FQSV9JTVBPUlRfX18oX19fQ1NTX0xPQURFUl9BUElfU09VUkNFTUFQX0lNUE9SVF9fXyk7XG4vLyBNb2R1bGVcbl9fX0NTU19MT0FERVJfRVhQT1JUX19fLnB1c2goW21vZHVsZS5pZCwgXCIvKiBzdHlsZWxpbnQtZGlzYWJsZSBuby1kZXNjZW5kaW5nLXNwZWNpZmljaXR5ICovXFxuLnRhYi1zd2l0Y2hlciB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbn1cXG4udGFiLXN3aXRjaGVyIC50YWItaWNvbiB7XFxuICBtYXJnaW46IDAuMmVtIGF1dG87XFxuICBkaXNwbGF5OiBibG9jaztcXG59XFxuLnRhYi1zd2l0Y2hlci50b3AtdGFicyB7XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbn1cXG4udGFiLXN3aXRjaGVyLnRvcC10YWJzID4gLnRhYnMge1xcbiAgd2lkdGg6IDEwMCU7XFxuICBvdmVyZmxvdy15OiBoaWRkZW47XFxuICBvdmVyZmxvdy14OiBhdXRvO1xcbiAgcGFkZGluZy10b3A6IDVweDtcXG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XFxuICBmbGV4OiAwIDAgYXV0bztcXG59XFxuLnRhYi1zd2l0Y2hlci50b3AtdGFicyA+IC50YWJzOjphZnRlciwgLnRhYi1zd2l0Y2hlci50b3AtdGFicyA+IC50YWJzOjpiZWZvcmUge1xcbiAgY29udGVudDogXFxcIlxcXCI7XFxuICBmbGV4OiAxIDEgYXV0bztcXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcXG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICMyMjI7XFxuICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1ib3JkZXIsICMyMjIpO1xcbn1cXG4udGFiLXN3aXRjaGVyLnRvcC10YWJzID4gLnRhYnMgLnRhYi13cmFwcGVyIHtcXG4gIGhlaWdodDogMmVtO1xcbn1cXG4udGFiLXN3aXRjaGVyLnRvcC10YWJzID4gLnRhYnMgLnRhYi13cmFwcGVyOm5vdCguYWN0aXZlKTo6YWZ0ZXIge1xcbiAgbGVmdDogMDtcXG4gIHJpZ2h0OiAwO1xcbiAgYm90dG9tOiAwO1xcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzIyMjtcXG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWJvcmRlciwgIzIyMik7XFxufVxcbi50YWItc3dpdGNoZXIudG9wLXRhYnMgPiAudGFicyAudGFiIHtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgbWluLXdpZHRoOiAxcHg7XFxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XFxuICBwYWRkaW5nLWJvdHRvbTogOTlweDtcXG4gIG1hcmdpbi1ib3R0b206IC05M3B4O1xcbn1cXG4udGFiLXN3aXRjaGVyLnRvcC10YWJzIC5jb250ZW50cy5zY3JvbGxhYmxlLXRhYnMge1xcbiAgZmxleC1iYXNpczogMDtcXG59XFxuLnRhYi1zd2l0Y2hlci5zaWRlLXRhYnMge1xcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcXG59XFxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcXG4gIC50YWItc3dpdGNoZXIuc2lkZS10YWJzIHtcXG4gICAgb3ZlcmZsb3cteDogYXV0bztcXG4gIH1cXG59XFxuLnRhYi1zd2l0Y2hlci5zaWRlLXRhYnMgPiAuY29udGVudHMge1xcbiAgZmxleDogMSAxIGF1dG87XFxufVxcbi50YWItc3dpdGNoZXIuc2lkZS10YWJzID4gLnRhYnMge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICBvdmVyZmxvdy15OiBhdXRvO1xcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG59XFxuLnRhYi1zd2l0Y2hlci5zaWRlLXRhYnMgPiAudGFiczo6YWZ0ZXIsIC50YWItc3dpdGNoZXIuc2lkZS10YWJzID4gLnRhYnM6OmJlZm9yZSB7XFxuICBmbGV4LXNocmluazogMDtcXG4gIGZsZXgtYmFzaXM6IDAuNWVtO1xcbiAgY29udGVudDogXFxcIlxcXCI7XFxuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZDtcXG4gIGJvcmRlci1yaWdodC1jb2xvcjogIzIyMjtcXG4gIGJvcmRlci1yaWdodC1jb2xvcjogdmFyKC0tYm9yZGVyLCAjMjIyKTtcXG59XFxuLnRhYi1zd2l0Y2hlci5zaWRlLXRhYnMgPiAudGFiczo6YWZ0ZXIge1xcbiAgZmxleC1ncm93OiAxO1xcbn1cXG4udGFiLXN3aXRjaGVyLnNpZGUtdGFicyA+IC50YWJzOjpiZWZvcmUge1xcbiAgZmxleC1ncm93OiAwO1xcbn1cXG4udGFiLXN3aXRjaGVyLnNpZGUtdGFicyA+IC50YWJzIC50YWItd3JhcHBlciB7XFxuICBtaW4td2lkdGg6IDEwZW07XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG59XFxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcXG4gIC50YWItc3dpdGNoZXIuc2lkZS10YWJzID4gLnRhYnMgLnRhYi13cmFwcGVyIHtcXG4gICAgbWluLXdpZHRoOiA0ZW07XFxuICB9XFxufVxcbi50YWItc3dpdGNoZXIuc2lkZS10YWJzID4gLnRhYnMgLnRhYi13cmFwcGVyOm5vdCguYWN0aXZlKTo6YWZ0ZXIge1xcbiAgdG9wOiAwO1xcbiAgcmlnaHQ6IDA7XFxuICBib3R0b206IDA7XFxuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZDtcXG4gIGJvcmRlci1yaWdodC1jb2xvcjogIzIyMjtcXG4gIGJvcmRlci1yaWdodC1jb2xvcjogdmFyKC0tYm9yZGVyLCAjMjIyKTtcXG59XFxuLnRhYi1zd2l0Y2hlci5zaWRlLXRhYnMgPiAudGFicyAudGFiLXdyYXBwZXI6OmJlZm9yZSB7XFxuICBmbGV4OiAwIDAgNnB4O1xcbiAgY29udGVudDogXFxcIlxcXCI7XFxuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZDtcXG4gIGJvcmRlci1yaWdodC1jb2xvcjogIzIyMjtcXG4gIGJvcmRlci1yaWdodC1jb2xvcjogdmFyKC0tYm9yZGVyLCAjMjIyKTtcXG59XFxuLnRhYi1zd2l0Y2hlci5zaWRlLXRhYnMgPiAudGFicyAudGFiLXdyYXBwZXI6bGFzdC1jaGlsZCAudGFiIHtcXG4gIG1hcmdpbi1ib3R0b206IDA7XFxufVxcbi50YWItc3dpdGNoZXIuc2lkZS10YWJzID4gLnRhYnMgLnRhYiB7XFxuICBmbGV4OiAxO1xcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XFxuICBtaW4td2lkdGg6IDEwZW07XFxuICBtaW4td2lkdGg6IDFweDtcXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XFxuICBwYWRkaW5nLWxlZnQ6IDFlbTtcXG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMWVtICsgMjAwcHgpO1xcbiAgbWFyZ2luLXJpZ2h0OiAtMjAwcHg7XFxuICBtYXJnaW4tbGVmdDogMWVtO1xcbn1cXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xcbiAgLnRhYi1zd2l0Y2hlci5zaWRlLXRhYnMgPiAudGFicyAudGFiIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1ZW07XFxuICAgIHBhZGRpbmctcmlnaHQ6IGNhbGMoMC4yNWVtICsgMjAwcHgpO1xcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoMC4yNWVtIC0gMjAwcHgpO1xcbiAgICBtYXJnaW4tbGVmdDogMC4yNWVtO1xcbiAgfVxcbiAgLnRhYi1zd2l0Y2hlci5zaWRlLXRhYnMgPiAudGFicyAudGFiIC50ZXh0IHtcXG4gICAgZGlzcGxheTogbm9uZTtcXG4gIH1cXG59XFxuLnRhYi1zd2l0Y2hlciAuY29udGVudHMge1xcbiAgZmxleDogMSAwIGF1dG87XFxuICBtaW4taGVpZ2h0OiAwO1xcbn1cXG4udGFiLXN3aXRjaGVyIC5jb250ZW50cyAuaGlkZGVuIHtcXG4gIGRpc3BsYXk6IG5vbmU7XFxufVxcbi50YWItc3dpdGNoZXIgLmNvbnRlbnRzIC5mdWxsLWhlaWdodDpub3QoLmhpZGRlbikge1xcbiAgaGVpZ2h0OiAxMDAlO1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxufVxcbi50YWItc3dpdGNoZXIgLmNvbnRlbnRzIC5mdWxsLWhlaWdodDpub3QoLmhpZGRlbikgPiAqOm5vdCgubW9iaWxlLWxhYmVsKSB7XFxuICBmbGV4OiAxO1xcbn1cXG4udGFiLXN3aXRjaGVyIC5jb250ZW50cy5zY3JvbGxhYmxlLXRhYnMge1xcbiAgb3ZlcmZsb3cteTogYXV0bztcXG59XFxuLnRhYi1zd2l0Y2hlciAudGFiIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XFxuICBwYWRkaW5nOiA2cHggMWVtO1xcbn1cXG4udGFiLXN3aXRjaGVyIC50YWI6bm90KC5hY3RpdmUpIHtcXG4gIHotaW5kZXg6IDQ7XFxufVxcbi50YWItc3dpdGNoZXIgLnRhYjpub3QoLmFjdGl2ZSk6aG92ZXIge1xcbiAgei1pbmRleDogNjtcXG59XFxuLnRhYi1zd2l0Y2hlciAudGFiLmFjdGl2ZSB7XFxuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcXG4gIHotaW5kZXg6IDU7XFxuICBjb2xvcjogI2I5YjliYTtcXG4gIGNvbG9yOiB2YXIoLS10YWJBY3RpdmVUZXh0LCAjYjliOWJhKTtcXG59XFxuLnRhYi1zd2l0Y2hlciAudGFiIGltZyB7XFxuICBtYXgtaGVpZ2h0OiAyNnB4O1xcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcXG4gIG1hcmdpbi10b3A6IC01cHg7XFxufVxcbi50YWItc3dpdGNoZXIgLnRhYnMge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XFxufVxcbi50YWItc3dpdGNoZXIgLnRhYnM6OmFmdGVyLCAudGFiLXN3aXRjaGVyIC50YWJzOjpiZWZvcmUge1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBmbGV4OiAxIDEgYXV0bztcXG59XFxuLnRhYi1zd2l0Y2hlciAudGFiLXdyYXBwZXIge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXg6IDAgMCBhdXRvO1xcbn1cXG4udGFiLXN3aXRjaGVyIC50YWItd3JhcHBlcjpub3QoLmFjdGl2ZSk6OmFmdGVyIHtcXG4gIGNvbnRlbnQ6IFxcXCJcXFwiO1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgei1pbmRleDogNztcXG59XFxuLnRhYi1zd2l0Y2hlciAubW9iaWxlLWxhYmVsIHtcXG4gIHBhZGRpbmctbGVmdDogMC4zZW07XFxuICBwYWRkaW5nLWJvdHRvbTogMC4yNWVtO1xcbiAgbWFyZ2luLXRvcDogMC41ZW07XFxuICBtYXJnaW4tbGVmdDogMC4yZW07XFxuICBtYXJnaW4tYm90dG9tOiAwLjI1ZW07XFxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLCAjMjIyKTtcXG59XFxuQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogODAwcHgpIHtcXG4gIC50YWItc3dpdGNoZXIgLm1vYmlsZS1sYWJlbCB7XFxuICAgIGRpc3BsYXk6IG5vbmU7XFxuICB9XFxufVxcblxcbi8qIHN0eWxlbGludC1lbmFibGUgbm8tZGVzY2VuZGluZy1zcGVjaWZpY2l0eSAqL1wiLCBcIlwiLHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIndlYnBhY2s6Ly8uL3NyYy9jb21wb25lbnRzL3RhYl9zd2l0Y2hlci90YWJfc3dpdGNoZXIuc2Nzc1wiLFwid2VicGFjazovLy4vc3JjL192YXJpYWJsZXMuc2Nzc1wiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiQUFFQSxnREFBQTtBQUNBO0VBQ0UsYUFBQTtBQURGO0FBR0U7RUFDRSxrQkFBQTtFQUNBLGNBQUE7QUFESjtBQUlFO0VBQ0Usc0JBQUE7QUFGSjtBQUlJO0VBQ0UsV0FBQTtFQUNBLGtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQkFBQTtFQUNBLG1CQUFBO0VBQ0EsY0FBQTtBQUZOO0FBSU07RUFFRSxXQUFBO0VBQ0EsY0FBQTtFQUNBLHdCQUFBO0VBQ0EseUJDZlc7RURnQlgsd0NBQUE7QUFIUjtBQU1NO0VBQ0UsV0FBQTtBQUpSO0FBTVE7RUFDRSxPQUFBO0VBQ0EsUUFBQTtFQUNBLFNBQUE7RUFDQSx3QkFBQTtFQUNBLHlCQzNCUztFRDRCVCx3Q0FBQTtBQUpWO0FBUU07RUFDRSxXQUFBO0VBQ0EsY0FBQTtFQUNBLDRCQUFBO0VBQ0EsNkJBQUE7RUFDQSxvQkFBQTtFQUNBLG9CQUFBO0FBTlI7QUFVSTtFQUNFLGFBQUE7QUFSTjtBQVlFO0VBQ0UsbUJBQUE7QUFWSjtBQVlJO0VBSEY7SUFJSSxnQkFBQTtFQVRKO0FBQ0Y7QUFXSTtFQUNFLGNBQUE7QUFUTjtBQVlJO0VBQ0UsY0FBQTtFQUNBLGdCQUFBO0VBQ0Esa0JBQUE7RUFDQSxzQkFBQTtBQVZOO0FBWU07RUFFRSxjQUFBO0VBQ0EsaUJBQUE7RUFDQSxXQUFBO0VBQ0EsdUJBQUE7RUFDQSx3QkN0RVc7RUR1RVgsdUNBQUE7QUFYUjtBQWNNO0VBQ0UsWUFBQTtBQVpSO0FBZU07RUFDRSxZQUFBO0FBYlI7QUFnQk07RUFDRSxlQUFBO0VBQ0EsYUFBQTtFQUNBLHNCQUFBO0FBZFI7QUFnQlE7RUFMRjtJQU1JLGNBQUE7RUFiUjtBQUNGO0FBZVE7RUFDRSxNQUFBO0VBQ0EsUUFBQTtFQUNBLFNBQUE7RUFDQSx1QkFBQTtFQUNBLHdCQ2hHUztFRGlHVCx1Q0FBQTtBQWJWO0FBZ0JRO0VBQ0UsYUFBQTtFQUNBLFdBQUE7RUFDQSx1QkFBQTtFQUNBLHdCQ3hHUztFRHlHVCx1Q0FBQTtBQWRWO0FBaUJRO0VBQ0UsZ0JBQUE7QUFmVjtBQW1CTTtFQUNFLE9BQUE7RUFDQSx1QkFBQTtFQUNBLGVBQUE7RUFDQSxjQUFBO0VBQ0EsMEJBQUE7RUFDQSw2QkFBQTtFQUNBLGlCQUFBO0VBQ0EsZ0NBQUE7RUFDQSxvQkFBQTtFQUNBLGdCQUFBO0FBakJSO0FBbUJRO0VBWkY7SUFhSSxvQkFBQTtJQUNBLG1DQUFBO0lBQ0Esa0NBQUE7SUFDQSxtQkFBQTtFQWhCUjtFQWtCUTtJQUNFLGFBQUE7RUFoQlY7QUFDRjtBQXNCRTtFQUNFLGNBQUE7RUFDQSxhQUFBO0FBcEJKO0FBc0JJO0VBQ0UsYUFBQTtBQXBCTjtBQXVCSTtFQUNFLFlBQUE7RUFDQSxhQUFBO0VBQ0Esc0JBQUE7QUFyQk47QUF1Qk07RUFDRSxPQUFBO0FBckJSO0FBeUJJO0VBQ0UsZ0JBQUE7QUF2Qk47QUEyQkU7RUFDRSxrQkFBQTtFQUNBLG1CQUFBO0VBQ0EsZ0JBQUE7QUF6Qko7QUEyQkk7RUFDRSxVQUFBO0FBekJOO0FBMkJNO0VBQ0UsVUFBQTtBQXpCUjtBQTZCSTtFQUNFLHVCQUFBO0VBQ0EsVUFBQTtFQUNBLGNDdkxXO0VEd0xYLG9DQUFBO0FBM0JOO0FBOEJJO0VBQ0UsZ0JBQUE7RUFDQSxtQkFBQTtFQUNBLGdCQUFBO0FBNUJOO0FBZ0NFO0VBQ0UsYUFBQTtFQUNBLGtCQUFBO0VBQ0Esc0JBQUE7QUE5Qko7QUFnQ0k7RUFFRSxjQUFBO0VBQ0EsY0FBQTtBQS9CTjtBQW1DRTtFQUNFLGtCQUFBO0VBQ0EsYUFBQTtFQUNBLGNBQUE7QUFqQ0o7QUFvQ007RUFDRSxXQUFBO0VBQ0Esa0JBQUE7RUFDQSxVQUFBO0FBbENSO0FBdUNFO0VBQ0UsbUJBQUE7RUFDQSxzQkFBQTtFQUNBLGlCQUFBO0VBQ0Esa0JBQUE7RUFDQSxxQkFBQTtFQUNBLDRDQUFBO0FBckNKO0FBdUNJO0VBUkY7SUFTSSxhQUFBO0VBcENKO0FBQ0Y7O0FBdUNBLCtDQUFBXCIsXCJzb3VyY2VzQ29udGVudFwiOltcIkBpbXBvcnQgXFxcIi4uLy4uL3ZhcmlhYmxlc1xcXCI7XFxuXFxuLyogc3R5bGVsaW50LWRpc2FibGUgbm8tZGVzY2VuZGluZy1zcGVjaWZpY2l0eSAqL1xcbi50YWItc3dpdGNoZXIge1xcbiAgZGlzcGxheTogZmxleDtcXG5cXG4gIC50YWItaWNvbiB7XFxuICAgIG1hcmdpbjogMC4yZW0gYXV0bztcXG4gICAgZGlzcGxheTogYmxvY2s7XFxuICB9XFxuXFxuICAmLnRvcC10YWJzIHtcXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG5cXG4gICAgPiAudGFicyB7XFxuICAgICAgd2lkdGg6IDEwMCU7XFxuICAgICAgb3ZlcmZsb3cteTogaGlkZGVuO1xcbiAgICAgIG92ZXJmbG93LXg6IGF1dG87XFxuICAgICAgcGFkZGluZy10b3A6IDVweDtcXG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xcblxcbiAgICAgICY6OmFmdGVyLFxcbiAgICAgICY6OmJlZm9yZSB7XFxuICAgICAgICBjb250ZW50OiBcXFwiXFxcIjtcXG4gICAgICAgIGZsZXg6IDEgMSBhdXRvO1xcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGZhbGxiYWNrLS1ib3JkZXI7XFxuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1ib3JkZXIsICRmYWxsYmFjay0tYm9yZGVyKTtcXG4gICAgICB9XFxuXFxuICAgICAgLnRhYi13cmFwcGVyIHtcXG4gICAgICAgIGhlaWdodDogMmVtO1xcblxcbiAgICAgICAgJjpub3QoLmFjdGl2ZSk6OmFmdGVyIHtcXG4gICAgICAgICAgbGVmdDogMDtcXG4gICAgICAgICAgcmlnaHQ6IDA7XFxuICAgICAgICAgIGJvdHRvbTogMDtcXG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xcbiAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkZmFsbGJhY2stLWJvcmRlcjtcXG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tYm9yZGVyLCAkZmFsbGJhY2stLWJvcmRlcik7XFxuICAgICAgICB9XFxuICAgICAgfVxcblxcbiAgICAgIC50YWIge1xcbiAgICAgICAgd2lkdGg6IDEwMCU7XFxuICAgICAgICBtaW4td2lkdGg6IDFweDtcXG4gICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XFxuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA5OXB4O1xcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNnB4IC0gOTlweDtcXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgLmNvbnRlbnRzLnNjcm9sbGFibGUtdGFicyB7XFxuICAgICAgZmxleC1iYXNpczogMDtcXG4gICAgfVxcbiAgfVxcblxcbiAgJi5zaWRlLXRhYnMge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xcblxcbiAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xcbiAgICAgIG92ZXJmbG93LXg6IGF1dG87XFxuICAgIH1cXG5cXG4gICAgPiAuY29udGVudHMge1xcbiAgICAgIGZsZXg6IDEgMSBhdXRvO1xcbiAgICB9XFxuXFxuICAgID4gLnRhYnMge1xcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICAgIG92ZXJmbG93LXk6IGF1dG87XFxuICAgICAgb3ZlcmZsb3cteDogaGlkZGVuO1xcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuXFxuICAgICAgJjo6YWZ0ZXIsXFxuICAgICAgJjo6YmVmb3JlIHtcXG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xcbiAgICAgICAgZmxleC1iYXNpczogMC41ZW07XFxuICAgICAgICBjb250ZW50OiBcXFwiXFxcIjtcXG4gICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkO1xcbiAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkZmFsbGJhY2stLWJvcmRlcjtcXG4gICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdmFyKC0tYm9yZGVyLCAkZmFsbGJhY2stLWJvcmRlcik7XFxuICAgICAgfVxcblxcbiAgICAgICY6OmFmdGVyIHtcXG4gICAgICAgIGZsZXgtZ3JvdzogMTtcXG4gICAgICB9XFxuXFxuICAgICAgJjo6YmVmb3JlIHtcXG4gICAgICAgIGZsZXgtZ3JvdzogMDtcXG4gICAgICB9XFxuXFxuICAgICAgLnRhYi13cmFwcGVyIHtcXG4gICAgICAgIG1pbi13aWR0aDogMTBlbTtcXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcblxcbiAgICAgICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcXG4gICAgICAgICAgbWluLXdpZHRoOiA0ZW07XFxuICAgICAgICB9XFxuXFxuICAgICAgICAmOm5vdCguYWN0aXZlKTo6YWZ0ZXIge1xcbiAgICAgICAgICB0b3A6IDA7XFxuICAgICAgICAgIHJpZ2h0OiAwO1xcbiAgICAgICAgICBib3R0b206IDA7XFxuICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkO1xcbiAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRmYWxsYmFjay0tYm9yZGVyO1xcbiAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLWJvcmRlciwgJGZhbGxiYWNrLS1ib3JkZXIpO1xcbiAgICAgICAgfVxcblxcbiAgICAgICAgJjo6YmVmb3JlIHtcXG4gICAgICAgICAgZmxleDogMCAwIDZweDtcXG4gICAgICAgICAgY29udGVudDogXFxcIlxcXCI7XFxuICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkO1xcbiAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRmYWxsYmFjay0tYm9yZGVyO1xcbiAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLWJvcmRlciwgJGZhbGxiYWNrLS1ib3JkZXIpO1xcbiAgICAgICAgfVxcblxcbiAgICAgICAgJjpsYXN0LWNoaWxkIC50YWIge1xcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xcbiAgICAgICAgfVxcbiAgICAgIH1cXG5cXG4gICAgICAudGFiIHtcXG4gICAgICAgIGZsZXg6IDE7XFxuICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcXG4gICAgICAgIG1pbi13aWR0aDogMTBlbTtcXG4gICAgICAgIG1pbi13aWR0aDogMXB4O1xcbiAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XFxuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcXG4gICAgICAgIHBhZGRpbmctbGVmdDogMWVtO1xcbiAgICAgICAgcGFkZGluZy1yaWdodDogY2FsYygxZW0gKyAyMDBweCk7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0yMDBweDtcXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxZW07XFxuXFxuICAgICAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuMjVlbTtcXG4gICAgICAgICAgcGFkZGluZy1yaWdodDogY2FsYygwLjI1ZW0gKyAyMDBweCk7XFxuICAgICAgICAgIG1hcmdpbi1yaWdodDogY2FsYygwLjI1ZW0gLSAyMDBweCk7XFxuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwLjI1ZW07XFxuXFxuICAgICAgICAgIC50ZXh0IHtcXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xcbiAgICAgICAgICB9XFxuICAgICAgICB9XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxuXFxuICAuY29udGVudHMge1xcbiAgICBmbGV4OiAxIDAgYXV0bztcXG4gICAgbWluLWhlaWdodDogMDtcXG5cXG4gICAgLmhpZGRlbiB7XFxuICAgICAgZGlzcGxheTogbm9uZTtcXG4gICAgfVxcblxcbiAgICAuZnVsbC1oZWlnaHQ6bm90KC5oaWRkZW4pIHtcXG4gICAgICBoZWlnaHQ6IDEwMCU7XFxuICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcblxcbiAgICAgID4gKjpub3QoLm1vYmlsZS1sYWJlbCkge1xcbiAgICAgICAgZmxleDogMTtcXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgJi5zY3JvbGxhYmxlLXRhYnMge1xcbiAgICAgIG92ZXJmbG93LXk6IGF1dG87XFxuICAgIH1cXG4gIH1cXG5cXG4gIC50YWIge1xcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XFxuICAgIHBhZGRpbmc6IDZweCAxZW07XFxuXFxuICAgICY6bm90KC5hY3RpdmUpIHtcXG4gICAgICB6LWluZGV4OiA0O1xcblxcbiAgICAgICY6aG92ZXIge1xcbiAgICAgICAgei1pbmRleDogNjtcXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgJi5hY3RpdmUge1xcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xcbiAgICAgIHotaW5kZXg6IDU7XFxuICAgICAgY29sb3I6ICRmYWxsYmFjay0tdGV4dDtcXG4gICAgICBjb2xvcjogdmFyKC0tdGFiQWN0aXZlVGV4dCwgJGZhbGxiYWNrLS10ZXh0KTtcXG4gICAgfVxcblxcbiAgICBpbWcge1xcbiAgICAgIG1heC1oZWlnaHQ6IDI2cHg7XFxuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcXG4gICAgICBtYXJnaW4tdG9wOiAtNXB4O1xcbiAgICB9XFxuICB9XFxuXFxuICAudGFicyB7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcXG5cXG4gICAgJjo6YWZ0ZXIsXFxuICAgICY6OmJlZm9yZSB7XFxuICAgICAgZGlzcGxheTogYmxvY2s7XFxuICAgICAgZmxleDogMSAxIGF1dG87XFxuICAgIH1cXG4gIH1cXG5cXG4gIC50YWItd3JhcHBlciB7XFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuXFxuICAgICY6bm90KC5hY3RpdmUpIHtcXG4gICAgICAmOjphZnRlciB7XFxuICAgICAgICBjb250ZW50OiBcXFwiXFxcIjtcXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gICAgICAgIHotaW5kZXg6IDc7XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxuXFxuICAubW9iaWxlLWxhYmVsIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjNlbTtcXG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVlbTtcXG4gICAgbWFyZ2luLXRvcDogMC41ZW07XFxuICAgIG1hcmdpbi1sZWZ0OiAwLjJlbTtcXG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNWVtO1xcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLCAkZmFsbGJhY2stLWJvcmRlcik7XFxuXFxuICAgIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDgwMHB4KSB7XFxuICAgICAgZGlzcGxheTogbm9uZTtcXG4gICAgfVxcbiAgfVxcbn1cXG4vKiBzdHlsZWxpbnQtZW5hYmxlIG5vLWRlc2NlbmRpbmctc3BlY2lmaWNpdHkgKi9cXG5cIixcIiRtYWluLWNvbG9yOiAjZjU4ZDJjO1xcbiRtYWluLWJhY2tncm91bmQ6IHdoaXRlO1xcbiRkYXJrZW5lZC1iYWNrZ3JvdW5kOiB3aGl0ZXNtb2tlO1xcblxcbiRmYWxsYmFjay0tYmc6ICMxMjFhMjQ7XFxuJGZhbGxiYWNrLS1mZzogIzE4MjIzMDtcXG4kZmFsbGJhY2stLWZhaW50OiByZ2IoMTg1IDE4NSAxODYgLyA1MCUpO1xcbiRmYWxsYmFjay0tdGV4dDogI2I5YjliYTtcXG4kZmFsbGJhY2stLWxpbms6ICNkOGEwNzA7XFxuJGZhbGxiYWNrLS1pY29uOiAjNjY2O1xcbiRmYWxsYmFjay0tbGlnaHRCZzogcmdiKDIxIDMwIDQyKTtcXG4kZmFsbGJhY2stLWxpZ2h0VGV4dDogI2I5YjliYTtcXG4kZmFsbGJhY2stLWJvcmRlcjogIzIyMjtcXG4kZmFsbGJhY2stLWNSZWQ6ICNmMDA7XFxuJGZhbGxiYWNrLS1jQmx1ZTogIzAwOTVmZjtcXG4kZmFsbGJhY2stLWNHcmVlbjogIzBmYTAwZjtcXG4kZmFsbGJhY2stLWNPcmFuZ2U6IG9yYW5nZTtcXG5cXG4kZmFsbGJhY2stLWFsZXJ0RXJyb3I6IHJnYigyMTEgMTYgMjAgLyA1MCUpO1xcbiRmYWxsYmFjay0tYWxlcnRXYXJuaW5nOiByZ2IoMTExIDExMSAyMCAvIDUwJSk7XFxuXFxuJGZhbGxiYWNrLS1wYW5lbFJhZGl1czogMTBweDtcXG4kZmFsbGJhY2stLWNoZWNrYm94UmFkaXVzOiAycHg7XFxuJGZhbGxiYWNrLS1idG5SYWRpdXM6IDRweDtcXG4kZmFsbGJhY2stLWlucHV0UmFkaXVzOiA0cHg7XFxuJGZhbGxiYWNrLS10b29sdGlwUmFkaXVzOiA1cHg7XFxuJGZhbGxiYWNrLS1hdmF0YXJSYWRpdXM6IDRweDtcXG4kZmFsbGJhY2stLWF2YXRhckFsdFJhZGl1czogMTBweDtcXG4kZmFsbGJhY2stLWF0dGFjaG1lbnRSYWRpdXM6IDEwcHg7XFxuJGZhbGxiYWNrLS1jaGF0TWVzc2FnZVJhZGl1czogMTBweDtcXG5cXG4kZmFsbGJhY2stLWJ1dHRvblNoYWRvdzogMCAwIDJweCAwIHJnYigwIDAgMCAvIDEwMCUpLFxcbiAgMCAxcHggMCAwIHJnYigyNTUgMjU1IDI1NSAvIDIwJSkgaW5zZXQsXFxuICAwIC0xcHggMCAwIHJnYigwIDAgMCAvIDIwJSkgaW5zZXQ7XFxuXFxuJHN0YXR1cy1tYXJnaW46IDAuNzVlbTtcXG5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcbi8vIEV4cG9ydHNcbmV4cG9ydCBkZWZhdWx0IF9fX0NTU19MT0FERVJfRVhQT1JUX19fO1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./src/components/tab_switcher/tab_switcher.scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./src/hocs/with_load_more/with_load_more.scss":
/*!****************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./src/hocs/with_load_more/with_load_more.scss ***!
\****************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".with-load-more-footer {\\n padding: 10px;\\n text-align: center;\\n border-top: 1px solid;\\n border-top-color: #222;\\n border-top-color: var(--border, #222);\\n}\\n.with-load-more-footer .error {\\n font-size: 1rem;\\n}\\n.with-load-more-footer a {\\n cursor: pointer;\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/hocs/with_load_more/with_load_more.scss\",\"webpack://./src/_variables.scss\"],\"names\":[],\"mappings\":\"AAGE;EACE,aAAA;EACA,kBAAA;EACA,qBAAA;EACA,sBCKe;EDJf,qCAAA;AAFJ;AAII;EACE,eAAA;AAFN;AAKI;EACE,eAAA;AAHN\",\"sourcesContent\":[\"@import \\\"../../variables\\\";\\n\\n.with-load-more {\\n &-footer {\\n padding: 10px;\\n text-align: center;\\n border-top: 1px solid;\\n border-top-color: $fallback--border;\\n border-top-color: var(--border, $fallback--border);\\n\\n .error {\\n font-size: 1rem;\\n }\\n\\n a {\\n cursor: pointer;\\n }\\n }\\n}\\n\",\"$main-color: #f58d2c;\\n$main-background: white;\\n$darkened-background: whitesmoke;\\n\\n$fallback--bg: #121a24;\\n$fallback--fg: #182230;\\n$fallback--faint: rgb(185 185 186 / 50%);\\n$fallback--text: #b9b9ba;\\n$fallback--link: #d8a070;\\n$fallback--icon: #666;\\n$fallback--lightBg: rgb(21 30 42);\\n$fallback--lightText: #b9b9ba;\\n$fallback--border: #222;\\n$fallback--cRed: #f00;\\n$fallback--cBlue: #0095ff;\\n$fallback--cGreen: #0fa00f;\\n$fallback--cOrange: orange;\\n\\n$fallback--alertError: rgb(211 16 20 / 50%);\\n$fallback--alertWarning: rgb(111 111 20 / 50%);\\n\\n$fallback--panelRadius: 10px;\\n$fallback--checkboxRadius: 2px;\\n$fallback--btnRadius: 4px;\\n$fallback--inputRadius: 4px;\\n$fallback--tooltipRadius: 5px;\\n$fallback--avatarRadius: 4px;\\n$fallback--avatarAltRadius: 10px;\\n$fallback--attachmentRadius: 10px;\\n$fallback--chatMessageRadius: 10px;\\n\\n$fallback--buttonShadow: 0 0 2px 0 rgb(0 0 0 / 100%),\\n 0 1px 0 0 rgb(255 255 255 / 20%) inset,\\n 0 -1px 0 0 rgb(0 0 0 / 20%) inset;\\n\\n$status-margin: 0.75em;\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL3NyYy9ob2NzL3dpdGhfbG9hZF9tb3JlL3dpdGhfbG9hZF9tb3JlLnNjc3MuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQTtBQUNnSDtBQUNqQjtBQUMvRiw4QkFBOEIsbUZBQTJCLENBQUMsNEZBQXFDO0FBQy9GO0FBQ0Esa0VBQWtFLGtCQUFrQix1QkFBdUIsMEJBQTBCLDJCQUEyQiwwQ0FBMEMsR0FBRyxpQ0FBaUMsb0JBQW9CLEdBQUcsNEJBQTRCLG9CQUFvQixHQUFHLE9BQU8sZ0pBQWdKLFVBQVUsV0FBVyxXQUFXLFdBQVcsV0FBVyxLQUFLLEtBQUssVUFBVSxLQUFLLEtBQUssVUFBVSxxREFBcUQscUJBQXFCLGNBQWMsb0JBQW9CLHlCQUF5Qiw0QkFBNEIsMENBQTBDLHlEQUF5RCxnQkFBZ0Isd0JBQXdCLE9BQU8sV0FBVyx3QkFBd0IsT0FBTyxLQUFLLEdBQUcsMEJBQTBCLDBCQUEwQixtQ0FBbUMsMkJBQTJCLHlCQUF5QiwyQ0FBMkMsMkJBQTJCLDJCQUEyQix3QkFBd0Isb0NBQW9DLGdDQUFnQywwQkFBMEIsd0JBQXdCLDRCQUE0Qiw2QkFBNkIsNkJBQTZCLGdEQUFnRCxpREFBaUQsaUNBQWlDLGlDQUFpQyw0QkFBNEIsOEJBQThCLGdDQUFnQywrQkFBK0IsbUNBQW1DLG9DQUFvQyxxQ0FBcUMsMElBQTBJLDJCQUEyQixxQkFBcUI7QUFDcDZEO0FBQ0EsaUVBQWUsdUJBQXVCLEVBQUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL2hvY3Mvd2l0aF9sb2FkX21vcmUvd2l0aF9sb2FkX21vcmUuc2Nzcz9lNmYxIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIEltcG9ydHNcbmltcG9ydCBfX19DU1NfTE9BREVSX0FQSV9TT1VSQ0VNQVBfSU1QT1JUX19fIGZyb20gXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvc291cmNlTWFwcy5qc1wiO1xuaW1wb3J0IF9fX0NTU19MT0FERVJfQVBJX0lNUE9SVF9fXyBmcm9tIFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvZGlzdC9ydW50aW1lL2FwaS5qc1wiO1xudmFyIF9fX0NTU19MT0FERVJfRVhQT1JUX19fID0gX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fKF9fX0NTU19MT0FERVJfQVBJX1NPVVJDRU1BUF9JTVBPUlRfX18pO1xuLy8gTW9kdWxlXG5fX19DU1NfTE9BREVSX0VYUE9SVF9fXy5wdXNoKFttb2R1bGUuaWQsIFwiLndpdGgtbG9hZC1tb3JlLWZvb3RlciB7XFxuICBwYWRkaW5nOiAxMHB4O1xcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkO1xcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzIyMjtcXG4gIGJvcmRlci10b3AtY29sb3I6IHZhcigtLWJvcmRlciwgIzIyMik7XFxufVxcbi53aXRoLWxvYWQtbW9yZS1mb290ZXIgLmVycm9yIHtcXG4gIGZvbnQtc2l6ZTogMXJlbTtcXG59XFxuLndpdGgtbG9hZC1tb3JlLWZvb3RlciBhIHtcXG4gIGN1cnNvcjogcG9pbnRlcjtcXG59XCIsIFwiXCIse1widmVyc2lvblwiOjMsXCJzb3VyY2VzXCI6W1wid2VicGFjazovLy4vc3JjL2hvY3Mvd2l0aF9sb2FkX21vcmUvd2l0aF9sb2FkX21vcmUuc2Nzc1wiLFwid2VicGFjazovLy4vc3JjL192YXJpYWJsZXMuc2Nzc1wiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiQUFHRTtFQUNFLGFBQUE7RUFDQSxrQkFBQTtFQUNBLHFCQUFBO0VBQ0Esc0JDS2U7RURKZixxQ0FBQTtBQUZKO0FBSUk7RUFDRSxlQUFBO0FBRk47QUFLSTtFQUNFLGVBQUE7QUFITlwiLFwic291cmNlc0NvbnRlbnRcIjpbXCJAaW1wb3J0IFxcXCIuLi8uLi92YXJpYWJsZXNcXFwiO1xcblxcbi53aXRoLWxvYWQtbW9yZSB7XFxuICAmLWZvb3RlciB7XFxuICAgIHBhZGRpbmc6IDEwcHg7XFxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkO1xcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkZmFsbGJhY2stLWJvcmRlcjtcXG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tYm9yZGVyLCAkZmFsbGJhY2stLWJvcmRlcik7XFxuXFxuICAgIC5lcnJvciB7XFxuICAgICAgZm9udC1zaXplOiAxcmVtO1xcbiAgICB9XFxuXFxuICAgIGEge1xcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIiRtYWluLWNvbG9yOiAjZjU4ZDJjO1xcbiRtYWluLWJhY2tncm91bmQ6IHdoaXRlO1xcbiRkYXJrZW5lZC1iYWNrZ3JvdW5kOiB3aGl0ZXNtb2tlO1xcblxcbiRmYWxsYmFjay0tYmc6ICMxMjFhMjQ7XFxuJGZhbGxiYWNrLS1mZzogIzE4MjIzMDtcXG4kZmFsbGJhY2stLWZhaW50OiByZ2IoMTg1IDE4NSAxODYgLyA1MCUpO1xcbiRmYWxsYmFjay0tdGV4dDogI2I5YjliYTtcXG4kZmFsbGJhY2stLWxpbms6ICNkOGEwNzA7XFxuJGZhbGxiYWNrLS1pY29uOiAjNjY2O1xcbiRmYWxsYmFjay0tbGlnaHRCZzogcmdiKDIxIDMwIDQyKTtcXG4kZmFsbGJhY2stLWxpZ2h0VGV4dDogI2I5YjliYTtcXG4kZmFsbGJhY2stLWJvcmRlcjogIzIyMjtcXG4kZmFsbGJhY2stLWNSZWQ6ICNmMDA7XFxuJGZhbGxiYWNrLS1jQmx1ZTogIzAwOTVmZjtcXG4kZmFsbGJhY2stLWNHcmVlbjogIzBmYTAwZjtcXG4kZmFsbGJhY2stLWNPcmFuZ2U6IG9yYW5nZTtcXG5cXG4kZmFsbGJhY2stLWFsZXJ0RXJyb3I6IHJnYigyMTEgMTYgMjAgLyA1MCUpO1xcbiRmYWxsYmFjay0tYWxlcnRXYXJuaW5nOiByZ2IoMTExIDExMSAyMCAvIDUwJSk7XFxuXFxuJGZhbGxiYWNrLS1wYW5lbFJhZGl1czogMTBweDtcXG4kZmFsbGJhY2stLWNoZWNrYm94UmFkaXVzOiAycHg7XFxuJGZhbGxiYWNrLS1idG5SYWRpdXM6IDRweDtcXG4kZmFsbGJhY2stLWlucHV0UmFkaXVzOiA0cHg7XFxuJGZhbGxiYWNrLS10b29sdGlwUmFkaXVzOiA1cHg7XFxuJGZhbGxiYWNrLS1hdmF0YXJSYWRpdXM6IDRweDtcXG4kZmFsbGJhY2stLWF2YXRhckFsdFJhZGl1czogMTBweDtcXG4kZmFsbGJhY2stLWF0dGFjaG1lbnRSYWRpdXM6IDEwcHg7XFxuJGZhbGxiYWNrLS1jaGF0TWVzc2FnZVJhZGl1czogMTBweDtcXG5cXG4kZmFsbGJhY2stLWJ1dHRvblNoYWRvdzogMCAwIDJweCAwIHJnYigwIDAgMCAvIDEwMCUpLFxcbiAgMCAxcHggMCAwIHJnYigyNTUgMjU1IDI1NSAvIDIwJSkgaW5zZXQsXFxuICAwIC0xcHggMCAwIHJnYigwIDAgMCAvIDIwJSkgaW5zZXQ7XFxuXFxuJHN0YXR1cy1tYXJnaW46IDAuNzVlbTtcXG5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcbi8vIEV4cG9ydHNcbmV4cG9ydCBkZWZhdWx0IF9fX0NTU19MT0FERVJfRVhQT1JUX19fO1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./src/hocs/with_load_more/with_load_more.scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/account_actions/account_actions.vue?vue&type=style&index=0&id=29ccb667&lang=scss":
/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/account_actions/account_actions.vue?vue&type=style&index=0&id=29ccb667&lang=scss ***!
\**************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".AccountActions .ellipsis-button {\\n width: 2.5em;\\n margin: -0.5em 0;\\n padding: 0.5em 0;\\n text-align: center;\\n}\\n.AccountActions .ellipsis-button:not(:hover) .icon {\\n color: #b9b9ba;\\n color: var(--lightText, #b9b9ba);\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/account_actions/account_actions.vue\"],\"names\":[],\"mappings\":\"AAIE;EACE,YAAA;EACA,gBAAA;EACA,gBAAA;EACA,kBAAA;AAHJ;AAKI;EACE,cAAA;EACA,gCAAA;AAHN\",\"sourcesContent\":[\"\\n@import \\\"../../variables\\\";\\n\\n.AccountActions {\\n .ellipsis-button {\\n width: 2.5em;\\n margin: -0.5em 0;\\n padding: 0.5em 0;\\n text-align: center;\\n\\n &:not(:hover) .icon {\\n color: $fallback--lightText;\\n color: var(--lightText, $fallback--lightText);\\n }\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2FjY291bnRfYWN0aW9ucy9hY2NvdW50X2FjdGlvbnMudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9MjljY2I2NjcmbGFuZz1zY3NzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7QUFDZ0g7QUFDakI7QUFDL0YsOEJBQThCLG1GQUEyQixDQUFDLDRGQUFxQztBQUMvRjtBQUNBLDRFQUE0RSxpQkFBaUIscUJBQXFCLHFCQUFxQix1QkFBdUIsR0FBRyxzREFBc0QsbUJBQW1CLHFDQUFxQyxHQUFHLE9BQU8scUhBQXFILFVBQVUsV0FBVyxXQUFXLFdBQVcsS0FBSyxLQUFLLFVBQVUsV0FBVyx1REFBdUQscUJBQXFCLHNCQUFzQixtQkFBbUIsdUJBQXVCLHVCQUF1Qix5QkFBeUIsNkJBQTZCLG9DQUFvQyxzREFBc0QsT0FBTyxLQUFLLEdBQUcscUJBQXFCO0FBQy95QjtBQUNBLGlFQUFlLHVCQUF1QixFQUFDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9jb21wb25lbnRzL2FjY291bnRfYWN0aW9ucy9hY2NvdW50X2FjdGlvbnMudnVlPzlkMGMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gSW1wb3J0c1xuaW1wb3J0IF9fX0NTU19MT0FERVJfQVBJX1NPVVJDRU1BUF9JTVBPUlRfX18gZnJvbSBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2Rpc3QvcnVudGltZS9zb3VyY2VNYXBzLmpzXCI7XG5pbXBvcnQgX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fIGZyb20gXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvYXBpLmpzXCI7XG52YXIgX19fQ1NTX0xPQURFUl9FWFBPUlRfX18gPSBfX19DU1NfTE9BREVSX0FQSV9JTVBPUlRfX18oX19fQ1NTX0xPQURFUl9BUElfU09VUkNFTUFQX0lNUE9SVF9fXyk7XG4vLyBNb2R1bGVcbl9fX0NTU19MT0FERVJfRVhQT1JUX19fLnB1c2goW21vZHVsZS5pZCwgXCIuQWNjb3VudEFjdGlvbnMgLmVsbGlwc2lzLWJ1dHRvbiB7XFxuICB3aWR0aDogMi41ZW07XFxuICBtYXJnaW46IC0wLjVlbSAwO1xcbiAgcGFkZGluZzogMC41ZW0gMDtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG59XFxuLkFjY291bnRBY3Rpb25zIC5lbGxpcHNpcy1idXR0b246bm90KDpob3ZlcikgLmljb24ge1xcbiAgY29sb3I6ICNiOWI5YmE7XFxuICBjb2xvcjogdmFyKC0tbGlnaHRUZXh0LCAjYjliOWJhKTtcXG59XCIsIFwiXCIse1widmVyc2lvblwiOjMsXCJzb3VyY2VzXCI6W1wid2VicGFjazovLy4vc3JjL2NvbXBvbmVudHMvYWNjb3VudF9hY3Rpb25zL2FjY291bnRfYWN0aW9ucy52dWVcIl0sXCJuYW1lc1wiOltdLFwibWFwcGluZ3NcIjpcIkFBSUU7RUFDRSxZQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQkFBQTtFQUNBLGtCQUFBO0FBSEo7QUFLSTtFQUNFLGNBQUE7RUFDQSxnQ0FBQTtBQUhOXCIsXCJzb3VyY2VzQ29udGVudFwiOltcIlxcbkBpbXBvcnQgXFxcIi4uLy4uL3ZhcmlhYmxlc1xcXCI7XFxuXFxuLkFjY291bnRBY3Rpb25zIHtcXG4gIC5lbGxpcHNpcy1idXR0b24ge1xcbiAgICB3aWR0aDogMi41ZW07XFxuICAgIG1hcmdpbjogLTAuNWVtIDA7XFxuICAgIHBhZGRpbmc6IDAuNWVtIDA7XFxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcXG5cXG4gICAgJjpub3QoOmhvdmVyKSAuaWNvbiB7XFxuICAgICAgY29sb3I6ICRmYWxsYmFjay0tbGlnaHRUZXh0O1xcbiAgICAgIGNvbG9yOiB2YXIoLS1saWdodFRleHQsICRmYWxsYmFjay0tbGlnaHRUZXh0KTtcXG4gICAgfVxcbiAgfVxcbn1cXG5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcbi8vIEV4cG9ydHNcbmV4cG9ydCBkZWZhdWx0IF9fX0NTU19MT0FERVJfRVhQT1JUX19fO1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/account_actions/account_actions.vue?vue&type=style&index=0&id=29ccb667&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/announcement/announcement.vue?vue&type=style&index=0&id=58dad5af&lang=scss":
/*!********************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/announcement/announcement.vue?vue&type=style&index=0&id=58dad5af&lang=scss ***!
\********************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".announcement {\\n border-bottom: 1px solid var(--border, #222);\\n border-radius: 0;\\n padding: var(--status-margin, 0.75em);\\n}\\n.announcement .heading,\\n.announcement .body {\\n margin-bottom: var(--status-margin, 0.75em);\\n}\\n.announcement .footer {\\n display: flex;\\n flex-direction: column;\\n}\\n.announcement .footer .times {\\n display: flex;\\n flex-direction: column;\\n}\\n.announcement .footer .actions {\\n display: flex;\\n flex-direction: row;\\n justify-content: space-evenly;\\n}\\n.announcement .footer .actions .btn {\\n flex: 1;\\n margin: 1em;\\n max-width: 10em;\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/announcement/announcement.vue\"],\"names\":[],\"mappings\":\"AAGA;EACE,4CAAA;EACA,gBAAA;EACA,qCAAA;AAFF;AAIE;;EAEE,2CAAA;AAFJ;AAKE;EACE,aAAA;EACA,sBAAA;AAHJ;AAKI;EACE,aAAA;EACA,sBAAA;AAHN;AAOE;EACE,aAAA;EACA,mBAAA;EACA,6BAAA;AALJ;AAOI;EACE,OAAA;EACA,WAAA;EACA,eAAA;AALN\",\"sourcesContent\":[\"\\n@import \\\"../../variables\\\";\\n\\n.announcement {\\n border-bottom: 1px solid var(--border, $fallback--border);\\n border-radius: 0;\\n padding: var(--status-margin, $status-margin);\\n\\n .heading,\\n .body {\\n margin-bottom: var(--status-margin, $status-margin);\\n }\\n\\n .footer {\\n display: flex;\\n flex-direction: column;\\n\\n .times {\\n display: flex;\\n flex-direction: column;\\n }\\n }\\n\\n .footer .actions {\\n display: flex;\\n flex-direction: row;\\n justify-content: space-evenly;\\n\\n .btn {\\n flex: 1;\\n margin: 1em;\\n max-width: 10em;\\n }\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2Fubm91bmNlbWVudC9hbm5vdW5jZW1lbnQudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9NThkYWQ1YWYmbGFuZz1zY3NzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7QUFDZ0g7QUFDakI7QUFDL0YsOEJBQThCLG1GQUEyQixDQUFDLDRGQUFxQztBQUMvRjtBQUNBLHlEQUF5RCxpREFBaUQscUJBQXFCLDBDQUEwQyxHQUFHLGdEQUFnRCxnREFBZ0QsR0FBRyx5QkFBeUIsa0JBQWtCLDJCQUEyQixHQUFHLGdDQUFnQyxrQkFBa0IsMkJBQTJCLEdBQUcsa0NBQWtDLGtCQUFrQix3QkFBd0Isa0NBQWtDLEdBQUcsdUNBQXVDLFlBQVksZ0JBQWdCLG9CQUFvQixHQUFHLE9BQU8sK0dBQStHLFdBQVcsV0FBVyxXQUFXLEtBQUssTUFBTSxXQUFXLEtBQUssS0FBSyxVQUFVLFdBQVcsS0FBSyxLQUFLLFVBQVUsV0FBVyxLQUFLLEtBQUssVUFBVSxXQUFXLFdBQVcsS0FBSyxLQUFLLFVBQVUsVUFBVSxVQUFVLHVEQUF1RCxtQkFBbUIsOERBQThELHFCQUFxQixrREFBa0QsMEJBQTBCLDBEQUEwRCxLQUFLLGVBQWUsb0JBQW9CLDZCQUE2QixnQkFBZ0Isc0JBQXNCLCtCQUErQixPQUFPLEtBQUssd0JBQXdCLG9CQUFvQiwwQkFBMEIsb0NBQW9DLGNBQWMsZ0JBQWdCLG9CQUFvQix3QkFBd0IsT0FBTyxLQUFLLEdBQUcscUJBQXFCO0FBQ2prRDtBQUNBLGlFQUFlLHVCQUF1QixFQUFDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9jb21wb25lbnRzL2Fubm91bmNlbWVudC9hbm5vdW5jZW1lbnQudnVlP2FkYjAiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gSW1wb3J0c1xuaW1wb3J0IF9fX0NTU19MT0FERVJfQVBJX1NPVVJDRU1BUF9JTVBPUlRfX18gZnJvbSBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2Rpc3QvcnVudGltZS9zb3VyY2VNYXBzLmpzXCI7XG5pbXBvcnQgX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fIGZyb20gXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvYXBpLmpzXCI7XG52YXIgX19fQ1NTX0xPQURFUl9FWFBPUlRfX18gPSBfX19DU1NfTE9BREVSX0FQSV9JTVBPUlRfX18oX19fQ1NTX0xPQURFUl9BUElfU09VUkNFTUFQX0lNUE9SVF9fXyk7XG4vLyBNb2R1bGVcbl9fX0NTU19MT0FERVJfRVhQT1JUX19fLnB1c2goW21vZHVsZS5pZCwgXCIuYW5ub3VuY2VtZW50IHtcXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXIsICMyMjIpO1xcbiAgYm9yZGVyLXJhZGl1czogMDtcXG4gIHBhZGRpbmc6IHZhcigtLXN0YXR1cy1tYXJnaW4sIDAuNzVlbSk7XFxufVxcbi5hbm5vdW5jZW1lbnQgLmhlYWRpbmcsXFxuLmFubm91bmNlbWVudCAuYm9keSB7XFxuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zdGF0dXMtbWFyZ2luLCAwLjc1ZW0pO1xcbn1cXG4uYW5ub3VuY2VtZW50IC5mb290ZXIge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxufVxcbi5hbm5vdW5jZW1lbnQgLmZvb3RlciAudGltZXMge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxufVxcbi5hbm5vdW5jZW1lbnQgLmZvb3RlciAuYWN0aW9ucyB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5O1xcbn1cXG4uYW5ub3VuY2VtZW50IC5mb290ZXIgLmFjdGlvbnMgLmJ0biB7XFxuICBmbGV4OiAxO1xcbiAgbWFyZ2luOiAxZW07XFxuICBtYXgtd2lkdGg6IDEwZW07XFxufVwiLCBcIlwiLHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIndlYnBhY2s6Ly8uL3NyYy9jb21wb25lbnRzL2Fubm91bmNlbWVudC9hbm5vdW5jZW1lbnQudnVlXCJdLFwibmFtZXNcIjpbXSxcIm1hcHBpbmdzXCI6XCJBQUdBO0VBQ0UsNENBQUE7RUFDQSxnQkFBQTtFQUNBLHFDQUFBO0FBRkY7QUFJRTs7RUFFRSwyQ0FBQTtBQUZKO0FBS0U7RUFDRSxhQUFBO0VBQ0Esc0JBQUE7QUFISjtBQUtJO0VBQ0UsYUFBQTtFQUNBLHNCQUFBO0FBSE47QUFPRTtFQUNFLGFBQUE7RUFDQSxtQkFBQTtFQUNBLDZCQUFBO0FBTEo7QUFPSTtFQUNFLE9BQUE7RUFDQSxXQUFBO0VBQ0EsZUFBQTtBQUxOXCIsXCJzb3VyY2VzQ29udGVudFwiOltcIlxcbkBpbXBvcnQgXFxcIi4uLy4uL3ZhcmlhYmxlc1xcXCI7XFxuXFxuLmFubm91bmNlbWVudCB7XFxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLCAkZmFsbGJhY2stLWJvcmRlcik7XFxuICBib3JkZXItcmFkaXVzOiAwO1xcbiAgcGFkZGluZzogdmFyKC0tc3RhdHVzLW1hcmdpbiwgJHN0YXR1cy1tYXJnaW4pO1xcblxcbiAgLmhlYWRpbmcsXFxuICAuYm9keSB7XFxuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXN0YXR1cy1tYXJnaW4sICRzdGF0dXMtbWFyZ2luKTtcXG4gIH1cXG5cXG4gIC5mb290ZXIge1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcblxcbiAgICAudGltZXMge1xcbiAgICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gICAgfVxcbiAgfVxcblxcbiAgLmZvb3RlciAuYWN0aW9ucyB7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XFxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5O1xcblxcbiAgICAuYnRuIHtcXG4gICAgICBmbGV4OiAxO1xcbiAgICAgIG1hcmdpbjogMWVtO1xcbiAgICAgIG1heC13aWR0aDogMTBlbTtcXG4gICAgfVxcbiAgfVxcbn1cXG5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcbi8vIEV4cG9ydHNcbmV4cG9ydCBkZWZhdWx0IF9fX0NTU19MT0FERVJfRVhQT1JUX19fO1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/announcement/announcement.vue?vue&type=style&index=0&id=58dad5af&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/announcement_editor/announcement_editor.vue?vue&type=style&index=0&id=87a5db4a&lang=scss":
/*!**********************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/announcement_editor/announcement_editor.vue?vue&type=style&index=0&id=87a5db4a&lang=scss ***!
\**********************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".announcement-editor {\\n display: flex;\\n align-items: stretch;\\n flex-direction: column;\\n}\\n.announcement-editor .announcement-metadata {\\n margin-top: 0.5em;\\n}\\n.announcement-editor .post-textarea {\\n resize: vertical;\\n height: 10em;\\n overflow: none;\\n box-sizing: content-box;\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/announcement_editor/announcement_editor.vue\"],\"names\":[],\"mappings\":\"AACA;EACE,aAAA;EACA,oBAAA;EACA,sBAAA;AAAF;AAEE;EACE,iBAAA;AAAJ;AAGE;EACE,gBAAA;EACA,YAAA;EACA,cAAA;EACA,uBAAA;AADJ\",\"sourcesContent\":[\"\\n.announcement-editor {\\n display: flex;\\n align-items: stretch;\\n flex-direction: column;\\n\\n .announcement-metadata {\\n margin-top: 0.5em;\\n }\\n\\n .post-textarea {\\n resize: vertical;\\n height: 10em;\\n overflow: none;\\n box-sizing: content-box;\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2Fubm91bmNlbWVudF9lZGl0b3IvYW5ub3VuY2VtZW50X2VkaXRvci52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD04N2E1ZGI0YSZsYW5nPXNjc3MuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQTtBQUNnSDtBQUNqQjtBQUMvRiw4QkFBOEIsbUZBQTJCLENBQUMsNEZBQXFDO0FBQy9GO0FBQ0EsZ0VBQWdFLGtCQUFrQix5QkFBeUIsMkJBQTJCLEdBQUcsK0NBQStDLHNCQUFzQixHQUFHLHVDQUF1QyxxQkFBcUIsaUJBQWlCLG1CQUFtQiw0QkFBNEIsR0FBRyxPQUFPLDZIQUE2SCxVQUFVLFdBQVcsV0FBVyxLQUFLLEtBQUssV0FBVyxLQUFLLEtBQUssV0FBVyxVQUFVLFVBQVUsV0FBVyxpREFBaUQsa0JBQWtCLHlCQUF5QiwyQkFBMkIsOEJBQThCLHdCQUF3QixLQUFLLHNCQUFzQix1QkFBdUIsbUJBQW1CLHFCQUFxQiw4QkFBOEIsS0FBSyxHQUFHLHFCQUFxQjtBQUMvM0I7QUFDQSxpRUFBZSx1QkFBdUIsRUFBQyIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvY29tcG9uZW50cy9hbm5vdW5jZW1lbnRfZWRpdG9yL2Fubm91bmNlbWVudF9lZGl0b3IudnVlPzg5YTciXSwic291cmNlc0NvbnRlbnQiOlsiLy8gSW1wb3J0c1xuaW1wb3J0IF9fX0NTU19MT0FERVJfQVBJX1NPVVJDRU1BUF9JTVBPUlRfX18gZnJvbSBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2Rpc3QvcnVudGltZS9zb3VyY2VNYXBzLmpzXCI7XG5pbXBvcnQgX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fIGZyb20gXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvYXBpLmpzXCI7XG52YXIgX19fQ1NTX0xPQURFUl9FWFBPUlRfX18gPSBfX19DU1NfTE9BREVSX0FQSV9JTVBPUlRfX18oX19fQ1NTX0xPQURFUl9BUElfU09VUkNFTUFQX0lNUE9SVF9fXyk7XG4vLyBNb2R1bGVcbl9fX0NTU19MT0FERVJfRVhQT1JUX19fLnB1c2goW21vZHVsZS5pZCwgXCIuYW5ub3VuY2VtZW50LWVkaXRvciB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbn1cXG4uYW5ub3VuY2VtZW50LWVkaXRvciAuYW5ub3VuY2VtZW50LW1ldGFkYXRhIHtcXG4gIG1hcmdpbi10b3A6IDAuNWVtO1xcbn1cXG4uYW5ub3VuY2VtZW50LWVkaXRvciAucG9zdC10ZXh0YXJlYSB7XFxuICByZXNpemU6IHZlcnRpY2FsO1xcbiAgaGVpZ2h0OiAxMGVtO1xcbiAgb3ZlcmZsb3c6IG5vbmU7XFxuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcXG59XCIsIFwiXCIse1widmVyc2lvblwiOjMsXCJzb3VyY2VzXCI6W1wid2VicGFjazovLy4vc3JjL2NvbXBvbmVudHMvYW5ub3VuY2VtZW50X2VkaXRvci9hbm5vdW5jZW1lbnRfZWRpdG9yLnZ1ZVwiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiQUFDQTtFQUNFLGFBQUE7RUFDQSxvQkFBQTtFQUNBLHNCQUFBO0FBQUY7QUFFRTtFQUNFLGlCQUFBO0FBQUo7QUFHRTtFQUNFLGdCQUFBO0VBQ0EsWUFBQTtFQUNBLGNBQUE7RUFDQSx1QkFBQTtBQURKXCIsXCJzb3VyY2VzQ29udGVudFwiOltcIlxcbi5hbm5vdW5jZW1lbnQtZWRpdG9yIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuXFxuICAuYW5ub3VuY2VtZW50LW1ldGFkYXRhIHtcXG4gICAgbWFyZ2luLXRvcDogMC41ZW07XFxuICB9XFxuXFxuICAucG9zdC10ZXh0YXJlYSB7XFxuICAgIHJlc2l6ZTogdmVydGljYWw7XFxuICAgIGhlaWdodDogMTBlbTtcXG4gICAgb3ZlcmZsb3c6IG5vbmU7XFxuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xcbiAgfVxcbn1cXG5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcbi8vIEV4cG9ydHNcbmV4cG9ydCBkZWZhdWx0IF9fX0NTU19MT0FERVJfRVhQT1JUX19fO1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/announcement_editor/announcement_editor.vue?vue&type=style&index=0&id=87a5db4a&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/announcements_page/announcements_page.vue?vue&type=style&index=0&id=7909efcf&lang=scss":
/*!********************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/announcements_page/announcements_page.vue?vue&type=style&index=0&id=7909efcf&lang=scss ***!
\********************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".announcements-page .post-form {\\n padding: var(--status-margin, 0.75em);\\n}\\n.announcements-page .post-form .heading,\\n.announcements-page .post-form .body {\\n margin-bottom: var(--status-margin, 0.75em);\\n}\\n.announcements-page .post-form .post-button {\\n min-width: 10em;\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/announcements_page/announcements_page.vue\"],\"names\":[],\"mappings\":\"AAIE;EACE,qCAAA;AAHJ;AAKI;;EAEE,2CAAA;AAHN;AAMI;EACE,eAAA;AAJN\",\"sourcesContent\":[\"\\n@import \\\"../../variables\\\";\\n\\n.announcements-page {\\n .post-form {\\n padding: var(--status-margin, $status-margin);\\n\\n .heading,\\n .body {\\n margin-bottom: var(--status-margin, $status-margin);\\n }\\n\\n .post-button {\\n min-width: 10em;\\n }\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2Fubm91bmNlbWVudHNfcGFnZS9hbm5vdW5jZW1lbnRzX3BhZ2UudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9NzkwOWVmY2YmbGFuZz1zY3NzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7QUFDZ0g7QUFDakI7QUFDL0YsOEJBQThCLG1GQUEyQixDQUFDLDRGQUFxQztBQUMvRjtBQUNBLDBFQUEwRSwwQ0FBMEMsR0FBRyxrRkFBa0YsZ0RBQWdELEdBQUcsK0NBQStDLG9CQUFvQixHQUFHLE9BQU8sMkhBQTJILFdBQVcsS0FBSyxNQUFNLFdBQVcsS0FBSyxLQUFLLFVBQVUsdURBQXVELHlCQUF5QixnQkFBZ0Isb0RBQW9ELDhCQUE4Qiw0REFBNEQsT0FBTyxzQkFBc0Isd0JBQXdCLE9BQU8sS0FBSyxHQUFHLHFCQUFxQjtBQUNoMEI7QUFDQSxpRUFBZSx1QkFBdUIsRUFBQyIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvY29tcG9uZW50cy9hbm5vdW5jZW1lbnRzX3BhZ2UvYW5ub3VuY2VtZW50c19wYWdlLnZ1ZT8yN2I4Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIEltcG9ydHNcbmltcG9ydCBfX19DU1NfTE9BREVSX0FQSV9TT1VSQ0VNQVBfSU1QT1JUX19fIGZyb20gXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvc291cmNlTWFwcy5qc1wiO1xuaW1wb3J0IF9fX0NTU19MT0FERVJfQVBJX0lNUE9SVF9fXyBmcm9tIFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvZGlzdC9ydW50aW1lL2FwaS5qc1wiO1xudmFyIF9fX0NTU19MT0FERVJfRVhQT1JUX19fID0gX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fKF9fX0NTU19MT0FERVJfQVBJX1NPVVJDRU1BUF9JTVBPUlRfX18pO1xuLy8gTW9kdWxlXG5fX19DU1NfTE9BREVSX0VYUE9SVF9fXy5wdXNoKFttb2R1bGUuaWQsIFwiLmFubm91bmNlbWVudHMtcGFnZSAucG9zdC1mb3JtIHtcXG4gIHBhZGRpbmc6IHZhcigtLXN0YXR1cy1tYXJnaW4sIDAuNzVlbSk7XFxufVxcbi5hbm5vdW5jZW1lbnRzLXBhZ2UgLnBvc3QtZm9ybSAuaGVhZGluZyxcXG4uYW5ub3VuY2VtZW50cy1wYWdlIC5wb3N0LWZvcm0gLmJvZHkge1xcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3RhdHVzLW1hcmdpbiwgMC43NWVtKTtcXG59XFxuLmFubm91bmNlbWVudHMtcGFnZSAucG9zdC1mb3JtIC5wb3N0LWJ1dHRvbiB7XFxuICBtaW4td2lkdGg6IDEwZW07XFxufVwiLCBcIlwiLHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIndlYnBhY2s6Ly8uL3NyYy9jb21wb25lbnRzL2Fubm91bmNlbWVudHNfcGFnZS9hbm5vdW5jZW1lbnRzX3BhZ2UudnVlXCJdLFwibmFtZXNcIjpbXSxcIm1hcHBpbmdzXCI6XCJBQUlFO0VBQ0UscUNBQUE7QUFISjtBQUtJOztFQUVFLDJDQUFBO0FBSE47QUFNSTtFQUNFLGVBQUE7QUFKTlwiLFwic291cmNlc0NvbnRlbnRcIjpbXCJcXG5AaW1wb3J0IFxcXCIuLi8uLi92YXJpYWJsZXNcXFwiO1xcblxcbi5hbm5vdW5jZW1lbnRzLXBhZ2Uge1xcbiAgLnBvc3QtZm9ybSB7XFxuICAgIHBhZGRpbmc6IHZhcigtLXN0YXR1cy1tYXJnaW4sICRzdGF0dXMtbWFyZ2luKTtcXG5cXG4gICAgLmhlYWRpbmcsXFxuICAgIC5ib2R5IHtcXG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zdGF0dXMtbWFyZ2luLCAkc3RhdHVzLW1hcmdpbik7XFxuICAgIH1cXG5cXG4gICAgLnBvc3QtYnV0dG9uIHtcXG4gICAgICBtaW4td2lkdGg6IDEwZW07XFxuICAgIH1cXG4gIH1cXG59XFxuXCJdLFwic291cmNlUm9vdFwiOlwiXCJ9XSk7XG4vLyBFeHBvcnRzXG5leHBvcnQgZGVmYXVsdCBfX19DU1NfTE9BREVSX0VYUE9SVF9fXztcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/announcements_page/announcements_page.vue?vue&type=style&index=0&id=7909efcf&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/avatar_list/avatar_list.vue?vue&type=style&index=0&id=c5e248ce&lang=scss":
/*!******************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/avatar_list/avatar_list.vue?vue&type=style&index=0&id=c5e248ce&lang=scss ***!
\******************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".avatars {\\n display: flex;\\n margin: 0;\\n padding: 0;\\n flex-wrap: wrap;\\n height: 24px;\\n}\\n.avatars .avatars-item {\\n margin: 0 0 5px 5px;\\n}\\n.avatars .avatars-item:first-child {\\n padding-left: 5px;\\n}\\n.avatars .avatars-item .avatar-small {\\n border-radius: 10px;\\n border-radius: var(--avatarAltRadius, 10px);\\n height: 24px;\\n width: 24px;\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/avatar_list/avatar_list.vue\",\"webpack://./src/_variables.scss\"],\"names\":[],\"mappings\":\"AAGA;EACE,aAAA;EACA,SAAA;EACA,UAAA;EAGA,eAAA;EACA,YAAA;AAJF;AAME;EACE,mBAAA;AAJJ;AAMI;EACE,iBAAA;AAJN;AAOI;EACE,mBCOsB;EDNtB,2CAAA;EACA,YAAA;EACA,WAAA;AALN\",\"sourcesContent\":[\"\\n@import \\\"../../variables\\\";\\n\\n.avatars {\\n display: flex;\\n margin: 0;\\n padding: 0;\\n\\n // For hiding overflowing elements\\n flex-wrap: wrap;\\n height: 24px;\\n\\n .avatars-item {\\n margin: 0 0 5px 5px;\\n\\n &:first-child {\\n padding-left: 5px;\\n }\\n\\n .avatar-small {\\n border-radius: $fallback--avatarAltRadius;\\n border-radius: var(--avatarAltRadius, $fallback--avatarAltRadius);\\n height: 24px;\\n width: 24px;\\n }\\n }\\n}\\n\",\"$main-color: #f58d2c;\\n$main-background: white;\\n$darkened-background: whitesmoke;\\n\\n$fallback--bg: #121a24;\\n$fallback--fg: #182230;\\n$fallback--faint: rgb(185 185 186 / 50%);\\n$fallback--text: #b9b9ba;\\n$fallback--link: #d8a070;\\n$fallback--icon: #666;\\n$fallback--lightBg: rgb(21 30 42);\\n$fallback--lightText: #b9b9ba;\\n$fallback--border: #222;\\n$fallback--cRed: #f00;\\n$fallback--cBlue: #0095ff;\\n$fallback--cGreen: #0fa00f;\\n$fallback--cOrange: orange;\\n\\n$fallback--alertError: rgb(211 16 20 / 50%);\\n$fallback--alertWarning: rgb(111 111 20 / 50%);\\n\\n$fallback--panelRadius: 10px;\\n$fallback--checkboxRadius: 2px;\\n$fallback--btnRadius: 4px;\\n$fallback--inputRadius: 4px;\\n$fallback--tooltipRadius: 5px;\\n$fallback--avatarRadius: 4px;\\n$fallback--avatarAltRadius: 10px;\\n$fallback--attachmentRadius: 10px;\\n$fallback--chatMessageRadius: 10px;\\n\\n$fallback--buttonShadow: 0 0 2px 0 rgb(0 0 0 / 100%),\\n 0 1px 0 0 rgb(255 255 255 / 20%) inset,\\n 0 -1px 0 0 rgb(0 0 0 / 20%) inset;\\n\\n$status-margin: 0.75em;\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2F2YXRhcl9saXN0L2F2YXRhcl9saXN0LnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPWM1ZTI0OGNlJmxhbmc9c2Nzcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBO0FBQ2dIO0FBQ2pCO0FBQy9GLDhCQUE4QixtRkFBMkIsQ0FBQyw0RkFBcUM7QUFDL0Y7QUFDQSxvREFBb0Qsa0JBQWtCLGNBQWMsZUFBZSxvQkFBb0IsaUJBQWlCLEdBQUcsMEJBQTBCLHdCQUF3QixHQUFHLHNDQUFzQyxzQkFBc0IsR0FBRyx3Q0FBd0Msd0JBQXdCLGdEQUFnRCxpQkFBaUIsZ0JBQWdCLEdBQUcsT0FBTywrSUFBK0ksVUFBVSxVQUFVLFVBQVUsVUFBVSxVQUFVLEtBQUssS0FBSyxXQUFXLEtBQUssS0FBSyxXQUFXLEtBQUssS0FBSyxZQUFZLFlBQVksVUFBVSxVQUFVLHVEQUF1RCxjQUFjLGtCQUFrQixjQUFjLGVBQWUsNERBQTRELGlCQUFpQixxQkFBcUIsMEJBQTBCLHVCQUF1QiwwQkFBMEIsT0FBTyx1QkFBdUIsa0RBQWtELDBFQUEwRSxxQkFBcUIsb0JBQW9CLE9BQU8sS0FBSyxHQUFHLDBCQUEwQiwwQkFBMEIsbUNBQW1DLDJCQUEyQix5QkFBeUIsMkNBQTJDLDJCQUEyQiwyQkFBMkIsd0JBQXdCLG9DQUFvQyxnQ0FBZ0MsMEJBQTBCLHdCQUF3Qiw0QkFBNEIsNkJBQTZCLDZCQUE2QixnREFBZ0QsaURBQWlELGlDQUFpQyxpQ0FBaUMsNEJBQTRCLDhCQUE4QixnQ0FBZ0MsK0JBQStCLG1DQUFtQyxvQ0FBb0MscUNBQXFDLDBJQUEwSSwyQkFBMkIscUJBQXFCO0FBQ2hzRTtBQUNBLGlFQUFlLHVCQUF1QixFQUFDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9jb21wb25lbnRzL2F2YXRhcl9saXN0L2F2YXRhcl9saXN0LnZ1ZT82N2I2Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIEltcG9ydHNcbmltcG9ydCBfX19DU1NfTE9BREVSX0FQSV9TT1VSQ0VNQVBfSU1QT1JUX19fIGZyb20gXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvc291cmNlTWFwcy5qc1wiO1xuaW1wb3J0IF9fX0NTU19MT0FERVJfQVBJX0lNUE9SVF9fXyBmcm9tIFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvZGlzdC9ydW50aW1lL2FwaS5qc1wiO1xudmFyIF9fX0NTU19MT0FERVJfRVhQT1JUX19fID0gX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fKF9fX0NTU19MT0FERVJfQVBJX1NPVVJDRU1BUF9JTVBPUlRfX18pO1xuLy8gTW9kdWxlXG5fX19DU1NfTE9BREVSX0VYUE9SVF9fXy5wdXNoKFttb2R1bGUuaWQsIFwiLmF2YXRhcnMge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIG1hcmdpbjogMDtcXG4gIHBhZGRpbmc6IDA7XFxuICBmbGV4LXdyYXA6IHdyYXA7XFxuICBoZWlnaHQ6IDI0cHg7XFxufVxcbi5hdmF0YXJzIC5hdmF0YXJzLWl0ZW0ge1xcbiAgbWFyZ2luOiAwIDAgNXB4IDVweDtcXG59XFxuLmF2YXRhcnMgLmF2YXRhcnMtaXRlbTpmaXJzdC1jaGlsZCB7XFxuICBwYWRkaW5nLWxlZnQ6IDVweDtcXG59XFxuLmF2YXRhcnMgLmF2YXRhcnMtaXRlbSAuYXZhdGFyLXNtYWxsIHtcXG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XFxuICBib3JkZXItcmFkaXVzOiB2YXIoLS1hdmF0YXJBbHRSYWRpdXMsIDEwcHgpO1xcbiAgaGVpZ2h0OiAyNHB4O1xcbiAgd2lkdGg6IDI0cHg7XFxufVwiLCBcIlwiLHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIndlYnBhY2s6Ly8uL3NyYy9jb21wb25lbnRzL2F2YXRhcl9saXN0L2F2YXRhcl9saXN0LnZ1ZVwiLFwid2VicGFjazovLy4vc3JjL192YXJpYWJsZXMuc2Nzc1wiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiQUFHQTtFQUNFLGFBQUE7RUFDQSxTQUFBO0VBQ0EsVUFBQTtFQUdBLGVBQUE7RUFDQSxZQUFBO0FBSkY7QUFNRTtFQUNFLG1CQUFBO0FBSko7QUFNSTtFQUNFLGlCQUFBO0FBSk47QUFPSTtFQUNFLG1CQ09zQjtFRE50QiwyQ0FBQTtFQUNBLFlBQUE7RUFDQSxXQUFBO0FBTE5cIixcInNvdXJjZXNDb250ZW50XCI6W1wiXFxuQGltcG9ydCBcXFwiLi4vLi4vdmFyaWFibGVzXFxcIjtcXG5cXG4uYXZhdGFycyB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgbWFyZ2luOiAwO1xcbiAgcGFkZGluZzogMDtcXG5cXG4gIC8vIEZvciBoaWRpbmcgb3ZlcmZsb3dpbmcgZWxlbWVudHNcXG4gIGZsZXgtd3JhcDogd3JhcDtcXG4gIGhlaWdodDogMjRweDtcXG5cXG4gIC5hdmF0YXJzLWl0ZW0ge1xcbiAgICBtYXJnaW46IDAgMCA1cHggNXB4O1xcblxcbiAgICAmOmZpcnN0LWNoaWxkIHtcXG4gICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcXG4gICAgfVxcblxcbiAgICAuYXZhdGFyLXNtYWxsIHtcXG4gICAgICBib3JkZXItcmFkaXVzOiAkZmFsbGJhY2stLWF2YXRhckFsdFJhZGl1cztcXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1hdmF0YXJBbHRSYWRpdXMsICRmYWxsYmFjay0tYXZhdGFyQWx0UmFkaXVzKTtcXG4gICAgICBoZWlnaHQ6IDI0cHg7XFxuICAgICAgd2lkdGg6IDI0cHg7XFxuICAgIH1cXG4gIH1cXG59XFxuXCIsXCIkbWFpbi1jb2xvcjogI2Y1OGQyYztcXG4kbWFpbi1iYWNrZ3JvdW5kOiB3aGl0ZTtcXG4kZGFya2VuZWQtYmFja2dyb3VuZDogd2hpdGVzbW9rZTtcXG5cXG4kZmFsbGJhY2stLWJnOiAjMTIxYTI0O1xcbiRmYWxsYmFjay0tZmc6ICMxODIyMzA7XFxuJGZhbGxiYWNrLS1mYWludDogcmdiKDE4NSAxODUgMTg2IC8gNTAlKTtcXG4kZmFsbGJhY2stLXRleHQ6ICNiOWI5YmE7XFxuJGZhbGxiYWNrLS1saW5rOiAjZDhhMDcwO1xcbiRmYWxsYmFjay0taWNvbjogIzY2NjtcXG4kZmFsbGJhY2stLWxpZ2h0Qmc6IHJnYigyMSAzMCA0Mik7XFxuJGZhbGxiYWNrLS1saWdodFRleHQ6ICNiOWI5YmE7XFxuJGZhbGxiYWNrLS1ib3JkZXI6ICMyMjI7XFxuJGZhbGxiYWNrLS1jUmVkOiAjZjAwO1xcbiRmYWxsYmFjay0tY0JsdWU6ICMwMDk1ZmY7XFxuJGZhbGxiYWNrLS1jR3JlZW46ICMwZmEwMGY7XFxuJGZhbGxiYWNrLS1jT3JhbmdlOiBvcmFuZ2U7XFxuXFxuJGZhbGxiYWNrLS1hbGVydEVycm9yOiByZ2IoMjExIDE2IDIwIC8gNTAlKTtcXG4kZmFsbGJhY2stLWFsZXJ0V2FybmluZzogcmdiKDExMSAxMTEgMjAgLyA1MCUpO1xcblxcbiRmYWxsYmFjay0tcGFuZWxSYWRpdXM6IDEwcHg7XFxuJGZhbGxiYWNrLS1jaGVja2JveFJhZGl1czogMnB4O1xcbiRmYWxsYmFjay0tYnRuUmFkaXVzOiA0cHg7XFxuJGZhbGxiYWNrLS1pbnB1dFJhZGl1czogNHB4O1xcbiRmYWxsYmFjay0tdG9vbHRpcFJhZGl1czogNXB4O1xcbiRmYWxsYmFjay0tYXZhdGFyUmFkaXVzOiA0cHg7XFxuJGZhbGxiYWNrLS1hdmF0YXJBbHRSYWRpdXM6IDEwcHg7XFxuJGZhbGxiYWNrLS1hdHRhY2htZW50UmFkaXVzOiAxMHB4O1xcbiRmYWxsYmFjay0tY2hhdE1lc3NhZ2VSYWRpdXM6IDEwcHg7XFxuXFxuJGZhbGxiYWNrLS1idXR0b25TaGFkb3c6IDAgMCAycHggMCByZ2IoMCAwIDAgLyAxMDAlKSxcXG4gIDAgMXB4IDAgMCByZ2IoMjU1IDI1NSAyNTUgLyAyMCUpIGluc2V0LFxcbiAgMCAtMXB4IDAgMCByZ2IoMCAwIDAgLyAyMCUpIGluc2V0O1xcblxcbiRzdGF0dXMtbWFyZ2luOiAwLjc1ZW07XFxuXCJdLFwic291cmNlUm9vdFwiOlwiXCJ9XSk7XG4vLyBFeHBvcnRzXG5leHBvcnQgZGVmYXVsdCBfX19DU1NfTE9BREVSX0VYUE9SVF9fXztcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/avatar_list/avatar_list.vue?vue&type=style&index=0&id=c5e248ce&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/basic_user_card/basic_user_card.vue?vue&type=style&index=0&id=132dc612&lang=scss":
/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/basic_user_card/basic_user_card.vue?vue&type=style&index=0&id=132dc612&lang=scss ***!
\**************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".basic-user-card {\\n display: flex;\\n flex: 1 0;\\n margin: 0;\\n padding: 0.6em 1em;\\n --emoji-size: 14px;\\n}\\n.basic-user-card-collapsed-content {\\n margin-left: 0.7em;\\n text-align: left;\\n flex: 1;\\n min-width: 0;\\n}\\n.basic-user-card-user-name img {\\n -o-object-fit: contain;\\n object-fit: contain;\\n height: 16px;\\n width: 16px;\\n vertical-align: middle;\\n}\\n.basic-user-card-user-name-value, .basic-user-card-screen-name {\\n display: inline-block;\\n max-width: 100%;\\n overflow: hidden;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n}\\n.basic-user-card-expanded-content {\\n flex: 1;\\n margin-left: 0.7em;\\n min-width: 0;\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/basic_user_card/basic_user_card.vue\"],\"names\":[],\"mappings\":\"AACA;EACE,aAAA;EACA,SAAA;EACA,SAAA;EACA,kBAAA;EAEA,kBAAA;AADF;AAGE;EACE,kBAAA;EACA,gBAAA;EACA,OAAA;EACA,YAAA;AADJ;AAKI;EACE,sBAAA;KAAA,mBAAA;EACA,YAAA;EACA,WAAA;EACA,sBAAA;AAHN;AAOE;EAEE,qBAAA;EACA,eAAA;EACA,gBAAA;EACA,mBAAA;EACA,uBAAA;AANJ;AASE;EACE,OAAA;EACA,kBAAA;EACA,YAAA;AAPJ\",\"sourcesContent\":[\"\\n.basic-user-card {\\n display: flex;\\n flex: 1 0;\\n margin: 0;\\n padding: 0.6em 1em;\\n\\n --emoji-size: 14px;\\n\\n &-collapsed-content {\\n margin-left: 0.7em;\\n text-align: left;\\n flex: 1;\\n min-width: 0;\\n }\\n\\n &-user-name {\\n img {\\n object-fit: contain;\\n height: 16px;\\n width: 16px;\\n vertical-align: middle;\\n }\\n }\\n\\n &-user-name-value,\\n &-screen-name {\\n display: inline-block;\\n max-width: 100%;\\n overflow: hidden;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n }\\n\\n &-expanded-content {\\n flex: 1;\\n margin-left: 0.7em;\\n min-width: 0;\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2Jhc2ljX3VzZXJfY2FyZC9iYXNpY191c2VyX2NhcmQudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9MTMyZGM2MTImbGFuZz1zY3NzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7QUFDZ0g7QUFDakI7QUFDL0YsOEJBQThCLG1GQUEyQixDQUFDLDRGQUFxQztBQUMvRjtBQUNBLDREQUE0RCxrQkFBa0IsY0FBYyxjQUFjLHVCQUF1Qix1QkFBdUIsR0FBRyxzQ0FBc0MsdUJBQXVCLHFCQUFxQixZQUFZLGlCQUFpQixHQUFHLGtDQUFrQywyQkFBMkIsMkJBQTJCLGlCQUFpQixnQkFBZ0IsMkJBQTJCLEdBQUcsa0VBQWtFLDBCQUEwQixvQkFBb0IscUJBQXFCLHdCQUF3Qiw0QkFBNEIsR0FBRyxxQ0FBcUMsWUFBWSx1QkFBdUIsaUJBQWlCLEdBQUcsT0FBTyxxSEFBcUgsVUFBVSxVQUFVLFVBQVUsV0FBVyxXQUFXLEtBQUssS0FBSyxXQUFXLFdBQVcsVUFBVSxVQUFVLEtBQUssS0FBSyxXQUFXLFdBQVcsVUFBVSxVQUFVLFdBQVcsS0FBSyxLQUFLLFdBQVcsVUFBVSxXQUFXLFdBQVcsV0FBVyxLQUFLLEtBQUssVUFBVSxXQUFXLFVBQVUsNkNBQTZDLGtCQUFrQixjQUFjLGNBQWMsdUJBQXVCLHlCQUF5QiwyQkFBMkIseUJBQXlCLHVCQUF1QixjQUFjLG1CQUFtQixLQUFLLG1CQUFtQixXQUFXLDRCQUE0QixxQkFBcUIsb0JBQW9CLCtCQUErQixPQUFPLEtBQUssMkNBQTJDLDRCQUE0QixzQkFBc0IsdUJBQXVCLDBCQUEwQiw4QkFBOEIsS0FBSywwQkFBMEIsY0FBYyx5QkFBeUIsbUJBQW1CLEtBQUssR0FBRyxxQkFBcUI7QUFDcHZEO0FBQ0EsaUVBQWUsdUJBQXVCLEVBQUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL2NvbXBvbmVudHMvYmFzaWNfdXNlcl9jYXJkL2Jhc2ljX3VzZXJfY2FyZC52dWU/Nzc2YSJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBJbXBvcnRzXG5pbXBvcnQgX19fQ1NTX0xPQURFUl9BUElfU09VUkNFTUFQX0lNUE9SVF9fXyBmcm9tIFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvZGlzdC9ydW50aW1lL3NvdXJjZU1hcHMuanNcIjtcbmltcG9ydCBfX19DU1NfTE9BREVSX0FQSV9JTVBPUlRfX18gZnJvbSBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2Rpc3QvcnVudGltZS9hcGkuanNcIjtcbnZhciBfX19DU1NfTE9BREVSX0VYUE9SVF9fXyA9IF9fX0NTU19MT0FERVJfQVBJX0lNUE9SVF9fXyhfX19DU1NfTE9BREVSX0FQSV9TT1VSQ0VNQVBfSU1QT1JUX19fKTtcbi8vIE1vZHVsZVxuX19fQ1NTX0xPQURFUl9FWFBPUlRfX18ucHVzaChbbW9kdWxlLmlkLCBcIi5iYXNpYy11c2VyLWNhcmQge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXg6IDEgMDtcXG4gIG1hcmdpbjogMDtcXG4gIHBhZGRpbmc6IDAuNmVtIDFlbTtcXG4gIC0tZW1vamktc2l6ZTogMTRweDtcXG59XFxuLmJhc2ljLXVzZXItY2FyZC1jb2xsYXBzZWQtY29udGVudCB7XFxuICBtYXJnaW4tbGVmdDogMC43ZW07XFxuICB0ZXh0LWFsaWduOiBsZWZ0O1xcbiAgZmxleDogMTtcXG4gIG1pbi13aWR0aDogMDtcXG59XFxuLmJhc2ljLXVzZXItY2FyZC11c2VyLW5hbWUgaW1nIHtcXG4gIC1vLW9iamVjdC1maXQ6IGNvbnRhaW47XFxuICAgICBvYmplY3QtZml0OiBjb250YWluO1xcbiAgaGVpZ2h0OiAxNnB4O1xcbiAgd2lkdGg6IDE2cHg7XFxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xcbn1cXG4uYmFzaWMtdXNlci1jYXJkLXVzZXItbmFtZS12YWx1ZSwgLmJhc2ljLXVzZXItY2FyZC1zY3JlZW4tbmFtZSB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICBtYXgtd2lkdGg6IDEwMCU7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcXG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xcbn1cXG4uYmFzaWMtdXNlci1jYXJkLWV4cGFuZGVkLWNvbnRlbnQge1xcbiAgZmxleDogMTtcXG4gIG1hcmdpbi1sZWZ0OiAwLjdlbTtcXG4gIG1pbi13aWR0aDogMDtcXG59XCIsIFwiXCIse1widmVyc2lvblwiOjMsXCJzb3VyY2VzXCI6W1wid2VicGFjazovLy4vc3JjL2NvbXBvbmVudHMvYmFzaWNfdXNlcl9jYXJkL2Jhc2ljX3VzZXJfY2FyZC52dWVcIl0sXCJuYW1lc1wiOltdLFwibWFwcGluZ3NcIjpcIkFBQ0E7RUFDRSxhQUFBO0VBQ0EsU0FBQTtFQUNBLFNBQUE7RUFDQSxrQkFBQTtFQUVBLGtCQUFBO0FBREY7QUFHRTtFQUNFLGtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxPQUFBO0VBQ0EsWUFBQTtBQURKO0FBS0k7RUFDRSxzQkFBQTtLQUFBLG1CQUFBO0VBQ0EsWUFBQTtFQUNBLFdBQUE7RUFDQSxzQkFBQTtBQUhOO0FBT0U7RUFFRSxxQkFBQTtFQUNBLGVBQUE7RUFDQSxnQkFBQTtFQUNBLG1CQUFBO0VBQ0EsdUJBQUE7QUFOSjtBQVNFO0VBQ0UsT0FBQTtFQUNBLGtCQUFBO0VBQ0EsWUFBQTtBQVBKXCIsXCJzb3VyY2VzQ29udGVudFwiOltcIlxcbi5iYXNpYy11c2VyLWNhcmQge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXg6IDEgMDtcXG4gIG1hcmdpbjogMDtcXG4gIHBhZGRpbmc6IDAuNmVtIDFlbTtcXG5cXG4gIC0tZW1vamktc2l6ZTogMTRweDtcXG5cXG4gICYtY29sbGFwc2VkLWNvbnRlbnQge1xcbiAgICBtYXJnaW4tbGVmdDogMC43ZW07XFxuICAgIHRleHQtYWxpZ246IGxlZnQ7XFxuICAgIGZsZXg6IDE7XFxuICAgIG1pbi13aWR0aDogMDtcXG4gIH1cXG5cXG4gICYtdXNlci1uYW1lIHtcXG4gICAgaW1nIHtcXG4gICAgICBvYmplY3QtZml0OiBjb250YWluO1xcbiAgICAgIGhlaWdodDogMTZweDtcXG4gICAgICB3aWR0aDogMTZweDtcXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xcbiAgICB9XFxuICB9XFxuXFxuICAmLXVzZXItbmFtZS12YWx1ZSxcXG4gICYtc2NyZWVuLW5hbWUge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICAgIG1heC13aWR0aDogMTAwJTtcXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcXG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XFxuICB9XFxuXFxuICAmLWV4cGFuZGVkLWNvbnRlbnQge1xcbiAgICBmbGV4OiAxO1xcbiAgICBtYXJnaW4tbGVmdDogMC43ZW07XFxuICAgIG1pbi13aWR0aDogMDtcXG4gIH1cXG59XFxuXCJdLFwic291cmNlUm9vdFwiOlwiXCJ9XSk7XG4vLyBFeHBvcnRzXG5leHBvcnQgZGVmYXVsdCBfX19DU1NfTE9BREVSX0VYUE9SVF9fXztcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/basic_user_card/basic_user_card.vue?vue&type=style&index=0&id=132dc612&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/chat/chat.vue?vue&type=style&index=0&id=a8c1ff62&lang=scss":
/*!****************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/chat/chat.vue?vue&type=style&index=0&id=a8c1ff62&lang=scss ***!
\****************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".chat-view {\\n display: flex;\\n height: 100%;\\n}\\n.chat-view .chat-view-inner {\\n height: auto;\\n width: 100%;\\n overflow: visible;\\n display: flex;\\n}\\n.chat-view .chat-view-body {\\n box-sizing: border-box;\\n background-color: var(--chatBg, #121a24);\\n display: flex;\\n flex-direction: column;\\n width: 100%;\\n overflow: visible;\\n min-height: calc(100vh - var(--navbar-height));\\n margin: 0;\\n border-radius: 10px 10px 0 0;\\n border-radius: var(--panelRadius, 10px) var(--panelRadius, 10px) 0 0;\\n}\\n.chat-view .chat-view-body::after {\\n border-radius: 0;\\n}\\n.chat-view .message-list {\\n padding: 0 0.8em;\\n height: 100%;\\n display: flex;\\n flex-direction: column;\\n justify-content: end;\\n}\\n.chat-view .footer {\\n position: sticky;\\n bottom: 0;\\n background-color: #121a24;\\n background-color: var(--bg, #121a24);\\n z-index: 1;\\n}\\n.chat-view .chat-view-heading {\\n grid-template-columns: auto minmax(50%, 1fr);\\n}\\n.chat-view .go-back-button {\\n text-align: center;\\n line-height: 1;\\n height: 100%;\\n align-self: start;\\n width: var(--__panel-heading-height-inner);\\n}\\n.chat-view .jump-to-bottom-button {\\n width: 2.5em;\\n height: 2.5em;\\n border-radius: 100%;\\n position: absolute;\\n right: 1.3em;\\n top: -3.2em;\\n background-color: #182230;\\n background-color: var(--btn, #182230);\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n box-shadow: 0 1px 1px rgba(0, 0, 0, 0.3), 0 2px 4px rgba(0, 0, 0, 0.3);\\n z-index: 10;\\n transition: 0.35s all;\\n transition-timing-function: cubic-bezier(0, 1, 0.5, 1);\\n opacity: 0;\\n visibility: hidden;\\n cursor: pointer;\\n}\\n.chat-view .jump-to-bottom-button.visible {\\n opacity: 1;\\n visibility: visible;\\n}\\n.chat-view .jump-to-bottom-button i {\\n font-size: 1em;\\n color: #b9b9ba;\\n color: var(--text, #b9b9ba);\\n}\\n.chat-view .jump-to-bottom-button .unread-message-count {\\n font-size: 0.8em;\\n left: 50%;\\n margin-top: -1rem;\\n padding: 0.1em;\\n border-radius: 50px;\\n position: absolute;\\n}\\n.chat-view .jump-to-bottom-button .chat-loading-error {\\n width: 100%;\\n display: flex;\\n align-items: flex-end;\\n height: 100%;\\n}\\n.chat-view .jump-to-bottom-button .chat-loading-error .error {\\n width: 100%;\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/chat/chat.scss\",\"webpack://./src/components/chat/chat.vue\",\"webpack://./src/_variables.scss\"],\"names\":[],\"mappings\":\"AAAA;EACE,aAAA;EACA,YAAA;ACCF;ADCE;EACE,YAAA;EACA,WAAA;EACA,iBAAA;EACA,aAAA;ACCJ;ADEE;EACE,sBAAA;EACA,wCAAA;EACA,aAAA;EACA,sBAAA;EACA,WAAA;EACA,iBAAA;EACA,8CAAA;EACA,SAAA;EACA,4BAAA;EACA,oEAAA;ACAJ;ADEI;EACE,gBAAA;ACAN;ADIE;EACE,gBAAA;EACA,YAAA;EACA,aAAA;EACA,sBAAA;EACA,oBAAA;ACFJ;ADKE;EACE,gBAAA;EACA,SAAA;EACA,yBEnCW;EFoCX,oCAAA;EACA,UAAA;ACHJ;ADME;EACE,4CAAA;ACJJ;ADOE;EACE,kBAAA;EACA,cAAA;EACA,YAAA;EACA,iBAAA;EACA,0CAAA;ACLJ;ADQE;EACE,YAAA;EACA,aAAA;EACA,mBAAA;EACA,kBAAA;EACA,YAAA;EACA,WAAA;EACA,yBE1DW;EF2DX,qCAAA;EACA,aAAA;EACA,uBAAA;EACA,mBAAA;EACA,sEAAA;EACA,WAAA;EACA,qBAAA;EACA,sDAAA;EACA,UAAA;EACA,kBAAA;EACA,eAAA;ACNJ;ADQI;EACE,UAAA;EACA,mBAAA;ACNN;ADSI;EACE,cAAA;EACA,cE5EW;EF6EX,2BAAA;ACPN;ADUI;EACE,gBAAA;EACA,SAAA;EACA,iBAAA;EACA,cAAA;EACA,mBAAA;EACA,kBAAA;ACRN;ADWI;EACE,WAAA;EACA,aAAA;EACA,qBAAA;EACA,YAAA;ACTN;ADWM;EACE,WAAA;ACTR\",\"sourcesContent\":[\".chat-view {\\n display: flex;\\n height: 100%;\\n\\n .chat-view-inner {\\n height: auto;\\n width: 100%;\\n overflow: visible;\\n display: flex;\\n }\\n\\n .chat-view-body {\\n box-sizing: border-box;\\n background-color: var(--chatBg, $fallback--bg);\\n display: flex;\\n flex-direction: column;\\n width: 100%;\\n overflow: visible;\\n min-height: calc(100vh - var(--navbar-height));\\n margin: 0;\\n border-radius: 10px 10px 0 0;\\n border-radius: var(--panelRadius, 10px) var(--panelRadius, 10px) 0 0;\\n\\n &::after {\\n border-radius: 0;\\n }\\n }\\n\\n .message-list {\\n padding: 0 0.8em;\\n height: 100%;\\n display: flex;\\n flex-direction: column;\\n justify-content: end;\\n }\\n\\n .footer {\\n position: sticky;\\n bottom: 0;\\n background-color: $fallback--bg;\\n background-color: var(--bg, $fallback--bg);\\n z-index: 1;\\n }\\n\\n .chat-view-heading {\\n grid-template-columns: auto minmax(50%, 1fr);\\n }\\n\\n .go-back-button {\\n text-align: center;\\n line-height: 1;\\n height: 100%;\\n align-self: start;\\n width: var(--__panel-heading-height-inner);\\n }\\n\\n .jump-to-bottom-button {\\n width: 2.5em;\\n height: 2.5em;\\n border-radius: 100%;\\n position: absolute;\\n right: 1.3em;\\n top: -3.2em;\\n background-color: $fallback--fg;\\n background-color: var(--btn, $fallback--fg);\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n box-shadow: 0 1px 1px rgb(0 0 0 / 30%), 0 2px 4px rgb(0 0 0 / 30%);\\n z-index: 10;\\n transition: 0.35s all;\\n transition-timing-function: cubic-bezier(0, 1, 0.5, 1);\\n opacity: 0;\\n visibility: hidden;\\n cursor: pointer;\\n\\n &.visible {\\n opacity: 1;\\n visibility: visible;\\n }\\n\\n i {\\n font-size: 1em;\\n color: $fallback--text;\\n color: var(--text, $fallback--text);\\n }\\n\\n .unread-message-count {\\n font-size: 0.8em;\\n left: 50%;\\n margin-top: -1rem;\\n padding: 0.1em;\\n border-radius: 50px;\\n position: absolute;\\n }\\n\\n .chat-loading-error {\\n width: 100%;\\n display: flex;\\n align-items: flex-end;\\n height: 100%;\\n\\n .error {\\n width: 100%;\\n }\\n }\\n }\\n}\\n\",\".chat-view {\\n display: flex;\\n height: 100%;\\n}\\n.chat-view .chat-view-inner {\\n height: auto;\\n width: 100%;\\n overflow: visible;\\n display: flex;\\n}\\n.chat-view .chat-view-body {\\n box-sizing: border-box;\\n background-color: var(--chatBg, #121a24);\\n display: flex;\\n flex-direction: column;\\n width: 100%;\\n overflow: visible;\\n min-height: calc(100vh - var(--navbar-height));\\n margin: 0;\\n border-radius: 10px 10px 0 0;\\n border-radius: var(--panelRadius, 10px) var(--panelRadius, 10px) 0 0;\\n}\\n.chat-view .chat-view-body::after {\\n border-radius: 0;\\n}\\n.chat-view .message-list {\\n padding: 0 0.8em;\\n height: 100%;\\n display: flex;\\n flex-direction: column;\\n justify-content: end;\\n}\\n.chat-view .footer {\\n position: sticky;\\n bottom: 0;\\n background-color: #121a24;\\n background-color: var(--bg, #121a24);\\n z-index: 1;\\n}\\n.chat-view .chat-view-heading {\\n grid-template-columns: auto minmax(50%, 1fr);\\n}\\n.chat-view .go-back-button {\\n text-align: center;\\n line-height: 1;\\n height: 100%;\\n align-self: start;\\n width: var(--__panel-heading-height-inner);\\n}\\n.chat-view .jump-to-bottom-button {\\n width: 2.5em;\\n height: 2.5em;\\n border-radius: 100%;\\n position: absolute;\\n right: 1.3em;\\n top: -3.2em;\\n background-color: #182230;\\n background-color: var(--btn, #182230);\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n box-shadow: 0 1px 1px rgba(0, 0, 0, 0.3), 0 2px 4px rgba(0, 0, 0, 0.3);\\n z-index: 10;\\n transition: 0.35s all;\\n transition-timing-function: cubic-bezier(0, 1, 0.5, 1);\\n opacity: 0;\\n visibility: hidden;\\n cursor: pointer;\\n}\\n.chat-view .jump-to-bottom-button.visible {\\n opacity: 1;\\n visibility: visible;\\n}\\n.chat-view .jump-to-bottom-button i {\\n font-size: 1em;\\n color: #b9b9ba;\\n color: var(--text, #b9b9ba);\\n}\\n.chat-view .jump-to-bottom-button .unread-message-count {\\n font-size: 0.8em;\\n left: 50%;\\n margin-top: -1rem;\\n padding: 0.1em;\\n border-radius: 50px;\\n position: absolute;\\n}\\n.chat-view .jump-to-bottom-button .chat-loading-error {\\n width: 100%;\\n display: flex;\\n align-items: flex-end;\\n height: 100%;\\n}\\n.chat-view .jump-to-bottom-button .chat-loading-error .error {\\n width: 100%;\\n}\",\"$main-color: #f58d2c;\\n$main-background: white;\\n$darkened-background: whitesmoke;\\n\\n$fallback--bg: #121a24;\\n$fallback--fg: #182230;\\n$fallback--faint: rgb(185 185 186 / 50%);\\n$fallback--text: #b9b9ba;\\n$fallback--link: #d8a070;\\n$fallback--icon: #666;\\n$fallback--lightBg: rgb(21 30 42);\\n$fallback--lightText: #b9b9ba;\\n$fallback--border: #222;\\n$fallback--cRed: #f00;\\n$fallback--cBlue: #0095ff;\\n$fallback--cGreen: #0fa00f;\\n$fallback--cOrange: orange;\\n\\n$fallback--alertError: rgb(211 16 20 / 50%);\\n$fallback--alertWarning: rgb(111 111 20 / 50%);\\n\\n$fallback--panelRadius: 10px;\\n$fallback--checkboxRadius: 2px;\\n$fallback--btnRadius: 4px;\\n$fallback--inputRadius: 4px;\\n$fallback--tooltipRadius: 5px;\\n$fallback--avatarRadius: 4px;\\n$fallback--avatarAltRadius: 10px;\\n$fallback--attachmentRadius: 10px;\\n$fallback--chatMessageRadius: 10px;\\n\\n$fallback--buttonShadow: 0 0 2px 0 rgb(0 0 0 / 100%),\\n 0 1px 0 0 rgb(255 255 255 / 20%) inset,\\n 0 -1px 0 0 rgb(0 0 0 / 20%) inset;\\n\\n$status-margin: 0.75em;\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2NoYXQvY2hhdC52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD1hOGMxZmY2MiZsYW5nPXNjc3MuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQTtBQUNnSDtBQUNqQjtBQUMvRiw4QkFBOEIsbUZBQTJCLENBQUMsNEZBQXFDO0FBQy9GO0FBQ0Esc0RBQXNELGtCQUFrQixpQkFBaUIsR0FBRywrQkFBK0IsaUJBQWlCLGdCQUFnQixzQkFBc0Isa0JBQWtCLEdBQUcsOEJBQThCLDJCQUEyQiw2Q0FBNkMsa0JBQWtCLDJCQUEyQixnQkFBZ0Isc0JBQXNCLG1EQUFtRCxjQUFjLGlDQUFpQyx5RUFBeUUsR0FBRyxxQ0FBcUMscUJBQXFCLEdBQUcsNEJBQTRCLHFCQUFxQixpQkFBaUIsa0JBQWtCLDJCQUEyQix5QkFBeUIsR0FBRyxzQkFBc0IscUJBQXFCLGNBQWMsOEJBQThCLHlDQUF5QyxlQUFlLEdBQUcsaUNBQWlDLGlEQUFpRCxHQUFHLDhCQUE4Qix1QkFBdUIsbUJBQW1CLGlCQUFpQixzQkFBc0IsK0NBQStDLEdBQUcscUNBQXFDLGlCQUFpQixrQkFBa0Isd0JBQXdCLHVCQUF1QixpQkFBaUIsZ0JBQWdCLDhCQUE4QiwwQ0FBMEMsa0JBQWtCLDRCQUE0Qix3QkFBd0IsMkVBQTJFLGdCQUFnQiwwQkFBMEIsMkRBQTJELGVBQWUsdUJBQXVCLG9CQUFvQixHQUFHLDZDQUE2QyxlQUFlLHdCQUF3QixHQUFHLHVDQUF1QyxtQkFBbUIsbUJB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QUcseURBQXlELGdCQUFnQixrQkFBa0IsMEJBQTBCLGlCQUFpQixHQUFHLGdFQUFnRSxnQkFBZ0IsR0FBRyx3QkFBd0IsMEJBQTBCLG1DQUFtQywyQkFBMkIseUJBQXlCLDJDQUEyQywyQkFBMkIsMkJBQTJCLHdCQUF3QixvQ0FBb0MsZ0NBQWdDLDBCQUEwQix3QkFBd0IsNEJBQTRCLDZCQUE2Qiw2QkFBNkIsZ0RBQWdELGlEQUFpRCxpQ0FBaUMsaUNBQWlDLDRCQUE0Qiw4QkFBOEIsZ0NBQWdDLCtCQUErQixtQ0FBbUMsb0NBQW9DLHFDQUFxQywwSUFBMEksMkJBQTJCLHFCQUFxQjtBQUN2clI7QUFDQSxpRUFBZSx1QkFBdUIsRUFBQyIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvY29tcG9uZW50cy9jaGF0L2NoYXQudnVlPzQxMzciXSwic291cmNlc0NvbnRlbnQiOlsiLy8gSW1wb3J0c1xuaW1wb3J0IF9fX0NTU19MT0FERVJfQVBJX1NPVVJDRU1BUF9JTVBPUlRfX18gZnJvbSBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2Rpc3QvcnVudGltZS9zb3VyY2VNYXBzLmpzXCI7XG5pbXBvcnQgX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fIGZyb20gXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvYXBpLmpzXCI7XG52YXIgX19fQ1NTX0xPQURFUl9FWFBPUlRfX18gPSBfX19DU1NfTE9BREVSX0FQSV9JTVBPUlRfX18oX19fQ1NTX0xPQURFUl9BUElfU09VUkNFTUFQX0lNUE9SVF9fXyk7XG4vLyBNb2R1bGVcbl9fX0NTU19MT0FERVJfRVhQT1JUX19fLnB1c2goW21vZHVsZS5pZCwgXCIuY2hhdC12aWV3IHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBoZWlnaHQ6IDEwMCU7XFxufVxcbi5jaGF0LXZpZXcgLmNoYXQtdmlldy1pbm5lciB7XFxuICBoZWlnaHQ6IGF1dG87XFxuICB3aWR0aDogMTAwJTtcXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xcbiAgZGlzcGxheTogZmxleDtcXG59XFxuLmNoYXQtdmlldyAuY2hhdC12aWV3LWJvZHkge1xcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNoYXRCZywgIzEyMWEyNCk7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgb3ZlcmZsb3c6IHZpc2libGU7XFxuICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gdmFyKC0tbmF2YmFyLWhlaWdodCkpO1xcbiAgbWFyZ2luOiAwO1xcbiAgYm9yZGVyLXJhZGl1czogMTBweCAxMHB4IDAgMDtcXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXBhbmVsUmFkaXVzLCAxMHB4KSB2YXIoLS1wYW5lbFJhZGl1cywgMTBweCkgMCAwO1xcbn1cXG4uY2hhdC12aWV3IC5jaGF0LXZpZXctYm9keTo6YWZ0ZXIge1xcbiAgYm9yZGVyLXJhZGl1czogMDtcXG59XFxuLmNoYXQtdmlldyAubWVzc2FnZS1saXN0IHtcXG4gIHBhZGRpbmc6IDAgMC44ZW07XFxuICBoZWlnaHQ6IDEwMCU7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gIGp1c3RpZnktY29udGVudDogZW5kO1xcbn1cXG4uY2hhdC12aWV3IC5mb290ZXIge1xcbiAgcG9zaXRpb246IHN0aWNreTtcXG4gIGJvdHRvbTogMDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMxMjFhMjQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZywgIzEyMWEyNCk7XFxuICB6LWluZGV4OiAxO1xcbn1cXG4uY2hhdC12aWV3IC5jaGF0LXZpZXctaGVhZGluZyB7XFxuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gbWlubWF4KDUwJSwgMWZyKTtcXG59XFxuLmNoYXQtdmlldyAuZ28tYmFjay1idXR0b24ge1xcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xcbiAgbGluZS1oZWlnaHQ6IDE7XFxuICBoZWlnaHQ6IDEwMCU7XFxuICBhbGlnbi1zZWxmOiBzdGFydDtcXG4gIHdpZHRoOiB2YXIoLS1fX3BhbmVsLWhlYWRpbmctaGVpZ2h0LWlubmVyKTtcXG59XFxuLmNoYXQtdmlldyAuanVtcC10by1ib3R0b20tYnV0dG9uIHtcXG4gIHdpZHRoOiAyLjVlbTtcXG4gIGhlaWdodDogMi41ZW07XFxuICBib3JkZXItcmFkaXVzOiAxMDAlO1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgcmlnaHQ6IDEuM2VtO1xcbiAgdG9wOiAtMy4yZW07XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTgyMjMwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLCAjMTgyMjMwKTtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICBib3gtc2hhZG93OiAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjMpLCAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjMpO1xcbiAgei1pbmRleDogMTA7XFxuICB0cmFuc2l0aW9uOiAwLjM1cyBhbGw7XFxuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAsIDEsIDAuNSwgMSk7XFxuICBvcGFjaXR5OiAwO1xcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xcbiAgY3Vyc29yOiBwb2ludGVyO1xcbn1cXG4uY2hhdC12aWV3IC5qdW1wLXRvLWJvdHRvbS1idXR0b24udmlzaWJsZSB7XFxuICBvcGFjaXR5OiAxO1xcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcXG59XFxuLmNoYXQtdmlldyAuanVtcC10by1ib3R0b20tYnV0dG9uIGkge1xcbiAgZm9udC1zaXplOiAxZW07XFxuICBjb2xvcjogI2I5YjliYTtcXG4gIGNvbG9yOiB2YXIoLS10ZXh0LCAjYjliOWJhKTtcXG59XFxuLmNoYXQtdmlldyAuanVtcC10by1ib3R0b20tYnV0dG9uIC51bnJlYWQtbWVzc2FnZS1jb3VudCB7XFxuICBmb250LXNpemU6IDAuOGVtO1xcbiAgbGVmdDogNTAlO1xcbiAgbWFyZ2luLXRvcDogLTFyZW07XFxuICBwYWRkaW5nOiAwLjFlbTtcXG4gIGJvcmRlci1yYWRpdXM6IDUwcHg7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxufVxcbi5jaGF0LXZpZXcgLmp1bXAtdG8tYm90dG9tLWJ1dHRvbiAuY2hhdC1sb2FkaW5nLWVycm9yIHtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcXG4gIGhlaWdodDogMTAwJTtcXG59XFxuLmNoYXQtdmlldyAuanVtcC10by1ib3R0b20tYnV0dG9uIC5jaGF0LWxvYWRpbmctZXJyb3IgLmVycm9yIHtcXG4gIHdpZHRoOiAxMDAlO1xcbn1cIiwgXCJcIix7XCJ2ZXJzaW9uXCI6MyxcInNvdXJjZXNcIjpbXCJ3ZWJwYWNrOi8vLi9zcmMvY29tcG9uZW50cy9jaGF0L2NoYXQuc2Nzc1wiLFwid2VicGFjazovLy4vc3JjL2NvbXBvbmVudHMvY2hhdC9jaGF0LnZ1ZVwiLFwid2VicGFjazovLy4vc3JjL192YXJpYWJsZXMuc2Nzc1wiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiQUFBQTtFQUNFLGFBQUE7RUFDQSxZQUFBO0FDQ0Y7QURDRTtFQUNFLFlBQUE7RUFDQSxXQUFBO0VBQ0EsaUJBQUE7RUFDQSxhQUFBO0FDQ0o7QURFRTtFQUNFLHNCQUFBO0VBQ0Esd0NBQUE7RUFDQSxhQUFBO0VBQ0Esc0JBQUE7RUFDQSxXQUFBO0VBQ0EsaUJBQUE7RUFDQSw4Q0FBQTtFQUNBLFNBQUE7RUFDQSw0QkFBQTtFQUNBLG9FQUFBO0FDQUo7QURFSTtFQUNFLGdCQUFBO0FDQU47QURJRTtFQUNFLGdCQUFBO0VBQ0EsWUFBQTtFQUNBLGFBQUE7RUFDQSxzQkFBQTtFQUNBLG9CQUFBO0FDRko7QURLRTtFQUNFLGdCQUFBO0VBQ0EsU0FBQTtFQUNBLHlCRW5DVztFRm9DWCxvQ0FBQTtFQUNBLFVBQUE7QUNISjtBRE1FO0VBQ0UsNENBQUE7QUNKSjtBRE9FO0VBQ0Usa0JBQUE7RUFDQSxjQUFBO0VBQ0EsWUFBQTtFQUNBLGlCQUFBO0VBQ0EsMENBQUE7QUNMSjtBRFFFO0VBQ0UsWUFBQTtFQUNBLGFBQUE7RUFDQSxtQkFBQTtFQUNBLGtCQUFBO0VBQ0EsWUFBQTtFQUNBLFdBQUE7RUFDQSx5QkUxRFc7RUYyRFgscUNBQUE7RUFDQSxhQUFBO0VBQ0EsdUJBQUE7RUFDQSxtQkFBQTtFQUNBLHNFQUFBO0VBQ0EsV0FBQTtFQUNBLHFCQUFBO0VBQ0Esc0RBQUE7RUFDQSxVQUFBO0VBQ0Esa0JBQUE7RUFDQSxlQUFBO0FDTko7QURRSTtFQUNFLFVBQUE7RUFDQSxtQkFBQTtBQ05OO0FEU0k7RUFDRSxjQUFBO0VBQ0EsY0U1RVc7RUY2RVgsMkJBQUE7QUNQTjtBRFVJO0VBQ0UsZ0JBQUE7RUFDQSxTQUFBO0VBQ0EsaUJBQUE7RUFDQSxjQUFBO0VBQ0EsbUJBQUE7RUFDQSxrQkFBQTtBQ1JOO0FEV0k7RUFDRSxXQUFBO0VBQ0EsYUFBQTtFQUNBLHFCQUFBO0VBQ0EsWUFBQTtBQ1ROO0FEV007RUFDRSxXQUFBO0FDVFJcIixcInNvdXJjZXNDb250ZW50XCI6W1wiLmNoYXQtdmlldyB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgaGVpZ2h0OiAxMDAlO1xcblxcbiAgLmNoYXQtdmlldy1pbm5lciB7XFxuICAgIGhlaWdodDogYXV0bztcXG4gICAgd2lkdGg6IDEwMCU7XFxuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgfVxcblxcbiAgLmNoYXQtdmlldy1ib2R5IHtcXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY2hhdEJnLCAkZmFsbGJhY2stLWJnKTtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gICAgd2lkdGg6IDEwMCU7XFxuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xcbiAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gdmFyKC0tbmF2YmFyLWhlaWdodCkpO1xcbiAgICBtYXJnaW46IDA7XFxuICAgIGJvcmRlci1yYWRpdXM6IDEwcHggMTBweCAwIDA7XFxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXBhbmVsUmFkaXVzLCAxMHB4KSB2YXIoLS1wYW5lbFJhZGl1cywgMTBweCkgMCAwO1xcblxcbiAgICAmOjphZnRlciB7XFxuICAgICAgYm9yZGVyLXJhZGl1czogMDtcXG4gICAgfVxcbiAgfVxcblxcbiAgLm1lc3NhZ2UtbGlzdCB7XFxuICAgIHBhZGRpbmc6IDAgMC44ZW07XFxuICAgIGhlaWdodDogMTAwJTtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gICAganVzdGlmeS1jb250ZW50OiBlbmQ7XFxuICB9XFxuXFxuICAuZm9vdGVyIHtcXG4gICAgcG9zaXRpb246IHN0aWNreTtcXG4gICAgYm90dG9tOiAwO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmFsbGJhY2stLWJnO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZywgJGZhbGxiYWNrLS1iZyk7XFxuICAgIHotaW5kZXg6IDE7XFxuICB9XFxuXFxuICAuY2hhdC12aWV3LWhlYWRpbmcge1xcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gbWlubWF4KDUwJSwgMWZyKTtcXG4gIH1cXG5cXG4gIC5nby1iYWNrLWJ1dHRvbiB7XFxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcXG4gICAgbGluZS1oZWlnaHQ6IDE7XFxuICAgIGhlaWdodDogMTAwJTtcXG4gICAgYWxpZ24tc2VsZjogc3RhcnQ7XFxuICAgIHdpZHRoOiB2YXIoLS1fX3BhbmVsLWhlYWRpbmctaGVpZ2h0LWlubmVyKTtcXG4gIH1cXG5cXG4gIC5qdW1wLXRvLWJvdHRvbS1idXR0b24ge1xcbiAgICB3aWR0aDogMi41ZW07XFxuICAgIGhlaWdodDogMi41ZW07XFxuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XFxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gICAgcmlnaHQ6IDEuM2VtO1xcbiAgICB0b3A6IC0zLjJlbTtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZhbGxiYWNrLS1mZztcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLCAkZmFsbGJhY2stLWZnKTtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XFxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICAgIGJveC1zaGFkb3c6IDAgMXB4IDFweCByZ2IoMCAwIDAgLyAzMCUpLCAwIDJweCA0cHggcmdiKDAgMCAwIC8gMzAlKTtcXG4gICAgei1pbmRleDogMTA7XFxuICAgIHRyYW5zaXRpb246IDAuMzVzIGFsbDtcXG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLCAxLCAwLjUsIDEpO1xcbiAgICBvcGFjaXR5OiAwO1xcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XFxuICAgIGN1cnNvcjogcG9pbnRlcjtcXG5cXG4gICAgJi52aXNpYmxlIHtcXG4gICAgICBvcGFjaXR5OiAxO1xcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XFxuICAgIH1cXG5cXG4gICAgaSB7XFxuICAgICAgZm9udC1zaXplOiAxZW07XFxuICAgICAgY29sb3I6ICRmYWxsYmFjay0tdGV4dDtcXG4gICAgICBjb2xvcjogdmFyKC0tdGV4dCwgJGZhbGxiYWNrLS10ZXh0KTtcXG4gICAgfVxcblxcbiAgICAudW5yZWFkLW1lc3NhZ2UtY291bnQge1xcbiAgICAgIGZvbnQtc2l6ZTogMC44ZW07XFxuICAgICAgbGVmdDogNTAlO1xcbiAgICAgIG1hcmdpbi10b3A6IC0xcmVtO1xcbiAgICAgIHBhZGRpbmc6IDAuMWVtO1xcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XFxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgICB9XFxuXFxuICAgIC5jaGF0LWxvYWRpbmctZXJyb3Ige1xcbiAgICAgIHdpZHRoOiAxMDAlO1xcbiAgICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xcbiAgICAgIGhlaWdodDogMTAwJTtcXG5cXG4gICAgICAuZXJyb3Ige1xcbiAgICAgICAgd2lkdGg6IDEwMCU7XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxufVxcblwiLFwiLmNoYXQtdmlldyB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgaGVpZ2h0OiAxMDAlO1xcbn1cXG4uY2hhdC12aWV3IC5jaGF0LXZpZXctaW5uZXIge1xcbiAgaGVpZ2h0OiBhdXRvO1xcbiAgd2lkdGg6IDEwMCU7XFxuICBvdmVyZmxvdzogdmlzaWJsZTtcXG4gIGRpc3BsYXk6IGZsZXg7XFxufVxcbi5jaGF0LXZpZXcgLmNoYXQtdmlldy1ib2R5IHtcXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jaGF0QmcsICMxMjFhMjQpO1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICB3aWR0aDogMTAwJTtcXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xcbiAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIHZhcigtLW5hdmJhci1oZWlnaHQpKTtcXG4gIG1hcmdpbjogMDtcXG4gIGJvcmRlci1yYWRpdXM6IDEwcHggMTBweCAwIDA7XFxuICBib3JkZXItcmFkaXVzOiB2YXIoLS1wYW5lbFJhZGl1cywgMTBweCkgdmFyKC0tcGFuZWxSYWRpdXMsIDEwcHgpIDAgMDtcXG59XFxuLmNoYXQtdmlldyAuY2hhdC12aWV3LWJvZHk6OmFmdGVyIHtcXG4gIGJvcmRlci1yYWRpdXM6IDA7XFxufVxcbi5jaGF0LXZpZXcgLm1lc3NhZ2UtbGlzdCB7XFxuICBwYWRkaW5nOiAwIDAuOGVtO1xcbiAgaGVpZ2h0OiAxMDAlO1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IGVuZDtcXG59XFxuLmNoYXQtdmlldyAuZm9vdGVyIHtcXG4gIHBvc2l0aW9uOiBzdGlja3k7XFxuICBib3R0b206IDA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTIxYTI0O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmcsICMxMjFhMjQpO1xcbiAgei1pbmRleDogMTtcXG59XFxuLmNoYXQtdmlldyAuY2hhdC12aWV3LWhlYWRpbmcge1xcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIG1pbm1heCg1MCUsIDFmcik7XFxufVxcbi5jaGF0LXZpZXcgLmdvLWJhY2stYnV0dG9uIHtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG4gIGxpbmUtaGVpZ2h0OiAxO1xcbiAgaGVpZ2h0OiAxMDAlO1xcbiAgYWxpZ24tc2VsZjogc3RhcnQ7XFxuICB3aWR0aDogdmFyKC0tX19wYW5lbC1oZWFkaW5nLWhlaWdodC1pbm5lcik7XFxufVxcbi5jaGF0LXZpZXcgLmp1bXAtdG8tYm90dG9tLWJ1dHRvbiB7XFxuICB3aWR0aDogMi41ZW07XFxuICBoZWlnaHQ6IDIuNWVtO1xcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHJpZ2h0OiAxLjNlbTtcXG4gIHRvcDogLTMuMmVtO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE4MjIzMDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0biwgIzE4MjIzMCk7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgYm94LXNoYWRvdzogMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4zKSwgMCAycHggNHB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcXG4gIHotaW5kZXg6IDEwO1xcbiAgdHJhbnNpdGlvbjogMC4zNXMgYWxsO1xcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLCAxLCAwLjUsIDEpO1xcbiAgb3BhY2l0eTogMDtcXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcXG4gIGN1cnNvcjogcG9pbnRlcjtcXG59XFxuLmNoYXQtdmlldyAuanVtcC10by1ib3R0b20tYnV0dG9uLnZpc2libGUge1xcbiAgb3BhY2l0eTogMTtcXG4gIHZpc2liaWxpdHk6IHZpc2libGU7XFxufVxcbi5jaGF0LXZpZXcgLmp1bXAtdG8tYm90dG9tLWJ1dHRvbiBpIHtcXG4gIGZvbnQtc2l6ZTogMWVtO1xcbiAgY29sb3I6ICNiOWI5YmE7XFxuICBjb2xvcjogdmFyKC0tdGV4dCwgI2I5YjliYSk7XFxufVxcbi5jaGF0LXZpZXcgLmp1bXAtdG8tYm90dG9tLWJ1dHRvbiAudW5yZWFkLW1lc3NhZ2UtY291bnQge1xcbiAgZm9udC1zaXplOiAwLjhlbTtcXG4gIGxlZnQ6IDUwJTtcXG4gIG1hcmdpbi10b3A6IC0xcmVtO1xcbiAgcGFkZGluZzogMC4xZW07XFxuICBib3JkZXItcmFkaXVzOiA1MHB4O1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbn1cXG4uY2hhdC12aWV3IC5qdW1wLXRvLWJvdHRvbS1idXR0b24gLmNoYXQtbG9hZGluZy1lcnJvciB7XFxuICB3aWR0aDogMTAwJTtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XFxuICBoZWlnaHQ6IDEwMCU7XFxufVxcbi5jaGF0LXZpZXcgLmp1bXAtdG8tYm90dG9tLWJ1dHRvbiAuY2hhdC1sb2FkaW5nLWVycm9yIC5lcnJvciB7XFxuICB3aWR0aDogMTAwJTtcXG59XCIsXCIkbWFpbi1jb2xvcjogI2Y1OGQyYztcXG4kbWFpbi1iYWNrZ3JvdW5kOiB3aGl0ZTtcXG4kZGFya2VuZWQtYmFja2dyb3VuZDogd2hpdGVzbW9rZTtcXG5cXG4kZmFsbGJhY2stLWJnOiAjMTIxYTI0O1xcbiRmYWxsYmFjay0tZmc6ICMxODIyMzA7XFxuJGZhbGxiYWNrLS1mYWludDogcmdiKDE4NSAxODUgMTg2IC8gNTAlKTtcXG4kZmFsbGJhY2stLXRleHQ6ICNiOWI5YmE7XFxuJGZhbGxiYWNrLS1saW5rOiAjZDhhMDcwO1xcbiRmYWxsYmFjay0taWNvbjogIzY2NjtcXG4kZmFsbGJhY2stLWxpZ2h0Qmc6IHJnYigyMSAzMCA0Mik7XFxuJGZhbGxiYWNrLS1saWdodFRleHQ6ICNiOWI5YmE7XFxuJGZhbGxiYWNrLS1ib3JkZXI6ICMyMjI7XFxuJGZhbGxiYWNrLS1jUmVkOiAjZjAwO1xcbiRmYWxsYmFjay0tY0JsdWU6ICMwMDk1ZmY7XFxuJGZhbGxiYWNrLS1jR3JlZW46ICMwZmEwMGY7XFxuJGZhbGxiYWNrLS1jT3JhbmdlOiBvcmFuZ2U7XFxuXFxuJGZhbGxiYWNrLS1hbGVydEVycm9yOiByZ2IoMjExIDE2IDIwIC8gNTAlKTtcXG4kZmFsbGJhY2stLWFsZXJ0V2FybmluZzogcmdiKDExMSAxMTEgMjAgLyA1MCUpO1xcblxcbiRmYWxsYmFjay0tcGFuZWxSYWRpdXM6IDEwcHg7XFxuJGZhbGxiYWNrLS1jaGVja2JveFJhZGl1czogMnB4O1xcbiRmYWxsYmFjay0tYnRuUmFkaXVzOiA0cHg7XFxuJGZhbGxiYWNrLS1pbnB1dFJhZGl1czogNHB4O1xcbiRmYWxsYmFjay0tdG9vbHRpcFJhZGl1czogNXB4O1xcbiRmYWxsYmFjay0tYXZhdGFyUmFkaXVzOiA0cHg7XFxuJGZhbGxiYWNrLS1hdmF0YXJBbHRSYWRpdXM6IDEwcHg7XFxuJGZhbGxiYWNrLS1hdHRhY2htZW50UmFkaXVzOiAxMHB4O1xcbiRmYWxsYmFjay0tY2hhdE1lc3NhZ2VSYWRpdXM6IDEwcHg7XFxuXFxuJGZhbGxiYWNrLS1idXR0b25TaGFkb3c6IDAgMCAycHggMCByZ2IoMCAwIDAgLyAxMDAlKSxcXG4gIDAgMXB4IDAgMCByZ2IoMjU1IDI1NSAyNTUgLyAyMCUpIGluc2V0LFxcbiAgMCAtMXB4IDAgMCByZ2IoMCAwIDAgLyAyMCUpIGluc2V0O1xcblxcbiRzdGF0dXMtbWFyZ2luOiAwLjc1ZW07XFxuXCJdLFwic291cmNlUm9vdFwiOlwiXCJ9XSk7XG4vLyBFeHBvcnRzXG5leHBvcnQgZGVmYXVsdCBfX19DU1NfTE9BREVSX0VYUE9SVF9fXztcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/chat/chat.vue?vue&type=style&index=0&id=a8c1ff62&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/chat_list/chat_list.vue?vue&type=style&index=0&id=06cd5d5b&lang=scss":
/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/chat_list/chat_list.vue?vue&type=style&index=0&id=06cd5d5b&lang=scss ***!
\**************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".chat-list {\\n min-height: 25em;\\n margin-bottom: 0;\\n}\\n.emtpy-chat-list-alert {\\n padding: 3em;\\n font-size: 1.2em;\\n display: flex;\\n justify-content: center;\\n color: #b9b9ba;\\n color: var(--faint, #b9b9ba);\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/chat_list/chat_list.vue\",\"webpack://./src/_variables.scss\"],\"names\":[],\"mappings\":\"AAGA;EACE,gBAAA;EACA,gBAAA;AAFF;AAKA;EACE,YAAA;EACA,gBAAA;EACA,aAAA;EACA,uBAAA;EACA,cCNe;EDOf,4BAAA;AAFF\",\"sourcesContent\":[\"\\n@import \\\"../../variables\\\";\\n\\n.chat-list {\\n min-height: 25em;\\n margin-bottom: 0;\\n}\\n\\n.emtpy-chat-list-alert {\\n padding: 3em;\\n font-size: 1.2em;\\n display: flex;\\n justify-content: center;\\n color: $fallback--text;\\n color: var(--faint, $fallback--text);\\n}\\n\\n\",\"$main-color: #f58d2c;\\n$main-background: white;\\n$darkened-background: whitesmoke;\\n\\n$fallback--bg: #121a24;\\n$fallback--fg: #182230;\\n$fallback--faint: rgb(185 185 186 / 50%);\\n$fallback--text: #b9b9ba;\\n$fallback--link: #d8a070;\\n$fallback--icon: #666;\\n$fallback--lightBg: rgb(21 30 42);\\n$fallback--lightText: #b9b9ba;\\n$fallback--border: #222;\\n$fallback--cRed: #f00;\\n$fallback--cBlue: #0095ff;\\n$fallback--cGreen: #0fa00f;\\n$fallback--cOrange: orange;\\n\\n$fallback--alertError: rgb(211 16 20 / 50%);\\n$fallback--alertWarning: rgb(111 111 20 / 50%);\\n\\n$fallback--panelRadius: 10px;\\n$fallback--checkboxRadius: 2px;\\n$fallback--btnRadius: 4px;\\n$fallback--inputRadius: 4px;\\n$fallback--tooltipRadius: 5px;\\n$fallback--avatarRadius: 4px;\\n$fallback--avatarAltRadius: 10px;\\n$fallback--attachmentRadius: 10px;\\n$fallback--chatMessageRadius: 10px;\\n\\n$fallback--buttonShadow: 0 0 2px 0 rgb(0 0 0 / 100%),\\n 0 1px 0 0 rgb(255 255 255 / 20%) inset,\\n 0 -1px 0 0 rgb(0 0 0 / 20%) inset;\\n\\n$status-margin: 0.75em;\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2NoYXRfbGlzdC9jaGF0X2xpc3QudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9MDZjZDVkNWImbGFuZz1zY3NzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7QUFDZ0g7QUFDakI7QUFDL0YsOEJBQThCLG1GQUEyQixDQUFDLDRGQUFxQztBQUMvRjtBQUNBLHNEQUFzRCxxQkFBcUIscUJBQXFCLEdBQUcsMEJBQTBCLGlCQUFpQixxQkFBcUIsa0JBQWtCLDRCQUE0QixtQkFBbUIsaUNBQWlDLEdBQUcsT0FBTywySUFBMkksV0FBVyxXQUFXLEtBQUssS0FBSyxVQUFVLFdBQVcsVUFBVSxXQUFXLFVBQVUsV0FBVyx1REFBdUQsZ0JBQWdCLHFCQUFxQixxQkFBcUIsR0FBRyw0QkFBNEIsaUJBQWlCLHFCQUFxQixrQkFBa0IsNEJBQTRCLDJCQUEyQix5Q0FBeUMsR0FBRyw0QkFBNEIsMEJBQTBCLG1DQUFtQywyQkFBMkIseUJBQXlCLDJDQUEyQywyQkFBMkIsMkJBQTJCLHdCQUF3QixvQ0FBb0MsZ0NBQWdDLDBCQUEwQix3QkFBd0IsNEJBQTRCLDZCQUE2Qiw2QkFBNkIsZ0RBQWdELGlEQUFpRCxpQ0FBaUMsaUNBQWlDLDRCQUE0Qiw4QkFBOEIsZ0NBQWdDLCtCQUErQixtQ0FBbUMsb0NBQW9DLHFDQUFxQywwSUFBMEksMkJBQTJCLHFCQUFxQjtBQUN4ekQ7QUFDQSxpRUFBZSx1QkFBdUIsRUFBQyIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvY29tcG9uZW50cy9jaGF0X2xpc3QvY2hhdF9saXN0LnZ1ZT84ZTdmIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIEltcG9ydHNcbmltcG9ydCBfX19DU1NfTE9BREVSX0FQSV9TT1VSQ0VNQVBfSU1QT1JUX19fIGZyb20gXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvc291cmNlTWFwcy5qc1wiO1xuaW1wb3J0IF9fX0NTU19MT0FERVJfQVBJX0lNUE9SVF9fXyBmcm9tIFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvZGlzdC9ydW50aW1lL2FwaS5qc1wiO1xudmFyIF9fX0NTU19MT0FERVJfRVhQT1JUX19fID0gX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fKF9fX0NTU19MT0FERVJfQVBJX1NPVVJDRU1BUF9JTVBPUlRfX18pO1xuLy8gTW9kdWxlXG5fX19DU1NfTE9BREVSX0VYUE9SVF9fXy5wdXNoKFttb2R1bGUuaWQsIFwiLmNoYXQtbGlzdCB7XFxuICBtaW4taGVpZ2h0OiAyNWVtO1xcbiAgbWFyZ2luLWJvdHRvbTogMDtcXG59XFxuLmVtdHB5LWNoYXQtbGlzdC1hbGVydCB7XFxuICBwYWRkaW5nOiAzZW07XFxuICBmb250LXNpemU6IDEuMmVtO1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xcbiAgY29sb3I6ICNiOWI5YmE7XFxuICBjb2xvcjogdmFyKC0tZmFpbnQsICNiOWI5YmEpO1xcbn1cIiwgXCJcIix7XCJ2ZXJzaW9uXCI6MyxcInNvdXJjZXNcIjpbXCJ3ZWJwYWNrOi8vLi9zcmMvY29tcG9uZW50cy9jaGF0X2xpc3QvY2hhdF9saXN0LnZ1ZVwiLFwid2VicGFjazovLy4vc3JjL192YXJpYWJsZXMuc2Nzc1wiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiQUFHQTtFQUNFLGdCQUFBO0VBQ0EsZ0JBQUE7QUFGRjtBQUtBO0VBQ0UsWUFBQTtFQUNBLGdCQUFBO0VBQ0EsYUFBQTtFQUNBLHVCQUFBO0VBQ0EsY0NOZTtFRE9mLDRCQUFBO0FBRkZcIixcInNvdXJjZXNDb250ZW50XCI6W1wiXFxuQGltcG9ydCBcXFwiLi4vLi4vdmFyaWFibGVzXFxcIjtcXG5cXG4uY2hhdC1saXN0IHtcXG4gIG1pbi1oZWlnaHQ6IDI1ZW07XFxuICBtYXJnaW4tYm90dG9tOiAwO1xcbn1cXG5cXG4uZW10cHktY2hhdC1saXN0LWFsZXJ0IHtcXG4gIHBhZGRpbmc6IDNlbTtcXG4gIGZvbnQtc2l6ZTogMS4yZW07XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XFxuICBjb2xvcjogJGZhbGxiYWNrLS10ZXh0O1xcbiAgY29sb3I6IHZhcigtLWZhaW50LCAkZmFsbGJhY2stLXRleHQpO1xcbn1cXG5cXG5cIixcIiRtYWluLWNvbG9yOiAjZjU4ZDJjO1xcbiRtYWluLWJhY2tncm91bmQ6IHdoaXRlO1xcbiRkYXJrZW5lZC1iYWNrZ3JvdW5kOiB3aGl0ZXNtb2tlO1xcblxcbiRmYWxsYmFjay0tYmc6ICMxMjFhMjQ7XFxuJGZhbGxiYWNrLS1mZzogIzE4MjIzMDtcXG4kZmFsbGJhY2stLWZhaW50OiByZ2IoMTg1IDE4NSAxODYgLyA1MCUpO1xcbiRmYWxsYmFjay0tdGV4dDogI2I5YjliYTtcXG4kZmFsbGJhY2stLWxpbms6ICNkOGEwNzA7XFxuJGZhbGxiYWNrLS1pY29uOiAjNjY2O1xcbiRmYWxsYmFjay0tbGlnaHRCZzogcmdiKDIxIDMwIDQyKTtcXG4kZmFsbGJhY2stLWxpZ2h0VGV4dDogI2I5YjliYTtcXG4kZmFsbGJhY2stLWJvcmRlcjogIzIyMjtcXG4kZmFsbGJhY2stLWNSZWQ6ICNmMDA7XFxuJGZhbGxiYWNrLS1jQmx1ZTogIzAwOTVmZjtcXG4kZmFsbGJhY2stLWNHcmVlbjogIzBmYTAwZjtcXG4kZmFsbGJhY2stLWNPcmFuZ2U6IG9yYW5nZTtcXG5cXG4kZmFsbGJhY2stLWFsZXJ0RXJyb3I6IHJnYigyMTEgMTYgMjAgLyA1MCUpO1xcbiRmYWxsYmFjay0tYWxlcnRXYXJuaW5nOiByZ2IoMTExIDExMSAyMCAvIDUwJSk7XFxuXFxuJGZhbGxiYWNrLS1wYW5lbFJhZGl1czogMTBweDtcXG4kZmFsbGJhY2stLWNoZWNrYm94UmFkaXVzOiAycHg7XFxuJGZhbGxiYWNrLS1idG5SYWRpdXM6IDRweDtcXG4kZmFsbGJhY2stLWlucHV0UmFkaXVzOiA0cHg7XFxuJGZhbGxiYWNrLS10b29sdGlwUmFkaXVzOiA1cHg7XFxuJGZhbGxiYWNrLS1hdmF0YXJSYWRpdXM6IDRweDtcXG4kZmFsbGJhY2stLWF2YXRhckFsdFJhZGl1czogMTBweDtcXG4kZmFsbGJhY2stLWF0dGFjaG1lbnRSYWRpdXM6IDEwcHg7XFxuJGZhbGxiYWNrLS1jaGF0TWVzc2FnZVJhZGl1czogMTBweDtcXG5cXG4kZmFsbGJhY2stLWJ1dHRvblNoYWRvdzogMCAwIDJweCAwIHJnYigwIDAgMCAvIDEwMCUpLFxcbiAgMCAxcHggMCAwIHJnYigyNTUgMjU1IDI1NSAvIDIwJSkgaW5zZXQsXFxuICAwIC0xcHggMCAwIHJnYigwIDAgMCAvIDIwJSkgaW5zZXQ7XFxuXFxuJHN0YXR1cy1tYXJnaW46IDAuNzVlbTtcXG5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcbi8vIEV4cG9ydHNcbmV4cG9ydCBkZWZhdWx0IF9fX0NTU19MT0FERVJfRVhQT1JUX19fO1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/chat_list/chat_list.vue?vue&type=style&index=0&id=06cd5d5b&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/chat_list_item/chat_list_item.vue?vue&type=style&index=0&id=426f8222&lang=scss":
/*!************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/chat_list_item/chat_list_item.vue?vue&type=style&index=0&id=426f8222&lang=scss ***!
\************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".chat-list-item {\\n display: flex;\\n flex-direction: row;\\n padding: 0.75em;\\n height: 5em;\\n overflow: hidden;\\n box-sizing: border-box;\\n cursor: pointer;\\n}\\n.chat-list-item :focus {\\n outline: none;\\n}\\n.chat-list-item:hover {\\n background-color: var(--selectedPost, rgb(21, 30, 42));\\n box-shadow: 0 0 3px 1px rgba(0, 0, 0, 0.1);\\n}\\n.chat-list-item .chat-list-item-left {\\n margin-right: 1em;\\n}\\n.chat-list-item .chat-list-item-center {\\n width: 100%;\\n box-sizing: border-box;\\n overflow: hidden;\\n word-wrap: break-word;\\n}\\n.chat-list-item .heading {\\n width: 100%;\\n display: inline-flex;\\n justify-content: space-between;\\n line-height: 1em;\\n}\\n.chat-list-item .heading-right {\\n white-space: nowrap;\\n}\\n.chat-list-item .name-and-account-name {\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n overflow: hidden;\\n flex-shrink: 1;\\n line-height: var(--post-line-height);\\n}\\n.chat-list-item .chat-preview {\\n display: inline-flex;\\n overflow: hidden;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n margin: 0.35em 0;\\n color: #b9b9ba;\\n color: var(--faint, #b9b9ba);\\n width: 100%;\\n}\\n.chat-list-item a {\\n color: var(--faintLink, #d8a070);\\n text-decoration: none;\\n pointer-events: none;\\n}\\n.chat-list-item:hover .animated.avatar canvas {\\n display: none;\\n}\\n.chat-list-item:hover .animated.avatar img {\\n visibility: visible;\\n}\\n.chat-list-item .Avatar {\\n border-radius: 10px;\\n border-radius: var(--avatarAltRadius, 10px);\\n}\\n.chat-list-item .chat-preview-body {\\n --emoji-size: 1.4em;\\n padding-right: 1em;\\n}\\n.chat-list-item .time-wrapper {\\n line-height: var(--post-line-height);\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/chat_list_item/chat_list_item.scss\",\"webpack://./src/components/chat_list_item/chat_list_item.vue\",\"webpack://./src/_variables.scss\"],\"names\":[],\"mappings\":\"AAAA;EACE,aAAA;EACA,mBAAA;EACA,eAAA;EACA,WAAA;EACA,gBAAA;EACA,sBAAA;EACA,eAAA;ACCF;ADCE;EACE,aAAA;ACCJ;ADEE;EACE,sDAAA;EACA,0CAAA;ACAJ;ADGE;EACE,iBAAA;ACDJ;ADIE;EACE,WAAA;EACA,sBAAA;EACA,gBAAA;EACA,qBAAA;ACFJ;ADKE;EACE,WAAA;EACA,oBAAA;EACA,8BAAA;EACA,gBAAA;ACHJ;ADME;EACE,mBAAA;ACJJ;ADOE;EACE,uBAAA;EACA,mBAAA;EACA,gBAAA;EACA,cAAA;EACA,oCAAA;ACLJ;ADQE;EACE,oBAAA;EACA,gBAAA;EACA,mBAAA;EACA,uBAAA;EACA,gBAAA;EACA,cE/Ca;EFgDb,4BAAA;EACA,WAAA;ACNJ;ADSE;EACE,gCAAA;EACA,qBAAA;EACA,oBAAA;ACPJ;ADWI;EACE,aAAA;ACTN;ADYI;EACE,mBAAA;ACVN;ADcE;EACE,mBEjDwB;EFkDxB,2CAAA;ACZJ;ADeE;EACE,mBAAA;EAEA,kBAAA;ACdJ;ADiBE;EACE,oCAAA;ACfJ\",\"sourcesContent\":[\".chat-list-item {\\n display: flex;\\n flex-direction: row;\\n padding: 0.75em;\\n height: 5em;\\n overflow: hidden;\\n box-sizing: border-box;\\n cursor: pointer;\\n\\n :focus {\\n outline: none;\\n }\\n\\n &:hover {\\n background-color: var(--selectedPost, $fallback--lightBg);\\n box-shadow: 0 0 3px 1px rgb(0 0 0 / 10%);\\n }\\n\\n .chat-list-item-left {\\n margin-right: 1em;\\n }\\n\\n .chat-list-item-center {\\n width: 100%;\\n box-sizing: border-box;\\n overflow: hidden;\\n word-wrap: break-word;\\n }\\n\\n .heading {\\n width: 100%;\\n display: inline-flex;\\n justify-content: space-between;\\n line-height: 1em;\\n }\\n\\n .heading-right {\\n white-space: nowrap;\\n }\\n\\n .name-and-account-name {\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n overflow: hidden;\\n flex-shrink: 1;\\n line-height: var(--post-line-height);\\n }\\n\\n .chat-preview {\\n display: inline-flex;\\n overflow: hidden;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n margin: 0.35em 0;\\n color: $fallback--text;\\n color: var(--faint, $fallback--text);\\n width: 100%;\\n }\\n\\n a {\\n color: var(--faintLink, $fallback--link);\\n text-decoration: none;\\n pointer-events: none;\\n }\\n\\n &:hover .animated.avatar {\\n canvas {\\n display: none;\\n }\\n\\n img {\\n visibility: visible;\\n }\\n }\\n\\n .Avatar {\\n border-radius: $fallback--avatarAltRadius;\\n border-radius: var(--avatarAltRadius, $fallback--avatarAltRadius);\\n }\\n\\n .chat-preview-body {\\n --emoji-size: 1.4em;\\n\\n padding-right: 1em;\\n }\\n\\n .time-wrapper {\\n line-height: var(--post-line-height);\\n }\\n}\\n\",\".chat-list-item {\\n display: flex;\\n flex-direction: row;\\n padding: 0.75em;\\n height: 5em;\\n overflow: hidden;\\n box-sizing: border-box;\\n cursor: pointer;\\n}\\n.chat-list-item :focus {\\n outline: none;\\n}\\n.chat-list-item:hover {\\n background-color: var(--selectedPost, rgb(21, 30, 42));\\n box-shadow: 0 0 3px 1px rgba(0, 0, 0, 0.1);\\n}\\n.chat-list-item .chat-list-item-left {\\n margin-right: 1em;\\n}\\n.chat-list-item .chat-list-item-center {\\n width: 100%;\\n box-sizing: border-box;\\n overflow: hidden;\\n word-wrap: break-word;\\n}\\n.chat-list-item .heading {\\n width: 100%;\\n display: inline-flex;\\n justify-content: space-between;\\n line-height: 1em;\\n}\\n.chat-list-item .heading-right {\\n white-space: nowrap;\\n}\\n.chat-list-item .name-and-account-name {\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n overflow: hidden;\\n flex-shrink: 1;\\n line-height: var(--post-line-height);\\n}\\n.chat-list-item .chat-preview {\\n display: inline-flex;\\n overflow: hidden;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n margin: 0.35em 0;\\n color: #b9b9ba;\\n color: var(--faint, #b9b9ba);\\n width: 100%;\\n}\\n.chat-list-item a {\\n color: var(--faintLink, #d8a070);\\n text-decoration: none;\\n pointer-events: none;\\n}\\n.chat-list-item:hover .animated.avatar canvas {\\n display: none;\\n}\\n.chat-list-item:hover .animated.avatar img {\\n visibility: visible;\\n}\\n.chat-list-item .Avatar {\\n border-radius: 10px;\\n border-radius: var(--avatarAltRadius, 10px);\\n}\\n.chat-list-item .chat-preview-body {\\n --emoji-size: 1.4em;\\n padding-right: 1em;\\n}\\n.chat-list-item .time-wrapper {\\n line-height: var(--post-line-height);\\n}\",\"$main-color: #f58d2c;\\n$main-background: white;\\n$darkened-background: whitesmoke;\\n\\n$fallback--bg: #121a24;\\n$fallback--fg: #182230;\\n$fallback--faint: rgb(185 185 186 / 50%);\\n$fallback--text: #b9b9ba;\\n$fallback--link: #d8a070;\\n$fallback--icon: #666;\\n$fallback--lightBg: rgb(21 30 42);\\n$fallback--lightText: #b9b9ba;\\n$fallback--border: #222;\\n$fallback--cRed: #f00;\\n$fallback--cBlue: #0095ff;\\n$fallback--cGreen: #0fa00f;\\n$fallback--cOrange: orange;\\n\\n$fallback--alertError: rgb(211 16 20 / 50%);\\n$fallback--alertWarning: rgb(111 111 20 / 50%);\\n\\n$fallback--panelRadius: 10px;\\n$fallback--checkboxRadius: 2px;\\n$fallback--btnRadius: 4px;\\n$fallback--inputRadius: 4px;\\n$fallback--tooltipRadius: 5px;\\n$fallback--avatarRadius: 4px;\\n$fallback--avatarAltRadius: 10px;\\n$fallback--attachmentRadius: 10px;\\n$fallback--chatMessageRadius: 10px;\\n\\n$fallback--buttonShadow: 0 0 2px 0 rgb(0 0 0 / 100%),\\n 0 1px 0 0 rgb(255 255 255 / 20%) inset,\\n 0 -1px 0 0 rgb(0 0 0 / 20%) inset;\\n\\n$status-margin: 0.75em;\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2NoYXRfbGlzdF9pdGVtL2NoYXRfbGlzdF9pdGVtLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTQyNmY4MjIyJmxhbmc9c2Nzcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBO0FBQ2dIO0FBQ2pCO0FBQy9GLDhCQUE4QixtRkFBMkIsQ0FBQyw0RkFBcUM7QUFDL0Y7QUFDQSwyREFBMkQsa0JBQWtCLHdCQUF3QixvQkFBb0IsZ0JBQWdCLHFCQUFxQiwyQkFBMkIsb0JBQW9CLEdBQUcsMEJBQTBCLGtCQUFrQixHQUFHLHlCQUF5QiwyREFBMkQsK0NBQStDLEdBQUcsd0NBQXdDLHNCQUFzQixHQUFHLDBDQUEwQyxnQkFBZ0IsMkJBQTJCLHFCQUFxQiwwQkFBMEIsR0FBRyw0QkFBNEIsZ0JBQWdCLHlCQUF5QixtQ0FBbUMscUJBQXFCLEdBQUcsa0NBQWtDLHdCQUF3QixHQUFHLDBDQUEwQyw0QkFBNEIsd0JBQXdCLHFCQUFxQixtQkFBbUIseUNBQXlDLEdBQUcsaUNBQWlDLHlCQUF5QixxQkFBcUIsd0JBQXdCLDRCQUE0QixxQkFBcUIsbUJBQW1CLGlDQUFpQyxnQkFBZ0IsR0FBRyxxQkFBcUIscUNBQXFDLDBCQUEwQix5QkFBeUIsR0FBRyxpREFBaUQsa0JBQWtCLEdBQUcsOENBQThDLHdCQUF3QixHQUFHLDJCQUEyQix3QkFBd0IsZ0RBQWdELEdBQUcsc0NBQXNDLHdCQUF3Qix1QkFBdUIsR0FBRyxpQ0FBaUMseUNBQXlDLEdBQUcsT0FBTyxxTkFBcU4sVUFBVSxXQUFXLFVBQVUsVUFBVSxXQUFXLFdBQVcsVUFBVSxLQUFLLEtBQUssVUFBVSxLQUFLLEtBQUssV0FBVyxXQUFXLEtBQUssS0FBSyxXQUFXLEtBQUssS0FBSyxVQUFVLFdBQVcsV0FBVyxXQUFXLEtBQUssS0FBSyxVQUFVLFdBQVcsV0FBVyxXQUFXLEtBQUssS0FBSyxXQUFXLEtBQUssS0FBSyxXQUFXLFdBQVcsV0FBVyxVQUFVLFdBQVcsS0FBSyxLQUFLLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFlBQVksVUFBVSxLQUFLLEtBQUssV0FBVyxXQUFXLFdBQVcsS0FBSyxLQUFLLFVBQVUsS0FBSyxLQUFLLFdBQVcsS0FBSyxLQUFLLGFBQWEsYUFBYSxLQUFLLEtBQUssV0FBVyxXQUFXLEtBQUssTUFBTSxXQUFXLDBDQUEwQyxrQkFBa0Isd0JBQXdCLG9CQUFvQixnQkFBZ0IscUJBQXFCLDJCQUEyQixvQkFBb0IsY0FBYyxvQkFBb0IsS0FBSyxlQUFlLGdFQUFnRSwrQ0FBK0MsS0FBSyw0QkFBNEIsd0JBQXdCLEtBQUssOEJBQThCLGtCQUFrQiw2QkFBNkIsdUJBQXVCLDRCQUE0QixLQUFLLGdCQUFnQixrQkFBa0IsMkJBQTJCLHFDQUFxQyx1QkFBdUIsS0FBSyxzQkFBc0IsMEJBQTBCLEtBQUssOEJBQThCLDhCQUE4QiwwQkFBMEIsdUJBQXVCLHFCQUFxQiwyQ0FBMkMsS0FBSyxxQkFBcUIsMkJBQTJCLHVCQUF1QiwwQkFBMEIsOEJBQThCLHVCQUF1Qiw2QkFBNkIsMkNBQTJDLGtCQUFrQixLQUFLLFNBQVMsK0NBQStDLDRCQUE0QiwyQkFBMkIsS0FBSyxnQ0FBZ0MsY0FBYyxzQkFBc0IsT0FBTyxhQUFhLDRCQUE0QixPQUFPLEtBQUssZUFBZSxnREFBZ0Qsd0VBQXdFLEtBQUssMEJBQTBCLDBCQUEwQiwyQkFBMkIsS0FBSyxxQkFBcUIsMkNBQTJDLEtBQUssR0FBRyxzQkFBc0Isa0JBQWtCLHdCQUF3QixvQkFBb0IsZ0JBQWdCLHFCQUFxQiwyQkFBMkIsb0JBQW9CLEdBQUcsMEJBQTBCLGtCQUFrQixHQUFHLHlCQUF5QiwyREFBMkQsK0NBQStDLEdBQUcsd0NBQXdDLHNCQUFzQixHQUFHLDBDQUEwQyxnQkFBZ0IsMkJBQTJCLHFCQUFxQiwwQkFBMEIsR0FBRyw0QkFBNEIsZ0JBQWdCLHlCQUF5QixtQ0FBbUMscUJBQXFCLEdBQUcsa0NBQWtDLHdCQUF3QixHQUFHLDBDQUEwQyw0QkFBNEIsd0JBQXdCLHFCQUFxQixtQkFBbUIseUNBQXlDLEdBQUcsaUNBQWlDLHlCQUF5QixxQkFBcUIsd0JBQXdCLDRCQUE0QixxQkFBcUIsbUJBQW1CLGlDQUFpQyxnQkFBZ0IsR0FBRyxxQkFBcUIscUNBQXFDLDBCQUEwQix5QkFBeUIsR0FBRyxpREFBaUQsa0JBQWtCLEdBQUcsOENBQThDLHdCQUF3QixHQUFHLDJCQUEyQix3QkFBd0IsZ0RBQWdELEdBQUcsc0NBQXNDLHdCQUF3Qix1QkFBdUIsR0FBRyxpQ0FBaUMseUNBQXlDLEdBQUcsd0JBQXdCLDBCQUEwQixtQ0FBbUMsMkJBQTJCLHlCQUF5QiwyQ0FBMkMsMkJBQTJCLDJCQUEyQix3QkFBd0Isb0NBQW9DLGdDQUFnQywwQkFBMEIsd0JBQXdCLDRCQUE0Qiw2QkFBNkIsNkJBQTZCLGdEQUFnRCxpREFBaUQsaUNBQWlDLGlDQUFpQyw0QkFBNEIsOEJBQThCLGdDQUFnQywrQkFBK0IsbUNBQW1DLG9DQUFvQyxxQ0FBcUMsMElBQTBJLDJCQUEyQixxQkFBcUI7QUFDNXdOO0FBQ0EsaUVBQWUsdUJBQXVCLEVBQUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL2NvbXBvbmVudHMvY2hhdF9saXN0X2l0ZW0vY2hhdF9saXN0X2l0ZW0udnVlPzYyZDkiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gSW1wb3J0c1xuaW1wb3J0IF9fX0NTU19MT0FERVJfQVBJX1NPVVJDRU1BUF9JTVBPUlRfX18gZnJvbSBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2Rpc3QvcnVudGltZS9zb3VyY2VNYXBzLmpzXCI7XG5pbXBvcnQgX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fIGZyb20gXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvYXBpLmpzXCI7XG52YXIgX19fQ1NTX0xPQURFUl9FWFBPUlRfX18gPSBfX19DU1NfTE9BREVSX0FQSV9JTVBPUlRfX18oX19fQ1NTX0xPQURFUl9BUElfU09VUkNFTUFQX0lNUE9SVF9fXyk7XG4vLyBNb2R1bGVcbl9fX0NTU19MT0FERVJfRVhQT1JUX19fLnB1c2goW21vZHVsZS5pZCwgXCIuY2hhdC1saXN0LWl0ZW0ge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XFxuICBwYWRkaW5nOiAwLjc1ZW07XFxuICBoZWlnaHQ6IDVlbTtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xcbiAgY3Vyc29yOiBwb2ludGVyO1xcbn1cXG4uY2hhdC1saXN0LWl0ZW0gOmZvY3VzIHtcXG4gIG91dGxpbmU6IG5vbmU7XFxufVxcbi5jaGF0LWxpc3QtaXRlbTpob3ZlciB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zZWxlY3RlZFBvc3QsIHJnYigyMSwgMzAsIDQyKSk7XFxuICBib3gtc2hhZG93OiAwIDAgM3B4IDFweCByZ2JhKDAsIDAsIDAsIDAuMSk7XFxufVxcbi5jaGF0LWxpc3QtaXRlbSAuY2hhdC1saXN0LWl0ZW0tbGVmdCB7XFxuICBtYXJnaW4tcmlnaHQ6IDFlbTtcXG59XFxuLmNoYXQtbGlzdC1pdGVtIC5jaGF0LWxpc3QtaXRlbS1jZW50ZXIge1xcbiAgd2lkdGg6IDEwMCU7XFxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcXG59XFxuLmNoYXQtbGlzdC1pdGVtIC5oZWFkaW5nIHtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XFxuICBsaW5lLWhlaWdodDogMWVtO1xcbn1cXG4uY2hhdC1saXN0LWl0ZW0gLmhlYWRpbmctcmlnaHQge1xcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcXG59XFxuLmNoYXQtbGlzdC1pdGVtIC5uYW1lLWFuZC1hY2NvdW50LW5hbWUge1xcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIGZsZXgtc2hyaW5rOiAxO1xcbiAgbGluZS1oZWlnaHQ6IHZhcigtLXBvc3QtbGluZS1oZWlnaHQpO1xcbn1cXG4uY2hhdC1saXN0LWl0ZW0gLmNoYXQtcHJldmlldyB7XFxuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XFxuICBtYXJnaW46IDAuMzVlbSAwO1xcbiAgY29sb3I6ICNiOWI5YmE7XFxuICBjb2xvcjogdmFyKC0tZmFpbnQsICNiOWI5YmEpO1xcbiAgd2lkdGg6IDEwMCU7XFxufVxcbi5jaGF0LWxpc3QtaXRlbSBhIHtcXG4gIGNvbG9yOiB2YXIoLS1mYWludExpbmssICNkOGEwNzApO1xcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxufVxcbi5jaGF0LWxpc3QtaXRlbTpob3ZlciAuYW5pbWF0ZWQuYXZhdGFyIGNhbnZhcyB7XFxuICBkaXNwbGF5OiBub25lO1xcbn1cXG4uY2hhdC1saXN0LWl0ZW06aG92ZXIgLmFuaW1hdGVkLmF2YXRhciBpbWcge1xcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcXG59XFxuLmNoYXQtbGlzdC1pdGVtIC5BdmF0YXIge1xcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWF2YXRhckFsdFJhZGl1cywgMTBweCk7XFxufVxcbi5jaGF0LWxpc3QtaXRlbSAuY2hhdC1wcmV2aWV3LWJvZHkge1xcbiAgLS1lbW9qaS1zaXplOiAxLjRlbTtcXG4gIHBhZGRpbmctcmlnaHQ6IDFlbTtcXG59XFxuLmNoYXQtbGlzdC1pdGVtIC50aW1lLXdyYXBwZXIge1xcbiAgbGluZS1oZWlnaHQ6IHZhcigtLXBvc3QtbGluZS1oZWlnaHQpO1xcbn1cIiwgXCJcIix7XCJ2ZXJzaW9uXCI6MyxcInNvdXJjZXNcIjpbXCJ3ZWJwYWNrOi8vLi9zcmMvY29tcG9uZW50cy9jaGF0X2xpc3RfaXRlbS9jaGF0X2xpc3RfaXRlbS5zY3NzXCIsXCJ3ZWJwYWNrOi8vLi9zcmMvY29tcG9uZW50cy9jaGF0X2xpc3RfaXRlbS9jaGF0X2xpc3RfaXRlbS52dWVcIixcIndlYnBhY2s6Ly8uL3NyYy9fdmFyaWFibGVzLnNjc3NcIl0sXCJuYW1lc1wiOltdLFwibWFwcGluZ3NcIjpcIkFBQUE7RUFDRSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSxlQUFBO0VBQ0EsV0FBQTtFQUNBLGdCQUFBO0VBQ0Esc0JBQUE7RUFDQSxlQUFBO0FDQ0Y7QURDRTtFQUNFLGFBQUE7QUNDSjtBREVFO0VBQ0Usc0RBQUE7RUFDQSwwQ0FBQTtBQ0FKO0FER0U7RUFDRSxpQkFBQTtBQ0RKO0FESUU7RUFDRSxXQUFBO0VBQ0Esc0JBQUE7RUFDQSxnQkFBQTtFQUNBLHFCQUFBO0FDRko7QURLRTtFQUNFLFdBQUE7RUFDQSxvQkFBQTtFQUNBLDhCQUFBO0VBQ0EsZ0JBQUE7QUNISjtBRE1FO0VBQ0UsbUJBQUE7QUNKSjtBRE9FO0VBQ0UsdUJBQUE7RUFDQSxtQkFBQTtFQUNBLGdCQUFBO0VBQ0EsY0FBQTtFQUNBLG9DQUFBO0FDTEo7QURRRTtFQUNFLG9CQUFBO0VBQ0EsZ0JBQUE7RUFDQSxtQkFBQTtFQUNBLHVCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxjRS9DYTtFRmdEYiw0QkFBQTtFQUNBLFdBQUE7QUNOSjtBRFNFO0VBQ0UsZ0NBQUE7RUFDQSxxQkFBQTtFQUNBLG9CQUFBO0FDUEo7QURXSTtFQUNFLGFBQUE7QUNUTjtBRFlJO0VBQ0UsbUJBQUE7QUNWTjtBRGNFO0VBQ0UsbUJFakR3QjtFRmtEeEIsMkNBQUE7QUNaSjtBRGVFO0VBQ0UsbUJBQUE7RUFFQSxrQkFBQTtBQ2RKO0FEaUJFO0VBQ0Usb0NBQUE7QUNmSlwiLFwic291cmNlc0NvbnRlbnRcIjpbXCIuY2hhdC1saXN0LWl0ZW0ge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XFxuICBwYWRkaW5nOiAwLjc1ZW07XFxuICBoZWlnaHQ6IDVlbTtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xcbiAgY3Vyc29yOiBwb2ludGVyO1xcblxcbiAgOmZvY3VzIHtcXG4gICAgb3V0bGluZTogbm9uZTtcXG4gIH1cXG5cXG4gICY6aG92ZXIge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zZWxlY3RlZFBvc3QsICRmYWxsYmFjay0tbGlnaHRCZyk7XFxuICAgIGJveC1zaGFkb3c6IDAgMCAzcHggMXB4IHJnYigwIDAgMCAvIDEwJSk7XFxuICB9XFxuXFxuICAuY2hhdC1saXN0LWl0ZW0tbGVmdCB7XFxuICAgIG1hcmdpbi1yaWdodDogMWVtO1xcbiAgfVxcblxcbiAgLmNoYXQtbGlzdC1pdGVtLWNlbnRlciB7XFxuICAgIHdpZHRoOiAxMDAlO1xcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XFxuICB9XFxuXFxuICAuaGVhZGluZyB7XFxuICAgIHdpZHRoOiAxMDAlO1xcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xcbiAgICBsaW5lLWhlaWdodDogMWVtO1xcbiAgfVxcblxcbiAgLmhlYWRpbmctcmlnaHQge1xcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcbiAgfVxcblxcbiAgLm5hbWUtYW5kLWFjY291bnQtbmFtZSB7XFxuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgICBmbGV4LXNocmluazogMTtcXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLXBvc3QtbGluZS1oZWlnaHQpO1xcbiAgfVxcblxcbiAgLmNoYXQtcHJldmlldyB7XFxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcXG4gICAgbWFyZ2luOiAwLjM1ZW0gMDtcXG4gICAgY29sb3I6ICRmYWxsYmFjay0tdGV4dDtcXG4gICAgY29sb3I6IHZhcigtLWZhaW50LCAkZmFsbGJhY2stLXRleHQpO1xcbiAgICB3aWR0aDogMTAwJTtcXG4gIH1cXG5cXG4gIGEge1xcbiAgICBjb2xvcjogdmFyKC0tZmFpbnRMaW5rLCAkZmFsbGJhY2stLWxpbmspO1xcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbiAgfVxcblxcbiAgJjpob3ZlciAuYW5pbWF0ZWQuYXZhdGFyIHtcXG4gICAgY2FudmFzIHtcXG4gICAgICBkaXNwbGF5OiBub25lO1xcbiAgICB9XFxuXFxuICAgIGltZyB7XFxuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcXG4gICAgfVxcbiAgfVxcblxcbiAgLkF2YXRhciB7XFxuICAgIGJvcmRlci1yYWRpdXM6ICRmYWxsYmFjay0tYXZhdGFyQWx0UmFkaXVzO1xcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1hdmF0YXJBbHRSYWRpdXMsICRmYWxsYmFjay0tYXZhdGFyQWx0UmFkaXVzKTtcXG4gIH1cXG5cXG4gIC5jaGF0LXByZXZpZXctYm9keSB7XFxuICAgIC0tZW1vamktc2l6ZTogMS40ZW07XFxuXFxuICAgIHBhZGRpbmctcmlnaHQ6IDFlbTtcXG4gIH1cXG5cXG4gIC50aW1lLXdyYXBwZXIge1xcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tcG9zdC1saW5lLWhlaWdodCk7XFxuICB9XFxufVxcblwiLFwiLmNoYXQtbGlzdC1pdGVtIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LWRpcmVjdGlvbjogcm93O1xcbiAgcGFkZGluZzogMC43NWVtO1xcbiAgaGVpZ2h0OiA1ZW07XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcXG4gIGN1cnNvcjogcG9pbnRlcjtcXG59XFxuLmNoYXQtbGlzdC1pdGVtIDpmb2N1cyB7XFxuICBvdXRsaW5lOiBub25lO1xcbn1cXG4uY2hhdC1saXN0LWl0ZW06aG92ZXIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2VsZWN0ZWRQb3N0LCByZ2IoMjEsIDMwLCA0MikpO1xcbiAgYm94LXNoYWRvdzogMCAwIDNweCAxcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xcbn1cXG4uY2hhdC1saXN0LWl0ZW0gLmNoYXQtbGlzdC1pdGVtLWxlZnQge1xcbiAgbWFyZ2luLXJpZ2h0OiAxZW07XFxufVxcbi5jaGF0LWxpc3QtaXRlbSAuY2hhdC1saXN0LWl0ZW0tY2VudGVyIHtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XFxufVxcbi5jaGF0LWxpc3QtaXRlbSAuaGVhZGluZyB7XFxuICB3aWR0aDogMTAwJTtcXG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xcbiAgbGluZS1oZWlnaHQ6IDFlbTtcXG59XFxuLmNoYXQtbGlzdC1pdGVtIC5oZWFkaW5nLXJpZ2h0IHtcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XFxufVxcbi5jaGF0LWxpc3QtaXRlbSAubmFtZS1hbmQtYWNjb3VudC1uYW1lIHtcXG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICBmbGV4LXNocmluazogMTtcXG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1wb3N0LWxpbmUtaGVpZ2h0KTtcXG59XFxuLmNoYXQtbGlzdC1pdGVtIC5jaGF0LXByZXZpZXcge1xcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcXG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xcbiAgbWFyZ2luOiAwLjM1ZW0gMDtcXG4gIGNvbG9yOiAjYjliOWJhO1xcbiAgY29sb3I6IHZhcigtLWZhaW50LCAjYjliOWJhKTtcXG4gIHdpZHRoOiAxMDAlO1xcbn1cXG4uY2hhdC1saXN0LWl0ZW0gYSB7XFxuICBjb2xvcjogdmFyKC0tZmFpbnRMaW5rLCAjZDhhMDcwKTtcXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbn1cXG4uY2hhdC1saXN0LWl0ZW06aG92ZXIgLmFuaW1hdGVkLmF2YXRhciBjYW52YXMge1xcbiAgZGlzcGxheTogbm9uZTtcXG59XFxuLmNoYXQtbGlzdC1pdGVtOmhvdmVyIC5hbmltYXRlZC5hdmF0YXIgaW1nIHtcXG4gIHZpc2liaWxpdHk6IHZpc2libGU7XFxufVxcbi5jaGF0LWxpc3QtaXRlbSAuQXZhdGFyIHtcXG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XFxuICBib3JkZXItcmFkaXVzOiB2YXIoLS1hdmF0YXJBbHRSYWRpdXMsIDEwcHgpO1xcbn1cXG4uY2hhdC1saXN0LWl0ZW0gLmNoYXQtcHJldmlldy1ib2R5IHtcXG4gIC0tZW1vamktc2l6ZTogMS40ZW07XFxuICBwYWRkaW5nLXJpZ2h0OiAxZW07XFxufVxcbi5jaGF0LWxpc3QtaXRlbSAudGltZS13cmFwcGVyIHtcXG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1wb3N0LWxpbmUtaGVpZ2h0KTtcXG59XCIsXCIkbWFpbi1jb2xvcjogI2Y1OGQyYztcXG4kbWFpbi1iYWNrZ3JvdW5kOiB3aGl0ZTtcXG4kZGFya2VuZWQtYmFja2dyb3VuZDogd2hpdGVzbW9rZTtcXG5cXG4kZmFsbGJhY2stLWJnOiAjMTIxYTI0O1xcbiRmYWxsYmFjay0tZmc6ICMxODIyMzA7XFxuJGZhbGxiYWNrLS1mYWludDogcmdiKDE4NSAxODUgMTg2IC8gNTAlKTtcXG4kZmFsbGJhY2stLXRleHQ6ICNiOWI5YmE7XFxuJGZhbGxiYWNrLS1saW5rOiAjZDhhMDcwO1xcbiRmYWxsYmFjay0taWNvbjogIzY2NjtcXG4kZmFsbGJhY2stLWxpZ2h0Qmc6IHJnYigyMSAzMCA0Mik7XFxuJGZhbGxiYWNrLS1saWdodFRleHQ6ICNiOWI5YmE7XFxuJGZhbGxiYWNrLS1ib3JkZXI6ICMyMjI7XFxuJGZhbGxiYWNrLS1jUmVkOiAjZjAwO1xcbiRmYWxsYmFjay0tY0JsdWU6ICMwMDk1ZmY7XFxuJGZhbGxiYWNrLS1jR3JlZW46ICMwZmEwMGY7XFxuJGZhbGxiYWNrLS1jT3JhbmdlOiBvcmFuZ2U7XFxuXFxuJGZhbGxiYWNrLS1hbGVydEVycm9yOiByZ2IoMjExIDE2IDIwIC8gNTAlKTtcXG4kZmFsbGJhY2stLWFsZXJ0V2FybmluZzogcmdiKDExMSAxMTEgMjAgLyA1MCUpO1xcblxcbiRmYWxsYmFjay0tcGFuZWxSYWRpdXM6IDEwcHg7XFxuJGZhbGxiYWNrLS1jaGVja2JveFJhZGl1czogMnB4O1xcbiRmYWxsYmFjay0tYnRuUmFkaXVzOiA0cHg7XFxuJGZhbGxiYWNrLS1pbnB1dFJhZGl1czogNHB4O1xcbiRmYWxsYmFjay0tdG9vbHRpcFJhZGl1czogNXB4O1xcbiRmYWxsYmFjay0tYXZhdGFyUmFkaXVzOiA0cHg7XFxuJGZhbGxiYWNrLS1hdmF0YXJBbHRSYWRpdXM6IDEwcHg7XFxuJGZhbGxiYWNrLS1hdHRhY2htZW50UmFkaXVzOiAxMHB4O1xcbiRmYWxsYmFjay0tY2hhdE1lc3NhZ2VSYWRpdXM6IDEwcHg7XFxuXFxuJGZhbGxiYWNrLS1idXR0b25TaGFkb3c6IDAgMCAycHggMCByZ2IoMCAwIDAgLyAxMDAlKSxcXG4gIDAgMXB4IDAgMCByZ2IoMjU1IDI1NSAyNTUgLyAyMCUpIGluc2V0LFxcbiAgMCAtMXB4IDAgMCByZ2IoMCAwIDAgLyAyMCUpIGluc2V0O1xcblxcbiRzdGF0dXMtbWFyZ2luOiAwLjc1ZW07XFxuXCJdLFwic291cmNlUm9vdFwiOlwiXCJ9XSk7XG4vLyBFeHBvcnRzXG5leHBvcnQgZGVmYXVsdCBfX19DU1NfTE9BREVSX0VYUE9SVF9fXztcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/chat_list_item/chat_list_item.vue?vue&type=style&index=0&id=426f8222&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/chat_message/chat_message.vue?vue&type=style&index=0&id=7475ee4f&lang=scss":
/*!********************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/chat_message/chat_message.vue?vue&type=style&index=0&id=7475ee4f&lang=scss ***!
\********************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".chat-message-wrapper.hovered-message-chain .animated.Avatar canvas {\\n display: none;\\n}\\n.chat-message-wrapper.hovered-message-chain .animated.Avatar img {\\n visibility: visible;\\n}\\n.chat-message-wrapper .chat-message-menu {\\n transition: opacity 0.1s;\\n opacity: 0;\\n position: absolute;\\n top: -0.8em;\\n}\\n.chat-message-wrapper .chat-message-menu button {\\n padding-top: 0.2em;\\n padding-bottom: 0.2em;\\n}\\n.chat-message-wrapper .menu-icon {\\n cursor: pointer;\\n}\\n.chat-message-wrapper .menu-icon:hover, .extra-button-popover.open .chat-message-wrapper .menu-icon {\\n color: #b9b9ba;\\n color: var(--text, #b9b9ba);\\n}\\n.chat-message-wrapper .popover {\\n width: 12em;\\n}\\n.chat-message-wrapper .chat-message {\\n display: flex;\\n padding-bottom: 0.5em;\\n}\\n.chat-message-wrapper .chat-message .status-body:hover {\\n --_still-image-img-visibility: visible;\\n --_still-image-canvas-visibility: hidden;\\n --_still-image-label-visibility: hidden;\\n}\\n.chat-message-wrapper .avatar-wrapper {\\n margin-right: 0.72em;\\n width: 32px;\\n}\\n.chat-message-wrapper .link-preview,\\n.chat-message-wrapper .attachments {\\n margin-bottom: 1em;\\n}\\n.chat-message-wrapper .status {\\n border-radius: 10px;\\n border-radius: var(--chatMessageRadius, 10px);\\n display: flex;\\n padding: 0.75em;\\n}\\n.chat-message-wrapper .created-at {\\n position: relative;\\n float: right;\\n font-size: 0.8em;\\n margin: -1em 0 -0.5em;\\n font-style: italic;\\n opacity: 0.8;\\n}\\n.chat-message-wrapper .without-attachment .message-content .RichContent::after {\\n margin-right: 5.4em;\\n content: \\\" \\\";\\n display: inline-block;\\n}\\n.chat-message-wrapper .pending .status-content.media-body,\\n.chat-message-wrapper .pending .created-at {\\n color: var(--faint);\\n}\\n.chat-message-wrapper .error .status-content.media-body,\\n.chat-message-wrapper .error .created-at {\\n color: #f00;\\n color: var(--badgeNotification, #f00);\\n}\\n.chat-message-wrapper .chat-message-inner {\\n display: flex;\\n flex-direction: column;\\n align-items: flex-start;\\n max-width: 80%;\\n min-width: 10em;\\n width: 100%;\\n}\\n.chat-message-wrapper .outgoing {\\n display: flex;\\n flex-flow: row wrap;\\n align-content: end;\\n justify-content: flex-end;\\n}\\n.chat-message-wrapper .outgoing a {\\n color: var(--chatMessageOutgoingLink, #d8a070);\\n}\\n.chat-message-wrapper .outgoing .status {\\n color: var(--chatMessageOutgoingText, #b9b9ba);\\n background-color: var(--chatMessageOutgoingBg, rgb(21, 30, 42));\\n border: 1px solid var(--chatMessageOutgoingBorder, --lightBg);\\n}\\n.chat-message-wrapper .outgoing .chat-message-inner {\\n align-items: flex-end;\\n}\\n.chat-message-wrapper .outgoing .chat-message-menu {\\n right: 0.4rem;\\n}\\n.chat-message-wrapper .incoming a {\\n color: var(--chatMessageIncomingLink, #d8a070);\\n}\\n.chat-message-wrapper .incoming .status {\\n color: var(--chatMessageIncomingText, #b9b9ba);\\n background-color: var(--chatMessageIncomingBg, #121a24);\\n border: 1px solid var(--chatMessageIncomingBorder, --border);\\n}\\n.chat-message-wrapper .incoming .created-at a {\\n color: var(--chatMessageIncomingText, #b9b9ba);\\n}\\n.chat-message-wrapper .incoming .chat-message-menu {\\n left: 0.4rem;\\n}\\n.chat-message-wrapper .chat-message-inner.with-media {\\n width: 100%;\\n}\\n.chat-message-wrapper .chat-message-inner.with-media .status {\\n width: 100%;\\n}\\n.chat-message-wrapper .visible {\\n opacity: 1;\\n}\\n.chat-message-date-separator {\\n text-align: center;\\n margin: 1.4em 0;\\n font-size: 0.9em;\\n -webkit-user-select: none;\\n -moz-user-select: none;\\n user-select: none;\\n color: #b9b9ba;\\n color: var(--faintedText, #b9b9ba);\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/chat_message/chat_message.scss\",\"webpack://./src/components/chat_message/chat_message.vue\",\"webpack://./src/_variables.scss\"],\"names\":[],\"mappings\":\"AAKM;EACE,aAAA;ACJR;ADOM;EACE,mBAAA;ACLR;ADUE;EACE,wBAAA;EACA,UAAA;EACA,kBAAA;EACA,WAAA;ACRJ;ADUI;EACE,kBAAA;EACA,qBAAA;ACRN;ADYE;EACE,eAAA;ACVJ;ADYI;EAEE,cEzBW;EF0BX,2BAAA;ACXN;ADeE;EACE,WAAA;ACbJ;ADgBE;EACE,aAAA;EACA,qBAAA;ACdJ;ADgBI;EACE,sCAAA;EACA,wCAAA;EACA,uCAAA;ACdN;ADkBE;EACE,oBAAA;EACA,WAAA;AChBJ;ADmBE;;EAEE,kBAAA;ACjBJ;ADoBE;EACE,mBElC0B;EFmC1B,6CAAA;EACA,aAAA;EACA,eAAA;AClBJ;ADqBE;EACE,kBAAA;EACA,YAAA;EACA,gBAAA;EACA,qBAAA;EACA,kBAAA;EACA,YAAA;ACnBJ;ADyBM;EACE,mBAAA;EACA,YAAA;EACA,qBAAA;ACvBR;AD6BI;;EAEE,mBAAA;AC3BN;ADgCI;;EAEE,WEtFW;EFuFX,qCAAA;AC9BN;ADkCE;EACE,aAAA;EACA,sBAAA;EACA,uBAAA;EACA,cAAA;EACA,eAAA;EACA,WAAA;AChCJ;ADmCE;EACE,aAAA;EACA,mBAAA;EACA,kBAAA;EACA,yBAAA;ACjCJ;ADmCI;EACE,8CAAA;ACjCN;ADoCI;EACE,8CAAA;EACA,+DAAA;EACA,6DAAA;AClCN;ADqCI;EACE,qBAAA;ACnCN;ADsCI;EACE,aAAA;ACpCN;ADyCI;EACE,8CAAA;ACvCN;AD0CI;EACE,8CAAA;EACA,uDAAA;EACA,4DAAA;ACxCN;AD4CM;EACE,8CAAA;AC1CR;AD8CI;EACE,YAAA;AC5CN;ADgDE;EACE,WAAA;AC9CJ;ADgDI;EACE,WAAA;AC9CN;ADkDE;EACE,UAAA;AChDJ;ADoDA;EACE,kBAAA;EACA,eAAA;EACA,gBAAA;EACA,yBAAA;KAAA,sBAAA;UAAA,iBAAA;EACA,cE3Ke;EF4Kf,kCAAA;ACjDF\",\"sourcesContent\":[\"@import \\\"../../variables\\\";\\n\\n.chat-message-wrapper {\\n &.hovered-message-chain {\\n .animated.Avatar {\\n canvas {\\n display: none;\\n }\\n\\n img {\\n visibility: visible;\\n }\\n }\\n }\\n\\n .chat-message-menu {\\n transition: opacity 0.1s;\\n opacity: 0;\\n position: absolute;\\n top: -0.8em;\\n\\n button {\\n padding-top: 0.2em;\\n padding-bottom: 0.2em;\\n }\\n }\\n\\n .menu-icon {\\n cursor: pointer;\\n\\n &:hover,\\n .extra-button-popover.open & {\\n color: $fallback--text;\\n color: var(--text, $fallback--text);\\n }\\n }\\n\\n .popover {\\n width: 12em;\\n }\\n\\n .chat-message {\\n display: flex;\\n padding-bottom: 0.5em;\\n\\n .status-body:hover {\\n --_still-image-img-visibility: visible;\\n --_still-image-canvas-visibility: hidden;\\n --_still-image-label-visibility: hidden;\\n }\\n }\\n\\n .avatar-wrapper {\\n margin-right: 0.72em;\\n width: 32px;\\n }\\n\\n .link-preview,\\n .attachments {\\n margin-bottom: 1em;\\n }\\n\\n .status {\\n border-radius: $fallback--chatMessageRadius;\\n border-radius: var(--chatMessageRadius, $fallback--chatMessageRadius);\\n display: flex;\\n padding: 0.75em;\\n }\\n\\n .created-at {\\n position: relative;\\n float: right;\\n font-size: 0.8em;\\n margin: -1em 0 -0.5em;\\n font-style: italic;\\n opacity: 0.8;\\n }\\n\\n .without-attachment {\\n .message-content {\\n // TODO figure out how to do it properly\\n .RichContent::after {\\n margin-right: 5.4em;\\n content: \\\" \\\";\\n display: inline-block;\\n }\\n }\\n }\\n\\n .pending {\\n .status-content.media-body,\\n .created-at {\\n color: var(--faint);\\n }\\n }\\n\\n .error {\\n .status-content.media-body,\\n .created-at {\\n color: $fallback--cRed;\\n color: var(--badgeNotification, $fallback--cRed);\\n }\\n }\\n\\n .chat-message-inner {\\n display: flex;\\n flex-direction: column;\\n align-items: flex-start;\\n max-width: 80%;\\n min-width: 10em;\\n width: 100%;\\n }\\n\\n .outgoing {\\n display: flex;\\n flex-flow: row wrap;\\n align-content: end;\\n justify-content: flex-end;\\n\\n a {\\n color: var(--chatMessageOutgoingLink, $fallback--link);\\n }\\n\\n .status {\\n color: var(--chatMessageOutgoingText, $fallback--text);\\n background-color: var(--chatMessageOutgoingBg, $fallback--lightBg);\\n border: 1px solid var(--chatMessageOutgoingBorder, --lightBg);\\n }\\n\\n .chat-message-inner {\\n align-items: flex-end;\\n }\\n\\n .chat-message-menu {\\n right: 0.4rem;\\n }\\n }\\n\\n .incoming {\\n a {\\n color: var(--chatMessageIncomingLink, $fallback--link);\\n }\\n\\n .status {\\n color: var(--chatMessageIncomingText, $fallback--text);\\n background-color: var(--chatMessageIncomingBg, $fallback--bg);\\n border: 1px solid var(--chatMessageIncomingBorder, --border);\\n }\\n\\n .created-at {\\n a {\\n color: var(--chatMessageIncomingText, $fallback--text);\\n }\\n }\\n\\n .chat-message-menu {\\n left: 0.4rem;\\n }\\n }\\n\\n .chat-message-inner.with-media {\\n width: 100%;\\n\\n .status {\\n width: 100%;\\n }\\n }\\n\\n .visible {\\n opacity: 1;\\n }\\n}\\n\\n.chat-message-date-separator {\\n text-align: center;\\n margin: 1.4em 0;\\n font-size: 0.9em;\\n user-select: none;\\n color: $fallback--text;\\n color: var(--faintedText, $fallback--text);\\n}\\n\",\".chat-message-wrapper.hovered-message-chain .animated.Avatar canvas {\\n display: none;\\n}\\n.chat-message-wrapper.hovered-message-chain .animated.Avatar img {\\n visibility: visible;\\n}\\n.chat-message-wrapper .chat-message-menu {\\n transition: opacity 0.1s;\\n opacity: 0;\\n position: absolute;\\n top: -0.8em;\\n}\\n.chat-message-wrapper .chat-message-menu button {\\n padding-top: 0.2em;\\n padding-bottom: 0.2em;\\n}\\n.chat-message-wrapper .menu-icon {\\n cursor: pointer;\\n}\\n.chat-message-wrapper .menu-icon:hover, .extra-button-popover.open .chat-message-wrapper .menu-icon {\\n color: #b9b9ba;\\n color: var(--text, #b9b9ba);\\n}\\n.chat-message-wrapper .popover {\\n width: 12em;\\n}\\n.chat-message-wrapper .chat-message {\\n display: flex;\\n padding-bottom: 0.5em;\\n}\\n.chat-message-wrapper .chat-message .status-body:hover {\\n --_still-image-img-visibility: visible;\\n --_still-image-canvas-visibility: hidden;\\n --_still-image-label-visibility: hidden;\\n}\\n.chat-message-wrapper .avatar-wrapper {\\n margin-right: 0.72em;\\n width: 32px;\\n}\\n.chat-message-wrapper .link-preview,\\n.chat-message-wrapper .attachments {\\n margin-bottom: 1em;\\n}\\n.chat-message-wrapper .status {\\n border-radius: 10px;\\n border-radius: var(--chatMessageRadius, 10px);\\n display: flex;\\n padding: 0.75em;\\n}\\n.chat-message-wrapper .created-at {\\n position: relative;\\n float: right;\\n font-size: 0.8em;\\n margin: -1em 0 -0.5em;\\n font-style: italic;\\n opacity: 0.8;\\n}\\n.chat-message-wrapper .without-attachment .message-content .RichContent::after {\\n margin-right: 5.4em;\\n content: \\\" \\\";\\n display: inline-block;\\n}\\n.chat-message-wrapper .pending .status-content.media-body,\\n.chat-message-wrapper .pending .created-at {\\n color: var(--faint);\\n}\\n.chat-message-wrapper .error .status-content.media-body,\\n.chat-message-wrapper .error .created-at {\\n color: #f00;\\n color: var(--badgeNotification, #f00);\\n}\\n.chat-message-wrapper .chat-message-inner {\\n display: flex;\\n flex-direction: column;\\n align-items: flex-start;\\n max-width: 80%;\\n min-width: 10em;\\n width: 100%;\\n}\\n.chat-message-wrapper .outgoing {\\n display: flex;\\n flex-flow: row wrap;\\n align-content: end;\\n justify-content: flex-end;\\n}\\n.chat-message-wrapper .outgoing a {\\n color: var(--chatMessageOutgoingLink, #d8a070);\\n}\\n.chat-message-wrapper .outgoing .status {\\n color: var(--chatMessageOutgoingText, #b9b9ba);\\n background-color: var(--chatMessageOutgoingBg, rgb(21, 30, 42));\\n border: 1px solid var(--chatMessageOutgoingBorder, --lightBg);\\n}\\n.chat-message-wrapper .outgoing .chat-message-inner {\\n align-items: flex-end;\\n}\\n.chat-message-wrapper .outgoing .chat-message-menu {\\n right: 0.4rem;\\n}\\n.chat-message-wrapper .incoming a {\\n color: var(--chatMessageIncomingLink, #d8a070);\\n}\\n.chat-message-wrapper .incoming .status {\\n color: var(--chatMessageIncomingText, #b9b9ba);\\n background-color: var(--chatMessageIncomingBg, #121a24);\\n border: 1px solid var(--chatMessageIncomingBorder, --border);\\n}\\n.chat-message-wrapper .incoming .created-at a {\\n color: var(--chatMessageIncomingText, #b9b9ba);\\n}\\n.chat-message-wrapper .incoming .chat-message-menu {\\n left: 0.4rem;\\n}\\n.chat-message-wrapper .chat-message-inner.with-media {\\n width: 100%;\\n}\\n.chat-message-wrapper .chat-message-inner.with-media .status {\\n width: 100%;\\n}\\n.chat-message-wrapper .visible {\\n opacity: 1;\\n}\\n\\n.chat-message-date-separator {\\n text-align: center;\\n margin: 1.4em 0;\\n font-size: 0.9em;\\n user-select: none;\\n color: #b9b9ba;\\n color: var(--faintedText, #b9b9ba);\\n}\",\"$main-color: #f58d2c;\\n$main-background: white;\\n$darkened-background: whitesmoke;\\n\\n$fallback--bg: #121a24;\\n$fallback--fg: #182230;\\n$fallback--faint: rgb(185 185 186 / 50%);\\n$fallback--text: #b9b9ba;\\n$fallback--link: #d8a070;\\n$fallback--icon: #666;\\n$fallback--lightBg: rgb(21 30 42);\\n$fallback--lightText: #b9b9ba;\\n$fallback--border: #222;\\n$fallback--cRed: #f00;\\n$fallback--cBlue: #0095ff;\\n$fallback--cGreen: #0fa00f;\\n$fallback--cOrange: orange;\\n\\n$fallback--alertError: rgb(211 16 20 / 50%);\\n$fallback--alertWarning: rgb(111 111 20 / 50%);\\n\\n$fallback--panelRadius: 10px;\\n$fallback--checkboxRadius: 2px;\\n$fallback--btnRadius: 4px;\\n$fallback--inputRadius: 4px;\\n$fallback--tooltipRadius: 5px;\\n$fallback--avatarRadius: 4px;\\n$fallback--avatarAltRadius: 10px;\\n$fallback--attachmentRadius: 10px;\\n$fallback--chatMessageRadius: 10px;\\n\\n$fallback--buttonShadow: 0 0 2px 0 rgb(0 0 0 / 100%),\\n 0 1px 0 0 rgb(255 255 255 / 20%) inset,\\n 0 -1px 0 0 rgb(0 0 0 / 20%) inset;\\n\\n$status-margin: 0.75em;\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2NoYXRfbWVzc2FnZS9jaGF0X21lc3NhZ2UudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9NzQ3NWVlNGYmbGFuZz1zY3NzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7QUFDZ0g7QUFDakI7QUFDL0YsOEJBQThCLG1GQUEyQixDQUFDLDRGQUFxQztBQUMvRjtBQUNBLCtHQUErRyxrQkFBa0IsR0FBRyxvRUFBb0Usd0JBQXdCLEdBQUcsNENBQTRDLDZCQUE2QixlQUFlLHVCQUF1QixnQkFBZ0IsR0FBRyxtREFBbUQsdUJBQXVCLDBCQUEwQixHQUFHLG9DQUFvQyxvQkFBb0IsR0FBRyx1R0FBdUcsbUJBQW1CLGdDQUFnQyxHQUFHLGtDQUFrQyxnQkFBZ0IsR0FBRyx1Q0FBdUMsa0JBQWtCLDBCQUEwQixHQUFHLDBEQUEwRCwyQ0FBMkMsNkNBQTZDLDRDQUE0QyxHQUFHLHlDQUF5Qyx5QkFBeUIsZ0JBQWdCLEdBQUcsNEVBQTRFLHVCQUF1QixHQUFHLGlDQUFpQyx3QkFBd0Isa0RBQWtELGtCQUFrQixvQkFBb0IsR0FBRyxxQ0FBcUMsdUJBQXVCLGlCQUFpQixxQkFBcUIsMEJBQTBCLHVCQUF1QixpQkFBaUIsR0FBRyxrRkFBa0Ysd0JBQXdCLG1CQUFtQiwwQkFBMEIsR0FBRywwR0FBMEcsd0JBQXdCLEdBQUcsc0dBQXNHLGdCQUFnQiwwQ0FBMEMsR0FBRyw2Q0FBNkMsa0JBQWtCLDJCQUEyQiw0QkFBNEIsbUJBQW1CLG9CQUFv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ZSxHQUFHLGtDQUFrQyx1QkFBdUIsb0JBQW9CLHFCQUFxQixzQkFBc0IsbUJBQW1CLHVDQUF1QyxHQUFHLHdCQUF3QiwwQkFBMEIsbUNBQW1DLDJCQUEyQix5QkFBeUIsMkNBQTJDLDJCQUEyQiwyQkFBMkIsd0JBQXdCLG9DQUFvQyxnQ0FBZ0MsMEJBQTBCLHdCQUF3Qiw0QkFBNEIsNkJBQTZCLDZCQUE2QixnREFBZ0QsaURBQWlELGlDQUFpQyxpQ0FBaUMsNEJBQTRCLDhCQUE4QixnQ0FBZ0MsK0JBQStCLG1DQUFtQyxvQ0FBb0MscUNBQXFDLDBJQUEwSSwyQkFBMkIscUJBQXFCO0FBQzl6WjtBQUNBLGlFQUFlLHVCQUF1QixFQUFDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9jb21wb25lbnRzL2NoYXRfbWVzc2FnZS9jaGF0X21lc3NhZ2UudnVlPzUwYmUiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gSW1wb3J0c1xuaW1wb3J0IF9fX0NTU19MT0FERVJfQVBJX1NPVVJDRU1BUF9JTVBPUlRfX18gZnJvbSBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2Rpc3QvcnVudGltZS9zb3VyY2VNYXBzLmpzXCI7XG5pbXBvcnQgX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fIGZyb20gXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvYXBpLmpzXCI7XG52YXIgX19fQ1NTX0xPQURFUl9FWFBPUlRfX18gPSBfX19DU1NfTE9BREVSX0FQSV9JTVBPUlRfX18oX19fQ1NTX0xPQURFUl9BUElfU09VUkNFTUFQX0lNUE9SVF9fXyk7XG4vLyBNb2R1bGVcbl9fX0NTU19MT0FERVJfRVhQT1JUX19fLnB1c2goW21vZHVsZS5pZCwgXCIuY2hhdC1tZXNzYWdlLXdyYXBwZXIuaG92ZXJlZC1tZXNzYWdlLWNoYWluIC5hbmltYXRlZC5BdmF0YXIgY2FudmFzIHtcXG4gIGRpc3BsYXk6IG5vbmU7XFxufVxcbi5jaGF0LW1lc3NhZ2Utd3JhcHBlci5ob3ZlcmVkLW1lc3NhZ2UtY2hhaW4gLmFuaW1hdGVkLkF2YXRhciBpbWcge1xcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcXG59XFxuLmNoYXQtbWVzc2FnZS13cmFwcGVyIC5jaGF0LW1lc3NhZ2UtbWVudSB7XFxuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXM7XFxuICBvcGFjaXR5OiAwO1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgdG9wOiAtMC44ZW07XFxufVxcbi5jaGF0LW1lc3NhZ2Utd3JhcHBlciAuY2hhdC1tZXNzYWdlLW1lbnUgYnV0dG9uIHtcXG4gIHBhZGRpbmctdG9wOiAwLjJlbTtcXG4gIHBhZGRpbmctYm90dG9tOiAwLjJlbTtcXG59XFxuLmNoYXQtbWVzc2FnZS13cmFwcGVyIC5tZW51LWljb24ge1xcbiAgY3Vyc29yOiBwb2ludGVyO1xcbn1cXG4uY2hhdC1tZXNzYWdlLXdyYXBwZXIgLm1lbnUtaWNvbjpob3ZlciwgLmV4dHJhLWJ1dHRvbi1wb3BvdmVyLm9wZW4gLmNoYXQtbWVzc2FnZS13cmFwcGVyIC5tZW51LWljb24ge1xcbiAgY29sb3I6ICNiOWI5YmE7XFxuICBjb2xvcjogdmFyKC0tdGV4dCwgI2I5YjliYSk7XFxufVxcbi5jaGF0LW1lc3NhZ2Utd3JhcHBlciAucG9wb3ZlciB7XFxuICB3aWR0aDogMTJlbTtcXG59XFxuLmNoYXQtbWVzc2FnZS13cmFwcGVyIC5jaGF0LW1lc3NhZ2Uge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIHBhZGRpbmctYm90dG9tOiAwLjVlbTtcXG59XFxuLmNoYXQtbWVzc2FnZS13cmFwcGVyIC5jaGF0LW1lc3NhZ2UgLnN0YXR1cy1ib2R5OmhvdmVyIHtcXG4gIC0tX3N0aWxsLWltYWdlLWltZy12aXNpYmlsaXR5OiB2aXNpYmxlO1xcbiAgLS1fc3RpbGwtaW1hZ2UtY2FudmFzLXZpc2liaWxpdHk6IGhpZGRlbjtcXG4gIC0tX3N0aWxsLWltYWdlLWxhYmVsLXZpc2liaWxpdHk6IGhpZGRlbjtcXG59XFxuLmNoYXQtbWVzc2FnZS13cmFwcGVyIC5hdmF0YXItd3JhcHBlciB7XFxuICBtYXJnaW4tcmlnaHQ6IDAuNzJlbTtcXG4gIHdpZHRoOiAzMnB4O1xcbn1cXG4uY2hhdC1tZXNzYWdlLXdyYXBwZXIgLmxpbmstcHJldmlldyxcXG4uY2hhdC1tZXNzYWdlLXdyYXBwZXIgLmF0dGFjaG1lbnRzIHtcXG4gIG1hcmdpbi1ib3R0b206IDFlbTtcXG59XFxuLmNoYXQtbWVzc2FnZS13cmFwcGVyIC5zdGF0dXMge1xcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWNoYXRNZXNzYWdlUmFkaXVzLCAxMHB4KTtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBwYWRkaW5nOiAwLjc1ZW07XFxufVxcbi5jaGF0LW1lc3NhZ2Utd3JhcHBlciAuY3JlYXRlZC1hdCB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBmbG9hdDogcmlnaHQ7XFxuICBmb250LXNpemU6IDAuOGVtO1xcbiAgbWFyZ2luOiAtMWVtIDAgLTAuNWVtO1xcbiAgZm9udC1zdHlsZTogaXRhbGljO1xcbiAgb3BhY2l0eTogMC44O1xcbn1cXG4uY2hhdC1tZXNzYWdlLXdyYXBwZXIgLndpdGhvdXQtYXR0YWNobWVudCAubWVzc2FnZS1jb250ZW50IC5SaWNoQ29udGVudDo6YWZ0ZXIge1xcbiAgbWFyZ2luLXJpZ2h0OiA1LjRlbTtcXG4gIGNvbnRlbnQ6IFxcXCIgXFxcIjtcXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG59XFxuLmNoYXQtbWVzc2FnZS13cmFwcGVyIC5wZW5kaW5nIC5zdGF0dXMtY29udGVudC5tZWRpYS1ib2R5LFxcbi5jaGF0LW1lc3NhZ2Utd3JhcHBlciAucGVuZGluZyAuY3JlYXRlZC1hdCB7XFxuICBjb2xvcjogdmFyKC0tZmFpbnQpO1xcbn1cXG4uY2hhdC1tZXNzYWdlLXdyYXBwZXIgLmVycm9yIC5zdGF0dXMtY29udGVudC5tZWRpYS1ib2R5LFxcbi5jaGF0LW1lc3NhZ2Utd3JhcHBlciAuZXJyb3IgLmNyZWF0ZWQtYXQge1xcbiAgY29sb3I6ICNmMDA7XFxuICBjb2xvcjogdmFyKC0tYmFkZ2VOb3RpZmljYXRpb24sICNmMDApO1xcbn1cXG4uY2hhdC1tZXNzYWdlLXdyYXBwZXIgLmNoYXQtbWVzc2FnZS1pbm5lciB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xcbiAgbWF4LXdpZHRoOiA4MCU7XFxuICBtaW4td2lkdGg6IDEwZW07XFxuICB3aWR0aDogMTAwJTtcXG59XFxuLmNoYXQtbWVzc2FnZS13cmFwcGVyIC5vdXRnb2luZyB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcXG4gIGFsaWduLWNvbnRlbnQ6IGVuZDtcXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XFxufVxcbi5jaGF0LW1lc3NhZ2Utd3JhcHBlciAub3V0Z29pbmcgYSB7XFxuICBjb2xvcjogdmFyKC0tY2hhdE1lc3NhZ2VPdXRnb2luZ0xpbmssICNkOGEwNzApO1xcbn1cXG4uY2hhdC1tZXNzYWdlLXdyYXBwZXIgLm91dGdvaW5nIC5zdGF0dXMge1xcbiAgY29sb3I6IHZhcigtLWNoYXRNZXNzYWdlT3V0Z29pbmdUZXh0LCAjYjliOWJhKTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNoYXRNZXNzYWdlT3V0Z29pbmdCZywgcmdiKDIxLCAzMCwgNDIpKTtcXG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYXRNZXNzYWdlT3V0Z29pbmdCb3JkZXIsIC0tbGlnaHRCZyk7XFxufVxcbi5jaGF0LW1lc3NhZ2Utd3JhcHBlciAub3V0Z29pbmcgLmNoYXQtbWVzc2FnZS1pbm5lciB7XFxuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XFxufVxcbi5jaGF0LW1lc3NhZ2Utd3JhcHBlciAub3V0Z29pbmcgLmNoYXQtbWVzc2FnZS1tZW51IHtcXG4gIHJpZ2h0OiAwLjRyZW07XFxufVxcbi5jaGF0LW1lc3NhZ2Utd3JhcHBlciAuaW5jb21pbmcgYSB7XFxuICBjb2xvcjogdmFyKC0tY2hhdE1lc3NhZ2VJbmNvbWluZ0xpbmssICNkOGEwNzApO1xcbn1cXG4uY2hhdC1tZXNzYWdlLXdyYXBwZXIgLmluY29taW5nIC5zdGF0dXMge1xcbiAgY29sb3I6IHZhcigtLWNoYXRNZXNzYWdlSW5jb21pbmdUZXh0LCAjYjliOWJhKTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNoYXRNZXNzYWdlSW5jb21pbmdCZywgIzEyMWEyNCk7XFxuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jaGF0TWVzc2FnZUluY29taW5nQm9yZGVyLCAtLWJvcmRlcik7XFxufVxcbi5jaGF0LW1lc3NhZ2Utd3JhcHBlciAuaW5jb21pbmcgLmNyZWF0ZWQtYXQgYSB7XFxuICBjb2xvcjogdmFyKC0tY2hhdE1lc3NhZ2VJbmNvbWluZ1RleHQsICNiOWI5YmEpO1xcbn1cXG4uY2hhdC1tZXNzYWdlLXdyYXBwZXIgLmluY29taW5nIC5jaGF0LW1lc3NhZ2UtbWVudSB7XFxuICBsZWZ0OiAwLjRyZW07XFxufVxcbi5jaGF0LW1lc3NhZ2Utd3JhcHBlciAuY2hhdC1tZXNzYWdlLWlubmVyLndpdGgtbWVkaWEge1xcbiAgd2lkdGg6IDEwMCU7XFxufVxcbi5jaGF0LW1lc3NhZ2Utd3JhcHBlciAuY2hhdC1tZXNzYWdlLWlubmVyLndpdGgtbWVkaWEgLnN0YXR1cyB7XFxuICB3aWR0aDogMTAwJTtcXG59XFxuLmNoYXQtbWVzc2FnZS13cmFwcGVyIC52aXNpYmxlIHtcXG4gIG9wYWNpdHk6IDE7XFxufVxcbi5jaGF0LW1lc3NhZ2UtZGF0ZS1zZXBhcmF0b3Ige1xcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xcbiAgbWFyZ2luOiAxLjRlbSAwO1xcbiAgZm9udC1zaXplOiAwLjllbTtcXG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XFxuICAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xcbiAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcXG4gIGNvbG9yOiAjYjliOWJhO1xcbiAgY29sb3I6IHZhcigtLWZhaW50ZWRUZXh0LCAjYjliOWJhKTtcXG59XCIsIFwiXCIse1widmVyc2lvblwiOjMsXCJzb3VyY2VzXCI6W1wid2VicGFjazovLy4vc3JjL2NvbXBvbmVudHMvY2hhdF9tZXNzYWdlL2NoYXRfbWVzc2FnZS5zY3NzXCIsXCJ3ZWJwYWNrOi8vLi9zcmMvY29tcG9uZW50cy9jaGF0X21lc3NhZ2UvY2hhdF9tZXNzYWdlLnZ1ZVwiLFwid2VicGFjazovLy4vc3JjL192YXJpYWJsZXMuc2Nzc1wiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiQUFLTTtFQUNFLGFBQUE7QUNKUjtBRE9NO0VBQ0UsbUJBQUE7QUNMUjtBRFVFO0VBQ0Usd0JBQUE7RUFDQSxVQUFBO0VBQ0Esa0JBQUE7RUFDQSxXQUFBO0FDUko7QURVSTtFQUNFLGtCQUFBO0VBQ0EscUJBQUE7QUNSTjtBRFlFO0VBQ0UsZUFBQTtBQ1ZKO0FEWUk7RUFFRSxjRXpCVztFRjBCWCwyQkFBQTtBQ1hOO0FEZUU7RUFDRSxXQUFBO0FDYko7QURnQkU7RUFDRSxhQUFBO0VBQ0EscUJBQUE7QUNkSjtBRGdCSTtFQUNFLHNDQUFBO0VBQ0Esd0NBQUE7RUFDQSx1Q0FBQTtBQ2ROO0FEa0JFO0VBQ0Usb0JBQUE7RUFDQSxXQUFBO0FDaEJKO0FEbUJFOztFQUVFLGtCQUFBO0FDakJKO0FEb0JFO0VBQ0UsbUJFbEMwQjtFRm1DMUIsNkNBQUE7RUFDQSxhQUFBO0VBQ0EsZUFBQTtBQ2xCSjtBRHFCRTtFQUNFLGtCQUFBO0VBQ0EsWUFBQTtFQUNBLGdCQUFBO0VBQ0EscUJBQUE7RUFDQSxrQkFBQTtFQUNBLFlBQUE7QUNuQko7QUR5Qk07RUFDRSxtQkFBQTtFQUNBLFlBQUE7RUFDQSxxQkFBQTtBQ3ZCUjtBRDZCSTs7RUFFRSxtQkFBQTtBQzNCTjtBRGdDSTs7RUFFRSxXRXRGVztFRnVGWCxxQ0FBQTtBQzlCTjtBRGtDRTtFQUNFLGFBQUE7RUFDQSxzQkFBQTtFQUNBLHVCQUFBO0VBQ0EsY0FBQTtFQUNBLGVBQUE7RUFDQSxXQUFBO0FDaENKO0FEbUNFO0VBQ0UsYUFBQTtFQUNBLG1CQUFBO0VBQ0Esa0JBQUE7RUFDQSx5QkFBQTtBQ2pDSjtBRG1DSTtFQUNFLDhDQUFBO0FDakNOO0FEb0NJO0VBQ0UsOENBQUE7RUFDQSwrREFBQTtFQUNBLDZEQUFBO0FDbENOO0FEcUNJO0VBQ0UscUJBQUE7QUNuQ047QURzQ0k7RUFDRSxhQUFBO0FDcENOO0FEeUNJO0VBQ0UsOENBQUE7QUN2Q047QUQwQ0k7RUFDRSw4Q0FBQTtFQUNBLHVEQUFBO0VBQ0EsNERBQUE7QUN4Q047QUQ0Q007RUFDRSw4Q0FBQTtBQzFDUjtBRDhDSTtFQUNFLFlBQUE7QUM1Q047QURnREU7RUFDRSxXQUFBO0FDOUNKO0FEZ0RJO0VBQ0UsV0FBQTtBQzlDTjtBRGtERTtFQUNFLFVBQUE7QUNoREo7QURvREE7RUFDRSxrQkFBQTtFQUNBLGVBQUE7RUFDQSxnQkFBQTtFQUNBLHlCQUFBO0tBQUEsc0JBQUE7VUFBQSxpQkFBQTtFQUNBLGNFM0tlO0VGNEtmLGtDQUFBO0FDakRGXCIsXCJzb3VyY2VzQ29udGVudFwiOltcIkBpbXBvcnQgXFxcIi4uLy4uL3ZhcmlhYmxlc1xcXCI7XFxuXFxuLmNoYXQtbWVzc2FnZS13cmFwcGVyIHtcXG4gICYuaG92ZXJlZC1tZXNzYWdlLWNoYWluIHtcXG4gICAgLmFuaW1hdGVkLkF2YXRhciB7XFxuICAgICAgY2FudmFzIHtcXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XFxuICAgICAgfVxcblxcbiAgICAgIGltZyB7XFxuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcblxcbiAgLmNoYXQtbWVzc2FnZS1tZW51IHtcXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzO1xcbiAgICBvcGFjaXR5OiAwO1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgIHRvcDogLTAuOGVtO1xcblxcbiAgICBidXR0b24ge1xcbiAgICAgIHBhZGRpbmctdG9wOiAwLjJlbTtcXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMC4yZW07XFxuICAgIH1cXG4gIH1cXG5cXG4gIC5tZW51LWljb24ge1xcbiAgICBjdXJzb3I6IHBvaW50ZXI7XFxuXFxuICAgICY6aG92ZXIsXFxuICAgIC5leHRyYS1idXR0b24tcG9wb3Zlci5vcGVuICYge1xcbiAgICAgIGNvbG9yOiAkZmFsbGJhY2stLXRleHQ7XFxuICAgICAgY29sb3I6IHZhcigtLXRleHQsICRmYWxsYmFjay0tdGV4dCk7XFxuICAgIH1cXG4gIH1cXG5cXG4gIC5wb3BvdmVyIHtcXG4gICAgd2lkdGg6IDEyZW07XFxuICB9XFxuXFxuICAuY2hhdC1tZXNzYWdlIHtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgcGFkZGluZy1ib3R0b206IDAuNWVtO1xcblxcbiAgICAuc3RhdHVzLWJvZHk6aG92ZXIge1xcbiAgICAgIC0tX3N0aWxsLWltYWdlLWltZy12aXNpYmlsaXR5OiB2aXNpYmxlO1xcbiAgICAgIC0tX3N0aWxsLWltYWdlLWNhbnZhcy12aXNpYmlsaXR5OiBoaWRkZW47XFxuICAgICAgLS1fc3RpbGwtaW1hZ2UtbGFiZWwtdmlzaWJpbGl0eTogaGlkZGVuO1xcbiAgICB9XFxuICB9XFxuXFxuICAuYXZhdGFyLXdyYXBwZXIge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNzJlbTtcXG4gICAgd2lkdGg6IDMycHg7XFxuICB9XFxuXFxuICAubGluay1wcmV2aWV3LFxcbiAgLmF0dGFjaG1lbnRzIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xcbiAgfVxcblxcbiAgLnN0YXR1cyB7XFxuICAgIGJvcmRlci1yYWRpdXM6ICRmYWxsYmFjay0tY2hhdE1lc3NhZ2VSYWRpdXM7XFxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWNoYXRNZXNzYWdlUmFkaXVzLCAkZmFsbGJhY2stLWNoYXRNZXNzYWdlUmFkaXVzKTtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgcGFkZGluZzogMC43NWVtO1xcbiAgfVxcblxcbiAgLmNyZWF0ZWQtYXQge1xcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICAgIGZsb2F0OiByaWdodDtcXG4gICAgZm9udC1zaXplOiAwLjhlbTtcXG4gICAgbWFyZ2luOiAtMWVtIDAgLTAuNWVtO1xcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XFxuICAgIG9wYWNpdHk6IDAuODtcXG4gIH1cXG5cXG4gIC53aXRob3V0LWF0dGFjaG1lbnQge1xcbiAgICAubWVzc2FnZS1jb250ZW50IHtcXG4gICAgICAvLyBUT0RPIGZpZ3VyZSBvdXQgaG93IHRvIGRvIGl0IHByb3Blcmx5XFxuICAgICAgLlJpY2hDb250ZW50OjphZnRlciB7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDUuNGVtO1xcbiAgICAgICAgY29udGVudDogXFxcIiBcXFwiO1xcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcblxcbiAgLnBlbmRpbmcge1xcbiAgICAuc3RhdHVzLWNvbnRlbnQubWVkaWEtYm9keSxcXG4gICAgLmNyZWF0ZWQtYXQge1xcbiAgICAgIGNvbG9yOiB2YXIoLS1mYWludCk7XFxuICAgIH1cXG4gIH1cXG5cXG4gIC5lcnJvciB7XFxuICAgIC5zdGF0dXMtY29udGVudC5tZWRpYS1ib2R5LFxcbiAgICAuY3JlYXRlZC1hdCB7XFxuICAgICAgY29sb3I6ICRmYWxsYmFjay0tY1JlZDtcXG4gICAgICBjb2xvcjogdmFyKC0tYmFkZ2VOb3RpZmljYXRpb24sICRmYWxsYmFjay0tY1JlZCk7XFxuICAgIH1cXG4gIH1cXG5cXG4gIC5jaGF0LW1lc3NhZ2UtaW5uZXIge1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcXG4gICAgbWF4LXdpZHRoOiA4MCU7XFxuICAgIG1pbi13aWR0aDogMTBlbTtcXG4gICAgd2lkdGg6IDEwMCU7XFxuICB9XFxuXFxuICAub3V0Z29pbmcge1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xcbiAgICBhbGlnbi1jb250ZW50OiBlbmQ7XFxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XFxuXFxuICAgIGEge1xcbiAgICAgIGNvbG9yOiB2YXIoLS1jaGF0TWVzc2FnZU91dGdvaW5nTGluaywgJGZhbGxiYWNrLS1saW5rKTtcXG4gICAgfVxcblxcbiAgICAuc3RhdHVzIHtcXG4gICAgICBjb2xvcjogdmFyKC0tY2hhdE1lc3NhZ2VPdXRnb2luZ1RleHQsICRmYWxsYmFjay0tdGV4dCk7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY2hhdE1lc3NhZ2VPdXRnb2luZ0JnLCAkZmFsbGJhY2stLWxpZ2h0QmcpO1xcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYXRNZXNzYWdlT3V0Z29pbmdCb3JkZXIsIC0tbGlnaHRCZyk7XFxuICAgIH1cXG5cXG4gICAgLmNoYXQtbWVzc2FnZS1pbm5lciB7XFxuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xcbiAgICB9XFxuXFxuICAgIC5jaGF0LW1lc3NhZ2UtbWVudSB7XFxuICAgICAgcmlnaHQ6IDAuNHJlbTtcXG4gICAgfVxcbiAgfVxcblxcbiAgLmluY29taW5nIHtcXG4gICAgYSB7XFxuICAgICAgY29sb3I6IHZhcigtLWNoYXRNZXNzYWdlSW5jb21pbmdMaW5rLCAkZmFsbGJhY2stLWxpbmspO1xcbiAgICB9XFxuXFxuICAgIC5zdGF0dXMge1xcbiAgICAgIGNvbG9yOiB2YXIoLS1jaGF0TWVzc2FnZUluY29taW5nVGV4dCwgJGZhbGxiYWNrLS10ZXh0KTtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jaGF0TWVzc2FnZUluY29taW5nQmcsICRmYWxsYmFjay0tYmcpO1xcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYXRNZXNzYWdlSW5jb21pbmdCb3JkZXIsIC0tYm9yZGVyKTtcXG4gICAgfVxcblxcbiAgICAuY3JlYXRlZC1hdCB7XFxuICAgICAgYSB7XFxuICAgICAgICBjb2xvcjogdmFyKC0tY2hhdE1lc3NhZ2VJbmNvbWluZ1RleHQsICRmYWxsYmFjay0tdGV4dCk7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgIC5jaGF0LW1lc3NhZ2UtbWVudSB7XFxuICAgICAgbGVmdDogMC40cmVtO1xcbiAgICB9XFxuICB9XFxuXFxuICAuY2hhdC1tZXNzYWdlLWlubmVyLndpdGgtbWVkaWEge1xcbiAgICB3aWR0aDogMTAwJTtcXG5cXG4gICAgLnN0YXR1cyB7XFxuICAgICAgd2lkdGg6IDEwMCU7XFxuICAgIH1cXG4gIH1cXG5cXG4gIC52aXNpYmxlIHtcXG4gICAgb3BhY2l0eTogMTtcXG4gIH1cXG59XFxuXFxuLmNoYXQtbWVzc2FnZS1kYXRlLXNlcGFyYXRvciB7XFxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxuICBtYXJnaW46IDEuNGVtIDA7XFxuICBmb250LXNpemU6IDAuOWVtO1xcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XFxuICBjb2xvcjogJGZhbGxiYWNrLS10ZXh0O1xcbiAgY29sb3I6IHZhcigtLWZhaW50ZWRUZXh0LCAkZmFsbGJhY2stLXRleHQpO1xcbn1cXG5cIixcIi5jaGF0LW1lc3NhZ2Utd3JhcHBlci5ob3ZlcmVkLW1lc3NhZ2UtY2hhaW4gLmFuaW1hdGVkLkF2YXRhciBjYW52YXMge1xcbiAgZGlzcGxheTogbm9uZTtcXG59XFxuLmNoYXQtbWVzc2FnZS13cmFwcGVyLmhvdmVyZWQtbWVzc2FnZS1jaGFpbiAuYW5pbWF0ZWQuQXZhdGFyIGltZyB7XFxuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xcbn1cXG4uY2hhdC1tZXNzYWdlLXdyYXBwZXIgLmNoYXQtbWVzc2FnZS1tZW51IHtcXG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xcztcXG4gIG9wYWNpdHk6IDA7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0b3A6IC0wLjhlbTtcXG59XFxuLmNoYXQtbWVzc2FnZS13cmFwcGVyIC5jaGF0LW1lc3NhZ2UtbWVudSBidXR0b24ge1xcbiAgcGFkZGluZy10b3A6IDAuMmVtO1xcbiAgcGFkZGluZy1ib3R0b206IDAuMmVtO1xcbn1cXG4uY2hhdC1tZXNzYWdlLXdyYXBwZXIgLm1lbnUtaWNvbiB7XFxuICBjdXJzb3I6IHBvaW50ZXI7XFxufVxcbi5jaGF0LW1lc3NhZ2Utd3JhcHBlciAubWVudS1pY29uOmhvdmVyLCAuZXh0cmEtYnV0dG9uLXBvcG92ZXIub3BlbiAuY2hhdC1tZXNzYWdlLXdyYXBwZXIgLm1lbnUtaWNvbiB7XFxuICBjb2xvcjogI2I5YjliYTtcXG4gIGNvbG9yOiB2YXIoLS10ZXh0LCAjYjliOWJhKTtcXG59XFxuLmNoYXQtbWVzc2FnZS13cmFwcGVyIC5wb3BvdmVyIHtcXG4gIHdpZHRoOiAxMmVtO1xcbn1cXG4uY2hhdC1tZXNzYWdlLXdyYXBwZXIgLmNoYXQtbWVzc2FnZSB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgcGFkZGluZy1ib3R0b206IDAuNWVtO1xcbn1cXG4uY2hhdC1tZXNzYWdlLXdyYXBwZXIgLmNoYXQtbWVzc2FnZSAuc3RhdHVzLWJvZHk6aG92ZXIge1xcbiAgLS1fc3RpbGwtaW1hZ2UtaW1nLXZpc2liaWxpdHk6IHZpc2libGU7XFxuICAtLV9zdGlsbC1pbWFnZS1jYW52YXMtdmlzaWJpbGl0eTogaGlkZGVuO1xcbiAgLS1fc3RpbGwtaW1hZ2UtbGFiZWwtdmlzaWJpbGl0eTogaGlkZGVuO1xcbn1cXG4uY2hhdC1tZXNzYWdlLXdyYXBwZXIgLmF2YXRhci13cmFwcGVyIHtcXG4gIG1hcmdpbi1yaWdodDogMC43MmVtO1xcbiAgd2lkdGg6IDMycHg7XFxufVxcbi5jaGF0LW1lc3NhZ2Utd3JhcHBlciAubGluay1wcmV2aWV3LFxcbi5jaGF0LW1lc3NhZ2Utd3JhcHBlciAuYXR0YWNobWVudHMge1xcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xcbn1cXG4uY2hhdC1tZXNzYWdlLXdyYXBwZXIgLnN0YXR1cyB7XFxuICBib3JkZXItcmFkaXVzOiAxMHB4O1xcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tY2hhdE1lc3NhZ2VSYWRpdXMsIDEwcHgpO1xcbiAgZGlzcGxheTogZmxleDtcXG4gIHBhZGRpbmc6IDAuNzVlbTtcXG59XFxuLmNoYXQtbWVzc2FnZS13cmFwcGVyIC5jcmVhdGVkLWF0IHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIGZsb2F0OiByaWdodDtcXG4gIGZvbnQtc2l6ZTogMC44ZW07XFxuICBtYXJnaW46IC0xZW0gMCAtMC41ZW07XFxuICBmb250LXN0eWxlOiBpdGFsaWM7XFxuICBvcGFjaXR5OiAwLjg7XFxufVxcbi5jaGF0LW1lc3NhZ2Utd3JhcHBlciAud2l0aG91dC1hdHRhY2htZW50IC5tZXNzYWdlLWNvbnRlbnQgLlJpY2hDb250ZW50OjphZnRlciB7XFxuICBtYXJnaW4tcmlnaHQ6IDUuNGVtO1xcbiAgY29udGVudDogXFxcIiBcXFwiO1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbn1cXG4uY2hhdC1tZXNzYWdlLXdyYXBwZXIgLnBlbmRpbmcgLnN0YXR1cy1jb250ZW50Lm1lZGlhLWJvZHksXFxuLmNoYXQtbWVzc2FnZS13cmFwcGVyIC5wZW5kaW5nIC5jcmVhdGVkLWF0IHtcXG4gIGNvbG9yOiB2YXIoLS1mYWludCk7XFxufVxcbi5jaGF0LW1lc3NhZ2Utd3JhcHBlciAuZXJyb3IgLnN0YXR1cy1jb250ZW50Lm1lZGlhLWJvZHksXFxuLmNoYXQtbWVzc2FnZS13cmFwcGVyIC5lcnJvciAuY3JlYXRlZC1hdCB7XFxuICBjb2xvcjogI2YwMDtcXG4gIGNvbG9yOiB2YXIoLS1iYWRnZU5vdGlmaWNhdGlvbiwgI2YwMCk7XFxufVxcbi5jaGF0LW1lc3NhZ2Utd3JhcHBlciAuY2hhdC1tZXNzYWdlLWlubmVyIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XFxuICBtYXgtd2lkdGg6IDgwJTtcXG4gIG1pbi13aWR0aDogMTBlbTtcXG4gIHdpZHRoOiAxMDAlO1xcbn1cXG4uY2hhdC1tZXNzYWdlLXdyYXBwZXIgLm91dGdvaW5nIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xcbiAgYWxpZ24tY29udGVudDogZW5kO1xcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcXG59XFxuLmNoYXQtbWVzc2FnZS13cmFwcGVyIC5vdXRnb2luZyBhIHtcXG4gIGNvbG9yOiB2YXIoLS1jaGF0TWVzc2FnZU91dGdvaW5nTGluaywgI2Q4YTA3MCk7XFxufVxcbi5jaGF0LW1lc3NhZ2Utd3JhcHBlciAub3V0Z29pbmcgLnN0YXR1cyB7XFxuICBjb2xvcjogdmFyKC0tY2hhdE1lc3NhZ2VPdXRnb2luZ1RleHQsICNiOWI5YmEpO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY2hhdE1lc3NhZ2VPdXRnb2luZ0JnLCByZ2IoMjEsIDMwLCA0MikpO1xcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY2hhdE1lc3NhZ2VPdXRnb2luZ0JvcmRlciwgLS1saWdodEJnKTtcXG59XFxuLmNoYXQtbWVzc2FnZS13cmFwcGVyIC5vdXRnb2luZyAuY2hhdC1tZXNzYWdlLWlubmVyIHtcXG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcXG59XFxuLmNoYXQtbWVzc2FnZS13cmFwcGVyIC5vdXRnb2luZyAuY2hhdC1tZXNzYWdlLW1lbnUge1xcbiAgcmlnaHQ6IDAuNHJlbTtcXG59XFxuLmNoYXQtbWVzc2FnZS13cmFwcGVyIC5pbmNvbWluZyBhIHtcXG4gIGNvbG9yOiB2YXIoLS1jaGF0TWVzc2FnZUluY29taW5nTGluaywgI2Q4YTA3MCk7XFxufVxcbi5jaGF0LW1lc3NhZ2Utd3JhcHBlciAuaW5jb21pbmcgLnN0YXR1cyB7XFxuICBjb2xvcjogdmFyKC0tY2hhdE1lc3NhZ2VJbmNvbWluZ1RleHQsICNiOWI5YmEpO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY2hhdE1lc3NhZ2VJbmNvbWluZ0JnLCAjMTIxYTI0KTtcXG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYXRNZXNzYWdlSW5jb21pbmdCb3JkZXIsIC0tYm9yZGVyKTtcXG59XFxuLmNoYXQtbWVzc2FnZS13cmFwcGVyIC5pbmNvbWluZyAuY3JlYXRlZC1hdCBhIHtcXG4gIGNvbG9yOiB2YXIoLS1jaGF0TWVzc2FnZUluY29taW5nVGV4dCwgI2I5YjliYSk7XFxufVxcbi5jaGF0LW1lc3NhZ2Utd3JhcHBlciAuaW5jb21pbmcgLmNoYXQtbWVzc2FnZS1tZW51IHtcXG4gIGxlZnQ6IDAuNHJlbTtcXG59XFxuLmNoYXQtbWVzc2FnZS13cmFwcGVyIC5jaGF0LW1lc3NhZ2UtaW5uZXIud2l0aC1tZWRpYSB7XFxuICB3aWR0aDogMTAwJTtcXG59XFxuLmNoYXQtbWVzc2FnZS13cmFwcGVyIC5jaGF0LW1lc3NhZ2UtaW5uZXIud2l0aC1tZWRpYSAuc3RhdHVzIHtcXG4gIHdpZHRoOiAxMDAlO1xcbn1cXG4uY2hhdC1tZXNzYWdlLXdyYXBwZXIgLnZpc2libGUge1xcbiAgb3BhY2l0eTogMTtcXG59XFxuXFxuLmNoYXQtbWVzc2FnZS1kYXRlLXNlcGFyYXRvciB7XFxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxuICBtYXJnaW46IDEuNGVtIDA7XFxuICBmb250LXNpemU6IDAuOWVtO1xcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XFxuICBjb2xvcjogI2I5YjliYTtcXG4gIGNvbG9yOiB2YXIoLS1mYWludGVkVGV4dCwgI2I5YjliYSk7XFxufVwiLFwiJG1haW4tY29sb3I6ICNmNThkMmM7XFxuJG1haW4tYmFja2dyb3VuZDogd2hpdGU7XFxuJGRhcmtlbmVkLWJhY2tncm91bmQ6IHdoaXRlc21va2U7XFxuXFxuJGZhbGxiYWNrLS1iZzogIzEyMWEyNDtcXG4kZmFsbGJhY2stLWZnOiAjMTgyMjMwO1xcbiRmYWxsYmFjay0tZmFpbnQ6IHJnYigxODUgMTg1IDE4NiAvIDUwJSk7XFxuJGZhbGxiYWNrLS10ZXh0OiAjYjliOWJhO1xcbiRmYWxsYmFjay0tbGluazogI2Q4YTA3MDtcXG4kZmFsbGJhY2stLWljb246ICM2NjY7XFxuJGZhbGxiYWNrLS1saWdodEJnOiByZ2IoMjEgMzAgNDIpO1xcbiRmYWxsYmFjay0tbGlnaHRUZXh0OiAjYjliOWJhO1xcbiRmYWxsYmFjay0tYm9yZGVyOiAjMjIyO1xcbiRmYWxsYmFjay0tY1JlZDogI2YwMDtcXG4kZmFsbGJhY2stLWNCbHVlOiAjMDA5NWZmO1xcbiRmYWxsYmFjay0tY0dyZWVuOiAjMGZhMDBmO1xcbiRmYWxsYmFjay0tY09yYW5nZTogb3JhbmdlO1xcblxcbiRmYWxsYmFjay0tYWxlcnRFcnJvcjogcmdiKDIxMSAxNiAyMCAvIDUwJSk7XFxuJGZhbGxiYWNrLS1hbGVydFdhcm5pbmc6IHJnYigxMTEgMTExIDIwIC8gNTAlKTtcXG5cXG4kZmFsbGJhY2stLXBhbmVsUmFkaXVzOiAxMHB4O1xcbiRmYWxsYmFjay0tY2hlY2tib3hSYWRpdXM6IDJweDtcXG4kZmFsbGJhY2stLWJ0blJhZGl1czogNHB4O1xcbiRmYWxsYmFjay0taW5wdXRSYWRpdXM6IDRweDtcXG4kZmFsbGJhY2stLXRvb2x0aXBSYWRpdXM6IDVweDtcXG4kZmFsbGJhY2stLWF2YXRhclJhZGl1czogNHB4O1xcbiRmYWxsYmFjay0tYXZhdGFyQWx0UmFkaXVzOiAxMHB4O1xcbiRmYWxsYmFjay0tYXR0YWNobWVudFJhZGl1czogMTBweDtcXG4kZmFsbGJhY2stLWNoYXRNZXNzYWdlUmFkaXVzOiAxMHB4O1xcblxcbiRmYWxsYmFjay0tYnV0dG9uU2hhZG93OiAwIDAgMnB4IDAgcmdiKDAgMCAwIC8gMTAwJSksXFxuICAwIDFweCAwIDAgcmdiKDI1NSAyNTUgMjU1IC8gMjAlKSBpbnNldCxcXG4gIDAgLTFweCAwIDAgcmdiKDAgMCAwIC8gMjAlKSBpbnNldDtcXG5cXG4kc3RhdHVzLW1hcmdpbjogMC43NWVtO1xcblwiXSxcInNvdXJjZVJvb3RcIjpcIlwifV0pO1xuLy8gRXhwb3J0c1xuZXhwb3J0IGRlZmF1bHQgX19fQ1NTX0xPQURFUl9FWFBPUlRfX187XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/chat_message/chat_message.vue?vue&type=style&index=0&id=7475ee4f&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/chat_new/chat_new.vue?vue&type=style&index=0&id=490d11ef&lang=scss":
/*!************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/chat_new/chat_new.vue?vue&type=style&index=0&id=490d11ef&lang=scss ***!
\************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".chat-new .input-wrap {\\n display: flex;\\n margin: 0.7em 0.5em;\\n}\\n.chat-new .input-wrap input {\\n width: 100%;\\n}\\n.chat-new .search-icon {\\n margin-right: 0.3em;\\n}\\n.chat-new .member-list {\\n padding-bottom: 0.7rem;\\n}\\n.chat-new .basic-user-card:hover {\\n cursor: pointer;\\n background-color: var(--selectedPost, rgb(21, 30, 42));\\n}\\n.chat-new .go-back-button {\\n text-align: center;\\n line-height: 1;\\n height: 100%;\\n align-self: start;\\n width: var(--__panel-heading-height-inner);\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/chat_new/chat_new.scss\",\"webpack://./src/components/chat_new/chat_new.vue\"],\"names\":[],\"mappings\":\"AACE;EACE,aAAA;EACA,mBAAA;ACAJ;ADEI;EACE,WAAA;ACAN;ADIE;EACE,mBAAA;ACFJ;ADKE;EACE,sBAAA;ACHJ;ADME;EACE,eAAA;EACA,sDAAA;ACJJ;ADOE;EACE,kBAAA;EACA,cAAA;EACA,YAAA;EACA,iBAAA;EACA,0CAAA;ACLJ\",\"sourcesContent\":[\".chat-new {\\n .input-wrap {\\n display: flex;\\n margin: 0.7em 0.5em;\\n\\n input {\\n width: 100%;\\n }\\n }\\n\\n .search-icon {\\n margin-right: 0.3em;\\n }\\n\\n .member-list {\\n padding-bottom: 0.7rem;\\n }\\n\\n .basic-user-card:hover {\\n cursor: pointer;\\n background-color: var(--selectedPost, $fallback--lightBg);\\n }\\n\\n .go-back-button {\\n text-align: center;\\n line-height: 1;\\n height: 100%;\\n align-self: start;\\n width: var(--__panel-heading-height-inner);\\n }\\n}\\n\",\".chat-new .input-wrap {\\n display: flex;\\n margin: 0.7em 0.5em;\\n}\\n.chat-new .input-wrap input {\\n width: 100%;\\n}\\n.chat-new .search-icon {\\n margin-right: 0.3em;\\n}\\n.chat-new .member-list {\\n padding-bottom: 0.7rem;\\n}\\n.chat-new .basic-user-card:hover {\\n cursor: pointer;\\n background-color: var(--selectedPost, rgb(21, 30, 42));\\n}\\n.chat-new .go-back-button {\\n text-align: center;\\n line-height: 1;\\n height: 100%;\\n align-self: start;\\n width: var(--__panel-heading-height-inner);\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2NoYXRfbmV3L2NoYXRfbmV3LnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTQ5MGQxMWVmJmxhbmc9c2Nzcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBO0FBQ2dIO0FBQ2pCO0FBQy9GLDhCQUE4QixtRkFBMkIsQ0FBQyw0RkFBcUM7QUFDL0Y7QUFDQSxpRUFBaUUsa0JBQWtCLHdCQUF3QixHQUFHLCtCQUErQixnQkFBZ0IsR0FBRywwQkFBMEIsd0JBQXdCLEdBQUcsMEJBQTBCLDJCQUEyQixHQUFHLG9DQUFvQyxvQkFBb0IsMkRBQTJELEdBQUcsNkJBQTZCLHVCQUF1QixtQkFBbUIsaUJBQWlCLHNCQUFzQiwrQ0FBK0MsR0FBRyxPQUFPLDJKQUEySixVQUFVLFdBQVcsS0FBSyxLQUFLLFVBQVUsS0FBSyxLQUFLLFdBQVcsS0FBSyxLQUFLLFdBQVcsS0FBSyxLQUFLLFVBQVUsV0FBVyxLQUFLLEtBQUssV0FBVyxVQUFVLFVBQVUsV0FBVyxXQUFXLG9DQUFvQyxpQkFBaUIsb0JBQW9CLDBCQUEwQixlQUFlLG9CQUFvQixPQUFPLEtBQUssb0JBQW9CLDBCQUEwQixLQUFLLG9CQUFvQiw2QkFBNkIsS0FBSyw4QkFBOEIsc0JBQXNCLGdFQUFnRSxLQUFLLHVCQUF1Qix5QkFBeUIscUJBQXFCLG1CQUFtQix3QkFBd0IsaURBQWlELEtBQUssR0FBRyw0QkFBNEIsa0JBQWtCLHdCQUF3QixHQUFHLCtCQUErQixnQkFBZ0IsR0FBRywwQkFBMEIsd0JBQXdCLEdBQUcsMEJBQTBCLDJCQUEyQixHQUFHLG9DQUFvQyxvQkFBb0IsMkRBQTJELEdBQUcsNkJBQTZCLHVCQUF1QixtQkFBbUIsaUJBQWlCLHNCQUFzQiwrQ0FBK0MsR0FBRyxtQkFBbUI7QUFDcDZEO0FBQ0EsaUVBQWUsdUJBQXVCLEVBQUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL2NvbXBvbmVudHMvY2hhdF9uZXcvY2hhdF9uZXcudnVlP2NiYzUiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gSW1wb3J0c1xuaW1wb3J0IF9fX0NTU19MT0FERVJfQVBJX1NPVVJDRU1BUF9JTVBPUlRfX18gZnJvbSBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2Rpc3QvcnVudGltZS9zb3VyY2VNYXBzLmpzXCI7XG5pbXBvcnQgX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fIGZyb20gXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvYXBpLmpzXCI7XG52YXIgX19fQ1NTX0xPQURFUl9FWFBPUlRfX18gPSBfX19DU1NfTE9BREVSX0FQSV9JTVBPUlRfX18oX19fQ1NTX0xPQURFUl9BUElfU09VUkNFTUFQX0lNUE9SVF9fXyk7XG4vLyBNb2R1bGVcbl9fX0NTU19MT0FERVJfRVhQT1JUX19fLnB1c2goW21vZHVsZS5pZCwgXCIuY2hhdC1uZXcgLmlucHV0LXdyYXAge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIG1hcmdpbjogMC43ZW0gMC41ZW07XFxufVxcbi5jaGF0LW5ldyAuaW5wdXQtd3JhcCBpbnB1dCB7XFxuICB3aWR0aDogMTAwJTtcXG59XFxuLmNoYXQtbmV3IC5zZWFyY2gtaWNvbiB7XFxuICBtYXJnaW4tcmlnaHQ6IDAuM2VtO1xcbn1cXG4uY2hhdC1uZXcgLm1lbWJlci1saXN0IHtcXG4gIHBhZGRpbmctYm90dG9tOiAwLjdyZW07XFxufVxcbi5jaGF0LW5ldyAuYmFzaWMtdXNlci1jYXJkOmhvdmVyIHtcXG4gIGN1cnNvcjogcG9pbnRlcjtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNlbGVjdGVkUG9zdCwgcmdiKDIxLCAzMCwgNDIpKTtcXG59XFxuLmNoYXQtbmV3IC5nby1iYWNrLWJ1dHRvbiB7XFxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxuICBsaW5lLWhlaWdodDogMTtcXG4gIGhlaWdodDogMTAwJTtcXG4gIGFsaWduLXNlbGY6IHN0YXJ0O1xcbiAgd2lkdGg6IHZhcigtLV9fcGFuZWwtaGVhZGluZy1oZWlnaHQtaW5uZXIpO1xcbn1cIiwgXCJcIix7XCJ2ZXJzaW9uXCI6MyxcInNvdXJjZXNcIjpbXCJ3ZWJwYWNrOi8vLi9zcmMvY29tcG9uZW50cy9jaGF0X25ldy9jaGF0X25ldy5zY3NzXCIsXCJ3ZWJwYWNrOi8vLi9zcmMvY29tcG9uZW50cy9jaGF0X25ldy9jaGF0X25ldy52dWVcIl0sXCJuYW1lc1wiOltdLFwibWFwcGluZ3NcIjpcIkFBQ0U7RUFDRSxhQUFBO0VBQ0EsbUJBQUE7QUNBSjtBREVJO0VBQ0UsV0FBQTtBQ0FOO0FESUU7RUFDRSxtQkFBQTtBQ0ZKO0FES0U7RUFDRSxzQkFBQTtBQ0hKO0FETUU7RUFDRSxlQUFBO0VBQ0Esc0RBQUE7QUNKSjtBRE9FO0VBQ0Usa0JBQUE7RUFDQSxjQUFBO0VBQ0EsWUFBQTtFQUNBLGlCQUFBO0VBQ0EsMENBQUE7QUNMSlwiLFwic291cmNlc0NvbnRlbnRcIjpbXCIuY2hhdC1uZXcge1xcbiAgLmlucHV0LXdyYXAge1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICBtYXJnaW46IDAuN2VtIDAuNWVtO1xcblxcbiAgICBpbnB1dCB7XFxuICAgICAgd2lkdGg6IDEwMCU7XFxuICAgIH1cXG4gIH1cXG5cXG4gIC5zZWFyY2gtaWNvbiB7XFxuICAgIG1hcmdpbi1yaWdodDogMC4zZW07XFxuICB9XFxuXFxuICAubWVtYmVyLWxpc3Qge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMC43cmVtO1xcbiAgfVxcblxcbiAgLmJhc2ljLXVzZXItY2FyZDpob3ZlciB7XFxuICAgIGN1cnNvcjogcG9pbnRlcjtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2VsZWN0ZWRQb3N0LCAkZmFsbGJhY2stLWxpZ2h0QmcpO1xcbiAgfVxcblxcbiAgLmdvLWJhY2stYnV0dG9uIHtcXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xcbiAgICBsaW5lLWhlaWdodDogMTtcXG4gICAgaGVpZ2h0OiAxMDAlO1xcbiAgICBhbGlnbi1zZWxmOiBzdGFydDtcXG4gICAgd2lkdGg6IHZhcigtLV9fcGFuZWwtaGVhZGluZy1oZWlnaHQtaW5uZXIpO1xcbiAgfVxcbn1cXG5cIixcIi5jaGF0LW5ldyAuaW5wdXQtd3JhcCB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgbWFyZ2luOiAwLjdlbSAwLjVlbTtcXG59XFxuLmNoYXQtbmV3IC5pbnB1dC13cmFwIGlucHV0IHtcXG4gIHdpZHRoOiAxMDAlO1xcbn1cXG4uY2hhdC1uZXcgLnNlYXJjaC1pY29uIHtcXG4gIG1hcmdpbi1yaWdodDogMC4zZW07XFxufVxcbi5jaGF0LW5ldyAubWVtYmVyLWxpc3Qge1xcbiAgcGFkZGluZy1ib3R0b206IDAuN3JlbTtcXG59XFxuLmNoYXQtbmV3IC5iYXNpYy11c2VyLWNhcmQ6aG92ZXIge1xcbiAgY3Vyc29yOiBwb2ludGVyO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2VsZWN0ZWRQb3N0LCByZ2IoMjEsIDMwLCA0MikpO1xcbn1cXG4uY2hhdC1uZXcgLmdvLWJhY2stYnV0dG9uIHtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG4gIGxpbmUtaGVpZ2h0OiAxO1xcbiAgaGVpZ2h0OiAxMDAlO1xcbiAgYWxpZ24tc2VsZjogc3RhcnQ7XFxuICB3aWR0aDogdmFyKC0tX19wYW5lbC1oZWFkaW5nLWhlaWdodC1pbm5lcik7XFxufVwiXSxcInNvdXJjZVJvb3RcIjpcIlwifV0pO1xuLy8gRXhwb3J0c1xuZXhwb3J0IGRlZmF1bHQgX19fQ1NTX0xPQURFUl9FWFBPUlRfX187XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/chat_new/chat_new.vue?vue&type=style&index=0&id=490d11ef&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/chat_title/chat_title.vue?vue&type=style&index=0&id=6b6b256f&lang=scss":
/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/chat_title/chat_title.vue?vue&type=style&index=0&id=6b6b256f&lang=scss ***!
\****************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".chat-title {\\n display: flex;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n --emoji-size: 14px;\\n}\\n.chat-title .username {\\n max-width: 100%;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n display: inline;\\n word-wrap: break-word;\\n overflow: hidden;\\n}\\n.chat-title .avatar-container {\\n align-self: center;\\n line-height: 1;\\n}\\n.chat-title .titlebar-avatar {\\n margin-right: 0.5em;\\n height: 1.5em;\\n width: 1.5em;\\n border-radius: 10px;\\n border-radius: var(--avatarAltRadius, 10px);\\n}\\n.chat-title .titlebar-avatar.animated::before {\\n display: none;\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/chat_title/chat_title.vue\",\"webpack://./src/_variables.scss\"],\"names\":[],\"mappings\":\"AAGA;EACE,aAAA;EACA,gBAAA;EACA,uBAAA;EACA,mBAAA;EAEA,kBAAA;AAHF;AAKE;EACE,eAAA;EACA,uBAAA;EACA,mBAAA;EACA,eAAA;EACA,qBAAA;EACA,gBAAA;AAHJ;AAME;EACE,kBAAA;EACA,cAAA;AAJJ;AAOE;EACE,mBAAA;EACA,aAAA;EACA,YAAA;EACA,mBCFwB;EDGxB,2CAAA;AALJ;AAOI;EACE,aAAA;AALN\",\"sourcesContent\":[\"\\n@import \\\"../../variables\\\";\\n\\n.chat-title {\\n display: flex;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n\\n --emoji-size: 14px;\\n\\n .username {\\n max-width: 100%;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n display: inline;\\n word-wrap: break-word;\\n overflow: hidden;\\n }\\n\\n .avatar-container {\\n align-self: center;\\n line-height: 1;\\n }\\n\\n .titlebar-avatar {\\n margin-right: 0.5em;\\n height: 1.5em;\\n width: 1.5em;\\n border-radius: $fallback--avatarAltRadius;\\n border-radius: var(--avatarAltRadius, $fallback--avatarAltRadius);\\n\\n &.animated::before {\\n display: none;\\n }\\n }\\n}\\n\",\"$main-color: #f58d2c;\\n$main-background: white;\\n$darkened-background: whitesmoke;\\n\\n$fallback--bg: #121a24;\\n$fallback--fg: #182230;\\n$fallback--faint: rgb(185 185 186 / 50%);\\n$fallback--text: #b9b9ba;\\n$fallback--link: #d8a070;\\n$fallback--icon: #666;\\n$fallback--lightBg: rgb(21 30 42);\\n$fallback--lightText: #b9b9ba;\\n$fallback--border: #222;\\n$fallback--cRed: #f00;\\n$fallback--cBlue: #0095ff;\\n$fallback--cGreen: #0fa00f;\\n$fallback--cOrange: orange;\\n\\n$fallback--alertError: rgb(211 16 20 / 50%);\\n$fallback--alertWarning: rgb(111 111 20 / 50%);\\n\\n$fallback--panelRadius: 10px;\\n$fallback--checkboxRadius: 2px;\\n$fallback--btnRadius: 4px;\\n$fallback--inputRadius: 4px;\\n$fallback--tooltipRadius: 5px;\\n$fallback--avatarRadius: 4px;\\n$fallback--avatarAltRadius: 10px;\\n$fallback--attachmentRadius: 10px;\\n$fallback--chatMessageRadius: 10px;\\n\\n$fallback--buttonShadow: 0 0 2px 0 rgb(0 0 0 / 100%),\\n 0 1px 0 0 rgb(255 255 255 / 20%) inset,\\n 0 -1px 0 0 rgb(0 0 0 / 20%) inset;\\n\\n$status-margin: 0.75em;\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2NoYXRfdGl0bGUvY2hhdF90aXRsZS52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD02YjZiMjU2ZiZsYW5nPXNjc3MuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQTtBQUNnSDtBQUNqQjtBQUMvRiw4QkFBOEIsbUZBQTJCLENBQUMsNEZBQXFDO0FBQy9GO0FBQ0EsdURBQXVELGtCQUFrQixxQkFBcUIsNEJBQTRCLHdCQUF3Qix1QkFBdUIsR0FBRyx5QkFBeUIsb0JBQW9CLDRCQUE0Qix3QkFBd0Isb0JBQW9CLDBCQUEwQixxQkFBcUIsR0FBRyxpQ0FBaUMsdUJBQXVCLG1CQUFtQixHQUFHLGdDQUFnQyx3QkFBd0Isa0JBQWtCLGlCQUFpQix3QkFBd0IsZ0RBQWdELEdBQUcsaURBQWlELGtCQUFrQixHQUFHLE9BQU8sNklBQTZJLFVBQVUsV0FBVyxXQUFXLFdBQVcsV0FBVyxLQUFLLEtBQUssVUFBVSxXQUFXLFdBQVcsVUFBVSxXQUFXLFdBQVcsS0FBSyxLQUFLLFdBQVcsVUFBVSxLQUFLLEtBQUssV0FBVyxVQUFVLFVBQVUsWUFBWSxZQUFZLEtBQUssS0FBSyxVQUFVLHVEQUF1RCxpQkFBaUIsa0JBQWtCLHFCQUFxQiw0QkFBNEIsd0JBQXdCLHlCQUF5QixpQkFBaUIsc0JBQXNCLDhCQUE4QiwwQkFBMEIsc0JBQXNCLDRCQUE0Qix1QkFBdUIsS0FBSyx5QkFBeUIseUJBQXlCLHFCQUFxQixLQUFLLHdCQUF3QiwwQkFBMEIsb0JBQW9CLG1CQUFtQixnREFBZ0Qsd0VBQXdFLDRCQUE0QixzQkFBc0IsT0FBTyxLQUFLLEdBQUcsMEJBQTBCLDBCQUEwQixtQ0FBbUMsMkJBQTJCLHlCQUF5QiwyQ0FBMkMsMkJBQTJCLDJCQUEyQix3QkFBd0Isb0NBQW9DLGdDQUFnQywwQkFBMEIsd0JBQXdCLDRCQUE0Qiw2QkFBNkIsNkJBQTZCLGdEQUFnRCxpREFBaUQsaUNBQWlDLGlDQUFpQyw0QkFBNEIsOEJBQThCLGdDQUFnQywrQkFBK0IsbUNBQW1DLG9DQUFvQyxxQ0FBcUMsMElBQTBJLDJCQUEyQixxQkFBcUI7QUFDOXVGO0FBQ0EsaUVBQWUsdUJBQXVCLEVBQUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL2NvbXBvbmVudHMvY2hhdF90aXRsZS9jaGF0X3RpdGxlLnZ1ZT8wMGVlIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIEltcG9ydHNcbmltcG9ydCBfX19DU1NfTE9BREVSX0FQSV9TT1VSQ0VNQVBfSU1QT1JUX19fIGZyb20gXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvc291cmNlTWFwcy5qc1wiO1xuaW1wb3J0IF9fX0NTU19MT0FERVJfQVBJX0lNUE9SVF9fXyBmcm9tIFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvZGlzdC9ydW50aW1lL2FwaS5qc1wiO1xudmFyIF9fX0NTU19MT0FERVJfRVhQT1JUX19fID0gX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fKF9fX0NTU19MT0FERVJfQVBJX1NPVVJDRU1BUF9JTVBPUlRfX18pO1xuLy8gTW9kdWxlXG5fX19DU1NfTE9BREVSX0VYUE9SVF9fXy5wdXNoKFttb2R1bGUuaWQsIFwiLmNoYXQtdGl0bGUge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XFxuICAtLWVtb2ppLXNpemU6IDE0cHg7XFxufVxcbi5jaGF0LXRpdGxlIC51c2VybmFtZSB7XFxuICBtYXgtd2lkdGg6IDEwMCU7XFxuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XFxuICBkaXNwbGF5OiBpbmxpbmU7XFxuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbn1cXG4uY2hhdC10aXRsZSAuYXZhdGFyLWNvbnRhaW5lciB7XFxuICBhbGlnbi1zZWxmOiBjZW50ZXI7XFxuICBsaW5lLWhlaWdodDogMTtcXG59XFxuLmNoYXQtdGl0bGUgLnRpdGxlYmFyLWF2YXRhciB7XFxuICBtYXJnaW4tcmlnaHQ6IDAuNWVtO1xcbiAgaGVpZ2h0OiAxLjVlbTtcXG4gIHdpZHRoOiAxLjVlbTtcXG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XFxuICBib3JkZXItcmFkaXVzOiB2YXIoLS1hdmF0YXJBbHRSYWRpdXMsIDEwcHgpO1xcbn1cXG4uY2hhdC10aXRsZSAudGl0bGViYXItYXZhdGFyLmFuaW1hdGVkOjpiZWZvcmUge1xcbiAgZGlzcGxheTogbm9uZTtcXG59XCIsIFwiXCIse1widmVyc2lvblwiOjMsXCJzb3VyY2VzXCI6W1wid2VicGFjazovLy4vc3JjL2NvbXBvbmVudHMvY2hhdF90aXRsZS9jaGF0X3RpdGxlLnZ1ZVwiLFwid2VicGFjazovLy4vc3JjL192YXJpYWJsZXMuc2Nzc1wiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiQUFHQTtFQUNFLGFBQUE7RUFDQSxnQkFBQTtFQUNBLHVCQUFBO0VBQ0EsbUJBQUE7RUFFQSxrQkFBQTtBQUhGO0FBS0U7RUFDRSxlQUFBO0VBQ0EsdUJBQUE7RUFDQSxtQkFBQTtFQUNBLGVBQUE7RUFDQSxxQkFBQTtFQUNBLGdCQUFBO0FBSEo7QUFNRTtFQUNFLGtCQUFBO0VBQ0EsY0FBQTtBQUpKO0FBT0U7RUFDRSxtQkFBQTtFQUNBLGFBQUE7RUFDQSxZQUFBO0VBQ0EsbUJDRndCO0VER3hCLDJDQUFBO0FBTEo7QUFPSTtFQUNFLGFBQUE7QUFMTlwiLFwic291cmNlc0NvbnRlbnRcIjpbXCJcXG5AaW1wb3J0IFxcXCIuLi8uLi92YXJpYWJsZXNcXFwiO1xcblxcbi5jaGF0LXRpdGxlIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcblxcbiAgLS1lbW9qaS1zaXplOiAxNHB4O1xcblxcbiAgLnVzZXJuYW1lIHtcXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcXG4gICAgZGlzcGxheTogaW5saW5lO1xcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XFxuICAgIG92ZXJmbG93OiBoaWRkZW47XFxuICB9XFxuXFxuICAuYXZhdGFyLWNvbnRhaW5lciB7XFxuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcXG4gICAgbGluZS1oZWlnaHQ6IDE7XFxuICB9XFxuXFxuICAudGl0bGViYXItYXZhdGFyIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVlbTtcXG4gICAgaGVpZ2h0OiAxLjVlbTtcXG4gICAgd2lkdGg6IDEuNWVtO1xcbiAgICBib3JkZXItcmFkaXVzOiAkZmFsbGJhY2stLWF2YXRhckFsdFJhZGl1cztcXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYXZhdGFyQWx0UmFkaXVzLCAkZmFsbGJhY2stLWF2YXRhckFsdFJhZGl1cyk7XFxuXFxuICAgICYuYW5pbWF0ZWQ6OmJlZm9yZSB7XFxuICAgICAgZGlzcGxheTogbm9uZTtcXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIiRtYWluLWNvbG9yOiAjZjU4ZDJjO1xcbiRtYWluLWJhY2tncm91bmQ6IHdoaXRlO1xcbiRkYXJrZW5lZC1iYWNrZ3JvdW5kOiB3aGl0ZXNtb2tlO1xcblxcbiRmYWxsYmFjay0tYmc6ICMxMjFhMjQ7XFxuJGZhbGxiYWNrLS1mZzogIzE4MjIzMDtcXG4kZmFsbGJhY2stLWZhaW50OiByZ2IoMTg1IDE4NSAxODYgLyA1MCUpO1xcbiRmYWxsYmFjay0tdGV4dDogI2I5YjliYTtcXG4kZmFsbGJhY2stLWxpbms6ICNkOGEwNzA7XFxuJGZhbGxiYWNrLS1pY29uOiAjNjY2O1xcbiRmYWxsYmFjay0tbGlnaHRCZzogcmdiKDIxIDMwIDQyKTtcXG4kZmFsbGJhY2stLWxpZ2h0VGV4dDogI2I5YjliYTtcXG4kZmFsbGJhY2stLWJvcmRlcjogIzIyMjtcXG4kZmFsbGJhY2stLWNSZWQ6ICNmMDA7XFxuJGZhbGxiYWNrLS1jQmx1ZTogIzAwOTVmZjtcXG4kZmFsbGJhY2stLWNHcmVlbjogIzBmYTAwZjtcXG4kZmFsbGJhY2stLWNPcmFuZ2U6IG9yYW5nZTtcXG5cXG4kZmFsbGJhY2stLWFsZXJ0RXJyb3I6IHJnYigyMTEgMTYgMjAgLyA1MCUpO1xcbiRmYWxsYmFjay0tYWxlcnRXYXJuaW5nOiByZ2IoMTExIDExMSAyMCAvIDUwJSk7XFxuXFxuJGZhbGxiYWNrLS1wYW5lbFJhZGl1czogMTBweDtcXG4kZmFsbGJhY2stLWNoZWNrYm94UmFkaXVzOiAycHg7XFxuJGZhbGxiYWNrLS1idG5SYWRpdXM6IDRweDtcXG4kZmFsbGJhY2stLWlucHV0UmFkaXVzOiA0cHg7XFxuJGZhbGxiYWNrLS10b29sdGlwUmFkaXVzOiA1cHg7XFxuJGZhbGxiYWNrLS1hdmF0YXJSYWRpdXM6IDRweDtcXG4kZmFsbGJhY2stLWF2YXRhckFsdFJhZGl1czogMTBweDtcXG4kZmFsbGJhY2stLWF0dGFjaG1lbnRSYWRpdXM6IDEwcHg7XFxuJGZhbGxiYWNrLS1jaGF0TWVzc2FnZVJhZGl1czogMTBweDtcXG5cXG4kZmFsbGJhY2stLWJ1dHRvblNoYWRvdzogMCAwIDJweCAwIHJnYigwIDAgMCAvIDEwMCUpLFxcbiAgMCAxcHggMCAwIHJnYigyNTUgMjU1IDI1NSAvIDIwJSkgaW5zZXQsXFxuICAwIC0xcHggMCAwIHJnYigwIDAgMCAvIDIwJSkgaW5zZXQ7XFxuXFxuJHN0YXR1cy1tYXJnaW46IDAuNzVlbTtcXG5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcbi8vIEV4cG9ydHNcbmV4cG9ydCBkZWZhdWx0IF9fX0NTU19MT0FERVJfRVhQT1JUX19fO1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/chat_title/chat_title.vue?vue&type=style&index=0&id=6b6b256f&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/checkbox/checkbox.vue?vue&type=style&index=0&id=7912cd2f&lang=scss":
/*!************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/checkbox/checkbox.vue?vue&type=style&index=0&id=7912cd2f&lang=scss ***!
\************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"@charset \\\"UTF-8\\\";\\n.checkbox {\\n position: relative;\\n display: inline-block;\\n min-height: 1.2em;\\n}\\n.checkbox-indicator {\\n position: relative;\\n padding-left: 1.2em;\\n}\\n.checkbox-indicator::before {\\n position: absolute;\\n right: 0;\\n top: 0;\\n display: block;\\n content: \\\"✓\\\";\\n transition: color 200ms;\\n width: 1.1em;\\n height: 1.1em;\\n border-radius: 2px;\\n border-radius: var(--checkboxRadius, 2px);\\n box-shadow: 0 0 2px black inset;\\n box-shadow: var(--inputShadow);\\n background-color: #182230;\\n background-color: var(--input, #182230);\\n vertical-align: top;\\n text-align: center;\\n line-height: 1.1em;\\n font-size: 1.1em;\\n color: transparent;\\n overflow: hidden;\\n box-sizing: border-box;\\n}\\n.checkbox.disabled .checkbox-indicator::before,\\n.checkbox.disabled .label {\\n opacity: 0.5;\\n}\\n.checkbox.disabled .label {\\n color: rgba(185, 185, 186, 0.5);\\n color: var(--faint, rgba(185, 185, 186, 0.5));\\n}\\n.checkbox input[type=checkbox]:checked + .checkbox-indicator::before {\\n color: #b9b9ba;\\n color: var(--inputText, #b9b9ba);\\n}\\n.checkbox input[type=checkbox]:indeterminate + .checkbox-indicator::before {\\n content: \\\"–\\\";\\n color: #b9b9ba;\\n color: var(--inputText, #b9b9ba);\\n}\\n.checkbox.indeterminate-fix input[type=checkbox] + .checkbox-indicator::before {\\n content: \\\"–\\\";\\n}\\n.checkbox > span {\\n margin-left: 0.5em;\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/checkbox/checkbox.vue\",\"webpack://./src/_variables.scss\"],\"names\":[],\"mappings\":\"AAAA,gBAAgB;AAIhB;EACE,kBAAA;EACA,qBAAA;EACA,iBAAA;AAFF;AAIE;EACE,kBAAA;EACA,mBAAA;AAFJ;AAKE;EACE,kBAAA;EACA,QAAA;EACA,MAAA;EACA,cAAA;EACA,YAAA;EACA,uBAAA;EACA,YAAA;EACA,aAAA;EACA,kBCDuB;EDEvB,yCAAA;EACA,+BAAA;EACA,8BAAA;EACA,yBCtBW;EDuBX,uCAAA;EACA,mBAAA;EACA,kBAAA;EACA,kBAAA;EACA,gBAAA;EACA,kBAAA;EACA,gBAAA;EACA,sBAAA;AAHJ;AAOI;;EAEE,YAAA;AALN;AAQI;EACE,+BCvCY;EDwCZ,6CAAA;AANN;AAWI;EACE,cC7CW;ED8CX,gCAAA;AATN;AAYI;EACE,YAAA;EACA,cCnDW;EDoDX,gCAAA;AAVN;AAeI;EACE,YAAA;AAbN;AAiBE;EACE,kBAAA;AAfJ\",\"sourcesContent\":[\"\\n@import \\\"../../variables\\\";\\n@import \\\"../../mixins\\\";\\n\\n.checkbox {\\n position: relative;\\n display: inline-block;\\n min-height: 1.2em;\\n\\n &-indicator {\\n position: relative;\\n padding-left: 1.2em;\\n }\\n\\n &-indicator::before {\\n position: absolute;\\n right: 0;\\n top: 0;\\n display: block;\\n content: \\\"✓\\\";\\n transition: color 200ms;\\n width: 1.1em;\\n height: 1.1em;\\n border-radius: $fallback--checkboxRadius;\\n border-radius: var(--checkboxRadius, $fallback--checkboxRadius);\\n box-shadow: 0 0 2px black inset;\\n box-shadow: var(--inputShadow);\\n background-color: $fallback--fg;\\n background-color: var(--input, $fallback--fg);\\n vertical-align: top;\\n text-align: center;\\n line-height: 1.1em;\\n font-size: 1.1em;\\n color: transparent;\\n overflow: hidden;\\n box-sizing: border-box;\\n }\\n\\n &.disabled {\\n .checkbox-indicator::before,\\n .label {\\n opacity: 0.5;\\n }\\n\\n .label {\\n color: $fallback--faint;\\n color: var(--faint, $fallback--faint);\\n }\\n }\\n\\n input[type=\\\"checkbox\\\"] {\\n &:checked + .checkbox-indicator::before {\\n color: $fallback--text;\\n color: var(--inputText, $fallback--text);\\n }\\n\\n &:indeterminate + .checkbox-indicator::before {\\n content: \\\"–\\\";\\n color: $fallback--text;\\n color: var(--inputText, $fallback--text);\\n }\\n }\\n\\n &.indeterminate-fix {\\n input[type=\\\"checkbox\\\"] + .checkbox-indicator::before {\\n content: \\\"–\\\";\\n }\\n }\\n\\n & > span {\\n margin-left: 0.5em;\\n }\\n}\\n\",\"$main-color: #f58d2c;\\n$main-background: white;\\n$darkened-background: whitesmoke;\\n\\n$fallback--bg: #121a24;\\n$fallback--fg: #182230;\\n$fallback--faint: rgb(185 185 186 / 50%);\\n$fallback--text: #b9b9ba;\\n$fallback--link: #d8a070;\\n$fallback--icon: #666;\\n$fallback--lightBg: rgb(21 30 42);\\n$fallback--lightText: #b9b9ba;\\n$fallback--border: #222;\\n$fallback--cRed: #f00;\\n$fallback--cBlue: #0095ff;\\n$fallback--cGreen: #0fa00f;\\n$fallback--cOrange: orange;\\n\\n$fallback--alertError: rgb(211 16 20 / 50%);\\n$fallback--alertWarning: rgb(111 111 20 / 50%);\\n\\n$fallback--panelRadius: 10px;\\n$fallback--checkboxRadius: 2px;\\n$fallback--btnRadius: 4px;\\n$fallback--inputRadius: 4px;\\n$fallback--tooltipRadius: 5px;\\n$fallback--avatarRadius: 4px;\\n$fallback--avatarAltRadius: 10px;\\n$fallback--attachmentRadius: 10px;\\n$fallback--chatMessageRadius: 10px;\\n\\n$fallback--buttonShadow: 0 0 2px 0 rgb(0 0 0 / 100%),\\n 0 1px 0 0 rgb(255 255 255 / 20%) inset,\\n 0 -1px 0 0 rgb(0 0 0 / 20%) inset;\\n\\n$status-margin: 0.75em;\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2NoZWNrYm94L2NoZWNrYm94LnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTc5MTJjZDJmJmxhbmc9c2Nzcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBO0FBQ2dIO0FBQ2pCO0FBQy9GLDhCQUE4QixtRkFBMkIsQ0FBQyw0RkFBcUM7QUFDL0Y7QUFDQSw2REFBNkQsYUFBYSx1QkFBdUIsMEJBQTBCLHNCQUFzQixHQUFHLHVCQUF1Qix1QkFBdUIsd0JBQXdCLEdBQUcsK0JBQStCLHVCQUF1QixhQUFhLFdBQVcsbUJBQW1CLG1CQUFtQiw0QkFBNEIsaUJBQWlCLGtCQUFrQix1QkFBdUIsOENBQThDLG9DQUFvQyxtQ0FBbUMsOEJBQThCLDRDQUE0Qyx3QkFBd0IsdUJBQXVCLHVCQUF1QixxQkFBcUIsdUJBQXVCLHFCQUFxQiwyQkFBMkIsR0FBRyw4RUFBOEUsaUJBQWlCLEdBQUcsNkJBQTZCLG9DQUFvQyxrREFBa0QsR0FBRyx3RUFBd0UsbUJBQW1CLHFDQUFxQyxHQUFHLDhFQUE4RSxtQkFBbUIsbUJBQW1CLHFDQUFxQyxHQUFHLGtGQUFrRixtQkFBbUIsR0FBRyxvQkFBb0IsdUJBQXVCLEdBQUcsT0FBTyxnSkFBZ0osTUFBTSxXQUFXLFdBQVcsV0FBVyxLQUFLLEtBQUssV0FBVyxXQUFXLEtBQUssS0FBSyxXQUFXLFVBQVUsVUFBVSxVQUFVLFVBQVUsV0FBVyxVQUFVLFVBQVUsWUFBWSxZQUFZLFdBQVcsV0FBVyxZQUFZLFlBQVksV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxLQUFLLE1BQU0sVUFBVSxLQUFLLEtBQUssWUFBWSxZQUFZLEtBQUssS0FBSyxXQUFXLFlBQVksS0FBSyxLQUFLLFVBQVUsV0FBVyxZQUFZLEtBQUssS0FBSyxVQUFVLEtBQUssTUFBTSxXQUFXLHVEQUF1RCwyQkFBMkIsZUFBZSx1QkFBdUIsMEJBQTBCLHNCQUFzQixtQkFBbUIseUJBQXlCLDBCQUEwQixLQUFLLDJCQUEyQix5QkFBeUIsZUFBZSxhQUFhLHFCQUFxQixxQkFBcUIsOEJBQThCLG1CQUFtQixvQkFBb0IsK0NBQStDLHNFQUFzRSxzQ0FBc0MscUNBQXFDLHNDQUFzQyxvREFBb0QsMEJBQTBCLHlCQUF5Qix5QkFBeUIsdUJBQXVCLHlCQUF5Qix1QkFBdUIsNkJBQTZCLEtBQUssa0JBQWtCLGdEQUFnRCxxQkFBcUIsT0FBTyxnQkFBZ0IsZ0NBQWdDLDhDQUE4QyxPQUFPLEtBQUssZ0NBQWdDLCtDQUErQywrQkFBK0IsaURBQWlELE9BQU8sdURBQXVELHVCQUF1QiwrQkFBK0IsaURBQWlELE9BQU8sS0FBSywyQkFBMkIsOERBQThELHVCQUF1QixPQUFPLEtBQUssZ0JBQWdCLHlCQUF5QixLQUFLLEdBQUcsMEJBQTBCLDBCQUEwQixtQ0FBbUMsMkJBQTJCLHlCQUF5QiwyQ0FBMkMsMkJBQTJCLDJCQUEyQix3QkFBd0Isb0NBQW9DLGdDQUFnQywwQkFBMEIsd0JBQXdCLDRCQUE0Qiw2QkFBNkIsNkJBQTZCLGdEQUFnRCxpREFBaUQsaUNBQWlDLGlDQUFpQyw0QkFBNEIsOEJBQThCLGdDQUFnQywrQkFBK0IsbUNBQW1DLG9DQUFvQyxxQ0FBcUMsMElBQTBJLDJCQUEyQixxQkFBcUI7QUFDMW1KO0FBQ0EsaUVBQWUsdUJBQXVCLEVBQUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL2NvbXBvbmVudHMvY2hlY2tib3gvY2hlY2tib3gudnVlPzk0ZjEiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gSW1wb3J0c1xuaW1wb3J0IF9fX0NTU19MT0FERVJfQVBJX1NPVVJDRU1BUF9JTVBPUlRfX18gZnJvbSBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2Rpc3QvcnVudGltZS9zb3VyY2VNYXBzLmpzXCI7XG5pbXBvcnQgX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fIGZyb20gXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvYXBpLmpzXCI7XG52YXIgX19fQ1NTX0xPQURFUl9FWFBPUlRfX18gPSBfX19DU1NfTE9BREVSX0FQSV9JTVBPUlRfX18oX19fQ1NTX0xPQURFUl9BUElfU09VUkNFTUFQX0lNUE9SVF9fXyk7XG4vLyBNb2R1bGVcbl9fX0NTU19MT0FERVJfRVhQT1JUX19fLnB1c2goW21vZHVsZS5pZCwgXCJAY2hhcnNldCBcXFwiVVRGLThcXFwiO1xcbi5jaGVja2JveCB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICBtaW4taGVpZ2h0OiAxLjJlbTtcXG59XFxuLmNoZWNrYm94LWluZGljYXRvciB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBwYWRkaW5nLWxlZnQ6IDEuMmVtO1xcbn1cXG4uY2hlY2tib3gtaW5kaWNhdG9yOjpiZWZvcmUge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgcmlnaHQ6IDA7XFxuICB0b3A6IDA7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIGNvbnRlbnQ6IFxcXCLinJNcXFwiO1xcbiAgdHJhbnNpdGlvbjogY29sb3IgMjAwbXM7XFxuICB3aWR0aDogMS4xZW07XFxuICBoZWlnaHQ6IDEuMWVtO1xcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tY2hlY2tib3hSYWRpdXMsIDJweCk7XFxuICBib3gtc2hhZG93OiAwIDAgMnB4IGJsYWNrIGluc2V0O1xcbiAgYm94LXNoYWRvdzogdmFyKC0taW5wdXRTaGFkb3cpO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE4MjIzMDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlucHV0LCAjMTgyMjMwKTtcXG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XFxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxuICBsaW5lLWhlaWdodDogMS4xZW07XFxuICBmb250LXNpemU6IDEuMWVtO1xcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XFxufVxcbi5jaGVja2JveC5kaXNhYmxlZCAuY2hlY2tib3gtaW5kaWNhdG9yOjpiZWZvcmUsXFxuLmNoZWNrYm94LmRpc2FibGVkIC5sYWJlbCB7XFxuICBvcGFjaXR5OiAwLjU7XFxufVxcbi5jaGVja2JveC5kaXNhYmxlZCAubGFiZWwge1xcbiAgY29sb3I6IHJnYmEoMTg1LCAxODUsIDE4NiwgMC41KTtcXG4gIGNvbG9yOiB2YXIoLS1mYWludCwgcmdiYSgxODUsIDE4NSwgMTg2LCAwLjUpKTtcXG59XFxuLmNoZWNrYm94IGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQgKyAuY2hlY2tib3gtaW5kaWNhdG9yOjpiZWZvcmUge1xcbiAgY29sb3I6ICNiOWI5YmE7XFxuICBjb2xvcjogdmFyKC0taW5wdXRUZXh0LCAjYjliOWJhKTtcXG59XFxuLmNoZWNrYm94IGlucHV0W3R5cGU9Y2hlY2tib3hdOmluZGV0ZXJtaW5hdGUgKyAuY2hlY2tib3gtaW5kaWNhdG9yOjpiZWZvcmUge1xcbiAgY29udGVudDogXFxcIuKAk1xcXCI7XFxuICBjb2xvcjogI2I5YjliYTtcXG4gIGNvbG9yOiB2YXIoLS1pbnB1dFRleHQsICNiOWI5YmEpO1xcbn1cXG4uY2hlY2tib3guaW5kZXRlcm1pbmF0ZS1maXggaW5wdXRbdHlwZT1jaGVja2JveF0gKyAuY2hlY2tib3gtaW5kaWNhdG9yOjpiZWZvcmUge1xcbiAgY29udGVudDogXFxcIuKAk1xcXCI7XFxufVxcbi5jaGVja2JveCA+IHNwYW4ge1xcbiAgbWFyZ2luLWxlZnQ6IDAuNWVtO1xcbn1cIiwgXCJcIix7XCJ2ZXJzaW9uXCI6MyxcInNvdXJjZXNcIjpbXCJ3ZWJwYWNrOi8vLi9zcmMvY29tcG9uZW50cy9jaGVja2JveC9jaGVja2JveC52dWVcIixcIndlYnBhY2s6Ly8uL3NyYy9fdmFyaWFibGVzLnNjc3NcIl0sXCJuYW1lc1wiOltdLFwibWFwcGluZ3NcIjpcIkFBQUEsZ0JBQWdCO0FBSWhCO0VBQ0Usa0JBQUE7RUFDQSxxQkFBQTtFQUNBLGlCQUFBO0FBRkY7QUFJRTtFQUNFLGtCQUFBO0VBQ0EsbUJBQUE7QUFGSjtBQUtFO0VBQ0Usa0JBQUE7RUFDQSxRQUFBO0VBQ0EsTUFBQTtFQUNBLGNBQUE7RUFDQSxZQUFBO0VBQ0EsdUJBQUE7RUFDQSxZQUFBO0VBQ0EsYUFBQTtFQUNBLGtCQ0R1QjtFREV2Qix5Q0FBQTtFQUNBLCtCQUFBO0VBQ0EsOEJBQUE7RUFDQSx5QkN0Qlc7RUR1QlgsdUNBQUE7RUFDQSxtQkFBQTtFQUNBLGtCQUFBO0VBQ0Esa0JBQUE7RUFDQSxnQkFBQTtFQUNBLGtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxzQkFBQTtBQUhKO0FBT0k7O0VBRUUsWUFBQTtBQUxOO0FBUUk7RUFDRSwrQkN2Q1k7RUR3Q1osNkNBQUE7QUFOTjtBQVdJO0VBQ0UsY0M3Q1c7RUQ4Q1gsZ0NBQUE7QUFUTjtBQVlJO0VBQ0UsWUFBQTtFQUNBLGNDbkRXO0VEb0RYLGdDQUFBO0FBVk47QUFlSTtFQUNFLFlBQUE7QUFiTjtBQWlCRTtFQUNFLGtCQUFBO0FBZkpcIixcInNvdXJjZXNDb250ZW50XCI6W1wiXFxuQGltcG9ydCBcXFwiLi4vLi4vdmFyaWFibGVzXFxcIjtcXG5AaW1wb3J0IFxcXCIuLi8uLi9taXhpbnNcXFwiO1xcblxcbi5jaGVja2JveCB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICBtaW4taGVpZ2h0OiAxLjJlbTtcXG5cXG4gICYtaW5kaWNhdG9yIHtcXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEuMmVtO1xcbiAgfVxcblxcbiAgJi1pbmRpY2F0b3I6OmJlZm9yZSB7XFxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gICAgcmlnaHQ6IDA7XFxuICAgIHRvcDogMDtcXG4gICAgZGlzcGxheTogYmxvY2s7XFxuICAgIGNvbnRlbnQ6IFxcXCLinJNcXFwiO1xcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAyMDBtcztcXG4gICAgd2lkdGg6IDEuMWVtO1xcbiAgICBoZWlnaHQ6IDEuMWVtO1xcbiAgICBib3JkZXItcmFkaXVzOiAkZmFsbGJhY2stLWNoZWNrYm94UmFkaXVzO1xcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1jaGVja2JveFJhZGl1cywgJGZhbGxiYWNrLS1jaGVja2JveFJhZGl1cyk7XFxuICAgIGJveC1zaGFkb3c6IDAgMCAycHggYmxhY2sgaW5zZXQ7XFxuICAgIGJveC1zaGFkb3c6IHZhcigtLWlucHV0U2hhZG93KTtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZhbGxiYWNrLS1mZztcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW5wdXQsICRmYWxsYmFjay0tZmcpO1xcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxuICAgIGxpbmUtaGVpZ2h0OiAxLjFlbTtcXG4gICAgZm9udC1zaXplOiAxLjFlbTtcXG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xcbiAgfVxcblxcbiAgJi5kaXNhYmxlZCB7XFxuICAgIC5jaGVja2JveC1pbmRpY2F0b3I6OmJlZm9yZSxcXG4gICAgLmxhYmVsIHtcXG4gICAgICBvcGFjaXR5OiAwLjU7XFxuICAgIH1cXG5cXG4gICAgLmxhYmVsIHtcXG4gICAgICBjb2xvcjogJGZhbGxiYWNrLS1mYWludDtcXG4gICAgICBjb2xvcjogdmFyKC0tZmFpbnQsICRmYWxsYmFjay0tZmFpbnQpO1xcbiAgICB9XFxuICB9XFxuXFxuICBpbnB1dFt0eXBlPVxcXCJjaGVja2JveFxcXCJdIHtcXG4gICAgJjpjaGVja2VkICsgLmNoZWNrYm94LWluZGljYXRvcjo6YmVmb3JlIHtcXG4gICAgICBjb2xvcjogJGZhbGxiYWNrLS10ZXh0O1xcbiAgICAgIGNvbG9yOiB2YXIoLS1pbnB1dFRleHQsICRmYWxsYmFjay0tdGV4dCk7XFxuICAgIH1cXG5cXG4gICAgJjppbmRldGVybWluYXRlICsgLmNoZWNrYm94LWluZGljYXRvcjo6YmVmb3JlIHtcXG4gICAgICBjb250ZW50OiBcXFwi4oCTXFxcIjtcXG4gICAgICBjb2xvcjogJGZhbGxiYWNrLS10ZXh0O1xcbiAgICAgIGNvbG9yOiB2YXIoLS1pbnB1dFRleHQsICRmYWxsYmFjay0tdGV4dCk7XFxuICAgIH1cXG4gIH1cXG5cXG4gICYuaW5kZXRlcm1pbmF0ZS1maXgge1xcbiAgICBpbnB1dFt0eXBlPVxcXCJjaGVja2JveFxcXCJdICsgLmNoZWNrYm94LWluZGljYXRvcjo6YmVmb3JlIHtcXG4gICAgICBjb250ZW50OiBcXFwi4oCTXFxcIjtcXG4gICAgfVxcbiAgfVxcblxcbiAgJiA+IHNwYW4ge1xcbiAgICBtYXJnaW4tbGVmdDogMC41ZW07XFxuICB9XFxufVxcblwiLFwiJG1haW4tY29sb3I6ICNmNThkMmM7XFxuJG1haW4tYmFja2dyb3VuZDogd2hpdGU7XFxuJGRhcmtlbmVkLWJhY2tncm91bmQ6IHdoaXRlc21va2U7XFxuXFxuJGZhbGxiYWNrLS1iZzogIzEyMWEyNDtcXG4kZmFsbGJhY2stLWZnOiAjMTgyMjMwO1xcbiRmYWxsYmFjay0tZmFpbnQ6IHJnYigxODUgMTg1IDE4NiAvIDUwJSk7XFxuJGZhbGxiYWNrLS10ZXh0OiAjYjliOWJhO1xcbiRmYWxsYmFjay0tbGluazogI2Q4YTA3MDtcXG4kZmFsbGJhY2stLWljb246ICM2NjY7XFxuJGZhbGxiYWNrLS1saWdodEJnOiByZ2IoMjEgMzAgNDIpO1xcbiRmYWxsYmFjay0tbGlnaHRUZXh0OiAjYjliOWJhO1xcbiRmYWxsYmFjay0tYm9yZGVyOiAjMjIyO1xcbiRmYWxsYmFjay0tY1JlZDogI2YwMDtcXG4kZmFsbGJhY2stLWNCbHVlOiAjMDA5NWZmO1xcbiRmYWxsYmFjay0tY0dyZWVuOiAjMGZhMDBmO1xcbiRmYWxsYmFjay0tY09yYW5nZTogb3JhbmdlO1xcblxcbiRmYWxsYmFjay0tYWxlcnRFcnJvcjogcmdiKDIxMSAxNiAyMCAvIDUwJSk7XFxuJGZhbGxiYWNrLS1hbGVydFdhcm5pbmc6IHJnYigxMTEgMTExIDIwIC8gNTAlKTtcXG5cXG4kZmFsbGJhY2stLXBhbmVsUmFkaXVzOiAxMHB4O1xcbiRmYWxsYmFjay0tY2hlY2tib3hSYWRpdXM6IDJweDtcXG4kZmFsbGJhY2stLWJ0blJhZGl1czogNHB4O1xcbiRmYWxsYmFjay0taW5wdXRSYWRpdXM6IDRweDtcXG4kZmFsbGJhY2stLXRvb2x0aXBSYWRpdXM6IDVweDtcXG4kZmFsbGJhY2stLWF2YXRhclJhZGl1czogNHB4O1xcbiRmYWxsYmFjay0tYXZhdGFyQWx0UmFkaXVzOiAxMHB4O1xcbiRmYWxsYmFjay0tYXR0YWNobWVudFJhZGl1czogMTBweDtcXG4kZmFsbGJhY2stLWNoYXRNZXNzYWdlUmFkaXVzOiAxMHB4O1xcblxcbiRmYWxsYmFjay0tYnV0dG9uU2hhZG93OiAwIDAgMnB4IDAgcmdiKDAgMCAwIC8gMTAwJSksXFxuICAwIDFweCAwIDAgcmdiKDI1NSAyNTUgMjU1IC8gMjAlKSBpbnNldCxcXG4gIDAgLTFweCAwIDAgcmdiKDAgMCAwIC8gMjAlKSBpbnNldDtcXG5cXG4kc3RhdHVzLW1hcmdpbjogMC43NWVtO1xcblwiXSxcInNvdXJjZVJvb3RcIjpcIlwifV0pO1xuLy8gRXhwb3J0c1xuZXhwb3J0IGRlZmF1bHQgX19fQ1NTX0xPQURFUl9FWFBPUlRfX187XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/checkbox/checkbox.vue?vue&type=style&index=0&id=7912cd2f&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/conversation/conversation.vue?vue&type=style&index=0&id=22e9b72f&lang=scss":
/*!********************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/conversation/conversation.vue?vue&type=style&index=0&id=22e9b72f&lang=scss ***!
\********************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".Conversation {\\n z-index: 1;\\n /* expanded conversation in timeline */\\n}\\n.Conversation .conversation-dive-to-top-level-box {\\n padding: var(--status-margin, 0.75em);\\n border-bottom: 1px solid var(--border, #222);\\n border-radius: 0;\\n /* Make the button stretch along the whole row */\\n display: flex;\\n align-items: stretch;\\n flex-direction: column;\\n}\\n.Conversation .thread-ancestors {\\n margin-left: var(--status-margin, 0.75em);\\n border-left: 2px solid var(--border, #222);\\n}\\n.Conversation .thread-ancestor.-faded .StatusContent {\\n --link: var(--faintLink);\\n --text: var(--faint);\\n color: var(--text);\\n}\\n.Conversation .thread-ancestor-dive-box {\\n padding-left: var(--status-margin, 0.75em);\\n border-bottom: 1px solid var(--border, #222);\\n border-radius: 0;\\n /* Make the button stretch along the whole row */\\n}\\n.Conversation .thread-ancestor-dive-box, .Conversation .thread-ancestor-dive-box-inner {\\n display: flex;\\n align-items: stretch;\\n flex-direction: column;\\n}\\n.Conversation .thread-ancestor-dive-box-inner {\\n padding: var(--status-margin, 0.75em);\\n}\\n.Conversation .conversation-status {\\n border-bottom: 1px solid var(--border, #222);\\n border-radius: 0;\\n}\\n.Conversation .thread-ancestor-has-other-replies .conversation-status, .Conversation:last-child .conversation-status,\\n.Conversation .thread-ancestor:last-child .conversation-status,\\n.Conversation .thread-ancestor:last-child .thread-ancestor-dive-box, .Conversation.-expanded .thread-tree .conversation-status {\\n border-bottom: none;\\n}\\n.Conversation .thread-ancestors + .thread-tree > .conversation-status {\\n border-top: 1px solid var(--border, #222);\\n}\\n.Conversation.status-fadein.-expanded .thread-body {\\n border-left: 4px solid #f00;\\n border-left-color: var(--cRed, #f00);\\n border-radius: 0 0 10px 10px;\\n border-radius: 0 0 var(--panelRadius, 10px) var(--panelRadius, 10px);\\n border-bottom: 1px solid var(--border, #222);\\n}\\n.Conversation.-expanded.status-fadein {\\n margin: calc(var(--status-margin, 0.75em) / 2);\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/conversation/conversation.vue\"],\"names\":[],\"mappings\":\"AAGA;EACE,UAAA;EA4DA,sCAAA;AA7DF;AAGE;EACE,qCAAA;EACA,4CAAA;EACA,gBAAA;EAEA,gDAAA;EACA,aAAA;EACA,oBAAA;EACA,sBAAA;AAFJ;AAKE;EACE,yCAAA;EACA,0CAAA;AAHJ;AAME;EACE,wBAAA;EACA,oBAAA;EAEA,kBAAA;AALJ;AAQE;EACE,0CAAA;EACA,4CAAA;EACA,gBAAA;EAEA,gDAAA;AAPJ;AAQI;EAEE,aAAA;EACA,oBAAA;EACA,sBAAA;AAPN;AAWE;EACE,qCAAA;AATJ;AAYE;EACE,4CAAA;EACA,gBAAA;AAVJ;AAaE;;;EAKE,mBAAA;AAbJ;AAgBE;EACE,yCAAA;AAdJ;AAkBE;EACE,2BAAA;EACA,oCAAA;EACA,4BAAA;EACA,oEAAA;EACA,4CAAA;AAhBJ;AAmBE;EACE,8CAAA;AAjBJ\",\"sourcesContent\":[\"\\n@import \\\"../../variables\\\";\\n\\n.Conversation {\\n z-index: 1;\\n\\n .conversation-dive-to-top-level-box {\\n padding: var(--status-margin, $status-margin);\\n border-bottom: 1px solid var(--border, $fallback--border);\\n border-radius: 0;\\n\\n /* Make the button stretch along the whole row */\\n display: flex;\\n align-items: stretch;\\n flex-direction: column;\\n }\\n\\n .thread-ancestors {\\n margin-left: var(--status-margin, $status-margin);\\n border-left: 2px solid var(--border, $fallback--border);\\n }\\n\\n .thread-ancestor.-faded .StatusContent {\\n --link: var(--faintLink);\\n --text: var(--faint);\\n\\n color: var(--text);\\n }\\n\\n .thread-ancestor-dive-box {\\n padding-left: var(--status-margin, $status-margin);\\n border-bottom: 1px solid var(--border, $fallback--border);\\n border-radius: 0;\\n\\n /* Make the button stretch along the whole row */\\n &,\\n &-inner {\\n display: flex;\\n align-items: stretch;\\n flex-direction: column;\\n }\\n }\\n\\n .thread-ancestor-dive-box-inner {\\n padding: var(--status-margin, $status-margin);\\n }\\n\\n .conversation-status {\\n border-bottom: 1px solid var(--border, $fallback--border);\\n border-radius: 0;\\n }\\n\\n .thread-ancestor-has-other-replies .conversation-status,\\n &:last-child .conversation-status,\\n .thread-ancestor:last-child .conversation-status,\\n .thread-ancestor:last-child .thread-ancestor-dive-box,\\n &.-expanded .thread-tree .conversation-status {\\n border-bottom: none;\\n }\\n\\n .thread-ancestors + .thread-tree > .conversation-status {\\n border-top: 1px solid var(--border, $fallback--border);\\n }\\n\\n /* expanded conversation in timeline */\\n &.status-fadein.-expanded .thread-body {\\n border-left: 4px solid $fallback--cRed;\\n border-left-color: var(--cRed, $fallback--cRed);\\n border-radius: 0 0 $fallback--panelRadius $fallback--panelRadius;\\n border-radius: 0 0 var(--panelRadius, $fallback--panelRadius) var(--panelRadius, $fallback--panelRadius);\\n border-bottom: 1px solid var(--border, $fallback--border);\\n }\\n\\n &.-expanded.status-fadein {\\n margin: calc(var(--status-margin, $status-margin) / 2);\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2NvbnZlcnNhdGlvbi9jb252ZXJzYXRpb24udnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9MjJlOWI3MmYmbGFuZz1zY3NzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7QUFDZ0g7QUFDakI7QUFDL0YsOEJBQThCLG1GQUEyQixDQUFDLDRGQUFxQztBQUMvRjtBQUNBLHlEQUF5RCxlQUFlLDhDQUE4QyxxREFBcUQsMENBQTBDLGlEQUFpRCxxQkFBcUIsdUVBQXVFLHlCQUF5QiwyQkFBMkIsR0FBRyxtQ0FBbUMsOENBQThDLCtDQUErQyxHQUFHLHdEQUF3RCw2QkFBNkIseUJBQXlCLHVCQUF1QixHQUFHLDJDQUEyQywrQ0FBK0MsaURBQWlELHFCQUFxQix3REFBd0QsMEZBQTBGLGtCQUFrQix5QkFBeUIsMkJBQTJCLEdBQUcsaURBQWlELDBDQUEwQyxHQUFHLHNDQUFzQyxpREFBaUQscUJBQXFCLEdBQUcsMFRBQTBULHdCQUF3QixHQUFHLHlFQUF5RSw4Q0FBOEMsR0FBRyxzREFBc0QsZ0NBQWdDLHlDQUF5QyxpQ0FBaUMseUVBQXlFLGlEQUFpRCxHQUFHLHlDQUF5QyxtREFBbUQsR0FBRyxPQUFPLCtHQUErRyxVQUFVLFlBQVksTUFBTSxLQUFLLFdBQVcsV0FBVyxXQUFXLFdBQVcsVUFBVSxXQUFXLFdBQVcsS0FBSyxLQUFLLFdBQVcsV0FBVyxLQUFLLEtBQUssV0FBVyxXQUFXLFdBQVcsS0FBSyxLQUFLLFdBQVcsV0FBVyxXQUFXLFdBQVcsS0FBSyxLQUFLLFVBQVUsV0FBVyxXQUFXLEtBQUssS0FBSyxXQUFXLEtBQUssS0FBSyxXQUFXLFdBQVcsS0FBSyxPQUFPLFdBQVcsS0FBSyxNQUFNLFdBQVcsS0FBSyxNQUFNLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxNQUFNLE1BQU0sV0FBVyx3REFBd0QsbUJBQW1CLGVBQWUsMkNBQTJDLG9EQUFvRCxnRUFBZ0UsdUJBQXVCLDZFQUE2RSwyQkFBMkIsNkJBQTZCLEtBQUsseUJBQXlCLHdEQUF3RCw4REFBOEQsS0FBSyw4Q0FBOEMsK0JBQStCLDJCQUEyQiwyQkFBMkIsS0FBSyxpQ0FBaUMseURBQXlELGdFQUFnRSx1QkFBdUIsZ0ZBQWdGLHNCQUFzQiw2QkFBNkIsK0JBQStCLE9BQU8sS0FBSyx1Q0FBdUMsb0RBQW9ELEtBQUssNEJBQTRCLGdFQUFnRSx1QkFBdUIsS0FBSyxzUUFBc1EsMEJBQTBCLEtBQUssK0RBQStELDZEQUE2RCxLQUFLLHlGQUF5Riw2Q0FBNkMsc0RBQXNELHVFQUF1RSwrR0FBK0csZ0VBQWdFLEtBQUssaUNBQWlDLDZEQUE2RCxLQUFLLEdBQUcscUJBQXFCO0FBQ3IwSjtBQUNBLGlFQUFlLHVCQUF1QixFQUFDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9jb21wb25lbnRzL2NvbnZlcnNhdGlvbi9jb252ZXJzYXRpb24udnVlP2IzNGMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gSW1wb3J0c1xuaW1wb3J0IF9fX0NTU19MT0FERVJfQVBJX1NPVVJDRU1BUF9JTVBPUlRfX18gZnJvbSBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2Rpc3QvcnVudGltZS9zb3VyY2VNYXBzLmpzXCI7XG5pbXBvcnQgX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fIGZyb20gXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvYXBpLmpzXCI7XG52YXIgX19fQ1NTX0xPQURFUl9FWFBPUlRfX18gPSBfX19DU1NfTE9BREVSX0FQSV9JTVBPUlRfX18oX19fQ1NTX0xPQURFUl9BUElfU09VUkNFTUFQX0lNUE9SVF9fXyk7XG4vLyBNb2R1bGVcbl9fX0NTU19MT0FERVJfRVhQT1JUX19fLnB1c2goW21vZHVsZS5pZCwgXCIuQ29udmVyc2F0aW9uIHtcXG4gIHotaW5kZXg6IDE7XFxuICAvKiBleHBhbmRlZCBjb252ZXJzYXRpb24gaW4gdGltZWxpbmUgKi9cXG59XFxuLkNvbnZlcnNhdGlvbiAuY29udmVyc2F0aW9uLWRpdmUtdG8tdG9wLWxldmVsLWJveCB7XFxuICBwYWRkaW5nOiB2YXIoLS1zdGF0dXMtbWFyZ2luLCAwLjc1ZW0pO1xcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlciwgIzIyMik7XFxuICBib3JkZXItcmFkaXVzOiAwO1xcbiAgLyogTWFrZSB0aGUgYnV0dG9uIHN0cmV0Y2ggYWxvbmcgdGhlIHdob2xlIHJvdyAqL1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG59XFxuLkNvbnZlcnNhdGlvbiAudGhyZWFkLWFuY2VzdG9ycyB7XFxuICBtYXJnaW4tbGVmdDogdmFyKC0tc3RhdHVzLW1hcmdpbiwgMC43NWVtKTtcXG4gIGJvcmRlci1sZWZ0OiAycHggc29saWQgdmFyKC0tYm9yZGVyLCAjMjIyKTtcXG59XFxuLkNvbnZlcnNhdGlvbiAudGhyZWFkLWFuY2VzdG9yLi1mYWRlZCAuU3RhdHVzQ29udGVudCB7XFxuICAtLWxpbms6IHZhcigtLWZhaW50TGluayk7XFxuICAtLXRleHQ6IHZhcigtLWZhaW50KTtcXG4gIGNvbG9yOiB2YXIoLS10ZXh0KTtcXG59XFxuLkNvbnZlcnNhdGlvbiAudGhyZWFkLWFuY2VzdG9yLWRpdmUtYm94IHtcXG4gIHBhZGRpbmctbGVmdDogdmFyKC0tc3RhdHVzLW1hcmdpbiwgMC43NWVtKTtcXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXIsICMyMjIpO1xcbiAgYm9yZGVyLXJhZGl1czogMDtcXG4gIC8qIE1ha2UgdGhlIGJ1dHRvbiBzdHJldGNoIGFsb25nIHRoZSB3aG9sZSByb3cgKi9cXG59XFxuLkNvbnZlcnNhdGlvbiAudGhyZWFkLWFuY2VzdG9yLWRpdmUtYm94LCAuQ29udmVyc2F0aW9uIC50aHJlYWQtYW5jZXN0b3ItZGl2ZS1ib3gtaW5uZXIge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG59XFxuLkNvbnZlcnNhdGlvbiAudGhyZWFkLWFuY2VzdG9yLWRpdmUtYm94LWlubmVyIHtcXG4gIHBhZGRpbmc6IHZhcigtLXN0YXR1cy1tYXJnaW4sIDAuNzVlbSk7XFxufVxcbi5Db252ZXJzYXRpb24gLmNvbnZlcnNhdGlvbi1zdGF0dXMge1xcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlciwgIzIyMik7XFxuICBib3JkZXItcmFkaXVzOiAwO1xcbn1cXG4uQ29udmVyc2F0aW9uIC50aHJlYWQtYW5jZXN0b3ItaGFzLW90aGVyLXJlcGxpZXMgLmNvbnZlcnNhdGlvbi1zdGF0dXMsIC5Db252ZXJzYXRpb246bGFzdC1jaGlsZCAuY29udmVyc2F0aW9uLXN0YXR1cyxcXG4uQ29udmVyc2F0aW9uIC50aHJlYWQtYW5jZXN0b3I6bGFzdC1jaGlsZCAuY29udmVyc2F0aW9uLXN0YXR1cyxcXG4uQ29udmVyc2F0aW9uIC50aHJlYWQtYW5jZXN0b3I6bGFzdC1jaGlsZCAudGhyZWFkLWFuY2VzdG9yLWRpdmUtYm94LCAuQ29udmVyc2F0aW9uLi1leHBhbmRlZCAudGhyZWFkLXRyZWUgLmNvbnZlcnNhdGlvbi1zdGF0dXMge1xcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcXG59XFxuLkNvbnZlcnNhdGlvbiAudGhyZWFkLWFuY2VzdG9ycyArIC50aHJlYWQtdHJlZSA+IC5jb252ZXJzYXRpb24tc3RhdHVzIHtcXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXIsICMyMjIpO1xcbn1cXG4uQ29udmVyc2F0aW9uLnN0YXR1cy1mYWRlaW4uLWV4cGFuZGVkIC50aHJlYWQtYm9keSB7XFxuICBib3JkZXItbGVmdDogNHB4IHNvbGlkICNmMDA7XFxuICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tY1JlZCwgI2YwMCk7XFxuICBib3JkZXItcmFkaXVzOiAwIDAgMTBweCAxMHB4O1xcbiAgYm9yZGVyLXJhZGl1czogMCAwIHZhcigtLXBhbmVsUmFkaXVzLCAxMHB4KSB2YXIoLS1wYW5lbFJhZGl1cywgMTBweCk7XFxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLCAjMjIyKTtcXG59XFxuLkNvbnZlcnNhdGlvbi4tZXhwYW5kZWQuc3RhdHVzLWZhZGVpbiB7XFxuICBtYXJnaW46IGNhbGModmFyKC0tc3RhdHVzLW1hcmdpbiwgMC43NWVtKSAvIDIpO1xcbn1cIiwgXCJcIix7XCJ2ZXJzaW9uXCI6MyxcInNvdXJjZXNcIjpbXCJ3ZWJwYWNrOi8vLi9zcmMvY29tcG9uZW50cy9jb252ZXJzYXRpb24vY29udmVyc2F0aW9uLnZ1ZVwiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiQUFHQTtFQUNFLFVBQUE7RUE0REEsc0NBQUE7QUE3REY7QUFHRTtFQUNFLHFDQUFBO0VBQ0EsNENBQUE7RUFDQSxnQkFBQTtFQUVBLGdEQUFBO0VBQ0EsYUFBQTtFQUNBLG9CQUFBO0VBQ0Esc0JBQUE7QUFGSjtBQUtFO0VBQ0UseUNBQUE7RUFDQSwwQ0FBQTtBQUhKO0FBTUU7RUFDRSx3QkFBQTtFQUNBLG9CQUFBO0VBRUEsa0JBQUE7QUFMSjtBQVFFO0VBQ0UsMENBQUE7RUFDQSw0Q0FBQTtFQUNBLGdCQUFBO0VBRUEsZ0RBQUE7QUFQSjtBQVFJO0VBRUUsYUFBQTtFQUNBLG9CQUFBO0VBQ0Esc0JBQUE7QUFQTjtBQVdFO0VBQ0UscUNBQUE7QUFUSjtBQVlFO0VBQ0UsNENBQUE7RUFDQSxnQkFBQTtBQVZKO0FBYUU7OztFQUtFLG1CQUFBO0FBYko7QUFnQkU7RUFDRSx5Q0FBQTtBQWRKO0FBa0JFO0VBQ0UsMkJBQUE7RUFDQSxvQ0FBQTtFQUNBLDRCQUFBO0VBQ0Esb0VBQUE7RUFDQSw0Q0FBQTtBQWhCSjtBQW1CRTtFQUNFLDhDQUFBO0FBakJKXCIsXCJzb3VyY2VzQ29udGVudFwiOltcIlxcbkBpbXBvcnQgXFxcIi4uLy4uL3ZhcmlhYmxlc1xcXCI7XFxuXFxuLkNvbnZlcnNhdGlvbiB7XFxuICB6LWluZGV4OiAxO1xcblxcbiAgLmNvbnZlcnNhdGlvbi1kaXZlLXRvLXRvcC1sZXZlbC1ib3gge1xcbiAgICBwYWRkaW5nOiB2YXIoLS1zdGF0dXMtbWFyZ2luLCAkc3RhdHVzLW1hcmdpbik7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXIsICRmYWxsYmFjay0tYm9yZGVyKTtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG5cXG4gICAgLyogTWFrZSB0aGUgYnV0dG9uIHN0cmV0Y2ggYWxvbmcgdGhlIHdob2xlIHJvdyAqL1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gIH1cXG5cXG4gIC50aHJlYWQtYW5jZXN0b3JzIHtcXG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXN0YXR1cy1tYXJnaW4sICRzdGF0dXMtbWFyZ2luKTtcXG4gICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCB2YXIoLS1ib3JkZXIsICRmYWxsYmFjay0tYm9yZGVyKTtcXG4gIH1cXG5cXG4gIC50aHJlYWQtYW5jZXN0b3IuLWZhZGVkIC5TdGF0dXNDb250ZW50IHtcXG4gICAgLS1saW5rOiB2YXIoLS1mYWludExpbmspO1xcbiAgICAtLXRleHQ6IHZhcigtLWZhaW50KTtcXG5cXG4gICAgY29sb3I6IHZhcigtLXRleHQpO1xcbiAgfVxcblxcbiAgLnRocmVhZC1hbmNlc3Rvci1kaXZlLWJveCB7XFxuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3RhdHVzLW1hcmdpbiwgJHN0YXR1cy1tYXJnaW4pO1xcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLCAkZmFsbGJhY2stLWJvcmRlcik7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XFxuXFxuICAgIC8qIE1ha2UgdGhlIGJ1dHRvbiBzdHJldGNoIGFsb25nIHRoZSB3aG9sZSByb3cgKi9cXG4gICAgJixcXG4gICAgJi1pbm5lciB7XFxuICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgICB9XFxuICB9XFxuXFxuICAudGhyZWFkLWFuY2VzdG9yLWRpdmUtYm94LWlubmVyIHtcXG4gICAgcGFkZGluZzogdmFyKC0tc3RhdHVzLW1hcmdpbiwgJHN0YXR1cy1tYXJnaW4pO1xcbiAgfVxcblxcbiAgLmNvbnZlcnNhdGlvbi1zdGF0dXMge1xcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLCAkZmFsbGJhY2stLWJvcmRlcik7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XFxuICB9XFxuXFxuICAudGhyZWFkLWFuY2VzdG9yLWhhcy1vdGhlci1yZXBsaWVzIC5jb252ZXJzYXRpb24tc3RhdHVzLFxcbiAgJjpsYXN0LWNoaWxkIC5jb252ZXJzYXRpb24tc3RhdHVzLFxcbiAgLnRocmVhZC1hbmNlc3RvcjpsYXN0LWNoaWxkIC5jb252ZXJzYXRpb24tc3RhdHVzLFxcbiAgLnRocmVhZC1hbmNlc3RvcjpsYXN0LWNoaWxkIC50aHJlYWQtYW5jZXN0b3ItZGl2ZS1ib3gsXFxuICAmLi1leHBhbmRlZCAudGhyZWFkLXRyZWUgLmNvbnZlcnNhdGlvbi1zdGF0dXMge1xcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xcbiAgfVxcblxcbiAgLnRocmVhZC1hbmNlc3RvcnMgKyAudGhyZWFkLXRyZWUgPiAuY29udmVyc2F0aW9uLXN0YXR1cyB7XFxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXIsICRmYWxsYmFjay0tYm9yZGVyKTtcXG4gIH1cXG5cXG4gIC8qIGV4cGFuZGVkIGNvbnZlcnNhdGlvbiBpbiB0aW1lbGluZSAqL1xcbiAgJi5zdGF0dXMtZmFkZWluLi1leHBhbmRlZCAudGhyZWFkLWJvZHkge1xcbiAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkICRmYWxsYmFjay0tY1JlZDtcXG4gICAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLWNSZWQsICRmYWxsYmFjay0tY1JlZCk7XFxuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAkZmFsbGJhY2stLXBhbmVsUmFkaXVzICRmYWxsYmFjay0tcGFuZWxSYWRpdXM7XFxuICAgIGJvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1wYW5lbFJhZGl1cywgJGZhbGxiYWNrLS1wYW5lbFJhZGl1cykgdmFyKC0tcGFuZWxSYWRpdXMsICRmYWxsYmFjay0tcGFuZWxSYWRpdXMpO1xcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLCAkZmFsbGJhY2stLWJvcmRlcik7XFxuICB9XFxuXFxuICAmLi1leHBhbmRlZC5zdGF0dXMtZmFkZWluIHtcXG4gICAgbWFyZ2luOiBjYWxjKHZhcigtLXN0YXR1cy1tYXJnaW4sICRzdGF0dXMtbWFyZ2luKSAvIDIpO1xcbiAgfVxcbn1cXG5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcbi8vIEV4cG9ydHNcbmV4cG9ydCBkZWZhdWx0IF9fX0NTU19MT0FERVJfRVhQT1JUX19fO1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/conversation/conversation.vue?vue&type=style&index=0&id=22e9b72f&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/dialog_modal/dialog_modal.vue?vue&type=style&index=0&id=dfe04be2&lang=scss":
/*!********************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/dialog_modal/dialog_modal.vue?vue&type=style&index=0&id=dfe04be2&lang=scss ***!
\********************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".dark-overlay::before {\\n bottom: 0;\\n content: \\\" \\\";\\n display: block;\\n cursor: default;\\n left: 0;\\n position: fixed;\\n right: 0;\\n top: 0;\\n background: rgba(27, 31, 35, 0.5);\\n z-index: 2000;\\n}\\n.dialog-modal.panel {\\n top: 0;\\n left: 50%;\\n max-height: 80vh;\\n max-width: 90vw;\\n margin: 15vh auto;\\n position: fixed;\\n transform: translateX(-50%);\\n z-index: 2001;\\n cursor: default;\\n display: block;\\n background-color: #121a24;\\n background-color: var(--bg, #121a24);\\n}\\n.dialog-modal.panel .dialog-modal-heading .title {\\n text-align: center;\\n}\\n.dialog-modal.panel .dialog-modal-content {\\n margin: 0;\\n padding: 1rem;\\n background-color: #121a24;\\n background-color: var(--bg, #121a24);\\n white-space: normal;\\n}\\n.dialog-modal.panel .dialog-modal-footer {\\n margin: 0;\\n padding: 0.5em;\\n background-color: #121a24;\\n background-color: var(--bg, #121a24);\\n border-top: 1px solid #222;\\n border-top: 1px solid var(--border, #222);\\n display: flex;\\n justify-content: flex-end;\\n}\\n.dialog-modal.panel .dialog-modal-footer button {\\n width: auto;\\n margin-left: 0.5rem;\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/dialog_modal/dialog_modal.vue\",\"webpack://./src/_variables.scss\"],\"names\":[],\"mappings\":\"AAKE;EACE,SAAA;EACA,YAAA;EACA,cAAA;EACA,eAAA;EACA,OAAA;EACA,eAAA;EACA,QAAA;EACA,MAAA;EACA,iCAAA;EACA,aAAA;AAJJ;AAQA;EACE,MAAA;EACA,SAAA;EACA,gBAAA;EACA,eAAA;EACA,iBAAA;EACA,eAAA;EACA,2BAAA;EACA,aAAA;EACA,eAAA;EACA,cAAA;EACA,yBC1Ba;ED2Bb,oCAAA;AALF;AAQI;EACE,kBAAA;AANN;AAUE;EACE,SAAA;EACA,aAAA;EACA,yBCtCW;EDuCX,oCAAA;EACA,mBAAA;AARJ;AAWE;EACE,SAAA;EACA,cAAA;EACA,yBC9CW;ED+CX,oCAAA;EACA,0BAAA;EACA,yCAAA;EACA,aAAA;EACA,yBAAA;AATJ;AAWI;EACE,WAAA;EACA,mBAAA;AATN\",\"sourcesContent\":[\"\\n@import \\\"../../variables\\\";\\n\\n// TODO: unify with other modals.\\n.dark-overlay {\\n &::before {\\n bottom: 0;\\n content: \\\" \\\";\\n display: block;\\n cursor: default;\\n left: 0;\\n position: fixed;\\n right: 0;\\n top: 0;\\n background: rgb(27 31 35 / 50%);\\n z-index: 2000;\\n }\\n}\\n\\n.dialog-modal.panel {\\n top: 0;\\n left: 50%;\\n max-height: 80vh;\\n max-width: 90vw;\\n margin: 15vh auto;\\n position: fixed;\\n transform: translateX(-50%);\\n z-index: 2001;\\n cursor: default;\\n display: block;\\n background-color: $fallback--bg;\\n background-color: var(--bg, $fallback--bg);\\n\\n .dialog-modal-heading {\\n .title {\\n text-align: center;\\n }\\n }\\n\\n .dialog-modal-content {\\n margin: 0;\\n padding: 1rem;\\n background-color: $fallback--bg;\\n background-color: var(--bg, $fallback--bg);\\n white-space: normal;\\n }\\n\\n .dialog-modal-footer {\\n margin: 0;\\n padding: 0.5em;\\n background-color: $fallback--bg;\\n background-color: var(--bg, $fallback--bg);\\n border-top: 1px solid $fallback--border;\\n border-top: 1px solid var(--border, $fallback--border);\\n display: flex;\\n justify-content: flex-end;\\n\\n button {\\n width: auto;\\n margin-left: 0.5rem;\\n }\\n }\\n}\\n\\n\",\"$main-color: #f58d2c;\\n$main-background: white;\\n$darkened-background: whitesmoke;\\n\\n$fallback--bg: #121a24;\\n$fallback--fg: #182230;\\n$fallback--faint: rgb(185 185 186 / 50%);\\n$fallback--text: #b9b9ba;\\n$fallback--link: #d8a070;\\n$fallback--icon: #666;\\n$fallback--lightBg: rgb(21 30 42);\\n$fallback--lightText: #b9b9ba;\\n$fallback--border: #222;\\n$fallback--cRed: #f00;\\n$fallback--cBlue: #0095ff;\\n$fallback--cGreen: #0fa00f;\\n$fallback--cOrange: orange;\\n\\n$fallback--alertError: rgb(211 16 20 / 50%);\\n$fallback--alertWarning: rgb(111 111 20 / 50%);\\n\\n$fallback--panelRadius: 10px;\\n$fallback--checkboxRadius: 2px;\\n$fallback--btnRadius: 4px;\\n$fallback--inputRadius: 4px;\\n$fallback--tooltipRadius: 5px;\\n$fallback--avatarRadius: 4px;\\n$fallback--avatarAltRadius: 10px;\\n$fallback--attachmentRadius: 10px;\\n$fallback--chatMessageRadius: 10px;\\n\\n$fallback--buttonShadow: 0 0 2px 0 rgb(0 0 0 / 100%),\\n 0 1px 0 0 rgb(255 255 255 / 20%) inset,\\n 0 -1px 0 0 rgb(0 0 0 / 20%) inset;\\n\\n$status-margin: 0.75em;\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2RpYWxvZ19tb2RhbC9kaWFsb2dfbW9kYWwudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9ZGZlMDRiZTImbGFuZz1zY3NzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7QUFDZ0g7QUFDakI7QUFDL0YsOEJBQThCLG1GQUEyQixDQUFDLDRGQUFxQztBQUMvRjtBQUNBLGlFQUFpRSxjQUFjLG1CQUFtQixtQkFBbUIsb0JBQW9CLFlBQVksb0JBQW9CLGFBQWEsV0FBVyxzQ0FBc0Msa0JBQWtCLEdBQUcsdUJBQXVCLFdBQVcsY0FBYyxxQkFBcUIsb0JBQW9CLHNCQUFzQixvQkFBb0IsZ0NBQWdDLGtCQUFrQixvQkFBb0IsbUJBQW1CLDhCQUE4Qix5Q0FBeUMsR0FBRyxvREFBb0QsdUJBQXVCLEdBQUcsNkNBQTZDLGNBQWMsa0JBQWtCLDhCQUE4Qix5Q0FBeUMsd0JBQXdCLEdBQUcsNENBQTRDLGNBQWMsbUJBQW1CLDhCQUE4Qix5Q0FBeUMsK0JBQStCLDhDQUE4QyxrQkFBa0IsOEJBQThCLEdBQUcsbURBQW1ELGdCQUFnQix3QkFBd0IsR0FBRyxPQUFPLGlKQUFpSixVQUFVLFVBQVUsVUFBVSxVQUFVLFVBQVUsVUFBVSxVQUFVLFVBQVUsV0FBVyxVQUFVLEtBQUssS0FBSyxVQUFVLFVBQVUsV0FBVyxVQUFVLFdBQVcsVUFBVSxXQUFXLFVBQVUsVUFBVSxVQUFVLFlBQVksWUFBWSxLQUFLLEtBQUssV0FBVyxLQUFLLEtBQUssVUFBVSxVQUFVLFlBQVksWUFBWSxXQUFXLEtBQUssS0FBSyxVQUFVLFVBQVUsWUFBWSxZQUFZLFdBQVcsV0FBVyxVQUFVLFdBQVcsS0FBSyxLQUFLLFVBQVUsV0FBVyx1REFBdUQsc0RBQXNELGVBQWUsZ0JBQWdCLHFCQUFxQixxQkFBcUIsc0JBQXNCLGNBQWMsc0JBQXNCLGVBQWUsYUFBYSxzQ0FBc0Msb0JBQW9CLEtBQUssR0FBRyx5QkFBeUIsV0FBVyxjQUFjLHFCQUFxQixvQkFBb0Isc0JBQXNCLG9CQUFvQixnQ0FBZ0Msa0JBQWtCLG9CQUFvQixtQkFBbUIsb0NBQW9DLCtDQUErQyw2QkFBNkIsY0FBYywyQkFBMkIsT0FBTyxLQUFLLDZCQUE2QixnQkFBZ0Isb0JBQW9CLHNDQUFzQyxpREFBaUQsMEJBQTBCLEtBQUssNEJBQTRCLGdCQUFnQixxQkFBcUIsc0NBQXNDLGlEQUFpRCw4Q0FBOEMsNkRBQTZELG9CQUFvQixnQ0FBZ0MsZ0JBQWdCLG9CQUFvQiw0QkFBNEIsT0FBTyxLQUFLLEdBQUcsNEJBQTRCLDBCQUEwQixtQ0FBbUMsMkJBQTJCLHlCQUF5QiwyQ0FBMkMsMkJBQTJCLDJCQUEyQix3QkFBd0Isb0NBQW9DLGdDQUFnQywwQkFBMEIsd0JBQXdCLDRCQUE0Qiw2QkFBNkIsNkJBQTZCLGdEQUFnRCxpREFBaUQsaUNBQWlDLGlDQUFpQyw0QkFBNEIsOEJBQThCLGdDQUFnQywrQkFBK0IsbUNBQW1DLG9DQUFvQyxxQ0FBcUMsMElBQTBJLDJCQUEyQixxQkFBcUI7QUFDL2dJO0FBQ0EsaUVBQWUsdUJBQXVCLEVBQUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL2NvbXBvbmVudHMvZGlhbG9nX21vZGFsL2RpYWxvZ19tb2RhbC52dWU/ZDljYSJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBJbXBvcnRzXG5pbXBvcnQgX19fQ1NTX0xPQURFUl9BUElfU09VUkNFTUFQX0lNUE9SVF9fXyBmcm9tIFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvZGlzdC9ydW50aW1lL3NvdXJjZU1hcHMuanNcIjtcbmltcG9ydCBfX19DU1NfTE9BREVSX0FQSV9JTVBPUlRfX18gZnJvbSBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2Rpc3QvcnVudGltZS9hcGkuanNcIjtcbnZhciBfX19DU1NfTE9BREVSX0VYUE9SVF9fXyA9IF9fX0NTU19MT0FERVJfQVBJX0lNUE9SVF9fXyhfX19DU1NfTE9BREVSX0FQSV9TT1VSQ0VNQVBfSU1QT1JUX19fKTtcbi8vIE1vZHVsZVxuX19fQ1NTX0xPQURFUl9FWFBPUlRfX18ucHVzaChbbW9kdWxlLmlkLCBcIi5kYXJrLW92ZXJsYXk6OmJlZm9yZSB7XFxuICBib3R0b206IDA7XFxuICBjb250ZW50OiBcXFwiIFxcXCI7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIGN1cnNvcjogZGVmYXVsdDtcXG4gIGxlZnQ6IDA7XFxuICBwb3NpdGlvbjogZml4ZWQ7XFxuICByaWdodDogMDtcXG4gIHRvcDogMDtcXG4gIGJhY2tncm91bmQ6IHJnYmEoMjcsIDMxLCAzNSwgMC41KTtcXG4gIHotaW5kZXg6IDIwMDA7XFxufVxcbi5kaWFsb2ctbW9kYWwucGFuZWwge1xcbiAgdG9wOiAwO1xcbiAgbGVmdDogNTAlO1xcbiAgbWF4LWhlaWdodDogODB2aDtcXG4gIG1heC13aWR0aDogOTB2dztcXG4gIG1hcmdpbjogMTV2aCBhdXRvO1xcbiAgcG9zaXRpb246IGZpeGVkO1xcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xcbiAgei1pbmRleDogMjAwMTtcXG4gIGN1cnNvcjogZGVmYXVsdDtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzEyMWEyNDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLCAjMTIxYTI0KTtcXG59XFxuLmRpYWxvZy1tb2RhbC5wYW5lbCAuZGlhbG9nLW1vZGFsLWhlYWRpbmcgLnRpdGxlIHtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG59XFxuLmRpYWxvZy1tb2RhbC5wYW5lbCAuZGlhbG9nLW1vZGFsLWNvbnRlbnQge1xcbiAgbWFyZ2luOiAwO1xcbiAgcGFkZGluZzogMXJlbTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMxMjFhMjQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZywgIzEyMWEyNCk7XFxuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xcbn1cXG4uZGlhbG9nLW1vZGFsLnBhbmVsIC5kaWFsb2ctbW9kYWwtZm9vdGVyIHtcXG4gIG1hcmdpbjogMDtcXG4gIHBhZGRpbmc6IDAuNWVtO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzEyMWEyNDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLCAjMTIxYTI0KTtcXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMjIyO1xcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlciwgIzIyMik7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcXG59XFxuLmRpYWxvZy1tb2RhbC5wYW5lbCAuZGlhbG9nLW1vZGFsLWZvb3RlciBidXR0b24ge1xcbiAgd2lkdGg6IGF1dG87XFxuICBtYXJnaW4tbGVmdDogMC41cmVtO1xcbn1cIiwgXCJcIix7XCJ2ZXJzaW9uXCI6MyxcInNvdXJjZXNcIjpbXCJ3ZWJwYWNrOi8vLi9zcmMvY29tcG9uZW50cy9kaWFsb2dfbW9kYWwvZGlhbG9nX21vZGFsLnZ1ZVwiLFwid2VicGFjazovLy4vc3JjL192YXJpYWJsZXMuc2Nzc1wiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiQUFLRTtFQUNFLFNBQUE7RUFDQSxZQUFBO0VBQ0EsY0FBQTtFQUNBLGVBQUE7RUFDQSxPQUFBO0VBQ0EsZUFBQTtFQUNBLFFBQUE7RUFDQSxNQUFBO0VBQ0EsaUNBQUE7RUFDQSxhQUFBO0FBSko7QUFRQTtFQUNFLE1BQUE7RUFDQSxTQUFBO0VBQ0EsZ0JBQUE7RUFDQSxlQUFBO0VBQ0EsaUJBQUE7RUFDQSxlQUFBO0VBQ0EsMkJBQUE7RUFDQSxhQUFBO0VBQ0EsZUFBQTtFQUNBLGNBQUE7RUFDQSx5QkMxQmE7RUQyQmIsb0NBQUE7QUFMRjtBQVFJO0VBQ0Usa0JBQUE7QUFOTjtBQVVFO0VBQ0UsU0FBQTtFQUNBLGFBQUE7RUFDQSx5QkN0Q1c7RUR1Q1gsb0NBQUE7RUFDQSxtQkFBQTtBQVJKO0FBV0U7RUFDRSxTQUFBO0VBQ0EsY0FBQTtFQUNBLHlCQzlDVztFRCtDWCxvQ0FBQTtFQUNBLDBCQUFBO0VBQ0EseUNBQUE7RUFDQSxhQUFBO0VBQ0EseUJBQUE7QUFUSjtBQVdJO0VBQ0UsV0FBQTtFQUNBLG1CQUFBO0FBVE5cIixcInNvdXJjZXNDb250ZW50XCI6W1wiXFxuQGltcG9ydCBcXFwiLi4vLi4vdmFyaWFibGVzXFxcIjtcXG5cXG4vLyBUT0RPOiB1bmlmeSB3aXRoIG90aGVyIG1vZGFscy5cXG4uZGFyay1vdmVybGF5IHtcXG4gICY6OmJlZm9yZSB7XFxuICAgIGJvdHRvbTogMDtcXG4gICAgY29udGVudDogXFxcIiBcXFwiO1xcbiAgICBkaXNwbGF5OiBibG9jaztcXG4gICAgY3Vyc29yOiBkZWZhdWx0O1xcbiAgICBsZWZ0OiAwO1xcbiAgICBwb3NpdGlvbjogZml4ZWQ7XFxuICAgIHJpZ2h0OiAwO1xcbiAgICB0b3A6IDA7XFxuICAgIGJhY2tncm91bmQ6IHJnYigyNyAzMSAzNSAvIDUwJSk7XFxuICAgIHotaW5kZXg6IDIwMDA7XFxuICB9XFxufVxcblxcbi5kaWFsb2ctbW9kYWwucGFuZWwge1xcbiAgdG9wOiAwO1xcbiAgbGVmdDogNTAlO1xcbiAgbWF4LWhlaWdodDogODB2aDtcXG4gIG1heC13aWR0aDogOTB2dztcXG4gIG1hcmdpbjogMTV2aCBhdXRvO1xcbiAgcG9zaXRpb246IGZpeGVkO1xcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xcbiAgei1pbmRleDogMjAwMTtcXG4gIGN1cnNvcjogZGVmYXVsdDtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZhbGxiYWNrLS1iZztcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLCAkZmFsbGJhY2stLWJnKTtcXG5cXG4gIC5kaWFsb2ctbW9kYWwtaGVhZGluZyB7XFxuICAgIC50aXRsZSB7XFxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xcbiAgICB9XFxuICB9XFxuXFxuICAuZGlhbG9nLW1vZGFsLWNvbnRlbnQge1xcbiAgICBtYXJnaW46IDA7XFxuICAgIHBhZGRpbmc6IDFyZW07XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICRmYWxsYmFjay0tYmc7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLCAkZmFsbGJhY2stLWJnKTtcXG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcXG4gIH1cXG5cXG4gIC5kaWFsb2ctbW9kYWwtZm9vdGVyIHtcXG4gICAgbWFyZ2luOiAwO1xcbiAgICBwYWRkaW5nOiAwLjVlbTtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZhbGxiYWNrLS1iZztcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmcsICRmYWxsYmFjay0tYmcpO1xcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGZhbGxiYWNrLS1ib3JkZXI7XFxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXIsICRmYWxsYmFjay0tYm9yZGVyKTtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcXG5cXG4gICAgYnV0dG9uIHtcXG4gICAgICB3aWR0aDogYXV0bztcXG4gICAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xcbiAgICB9XFxuICB9XFxufVxcblxcblwiLFwiJG1haW4tY29sb3I6ICNmNThkMmM7XFxuJG1haW4tYmFja2dyb3VuZDogd2hpdGU7XFxuJGRhcmtlbmVkLWJhY2tncm91bmQ6IHdoaXRlc21va2U7XFxuXFxuJGZhbGxiYWNrLS1iZzogIzEyMWEyNDtcXG4kZmFsbGJhY2stLWZnOiAjMTgyMjMwO1xcbiRmYWxsYmFjay0tZmFpbnQ6IHJnYigxODUgMTg1IDE4NiAvIDUwJSk7XFxuJGZhbGxiYWNrLS10ZXh0OiAjYjliOWJhO1xcbiRmYWxsYmFjay0tbGluazogI2Q4YTA3MDtcXG4kZmFsbGJhY2stLWljb246ICM2NjY7XFxuJGZhbGxiYWNrLS1saWdodEJnOiByZ2IoMjEgMzAgNDIpO1xcbiRmYWxsYmFjay0tbGlnaHRUZXh0OiAjYjliOWJhO1xcbiRmYWxsYmFjay0tYm9yZGVyOiAjMjIyO1xcbiRmYWxsYmFjay0tY1JlZDogI2YwMDtcXG4kZmFsbGJhY2stLWNCbHVlOiAjMDA5NWZmO1xcbiRmYWxsYmFjay0tY0dyZWVuOiAjMGZhMDBmO1xcbiRmYWxsYmFjay0tY09yYW5nZTogb3JhbmdlO1xcblxcbiRmYWxsYmFjay0tYWxlcnRFcnJvcjogcmdiKDIxMSAxNiAyMCAvIDUwJSk7XFxuJGZhbGxiYWNrLS1hbGVydFdhcm5pbmc6IHJnYigxMTEgMTExIDIwIC8gNTAlKTtcXG5cXG4kZmFsbGJhY2stLXBhbmVsUmFkaXVzOiAxMHB4O1xcbiRmYWxsYmFjay0tY2hlY2tib3hSYWRpdXM6IDJweDtcXG4kZmFsbGJhY2stLWJ0blJhZGl1czogNHB4O1xcbiRmYWxsYmFjay0taW5wdXRSYWRpdXM6IDRweDtcXG4kZmFsbGJhY2stLXRvb2x0aXBSYWRpdXM6IDVweDtcXG4kZmFsbGJhY2stLWF2YXRhclJhZGl1czogNHB4O1xcbiRmYWxsYmFjay0tYXZhdGFyQWx0UmFkaXVzOiAxMHB4O1xcbiRmYWxsYmFjay0tYXR0YWNobWVudFJhZGl1czogMTBweDtcXG4kZmFsbGJhY2stLWNoYXRNZXNzYWdlUmFkaXVzOiAxMHB4O1xcblxcbiRmYWxsYmFjay0tYnV0dG9uU2hhZG93OiAwIDAgMnB4IDAgcmdiKDAgMCAwIC8gMTAwJSksXFxuICAwIDFweCAwIDAgcmdiKDI1NSAyNTUgMjU1IC8gMjAlKSBpbnNldCxcXG4gIDAgLTFweCAwIDAgcmdiKDAgMCAwIC8gMjAlKSBpbnNldDtcXG5cXG4kc3RhdHVzLW1hcmdpbjogMC43NWVtO1xcblwiXSxcInNvdXJjZVJvb3RcIjpcIlwifV0pO1xuLy8gRXhwb3J0c1xuZXhwb3J0IGRlZmF1bHQgX19fQ1NTX0xPQURFUl9FWFBPUlRfX187XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/dialog_modal/dialog_modal.vue?vue&type=style&index=0&id=dfe04be2&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/edit_status_modal/edit_status_modal.vue?vue&type=style&index=0&id=79a9617b&lang=scss":
/*!******************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/edit_status_modal/edit_status_modal.vue?vue&type=style&index=0&id=79a9617b&lang=scss ***!
\******************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".modal-view.edit-form-modal-view {\\n align-items: flex-start;\\n}\\n.edit-form-modal-panel {\\n flex-shrink: 0;\\n margin-top: 25%;\\n margin-bottom: 2em;\\n width: 100%;\\n max-width: 700px;\\n}\\n@media (orientation: landscape) {\\n.edit-form-modal-panel {\\n margin-top: 8%;\\n}\\n}\\n.edit-form-modal-panel .form-bottom-left {\\n max-width: 6.5em;\\n}\\n.edit-form-modal-panel .form-bottom-left .emoji-icon {\\n justify-content: right;\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/edit_status_modal/edit_status_modal.vue\"],\"names\":[],\"mappings\":\"AACA;EACE,uBAAA;AAAF;AAGA;EACE,cAAA;EACA,eAAA;EACA,kBAAA;EACA,WAAA;EACA,gBAAA;AAAF;AAEE;AAPF;IAQI,cAAA;AACF;AACF;AACE;EACE,gBAAA;AACJ;AACI;EACE,sBAAA;AACN\",\"sourcesContent\":[\"\\n.modal-view.edit-form-modal-view {\\n align-items: flex-start;\\n}\\n\\n.edit-form-modal-panel {\\n flex-shrink: 0;\\n margin-top: 25%;\\n margin-bottom: 2em;\\n width: 100%;\\n max-width: 700px;\\n\\n @media (orientation: landscape) {\\n margin-top: 8%;\\n }\\n\\n .form-bottom-left {\\n max-width: 6.5em;\\n\\n .emoji-icon {\\n justify-content: right;\\n }\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2VkaXRfc3RhdHVzX21vZGFsL2VkaXRfc3RhdHVzX21vZGFsLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTc5YTk2MTdiJmxhbmc9c2Nzcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBO0FBQ2dIO0FBQ2pCO0FBQy9GLDhCQUE4QixtRkFBMkIsQ0FBQyw0RkFBcUM7QUFDL0Y7QUFDQSw0RUFBNEUsNEJBQTRCLEdBQUcsMEJBQTBCLG1CQUFtQixvQkFBb0IsdUJBQXVCLGdCQUFnQixxQkFBcUIsR0FBRyxtQ0FBbUMsMEJBQTBCLHFCQUFxQixHQUFHLEdBQUcsNENBQTRDLHFCQUFxQixHQUFHLHdEQUF3RCwyQkFBMkIsR0FBRyxPQUFPLHlIQUF5SCxXQUFXLEtBQUssS0FBSyxVQUFVLFVBQVUsV0FBVyxVQUFVLFdBQVcsS0FBSyxLQUFLLEtBQUssVUFBVSxLQUFLLEtBQUssS0FBSyxXQUFXLEtBQUssS0FBSyxXQUFXLDZEQUE2RCw0QkFBNEIsR0FBRyw0QkFBNEIsbUJBQW1CLG9CQUFvQix1QkFBdUIsZ0JBQWdCLHFCQUFxQix1Q0FBdUMscUJBQXFCLEtBQUsseUJBQXlCLHVCQUF1QixxQkFBcUIsK0JBQStCLE9BQU8sS0FBSyxHQUFHLHFCQUFxQjtBQUNscEM7QUFDQSxpRUFBZSx1QkFBdUIsRUFBQyIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvY29tcG9uZW50cy9lZGl0X3N0YXR1c19tb2RhbC9lZGl0X3N0YXR1c19tb2RhbC52dWU/N2M0MiJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBJbXBvcnRzXG5pbXBvcnQgX19fQ1NTX0xPQURFUl9BUElfU09VUkNFTUFQX0lNUE9SVF9fXyBmcm9tIFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvZGlzdC9ydW50aW1lL3NvdXJjZU1hcHMuanNcIjtcbmltcG9ydCBfX19DU1NfTE9BREVSX0FQSV9JTVBPUlRfX18gZnJvbSBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2Rpc3QvcnVudGltZS9hcGkuanNcIjtcbnZhciBfX19DU1NfTE9BREVSX0VYUE9SVF9fXyA9IF9fX0NTU19MT0FERVJfQVBJX0lNUE9SVF9fXyhfX19DU1NfTE9BREVSX0FQSV9TT1VSQ0VNQVBfSU1QT1JUX19fKTtcbi8vIE1vZHVsZVxuX19fQ1NTX0xPQURFUl9FWFBPUlRfX18ucHVzaChbbW9kdWxlLmlkLCBcIi5tb2RhbC12aWV3LmVkaXQtZm9ybS1tb2RhbC12aWV3IHtcXG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xcbn1cXG4uZWRpdC1mb3JtLW1vZGFsLXBhbmVsIHtcXG4gIGZsZXgtc2hyaW5rOiAwO1xcbiAgbWFyZ2luLXRvcDogMjUlO1xcbiAgbWFyZ2luLWJvdHRvbTogMmVtO1xcbiAgd2lkdGg6IDEwMCU7XFxuICBtYXgtd2lkdGg6IDcwMHB4O1xcbn1cXG5AbWVkaWEgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcXG4uZWRpdC1mb3JtLW1vZGFsLXBhbmVsIHtcXG4gICAgbWFyZ2luLXRvcDogOCU7XFxufVxcbn1cXG4uZWRpdC1mb3JtLW1vZGFsLXBhbmVsIC5mb3JtLWJvdHRvbS1sZWZ0IHtcXG4gIG1heC13aWR0aDogNi41ZW07XFxufVxcbi5lZGl0LWZvcm0tbW9kYWwtcGFuZWwgLmZvcm0tYm90dG9tLWxlZnQgLmVtb2ppLWljb24ge1xcbiAganVzdGlmeS1jb250ZW50OiByaWdodDtcXG59XCIsIFwiXCIse1widmVyc2lvblwiOjMsXCJzb3VyY2VzXCI6W1wid2VicGFjazovLy4vc3JjL2NvbXBvbmVudHMvZWRpdF9zdGF0dXNfbW9kYWwvZWRpdF9zdGF0dXNfbW9kYWwudnVlXCJdLFwibmFtZXNcIjpbXSxcIm1hcHBpbmdzXCI6XCJBQUNBO0VBQ0UsdUJBQUE7QUFBRjtBQUdBO0VBQ0UsY0FBQTtFQUNBLGVBQUE7RUFDQSxrQkFBQTtFQUNBLFdBQUE7RUFDQSxnQkFBQTtBQUFGO0FBRUU7QUFQRjtJQVFJLGNBQUE7QUFDRjtBQUNGO0FBQ0U7RUFDRSxnQkFBQTtBQUNKO0FBQ0k7RUFDRSxzQkFBQTtBQUNOXCIsXCJzb3VyY2VzQ29udGVudFwiOltcIlxcbi5tb2RhbC12aWV3LmVkaXQtZm9ybS1tb2RhbC12aWV3IHtcXG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xcbn1cXG5cXG4uZWRpdC1mb3JtLW1vZGFsLXBhbmVsIHtcXG4gIGZsZXgtc2hyaW5rOiAwO1xcbiAgbWFyZ2luLXRvcDogMjUlO1xcbiAgbWFyZ2luLWJvdHRvbTogMmVtO1xcbiAgd2lkdGg6IDEwMCU7XFxuICBtYXgtd2lkdGg6IDcwMHB4O1xcblxcbiAgQG1lZGlhIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XFxuICAgIG1hcmdpbi10b3A6IDglO1xcbiAgfVxcblxcbiAgLmZvcm0tYm90dG9tLWxlZnQge1xcbiAgICBtYXgtd2lkdGg6IDYuNWVtO1xcblxcbiAgICAuZW1vamktaWNvbiB7XFxuICAgICAganVzdGlmeS1jb250ZW50OiByaWdodDtcXG4gICAgfVxcbiAgfVxcbn1cXG5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcbi8vIEV4cG9ydHNcbmV4cG9ydCBkZWZhdWx0IF9fX0NTU19MT0FERVJfRVhQT1JUX19fO1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/edit_status_modal/edit_status_modal.vue?vue&type=style&index=0&id=79a9617b&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/emoji_input/emoji_input.vue?vue&type=style&index=0&id=6a9f20b3&lang=scss":
/*!******************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/emoji_input/emoji_input.vue?vue&type=style&index=0&id=6a9f20b3&lang=scss ***!
\******************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".emoji-input {\\n display: flex;\\n flex-direction: column;\\n position: relative;\\n}\\n.emoji-input .emoji-picker-icon {\\n position: absolute;\\n top: 0;\\n right: 0;\\n margin: 0.2em 0.25em;\\n font-size: 1.3em;\\n cursor: pointer;\\n line-height: 24px;\\n}\\n.emoji-input .emoji-picker-icon:hover i {\\n color: #b9b9ba;\\n color: var(--text, #b9b9ba);\\n}\\n.emoji-input .emoji-picker-panel {\\n position: absolute;\\n z-index: 20;\\n margin-top: 2px;\\n}\\n.emoji-input .emoji-picker-panel.hide {\\n display: none;\\n}\\n.emoji-input input,\\n.emoji-input textarea {\\n flex: 1 0 auto;\\n}\\n.emoji-input.with-picker input {\\n padding-right: 30px;\\n}\\n.emoji-input .hidden-overlay {\\n opacity: 0;\\n pointer-events: none;\\n position: absolute;\\n top: 0;\\n bottom: 0;\\n right: 0;\\n left: 0;\\n overflow: hidden;\\n /* DEBUG STUFF */\\n color: red;\\n /* set opacity to non-zero to see the overlay */\\n}\\n.emoji-input .hidden-overlay .caret {\\n width: 0;\\n margin-right: calc(-1ch - 1px);\\n border: 1px solid red;\\n}\\n.autocomplete-panel {\\n position: absolute;\\n}\\n.autocomplete-item {\\n display: flex;\\n cursor: pointer;\\n padding: 0.2em 0.4em;\\n border-bottom: 1px solid rgba(0, 0, 0, 0.4);\\n height: 32px;\\n}\\n.autocomplete-item .image {\\n width: 32px;\\n height: 32px;\\n line-height: 32px;\\n text-align: center;\\n font-size: 32px;\\n margin-right: 4px;\\n}\\n.autocomplete-item .image img {\\n width: 32px;\\n height: 32px;\\n -o-object-fit: contain;\\n object-fit: contain;\\n}\\n.autocomplete-item .label {\\n display: flex;\\n flex-direction: column;\\n justify-content: center;\\n margin: 0 0.1em 0 0.2em;\\n}\\n.autocomplete-item .label .displayText {\\n line-height: 1.5;\\n}\\n.autocomplete-item .label .detailText {\\n font-size: 9px;\\n line-height: 9px;\\n}\\n.autocomplete-item.highlighted {\\n background-color: #182230;\\n background-color: var(--selectedMenuPopover, #182230);\\n color: var(--selectedMenuPopoverText, #b9b9ba);\\n --faint: var(--selectedMenuPopoverFaintText, $fallback--faint);\\n --faintLink: var(--selectedMenuPopoverFaintLink, $fallback--faint);\\n --lightText: var(--selectedMenuPopoverLightText, $fallback--lightText);\\n --icon: var(--selectedMenuPopoverIcon, $fallback--icon);\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/emoji_input/emoji_input.vue\",\"webpack://./src/_variables.scss\"],\"names\":[],\"mappings\":\"AAGA;EACE,aAAA;EACA,sBAAA;EACA,kBAAA;AAFF;AAIE;EACE,kBAAA;EACA,MAAA;EACA,QAAA;EACA,oBAAA;EACA,gBAAA;EACA,eAAA;EACA,iBAAA;AAFJ;AAII;EACE,cCXW;EDYX,2BAAA;AAFN;AAME;EACE,kBAAA;EACA,WAAA;EACA,eAAA;AAJJ;AAMI;EACE,aAAA;AAJN;AAQE;;EAEE,cAAA;AANJ;AASE;EACE,mBAAA;AAPJ;AAUE;EACE,UAAA;EACA,oBAAA;EACA,kBAAA;EACA,MAAA;EACA,SAAA;EACA,QAAA;EACA,OAAA;EACA,gBAAA;EAEA,gBAAA;EACA,UAAA;EAEA,+CAAA;AAVJ;AAYI;EACE,QAAA;EACA,8BAAA;EACA,qBAAA;AAVN;AAgBE;EACE,kBAAA;AAbJ;AAgBE;EACE,aAAA;EACA,eAAA;EACA,oBAAA;EACA,2CAAA;EACA,YAAA;AAdJ;AAgBI;EACE,WAAA;EACA,YAAA;EACA,iBAAA;EACA,kBAAA;EACA,eAAA;EACA,iBAAA;AAdN;AAgBM;EACE,WAAA;EACA,YAAA;EACA,sBAAA;KAAA,mBAAA;AAdR;AAkBI;EACE,aAAA;EACA,sBAAA;EACA,uBAAA;EACA,uBAAA;AAhBN;AAkBM;EACE,gBAAA;AAhBR;AAmBM;EACE,cAAA;EACA,gBAAA;AAjBR;AAqBI;EACE,yBCxGS;EDyGT,qDAAA;EACA,8CAAA;EAEA,8DAAA;EACA,kEAAA;EACA,sEAAA;EACA,uDAAA;AApBN\",\"sourcesContent\":[\"\\n@import \\\"../../variables\\\";\\n\\n.emoji-input {\\n display: flex;\\n flex-direction: column;\\n position: relative;\\n\\n .emoji-picker-icon {\\n position: absolute;\\n top: 0;\\n right: 0;\\n margin: 0.2em 0.25em;\\n font-size: 1.3em;\\n cursor: pointer;\\n line-height: 24px;\\n\\n &:hover i {\\n color: $fallback--text;\\n color: var(--text, $fallback--text);\\n }\\n }\\n\\n .emoji-picker-panel {\\n position: absolute;\\n z-index: 20;\\n margin-top: 2px;\\n\\n &.hide {\\n display: none;\\n }\\n }\\n\\n input,\\n textarea {\\n flex: 1 0 auto;\\n }\\n\\n &.with-picker input {\\n padding-right: 30px;\\n }\\n\\n .hidden-overlay {\\n opacity: 0;\\n pointer-events: none;\\n position: absolute;\\n top: 0;\\n bottom: 0;\\n right: 0;\\n left: 0;\\n overflow: hidden;\\n\\n /* DEBUG STUFF */\\n color: red;\\n\\n /* set opacity to non-zero to see the overlay */\\n\\n .caret {\\n width: 0;\\n margin-right: calc(-1ch - 1px);\\n border: 1px solid red;\\n }\\n }\\n}\\n\\n.autocomplete {\\n &-panel {\\n position: absolute;\\n }\\n\\n &-item {\\n display: flex;\\n cursor: pointer;\\n padding: 0.2em 0.4em;\\n border-bottom: 1px solid rgb(0 0 0 / 40%);\\n height: 32px;\\n\\n .image {\\n width: 32px;\\n height: 32px;\\n line-height: 32px;\\n text-align: center;\\n font-size: 32px;\\n margin-right: 4px;\\n\\n img {\\n width: 32px;\\n height: 32px;\\n object-fit: contain;\\n }\\n }\\n\\n .label {\\n display: flex;\\n flex-direction: column;\\n justify-content: center;\\n margin: 0 0.1em 0 0.2em;\\n\\n .displayText {\\n line-height: 1.5;\\n }\\n\\n .detailText {\\n font-size: 9px;\\n line-height: 9px;\\n }\\n }\\n\\n &.highlighted {\\n background-color: $fallback--fg;\\n background-color: var(--selectedMenuPopover, $fallback--fg);\\n color: var(--selectedMenuPopoverText, $fallback--text);\\n\\n --faint: var(--selectedMenuPopoverFaintText, $fallback--faint);\\n --faintLink: var(--selectedMenuPopoverFaintLink, $fallback--faint);\\n --lightText: var(--selectedMenuPopoverLightText, $fallback--lightText);\\n --icon: var(--selectedMenuPopoverIcon, $fallback--icon);\\n }\\n }\\n}\\n\",\"$main-color: #f58d2c;\\n$main-background: white;\\n$darkened-background: whitesmoke;\\n\\n$fallback--bg: #121a24;\\n$fallback--fg: #182230;\\n$fallback--faint: rgb(185 185 186 / 50%);\\n$fallback--text: #b9b9ba;\\n$fallback--link: #d8a070;\\n$fallback--icon: #666;\\n$fallback--lightBg: rgb(21 30 42);\\n$fallback--lightText: #b9b9ba;\\n$fallback--border: #222;\\n$fallback--cRed: #f00;\\n$fallback--cBlue: #0095ff;\\n$fallback--cGreen: #0fa00f;\\n$fallback--cOrange: orange;\\n\\n$fallback--alertError: rgb(211 16 20 / 50%);\\n$fallback--alertWarning: rgb(111 111 20 / 50%);\\n\\n$fallback--panelRadius: 10px;\\n$fallback--checkboxRadius: 2px;\\n$fallback--btnRadius: 4px;\\n$fallback--inputRadius: 4px;\\n$fallback--tooltipRadius: 5px;\\n$fallback--avatarRadius: 4px;\\n$fallback--avatarAltRadius: 10px;\\n$fallback--attachmentRadius: 10px;\\n$fallback--chatMessageRadius: 10px;\\n\\n$fallback--buttonShadow: 0 0 2px 0 rgb(0 0 0 / 100%),\\n 0 1px 0 0 rgb(255 255 255 / 20%) inset,\\n 0 -1px 0 0 rgb(0 0 0 / 20%) inset;\\n\\n$status-margin: 0.75em;\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2Vtb2ppX2lucHV0L2Vtb2ppX2lucHV0LnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTZhOWYyMGIzJmxhbmc9c2Nzcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBO0FBQ2dIO0FBQ2pCO0FBQy9GLDhCQUE4QixtRkFBMkIsQ0FBQyw0RkFBcUM7QUFDL0Y7QUFDQSx3REFBd0Qsa0JBQWtCLDJCQUEyQix1QkFBdUIsR0FBRyxtQ0FBbUMsdUJBQXVCLFdBQVcsYUFBYSx5QkFBeUIscUJBQXFCLG9CQUFvQixzQkFBc0IsR0FBRywyQ0FBMkMsbUJBQW1CLGdDQUFnQyxHQUFHLG9DQUFvQyx1QkFBdUIsZ0JBQWdCLG9CQUFvQixHQUFHLHlDQUF5QyxrQkFBa0IsR0FBRyw4Q0FBOEMsbUJBQW1CLEdBQUcsa0NBQWtDLHdCQUF3QixHQUFHLGdDQUFnQyxlQUFlLHlCQUF5Qix1QkFBdUIsV0FBVyxjQUFjLGFBQWEsWUFBWSxxQkFBcUIsb0NBQW9DLHVEQUF1RCx1Q0FBdUMsYUFBYSxtQ0FBbUMsMEJBQTBCLEdBQUcsdUJBQXVCLHVCQUF1QixHQUFHLHNCQUFzQixrQkFBa0Isb0JBQW9CLHlCQUF5QixnREFBZ0QsaUJBQWlCLEdBQUcsNkJBQTZCLGdCQUFnQixpQkFBaUIsc0JBQXNCLHVCQUF1QixvQkFBb0Isc0JBQXNCLEdBQUcsaUNBQWlDLGdCQUFnQixpQkFBaUIsMkJBQTJCLDJCQUEyQixHQUFHLDZCQUE2QixrQkFBa0IsMkJBQTJCLDRCQUE0Qiw0QkFBNEIsR0FBRywwQ0FBMEMscUJBQXFCLEdBQUcseUNBQXlDLG1CQUFtQixxQkFBcUIsR0FBRyxrQ0FBa0MsOEJBQThCLDBEQUEwRCxtREFBbUQsbUVBQW1FLHVFQUF1RSwyRUFBMkUsNERBQTRELEdBQUcsT0FBTywrSUFBK0ksVUFBVSxXQUFXLFdBQVcsS0FBSyxLQUFLLFdBQVcsVUFBVSxVQUFVLFdBQVcsV0FBVyxVQUFVLFdBQVcsS0FBSyxLQUFLLFVBQVUsV0FBVyxLQUFLLEtBQUssV0FBVyxVQUFVLFVBQVUsS0FBSyxLQUFLLFVBQVUsS0FBSyxNQUFNLFVBQVUsS0FBSyxLQUFLLFdBQVcsS0FBSyxLQUFLLFVBQVUsV0FBVyxXQUFXLFVBQVUsVUFBVSxVQUFVLFVBQVUsV0FBVyxXQUFXLFVBQVUsV0FBVyxLQUFLLEtBQUssVUFBVSxXQUFXLFdBQVcsS0FBSyxNQUFNLFdBQVcsS0FBSyxNQUFNLFVBQVUsVUFBVSxXQUFXLFdBQVcsVUFBVSxLQUFLLE1BQU0sVUFBVSxVQUFVLFdBQVcsV0FBVyxVQUFVLFdBQVcsS0FBSyxNQUFNLFVBQVUsVUFBVSxXQUFXLFdBQVcsS0FBSyxNQUFNLFVBQVUsV0FBVyxXQUFXLFdBQVcsTUFBTSxNQUFNLFdBQVcsTUFBTSxNQUFNLFVBQVUsV0FBVyxNQUFNLE1BQU0sWUFBWSxZQUFZLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyx3REFBd0Qsa0JBQWtCLGtCQUFrQiwyQkFBMkIsdUJBQXVCLDBCQUEwQix5QkFBeUIsYUFBYSxlQUFlLDJCQUEyQix1QkFBdUIsc0JBQXNCLHdCQUF3QixtQkFBbUIsK0JBQStCLDRDQUE0QyxPQUFPLEtBQUssMkJBQTJCLHlCQUF5QixrQkFBa0Isc0JBQXNCLGdCQUFnQixzQkFBc0IsT0FBTyxLQUFLLDBCQUEwQixxQkFBcUIsS0FBSywyQkFBMkIsMEJBQTBCLEtBQUssdUJBQXVCLGlCQUFpQiwyQkFBMkIseUJBQXlCLGFBQWEsZ0JBQWdCLGVBQWUsY0FBYyx1QkFBdUIsMENBQTBDLHdFQUF3RSxpQkFBaUIsdUNBQXVDLDhCQUE4QixPQUFPLEtBQUssR0FBRyxtQkFBbUIsYUFBYSx5QkFBeUIsS0FBSyxjQUFjLG9CQUFvQixzQkFBc0IsMkJBQTJCLGdEQUFnRCxtQkFBbUIsZ0JBQWdCLG9CQUFvQixxQkFBcUIsMEJBQTBCLDJCQUEyQix3QkFBd0IsMEJBQTBCLGVBQWUsc0JBQXNCLHVCQUF1Qiw4QkFBOEIsU0FBUyxPQUFPLGdCQUFnQixzQkFBc0IsK0JBQStCLGdDQUFnQyxnQ0FBZ0Msd0JBQXdCLDJCQUEyQixTQUFTLHVCQUF1Qix5QkFBeUIsMkJBQTJCLFNBQVMsT0FBTyx1QkFBdUIsd0NBQXdDLG9FQUFvRSwrREFBK0QseUVBQXlFLDJFQUEyRSwrRUFBK0UsZ0VBQWdFLE9BQU8sS0FBSyxHQUFHLDBCQUEwQiwwQkFBMEIsbUNBQW1DLDJCQUEyQix5QkFBeUIsMkNBQTJDLDJCQUEyQiwyQkFBMkIsd0JBQXdCLG9DQUFvQyxnQ0FBZ0MsMEJBQTBCLHdCQUF3Qiw0QkFBNEIsNkJBQTZCLDZCQUE2QixnREFBZ0QsaURBQWlELGlDQUFpQyxpQ0FBaUMsNEJBQTRCLDhCQUE4QixnQ0FBZ0MsK0JBQStCLG1DQUFtQyxvQ0FBb0MscUNBQXFDLDBJQUEwSSwyQkFBMkIscUJBQXFCO0FBQ3Y5TTtBQUNBLGlFQUFlLHVCQUF1QixFQUFDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9jb21wb25lbnRzL2Vtb2ppX2lucHV0L2Vtb2ppX2lucHV0LnZ1ZT83MWMzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIEltcG9ydHNcbmltcG9ydCBfX19DU1NfTE9BREVSX0FQSV9TT1VSQ0VNQVBfSU1QT1JUX19fIGZyb20gXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvc291cmNlTWFwcy5qc1wiO1xuaW1wb3J0IF9fX0NTU19MT0FERVJfQVBJX0lNUE9SVF9fXyBmcm9tIFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvZGlzdC9ydW50aW1lL2FwaS5qc1wiO1xudmFyIF9fX0NTU19MT0FERVJfRVhQT1JUX19fID0gX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fKF9fX0NTU19MT0FERVJfQVBJX1NPVVJDRU1BUF9JTVBPUlRfX18pO1xuLy8gTW9kdWxlXG5fX19DU1NfTE9BREVSX0VYUE9SVF9fXy5wdXNoKFttb2R1bGUuaWQsIFwiLmVtb2ppLWlucHV0IHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbn1cXG4uZW1vamktaW5wdXQgLmVtb2ppLXBpY2tlci1pY29uIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHRvcDogMDtcXG4gIHJpZ2h0OiAwO1xcbiAgbWFyZ2luOiAwLjJlbSAwLjI1ZW07XFxuICBmb250LXNpemU6IDEuM2VtO1xcbiAgY3Vyc29yOiBwb2ludGVyO1xcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XFxufVxcbi5lbW9qaS1pbnB1dCAuZW1vamktcGlja2VyLWljb246aG92ZXIgaSB7XFxuICBjb2xvcjogI2I5YjliYTtcXG4gIGNvbG9yOiB2YXIoLS10ZXh0LCAjYjliOWJhKTtcXG59XFxuLmVtb2ppLWlucHV0IC5lbW9qaS1waWNrZXItcGFuZWwge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgei1pbmRleDogMjA7XFxuICBtYXJnaW4tdG9wOiAycHg7XFxufVxcbi5lbW9qaS1pbnB1dCAuZW1vamktcGlja2VyLXBhbmVsLmhpZGUge1xcbiAgZGlzcGxheTogbm9uZTtcXG59XFxuLmVtb2ppLWlucHV0IGlucHV0LFxcbi5lbW9qaS1pbnB1dCB0ZXh0YXJlYSB7XFxuICBmbGV4OiAxIDAgYXV0bztcXG59XFxuLmVtb2ppLWlucHV0LndpdGgtcGlja2VyIGlucHV0IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDMwcHg7XFxufVxcbi5lbW9qaS1pbnB1dCAuaGlkZGVuLW92ZXJsYXkge1xcbiAgb3BhY2l0eTogMDtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgdG9wOiAwO1xcbiAgYm90dG9tOiAwO1xcbiAgcmlnaHQ6IDA7XFxuICBsZWZ0OiAwO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIC8qIERFQlVHIFNUVUZGICovXFxuICBjb2xvcjogcmVkO1xcbiAgLyogc2V0IG9wYWNpdHkgdG8gbm9uLXplcm8gdG8gc2VlIHRoZSBvdmVybGF5ICovXFxufVxcbi5lbW9qaS1pbnB1dCAuaGlkZGVuLW92ZXJsYXkgLmNhcmV0IHtcXG4gIHdpZHRoOiAwO1xcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0xY2ggLSAxcHgpO1xcbiAgYm9yZGVyOiAxcHggc29saWQgcmVkO1xcbn1cXG4uYXV0b2NvbXBsZXRlLXBhbmVsIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG59XFxuLmF1dG9jb21wbGV0ZS1pdGVtIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBjdXJzb3I6IHBvaW50ZXI7XFxuICBwYWRkaW5nOiAwLjJlbSAwLjRlbTtcXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuNCk7XFxuICBoZWlnaHQ6IDMycHg7XFxufVxcbi5hdXRvY29tcGxldGUtaXRlbSAuaW1hZ2Uge1xcbiAgd2lkdGg6IDMycHg7XFxuICBoZWlnaHQ6IDMycHg7XFxuICBsaW5lLWhlaWdodDogMzJweDtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG4gIGZvbnQtc2l6ZTogMzJweDtcXG4gIG1hcmdpbi1yaWdodDogNHB4O1xcbn1cXG4uYXV0b2NvbXBsZXRlLWl0ZW0gLmltYWdlIGltZyB7XFxuICB3aWR0aDogMzJweDtcXG4gIGhlaWdodDogMzJweDtcXG4gIC1vLW9iamVjdC1maXQ6IGNvbnRhaW47XFxuICAgICBvYmplY3QtZml0OiBjb250YWluO1xcbn1cXG4uYXV0b2NvbXBsZXRlLWl0ZW0gLmxhYmVsIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XFxuICBtYXJnaW46IDAgMC4xZW0gMCAwLjJlbTtcXG59XFxuLmF1dG9jb21wbGV0ZS1pdGVtIC5sYWJlbCAuZGlzcGxheVRleHQge1xcbiAgbGluZS1oZWlnaHQ6IDEuNTtcXG59XFxuLmF1dG9jb21wbGV0ZS1pdGVtIC5sYWJlbCAuZGV0YWlsVGV4dCB7XFxuICBmb250LXNpemU6IDlweDtcXG4gIGxpbmUtaGVpZ2h0OiA5cHg7XFxufVxcbi5hdXRvY29tcGxldGUtaXRlbS5oaWdobGlnaHRlZCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTgyMjMwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2VsZWN0ZWRNZW51UG9wb3ZlciwgIzE4MjIzMCk7XFxuICBjb2xvcjogdmFyKC0tc2VsZWN0ZWRNZW51UG9wb3ZlclRleHQsICNiOWI5YmEpO1xcbiAgLS1mYWludDogdmFyKC0tc2VsZWN0ZWRNZW51UG9wb3ZlckZhaW50VGV4dCwgJGZhbGxiYWNrLS1mYWludCk7XFxuICAtLWZhaW50TGluazogdmFyKC0tc2VsZWN0ZWRNZW51UG9wb3ZlckZhaW50TGluaywgJGZhbGxiYWNrLS1mYWludCk7XFxuICAtLWxpZ2h0VGV4dDogdmFyKC0tc2VsZWN0ZWRNZW51UG9wb3ZlckxpZ2h0VGV4dCwgJGZhbGxiYWNrLS1saWdodFRleHQpO1xcbiAgLS1pY29uOiB2YXIoLS1zZWxlY3RlZE1lbnVQb3BvdmVySWNvbiwgJGZhbGxiYWNrLS1pY29uKTtcXG59XCIsIFwiXCIse1widmVyc2lvblwiOjMsXCJzb3VyY2VzXCI6W1wid2VicGFjazovLy4vc3JjL2NvbXBvbmVudHMvZW1vamlfaW5wdXQvZW1vamlfaW5wdXQudnVlXCIsXCJ3ZWJwYWNrOi8vLi9zcmMvX3ZhcmlhYmxlcy5zY3NzXCJdLFwibmFtZXNcIjpbXSxcIm1hcHBpbmdzXCI6XCJBQUdBO0VBQ0UsYUFBQTtFQUNBLHNCQUFBO0VBQ0Esa0JBQUE7QUFGRjtBQUlFO0VBQ0Usa0JBQUE7RUFDQSxNQUFBO0VBQ0EsUUFBQTtFQUNBLG9CQUFBO0VBQ0EsZ0JBQUE7RUFDQSxlQUFBO0VBQ0EsaUJBQUE7QUFGSjtBQUlJO0VBQ0UsY0NYVztFRFlYLDJCQUFBO0FBRk47QUFNRTtFQUNFLGtCQUFBO0VBQ0EsV0FBQTtFQUNBLGVBQUE7QUFKSjtBQU1JO0VBQ0UsYUFBQTtBQUpOO0FBUUU7O0VBRUUsY0FBQTtBQU5KO0FBU0U7RUFDRSxtQkFBQTtBQVBKO0FBVUU7RUFDRSxVQUFBO0VBQ0Esb0JBQUE7RUFDQSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxTQUFBO0VBQ0EsUUFBQTtFQUNBLE9BQUE7RUFDQSxnQkFBQTtFQUVBLGdCQUFBO0VBQ0EsVUFBQTtFQUVBLCtDQUFBO0FBVko7QUFZSTtFQUNFLFFBQUE7RUFDQSw4QkFBQTtFQUNBLHFCQUFBO0FBVk47QUFnQkU7RUFDRSxrQkFBQTtBQWJKO0FBZ0JFO0VBQ0UsYUFBQTtFQUNBLGVBQUE7RUFDQSxvQkFBQTtFQUNBLDJDQUFBO0VBQ0EsWUFBQTtBQWRKO0FBZ0JJO0VBQ0UsV0FBQTtFQUNBLFlBQUE7RUFDQSxpQkFBQTtFQUNBLGtCQUFBO0VBQ0EsZUFBQTtFQUNBLGlCQUFBO0FBZE47QUFnQk07RUFDRSxXQUFBO0VBQ0EsWUFBQTtFQUNBLHNCQUFBO0tBQUEsbUJBQUE7QUFkUjtBQWtCSTtFQUNFLGFBQUE7RUFDQSxzQkFBQTtFQUNBLHVCQUFBO0VBQ0EsdUJBQUE7QUFoQk47QUFrQk07RUFDRSxnQkFBQTtBQWhCUjtBQW1CTTtFQUNFLGNBQUE7RUFDQSxnQkFBQTtBQWpCUjtBQXFCSTtFQUNFLHlCQ3hHUztFRHlHVCxxREFBQTtFQUNBLDhDQUFBO0VBRUEsOERBQUE7RUFDQSxrRUFBQTtFQUNBLHNFQUFBO0VBQ0EsdURBQUE7QUFwQk5cIixcInNvdXJjZXNDb250ZW50XCI6W1wiXFxuQGltcG9ydCBcXFwiLi4vLi4vdmFyaWFibGVzXFxcIjtcXG5cXG4uZW1vamktaW5wdXQge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuXFxuICAuZW1vamktcGlja2VyLWljb24ge1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgIHRvcDogMDtcXG4gICAgcmlnaHQ6IDA7XFxuICAgIG1hcmdpbjogMC4yZW0gMC4yNWVtO1xcbiAgICBmb250LXNpemU6IDEuM2VtO1xcbiAgICBjdXJzb3I6IHBvaW50ZXI7XFxuICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xcblxcbiAgICAmOmhvdmVyIGkge1xcbiAgICAgIGNvbG9yOiAkZmFsbGJhY2stLXRleHQ7XFxuICAgICAgY29sb3I6IHZhcigtLXRleHQsICRmYWxsYmFjay0tdGV4dCk7XFxuICAgIH1cXG4gIH1cXG5cXG4gIC5lbW9qaS1waWNrZXItcGFuZWwge1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgIHotaW5kZXg6IDIwO1xcbiAgICBtYXJnaW4tdG9wOiAycHg7XFxuXFxuICAgICYuaGlkZSB7XFxuICAgICAgZGlzcGxheTogbm9uZTtcXG4gICAgfVxcbiAgfVxcblxcbiAgaW5wdXQsXFxuICB0ZXh0YXJlYSB7XFxuICAgIGZsZXg6IDEgMCBhdXRvO1xcbiAgfVxcblxcbiAgJi53aXRoLXBpY2tlciBpbnB1dCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XFxuICB9XFxuXFxuICAuaGlkZGVuLW92ZXJsYXkge1xcbiAgICBvcGFjaXR5OiAwO1xcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgICB0b3A6IDA7XFxuICAgIGJvdHRvbTogMDtcXG4gICAgcmlnaHQ6IDA7XFxuICAgIGxlZnQ6IDA7XFxuICAgIG92ZXJmbG93OiBoaWRkZW47XFxuXFxuICAgIC8qIERFQlVHIFNUVUZGICovXFxuICAgIGNvbG9yOiByZWQ7XFxuXFxuICAgIC8qIHNldCBvcGFjaXR5IHRvIG5vbi16ZXJvIHRvIHNlZSB0aGUgb3ZlcmxheSAqL1xcblxcbiAgICAuY2FyZXQge1xcbiAgICAgIHdpZHRoOiAwO1xcbiAgICAgIG1hcmdpbi1yaWdodDogY2FsYygtMWNoIC0gMXB4KTtcXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCByZWQ7XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuLmF1dG9jb21wbGV0ZSB7XFxuICAmLXBhbmVsIHtcXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgfVxcblxcbiAgJi1pdGVtIHtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgY3Vyc29yOiBwb2ludGVyO1xcbiAgICBwYWRkaW5nOiAwLjJlbSAwLjRlbTtcXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYigwIDAgMCAvIDQwJSk7XFxuICAgIGhlaWdodDogMzJweDtcXG5cXG4gICAgLmltYWdlIHtcXG4gICAgICB3aWR0aDogMzJweDtcXG4gICAgICBoZWlnaHQ6IDMycHg7XFxuICAgICAgbGluZS1oZWlnaHQ6IDMycHg7XFxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xcbiAgICAgIGZvbnQtc2l6ZTogMzJweDtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcXG5cXG4gICAgICBpbWcge1xcbiAgICAgICAgd2lkdGg6IDMycHg7XFxuICAgICAgICBoZWlnaHQ6IDMycHg7XFxuICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xcbiAgICAgIH1cXG4gICAgfVxcblxcbiAgICAubGFiZWwge1xcbiAgICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcXG4gICAgICBtYXJnaW46IDAgMC4xZW0gMCAwLjJlbTtcXG5cXG4gICAgICAuZGlzcGxheVRleHQge1xcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcXG4gICAgICB9XFxuXFxuICAgICAgLmRldGFpbFRleHQge1xcbiAgICAgICAgZm9udC1zaXplOiA5cHg7XFxuICAgICAgICBsaW5lLWhlaWdodDogOXB4O1xcbiAgICAgIH1cXG4gICAgfVxcblxcbiAgICAmLmhpZ2hsaWdodGVkIHtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmFsbGJhY2stLWZnO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNlbGVjdGVkTWVudVBvcG92ZXIsICRmYWxsYmFjay0tZmcpO1xcbiAgICAgIGNvbG9yOiB2YXIoLS1zZWxlY3RlZE1lbnVQb3BvdmVyVGV4dCwgJGZhbGxiYWNrLS10ZXh0KTtcXG5cXG4gICAgICAtLWZhaW50OiB2YXIoLS1zZWxlY3RlZE1lbnVQb3BvdmVyRmFpbnRUZXh0LCAkZmFsbGJhY2stLWZhaW50KTtcXG4gICAgICAtLWZhaW50TGluazogdmFyKC0tc2VsZWN0ZWRNZW51UG9wb3ZlckZhaW50TGluaywgJGZhbGxiYWNrLS1mYWludCk7XFxuICAgICAgLS1saWdodFRleHQ6IHZhcigtLXNlbGVjdGVkTWVudVBvcG92ZXJMaWdodFRleHQsICRmYWxsYmFjay0tbGlnaHRUZXh0KTtcXG4gICAgICAtLWljb246IHZhcigtLXNlbGVjdGVkTWVudVBvcG92ZXJJY29uLCAkZmFsbGJhY2stLWljb24pO1xcbiAgICB9XFxuICB9XFxufVxcblwiLFwiJG1haW4tY29sb3I6ICNmNThkMmM7XFxuJG1haW4tYmFja2dyb3VuZDogd2hpdGU7XFxuJGRhcmtlbmVkLWJhY2tncm91bmQ6IHdoaXRlc21va2U7XFxuXFxuJGZhbGxiYWNrLS1iZzogIzEyMWEyNDtcXG4kZmFsbGJhY2stLWZnOiAjMTgyMjMwO1xcbiRmYWxsYmFjay0tZmFpbnQ6IHJnYigxODUgMTg1IDE4NiAvIDUwJSk7XFxuJGZhbGxiYWNrLS10ZXh0OiAjYjliOWJhO1xcbiRmYWxsYmFjay0tbGluazogI2Q4YTA3MDtcXG4kZmFsbGJhY2stLWljb246ICM2NjY7XFxuJGZhbGxiYWNrLS1saWdodEJnOiByZ2IoMjEgMzAgNDIpO1xcbiRmYWxsYmFjay0tbGlnaHRUZXh0OiAjYjliOWJhO1xcbiRmYWxsYmFjay0tYm9yZGVyOiAjMjIyO1xcbiRmYWxsYmFjay0tY1JlZDogI2YwMDtcXG4kZmFsbGJhY2stLWNCbHVlOiAjMDA5NWZmO1xcbiRmYWxsYmFjay0tY0dyZWVuOiAjMGZhMDBmO1xcbiRmYWxsYmFjay0tY09yYW5nZTogb3JhbmdlO1xcblxcbiRmYWxsYmFjay0tYWxlcnRFcnJvcjogcmdiKDIxMSAxNiAyMCAvIDUwJSk7XFxuJGZhbGxiYWNrLS1hbGVydFdhcm5pbmc6IHJnYigxMTEgMTExIDIwIC8gNTAlKTtcXG5cXG4kZmFsbGJhY2stLXBhbmVsUmFkaXVzOiAxMHB4O1xcbiRmYWxsYmFjay0tY2hlY2tib3hSYWRpdXM6IDJweDtcXG4kZmFsbGJhY2stLWJ0blJhZGl1czogNHB4O1xcbiRmYWxsYmFjay0taW5wdXRSYWRpdXM6IDRweDtcXG4kZmFsbGJhY2stLXRvb2x0aXBSYWRpdXM6IDVweDtcXG4kZmFsbGJhY2stLWF2YXRhclJhZGl1czogNHB4O1xcbiRmYWxsYmFjay0tYXZhdGFyQWx0UmFkaXVzOiAxMHB4O1xcbiRmYWxsYmFjay0tYXR0YWNobWVudFJhZGl1czogMTBweDtcXG4kZmFsbGJhY2stLWNoYXRNZXNzYWdlUmFkaXVzOiAxMHB4O1xcblxcbiRmYWxsYmFjay0tYnV0dG9uU2hhZG93OiAwIDAgMnB4IDAgcmdiKDAgMCAwIC8gMTAwJSksXFxuICAwIDFweCAwIDAgcmdiKDI1NSAyNTUgMjU1IC8gMjAlKSBpbnNldCxcXG4gIDAgLTFweCAwIDAgcmdiKDAgMCAwIC8gMjAlKSBpbnNldDtcXG5cXG4kc3RhdHVzLW1hcmdpbjogMC43NWVtO1xcblwiXSxcInNvdXJjZVJvb3RcIjpcIlwifV0pO1xuLy8gRXhwb3J0c1xuZXhwb3J0IGRlZmF1bHQgX19fQ1NTX0xPQURFUl9FWFBPUlRfX187XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/emoji_input/emoji_input.vue?vue&type=style&index=0&id=6a9f20b3&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/emoji_reactions/emoji_reactions.vue?vue&type=style&index=0&id=53a5501a&lang=scss":
/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/emoji_reactions/emoji_reactions.vue?vue&type=style&index=0&id=53a5501a&lang=scss ***!
\**************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".EmojiReactions {\\n display: flex;\\n margin-top: 0.25em;\\n flex-wrap: wrap;\\n --emoji-size: calc(1.25em * var(--emojiReactionsScale, 1));\\n}\\n.EmojiReactions .emoji-reaction-container {\\n display: flex;\\n align-items: stretch;\\n margin-top: 0.5em;\\n margin-right: 0.5em;\\n}\\n.EmojiReactions .emoji-reaction-container .emoji-reaction-popover {\\n padding: 0;\\n}\\n.EmojiReactions .emoji-reaction-container .emoji-reaction-popover .emoji-reaction-count-button {\\n background-color: var(--btn);\\n margin: 0;\\n height: 100%;\\n border-top-left-radius: 0;\\n border-bottom-left-radius: 0;\\n box-sizing: border-box;\\n min-width: 2em;\\n display: inline-flex;\\n justify-content: center;\\n align-items: center;\\n color: #b9b9ba;\\n color: var(--btnText, #b9b9ba);\\n}\\n.EmojiReactions .emoji-reaction-container .emoji-reaction-popover .emoji-reaction-count-button.-picked-reaction {\\n border: 1px solid var(--accent, #d8a070);\\n margin-right: -1px;\\n}\\n.EmojiReactions .emoji-reaction {\\n padding-left: 0.5em;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n box-sizing: border-box;\\n border-top-right-radius: 0;\\n border-bottom-right-radius: 0;\\n margin: 0;\\n}\\n.EmojiReactions .emoji-reaction .reaction-emoji {\\n width: var(--emoji-size);\\n height: var(--emoji-size);\\n margin-right: 0.25em;\\n line-height: var(--emoji-size);\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n}\\n.EmojiReactions .emoji-reaction .reaction-emoji-content {\\n max-width: 100%;\\n max-height: 100%;\\n width: auto;\\n height: auto;\\n line-height: inherit;\\n overflow: hidden;\\n font-size: calc(var(--emoji-size) * 0.8);\\n margin: 0;\\n}\\n.EmojiReactions .emoji-reaction:focus {\\n outline: none;\\n}\\n.EmojiReactions .emoji-reaction .svg-inline--fa {\\n color: #b9b9ba;\\n color: var(--btnText, #b9b9ba);\\n}\\n.EmojiReactions .emoji-reaction.-picked-reaction {\\n border: 1px solid var(--accent, #d8a070);\\n margin-left: -1px;\\n margin-right: -1px;\\n}\\n.EmojiReactions .emoji-reaction.-picked-reaction .svg-inline--fa {\\n color: #d8a070;\\n color: var(--accent, #d8a070);\\n}\\n.EmojiReactions .emoji-reaction .focus-marker {\\n visibility: hidden;\\n}\\n.EmojiReactions .emoji-reaction .active-marker {\\n visibility: visible;\\n}\\n.EmojiReactions .emoji-reaction:focus:not(:focus-visible, :hover) .focus-marker {\\n visibility: hidden;\\n}\\n.EmojiReactions .emoji-reaction:focus:not(:focus-visible, :hover) .active-marker {\\n visibility: visible;\\n}\\n.EmojiReactions .emoji-reaction:hover .svg-inline--fa, .EmojiReactions .emoji-reaction:focus .svg-inline--fa {\\n color: #d8a070;\\n color: var(--accent, #d8a070);\\n}\\n.EmojiReactions .emoji-reaction:hover .focus-marker, .EmojiReactions .emoji-reaction:focus .focus-marker {\\n visibility: visible;\\n}\\n.EmojiReactions .emoji-reaction:hover .active-marker, .EmojiReactions .emoji-reaction:focus .active-marker {\\n visibility: hidden;\\n}\\n.EmojiReactions .emoji-reaction:focus-visible .svg-inline--fa {\\n color: #d8a070;\\n color: var(--accent, #d8a070);\\n}\\n.EmojiReactions .emoji-reaction:focus-visible .focus-marker {\\n visibility: visible;\\n}\\n.EmojiReactions .emoji-reaction:focus-visible .active-marker {\\n visibility: hidden;\\n}\\n.EmojiReactions .emoji-reaction-expand {\\n padding: 0 0.5em;\\n margin-right: 0.5em;\\n margin-top: 0.5em;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n}\\n.EmojiReactions .emoji-reaction-expand:hover {\\n text-decoration: underline;\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/emoji_reactions/emoji_reactions.vue\",\"webpack://./src/_variables.scss\"],\"names\":[],\"mappings\":\"AAIA;EACE,aAAA;EACA,kBAAA;EACA,eAAA;EAEA,0DAAA;AAJF;AAME;EACE,aAAA;EACA,oBAAA;EACA,iBAAA;EACA,mBAAA;AAJJ;AAMI;EACE,UAAA;AAJN;AAMM;EACE,4BAAA;EACA,SAAA;EACA,YAAA;EACA,yBAAA;EACA,4BAAA;EACA,sBAAA;EACA,cAAA;EACA,oBAAA;EACA,uBAAA;EACA,mBAAA;EACA,cCxBS;EDyBT,8BAAA;AAJR;AAMQ;EACE,wCAAA;EACA,kBAAA;AAJV;AAUE;EACE,mBAAA;EACA,aAAA;EACA,mBAAA;EACA,uBAAA;EACA,sBAAA;EACA,0BAAA;EACA,6BAAA;EACA,SAAA;AARJ;AAUI;EACE,wBAAA;EACA,yBAAA;EACA,oBAAA;EACA,8BAAA;EACA,aAAA;EACA,uBAAA;EACA,mBAAA;AARN;AAWI;EACE,eAAA;EACA,gBAAA;EACA,WAAA;EACA,YAAA;EACA,oBAAA;EACA,gBAAA;EACA,wCAAA;EACA,SAAA;AATN;AAYI;EACE,aAAA;AAVN;AAaI;EACE,cCvEW;EDwEX,8BAAA;AAXN;AAcI;EACE,wCAAA;EACA,iBAAA;EACA,kBAAA;AAZN;AAcM;EACE,cChFS;EDiFT,6BAAA;AAZR;AAiBM;EACE,kBAAA;AAfR;AAkBM;EACE,mBAAA;AAhBR;AAWM;EACE,kBAAA;AATR;AAYM;EACE,mBAAA;AAVR;AAeM;EACE,cCjGS;EDkGT,6BAAA;AAbR;AAgBM;EACE,mBAAA;AAdR;AAiBM;EACE,kBAAA;AAfR;AAKM;EACE,cCjGS;EDkGT,6BAAA;AAHR;AAMM;EACE,mBAAA;AAJR;AAOM;EACE,kBAAA;AALR;AAUE;EACE,gBAAA;EACA,mBAAA;EACA,iBAAA;EACA,aAAA;EACA,mBAAA;EACA,uBAAA;AARJ;AAUI;EACE,0BAAA;AARN\",\"sourcesContent\":[\"\\n@import \\\"../../variables\\\";\\n@import \\\"../../mixins\\\";\\n\\n.EmojiReactions {\\n display: flex;\\n margin-top: 0.25em;\\n flex-wrap: wrap;\\n\\n --emoji-size: calc(1.25em * var(--emojiReactionsScale, 1));\\n\\n .emoji-reaction-container {\\n display: flex;\\n align-items: stretch;\\n margin-top: 0.5em;\\n margin-right: 0.5em;\\n\\n .emoji-reaction-popover {\\n padding: 0;\\n\\n .emoji-reaction-count-button {\\n background-color: var(--btn);\\n margin: 0;\\n height: 100%;\\n border-top-left-radius: 0;\\n border-bottom-left-radius: 0;\\n box-sizing: border-box;\\n min-width: 2em;\\n display: inline-flex;\\n justify-content: center;\\n align-items: center;\\n color: $fallback--text;\\n color: var(--btnText, $fallback--text);\\n\\n &.-picked-reaction {\\n border: 1px solid var(--accent, $fallback--link);\\n margin-right: -1px;\\n }\\n }\\n }\\n }\\n\\n .emoji-reaction {\\n padding-left: 0.5em;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n box-sizing: border-box;\\n border-top-right-radius: 0;\\n border-bottom-right-radius: 0;\\n margin: 0;\\n\\n .reaction-emoji {\\n width: var(--emoji-size);\\n height: var(--emoji-size);\\n margin-right: 0.25em;\\n line-height: var(--emoji-size);\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n }\\n\\n .reaction-emoji-content {\\n max-width: 100%;\\n max-height: 100%;\\n width: auto;\\n height: auto;\\n line-height: inherit;\\n overflow: hidden;\\n font-size: calc(var(--emoji-size) * 0.8);\\n margin: 0;\\n }\\n\\n &:focus {\\n outline: none;\\n }\\n\\n .svg-inline--fa {\\n color: $fallback--text;\\n color: var(--btnText, $fallback--text);\\n }\\n\\n &.-picked-reaction {\\n border: 1px solid var(--accent, $fallback--link);\\n margin-left: -1px; // offset the border, can't use inset shadows either\\n margin-right: -1px;\\n\\n .svg-inline--fa {\\n color: $fallback--link;\\n color: var(--accent, $fallback--link);\\n }\\n }\\n\\n @include unfocused-style {\\n .focus-marker {\\n visibility: hidden;\\n }\\n\\n .active-marker {\\n visibility: visible;\\n }\\n }\\n\\n @include focused-style {\\n .svg-inline--fa {\\n color: $fallback--link;\\n color: var(--accent, $fallback--link);\\n }\\n\\n .focus-marker {\\n visibility: visible;\\n }\\n\\n .active-marker {\\n visibility: hidden;\\n }\\n }\\n }\\n\\n .emoji-reaction-expand {\\n padding: 0 0.5em;\\n margin-right: 0.5em;\\n margin-top: 0.5em;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n\\n &:hover {\\n text-decoration: underline;\\n }\\n }\\n}\\n\",\"$main-color: #f58d2c;\\n$main-background: white;\\n$darkened-background: whitesmoke;\\n\\n$fallback--bg: #121a24;\\n$fallback--fg: #182230;\\n$fallback--faint: rgb(185 185 186 / 50%);\\n$fallback--text: #b9b9ba;\\n$fallback--link: #d8a070;\\n$fallback--icon: #666;\\n$fallback--lightBg: rgb(21 30 42);\\n$fallback--lightText: #b9b9ba;\\n$fallback--border: #222;\\n$fallback--cRed: #f00;\\n$fallback--cBlue: #0095ff;\\n$fallback--cGreen: #0fa00f;\\n$fallback--cOrange: orange;\\n\\n$fallback--alertError: rgb(211 16 20 / 50%);\\n$fallback--alertWarning: rgb(111 111 20 / 50%);\\n\\n$fallback--panelRadius: 10px;\\n$fallback--checkboxRadius: 2px;\\n$fallback--btnRadius: 4px;\\n$fallback--inputRadius: 4px;\\n$fallback--tooltipRadius: 5px;\\n$fallback--avatarRadius: 4px;\\n$fallback--avatarAltRadius: 10px;\\n$fallback--attachmentRadius: 10px;\\n$fallback--chatMessageRadius: 10px;\\n\\n$fallback--buttonShadow: 0 0 2px 0 rgb(0 0 0 / 100%),\\n 0 1px 0 0 rgb(255 255 255 / 20%) inset,\\n 0 -1px 0 0 rgb(0 0 0 / 20%) inset;\\n\\n$status-margin: 0.75em;\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2Vtb2ppX3JlYWN0aW9ucy9lbW9qaV9yZWFjdGlvbnMudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9NTNhNTUwMWEmbGFuZz1zY3NzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7QUFDZ0g7QUFDakI7QUFDL0YsOEJBQThCLG1GQUEyQixDQUFDLDRGQUFxQztBQUMvRjtBQUNBLDJEQUEyRCxrQkFBa0IsdUJBQXVCLG9CQUFvQiwrREFBK0QsR0FBRyw2Q0FBNkMsa0JBQWtCLHlCQUF5QixzQkFBc0Isd0JBQXdCLEdBQUcscUVBQXFFLGVBQWUsR0FBRyxrR0FBa0csaUNBQWlDLGNBQWMsaUJBQWlCLDhCQUE4QixpQ0FBaUMsMkJBQTJCLG1CQUFtQix5QkFBeUIsNEJBQTRCLHdCQUF3QixtQkFBbUIsbUNBQW1DLEdBQUcsbUhBQW1ILDZDQUE2Qyx1QkFBdUIsR0FBRyxtQ0FBbUMsd0JBQXdCLGtCQUFrQix3QkFBd0IsNEJBQTRCLDJCQUEyQiwrQkFBK0Isa0NBQWtDLGNBQWMsR0FBRyxtREFBbUQsNkJBQTZCLDhCQUE4Qix5QkFBeUIsbUNBQW1DLGtCQUFrQiw0QkFBNEIsd0JBQXdCLEdBQUcsMkRBQTJELG9CQUFvQixxQkFBcUIsZ0JBQWdCLGlCQUFpQix5QkFBeUIscUJBQXFCLDZDQUE2QyxjQUFjLEdBQUcseUNBQXlDLGtCQUFrQixHQUFHLG1EQUFtRCxtQkFBbUIsbUNBQW1DLEdBQUcsb0RBQW9ELDZDQUE2QyxzQkFBc0Is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QTRCLDhCQUE4QixnQ0FBZ0MsK0JBQStCLG1DQUFtQyxvQ0FBb0MscUNBQXFDLDBJQUEwSSwyQkFBMkIscUJBQXFCO0FBQ2wrUTtBQUNBLGlFQUFlLHVCQUF1QixFQUFDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9jb21wb25lbnRzL2Vtb2ppX3JlYWN0aW9ucy9lbW9qaV9yZWFjdGlvbnMudnVlPzM4ZmIiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gSW1wb3J0c1xuaW1wb3J0IF9fX0NTU19MT0FERVJfQVBJX1NPVVJDRU1BUF9JTVBPUlRfX18gZnJvbSBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2Rpc3QvcnVudGltZS9zb3VyY2VNYXBzLmpzXCI7XG5pbXBvcnQgX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fIGZyb20gXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvYXBpLmpzXCI7XG52YXIgX19fQ1NTX0xPQURFUl9FWFBPUlRfX18gPSBfX19DU1NfTE9BREVSX0FQSV9JTVBPUlRfX18oX19fQ1NTX0xPQURFUl9BUElfU09VUkNFTUFQX0lNUE9SVF9fXyk7XG4vLyBNb2R1bGVcbl9fX0NTU19MT0FERVJfRVhQT1JUX19fLnB1c2goW21vZHVsZS5pZCwgXCIuRW1vamlSZWFjdGlvbnMge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIG1hcmdpbi10b3A6IDAuMjVlbTtcXG4gIGZsZXgtd3JhcDogd3JhcDtcXG4gIC0tZW1vamktc2l6ZTogY2FsYygxLjI1ZW0gKiB2YXIoLS1lbW9qaVJlYWN0aW9uc1NjYWxlLCAxKSk7XFxufVxcbi5FbW9qaVJlYWN0aW9ucyAuZW1vamktcmVhY3Rpb24tY29udGFpbmVyIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcXG4gIG1hcmdpbi10b3A6IDAuNWVtO1xcbiAgbWFyZ2luLXJpZ2h0OiAwLjVlbTtcXG59XFxuLkVtb2ppUmVhY3Rpb25zIC5lbW9qaS1yZWFjdGlvbi1jb250YWluZXIgLmVtb2ppLXJlYWN0aW9uLXBvcG92ZXIge1xcbiAgcGFkZGluZzogMDtcXG59XFxuLkVtb2ppUmVhY3Rpb25zIC5lbW9qaS1yZWFjdGlvbi1jb250YWluZXIgLmVtb2ppLXJlYWN0aW9uLXBvcG92ZXIgLmVtb2ppLXJlYWN0aW9uLWNvdW50LWJ1dHRvbiB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idG4pO1xcbiAgbWFyZ2luOiAwO1xcbiAgaGVpZ2h0OiAxMDAlO1xcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XFxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xcbiAgbWluLXdpZHRoOiAyZW07XFxuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gIGNvbG9yOiAjYjliOWJhO1xcbiAgY29sb3I6IHZhcigtLWJ0blRleHQsICNiOWI5YmEpO1xcbn1cXG4uRW1vamlSZWFjdGlvbnMgLmVtb2ppLXJlYWN0aW9uLWNvbnRhaW5lciAuZW1vamktcmVhY3Rpb24tcG9wb3ZlciAuZW1vamktcmVhY3Rpb24tY291bnQtYnV0dG9uLi1waWNrZWQtcmVhY3Rpb24ge1xcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYWNjZW50LCAjZDhhMDcwKTtcXG4gIG1hcmdpbi1yaWdodDogLTFweDtcXG59XFxuLkVtb2ppUmVhY3Rpb25zIC5lbW9qaS1yZWFjdGlvbiB7XFxuICBwYWRkaW5nLWxlZnQ6IDAuNWVtO1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XFxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcXG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xcbiAgbWFyZ2luOiAwO1xcbn1cXG4uRW1vamlSZWFjdGlvbnMgLmVtb2ppLXJlYWN0aW9uIC5yZWFjdGlvbi1lbW9qaSB7XFxuICB3aWR0aDogdmFyKC0tZW1vamktc2l6ZSk7XFxuICBoZWlnaHQ6IHZhcigtLWVtb2ppLXNpemUpO1xcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1ZW07XFxuICBsaW5lLWhlaWdodDogdmFyKC0tZW1vamktc2l6ZSk7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xcbn1cXG4uRW1vamlSZWFjdGlvbnMgLmVtb2ppLXJlYWN0aW9uIC5yZWFjdGlvbi1lbW9qaS1jb250ZW50IHtcXG4gIG1heC13aWR0aDogMTAwJTtcXG4gIG1heC1oZWlnaHQ6IDEwMCU7XFxuICB3aWR0aDogYXV0bztcXG4gIGhlaWdodDogYXV0bztcXG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1lbW9qaS1zaXplKSAqIDAuOCk7XFxuICBtYXJnaW46IDA7XFxufVxcbi5FbW9qaVJlYWN0aW9ucyAuZW1vamktcmVhY3Rpb246Zm9jdXMge1xcbiAgb3V0bGluZTogbm9uZTtcXG59XFxuLkVtb2ppUmVhY3Rpb25zIC5lbW9qaS1yZWFjdGlvbiAuc3ZnLWlubGluZS0tZmEge1xcbiAgY29sb3I6ICNiOWI5YmE7XFxuICBjb2xvcjogdmFyKC0tYnRuVGV4dCwgI2I5YjliYSk7XFxufVxcbi5FbW9qaVJlYWN0aW9ucyAuZW1vamktcmVhY3Rpb24uLXBpY2tlZC1yZWFjdGlvbiB7XFxuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1hY2NlbnQsICNkOGEwNzApO1xcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XFxuICBtYXJnaW4tcmlnaHQ6IC0xcHg7XFxufVxcbi5FbW9qaVJlYWN0aW9ucyAuZW1vamktcmVhY3Rpb24uLXBpY2tlZC1yZWFjdGlvbiAuc3ZnLWlubGluZS0tZmEge1xcbiAgY29sb3I6ICNkOGEwNzA7XFxuICBjb2xvcjogdmFyKC0tYWNjZW50LCAjZDhhMDcwKTtcXG59XFxuLkVtb2ppUmVhY3Rpb25zIC5lbW9qaS1yZWFjdGlvbiAuZm9jdXMtbWFya2VyIHtcXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcXG59XFxuLkVtb2ppUmVhY3Rpb25zIC5lbW9qaS1yZWFjdGlvbiAuYWN0aXZlLW1hcmtlciB7XFxuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xcbn1cXG4uRW1vamlSZWFjdGlvbnMgLmVtb2ppLXJlYWN0aW9uOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSwgOmhvdmVyKSAuZm9jdXMtbWFya2VyIHtcXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcXG59XFxuLkVtb2ppUmVhY3Rpb25zIC5lbW9qaS1yZWFjdGlvbjpmb2N1czpub3QoOmZvY3VzLXZpc2libGUsIDpob3ZlcikgLmFjdGl2ZS1tYXJrZXIge1xcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcXG59XFxuLkVtb2ppUmVhY3Rpb25zIC5lbW9qaS1yZWFjdGlvbjpob3ZlciAuc3ZnLWlubGluZS0tZmEsIC5FbW9qaVJlYWN0aW9ucyAuZW1vamktcmVhY3Rpb246Zm9jdXMgLnN2Zy1pbmxpbmUtLWZhIHtcXG4gIGNvbG9yOiAjZDhhMDcwO1xcbiAgY29sb3I6IHZhcigtLWFjY2VudCwgI2Q4YTA3MCk7XFxufVxcbi5FbW9qaVJlYWN0aW9ucyAuZW1vamktcmVhY3Rpb246aG92ZXIgLmZvY3VzLW1hcmtlciwgLkVtb2ppUmVhY3Rpb25zIC5lbW9qaS1yZWFjdGlvbjpmb2N1cyAuZm9jdXMtbWFya2VyIHtcXG4gIHZpc2liaWxpdHk6IHZpc2libGU7XFxufVxcbi5FbW9qaVJlYWN0aW9ucyAuZW1vamktcmVhY3Rpb246aG92ZXIgLmFjdGl2ZS1tYXJrZXIsIC5FbW9qaVJlYWN0aW9ucyAuZW1vamktcmVhY3Rpb246Zm9jdXMgLmFjdGl2ZS1tYXJrZXIge1xcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xcbn1cXG4uRW1vamlSZWFjdGlvbnMgLmVtb2ppLXJlYWN0aW9uOmZvY3VzLXZpc2libGUgLnN2Zy1pbmxpbmUtLWZhIHtcXG4gIGNvbG9yOiAjZDhhMDcwO1xcbiAgY29sb3I6IHZhcigtLWFjY2VudCwgI2Q4YTA3MCk7XFxufVxcbi5FbW9qaVJlYWN0aW9ucyAuZW1vamktcmVhY3Rpb246Zm9jdXMtdmlzaWJsZSAuZm9jdXMtbWFya2VyIHtcXG4gIHZpc2liaWxpdHk6IHZpc2libGU7XFxufVxcbi5FbW9qaVJlYWN0aW9ucyAuZW1vamktcmVhY3Rpb246Zm9jdXMtdmlzaWJsZSAuYWN0aXZlLW1hcmtlciB7XFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XFxufVxcbi5FbW9qaVJlYWN0aW9ucyAuZW1vamktcmVhY3Rpb24tZXhwYW5kIHtcXG4gIHBhZGRpbmc6IDAgMC41ZW07XFxuICBtYXJnaW4tcmlnaHQ6IDAuNWVtO1xcbiAgbWFyZ2luLXRvcDogMC41ZW07XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xcbn1cXG4uRW1vamlSZWFjdGlvbnMgLmVtb2ppLXJlYWN0aW9uLWV4cGFuZDpob3ZlciB7XFxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcXG59XCIsIFwiXCIse1widmVyc2lvblwiOjMsXCJzb3VyY2VzXCI6W1wid2VicGFjazovLy4vc3JjL2NvbXBvbmVudHMvZW1vamlfcmVhY3Rpb25zL2Vtb2ppX3JlYWN0aW9ucy52dWVcIixcIndlYnBhY2s6Ly8uL3NyYy9fdmFyaWFibGVzLnNjc3NcIl0sXCJuYW1lc1wiOltdLFwibWFwcGluZ3NcIjpcIkFBSUE7RUFDRSxhQUFBO0VBQ0Esa0JBQUE7RUFDQSxlQUFBO0VBRUEsMERBQUE7QUFKRjtBQU1FO0VBQ0UsYUFBQTtFQUNBLG9CQUFBO0VBQ0EsaUJBQUE7RUFDQSxtQkFBQTtBQUpKO0FBTUk7RUFDRSxVQUFBO0FBSk47QUFNTTtFQUNFLDRCQUFBO0VBQ0EsU0FBQTtFQUNBLFlBQUE7RUFDQSx5QkFBQTtFQUNBLDRCQUFBO0VBQ0Esc0JBQUE7RUFDQSxjQUFBO0VBQ0Esb0JBQUE7RUFDQSx1QkFBQTtFQUNBLG1CQUFBO0VBQ0EsY0N4QlM7RUR5QlQsOEJBQUE7QUFKUjtBQU1RO0VBQ0Usd0NBQUE7RUFDQSxrQkFBQTtBQUpWO0FBVUU7RUFDRSxtQkFBQTtFQUNBLGFBQUE7RUFDQSxtQkFBQTtFQUNBLHVCQUFBO0VBQ0Esc0JBQUE7RUFDQSwwQkFBQTtFQUNBLDZCQUFBO0VBQ0EsU0FBQTtBQVJKO0FBVUk7RUFDRSx3QkFBQTtFQUNBLHlCQUFBO0VBQ0Esb0JBQUE7RUFDQSw4QkFBQTtFQUNBLGFBQUE7RUFDQSx1QkFBQTtFQUNBLG1CQUFBO0FBUk47QUFXSTtFQUNFLGVBQUE7RUFDQSxnQkFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0Esb0JBQUE7RUFDQSxnQkFBQTtFQUNBLHdDQUFBO0VBQ0EsU0FBQTtBQVROO0FBWUk7RUFDRSxhQUFBO0FBVk47QUFhSTtFQUNFLGNDdkVXO0VEd0VYLDhCQUFBO0FBWE47QUFjSTtFQUNFLHdDQUFBO0VBQ0EsaUJBQUE7RUFDQSxrQkFBQTtBQVpOO0FBY007RUFDRSxjQ2hGUztFRGlGVCw2QkFBQTtBQVpSO0FBaUJNO0VBQ0Usa0JBQUE7QUFmUjtBQWtCTTtFQUNFLG1CQUFBO0FBaEJSO0FBV007RUFDRSxrQkFBQTtBQVRSO0FBWU07RUFDRSxtQkFBQTtBQVZSO0FBZU07RUFDRSxjQ2pHUztFRGtHVCw2QkFBQTtBQWJSO0FBZ0JNO0VBQ0UsbUJBQUE7QUFkUjtBQWlCTTtFQUNFLGtCQUFBO0FBZlI7QUFLTTtFQUNFLGNDakdTO0VEa0dULDZCQUFBO0FBSFI7QUFNTTtFQUNFLG1CQUFBO0FBSlI7QUFPTTtFQUNFLGtCQUFBO0FBTFI7QUFVRTtFQUNFLGdCQUFBO0VBQ0EsbUJBQUE7RUFDQSxpQkFBQTtFQUNBLGFBQUE7RUFDQSxtQkFBQTtFQUNBLHVCQUFBO0FBUko7QUFVSTtFQUNFLDBCQUFBO0FBUk5cIixcInNvdXJjZXNDb250ZW50XCI6W1wiXFxuQGltcG9ydCBcXFwiLi4vLi4vdmFyaWFibGVzXFxcIjtcXG5AaW1wb3J0IFxcXCIuLi8uLi9taXhpbnNcXFwiO1xcblxcbi5FbW9qaVJlYWN0aW9ucyB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgbWFyZ2luLXRvcDogMC4yNWVtO1xcbiAgZmxleC13cmFwOiB3cmFwO1xcblxcbiAgLS1lbW9qaS1zaXplOiBjYWxjKDEuMjVlbSAqIHZhcigtLWVtb2ppUmVhY3Rpb25zU2NhbGUsIDEpKTtcXG5cXG4gIC5lbW9qaS1yZWFjdGlvbi1jb250YWluZXIge1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcXG4gICAgbWFyZ2luLXRvcDogMC41ZW07XFxuICAgIG1hcmdpbi1yaWdodDogMC41ZW07XFxuXFxuICAgIC5lbW9qaS1yZWFjdGlvbi1wb3BvdmVyIHtcXG4gICAgICBwYWRkaW5nOiAwO1xcblxcbiAgICAgIC5lbW9qaS1yZWFjdGlvbi1jb3VudC1idXR0b24ge1xcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuKTtcXG4gICAgICAgIG1hcmdpbjogMDtcXG4gICAgICAgIGhlaWdodDogMTAwJTtcXG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XFxuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcXG4gICAgICAgIG1pbi13aWR0aDogMmVtO1xcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XFxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICAgICAgICBjb2xvcjogJGZhbGxiYWNrLS10ZXh0O1xcbiAgICAgICAgY29sb3I6IHZhcigtLWJ0blRleHQsICRmYWxsYmFjay0tdGV4dCk7XFxuXFxuICAgICAgICAmLi1waWNrZWQtcmVhY3Rpb24ge1xcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1hY2NlbnQsICRmYWxsYmFjay0tbGluayk7XFxuICAgICAgICAgIG1hcmdpbi1yaWdodDogLTFweDtcXG4gICAgICAgIH1cXG4gICAgICB9XFxuICAgIH1cXG4gIH1cXG5cXG4gIC5lbW9qaS1yZWFjdGlvbiB7XFxuICAgIHBhZGRpbmctbGVmdDogMC41ZW07XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcXG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XFxuICAgIG1hcmdpbjogMDtcXG5cXG4gICAgLnJlYWN0aW9uLWVtb2ppIHtcXG4gICAgICB3aWR0aDogdmFyKC0tZW1vamktc2l6ZSk7XFxuICAgICAgaGVpZ2h0OiB2YXIoLS1lbW9qaS1zaXplKTtcXG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuMjVlbTtcXG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0tZW1vamktc2l6ZSk7XFxuICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgICB9XFxuXFxuICAgIC5yZWFjdGlvbi1lbW9qaS1jb250ZW50IHtcXG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XFxuICAgICAgbWF4LWhlaWdodDogMTAwJTtcXG4gICAgICB3aWR0aDogYXV0bztcXG4gICAgICBoZWlnaHQ6IGF1dG87XFxuICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XFxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gICAgICBmb250LXNpemU6IGNhbGModmFyKC0tZW1vamktc2l6ZSkgKiAwLjgpO1xcbiAgICAgIG1hcmdpbjogMDtcXG4gICAgfVxcblxcbiAgICAmOmZvY3VzIHtcXG4gICAgICBvdXRsaW5lOiBub25lO1xcbiAgICB9XFxuXFxuICAgIC5zdmctaW5saW5lLS1mYSB7XFxuICAgICAgY29sb3I6ICRmYWxsYmFjay0tdGV4dDtcXG4gICAgICBjb2xvcjogdmFyKC0tYnRuVGV4dCwgJGZhbGxiYWNrLS10ZXh0KTtcXG4gICAgfVxcblxcbiAgICAmLi1waWNrZWQtcmVhY3Rpb24ge1xcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWFjY2VudCwgJGZhbGxiYWNrLS1saW5rKTtcXG4gICAgICBtYXJnaW4tbGVmdDogLTFweDsgLy8gb2Zmc2V0IHRoZSBib3JkZXIsIGNhbid0IHVzZSBpbnNldCBzaGFkb3dzIGVpdGhlclxcbiAgICAgIG1hcmdpbi1yaWdodDogLTFweDtcXG5cXG4gICAgICAuc3ZnLWlubGluZS0tZmEge1xcbiAgICAgICAgY29sb3I6ICRmYWxsYmFjay0tbGluaztcXG4gICAgICAgIGNvbG9yOiB2YXIoLS1hY2NlbnQsICRmYWxsYmFjay0tbGluayk7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgIEBpbmNsdWRlIHVuZm9jdXNlZC1zdHlsZSB7XFxuICAgICAgLmZvY3VzLW1hcmtlciB7XFxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XFxuICAgICAgfVxcblxcbiAgICAgIC5hY3RpdmUtbWFya2VyIHtcXG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgIEBpbmNsdWRlIGZvY3VzZWQtc3R5bGUge1xcbiAgICAgIC5zdmctaW5saW5lLS1mYSB7XFxuICAgICAgICBjb2xvcjogJGZhbGxiYWNrLS1saW5rO1xcbiAgICAgICAgY29sb3I6IHZhcigtLWFjY2VudCwgJGZhbGxiYWNrLS1saW5rKTtcXG4gICAgICB9XFxuXFxuICAgICAgLmZvY3VzLW1hcmtlciB7XFxuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xcbiAgICAgIH1cXG5cXG4gICAgICAuYWN0aXZlLW1hcmtlciB7XFxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxuXFxuICAuZW1vamktcmVhY3Rpb24tZXhwYW5kIHtcXG4gICAgcGFkZGluZzogMCAwLjVlbTtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVlbTtcXG4gICAgbWFyZ2luLXRvcDogMC41ZW07XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xcblxcbiAgICAmOmhvdmVyIHtcXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIiRtYWluLWNvbG9yOiAjZjU4ZDJjO1xcbiRtYWluLWJhY2tncm91bmQ6IHdoaXRlO1xcbiRkYXJrZW5lZC1iYWNrZ3JvdW5kOiB3aGl0ZXNtb2tlO1xcblxcbiRmYWxsYmFjay0tYmc6ICMxMjFhMjQ7XFxuJGZhbGxiYWNrLS1mZzogIzE4MjIzMDtcXG4kZmFsbGJhY2stLWZhaW50OiByZ2IoMTg1IDE4NSAxODYgLyA1MCUpO1xcbiRmYWxsYmFjay0tdGV4dDogI2I5YjliYTtcXG4kZmFsbGJhY2stLWxpbms6ICNkOGEwNzA7XFxuJGZhbGxiYWNrLS1pY29uOiAjNjY2O1xcbiRmYWxsYmFjay0tbGlnaHRCZzogcmdiKDIxIDMwIDQyKTtcXG4kZmFsbGJhY2stLWxpZ2h0VGV4dDogI2I5YjliYTtcXG4kZmFsbGJhY2stLWJvcmRlcjogIzIyMjtcXG4kZmFsbGJhY2stLWNSZWQ6ICNmMDA7XFxuJGZhbGxiYWNrLS1jQmx1ZTogIzAwOTVmZjtcXG4kZmFsbGJhY2stLWNHcmVlbjogIzBmYTAwZjtcXG4kZmFsbGJhY2stLWNPcmFuZ2U6IG9yYW5nZTtcXG5cXG4kZmFsbGJhY2stLWFsZXJ0RXJyb3I6IHJnYigyMTEgMTYgMjAgLyA1MCUpO1xcbiRmYWxsYmFjay0tYWxlcnRXYXJuaW5nOiByZ2IoMTExIDExMSAyMCAvIDUwJSk7XFxuXFxuJGZhbGxiYWNrLS1wYW5lbFJhZGl1czogMTBweDtcXG4kZmFsbGJhY2stLWNoZWNrYm94UmFkaXVzOiAycHg7XFxuJGZhbGxiYWNrLS1idG5SYWRpdXM6IDRweDtcXG4kZmFsbGJhY2stLWlucHV0UmFkaXVzOiA0cHg7XFxuJGZhbGxiYWNrLS10b29sdGlwUmFkaXVzOiA1cHg7XFxuJGZhbGxiYWNrLS1hdmF0YXJSYWRpdXM6IDRweDtcXG4kZmFsbGJhY2stLWF2YXRhckFsdFJhZGl1czogMTBweDtcXG4kZmFsbGJhY2stLWF0dGFjaG1lbnRSYWRpdXM6IDEwcHg7XFxuJGZhbGxiYWNrLS1jaGF0TWVzc2FnZVJhZGl1czogMTBweDtcXG5cXG4kZmFsbGJhY2stLWJ1dHRvblNoYWRvdzogMCAwIDJweCAwIHJnYigwIDAgMCAvIDEwMCUpLFxcbiAgMCAxcHggMCAwIHJnYigyNTUgMjU1IDI1NSAvIDIwJSkgaW5zZXQsXFxuICAwIC0xcHggMCAwIHJnYigwIDAgMCAvIDIwJSkgaW5zZXQ7XFxuXFxuJHN0YXR1cy1tYXJnaW46IDAuNzVlbTtcXG5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcbi8vIEV4cG9ydHNcbmV4cG9ydCBkZWZhdWx0IF9fX0NTU19MT0FERVJfRVhQT1JUX19fO1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/emoji_reactions/emoji_reactions.vue?vue&type=style&index=0&id=53a5501a&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/extra_buttons/extra_buttons.vue?vue&type=style&index=0&id=5e1a24f5&lang=scss":
/*!**********************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/extra_buttons/extra_buttons.vue?vue&type=style&index=0&id=5e1a24f5&lang=scss ***!
\**********************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".ExtraButtons .popover-trigger {\\n position: static;\\n padding: 10px;\\n margin: -10px;\\n}\\n.ExtraButtons .popover-trigger:hover .svg-inline--fa {\\n color: #b9b9ba;\\n color: var(--text, #b9b9ba);\\n}\\n.ExtraButtons .popover-trigger-button {\\n /* override of popover internal stuff */\\n width: auto;\\n}\\n.ExtraButtons .popover-trigger-button .focus-marker {\\n visibility: hidden;\\n}\\n.ExtraButtons .popover-trigger-button:focus:not(:focus-visible, :hover) .focus-marker {\\n visibility: hidden;\\n}\\n.ExtraButtons .popover-trigger-button:hover .focus-marker, .ExtraButtons .popover-trigger-button:focus .focus-marker {\\n visibility: visible;\\n}\\n.ExtraButtons .popover-trigger-button:focus-visible .focus-marker {\\n visibility: visible;\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/extra_buttons/extra_buttons.vue\",\"webpack://./src/_variables.scss\"],\"names\":[],\"mappings\":\"AAKE;EACE,gBAAA;EACA,aAAA;EACA,aAAA;AAJJ;AAMI;EACE,cCJW;EDKX,2BAAA;AAJN;AAQE;EACE,uCAAA;EACA,WAAA;AANJ;AASM;EACE,kBAAA;AAPR;AAMM;EACE,kBAAA;AAJR;AASM;EACE,mBAAA;AAPR;AAMM;EACE,mBAAA;AAJR\",\"sourcesContent\":[\"\\n@import \\\"../../variables\\\";\\n@import \\\"../../mixins\\\";\\n\\n.ExtraButtons {\\n .popover-trigger {\\n position: static;\\n padding: 10px;\\n margin: -10px;\\n\\n &:hover .svg-inline--fa {\\n color: $fallback--text;\\n color: var(--text, $fallback--text);\\n }\\n }\\n\\n .popover-trigger-button {\\n /* override of popover internal stuff */\\n width: auto;\\n\\n @include unfocused-style {\\n .focus-marker {\\n visibility: hidden;\\n }\\n }\\n\\n @include focused-style {\\n .focus-marker {\\n visibility: visible;\\n }\\n }\\n }\\n}\\n\",\"$main-color: #f58d2c;\\n$main-background: white;\\n$darkened-background: whitesmoke;\\n\\n$fallback--bg: #121a24;\\n$fallback--fg: #182230;\\n$fallback--faint: rgb(185 185 186 / 50%);\\n$fallback--text: #b9b9ba;\\n$fallback--link: #d8a070;\\n$fallback--icon: #666;\\n$fallback--lightBg: rgb(21 30 42);\\n$fallback--lightText: #b9b9ba;\\n$fallback--border: #222;\\n$fallback--cRed: #f00;\\n$fallback--cBlue: #0095ff;\\n$fallback--cGreen: #0fa00f;\\n$fallback--cOrange: orange;\\n\\n$fallback--alertError: rgb(211 16 20 / 50%);\\n$fallback--alertWarning: rgb(111 111 20 / 50%);\\n\\n$fallback--panelRadius: 10px;\\n$fallback--checkboxRadius: 2px;\\n$fallback--btnRadius: 4px;\\n$fallback--inputRadius: 4px;\\n$fallback--tooltipRadius: 5px;\\n$fallback--avatarRadius: 4px;\\n$fallback--avatarAltRadius: 10px;\\n$fallback--attachmentRadius: 10px;\\n$fallback--chatMessageRadius: 10px;\\n\\n$fallback--buttonShadow: 0 0 2px 0 rgb(0 0 0 / 100%),\\n 0 1px 0 0 rgb(255 255 255 / 20%) inset,\\n 0 -1px 0 0 rgb(0 0 0 / 20%) inset;\\n\\n$status-margin: 0.75em;\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2V4dHJhX2J1dHRvbnMvZXh0cmFfYnV0dG9ucy52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD01ZTFhMjRmNSZsYW5nPXNjc3MuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQTtBQUNnSDtBQUNqQjtBQUMvRiw4QkFBOEIsbUZBQTJCLENBQUMsNEZBQXFDO0FBQy9GO0FBQ0EsMEVBQTBFLHFCQUFxQixrQkFBa0Isa0JBQWtCLEdBQUcsd0RBQXdELG1CQUFtQixnQ0FBZ0MsR0FBRyx5Q0FBeUMsNERBQTRELEdBQUcsdURBQXVELHVCQUF1QixHQUFHLHlGQUF5Rix1QkFBdUIsR0FBRyx3SEFBd0gsd0JBQXdCLEdBQUcscUVBQXFFLHdCQUF3QixHQUFHLE9BQU8sbUpBQW1KLFdBQVcsVUFBVSxVQUFVLEtBQUssS0FBSyxVQUFVLFdBQVcsS0FBSyxLQUFLLFdBQVcsVUFBVSxLQUFLLEtBQUssV0FBVyxLQUFLLEtBQUssV0FBVyxLQUFLLEtBQUssV0FBVyxLQUFLLEtBQUssV0FBVyx1REFBdUQsMkJBQTJCLG1CQUFtQixzQkFBc0IsdUJBQXVCLG9CQUFvQixvQkFBb0IsaUNBQWlDLCtCQUErQiw0Q0FBNEMsT0FBTyxLQUFLLCtCQUErQixnRUFBZ0Usa0NBQWtDLHVCQUF1Qiw2QkFBNkIsU0FBUyxPQUFPLGdDQUFnQyx1QkFBdUIsOEJBQThCLFNBQVMsT0FBTyxLQUFLLEdBQUcsMEJBQTBCLDBCQUEwQixtQ0FBbUMsMkJBQTJCLHlCQUF5QiwyQ0FBMkMsMkJBQTJCLDJCQUEyQix3QkFBd0Isb0NBQW9DLGdDQUFnQywwQkFBMEIsd0JBQXdCLDRCQUE0Qiw2QkFBNkIsNkJBQTZCLGdEQUFnRCxpREFBaUQsaUNBQWlDLGlDQUFpQyw0QkFBNEIsOEJBQThCLGdDQUFnQywrQkFBK0IsbUNBQW1DLG9DQUFvQyxxQ0FBcUMsMElBQTBJLDJCQUEyQixxQkFBcUI7QUFDcHRGO0FBQ0EsaUVBQWUsdUJBQXVCLEVBQUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL2NvbXBvbmVudHMvZXh0cmFfYnV0dG9ucy9leHRyYV9idXR0b25zLnZ1ZT8wMDhiIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIEltcG9ydHNcbmltcG9ydCBfX19DU1NfTE9BREVSX0FQSV9TT1VSQ0VNQVBfSU1QT1JUX19fIGZyb20gXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvc291cmNlTWFwcy5qc1wiO1xuaW1wb3J0IF9fX0NTU19MT0FERVJfQVBJX0lNUE9SVF9fXyBmcm9tIFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvZGlzdC9ydW50aW1lL2FwaS5qc1wiO1xudmFyIF9fX0NTU19MT0FERVJfRVhQT1JUX19fID0gX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fKF9fX0NTU19MT0FERVJfQVBJX1NPVVJDRU1BUF9JTVBPUlRfX18pO1xuLy8gTW9kdWxlXG5fX19DU1NfTE9BREVSX0VYUE9SVF9fXy5wdXNoKFttb2R1bGUuaWQsIFwiLkV4dHJhQnV0dG9ucyAucG9wb3Zlci10cmlnZ2VyIHtcXG4gIHBvc2l0aW9uOiBzdGF0aWM7XFxuICBwYWRkaW5nOiAxMHB4O1xcbiAgbWFyZ2luOiAtMTBweDtcXG59XFxuLkV4dHJhQnV0dG9ucyAucG9wb3Zlci10cmlnZ2VyOmhvdmVyIC5zdmctaW5saW5lLS1mYSB7XFxuICBjb2xvcjogI2I5YjliYTtcXG4gIGNvbG9yOiB2YXIoLS10ZXh0LCAjYjliOWJhKTtcXG59XFxuLkV4dHJhQnV0dG9ucyAucG9wb3Zlci10cmlnZ2VyLWJ1dHRvbiB7XFxuICAvKiBvdmVycmlkZSBvZiBwb3BvdmVyIGludGVybmFsIHN0dWZmICovXFxuICB3aWR0aDogYXV0bztcXG59XFxuLkV4dHJhQnV0dG9ucyAucG9wb3Zlci10cmlnZ2VyLWJ1dHRvbiAuZm9jdXMtbWFya2VyIHtcXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcXG59XFxuLkV4dHJhQnV0dG9ucyAucG9wb3Zlci10cmlnZ2VyLWJ1dHRvbjpmb2N1czpub3QoOmZvY3VzLXZpc2libGUsIDpob3ZlcikgLmZvY3VzLW1hcmtlciB7XFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XFxufVxcbi5FeHRyYUJ1dHRvbnMgLnBvcG92ZXItdHJpZ2dlci1idXR0b246aG92ZXIgLmZvY3VzLW1hcmtlciwgLkV4dHJhQnV0dG9ucyAucG9wb3Zlci10cmlnZ2VyLWJ1dHRvbjpmb2N1cyAuZm9jdXMtbWFya2VyIHtcXG4gIHZpc2liaWxpdHk6IHZpc2libGU7XFxufVxcbi5FeHRyYUJ1dHRvbnMgLnBvcG92ZXItdHJpZ2dlci1idXR0b246Zm9jdXMtdmlzaWJsZSAuZm9jdXMtbWFya2VyIHtcXG4gIHZpc2liaWxpdHk6IHZpc2libGU7XFxufVwiLCBcIlwiLHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIndlYnBhY2s6Ly8uL3NyYy9jb21wb25lbnRzL2V4dHJhX2J1dHRvbnMvZXh0cmFfYnV0dG9ucy52dWVcIixcIndlYnBhY2s6Ly8uL3NyYy9fdmFyaWFibGVzLnNjc3NcIl0sXCJuYW1lc1wiOltdLFwibWFwcGluZ3NcIjpcIkFBS0U7RUFDRSxnQkFBQTtFQUNBLGFBQUE7RUFDQSxhQUFBO0FBSko7QUFNSTtFQUNFLGNDSlc7RURLWCwyQkFBQTtBQUpOO0FBUUU7RUFDRSx1Q0FBQTtFQUNBLFdBQUE7QUFOSjtBQVNNO0VBQ0Usa0JBQUE7QUFQUjtBQU1NO0VBQ0Usa0JBQUE7QUFKUjtBQVNNO0VBQ0UsbUJBQUE7QUFQUjtBQU1NO0VBQ0UsbUJBQUE7QUFKUlwiLFwic291cmNlc0NvbnRlbnRcIjpbXCJcXG5AaW1wb3J0IFxcXCIuLi8uLi92YXJpYWJsZXNcXFwiO1xcbkBpbXBvcnQgXFxcIi4uLy4uL21peGluc1xcXCI7XFxuXFxuLkV4dHJhQnV0dG9ucyB7XFxuICAucG9wb3Zlci10cmlnZ2VyIHtcXG4gICAgcG9zaXRpb246IHN0YXRpYztcXG4gICAgcGFkZGluZzogMTBweDtcXG4gICAgbWFyZ2luOiAtMTBweDtcXG5cXG4gICAgJjpob3ZlciAuc3ZnLWlubGluZS0tZmEge1xcbiAgICAgIGNvbG9yOiAkZmFsbGJhY2stLXRleHQ7XFxuICAgICAgY29sb3I6IHZhcigtLXRleHQsICRmYWxsYmFjay0tdGV4dCk7XFxuICAgIH1cXG4gIH1cXG5cXG4gIC5wb3BvdmVyLXRyaWdnZXItYnV0dG9uIHtcXG4gICAgLyogb3ZlcnJpZGUgb2YgcG9wb3ZlciBpbnRlcm5hbCBzdHVmZiAqL1xcbiAgICB3aWR0aDogYXV0bztcXG5cXG4gICAgQGluY2x1ZGUgdW5mb2N1c2VkLXN0eWxlIHtcXG4gICAgICAuZm9jdXMtbWFya2VyIHtcXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgQGluY2x1ZGUgZm9jdXNlZC1zdHlsZSB7XFxuICAgICAgLmZvY3VzLW1hcmtlciB7XFxuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIiRtYWluLWNvbG9yOiAjZjU4ZDJjO1xcbiRtYWluLWJhY2tncm91bmQ6IHdoaXRlO1xcbiRkYXJrZW5lZC1iYWNrZ3JvdW5kOiB3aGl0ZXNtb2tlO1xcblxcbiRmYWxsYmFjay0tYmc6ICMxMjFhMjQ7XFxuJGZhbGxiYWNrLS1mZzogIzE4MjIzMDtcXG4kZmFsbGJhY2stLWZhaW50OiByZ2IoMTg1IDE4NSAxODYgLyA1MCUpO1xcbiRmYWxsYmFjay0tdGV4dDogI2I5YjliYTtcXG4kZmFsbGJhY2stLWxpbms6ICNkOGEwNzA7XFxuJGZhbGxiYWNrLS1pY29uOiAjNjY2O1xcbiRmYWxsYmFjay0tbGlnaHRCZzogcmdiKDIxIDMwIDQyKTtcXG4kZmFsbGJhY2stLWxpZ2h0VGV4dDogI2I5YjliYTtcXG4kZmFsbGJhY2stLWJvcmRlcjogIzIyMjtcXG4kZmFsbGJhY2stLWNSZWQ6ICNmMDA7XFxuJGZhbGxiYWNrLS1jQmx1ZTogIzAwOTVmZjtcXG4kZmFsbGJhY2stLWNHcmVlbjogIzBmYTAwZjtcXG4kZmFsbGJhY2stLWNPcmFuZ2U6IG9yYW5nZTtcXG5cXG4kZmFsbGJhY2stLWFsZXJ0RXJyb3I6IHJnYigyMTEgMTYgMjAgLyA1MCUpO1xcbiRmYWxsYmFjay0tYWxlcnRXYXJuaW5nOiByZ2IoMTExIDExMSAyMCAvIDUwJSk7XFxuXFxuJGZhbGxiYWNrLS1wYW5lbFJhZGl1czogMTBweDtcXG4kZmFsbGJhY2stLWNoZWNrYm94UmFkaXVzOiAycHg7XFxuJGZhbGxiYWNrLS1idG5SYWRpdXM6IDRweDtcXG4kZmFsbGJhY2stLWlucHV0UmFkaXVzOiA0cHg7XFxuJGZhbGxiYWNrLS10b29sdGlwUmFkaXVzOiA1cHg7XFxuJGZhbGxiYWNrLS1hdmF0YXJSYWRpdXM6IDRweDtcXG4kZmFsbGJhY2stLWF2YXRhckFsdFJhZGl1czogMTBweDtcXG4kZmFsbGJhY2stLWF0dGFjaG1lbnRSYWRpdXM6IDEwcHg7XFxuJGZhbGxiYWNrLS1jaGF0TWVzc2FnZVJhZGl1czogMTBweDtcXG5cXG4kZmFsbGJhY2stLWJ1dHRvblNoYWRvdzogMCAwIDJweCAwIHJnYigwIDAgMCAvIDEwMCUpLFxcbiAgMCAxcHggMCAwIHJnYigyNTUgMjU1IDI1NSAvIDIwJSkgaW5zZXQsXFxuICAwIC0xcHggMCAwIHJnYigwIDAgMCAvIDIwJSkgaW5zZXQ7XFxuXFxuJHN0YXR1cy1tYXJnaW46IDAuNzVlbTtcXG5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcbi8vIEV4cG9ydHNcbmV4cG9ydCBkZWZhdWx0IF9fX0NTU19MT0FERVJfRVhQT1JUX19fO1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/extra_buttons/extra_buttons.vue?vue&type=style&index=0&id=5e1a24f5&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/favorite_button/favorite_button.vue?vue&type=style&index=0&id=2fb9a4fb&lang=scss":
/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/favorite_button/favorite_button.vue?vue&type=style&index=0&id=2fb9a4fb&lang=scss ***!
\**************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".FavoriteButton {\\n display: flex;\\n}\\n.FavoriteButton > :first-child {\\n padding: 10px;\\n margin: -10px -8px -10px -10px;\\n}\\n.FavoriteButton .action-counter {\\n pointer-events: none;\\n -webkit-user-select: none;\\n -moz-user-select: none;\\n user-select: none;\\n}\\n.FavoriteButton .interactive .svg-inline--fa {\\n animation-duration: 0.6s;\\n}\\n.FavoriteButton .interactive:hover .svg-inline--fa, .FavoriteButton .interactive.-favorited .svg-inline--fa {\\n color: orange;\\n color: var(--cOrange, orange);\\n}\\n.FavoriteButton .interactive .focus-marker {\\n visibility: hidden;\\n}\\n.FavoriteButton .interactive .active-marker {\\n visibility: visible;\\n}\\n.FavoriteButton .interactive:focus:not(:focus-visible, :hover) .focus-marker {\\n visibility: hidden;\\n}\\n.FavoriteButton .interactive:focus:not(:focus-visible, :hover) .active-marker {\\n visibility: visible;\\n}\\n.FavoriteButton .interactive:hover .focus-marker, .FavoriteButton .interactive:focus .focus-marker {\\n visibility: visible;\\n}\\n.FavoriteButton .interactive:hover .active-marker, .FavoriteButton .interactive:focus .active-marker {\\n visibility: hidden;\\n}\\n.FavoriteButton .interactive:focus-visible .focus-marker {\\n visibility: visible;\\n}\\n.FavoriteButton .interactive:focus-visible .active-marker {\\n visibility: hidden;\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/favorite_button/favorite_button.vue\",\"webpack://./src/_variables.scss\"],\"names\":[],\"mappings\":\"AAIA;EACE,aAAA;AAHF;AAKE;EACE,aAAA;EACA,8BAAA;AAHJ;AAME;EACE,oBAAA;EACA,yBAAA;KAAA,sBAAA;UAAA,iBAAA;AAJJ;AAQI;EACE,wBAAA;AANN;AASI;EAEE,aCRc;EDSd,6BAAA;AARN;AAYM;EACE,kBAAA;AAVR;AAaM;EACE,mBAAA;AAXR;AAMM;EACE,kBAAA;AAJR;AAOM;EACE,mBAAA;AALR;AAUM;EACE,mBAAA;AARR;AAWM;EACE,kBAAA;AATR;AAIM;EACE,mBAAA;AAFR;AAKM;EACE,kBAAA;AAHR\",\"sourcesContent\":[\"\\n@import \\\"../../variables\\\";\\n@import \\\"../../mixins\\\";\\n\\n.FavoriteButton {\\n display: flex;\\n\\n > :first-child {\\n padding: 10px;\\n margin: -10px -8px -10px -10px;\\n }\\n\\n .action-counter {\\n pointer-events: none;\\n user-select: none;\\n }\\n\\n .interactive {\\n .svg-inline--fa {\\n animation-duration: 0.6s;\\n }\\n\\n &:hover .svg-inline--fa,\\n &.-favorited .svg-inline--fa {\\n color: $fallback--cOrange;\\n color: var(--cOrange, $fallback--cOrange);\\n }\\n\\n @include unfocused-style {\\n .focus-marker {\\n visibility: hidden;\\n }\\n\\n .active-marker {\\n visibility: visible;\\n }\\n }\\n\\n @include focused-style {\\n .focus-marker {\\n visibility: visible;\\n }\\n\\n .active-marker {\\n visibility: hidden;\\n }\\n }\\n }\\n}\\n\",\"$main-color: #f58d2c;\\n$main-background: white;\\n$darkened-background: whitesmoke;\\n\\n$fallback--bg: #121a24;\\n$fallback--fg: #182230;\\n$fallback--faint: rgb(185 185 186 / 50%);\\n$fallback--text: #b9b9ba;\\n$fallback--link: #d8a070;\\n$fallback--icon: #666;\\n$fallback--lightBg: rgb(21 30 42);\\n$fallback--lightText: #b9b9ba;\\n$fallback--border: #222;\\n$fallback--cRed: #f00;\\n$fallback--cBlue: #0095ff;\\n$fallback--cGreen: #0fa00f;\\n$fallback--cOrange: orange;\\n\\n$fallback--alertError: rgb(211 16 20 / 50%);\\n$fallback--alertWarning: rgb(111 111 20 / 50%);\\n\\n$fallback--panelRadius: 10px;\\n$fallback--checkboxRadius: 2px;\\n$fallback--btnRadius: 4px;\\n$fallback--inputRadius: 4px;\\n$fallback--tooltipRadius: 5px;\\n$fallback--avatarRadius: 4px;\\n$fallback--avatarAltRadius: 10px;\\n$fallback--attachmentRadius: 10px;\\n$fallback--chatMessageRadius: 10px;\\n\\n$fallback--buttonShadow: 0 0 2px 0 rgb(0 0 0 / 100%),\\n 0 1px 0 0 rgb(255 255 255 / 20%) inset,\\n 0 -1px 0 0 rgb(0 0 0 / 20%) inset;\\n\\n$status-margin: 0.75em;\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2Zhdm9yaXRlX2J1dHRvbi9mYXZvcml0ZV9idXR0b24udnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9MmZiOWE0ZmImbGFuZz1zY3NzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7QUFDZ0g7QUFDakI7QUFDL0YsOEJBQThCLG1GQUEyQixDQUFDLDRGQUFxQztBQUMvRjtBQUNBLDJEQUEyRCxrQkFBa0IsR0FBRyxrQ0FBa0Msa0JBQWtCLG1DQUFtQyxHQUFHLG1DQUFtQyx5QkFBeUIsOEJBQThCLDhCQUE4Qiw4QkFBOEIsR0FBRyxnREFBZ0QsNkJBQTZCLEdBQUcsK0dBQStHLGtCQUFrQixrQ0FBa0MsR0FBRyw4Q0FBOEMsdUJBQXVCLEdBQUcsK0NBQStDLHdCQUF3QixHQUFHLGdGQUFnRix1QkFBdUIsR0FBRyxpRkFBaUYsd0JBQXdCLEdBQUcsc0dBQXNHLHdCQUF3QixHQUFHLHdHQUF3Ryx1QkFBdUIsR0FBRyw0REFBNEQsd0JBQXdCLEdBQUcsNkRBQTZELHVCQUF1QixHQUFHLE9BQU8sdUpBQXVKLFVBQVUsS0FBSyxLQUFLLFVBQVUsV0FBVyxLQUFLLEtBQUssV0FBVyxXQUFXLFdBQVcsV0FBVyxLQUFLLEtBQUssV0FBVyxLQUFLLEtBQUssVUFBVSxXQUFXLEtBQUssS0FBSyxXQUFXLEtBQUssS0FBSyxXQUFXLEtBQUssS0FBSyxXQUFXLEtBQUssS0FBSyxXQUFXLEtBQUssS0FBSyxXQUFXLEtBQUssS0FBSyxXQUFXLEtBQUssS0FBSyxXQUFXLEtBQUssS0FBSyxXQUFXLHVEQUF1RCwyQkFBMkIscUJBQXFCLGtCQUFrQixzQkFBc0Isb0JBQW9CLHFDQUFxQyxLQUFLLHVCQUF1QiwyQkFBMkIsd0JBQXdCLEtBQUssb0JBQW9CLHVCQUF1QixpQ0FBaUMsT0FBTyxvRUFBb0Usa0NBQWtDLGtEQUFrRCxPQUFPLGtDQUFrQyx1QkFBdUIsNkJBQTZCLFNBQVMsMEJBQTBCLDhCQUE4QixTQUFTLE9BQU8sZ0NBQWdDLHVCQUF1Qiw4QkFBOEIsU0FBUywwQkFBMEIsNkJBQTZCLFNBQVMsT0FBTyxLQUFLLEdBQUcsMEJBQTBCLDBCQUEwQixtQ0FBbUMsMkJBQTJCLHlCQUF5QiwyQ0FBMkMsMkJBQTJCLDJCQUEyQix3QkFBd0Isb0NBQW9DLGdDQUFnQywwQkFBMEIsd0JBQXdCLDRCQUE0Qiw2QkFBNkIsNkJBQTZCLGdEQUFnRCxpREFBaUQsaUNBQWlDLGlDQUFpQyw0QkFBNEIsOEJBQThCLGdDQUFnQywrQkFBK0IsbUNBQW1DLG9DQUFvQyxxQ0FBcUMsMElBQTBJLDJCQUEyQixxQkFBcUI7QUFDL3BIO0FBQ0EsaUVBQWUsdUJBQXVCLEVBQUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL2NvbXBvbmVudHMvZmF2b3JpdGVfYnV0dG9uL2Zhdm9yaXRlX2J1dHRvbi52dWU/YTIwNSJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBJbXBvcnRzXG5pbXBvcnQgX19fQ1NTX0xPQURFUl9BUElfU09VUkNFTUFQX0lNUE9SVF9fXyBmcm9tIFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvZGlzdC9ydW50aW1lL3NvdXJjZU1hcHMuanNcIjtcbmltcG9ydCBfX19DU1NfTE9BREVSX0FQSV9JTVBPUlRfX18gZnJvbSBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2Rpc3QvcnVudGltZS9hcGkuanNcIjtcbnZhciBfX19DU1NfTE9BREVSX0VYUE9SVF9fXyA9IF9fX0NTU19MT0FERVJfQVBJX0lNUE9SVF9fXyhfX19DU1NfTE9BREVSX0FQSV9TT1VSQ0VNQVBfSU1QT1JUX19fKTtcbi8vIE1vZHVsZVxuX19fQ1NTX0xPQURFUl9FWFBPUlRfX18ucHVzaChbbW9kdWxlLmlkLCBcIi5GYXZvcml0ZUJ1dHRvbiB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbn1cXG4uRmF2b3JpdGVCdXR0b24gPiA6Zmlyc3QtY2hpbGQge1xcbiAgcGFkZGluZzogMTBweDtcXG4gIG1hcmdpbjogLTEwcHggLThweCAtMTBweCAtMTBweDtcXG59XFxuLkZhdm9yaXRlQnV0dG9uIC5hY3Rpb24tY291bnRlciB7XFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XFxuICAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xcbiAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcXG59XFxuLkZhdm9yaXRlQnV0dG9uIC5pbnRlcmFjdGl2ZSAuc3ZnLWlubGluZS0tZmEge1xcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjZzO1xcbn1cXG4uRmF2b3JpdGVCdXR0b24gLmludGVyYWN0aXZlOmhvdmVyIC5zdmctaW5saW5lLS1mYSwgLkZhdm9yaXRlQnV0dG9uIC5pbnRlcmFjdGl2ZS4tZmF2b3JpdGVkIC5zdmctaW5saW5lLS1mYSB7XFxuICBjb2xvcjogb3JhbmdlO1xcbiAgY29sb3I6IHZhcigtLWNPcmFuZ2UsIG9yYW5nZSk7XFxufVxcbi5GYXZvcml0ZUJ1dHRvbiAuaW50ZXJhY3RpdmUgLmZvY3VzLW1hcmtlciB7XFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XFxufVxcbi5GYXZvcml0ZUJ1dHRvbiAuaW50ZXJhY3RpdmUgLmFjdGl2ZS1tYXJrZXIge1xcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcXG59XFxuLkZhdm9yaXRlQnV0dG9uIC5pbnRlcmFjdGl2ZTpmb2N1czpub3QoOmZvY3VzLXZpc2libGUsIDpob3ZlcikgLmZvY3VzLW1hcmtlciB7XFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XFxufVxcbi5GYXZvcml0ZUJ1dHRvbiAuaW50ZXJhY3RpdmU6Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlLCA6aG92ZXIpIC5hY3RpdmUtbWFya2VyIHtcXG4gIHZpc2liaWxpdHk6IHZpc2libGU7XFxufVxcbi5GYXZvcml0ZUJ1dHRvbiAuaW50ZXJhY3RpdmU6aG92ZXIgLmZvY3VzLW1hcmtlciwgLkZhdm9yaXRlQnV0dG9uIC5pbnRlcmFjdGl2ZTpmb2N1cyAuZm9jdXMtbWFya2VyIHtcXG4gIHZpc2liaWxpdHk6IHZpc2libGU7XFxufVxcbi5GYXZvcml0ZUJ1dHRvbiAuaW50ZXJhY3RpdmU6aG92ZXIgLmFjdGl2ZS1tYXJrZXIsIC5GYXZvcml0ZUJ1dHRvbiAuaW50ZXJhY3RpdmU6Zm9jdXMgLmFjdGl2ZS1tYXJrZXIge1xcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xcbn1cXG4uRmF2b3JpdGVCdXR0b24gLmludGVyYWN0aXZlOmZvY3VzLXZpc2libGUgLmZvY3VzLW1hcmtlciB7XFxuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xcbn1cXG4uRmF2b3JpdGVCdXR0b24gLmludGVyYWN0aXZlOmZvY3VzLXZpc2libGUgLmFjdGl2ZS1tYXJrZXIge1xcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xcbn1cIiwgXCJcIix7XCJ2ZXJzaW9uXCI6MyxcInNvdXJjZXNcIjpbXCJ3ZWJwYWNrOi8vLi9zcmMvY29tcG9uZW50cy9mYXZvcml0ZV9idXR0b24vZmF2b3JpdGVfYnV0dG9uLnZ1ZVwiLFwid2VicGFjazovLy4vc3JjL192YXJpYWJsZXMuc2Nzc1wiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiQUFJQTtFQUNFLGFBQUE7QUFIRjtBQUtFO0VBQ0UsYUFBQTtFQUNBLDhCQUFBO0FBSEo7QUFNRTtFQUNFLG9CQUFBO0VBQ0EseUJBQUE7S0FBQSxzQkFBQTtVQUFBLGlCQUFBO0FBSko7QUFRSTtFQUNFLHdCQUFBO0FBTk47QUFTSTtFQUVFLGFDUmM7RURTZCw2QkFBQTtBQVJOO0FBWU07RUFDRSxrQkFBQTtBQVZSO0FBYU07RUFDRSxtQkFBQTtBQVhSO0FBTU07RUFDRSxrQkFBQTtBQUpSO0FBT007RUFDRSxtQkFBQTtBQUxSO0FBVU07RUFDRSxtQkFBQTtBQVJSO0FBV007RUFDRSxrQkFBQTtBQVRSO0FBSU07RUFDRSxtQkFBQTtBQUZSO0FBS007RUFDRSxrQkFBQTtBQUhSXCIsXCJzb3VyY2VzQ29udGVudFwiOltcIlxcbkBpbXBvcnQgXFxcIi4uLy4uL3ZhcmlhYmxlc1xcXCI7XFxuQGltcG9ydCBcXFwiLi4vLi4vbWl4aW5zXFxcIjtcXG5cXG4uRmF2b3JpdGVCdXR0b24ge1xcbiAgZGlzcGxheTogZmxleDtcXG5cXG4gID4gOmZpcnN0LWNoaWxkIHtcXG4gICAgcGFkZGluZzogMTBweDtcXG4gICAgbWFyZ2luOiAtMTBweCAtOHB4IC0xMHB4IC0xMHB4O1xcbiAgfVxcblxcbiAgLmFjdGlvbi1jb3VudGVyIHtcXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxuICAgIHVzZXItc2VsZWN0OiBub25lO1xcbiAgfVxcblxcbiAgLmludGVyYWN0aXZlIHtcXG4gICAgLnN2Zy1pbmxpbmUtLWZhIHtcXG4gICAgICBhbmltYXRpb24tZHVyYXRpb246IDAuNnM7XFxuICAgIH1cXG5cXG4gICAgJjpob3ZlciAuc3ZnLWlubGluZS0tZmEsXFxuICAgICYuLWZhdm9yaXRlZCAuc3ZnLWlubGluZS0tZmEge1xcbiAgICAgIGNvbG9yOiAkZmFsbGJhY2stLWNPcmFuZ2U7XFxuICAgICAgY29sb3I6IHZhcigtLWNPcmFuZ2UsICRmYWxsYmFjay0tY09yYW5nZSk7XFxuICAgIH1cXG5cXG4gICAgQGluY2x1ZGUgdW5mb2N1c2VkLXN0eWxlIHtcXG4gICAgICAuZm9jdXMtbWFya2VyIHtcXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcXG4gICAgICB9XFxuXFxuICAgICAgLmFjdGl2ZS1tYXJrZXIge1xcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgQGluY2x1ZGUgZm9jdXNlZC1zdHlsZSB7XFxuICAgICAgLmZvY3VzLW1hcmtlciB7XFxuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xcbiAgICAgIH1cXG5cXG4gICAgICAuYWN0aXZlLW1hcmtlciB7XFxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxufVxcblwiLFwiJG1haW4tY29sb3I6ICNmNThkMmM7XFxuJG1haW4tYmFja2dyb3VuZDogd2hpdGU7XFxuJGRhcmtlbmVkLWJhY2tncm91bmQ6IHdoaXRlc21va2U7XFxuXFxuJGZhbGxiYWNrLS1iZzogIzEyMWEyNDtcXG4kZmFsbGJhY2stLWZnOiAjMTgyMjMwO1xcbiRmYWxsYmFjay0tZmFpbnQ6IHJnYigxODUgMTg1IDE4NiAvIDUwJSk7XFxuJGZhbGxiYWNrLS10ZXh0OiAjYjliOWJhO1xcbiRmYWxsYmFjay0tbGluazogI2Q4YTA3MDtcXG4kZmFsbGJhY2stLWljb246ICM2NjY7XFxuJGZhbGxiYWNrLS1saWdodEJnOiByZ2IoMjEgMzAgNDIpO1xcbiRmYWxsYmFjay0tbGlnaHRUZXh0OiAjYjliOWJhO1xcbiRmYWxsYmFjay0tYm9yZGVyOiAjMjIyO1xcbiRmYWxsYmFjay0tY1JlZDogI2YwMDtcXG4kZmFsbGJhY2stLWNCbHVlOiAjMDA5NWZmO1xcbiRmYWxsYmFjay0tY0dyZWVuOiAjMGZhMDBmO1xcbiRmYWxsYmFjay0tY09yYW5nZTogb3JhbmdlO1xcblxcbiRmYWxsYmFjay0tYWxlcnRFcnJvcjogcmdiKDIxMSAxNiAyMCAvIDUwJSk7XFxuJGZhbGxiYWNrLS1hbGVydFdhcm5pbmc6IHJnYigxMTEgMTExIDIwIC8gNTAlKTtcXG5cXG4kZmFsbGJhY2stLXBhbmVsUmFkaXVzOiAxMHB4O1xcbiRmYWxsYmFjay0tY2hlY2tib3hSYWRpdXM6IDJweDtcXG4kZmFsbGJhY2stLWJ0blJhZGl1czogNHB4O1xcbiRmYWxsYmFjay0taW5wdXRSYWRpdXM6IDRweDtcXG4kZmFsbGJhY2stLXRvb2x0aXBSYWRpdXM6IDVweDtcXG4kZmFsbGJhY2stLWF2YXRhclJhZGl1czogNHB4O1xcbiRmYWxsYmFjay0tYXZhdGFyQWx0UmFkaXVzOiAxMHB4O1xcbiRmYWxsYmFjay0tYXR0YWNobWVudFJhZGl1czogMTBweDtcXG4kZmFsbGJhY2stLWNoYXRNZXNzYWdlUmFkaXVzOiAxMHB4O1xcblxcbiRmYWxsYmFjay0tYnV0dG9uU2hhZG93OiAwIDAgMnB4IDAgcmdiKDAgMCAwIC8gMTAwJSksXFxuICAwIDFweCAwIDAgcmdiKDI1NSAyNTUgMjU1IC8gMjAlKSBpbnNldCxcXG4gIDAgLTFweCAwIDAgcmdiKDAgMCAwIC8gMjAlKSBpbnNldDtcXG5cXG4kc3RhdHVzLW1hcmdpbjogMC43NWVtO1xcblwiXSxcInNvdXJjZVJvb3RcIjpcIlwifV0pO1xuLy8gRXhwb3J0c1xuZXhwb3J0IGRlZmF1bHQgX19fQ1NTX0xPQURFUl9FWFBPUlRfX187XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/favorite_button/favorite_button.vue?vue&type=style&index=0&id=2fb9a4fb&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/features_panel/features_panel.vue?vue&type=style&index=0&id=1f2c924f&lang=scss":
/*!************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/features_panel/features_panel.vue?vue&type=style&index=0&id=1f2c924f&lang=scss ***!
\************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".features-panel li {\\n line-height: 24px;\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/features_panel/features_panel.vue\"],\"names\":[],\"mappings\":\"AACE;EACE,iBAAA;AAAJ\",\"sourcesContent\":[\"\\n .features-panel li {\\n line-height: 24px;\\n }\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2ZlYXR1cmVzX3BhbmVsL2ZlYXR1cmVzX3BhbmVsLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTFmMmM5MjRmJmxhbmc9c2Nzcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBO0FBQ2dIO0FBQ2pCO0FBQy9GLDhCQUE4QixtRkFBMkIsQ0FBQyw0RkFBcUM7QUFDL0Y7QUFDQSw4REFBOEQsc0JBQXNCLEdBQUcsT0FBTyxtSEFBbUgsV0FBVyxpREFBaUQsd0JBQXdCLEtBQUsscUJBQXFCO0FBQy9UO0FBQ0EsaUVBQWUsdUJBQXVCLEVBQUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL2NvbXBvbmVudHMvZmVhdHVyZXNfcGFuZWwvZmVhdHVyZXNfcGFuZWwudnVlPzM3MjciXSwic291cmNlc0NvbnRlbnQiOlsiLy8gSW1wb3J0c1xuaW1wb3J0IF9fX0NTU19MT0FERVJfQVBJX1NPVVJDRU1BUF9JTVBPUlRfX18gZnJvbSBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2Rpc3QvcnVudGltZS9zb3VyY2VNYXBzLmpzXCI7XG5pbXBvcnQgX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fIGZyb20gXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvYXBpLmpzXCI7XG52YXIgX19fQ1NTX0xPQURFUl9FWFBPUlRfX18gPSBfX19DU1NfTE9BREVSX0FQSV9JTVBPUlRfX18oX19fQ1NTX0xPQURFUl9BUElfU09VUkNFTUFQX0lNUE9SVF9fXyk7XG4vLyBNb2R1bGVcbl9fX0NTU19MT0FERVJfRVhQT1JUX19fLnB1c2goW21vZHVsZS5pZCwgXCIuZmVhdHVyZXMtcGFuZWwgbGkge1xcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XFxufVwiLCBcIlwiLHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIndlYnBhY2s6Ly8uL3NyYy9jb21wb25lbnRzL2ZlYXR1cmVzX3BhbmVsL2ZlYXR1cmVzX3BhbmVsLnZ1ZVwiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiQUFDRTtFQUNFLGlCQUFBO0FBQUpcIixcInNvdXJjZXNDb250ZW50XCI6W1wiXFxuICAuZmVhdHVyZXMtcGFuZWwgbGkge1xcbiAgICBsaW5lLWhlaWdodDogMjRweDtcXG4gIH1cXG5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcbi8vIEV4cG9ydHNcbmV4cG9ydCBkZWZhdWx0IF9fX0NTU19MT0FERVJfRVhQT1JUX19fO1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/features_panel/features_panel.vue?vue&type=style&index=0&id=1f2c924f&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/flash/flash.vue?vue&type=style&index=0&id=2b1f86b1&lang=scss":
/*!******************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/flash/flash.vue?vue&type=style&index=0&id=2b1f86b1&lang=scss ***!
\******************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".Flash {\\n display: inline-block;\\n width: 100%;\\n height: 100%;\\n position: relative;\\n}\\n.Flash .player {\\n height: 100%;\\n width: 100%;\\n}\\n.Flash .placeholder {\\n height: 100%;\\n width: 100%;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n background: var(--bg);\\n color: var(--link);\\n}\\n.Flash .hider {\\n top: 0;\\n}\\n.Flash .label {\\n text-align: center;\\n flex: 1 1 0;\\n line-height: 1.2;\\n white-space: normal;\\n word-wrap: normal;\\n}\\n.Flash .hidden {\\n display: none;\\n visibility: \\\"hidden\\\";\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/flash/flash.vue\"],\"names\":[],\"mappings\":\"AAGA;EACE,qBAAA;EACA,WAAA;EACA,YAAA;EACA,kBAAA;AAFF;AAIE;EACE,YAAA;EACA,WAAA;AAFJ;AAKE;EACE,YAAA;EACA,WAAA;EACA,aAAA;EACA,mBAAA;EACA,uBAAA;EACA,qBAAA;EACA,kBAAA;AAHJ;AAME;EACE,MAAA;AAJJ;AAOE;EACE,kBAAA;EACA,WAAA;EACA,gBAAA;EACA,mBAAA;EACA,iBAAA;AALJ;AAQE;EACE,aAAA;EACA,oBAAA;AANJ\",\"sourcesContent\":[\"\\n@import \\\"../../variables\\\";\\n\\n.Flash {\\n display: inline-block;\\n width: 100%;\\n height: 100%;\\n position: relative;\\n\\n .player {\\n height: 100%;\\n width: 100%;\\n }\\n\\n .placeholder {\\n height: 100%;\\n width: 100%;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n background: var(--bg);\\n color: var(--link);\\n }\\n\\n .hider {\\n top: 0;\\n }\\n\\n .label {\\n text-align: center;\\n flex: 1 1 0;\\n line-height: 1.2;\\n white-space: normal;\\n word-wrap: normal;\\n }\\n\\n .hidden {\\n display: none;\\n visibility: \\\"hidden\\\";\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2ZsYXNoL2ZsYXNoLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTJiMWY4NmIxJmxhbmc9c2Nzcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBO0FBQ2dIO0FBQ2pCO0FBQy9GLDhCQUE4QixtRkFBMkIsQ0FBQyw0RkFBcUM7QUFDL0Y7QUFDQSxrREFBa0QsMEJBQTBCLGdCQUFnQixpQkFBaUIsdUJBQXVCLEdBQUcsa0JBQWtCLGlCQUFpQixnQkFBZ0IsR0FBRyx1QkFBdUIsaUJBQWlCLGdCQUFnQixrQkFBa0Isd0JBQXdCLDRCQUE0QiwwQkFBMEIsdUJBQXVCLEdBQUcsaUJBQWlCLFdBQVcsR0FBRyxpQkFBaUIsdUJBQXVCLGdCQUFnQixxQkFBcUIsd0JBQXdCLHNCQUFzQixHQUFHLGtCQUFrQixrQkFBa0IsMkJBQTJCLEdBQUcsT0FBTyxpR0FBaUcsV0FBVyxVQUFVLFVBQVUsV0FBVyxLQUFLLEtBQUssVUFBVSxVQUFVLEtBQUssS0FBSyxVQUFVLFVBQVUsVUFBVSxXQUFXLFdBQVcsV0FBVyxXQUFXLEtBQUssS0FBSyxVQUFVLEtBQUssS0FBSyxXQUFXLFVBQVUsV0FBVyxXQUFXLFdBQVcsS0FBSyxLQUFLLFVBQVUsV0FBVyx1REFBdUQsWUFBWSwwQkFBMEIsZ0JBQWdCLGlCQUFpQix1QkFBdUIsZUFBZSxtQkFBbUIsa0JBQWtCLEtBQUssb0JBQW9CLG1CQUFtQixrQkFBa0Isb0JBQW9CLDBCQUEwQiw4QkFBOEIsNEJBQTRCLHlCQUF5QixLQUFLLGNBQWMsYUFBYSxLQUFLLGNBQWMseUJBQXlCLGtCQUFrQix1QkFBdUIsMEJBQTBCLHdCQUF3QixLQUFLLGVBQWUsb0JBQW9CLDZCQUE2QixLQUFLLEdBQUcscUJBQXFCO0FBQ3RsRDtBQUNBLGlFQUFlLHVCQUF1QixFQUFDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9jb21wb25lbnRzL2ZsYXNoL2ZsYXNoLnZ1ZT9mNTFiIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIEltcG9ydHNcbmltcG9ydCBfX19DU1NfTE9BREVSX0FQSV9TT1VSQ0VNQVBfSU1QT1JUX19fIGZyb20gXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvc291cmNlTWFwcy5qc1wiO1xuaW1wb3J0IF9fX0NTU19MT0FERVJfQVBJX0lNUE9SVF9fXyBmcm9tIFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvZGlzdC9ydW50aW1lL2FwaS5qc1wiO1xudmFyIF9fX0NTU19MT0FERVJfRVhQT1JUX19fID0gX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fKF9fX0NTU19MT0FERVJfQVBJX1NPVVJDRU1BUF9JTVBPUlRfX18pO1xuLy8gTW9kdWxlXG5fX19DU1NfTE9BREVSX0VYUE9SVF9fXy5wdXNoKFttb2R1bGUuaWQsIFwiLkZsYXNoIHtcXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gIHdpZHRoOiAxMDAlO1xcbiAgaGVpZ2h0OiAxMDAlO1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbn1cXG4uRmxhc2ggLnBsYXllciB7XFxuICBoZWlnaHQ6IDEwMCU7XFxuICB3aWR0aDogMTAwJTtcXG59XFxuLkZsYXNoIC5wbGFjZWhvbGRlciB7XFxuICBoZWlnaHQ6IDEwMCU7XFxuICB3aWR0aDogMTAwJTtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XFxuICBiYWNrZ3JvdW5kOiB2YXIoLS1iZyk7XFxuICBjb2xvcjogdmFyKC0tbGluayk7XFxufVxcbi5GbGFzaCAuaGlkZXIge1xcbiAgdG9wOiAwO1xcbn1cXG4uRmxhc2ggLmxhYmVsIHtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG4gIGZsZXg6IDEgMSAwO1xcbiAgbGluZS1oZWlnaHQ6IDEuMjtcXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XFxuICB3b3JkLXdyYXA6IG5vcm1hbDtcXG59XFxuLkZsYXNoIC5oaWRkZW4ge1xcbiAgZGlzcGxheTogbm9uZTtcXG4gIHZpc2liaWxpdHk6IFxcXCJoaWRkZW5cXFwiO1xcbn1cIiwgXCJcIix7XCJ2ZXJzaW9uXCI6MyxcInNvdXJjZXNcIjpbXCJ3ZWJwYWNrOi8vLi9zcmMvY29tcG9uZW50cy9mbGFzaC9mbGFzaC52dWVcIl0sXCJuYW1lc1wiOltdLFwibWFwcGluZ3NcIjpcIkFBR0E7RUFDRSxxQkFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0Esa0JBQUE7QUFGRjtBQUlFO0VBQ0UsWUFBQTtFQUNBLFdBQUE7QUFGSjtBQUtFO0VBQ0UsWUFBQTtFQUNBLFdBQUE7RUFDQSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSx1QkFBQTtFQUNBLHFCQUFBO0VBQ0Esa0JBQUE7QUFISjtBQU1FO0VBQ0UsTUFBQTtBQUpKO0FBT0U7RUFDRSxrQkFBQTtFQUNBLFdBQUE7RUFDQSxnQkFBQTtFQUNBLG1CQUFBO0VBQ0EsaUJBQUE7QUFMSjtBQVFFO0VBQ0UsYUFBQTtFQUNBLG9CQUFBO0FBTkpcIixcInNvdXJjZXNDb250ZW50XCI6W1wiXFxuQGltcG9ydCBcXFwiLi4vLi4vdmFyaWFibGVzXFxcIjtcXG5cXG4uRmxhc2gge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgd2lkdGg6IDEwMCU7XFxuICBoZWlnaHQ6IDEwMCU7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuXFxuICAucGxheWVyIHtcXG4gICAgaGVpZ2h0OiAxMDAlO1xcbiAgICB3aWR0aDogMTAwJTtcXG4gIH1cXG5cXG4gIC5wbGFjZWhvbGRlciB7XFxuICAgIGhlaWdodDogMTAwJTtcXG4gICAgd2lkdGg6IDEwMCU7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZyk7XFxuICAgIGNvbG9yOiB2YXIoLS1saW5rKTtcXG4gIH1cXG5cXG4gIC5oaWRlciB7XFxuICAgIHRvcDogMDtcXG4gIH1cXG5cXG4gIC5sYWJlbCB7XFxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcXG4gICAgZmxleDogMSAxIDA7XFxuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XFxuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XFxuICAgIHdvcmQtd3JhcDogbm9ybWFsO1xcbiAgfVxcblxcbiAgLmhpZGRlbiB7XFxuICAgIGRpc3BsYXk6IG5vbmU7XFxuICAgIHZpc2liaWxpdHk6IFxcXCJoaWRkZW5cXFwiO1xcbiAgfVxcbn1cXG5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcbi8vIEV4cG9ydHNcbmV4cG9ydCBkZWZhdWx0IF9fX0NTU19MT0FERVJfRVhQT1JUX19fO1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/flash/flash.vue?vue&type=style&index=0&id=2b1f86b1&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/follow_card/follow_card.vue?vue&type=style&index=0&id=0b374e66&lang=scss":
/*!******************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/follow_card/follow_card.vue?vue&type=style&index=0&id=0b374e66&lang=scss ***!
\******************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".follow-card-content-container {\\n flex-shrink: 0;\\n display: flex;\\n flex-flow: row wrap;\\n justify-content: space-between;\\n line-height: 1.5em;\\n}\\n.follow-card-button {\\n margin-top: 0.5em;\\n padding: 0 1.5em;\\n margin-left: 1em;\\n}\\n.follow-card-follow-button {\\n margin-top: 0.5em;\\n margin-left: auto;\\n width: 10em;\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/follow_card/follow_card.vue\"],\"names\":[],\"mappings\":\"AAEE;EACE,cAAA;EACA,aAAA;EACA,mBAAA;EACA,8BAAA;EACA,kBAAA;AADJ;AAIE;EACE,iBAAA;EACA,gBAAA;EACA,gBAAA;AAFJ;AAKE;EACE,iBAAA;EACA,iBAAA;EACA,WAAA;AAHJ\",\"sourcesContent\":[\"\\n.follow-card {\\n &-content-container {\\n flex-shrink: 0;\\n display: flex;\\n flex-flow: row wrap;\\n justify-content: space-between;\\n line-height: 1.5em;\\n }\\n\\n &-button {\\n margin-top: 0.5em;\\n padding: 0 1.5em;\\n margin-left: 1em;\\n }\\n\\n &-follow-button {\\n margin-top: 0.5em;\\n margin-left: auto;\\n width: 10em;\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2ZvbGxvd19jYXJkL2ZvbGxvd19jYXJkLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTBiMzc0ZTY2Jmxhbmc9c2Nzcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBO0FBQ2dIO0FBQ2pCO0FBQy9GLDhCQUE4QixtRkFBMkIsQ0FBQyw0RkFBcUM7QUFDL0Y7QUFDQSwwRUFBMEUsbUJBQW1CLGtCQUFrQix3QkFBd0IsbUNBQW1DLHVCQUF1QixHQUFHLHVCQUF1QixzQkFBc0IscUJBQXFCLHFCQUFxQixHQUFHLDhCQUE4QixzQkFBc0Isc0JBQXNCLGdCQUFnQixHQUFHLE9BQU8sNkdBQTZHLFVBQVUsVUFBVSxXQUFXLFdBQVcsV0FBVyxLQUFLLEtBQUssV0FBVyxXQUFXLFdBQVcsS0FBSyxLQUFLLFdBQVcsV0FBVyxVQUFVLHlDQUF5Qyx5QkFBeUIscUJBQXFCLG9CQUFvQiwwQkFBMEIscUNBQXFDLHlCQUF5QixLQUFLLGdCQUFnQix3QkFBd0IsdUJBQXVCLHVCQUF1QixLQUFLLHVCQUF1Qix3QkFBd0Isd0JBQXdCLGtCQUFrQixLQUFLLEdBQUcscUJBQXFCO0FBQ2xoQztBQUNBLGlFQUFlLHVCQUF1QixFQUFDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9jb21wb25lbnRzL2ZvbGxvd19jYXJkL2ZvbGxvd19jYXJkLnZ1ZT84OWU0Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIEltcG9ydHNcbmltcG9ydCBfX19DU1NfTE9BREVSX0FQSV9TT1VSQ0VNQVBfSU1QT1JUX19fIGZyb20gXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvc291cmNlTWFwcy5qc1wiO1xuaW1wb3J0IF9fX0NTU19MT0FERVJfQVBJX0lNUE9SVF9fXyBmcm9tIFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvZGlzdC9ydW50aW1lL2FwaS5qc1wiO1xudmFyIF9fX0NTU19MT0FERVJfRVhQT1JUX19fID0gX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fKF9fX0NTU19MT0FERVJfQVBJX1NPVVJDRU1BUF9JTVBPUlRfX18pO1xuLy8gTW9kdWxlXG5fX19DU1NfTE9BREVSX0VYUE9SVF9fXy5wdXNoKFttb2R1bGUuaWQsIFwiLmZvbGxvdy1jYXJkLWNvbnRlbnQtY29udGFpbmVyIHtcXG4gIGZsZXgtc2hyaW5rOiAwO1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XFxuICBsaW5lLWhlaWdodDogMS41ZW07XFxufVxcbi5mb2xsb3ctY2FyZC1idXR0b24ge1xcbiAgbWFyZ2luLXRvcDogMC41ZW07XFxuICBwYWRkaW5nOiAwIDEuNWVtO1xcbiAgbWFyZ2luLWxlZnQ6IDFlbTtcXG59XFxuLmZvbGxvdy1jYXJkLWZvbGxvdy1idXR0b24ge1xcbiAgbWFyZ2luLXRvcDogMC41ZW07XFxuICBtYXJnaW4tbGVmdDogYXV0bztcXG4gIHdpZHRoOiAxMGVtO1xcbn1cIiwgXCJcIix7XCJ2ZXJzaW9uXCI6MyxcInNvdXJjZXNcIjpbXCJ3ZWJwYWNrOi8vLi9zcmMvY29tcG9uZW50cy9mb2xsb3dfY2FyZC9mb2xsb3dfY2FyZC52dWVcIl0sXCJuYW1lc1wiOltdLFwibWFwcGluZ3NcIjpcIkFBRUU7RUFDRSxjQUFBO0VBQ0EsYUFBQTtFQUNBLG1CQUFBO0VBQ0EsOEJBQUE7RUFDQSxrQkFBQTtBQURKO0FBSUU7RUFDRSxpQkFBQTtFQUNBLGdCQUFBO0VBQ0EsZ0JBQUE7QUFGSjtBQUtFO0VBQ0UsaUJBQUE7RUFDQSxpQkFBQTtFQUNBLFdBQUE7QUFISlwiLFwic291cmNlc0NvbnRlbnRcIjpbXCJcXG4uZm9sbG93LWNhcmQge1xcbiAgJi1jb250ZW50LWNvbnRhaW5lciB7XFxuICAgIGZsZXgtc2hyaW5rOiAwO1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XFxuICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcXG4gIH1cXG5cXG4gICYtYnV0dG9uIHtcXG4gICAgbWFyZ2luLXRvcDogMC41ZW07XFxuICAgIHBhZGRpbmc6IDAgMS41ZW07XFxuICAgIG1hcmdpbi1sZWZ0OiAxZW07XFxuICB9XFxuXFxuICAmLWZvbGxvdy1idXR0b24ge1xcbiAgICBtYXJnaW4tdG9wOiAwLjVlbTtcXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XFxuICAgIHdpZHRoOiAxMGVtO1xcbiAgfVxcbn1cXG5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcbi8vIEV4cG9ydHNcbmV4cG9ydCBkZWZhdWx0IF9fX0NTU19MT0FERVJfRVhQT1JUX19fO1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/follow_card/follow_card.vue?vue&type=style&index=0&id=0b374e66&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/follow_request_card/follow_request_card.vue?vue&type=style&index=0&id=4e0e552d&lang=scss":
/*!**********************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/follow_request_card/follow_request_card.vue?vue&type=style&index=0&id=4e0e552d&lang=scss ***!
\**********************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".follow-request-card-content-container {\\n display: flex;\\n flex-flow: row wrap;\\n}\\n.follow-request-card-content-container button {\\n margin-top: 0.5em;\\n margin-right: 0.5em;\\n flex: 1 1;\\n max-width: 12em;\\n min-width: 8em;\\n}\\n.follow-request-card-content-container button:last-child {\\n margin-right: 0;\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/follow_request_card/follow_request_card.vue\"],\"names\":[],\"mappings\":\"AACA;EACE,aAAA;EACA,mBAAA;AAAF;AAEE;EACE,iBAAA;EACA,mBAAA;EACA,SAAA;EACA,eAAA;EACA,cAAA;AAAJ;AAEI;EACE,eAAA;AAAN\",\"sourcesContent\":[\"\\n.follow-request-card-content-container {\\n display: flex;\\n flex-flow: row wrap;\\n\\n button {\\n margin-top: 0.5em;\\n margin-right: 0.5em;\\n flex: 1 1;\\n max-width: 12em;\\n min-width: 8em;\\n\\n &:last-child {\\n margin-right: 0;\\n }\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2ZvbGxvd19yZXF1ZXN0X2NhcmQvZm9sbG93X3JlcXVlc3RfY2FyZC52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD00ZTBlNTUyZCZsYW5nPXNjc3MuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQTtBQUNnSDtBQUNqQjtBQUMvRiw4QkFBOEIsbUZBQTJCLENBQUMsNEZBQXFDO0FBQy9GO0FBQ0Esa0ZBQWtGLGtCQUFrQix3QkFBd0IsR0FBRyxpREFBaUQsc0JBQXNCLHdCQUF3QixjQUFjLG9CQUFvQixtQkFBbUIsR0FBRyw0REFBNEQsb0JBQW9CLEdBQUcsT0FBTyw2SEFBNkgsVUFBVSxXQUFXLEtBQUssS0FBSyxXQUFXLFdBQVcsVUFBVSxVQUFVLFVBQVUsS0FBSyxLQUFLLFVBQVUsbUVBQW1FLGtCQUFrQix3QkFBd0IsY0FBYyx3QkFBd0IsMEJBQTBCLGdCQUFnQixzQkFBc0IscUJBQXFCLHNCQUFzQix3QkFBd0IsT0FBTyxLQUFLLEdBQUcscUJBQXFCO0FBQzk0QjtBQUNBLGlFQUFlLHVCQUF1QixFQUFDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9jb21wb25lbnRzL2ZvbGxvd19yZXF1ZXN0X2NhcmQvZm9sbG93X3JlcXVlc3RfY2FyZC52dWU/ZjM5OSJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBJbXBvcnRzXG5pbXBvcnQgX19fQ1NTX0xPQURFUl9BUElfU09VUkNFTUFQX0lNUE9SVF9fXyBmcm9tIFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvZGlzdC9ydW50aW1lL3NvdXJjZU1hcHMuanNcIjtcbmltcG9ydCBfX19DU1NfTE9BREVSX0FQSV9JTVBPUlRfX18gZnJvbSBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2Rpc3QvcnVudGltZS9hcGkuanNcIjtcbnZhciBfX19DU1NfTE9BREVSX0VYUE9SVF9fXyA9IF9fX0NTU19MT0FERVJfQVBJX0lNUE9SVF9fXyhfX19DU1NfTE9BREVSX0FQSV9TT1VSQ0VNQVBfSU1QT1JUX19fKTtcbi8vIE1vZHVsZVxuX19fQ1NTX0xPQURFUl9FWFBPUlRfX18ucHVzaChbbW9kdWxlLmlkLCBcIi5mb2xsb3ctcmVxdWVzdC1jYXJkLWNvbnRlbnQtY29udGFpbmVyIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xcbn1cXG4uZm9sbG93LXJlcXVlc3QtY2FyZC1jb250ZW50LWNvbnRhaW5lciBidXR0b24ge1xcbiAgbWFyZ2luLXRvcDogMC41ZW07XFxuICBtYXJnaW4tcmlnaHQ6IDAuNWVtO1xcbiAgZmxleDogMSAxO1xcbiAgbWF4LXdpZHRoOiAxMmVtO1xcbiAgbWluLXdpZHRoOiA4ZW07XFxufVxcbi5mb2xsb3ctcmVxdWVzdC1jYXJkLWNvbnRlbnQtY29udGFpbmVyIGJ1dHRvbjpsYXN0LWNoaWxkIHtcXG4gIG1hcmdpbi1yaWdodDogMDtcXG59XCIsIFwiXCIse1widmVyc2lvblwiOjMsXCJzb3VyY2VzXCI6W1wid2VicGFjazovLy4vc3JjL2NvbXBvbmVudHMvZm9sbG93X3JlcXVlc3RfY2FyZC9mb2xsb3dfcmVxdWVzdF9jYXJkLnZ1ZVwiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiQUFDQTtFQUNFLGFBQUE7RUFDQSxtQkFBQTtBQUFGO0FBRUU7RUFDRSxpQkFBQTtFQUNBLG1CQUFBO0VBQ0EsU0FBQTtFQUNBLGVBQUE7RUFDQSxjQUFBO0FBQUo7QUFFSTtFQUNFLGVBQUE7QUFBTlwiLFwic291cmNlc0NvbnRlbnRcIjpbXCJcXG4uZm9sbG93LXJlcXVlc3QtY2FyZC1jb250ZW50LWNvbnRhaW5lciB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcXG5cXG4gIGJ1dHRvbiB7XFxuICAgIG1hcmdpbi10b3A6IDAuNWVtO1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNWVtO1xcbiAgICBmbGV4OiAxIDE7XFxuICAgIG1heC13aWR0aDogMTJlbTtcXG4gICAgbWluLXdpZHRoOiA4ZW07XFxuXFxuICAgICY6bGFzdC1jaGlsZCB7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xcbiAgICB9XFxuICB9XFxufVxcblwiXSxcInNvdXJjZVJvb3RcIjpcIlwifV0pO1xuLy8gRXhwb3J0c1xuZXhwb3J0IGRlZmF1bHQgX19fQ1NTX0xPQURFUl9FWFBPUlRfX187XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/follow_request_card/follow_request_card.vue?vue&type=style&index=0&id=4e0e552d&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/gallery/gallery.vue?vue&type=style&index=0&id=74592d96&lang=scss":
/*!**********************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/gallery/gallery.vue?vue&type=style&index=0&id=74592d96&lang=scss ***!
\**********************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".Gallery .gallery-rows {\\n display: flex;\\n flex-direction: column;\\n}\\n.Gallery .gallery-row {\\n position: relative;\\n height: 0;\\n width: 100%;\\n flex-grow: 1;\\n}\\n.Gallery .gallery-row .gallery-row-inner {\\n position: absolute;\\n top: 0;\\n left: 0;\\n right: 0;\\n bottom: 0;\\n display: flex;\\n flex-flow: row wrap;\\n align-content: stretch;\\n}\\n.Gallery .gallery-row .gallery-row-inner .gallery-item {\\n margin: 0 0.5em 0 0;\\n flex-grow: 1;\\n height: 100%;\\n box-sizing: border-box;\\n min-width: 2em;\\n}\\n.Gallery .gallery-row .gallery-row-inner .gallery-item:last-child {\\n margin: 0;\\n}\\n.Gallery .gallery-row .gallery-row-inner.-grid {\\n width: 100%;\\n height: auto;\\n position: relative;\\n display: grid;\\n grid-gap: 0.5em;\\n grid-template-columns: repeat(auto-fill, minmax(15em, 1fr));\\n}\\n.Gallery .gallery-row .gallery-row-inner.-grid .gallery-item {\\n margin: 0;\\n height: 200px;\\n}\\n.Gallery .gallery-row.-grid, .Gallery .gallery-row.-minimal {\\n height: auto;\\n}\\n.Gallery .gallery-row.-grid .gallery-row-inner, .Gallery .gallery-row.-minimal .gallery-row-inner {\\n position: relative;\\n}\\n.Gallery .gallery-row:not(:first-child) {\\n margin-top: 0.5em;\\n}\\n.Gallery.-long .gallery-rows {\\n max-height: 25em;\\n overflow: hidden;\\n -webkit-mask: linear-gradient(to top, white, transparent) bottom/100% 70px no-repeat, linear-gradient(to top, white, white);\\n mask: linear-gradient(to top, white, transparent) bottom/100% 70px no-repeat, linear-gradient(to top, white, white);\\n /* Autoprefixed seem to ignore this one, and also syntax is different */\\n -webkit-mask-composite: xor;\\n mask-composite: xor;\\n -webkit-mask-composite: xor;\\n mask-composite: exclude;\\n}\\n.Gallery .many-attachments-text {\\n text-align: center;\\n line-height: 2;\\n}\\n.Gallery .many-attachments-buttons {\\n display: flex;\\n}\\n.Gallery .many-attachments-button {\\n display: flex;\\n flex: 1;\\n justify-content: center;\\n line-height: 2;\\n}\\n.Gallery .many-attachments-button button {\\n padding: 0 2em;\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/gallery/gallery.vue\"],\"names\":[],\"mappings\":\"AAIE;EACE,aAAA;EACA,sBAAA;AAHJ;AAME;EACE,kBAAA;EACA,SAAA;EACA,WAAA;EACA,YAAA;AAJJ;AAMI;EACE,kBAAA;EACA,MAAA;EACA,OAAA;EACA,QAAA;EACA,SAAA;EACA,aAAA;EACA,mBAAA;EACA,sBAAA;AAJN;AAMM;EACE,mBAAA;EACA,YAAA;EACA,YAAA;EACA,sBAAA;EAEA,cAAA;AALR;AAOQ;EACE,SAAA;AALV;AASM;EACE,WAAA;EACA,YAAA;EACA,kBAAA;EACA,aAAA;EACA,eAAA;EACA,2DAAA;AAPR;AASQ;EACE,SAAA;EACA,aAAA;AAPV;AAYI;EAEE,YAAA;AAXN;AAaM;EACE,kBAAA;AAXR;AAeI;EACE,iBAAA;AAbN;AAkBI;EACE,gBAAA;EACA,gBAAA;EACA,2HACE;UADF,mHACE;EAGF,uEAAA;EACA,2BAAA;UAAA,mBAAA;EACA,2BAAA;UAAA,uBAAA;AAnBN;AAuBE;EACE,kBAAA;EACA,cAAA;AArBJ;AAwBE;EACE,aAAA;AAtBJ;AAyBE;EACE,aAAA;EACA,OAAA;EACA,uBAAA;EACA,cAAA;AAvBJ;AAyBI;EACE,cAAA;AAvBN\",\"sourcesContent\":[\"\\n@import \\\"../../variables\\\";\\n\\n.Gallery {\\n .gallery-rows {\\n display: flex;\\n flex-direction: column;\\n }\\n\\n .gallery-row {\\n position: relative;\\n height: 0;\\n width: 100%;\\n flex-grow: 1;\\n\\n .gallery-row-inner {\\n position: absolute;\\n top: 0;\\n left: 0;\\n right: 0;\\n bottom: 0;\\n display: flex;\\n flex-flow: row wrap;\\n align-content: stretch;\\n\\n .gallery-item {\\n margin: 0 0.5em 0 0;\\n flex-grow: 1;\\n height: 100%;\\n box-sizing: border-box;\\n // to make failed images a bit more noticeable on chromium\\n min-width: 2em;\\n\\n &:last-child {\\n margin: 0;\\n }\\n }\\n\\n &.-grid {\\n width: 100%;\\n height: auto;\\n position: relative;\\n display: grid;\\n grid-gap: 0.5em;\\n grid-template-columns: repeat(auto-fill, minmax(15em, 1fr));\\n\\n .gallery-item {\\n margin: 0;\\n height: 200px;\\n }\\n }\\n }\\n\\n &.-grid,\\n &.-minimal {\\n height: auto;\\n\\n .gallery-row-inner {\\n position: relative;\\n }\\n }\\n\\n &:not(:first-child) {\\n margin-top: 0.5em;\\n }\\n }\\n\\n &.-long {\\n .gallery-rows {\\n max-height: 25em;\\n overflow: hidden;\\n mask:\\n linear-gradient(to top, white, transparent) bottom/100% 70px no-repeat,\\n linear-gradient(to top, white, white);\\n\\n /* Autoprefixed seem to ignore this one, and also syntax is different */\\n mask-composite: xor;\\n mask-composite: exclude;\\n }\\n }\\n\\n .many-attachments-text {\\n text-align: center;\\n line-height: 2;\\n }\\n\\n .many-attachments-buttons {\\n display: flex;\\n }\\n\\n .many-attachments-button {\\n display: flex;\\n flex: 1;\\n justify-content: center;\\n line-height: 2;\\n\\n button {\\n padding: 0 2em;\\n }\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2dhbGxlcnkvZ2FsbGVyeS52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD03NDU5MmQ5NiZsYW5nPXNjc3MuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQTtBQUNnSDtBQUNqQjtBQUMvRiw4QkFBOEIsbUZBQTJCLENBQUMsNEZBQXFDO0FBQy9GO0FBQ0Esa0VBQWtFLGtCQUFrQiwyQkFBMkIsR0FBRyx5QkFBeUIsdUJBQXVCLGNBQWMsZ0JBQWdCLGlCQUFpQixHQUFHLDRDQUE0Qyx1QkFBdUIsV0FBVyxZQUFZLGFBQWEsY0FBYyxrQkFBa0Isd0JBQXdCLDJCQUEyQixHQUFHLDBEQUEwRCx3QkFBd0IsaUJBQWlCLGlCQUFpQiwyQkFBMkIsbUJBQW1CLEdBQUcscUVBQXFFLGNBQWMsR0FBRyxrREFBa0QsZ0JBQWdCLGlCQUFpQix1QkFBdUIsa0JBQWtCLG9CQUFvQixnRUFBZ0UsR0FBRyxnRUFBZ0UsY0FBYyxrQkFBa0IsR0FBRywrREFBK0QsaUJBQWlCLEdBQUcscUdBQXFHLHVCQUF1QixHQUFHLDJDQUEyQyxzQkFBc0IsR0FBRyxnQ0FBZ0MscUJBQXFCLHFCQUFxQixnSUFBZ0ksZ0lBQWdJLDRHQUE0RyxnQ0FBZ0MsZ0NBQWdDLG9DQUFvQyxHQUFHLG1DQUFtQyx1QkFBdUIsbUJBQW1CLEdBQUcsc0NBQXNDLGtCQUFrQixHQUFHLHFDQUFxQyxrQkFBa0IsWUFBWSw0QkFBNEIsbUJBQW1CLEdBQUcsNENBQTRDLG1CQUFtQixHQUFHLE9BQU8scUdBQXFHLFVBQVUsV0FBVyxLQUFLLEtBQUssV0FBVyxVQUFVLFVBQVUsVUFBVSxLQUFLLEtBQUssV0FBVyxVQUFVLFVBQVUsVUFBVSxVQUFVLFVBQVUsV0FBVyxXQUFXLEtBQUssS0FBSyxXQUFXLFVBQVUsVUFBVSxXQUFXLFVBQVUsS0FBSyxLQUFLLFVBQVUsS0FBSyxLQUFLLFVBQVUsVUFBVSxXQUFXLFVBQVUsVUFBVSxXQUFXLEtBQUssS0FBSyxVQUFVLFVBQVUsS0FBSyxLQUFLLFVBQVUsS0FBSyxLQUFLLFdBQVcsS0FBSyxLQUFLLFdBQVcsS0FBSyxNQUFNLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLE1BQU0sTUFBTSxXQUFXLFVBQVUsTUFBTSxNQUFNLFVBQVUsTUFBTSxNQUFNLFVBQVUsVUFBVSxXQUFXLFVBQVUsTUFBTSxNQUFNLFVBQVUsd0RBQXdELGNBQWMsbUJBQW1CLG9CQUFvQiw2QkFBNkIsS0FBSyxvQkFBb0IseUJBQXlCLGdCQUFnQixrQkFBa0IsbUJBQW1CLDRCQUE0QiwyQkFBMkIsZUFBZSxnQkFBZ0IsaUJBQWlCLGtCQUFrQixzQkFBc0IsNEJBQTRCLCtCQUErQix5QkFBeUIsOEJBQThCLHVCQUF1Qix1QkFBdUIsaUNBQWlDLDZGQUE2RiwwQkFBMEIsc0JBQXNCLFdBQVcsU0FBUyxtQkFBbUIsc0JBQXNCLHVCQUF1Qiw2QkFBNkIsd0JBQXdCLDBCQUEwQixzRUFBc0UsMkJBQTJCLHNCQUFzQiwwQkFBMEIsV0FBVyxTQUFTLE9BQU8sa0NBQWtDLHFCQUFxQiw4QkFBOEIsNkJBQTZCLFNBQVMsT0FBTyw2QkFBNkIsMEJBQTBCLE9BQU8sS0FBSyxlQUFlLHFCQUFxQix5QkFBeUIseUJBQXlCLDhJQUE4SSw4R0FBOEcsZ0NBQWdDLE9BQU8sS0FBSyw4QkFBOEIseUJBQXlCLHFCQUFxQixLQUFLLGlDQUFpQyxvQkFBb0IsS0FBSyxnQ0FBZ0Msb0JBQW9CLGNBQWMsOEJBQThCLHFCQUFxQixnQkFBZ0IsdUJBQXVCLE9BQU8sS0FBSyxHQUFHLHFCQUFxQjtBQUN6dEo7QUFDQSxpRUFBZSx1QkFBdUIsRUFBQyIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvY29tcG9uZW50cy9nYWxsZXJ5L2dhbGxlcnkudnVlPzFjNDYiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gSW1wb3J0c1xuaW1wb3J0IF9fX0NTU19MT0FERVJfQVBJX1NPVVJDRU1BUF9JTVBPUlRfX18gZnJvbSBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2Rpc3QvcnVudGltZS9zb3VyY2VNYXBzLmpzXCI7XG5pbXBvcnQgX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fIGZyb20gXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvYXBpLmpzXCI7XG52YXIgX19fQ1NTX0xPQURFUl9FWFBPUlRfX18gPSBfX19DU1NfTE9BREVSX0FQSV9JTVBPUlRfX18oX19fQ1NTX0xPQURFUl9BUElfU09VUkNFTUFQX0lNUE9SVF9fXyk7XG4vLyBNb2R1bGVcbl9fX0NTU19MT0FERVJfRVhQT1JUX19fLnB1c2goW21vZHVsZS5pZCwgXCIuR2FsbGVyeSAuZ2FsbGVyeS1yb3dzIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbn1cXG4uR2FsbGVyeSAuZ2FsbGVyeS1yb3cge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgaGVpZ2h0OiAwO1xcbiAgd2lkdGg6IDEwMCU7XFxuICBmbGV4LWdyb3c6IDE7XFxufVxcbi5HYWxsZXJ5IC5nYWxsZXJ5LXJvdyAuZ2FsbGVyeS1yb3ctaW5uZXIge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgdG9wOiAwO1xcbiAgbGVmdDogMDtcXG4gIHJpZ2h0OiAwO1xcbiAgYm90dG9tOiAwO1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XFxuICBhbGlnbi1jb250ZW50OiBzdHJldGNoO1xcbn1cXG4uR2FsbGVyeSAuZ2FsbGVyeS1yb3cgLmdhbGxlcnktcm93LWlubmVyIC5nYWxsZXJ5LWl0ZW0ge1xcbiAgbWFyZ2luOiAwIDAuNWVtIDAgMDtcXG4gIGZsZXgtZ3JvdzogMTtcXG4gIGhlaWdodDogMTAwJTtcXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XFxuICBtaW4td2lkdGg6IDJlbTtcXG59XFxuLkdhbGxlcnkgLmdhbGxlcnktcm93IC5nYWxsZXJ5LXJvdy1pbm5lciAuZ2FsbGVyeS1pdGVtOmxhc3QtY2hpbGQge1xcbiAgbWFyZ2luOiAwO1xcbn1cXG4uR2FsbGVyeSAuZ2FsbGVyeS1yb3cgLmdhbGxlcnktcm93LWlubmVyLi1ncmlkIHtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgaGVpZ2h0OiBhdXRvO1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgZGlzcGxheTogZ3JpZDtcXG4gIGdyaWQtZ2FwOiAwLjVlbTtcXG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDE1ZW0sIDFmcikpO1xcbn1cXG4uR2FsbGVyeSAuZ2FsbGVyeS1yb3cgLmdhbGxlcnktcm93LWlubmVyLi1ncmlkIC5nYWxsZXJ5LWl0ZW0ge1xcbiAgbWFyZ2luOiAwO1xcbiAgaGVpZ2h0OiAyMDBweDtcXG59XFxuLkdhbGxlcnkgLmdhbGxlcnktcm93Li1ncmlkLCAuR2FsbGVyeSAuZ2FsbGVyeS1yb3cuLW1pbmltYWwge1xcbiAgaGVpZ2h0OiBhdXRvO1xcbn1cXG4uR2FsbGVyeSAuZ2FsbGVyeS1yb3cuLWdyaWQgLmdhbGxlcnktcm93LWlubmVyLCAuR2FsbGVyeSAuZ2FsbGVyeS1yb3cuLW1pbmltYWwgLmdhbGxlcnktcm93LWlubmVyIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG59XFxuLkdhbGxlcnkgLmdhbGxlcnktcm93Om5vdCg6Zmlyc3QtY2hpbGQpIHtcXG4gIG1hcmdpbi10b3A6IDAuNWVtO1xcbn1cXG4uR2FsbGVyeS4tbG9uZyAuZ2FsbGVyeS1yb3dzIHtcXG4gIG1heC1oZWlnaHQ6IDI1ZW07XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgLXdlYmtpdC1tYXNrOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCB3aGl0ZSwgdHJhbnNwYXJlbnQpIGJvdHRvbS8xMDAlIDcwcHggbm8tcmVwZWF0LCBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCB3aGl0ZSwgd2hpdGUpO1xcbiAgICAgICAgICBtYXNrOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCB3aGl0ZSwgdHJhbnNwYXJlbnQpIGJvdHRvbS8xMDAlIDcwcHggbm8tcmVwZWF0LCBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCB3aGl0ZSwgd2hpdGUpO1xcbiAgLyogQXV0b3ByZWZpeGVkIHNlZW0gdG8gaWdub3JlIHRoaXMgb25lLCBhbmQgYWxzbyBzeW50YXggaXMgZGlmZmVyZW50ICovXFxuICAtd2Via2l0LW1hc2stY29tcG9zaXRlOiB4b3I7XFxuICAgICAgICAgIG1hc2stY29tcG9zaXRlOiB4b3I7XFxuICAtd2Via2l0LW1hc2stY29tcG9zaXRlOiB4b3I7XFxuICAgICAgICAgIG1hc2stY29tcG9zaXRlOiBleGNsdWRlO1xcbn1cXG4uR2FsbGVyeSAubWFueS1hdHRhY2htZW50cy10ZXh0IHtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG4gIGxpbmUtaGVpZ2h0OiAyO1xcbn1cXG4uR2FsbGVyeSAubWFueS1hdHRhY2htZW50cy1idXR0b25zIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxufVxcbi5HYWxsZXJ5IC5tYW55LWF0dGFjaG1lbnRzLWJ1dHRvbiB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleDogMTtcXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xcbiAgbGluZS1oZWlnaHQ6IDI7XFxufVxcbi5HYWxsZXJ5IC5tYW55LWF0dGFjaG1lbnRzLWJ1dHRvbiBidXR0b24ge1xcbiAgcGFkZGluZzogMCAyZW07XFxufVwiLCBcIlwiLHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIndlYnBhY2s6Ly8uL3NyYy9jb21wb25lbnRzL2dhbGxlcnkvZ2FsbGVyeS52dWVcIl0sXCJuYW1lc1wiOltdLFwibWFwcGluZ3NcIjpcIkFBSUU7RUFDRSxhQUFBO0VBQ0Esc0JBQUE7QUFISjtBQU1FO0VBQ0Usa0JBQUE7RUFDQSxTQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7QUFKSjtBQU1JO0VBQ0Usa0JBQUE7RUFDQSxNQUFBO0VBQ0EsT0FBQTtFQUNBLFFBQUE7RUFDQSxTQUFBO0VBQ0EsYUFBQTtFQUNBLG1CQUFBO0VBQ0Esc0JBQUE7QUFKTjtBQU1NO0VBQ0UsbUJBQUE7RUFDQSxZQUFBO0VBQ0EsWUFBQTtFQUNBLHNCQUFBO0VBRUEsY0FBQTtBQUxSO0FBT1E7RUFDRSxTQUFBO0FBTFY7QUFTTTtFQUNFLFdBQUE7RUFDQSxZQUFBO0VBQ0Esa0JBQUE7RUFDQSxhQUFBO0VBQ0EsZUFBQTtFQUNBLDJEQUFBO0FBUFI7QUFTUTtFQUNFLFNBQUE7RUFDQSxhQUFBO0FBUFY7QUFZSTtFQUVFLFlBQUE7QUFYTjtBQWFNO0VBQ0Usa0JBQUE7QUFYUjtBQWVJO0VBQ0UsaUJBQUE7QUFiTjtBQWtCSTtFQUNFLGdCQUFBO0VBQ0EsZ0JBQUE7RUFDQSwySEFDRTtVQURGLG1IQUNFO0VBR0YsdUVBQUE7RUFDQSwyQkFBQTtVQUFBLG1CQUFBO0VBQ0EsMkJBQUE7VUFBQSx1QkFBQTtBQW5CTjtBQXVCRTtFQUNFLGtCQUFBO0VBQ0EsY0FBQTtBQXJCSjtBQXdCRTtFQUNFLGFBQUE7QUF0Qko7QUF5QkU7RUFDRSxhQUFBO0VBQ0EsT0FBQTtFQUNBLHVCQUFBO0VBQ0EsY0FBQTtBQXZCSjtBQXlCSTtFQUNFLGNBQUE7QUF2Qk5cIixcInNvdXJjZXNDb250ZW50XCI6W1wiXFxuQGltcG9ydCBcXFwiLi4vLi4vdmFyaWFibGVzXFxcIjtcXG5cXG4uR2FsbGVyeSB7XFxuICAuZ2FsbGVyeS1yb3dzIHtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gIH1cXG5cXG4gIC5nYWxsZXJ5LXJvdyB7XFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gICAgaGVpZ2h0OiAwO1xcbiAgICB3aWR0aDogMTAwJTtcXG4gICAgZmxleC1ncm93OiAxO1xcblxcbiAgICAuZ2FsbGVyeS1yb3ctaW5uZXIge1xcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gICAgICB0b3A6IDA7XFxuICAgICAgbGVmdDogMDtcXG4gICAgICByaWdodDogMDtcXG4gICAgICBib3R0b206IDA7XFxuICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xcbiAgICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2g7XFxuXFxuICAgICAgLmdhbGxlcnktaXRlbSB7XFxuICAgICAgICBtYXJnaW46IDAgMC41ZW0gMCAwO1xcbiAgICAgICAgZmxleC1ncm93OiAxO1xcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcXG4gICAgICAgIC8vIHRvIG1ha2UgZmFpbGVkIGltYWdlcyBhIGJpdCBtb3JlIG5vdGljZWFibGUgb24gY2hyb21pdW1cXG4gICAgICAgIG1pbi13aWR0aDogMmVtO1xcblxcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcXG4gICAgICAgICAgbWFyZ2luOiAwO1xcbiAgICAgICAgfVxcbiAgICAgIH1cXG5cXG4gICAgICAmLi1ncmlkIHtcXG4gICAgICAgIHdpZHRoOiAxMDAlO1xcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcXG4gICAgICAgIGdyaWQtZ2FwOiAwLjVlbTtcXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDE1ZW0sIDFmcikpO1xcblxcbiAgICAgICAgLmdhbGxlcnktaXRlbSB7XFxuICAgICAgICAgIG1hcmdpbjogMDtcXG4gICAgICAgICAgaGVpZ2h0OiAyMDBweDtcXG4gICAgICAgIH1cXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgJi4tZ3JpZCxcXG4gICAgJi4tbWluaW1hbCB7XFxuICAgICAgaGVpZ2h0OiBhdXRvO1xcblxcbiAgICAgIC5nYWxsZXJ5LXJvdy1pbm5lciB7XFxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xcbiAgICAgIG1hcmdpbi10b3A6IDAuNWVtO1xcbiAgICB9XFxuICB9XFxuXFxuICAmLi1sb25nIHtcXG4gICAgLmdhbGxlcnktcm93cyB7XFxuICAgICAgbWF4LWhlaWdodDogMjVlbTtcXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgICAgIG1hc2s6XFxuICAgICAgICBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCB3aGl0ZSwgdHJhbnNwYXJlbnQpIGJvdHRvbS8xMDAlIDcwcHggbm8tcmVwZWF0LFxcbiAgICAgICAgbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgd2hpdGUsIHdoaXRlKTtcXG5cXG4gICAgICAvKiBBdXRvcHJlZml4ZWQgc2VlbSB0byBpZ25vcmUgdGhpcyBvbmUsIGFuZCBhbHNvIHN5bnRheCBpcyBkaWZmZXJlbnQgKi9cXG4gICAgICBtYXNrLWNvbXBvc2l0ZTogeG9yO1xcbiAgICAgIG1hc2stY29tcG9zaXRlOiBleGNsdWRlO1xcbiAgICB9XFxuICB9XFxuXFxuICAubWFueS1hdHRhY2htZW50cy10ZXh0IHtcXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xcbiAgICBsaW5lLWhlaWdodDogMjtcXG4gIH1cXG5cXG4gIC5tYW55LWF0dGFjaG1lbnRzLWJ1dHRvbnMge1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgfVxcblxcbiAgLm1hbnktYXR0YWNobWVudHMtYnV0dG9uIHtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgZmxleDogMTtcXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XFxuICAgIGxpbmUtaGVpZ2h0OiAyO1xcblxcbiAgICBidXR0b24ge1xcbiAgICAgIHBhZGRpbmc6IDAgMmVtO1xcbiAgICB9XFxuICB9XFxufVxcblwiXSxcInNvdXJjZVJvb3RcIjpcIlwifV0pO1xuLy8gRXhwb3J0c1xuZXhwb3J0IGRlZmF1bHQgX19fQ1NTX0xPQURFUl9FWFBPUlRfX187XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/gallery/gallery.vue?vue&type=style&index=0&id=74592d96&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/global_notice_list/global_notice_list.vue?vue&type=style&index=0&id=05d9486f&lang=scss":
/*!********************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/global_notice_list/global_notice_list.vue?vue&type=style&index=0&id=05d9486f&lang=scss ***!
\********************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".global-notice-list {\\n position: fixed;\\n top: calc(var(--navbar-height) + 0.5em);\\n width: 100%;\\n pointer-events: none;\\n z-index: var(--ZI_modals_popovers);\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n}\\n.global-notice-list .global-notice {\\n pointer-events: auto;\\n text-align: center;\\n width: 40em;\\n max-width: calc(100% - 3em);\\n display: flex;\\n padding-left: 1.5em;\\n line-height: 2;\\n margin-bottom: 0.5em;\\n}\\n.global-notice-list .global-notice .notice-message {\\n flex: 1 1 100%;\\n}\\n.global-notice-list .global-error {\\n background-color: var(--alertPopupError, #f00);\\n color: var(--alertPopupErrorText, #b9b9ba);\\n}\\n.global-notice-list .global-error .svg-inline--fa {\\n color: var(--alertPopupErrorText, #b9b9ba);\\n}\\n.global-notice-list .global-warning {\\n background-color: var(--alertPopupWarning, orange);\\n color: var(--alertPopupWarningText, #b9b9ba);\\n}\\n.global-notice-list .global-warning .svg-inline--fa {\\n color: var(--alertPopupWarningText, #b9b9ba);\\n}\\n.global-notice-list .global-success {\\n background-color: var(--alertPopupSuccess, #0fa00f);\\n color: var(--alertPopupSuccessText, #b9b9ba);\\n}\\n.global-notice-list .global-success .svg-inline--fa {\\n color: var(--alertPopupSuccessText, #b9b9ba);\\n}\\n.global-notice-list .global-info {\\n background-color: var(--alertPopupNeutral, #182230);\\n color: var(--alertPopupNeutralText, #b9b9ba);\\n}\\n.global-notice-list .global-info .svg-inline--fa {\\n color: var(--alertPopupNeutralText, #b9b9ba);\\n}\\n.global-notice-list .close-notice {\\n padding-right: 0.2em;\\n}\\n.global-notice-list .close-notice .svg-inline--fa:hover {\\n opacity: 0.6;\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/global_notice_list/global_notice_list.vue\"],\"names\":[],\"mappings\":\"AAGA;EACE,eAAA;EACA,uCAAA;EACA,WAAA;EACA,oBAAA;EACA,kCAAA;EACA,aAAA;EACA,sBAAA;EACA,mBAAA;AAFF;AAIE;EACE,oBAAA;EACA,kBAAA;EACA,WAAA;EACA,2BAAA;EACA,aAAA;EACA,mBAAA;EACA,cAAA;EACA,oBAAA;AAFJ;AAII;EACE,cAAA;AAFN;AAME;EACE,8CAAA;EACA,0CAAA;AAJJ;AAMI;EACE,0CAAA;AAJN;AAQE;EACE,kDAAA;EACA,4CAAA;AANJ;AAQI;EACE,4CAAA;AANN;AAUE;EACE,mDAAA;EACA,4CAAA;AARJ;AAUI;EACE,4CAAA;AARN;AAYE;EACE,mDAAA;EACA,4CAAA;AAVJ;AAYI;EACE,4CAAA;AAVN;AAcE;EACE,oBAAA;AAZJ;AAcI;EACE,YAAA;AAZN\",\"sourcesContent\":[\"\\n@import \\\"../../variables\\\";\\n\\n.global-notice-list {\\n position: fixed;\\n top: calc(var(--navbar-height) + 0.5em);\\n width: 100%;\\n pointer-events: none;\\n z-index: var(--ZI_modals_popovers);\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n\\n .global-notice {\\n pointer-events: auto;\\n text-align: center;\\n width: 40em;\\n max-width: calc(100% - 3em);\\n display: flex;\\n padding-left: 1.5em;\\n line-height: 2;\\n margin-bottom: 0.5em;\\n\\n .notice-message {\\n flex: 1 1 100%;\\n }\\n }\\n\\n .global-error {\\n background-color: var(--alertPopupError, $fallback--cRed);\\n color: var(--alertPopupErrorText, $fallback--text);\\n\\n .svg-inline--fa {\\n color: var(--alertPopupErrorText, $fallback--text);\\n }\\n }\\n\\n .global-warning {\\n background-color: var(--alertPopupWarning, $fallback--cOrange);\\n color: var(--alertPopupWarningText, $fallback--text);\\n\\n .svg-inline--fa {\\n color: var(--alertPopupWarningText, $fallback--text);\\n }\\n }\\n\\n .global-success {\\n background-color: var(--alertPopupSuccess, $fallback--cGreen);\\n color: var(--alertPopupSuccessText, $fallback--text);\\n\\n .svg-inline--fa {\\n color: var(--alertPopupSuccessText, $fallback--text);\\n }\\n }\\n\\n .global-info {\\n background-color: var(--alertPopupNeutral, $fallback--fg);\\n color: var(--alertPopupNeutralText, $fallback--text);\\n\\n .svg-inline--fa {\\n color: var(--alertPopupNeutralText, $fallback--text);\\n }\\n }\\n\\n .close-notice {\\n padding-right: 0.2em;\\n\\n .svg-inline--fa:hover {\\n opacity: 0.6;\\n }\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2dsb2JhbF9ub3RpY2VfbGlzdC9nbG9iYWxfbm90aWNlX2xpc3QudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9MDVkOTQ4NmYmbGFuZz1zY3NzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7QUFDZ0g7QUFDakI7QUFDL0YsOEJBQThCLG1GQUEyQixDQUFDLDRGQUFxQztBQUMvRjtBQUNBLCtEQUErRCxvQkFBb0IsNENBQTRDLGdCQUFnQix5QkFBeUIsdUNBQXVDLGtCQUFrQiwyQkFBMkIsd0JBQXdCLEdBQUcsc0NBQXNDLHlCQUF5Qix1QkFBdUIsZ0JBQWdCLGdDQUFnQyxrQkFBa0Isd0JBQXdCLG1CQUFtQix5QkFBeUIsR0FBRyxzREFBc0QsbUJBQW1CLEdBQUcscUNBQXFDLG1EQUFtRCwrQ0FBK0MsR0FBRyxxREFBcUQsK0NBQStDLEdBQUcsdUNBQXVDLHVEQUF1RCxpREFBaUQsR0FBRyx1REFBdUQsaURBQWlELEdBQUcsdUNBQXVDLHdEQUF3RCxpREFBaUQsR0FBRyx1REFBdUQsaURBQWlELEdBQUcsb0NBQW9DLHdEQUF3RCxpREFBaUQsR0FBRyxvREFBb0QsaURBQWlELEdBQUcscUNBQXFDLHlCQUF5QixHQUFHLDJEQUEyRCxpQkFBaUIsR0FBRyxPQUFPLDJIQUEySCxVQUFVLFdBQVcsVUFBVSxXQUFXLFdBQVcsVUFBVSxXQUFXLFdBQVcsS0FBSyxLQUFLLFdBQVcsV0FBVyxVQUFVLFdBQVcsVUFBVSxXQUFXLFVBQVUsV0FBVyxLQUFLLEtBQUssVUFBVSxLQUFLLEtBQUssV0FBVyxXQUFXLEtBQUssS0FBSyxXQUFXLEtBQUssS0FBSyxXQUFXLFdBQVcsS0FBSyxLQUFLLFdBQVcsS0FBSyxLQUFLLFdBQVcsV0FBVyxLQUFLLEtBQUssV0FBVyxLQUFLLEtBQUssV0FBVyxXQUFXLEtBQUssS0FBSyxXQUFXLEtBQUssS0FBSyxXQUFXLEtBQUssS0FBSyxVQUFVLHVEQUF1RCx5QkFBeUIsb0JBQW9CLDRDQUE0QyxnQkFBZ0IseUJBQXlCLHVDQUF1QyxrQkFBa0IsMkJBQTJCLHdCQUF3QixzQkFBc0IsMkJBQTJCLHlCQUF5QixrQkFBa0Isa0NBQWtDLG9CQUFvQiwwQkFBMEIscUJBQXFCLDJCQUEyQix5QkFBeUIsdUJBQXVCLE9BQU8sS0FBSyxxQkFBcUIsZ0VBQWdFLHlEQUF5RCx5QkFBeUIsMkRBQTJELE9BQU8sS0FBSyx1QkFBdUIscUVBQXFFLDJEQUEyRCx5QkFBeUIsNkRBQTZELE9BQU8sS0FBSyx1QkFBdUIsb0VBQW9FLDJEQUEyRCx5QkFBeUIsNkRBQTZELE9BQU8sS0FBSyxvQkFBb0IsZ0VBQWdFLDJEQUEyRCx5QkFBeUIsNkRBQTZELE9BQU8sS0FBSyxxQkFBcUIsMkJBQTJCLCtCQUErQixxQkFBcUIsT0FBTyxLQUFLLEdBQUcscUJBQXFCO0FBQ2w1SDtBQUNBLGlFQUFlLHVCQUF1QixFQUFDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9jb21wb25lbnRzL2dsb2JhbF9ub3RpY2VfbGlzdC9nbG9iYWxfbm90aWNlX2xpc3QudnVlPzBiMjAiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gSW1wb3J0c1xuaW1wb3J0IF9fX0NTU19MT0FERVJfQVBJX1NPVVJDRU1BUF9JTVBPUlRfX18gZnJvbSBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2Rpc3QvcnVudGltZS9zb3VyY2VNYXBzLmpzXCI7XG5pbXBvcnQgX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fIGZyb20gXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvYXBpLmpzXCI7XG52YXIgX19fQ1NTX0xPQURFUl9FWFBPUlRfX18gPSBfX19DU1NfTE9BREVSX0FQSV9JTVBPUlRfX18oX19fQ1NTX0xPQURFUl9BUElfU09VUkNFTUFQX0lNUE9SVF9fXyk7XG4vLyBNb2R1bGVcbl9fX0NTU19MT0FERVJfRVhQT1JUX19fLnB1c2goW21vZHVsZS5pZCwgXCIuZ2xvYmFsLW5vdGljZS1saXN0IHtcXG4gIHBvc2l0aW9uOiBmaXhlZDtcXG4gIHRvcDogY2FsYyh2YXIoLS1uYXZiYXItaGVpZ2h0KSArIDAuNWVtKTtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxuICB6LWluZGV4OiB2YXIoLS1aSV9tb2RhbHNfcG9wb3ZlcnMpO1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xcbn1cXG4uZ2xvYmFsLW5vdGljZS1saXN0IC5nbG9iYWwtbm90aWNlIHtcXG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xcbiAgd2lkdGg6IDQwZW07XFxuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDNlbSk7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgcGFkZGluZy1sZWZ0OiAxLjVlbTtcXG4gIGxpbmUtaGVpZ2h0OiAyO1xcbiAgbWFyZ2luLWJvdHRvbTogMC41ZW07XFxufVxcbi5nbG9iYWwtbm90aWNlLWxpc3QgLmdsb2JhbC1ub3RpY2UgLm5vdGljZS1tZXNzYWdlIHtcXG4gIGZsZXg6IDEgMSAxMDAlO1xcbn1cXG4uZ2xvYmFsLW5vdGljZS1saXN0IC5nbG9iYWwtZXJyb3Ige1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYWxlcnRQb3B1cEVycm9yLCAjZjAwKTtcXG4gIGNvbG9yOiB2YXIoLS1hbGVydFBvcHVwRXJyb3JUZXh0LCAjYjliOWJhKTtcXG59XFxuLmdsb2JhbC1ub3RpY2UtbGlzdCAuZ2xvYmFsLWVycm9yIC5zdmctaW5saW5lLS1mYSB7XFxuICBjb2xvcjogdmFyKC0tYWxlcnRQb3B1cEVycm9yVGV4dCwgI2I5YjliYSk7XFxufVxcbi5nbG9iYWwtbm90aWNlLWxpc3QgLmdsb2JhbC13YXJuaW5nIHtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWFsZXJ0UG9wdXBXYXJuaW5nLCBvcmFuZ2UpO1xcbiAgY29sb3I6IHZhcigtLWFsZXJ0UG9wdXBXYXJuaW5nVGV4dCwgI2I5YjliYSk7XFxufVxcbi5nbG9iYWwtbm90aWNlLWxpc3QgLmdsb2JhbC13YXJuaW5nIC5zdmctaW5saW5lLS1mYSB7XFxuICBjb2xvcjogdmFyKC0tYWxlcnRQb3B1cFdhcm5pbmdUZXh0LCAjYjliOWJhKTtcXG59XFxuLmdsb2JhbC1ub3RpY2UtbGlzdCAuZ2xvYmFsLXN1Y2Nlc3Mge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYWxlcnRQb3B1cFN1Y2Nlc3MsICMwZmEwMGYpO1xcbiAgY29sb3I6IHZhcigtLWFsZXJ0UG9wdXBTdWNjZXNzVGV4dCwgI2I5YjliYSk7XFxufVxcbi5nbG9iYWwtbm90aWNlLWxpc3QgLmdsb2JhbC1zdWNjZXNzIC5zdmctaW5saW5lLS1mYSB7XFxuICBjb2xvcjogdmFyKC0tYWxlcnRQb3B1cFN1Y2Nlc3NUZXh0LCAjYjliOWJhKTtcXG59XFxuLmdsb2JhbC1ub3RpY2UtbGlzdCAuZ2xvYmFsLWluZm8ge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYWxlcnRQb3B1cE5ldXRyYWwsICMxODIyMzApO1xcbiAgY29sb3I6IHZhcigtLWFsZXJ0UG9wdXBOZXV0cmFsVGV4dCwgI2I5YjliYSk7XFxufVxcbi5nbG9iYWwtbm90aWNlLWxpc3QgLmdsb2JhbC1pbmZvIC5zdmctaW5saW5lLS1mYSB7XFxuICBjb2xvcjogdmFyKC0tYWxlcnRQb3B1cE5ldXRyYWxUZXh0LCAjYjliOWJhKTtcXG59XFxuLmdsb2JhbC1ub3RpY2UtbGlzdCAuY2xvc2Utbm90aWNlIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDAuMmVtO1xcbn1cXG4uZ2xvYmFsLW5vdGljZS1saXN0IC5jbG9zZS1ub3RpY2UgLnN2Zy1pbmxpbmUtLWZhOmhvdmVyIHtcXG4gIG9wYWNpdHk6IDAuNjtcXG59XCIsIFwiXCIse1widmVyc2lvblwiOjMsXCJzb3VyY2VzXCI6W1wid2VicGFjazovLy4vc3JjL2NvbXBvbmVudHMvZ2xvYmFsX25vdGljZV9saXN0L2dsb2JhbF9ub3RpY2VfbGlzdC52dWVcIl0sXCJuYW1lc1wiOltdLFwibWFwcGluZ3NcIjpcIkFBR0E7RUFDRSxlQUFBO0VBQ0EsdUNBQUE7RUFDQSxXQUFBO0VBQ0Esb0JBQUE7RUFDQSxrQ0FBQTtFQUNBLGFBQUE7RUFDQSxzQkFBQTtFQUNBLG1CQUFBO0FBRkY7QUFJRTtFQUNFLG9CQUFBO0VBQ0Esa0JBQUE7RUFDQSxXQUFBO0VBQ0EsMkJBQUE7RUFDQSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSxjQUFBO0VBQ0Esb0JBQUE7QUFGSjtBQUlJO0VBQ0UsY0FBQTtBQUZOO0FBTUU7RUFDRSw4Q0FBQTtFQUNBLDBDQUFBO0FBSko7QUFNSTtFQUNFLDBDQUFBO0FBSk47QUFRRTtFQUNFLGtEQUFBO0VBQ0EsNENBQUE7QUFOSjtBQVFJO0VBQ0UsNENBQUE7QUFOTjtBQVVFO0VBQ0UsbURBQUE7RUFDQSw0Q0FBQTtBQVJKO0FBVUk7RUFDRSw0Q0FBQTtBQVJOO0FBWUU7RUFDRSxtREFBQTtFQUNBLDRDQUFBO0FBVko7QUFZSTtFQUNFLDRDQUFBO0FBVk47QUFjRTtFQUNFLG9CQUFBO0FBWko7QUFjSTtFQUNFLFlBQUE7QUFaTlwiLFwic291cmNlc0NvbnRlbnRcIjpbXCJcXG5AaW1wb3J0IFxcXCIuLi8uLi92YXJpYWJsZXNcXFwiO1xcblxcbi5nbG9iYWwtbm90aWNlLWxpc3Qge1xcbiAgcG9zaXRpb246IGZpeGVkO1xcbiAgdG9wOiBjYWxjKHZhcigtLW5hdmJhci1oZWlnaHQpICsgMC41ZW0pO1xcbiAgd2lkdGg6IDEwMCU7XFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG4gIHotaW5kZXg6IHZhcigtLVpJX21vZGFsc19wb3BvdmVycyk7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuXFxuICAuZ2xvYmFsLW5vdGljZSB7XFxuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxuICAgIHdpZHRoOiA0MGVtO1xcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDNlbSk7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIHBhZGRpbmctbGVmdDogMS41ZW07XFxuICAgIGxpbmUtaGVpZ2h0OiAyO1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVlbTtcXG5cXG4gICAgLm5vdGljZS1tZXNzYWdlIHtcXG4gICAgICBmbGV4OiAxIDEgMTAwJTtcXG4gICAgfVxcbiAgfVxcblxcbiAgLmdsb2JhbC1lcnJvciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWFsZXJ0UG9wdXBFcnJvciwgJGZhbGxiYWNrLS1jUmVkKTtcXG4gICAgY29sb3I6IHZhcigtLWFsZXJ0UG9wdXBFcnJvclRleHQsICRmYWxsYmFjay0tdGV4dCk7XFxuXFxuICAgIC5zdmctaW5saW5lLS1mYSB7XFxuICAgICAgY29sb3I6IHZhcigtLWFsZXJ0UG9wdXBFcnJvclRleHQsICRmYWxsYmFjay0tdGV4dCk7XFxuICAgIH1cXG4gIH1cXG5cXG4gIC5nbG9iYWwtd2FybmluZyB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWFsZXJ0UG9wdXBXYXJuaW5nLCAkZmFsbGJhY2stLWNPcmFuZ2UpO1xcbiAgICBjb2xvcjogdmFyKC0tYWxlcnRQb3B1cFdhcm5pbmdUZXh0LCAkZmFsbGJhY2stLXRleHQpO1xcblxcbiAgICAuc3ZnLWlubGluZS0tZmEge1xcbiAgICAgIGNvbG9yOiB2YXIoLS1hbGVydFBvcHVwV2FybmluZ1RleHQsICRmYWxsYmFjay0tdGV4dCk7XFxuICAgIH1cXG4gIH1cXG5cXG4gIC5nbG9iYWwtc3VjY2VzcyB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWFsZXJ0UG9wdXBTdWNjZXNzLCAkZmFsbGJhY2stLWNHcmVlbik7XFxuICAgIGNvbG9yOiB2YXIoLS1hbGVydFBvcHVwU3VjY2Vzc1RleHQsICRmYWxsYmFjay0tdGV4dCk7XFxuXFxuICAgIC5zdmctaW5saW5lLS1mYSB7XFxuICAgICAgY29sb3I6IHZhcigtLWFsZXJ0UG9wdXBTdWNjZXNzVGV4dCwgJGZhbGxiYWNrLS10ZXh0KTtcXG4gICAgfVxcbiAgfVxcblxcbiAgLmdsb2JhbC1pbmZvIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYWxlcnRQb3B1cE5ldXRyYWwsICRmYWxsYmFjay0tZmcpO1xcbiAgICBjb2xvcjogdmFyKC0tYWxlcnRQb3B1cE5ldXRyYWxUZXh0LCAkZmFsbGJhY2stLXRleHQpO1xcblxcbiAgICAuc3ZnLWlubGluZS0tZmEge1xcbiAgICAgIGNvbG9yOiB2YXIoLS1hbGVydFBvcHVwTmV1dHJhbFRleHQsICRmYWxsYmFjay0tdGV4dCk7XFxuICAgIH1cXG4gIH1cXG5cXG4gIC5jbG9zZS1ub3RpY2Uge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjJlbTtcXG5cXG4gICAgLnN2Zy1pbmxpbmUtLWZhOmhvdmVyIHtcXG4gICAgICBvcGFjaXR5OiAwLjY7XFxuICAgIH1cXG4gIH1cXG59XFxuXCJdLFwic291cmNlUm9vdFwiOlwiXCJ9XSk7XG4vLyBFeHBvcnRzXG5leHBvcnQgZGVmYXVsdCBfX19DU1NfTE9BREVSX0VYUE9SVF9fXztcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/global_notice_list/global_notice_list.vue?vue&type=style&index=0&id=05d9486f&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/interface_language_switcher/interface_language_switcher.vue?vue&type=style&index=0&id=5a0be056&lang=scss":
/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/interface_language_switcher/interface_language_switcher.vue?vue&type=style&index=0&id=5a0be056&lang=scss ***!
\**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".interface-language-switcher .language-select {\\n margin-right: 1em;\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/interface_language_switcher/interface_language_switcher.vue\"],\"names\":[],\"mappings\":\"AAIE;EACE,iBAAA;AAHJ\",\"sourcesContent\":[\"\\n@import \\\"../../variables\\\";\\n\\n.interface-language-switcher {\\n .language-select {\\n margin-right: 1em;\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2ludGVyZmFjZV9sYW5ndWFnZV9zd2l0Y2hlci9pbnRlcmZhY2VfbGFuZ3VhZ2Vfc3dpdGNoZXIudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9NWEwYmUwNTYmbGFuZz1zY3NzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7QUFDZ0g7QUFDakI7QUFDL0YsOEJBQThCLG1GQUEyQixDQUFDLDRGQUFxQztBQUMvRjtBQUNBLHlGQUF5RixzQkFBc0IsR0FBRyxPQUFPLDZJQUE2SSxXQUFXLHVEQUF1RCxrQ0FBa0Msc0JBQXNCLHdCQUF3QixLQUFLLEdBQUcscUJBQXFCO0FBQ3JiO0FBQ0EsaUVBQWUsdUJBQXVCLEVBQUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL2NvbXBvbmVudHMvaW50ZXJmYWNlX2xhbmd1YWdlX3N3aXRjaGVyL2ludGVyZmFjZV9sYW5ndWFnZV9zd2l0Y2hlci52dWU/NmI4OCJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBJbXBvcnRzXG5pbXBvcnQgX19fQ1NTX0xPQURFUl9BUElfU09VUkNFTUFQX0lNUE9SVF9fXyBmcm9tIFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvZGlzdC9ydW50aW1lL3NvdXJjZU1hcHMuanNcIjtcbmltcG9ydCBfX19DU1NfTE9BREVSX0FQSV9JTVBPUlRfX18gZnJvbSBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2Rpc3QvcnVudGltZS9hcGkuanNcIjtcbnZhciBfX19DU1NfTE9BREVSX0VYUE9SVF9fXyA9IF9fX0NTU19MT0FERVJfQVBJX0lNUE9SVF9fXyhfX19DU1NfTE9BREVSX0FQSV9TT1VSQ0VNQVBfSU1QT1JUX19fKTtcbi8vIE1vZHVsZVxuX19fQ1NTX0xPQURFUl9FWFBPUlRfX18ucHVzaChbbW9kdWxlLmlkLCBcIi5pbnRlcmZhY2UtbGFuZ3VhZ2Utc3dpdGNoZXIgLmxhbmd1YWdlLXNlbGVjdCB7XFxuICBtYXJnaW4tcmlnaHQ6IDFlbTtcXG59XCIsIFwiXCIse1widmVyc2lvblwiOjMsXCJzb3VyY2VzXCI6W1wid2VicGFjazovLy4vc3JjL2NvbXBvbmVudHMvaW50ZXJmYWNlX2xhbmd1YWdlX3N3aXRjaGVyL2ludGVyZmFjZV9sYW5ndWFnZV9zd2l0Y2hlci52dWVcIl0sXCJuYW1lc1wiOltdLFwibWFwcGluZ3NcIjpcIkFBSUU7RUFDRSxpQkFBQTtBQUhKXCIsXCJzb3VyY2VzQ29udGVudFwiOltcIlxcbkBpbXBvcnQgXFxcIi4uLy4uL3ZhcmlhYmxlc1xcXCI7XFxuXFxuLmludGVyZmFjZS1sYW5ndWFnZS1zd2l0Y2hlciB7XFxuICAubGFuZ3VhZ2Utc2VsZWN0IHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAxZW07XFxuICB9XFxufVxcblwiXSxcInNvdXJjZVJvb3RcIjpcIlwifV0pO1xuLy8gRXhwb3J0c1xuZXhwb3J0IGRlZmF1bHQgX19fQ1NTX0xPQURFUl9FWFBPUlRfX187XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/interface_language_switcher/interface_language_switcher.vue?vue&type=style&index=0&id=5a0be056&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/link-preview/link-preview.vue?vue&type=style&index=0&id=c9b23f22&lang=scss":
/*!********************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/link-preview/link-preview.vue?vue&type=style&index=0&id=c9b23f22&lang=scss ***!
\********************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".link-preview-card {\\n display: flex;\\n flex-direction: row;\\n cursor: pointer;\\n overflow: hidden;\\n margin-top: 0.5em;\\n color: #b9b9ba;\\n color: var(--text, #b9b9ba);\\n border-style: solid;\\n border-width: 1px;\\n border-radius: 10px;\\n border-radius: var(--attachmentRadius, 10px);\\n border-color: #222;\\n border-color: var(--border, #222);\\n}\\n.link-preview-card .card-image {\\n flex-shrink: 0;\\n width: 120px;\\n max-width: 25%;\\n}\\n.link-preview-card .card-image img {\\n width: 100%;\\n height: 100%;\\n -o-object-fit: cover;\\n object-fit: cover;\\n border-radius: 10px;\\n border-radius: var(--attachmentRadius, 10px);\\n}\\n.link-preview-card .card-content {\\n max-height: 100%;\\n margin: 0.5em;\\n display: flex;\\n flex-direction: column;\\n}\\n.link-preview-card .card-host {\\n font-size: 0.85em;\\n}\\n.link-preview-card .card-description {\\n margin: 0.5em 0 0;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n word-break: break-word;\\n line-height: 1.2em;\\n max-height: calc(3.6em - 1px);\\n}\\n.link-preview-card .nsfw-alert {\\n margin: 2em 0;\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/link-preview/link-preview.vue\",\"webpack://./src/_variables.scss\"],\"names\":[],\"mappings\":\"AAGA;EACE,aAAA;EACA,mBAAA;EACA,eAAA;EACA,gBAAA;EACA,iBAAA;EA0CA,cC3Ce;ED4Cf,2BAAA;EACA,mBAAA;EACA,iBAAA;EACA,mBC1B2B;ED2B3B,4CAAA;EACA,kBC5CiB;ED6CjB,iCAAA;AA3CF;AAJE;EACE,cAAA;EACA,YAAA;EACA,cAAA;AAMJ;AAJI;EACE,WAAA;EACA,YAAA;EACA,oBAAA;KAAA,iBAAA;EACA,mBCSuB;EDRvB,4CAAA;AAMN;AAFE;EACE,gBAAA;EACA,aAAA;EACA,aAAA;EACA,sBAAA;AAIJ;AADE;EACE,iBAAA;AAGJ;AAAE;EACE,iBAAA;EACA,gBAAA;EACA,uBAAA;EACA,sBAAA;EACA,kBAAA;EAGA,6BAAA;AAAJ;AAGE;EACE,aAAA;AADJ\",\"sourcesContent\":[\"\\n@import \\\"../../variables\\\";\\n\\n.link-preview-card {\\n display: flex;\\n flex-direction: row;\\n cursor: pointer;\\n overflow: hidden;\\n margin-top: 0.5em;\\n\\n .card-image {\\n flex-shrink: 0;\\n width: 120px;\\n max-width: 25%;\\n\\n img {\\n width: 100%;\\n height: 100%;\\n object-fit: cover;\\n border-radius: $fallback--attachmentRadius;\\n border-radius: var(--attachmentRadius, $fallback--attachmentRadius);\\n }\\n }\\n\\n .card-content {\\n max-height: 100%;\\n margin: 0.5em;\\n display: flex;\\n flex-direction: column;\\n }\\n\\n .card-host {\\n font-size: 0.85em;\\n }\\n\\n .card-description {\\n margin: 0.5em 0 0;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n word-break: break-word;\\n line-height: 1.2em;\\n // cap description at 3 lines, the 1px is to clean up some stray pixels\\n // TODO: fancier fade-out at the bottom to show off that it's too long?\\n max-height: calc(1.2em * 3 - 1px);\\n }\\n\\n .nsfw-alert {\\n margin: 2em 0;\\n }\\n\\n color: $fallback--text;\\n color: var(--text, $fallback--text);\\n border-style: solid;\\n border-width: 1px;\\n border-radius: $fallback--attachmentRadius;\\n border-radius: var(--attachmentRadius, $fallback--attachmentRadius);\\n border-color: $fallback--border;\\n border-color: var(--border, $fallback--border);\\n}\\n\",\"$main-color: #f58d2c;\\n$main-background: white;\\n$darkened-background: whitesmoke;\\n\\n$fallback--bg: #121a24;\\n$fallback--fg: #182230;\\n$fallback--faint: rgb(185 185 186 / 50%);\\n$fallback--text: #b9b9ba;\\n$fallback--link: #d8a070;\\n$fallback--icon: #666;\\n$fallback--lightBg: rgb(21 30 42);\\n$fallback--lightText: #b9b9ba;\\n$fallback--border: #222;\\n$fallback--cRed: #f00;\\n$fallback--cBlue: #0095ff;\\n$fallback--cGreen: #0fa00f;\\n$fallback--cOrange: orange;\\n\\n$fallback--alertError: rgb(211 16 20 / 50%);\\n$fallback--alertWarning: rgb(111 111 20 / 50%);\\n\\n$fallback--panelRadius: 10px;\\n$fallback--checkboxRadius: 2px;\\n$fallback--btnRadius: 4px;\\n$fallback--inputRadius: 4px;\\n$fallback--tooltipRadius: 5px;\\n$fallback--avatarRadius: 4px;\\n$fallback--avatarAltRadius: 10px;\\n$fallback--attachmentRadius: 10px;\\n$fallback--chatMessageRadius: 10px;\\n\\n$fallback--buttonShadow: 0 0 2px 0 rgb(0 0 0 / 100%),\\n 0 1px 0 0 rgb(255 255 255 / 20%) inset,\\n 0 -1px 0 0 rgb(0 0 0 / 20%) inset;\\n\\n$status-margin: 0.75em;\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2xpbmstcHJldmlldy9saW5rLXByZXZpZXcudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9YzliMjNmMjImbGFuZz1zY3NzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7QUFDZ0g7QUFDakI7QUFDL0YsOEJBQThCLG1GQUEyQixDQUFDLDRGQUFxQztBQUMvRjtBQUNBLDhEQUE4RCxrQkFBa0Isd0JBQXdCLG9CQUFvQixxQkFBcUIsc0JBQXNCLG1CQUFtQixnQ0FBZ0Msd0JBQXdCLHNCQUFzQix3QkFBd0IsaURBQWlELHVCQUF1QixzQ0FBc0MsR0FBRyxrQ0FBa0MsbUJBQW1CLGlCQUFpQixtQkFBbUIsR0FBRyxzQ0FBc0MsZ0JBQWdCLGlCQUFpQix5QkFBeUIseUJBQXlCLHdCQUF3QixpREFBaUQsR0FBRyxvQ0FBb0MscUJBQXFCLGtCQUFrQixrQkFBa0IsMkJBQTJCLEdBQUcsaUNBQWlDLHNCQUFzQixHQUFHLHdDQUF3QyxzQkFBc0IscUJBQXFCLDRCQUE0QiwyQkFBMkIsdUJBQXVCLGtDQUFrQyxHQUFHLGtDQUFrQyxrQkFBa0IsR0FBRyxPQUFPLGlKQUFpSixVQUFVLFdBQVcsVUFBVSxXQUFXLFdBQVcsWUFBWSxZQUFZLFdBQVcsV0FBVyxhQUFhLGFBQWEsYUFBYSxhQUFhLE1BQU0sS0FBSyxVQUFVLFVBQVUsVUFBVSxLQUFLLEtBQUssVUFBVSxVQUFVLFdBQVcsV0FBVyxZQUFZLFlBQVksS0FBSyxLQUFLLFdBQVcsVUFBVSxVQUFVLFdBQVcsS0FBSyxLQUFLLFdBQVcsS0FBSyxLQUFLLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLEtBQUssS0FBSyxVQUFVLHVEQUF1RCx3QkFBd0Isa0JBQWtCLHdCQUF3QixvQkFBb0IscUJBQXFCLHNCQUFzQixtQkFBbUIscUJBQXFCLG1CQUFtQixxQkFBcUIsYUFBYSxvQkFBb0IscUJBQXFCLDBCQUEwQixtREFBbUQsNEVBQTRFLE9BQU8sS0FBSyxxQkFBcUIsdUJBQXVCLG9CQUFvQixvQkFBb0IsNkJBQTZCLEtBQUssa0JBQWtCLHdCQUF3QixLQUFLLHlCQUF5Qix3QkFBd0IsdUJBQXVCLDhCQUE4Qiw2QkFBNkIseUJBQXlCLGtNQUFrTSxLQUFLLG1CQUFtQixvQkFBb0IsS0FBSyw2QkFBNkIsd0NBQXdDLHdCQUF3QixzQkFBc0IsK0NBQStDLHdFQUF3RSxvQ0FBb0MsbURBQW1ELEdBQUcsMEJBQTBCLDBCQUEwQixtQ0FBbUMsMkJBQTJCLHlCQUF5QiwyQ0FBMkMsMkJBQTJCLDJCQUEyQix3QkFBd0Isb0NBQW9DLGdDQUFnQywwQkFBMEIsd0JBQXdCLDRCQUE0Qiw2QkFBNkIsNkJBQTZCLGdEQUFnRCxpREFBaUQsaUNBQWlDLGlDQUFpQyw0QkFBNEIsOEJBQThCLGdDQUFnQywrQkFBK0IsbUNBQW1DLG9DQUFvQyxxQ0FBcUMsMElBQTBJLDJCQUEyQixxQkFBcUI7QUFDOWhJO0FBQ0EsaUVBQWUsdUJBQXVCLEVBQUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL2NvbXBvbmVudHMvbGluay1wcmV2aWV3L2xpbmstcHJldmlldy52dWU/YWRhNCJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBJbXBvcnRzXG5pbXBvcnQgX19fQ1NTX0xPQURFUl9BUElfU09VUkNFTUFQX0lNUE9SVF9fXyBmcm9tIFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvZGlzdC9ydW50aW1lL3NvdXJjZU1hcHMuanNcIjtcbmltcG9ydCBfX19DU1NfTE9BREVSX0FQSV9JTVBPUlRfX18gZnJvbSBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2Rpc3QvcnVudGltZS9hcGkuanNcIjtcbnZhciBfX19DU1NfTE9BREVSX0VYUE9SVF9fXyA9IF9fX0NTU19MT0FERVJfQVBJX0lNUE9SVF9fXyhfX19DU1NfTE9BREVSX0FQSV9TT1VSQ0VNQVBfSU1QT1JUX19fKTtcbi8vIE1vZHVsZVxuX19fQ1NTX0xPQURFUl9FWFBPUlRfX18ucHVzaChbbW9kdWxlLmlkLCBcIi5saW5rLXByZXZpZXctY2FyZCB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcXG4gIGN1cnNvcjogcG9pbnRlcjtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICBtYXJnaW4tdG9wOiAwLjVlbTtcXG4gIGNvbG9yOiAjYjliOWJhO1xcbiAgY29sb3I6IHZhcigtLXRleHQsICNiOWI5YmEpO1xcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gIGJvcmRlci13aWR0aDogMXB4O1xcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWF0dGFjaG1lbnRSYWRpdXMsIDEwcHgpO1xcbiAgYm9yZGVyLWNvbG9yOiAjMjIyO1xcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXIsICMyMjIpO1xcbn1cXG4ubGluay1wcmV2aWV3LWNhcmQgLmNhcmQtaW1hZ2Uge1xcbiAgZmxleC1zaHJpbms6IDA7XFxuICB3aWR0aDogMTIwcHg7XFxuICBtYXgtd2lkdGg6IDI1JTtcXG59XFxuLmxpbmstcHJldmlldy1jYXJkIC5jYXJkLWltYWdlIGltZyB7XFxuICB3aWR0aDogMTAwJTtcXG4gIGhlaWdodDogMTAwJTtcXG4gIC1vLW9iamVjdC1maXQ6IGNvdmVyO1xcbiAgICAgb2JqZWN0LWZpdDogY292ZXI7XFxuICBib3JkZXItcmFkaXVzOiAxMHB4O1xcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYXR0YWNobWVudFJhZGl1cywgMTBweCk7XFxufVxcbi5saW5rLXByZXZpZXctY2FyZCAuY2FyZC1jb250ZW50IHtcXG4gIG1heC1oZWlnaHQ6IDEwMCU7XFxuICBtYXJnaW46IDAuNWVtO1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxufVxcbi5saW5rLXByZXZpZXctY2FyZCAuY2FyZC1ob3N0IHtcXG4gIGZvbnQtc2l6ZTogMC44NWVtO1xcbn1cXG4ubGluay1wcmV2aWV3LWNhcmQgLmNhcmQtZGVzY3JpcHRpb24ge1xcbiAgbWFyZ2luOiAwLjVlbSAwIDA7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XFxuICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xcbiAgbGluZS1oZWlnaHQ6IDEuMmVtO1xcbiAgbWF4LWhlaWdodDogY2FsYygzLjZlbSAtIDFweCk7XFxufVxcbi5saW5rLXByZXZpZXctY2FyZCAubnNmdy1hbGVydCB7XFxuICBtYXJnaW46IDJlbSAwO1xcbn1cIiwgXCJcIix7XCJ2ZXJzaW9uXCI6MyxcInNvdXJjZXNcIjpbXCJ3ZWJwYWNrOi8vLi9zcmMvY29tcG9uZW50cy9saW5rLXByZXZpZXcvbGluay1wcmV2aWV3LnZ1ZVwiLFwid2VicGFjazovLy4vc3JjL192YXJpYWJsZXMuc2Nzc1wiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiQUFHQTtFQUNFLGFBQUE7RUFDQSxtQkFBQTtFQUNBLGVBQUE7RUFDQSxnQkFBQTtFQUNBLGlCQUFBO0VBMENBLGNDM0NlO0VENENmLDJCQUFBO0VBQ0EsbUJBQUE7RUFDQSxpQkFBQTtFQUNBLG1CQzFCMkI7RUQyQjNCLDRDQUFBO0VBQ0Esa0JDNUNpQjtFRDZDakIsaUNBQUE7QUEzQ0Y7QUFKRTtFQUNFLGNBQUE7RUFDQSxZQUFBO0VBQ0EsY0FBQTtBQU1KO0FBSkk7RUFDRSxXQUFBO0VBQ0EsWUFBQTtFQUNBLG9CQUFBO0tBQUEsaUJBQUE7RUFDQSxtQkNTdUI7RURSdkIsNENBQUE7QUFNTjtBQUZFO0VBQ0UsZ0JBQUE7RUFDQSxhQUFBO0VBQ0EsYUFBQTtFQUNBLHNCQUFBO0FBSUo7QUFERTtFQUNFLGlCQUFBO0FBR0o7QUFBRTtFQUNFLGlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSx1QkFBQTtFQUNBLHNCQUFBO0VBQ0Esa0JBQUE7RUFHQSw2QkFBQTtBQUFKO0FBR0U7RUFDRSxhQUFBO0FBREpcIixcInNvdXJjZXNDb250ZW50XCI6W1wiXFxuQGltcG9ydCBcXFwiLi4vLi4vdmFyaWFibGVzXFxcIjtcXG5cXG4ubGluay1wcmV2aWV3LWNhcmQge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XFxuICBjdXJzb3I6IHBvaW50ZXI7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgbWFyZ2luLXRvcDogMC41ZW07XFxuXFxuICAuY2FyZC1pbWFnZSB7XFxuICAgIGZsZXgtc2hyaW5rOiAwO1xcbiAgICB3aWR0aDogMTIwcHg7XFxuICAgIG1heC13aWR0aDogMjUlO1xcblxcbiAgICBpbWcge1xcbiAgICAgIHdpZHRoOiAxMDAlO1xcbiAgICAgIGhlaWdodDogMTAwJTtcXG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcXG4gICAgICBib3JkZXItcmFkaXVzOiAkZmFsbGJhY2stLWF0dGFjaG1lbnRSYWRpdXM7XFxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYXR0YWNobWVudFJhZGl1cywgJGZhbGxiYWNrLS1hdHRhY2htZW50UmFkaXVzKTtcXG4gICAgfVxcbiAgfVxcblxcbiAgLmNhcmQtY29udGVudCB7XFxuICAgIG1heC1oZWlnaHQ6IDEwMCU7XFxuICAgIG1hcmdpbjogMC41ZW07XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICB9XFxuXFxuICAuY2FyZC1ob3N0IHtcXG4gICAgZm9udC1zaXplOiAwLjg1ZW07XFxuICB9XFxuXFxuICAuY2FyZC1kZXNjcmlwdGlvbiB7XFxuICAgIG1hcmdpbjogMC41ZW0gMCAwO1xcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcXG4gICAgd29yZC1icmVhazogYnJlYWstd29yZDtcXG4gICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xcbiAgICAvLyBjYXAgZGVzY3JpcHRpb24gYXQgMyBsaW5lcywgdGhlIDFweCBpcyB0byBjbGVhbiB1cCBzb21lIHN0cmF5IHBpeGVsc1xcbiAgICAvLyBUT0RPOiBmYW5jaWVyIGZhZGUtb3V0IGF0IHRoZSBib3R0b20gdG8gc2hvdyBvZmYgdGhhdCBpdCdzIHRvbyBsb25nP1xcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEuMmVtICogMyAtIDFweCk7XFxuICB9XFxuXFxuICAubnNmdy1hbGVydCB7XFxuICAgIG1hcmdpbjogMmVtIDA7XFxuICB9XFxuXFxuICBjb2xvcjogJGZhbGxiYWNrLS10ZXh0O1xcbiAgY29sb3I6IHZhcigtLXRleHQsICRmYWxsYmFjay0tdGV4dCk7XFxuICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgYm9yZGVyLXdpZHRoOiAxcHg7XFxuICBib3JkZXItcmFkaXVzOiAkZmFsbGJhY2stLWF0dGFjaG1lbnRSYWRpdXM7XFxuICBib3JkZXItcmFkaXVzOiB2YXIoLS1hdHRhY2htZW50UmFkaXVzLCAkZmFsbGJhY2stLWF0dGFjaG1lbnRSYWRpdXMpO1xcbiAgYm9yZGVyLWNvbG9yOiAkZmFsbGJhY2stLWJvcmRlcjtcXG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLCAkZmFsbGJhY2stLWJvcmRlcik7XFxufVxcblwiLFwiJG1haW4tY29sb3I6ICNmNThkMmM7XFxuJG1haW4tYmFja2dyb3VuZDogd2hpdGU7XFxuJGRhcmtlbmVkLWJhY2tncm91bmQ6IHdoaXRlc21va2U7XFxuXFxuJGZhbGxiYWNrLS1iZzogIzEyMWEyNDtcXG4kZmFsbGJhY2stLWZnOiAjMTgyMjMwO1xcbiRmYWxsYmFjay0tZmFpbnQ6IHJnYigxODUgMTg1IDE4NiAvIDUwJSk7XFxuJGZhbGxiYWNrLS10ZXh0OiAjYjliOWJhO1xcbiRmYWxsYmFjay0tbGluazogI2Q4YTA3MDtcXG4kZmFsbGJhY2stLWljb246ICM2NjY7XFxuJGZhbGxiYWNrLS1saWdodEJnOiByZ2IoMjEgMzAgNDIpO1xcbiRmYWxsYmFjay0tbGlnaHRUZXh0OiAjYjliOWJhO1xcbiRmYWxsYmFjay0tYm9yZGVyOiAjMjIyO1xcbiRmYWxsYmFjay0tY1JlZDogI2YwMDtcXG4kZmFsbGJhY2stLWNCbHVlOiAjMDA5NWZmO1xcbiRmYWxsYmFjay0tY0dyZWVuOiAjMGZhMDBmO1xcbiRmYWxsYmFjay0tY09yYW5nZTogb3JhbmdlO1xcblxcbiRmYWxsYmFjay0tYWxlcnRFcnJvcjogcmdiKDIxMSAxNiAyMCAvIDUwJSk7XFxuJGZhbGxiYWNrLS1hbGVydFdhcm5pbmc6IHJnYigxMTEgMTExIDIwIC8gNTAlKTtcXG5cXG4kZmFsbGJhY2stLXBhbmVsUmFkaXVzOiAxMHB4O1xcbiRmYWxsYmFjay0tY2hlY2tib3hSYWRpdXM6IDJweDtcXG4kZmFsbGJhY2stLWJ0blJhZGl1czogNHB4O1xcbiRmYWxsYmFjay0taW5wdXRSYWRpdXM6IDRweDtcXG4kZmFsbGJhY2stLXRvb2x0aXBSYWRpdXM6IDVweDtcXG4kZmFsbGJhY2stLWF2YXRhclJhZGl1czogNHB4O1xcbiRmYWxsYmFjay0tYXZhdGFyQWx0UmFkaXVzOiAxMHB4O1xcbiRmYWxsYmFjay0tYXR0YWNobWVudFJhZGl1czogMTBweDtcXG4kZmFsbGJhY2stLWNoYXRNZXNzYWdlUmFkaXVzOiAxMHB4O1xcblxcbiRmYWxsYmFjay0tYnV0dG9uU2hhZG93OiAwIDAgMnB4IDAgcmdiKDAgMCAwIC8gMTAwJSksXFxuICAwIDFweCAwIDAgcmdiKDI1NSAyNTUgMjU1IC8gMjAlKSBpbnNldCxcXG4gIDAgLTFweCAwIDAgcmdiKDAgMCAwIC8gMjAlKSBpbnNldDtcXG5cXG4kc3RhdHVzLW1hcmdpbjogMC43NWVtO1xcblwiXSxcInNvdXJjZVJvb3RcIjpcIlwifV0pO1xuLy8gRXhwb3J0c1xuZXhwb3J0IGRlZmF1bHQgX19fQ1NTX0xPQURFUl9FWFBPUlRfX187XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/link-preview/link-preview.vue?vue&type=style&index=0&id=c9b23f22&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/list/list.vue?vue&type=style&index=0&id=eeef07e2&lang=scss":
/*!****************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/list/list.vue?vue&type=style&index=0&id=eeef07e2&lang=scss ***!
\****************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".list-item:not(:last-child) {\\n border-bottom: 1px solid;\\n border-bottom-color: #222;\\n border-bottom-color: var(--border, #222);\\n}\\n.list-empty-content {\\n text-align: center;\\n padding: 10px;\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/list/list.vue\",\"webpack://./src/_variables.scss\"],\"names\":[],\"mappings\":\"AAIE;EACE,wBAAA;EACA,yBCMe;EDLf,wCAAA;AAHJ;AAME;EACE,kBAAA;EACA,aAAA;AAJJ\",\"sourcesContent\":[\"\\n@import \\\"../../variables\\\";\\n\\n.list {\\n &-item:not(:last-child) {\\n border-bottom: 1px solid;\\n border-bottom-color: $fallback--border;\\n border-bottom-color: var(--border, $fallback--border);\\n }\\n\\n &-empty-content {\\n text-align: center;\\n padding: 10px;\\n }\\n}\\n\",\"$main-color: #f58d2c;\\n$main-background: white;\\n$darkened-background: whitesmoke;\\n\\n$fallback--bg: #121a24;\\n$fallback--fg: #182230;\\n$fallback--faint: rgb(185 185 186 / 50%);\\n$fallback--text: #b9b9ba;\\n$fallback--link: #d8a070;\\n$fallback--icon: #666;\\n$fallback--lightBg: rgb(21 30 42);\\n$fallback--lightText: #b9b9ba;\\n$fallback--border: #222;\\n$fallback--cRed: #f00;\\n$fallback--cBlue: #0095ff;\\n$fallback--cGreen: #0fa00f;\\n$fallback--cOrange: orange;\\n\\n$fallback--alertError: rgb(211 16 20 / 50%);\\n$fallback--alertWarning: rgb(111 111 20 / 50%);\\n\\n$fallback--panelRadius: 10px;\\n$fallback--checkboxRadius: 2px;\\n$fallback--btnRadius: 4px;\\n$fallback--inputRadius: 4px;\\n$fallback--tooltipRadius: 5px;\\n$fallback--avatarRadius: 4px;\\n$fallback--avatarAltRadius: 10px;\\n$fallback--attachmentRadius: 10px;\\n$fallback--chatMessageRadius: 10px;\\n\\n$fallback--buttonShadow: 0 0 2px 0 rgb(0 0 0 / 100%),\\n 0 1px 0 0 rgb(255 255 255 / 20%) inset,\\n 0 -1px 0 0 rgb(0 0 0 / 20%) inset;\\n\\n$status-margin: 0.75em;\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2xpc3QvbGlzdC52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD1lZWVmMDdlMiZsYW5nPXNjc3MuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQTtBQUNnSDtBQUNqQjtBQUMvRiw4QkFBOEIsbUZBQTJCLENBQUMsNEZBQXFDO0FBQy9GO0FBQ0EsdUVBQXVFLDZCQUE2Qiw4QkFBOEIsNkNBQTZDLEdBQUcsdUJBQXVCLHVCQUF1QixrQkFBa0IsR0FBRyxPQUFPLGlJQUFpSSxXQUFXLFdBQVcsV0FBVyxLQUFLLEtBQUssV0FBVyxVQUFVLHVEQUF1RCxXQUFXLDZCQUE2QiwrQkFBK0IsNkNBQTZDLDREQUE0RCxLQUFLLHVCQUF1Qix5QkFBeUIsb0JBQW9CLEtBQUssR0FBRywwQkFBMEIsMEJBQTBCLG1DQUFtQywyQkFBMkIseUJBQXlCLDJDQUEyQywyQkFBMkIsMkJBQTJCLHdCQUF3QixvQ0FBb0MsZ0NBQWdDLDBCQUEwQix3QkFBd0IsNEJBQTRCLDZCQUE2Qiw2QkFBNkIsZ0RBQWdELGlEQUFpRCxpQ0FBaUMsaUNBQWlDLDRCQUE0Qiw4QkFBOEIsZ0NBQWdDLCtCQUErQixtQ0FBbUMsb0NBQW9DLHFDQUFxQywwSUFBMEksMkJBQTJCLHFCQUFxQjtBQUN2d0Q7QUFDQSxpRUFBZSx1QkFBdUIsRUFBQyIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvY29tcG9uZW50cy9saXN0L2xpc3QudnVlP2Q1NGQiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gSW1wb3J0c1xuaW1wb3J0IF9fX0NTU19MT0FERVJfQVBJX1NPVVJDRU1BUF9JTVBPUlRfX18gZnJvbSBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2Rpc3QvcnVudGltZS9zb3VyY2VNYXBzLmpzXCI7XG5pbXBvcnQgX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fIGZyb20gXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvYXBpLmpzXCI7XG52YXIgX19fQ1NTX0xPQURFUl9FWFBPUlRfX18gPSBfX19DU1NfTE9BREVSX0FQSV9JTVBPUlRfX18oX19fQ1NTX0xPQURFUl9BUElfU09VUkNFTUFQX0lNUE9SVF9fXyk7XG4vLyBNb2R1bGVcbl9fX0NTU19MT0FERVJfRVhQT1JUX19fLnB1c2goW21vZHVsZS5pZCwgXCIubGlzdC1pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzIyMjtcXG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWJvcmRlciwgIzIyMik7XFxufVxcbi5saXN0LWVtcHR5LWNvbnRlbnQge1xcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xcbiAgcGFkZGluZzogMTBweDtcXG59XCIsIFwiXCIse1widmVyc2lvblwiOjMsXCJzb3VyY2VzXCI6W1wid2VicGFjazovLy4vc3JjL2NvbXBvbmVudHMvbGlzdC9saXN0LnZ1ZVwiLFwid2VicGFjazovLy4vc3JjL192YXJpYWJsZXMuc2Nzc1wiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiQUFJRTtFQUNFLHdCQUFBO0VBQ0EseUJDTWU7RURMZix3Q0FBQTtBQUhKO0FBTUU7RUFDRSxrQkFBQTtFQUNBLGFBQUE7QUFKSlwiLFwic291cmNlc0NvbnRlbnRcIjpbXCJcXG5AaW1wb3J0IFxcXCIuLi8uLi92YXJpYWJsZXNcXFwiO1xcblxcbi5saXN0IHtcXG4gICYtaXRlbTpub3QoOmxhc3QtY2hpbGQpIHtcXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkZmFsbGJhY2stLWJvcmRlcjtcXG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tYm9yZGVyLCAkZmFsbGJhY2stLWJvcmRlcik7XFxuICB9XFxuXFxuICAmLWVtcHR5LWNvbnRlbnQge1xcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxuICAgIHBhZGRpbmc6IDEwcHg7XFxuICB9XFxufVxcblwiLFwiJG1haW4tY29sb3I6ICNmNThkMmM7XFxuJG1haW4tYmFja2dyb3VuZDogd2hpdGU7XFxuJGRhcmtlbmVkLWJhY2tncm91bmQ6IHdoaXRlc21va2U7XFxuXFxuJGZhbGxiYWNrLS1iZzogIzEyMWEyNDtcXG4kZmFsbGJhY2stLWZnOiAjMTgyMjMwO1xcbiRmYWxsYmFjay0tZmFpbnQ6IHJnYigxODUgMTg1IDE4NiAvIDUwJSk7XFxuJGZhbGxiYWNrLS10ZXh0OiAjYjliOWJhO1xcbiRmYWxsYmFjay0tbGluazogI2Q4YTA3MDtcXG4kZmFsbGJhY2stLWljb246ICM2NjY7XFxuJGZhbGxiYWNrLS1saWdodEJnOiByZ2IoMjEgMzAgNDIpO1xcbiRmYWxsYmFjay0tbGlnaHRUZXh0OiAjYjliOWJhO1xcbiRmYWxsYmFjay0tYm9yZGVyOiAjMjIyO1xcbiRmYWxsYmFjay0tY1JlZDogI2YwMDtcXG4kZmFsbGJhY2stLWNCbHVlOiAjMDA5NWZmO1xcbiRmYWxsYmFjay0tY0dyZWVuOiAjMGZhMDBmO1xcbiRmYWxsYmFjay0tY09yYW5nZTogb3JhbmdlO1xcblxcbiRmYWxsYmFjay0tYWxlcnRFcnJvcjogcmdiKDIxMSAxNiAyMCAvIDUwJSk7XFxuJGZhbGxiYWNrLS1hbGVydFdhcm5pbmc6IHJnYigxMTEgMTExIDIwIC8gNTAlKTtcXG5cXG4kZmFsbGJhY2stLXBhbmVsUmFkaXVzOiAxMHB4O1xcbiRmYWxsYmFjay0tY2hlY2tib3hSYWRpdXM6IDJweDtcXG4kZmFsbGJhY2stLWJ0blJhZGl1czogNHB4O1xcbiRmYWxsYmFjay0taW5wdXRSYWRpdXM6IDRweDtcXG4kZmFsbGJhY2stLXRvb2x0aXBSYWRpdXM6IDVweDtcXG4kZmFsbGJhY2stLWF2YXRhclJhZGl1czogNHB4O1xcbiRmYWxsYmFjay0tYXZhdGFyQWx0UmFkaXVzOiAxMHB4O1xcbiRmYWxsYmFjay0tYXR0YWNobWVudFJhZGl1czogMTBweDtcXG4kZmFsbGJhY2stLWNoYXRNZXNzYWdlUmFkaXVzOiAxMHB4O1xcblxcbiRmYWxsYmFjay0tYnV0dG9uU2hhZG93OiAwIDAgMnB4IDAgcmdiKDAgMCAwIC8gMTAwJSksXFxuICAwIDFweCAwIDAgcmdiKDI1NSAyNTUgMjU1IC8gMjAlKSBpbnNldCxcXG4gIDAgLTFweCAwIDAgcmdiKDAgMCAwIC8gMjAlKSBpbnNldDtcXG5cXG4kc3RhdHVzLW1hcmdpbjogMC43NWVtO1xcblwiXSxcInNvdXJjZVJvb3RcIjpcIlwifV0pO1xuLy8gRXhwb3J0c1xuZXhwb3J0IGRlZmF1bHQgX19fQ1NTX0xPQURFUl9FWFBPUlRfX187XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/list/list.vue?vue&type=style&index=0&id=eeef07e2&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/lists/lists.vue?vue&type=style&index=0&id=6044ed8a&lang=scss":
/*!******************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/lists/lists.vue?vue&type=style&index=0&id=6044ed8a&lang=scss ***!
\******************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".Lists .new-list-button {\\n padding: 0 0.5em;\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/lists/lists.vue\"],\"names\":[],\"mappings\":\"AAEE;EACE,gBAAA;AADJ\",\"sourcesContent\":[\"\\n.Lists {\\n .new-list-button {\\n padding: 0 0.5em;\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2xpc3RzL2xpc3RzLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTYwNDRlZDhhJmxhbmc9c2Nzcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBO0FBQ2dIO0FBQ2pCO0FBQy9GLDhCQUE4QixtRkFBMkIsQ0FBQyw0RkFBcUM7QUFDL0Y7QUFDQSxtRUFBbUUscUJBQXFCLEdBQUcsT0FBTyxpR0FBaUcsV0FBVyxtQ0FBbUMsc0JBQXNCLHVCQUF1QixLQUFLLEdBQUcscUJBQXFCO0FBQzNUO0FBQ0EsaUVBQWUsdUJBQXVCLEVBQUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL2NvbXBvbmVudHMvbGlzdHMvbGlzdHMudnVlP2I1NGQiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gSW1wb3J0c1xuaW1wb3J0IF9fX0NTU19MT0FERVJfQVBJX1NPVVJDRU1BUF9JTVBPUlRfX18gZnJvbSBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2Rpc3QvcnVudGltZS9zb3VyY2VNYXBzLmpzXCI7XG5pbXBvcnQgX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fIGZyb20gXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvYXBpLmpzXCI7XG52YXIgX19fQ1NTX0xPQURFUl9FWFBPUlRfX18gPSBfX19DU1NfTE9BREVSX0FQSV9JTVBPUlRfX18oX19fQ1NTX0xPQURFUl9BUElfU09VUkNFTUFQX0lNUE9SVF9fXyk7XG4vLyBNb2R1bGVcbl9fX0NTU19MT0FERVJfRVhQT1JUX19fLnB1c2goW21vZHVsZS5pZCwgXCIuTGlzdHMgLm5ldy1saXN0LWJ1dHRvbiB7XFxuICBwYWRkaW5nOiAwIDAuNWVtO1xcbn1cIiwgXCJcIix7XCJ2ZXJzaW9uXCI6MyxcInNvdXJjZXNcIjpbXCJ3ZWJwYWNrOi8vLi9zcmMvY29tcG9uZW50cy9saXN0cy9saXN0cy52dWVcIl0sXCJuYW1lc1wiOltdLFwibWFwcGluZ3NcIjpcIkFBRUU7RUFDRSxnQkFBQTtBQURKXCIsXCJzb3VyY2VzQ29udGVudFwiOltcIlxcbi5MaXN0cyB7XFxuICAubmV3LWxpc3QtYnV0dG9uIHtcXG4gICAgcGFkZGluZzogMCAwLjVlbTtcXG4gIH1cXG59XFxuXCJdLFwic291cmNlUm9vdFwiOlwiXCJ9XSk7XG4vLyBFeHBvcnRzXG5leHBvcnQgZGVmYXVsdCBfX19DU1NfTE9BREVSX0VYUE9SVF9fXztcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/lists/lists.vue?vue&type=style&index=0&id=6044ed8a&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/lists_card/lists_card.vue?vue&type=style&index=0&id=44c3e462&lang=scss":
/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/lists_card/lists_card.vue?vue&type=style&index=0&id=44c3e462&lang=scss ***!
\****************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".list-card {\\n display: flex;\\n}\\n.list-name {\\n flex-grow: 1;\\n}\\n.list-name,\\n.button-list-edit {\\n margin: 0;\\n padding: 1em;\\n color: #d8a070;\\n color: var(--link, #d8a070);\\n}\\n.list-name:hover,\\n.button-list-edit:hover {\\n background-color: rgb(21, 30, 42);\\n background-color: var(--selectedMenu, rgb(21, 30, 42));\\n color: #d8a070;\\n color: var(--selectedMenuText, #d8a070);\\n --faint: var(--selectedMenuFaintText, $fallback--faint);\\n --faintLink: var(--selectedMenuFaintLink, $fallback--faint);\\n --lightText: var(--selectedMenuLightText, $fallback--lightText);\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/lists_card/lists_card.vue\",\"webpack://./src/_variables.scss\"],\"names\":[],\"mappings\":\"AAGA;EACE,aAAA;AAFF;AAKA;EACE,YAAA;AAFF;AAKA;;EAEE,SAAA;EACA,YAAA;EACA,cCPe;EDQf,2BAAA;AAFF;AAIE;;EACE,iCCTgB;EDUhB,sDAAA;EACA,cCba;EDcb,uCAAA;EAEA,uDAAA;EACA,2DAAA;EACA,+DAAA;AAFJ\",\"sourcesContent\":[\"\\n@import \\\"../../variables\\\";\\n\\n.list-card {\\n display: flex;\\n}\\n\\n.list-name {\\n flex-grow: 1;\\n}\\n\\n.list-name,\\n.button-list-edit {\\n margin: 0;\\n padding: 1em;\\n color: $fallback--link;\\n color: var(--link, $fallback--link);\\n\\n &:hover {\\n background-color: $fallback--lightBg;\\n background-color: var(--selectedMenu, $fallback--lightBg);\\n color: $fallback--link;\\n color: var(--selectedMenuText, $fallback--link);\\n\\n --faint: var(--selectedMenuFaintText, $fallback--faint);\\n --faintLink: var(--selectedMenuFaintLink, $fallback--faint);\\n --lightText: var(--selectedMenuLightText, $fallback--lightText);\\n }\\n}\\n\",\"$main-color: #f58d2c;\\n$main-background: white;\\n$darkened-background: whitesmoke;\\n\\n$fallback--bg: #121a24;\\n$fallback--fg: #182230;\\n$fallback--faint: rgb(185 185 186 / 50%);\\n$fallback--text: #b9b9ba;\\n$fallback--link: #d8a070;\\n$fallback--icon: #666;\\n$fallback--lightBg: rgb(21 30 42);\\n$fallback--lightText: #b9b9ba;\\n$fallback--border: #222;\\n$fallback--cRed: #f00;\\n$fallback--cBlue: #0095ff;\\n$fallback--cGreen: #0fa00f;\\n$fallback--cOrange: orange;\\n\\n$fallback--alertError: rgb(211 16 20 / 50%);\\n$fallback--alertWarning: rgb(111 111 20 / 50%);\\n\\n$fallback--panelRadius: 10px;\\n$fallback--checkboxRadius: 2px;\\n$fallback--btnRadius: 4px;\\n$fallback--inputRadius: 4px;\\n$fallback--tooltipRadius: 5px;\\n$fallback--avatarRadius: 4px;\\n$fallback--avatarAltRadius: 10px;\\n$fallback--attachmentRadius: 10px;\\n$fallback--chatMessageRadius: 10px;\\n\\n$fallback--buttonShadow: 0 0 2px 0 rgb(0 0 0 / 100%),\\n 0 1px 0 0 rgb(255 255 255 / 20%) inset,\\n 0 -1px 0 0 rgb(0 0 0 / 20%) inset;\\n\\n$status-margin: 0.75em;\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2xpc3RzX2NhcmQvbGlzdHNfY2FyZC52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD00NGMzZTQ2MiZsYW5nPXNjc3MuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQTtBQUNnSDtBQUNqQjtBQUMvRiw4QkFBOEIsbUZBQTJCLENBQUMsNEZBQXFDO0FBQy9GO0FBQ0Esc0RBQXNELGtCQUFrQixHQUFHLGNBQWMsaUJBQWlCLEdBQUcsa0NBQWtDLGNBQWMsaUJBQWlCLG1CQUFtQixnQ0FBZ0MsR0FBRyw4Q0FBOEMsc0NBQXNDLDJEQUEyRCxtQkFBbUIsNENBQTRDLDREQUE0RCxnRUFBZ0Usb0VBQW9FLEdBQUcsT0FBTyw2SUFBNkksVUFBVSxLQUFLLEtBQUssVUFBVSxLQUFLLE1BQU0sVUFBVSxVQUFVLFVBQVUsV0FBVyxLQUFLLE1BQU0sWUFBWSxZQUFZLFVBQVUsV0FBVyxXQUFXLFdBQVcsV0FBVyx1REFBdUQsZ0JBQWdCLGtCQUFrQixHQUFHLGdCQUFnQixpQkFBaUIsR0FBRyxvQ0FBb0MsY0FBYyxpQkFBaUIsMkJBQTJCLHdDQUF3QyxlQUFlLDJDQUEyQyxnRUFBZ0UsNkJBQTZCLHNEQUFzRCxnRUFBZ0Usa0VBQWtFLHNFQUFzRSxLQUFLLEdBQUcsMEJBQTBCLDBCQUEwQixtQ0FBbUMsMkJBQTJCLHlCQUF5QiwyQ0FBMkMsMkJBQTJCLDJCQUEyQix3QkFBd0Isb0NBQW9DLGdDQUFnQywwQkFBMEIsd0JBQXdCLDRCQUE0Qiw2QkFBNkIsNkJBQTZCLGdEQUFnRCxpREFBaUQsaUNBQWlDLGlDQUFpQyw0QkFBNEIsOEJBQThCLGdDQUFnQywrQkFBK0IsbUNBQW1DLG9DQUFvQyxxQ0FBcUMsMElBQTBJLDJCQUEyQixxQkFBcUI7QUFDem1GO0FBQ0EsaUVBQWUsdUJBQXVCLEVBQUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wbGVyb21hX2ZlLy4vc3JjL2NvbXBvbmVudHMvbGlzdHNfY2FyZC9saXN0c19jYXJkLnZ1ZT9mNDAzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIEltcG9ydHNcbmltcG9ydCBfX19DU1NfTE9BREVSX0FQSV9TT1VSQ0VNQVBfSU1QT1JUX19fIGZyb20gXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvc291cmNlTWFwcy5qc1wiO1xuaW1wb3J0IF9fX0NTU19MT0FERVJfQVBJX0lNUE9SVF9fXyBmcm9tIFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvZGlzdC9ydW50aW1lL2FwaS5qc1wiO1xudmFyIF9fX0NTU19MT0FERVJfRVhQT1JUX19fID0gX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fKF9fX0NTU19MT0FERVJfQVBJX1NPVVJDRU1BUF9JTVBPUlRfX18pO1xuLy8gTW9kdWxlXG5fX19DU1NfTE9BREVSX0VYUE9SVF9fXy5wdXNoKFttb2R1bGUuaWQsIFwiLmxpc3QtY2FyZCB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbn1cXG4ubGlzdC1uYW1lIHtcXG4gIGZsZXgtZ3JvdzogMTtcXG59XFxuLmxpc3QtbmFtZSxcXG4uYnV0dG9uLWxpc3QtZWRpdCB7XFxuICBtYXJnaW46IDA7XFxuICBwYWRkaW5nOiAxZW07XFxuICBjb2xvcjogI2Q4YTA3MDtcXG4gIGNvbG9yOiB2YXIoLS1saW5rLCAjZDhhMDcwKTtcXG59XFxuLmxpc3QtbmFtZTpob3ZlcixcXG4uYnV0dG9uLWxpc3QtZWRpdDpob3ZlciB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjEsIDMwLCA0Mik7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zZWxlY3RlZE1lbnUsIHJnYigyMSwgMzAsIDQyKSk7XFxuICBjb2xvcjogI2Q4YTA3MDtcXG4gIGNvbG9yOiB2YXIoLS1zZWxlY3RlZE1lbnVUZXh0LCAjZDhhMDcwKTtcXG4gIC0tZmFpbnQ6IHZhcigtLXNlbGVjdGVkTWVudUZhaW50VGV4dCwgJGZhbGxiYWNrLS1mYWludCk7XFxuICAtLWZhaW50TGluazogdmFyKC0tc2VsZWN0ZWRNZW51RmFpbnRMaW5rLCAkZmFsbGJhY2stLWZhaW50KTtcXG4gIC0tbGlnaHRUZXh0OiB2YXIoLS1zZWxlY3RlZE1lbnVMaWdodFRleHQsICRmYWxsYmFjay0tbGlnaHRUZXh0KTtcXG59XCIsIFwiXCIse1widmVyc2lvblwiOjMsXCJzb3VyY2VzXCI6W1wid2VicGFjazovLy4vc3JjL2NvbXBvbmVudHMvbGlzdHNfY2FyZC9saXN0c19jYXJkLnZ1ZVwiLFwid2VicGFjazovLy4vc3JjL192YXJpYWJsZXMuc2Nzc1wiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiQUFHQTtFQUNFLGFBQUE7QUFGRjtBQUtBO0VBQ0UsWUFBQTtBQUZGO0FBS0E7O0VBRUUsU0FBQTtFQUNBLFlBQUE7RUFDQSxjQ1BlO0VEUWYsMkJBQUE7QUFGRjtBQUlFOztFQUNFLGlDQ1RnQjtFRFVoQixzREFBQTtFQUNBLGNDYmE7RURjYix1Q0FBQTtFQUVBLHVEQUFBO0VBQ0EsMkRBQUE7RUFDQSwrREFBQTtBQUZKXCIsXCJzb3VyY2VzQ29udGVudFwiOltcIlxcbkBpbXBvcnQgXFxcIi4uLy4uL3ZhcmlhYmxlc1xcXCI7XFxuXFxuLmxpc3QtY2FyZCB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbn1cXG5cXG4ubGlzdC1uYW1lIHtcXG4gIGZsZXgtZ3JvdzogMTtcXG59XFxuXFxuLmxpc3QtbmFtZSxcXG4uYnV0dG9uLWxpc3QtZWRpdCB7XFxuICBtYXJnaW46IDA7XFxuICBwYWRkaW5nOiAxZW07XFxuICBjb2xvcjogJGZhbGxiYWNrLS1saW5rO1xcbiAgY29sb3I6IHZhcigtLWxpbmssICRmYWxsYmFjay0tbGluayk7XFxuXFxuICAmOmhvdmVyIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZhbGxiYWNrLS1saWdodEJnO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zZWxlY3RlZE1lbnUsICRmYWxsYmFjay0tbGlnaHRCZyk7XFxuICAgIGNvbG9yOiAkZmFsbGJhY2stLWxpbms7XFxuICAgIGNvbG9yOiB2YXIoLS1zZWxlY3RlZE1lbnVUZXh0LCAkZmFsbGJhY2stLWxpbmspO1xcblxcbiAgICAtLWZhaW50OiB2YXIoLS1zZWxlY3RlZE1lbnVGYWludFRleHQsICRmYWxsYmFjay0tZmFpbnQpO1xcbiAgICAtLWZhaW50TGluazogdmFyKC0tc2VsZWN0ZWRNZW51RmFpbnRMaW5rLCAkZmFsbGJhY2stLWZhaW50KTtcXG4gICAgLS1saWdodFRleHQ6IHZhcigtLXNlbGVjdGVkTWVudUxpZ2h0VGV4dCwgJGZhbGxiYWNrLS1saWdodFRleHQpO1xcbiAgfVxcbn1cXG5cIixcIiRtYWluLWNvbG9yOiAjZjU4ZDJjO1xcbiRtYWluLWJhY2tncm91bmQ6IHdoaXRlO1xcbiRkYXJrZW5lZC1iYWNrZ3JvdW5kOiB3aGl0ZXNtb2tlO1xcblxcbiRmYWxsYmFjay0tYmc6ICMxMjFhMjQ7XFxuJGZhbGxiYWNrLS1mZzogIzE4MjIzMDtcXG4kZmFsbGJhY2stLWZhaW50OiByZ2IoMTg1IDE4NSAxODYgLyA1MCUpO1xcbiRmYWxsYmFjay0tdGV4dDogI2I5YjliYTtcXG4kZmFsbGJhY2stLWxpbms6ICNkOGEwNzA7XFxuJGZhbGxiYWNrLS1pY29uOiAjNjY2O1xcbiRmYWxsYmFjay0tbGlnaHRCZzogcmdiKDIxIDMwIDQyKTtcXG4kZmFsbGJhY2stLWxpZ2h0VGV4dDogI2I5YjliYTtcXG4kZmFsbGJhY2stLWJvcmRlcjogIzIyMjtcXG4kZmFsbGJhY2stLWNSZWQ6ICNmMDA7XFxuJGZhbGxiYWNrLS1jQmx1ZTogIzAwOTVmZjtcXG4kZmFsbGJhY2stLWNHcmVlbjogIzBmYTAwZjtcXG4kZmFsbGJhY2stLWNPcmFuZ2U6IG9yYW5nZTtcXG5cXG4kZmFsbGJhY2stLWFsZXJ0RXJyb3I6IHJnYigyMTEgMTYgMjAgLyA1MCUpO1xcbiRmYWxsYmFjay0tYWxlcnRXYXJuaW5nOiByZ2IoMTExIDExMSAyMCAvIDUwJSk7XFxuXFxuJGZhbGxiYWNrLS1wYW5lbFJhZGl1czogMTBweDtcXG4kZmFsbGJhY2stLWNoZWNrYm94UmFkaXVzOiAycHg7XFxuJGZhbGxiYWNrLS1idG5SYWRpdXM6IDRweDtcXG4kZmFsbGJhY2stLWlucHV0UmFkaXVzOiA0cHg7XFxuJGZhbGxiYWNrLS10b29sdGlwUmFkaXVzOiA1cHg7XFxuJGZhbGxiYWNrLS1hdmF0YXJSYWRpdXM6IDRweDtcXG4kZmFsbGJhY2stLWF2YXRhckFsdFJhZGl1czogMTBweDtcXG4kZmFsbGJhY2stLWF0dGFjaG1lbnRSYWRpdXM6IDEwcHg7XFxuJGZhbGxiYWNrLS1jaGF0TWVzc2FnZVJhZGl1czogMTBweDtcXG5cXG4kZmFsbGJhY2stLWJ1dHRvblNoYWRvdzogMCAwIDJweCAwIHJnYigwIDAgMCAvIDEwMCUpLFxcbiAgMCAxcHggMCAwIHJnYigyNTUgMjU1IDI1NSAvIDIwJSkgaW5zZXQsXFxuICAwIC0xcHggMCAwIHJnYigwIDAgMCAvIDIwJSkgaW5zZXQ7XFxuXFxuJHN0YXR1cy1tYXJnaW46IDAuNzVlbTtcXG5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcbi8vIEV4cG9ydHNcbmV4cG9ydCBkZWZhdWx0IF9fX0NTU19MT0FERVJfRVhQT1JUX19fO1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/lists_card/lists_card.vue?vue&type=style&index=0&id=44c3e462&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/lists_edit/lists_edit.vue?vue&type=style&index=0&id=69c86d8f&lang=scss":
/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/lists_edit/lists_edit.vue?vue&type=style&index=0&id=69c86d8f&lang=scss ***!
\****************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".ListEdit {\\n --panel-body-padding: 0.5em;\\n height: calc(100vh - var(--navbar-height));\\n overflow: hidden;\\n display: flex;\\n flex-direction: column;\\n}\\n.ListEdit .list-edit-heading {\\n grid-template-columns: auto minmax(50%, 1fr);\\n}\\n.ListEdit .panel-body {\\n display: flex;\\n flex: 1;\\n flex-direction: column;\\n overflow: hidden;\\n}\\n.ListEdit .list-member-management {\\n flex: 1 0 auto;\\n}\\n.ListEdit .search-icon {\\n margin-right: 0.3em;\\n}\\n.ListEdit .users-list {\\n padding-bottom: 0.7rem;\\n overflow-y: auto;\\n}\\n.ListEdit .search-list, .ListEdit .members-list {\\n overflow: hidden;\\n flex-direction: column;\\n min-height: 0;\\n}\\n.ListEdit .go-back-button {\\n text-align: center;\\n line-height: 1;\\n height: 100%;\\n align-self: start;\\n width: var(--__panel-heading-height-inner);\\n}\\n.ListEdit .btn {\\n margin: 0 0.5em;\\n}\\n.ListEdit .panel-footer {\\n grid-template-columns: minmax(10%, 1fr);\\n}\\n.ListEdit .panel-footer .footer-button {\\n min-width: 9em;\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/lists_edit/lists_edit.vue\"],\"names\":[],\"mappings\":\"AAGA;EACE,2BAAA;EAEA,0CAAA;EACA,gBAAA;EACA,aAAA;EACA,sBAAA;AAHF;AAKE;EACE,4CAAA;AAHJ;AAME;EACE,aAAA;EACA,OAAA;EACA,sBAAA;EACA,gBAAA;AAJJ;AAOE;EACE,cAAA;AALJ;AAQE;EACE,mBAAA;AANJ;AASE;EACE,sBAAA;EACA,gBAAA;AAPJ;AAUE;EAEE,gBAAA;EACA,sBAAA;EACA,aAAA;AATJ;AAYE;EACE,kBAAA;EACA,cAAA;EACA,YAAA;EACA,iBAAA;EACA,0CAAA;AAVJ;AAaE;EACE,eAAA;AAXJ;AAcE;EACE,uCAAA;AAZJ;AAcI;EACE,cAAA;AAZN\",\"sourcesContent\":[\"\\n@import \\\"../../variables\\\";\\n\\n.ListEdit {\\n --panel-body-padding: 0.5em;\\n\\n height: calc(100vh - var(--navbar-height));\\n overflow: hidden;\\n display: flex;\\n flex-direction: column;\\n\\n .list-edit-heading {\\n grid-template-columns: auto minmax(50%, 1fr);\\n }\\n\\n .panel-body {\\n display: flex;\\n flex: 1;\\n flex-direction: column;\\n overflow: hidden;\\n }\\n\\n .list-member-management {\\n flex: 1 0 auto;\\n }\\n\\n .search-icon {\\n margin-right: 0.3em;\\n }\\n\\n .users-list {\\n padding-bottom: 0.7rem;\\n overflow-y: auto;\\n }\\n\\n & .search-list,\\n & .members-list {\\n overflow: hidden;\\n flex-direction: column;\\n min-height: 0;\\n }\\n\\n .go-back-button {\\n text-align: center;\\n line-height: 1;\\n height: 100%;\\n align-self: start;\\n width: var(--__panel-heading-height-inner);\\n }\\n\\n .btn {\\n margin: 0 0.5em;\\n }\\n\\n .panel-footer {\\n grid-template-columns: minmax(10%, 1fr);\\n\\n .footer-button {\\n min-width: 9em;\\n }\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2xpc3RzX2VkaXQvbGlzdHNfZWRpdC52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD02OWM4NmQ4ZiZsYW5nPXNjc3MuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQTtBQUNnSDtBQUNqQjtBQUMvRiw4QkFBOEIsbUZBQTJCLENBQUMsNEZBQXFDO0FBQy9GO0FBQ0EscURBQXFELGdDQUFnQywrQ0FBK0MscUJBQXFCLGtCQUFrQiwyQkFBMkIsR0FBRyxnQ0FBZ0MsaURBQWlELEdBQUcseUJBQXlCLGtCQUFrQixZQUFZLDJCQUEyQixxQkFBcUIsR0FBRyxxQ0FBcUMsbUJBQW1CLEdBQUcsMEJBQTBCLHdCQUF3QixHQUFHLHlCQUF5QiwyQkFBMkIscUJBQXFCLEdBQUcsbURBQW1ELHFCQUFxQiwyQkFBMkIsa0JBQWtCLEdBQUcsNkJBQTZCLHVCQUF1QixtQkFBbUIsaUJBQWlCLHNCQUFzQiwrQ0FBK0MsR0FBRyxrQkFBa0Isb0JBQW9CLEdBQUcsMkJBQTJCLDRDQUE0QyxHQUFHLDBDQUEwQyxtQkFBbUIsR0FBRyxPQUFPLDJHQUEyRyxXQUFXLFdBQVcsV0FBVyxVQUFVLFdBQVcsS0FBSyxLQUFLLFdBQVcsS0FBSyxLQUFLLFVBQVUsVUFBVSxXQUFXLFdBQVcsS0FBSyxLQUFLLFVBQVUsS0FBSyxLQUFLLFdBQVcsS0FBSyxLQUFLLFdBQVcsV0FBVyxLQUFLLEtBQUssV0FBVyxXQUFXLFVBQVUsS0FBSyxLQUFLLFdBQVcsVUFBVSxVQUFVLFdBQVcsV0FBVyxLQUFLLEtBQUssVUFBVSxLQUFLLEtBQUssV0FBVyxLQUFLLEtBQUssVUFBVSx1REFBdUQsZUFBZSxnQ0FBZ0MsaURBQWlELHFCQUFxQixrQkFBa0IsMkJBQTJCLDBCQUEwQixtREFBbUQsS0FBSyxtQkFBbUIsb0JBQW9CLGNBQWMsNkJBQTZCLHVCQUF1QixLQUFLLCtCQUErQixxQkFBcUIsS0FBSyxvQkFBb0IsMEJBQTBCLEtBQUssbUJBQW1CLDZCQUE2Qix1QkFBdUIsS0FBSywwQ0FBMEMsdUJBQXVCLDZCQUE2QixvQkFBb0IsS0FBSyx1QkFBdUIseUJBQXlCLHFCQUFxQixtQkFBbUIsd0JBQXdCLGlEQUFpRCxLQUFLLFlBQVksc0JBQXNCLEtBQUsscUJBQXFCLDhDQUE4Qyx3QkFBd0IsdUJBQXVCLE9BQU8sS0FBSyxHQUFHLHFCQUFxQjtBQUN6aEY7QUFDQSxpRUFBZSx1QkFBdUIsRUFBQyIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvY29tcG9uZW50cy9saXN0c19lZGl0L2xpc3RzX2VkaXQudnVlPzU5NDAiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gSW1wb3J0c1xuaW1wb3J0IF9fX0NTU19MT0FERVJfQVBJX1NPVVJDRU1BUF9JTVBPUlRfX18gZnJvbSBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2Rpc3QvcnVudGltZS9zb3VyY2VNYXBzLmpzXCI7XG5pbXBvcnQgX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fIGZyb20gXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvYXBpLmpzXCI7XG52YXIgX19fQ1NTX0xPQURFUl9FWFBPUlRfX18gPSBfX19DU1NfTE9BREVSX0FQSV9JTVBPUlRfX18oX19fQ1NTX0xPQURFUl9BUElfU09VUkNFTUFQX0lNUE9SVF9fXyk7XG4vLyBNb2R1bGVcbl9fX0NTU19MT0FERVJfRVhQT1JUX19fLnB1c2goW21vZHVsZS5pZCwgXCIuTGlzdEVkaXQge1xcbiAgLS1wYW5lbC1ib2R5LXBhZGRpbmc6IDAuNWVtO1xcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gdmFyKC0tbmF2YmFyLWhlaWdodCkpO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbn1cXG4uTGlzdEVkaXQgLmxpc3QtZWRpdC1oZWFkaW5nIHtcXG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBtaW5tYXgoNTAlLCAxZnIpO1xcbn1cXG4uTGlzdEVkaXQgLnBhbmVsLWJvZHkge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXg6IDE7XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG59XFxuLkxpc3RFZGl0IC5saXN0LW1lbWJlci1tYW5hZ2VtZW50IHtcXG4gIGZsZXg6IDEgMCBhdXRvO1xcbn1cXG4uTGlzdEVkaXQgLnNlYXJjaC1pY29uIHtcXG4gIG1hcmdpbi1yaWdodDogMC4zZW07XFxufVxcbi5MaXN0RWRpdCAudXNlcnMtbGlzdCB7XFxuICBwYWRkaW5nLWJvdHRvbTogMC43cmVtO1xcbiAgb3ZlcmZsb3cteTogYXV0bztcXG59XFxuLkxpc3RFZGl0IC5zZWFyY2gtbGlzdCwgLkxpc3RFZGl0IC5tZW1iZXJzLWxpc3Qge1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICBtaW4taGVpZ2h0OiAwO1xcbn1cXG4uTGlzdEVkaXQgLmdvLWJhY2stYnV0dG9uIHtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG4gIGxpbmUtaGVpZ2h0OiAxO1xcbiAgaGVpZ2h0OiAxMDAlO1xcbiAgYWxpZ24tc2VsZjogc3RhcnQ7XFxuICB3aWR0aDogdmFyKC0tX19wYW5lbC1oZWFkaW5nLWhlaWdodC1pbm5lcik7XFxufVxcbi5MaXN0RWRpdCAuYnRuIHtcXG4gIG1hcmdpbjogMCAwLjVlbTtcXG59XFxuLkxpc3RFZGl0IC5wYW5lbC1mb290ZXIge1xcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMTAlLCAxZnIpO1xcbn1cXG4uTGlzdEVkaXQgLnBhbmVsLWZvb3RlciAuZm9vdGVyLWJ1dHRvbiB7XFxuICBtaW4td2lkdGg6IDllbTtcXG59XCIsIFwiXCIse1widmVyc2lvblwiOjMsXCJzb3VyY2VzXCI6W1wid2VicGFjazovLy4vc3JjL2NvbXBvbmVudHMvbGlzdHNfZWRpdC9saXN0c19lZGl0LnZ1ZVwiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiQUFHQTtFQUNFLDJCQUFBO0VBRUEsMENBQUE7RUFDQSxnQkFBQTtFQUNBLGFBQUE7RUFDQSxzQkFBQTtBQUhGO0FBS0U7RUFDRSw0Q0FBQTtBQUhKO0FBTUU7RUFDRSxhQUFBO0VBQ0EsT0FBQTtFQUNBLHNCQUFBO0VBQ0EsZ0JBQUE7QUFKSjtBQU9FO0VBQ0UsY0FBQTtBQUxKO0FBUUU7RUFDRSxtQkFBQTtBQU5KO0FBU0U7RUFDRSxzQkFBQTtFQUNBLGdCQUFBO0FBUEo7QUFVRTtFQUVFLGdCQUFBO0VBQ0Esc0JBQUE7RUFDQSxhQUFBO0FBVEo7QUFZRTtFQUNFLGtCQUFBO0VBQ0EsY0FBQTtFQUNBLFlBQUE7RUFDQSxpQkFBQTtFQUNBLDBDQUFBO0FBVko7QUFhRTtFQUNFLGVBQUE7QUFYSjtBQWNFO0VBQ0UsdUNBQUE7QUFaSjtBQWNJO0VBQ0UsY0FBQTtBQVpOXCIsXCJzb3VyY2VzQ29udGVudFwiOltcIlxcbkBpbXBvcnQgXFxcIi4uLy4uL3ZhcmlhYmxlc1xcXCI7XFxuXFxuLkxpc3RFZGl0IHtcXG4gIC0tcGFuZWwtYm9keS1wYWRkaW5nOiAwLjVlbTtcXG5cXG4gIGhlaWdodDogY2FsYygxMDB2aCAtIHZhcigtLW5hdmJhci1oZWlnaHQpKTtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG5cXG4gIC5saXN0LWVkaXQtaGVhZGluZyB7XFxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBtaW5tYXgoNTAlLCAxZnIpO1xcbiAgfVxcblxcbiAgLnBhbmVsLWJvZHkge1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICBmbGV4OiAxO1xcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgfVxcblxcbiAgLmxpc3QtbWVtYmVyLW1hbmFnZW1lbnQge1xcbiAgICBmbGV4OiAxIDAgYXV0bztcXG4gIH1cXG5cXG4gIC5zZWFyY2gtaWNvbiB7XFxuICAgIG1hcmdpbi1yaWdodDogMC4zZW07XFxuICB9XFxuXFxuICAudXNlcnMtbGlzdCB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwLjdyZW07XFxuICAgIG92ZXJmbG93LXk6IGF1dG87XFxuICB9XFxuXFxuICAmIC5zZWFyY2gtbGlzdCxcXG4gICYgLm1lbWJlcnMtbGlzdCB7XFxuICAgIG92ZXJmbG93OiBoaWRkZW47XFxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICAgIG1pbi1oZWlnaHQ6IDA7XFxuICB9XFxuXFxuICAuZ28tYmFjay1idXR0b24ge1xcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxuICAgIGxpbmUtaGVpZ2h0OiAxO1xcbiAgICBoZWlnaHQ6IDEwMCU7XFxuICAgIGFsaWduLXNlbGY6IHN0YXJ0O1xcbiAgICB3aWR0aDogdmFyKC0tX19wYW5lbC1oZWFkaW5nLWhlaWdodC1pbm5lcik7XFxuICB9XFxuXFxuICAuYnRuIHtcXG4gICAgbWFyZ2luOiAwIDAuNWVtO1xcbiAgfVxcblxcbiAgLnBhbmVsLWZvb3RlciB7XFxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDEwJSwgMWZyKTtcXG5cXG4gICAgLmZvb3Rlci1idXR0b24ge1xcbiAgICAgIG1pbi13aWR0aDogOWVtO1xcbiAgICB9XFxuICB9XFxufVxcblwiXSxcInNvdXJjZVJvb3RcIjpcIlwifV0pO1xuLy8gRXhwb3J0c1xuZXhwb3J0IGRlZmF1bHQgX19fQ1NTX0xPQURFUl9FWFBPUlRfX187XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/lists_edit/lists_edit.vue?vue&type=style&index=0&id=69c86d8f&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/lists_user_search/lists_user_search.vue?vue&type=style&index=0&id=4232b4b5&lang=scss":
/*!******************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/lists_user_search/lists_user_search.vue?vue&type=style&index=0&id=4232b4b5&lang=scss ***!
\******************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".ListsUserSearch .input-wrap {\\n display: flex;\\n margin: 0.7em 0.5em;\\n}\\n.ListsUserSearch .input-wrap input {\\n width: 100%;\\n}\\n.ListsUserSearch .search-icon {\\n margin-right: 0.3em;\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/lists_user_search/lists_user_search.vue\"],\"names\":[],\"mappings\":\"AAIE;EACE,aAAA;EACA,mBAAA;AAHJ;AAKI;EACE,WAAA;AAHN;AAOE;EACE,mBAAA;AALJ\",\"sourcesContent\":[\"\\n@import \\\"../../variables\\\";\\n\\n.ListsUserSearch {\\n .input-wrap {\\n display: flex;\\n margin: 0.7em 0.5em;\\n\\n input {\\n width: 100%;\\n }\\n }\\n\\n .search-icon {\\n margin-right: 0.3em;\\n }\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2xpc3RzX3VzZXJfc2VhcmNoL2xpc3RzX3VzZXJfc2VhcmNoLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTQyMzJiNGI1Jmxhbmc9c2Nzcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBO0FBQ2dIO0FBQ2pCO0FBQy9GLDhCQUE4QixtRkFBMkIsQ0FBQyw0RkFBcUM7QUFDL0Y7QUFDQSx3RUFBd0Usa0JBQWtCLHdCQUF3QixHQUFHLHNDQUFzQyxnQkFBZ0IsR0FBRyxpQ0FBaUMsd0JBQXdCLEdBQUcsT0FBTyx5SEFBeUgsVUFBVSxXQUFXLEtBQUssS0FBSyxVQUFVLEtBQUssS0FBSyxXQUFXLHVEQUF1RCxzQkFBc0IsaUJBQWlCLG9CQUFvQiwwQkFBMEIsZUFBZSxvQkFBb0IsT0FBTyxLQUFLLG9CQUFvQiwwQkFBMEIsS0FBSyxHQUFHLHVCQUF1QjtBQUNockI7QUFDQSxpRUFBZSx1QkFBdUIsRUFBQyIsInNvdXJjZXMiOlsid2VicGFjazovL3BsZXJvbWFfZmUvLi9zcmMvY29tcG9uZW50cy9saXN0c191c2VyX3NlYXJjaC9saXN0c191c2VyX3NlYXJjaC52dWU/ZGQyMCJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBJbXBvcnRzXG5pbXBvcnQgX19fQ1NTX0xPQURFUl9BUElfU09VUkNFTUFQX0lNUE9SVF9fXyBmcm9tIFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvZGlzdC9ydW50aW1lL3NvdXJjZU1hcHMuanNcIjtcbmltcG9ydCBfX19DU1NfTE9BREVSX0FQSV9JTVBPUlRfX18gZnJvbSBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2Rpc3QvcnVudGltZS9hcGkuanNcIjtcbnZhciBfX19DU1NfTE9BREVSX0VYUE9SVF9fXyA9IF9fX0NTU19MT0FERVJfQVBJX0lNUE9SVF9fXyhfX19DU1NfTE9BREVSX0FQSV9TT1VSQ0VNQVBfSU1QT1JUX19fKTtcbi8vIE1vZHVsZVxuX19fQ1NTX0xPQURFUl9FWFBPUlRfX18ucHVzaChbbW9kdWxlLmlkLCBcIi5MaXN0c1VzZXJTZWFyY2ggLmlucHV0LXdyYXAge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIG1hcmdpbjogMC43ZW0gMC41ZW07XFxufVxcbi5MaXN0c1VzZXJTZWFyY2ggLmlucHV0LXdyYXAgaW5wdXQge1xcbiAgd2lkdGg6IDEwMCU7XFxufVxcbi5MaXN0c1VzZXJTZWFyY2ggLnNlYXJjaC1pY29uIHtcXG4gIG1hcmdpbi1yaWdodDogMC4zZW07XFxufVwiLCBcIlwiLHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIndlYnBhY2s6Ly8uL3NyYy9jb21wb25lbnRzL2xpc3RzX3VzZXJfc2VhcmNoL2xpc3RzX3VzZXJfc2VhcmNoLnZ1ZVwiXSxcIm5hbWVzXCI6W10sXCJtYXBwaW5nc1wiOlwiQUFJRTtFQUNFLGFBQUE7RUFDQSxtQkFBQTtBQUhKO0FBS0k7RUFDRSxXQUFBO0FBSE47QUFPRTtFQUNFLG1CQUFBO0FBTEpcIixcInNvdXJjZXNDb250ZW50XCI6W1wiXFxuQGltcG9ydCBcXFwiLi4vLi4vdmFyaWFibGVzXFxcIjtcXG5cXG4uTGlzdHNVc2VyU2VhcmNoIHtcXG4gIC5pbnB1dC13cmFwIHtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgbWFyZ2luOiAwLjdlbSAwLjVlbTtcXG5cXG4gICAgaW5wdXQge1xcbiAgICAgIHdpZHRoOiAxMDAlO1xcbiAgICB9XFxuICB9XFxuXFxuICAuc2VhcmNoLWljb24ge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAuM2VtO1xcbiAgfVxcbn1cXG5cXG5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcbi8vIEV4cG9ydHNcbmV4cG9ydCBkZWZhdWx0IF9fX0NTU19MT0FERVJfRVhQT1JUX19fO1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/lists_user_search/lists_user_search.vue?vue&type=style&index=0&id=4232b4b5&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/login_form/login_form.vue?vue&type=style&index=0&id=f0305c62&lang=scss":
/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/login_form/login_form.vue?vue&type=style&index=0&id=f0305c62&lang=scss ***!
\****************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".login-form {\\n display: flex;\\n flex-direction: column;\\n padding: 0.6em;\\n}\\n.login-form .btn {\\n min-height: 2em;\\n width: 10em;\\n}\\n.login-form .register {\\n flex: 1 1;\\n}\\n.login-form .login-bottom {\\n margin-top: 1em;\\n display: flex;\\n flex-direction: row;\\n align-items: center;\\n justify-content: space-between;\\n}\\n.login-form .form-group {\\n display: flex;\\n flex-direction: column;\\n padding: 0.3em 0.5em 0.6em;\\n line-height: 24px;\\n}\\n.login-form .form-bottom {\\n display: flex;\\n padding: 0.5em;\\n height: 32px;\\n}\\n.login-form .form-bottom button {\\n width: 10em;\\n}\\n.login-form .form-bottom p {\\n margin: 0.35em;\\n padding: 0.35em;\\n display: flex;\\n}\\n.login-form .error {\\n text-align: center;\\n animation-name: shakeError;\\n animation-duration: 0.4s;\\n animation-timing-function: ease-in-out;\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/login_form/login_form.vue\"],\"names\":[],\"mappings\":\"AAGA;EACE,aAAA;EACA,sBAAA;EACA,cAAA;AAFF;AAIE;EACE,eAAA;EACA,WAAA;AAFJ;AAKE;EACE,SAAA;AAHJ;AAME;EACE,eAAA;EACA,aAAA;EACA,mBAAA;EACA,mBAAA;EACA,8BAAA;AAJJ;AAOE;EACE,aAAA;EACA,sBAAA;EACA,0BAAA;EACA,iBAAA;AALJ;AAQE;EACE,aAAA;EACA,cAAA;EACA,YAAA;AANJ;AAQI;EACE,WAAA;AANN;AASI;EACE,cAAA;EACA,eAAA;EACA,aAAA;AAPN;AAWE;EACE,kBAAA;EACA,0BAAA;EACA,wBAAA;EACA,sCAAA;AATJ\",\"sourcesContent\":[\"\\n@import \\\"../../variables\\\";\\n\\n.login-form {\\n display: flex;\\n flex-direction: column;\\n padding: 0.6em;\\n\\n .btn {\\n min-height: 2em;\\n width: 10em;\\n }\\n\\n .register {\\n flex: 1 1;\\n }\\n\\n .login-bottom {\\n margin-top: 1em;\\n display: flex;\\n flex-direction: row;\\n align-items: center;\\n justify-content: space-between;\\n }\\n\\n .form-group {\\n display: flex;\\n flex-direction: column;\\n padding: 0.3em 0.5em 0.6em;\\n line-height: 24px;\\n }\\n\\n .form-bottom {\\n display: flex;\\n padding: 0.5em;\\n height: 32px;\\n\\n button {\\n width: 10em;\\n }\\n\\n p {\\n margin: 0.35em;\\n padding: 0.35em;\\n display: flex;\\n }\\n }\\n\\n .error {\\n text-align: center;\\n animation-name: shakeError;\\n animation-duration: 0.4s;\\n animation-timing-function: ease-in-out;\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL2xvZ2luX2Zvcm0vbG9naW5fZm9ybS52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD1mMDMwNWM2MiZsYW5nPXNjc3MuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQTtBQUNnSDtBQUNqQjtBQUMvRiw4QkFBOEIsbUZBQTJCLENBQUMsNEZBQXFDO0FBQy9GO0FBQ0EsdURBQXVELGtCQUFrQiwyQkFBMkIsbUJBQW1CLEdBQUcsb0JBQW9CLG9CQUFvQixnQkFBZ0IsR0FBRyx5QkFBeUIsY0FBYyxHQUFHLDZCQUE2QixvQkFBb0Isa0JBQWtCLHdCQUF3Qix3QkFBd0IsbUNBQW1DLEdBQUcsMkJBQTJCLGtCQUFrQiwyQkFBMkIsK0JBQStCLHNCQUFzQixHQUFHLDRCQUE0QixrQkFBa0IsbUJBQW1CLGlCQUFpQixHQUFHLG1DQUFtQyxnQkFBZ0IsR0FBRyw4QkFBOEIsbUJBQW1CLG9CQUFvQixrQkFBa0IsR0FBRyxzQkFBc0IsdUJBQXVCLCtCQUErQiw2QkFBNkIsMkNBQTJDLEdBQUcsT0FBTywyR0FBMkcsVUFBVSxXQUFXLFVBQVUsS0FBSyxLQUFLLFVBQVUsVUFBVSxLQUFLLEtBQUssVUFBVSxLQUFLLEtBQUssVUFBVSxVQUFVLFdBQVcsV0FBVyxXQUFXLEtBQUssS0FBSyxVQUFVLFdBQVcsV0FBVyxXQUFXLEtBQUssS0FBSyxVQUFVLFVBQVUsVUFBVSxLQUFLLEtBQUssVUFBVSxLQUFLLEtBQUssVUFBVSxVQUFVLFVBQVUsS0FBSyxLQUFLLFdBQVcsV0FBVyxXQUFXLFdBQVcsdURBQXVELGlCQUFpQixrQkFBa0IsMkJBQTJCLG1CQUFtQixZQUFZLHNCQUFzQixrQkFBa0IsS0FBSyxpQkFBaUIsZ0JBQWdCLEtBQUsscUJBQXFCLHNCQUFzQixvQkFBb0IsMEJBQTBCLDBCQUEwQixxQ0FBcUMsS0FBSyxtQkFBbUIsb0JBQW9CLDZCQUE2QixpQ0FBaUMsd0JBQXdCLEtBQUssb0JBQW9CLG9CQUFvQixxQkFBcUIsbUJBQW1CLGdCQUFnQixvQkFBb0IsT0FBTyxXQUFXLHVCQUF1Qix3QkFBd0Isc0JBQXNCLE9BQU8sS0FBSyxjQUFjLHlCQUF5QixpQ0FBaUMsK0JBQStCLDZDQUE2QyxLQUFLLEdBQUcscUJBQXFCO0FBQ250RTtBQUNBLGlFQUFlLHVCQUF1QixFQUFDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9jb21wb25lbnRzL2xvZ2luX2Zvcm0vbG9naW5fZm9ybS52dWU/NTlmYyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBJbXBvcnRzXG5pbXBvcnQgX19fQ1NTX0xPQURFUl9BUElfU09VUkNFTUFQX0lNUE9SVF9fXyBmcm9tIFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvZGlzdC9ydW50aW1lL3NvdXJjZU1hcHMuanNcIjtcbmltcG9ydCBfX19DU1NfTE9BREVSX0FQSV9JTVBPUlRfX18gZnJvbSBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2Rpc3QvcnVudGltZS9hcGkuanNcIjtcbnZhciBfX19DU1NfTE9BREVSX0VYUE9SVF9fXyA9IF9fX0NTU19MT0FERVJfQVBJX0lNUE9SVF9fXyhfX19DU1NfTE9BREVSX0FQSV9TT1VSQ0VNQVBfSU1QT1JUX19fKTtcbi8vIE1vZHVsZVxuX19fQ1NTX0xPQURFUl9FWFBPUlRfX18ucHVzaChbbW9kdWxlLmlkLCBcIi5sb2dpbi1mb3JtIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgcGFkZGluZzogMC42ZW07XFxufVxcbi5sb2dpbi1mb3JtIC5idG4ge1xcbiAgbWluLWhlaWdodDogMmVtO1xcbiAgd2lkdGg6IDEwZW07XFxufVxcbi5sb2dpbi1mb3JtIC5yZWdpc3RlciB7XFxuICBmbGV4OiAxIDE7XFxufVxcbi5sb2dpbi1mb3JtIC5sb2dpbi1ib3R0b20ge1xcbiAgbWFyZ2luLXRvcDogMWVtO1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xcbn1cXG4ubG9naW4tZm9ybSAuZm9ybS1ncm91cCB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gIHBhZGRpbmc6IDAuM2VtIDAuNWVtIDAuNmVtO1xcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XFxufVxcbi5sb2dpbi1mb3JtIC5mb3JtLWJvdHRvbSB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgcGFkZGluZzogMC41ZW07XFxuICBoZWlnaHQ6IDMycHg7XFxufVxcbi5sb2dpbi1mb3JtIC5mb3JtLWJvdHRvbSBidXR0b24ge1xcbiAgd2lkdGg6IDEwZW07XFxufVxcbi5sb2dpbi1mb3JtIC5mb3JtLWJvdHRvbSBwIHtcXG4gIG1hcmdpbjogMC4zNWVtO1xcbiAgcGFkZGluZzogMC4zNWVtO1xcbiAgZGlzcGxheTogZmxleDtcXG59XFxuLmxvZ2luLWZvcm0gLmVycm9yIHtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG4gIGFuaW1hdGlvbi1uYW1lOiBzaGFrZUVycm9yO1xcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjRzO1xcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XFxufVwiLCBcIlwiLHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIndlYnBhY2s6Ly8uL3NyYy9jb21wb25lbnRzL2xvZ2luX2Zvcm0vbG9naW5fZm9ybS52dWVcIl0sXCJuYW1lc1wiOltdLFwibWFwcGluZ3NcIjpcIkFBR0E7RUFDRSxhQUFBO0VBQ0Esc0JBQUE7RUFDQSxjQUFBO0FBRkY7QUFJRTtFQUNFLGVBQUE7RUFDQSxXQUFBO0FBRko7QUFLRTtFQUNFLFNBQUE7QUFISjtBQU1FO0VBQ0UsZUFBQTtFQUNBLGFBQUE7RUFDQSxtQkFBQTtFQUNBLG1CQUFBO0VBQ0EsOEJBQUE7QUFKSjtBQU9FO0VBQ0UsYUFBQTtFQUNBLHNCQUFBO0VBQ0EsMEJBQUE7RUFDQSxpQkFBQTtBQUxKO0FBUUU7RUFDRSxhQUFBO0VBQ0EsY0FBQTtFQUNBLFlBQUE7QUFOSjtBQVFJO0VBQ0UsV0FBQTtBQU5OO0FBU0k7RUFDRSxjQUFBO0VBQ0EsZUFBQTtFQUNBLGFBQUE7QUFQTjtBQVdFO0VBQ0Usa0JBQUE7RUFDQSwwQkFBQTtFQUNBLHdCQUFBO0VBQ0Esc0NBQUE7QUFUSlwiLFwic291cmNlc0NvbnRlbnRcIjpbXCJcXG5AaW1wb3J0IFxcXCIuLi8uLi92YXJpYWJsZXNcXFwiO1xcblxcbi5sb2dpbi1mb3JtIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgcGFkZGluZzogMC42ZW07XFxuXFxuICAuYnRuIHtcXG4gICAgbWluLWhlaWdodDogMmVtO1xcbiAgICB3aWR0aDogMTBlbTtcXG4gIH1cXG5cXG4gIC5yZWdpc3RlciB7XFxuICAgIGZsZXg6IDEgMTtcXG4gIH1cXG5cXG4gIC5sb2dpbi1ib3R0b20ge1xcbiAgICBtYXJnaW4tdG9wOiAxZW07XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XFxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcXG4gIH1cXG5cXG4gIC5mb3JtLWdyb3VwIHtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gICAgcGFkZGluZzogMC4zZW0gMC41ZW0gMC42ZW07XFxuICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xcbiAgfVxcblxcbiAgLmZvcm0tYm90dG9tIHtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgcGFkZGluZzogMC41ZW07XFxuICAgIGhlaWdodDogMzJweDtcXG5cXG4gICAgYnV0dG9uIHtcXG4gICAgICB3aWR0aDogMTBlbTtcXG4gICAgfVxcblxcbiAgICBwIHtcXG4gICAgICBtYXJnaW46IDAuMzVlbTtcXG4gICAgICBwYWRkaW5nOiAwLjM1ZW07XFxuICAgICAgZGlzcGxheTogZmxleDtcXG4gICAgfVxcbiAgfVxcblxcbiAgLmVycm9yIHtcXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xcbiAgICBhbmltYXRpb24tbmFtZTogc2hha2VFcnJvcjtcXG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjRzO1xcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcXG4gIH1cXG59XFxuXCJdLFwic291cmNlUm9vdFwiOlwiXCJ9XSk7XG4vLyBFeHBvcnRzXG5leHBvcnQgZGVmYXVsdCBfX19DU1NfTE9BREVSX0VYUE9SVF9fXztcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/login_form/login_form.vue?vue&type=style&index=0&id=f0305c62&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/media_modal/media_modal.vue?vue&type=style&index=0&id=a5ca4396&lang=scss":
/*!******************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/media_modal/media_modal.vue?vue&type=style&index=0&id=a5ca4396&lang=scss ***!
\******************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"@keyframes media-fadein {\\nfrom {\\n opacity: 0;\\n}\\nto {\\n opacity: 1;\\n}\\n}\\n.media-modal-view .modal-image-container {\\n display: flex;\\n overflow: hidden;\\n align-items: center;\\n flex-direction: column;\\n max-width: 100%;\\n max-height: 100%;\\n width: 100%;\\n height: 100%;\\n flex-grow: 1;\\n justify-content: center;\\n}\\n.media-modal-view .modal-image-container-inner {\\n width: 100%;\\n height: 100%;\\n flex-grow: 1;\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n justify-content: center;\\n}\\n.media-modal-view .description,\\n.media-modal-view .counter {\\n /* Hardcoded since background is also hardcoded */\\n color: white;\\n margin-top: 1em;\\n text-shadow: 0 0 10px black, 0 0 10px black;\\n padding: 0.2em 2em;\\n}\\n.media-modal-view .description {\\n flex: 0 0 auto;\\n overflow-y: auto;\\n min-height: 1em;\\n max-width: 500px;\\n max-height: 9.5em;\\n word-break: break-all;\\n}\\n.media-modal-view .modal-image {\\n max-width: 100%;\\n max-height: 100%;\\n image-orientation: from-image;\\n animation: 0.1s cubic-bezier(0.7, 0, 1, 0.6) media-fadein;\\n}\\n.media-modal-view .modal-image.loading {\\n opacity: 0.5;\\n}\\n.media-modal-view .loading-spinner {\\n width: 100%;\\n height: 100%;\\n position: absolute;\\n pointer-events: none;\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n}\\n.media-modal-view .loading-spinner svg {\\n color: white;\\n}\\n.media-modal-view .modal-view-button {\\n border: 0;\\n padding: 0;\\n opacity: 0;\\n box-shadow: none;\\n background: none;\\n -webkit-appearance: none;\\n -moz-appearance: none;\\n appearance: none;\\n overflow: visible;\\n cursor: pointer;\\n transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);\\n height: 3em;\\n width: 3em;\\n}\\n.media-modal-view .modal-view-button .button-icon {\\n position: absolute;\\n height: 3em;\\n width: 3em;\\n font-size: 1rem;\\n line-height: 3em;\\n color: #fff;\\n text-align: center;\\n background-color: rgba(0, 0, 0, 0.3);\\n}\\n.media-modal-view .modal-view-button-arrow {\\n position: absolute;\\n display: block;\\n top: 50%;\\n margin-top: calc(3em / 2);\\n width: 3em;\\n height: 3em;\\n}\\n.media-modal-view .modal-view-button-arrow .arrow-icon {\\n position: absolute;\\n top: 0;\\n line-height: 3em;\\n color: #fff;\\n text-align: center;\\n background-color: rgba(0, 0, 0, 0.3);\\n}\\n.media-modal-view .modal-view-button-arrow--prev {\\n left: 0;\\n}\\n.media-modal-view .modal-view-button-arrow--prev .arrow-icon {\\n left: 0.5em;\\n}\\n.media-modal-view .modal-view-button-arrow--next {\\n right: 0;\\n}\\n.media-modal-view .modal-view-button-arrow--next .arrow-icon {\\n right: 0.5em;\\n}\\n.media-modal-view .modal-view-button-hide {\\n position: absolute;\\n top: 0;\\n right: 0;\\n}\\n.media-modal-view .modal-view-button-hide .button-icon {\\n top: 0.5em;\\n right: 0.5em;\\n}\\n.modal-view.media-modal-view {\\n z-index: var(--ZI_media_modal);\\n flex-direction: column;\\n overflow: hidden;\\n}\\n.modal-view.media-modal-view .modal-view-button-arrow,\\n.modal-view.media-modal-view .modal-view-button-hide {\\n opacity: 0.75;\\n}\\n.modal-view.media-modal-view .modal-view-button-arrow:focus, .modal-view.media-modal-view .modal-view-button-arrow:hover,\\n.modal-view.media-modal-view .modal-view-button-hide:focus,\\n.modal-view.media-modal-view .modal-view-button-hide:hover {\\n outline: none;\\n box-shadow: none;\\n}\\n.modal-view.media-modal-view .modal-view-button-arrow:hover,\\n.modal-view.media-modal-view .modal-view-button-hide:hover {\\n opacity: 1;\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/media_modal/media_modal.vue\"],\"names\":[],\"mappings\":\"AAOE;AACE;IACE,UAAA;AANJ;AASE;IACE,UAAA;AAPJ;AACF;AAUE;EACE,aAAA;EACA,gBAAA;EACA,mBAAA;EACA,sBAAA;EACA,eAAA;EACA,gBAAA;EACA,WAAA;EACA,YAAA;EACA,YAAA;EACA,uBAAA;AARJ;AAUI;EACE,WAAA;EACA,YAAA;EACA,YAAA;EACA,aAAA;EACA,sBAAA;EACA,mBAAA;EACA,uBAAA;AARN;AAYE;;EAEE,iDAAA;EACA,YAAA;EACA,eAAA;EACA,2CAAA;EACA,kBAAA;AAVJ;AAaE;EACE,cAAA;EACA,gBAAA;EACA,eAAA;EACA,gBAAA;EACA,iBAAA;EACA,qBAAA;AAXJ;AAcE;EACE,eAAA;EACA,gBAAA;EACA,6BAAA;EACA,yDAAA;AAZJ;AAcI;EACE,YAAA;AAZN;AAgBE;EACE,WAAA;EACA,YAAA;EACA,kBAAA;EACA,oBAAA;EACA,aAAA;EACA,uBAAA;EACA,mBAAA;AAdJ;AAgBI;EACE,YAAA;AAdN;AAkBE;EACE,SAAA;EACA,UAAA;EACA,UAAA;EACA,gBAAA;EACA,gBAAA;EACA,wBAAA;KAAA,qBAAA;UAAA,gBAAA;EACA,iBAAA;EACA,eAAA;EACA,uDAAA;EACA,WA5F4B;EA6F5B,UA3F2B;AA2E/B;AAkBI;EACE,kBAAA;EACA,WAjG0B;EAkG1B,UAhGyB;EAiGzB,eAAA;EACA,gBApG0B;EAqG1B,WAAA;EACA,kBAAA;EACA,oCAAA;AAhBN;AAoBE;EACE,kBAAA;EACA,cAAA;EACA,QAAA;EACA,yBA9GiC;EA+GjC,UA9G2B;EA+G3B,WAjH4B;AA+FhC;AAoBI;EACE,kBAAA;EACA,MAAA;EACA,gBAtH0B;EAuH1B,WAAA;EACA,kBAAA;EACA,oCAAA;AAlBN;AAqBI;EACE,OAAA;AAnBN;AAqBM;EACE,WA7HwB;AA0GhC;AAuBI;EACE,QAAA;AArBN;AAuBM;EACE,YArIwB;AAgHhC;AA0BE;EACE,kBAAA;EACA,MAAA;EACA,QAAA;AAxBJ;AA0BI;EACE,UAhJ0B;EAiJ1B,YAjJ0B;AAyHhC;AA6BA;EACE,8BAAA;EACA,sBAAA;EAiBA,gBAAA;AA1CF;AA2BE;;EAEE,aAAA;AAzBJ;AA2BI;;;EAEE,aAAA;EACA,gBAAA;AAxBN;AA2BI;;EACE,UAAA;AAxBN\",\"sourcesContent\":[\"\\n$modal-view-button-icon-height: 3em;\\n$modal-view-button-icon-half-height: calc(#{$modal-view-button-icon-height} / 2);\\n$modal-view-button-icon-width: 3em;\\n$modal-view-button-icon-margin: 0.5em;\\n\\n.media-modal-view {\\n @keyframes media-fadein {\\n from {\\n opacity: 0;\\n }\\n\\n to {\\n opacity: 1;\\n }\\n }\\n\\n .modal-image-container {\\n display: flex;\\n overflow: hidden;\\n align-items: center;\\n flex-direction: column;\\n max-width: 100%;\\n max-height: 100%;\\n width: 100%;\\n height: 100%;\\n flex-grow: 1;\\n justify-content: center;\\n\\n &-inner {\\n width: 100%;\\n height: 100%;\\n flex-grow: 1;\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n justify-content: center;\\n }\\n }\\n\\n .description,\\n .counter {\\n /* Hardcoded since background is also hardcoded */\\n color: white;\\n margin-top: 1em;\\n text-shadow: 0 0 10px black, 0 0 10px black;\\n padding: 0.2em 2em;\\n }\\n\\n .description {\\n flex: 0 0 auto;\\n overflow-y: auto;\\n min-height: 1em;\\n max-width: 500px;\\n max-height: 9.5em;\\n word-break: break-all;\\n }\\n\\n .modal-image {\\n max-width: 100%;\\n max-height: 100%;\\n image-orientation: from-image; // NOTE: only FF supports this\\n animation: 0.1s cubic-bezier(0.7, 0, 1, 0.6) media-fadein;\\n\\n &.loading {\\n opacity: 0.5;\\n }\\n }\\n\\n .loading-spinner {\\n width: 100%;\\n height: 100%;\\n position: absolute;\\n pointer-events: none;\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n\\n svg {\\n color: white;\\n }\\n }\\n\\n .modal-view-button {\\n border: 0;\\n padding: 0;\\n opacity: 0;\\n box-shadow: none;\\n background: none;\\n appearance: none;\\n overflow: visible;\\n cursor: pointer;\\n transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);\\n height: $modal-view-button-icon-height;\\n width: $modal-view-button-icon-width;\\n\\n .button-icon {\\n position: absolute;\\n height: $modal-view-button-icon-height;\\n width: $modal-view-button-icon-width;\\n font-size: 1rem;\\n line-height: $modal-view-button-icon-height;\\n color: #fff;\\n text-align: center;\\n background-color: rgb(0 0 0 / 30%);\\n }\\n }\\n\\n .modal-view-button-arrow {\\n position: absolute;\\n display: block;\\n top: 50%;\\n margin-top: $modal-view-button-icon-half-height;\\n width: $modal-view-button-icon-width;\\n height: $modal-view-button-icon-height;\\n\\n .arrow-icon {\\n position: absolute;\\n top: 0;\\n line-height: $modal-view-button-icon-height;\\n color: #fff;\\n text-align: center;\\n background-color: rgb(0 0 0 / 30%);\\n }\\n\\n &--prev {\\n left: 0;\\n\\n .arrow-icon {\\n left: $modal-view-button-icon-margin;\\n }\\n }\\n\\n &--next {\\n right: 0;\\n\\n .arrow-icon {\\n right: $modal-view-button-icon-margin;\\n }\\n }\\n }\\n\\n .modal-view-button-hide {\\n position: absolute;\\n top: 0;\\n right: 0;\\n\\n .button-icon {\\n top: $modal-view-button-icon-margin;\\n right: $modal-view-button-icon-margin;\\n }\\n }\\n}\\n\\n.modal-view.media-modal-view {\\n z-index: var(--ZI_media_modal);\\n flex-direction: column;\\n\\n .modal-view-button-arrow,\\n .modal-view-button-hide {\\n opacity: 0.75;\\n\\n &:focus,\\n &:hover {\\n outline: none;\\n box-shadow: none;\\n }\\n\\n &:hover {\\n opacity: 1;\\n }\\n }\\n\\n overflow: hidden;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L2Nqcy5qcyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3Qvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXSEuL3NyYy9jb21wb25lbnRzL21lZGlhX21vZGFsL21lZGlhX21vZGFsLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPWE1Y2E0Mzk2Jmxhbmc9c2Nzcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBO0FBQ2dIO0FBQ2pCO0FBQy9GLDhCQUE4QixtRkFBMkIsQ0FBQyw0RkFBcUM7QUFDL0Y7QUFDQSxtRUFBbUUsUUFBUSxpQkFBaUIsR0FBRyxNQUFNLGlCQUFpQixHQUFHLEdBQUcsNENBQTRDLGtCQUFrQixxQkFBcUIsd0JBQXdCLDJCQUEyQixvQkFBb0IscUJBQXFCLGdCQUFnQixpQkFBaUIsaUJBQWlCLDRCQUE0QixHQUFHLGtEQUFrRCxnQkFBZ0IsaUJBQWlCLGlCQUFpQixrQkFBa0IsMkJBQTJCLHdCQUF3Qiw0QkFBNEIsR0FBRywrREFBK0QsdUVBQXVFLG9CQUFvQixnREFBZ0QsdUJBQXVCLEdBQUcsa0NBQWtDLG1CQUFtQixxQkFBcUIsb0JBQW9CLHFCQUFxQixzQkFBc0IsMEJBQTBCLEdBQUcsa0NBQWtDLG9CQUFvQixxQkFBcUIsa0NBQWtDLDhEQUE4RCxHQUFHLDBDQUEwQyxpQkFBaUIsR0FBRyxzQ0FBc0MsZ0JBQWdCLGlCQUFpQix1QkFBdUIseUJBQXlCLGtCQUFrQiw0QkFBNEIsd0JBQXdCLEdBQUcsMENBQTBDLGlCQUFpQixHQUFHLHdDQUF3QyxjQUFjLGVBQWUsZUFBZSxxQkFBcUIscUJBQXFCLDZCQUE2Qiw2QkFBNkIsNkJBQTZCLHNCQUFz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QTZDLHFCQUFxQiwyQkFBMkIsZUFBZSxvREFBb0Qsb0JBQW9CLDJCQUEyQiwyQ0FBMkMsT0FBTyxpQkFBaUIsZ0JBQWdCLHVCQUF1QiwrQ0FBK0MsU0FBUyxPQUFPLGlCQUFpQixpQkFBaUIsdUJBQXVCLGdEQUFnRCxTQUFTLE9BQU8sS0FBSywrQkFBK0IseUJBQXlCLGFBQWEsZUFBZSxzQkFBc0IsNENBQTRDLDhDQUE4QyxPQUFPLEtBQUssR0FBRyxrQ0FBa0MsbUNBQW1DLDJCQUEyQiw0REFBNEQsb0JBQW9CLCtCQUErQixzQkFBc0IseUJBQXlCLE9BQU8saUJBQWlCLG1CQUFtQixPQUFPLEtBQUssdUJBQXVCLEdBQUcscUJBQXFCO0FBQ2g0UTtBQUNBLGlFQUFlLHVCQUF1QixFQUFDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vcGxlcm9tYV9mZS8uL3NyYy9jb21wb25lbnRzL21lZGlhX21vZGFsL21lZGlhX21vZGFsLnZ1ZT9jMmU3Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIEltcG9ydHNcbmltcG9ydCBfX19DU1NfTE9BREVSX0FQSV9TT1VSQ0VNQVBfSU1QT1JUX19fIGZyb20gXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvc291cmNlTWFwcy5qc1wiO1xuaW1wb3J0IF9fX0NTU19MT0FERVJfQVBJX0lNUE9SVF9fXyBmcm9tIFwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvZGlzdC9ydW50aW1lL2FwaS5qc1wiO1xudmFyIF9fX0NTU19MT0FERVJfRVhQT1JUX19fID0gX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fKF9fX0NTU19MT0FERVJfQVBJX1NPVVJDRU1BUF9JTVBPUlRfX18pO1xuLy8gTW9kdWxlXG5fX19DU1NfTE9BREVSX0VYUE9SVF9fXy5wdXNoKFttb2R1bGUuaWQsIFwiQGtleWZyYW1lcyBtZWRpYS1mYWRlaW4ge1xcbmZyb20ge1xcbiAgICBvcGFjaXR5OiAwO1xcbn1cXG50byB7XFxuICAgIG9wYWNpdHk6IDE7XFxufVxcbn1cXG4ubWVkaWEtbW9kYWwtdmlldyAubW9kYWwtaW1hZ2UtY29udGFpbmVyIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICBtYXgtd2lkdGg6IDEwMCU7XFxuICBtYXgtaGVpZ2h0OiAxMDAlO1xcbiAgd2lkdGg6IDEwMCU7XFxuICBoZWlnaHQ6IDEwMCU7XFxuICBmbGV4LWdyb3c6IDE7XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcXG59XFxuLm1lZGlhLW1vZGFsLXZpZXcgLm1vZGFsLWltYWdlLWNvbnRhaW5lci1pbm5lciB7XFxuICB3aWR0aDogMTAwJTtcXG4gIGhlaWdodDogMTAwJTtcXG4gIGZsZXgtZ3JvdzogMTtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xcbn1cXG4ubWVkaWEtbW9kYWwtdmlldyAuZGVzY3JpcHRpb24sXFxuLm1lZGlhLW1vZGFsLXZpZXcgLmNvdW50ZXIge1xcbiAgLyogSGFyZGNvZGVkIHNpbmNlIGJhY2tncm91bmQgaXMgYWxzbyBoYXJkY29kZWQgKi9cXG4gIGNvbG9yOiB3aGl0ZTtcXG4gIG1hcmdpbi10b3A6IDFlbTtcXG4gIHRleHQtc2hhZG93OiAwIDAgMTBweCBibGFjaywgMCAwIDEwcHggYmxhY2s7XFxuICBwYWRkaW5nOiAwLjJlbSAyZW07XFxufVxcbi5tZWRpYS1tb2RhbC12aWV3IC5kZXNjcmlwdGlvbiB7XFxuICBmbGV4OiAwIDAgYXV0bztcXG4gIG92ZXJmbG93LXk6IGF1dG87XFxuICBtaW4taGVpZ2h0OiAxZW07XFxuICBtYXgtd2lkdGg6IDUwMHB4O1xcbiAgbWF4LWhlaWdodDogOS41ZW07XFxuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XFxufVxcbi5tZWRpYS1tb2RhbC12aWV3IC5tb2RhbC1pbWFnZSB7XFxuICBtYXgtd2lkdGg6IDEwMCU7XFxuICBtYXgtaGVpZ2h0OiAxMDAlO1xcbiAgaW1hZ2Utb3JpZW50YXRpb246IGZyb20taW1hZ2U7XFxuICBhbmltYXRpb246IDAuMXMgY3ViaWMtYmV6aWVyKDAuNywgMCwgMSwgMC42KSBtZWRpYS1mYWRlaW47XFxufVxcbi5tZWRpYS1tb2RhbC12aWV3IC5tb2RhbC1pbWFnZS5sb2FkaW5nIHtcXG4gIG9wYWNpdHk6IDAuNTtcXG59XFxuLm1lZGlhLW1vZGFsLXZpZXcgLmxvYWRpbmctc3Bpbm5lciB7XFxuICB3aWR0aDogMTAwJTtcXG4gIGhlaWdodDogMTAwJTtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG59XFxuLm1lZGlhLW1vZGFsLXZpZXcgLmxvYWRpbmctc3Bpbm5lciBzdmcge1xcbiAgY29sb3I6IHdoaXRlO1xcbn1cXG4ubWVkaWEtbW9kYWwtdmlldyAubW9kYWwtdmlldy1idXR0b24ge1xcbiAgYm9yZGVyOiAwO1xcbiAgcGFkZGluZzogMDtcXG4gIG9wYWNpdHk6IDA7XFxuICBib3gtc2hhZG93OiBub25lO1xcbiAgYmFja2dyb3VuZDogbm9uZTtcXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcXG4gICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcXG4gICAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xcbiAgY3Vyc29yOiBwb2ludGVyO1xcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAzMzNtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIyLCAxKTtcXG4gIGhlaWdodDogM2VtO1xcbiAgd2lkdGg6IDNlbTtcXG59XFxuLm1lZGlhLW1vZGFsLXZpZXcgLm1vZGFsLXZpZXctYnV0dG9uIC5idXR0b24taWNvbiB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICBoZWlnaHQ6IDNlbTtcXG4gIHdpZHRoOiAzZW07XFxuICBmb250LXNpemU6IDFyZW07XFxuICBsaW5lLWhlaWdodDogM2VtO1xcbiAgY29sb3I6ICNmZmY7XFxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7XFxufVxcbi5tZWRpYS1tb2RhbC12aWV3IC5tb2RhbC12aWV3LWJ1dHRvbi1hcnJvdyB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIHRvcDogNTAlO1xcbiAgbWFyZ2luLXRvcDogY2FsYygzZW0gLyAyKTtcXG4gIHdpZHRoOiAzZW07XFxuICBoZWlnaHQ6IDNlbTtcXG59XFxuLm1lZGlhLW1vZGFsLXZpZXcgLm1vZGFsLXZpZXctYnV0dG9uLWFycm93IC5hcnJvdy1pY29uIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHRvcDogMDtcXG4gIGxpbmUtaGVpZ2h0OiAzZW07XFxuICBjb2xvcjogI2ZmZjtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zKTtcXG59XFxuLm1lZGlhLW1vZGFsLXZpZXcgLm1vZGFsLXZpZXctYnV0dG9uLWFycm93LS1wcmV2IHtcXG4gIGxlZnQ6IDA7XFxufVxcbi5tZWRpYS1tb2RhbC12aWV3IC5tb2RhbC12aWV3LWJ1dHRvbi1hcnJvdy0tcHJldiAuYXJyb3ctaWNvbiB7XFxuICBsZWZ0OiAwLjVlbTtcXG59XFxuLm1lZGlhLW1vZGFsLXZpZXcgLm1vZGFsLXZpZXctYnV0dG9uLWFycm93LS1uZXh0IHtcXG4gIHJpZ2h0OiAwO1xcbn1cXG4ubWVkaWEtbW9kYWwtdmlldyAubW9kYWwtdmlldy1idXR0b24tYXJyb3ctLW5leHQgLmFycm93LWljb24ge1xcbiAgcmlnaHQ6IDAuNWVtO1xcbn1cXG4ubWVkaWEtbW9kYWwtdmlldyAubW9kYWwtdmlldy1idXR0b24taGlkZSB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0b3A6IDA7XFxuICByaWdodDogMDtcXG59XFxuLm1lZGlhLW1vZGFsLXZpZXcgLm1vZGFsLXZpZXctYnV0dG9uLWhpZGUgLmJ1dHRvbi1pY29uIHtcXG4gIHRvcDogMC41ZW07XFxuICByaWdodDogMC41ZW07XFxufVxcbi5tb2RhbC12aWV3Lm1lZGlhLW1vZGFsLXZpZXcge1xcbiAgei1pbmRleDogdmFyKC0tWklfbWVkaWFfbW9kYWwpO1xcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxufVxcbi5tb2RhbC12aWV3Lm1lZGlhLW1vZGFsLXZpZXcgLm1vZGFsLXZpZXctYnV0dG9uLWFycm93LFxcbi5tb2RhbC12aWV3Lm1lZGlhLW1vZGFsLXZpZXcgLm1vZGFsLXZpZXctYnV0dG9uLWhpZGUge1xcbiAgb3BhY2l0eTogMC43NTtcXG59XFxuLm1vZGFsLXZpZXcubWVkaWEtbW9kYWwtdmlldyAubW9kYWwtdmlldy1idXR0b24tYXJyb3c6Zm9jdXMsIC5tb2RhbC12aWV3Lm1lZGlhLW1vZGFsLXZpZXcgLm1vZGFsLXZpZXctYnV0dG9uLWFycm93OmhvdmVyLFxcbi5tb2RhbC12aWV3Lm1lZGlhLW1vZGFsLXZpZXcgLm1vZGFsLXZpZXctYnV0dG9uLWhpZGU6Zm9jdXMsXFxuLm1vZGFsLXZpZXcubWVkaWEtbW9kYWwtdmlldyAubW9kYWwtdmlldy1idXR0b24taGlkZTpob3ZlciB7XFxuICBvdXRsaW5lOiBub25lO1xcbiAgYm94LXNoYWRvdzogbm9uZTtcXG59XFxuLm1vZGFsLXZpZXcubWVkaWEtbW9kYWwtdmlldyAubW9kYWwtdmlldy1idXR0b24tYXJyb3c6aG92ZXIsXFxuLm1vZGFsLXZpZXcubWVkaWEtbW9kYWwtdmlldyAubW9kYWwtdmlldy1idXR0b24taGlkZTpob3ZlciB7XFxuICBvcGFjaXR5OiAxO1xcbn1cIiwgXCJcIix7XCJ2ZXJzaW9uXCI6MyxcInNvdXJjZXNcIjpbXCJ3ZWJwYWNrOi8vLi9zcmMvY29tcG9uZW50cy9tZWRpYV9tb2RhbC9tZWRpYV9tb2RhbC52dWVcIl0sXCJuYW1lc1wiOltdLFwibWFwcGluZ3NcIjpcIkFBT0U7QUFDRTtJQUNFLFVBQUE7QUFOSjtBQVNFO0lBQ0UsVUFBQTtBQVBKO0FBQ0Y7QUFVRTtFQUNFLGFBQUE7RUFDQSxnQkFBQTtFQUNBLG1CQUFBO0VBQ0Esc0JBQUE7RUFDQSxlQUFBO0VBQ0EsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLFlBQUE7RUFDQSx1QkFBQTtBQVJKO0FBVUk7RUFDRSxXQUFBO0VBQ0EsWUFBQTtFQUNBLFlBQUE7RUFDQSxhQUFBO0VBQ0Esc0JBQUE7RUFDQSxtQkFBQTtFQUNBLHVCQUFBO0FBUk47QUFZRTs7RUFFRSxpREFBQTtFQUNBLFlBQUE7RUFDQSxlQUFBO0VBQ0EsMkNBQUE7RUFDQSxrQkFBQTtBQVZKO0FBYUU7RUFDRSxjQUFBO0VBQ0EsZ0JBQUE7RUFDQSxlQUFBO0VBQ0EsZ0JBQUE7RUFDQSxpQkFBQTtFQUNBLHFCQUFBO0FBWEo7QUFjRTtFQUNFLGVBQUE7RUFDQSxnQkFBQTtFQUNBLDZCQUFBO0VBQ0EseURBQUE7QUFaSjtBQWNJO0VBQ0UsWUFBQTtBQVpOO0FBZ0JFO0VBQ0UsV0FBQTtFQUNBLFlBQUE7RUFDQSxrQkFBQTtFQUNBLG9CQUFBO0VBQ0EsYUFBQTtFQUNBLHVCQUFBO0VBQ0EsbUJBQUE7QUFkSjtBQWdCSTtFQUNFLFlBQUE7QUFkTjtBQWtCRTtFQUNFLFNBQUE7RUFDQSxVQUFBO0VBQ0EsVUFBQTtFQUNBLGdCQUFBO0VBQ0EsZ0JBQUE7RUFDQSx3QkFBQTtLQUFBLHFCQUFBO1VBQUEsZ0JBQUE7RUFDQSxpQkFBQTtFQUNBLGVBQUE7RUFDQSx1REFBQTtFQUNBLFdBNUY0QjtFQTZGNUIsVUEzRjJCO0FBMkUvQjtBQWtCSTtFQUNFLGtCQUFBO0VBQ0EsV0FqRzBCO0VBa0cxQixVQWhHeUI7RUFpR3pCLGVBQUE7RUFDQSxnQkFwRzBCO0VBcUcxQixXQUFBO0VBQ0Esa0JBQUE7RUFDQSxvQ0FBQTtBQWhCTjtBQW9CRTtFQUNFLGtCQUFBO0VBQ0EsY0FBQTtFQUNBLFFBQUE7RUFDQSx5QkE5R2lDO0VBK0dqQyxVQTlHMkI7RUErRzNCLFdBakg0QjtBQStGaEM7QUFvQkk7RUFDRSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxnQkF0SDBCO0VBdUgxQixXQUFBO0VBQ0Esa0JBQUE7RUFDQSxvQ0FBQTtBQWxCTjtBQXFCSTtFQUNFLE9BQUE7QUFuQk47QUFxQk07RUFDRSxXQTdId0I7QUEwR2hDO0FBdUJJO0VBQ0UsUUFBQTtBQXJCTjtBQXVCTTtFQUNFLFlBckl3QjtBQWdIaEM7QUEwQkU7RUFDRSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxRQUFBO0FBeEJKO0FBMEJJO0VBQ0UsVUFoSjBCO0VBaUoxQixZQWpKMEI7QUF5SGhDO0FBNkJBO0VBQ0UsOEJBQUE7RUFDQSxzQkFBQTtFQWlCQSxnQkFBQTtBQTFDRjtBQTJCRTs7RUFFRSxhQUFBO0FBekJKO0FBMkJJOzs7RUFFRSxhQUFBO0VBQ0EsZ0JBQUE7QUF4Qk47QUEyQkk7O0VBQ0UsVUFBQTtBQXhCTlwiLFwic291cmNlc0NvbnRlbnRcIjpbXCJcXG4kbW9kYWwtdmlldy1idXR0b24taWNvbi1oZWlnaHQ6IDNlbTtcXG4kbW9kYWwtdmlldy1idXR0b24taWNvbi1oYWxmLWhlaWdodDogY2FsYygjeyRtb2RhbC12aWV3LWJ1dHRvbi1pY29uLWhlaWdodH0gLyAyKTtcXG4kbW9kYWwtdmlldy1idXR0b24taWNvbi13aWR0aDogM2VtO1xcbiRtb2RhbC12aWV3LWJ1dHRvbi1pY29uLW1hcmdpbjogMC41ZW07XFxuXFxuLm1lZGlhLW1vZGFsLXZpZXcge1xcbiAgQGtleWZyYW1lcyBtZWRpYS1mYWRlaW4ge1xcbiAgICBmcm9tIHtcXG4gICAgICBvcGFjaXR5OiAwO1xcbiAgICB9XFxuXFxuICAgIHRvIHtcXG4gICAgICBvcGFjaXR5OiAxO1xcbiAgICB9XFxuICB9XFxuXFxuICAubW9kYWwtaW1hZ2UtY29udGFpbmVyIHtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xcbiAgICB3aWR0aDogMTAwJTtcXG4gICAgaGVpZ2h0OiAxMDAlO1xcbiAgICBmbGV4LWdyb3c6IDE7XFxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xcblxcbiAgICAmLWlubmVyIHtcXG4gICAgICB3aWR0aDogMTAwJTtcXG4gICAgICBoZWlnaHQ6IDEwMCU7XFxuICAgICAgZmxleC1ncm93OiAxO1xcbiAgICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xcbiAgICB9XFxuICB9XFxuXFxuICAuZGVzY3JpcHRpb24sXFxuICAuY291bnRlciB7XFxuICAgIC8qIEhhcmRjb2RlZCBzaW5jZSBiYWNrZ3JvdW5kIGlzIGFsc28gaGFyZGNvZGVkICovXFxuICAgIGNvbG9yOiB3aGl0ZTtcXG4gICAgbWFyZ2luLXRvcDogMWVtO1xcbiAgICB0ZXh0LXNoYWRvdzogMCAwIDEwcHggYmxhY2ssIDAgMCAxMHB4IGJsYWNrO1xcbiAgICBwYWRkaW5nOiAwLjJlbSAyZW07XFxuICB9XFxuXFxuICAuZGVzY3JpcHRpb24ge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgb3ZlcmZsb3cteTogYXV0bztcXG4gICAgbWluLWhlaWdodDogMWVtO1xcbiAgICBtYXgtd2lkdGg6IDUwMHB4O1xcbiAgICBtYXgtaGVpZ2h0OiA5LjVlbTtcXG4gICAgd29yZC1icmVhazogYnJlYWstYWxsO1xcbiAgfVxcblxcbiAgLm1vZGFsLWltYWdlIHtcXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xcbiAgICBpbWFnZS1vcmllbnRhdGlvbjogZnJvbS1pbWFnZTsgLy8gTk9URTogb25seSBGRiBzdXBwb3J0cyB0aGlzXFxuICAgIGFuaW1hdGlvbjogMC4xcyBjdWJpYy1iZXppZXIoMC43LCAwLCAxLCAwLjYpIG1lZGlhLWZhZGVpbjtcXG5cXG4gICAgJi5sb2FkaW5nIHtcXG4gICAgICBvcGFjaXR5OiAwLjU7XFxuICAgIH1cXG4gIH1cXG5cXG4gIC5sb2FkaW5nLXNwaW5uZXIge1xcbiAgICB3aWR0aDogMTAwJTtcXG4gICAgaGVpZ2h0OiAxMDAlO1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG5cXG4gICAgc3ZnIHtcXG4gICAgICBjb2xvcjogd2hpdGU7XFxuICAgIH1cXG4gIH1cXG5cXG4gIC5tb2RhbC12aWV3LWJ1dHRvbiB7XFxuICAgIGJvcmRlcjogMDtcXG4gICAgcGFkZGluZzogMDtcXG4gICAgb3BhY2l0eTogMDtcXG4gICAgYm94LXNoYWRvdzogbm9uZTtcXG4gICAgYmFja2dyb3VuZDogbm9uZTtcXG4gICAgYXBwZWFyYW5jZTogbm9uZTtcXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XFxuICAgIGN1cnNvcjogcG9pbnRlcjtcXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAzMzNtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIyLCAxKTtcXG4gICAgaGVpZ2h0OiAkbW9kYWwtdmlldy1idXR0b24taWNvbi1oZWlnaHQ7XFxuICAgIHdpZHRoOiAkbW9kYWwtdmlldy1idXR0b24taWNvbi13aWR0aDtcXG5cXG4gICAgLmJ1dHRvbi1pY29uIHtcXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgICAgaGVpZ2h0OiAkbW9kYWwtdmlldy1idXR0b24taWNvbi1oZWlnaHQ7XFxuICAgICAgd2lkdGg6ICRtb2RhbC12aWV3LWJ1dHRvbi1pY29uLXdpZHRoO1xcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcXG4gICAgICBsaW5lLWhlaWdodDogJG1vZGFsLXZpZXctYnV0dG9uLWljb24taGVpZ2h0O1xcbiAgICAgIGNvbG9yOiAjZmZmO1xcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCAwIDAgLyAzMCUpO1xcbiAgICB9XFxuICB9XFxuXFxuICAubW9kYWwtdmlldy1idXR0b24tYXJyb3cge1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgIGRpc3BsYXk6IGJsb2NrO1xcbiAgICB0b3A6IDUwJTtcXG4gICAgbWFyZ2luLXRvcDogJG1vZGFsLXZpZXctYnV0dG9uLWljb24taGFsZi1oZWlnaHQ7XFxuICAgIHdpZHRoOiAkbW9kYWwtdmlldy1idXR0b24taWNvbi13aWR0aDtcXG4gICAgaGVpZ2h0OiAkbW9kYWwtdmlldy1idXR0b24taWNvbi1oZWlnaHQ7XFxuXFxuICAgIC5hcnJvdy1pY29uIHtcXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgICAgdG9wOiAwO1xcbiAgICAgIGxpbmUtaGVpZ2h0OiAkbW9kYWwtdmlldy1idXR0b24taWNvbi1oZWlnaHQ7XFxuICAgICAgY29sb3I6ICNmZmY7XFxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigwIDAgMCAvIDMwJSk7XFxuICAgIH1cXG5cXG4gICAgJi0tcHJldiB7XFxuICAgICAgbGVmdDogMDtcXG5cXG4gICAgICAuYXJyb3ctaWNvbiB7XFxuICAgICAgICBsZWZ0OiAkbW9kYWwtdmlldy1idXR0b24taWNvbi1tYXJnaW47XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgICYtLW5leHQge1xcbiAgICAgIHJpZ2h0OiAwO1xcblxcbiAgICAgIC5hcnJvdy1pY29uIHtcXG4gICAgICAgIHJpZ2h0OiAkbW9kYWwtdmlldy1idXR0b24taWNvbi1tYXJnaW47XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxuXFxuICAubW9kYWwtdmlldy1idXR0b24taGlkZSB7XFxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gICAgdG9wOiAwO1xcbiAgICByaWdodDogMDtcXG5cXG4gICAgLmJ1dHRvbi1pY29uIHtcXG4gICAgICB0b3A6ICRtb2RhbC12aWV3LWJ1dHRvbi1pY29uLW1hcmdpbjtcXG4gICAgICByaWdodDogJG1vZGFsLXZpZXctYnV0dG9uLWljb24tbWFyZ2luO1xcbiAgICB9XFxuICB9XFxufVxcblxcbi5tb2RhbC12aWV3Lm1lZGlhLW1vZGFsLXZpZXcge1xcbiAgei1pbmRleDogdmFyKC0tWklfbWVkaWFfbW9kYWwpO1xcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG5cXG4gIC5tb2RhbC12aWV3LWJ1dHRvbi1hcnJvdyxcXG4gIC5tb2RhbC12aWV3LWJ1dHRvbi1oaWRlIHtcXG4gICAgb3BhY2l0eTogMC43NTtcXG5cXG4gICAgJjpmb2N1cyxcXG4gICAgJjpob3ZlciB7XFxuICAgICAgb3V0bGluZTogbm9uZTtcXG4gICAgICBib3gtc2hhZG93OiBub25lO1xcbiAgICB9XFxuXFxuICAgICY6aG92ZXIge1xcbiAgICAgIG9wYWNpdHk6IDE7XFxuICAgIH1cXG4gIH1cXG5cXG4gIG92ZXJmbG93OiBoaWRkZW47XFxufVxcblwiXSxcInNvdXJjZVJvb3RcIjpcIlwifV0pO1xuLy8gRXhwb3J0c1xuZXhwb3J0IGRlZmF1bHQgX19fQ1NTX0xPQURFUl9FWFBPUlRfX187XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/media_modal/media_modal.vue?vue&type=style&index=0&id=a5ca4396&lang=scss\n");
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/media_upload/media_upload.vue?vue&type=style&index=0&id=fed7e862&lang=scss":
/*!********************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/components/media_upload/media_upload.vue?vue&type=style&index=0&id=fed7e862&lang=scss ***!
\********************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ \"./node_modules/css-loader/dist/runtime/sourceMaps.js\");\n/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);\n/* 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\");\n/* 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__);\n// Imports\n\n\nvar ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".media-upload .hidden-input-file {\\n display: none;\\n}\\nlabel.media-upload {\\n cursor: pointer;\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/media_upload/media_upload.vue\"],\"names\":[],\"mappings\":\"AAIE;EACE,aAAA;AAHJ;AAOA;EACE,eAAA;AAJF\",\"sourcesContent\":[\"\\n@import \\\"../../variables\\\";\\n\\n.media-upload {\\n .hidden-input-file {\\n display: none;\\n }\\n}\\n\\nlabel.media-upload {\\n cursor: pointer; // We use