{"version":3,"sources":["webpack:///./src/views/groups/components/users/GroupUsersCard.vue?beaf","webpack:///./src/views/groups/components/users/GroupUsersCard.vue","webpack:///./src/views/groups/components/users/GroupUsersCard.vue?b6a4","webpack:///./src/views/groups/components/users/GroupUsersCard.vue?05b4","webpack:///./src/views/groups/components/users/GroupUsersList.vue?992a","webpack:///./src/views/groups/components/users/GroupUsersList.vue","webpack:///./src/views/groups/components/users/GroupUsersList.vue?56de","webpack:///./src/views/groups/components/users/GroupUsersList.vue?3dc5"],"names":["render","_vm","this","_h","$createElement","_c","_self","VCard","attrs","VSubheader","staticClass","_v","_s","$t","searching","VTextField","on","filterResults","VSpacer","VBtn","toggleSearch","VIcon","filteredUsers","length","groupId","isManager","term","filterTerm","staticRenderFns","GroupUsersCard","allUsers","filter","u","Email","includes","IsOwner","find","newTerm","Vue","__decorate","Prop","default","Component","components","GroupUsersList","component","VList","VListItem","VListItemAvatar","owner","Username","_e","_l","user","i","VListGroup","key","scopedSlots","_u","fn","_f","JoinedAt","proxy","$event","toggleRemoveUser","VListItemIcon","removeUserLoading","removedUserEmail","VProgressCircular","changeUserRoleLoading","changeUserRole","IsManager","editedUserEmail","VDialog","model","value","callback","$$v","removeUserDialog","expression","confirmRemoveMessage","stopPropagation","removeUser","userToRemove","data","userEmail","isCurrentUser","currentUserEmail","changeUserRoleAction","removeUserAction","Getter","Action"],"mappings":"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","file":"assets/js/chunk-622a072c.6d1684c7.js","sourcesContent":["import { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VSubheader } from 'vuetify/lib/components/VSubheader';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\n\nvar render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c(VCard,{attrs:{\"elevation\":\"0\"}},[_c(VSubheader,[_c('span',{staticClass:\"mr-6\"},[_vm._v(_vm._s(_vm.$t(\"groups.users\")))]),(!_vm.searching)?_c(VSpacer):_c(VTextField,{on:{\"input\":_vm.filterResults}}),_c(VBtn,{attrs:{\"icon\":\"\",\"right\":\"\"},on:{\"click\":_vm.toggleSearch}},[_c(VIcon,[_vm._v(_vm._s(_vm.searching ? \"mdi-close\" : \"mdi-magnify\"))])],1)],1),(_vm.filteredUsers.length > 0)?_c('GroupUsersList',{attrs:{\"group-id\":_vm.groupId,\"is-manager\":_vm.isManager,\"filtered-users\":_vm.filteredUsers}}):_c('div',{staticClass:\"d-flex align-center justify-center pa-4\"},[_c(VSubheader,[_c('span',[_vm._v(_vm._s(_vm.$t(\"groups.nousers\", { term: _vm.filterTerm })))])])],1)],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\r\nimport Vue from \"vue\";\r\nimport { GroupUser } from \"@/core/models\";\r\nimport GroupUsersList from \"./GroupUsersList.vue\";\r\nimport { Component, Prop } from \"vue-property-decorator\";\r\n\r\n@Component({ components: { GroupUsersList } })\r\nexport default class GroupUsersCard extends Vue {\r\n @Prop({ default: () => -1 }) groupId!: number;\r\n @Prop({ default: () => false }) isManager!: boolean;\r\n @Prop({ default: () => [] as GroupUser[] }) allUsers!: GroupUser[];\r\n\r\n filterTerm = \"\";\r\n searching = false;\r\n\r\n // Helpers\r\n get filteredUsers() {\r\n return this.allUsers.filter(u => u.Email.includes(this.filterTerm));\r\n }\r\n get users() {\r\n return this.filteredUsers.filter(u => !u.IsOwner);\r\n }\r\n get owner() {\r\n return this.allUsers.find(u => u.IsOwner == true)!;\r\n }\r\n\r\n // User search\r\n toggleSearch() {\r\n if (this.searching) {\r\n this.searching = false;\r\n this.filterTerm = \"\";\r\n } else this.searching = true;\r\n }\r\n filterResults(newTerm: string) {\r\n this.filterTerm = newTerm;\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!./GroupUsersCard.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!./GroupUsersCard.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GroupUsersCard.vue?vue&type=template&id=04000458&\"\nimport script from \"./GroupUsersCard.vue?vue&type=script&lang=ts&\"\nexport * from \"./GroupUsersCard.vue?vue&type=script&lang=ts&\"\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","import { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VList } from 'vuetify/lib/components/VList';\nimport { VListGroup } from 'vuetify/lib/components/VList';\nimport { VListItem } from 'vuetify/lib/components/VList';\nimport { VListItemAvatar } from 'vuetify/lib/components/VList';\nimport { VListItemContent } from 'vuetify/lib/components/VList';\nimport { VListItemIcon } from 'vuetify/lib/components/VList';\nimport { VListItemSubtitle } from 'vuetify/lib/components/VList';\nimport { VListItemTitle } from 'vuetify/lib/components/VList';\nimport { VProgressCircular } from 'vuetify/lib/components/VProgressCircular';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\n\nvar render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c(VList,{attrs:{\"shaped\":\"\"}},[(_vm.owner)?_c(VListItem,{attrs:{\"two-line\":\"\"}},[_c(VListItemAvatar,[_c(VIcon,[_vm._v(\"mdi-shield-account\")])],1),_c(VListItemContent,[_c(VListItemTitle,[_vm._v(_vm._s(_vm.owner.Username))]),_c(VListItemSubtitle,[_c('span',[_vm._v(_vm._s(_vm.$t(\"groups.creator\")))])])],1)],1):_vm._e(),(!_vm.isManager)?_c('div',_vm._l((_vm.otherUsers),function(user,i){return _c(VListItem,{key:i},[_c(VListItemAvatar,[(user.IsManager)?_c(VIcon,[_vm._v(\"mdi-shield-account\")]):_c(VIcon,[_vm._v(\"mdi-account-circle\")])],1),_c(VListItemContent,[_c(VListItemTitle,[_vm._v(_vm._s(user.Username))]),_c(VListItemSubtitle,[_vm._v(\" \"+_vm._s(_vm.$t(\"groups.joined\"))+\" \"+_vm._s(_vm._f(\"format\")(user.JoinedAt))+\" \")])],1)],1)}),1):_c('div',_vm._l((_vm.otherUsers),function(user,i){return _c(VListGroup,{key:i,attrs:{\"no-action\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(){return [_c(VListItemAvatar,[(user.IsManager)?_c(VIcon,[_vm._v(\"mdi-shield-account\")]):_c(VIcon,[_vm._v(\"mdi-account-circle\")])],1),_c(VListItemContent,[_c(VListItemTitle,[_vm._v(_vm._s(user.Username))]),_c(VListItemSubtitle,[_vm._v(\" \"+_vm._s(_vm.$t(\"groups.joined\"))+\" \"+_vm._s(_vm._f(\"format\")(user.JoinedAt))+\" \")])],1)]},proxy:true}],null,true)},[_c(VListItem,{attrs:{\"link\":\"\"},on:{\"click\":function($event){return _vm.toggleRemoveUser(user)}}},[_c(VListItemTitle,[_vm._v(_vm._s(_vm.$t(\"groups.removeu\")))]),_c(VListItemIcon,[(_vm.removeUserLoading && _vm.removedUserEmail == user.Email)?_c(VProgressCircular,{attrs:{\"size\":\"16\",\"indeterminate\":\"\"}}):_c(VIcon,[_vm._v(\"mdi-account-remove\")])],1)],1),_c(VListItem,{attrs:{\"link\":\"\",\"disabled\":_vm.changeUserRoleLoading},on:{\"click\":function($event){return _vm.changeUserRole(user)}}},[_c(VListItemTitle,[_vm._v(\" \"+_vm._s(user.IsManager ? _vm.$t(\"groups.remman\") : _vm.$t(\"groups.makeman\"))+\" \")]),_c(VListItemIcon,[(_vm.changeUserRoleLoading && _vm.editedUserEmail == user.Email)?_c(VProgressCircular,{attrs:{\"size\":\"16\",\"indeterminate\":\"\"}}):_c(VIcon,[_vm._v(\" \"+_vm._s(user.IsManager ? \"mdi-close-circle\" : \"mdi-check-circle\")+\" \")])],1)],1)],1)}),1)],1),_c(VDialog,{attrs:{\"max-width\":\"300px\",\"persistent\":\"\"},model:{value:(_vm.removeUserDialog),callback:function ($$v) {_vm.removeUserDialog=$$v},expression:\"removeUserDialog\"}},[_c(VCard,[_c(VCardTitle,[_vm._v(_vm._s(_vm.$t(\"groups.removeu\")))]),_c(VCardText,[_c('span',[_vm._v(_vm._s(_vm.confirmRemoveMessage))])]),_c(VCardActions,[_c(VSpacer),_c(VBtn,{attrs:{\"text\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.removeUser($event)}}},[_c('span',[_vm._v(_vm._s(_vm.$t(\"global.confirm\")))])]),_c(VBtn,{attrs:{\"text\":\"\",\"color\":\"accent darken-1\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.toggleRemoveUser($event)}}},[_c('span',[_vm._v(_vm._s(_vm.$t(\"global.cancel\")))])])],1)],1)],1)],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\n\n\n\n\n\n\r\nimport Vue from \"vue\";\r\nimport { Action, Getter } from \"vuex-class\";\r\nimport { Component, Prop } from \"vue-property-decorator\";\r\n\r\nimport { GroupUser } from \"@/core/models\";\r\n\r\n@Component\r\nexport default class GroupUsersList extends Vue {\r\n @Prop({ default: () => -1 }) groupId!: number;\r\n @Prop({ default: () => false }) isManager!: boolean;\r\n @Prop({ default: () => [] as GroupUser[] }) filteredUsers!: GroupUser[];\r\n\r\n // Getters\r\n @Getter(\"profile/getUserEmail\") currentUserEmail!: string;\r\n @Getter(\"groups/removeUserLoading\") removeUserLoading!: boolean;\r\n @Getter(\"groups/removedUserEmail\") removedUserEmail!: boolean;\r\n @Getter(\"groups/editedUserEmail\") editedUserEmail!: boolean;\r\n @Getter(\"groups/changeUserRoleLoading\") changeUserRoleLoading!: boolean;\r\n\r\n // Actions\r\n @Action(\"groups/changeUserRole\") changeUserRoleAction!: Function;\r\n @Action(\"groups/removeUser\") removeUserAction!: Function;\r\n\r\n removeUserDialog = false;\r\n userToRemove = {} as GroupUser;\r\n\r\n get otherUsers() {\r\n return this.filteredUsers.filter(u => !u.IsOwner);\r\n }\r\n get owner() {\r\n return this.filteredUsers.find(u => u.IsOwner == true)!;\r\n }\r\n\r\n // change user role\r\n changeUserRole(user: GroupUser) {\r\n if (this.changeUserRoleLoading) return;\r\n let data = {\r\n groupId: this.groupId,\r\n userEmail: user.Email,\r\n isManager: !user.IsManager,\r\n isCurrentUser: this.currentUserEmail == user.Email,\r\n };\r\n this.changeUserRoleAction(data);\r\n }\r\n\r\n // Remove user\r\n get confirmRemoveMessage() {\r\n const user = this.userToRemove;\r\n return this.$t(\"groups.confrem\", {\r\n u:\r\n user.Email == this.currentUserEmail\r\n ? this.$t(\"groups.remself\")\r\n : user.Username,\r\n });\r\n }\r\n toggleRemoveUser(user: GroupUser = {} as GroupUser) {\r\n this.removeUserDialog = !this.removeUserDialog;\r\n this.userToRemove = user;\r\n }\r\n removeUser() {\r\n if (this.removeUserLoading) return;\r\n let data = {\r\n groupId: this.groupId,\r\n userEmail: this.userToRemove.Email,\r\n isCurrentUser: this.currentUserEmail == this.userToRemove.Email,\r\n };\r\n this.removeUserAction(data);\r\n this.toggleRemoveUser();\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!./GroupUsersList.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!./GroupUsersList.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GroupUsersList.vue?vue&type=template&id=09055e9c&\"\nimport script from \"./GroupUsersList.vue?vue&type=script&lang=ts&\"\nexport * from \"./GroupUsersList.vue?vue&type=script&lang=ts&\"\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":""}