summaryrefslogtreecommitdiffstats
path: root/js
diff options
context:
space:
mode:
authorJessica <jessica@Absolventas-MacBook-Pro.local>2018-08-27 14:22:56 +0200
committerJessica <jessica@Absolventas-MacBook-Pro.local>2018-08-27 14:22:56 +0200
commit304268eea0f73bd66b697c92ea969bcf838d3041 (patch)
tree36807d25b48bdf57d48bf890a7c5c02f4ed39c80 /js
parent90f74106e0aba741b2b1132390f06f91c9c92ae5 (diff)
parent1e0c0661619fc814d39fbf819900678e6694d98f (diff)
merged vue-share-addressbook branch
Diffstat (limited to 'js')
-rw-r--r--js/contacts.js64
1 files changed, 60 insertions, 4 deletions
diff --git a/js/contacts.js b/js/contacts.js
index 32ed814e..9140b0b3 100644
--- a/js/contacts.js
+++ b/js/contacts.js
@@ -405,7 +405,11 @@ eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n
/***/ (function(module, exports, __webpack_require__) {
"use strict";
+<<<<<<< HEAD
eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _ical = __webpack_require__(/*! ical.js */ \"./node_modules/ical.js/build/ical.js\");\n\nvar _ical2 = _interopRequireDefault(_ical);\n\nvar _vueClickOutside = __webpack_require__(/*! vue-click-outside */ \"./node_modules/vue-click-outside/index.js\");\n\nvar _vueClickOutside2 = _interopRequireDefault(_vueClickOutside);\n\nvar _vue = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm.js\");\n\nvar _vue2 = _interopRequireDefault(_vue);\n\nvar _vTooltip = __webpack_require__(/*! v-tooltip */ \"./node_modules/v-tooltip/dist/v-tooltip.esm.js\");\n\nvar _vTooltip2 = _interopRequireDefault(_vTooltip);\n\nvar _debounce = __webpack_require__(/*! debounce */ \"./node_modules/debounce/index.js\");\n\nvar _debounce2 = _interopRequireDefault(_debounce);\n\nvar _contact = __webpack_require__(/*! ../models/contact */ \"./src/models/contact.js\");\n\nvar _contact2 = _interopRequireDefault(_contact);\n\nvar _rfcProps = __webpack_require__(/*! ../models/rfcProps.js */ \"./src/models/rfcProps.js\");\n\nvar _rfcProps2 = _interopRequireDefault(_rfcProps);\n\nvar _popoverMenu = __webpack_require__(/*! ./core/popoverMenu */ \"./src/components/core/popoverMenu.vue\");\n\nvar _popoverMenu2 = _interopRequireDefault(_popoverMenu);\n\nvar _ContactDetailsProperty = __webpack_require__(/*! ./ContactDetails/ContactDetailsProperty */ \"./src/components/ContactDetails/ContactDetailsProperty.vue\");\n\nvar _ContactDetailsProperty2 = _interopRequireDefault(_ContactDetailsProperty);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n_vue2.default.use(_vTooltip2.default); //\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\nexports.default = {\n\tname: 'ContactDetails',\n\n\tcomponents: {\n\t\tpopoverMenu: _popoverMenu2.default,\n\t\tcontactDetailsProperty: _ContactDetailsProperty2.default\n\t},\n\n\tdirectives: {\n\t\tClickOutside: _vueClickOutside2.default\n\t},\n\n\tprops: {\n\t\tloading: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: true\n\t\t},\n\t\tuid: {\n\t\t\ttype: String,\n\t\t\tdefault: undefined\n\t\t}\n\t},\n\n\tdata: function data() {\n\t\treturn {\n\t\t\tcontact: undefined,\n\t\t\topenedMenu: false\n\t\t};\n\t},\n\n\n\tcomputed: {\n\t\tcolorAvatar: function colorAvatar() {\n\t\t\ttry {\n\t\t\t\tvar color = this.contact.uid.toRgb();\n\t\t\t\treturn 'rgb(' + color.r + ', ' + color.g + ', ' + color.b + ')';\n\t\t\t} catch (e) {\n\t\t\t\treturn 'grey';\n\t\t\t}\n\t\t},\n\n\n\t\t/**\n * Header actions for the contact\n */\n\t\tcontactActions: function contactActions() {\n\t\t\tvar actions = [{\n\t\t\t\ticon: 'icon-download',\n\t\t\t\ttext: t('contacts', 'Download'),\n\t\t\t\thref: this.contact.url\n\t\t\t}];\n\t\t\tif (this.contact.addressbook.enabled) {\n\t\t\t\tactions.push({\n\t\t\t\t\ticon: 'icon-delete',\n\t\t\t\t\ttext: t('contacts', 'Delete'),\n\t\t\t\t\taction: this.deleteContact\n\t\t\t\t});\n\t\t\t}\n\n\t\t\treturn actions;\n\t\t},\n\n\n\t\t/**\n * Contact properties copied and sorted by rfcProps.fieldOrder\n */\n\t\tsortedProperties: function sortedProperties() {\n\t\t\treturn this.contact.properties.slice(0).sort(function (a, b) {\n\t\t\t\treturn _rfcProps2.default.fieldOrder.indexOf(a.name) - _rfcProps2.default.fieldOrder.indexOf(b.name);\n\t\t\t});\n\t\t}\n\t},\n\n\twatch: {\n\t\t// url changed, get and show selected contact\n\t\tuid: function uid() {\n\t\t\tthis.updateLocalContact();\n\t\t},\n\t\t// done loading, check if the provided uid is valid and open details\n\t\tloading: function loading() {\n\t\t\tif (this.uid) {\n\t\t\t\tthis.updateLocalContact();\n\t\t\t}\n\t\t}\n\t},\n\n\tmethods: {\n\n\t\t/**\n * Fetch the selected contact from the store\n * and store it as a local data for editing\n */\n\t\tupdateLocalContact: function updateLocalContact() {\n\t\t\t// create new local instance of this contact\n\t\t\tvar contact = this.$store.getters.getContact(this.uid);\n\t\t\tthis.contact = new _contact2.default(_ical2.default.stringify(contact.jCal), contact.addressbook);\n\t\t},\n\n\n\t\t/**\n * Executed on the 'updatedcontact' event\n * Send the local clone of contact to the store\n */\n\t\tupdateContact: function updateContact() {\n\t\t\tthis.$store.dispatch('updateContact', this.contact);\n\t\t},\n\n\t\t/**\n * Debounce the contact update for the header props\n * photo, fn, org, title\n */\n\t\tdebounceUpdateContact: (0, _debounce2.default)(function (e) {\n\t\t\tthis.updateContact();\n\t\t}, 500),\n\n\t\t// menu handling\n\t\tcloseMenu: function closeMenu() {\n\t\t\tthis.openedMenu = false;\n\t\t},\n\t\ttoggleMenu: function toggleMenu() {\n\t\t\tthis.openedMenu = !this.openedMenu;\n\t\t}\n\t}\n\n};\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vc3JjL2NvbXBvbmVudHMvQ29udGFjdERldGFpbHMudnVlPzBmNjMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBNEZBOzs7O0FBQ0E7Ozs7QUFDQTs7OztBQUNBOzs7O0FBQ0E7Ozs7QUFDQTs7OztBQUNBOzs7O0FBRUE7Ozs7QUFDQTs7Ozs7O0FBRUEsc0M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O2tCQUVBO0FBQ0EsdUJBREE7O0FBR0E7QUFDQSxvQ0FEQTtBQUVBO0FBRkEsRUFIQTs7QUFRQTtBQUNBO0FBREEsRUFSQTs7QUFZQTtBQUNBO0FBQ0EsZ0JBREE7QUFFQTtBQUZBLEdBREE7QUFLQTtBQUNBLGVBREE7QUFFQTtBQUZBO0FBTEEsRUFaQTs7QUF1QkEsS0F2QkEsa0JBdUJBO0FBQ0E7QUFDQSxxQkFEQTtBQUVBO0FBRkE7QUFJQSxFQTVCQTs7O0FBOEJBO0FBQ0EsYUFEQSx5QkFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBSEEsQ0FHQTtBQUNBO0FBQ0E7QUFDQSxHQVJBOzs7QUFVQTs7O0FBR0EsZ0JBYkEsNEJBYUE7QUFDQSxrQkFDQTtBQUNBLHlCQURBO0FBRUEsbUNBRkE7QUFHQTtBQUhBLElBREE7QUFPQTtBQUNBO0FBQ0Esd0JBREE7QUFFQSxrQ0FGQTtBQUdBO0FBSEE7QUFLQTs7QUFFQTtBQUNBLEdBOUJBOzs7QUFnQ0E7OztBQUdBLGtCQW5DQSw4QkFtQ0E7QUFDQTtBQUNBO0FBQ0EsSUFGQTtBQUdBO0FBdkNBLEVBOUJBOztBQXdFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBSkE7QUFLQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFWQSxFQXhFQTs7QUFxRkE7O0FBRUE7Ozs7QUFJQSxvQkFOQSxnQ0FNQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBVkE7OztBQVlBOzs7O0FBSUEsZUFoQkEsMkJBZ0JBO0FBQ0E7QUFDQSxHQWxCQTs7QUFtQkE7Ozs7QUFJQTtBQUNBO0FBQ0EsR0FGQSxFQUVBLEdBRkEsQ0F2QkE7O0FBMkJBO0FBQ0EsV0E1QkEsdUJBNEJBO0FBQ0E7QUFDQSxHQTlCQTtBQStCQSxZQS9CQSx3QkErQkE7QUFDQTtBQUNBO0FBakNBOztBQXJGQSxDIiwiZmlsZSI6Ii4vbm9kZV9tb2R1bGVzL2JhYmVsLWxvYWRlci9saWIvaW5kZXguanMhLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/IS4vc3JjL2NvbXBvbmVudHMvQ29udGFjdERldGFpbHMudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJi5qcyIsInNvdXJjZXNDb250ZW50IjpbIjwhLS1cbiAgLSBAY29weXJpZ2h0IENvcHlyaWdodCAoYykgMjAxOCBKb2huIE1vbGFrdm/DpiA8c2tqbmxkc3ZAcHJvdG9ubWFpbC5jb20+XG4gIC1cbiAgLSBAYXV0aG9yIEpvaG4gTW9sYWt2b8OmIDxza2pubGRzdkBwcm90b25tYWlsLmNvbT5cbiAgLVxuICAtIEBsaWNlbnNlIEdOVSBBR1BMIHZlcnNpb24gMyBvciBhbnkgbGF0ZXIgdmVyc2lvblxuICAtXG4gIC0gVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnlcbiAgLSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBBZmZlcm8gR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhc1xuICAtIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZVxuICAtIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gIC1cbiAgLSBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiAgLSBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICAtIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGVcbiAgLSBHTlUgQWZmZXJvIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAgLVxuICAtIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBBZmZlcm8gR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuICAtIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uXG4gIC1cbiAgLS0+XG5cbjx0ZW1wbGF0ZT5cblx0PGRpdiBpZD1cImNvbnRhY3QtZGV0YWlsc1wiIGNsYXNzPVwiYXBwLWNvbnRlbnQtZGV0YWlsc1wiPlxuXG5cdFx0PCEtLSBub3RoaW5nIHNlbGVjdGVkIG9yIGNvbnRhY3Qgbm90IGZvdW5kIC0tPlxuXHRcdDxkaXYgdi1pZj1cIiFjb250YWN0ICYmICFsb2FkaW5nXCIgaWQ9XCJlbXB0eWNvbnRlbnRcIj5cblx0XHRcdDxkaXYgY2xhc3M9XCJpY29uLWNvbnRhY3RzXCIgLz5cblx0XHRcdDxoMj57eyB0KCdjb250YWN0cycsICdObyBjb250YWN0IHNlbGVjdGVkJykgfX08L2gyPlxuXHRcdFx0PHA+e3sgdCgnY29udGFjdHMnLCAnU2VsZWN0IGEgY29udGFjdCBvbiB0aGUgbGlzdCB0byBiZWdpbicpIH19PC9wPlxuXHRcdDwvZGl2PlxuXG5cdFx0PCEtLSBsb2FkaW5nIC0tPlxuXHRcdDxkaXYgdi1lbHNlLWlmPVwiIWNvbnRhY3QgJiYgbG9hZGluZ1wiIGlkPVwiZW1wdHljb250ZW50XCI+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwiaWNvbi1jb250YWN0c1wiIC8+XG5cdFx0XHQ8aDI+e3sgdCgnY29udGFjdHMnLCAnTG9hZGluZycpIH19PC9oMj5cblx0XHQ8L2Rpdj5cblxuXHRcdDx0ZW1wbGF0ZSB2LWVsc2U+XG5cdFx0XHQ8IS0tIGNvbnRhY3QgaGVhZGVyIC0tPlxuXHRcdFx0PGhlYWRlciA6c3R5bGU9XCJ7ICdiYWNrZ3JvdW5kQ29sb3InOiBjb2xvckF2YXRhciB9XCI+XG5cblx0XHRcdFx0PCEtLSBhdmF0YXIgYW5kIHVwbG9hZCBwaG90byAtLT5cblx0XHRcdFx0PGRpdiBpZD1cImNvbnRhY3QtaGVhZGVyLWF2YXRhclwiPlxuXHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJjb250YWN0LWF2YXRhci1iYWNrZ3JvdW5kXCIgLz5cblx0XHRcdFx0XHQ8aW1nIHYtaWY9XCJjb250YWN0LnBob3RvXCI+XG5cdFx0XHRcdFx0PGlucHV0IGlkPVwiY29udGFjdC1hdmF0YXItdXBsb2FkXCIgdHlwZT1cImZpbGVcIiBjbGFzcz1cImhpZGRlblwiXG5cdFx0XHRcdFx0XHRhY2NlcHQ9XCJpbWFnZS8qXCI+XG5cdFx0XHRcdFx0PGxhYmVsIHYtdG9vbHRpcC5hdXRvPVwidCgnY29udGFjdHMnLCAnVXBsb2FkIGEgbmV3IHBpY3R1cmUnKVwiIGZvcj1cImNvbnRhY3QtYXZhdGFyLXVwbG9hZFwiIGNsYXNzPVwiaWNvbi11cGxvYWQtd2hpdGVcIiAvPlxuXHRcdFx0XHQ8L2Rpdj5cblxuXHRcdFx0XHQ8IS0tIGZ1bGxuYW1lLCBvcmcsIHRpdGxlIC0tPlxuXHRcdFx0XHQ8ZGl2IGlkPVwiY29udGFjdC1oZWFkZXItaW5mb3NcIj5cblx0XHRcdFx0XHQ8aDI+XG5cdFx0XHRcdFx0XHQ8aW5wdXQgaWQ9XCJjb250YWN0LWZ1bGxuYW1lXCIgdi1tb2RlbD1cImNvbnRhY3QuZnVsbE5hbWVcIiA6ZGlzYWJsZWQ9XCIhY29udGFjdC5hZGRyZXNzYm9vay5lbmFibGVkXCJcblx0XHRcdFx0XHRcdFx0OnBsYWNlaG9sZGVyPVwidCgnY29udGFjdHMnLCAnTmFtZScpXCIgdHlwZT1cInRleHRcIiBhdXRvY29tcGxldGU9XCJvZmZcIlxuXHRcdFx0XHRcdFx0XHRhdXRvY29ycmVjdD1cIm9mZlwiIHNwZWxsY2hlY2s9XCJmYWxzZVwiIG5hbWU9XCJmdWxsbmFtZVwiXG5cdFx0XHRcdFx0XHRcdHZhbHVlPVwiXCIgQGlucHV0PVwiZGVib3VuY2VVcGRhdGVDb250YWN0XCI+XG5cdFx0XHRcdFx0PC9oMj5cblx0XHRcdFx0XHQ8ZGl2IGlkPVwiZGV0YWlscy1vcmctY29udGFpbmVyXCI+XG5cdFx0XHRcdFx0XHQ8aW5wdXQgaWQ9XCJjb250YWN0LW9yZ1wiIHYtbW9kZWw9XCJjb250YWN0Lm9yZ1wiIDpkaXNhYmxlZD1cIiFjb250YWN0LmFkZHJlc3Nib29rLmVuYWJsZWRcIlxuXHRcdFx0XHRcdFx0XHQ6cGxhY2Vob2xkZXI9XCJ0KCdjb250YWN0cycsICdDb21wYW55JylcIiB0eXBlPVwidGV4dFwiIGF1dG9jb21wbGV0ZT1cIm9mZlwiXG5cdFx0XHRcdFx0XHRcdGF1dG9jb3JyZWN0PVwib2ZmXCIgc3BlbGxjaGVjaz1cImZhbHNlXCIgbmFtZT1cIm9yZ1wiXG5cdFx0XHRcdFx0XHRcdHZhbHVlPVwiXCIgQGlucHV0PVwiZGVib3VuY2VVcGRhdGVDb250YWN0XCI+XG5cdFx0XHRcdFx0XHQ8aW5wdXQgaWQ9XCJjb250YWN0LXRpdGxlXCIgdi1tb2RlbD1cImNvbnRhY3QudGl0bGVcIiA6ZGlzYWJsZWQ9XCIhY29udGFjdC5hZGRyZXNzYm9vay5lbmFibGVkXCJcblx0XHRcdFx0XHRcdFx0OnBsYWNlaG9sZGVyPVwidCgnY29udGFjdHMnLCAnVGl0bGUnKVwiIHR5cGU9XCJ0ZXh0XCIgYXV0b2NvbXBsZXRlPVwib2ZmXCJcblx0XHRcdFx0XHRcdFx0YXV0b2NvcnJlY3Q9XCJvZmZcIiBzcGVsbGNoZWNrPVwiZmFsc2VcIiBuYW1lPVwidGl0bGVcIlxuXHRcdFx0XHRcdFx0XHR2YWx1ZT1cIlwiIEBpbnB1dD1cImRlYm91bmNlVXBkYXRlQ29udGFjdFwiPlxuXHRcdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHQ8L2Rpdj5cblxuXHRcdFx0XHQ8IS0tIGFjdGlvbnMgLS0+XG5cdFx0XHRcdDxkaXYgaWQ9XCJjb250YWN0LWhlYWRlci1hY3Rpb25zXCI+XG5cdFx0XHRcdFx0PGRpdiB2LWNsaWNrLW91dHNpZGU9XCJjbG9zZU1lbnVcIiBjbGFzcz1cIm1lbnUtaWNvbiBpY29uLW1vcmUtd2hpdGVcIiBAY2xpY2s9XCJ0b2dnbGVNZW51XCIgLz5cblx0XHRcdFx0XHQ8ZGl2IDpjbGFzcz1cInsgJ29wZW4nOiBvcGVuZWRNZW51IH1cIiBjbGFzcz1cInBvcG92ZXJtZW51XCI+XG5cdFx0XHRcdFx0XHQ8cG9wb3Zlci1tZW51IDptZW51PVwiY29udGFjdEFjdGlvbnNcIiAvPlxuXHRcdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHQ8L2Rpdj5cblx0XHRcdDwvaGVhZGVyPlxuXG5cdFx0XHQ8IS0tIGNvbnRhY3QgZGV0YWlscyAtLT5cblx0XHRcdDxzZWN0aW9uIGNsYXNzPVwiY29udGFjdC1kZXRhaWxzXCI+XG5cdFx0XHRcdDxjb250YWN0LWRldGFpbHMtcHJvcGVydHkgdi1mb3I9XCIocHJvcGVydHksIGluZGV4KSBpbiBzb3J0ZWRQcm9wZXJ0aWVzXCIgOmtleT1cImluZGV4XCIgOmluZGV4PVwiaW5kZXhcIlxuXHRcdFx0XHRcdDpzb3J0ZWQtcHJvcGVydGllcz1cInNvcnRlZFByb3BlcnRpZXNcIiA6cHJvcGVydHk9XCJwcm9wZXJ0eVwiIDpjb250YWN0PVwiY29udGFjdFwiXG5cdFx0XHRcdFx0QHVwZGF0ZWRjb250YWN0PVwidXBkYXRlQ29udGFjdFwiIC8+XG5cdFx0XHQ8L3NlY3Rpb24+XG5cdFx0PC90ZW1wbGF0ZT5cblx0PC9kaXY+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuXG5pbXBvcnQgSUNBTCBmcm9tICdpY2FsLmpzJ1xuaW1wb3J0IENsaWNrT3V0c2lkZSBmcm9tICd2dWUtY2xpY2stb3V0c2lkZSdcbmltcG9ydCBWdWUgZnJvbSAndnVlJ1xuaW1wb3J0IFZUb29sdGlwIGZyb20gJ3YtdG9vbHRpcCdcbmltcG9ydCBkZWJvdW5jZSBmcm9tICdkZWJvdW5jZSdcbmltcG9ydCBDb250YWN0IGZyb20gJy4uL21vZGVscy9jb250YWN0J1xuaW1wb3J0IHJmY1Byb3BzIGZyb20gJy4uL21vZGVscy9yZmNQcm9wcy5qcydcblxuaW1wb3J0IHBvcG92ZXJNZW51IGZyb20gJy4vY29yZS9wb3BvdmVyTWVudSdcbmltcG9ydCBjb250YWN0RGV0YWlsc1Byb3BlcnR5IGZyb20gJy4vQ29udGFjdERldGFpbHMvQ29udGFjdERldGFpbHNQcm9wZXJ0eSdcblxuVnVlLnVzZShWVG9vbHRpcClcblxuZXhwb3J0IGRlZmF1bHQge1xuXHRuYW1lOiAnQ29udGFjdERldGFpbHMnLFxuXG5cdGNvbXBvbmVudHM6IHtcblx0XHRwb3BvdmVyTWVudSxcblx0XHRjb250YWN0RGV0YWlsc1Byb3BlcnR5XG5cdH0sXG5cblx0ZGlyZWN0aXZlczoge1xuXHRcdENsaWNrT3V0c2lkZVxuXHR9LFxuXG5cdHByb3BzOiB7XG5cdFx0bG9hZGluZzoge1xuXHRcdFx0dHlwZTogQm9vbGVhbixcblx0XHRcdGRlZmF1bHQ6IHRydWVcblx0XHR9LFxuXHRcdHVpZDoge1xuXHRcdFx0dHlwZTogU3RyaW5nLFxuXHRcdFx0ZGVmYXVsdDogdW5kZWZpbmVkXG5cdFx0fVxuXHR9LFxuXG5cdGRhdGEoKSB7XG5cdFx0cmV0dXJuIHtcblx0XHRcdGNvbnRhY3Q6IHVuZGVmaW5lZCxcblx0XHRcdG9wZW5lZE1lbnU6IGZhbHNlXG5cdFx0fVxuXHR9LFxuXG5cdGNvbXB1dGVkOiB7XG5cdFx0Y29sb3JBdmF0YXIoKSB7XG5cdFx0XHR0cnkge1xuXHRcdFx0XHRsZXQgY29sb3IgPSB0aGlzLmNvbnRhY3QudWlkLnRvUmdiKClcblx0XHRcdFx0cmV0dXJuIGByZ2IoJHtjb2xvci5yfSwgJHtjb2xvci5nfSwgJHtjb2xvci5ifSlgXG5cdFx0XHR9IGNhdGNoIChlKSB7XG5cdFx0XHRcdHJldHVybiAnZ3JleSdcblx0XHRcdH1cblx0XHR9LFxuXG5cdFx0LyoqXG5cdFx0ICogSGVhZGVyIGFjdGlvbnMgZm9yIHRoZSBjb250YWN0XG5cdFx0ICovXG5cdFx0Y29udGFjdEFjdGlvbnMoKSB7XG5cdFx0XHRsZXQgYWN0aW9ucyA9IFtcblx0XHRcdFx0e1xuXHRcdFx0XHRcdGljb246ICdpY29uLWRvd25sb2FkJyxcblx0XHRcdFx0XHR0ZXh0OiB0KCdjb250YWN0cycsICdEb3dubG9hZCcpLFxuXHRcdFx0XHRcdGhyZWY6IHRoaXMuY29udGFjdC51cmxcblx0XHRcdFx0fVxuXHRcdFx0XVxuXHRcdFx0aWYgKHRoaXMuY29udGFjdC5hZGRyZXNzYm9vay5lbmFibGVkKSB7XG5cdFx0XHRcdGFjdGlvbnMucHVzaCh7XG5cdFx0XHRcdFx0aWNvbjogJ2ljb24tZGVsZXRlJyxcblx0XHRcdFx0XHR0ZXh0OiB0KCdjb250YWN0cycsICdEZWxldGUnKSxcblx0XHRcdFx0XHRhY3Rpb246IHRoaXMuZGVsZXRlQ29udGFjdFxuXHRcdFx0XHR9KVxuXHRcdFx0fVxuXG5cdFx0XHRyZXR1cm4gYWN0aW9uc1xuXHRcdH0sXG5cblx0XHQvKipcblx0XHQgKiBDb250YWN0IHByb3BlcnRpZXMgY29waWVkIGFuZCBzb3J0ZWQgYnkgcmZjUHJvcHMuZmllbGRPcmRlclxuXHRcdCAqL1xuXHRcdHNvcnRlZFByb3BlcnRpZXMoKSB7XG5cdFx0XHRyZXR1cm4gdGhpcy5jb250YWN0LnByb3BlcnRpZXMuc2xpY2UoMCkuc29ydCgoYSwgYikgPT4ge1xuXHRcdFx0XHRyZXR1cm4gcmZjUHJvcHMuZmllbGRPcmRlci5pbmRleE9mKGEubmFtZSkgLSByZmNQcm9wcy5maWVsZE9yZGVyLmluZGV4T2YoYi5uYW1lKVxuXHRcdFx0fSlcblx0XHR9XG5cdH0sXG5cblx0d2F0Y2g6IHtcblx0XHQvLyB1cmwgY2hhbmdlZCwgZ2V0IGFuZCBzaG93IHNlbGVjdGVkIGNvbnRhY3Rcblx0XHR1aWQ6IGZ1bmN0aW9uKCkge1xuXHRcdFx0dGhpcy51cGRhdGVMb2NhbENvbnRhY3QoKVxuXHRcdH0sXG5cdFx0Ly8gZG9uZSBsb2FkaW5nLCBjaGVjayBpZiB0aGUgcHJvdmlkZWQgdWlkIGlzIHZhbGlkIGFuZCBvcGVuIGRldGFpbHNcblx0XHRsb2FkaW5nOiBmdW5jdGlvbigpIHtcblx0XHRcdGlmICh0aGlzLnVpZCkge1xuXHRcdFx0XHR0aGlzLnVwZGF0ZUxvY2FsQ29udGFjdCgpXG5cdFx0XHR9XG5cdFx0fVxuXHR9LFxuXG5cdG1ldGhvZHM6IHtcblxuXHRcdC8qKlxuXHRcdCAqIEZldGNoIHRoZSBzZWxlY3RlZCBjb250YWN0IGZyb20gdGhlIHN0b3JlXG5cdFx0ICogYW5kIHN0b3JlIGl0IGFzIGEgbG9jYWwgZGF0YSBmb3IgZWRpdGluZ1xuXHRcdCAqL1xuXHRcdHVwZGF0ZUxvY2FsQ29udGFjdCgpIHtcblx0XHRcdC8vIGNyZWF0ZSBuZXcgbG9jYWwgaW5zdGFuY2Ugb2YgdGhpcyBjb250YWN0XG5cdFx0XHRsZXQgY29udGFjdCA9IHRoaXMuJHN0b3JlLmdldHRlcnMuZ2V0Q29udGFjdCh0aGlzLnVpZClcblx0XHRcdHRoaXMuY29udGFjdCA9IG5ldyBDb250YWN0KElDQUwuc3RyaW5naWZ5KGNvbnRhY3QuakNhbCksIGNvbnRhY3QuYWRkcmVzc2Jvb2spXG5cdFx0fSxcblxuXHRcdC8qKlxuXHRcdCAqIEV4ZWN1dGVkIG9uIHRoZSAndXBkYXRlZGNvbnRhY3QnIGV2ZW50XG5cdFx0ICogU2VuZCB0aGUgbG9jYWwgY2xvbmUgb2YgY29udGFjdCB0byB0aGUgc3RvcmVcblx0XHQgKi9cblx0XHR1cGRhdGVDb250YWN0KCkge1xuXHRcdFx0dGhpcy4kc3RvcmUuZGlzcGF0Y2goJ3VwZGF0ZUNvbnRhY3QnLCB0aGlzLmNvbnRhY3QpXG5cdFx0fSxcblx0XHQvKipcblx0XHQgKiBEZWJvdW5jZSB0aGUgY29udGFjdCB1cGRhdGUgZm9yIHRoZSBoZWFkZXIgcHJvcHNcblx0XHQgKiBwaG90bywgZm4sIG9yZywgdGl0bGVcblx0XHQgKi9cblx0XHRkZWJvdW5jZVVwZGF0ZUNvbnRhY3Q6IGRlYm91bmNlKGZ1bmN0aW9uKGUpIHtcblx0XHRcdHRoaXMudXBkYXRlQ29udGFjdCgpXG5cdFx0fSwgNTAwKSxcblxuXHRcdC8vIG1lbnUgaGFuZGxpbmdcblx0XHRjbG9zZU1lbnUoKSB7XG5cdFx0XHR0aGlzLm9wZW5lZE1lbnUgPSBmYWxzZVxuXHRcdH0sXG5cdFx0dG9nZ2xlTWVudSgpIHtcblx0XHRcdHRoaXMub3BlbmVkTWVudSA9ICF0aGlzLm9wZW5lZE1lbnVcblx0XHR9XG5cdH1cblxufVxuPC9zY3JpcHQ+XG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js?!./src/components/ContactDetails.vue?vue&type=script&lang=js&\n");
+=======
+eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _popoverMenu = __webpack_require__(/*! ./core/popoverMenu */ \"./src/components/core/popoverMenu.vue\");\n\nvar _popoverMenu2 = _interopRequireDefault(_popoverMenu);\n\nvar _ContactDetailsProperty = __webpack_require__(/*! ./ContactDetails/ContactDetailsProperty */ \"./src/components/ContactDetails/ContactDetailsProperty.vue\");\n\nvar _ContactDetailsProperty2 = _interopRequireDefault(_ContactDetailsProperty);\n\nvar _contact = __webpack_require__(/*! ../models/contact */ \"./src/models/contact.js\");\n\nvar _contact2 = _interopRequireDefault(_contact);\n\nvar _rfcProps = __webpack_require__(/*! ../models/rfcProps.js */ \"./src/models/rfcProps.js\");\n\nvar _rfcProps2 = _interopRequireDefault(_rfcProps);\n\nvar _ical = __webpack_require__(/*! ical.js */ \"./node_modules/ical.js/build/ical.js\");\n\nvar _ical2 = _interopRequireDefault(_ical);\n\nvar _vueClickOutside = __webpack_require__(/*! vue-click-outside */ \"./node_modules/vue-click-outside/index.js\");\n\nvar _vueClickOutside2 = _interopRequireDefault(_vueClickOutside);\n\nvar _vue = __webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.esm.js\");\n\nvar _vue2 = _interopRequireDefault(_vue);\n\nvar _vTooltip = __webpack_require__(/*! v-tooltip */ \"./node_modules/v-tooltip/dist/v-tooltip.esm.js\");\n\nvar _vTooltip2 = _interopRequireDefault(_vTooltip);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n_vue2.default.use(_vTooltip2.default);\n\nexports.default = {\n\tname: 'ContactDetails',\n\tcomponents: {\n\t\tpopoverMenu: _popoverMenu2.default,\n\t\tcontactDetailsProperty: _ContactDetailsProperty2.default\n\t},\n\tdirectives: {\n\t\tClickOutside: _vueClickOutside2.default\n\t},\n\tprops: {\n\t\tloading: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: true\n\t\t},\n\t\tuid: {\n\t\t\ttype: String,\n\t\t\tdefault: undefined\n\t\t}\n\t},\n\tdata: function data() {\n\t\treturn {\n\t\t\tcontact: undefined,\n\t\t\topenedMenu: false\n\t\t};\n\t},\n\n\tcomputed: {\n\t\tcolorAvatar: function colorAvatar() {\n\t\t\ttry {\n\t\t\t\tvar color = this.contact.uid.toRgb();\n\t\t\t\treturn 'rgb(' + color.r + ', ' + color.g + ', ' + color.b + ')';\n\t\t\t} catch (e) {\n\t\t\t\treturn 'grey';\n\t\t\t}\n\t\t},\n\n\n\t\t/**\n * Header actions for the contact\n */\n\t\tcontactActions: function contactActions() {\n\t\t\tvar actions = [{\n\t\t\t\ticon: 'icon-download',\n\t\t\t\ttext: t('contacts', 'Download'),\n\t\t\t\thref: this.contact.url\n\t\t\t}];\n\t\t\tif (this.contact.addressbook.enabled) {\n\t\t\t\tactions.push({\n\t\t\t\t\ticon: 'icon-delete',\n\t\t\t\t\ttext: t('contacts', 'Delete'),\n\t\t\t\t\taction: this.deleteContact\n\t\t\t\t});\n\t\t\t}\n\n\t\t\treturn actions;\n\t\t},\n\n\n\t\t/**\n * Contact properties copied and sorted by rfcProps.fieldOrder\n */\n\t\tsortedProperties: function sortedProperties() {\n\t\t\treturn this.contact.properties.slice(0).sort(function (a, b) {\n\t\t\t\treturn _rfcProps2.default.fieldOrder.indexOf(a.name) - _rfcProps2.default.fieldOrder.indexOf(b.name);\n\t\t\t});\n\t\t}\n\t},\n\twatch: {\n\t\t// url changed, get and show selected contact\n\t\tuid: function uid() {\n\t\t\tthis.updateLocalContact();\n\t\t},\n\t\t// done loading, check if the provided uid is valid and open details\n\t\tloading: function loading() {\n\t\t\tif (this.uid) {\n\t\t\t\tthis.updateLocalContact();\n\t\t\t}\n\t\t}\n\t},\n\tmethods: {\n\t\tupdateLocalContact: function updateLocalContact() {\n\t\t\t// create new local instance of this contact\n\t\t\tvar contact = this.$store.getters.getContact(this.uid);\n\t\t\tthis.contact = new _contact2.default(_ical2.default.stringify(contact.jCal), contact.addressbook);\n\t\t},\n\t\tcloseMenu: function closeMenu() {\n\t\t\tthis.openedMenu = false;\n\t\t},\n\t\ttoggleMenu: function toggleMenu() {\n\t\t\tthis.openedMenu = !this.openedMenu;\n\t\t}\n\t}\n\n};\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vc3JjL2NvbXBvbmVudHMvQ29udGFjdERldGFpbHMudnVlPzBmNjMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBMEZBOzs7O0FBQ0E7Ozs7QUFFQTs7OztBQUNBOzs7O0FBRUE7Ozs7QUFDQTs7OztBQUNBOzs7O0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVBOztrQkFFQTtBQUNBLHVCQURBO0FBRUE7QUFDQSxvQ0FEQTtBQUVBO0FBRkEsRUFGQTtBQU1BO0FBQ0E7QUFEQSxFQU5BO0FBU0E7QUFDQTtBQUNBLGdCQURBO0FBRUE7QUFGQSxHQURBO0FBS0E7QUFDQSxlQURBO0FBRUE7QUFGQTtBQUxBLEVBVEE7QUFtQkEsS0FuQkEsa0JBbUJBO0FBQ0E7QUFDQSxxQkFEQTtBQUVBO0FBRkE7QUFJQSxFQXhCQTs7QUF5QkE7QUFDQSxhQURBLHlCQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFIQSxDQUdBO0FBQ0E7QUFDQTtBQUNBLEdBUkE7OztBQVVBOzs7QUFHQSxnQkFiQSw0QkFhQTtBQUNBLGtCQUNBO0FBQ0EseUJBREE7QUFFQSxtQ0FGQTtBQUdBO0FBSEEsSUFEQTtBQU9BO0FBQ0E7QUFDQSx3QkFEQTtBQUVBLGtDQUZBO0FBR0E7QUFIQTtBQUtBOztBQUVBO0FBQ0EsR0E5QkE7OztBQWdDQTs7O0FBR0Esa0JBbkNBLDhCQW1DQTtBQUNBO0FBQ0E7QUFDQSxJQUZBO0FBR0E7QUF2Q0EsRUF6QkE7QUFrRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUpBO0FBS0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBVkEsRUFsRUE7QUE4RUE7QUFDQSxvQkFEQSxnQ0FDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBTEE7QUFNQSxXQU5BLHVCQU1BO0FBQ0E7QUFDQSxHQVJBO0FBU0EsWUFUQSx3QkFTQTtBQUNBO0FBQ0E7QUFYQTs7QUE5RUEsQyIsImZpbGUiOiIuL25vZGVfbW9kdWxlcy9iYWJlbC1sb2FkZXIvbGliL2luZGV4LmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPyEuL3NyYy9jb21wb25lbnRzL0NvbnRhY3REZXRhaWxzLnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcyYuanMiLCJzb3VyY2VzQ29udGVudCI6WyI8IS0tXG4gIC0gQGNvcHlyaWdodCBDb3B5cmlnaHQgKGMpIDIwMTggSm9obiBNb2xha3Zvw6YgPHNram5sZHN2QHByb3Rvbm1haWwuY29tPlxuICAtXG4gIC0gQGF1dGhvciBKb2huIE1vbGFrdm/DpiA8c2tqbmxkc3ZAcHJvdG9ubWFpbC5jb20+XG4gIC1cbiAgLSBAbGljZW5zZSBHTlUgQUdQTCB2ZXJzaW9uIDMgb3IgYW55IGxhdGVyIHZlcnNpb25cbiAgLVxuICAtIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gIC0gaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgQWZmZXJvIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXNcbiAgLSBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGVcbiAgLSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLlxuICAtXG4gIC0gVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gIC0gYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2ZcbiAgLSBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlXG4gIC0gR05VIEFmZmVybyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuXG4gIC1cbiAgLSBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgQWZmZXJvIEdlbmVyYWwgUHVibGljIExpY2Vuc2VcbiAgLSBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LlxuICAtXG4gIC0tPlxuXG48dGVtcGxhdGU+XG5cdDxkaXYgaWQ9XCJjb250YWN0LWRldGFpbHNcIiBjbGFzcz1cImFwcC1jb250ZW50LWRldGFpbHNcIj5cblxuXHRcdDwhLS0gbm90aGluZyBzZWxlY3RlZCBvciBjb250YWN0IG5vdCBmb3VuZCAtLT5cblx0XHQ8ZGl2IHYtaWY9XCIhY29udGFjdCAmJiAhbG9hZGluZ1wiIGlkPVwiZW1wdHljb250ZW50XCI+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwiaWNvbi1jb250YWN0c1wiIC8+XG5cdFx0XHQ8aDI+e3sgdCgnY29udGFjdHMnLCAnTm8gY29udGFjdCBzZWxlY3RlZCcpIH19PC9oMj5cblx0XHRcdDxwPnt7IHQoJ2NvbnRhY3RzJywgJ1NlbGVjdCBhIGNvbnRhY3Qgb24gdGhlIGxpc3QgdG8gYmVnaW4nKSB9fTwvcD5cblx0XHQ8L2Rpdj5cblxuXHRcdDwhLS0gbG9hZGluZyAtLT5cblx0XHQ8ZGl2IHYtZWxzZS1pZj1cIiFjb250YWN0ICYmIGxvYWRpbmdcIiBpZD1cImVtcHR5Y29udGVudFwiPlxuXHRcdFx0PGRpdiBjbGFzcz1cImljb24tY29udGFjdHNcIiAvPlxuXHRcdFx0PGgyPnt7IHQoJ2NvbnRhY3RzJywgJ0xvYWRpbmcnKSB9fTwvaDI+XG5cdFx0PC9kaXY+XG5cblx0XHQ8dGVtcGxhdGUgdi1lbHNlPlxuXHRcdFx0PCEtLSBjb250YWN0IGhlYWRlciAtLT5cblx0XHRcdDxoZWFkZXIgOnN0eWxlPVwieyAnYmFja2dyb3VuZENvbG9yJzogY29sb3JBdmF0YXIgfVwiPlxuXG5cdFx0XHRcdDwhLS0gYXZhdGFyIGFuZCB1cGxvYWQgcGhvdG8gLS0+XG5cdFx0XHRcdDxkaXYgaWQ9XCJjb250YWN0LWhlYWRlci1hdmF0YXJcIj5cblx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwiY29udGFjdC1hdmF0YXItYmFja2dyb3VuZFwiIC8+XG5cdFx0XHRcdFx0PGltZyB2LWlmPVwiY29udGFjdC5waG90b1wiPlxuXHRcdFx0XHRcdDxpbnB1dCBpZD1cImNvbnRhY3QtYXZhdGFyLXVwbG9hZFwiIHR5cGU9XCJmaWxlXCIgY2xhc3M9XCJoaWRkZW5cIlxuXHRcdFx0XHRcdFx0YWNjZXB0PVwiaW1hZ2UvKlwiPlxuXHRcdFx0XHRcdDxsYWJlbCB2LXRvb2x0aXAuYXV0bz1cInQoJ2NvbnRhY3RzJywgJ1VwbG9hZCBhIG5ldyBwaWN0dXJlJylcIiBmb3I9XCJjb250YWN0LWF2YXRhci11cGxvYWRcIiBjbGFzcz1cImljb24tdXBsb2FkLXdoaXRlXCIgLz5cblx0XHRcdFx0PC9kaXY+XG5cblx0XHRcdFx0PCEtLSBmdWxsbmFtZSwgb3JnLCB0aXRsZSAtLT5cblx0XHRcdFx0PGRpdiBpZD1cImNvbnRhY3QtaGVhZGVyLWluZm9zXCI+XG5cdFx0XHRcdFx0PGgyPlxuXHRcdFx0XHRcdFx0PGlucHV0IGlkPVwiY29udGFjdC1mdWxsbmFtZVwiIHYtbW9kZWw9XCJjb250YWN0LmZ1bGxOYW1lXCIgOmRpc2FibGVkPVwiIWNvbnRhY3QuYWRkcmVzc2Jvb2suZW5hYmxlZFwiXG5cdFx0XHRcdFx0XHRcdDpwbGFjZWhvbGRlcj1cInQoJ2NvbnRhY3RzJywgJ05hbWUnKVwiIHR5cGU9XCJ0ZXh0XCIgYXV0b2NvbXBsZXRlPVwib2ZmXCJcblx0XHRcdFx0XHRcdFx0YXV0b2NvcnJlY3Q9XCJvZmZcIiBzcGVsbGNoZWNrPVwiZmFsc2VcIiBuYW1lPVwiZnVsbG5hbWVcIlxuXHRcdFx0XHRcdFx0XHR2YWx1ZT1cIlwiPlxuXHRcdFx0XHRcdDwvaDI+XG5cdFx0XHRcdFx0PGRpdiBpZD1cImRldGFpbHMtb3JnLWNvbnRhaW5lclwiPlxuXHRcdFx0XHRcdFx0PGlucHV0IGlkPVwiY29udGFjdC1vcmdcIiB2LW1vZGVsPVwiY29udGFjdC5vcmdcIiA6ZGlzYWJsZWQ9XCIhY29udGFjdC5hZGRyZXNzYm9vay5lbmFibGVkXCJcblx0XHRcdFx0XHRcdFx0OnBsYWNlaG9sZGVyPVwidCgnY29udGFjdHMnLCAnQ29tcGFueScpXCIgdHlwZT1cInRleHRcIiBhdXRvY29tcGxldGU9XCJvZmZcIlxuXHRcdFx0XHRcdFx0XHRhdXRvY29ycmVjdD1cIm9mZlwiIHNwZWxsY2hlY2s9XCJmYWxzZVwiIG5hbWU9XCJvcmdcIlxuXHRcdFx0XHRcdFx0XHR2YWx1ZT1cIlwiPlxuXHRcdFx0XHRcdFx0PGlucHV0IGlkPVwiY29udGFjdC10aXRsZVwiIHYtbW9kZWw9XCJjb250YWN0LnRpdGxlXCIgOmRpc2FibGVkPVwiIWNvbnRhY3QuYWRkcmVzc2Jvb2suZW5hYmxlZFwiXG5cdFx0XHRcdFx0XHRcdDpwbGFjZWhvbGRlcj1cInQoJ2NvbnRhY3RzJywgJ1RpdGxlJylcIiB0eXBlPVwidGV4dFwiIGF1dG9jb21wbGV0ZT1cIm9mZlwiXG5cdFx0XHRcdFx0XHRcdGF1dG9jb3JyZWN0PVwib2ZmXCIgc3BlbGxjaGVjaz1cImZhbHNlXCIgbmFtZT1cInRpdGxlXCJcblx0XHRcdFx0XHRcdFx0dmFsdWU9XCJcIj5cblx0XHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0PC9kaXY+XG5cblx0XHRcdFx0PCEtLSBhY3Rpb25zIC0tPlxuXHRcdFx0XHQ8ZGl2IGlkPVwiY29udGFjdC1oZWFkZXItYWN0aW9uc1wiPlxuXHRcdFx0XHRcdDxkaXYgdi1jbGljay1vdXRzaWRlPVwiY2xvc2VNZW51XCIgY2xhc3M9XCJtZW51LWljb24gaWNvbi1tb3JlLXdoaXRlXCIgQGNsaWNrPVwidG9nZ2xlTWVudVwiIC8+XG5cdFx0XHRcdFx0PGRpdiA6Y2xhc3M9XCJ7ICdvcGVuJzogb3BlbmVkTWVudSB9XCIgY2xhc3M9XCJwb3BvdmVybWVudVwiPlxuXHRcdFx0XHRcdFx0PHBvcG92ZXItbWVudSA6bWVudT1cImNvbnRhY3RBY3Rpb25zXCIgLz5cblx0XHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0PC9kaXY+XG5cdFx0XHQ8L2hlYWRlcj5cblxuXHRcdFx0PCEtLSBjb250YWN0IGRldGFpbHMgLS0+XG5cdFx0XHQ8c2VjdGlvbiBjbGFzcz1cImNvbnRhY3QtZGV0YWlsc1wiPlxuXHRcdFx0XHQ8Y29udGFjdC1kZXRhaWxzLXByb3BlcnR5IHYtZm9yPVwiKHByb3BlcnR5LCBpbmRleCkgaW4gc29ydGVkUHJvcGVydGllc1wiIDprZXk9XCJpbmRleFwiIDppbmRleD1cImluZGV4XCJcblx0XHRcdFx0XHQ6c29ydGVkLXByb3BlcnRpZXM9XCJzb3J0ZWRQcm9wZXJ0aWVzXCIgOnByb3BlcnR5PVwicHJvcGVydHlcIiAvPlxuXHRcdFx0PC9zZWN0aW9uPlxuXHRcdDwvdGVtcGxhdGU+XG5cdDwvZGl2PlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cbmltcG9ydCBwb3BvdmVyTWVudSBmcm9tICcuL2NvcmUvcG9wb3Zlck1lbnUnXG5pbXBvcnQgY29udGFjdERldGFpbHNQcm9wZXJ0eSBmcm9tICcuL0NvbnRhY3REZXRhaWxzL0NvbnRhY3REZXRhaWxzUHJvcGVydHknXG5cbmltcG9ydCBDb250YWN0IGZyb20gJy4uL21vZGVscy9jb250YWN0J1xuaW1wb3J0IHJmY1Byb3BzIGZyb20gJy4uL21vZGVscy9yZmNQcm9wcy5qcydcblxuaW1wb3J0IElDQUwgZnJvbSAnaWNhbC5qcydcbmltcG9ydCBDbGlja091dHNpZGUgZnJvbSAndnVlLWNsaWNrLW91dHNpZGUnXG5pbXBvcnQgVnVlIGZyb20gJ3Z1ZSdcbmltcG9ydCBWVG9vbHRpcCBmcm9tICd2LXRvb2x0aXAnXG5cblZ1ZS51c2UoVlRvb2x0aXApXG5cbmV4cG9ydCBkZWZhdWx0IHtcblx0bmFtZTogJ0NvbnRhY3REZXRhaWxzJyxcblx0Y29tcG9uZW50czoge1xuXHRcdHBvcG92ZXJNZW51LFxuXHRcdGNvbnRhY3REZXRhaWxzUHJvcGVydHlcblx0fSxcblx0ZGlyZWN0aXZlczoge1xuXHRcdENsaWNrT3V0c2lkZVxuXHR9LFxuXHRwcm9wczoge1xuXHRcdGxvYWRpbmc6IHtcblx0XHRcdHR5cGU6IEJvb2xlYW4sXG5cdFx0XHRkZWZhdWx0OiB0cnVlXG5cdFx0fSxcblx0XHR1aWQ6IHtcblx0XHRcdHR5cGU6IFN0cmluZyxcblx0XHRcdGRlZmF1bHQ6IHVuZGVmaW5lZFxuXHRcdH1cblx0fSxcblx0ZGF0YSgpIHtcblx0XHRyZXR1cm4ge1xuXHRcdFx0Y29udGFjdDogdW5kZWZpbmVkLFxuXHRcdFx0b3BlbmVkTWVudTogZmFsc2Vcblx0XHR9XG5cdH0sXG5cdGNvbXB1dGVkOiB7XG5cdFx0Y29sb3JBdmF0YXIoKSB7XG5cdFx0XHR0cnkge1xuXHRcdFx0XHRsZXQgY29sb3IgPSB0aGlzLmNvbnRhY3QudWlkLnRvUmdiKClcblx0XHRcdFx0cmV0dXJuIGByZ2IoJHtjb2xvci5yfSwgJHtjb2xvci5nfSwgJHtjb2xvci5ifSlgXG5cdFx0XHR9IGNhdGNoIChlKSB7XG5cdFx0XHRcdHJldHVybiAnZ3JleSdcblx0XHRcdH1cblx0XHR9LFxuXG5cdFx0LyoqXG5cdFx0ICogSGVhZGVyIGFjdGlvbnMgZm9yIHRoZSBjb250YWN0XG5cdFx0ICovXG5cdFx0Y29udGFjdEFjdGlvbnMoKSB7XG5cdFx0XHRsZXQgYWN0aW9ucyA9IFtcblx0XHRcdFx0e1xuXHRcdFx0XHRcdGljb246ICdpY29uLWRvd25sb2FkJyxcblx0XHRcdFx0XHR0ZXh0OiB0KCdjb250YWN0cycsICdEb3dubG9hZCcpLFxuXHRcdFx0XHRcdGhyZWY6IHRoaXMuY29udGFjdC51cmxcblx0XHRcdFx0fVxuXHRcdFx0XVxuXHRcdFx0aWYgKHRoaXMuY29udGFjdC5hZGRyZXNzYm9vay5lbmFibGVkKSB7XG5cdFx0XHRcdGFjdGlvbnMucHVzaCh7XG5cdFx0XHRcdFx0aWNvbjogJ2ljb24tZGVsZXRlJyxcblx0XHRcdFx0XHR0ZXh0OiB0KCdjb250YWN0cycsICdEZWxldGUnKSxcblx0XHRcdFx0XHRhY3Rpb246IHRoaXMuZGVsZXRlQ29udGFjdFxuXHRcdFx0XHR9KVxuXHRcdFx0fVxuXG5cdFx0XHRyZXR1cm4gYWN0aW9uc1xuXHRcdH0sXG5cblx0XHQvKipcblx0XHQgKiBDb250YWN0IHByb3BlcnRpZXMgY29waWVkIGFuZCBzb3J0ZWQgYnkgcmZjUHJvcHMuZmllbGRPcmRlclxuXHRcdCAqL1xuXHRcdHNvcnRlZFByb3BlcnRpZXMoKSB7XG5cdFx0XHRyZXR1cm4gdGhpcy5jb250YWN0LnByb3BlcnRpZXMuc2xpY2UoMCkuc29ydCgoYSwgYikgPT4ge1xuXHRcdFx0XHRyZXR1cm4gcmZjUHJvcHMuZmllbGRPcmRlci5pbmRleE9mKGEubmFtZSkgLSByZmNQcm9wcy5maWVsZE9yZGVyLmluZGV4T2YoYi5uYW1lKVxuXHRcdFx0fSlcblx0XHR9XG5cdH0sXG5cdHdhdGNoOiB7XG5cdFx0Ly8gdXJsIGNoYW5nZWQsIGdldCBhbmQgc2hvdyBzZWxlY3RlZCBjb250YWN0XG5cdFx0dWlkOiBmdW5jdGlvbigpIHtcblx0XHRcdHRoaXMudXBkYXRlTG9jYWxDb250YWN0KClcblx0XHR9LFxuXHRcdC8vIGRvbmUgbG9hZGluZywgY2hlY2sgaWYgdGhlIHByb3ZpZGVkIHVpZCBpcyB2YWxpZCBhbmQgb3BlbiBkZXRhaWxzXG5cdFx0bG9hZGluZzogZnVuY3Rpb24oKSB7XG5cdFx0XHRpZiAodGhpcy51aWQpIHtcblx0XHRcdFx0dGhpcy51cGRhdGVMb2NhbENvbnRhY3QoKVxuXHRcdFx0fVxuXHRcdH1cblx0fSxcblx0bWV0aG9kczoge1xuXHRcdHVwZGF0ZUxvY2FsQ29udGFjdCgpIHtcblx0XHRcdC8vIGNyZWF0ZSBuZXcgbG9jYWwgaW5zdGFuY2Ugb2YgdGhpcyBjb250YWN0XG5cdFx0XHRsZXQgY29udGFjdCA9IHRoaXMuJHN0b3JlLmdldHRlcnMuZ2V0Q29udGFjdCh0aGlzLnVpZClcblx0XHRcdHRoaXMuY29udGFjdCA9IG5ldyBDb250YWN0KElDQUwuc3RyaW5naWZ5KGNvbnRhY3QuakNhbCksIGNvbnRhY3QuYWRkcmVzc2Jvb2spXG5cdFx0fSxcblx0XHRjbG9zZU1lbnUoKSB7XG5cdFx0XHR0aGlzLm9wZW5lZE1lbnUgPSBmYWxzZVxuXHRcdH0sXG5cdFx0dG9nZ2xlTWVudSgpIHtcblx0XHRcdHRoaXMub3BlbmVkTWVudSA9ICF0aGlzLm9wZW5lZE1lbnVcblx0XHR9XG5cdH1cblxufVxuPC9zY3JpcHQ+XG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js?!./src/components/ContactDetails.vue?vue&type=script&lang=js&\n");
+>>>>>>> origin/vue-share-addressbook
/***/ }),
@@ -417,7 +421,11 @@ eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n
/***/ (function(module, exports, __webpack_require__) {
"use strict";
+<<<<<<< HEAD
eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _ical = __webpack_require__(/*! ical.js */ \"./node_modules/ical.js/build/ical.js\");\n\nvar _rfcProps = __webpack_require__(/*! ../../models/rfcProps.js */ \"./src/models/rfcProps.js\");\n\nvar _rfcProps2 = _interopRequireDefault(_rfcProps);\n\nvar _contact = __webpack_require__(/*! ../../models/contact */ \"./src/models/contact.js\");\n\nvar _contact2 = _interopRequireDefault(_contact);\n\nvar _PropertyText = __webpack_require__(/*! ../properties/PropertyText */ \"./src/components/properties/PropertyText.vue\");\n\nvar _PropertyText2 = _interopRequireDefault(_PropertyText);\n\nvar _PropertyMultipleText = __webpack_require__(/*! ../properties/PropertyMultipleText */ \"./src/components/properties/PropertyMultipleText.vue\");\n\nvar _PropertyMultipleText2 = _interopRequireDefault(_PropertyMultipleText);\n\nvar _PropertyDateTime = __webpack_require__(/*! ../properties/PropertyDateTime */ \"./src/components/properties/PropertyDateTime.vue\");\n\nvar _PropertyDateTime2 = _interopRequireDefault(_PropertyDateTime);\n\nvar _PropertyGroups = __webpack_require__(/*! ../properties/PropertyGroups */ \"./src/components/properties/PropertyGroups.vue\");\n\nvar _PropertyGroups2 = _interopRequireDefault(_PropertyGroups);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// import PropertySelect from '../properties/PropertyMultipleText'\n\nexports.default = {\n\tname: 'ContactDetailsProperty',\n\n\tprops: {\n\t\tproperty: {\n\t\t\ttype: _ical.Property,\n\t\t\tdefault: true\n\t\t},\n\t\tsortedProperties: {\n\t\t\ttype: Array,\n\t\t\tdefault: function _default() {\n\t\t\t\treturn [];\n\t\t\t}\n\t\t},\n\t\tindex: {\n\t\t\ttype: Number,\n\t\t\tdefault: 0\n\t\t},\n\t\tcontact: {\n\t\t\ttype: _contact2.default,\n\t\t\tdefault: null\n\t\t}\n\t},\n\n\tcomputed: {\n\t\t// dynamically load component based on property type\n\t\tcomponentInstance: function componentInstance() {\n\t\t\t// groups\n\t\t\tif (this.propName === 'categories') {\n\t\t\t\treturn _PropertyGroups2.default;\n\t\t\t}\n\n\t\t\t// dynamic matching\n\t\t\tif (this.property.isMultiValue && this.propType === 'text') {\n\t\t\t\treturn _PropertyMultipleText2.default;\n\t\t\t} else if (this.propType && ['date-and-or-time', 'date-time', 'time', 'date'].indexOf(this.propType) > -1) {\n\t\t\t\treturn _PropertyDateTime2.default;\n\t\t\t} else if (this.propType && this.propType !== 'unknown') {\n\t\t\t\treturn _PropertyText2.default;\n\t\t\t}\n\t\t\treturn _PropertyText2.default;\n\t\t},\n\n\n\t\t// rfc properties list\n\t\tproperties: function properties() {\n\t\t\treturn _rfcProps2.default.properties;\n\t\t},\n\t\tfieldOrder: function fieldOrder() {\n\t\t\treturn _rfcProps2.default.fieldOrder;\n\t\t},\n\n\n\t\t// is this the first property of its kind\n\t\tisFirstProperty: function isFirstProperty() {\n\t\t\tif (this.index > 0) {\n\t\t\t\treturn this.sortedProperties[this.index - 1].name !== this.propName;\n\t\t\t}\n\t\t\treturn true;\n\t\t},\n\n\t\t// is this the last property of its kind\n\t\tisLastProperty: function isLastProperty() {\n\t\t\tif (this.index < this.sortedProperties.length) {\n\t\t\t\treturn this.sortedProperties[this.index + 1].name !== this.propName;\n\t\t\t}\n\t\t\treturn true;\n\t\t},\n\n\n\t\t// the type of the prop e.g. FN\n\t\tpropName: function propName() {\n\t\t\treturn this.property.name;\n\t\t},\n\t\tpropType: function propType() {\n\t\t\treturn this.property.type;\n\t\t},\n\n\n\t\t// template to use\n\t\tpropModel: function propModel() {\n\t\t\treturn this.properties[this.propName];\n\t\t},\n\n\n\t\t// select type handler\n\t\tselectType: {\n\t\t\tget: function get() {\n\t\t\t\tif (this.propModel && this.propModel.options && this.type) {\n\n\t\t\t\t\tvar selectedType = this.type\n\t\t\t\t\t// vcard 3.0 save pref alongside TYPE\n\t\t\t\t\t.filter(function (type) {\n\t\t\t\t\t\treturn type !== 'pref';\n\t\t\t\t\t})\n\t\t\t\t\t// we only use uppercase strings\n\t\t\t\t\t.map(function (str) {\n\t\t\t\t\t\treturn str.toUpperCase();\n\t\t\t\t\t});\n\n\t\t\t\t\t// Compare array and score them by how many matches they have to the selected type\n\t\t\t\t\t// sorting directly is cleaner but slower\n\t\t\t\t\t// https://jsperf.com/array-map-and-intersection-perf\n\t\t\t\t\tvar matchingTypes = this.propModel.options.map(function (type) {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\ttype: type,\n\t\t\t\t\t\t\t// \"WORK,HOME\" => ['WORK', 'HOME']\n\t\t\t\t\t\t\tscore: type.id.split(',').filter(function (value) {\n\t\t\t\t\t\t\t\treturn selectedType.indexOf(value) !== -1;\n\t\t\t\t\t\t\t}).length\n\t\t\t\t\t\t};\n\t\t\t\t\t});\n\n\t\t\t\t\t// Sort by score, filtering out the null score and selecting the first match\n\t\t\t\t\tvar matchingType = matchingTypes.sort(function (a, b) {\n\t\t\t\t\t\treturn b.score - a.score;\n\t\t\t\t\t}).filter(function (type) {\n\t\t\t\t\t\treturn type.score > 0;\n\t\t\t\t\t})[0];\n\n\t\t\t\t\tif (matchingType) {\n\t\t\t\t\t\treturn matchingType.type;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (this.type) {\n\t\t\t\t\t// vcard 3.0 save pref alongside TYPE\n\t\t\t\t\tvar _selectedType = this.type.filter(function (type) {\n\t\t\t\t\t\treturn type !== 'pref';\n\t\t\t\t\t}).join(',');\n\t\t\t\t\treturn {\n\t\t\t\t\t\tid: _selectedType,\n\t\t\t\t\t\tname: _selectedType\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\treturn false;\n\t\t\t},\n\t\t\tset: function set(data) {\n\t\t\t\t// ical.js take types as arrays\n\t\t\t\tthis.type = data.id.split(',');\n\t\t\t\tthis.$emit('updatedcontact');\n\t\t\t}\n\t\t},\n\n\t\t// property value(s)\n\t\tvalue: {\n\t\t\tget: function get() {\n\t\t\t\tif (this.property.isMultiValue) {\n\t\t\t\t\t// differences between values types :x;x;x;x;x and x,x,x,x,x\n\t\t\t\t\treturn this.property.isStructuredValue ? this.property.getValues()[0] : this.property.getValues();\n\t\t\t\t}\n\t\t\t\treturn this.property.getFirstValue();\n\t\t\t},\n\t\t\tset: function set(data) {\n\t\t\t\tif (this.property.isMultiValue) {\n\t\t\t\t\t// differences between values types :x;x;x;x;x and x,x,x,x,x\n\t\t\t\t\tthis.property.isStructuredValue ? this.property.setValues([data]) : this.property.setValues(data);\n\t\t\t\t}\n\t\t\t\tthis.property.setValue(data);\n\t\t\t\tthis.$emit('updatedcontact');\n\t\t\t}\n\t\t},\n\n\t\t// property meta type\n\t\ttype: {\n\t\t\tget: function get() {\n\t\t\t\tvar type = this.property.getParameter('type');\n\t\t\t\t// ensure we have an array\n\t\t\t\tif (type) {\n\t\t\t\t\treturn Array.isArray(type) ? type : [type];\n\t\t\t\t}\n\t\t\t},\n\t\t\tset: function set(data) {\n\t\t\t\tthis.property.setParameter('type', data);\n\t\t\t}\n\t\t},\n\n\t\t// property meta pref\n\t\tpref: {\n\t\t\tget: function get() {\n\t\t\t\treturn this.property.getParameter('pref');\n\t\t\t},\n\t\t\tset: function set(data) {\n\t\t\t\tthis.property.setParameter('pref', data);\n\t\t\t}\n\t\t}\n\t},\n\n\tmethods: {\n\t\tdeleteProp: function deleteProp() {\n\t\t\talert('deleted');\n\t\t}\n\t}\n\n}; //\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vc3JjL2NvbXBvbmVudHMvQ29udGFjdERldGFpbHMvQ29udGFjdERldGFpbHNQcm9wZXJ0eS52dWU/ODY3MCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUE4QkE7O0FBQ0E7Ozs7QUFDQTs7OztBQUVBOzs7O0FBQ0E7Ozs7QUFDQTs7OztBQUNBOzs7Ozs7QUFDQTs7a0JBRUE7QUFDQSwrQkFEQTs7QUFHQTtBQUNBO0FBQ0EsdUJBREE7QUFFQTtBQUZBLEdBREE7QUFLQTtBQUNBLGNBREE7QUFFQSxVQUZBLHNCQUVBO0FBQ0E7QUFDQTtBQUpBLEdBTEE7QUFXQTtBQUNBLGVBREE7QUFFQTtBQUZBLEdBWEE7QUFlQTtBQUNBLDBCQURBO0FBRUE7QUFGQTtBQWZBLEVBSEE7O0FBd0JBO0FBQ0E7QUFDQSxtQkFGQSwrQkFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLElBRkEsTUFFQTtBQUNBO0FBQ0EsSUFGQSxNQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FqQkE7OztBQW1CQTtBQUNBLFlBcEJBLHdCQW9CQTtBQUNBO0FBQ0EsR0F0QkE7QUF1QkEsWUF2QkEsd0JBdUJBO0FBQ0E7QUFDQSxHQXpCQTs7O0FBMkJBO0FBQ0EsaUJBNUJBLDZCQTRCQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FqQ0E7O0FBa0NBO0FBQ0EsZ0JBbkNBLDRCQW1DQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0F4Q0E7OztBQTBDQTtBQUNBLFVBM0NBLHNCQTJDQTtBQUNBO0FBQ0EsR0E3Q0E7QUE4Q0EsVUE5Q0Esc0JBOENBO0FBQ0E7QUFDQSxHQWhEQTs7O0FBa0RBO0FBQ0EsV0FuREEsdUJBbURBO0FBQ0E7QUFDQSxHQXJEQTs7O0FBdURBO0FBQ0E7QUFDQSxNQURBLGlCQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQURBLE1BRUEsTUFGQSxDQUVBO0FBQUE7QUFBQSxNQUZBO0FBR0E7QUFIQSxNQUlBLEdBSkEsQ0FJQTtBQUFBO0FBQUEsTUFKQTs7QUFNQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBREE7QUFFQTtBQUNBO0FBQUE7QUFBQTtBQUhBO0FBS0EsTUFOQTs7QUFRQTtBQUNBLHNDQUNBLElBREEsQ0FDQTtBQUFBO0FBQUEsTUFEQSxFQUVBLE1BRkEsQ0FFQTtBQUFBO0FBQUEsTUFGQSxFQUVBLENBRkE7O0FBSUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUFBO0FBQ0E7QUFDQSx1QkFEQTtBQUVBO0FBRkE7QUFJQTtBQUNBO0FBQ0EsSUF2Q0E7QUF3Q0EsTUF4Q0EsZUF3Q0EsSUF4Q0EsRUF3Q0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQTVDQSxHQXhEQTs7QUF3R0E7QUFDQTtBQUNBLE1BREEsaUJBQ0E7QUFDQTtBQUNBO0FBQ0EsOENBQ0EsNEJBREEsR0FFQSx5QkFGQTtBQUdBO0FBQ0E7QUFDQSxJQVRBO0FBVUEsTUFWQSxlQVVBLElBVkEsRUFVQTtBQUNBO0FBQ0E7QUFDQSx1Q0FDQSwrQkFEQSxHQUVBLDZCQUZBO0FBR0E7QUFDQTtBQUNBO0FBQ0E7QUFuQkEsR0F6R0E7O0FBK0hBO0FBQ0E7QUFDQSxNQURBLGlCQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBUEE7QUFRQSxNQVJBLGVBUUEsSUFSQSxFQVFBO0FBQ0E7QUFDQTtBQVZBLEdBaElBOztBQTZJQTtBQUNBO0FBQ0EsTUFEQSxpQkFDQTtBQUNBO0FBQ0EsSUFIQTtBQUlBLE1BSkEsZUFJQSxJQUpBLEVBSUE7QUFDQTtBQUNBO0FBTkE7QUE5SUEsRUF4QkE7O0FBZ0xBO0FBQ0EsWUFEQSx3QkFDQTtBQUNBO0FBQ0E7QUFIQTs7QUFoTEEsQyIsImZpbGUiOiIuL25vZGVfbW9kdWxlcy9iYWJlbC1sb2FkZXIvbGliL2luZGV4LmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPyEuL3NyYy9jb21wb25lbnRzL0NvbnRhY3REZXRhaWxzL0NvbnRhY3REZXRhaWxzUHJvcGVydHkudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJi5qcyIsInNvdXJjZXNDb250ZW50IjpbIjwhLS1cbiAgLSBAY29weXJpZ2h0IENvcHlyaWdodCAoYykgMjAxOCBKb2huIE1vbGFrdm/DpiA8c2tqbmxkc3ZAcHJvdG9ubWFpbC5jb20+XG4gIC1cbiAgLSBAYXV0aG9yIEpvaG4gTW9sYWt2b8OmIDxza2pubGRzdkBwcm90b25tYWlsLmNvbT5cbiAgLVxuICAtIEBsaWNlbnNlIEdOVSBBR1BMIHZlcnNpb24gMyBvciBhbnkgbGF0ZXIgdmVyc2lvblxuICAtXG4gIC0gVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnlcbiAgLSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBBZmZlcm8gR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhc1xuICAtIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZVxuICAtIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gIC1cbiAgLSBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiAgLSBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICAtIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGVcbiAgLSBHTlUgQWZmZXJvIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAgLVxuICAtIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBBZmZlcm8gR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuICAtIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uXG4gIC1cbiAgLS0+XG5cbjx0ZW1wbGF0ZT5cblx0PCEtLSBJZiBub3QgaW4gdGhlIHJmY1Byb3BzIHRoZW4gd2UgZG9uJ3Qgd2FudCB0byBkaXNwbGF5IGl0IC0tPlxuXHQ8Y29tcG9uZW50IHYtaWY9XCJwcm9wTW9kZWwgJiYgcHJvcFR5cGUgIT09ICd1bmtub3duJ1wiIDppcz1cImNvbXBvbmVudEluc3RhbmNlXCIgOnNlbGVjdC10eXBlLnN5bmM9XCJzZWxlY3RUeXBlXCJcblx0XHQ6cHJvcC1tb2RlbD1cInByb3BNb2RlbFwiIDp2YWx1ZS5zeW5jPVwidmFsdWVcIiA6aXMtZmlyc3QtcHJvcGVydHk9XCJpc0ZpcnN0UHJvcGVydHlcIlxuXHRcdDpjbGFzcz1cInsncHJvcGVydHktLWxhc3QnOiBpc0xhc3RQcm9wZXJ0eX1cIiA6Y29udGFjdD1cImNvbnRhY3RcIiBAZGVsZXRlPVwiZGVsZXRlUHJvcFwiIC8+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuaW1wb3J0IHsgUHJvcGVydHkgfSBmcm9tICdpY2FsLmpzJ1xuaW1wb3J0IHJmY1Byb3BzIGZyb20gJy4uLy4uL21vZGVscy9yZmNQcm9wcy5qcydcbmltcG9ydCBDb250YWN0IGZyb20gJy4uLy4uL21vZGVscy9jb250YWN0J1xuXG5pbXBvcnQgUHJvcGVydHlUZXh0IGZyb20gJy4uL3Byb3BlcnRpZXMvUHJvcGVydHlUZXh0J1xuaW1wb3J0IFByb3BlcnR5TXVsdGlwbGVUZXh0IGZyb20gJy4uL3Byb3BlcnRpZXMvUHJvcGVydHlNdWx0aXBsZVRleHQnXG5pbXBvcnQgUHJvcGVydHlEYXRlVGltZSBmcm9tICcuLi9wcm9wZXJ0aWVzL1Byb3BlcnR5RGF0ZVRpbWUnXG5pbXBvcnQgcHJvcGVydHlHcm91cHMgZnJvbSAnLi4vcHJvcGVydGllcy9Qcm9wZXJ0eUdyb3Vwcydcbi8vIGltcG9ydCBQcm9wZXJ0eVNlbGVjdCBmcm9tICcuLi9wcm9wZXJ0aWVzL1Byb3BlcnR5TXVsdGlwbGVUZXh0J1xuXG5leHBvcnQgZGVmYXVsdCB7XG5cdG5hbWU6ICdDb250YWN0RGV0YWlsc1Byb3BlcnR5JyxcblxuXHRwcm9wczoge1xuXHRcdHByb3BlcnR5OiB7XG5cdFx0XHR0eXBlOiBQcm9wZXJ0eSxcblx0XHRcdGRlZmF1bHQ6IHRydWVcblx0XHR9LFxuXHRcdHNvcnRlZFByb3BlcnRpZXM6IHtcblx0XHRcdHR5cGU6IEFycmF5LFxuXHRcdFx0ZGVmYXVsdCgpIHtcblx0XHRcdFx0cmV0dXJuIFtdXG5cdFx0XHR9XG5cdFx0fSxcblx0XHRpbmRleDoge1xuXHRcdFx0dHlwZTogTnVtYmVyLFxuXHRcdFx0ZGVmYXVsdDogMFxuXHRcdH0sXG5cdFx0Y29udGFjdDoge1xuXHRcdFx0dHlwZTogQ29udGFjdCxcblx0XHRcdGRlZmF1bHQ6IG51bGxcblx0XHR9XG5cdH0sXG5cblx0Y29tcHV0ZWQ6IHtcblx0XHQvLyBkeW5hbWljYWxseSBsb2FkIGNvbXBvbmVudCBiYXNlZCBvbiBwcm9wZXJ0eSB0eXBlXG5cdFx0Y29tcG9uZW50SW5zdGFuY2UoKSB7XG5cdFx0XHQvLyBncm91cHNcblx0XHRcdGlmICh0aGlzLnByb3BOYW1lID09PSAnY2F0ZWdvcmllcycpIHtcblx0XHRcdFx0cmV0dXJuIHByb3BlcnR5R3JvdXBzXG5cdFx0XHR9XG5cblx0XHRcdC8vIGR5bmFtaWMgbWF0Y2hpbmdcblx0XHRcdGlmICh0aGlzLnByb3BlcnR5LmlzTXVsdGlWYWx1ZSAmJiB0aGlzLnByb3BUeXBlID09PSAndGV4dCcpIHtcblx0XHRcdFx0cmV0dXJuIFByb3BlcnR5TXVsdGlwbGVUZXh0XG5cdFx0XHR9IGVsc2UgaWYgKHRoaXMucHJvcFR5cGUgJiYgWydkYXRlLWFuZC1vci10aW1lJywgJ2RhdGUtdGltZScsICd0aW1lJywgJ2RhdGUnXS5pbmRleE9mKHRoaXMucHJvcFR5cGUpID4gLTEpIHtcblx0XHRcdFx0cmV0dXJuIFByb3BlcnR5RGF0ZVRpbWVcblx0XHRcdH0gZWxzZSBpZiAodGhpcy5wcm9wVHlwZSAmJiB0aGlzLnByb3BUeXBlICE9PSAndW5rbm93bicpIHtcblx0XHRcdFx0cmV0dXJuIFByb3BlcnR5VGV4dFxuXHRcdFx0fVxuXHRcdFx0cmV0dXJuIFByb3BlcnR5VGV4dFxuXHRcdH0sXG5cblx0XHQvLyByZmMgcHJvcGVydGllcyBsaXN0XG5cdFx0cHJvcGVydGllcygpIHtcblx0XHRcdHJldHVybiByZmNQcm9wcy5wcm9wZXJ0aWVzXG5cdFx0fSxcblx0XHRmaWVsZE9yZGVyKCkge1xuXHRcdFx0cmV0dXJuIHJmY1Byb3BzLmZpZWxkT3JkZXJcblx0XHR9LFxuXG5cdFx0Ly8gaXMgdGhpcyB0aGUgZmlyc3QgcHJvcGVydHkgb2YgaXRzIGtpbmRcblx0XHRpc0ZpcnN0UHJvcGVydHkoKSB7XG5cdFx0XHRpZiAodGhpcy5pbmRleCA+IDApIHtcblx0XHRcdFx0cmV0dXJuIHRoaXMuc29ydGVkUHJvcGVydGllc1t0aGlzLmluZGV4IC0gMV0ubmFtZSAhPT0gdGhpcy5wcm9wTmFtZVxuXHRcdFx0fVxuXHRcdFx0cmV0dXJuIHRydWVcblx0XHR9LFxuXHRcdC8vIGlzIHRoaXMgdGhlIGxhc3QgcHJvcGVydHkgb2YgaXRzIGtpbmRcblx0XHRpc0xhc3RQcm9wZXJ0eSgpIHtcblx0XHRcdGlmICh0aGlzLmluZGV4IDwgdGhpcy5zb3J0ZWRQcm9wZXJ0aWVzLmxlbmd0aCkge1xuXHRcdFx0XHRyZXR1cm4gdGhpcy5zb3J0ZWRQcm9wZXJ0aWVzW3RoaXMuaW5kZXggKyAxXS5uYW1lICE9PSB0aGlzLnByb3BOYW1lXG5cdFx0XHR9XG5cdFx0XHRyZXR1cm4gdHJ1ZVxuXHRcdH0sXG5cblx0XHQvLyB0aGUgdHlwZSBvZiB0aGUgcHJvcCBlLmcuIEZOXG5cdFx0cHJvcE5hbWUoKSB7XG5cdFx0XHRyZXR1cm4gdGhpcy5wcm9wZXJ0eS5uYW1lXG5cdFx0fSxcblx0XHRwcm9wVHlwZSgpIHtcblx0XHRcdHJldHVybiB0aGlzLnByb3BlcnR5LnR5cGVcblx0XHR9LFxuXG5cdFx0Ly8gdGVtcGxhdGUgdG8gdXNlXG5cdFx0cHJvcE1vZGVsKCkge1xuXHRcdFx0cmV0dXJuIHRoaXMucHJvcGVydGllc1t0aGlzLnByb3BOYW1lXVxuXHRcdH0sXG5cblx0XHQvLyBzZWxlY3QgdHlwZSBoYW5kbGVyXG5cdFx0c2VsZWN0VHlwZToge1xuXHRcdFx0Z2V0KCkge1xuXHRcdFx0XHRpZiAodGhpcy5wcm9wTW9kZWwgJiYgdGhpcy5wcm9wTW9kZWwub3B0aW9ucyAmJiB0aGlzLnR5cGUpIHtcblxuXHRcdFx0XHRcdGxldCBzZWxlY3RlZFR5cGUgPSB0aGlzLnR5cGVcblx0XHRcdFx0XHRcdC8vIHZjYXJkIDMuMCBzYXZlIHByZWYgYWxvbmdzaWRlIFRZUEVcblx0XHRcdFx0XHRcdC5maWx0ZXIodHlwZSA9PiB0eXBlICE9PSAncHJlZicpXG5cdFx0XHRcdFx0XHQvLyB3ZSBvbmx5IHVzZSB1cHBlcmNhc2Ugc3RyaW5nc1xuXHRcdFx0XHRcdFx0Lm1hcChzdHIgPT4gc3RyLnRvVXBwZXJDYXNlKCkpXG5cblx0XHRcdFx0XHQvLyBDb21wYXJlIGFycmF5IGFuZCBzY29yZSB0aGVtIGJ5IGhvdyBtYW55IG1hdGNoZXMgdGhleSBoYXZlIHRvIHRoZSBzZWxlY3RlZCB0eXBlXG5cdFx0XHRcdFx0Ly8gc29ydGluZyBkaXJlY3RseSBpcyBjbGVhbmVyIGJ1dCBzbG93ZXJcblx0XHRcdFx0XHQvLyBodHRwczovL2pzcGVyZi5jb20vYXJyYXktbWFwLWFuZC1pbnRlcnNlY3Rpb24tcGVyZlxuXHRcdFx0XHRcdGxldCBtYXRjaGluZ1R5cGVzID0gdGhpcy5wcm9wTW9kZWwub3B0aW9ucy5tYXAodHlwZSA9PiB7XG5cdFx0XHRcdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHRcdFx0XHR0eXBlLFxuXHRcdFx0XHRcdFx0XHQvLyBcIldPUkssSE9NRVwiID0+IFsnV09SSycsICdIT01FJ11cblx0XHRcdFx0XHRcdFx0c2NvcmU6IHR5cGUuaWQuc3BsaXQoJywnKS5maWx0ZXIodmFsdWUgPT4gc2VsZWN0ZWRUeXBlLmluZGV4T2YodmFsdWUpICE9PSAtMSkubGVuZ3RoXG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fSlcblxuXHRcdFx0XHRcdC8vIFNvcnQgYnkgc2NvcmUsIGZpbHRlcmluZyBvdXQgdGhlIG51bGwgc2NvcmUgYW5kIHNlbGVjdGluZyB0aGUgZmlyc3QgbWF0Y2hcblx0XHRcdFx0XHRsZXQgbWF0Y2hpbmdUeXBlID0gbWF0Y2hpbmdUeXBlc1xuXHRcdFx0XHRcdFx0LnNvcnQoKGEsIGIpID0+IGIuc2NvcmUgLSBhLnNjb3JlKVxuXHRcdFx0XHRcdFx0LmZpbHRlcih0eXBlID0+IHR5cGUuc2NvcmUgPiAwKVswXVxuXG5cdFx0XHRcdFx0aWYgKG1hdGNoaW5nVHlwZSkge1xuXHRcdFx0XHRcdFx0cmV0dXJuIG1hdGNoaW5nVHlwZS50eXBlXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdGlmICh0aGlzLnR5cGUpIHtcblx0XHRcdFx0XHQvLyB2Y2FyZCAzLjAgc2F2ZSBwcmVmIGFsb25nc2lkZSBUWVBFXG5cdFx0XHRcdFx0bGV0IHNlbGVjdGVkVHlwZSA9IHRoaXMudHlwZS5maWx0ZXIodHlwZSA9PiB0eXBlICE9PSAncHJlZicpLmpvaW4oJywnKVxuXHRcdFx0XHRcdHJldHVybiB7XG5cdFx0XHRcdFx0XHRpZDogc2VsZWN0ZWRUeXBlLFxuXHRcdFx0XHRcdFx0bmFtZTogc2VsZWN0ZWRUeXBlXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdHJldHVybiBmYWxzZVxuXHRcdFx0fSxcblx0XHRcdHNldChkYXRhKSB7XG5cdFx0XHRcdC8vIGljYWwuanMgdGFrZSB0eXBlcyBhcyBhcnJheXNcblx0XHRcdFx0dGhpcy50eXBlID0gZGF0YS5pZC5zcGxpdCgnLCcpXG5cdFx0XHRcdHRoaXMuJGVtaXQoJ3VwZGF0ZWRjb250YWN0Jylcblx0XHRcdH1cblxuXHRcdH0sXG5cblx0XHQvLyBwcm9wZXJ0eSB2YWx1ZShzKVxuXHRcdHZhbHVlOiB7XG5cdFx0XHRnZXQoKSB7XG5cdFx0XHRcdGlmICh0aGlzLnByb3BlcnR5LmlzTXVsdGlWYWx1ZSkge1xuXHRcdFx0XHRcdC8vIGRpZmZlcmVuY2VzIGJldHdlZW4gdmFsdWVzIHR5cGVzIDp4O3g7eDt4O3ggYW5kIHgseCx4LHgseFxuXHRcdFx0XHRcdHJldHVybiB0aGlzLnByb3BlcnR5LmlzU3RydWN0dXJlZFZhbHVlXG5cdFx0XHRcdFx0XHQ/IHRoaXMucHJvcGVydHkuZ2V0VmFsdWVzKClbMF1cblx0XHRcdFx0XHRcdDogdGhpcy5wcm9wZXJ0eS5nZXRWYWx1ZXMoKVxuXHRcdFx0XHR9XG5cdFx0XHRcdHJldHVybiB0aGlzLnByb3BlcnR5LmdldEZpcnN0VmFsdWUoKVxuXHRcdFx0fSxcblx0XHRcdHNldChkYXRhKSB7XG5cdFx0XHRcdGlmICh0aGlzLnByb3BlcnR5LmlzTXVsdGlWYWx1ZSkge1xuXHRcdFx0XHRcdC8vIGRpZmZlcmVuY2VzIGJldHdlZW4gdmFsdWVzIHR5cGVzIDp4O3g7eDt4O3ggYW5kIHgseCx4LHgseFxuXHRcdFx0XHRcdHRoaXMucHJvcGVydHkuaXNTdHJ1Y3R1cmVkVmFsdWVcblx0XHRcdFx0XHRcdD8gdGhpcy5wcm9wZXJ0eS5zZXRWYWx1ZXMoW2RhdGFdKVxuXHRcdFx0XHRcdFx0OiB0aGlzLnByb3BlcnR5LnNldFZhbHVlcyhkYXRhKVxuXHRcdFx0XHR9XG5cdFx0XHRcdHRoaXMucHJvcGVydHkuc2V0VmFsdWUoZGF0YSlcblx0XHRcdFx0dGhpcy4kZW1pdCgndXBkYXRlZGNvbnRhY3QnKVxuXHRcdFx0fVxuXHRcdH0sXG5cblx0XHQvLyBwcm9wZXJ0eSBtZXRhIHR5cGVcblx0XHR0eXBlOiB7XG5cdFx0XHRnZXQoKSB7XG5cdFx0XHRcdGxldCB0eXBlID0gdGhpcy5wcm9wZXJ0eS5nZXRQYXJhbWV0ZXIoJ3R5cGUnKVxuXHRcdFx0XHQvLyBlbnN1cmUgd2UgaGF2ZSBhbiBhcnJheVxuXHRcdFx0XHRpZiAodHlwZSkge1xuXHRcdFx0XHRcdHJldHVybiBBcnJheS5pc0FycmF5KHR5cGUpID8gdHlwZSA6IFt0eXBlXVxuXHRcdFx0XHR9XG5cdFx0XHR9LFxuXHRcdFx0c2V0KGRhdGEpIHtcblx0XHRcdFx0dGhpcy5wcm9wZXJ0eS5zZXRQYXJhbWV0ZXIoJ3R5cGUnLCBkYXRhKVxuXHRcdFx0fVxuXHRcdH0sXG5cblx0XHQvLyBwcm9wZXJ0eSBtZXRhIHByZWZcblx0XHRwcmVmOiB7XG5cdFx0XHRnZXQoKSB7XG5cdFx0XHRcdHJldHVybiB0aGlzLnByb3BlcnR5LmdldFBhcmFtZXRlcigncHJlZicpXG5cdFx0XHR9LFxuXHRcdFx0c2V0KGRhdGEpIHtcblx0XHRcdFx0dGhpcy5wcm9wZXJ0eS5zZXRQYXJhbWV0ZXIoJ3ByZWYnLCBkYXRhKVxuXHRcdFx0fVxuXHRcdH1cblx0fSxcblxuXHRtZXRob2RzOiB7XG5cdFx0ZGVsZXRlUHJvcCgpIHtcblx0XHRcdGFsZXJ0KCdkZWxldGVkJylcblx0XHR9XG5cdH1cblxufVxuPC9zY3JpcHQ+XG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js?!./src/components/ContactDetails/ContactDetailsProperty.vue?vue&type=script&lang=js&\n");
+=======
+eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _ical = __webpack_require__(/*! ical.js */ \"./node_modules/ical.js/build/ical.js\");\n\nvar _rfcProps = __webpack_require__(/*! ../../models/rfcProps.js */ \"./src/models/rfcProps.js\");\n\nvar _rfcProps2 = _interopRequireDefault(_rfcProps);\n\nvar _PropertyText = __webpack_require__(/*! ../properties/PropertyText */ \"./src/components/properties/PropertyText.vue\");\n\nvar _PropertyText2 = _interopRequireDefault(_PropertyText);\n\nvar _PropertyMultipleText = __webpack_require__(/*! ../properties/PropertyMultipleText */ \"./src/components/properties/PropertyMultipleText.vue\");\n\nvar _PropertyMultipleText2 = _interopRequireDefault(_PropertyMultipleText);\n\nvar _PropertyDateTime = __webpack_require__(/*! ../properties/PropertyDateTime */ \"./src/components/properties/PropertyDateTime.vue\");\n\nvar _PropertyDateTime2 = _interopRequireDefault(_PropertyDateTime);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// import PropertySelect from '../properties/P