{"version":3,"sources":["webpack:///./src/views/admin/components/UserItem.vue?9980","webpack:///./src/views/admin/components/UserItem.vue?4566","webpack:///./src/views/admin/components/UserItem.vue","webpack:///./src/views/admin/components/UserItem.vue?8556","webpack:///./src/views/admin/components/UserItem.vue?ee82"],"names":["render","_vm","this","_h","$createElement","_c","_self","VListItem","VOverlay","staticClass","attrs","loading","VProgressCircular","VListItemAvatar","VIcon","_v","_s","userIcon","VList","user","email","username","staticStyle","_l","role","index","VBadge","key","name","$t","toLowerCase","activeUntil","canManage","emailVerified","VListItemAction","VTooltip","scopedSlots","_u","fn","ref","on","VBtn","_g","$event","$emit","_e","isMe","isActive","isLast","VDivider","staticRenderFns","UserItem","roles","sort","a","b","localeCompare","some","r","Role","Admin","date","DateTime","fromJSDate","Date","locale","$i18n","toLocaleString","DATETIME_MED","currentUserEmail","isAdmin","getUserHasPrivileges","Vue","__decorate","Prop","default","Getter","Component","component"],"mappings":"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","file":"assets/js/chunk-0d177668.970c99fa.js","sourcesContent":["export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserItem.vue?vue&type=style&index=0&id=22d4ec54&prod&lang=css&\"","import { VBadge } from 'vuetify/lib/components/VBadge';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VListItem } from 'vuetify/lib/components/VList';\nimport { VListItemAction } from 'vuetify/lib/components/VList';\nimport { VListItemAvatar } from 'vuetify/lib/components/VList';\nimport { VListItemContent } from 'vuetify/lib/components/VList';\nimport { VListItemSubtitle } from 'vuetify/lib/components/VList';\nimport { VListItemTitle } from 'vuetify/lib/components/VList';\nimport { VOverlay } from 'vuetify/lib/components/VOverlay';\nimport { VProgressCircular } from 'vuetify/lib/components/VProgressCircular';\nimport { VTooltip } from 'vuetify/lib/components/VTooltip';\n\nvar render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c(VListItem,[_c(VOverlay,{staticClass:\"d-flex align-center justify-center\",attrs:{\"absolute\":\"\",\"value\":_vm.loading}},[_c(VProgressCircular,{attrs:{\"indeterminate\":\"\",\"size\":\"32\"}})],1),_c(VListItemAvatar,{staticClass:\"mr-4\"},[_c(VIcon,[_vm._v(_vm._s(_vm.userIcon))])],1),_c(VListItemContent,[_c(VListItemTitle,[_c('b',[_vm._v(_vm._s(_vm.user.email))]),_vm._v(\" (\"+_vm._s(_vm.user.username)+\") \")]),_c(VListItemSubtitle,{staticClass:\"mt-1\",staticStyle:{\"margin-left\":\"-1px\"}},[_vm._l((_vm.userRoles),function(role,index){return _c(VBadge,{key:index,staticClass:\"role-badge\",attrs:{\"content\":role.name,\"inline\":\"\",\"color\":role.name === 'admin' ? 'secondary' : 'primary'}})}),(_vm.user.isActive)?_c(VBadge,{staticClass:\"role-badge light-badge\",attrs:{\"content\":((_vm.$t('activeUser.active').toLowerCase()) + \" \" + _vm.activeUntil),\"inline\":\"\",\"color\":\"lightgray2\"}}):_c(VBadge,{staticClass:\"role-badge\",attrs:{\"content\":_vm.$t('activeUser.inactive').toLowerCase(),\"inline\":\"\",\"color\":\"grey\"}})],2)],1),(_vm.canManage && !_vm.user.emailVerified)?_c(VListItemAction,[_c(VTooltip,{attrs:{\"top\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nreturn [_c(VBtn,_vm._g({attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.$emit('verifyEmail')}}},on),[_c(VIcon,[_vm._v(\"mdi-email-check\")])],1)]}}],null,false,60856841)},[_c('span',[_vm._v(_vm._s(_vm.$t(\"admin.verifyEmail\")))])])],1):_vm._e(),_c('div',{staticClass:\"mx-1\"}),(_vm.canManage || _vm.isMe)?_c(VListItemAction,[_c(VTooltip,{attrs:{\"top\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nreturn [_c(VBtn,_vm._g({attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.$emit('permissions')}}},on),[_c(VIcon,[_vm._v(\"mdi-account-details\")])],1)]}}],null,false,4254479107)},[_c('span',[_vm._v(_vm._s(_vm.$t(\"permissions.editTitle\")))])])],1):_vm._e(),_c('div',{staticClass:\"mx-1\"}),(_vm.canManage || _vm.isMe)?_c(VListItemAction,[_c(VTooltip,{attrs:{\"top\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nreturn [_c(VBtn,_vm._g({attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.$emit('changeRole')}}},on),[_c(VIcon,[_vm._v(\"mdi-account-convert\")])],1)]}}],null,false,148184412)},[_c('span',[_vm._v(_vm._s(_vm.$t(\"roles.editTitle\")))])])],1):_vm._e(),(_vm.canManage || _vm.isMe)?_c(VListItemAction,[_c(VTooltip,{attrs:{\"top\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nreturn [_c(VBtn,_vm._g({attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.$emit('toggleActive')}}},on),[_c(VIcon,[_vm._v(_vm._s(_vm.user.isActive ? \"mdi-account-cancel\" : \"mdi-account-check\"))])],1)]}}],null,false,3041431815)},[_c('span',[_vm._v(_vm._s(_vm.user.isActive ? _vm.$t(\"activeUser.deactivate\") : _vm.$t(\"activeUser.activate\")))])])],1):_vm._e()],1),(!_vm.isLast)?_c(VDivider,{staticClass:\"my-1\"}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from \"vue\";\r\nimport { DateTime } from \"luxon\";\r\nimport { Getter } from \"vuex-class\";\r\nimport { Component, Prop } from \"vue-property-decorator\";\r\n\r\nimport { Role, AdminUser } from \"@/core/models\";\r\n\r\n@Component\r\nexport default class UserItem extends Vue {\r\n @Prop({ default: () => {} }) user!: AdminUser;\r\n @Prop({ default: () => false }) loading!: boolean;\r\n @Prop({ default: () => false }) isLast!: boolean;\r\n @Getter(\"profile/getUserEmail\") currentUserEmail!: string;\r\n @Getter(\"profile/isAdmin\") isAdmin!: boolean;\r\n @Getter(\"profile/getUserHasPrivileges\") getUserHasPrivileges!: boolean;\r\n\r\n get userRoles() {\r\n return this.user.roles?.sort((a: any, b: any) =>\r\n b.name.localeCompare(a.name),\r\n );\r\n }\r\n\r\n get userIcon() {\r\n if (this.user.roles?.some(r => r.name === Role.Admin))\r\n return \"mdi-shield-account\";\r\n else return \"mdi-account\";\r\n }\r\n\r\n get activeUntil() {\r\n if (!this.user.activeUntil) return \"\";\r\n const date = DateTime.fromJSDate(new Date(this.user.activeUntil), {\r\n locale: this.$i18n.locale,\r\n // @ts-ignore\r\n }).toLocaleString(DateTime.DATETIME_MED);\r\n return ` ${this.$t(\"activeUser.until\")} ${date} UTC`;\r\n }\r\n\r\n get canManage() {\r\n if (this.user.email === this.currentUserEmail) return false;\r\n return this.isAdmin || this.getUserHasPrivileges;\r\n }\r\n\r\n get isMe() {\r\n return this.user.email === this.currentUserEmail;\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserItem.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserItem.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./UserItem.vue?vue&type=template&id=22d4ec54&\"\nimport script from \"./UserItem.vue?vue&type=script&lang=ts&\"\nexport * from \"./UserItem.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./UserItem.vue?vue&type=style&index=0&id=22d4ec54&prod&lang=css&\"\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 null,\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}