blob: dbcc9cc211ad3647a88f9cc07978055f7b64e014 [file] [log] [blame]
webpackJsonp([1],[,,function(e,t,n){"use strict";var r=n(35),o=n.n(r),a=n(17),s=n.n(a),i={initialized:!1,baseURL:"api",defaultOptions:{xhrFields:{withCredentials:!0},statusCode:{401:function(){l.loggedIn=!1},404:function(){alert("The requested service is not available!")}},error:function(e){var t=e.statusText+" ("+e.status+")";e.responseText&&(t=t+": "+e.responseText),l.debug("Ajax error: "+t)}},setup:function(){s.a.ajaxSetup(i.defaultOptions),i.initialized=!0},call:function(e){return!0!==i.initialized&&(l.debug("AJAX not initialized. Initialing now..."),i.setup()),e.url=i.baseURL+e.url,s.a.ajax(e)},get:function(e){return i.call({type:"GET",url:e})},post:function(e,t){return i.call({type:"POST",url:e,data:t})},postJSON:function(e,t){return i.call({type:"POST",url:e,contentType:"application/json",data:o()(t)})}};i.setup();var l={loggedIn:!1,debug:function(e){console.log(e)},assertLoggedIn:function(e){this.loggedIn||e.$router.push("/login")},login:function(e,t){var n={username:e,password:t};return i.post("/auth/login",n)},logout:function(){return i.post("/auth/logout")},getEmployeeFilter:function(){return i.get("/employee/filter")},findEmployees:function(e){return i.postJSON("/employee/list",e)},createEmployeeRecord:function(){return i.get("/employee/add")},readEmployeeRecord:function(e){return i.get("/employee/get/"+e)},updateEmployee:function(e){return i.postJSON("/employee/update",e)},deleteEmployee:function(e){return i.get("/employee/delete/"+e)}};t.a=l},,,,,,,,,,,,,,,,function(e,t,n){var r=n(0)(n(27),null,null,null,null);e.exports=r.exports},function(e,t,n){var r=n(0)(n(28),n(83),null,null,null);e.exports=r.exports},function(e,t,n){var r=n(0)(n(29),n(84),null,null,null);e.exports=r.exports},function(e,t,n){var r=n(0)(n(30),null,null,null,null);e.exports=r.exports},function(e,t,n){var r=n(0)(n(31),null,null,null,null);e.exports=r.exports},function(e,t,n){"use strict";var r=n(36),o=n.n(r),a=n(37),s=n.n(a),i=n(7),l=n(86),u=n(79),c=n.n(u),d=n(78),p=n.n(d),m=n(77),f=n.n(m);i.a.use(l.a),t.a=new l.a({routes:[{path:"/login",component:c.a},{path:"/employeeList",component:p.a},{path:"/employeeDetail/:employeeId",component:f.a,props:function(e){var t=s()(e.params.employeeId);return o()(t)?0:{employeeId:t}}},{path:"*",redirect:"/login"}]})},function(e,t,n){function r(e){n(72)}var o=n(0)(n(26),n(82),r,null,null);e.exports=o.exports},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(7),o=n(24),a=n.n(o),s=n(23);r.a.config.productionTip=!1,new r.a({el:"#app",router:s.a,template:"<App/>",components:{App:a.a}})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(7),o=n(2);t.default={name:"app",data:function(){return{employeeFilter:void 0,messages:void 0,redirectWithError:!1}},created:function(){this.startup()},watch:{$route:function(e,t){this.redirectWithError?this.redirectWithError=!1:this.clearMessages()}},methods:{startup:function(){o.a.debug("Application startup! Vue version is "+r.a.version)},clearData:function(){this.employeeFilter=void 0},clearMessages:function(){this.messages=void 0},addMessages:function(e){this.messages?this.messages=this.messages.concat(e):this.messages=e},redirect:function(e){this.clearMessages(),this.$router.push(e)},handleError:function(e,t){t&&(this.redirectWithError=!0,this.$router.push(t)),e.responseJSON?this.addMessages(e.responseJSON):this.addMessages([e.statusText])},isLoggedIn:function(){return void 0===o.a.loggedIn&&(o.a.debug("EMPAPI.loggedIn is undefined!"),o.a.loggedIn=!0),o.a.loggedIn},doLogout:function(){var e=this;confirm("Do you really want to logout?")&&o.a.logout().done(function(){return e.onLogoutComplete()})},onLoginComplete:function(){o.a.loggedIn=!0,this.clearData(),this.$router.push("/employeeList")},onLogoutComplete:function(){o.a.loggedIn=!1,this.clearData(),this.$router.push("/login")}}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(11),o=n.n(r),a=n(20),s=n.n(a),i=n(19),l=n.n(i);t.default={functional:!0,name:"e-control",props:{column:{required:!0},record:{type:Object},data:{type:Object}},render:function(e,t){return[e("td",{class:"eCtlLabel"},[e(s.a,{props:o()({column:t.props.column,forInput:!0})})]),e("td",{class:"eCtlInput"},[e(l.a,{props:t.props})])]}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),o=n(22),a=n.n(o),s=n(17),i=n.n(s);t.default={name:"e-input",components:{eValue:a.a},props:{column:{required:!0},record:{type:Object},data:{type:Object}},computed:{_record:function(){var e=this.record;if(void 0===e)for(var t=this.$parent;t;){if(t.record){e=t.record;break}t=t.$parent}if(void 0===e)throw new TypeError("e-input: No data or record provided!");if(void 0===e.meta)throw new TypeError("e-input: Invalid record param: no meta property!");if(void 0===e.data)throw new TypeError("e-input: Invalid record param: no data property!");return e},_recordData:function(){return void 0===this.data?this._record.data:this.data},meta:function(){if("string"==typeof this.column||this.column instanceof String)return this._record.meta[this.column];if(void 0===this.column.dataType)throw new TypeError("e-input: Invalid column param!");return this.column},dataValue:{get:function(){var e=this.meta.property;return this._recordData[e]},set:function(e){var t=this.meta.property;this._recordData[t]=e}}},methods:{isValueEqualTo:function(e){var t=this.dataValue;return""===e&&(e=null),t===e},styleClass:function(e,t){var n="eInput "+e;return n+=" eType"+t.dataType,t.disabled&&(n+=" eInpDis"),t.required&&(n+=" eInpReq"),t.styleClass&&(n+=" "+t.styleClass),n},inputValue:function(e){return i()(e.currentTarget).val()},checkboxValue:function(e){return i()(e.currentTarget).prop("checked")},updateData:function(e){this.dataValue=e,r.a.debug('Value for: "'+this.meta.name+'" has been set to: '+e)}}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"e-label",props:{column:{required:!0},record:{type:Object},forInput:{type:Boolean,default:!1}},computed:{meta:function(){if("string"==typeof this.column||this.column instanceof String){var e=this.record;if(void 0===e)for(var t=this.$parent;t;){if(t.record){e=t.record;break}t=t.$parent}if(void 0===e)throw new TypeError("e-label: No data or record provided!");if(void 0===e.meta)throw new TypeError("e-label: Invalid record param: no meta property!");return e.meta[this.column]}if(void 0===this.column.dataType)throw new TypeError("e-label: Invalid column param!");return this.column}}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"e-record",props:{record:{type:Object},styleClass:{type:String,default:"eRecord"}},render:function(e){if(void 0!==this.record)return e("div",{class:this.styleClass},this.$slots.default)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={functional:!0,name:"e-value",props:{column:{required:!0},record:{type:Object},data:{type:Object}},render:function(e,t){function n(e){var t=e.props.record;if(void 0===t)for(var n=e.parent;n;){if(n.record){t=n.record;break}n=n.$parent}if(void 0===t)throw new TypeError("e-input: No data or record provided!");if(void 0===t.meta)throw new TypeError("e-input: Invalid record param: no meta property!");if(void 0===t.data)throw new TypeError("e-input: Invalid record param: no data property!");return t}var r=function(e,t){if("string"==typeof e||e instanceof String)return n(t).meta[e];if(void 0===e.dataType)throw new TypeError("e-value: Invalid column param!");return e}(t.props.column,t),o=function(e,t){return void 0===t.props.data?n(t).data[e]:t.props.data[e]}(r.property,t);return r.options&&(o=r.options[o]),e("span",{class:"eVal"},o)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),o=n(21),a=n.n(o),s=n(18),i=n.n(s);t.default={name:"employeeDetail",components:{eRecord:a.a,eControl:i.a},props:{employeeId:{required:!0}},data:function(){return{employeeRecord:void 0}},computed:{allowDelete:function(){return this.employeeRecord&&!this.employeeRecord.data._newRecord}},created:function(e){r.a.assertLoggedIn(this),0===this.employeeId?this.addNew():this.loadDetails()},methods:{addNew:function(){var e=this;r.a.debug("create employee record"),r.a.createEmployeeRecord(this.employeeId).done(function(t){return e.onLoadDone(t)}).fail(function(t){return e.$parent.handleError(t,"/employeeList")})},loadDetails:function(){var e=this;r.a.debug("load employee record"),r.a.readEmployeeRecord(this.employeeId).done(function(t){return e.onLoadDone(t)}).fail(function(t){return e.$parent.handleError(t,"/employeeList")})},doSave:function(e){var t=this;this.$parent.clearMessages(),r.a.debug("load employee record"),r.a.updateEmployee(this.employeeRecord.data).done(function(e){return t.onUpdateDone(e)}).fail(function(e){return t.$parent.handleError(e)})},doDelete:function(e){var t=this;confirm("Do you really want to delete this employee?")&&(this.$parent.clearMessages(),r.a.debug("load employee record"),r.a.deleteEmployee(this.employeeId).done(function(e){return t.onUpdateDone(e)}).fail(function(e){return t.$parent.handleError(e,"/employeeList")}))},doReturnToList:function(e){this.$router.push("/employeeList")},onLoadDone:function(e){this.employeeRecord=e},onUpdateDone:function(e){r.a.debug("employee record successfully updated"),this.$router.push("/employeeList")}}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(11),o=n.n(r),a=n(2),s=n(21),i=n.n(s),l=n(18),u=n.n(l),c=n(19),d=n.n(c),p=n(20),m=n.n(p),f=n(22),v=n.n(f);t.default={name:"employeeList",components:{eRecord:i.a,eControl:u.a,eInput:d.a,eLabel:m.a,eValue:v.a},data:function(){return{filter:void 0,searchDone:!1,employeeList:void 0}},computed:{meta:function(){return this.employeeList.meta}},created:function(){var e=this;a.a.assertLoggedIn(this),this.$parent.employeeFilter?(this.filter=this.$parent.employeeFilter,this.doSearch()):a.a.getEmployeeFilter().done(function(t){return e.initSearch(t)})},methods:{initSearch:function(e){this.filter=e,this.searchDone=!1,this.employeeList=void 0},doReset:function(){var e=this;a.a.debug("resetting search filter"),a.a.getEmployeeFilter().done(function(t){return e.initSearch(t)}),this.$parent.employeeFilter=void 0},doSearch:function(){var e=this;a.a.debug("load employee list"),a.a.findEmployees(this.filter.data).done(function(t){return e.onSearchComplete(t)})},doAddNew:function(){this.$router.push("/employeeDetail/0")},onSearchComplete:function(e){this.employeeList=e,this.searchDone=!0,this.$parent.employeeFilter={meta:this.filter.meta,data:o()({},this.filter.data)}}}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2);t.default={name:"userLogin",data:function(){return{username:"",password:""}},methods:{login:function(){var e=this;r.a.login(this.username,this.password).done(function(){return e.$parent.onLoginComplete()}).fail(function(t){return e.$parent.handleError(t)})}}}},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(e,t){},function(e,t){},function(e,t){},,,,function(e,t,n){var r=n(0)(n(32),n(81),null,null,null);e.exports=r.exports},function(e,t,n){function r(e){n(71)}var o=n(0)(n(33),n(80),r,"data-v-007c8fce",null);e.exports=o.exports},function(e,t,n){function r(e){n(73)}var o=n(0)(n(34),n(85),r,"data-v-7b324c0c",null);e.exports=o.exports},function(e,t){e.exports={render:function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"page-content"},[n("h1",[e._v("Employee-List")]),e._v(" "),n("e-record",{attrs:{styleClass:"formPanel",record:e.filter}},[n("table",{staticClass:"inputForm"},[n("tr",[n("e-control",{attrs:{column:"firstName"}}),e._v(" "),n("e-control",{attrs:{column:"lastName"}})],1),e._v(" "),n("tr",[n("e-control",{attrs:{column:"departmentId"}}),e._v(" "),n("e-control",{attrs:{column:"gender"}})],1),e._v(" "),n("tr",{staticClass:"formButtonRow"},[n("td"),e._v(" "),n("td",{staticClass:"buttonBar",attrs:{colspan:"3"}},[n("button",{attrs:{disabled:!e.searchDone},on:{click:function(t){return e.doReset()}}},[e._v("Search reset")]),e._v(" "),n("button",{on:{click:function(t){return e.doSearch()}}},[e._v("Search")])])])])]),e._v(" "),e.searchDone?n("div",{staticClass:"searchResult"},[n("h1",[e._v("Search found "+e._s(e.employeeList.data.length)+" Employees")]),e._v(" "),n("table",{staticClass:"employeeList"},[e._m(0),e._v(" "),n("thead",[n("tr",[n("th",[e._v("ID")]),e._v(" "),n("th",[n("e-label",{attrs:{column:e.meta.name}})],1),e._v(" "),n("th",[n("e-label",{attrs:{column:e.meta.department}})],1),e._v(" "),n("th",[n("e-label",{attrs:{column:e.meta.gender}})],1),e._v(" "),n("th",[n("e-label",{attrs:{column:e.meta.dateOfBirth}})],1),e._v(" "),n("th",[e._v("Retired")])])]),e._v(" "),n("tbody",[e._l(e.employeeList.data,function(t,r){return[n("tr",{key:r,class:[r%2==0?"row-even":"row-odd"]},[n("td",[e._v(e._s(t.employeeId))]),e._v(" "),n("td",[n("router-link",{staticClass:"eLink",attrs:{to:{path:"/employeeDetail/"+t.employeeId}}},[n("e-value",{attrs:{column:e.meta.name,data:t}})],1)],1),e._v(" "),n("td",[n("e-value",{attrs:{data:t,column:e.meta.department}})],1),e._v(" "),n("td",[n("e-value",{attrs:{data:t,column:e.meta.gender}})],1),e._v(" "),n("td",[n("e-value",{attrs:{data:t,column:e.meta.dateOfBirth}})],1),e._v(" "),n("td",[n("e-value",{attrs:{data:t,column:e.meta.retired}})],1)])]})],2)])]):e._e(),e._v(" "),n("div",{staticClass:"buttonBar"},[n("button",{on:{click:function(t){return e.$parent.doLogout()}}},[e._v("Logout")]),e._v(" "),n("button",{on:{click:function(t){return e.doAddNew()}}},[e._v("Add new employee")])])],1)},staticRenderFns:[function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("colgroup",[n("col",{staticClass:"col-id"}),e._v(" "),n("col",{staticClass:"col-name"}),e._v(" "),n("col",{staticClass:"col-department"}),e._v(" "),n("col",{staticClass:"col-gender"}),e._v(" "),n("col",{staticClass:"col-dateOfBirth"}),e._v(" "),n("col",{staticClass:"col-Retired"})])}]}},function(e,t){e.exports={render:function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"page-content"},[n("h1",[e._v("Employee-Details ("+e._s(e.employeeId)+")")]),e._v(" "),n("e-record",{attrs:{styleClass:"formPanel",record:e.employeeRecord}},[n("table",{staticClass:"inputForm",staticStyle:{width:"400px"}},[n("colgroup",[n("col",{attrs:{width:"120px"}}),e._v(" "),n("col")]),e._v(" "),n("tr",[n("e-control",{attrs:{column:"salutation"}})],1),e._v(" "),n("tr",[n("e-control",{attrs:{column:"firstName"}})],1),e._v(" "),n("tr",[n("e-control",{attrs:{column:"lastName"}})],1),e._v(" "),n("tr",[n("e-control",{attrs:{column:"dateOfBirth",format:"[yyyy-MM-dd]"}})],1),e._v(" "),n("tr",[n("e-control",{attrs:{column:"departmentId"}})],1),e._v(" "),n("tr",[n("e-control",{attrs:{column:"gender"}})],1),e._v(" "),n("tr",[n("e-control",{attrs:{column:"phoneNumber"}})],1),e._v(" "),n("tr",[n("e-control",{attrs:{column:"email"}})],1),e._v(" "),n("tr",[n("e-control",{attrs:{column:"salary"}})],1),e._v(" "),n("tr",[n("e-control",{attrs:{column:"retired"}})],1)])]),e._v(" "),n("div",{staticClass:"buttonBar"},[n("button",{on:{click:function(t){return e.doReturnToList(t)}}},[e._v("Back")]),e._v(" "),e.allowDelete?n("button",{on:{click:function(t){return e.doDelete(t)}}},[e._v("Delete")]):e._e(),e._v(" "),n("button",{on:{click:function(t){return e.doSave(t)}}},[e._v("Save")])])],1)},staticRenderFns:[]}},function(e,t){e.exports={render:function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{attrs:{id:"app"}},[n("div",{staticClass:"titleDiv"},[n("span",[e._v("Employee Management Application")]),e._v(" "),this.isLoggedIn()?n("button",{on:{click:e.doLogout}},[e._v("Logout")]):e._e()]),e._v(" "),e.messages?n("div",{attrs:{id:"messages"}},[n("ul",[e._l(e.messages,function(t){return[n("li",[e._v(e._s(t))])]})],2)]):e._e(),e._v(" "),n("router-view")],1)},staticRenderFns:[]}},function(e,t){e.exports={render:function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"eInpWrap"},[e.meta.readOnly?[n("e-value",{attrs:{column:e.meta,data:e._recordData}})]:"select"===e.meta.controlType?[n("select",{class:e.styleClass("eSelect",e.meta),attrs:{id:"CTL_"+e.meta.name,name:e.meta.name,disabled:e.meta.disabled},on:{change:function(t){e.updateData(e.inputValue(t))}}},[!1!==e.meta.required&&!e.isValueEqualTo(null)||void 0!==e.meta.options[""]?e._e():[n("option",{attrs:{value:""},domProps:{selected:e.isValueEqualTo(null)}})],e._v(" "),e._l(e.meta.options,function(t,r){return[n("option",{domProps:{value:r,selected:e.isValueEqualTo(r)}},[e._v(e._s(t))])]})],2)]:"checkbox"===e.meta.controlType?[n("input",{class:e.styleClass("eCheckbox",e.meta),attrs:{id:"CTL_"+e.meta.name,name:e.meta.name,lang:"en",type:"checkbox",readonly:e.meta.disabled},domProps:{checked:e.dataValue},on:{input:function(t){e.updateData(e.checkboxValue(t))}}})]:[n("input",{class:e.styleClass("eInpText",e.meta),attrs:{id:"CTL_"+e.meta.name,name:e.meta.name,lang:"en",type:"text",readonly:e.meta.disabled,maxlength:e.meta.maxLength},domProps:{value:e.dataValue},on:{input:function(t){e.updateData(e.inputValue(t))}}})]],2)},staticRenderFns:[]}},function(e,t){e.exports={render:function(){var e=this,t=e.$createElement,n=e._self._c||t;return e.forInput?n("label",{staticClass:"eLabel",attrs:{for:"CTL_"+e.meta.name}},[e._v(e._s(e.meta.title)+":"),e.meta.required?n("span",{staticClass:"required"},[e._v("*")]):e._e()]):n("span",{staticClass:"eLabel"},[e._v(e._s(e.meta.title))])},staticRenderFns:[]}},function(e,t){e.exports={render:function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"page-content"},[n("form",{attrs:{id:"loginForm",name:"loginForm",enctype:"application/x-www-form-urlencoded"},on:{submit:function(t){return t.preventDefault(),e.login.apply(null,arguments)}}},[n("p",[e._v("Hint: enter any non null username and password.")]),e._v(" "),n("div",{staticClass:"formPanel"},[n("table",{staticClass:"inputForm"},[n("tr",{staticClass:"formButtonRow"},[e._m(0),e._v(" "),n("td",{staticClass:"eCtlInput"},[n("input",{directives:[{name:"model",rawName:"v-model",value:e.username,expression:"username"}],attrs:{id:"inputUsername",name:"username",type:"text",tabindex:"1"},domProps:{value:e.username},on:{input:function(t){t.target.composing||(e.username=t.target.value)}}})])]),e._v(" "),n("tr",{staticClass:"formButtonRow"},[e._m(1),e._v(" "),n("td",{staticClass:"eCtlInput"},[n("input",{directives:[{name:"model",rawName:"v-model",value:e.password,expression:"password"}],attrs:{id:"inputPassword",type:"password",placeholder:"Password",tabindex:"2"},domProps:{value:e.password},on:{input:function(t){t.target.composing||(e.password=t.target.value)}}})])]),e._v(" "),e._m(2)])])])])},staticRenderFns:[function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("td",{staticClass:"eCtlLabel"},[n("label",{attrs:{for:"inputUsername"}},[e._v("User name")]),e._v(":")])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("td",{staticClass:"eCtlLabel"},[n("label",{attrs:{for:"inputPassword"}},[e._v("Password")]),e._v(":")])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("tr",{staticClass:"formButtonRow"},[n("td"),e._v(" "),n("td",{staticClass:"buttonBar",attrs:{colspan:"3"}},[n("button",{attrs:{type:"submit"}},[e._v("Login")])])])}]}}],[25]);
//# sourceMappingURL=app.5a998470448b25588615.js.map