summaryrefslogtreecommitdiffstats
path: root/apps/settings/js/vue-editor-collab.js.map
blob: b9a1f0ed936db518177e3ac128ee24ccb99ef9b3 (plain)
1
{"version":3,"file":"vue-editor-collab.js?v=ea46162cd01c4d879032","sources":["webpack:///./apps/text/src/components/SessionList.vue","webpack:///./apps/text/src/components/SessionList.vue?510a","webpack:///./apps/text/src/components/SessionList.vue?d839","webpack:///./apps/text/src/components/SessionList.vue?ace0","webpack:///./apps/text/src/components/SessionList.vue?df5b","webpack:///./apps/text/src/components/SessionList.vue?e7bc","webpack:///./apps/text/src/components/SessionList.vue?cb25","webpack:///./apps/text/src/components/SessionList.vue?739d"],"sourcesContent":["import { render, staticRenderFns } from \"./SessionList.vue?vue&type=template&id=32621e4e&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=32621e4e&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  \"32621e4e\",\n  null\n  \n)\n\n/* hot reload */\nif (module.hot) {\n  var api = require(\"/home/user/nextcloud/node_modules/vue-hot-reload-api/dist/index.js\")\n  api.install(require('vue'))\n  if (api.compatible) {\n    module.hot.accept()\n    if (!api.isRecorded('32621e4e')) {\n      api.createRecord('32621e4e', component.options)\n    } else {\n      api.reload('32621e4e', component.options)\n    }\n    module.hot.accept(\"./SessionList.vue?vue&type=template&id=32621e4e&scoped=true&\", function () {\n      api.rerender('32621e4e', {\n        render: render,\n        staticRenderFns: staticRenderFns\n      })\n    })\n  }\n}\ncomponent.options.__file = \"apps/text/src/components/SessionList.vue\"\nexport default component.exports","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&\"","import mod from \"-!../../../../node_modules/vue-style-loader/index.js!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SessionList.vue?vue&type=style&index=0&id=32621e4e&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/vue-style-loader/index.js!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SessionList.vue?vue&type=style&index=0&id=32621e4e&scoped=true&lang=scss&\"","export * from \"-!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SessionList.vue?vue&type=template&id=32621e4e&scoped=true&\"","function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\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(n); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\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//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport Avatar from '@nextcloud/vue/dist/Components/Avatar';\nimport PopoverMenu from '@nextcloud/vue/dist/Components/PopoverMenu';\nimport Tooltip from '@nextcloud/vue/dist/Directives/Tooltip';\nvar COLLABORATOR_IDLE_TIME = 10;\nvar COLLABORATOR_DISCONNECT_TIME = 30;\nexport default {\n  name: 'SessionList',\n  components: {\n    Avatar: Avatar,\n    PopoverMenu: PopoverMenu\n  },\n  directives: {\n    tooltip: Tooltip\n  },\n  props: {\n    sessions: {\n      type: Object,\n      default: function _default() {\n        return {};\n      }\n    }\n  },\n  data: function data() {\n    return {\n      popoverVisible: '',\n      myName: ''\n    };\n  },\n  computed: {\n    editorsTooltip: function editorsTooltip() {\n      if (this.sessionsPopover.length > 0) {\n        var first = this.activeSessions.slice(0, 3).map(function (session) {\n          return session.guestName ? session.guestName : session.displayName;\n        }).join(', ');\n        var others = this.activeSessions.slice(3).length;\n        return first + ' ' + n('text', 'and %n other editor', 'and %n other editors', others);\n      }\n\n      return this.activeSessions.slice(0, 3).map(function (session) {\n        return session.guestName ? session.guestName : session.displayName;\n      }).join(', ');\n    },\n    avatarUrl: function avatarUrl() {\n      return function (session) {\n        var user = !session.guestName ? session.userId : session.guestName;\n        var size = 32;\n        var guest = !!session.guestName;\n        var avatarUrl = OC.generateUrl(guest ? '/avatar/guest/{user}/{size}' : '/avatar/{user}/{size}', {\n          user: user,\n          size: size\n        });\n        return window.location.protocol + '//' + window.location.host + avatarUrl;\n      };\n    },\n    activeSessions: function activeSessions() {\n      return Object.values(this.sessions).filter(function (session) {\n        return session.lastContact > Date.now() / 1000 - COLLABORATOR_DISCONNECT_TIME && !session.isCurrent && (session.userId !== null || session.guestName !== null);\n      });\n    },\n    currentSession: function currentSession() {\n      return Object.values(this.sessions).find(function (session) {\n        return session.isCurrent;\n      });\n    },\n    sessionStyle: function sessionStyle() {\n      return function (session) {\n        return {\n          'opacity': session.lastContact > Date.now() / 1000 - COLLABORATOR_IDLE_TIME ? 1 : 0.5 // 'border-color': session.color\n\n        };\n      };\n    },\n    sessionsVisible: function sessionsVisible() {\n      return this.activeSessions.slice(0, 3);\n    },\n    sessionsPopover: function sessionsPopover() {\n      var _this = this;\n\n      return _toConsumableArray(this.activeSessions.slice(3).map(function (session) {\n        return {\n          href: '#',\n          icon: _this.avatarUrl(session),\n          text: session.guestName ? session.guestName : session.displayName\n        };\n      }));\n    }\n  },\n  methods: {}\n};","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\");\nexports = ___CSS_LOADER_API_IMPORT___(false);\n// Module\nexports.push([module.id, \".session-list[data-v-32621e4e] {\\n  position: relative;\\n}\\n.session-list[data-v-32621e4e] .popovermenu {\\n    margin-right: -4px;\\n}\\n.session-list[data-v-32621e4e] .popovermenu img {\\n      padding: 0;\\n      width: 32px !important;\\n      height: 32px !important;\\n      margin: 6px;\\n      border-radius: 50%;\\n}\\n.avatar-list[data-v-32621e4e] {\\n  display: inline-flex;\\n  flex-direction: row-reverse;\\n}\\n.avatar-list .avatardiv[data-v-32621e4e],\\n  .avatar-list[data-v-32621e4e] .avatardiv {\\n    width: 36px;\\n    height: 36px;\\n    margin-right: -8px;\\n    border: 2px solid var(--color-main-background);\\n    background-color: var(--color-main-background) !important;\\n    box-sizing: content-box !important;\\n}\\n.avatar-list .avatardiv.icon-more[data-v-32621e4e],\\n    .avatar-list[data-v-32621e4e] .avatardiv.icon-more {\\n      width: 32px;\\n      height: 32px;\\n      opacity: .5;\\n      background-color: var(--color-background-dark) !important;\\n      cursor: pointer;\\n}\\n.popovermenu[data-v-32621e4e] {\\n  display: block;\\n}\\n\", \"\"]);\n// Exports\nmodule.exports = exports;\n","var render = function() {\n  var _vm = this\n  var _h = _vm.$createElement\n  var _c = _vm._self._c || _h\n  return _c(\"div\", { staticClass: \"session-list\" }, [\n    _c(\n      \"div\",\n      {\n        directives: [\n          {\n            name: \"tooltip\",\n            rawName: \"v-tooltip.bottom\",\n            value: _vm.editorsTooltip,\n            expression: \"editorsTooltip\",\n            modifiers: { bottom: true }\n          }\n        ],\n        staticClass: \"avatar-list\",\n        on: {\n          click: function($event) {\n            _vm.popoverVisible = !_vm.popoverVisible\n          }\n        }\n      },\n      [\n        _vm.sessionsPopover.length > 0\n          ? _c(\"div\", { staticClass: \"avatardiv icon-more\" })\n          : _vm._e(),\n        _vm._v(\" \"),\n        _vm._l(_vm.sessionsVisible, function(session) {\n          return _c(\"Avatar\", {\n            key: session.id,\n            style: _vm.sessionStyle(session),\n            attrs: {\n              user: session.userId ? session.userId : session.guestName,\n              \"is-guest\": session.userId === null,\n              \"disable-tooltip\": true,\n              size: 32\n            }\n          })\n        })\n      ],\n      2\n    ),\n    _vm._v(\" \"),\n    _c(\n      \"div\",\n      {\n        directives: [\n          {\n            name: \"show\",\n            rawName: \"v-show\",\n            value: _vm.popoverVisible,\n            expression: \"popoverVisible\"\n          }\n        ],\n        staticClass: \"popovermenu menu-right\"\n      },\n      [\n        _c(\"PopoverMenu\", { attrs: { menu: _vm.sessionsPopover } }),\n        _vm._v(\" \"),\n        _vm._t(\"default\")\n      ],\n      2\n    )\n  ])\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SessionList.vue?vue&type=style&index=0&id=32621e4e&scoped=true&lang=scss&\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"ddf5505e\", content, false, {});\n// Hot Module Replacement\nif(module.hot) {\n // When the styles change, update the <style> tags\n if(!content.locals) {\n   module.hot.accept(\"!!../../../../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=32621e4e&scoped=true&lang=scss&\", function() {\n     var newContent = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SessionList.vue?vue&type=style&index=0&id=32621e4e&scoped=true&lang=scss&\");\n     if(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n     update(newContent);\n   });\n }\n // When the module is disposed, remove the <style> tags\n module.hot.dispose(function() { update(); });\n}"],"mappings":";;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAiBA;AACA;AACA;;;;;;;;;;;;ACvCA;AAAA;AAAA;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;AAAA;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC7IA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;ACNA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACrEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;A","sourceRoot":""}