diff --git a/public/0.js b/public/0.js index d903661c..39c516a5 100644 --- a/public/0.js +++ b/public/0.js @@ -210,7 +210,7 @@ __webpack_require__.r(__webpack_exports__); exports = module.exports = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js")(false); // Module -exports.push([module.i, "\n.WM-Border[data-v-308d838e] {\r\n border: 1px solid;\n}\n.WM-Border-Black[data-v-308d838e] {\r\n border-color: #2f353b !important;\n}\n.WM-Border-Gray[data-v-308d838e] {\r\n border-color: #aaa !important;\n}\n.WM-Color-LightGrey[data-v-308d838e] {\r\n background-color : #F5F5F5;\n}\n.WM-Relative[data-v-308d838e] {\r\n position: relative;\n}\n.v-btn--top.v-btn--absolute.v-btn--small[data-v-308d838e] {\r\n top: -25px !important;\n}\r\n", ""]); +exports.push([module.i, "\n.WM-Border[data-v-308d838e] {\n border: 1px solid;\n}\n.WM-Border-Black[data-v-308d838e] {\n border-color: #2f353b !important;\n}\n.WM-Border-Gray[data-v-308d838e] {\n border-color: #aaa !important;\n}\n.WM-Color-LightGrey[data-v-308d838e] {\n background-color : #F5F5F5;\n}\n.WM-Relative[data-v-308d838e] {\n position: relative;\n}\n.v-btn--top.v-btn--absolute.v-btn--small[data-v-308d838e] {\n top: -25px !important;\n}\n", ""]); diff --git a/public/1.js b/public/1.js index ce9ff146..f9429ac3 100644 --- a/public/1.js +++ b/public/1.js @@ -137,7 +137,7 @@ __webpack_require__.r(__webpack_exports__); exports = module.exports = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js")(false); // Module -exports.push([module.i, "\n.WM-ActionButton[data-v-1305c16e] {\r\n padding : 8px 22px;\n}\r\n\r\n", ""]); +exports.push([module.i, "\n.WM-ActionButton[data-v-1305c16e] {\n padding : 8px 22px;\n}\n\n", ""]); diff --git a/public/2.js b/public/2.js index 6accb5ec..632dcde4 100644 --- a/public/2.js +++ b/public/2.js @@ -423,7 +423,7 @@ __webpack_require__.r(__webpack_exports__); exports = module.exports = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js")(false); // Module -exports.push([module.i, "\n.WM-Border-Gray[data-v-d05735bc] {\r\n border-color: #aaa !important;\n}\n.WM-Color-LightGrey[data-v-d05735bc] {\r\n background-color : #F5F5F5;\n}\n.v-btn--top.v-btn--absolute.v-btn--small[data-v-d05735bc] {\r\n top: -25px !important;\n}\n.v-btn--bottom.v-btn--absolute.v-btn--small[data-v-d05735bc] {\r\n bottom: -24px !important;\n}\r\n", ""]); +exports.push([module.i, "\n.WM-Border-Gray[data-v-d05735bc] {\n border-color: #aaa !important;\n}\n.WM-Color-LightGrey[data-v-d05735bc] {\n background-color : #F5F5F5;\n}\n.v-btn--top.v-btn--absolute.v-btn--small[data-v-d05735bc] {\n top: -25px !important;\n}\n.v-btn--bottom.v-btn--absolute.v-btn--small[data-v-d05735bc] {\n bottom: -24px !important;\n}\n", ""]); diff --git a/public/20.js b/public/20.js new file mode 100644 index 00000000..7bbc2e3d --- /dev/null +++ b/public/20.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[20],{211:function(t,s,e){"use strict";e.r(s);var a={},l=e(0),r=Object(l.a)(a,function(){var t=this,s=t.$createElement,e=t._self._c||s;return e("v-container",{attrs:{"fill-height":"",fluid:"","grid-list-xl":""}},[e("v-layout",{attrs:{"justify-center":"",wrap:""}},[e("v-flex",{attrs:{xs12:"",md8:""}},[e("material-card",{attrs:{color:"green",title:"Edit Profile",text:"Complete your profile"}},[e("v-form",[e("v-container",{attrs:{"py-0":""}},[e("v-layout",{attrs:{wrap:""}},[e("v-flex",{attrs:{xs12:"",md4:""}},[e("v-text-field",{attrs:{label:"Company (disabled)",disabled:""}})],1),t._v(" "),e("v-flex",{attrs:{xs12:"",md4:""}},[e("v-text-field",{staticClass:"purple-input",attrs:{label:"User Name"}})],1),t._v(" "),e("v-flex",{attrs:{xs12:"",md4:""}},[e("v-text-field",{staticClass:"purple-input",attrs:{label:"Email Address"}})],1),t._v(" "),e("v-flex",{attrs:{xs12:"",md6:""}},[e("v-text-field",{staticClass:"purple-input",attrs:{label:"First Name"}})],1),t._v(" "),e("v-flex",{attrs:{xs12:"",md6:""}},[e("v-text-field",{staticClass:"purple-input",attrs:{label:"Last Name"}})],1),t._v(" "),e("v-flex",{attrs:{xs12:"",md12:""}},[e("v-text-field",{staticClass:"purple-input",attrs:{label:"Adress"}})],1),t._v(" "),e("v-flex",{attrs:{xs12:"",md4:""}},[e("v-text-field",{staticClass:"purple-input",attrs:{label:"City"}})],1),t._v(" "),e("v-flex",{attrs:{xs12:"",md4:""}},[e("v-text-field",{staticClass:"purple-input",attrs:{label:"Country"}})],1),t._v(" "),e("v-flex",{attrs:{xs12:"",md4:""}},[e("v-text-field",{staticClass:"purple-input",attrs:{label:"Postal Code",type:"number"}})],1),t._v(" "),e("v-flex",{attrs:{xs12:""}},[e("v-textarea",{staticClass:"purple-input",attrs:{label:"About Me",value:"Lorem ipsum dolor sit amet, consectetur adipiscing elit."}})],1),t._v(" "),e("v-flex",{attrs:{xs12:"","text-xs-right":""}},[e("v-btn",{staticClass:"mx-0 font-weight-light",attrs:{color:"success"}},[t._v("\n Update Profile\n ")])],1)],1)],1)],1)],1)],1),t._v(" "),e("v-flex",{attrs:{xs12:"",md4:""}},[e("material-card",{staticClass:"v-card-profile"},[e("v-avatar",{staticClass:"mx-auto d-block",attrs:{slot:"offset",size:"130"},slot:"offset"},[e("img",{attrs:{src:"/img/"}})]),t._v(" "),e("v-card-text",{staticClass:"text-xs-center"},[e("h6",{staticClass:"category text-gray font-weight-thin mb-3"},[t._v("CEO / CO-FOUNDER")]),t._v(" "),e("h4",{staticClass:"card-title font-weight-light"},[t._v("Alec Thompson")]),t._v(" "),e("p",{staticClass:"card-description font-weight-light"},[t._v("Don't be scared of the truth because we need to restart the human foundation in truth And I love you like Kanye loves Kanye I love Rick Owens’ bed design but the back is...")]),t._v(" "),e("v-btn",{staticClass:"font-weight-light",attrs:{color:"success",round:""}},[t._v("Follow")])],1)],1)],1)],1)],1)},[],!1,null,null,null);s.default=r.exports}}]); \ No newline at end of file diff --git a/public/vue/js/app.js b/public/vue/js/app.js index 79cfd046..4ad0ccbb 100644 --- a/public/vue/js/app.js +++ b/public/vue/js/app.js @@ -8129,7 +8129,7 @@ exports.push([module.i, "/*!\n* Vuetify v1.5.11\n* Forged by John Leider\n* Rele exports = module.exports = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js")(false); // Module -exports.push([module.i, "\n#core-footer {\r\n z-index: 0;\n}\r\n", ""]); +exports.push([module.i, "\n#core-footer {\n z-index: 0;\n}\n", ""]); @@ -60798,7 +60798,7 @@ var ApiService = { break; } - if (!error.config.url.includes('auth/login')) { + if (!error.config.url.includes('login')) { _context.next = 6; break; } @@ -60810,7 +60810,7 @@ var ApiService = { case 6: _context.prev = 6; _context.next = 9; - return _store__WEBPACK_IMPORTED_MODULE_3__["default"].dispatch('auth/refreshToken'); + return _store__WEBPACK_IMPORTED_MODULE_3__["default"].dispatch('refreshToken'); case 9: return _context.abrupt("return", _this.customRequest({ @@ -60972,7 +60972,8 @@ var UserService = { var _login = _asyncToGenerator( /*#__PURE__*/ _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee(cell_number, password) { - var requestData, response; + var requestData, _response; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee$(_context) { while (1) { switch (_context.prev = _context.next) { @@ -60986,8 +60987,8 @@ var UserService = { grant_type: 'password' }, auth: { - username: Object({"MIX_APP_ROOT_API":"https://www.cssd-doc.com/api/","MIX_PUSHER_APP_CLUSTER":"mt1","MIX_PUSHER_APP_KEY":"","NODE_ENV":"development"}).VUE_APP_CLIENT_ID, - password: Object({"MIX_APP_ROOT_API":"https://www.cssd-doc.com/api/","MIX_PUSHER_APP_CLUSTER":"mt1","MIX_PUSHER_APP_KEY":"","NODE_ENV":"development"}).VUE_APP_CLIENT_SECRET + username: Object({"MIX_PUSHER_APP_KEY":"","MIX_PUSHER_APP_CLUSTER":"mt1","MIX_APP_ROOT_API":"https://www.cssd-doc.com/api/","NODE_ENV":"development"}).MIX_APP_CLIENT_ID, + password: Object({"MIX_PUSHER_APP_KEY":"","MIX_PUSHER_APP_CLUSTER":"mt1","MIX_APP_ROOT_API":"https://www.cssd-doc.com/api/","NODE_ENV":"development"}).MIX_APP_CLIENT_SECRET } }; _context.prev = 1; @@ -60995,14 +60996,14 @@ var UserService = { return _api_service__WEBPACK_IMPORTED_MODULE_1__["default"].customRequest(requestData); case 4: - response = _context.sent; - _storage_service__WEBPACK_IMPORTED_MODULE_2__["TokenService"].saveToken(response.data.token); - _storage_service__WEBPACK_IMPORTED_MODULE_2__["TokenService"].saveRefreshToken(response.data.token); + _response = _context.sent; + _storage_service__WEBPACK_IMPORTED_MODULE_2__["TokenService"].saveToken(_response.data.access_token); + _storage_service__WEBPACK_IMPORTED_MODULE_2__["TokenService"].saveRefreshToken(_response.data.refresh_token); _api_service__WEBPACK_IMPORTED_MODULE_1__["default"].setHeader(); // NOTE: We haven't covered this yet in our ApiService // but don't worry about this just yet - I'll come back to it later _api_service__WEBPACK_IMPORTED_MODULE_1__["default"].mount401Interceptor(); - return _context.abrupt("return", response.data.token); + return _context.abrupt("return", _response.data.access_token); case 12: _context.prev = 12; @@ -61034,7 +61035,8 @@ var UserService = { var _forgotPassword = _asyncToGenerator( /*#__PURE__*/ _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee2(cell_number) { - var requestData, response; + var requestData, _response2; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee2$(_context2) { while (1) { switch (_context2.prev = _context2.next) { @@ -61046,8 +61048,8 @@ var UserService = { cell_number: cell_number }, auth: { - username: Object({"MIX_APP_ROOT_API":"https://www.cssd-doc.com/api/","MIX_PUSHER_APP_CLUSTER":"mt1","MIX_PUSHER_APP_KEY":"","NODE_ENV":"development"}).VUE_APP_CLIENT_ID, - password: Object({"MIX_APP_ROOT_API":"https://www.cssd-doc.com/api/","MIX_PUSHER_APP_CLUSTER":"mt1","MIX_PUSHER_APP_KEY":"","NODE_ENV":"development"}).VUE_APP_CLIENT_SECRET + username: Object({"MIX_PUSHER_APP_KEY":"","MIX_PUSHER_APP_CLUSTER":"mt1","MIX_APP_ROOT_API":"https://www.cssd-doc.com/api/","NODE_ENV":"development"}).MIX_APP_CLIENT_ID, + password: Object({"MIX_PUSHER_APP_KEY":"","MIX_PUSHER_APP_CLUSTER":"mt1","MIX_APP_ROOT_API":"https://www.cssd-doc.com/api/","NODE_ENV":"development"}).MIX_APP_CLIENT_SECRET } }; _context2.prev = 1; @@ -61055,9 +61057,9 @@ var UserService = { return _api_service__WEBPACK_IMPORTED_MODULE_1__["default"].customRequest(requestData); case 4: - response = _context2.sent; + _response2 = _context2.sent; _api_service__WEBPACK_IMPORTED_MODULE_1__["default"].setHeader(); - return _context2.abrupt("return", response.data); + return _context2.abrupt("return", _response2.data); case 9: _context2.prev = 9; @@ -61089,7 +61091,8 @@ var UserService = { var _verifyCode2 = _asyncToGenerator( /*#__PURE__*/ _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee3(_verifyCode) { - var requestData, response; + var requestData, _response3; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee3$(_context3) { while (1) { switch (_context3.prev = _context3.next) { @@ -61101,8 +61104,8 @@ var UserService = { verifyCode: _verifyCode }, auth: { - username: Object({"MIX_APP_ROOT_API":"https://www.cssd-doc.com/api/","MIX_PUSHER_APP_CLUSTER":"mt1","MIX_PUSHER_APP_KEY":"","NODE_ENV":"development"}).VUE_APP_CLIENT_ID, - password: Object({"MIX_APP_ROOT_API":"https://www.cssd-doc.com/api/","MIX_PUSHER_APP_CLUSTER":"mt1","MIX_PUSHER_APP_KEY":"","NODE_ENV":"development"}).VUE_APP_CLIENT_SECRET + username: Object({"MIX_PUSHER_APP_KEY":"","MIX_PUSHER_APP_CLUSTER":"mt1","MIX_APP_ROOT_API":"https://www.cssd-doc.com/api/","NODE_ENV":"development"}).MIX_APP_CLIENT_ID, + password: Object({"MIX_PUSHER_APP_KEY":"","MIX_PUSHER_APP_CLUSTER":"mt1","MIX_APP_ROOT_API":"https://www.cssd-doc.com/api/","NODE_ENV":"development"}).MIX_APP_CLIENT_SECRET } }; _context3.prev = 1; @@ -61110,9 +61113,9 @@ var UserService = { return _api_service__WEBPACK_IMPORTED_MODULE_1__["default"].customRequest(requestData); case 4: - response = _context3.sent; + _response3 = _context3.sent; _api_service__WEBPACK_IMPORTED_MODULE_1__["default"].setHeader(); - return _context3.abrupt("return", response.data); + return _context3.abrupt("return", _response3.data); case 9: _context3.prev = 9; @@ -61141,7 +61144,8 @@ var UserService = { var _refreshToken = _asyncToGenerator( /*#__PURE__*/ _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee4() { - var refreshToken, requestData, response; + var refreshToken, requestData, _response4; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee4$(_context4) { while (1) { switch (_context4.prev = _context4.next) { @@ -61155,8 +61159,8 @@ var UserService = { refresh_token: refreshToken }, auth: { - username: Object({"MIX_APP_ROOT_API":"https://www.cssd-doc.com/api/","MIX_PUSHER_APP_CLUSTER":"mt1","MIX_PUSHER_APP_KEY":"","NODE_ENV":"development"}).VUE_APP_CLIENT_ID, - password: Object({"MIX_APP_ROOT_API":"https://www.cssd-doc.com/api/","MIX_PUSHER_APP_CLUSTER":"mt1","MIX_PUSHER_APP_KEY":"","NODE_ENV":"development"}).VUE_APP_CLIENT_SECRET + username: Object({"MIX_PUSHER_APP_KEY":"","MIX_PUSHER_APP_CLUSTER":"mt1","MIX_APP_ROOT_API":"https://www.cssd-doc.com/api/","NODE_ENV":"development"}).MIX_APP_CLIENT_ID, + password: Object({"MIX_PUSHER_APP_KEY":"","MIX_PUSHER_APP_CLUSTER":"mt1","MIX_APP_ROOT_API":"https://www.cssd-doc.com/api/","NODE_ENV":"development"}).MIX_APP_CLIENT_SECRET } }; _context4.prev = 2; @@ -61164,12 +61168,12 @@ var UserService = { return _api_service__WEBPACK_IMPORTED_MODULE_1__["default"].customRequest(requestData); case 5: - response = _context4.sent; - _storage_service__WEBPACK_IMPORTED_MODULE_2__["TokenService"].saveToken(response.data.token); - _storage_service__WEBPACK_IMPORTED_MODULE_2__["TokenService"].saveRefreshToken(response.data.token); // Update the header in ApiService + _response4 = _context4.sent; + _storage_service__WEBPACK_IMPORTED_MODULE_2__["TokenService"].saveToken(_response4.data.access_token); + _storage_service__WEBPACK_IMPORTED_MODULE_2__["TokenService"].saveRefreshToken(_response4.data.refresh_token); // Update the header in ApiService _api_service__WEBPACK_IMPORTED_MODULE_1__["default"].setHeader(); - return _context4.abrupt("return", response.data.token); + return _context4.abrupt("return", _response4.data.access_token); case 12: _context4.prev = 12; @@ -61196,14 +61200,55 @@ var UserService = { * * Will also remove `Authorization Bearer ` header from future requests. **/ - logout: function logout() { - // Remove the token and remove Authorization header from Api Service as well - _storage_service__WEBPACK_IMPORTED_MODULE_2__["TokenService"].removeToken(); - _storage_service__WEBPACK_IMPORTED_MODULE_2__["TokenService"].removeRefreshToken(); - _api_service__WEBPACK_IMPORTED_MODULE_1__["default"].removeHeader(); // NOTE: Again, we'll cover the 401 Interceptor a bit later. + logout: function () { + var _logout = _asyncToGenerator( + /*#__PURE__*/ + _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee5() { + var requestData; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee5$(_context5) { + while (1) { + switch (_context5.prev = _context5.next) { + case 0: + requestData = { + method: 'post', + url: "logout", + auth: { + username: Object({"MIX_PUSHER_APP_KEY":"","MIX_PUSHER_APP_CLUSTER":"mt1","MIX_APP_ROOT_API":"https://www.cssd-doc.com/api/","NODE_ENV":"development"}).MIX_APP_CLIENT_ID, + password: Object({"MIX_PUSHER_APP_KEY":"","MIX_PUSHER_APP_CLUSTER":"mt1","MIX_APP_ROOT_API":"https://www.cssd-doc.com/api/","NODE_ENV":"development"}).MIX_APP_CLIENT_SECRET + } + }; + _context5.prev = 1; + _context5.next = 4; + return _api_service__WEBPACK_IMPORTED_MODULE_1__["default"].customRequest(requestData); - _api_service__WEBPACK_IMPORTED_MODULE_1__["default"].unmount401Interceptor(); - } + case 4: + // Remove the token and remove Authorization header from Api Service as well + _storage_service__WEBPACK_IMPORTED_MODULE_2__["TokenService"].removeToken(); + _storage_service__WEBPACK_IMPORTED_MODULE_2__["TokenService"].removeRefreshToken(); + _api_service__WEBPACK_IMPORTED_MODULE_1__["default"].removeHeader(); // NOTE: Again, we'll cover the 401 Interceptor a bit later. + + _api_service__WEBPACK_IMPORTED_MODULE_1__["default"].unmount401Interceptor(); + return _context5.abrupt("return", response.data); + + case 11: + _context5.prev = 11; + _context5.t0 = _context5["catch"](1); + throw new AuthenticationError(_context5.t0.response.status, _context5.t0.response.data.detail); + + case 14: + case "end": + return _context5.stop(); + } + } + }, _callee5, null, [[1, 11]]); + })); + + function logout() { + return _logout.apply(this, arguments); + } + + return logout; + }() }; /* harmony default export */ __webpack_exports__["default"] = (UserService); @@ -61214,7 +61259,7 @@ var UserService = { /*!********************************************!*\ !*** ./resources/js/vue/services/index.js ***! \********************************************/ -/*! exports provided: ApiService, TokenService, UserService, AuthenticationError */ +/*! exports provided: TokenService, UserService, AuthenticationError, ApiService */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; @@ -61405,6 +61450,8 @@ __webpack_require__.r(__webpack_exports__); /* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _services_auth_user_service__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @/services/auth/user.service */ "./resources/js/vue/services/auth/user.service.js"); /* harmony import */ var _router__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/router */ "./resources/js/vue/router/index.js"); +/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! axios */ "./node_modules/axios/index.js"); +/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(axios__WEBPACK_IMPORTED_MODULE_3__); function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } @@ -61413,6 +61460,7 @@ function _asyncToGenerator(fn) { return function () { var self = this, args = ar + /* harmony default export */ __webpack_exports__["default"] = ({ login: function () { var _login = _asyncToGenerator( @@ -61526,12 +61574,38 @@ function _asyncToGenerator(fn) { return function () { var self = this, args = ar return verifyCodeSMS; }(), - logout: function logout(_ref7) { - var commit = _ref7.commit; - _services_auth_user_service__WEBPACK_IMPORTED_MODULE_1__["UserService"].logout(); - commit('logoutSuccess'); - _router__WEBPACK_IMPORTED_MODULE_2__["default"].push('/login'); - }, + logout: function () { + var _logout = _asyncToGenerator( + /*#__PURE__*/ + _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee4(_ref7) { + var commit, result; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee4$(_context4) { + while (1) { + switch (_context4.prev = _context4.next) { + case 0: + commit = _ref7.commit; + _context4.next = 3; + return _services_auth_user_service__WEBPACK_IMPORTED_MODULE_1__["UserService"].logout(); + + case 3: + result = _context4.sent; + commit('logoutSuccess'); + _router__WEBPACK_IMPORTED_MODULE_2__["default"].push('/login'); + + case 6: + case "end": + return _context4.stop(); + } + } + }, _callee4); + })); + + function logout(_x7) { + return _logout.apply(this, arguments); + } + + return logout; + }(), refreshToken: function refreshToken(_ref8) { var commit = _ref8.commit, state = _ref8.state; @@ -61919,7 +61993,7 @@ module.exports = webpackAsyncContext; /*! no static exports found */ /***/ (function(module, exports, __webpack_require__) { -module.exports = __webpack_require__(/*! D:\Atom\Git\Laravel_CSSD\resources\js\vue\main.js */"./resources/js/vue/main.js"); +module.exports = __webpack_require__(/*! /home/saeid/Projects/Git/CSSD/resources/js/vue/main.js */"./resources/js/vue/main.js"); /***/ }) diff --git a/resources/js/vue/services/auth/api.service.js b/resources/js/vue/services/auth/api.service.js index 3af2988d..85d26a81 100644 --- a/resources/js/vue/services/auth/api.service.js +++ b/resources/js/vue/services/auth/api.service.js @@ -62,14 +62,14 @@ const ApiService = { }, async (error) => { if (error.request.status == 401) { - if (error.config.url.includes('auth/login')) { + if (error.config.url.includes('login')) { // Refresh token has failed. Logout the user store.dispatch('auth/logout'); throw error; } else { // Refresh the access token try{ - await store.dispatch('auth/refreshToken') + await store.dispatch('refreshToken') // Retry the original request return this.customRequest({ method: error.config.method, diff --git a/resources/js/vue/services/auth/user.service.js b/resources/js/vue/services/auth/user.service.js index 0c0ff24c..b159d268 100644 --- a/resources/js/vue/services/auth/user.service.js +++ b/resources/js/vue/services/auth/user.service.js @@ -28,21 +28,21 @@ const UserService = { grant_type: 'password', }, auth: { - username: process.env.VUE_APP_CLIENT_ID, - password: process.env.VUE_APP_CLIENT_SECRET + username: process.env.MIX_APP_CLIENT_ID, + password: process.env.MIX_APP_CLIENT_SECRET } } try { const response = await ApiService.customRequest(requestData); - TokenService.saveToken(response.data.token); - TokenService.saveRefreshToken(response.data.token); + TokenService.saveToken(response.data.access_token); + TokenService.saveRefreshToken(response.data.refresh_token); ApiService.setHeader(); // NOTE: We haven't covered this yet in our ApiService // but don't worry about this just yet - I'll come back to it later ApiService.mount401Interceptor(); - return response.data.token; + return response.data.access_token; } catch (error) { throw new AuthenticationError(error.response.status, error.response.data.detail); } @@ -61,8 +61,8 @@ const UserService = { cell_number, }, auth: { - username: process.env.VUE_APP_CLIENT_ID, - password: process.env.VUE_APP_CLIENT_SECRET + username: process.env.MIX_APP_CLIENT_ID, + password: process.env.MIX_APP_CLIENT_SECRET } } @@ -89,8 +89,8 @@ const UserService = { verifyCode, }, auth: { - username: process.env.VUE_APP_CLIENT_ID, - password: process.env.VUE_APP_CLIENT_SECRET + username: process.env.MIX_APP_CLIENT_ID, + password: process.env.MIX_APP_CLIENT_SECRET } } @@ -118,20 +118,20 @@ const UserService = { refresh_token: refreshToken }, auth: { - username: process.env.VUE_APP_CLIENT_ID, - password: process.env.VUE_APP_CLIENT_SECRET + username: process.env.MIX_APP_CLIENT_ID, + password: process.env.MIX_APP_CLIENT_SECRET } } try { const response = await ApiService.customRequest(requestData) - TokenService.saveToken(response.data.token) - TokenService.saveRefreshToken(response.data.token) + TokenService.saveToken(response.data.access_token) + TokenService.saveRefreshToken(response.data.refresh_token) // Update the header in ApiService ApiService.setHeader() - return response.data.token + return response.data.access_token } catch (error) { throw new AuthenticationError(error.response.status, error.response.data.detail) } @@ -143,14 +143,31 @@ const UserService = { * * Will also remove `Authorization Bearer ` header from future requests. **/ - logout() { - // Remove the token and remove Authorization header from Api Service as well - TokenService.removeToken() - TokenService.removeRefreshToken() - ApiService.removeHeader() + logout: async function() { + const requestData = { + method: 'post', + url: "logout", + auth: { + username: process.env.MIX_APP_CLIENT_ID, + password: process.env.MIX_APP_CLIENT_SECRET + } + } + + try { + await ApiService.customRequest(requestData); + // Remove the token and remove Authorization header from Api Service as well + TokenService.removeToken() + TokenService.removeRefreshToken() + ApiService.removeHeader() + + // NOTE: Again, we'll cover the 401 Interceptor a bit later. + ApiService.unmount401Interceptor() + + return response.data; + } catch (error) { + throw new AuthenticationError(error.response.status, error.response.data.detail); + } - // NOTE: Again, we'll cover the 401 Interceptor a bit later. - ApiService.unmount401Interceptor() } } diff --git a/resources/js/vue/store/modules/auth/actions.js b/resources/js/vue/store/modules/auth/actions.js index 641b16ef..351a1621 100644 --- a/resources/js/vue/store/modules/auth/actions.js +++ b/resources/js/vue/store/modules/auth/actions.js @@ -1,13 +1,13 @@ import { UserService, AuthenticationError } from '@/services/auth/user.service' import router from '@/router' +import axios from 'axios' export default { async login({ commit }, {cell_number, password}) { commit('loginRequest'); - try { const token = await UserService.login(cell_number, password); - commit('loginSuccess', token) + commit('loginSuccess', token); // Redirect the user to the page he first tried to visit or to the home view router.push(router.history.current.query.redirect || '/'); @@ -32,8 +32,8 @@ export default { // TODO: Open Modal For Get Section }, - logout({ commit }) { - UserService.logout() + async logout({ commit }) { + const result = await UserService.logout(); commit('logoutSuccess') router.push('/login') },