(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["manage-users"],{"42e3":function(e,n,t){"use strict";t("9bde")},"63c9":function(e,n){var t={kind:"Document",definitions:[{kind:"OperationDefinition",operation:"mutation",name:{kind:"Name",value:"AddUser"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"input"}},type:{kind:"NamedType",name:{kind:"Name",value:"UserAddInput"}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"addUser"},arguments:[{kind:"Argument",name:{kind:"Name",value:"input"},value:{kind:"Variable",name:{kind:"Name",value:"input"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"email"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"username"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"role"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"name"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"createdAt"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"updatedAt"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"client"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"name"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"permissions"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"group"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"key"},arguments:[],directives:[]}]}}]}}]}}],loc:{start:0,end:254}};t.loc.source={body:"mutation AddUser($input: UserAddInput) {\n addUser(input: $input) {\n id\n email\n username\n role {\n id\n name\n }\n createdAt\n updatedAt\n client {\n id\n name\n }\n permissions {\n group\n key\n }\n }\n}\n",name:"GraphQL request",locationOffset:{line:1,column:1}};function i(e,n){if("FragmentSpread"===e.kind)n.add(e.name.value);else if("VariableDefinition"===e.kind){var t=e.type;"NamedType"===t.kind&&n.add(t.name.value)}e.selectionSet&&e.selectionSet.selections.forEach((function(e){i(e,n)})),e.variableDefinitions&&e.variableDefinitions.forEach((function(e){i(e,n)})),e.definitions&&e.definitions.forEach((function(e){i(e,n)}))}var a={};function r(e,n){for(var t=0;t0){var d=o;o=new Set,d.forEach((function(e){if(!s.has(e)){s.add(e);var n=a[e]||new Set;n.forEach((function(e){o.add(e)}))}}))}return s.forEach((function(n){var i=r(e,n);i&&t.definitions.push(i)})),t}(function(){t.definitions.forEach((function(e){if(e.name){var n=new Set;i(e,n),a[e.name.value]=n}}))})(),e.exports=t,e.exports["AddUser"]=s(t,"AddUser")},"8b71":function(e,n,t){"use strict";t("cc36")},"8b8c":function(e,n,t){"use strict";t.r(n);var i=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("div",{staticClass:"manage-users"},[t("v-row",{staticClass:"mb-6"},[t("v-col",[t("h1",[e._v("Manage Users")])]),t("v-col",{attrs:{cols:"auto"}},[t("modal",{attrs:{title:"Add User","max-width":e.showPermissionsSection?780:480},scopedSlots:e._u([{key:"activator",fn:function(n){var i=n.on,a=n.attrs;return[t("btn",e._g(e._b({directives:[{name:"show",rawName:"v-show",value:e.showAddUserBtn,expression:"showAddUserBtn"}],attrs:{width:"180"}},"btn",a,!1),i),[e._v("Add User")])]}},{key:"default",fn:function(e){var n=e.close;return[t("add-user",{on:{done:n}})]}}])})],1)],1),t("v-row",[t("manage-users")],1)],1)},a=[],r=t("e78c"),s=t.n(r),o=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("ApolloQuery",{staticClass:"manage-users-container",attrs:{query:e.USERS_QUERY},scopedSlots:e._u([{key:"default",fn:function(e){var n=e.result,i=n.loading,a=n.error,r=n.data;return[t("alert",{attrs:{error:a}}),t("user-list",{attrs:{users:r&&r.users||[],loading:i}})]}}])})},d=[],l=t("96f1"),u=t("b608"),c=t.n(u),m=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("div",[t("data-table",{attrs:{items:e.displayedItems,headers:e.displayedHeaders,height:"611px","item-key":"id",loading:e.loading},scopedSlots:e._u([{key:"item.actions",fn:function(n){var i=n.item;return[t("div",{staticClass:"table-actions-bar"},[t("modal",{attrs:{title:"Edit User","max-width":e.showPermissionsSection?780:480},scopedSlots:e._u([{key:"activator",fn:function(n){var i=n.on,a=n.attrs;return[e.showEditBtn?t("v-icon",e._g(e._b({staticClass:"action edit mr-2",attrs:{small:""}},"v-icon",a,!1),i),[e._v("far fa-edit")]):e._e()]}},{key:"default",fn:function(e){var n=e.close;return[t("edit-user",{attrs:{data:i},on:{done:n}})]}}],null,!0)}),e.showDeleteBtn?t("confirmation-modal",{attrs:{mutation:e.DELETE_USER_MUTATION,variables:{id:i.id},title:"Delete User",message:"Are you sure you want to delete User?","ok-btn":{label:"Delete"},update:e.onDeleteUser(i)},scopedSlots:e._u([{key:"default",fn:function(n){var i=n.on,a=n.attrs;return[t("v-icon",e._g(e._b({staticClass:"action",attrs:{small:""}},"v-icon",{attrs:a},!1),i),[e._v(" far fa-trash-alt ")])]}}],null,!0)}):e._e()],1)]}}])})],1)},f=[],v=t("5530"),p=(t("d81d"),t("7db0"),t("b0c0"),t("4de4"),t("a9b0")),h=t("9772"),k=t("f053"),y=t.n(k),U=t("d739"),S=t("1182"),b=t("063a"),E=t.n(b),w=t("1a80"),g=t("24b2"),_=t("4169"),N=t("d42c"),D={name:"UserList",components:{Btn:l["a"],DataTable:p["a"],ConfirmationModal:U["a"],Modal:_["a"],EditUser:N["a"]},props:{users:{type:Array,default:[]},loading:{type:Boolean}},apollo:{currentUser:{query:s.a,fetchPolicy:"cache-only"},rolesWithPermissions:{query:E.a,fetchPolicy:"cache-first"}},data:function(){return{DELETE_USER_MUTATION:y.a,rolesWithPermissions:null,currentUser:null,email:"",valid:!0,headers:[{text:"User Name",value:"username",type:"text",dataType:"string",width:"100px"},{text:"Client",value:"clientName",type:"select",dataType:"string",width:"100px"},{text:"Email",value:"email",type:"text",dataType:"string",width:"200px"},{text:"Role",value:"displayedRole",type:"select",dataType:"string",width:"100px"},{text:"Flag",value:"flag",type:"select",dataType:"string",width:"100px"},{text:"Actions",value:"actions",sortable:!1,width:"53px",fixed:!0,permissions:[g["c"].EDIT_USER,g["c"].DELETE_USER]}]}},computed:{displayedItems:function(){var e=this;return this.users&&this.rolesWithPermissions?this.users.map((function(n){var t=e.rolesWithPermissions.find((function(e){return e.name===n.role.name}));return Object(v["a"])(Object(v["a"])({},n),{},{displayedRole:Object(h["a"])(n.role.name),clientName:n.client&&n.client.name||"",flag:t&&(t.permissions.length!==n.permissions.length||n.permissions.some((function(e){return!t.permissions.some((function(n){return e.key===n.key}))})))?"Custom":"Default"})})):[]},displayedHeaders:function(){var e=this;return this.headers.filter((function(n){return!n.permissions||n.permissions.some((function(n){return Object(w["a"])(n,e.currentUser)}))}))},showEditBtn:function(){return Object(w["a"])(g["c"].EDIT_USER,this.currentUser)},showDeleteBtn:function(){return Object(w["a"])(g["c"].DELETE_USER,this.currentUser)},showPermissionsSection:function(){return Object(w["a"])(g["c"].CHANGE_USER_PERMISSIONS,this.currentUser)}},methods:{onDeleteUser:function(e){return function(n,t){var i=t.data.deleteUser;if(i){var a=n.readQuery({query:c.a});a.users=a.users.filter((function(n){return n.id!==e.id})),n.writeQuery({query:c.a,data:a}),S["a"].$emit("show-snackbar",{color:"success",text:"User was deleted from the system successfully!"})}}}}},A=D,x=t("2877"),O=t("6544"),T=t.n(O),R=t("132d"),F=Object(x["a"])(A,m,f,!1,null,null,null),I=F.exports;T()(F,{VIcon:R["a"]});var P={name:"ManageUsers",components:{Btn:l["a"],UserList:I},data:function(){return{USERS_QUERY:c.a}}},j=P,C=(t("42e3"),Object(x["a"])(j,o,d,!1,null,null,null)),M=C.exports,$=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("ApolloMutation",e._g({staticClass:"add-user-form",attrs:{mutation:e.ADD_USER_MUTATION,variables:{input:{clientId:e.user.client||void 0,username:e.user.username,email:e.user.email,roleId:e.user.role?e.user.role.id:void 0,permissions:e.user.permissions||void 0}},update:e.updateUsers},scopedSlots:e._u([{key:"default",fn:function(n){var i=n.mutate,a=n.loading,r=n.error;return[a?e._e():t("alert",{attrs:{align:"center",error:r}}),t("user-form",e._b({on:{submit:function(e){return i()}}},"user-form",{btnLabel:"Add",loading:a,user:e.user},!1))]}}])},e.$listeners))},B=[],V=t("6a5d"),q=t("63c9"),L=t.n(q),Q={name:"AddUser",components:{UserForm:V["a"]},data:function(){return{ADD_USER_MUTATION:L.a,user:{username:null,email:null,role:null,client:null,permissions:null}}},methods:{updateUsers:function(e,n){var t=n.data.addUser;if(t){var i=e.readQuery({query:c.a});i.users.unshift(t),e.writeQuery({query:c.a,data:i}),S["a"].$emit("show-snackbar",{color:"success",text:"User ".concat(this.user.username," was added into the system successfully!")})}else S["a"].$emit("show-snackbar",{color:"error",text:"Error! Something went wrong... Please try later!"})}}},G=Q,H=(t("8b71"),Object(x["a"])(G,$,B,!1,null,null,null)),W=H.exports,z={components:{AddUser:W,Modal:_["a"],ManageUsers:M,Btn:l["a"]},apollo:{currentUser:{query:s.a,fetchPolicy:"cache-only"}},data:function(){return{currentUser:null}},computed:{showAddUserBtn:function(){return Object(w["a"])(g["c"].ADD_USER,this.currentUser)},showPermissionsSection:function(){return Object(w["a"])(g["c"].CHANGE_USER_PERMISSIONS,this.currentUser)}}},J=z,Y=t("62ad"),K=t("0fd9"),X=Object(x["a"])(J,i,a,!1,null,null,null);n["default"]=X.exports;T()(X,{VCol:Y["a"],VRow:K["a"]})},"9bde":function(e,n,t){},cc36:function(e,n,t){},f053:function(e,n){var t={kind:"Document",definitions:[{kind:"OperationDefinition",operation:"mutation",name:{kind:"Name",value:"DeleteUser"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"id"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"deleteUser"},arguments:[{kind:"Argument",name:{kind:"Name",value:"id"},value:{kind:"Variable",name:{kind:"Name",value:"id"}}}],directives:[]}]}}],loc:{start:0,end:56}};t.loc.source={body:"mutation DeleteUser($id: ID!) {\n deleteUser(id: $id)\n}\n",name:"GraphQL request",locationOffset:{line:1,column:1}};function i(e,n){if("FragmentSpread"===e.kind)n.add(e.name.value);else if("VariableDefinition"===e.kind){var t=e.type;"NamedType"===t.kind&&n.add(t.name.value)}e.selectionSet&&e.selectionSet.selections.forEach((function(e){i(e,n)})),e.variableDefinitions&&e.variableDefinitions.forEach((function(e){i(e,n)})),e.definitions&&e.definitions.forEach((function(e){i(e,n)}))}var a={};function r(e,n){for(var t=0;t0){var d=o;o=new Set,d.forEach((function(e){if(!s.has(e)){s.add(e);var n=a[e]||new Set;n.forEach((function(e){o.add(e)}))}}))}return s.forEach((function(n){var i=r(e,n);i&&t.definitions.push(i)})),t}(function(){t.definitions.forEach((function(e){if(e.name){var n=new Set;i(e,n),a[e.name.value]=n}}))})(),e.exports=t,e.exports["DeleteUser"]=s(t,"DeleteUser")}}]); //# sourceMappingURL=manage-users.ac1da1d3.js.map