diff options
Diffstat (limited to 'js/editor-collab.js.map')
-rw-r--r-- | js/editor-collab.js.map | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/js/editor-collab.js.map b/js/editor-collab.js.map index 4bf98e797..726d34d29 100644 --- a/js/editor-collab.js.map +++ b/js/editor-collab.js.map @@ -1 +1 @@ -{"version":3,"file":"editor-collab.js?v=ff5b08537220fe7ca086","mappings":"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","sources":["webpack:///text/src/components/SessionList.vue?vue&type=style&index=0&id=9dc4ac6e&scoped=true&lang=scss&","webpack:///text/src/components/SessionList.vue?vue&type=template&id=9dc4ac6e&scoped=true&","webpack:///text/src/components/SessionList.vue","webpack:///text/src/components/SessionList.vue?vue&type=script&lang=js&","webpack://text/./src/components/SessionList.vue?944e","webpack://text/./src/components/SessionList.vue?8f30"],"sourcesContent":["// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".avatar-list[data-v-9dc4ac6e]{border:none;background-color:var(--color-main-background);padding:0;margin:0;padding-left:6px;display:inline-flex;flex-direction:row-reverse}.avatar-list[data-v-9dc4ac6e]:focus{background-color:#eee}.avatar-list .avatar-wrapper[data-v-9dc4ac6e]{margin:0 -8px 0 0;height:44px;width:44px}.avatar-list .icon-more[data-v-9dc4ac6e],.avatar-list .icon-group[data-v-9dc4ac6e],.avatar-list .icon-settings-dark[data-v-9dc4ac6e]{background-color:var(--color-background-dark);width:44px;height:44px;margin:0 6px 0 0}.avatar-wrapper[data-v-9dc4ac6e]{z-index:1;border-radius:50%;overflow:hidden;box-sizing:content-box !important}.session-menu[data-v-9dc4ac6e]{max-width:280px;padding-top:6px;padding-bottom:6px}.session-menu ul li[data-v-9dc4ac6e]{align-items:center;display:flex;padding:6px}.session-menu ul li .avatar-wrapper[data-v-9dc4ac6e]{height:32px;width:32px;margin-right:6px}label[data-v-9dc4ac6e]{display:block;margin:8px}.hint[data-v-9dc4ac6e]{margin:8px;color:var(--color-text-maxcontrast)}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/SessionList.vue\"],\"names\":[],\"mappings\":\"AAyJA,8BACC,WAAA,CACA,6CAAA,CACA,SAAA,CACA,QAAA,CACA,gBAAA,CACA,mBAAA,CACA,0BAAA,CAEA,oCACC,qBAAA,CAGD,8CACC,iBAAA,CACA,WAAA,CACA,UAAA,CAGD,qIACC,6CAAA,CACA,UAAA,CACA,WAAA,CACA,gBAAA,CAIF,iCACC,SAAA,CACA,iBAAA,CACA,eAAA,CACA,iCAAA,CAGD,+BACC,eAAA,CACA,eAAA,CACA,kBAAA,CAEA,qCACC,kBAAA,CACA,YAAA,CACA,WAAA,CAEA,qDACC,WAAA,CACA,UAAA,CACA,gBAAA,CAKH,uBACC,aAAA,CACA,UAAA,CAGD,uBACC,UAAA,CACA,mCAAA\",\"sourcesContent\":[\"\\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\\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.avatar-list {\\n\\tborder: none;\\n\\tbackground-color: var(--color-main-background);\\n\\tpadding: 0;\\n\\tmargin: 0;\\n\\tpadding-left: 6px;\\n\\tdisplay: inline-flex;\\n\\tflex-direction: row-reverse;\\n\\n\\t&:focus {\\n\\t\\tbackground-color: #eee;\\n\\t}\\n\\n\\t.avatar-wrapper {\\n\\t\\tmargin: 0 -8px 0 0;\\n\\t\\theight: 44px;\\n\\t\\twidth: 44px;\\n\\t}\\n\\n\\t.icon-more, .icon-group, .icon-settings-dark {\\n\\t\\tbackground-color: var(--color-background-dark);\\n\\t\\twidth: 44px;\\n\\t\\theight: 44px;\\n\\t\\tmargin: 0 6px 0 0;\\n\\t}\\n}\\n\\n.avatar-wrapper {\\n\\tz-index: 1;\\n\\tborder-radius: 50%;\\n\\toverflow: hidden;\\n\\tbox-sizing: content-box !important;\\n}\\n\\n.session-menu {\\n\\tmax-width: 280px;\\n\\tpadding-top: 6px;\\n\\tpadding-bottom: 6px;\\n\\n\\tul li {\\n\\t\\talign-items: center;\\n\\t\\tdisplay: flex;\\n\\t\\tpadding: 6px;\\n\\n\\t\\t.avatar-wrapper {\\n\\t\\t\\theight: 32px;\\n\\t\\t\\twidth: 32px;\\n\\t\\t\\tmargin-right: 6px;\\n\\t\\t}\\n\\t}\\n}\\n\\nlabel {\\n\\tdisplay: block;\\n\\tmargin: 8px;\\n}\\n\\n.hint {\\n\\tmargin: 8px;\\n\\tcolor: var(--color-text-maxcontrast);\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Popover',{staticClass:\"session-list\",attrs:{\"placement\":\"top\"},scopedSlots:_vm._u([{key:\"default\",fn:function(){return [_c('div',{staticClass:\"session-menu\"},[_c('ul',[_vm._t(\"default\"),_vm._v(\" \"),_vm._l((_vm.participantsPopover),function(session){return _c('li',{key:session.id,style:(_vm.avatarStyle(session))},[_c('div',{staticClass:\"avatar-wrapper\",style:(_vm.sessionStyle(session))},[_c('Avatar',{attrs:{\"user\":session.userId ? session.userId : session.guestName,\"is-guest\":session.userId === null,\"disable-menu\":true,\"show-user-status\":false,\"disable-tooltip\":true,\"size\":32}})],1),_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(session.guestName ? session.guestName : session.displayName)+\"\\n\\t\\t\\t\\t\")])})],2),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.showAuthorAnnotations),expression:\"showAuthorAnnotations\"}],staticClass:\"checkbox\",attrs:{\"id\":\"toggle-color-annotations\",\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.showAuthorAnnotations)?_vm._i(_vm.showAuthorAnnotations,null)>-1:(_vm.showAuthorAnnotations)},on:{\"change\":function($event){var $$a=_vm.showAuthorAnnotations,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.showAuthorAnnotations=$$a.concat([$$v]))}else{$$i>-1&&(_vm.showAuthorAnnotations=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.showAuthorAnnotations=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"toggle-color-annotations\"}},[_vm._v(_vm._s(_vm.t('text', 'Show author colors')))]),_vm._v(\" \"),_c('p',{staticClass:\"hint\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('text', 'Author colors are only shown until everyone has closed the document.'))+\"\\n\\t\\t\\t\")])])]},proxy:true}],null,true)},[_c('button',{directives:[{name:\"tooltip\",rawName:\"v-tooltip.bottom\",value:(_vm.t('text', 'Participants')),expression:\"t('text', 'Participants')\",modifiers:{\"bottom\":true}}],staticClass:\"avatar-list\",attrs:{\"slot\":\"trigger\"},slot:\"trigger\"},[_c('div',{staticClass:\"avatardiv icon-group\"}),_vm._v(\" \"),_vm._l((_vm.sessionsVisible),function(session){return _c('div',{key:session.id,staticClass:\"avatar-wrapper\",style:(_vm.sessionStyle(session))},[_c('Avatar',{style:(_vm.avatarStyle(session)),attrs:{\"user\":session.userId ? session.userId : session.guestName,\"is-guest\":session.userId === null,\"disable-menu\":true,\"show-user-status\":false,\"disable-tooltip\":true,\"size\":44}})],1)})],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n - @copyright Copyright (c) 2019 Julius Härtl <jus@bitgrid.net>\n -\n - @author Julius Härtl <jus@bitgrid.net>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<Popover class=\"session-list\" placement=\"top\">\n\t\t<button slot=\"trigger\"\n\t\t\tv-tooltip.bottom=\"t('text', 'Participants')\"\n\t\t\tclass=\"avatar-list\">\n\t\t\t<div class=\"avatardiv icon-group\" />\n\t\t\t<div v-for=\"session in sessionsVisible\"\n\t\t\t\t:key=\"session.id\"\n\t\t\t\tclass=\"avatar-wrapper\"\n\t\t\t\t:style=\"sessionStyle(session)\">\n\t\t\t\t<Avatar :style=\"avatarStyle(session)\"\n\t\t\t\t\t:user=\"session.userId ? session.userId : session.guestName\"\n\t\t\t\t\t:is-guest=\"session.userId === null\"\n\t\t\t\t\t:disable-menu=\"true\"\n\t\t\t\t\t:show-user-status=\"false\"\n\t\t\t\t\t:disable-tooltip=\"true\"\n\t\t\t\t\t:size=\"44\" />\n\t\t\t</div>\n\t\t</button>\n\t\t<template #default>\n\t\t\t<div class=\"session-menu\">\n\t\t\t\t<ul>\n\t\t\t\t\t<slot />\n\t\t\t\t\t<li v-for=\"session in participantsPopover\"\n\t\t\t\t\t\t:key=\"session.id\"\n\t\t\t\t\t\t:style=\"avatarStyle(session)\">\n\t\t\t\t\t\t<div class=\"avatar-wrapper\"\n\t\t\t\t\t\t\t:style=\"sessionStyle(session)\">\n\t\t\t\t\t\t\t<Avatar :user=\"session.userId ? session.userId : session.guestName\"\n\t\t\t\t\t\t\t\t:is-guest=\"session.userId === null\"\n\t\t\t\t\t\t\t\t:disable-menu=\"true\"\n\t\t\t\t\t\t\t\t:show-user-status=\"false\"\n\t\t\t\t\t\t\t\t:disable-tooltip=\"true\"\n\t\t\t\t\t\t\t\t:size=\"32\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t{{ session.guestName ? session.guestName : session.displayName }}\n\t\t\t\t\t</li>\n\t\t\t\t</ul>\n\t\t\t\t<input id=\"toggle-color-annotations\"\n\t\t\t\t\tv-model=\"showAuthorAnnotations\"\n\t\t\t\t\ttype=\"checkbox\"\n\t\t\t\t\tclass=\"checkbox\">\n\t\t\t\t<label for=\"toggle-color-annotations\">{{ t('text', 'Show author colors') }}</label>\n\t\t\t\t<p class=\"hint\">\n\t\t\t\t\t{{ t('text', 'Author colors are only shown until everyone has closed the document.') }}\n\t\t\t\t</p>\n\t\t\t</div>\n\t\t</template>\n\t</Popover>\n</template>\n\n<script>\nimport Avatar from '@nextcloud/vue/dist/Components/Avatar'\nimport Popover from '@nextcloud/vue/dist/Components/Popover'\nimport Tooltip from '@nextcloud/vue/dist/Directives/Tooltip'\nimport store from '../mixins/store.js'\n\nconst COLLABORATOR_IDLE_TIME = 60\nconst COLLABORATOR_DISCONNECT_TIME = 90\n\nexport default {\n\tname: 'SessionList',\n\tcomponents: {\n\t\tAvatar,\n\t\tPopover,\n\t},\n\tdirectives: {\n\t\ttooltip: Tooltip,\n\t},\n\tmixins: [store],\n\tprops: {\n\t\tsessions: {\n\t\t\ttype: Object,\n\t\t\tdefault: () => { return {} },\n\t\t},\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tmyName: '',\n\t\t}\n\t},\n\tcomputed: {\n\t\tshowAuthorAnnotations: {\n\t\t\tget() {\n\t\t\t\treturn this.$store.state.showAuthorAnnotations\n\t\t\t},\n\t\t\tset(value) {\n\t\t\t\tthis.$store.dispatch('setShowAuthorAnnotations', value)\n\t\t\t},\n\t\t},\n\t\tparticipantsPopover() {\n\t\t\tif (this.currentSession.guestName) {\n\t\t\t\treturn this.participantsWithoutCurrent\n\t\t\t}\n\t\t\treturn this.participants\n\t\t},\n\t\tparticipantsWithoutCurrent() {\n\t\t\treturn this.participants.filter((session) => !session.isCurrent)\n\t\t},\n\t\tparticipants() {\n\t\t\treturn Object.values(this.sessions).filter((session) =>\n\t\t\t\tsession.lastContact > Date.now() / 1000 - COLLABORATOR_DISCONNECT_TIME\n\t\t\t\t\t&& (session.userId !== null || session.guestName !== null)\n\t\t\t).sort((a, b) => a.lastContact < b.lastContact)\n\t\t},\n\t\tcurrentSession() {\n\t\t\treturn Object.values(this.sessions).find((session) => session.isCurrent)\n\t\t},\n\t\tsessionStyle() {\n\t\t\treturn (session) => {\n\t\t\t\treturn {\n\t\t\t\t\t'border-color': session.color,\n\t\t\t\t\t'background-color': session.color + ' !important',\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tavatarStyle() {\n\t\t\treturn (session) => {\n\t\t\t\treturn {\n\t\t\t\t\topacity: session.lastContact > Date.now() / 1000 - COLLABORATOR_IDLE_TIME ? 1 : 0.5,\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tsessionsVisible() {\n\t\t\treturn this.participantsWithoutCurrent.slice(0, 3)\n\t\t},\n\t},\n}\n</script>\n\n<style scoped lang=\"scss\">\n\t.avatar-list {\n\t\tborder: none;\n\t\tbackground-color: var(--color-main-background);\n\t\tpadding: 0;\n\t\tmargin: 0;\n\t\tpadding-left: 6px;\n\t\tdisplay: inline-flex;\n\t\tflex-direction: row-reverse;\n\n\t\t&:focus {\n\t\t\tbackground-color: #eee;\n\t\t}\n\n\t\t.avatar-wrapper {\n\t\t\tmargin: 0 -8px 0 0;\n\t\t\theight: 44px;\n\t\t\twidth: 44px;\n\t\t}\n\n\t\t.icon-more, .icon-group, .icon-settings-dark {\n\t\t\tbackground-color: var(--color-background-dark);\n\t\t\twidth: 44px;\n\t\t\theight: 44px;\n\t\t\tmargin: 0 6px 0 0;\n\t\t}\n\t}\n\n\t.avatar-wrapper {\n\t\tz-index: 1;\n\t\tborder-radius: 50%;\n\t\toverflow: hidden;\n\t\tbox-sizing: content-box !important;\n\t}\n\n\t.session-menu {\n\t\tmax-width: 280px;\n\t\tpadding-top: 6px;\n\t\tpadding-bottom: 6px;\n\n\t\tul li {\n\t\t\talign-items: center;\n\t\t\tdisplay: flex;\n\t\t\tpadding: 6px;\n\n\t\t\t.avatar-wrapper {\n\t\t\t\theight: 32px;\n\t\t\t\twidth: 32px;\n\t\t\t\tmargin-right: 6px;\n\t\t\t}\n\t\t}\n\t}\n\n\tlabel {\n\t\tdisplay: block;\n\t\tmargin: 8px;\n\t}\n\n\t.hint {\n\t\tmargin: 8px;\n\t\tcolor: var(--color-text-maxcontrast);\n\t}\n</style>\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SessionList.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SessionList.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/sass-loader/dist/cjs.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SessionList.vue?vue&type=style&index=0&id=9dc4ac6e&scoped=true&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/sass-loader/dist/cjs.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SessionList.vue?vue&type=style&index=0&id=9dc4ac6e&scoped=true&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SessionList.vue?vue&type=template&id=9dc4ac6e&scoped=true&\"\nimport script from \"./SessionList.vue?vue&type=script&lang=js&\"\nexport * from \"./SessionList.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SessionList.vue?vue&type=style&index=0&id=9dc4ac6e&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"9dc4ac6e\",\n null\n \n)\n\nexport default component.exports"],"names":["___CSS_LOADER_EXPORT___","push","module","id","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","_vm","this","_h","$createElement","_c","_self","staticClass","attrs","scopedSlots","_u","key","fn","_t","_v","_l","session","style","avatarStyle","sessionStyle","userId","guestName","_s","displayName","directives","name","rawName","value","expression","domProps","Array","isArray","showAuthorAnnotations","_i","on","$event","$$a","$$el","target","$$c","checked","$$i","concat","slice","t","proxy","modifiers","slot"],"sourceRoot":""}
\ No newline at end of file +{"version":3,"file":"editor-collab.js?v=7c365e98665bd2477a4a","mappings":"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","sources":["webpack:///text/src/components/SessionList.vue?vue&type=style&index=0&id=9dc4ac6e&scoped=true&lang=scss&","webpack:///text/src/components/SessionList.vue?vue&type=template&id=9dc4ac6e&scoped=true&","webpack:///text/src/components/SessionList.vue","webpack:///text/src/components/SessionList.vue?vue&type=script&lang=js&","webpack://text/./src/components/SessionList.vue?944e","webpack://text/./src/components/SessionList.vue?8f30"],"sourcesContent":["// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".avatar-list[data-v-9dc4ac6e]{border:none;background-color:var(--color-main-background);padding:0;margin:0;padding-left:6px;display:inline-flex;flex-direction:row-reverse}.avatar-list[data-v-9dc4ac6e]:focus{background-color:#eee}.avatar-list .avatar-wrapper[data-v-9dc4ac6e]{margin:0 -8px 0 0;height:44px;width:44px}.avatar-list .icon-more[data-v-9dc4ac6e],.avatar-list .icon-group[data-v-9dc4ac6e],.avatar-list .icon-settings-dark[data-v-9dc4ac6e]{background-color:var(--color-background-dark);width:44px;height:44px;margin:0 6px 0 0}.avatar-wrapper[data-v-9dc4ac6e]{z-index:1;border-radius:50%;overflow:hidden;box-sizing:content-box !important}.session-menu[data-v-9dc4ac6e]{max-width:280px;padding-top:6px;padding-bottom:6px}.session-menu ul li[data-v-9dc4ac6e]{align-items:center;display:flex;padding:6px}.session-menu ul li .avatar-wrapper[data-v-9dc4ac6e]{height:32px;width:32px;margin-right:6px}label[data-v-9dc4ac6e]{display:block;margin:8px}.hint[data-v-9dc4ac6e]{margin:8px;color:var(--color-text-maxcontrast)}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/SessionList.vue\"],\"names\":[],\"mappings\":\"AAyJA,8BACC,WAAA,CACA,6CAAA,CACA,SAAA,CACA,QAAA,CACA,gBAAA,CACA,mBAAA,CACA,0BAAA,CAEA,oCACC,qBAAA,CAGD,8CACC,iBAAA,CACA,WAAA,CACA,UAAA,CAGD,qIACC,6CAAA,CACA,UAAA,CACA,WAAA,CACA,gBAAA,CAIF,iCACC,SAAA,CACA,iBAAA,CACA,eAAA,CACA,iCAAA,CAGD,+BACC,eAAA,CACA,eAAA,CACA,kBAAA,CAEA,qCACC,kBAAA,CACA,YAAA,CACA,WAAA,CAEA,qDACC,WAAA,CACA,UAAA,CACA,gBAAA,CAKH,uBACC,aAAA,CACA,UAAA,CAGD,uBACC,UAAA,CACA,mCAAA\",\"sourcesContent\":[\"\\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\\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.avatar-list {\\n\\tborder: none;\\n\\tbackground-color: var(--color-main-background);\\n\\tpadding: 0;\\n\\tmargin: 0;\\n\\tpadding-left: 6px;\\n\\tdisplay: inline-flex;\\n\\tflex-direction: row-reverse;\\n\\n\\t&:focus {\\n\\t\\tbackground-color: #eee;\\n\\t}\\n\\n\\t.avatar-wrapper {\\n\\t\\tmargin: 0 -8px 0 0;\\n\\t\\theight: 44px;\\n\\t\\twidth: 44px;\\n\\t}\\n\\n\\t.icon-more, .icon-group, .icon-settings-dark {\\n\\t\\tbackground-color: var(--color-background-dark);\\n\\t\\twidth: 44px;\\n\\t\\theight: 44px;\\n\\t\\tmargin: 0 6px 0 0;\\n\\t}\\n}\\n\\n.avatar-wrapper {\\n\\tz-index: 1;\\n\\tborder-radius: 50%;\\n\\toverflow: hidden;\\n\\tbox-sizing: content-box !important;\\n}\\n\\n.session-menu {\\n\\tmax-width: 280px;\\n\\tpadding-top: 6px;\\n\\tpadding-bottom: 6px;\\n\\n\\tul li {\\n\\t\\talign-items: center;\\n\\t\\tdisplay: flex;\\n\\t\\tpadding: 6px;\\n\\n\\t\\t.avatar-wrapper {\\n\\t\\t\\theight: 32px;\\n\\t\\t\\twidth: 32px;\\n\\t\\t\\tmargin-right: 6px;\\n\\t\\t}\\n\\t}\\n}\\n\\nlabel {\\n\\tdisplay: block;\\n\\tmargin: 8px;\\n}\\n\\n.hint {\\n\\tmargin: 8px;\\n\\tcolor: var(--color-text-maxcontrast);\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Popover',{staticClass:\"session-list\",attrs:{\"placement\":\"top\"},scopedSlots:_vm._u([{key:\"default\",fn:function(){return [_c('div',{staticClass:\"session-menu\"},[_c('ul',[_vm._t(\"default\"),_vm._v(\" \"),_vm._l((_vm.participantsPopover),function(session){return _c('li',{key:session.id,style:(_vm.avatarStyle(session))},[_c('div',{staticClass:\"avatar-wrapper\",style:(_vm.sessionStyle(session))},[_c('Avatar',{attrs:{\"user\":session.userId ? session.userId : session.guestName,\"is-guest\":session.userId === null,\"disable-menu\":true,\"show-user-status\":false,\"disable-tooltip\":true,\"size\":32}})],1),_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(session.guestName ? session.guestName : session.displayName)+\"\\n\\t\\t\\t\\t\")])})],2),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.showAuthorAnnotations),expression:\"showAuthorAnnotations\"}],staticClass:\"checkbox\",attrs:{\"id\":\"toggle-color-annotations\",\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.showAuthorAnnotations)?_vm._i(_vm.showAuthorAnnotations,null)>-1:(_vm.showAuthorAnnotations)},on:{\"change\":function($event){var $$a=_vm.showAuthorAnnotations,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.showAuthorAnnotations=$$a.concat([$$v]))}else{$$i>-1&&(_vm.showAuthorAnnotations=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.showAuthorAnnotations=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"toggle-color-annotations\"}},[_vm._v(_vm._s(_vm.t('text', 'Show author colors')))]),_vm._v(\" \"),_c('p',{staticClass:\"hint\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('text', 'Author colors are only shown until everyone has closed the document.'))+\"\\n\\t\\t\\t\")])])]},proxy:true}],null,true)},[_c('button',{directives:[{name:\"tooltip\",rawName:\"v-tooltip.bottom\",value:(_vm.t('text', 'Participants')),expression:\"t('text', 'Participants')\",modifiers:{\"bottom\":true}}],staticClass:\"avatar-list\",attrs:{\"slot\":\"trigger\"},slot:\"trigger\"},[_c('div',{staticClass:\"avatardiv icon-group\"}),_vm._v(\" \"),_vm._l((_vm.sessionsVisible),function(session){return _c('div',{key:session.id,staticClass:\"avatar-wrapper\",style:(_vm.sessionStyle(session))},[_c('Avatar',{style:(_vm.avatarStyle(session)),attrs:{\"user\":session.userId ? session.userId : session.guestName,\"is-guest\":session.userId === null,\"disable-menu\":true,\"show-user-status\":false,\"disable-tooltip\":true,\"size\":44}})],1)})],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n - @copyright Copyright (c) 2019 Julius Härtl <jus@bitgrid.net>\n -\n - @author Julius Härtl <jus@bitgrid.net>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<Popover class=\"session-list\" placement=\"top\">\n\t\t<button slot=\"trigger\"\n\t\t\tv-tooltip.bottom=\"t('text', 'Participants')\"\n\t\t\tclass=\"avatar-list\">\n\t\t\t<div class=\"avatardiv icon-group\" />\n\t\t\t<div v-for=\"session in sessionsVisible\"\n\t\t\t\t:key=\"session.id\"\n\t\t\t\tclass=\"avatar-wrapper\"\n\t\t\t\t:style=\"sessionStyle(session)\">\n\t\t\t\t<Avatar :style=\"avatarStyle(session)\"\n\t\t\t\t\t:user=\"session.userId ? session.userId : session.guestName\"\n\t\t\t\t\t:is-guest=\"session.userId === null\"\n\t\t\t\t\t:disable-menu=\"true\"\n\t\t\t\t\t:show-user-status=\"false\"\n\t\t\t\t\t:disable-tooltip=\"true\"\n\t\t\t\t\t:size=\"44\" />\n\t\t\t</div>\n\t\t</button>\n\t\t<template #default>\n\t\t\t<div class=\"session-menu\">\n\t\t\t\t<ul>\n\t\t\t\t\t<slot />\n\t\t\t\t\t<li v-for=\"session in participantsPopover\"\n\t\t\t\t\t\t:key=\"session.id\"\n\t\t\t\t\t\t:style=\"avatarStyle(session)\">\n\t\t\t\t\t\t<div class=\"avatar-wrapper\"\n\t\t\t\t\t\t\t:style=\"sessionStyle(session)\">\n\t\t\t\t\t\t\t<Avatar :user=\"session.userId ? session.userId : session.guestName\"\n\t\t\t\t\t\t\t\t:is-guest=\"session.userId === null\"\n\t\t\t\t\t\t\t\t:disable-menu=\"true\"\n\t\t\t\t\t\t\t\t:show-user-status=\"false\"\n\t\t\t\t\t\t\t\t:disable-tooltip=\"true\"\n\t\t\t\t\t\t\t\t:size=\"32\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t{{ session.guestName ? session.guestName : session.displayName }}\n\t\t\t\t\t</li>\n\t\t\t\t</ul>\n\t\t\t\t<input id=\"toggle-color-annotations\"\n\t\t\t\t\tv-model=\"showAuthorAnnotations\"\n\t\t\t\t\ttype=\"checkbox\"\n\t\t\t\t\tclass=\"checkbox\">\n\t\t\t\t<label for=\"toggle-color-annotations\">{{ t('text', 'Show author colors') }}</label>\n\t\t\t\t<p class=\"hint\">\n\t\t\t\t\t{{ t('text', 'Author colors are only shown until everyone has closed the document.') }}\n\t\t\t\t</p>\n\t\t\t</div>\n\t\t</template>\n\t</Popover>\n</template>\n\n<script>\nimport Avatar from '@nextcloud/vue/dist/Components/Avatar'\nimport Popover from '@nextcloud/vue/dist/Components/Popover'\nimport Tooltip from '@nextcloud/vue/dist/Directives/Tooltip'\nimport store from '../mixins/store.js'\n\nconst COLLABORATOR_IDLE_TIME = 60\nconst COLLABORATOR_DISCONNECT_TIME = 90\n\nexport default {\n\tname: 'SessionList',\n\tcomponents: {\n\t\tAvatar,\n\t\tPopover,\n\t},\n\tdirectives: {\n\t\ttooltip: Tooltip,\n\t},\n\tmixins: [store],\n\tprops: {\n\t\tsessions: {\n\t\t\ttype: Object,\n\t\t\tdefault: () => { return {} },\n\t\t},\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tmyName: '',\n\t\t}\n\t},\n\tcomputed: {\n\t\tshowAuthorAnnotations: {\n\t\t\tget() {\n\t\t\t\treturn this.$store.state.showAuthorAnnotations\n\t\t\t},\n\t\t\tset(value) {\n\t\t\t\tthis.$store.dispatch('setShowAuthorAnnotations', value)\n\t\t\t},\n\t\t},\n\t\tparticipantsPopover() {\n\t\t\tif (this.currentSession.guestName) {\n\t\t\t\treturn this.participantsWithoutCurrent\n\t\t\t}\n\t\t\treturn this.participants\n\t\t},\n\t\tparticipantsWithoutCurrent() {\n\t\t\treturn this.participants.filter((session) => !session.isCurrent)\n\t\t},\n\t\tparticipants() {\n\t\t\treturn Object.values(this.sessions).filter((session) =>\n\t\t\t\tsession.lastContact > Date.now() / 1000 - COLLABORATOR_DISCONNECT_TIME\n\t\t\t\t\t&& (session.userId !== null || session.guestName !== null)\n\t\t\t).sort((a, b) => a.lastContact < b.lastContact)\n\t\t},\n\t\tcurrentSession() {\n\t\t\treturn Object.values(this.sessions).find((session) => session.isCurrent)\n\t\t},\n\t\tsessionStyle() {\n\t\t\treturn (session) => {\n\t\t\t\treturn {\n\t\t\t\t\t'border-color': session.color,\n\t\t\t\t\t'background-color': session.color + ' !important',\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tavatarStyle() {\n\t\t\treturn (session) => {\n\t\t\t\treturn {\n\t\t\t\t\topacity: session.lastContact > Date.now() / 1000 - COLLABORATOR_IDLE_TIME ? 1 : 0.5,\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tsessionsVisible() {\n\t\t\treturn this.participantsWithoutCurrent.slice(0, 3)\n\t\t},\n\t},\n}\n</script>\n\n<style scoped lang=\"scss\">\n\t.avatar-list {\n\t\tborder: none;\n\t\tbackground-color: var(--color-main-background);\n\t\tpadding: 0;\n\t\tmargin: 0;\n\t\tpadding-left: 6px;\n\t\tdisplay: inline-flex;\n\t\tflex-direction: row-reverse;\n\n\t\t&:focus {\n\t\t\tbackground-color: #eee;\n\t\t}\n\n\t\t.avatar-wrapper {\n\t\t\tmargin: 0 -8px 0 0;\n\t\t\theight: 44px;\n\t\t\twidth: 44px;\n\t\t}\n\n\t\t.icon-more, .icon-group, .icon-settings-dark {\n\t\t\tbackground-color: var(--color-background-dark);\n\t\t\twidth: 44px;\n\t\t\theight: 44px;\n\t\t\tmargin: 0 6px 0 0;\n\t\t}\n\t}\n\n\t.avatar-wrapper {\n\t\tz-index: 1;\n\t\tborder-radius: 50%;\n\t\toverflow: hidden;\n\t\tbox-sizing: content-box !important;\n\t}\n\n\t.session-menu {\n\t\tmax-width: 280px;\n\t\tpadding-top: 6px;\n\t\tpadding-bottom: 6px;\n\n\t\tul li {\n\t\t\talign-items: center;\n\t\t\tdisplay: flex;\n\t\t\tpadding: 6px;\n\n\t\t\t.avatar-wrapper {\n\t\t\t\theight: 32px;\n\t\t\t\twidth: 32px;\n\t\t\t\tmargin-right: 6px;\n\t\t\t}\n\t\t}\n\t}\n\n\tlabel {\n\t\tdisplay: block;\n\t\tmargin: 8px;\n\t}\n\n\t.hint {\n\t\tmargin: 8px;\n\t\tcolor: var(--color-text-maxcontrast);\n\t}\n</style>\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SessionList.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SessionList.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/sass-loader/dist/cjs.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SessionList.vue?vue&type=style&index=0&id=9dc4ac6e&scoped=true&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/sass-loader/dist/cjs.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SessionList.vue?vue&type=style&index=0&id=9dc4ac6e&scoped=true&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SessionList.vue?vue&type=template&id=9dc4ac6e&scoped=true&\"\nimport script from \"./SessionList.vue?vue&type=script&lang=js&\"\nexport * from \"./SessionList.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SessionList.vue?vue&type=style&index=0&id=9dc4ac6e&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"9dc4ac6e\",\n null\n \n)\n\nexport default component.exports"],"names":["___CSS_LOADER_EXPORT___","push","module","id","name","components","Avatar","Popover","directives","tooltip","mixins","props","sessions","type","default","data","myName","computed","showAuthorAnnotations","get","set","value","participantsPopover","participantsWithoutCurrent","participants","session","sort","currentSession","sessionStyle","avatarStyle","opacity","sessionsVisible","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","_vm","this","_h","$createElement","_c","_self","staticClass","attrs","scopedSlots","_u","key","fn","_t","_v","_l","style","userId","guestName","_s","displayName","rawName","expression","domProps","Array","isArray","_i","on","$event","$$a","$$el","target","$$c","checked","$$i","concat","slice","t","proxy","modifiers","slot"],"sourceRoot":""}
\ No newline at end of file |