From fca70de0ed60719b8a8e6dc2f3f077ad44a260c7 Mon Sep 17 00:00:00 2001 From: German Bortoli Date: Fri, 10 Feb 2017 16:11:41 -0500 Subject: [PATCH 1/2] Added paginated users with matfish2/vue-tables plugins --- app/Api/Controllers/UsersController.php | 8 +- .../Eloquent/UserRepositoryEloquent.php | 3 + package.json | 1 + public/assets/js/app.main.js | 1316 +++++++++++++++-- public/assets/js/console.main.js | 400 ++--- public/assets/js/manifest.js | 2 +- public/assets/js/mobile.main.js | 549 +++---- public/assets/js/vendor.js | 5 +- resources/assets/js/app.js | 2 + .../js/components/app/users/UserList.vue | 72 +- 10 files changed, 1744 insertions(+), 614 deletions(-) diff --git a/app/Api/Controllers/UsersController.php b/app/Api/Controllers/UsersController.php index 523a43d7..753c323f 100644 --- a/app/Api/Controllers/UsersController.php +++ b/app/Api/Controllers/UsersController.php @@ -8,8 +8,10 @@ use Prettus\Validator\Contracts\ValidatorInterface; use Someline\Http\Requests\UserCreateRequest; use Someline\Http\Requests\UserUpdateRequest; +use Someline\Models\Foundation\User; use Someline\Repositories\Interfaces\UserRepository; use Someline\Validators\UserValidator; +use Illuminate\Http\Request; class UsersController extends BaseController { @@ -37,9 +39,11 @@ public function __construct(UserRepository $repository, UserValidator $validator * * @return \Illuminate\Http\Response */ - public function index() + public function index(Request $request) { - return $this->repository->all(); + $per_page = $request->input('per_page', config('repository.pagination.limit', 15)); + + return $this->repository->paginate($per_page); } /** diff --git a/app/Repositories/Eloquent/UserRepositoryEloquent.php b/app/Repositories/Eloquent/UserRepositoryEloquent.php index 49c504bc..a6415ba8 100644 --- a/app/Repositories/Eloquent/UserRepositoryEloquent.php +++ b/app/Repositories/Eloquent/UserRepositoryEloquent.php @@ -14,6 +14,9 @@ */ class UserRepositoryEloquent extends BaseRepository implements UserRepository { + protected $fieldSearchable = [ + 'name', + ]; /** * Specify Model class name * diff --git a/package.json b/package.json index b486f28c..a5f24179 100644 --- a/package.json +++ b/package.json @@ -25,6 +25,7 @@ "dependencies": { "autosize": "^3.0.20", "moment": "^2.17.1", + "vue-datasource": "^1.0.4", "vue-i18n": "^5.0.0", "vue-router": "^2.2.0", "vuex": "^2.1.2" diff --git a/public/assets/js/app.main.js b/public/assets/js/app.main.js index 168d18a2..1933e836 100644 --- a/public/assets/js/app.main.js +++ b/public/assets/js/app.main.js @@ -255,7 +255,7 @@ Vue.component('autosize-textarea', __webpack_require__(19)); */ Vue.component('example', __webpack_require__(18)); -Vue.component('sl-user-list', __webpack_require__(201)); +Vue.component('sl-user-list', __webpack_require__(202)); // Bus var bus = new Vue({ @@ -372,6 +372,8 @@ exports.push([module.i, "\n\n\n\n\n\n\n", "", {"version":3,"sources":[],"names": "use strict"; Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_vue_datasource__ = __webpack_require__(201); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_vue_datasource___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_vue_datasource__); // // // @@ -398,19 +400,28 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); // // // +// + /* harmony default export */ __webpack_exports__["default"] = { props: [], data: function data() { return { - // msg: 'hello vue', - items: [] + pagination: {}, + items: [], + columns: [{ name: 'email', key: 'email' }, { name: 'name', key: 'name' }], + options: { + page: 1, + perpage: 15, + query: '' + } }; }, computed: {}, components: { - 'sl-user-list-item': __webpack_require__(202) + 'sl-user-list-item': __webpack_require__(203), + Datasource: __WEBPACK_IMPORTED_MODULE_0_vue_datasource___default.a }, mounted: function mounted() { console.log('Component Ready.'); @@ -421,16 +432,54 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); watch: {}, events: {}, methods: { - fetchData: function fetchData() { + buildPaginator: function buildPaginator(pagination) { + // TODO: Make build paginator global + var pager = { + total: pagination.total, + per_page: pagination.per_page, + current_page: pagination.current_page, + last_page: pagination.total_pages, + from: 1, + to: pagination.per_page + }; + return pager; + }, + changePage: function changePage(values) { + this.fetchData(values); + }, + onSearch: function onSearch(query) { + + var options = { + 'query': query, + 'page': 1 + }; + + this.fetchData(options); + }, + fetchData: function fetchData(options) { var _this = this; - this.$api.get('/users', { + if (typeof options == 'undefined') { + options = {}; + } + + options.page = options.page || this.options.page; + options.perpage = options.perpage || this.options.perpage; + + if (typeof options.query == 'undefined') { + options.query = this.options.query; + } + + this.options = options; + + //@TODO: Build the query parameter in a proper way + this.$api.get('/users?page=' + options.page + '&per_page=' + options.perpage + '&search=' + options.query + '&searchFields=name:like', { params: { // include: '' } }).then(function (response) { - console.log(response); _this.items = response.data.data; + _this.pagination = _this.buildPaginator(response.data.meta.pagination); }.bind(this)).catch(function (error) { console.error(error); }.bind(this)); @@ -492,13 +541,13 @@ var Component = __webpack_require__(1)( /* script */ __webpack_require__(5), /* template */ - __webpack_require__(20), + __webpack_require__(21), /* scopeId */ null, /* cssModules */ null ) -Component.options.__file = "/Users/libern/Code/someline-starter-master/resources/assets/js/components/Example.vue" +Component.options.__file = "/Users/german/Sites/someline-starter/resources/assets/js/components/Example.vue" if (Component.esModule && Object.keys(Component.esModule).some(function (key) {return key !== "default" && key !== "__esModule"})) {console.error("named exports are not supported in *.vue files.")} if (Component.options.functional) {console.error("[vue-loader] Example.vue: functional components are not supported with templates, they should use render functions.")} @@ -509,30 +558,15 @@ if (false) {(function () { if (!hotAPI.compatible) return module.hot.accept() if (!module.hot.data) { - hotAPI.createRecord("data-v-a47b3826", Component.options) + hotAPI.createRecord("data-v-acf60a48", Component.options) } else { - hotAPI.reload("data-v-a47b3826", Component.options) + hotAPI.reload("data-v-acf60a48", Component.options) } })()} module.exports = Component.exports -/***/ }), - -/***/ 188: -/***/ (function(module, exports, __webpack_require__) { - -exports = module.exports = __webpack_require__(2)(); -// imports - - -// module -exports.push([module.i, "\n", "", {"version":3,"sources":[],"names":[],"mappings":"","file":"UserListGroupItem.vue","sourceRoot":"webpack://"}]); - -// exports - - /***/ }), /***/ 19: @@ -546,13 +580,13 @@ var Component = __webpack_require__(1)( /* script */ __webpack_require__(6), /* template */ - __webpack_require__(21), + __webpack_require__(20), /* scopeId */ - "data-v-db7829ae", + "data-v-45c5e358", /* cssModules */ null ) -Component.options.__file = "/Users/libern/Code/someline-starter-master/resources/assets/js/essentials/autosize-textarea.vue" +Component.options.__file = "/Users/german/Sites/someline-starter/resources/assets/js/essentials/autosize-textarea.vue" if (Component.esModule && Object.keys(Component.esModule).some(function (key) {return key !== "default" && key !== "__esModule"})) {console.error("named exports are not supported in *.vue files.")} if (Component.options.functional) {console.error("[vue-loader] autosize-textarea.vue: functional components are not supported with templates, they should use render functions.")} @@ -563,9 +597,9 @@ if (false) {(function () { if (!hotAPI.compatible) return module.hot.accept() if (!module.hot.data) { - hotAPI.createRecord("data-v-db7829ae", Component.options) + hotAPI.createRecord("data-v-45c5e358", Component.options) } else { - hotAPI.reload("data-v-db7829ae", Component.options) + hotAPI.reload("data-v-45c5e358", Component.options) } })()} @@ -574,7 +608,7 @@ module.exports = Component.exports /***/ }), -/***/ 197: +/***/ 193: /***/ (function(module, exports, __webpack_require__) { exports = module.exports = __webpack_require__(2)(); @@ -587,6 +621,21 @@ exports.push([module.i, "\n", "", {"version":3,"sources":[],"names":[],"mappings // exports +/***/ }), + +/***/ 194: +/***/ (function(module, exports, __webpack_require__) { + +exports = module.exports = __webpack_require__(2)(); +// imports + + +// module +exports.push([module.i, "\n", "", {"version":3,"sources":[],"names":[],"mappings":"","file":"UserListGroupItem.vue","sourceRoot":"webpack://"}]); + +// exports + + /***/ }), /***/ 2: @@ -650,27 +699,13 @@ module.exports = function() { /***/ (function(module, exports, __webpack_require__) { module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h; - return _vm._m(0) -},staticRenderFns: [function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h; - return _c('div', { - staticClass: "container" - }, [_c('div', { - staticClass: "row" - }, [_c('div', { - staticClass: "col-md-8 col-md-offset-2" - }, [_c('div', { - staticClass: "panel panel-default" - }, [_c('div', { - staticClass: "panel-heading" - }, [_vm._v("Example Component")]), _vm._v(" "), _c('div', { - staticClass: "panel-body" - }, [_vm._v("\n I'm an example component!\n ")])])])])]) -}]} + return _c('textarea') +},staticRenderFns: []} module.exports.render._withStripped = true if (false) { module.hot.accept() if (module.hot.data) { - require("vue-hot-reload-api").rerender("data-v-a47b3826", module.exports) + require("vue-hot-reload-api").rerender("data-v-45c5e358", module.exports) } } @@ -679,21 +714,1039 @@ if (false) { /***/ 201: /***/ (function(module, exports, __webpack_require__) { +(function webpackUniversalModuleDefinition(root, factory) { + if(true) + module.exports = factory(); + else if(typeof define === 'function' && define.amd) + define([], factory); + else if(typeof exports === 'object') + exports["VueDatasourceComponent"] = factory(); + else + root["VueDatasourceComponent"] = factory(); +})(this, function() { +return /******/ (function(modules) { // webpackBootstrap +/******/ // The module cache +/******/ var installedModules = {}; +/******/ +/******/ // The require function +/******/ function __webpack_require__(moduleId) { +/******/ +/******/ // Check if module is in cache +/******/ if(installedModules[moduleId]) +/******/ return installedModules[moduleId].exports; +/******/ +/******/ // Create a new module (and put it into the cache) +/******/ var module = installedModules[moduleId] = { +/******/ exports: {}, +/******/ id: moduleId, +/******/ loaded: false +/******/ }; +/******/ +/******/ // Execute the module function +/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); +/******/ +/******/ // Flag the module as loaded +/******/ module.loaded = true; +/******/ +/******/ // Return the exports of the module +/******/ return module.exports; +/******/ } +/******/ +/******/ +/******/ // expose the modules object (__webpack_modules__) +/******/ __webpack_require__.m = modules; +/******/ +/******/ // expose the module cache +/******/ __webpack_require__.c = installedModules; +/******/ +/******/ // __webpack_public_path__ +/******/ __webpack_require__.p = "/dist/"; +/******/ +/******/ // Load entry module and return exports +/******/ return __webpack_require__(0); +/******/ }) +/************************************************************************/ +/******/ ([ +/* 0 */ +/***/ function(module, exports, __webpack_require__) { + + 'use strict'; + + module.exports = __webpack_require__(9); + +/***/ }, +/* 1 */ +/***/ function(module, exports) { + + /* + MIT License http://www.opensource.org/licenses/mit-license.php + Author Tobias Koppers @sokra + */ + // css base code, injected by the css-loader + module.exports = function() { + var list = []; + + // return the list of modules as css string + list.toString = function toString() { + var result = []; + for(var i = 0; i < this.length; i++) { + var item = this[i]; + if(item[2]) { + result.push("@media " + item[2] + "{" + item[1] + "}"); + } else { + result.push(item[1]); + } + } + return result.join(""); + }; + + // import a list of modules into the list + list.i = function(modules, mediaQuery) { + if(typeof modules === "string") + modules = [[null, modules, ""]]; + var alreadyImportedModules = {}; + for(var i = 0; i < this.length; i++) { + var id = this[i][0]; + if(typeof id === "number") + alreadyImportedModules[id] = true; + } + for(i = 0; i < modules.length; i++) { + var item = modules[i]; + // skip already imported module + // this implementation is not 100% perfect for weird media query combinations + // when a module is imported multiple times with different media queries. + // I hope this will never occur (Hey this way we have smaller bundles) + if(typeof item[0] !== "number" || !alreadyImportedModules[item[0]]) { + if(mediaQuery && !item[2]) { + item[2] = mediaQuery; + } else if(mediaQuery) { + item[2] = "(" + item[2] + ") and (" + mediaQuery + ")"; + } + list.push(item); + } + } + }; + return list; + }; + + +/***/ }, +/* 2 */ +/***/ function(module, exports, __webpack_require__) { + + /* + MIT License http://www.opensource.org/licenses/mit-license.php + Author Tobias Koppers @sokra + */ + var stylesInDom = {}, + memoize = function(fn) { + var memo; + return function () { + if (typeof memo === "undefined") memo = fn.apply(this, arguments); + return memo; + }; + }, + isOldIE = memoize(function() { + return /msie [6-9]\b/.test(window.navigator.userAgent.toLowerCase()); + }), + getHeadElement = memoize(function () { + return document.head || document.getElementsByTagName("head")[0]; + }), + singletonElement = null, + singletonCounter = 0, + styleElementsInsertedAtTop = []; + + module.exports = function(list, options) { + if(false) { + if(typeof document !== "object") throw new Error("The style-loader cannot be used in a non-browser environment"); + } + + options = options || {}; + // Force single-tag solution on IE6-9, which has a hard limit on the # of \n\n\n\n\n"],"sourceRoot":"webpack://"}]); - -// exports - - -/***/ }), - -/***/ 189: -/***/ (function(module, exports, __webpack_require__) { - -exports = module.exports = __webpack_require__(2)(); -// imports - - -// module -exports.push([module.i, "\n.action-link[data-v-31728d50] {\n cursor: pointer;\n}\n.m-b-none[data-v-31728d50] {\n margin-bottom: 0;\n}\n", "", {"version":3,"sources":["/./resources/assets/js/components/passport/Clients.vue?0a388e40"],"names":[],"mappings":";AACA;IACA,gBAAA;CACA;AAEA;IACA,iBAAA;CACA","file":"Clients.vue","sourcesContent":["\n\n\n\n\n"],"sourceRoot":"webpack://"}]); - -// exports - - /***/ }), /***/ 19: @@ -1272,13 +1242,13 @@ var Component = __webpack_require__(1)( /* script */ __webpack_require__(6), /* template */ - __webpack_require__(21), + __webpack_require__(20), /* scopeId */ - "data-v-db7829ae", + "data-v-45c5e358", /* cssModules */ null ) -Component.options.__file = "/Users/libern/Code/someline-starter-master/resources/assets/js/essentials/autosize-textarea.vue" +Component.options.__file = "/Users/german/Sites/someline-starter/resources/assets/js/essentials/autosize-textarea.vue" if (Component.esModule && Object.keys(Component.esModule).some(function (key) {return key !== "default" && key !== "__esModule"})) {console.error("named exports are not supported in *.vue files.")} if (Component.options.functional) {console.error("[vue-loader] autosize-textarea.vue: functional components are not supported with templates, they should use render functions.")} @@ -1289,9 +1259,9 @@ if (false) {(function () { if (!hotAPI.compatible) return module.hot.accept() if (!module.hot.data) { - hotAPI.createRecord("data-v-db7829ae", Component.options) + hotAPI.createRecord("data-v-45c5e358", Component.options) } else { - hotAPI.reload("data-v-db7829ae", Component.options) + hotAPI.reload("data-v-45c5e358", Component.options) } })()} @@ -1300,7 +1270,7 @@ module.exports = Component.exports /***/ }), -/***/ 196: +/***/ 191: /***/ (function(module, exports, __webpack_require__) { exports = module.exports = __webpack_require__(2)(); @@ -1308,7 +1278,37 @@ exports = module.exports = __webpack_require__(2)(); // module -exports.push([module.i, "\n.action-link[data-v-af1adf44] {\n cursor: pointer;\n}\n.m-b-none[data-v-af1adf44] {\n margin-bottom: 0;\n}\n", "", {"version":3,"sources":["/./resources/assets/js/components/passport/PersonalAccessTokens.vue?17591698"],"names":[],"mappings":";AACA;IACA,gBAAA;CACA;AAEA;IACA,iBAAA;CACA","file":"PersonalAccessTokens.vue","sourcesContent":["\n\n\n\n\n"],"sourceRoot":"webpack://"}]); +exports.push([module.i, "\n.action-link[data-v-1e9d7f49] {\n cursor: pointer;\n}\n.m-b-none[data-v-1e9d7f49] {\n margin-bottom: 0;\n}\n", "", {"version":3,"sources":["/./resources/assets/js/components/passport/Clients.vue?0a388e40"],"names":[],"mappings":";AACA;IACA,gBAAA;CACA;AAEA;IACA,iBAAA;CACA","file":"Clients.vue","sourcesContent":["\n\n\n\n\n"],"sourceRoot":"webpack://"}]); + +// exports + + +/***/ }), + +/***/ 192: +/***/ (function(module, exports, __webpack_require__) { + +exports = module.exports = __webpack_require__(2)(); +// imports + + +// module +exports.push([module.i, "\n.action-link[data-v-4a628be6] {\n cursor: pointer;\n}\n.m-b-none[data-v-4a628be6] {\n margin-bottom: 0;\n}\n", "", {"version":3,"sources":["/./resources/assets/js/components/passport/PersonalAccessTokens.vue?17591698"],"names":[],"mappings":";AACA;IACA,gBAAA;CACA;AAEA;IACA,iBAAA;CACA","file":"PersonalAccessTokens.vue","sourcesContent":["\n\n\n\n\n"],"sourceRoot":"webpack://"}]); + +// exports + + +/***/ }), + +/***/ 198: +/***/ (function(module, exports, __webpack_require__) { + +exports = module.exports = __webpack_require__(2)(); +// imports + + +// module +exports.push([module.i, "\n.action-link[data-v-9a389924] {\n cursor: pointer;\n}\n.m-b-none[data-v-9a389924] {\n margin-bottom: 0;\n}\n", "", {"version":3,"sources":["/./resources/assets/js/components/passport/AuthorizedClients.vue?b2c8c1ec"],"names":[],"mappings":";AACA;IACA,gBAAA;CACA;AAEA;IACA,iBAAA;CACA","file":"AuthorizedClients.vue","sourcesContent":["\n\n\n\n\n"],"sourceRoot":"webpack://"}]); // exports @@ -1376,46 +1376,32 @@ module.exports = function() { /***/ (function(module, exports, __webpack_require__) { module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h; - return _vm._m(0) -},staticRenderFns: [function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h; - return _c('div', { - staticClass: "container" - }, [_c('div', { - staticClass: "row" - }, [_c('div', { - staticClass: "col-md-8 col-md-offset-2" - }, [_c('div', { - staticClass: "panel panel-default" - }, [_c('div', { - staticClass: "panel-heading" - }, [_vm._v("Example Component")]), _vm._v(" "), _c('div', { - staticClass: "panel-body" - }, [_vm._v("\n I'm an example component!\n ")])])])])]) -}]} + return _c('textarea') +},staticRenderFns: []} module.exports.render._withStripped = true if (false) { module.hot.accept() if (module.hot.data) { - require("vue-hot-reload-api").rerender("data-v-a47b3826", module.exports) + require("vue-hot-reload-api").rerender("data-v-45c5e358", module.exports) } } /***/ }), -/***/ 203: +/***/ 204: /***/ (function(module, exports, __webpack_require__) { var Component = __webpack_require__(1)( /* script */ __webpack_require__(173), /* template */ - __webpack_require__(225), + __webpack_require__(229), /* scopeId */ null, /* cssModules */ null ) -Component.options.__file = "/Users/libern/Code/someline-starter-master/resources/assets/js/components/console/OAuth.vue" +Component.options.__file = "/Users/german/Sites/someline-starter/resources/assets/js/components/console/OAuth.vue" if (Component.esModule && Object.keys(Component.esModule).some(function (key) {return key !== "default" && key !== "__esModule"})) {console.error("named exports are not supported in *.vue files.")} if (Component.options.functional) {console.error("[vue-loader] OAuth.vue: functional components are not supported with templates, they should use render functions.")} @@ -1426,9 +1412,9 @@ if (false) {(function () { if (!hotAPI.compatible) return module.hot.accept() if (!module.hot.data) { - hotAPI.createRecord("data-v-b19c587c", Component.options) + hotAPI.createRecord("data-v-d9c5891e", Component.options) } else { - hotAPI.reload("data-v-b19c587c", Component.options) + hotAPI.reload("data-v-d9c5891e", Component.options) } })()} @@ -1441,36 +1427,50 @@ module.exports = Component.exports /***/ (function(module, exports, __webpack_require__) { module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h; - return _c('textarea') -},staticRenderFns: []} + return _vm._m(0) +},staticRenderFns: [function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h; + return _c('div', { + staticClass: "container" + }, [_c('div', { + staticClass: "row" + }, [_c('div', { + staticClass: "col-md-8 col-md-offset-2" + }, [_c('div', { + staticClass: "panel panel-default" + }, [_c('div', { + staticClass: "panel-heading" + }, [_vm._v("Example Component")]), _vm._v(" "), _c('div', { + staticClass: "panel-body" + }, [_vm._v("\n I'm an example component!\n ")])])])])]) +}]} module.exports.render._withStripped = true if (false) { module.hot.accept() if (module.hot.data) { - require("vue-hot-reload-api").rerender("data-v-db7829ae", module.exports) + require("vue-hot-reload-api").rerender("data-v-acf60a48", module.exports) } } /***/ }), -/***/ 212: +/***/ 213: /***/ (function(module, exports, __webpack_require__) { /* styles */ -__webpack_require__(229) +__webpack_require__(241) var Component = __webpack_require__(1)( /* script */ __webpack_require__(182), /* template */ - __webpack_require__(215), + __webpack_require__(227), /* scopeId */ - "data-v-0632e6bd", + "data-v-9a389924", /* cssModules */ null ) -Component.options.__file = "/Users/libern/Code/someline-starter-master/resources/assets/js/components/passport/AuthorizedClients.vue" +Component.options.__file = "/Users/german/Sites/someline-starter/resources/assets/js/components/passport/AuthorizedClients.vue" if (Component.esModule && Object.keys(Component.esModule).some(function (key) {return key !== "default" && key !== "__esModule"})) {console.error("named exports are not supported in *.vue files.")} if (Component.options.functional) {console.error("[vue-loader] AuthorizedClients.vue: functional components are not supported with templates, they should use render functions.")} @@ -1481,9 +1481,9 @@ if (false) {(function () { if (!hotAPI.compatible) return module.hot.accept() if (!module.hot.data) { - hotAPI.createRecord("data-v-0632e6bd", Component.options) + hotAPI.createRecord("data-v-9a389924", Component.options) } else { - hotAPI.reload("data-v-0632e6bd", Component.options) + hotAPI.reload("data-v-9a389924", Component.options) } })()} @@ -1492,24 +1492,24 @@ module.exports = Component.exports /***/ }), -/***/ 213: +/***/ 214: /***/ (function(module, exports, __webpack_require__) { /* styles */ -__webpack_require__(231) +__webpack_require__(234) var Component = __webpack_require__(1)( /* script */ __webpack_require__(183), /* template */ - __webpack_require__(217), + __webpack_require__(220), /* scopeId */ - "data-v-31728d50", + "data-v-1e9d7f49", /* cssModules */ null ) -Component.options.__file = "/Users/libern/Code/someline-starter-master/resources/assets/js/components/passport/Clients.vue" +Component.options.__file = "/Users/german/Sites/someline-starter/resources/assets/js/components/passport/Clients.vue" if (Component.esModule && Object.keys(Component.esModule).some(function (key) {return key !== "default" && key !== "__esModule"})) {console.error("named exports are not supported in *.vue files.")} if (Component.options.functional) {console.error("[vue-loader] Clients.vue: functional components are not supported with templates, they should use render functions.")} @@ -1520,9 +1520,9 @@ if (false) {(function () { if (!hotAPI.compatible) return module.hot.accept() if (!module.hot.data) { - hotAPI.createRecord("data-v-31728d50", Component.options) + hotAPI.createRecord("data-v-1e9d7f49", Component.options) } else { - hotAPI.reload("data-v-31728d50", Component.options) + hotAPI.reload("data-v-1e9d7f49", Component.options) } })()} @@ -1531,24 +1531,24 @@ module.exports = Component.exports /***/ }), -/***/ 214: +/***/ 215: /***/ (function(module, exports, __webpack_require__) { /* styles */ -__webpack_require__(238) +__webpack_require__(235) var Component = __webpack_require__(1)( /* script */ __webpack_require__(184), /* template */ - __webpack_require__(224), + __webpack_require__(221), /* scopeId */ - "data-v-af1adf44", + "data-v-4a628be6", /* cssModules */ null ) -Component.options.__file = "/Users/libern/Code/someline-starter-master/resources/assets/js/components/passport/PersonalAccessTokens.vue" +Component.options.__file = "/Users/german/Sites/someline-starter/resources/assets/js/components/passport/PersonalAccessTokens.vue" if (Component.esModule && Object.keys(Component.esModule).some(function (key) {return key !== "default" && key !== "__esModule"})) {console.error("named exports are not supported in *.vue files.")} if (Component.options.functional) {console.error("[vue-loader] PersonalAccessTokens.vue: functional components are not supported with templates, they should use render functions.")} @@ -1559,9 +1559,9 @@ if (false) {(function () { if (!hotAPI.compatible) return module.hot.accept() if (!module.hot.data) { - hotAPI.createRecord("data-v-af1adf44", Component.options) + hotAPI.createRecord("data-v-4a628be6", Component.options) } else { - hotAPI.reload("data-v-af1adf44", Component.options) + hotAPI.reload("data-v-4a628be6", Component.options) } })()} @@ -1570,54 +1570,34 @@ module.exports = Component.exports /***/ }), -/***/ 215: +/***/ 22: /***/ (function(module, exports, __webpack_require__) { -module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h; - return _c('div', [(_vm.tokens.length > 0) ? _c('div', [_c('div', { - staticClass: "panel panel-default" - }, [_c('div', { - staticClass: "panel-heading" - }, [_vm._v("Authorized Applications")]), _vm._v(" "), _c('div', { - staticClass: "panel-body" - }, [_c('table', { - staticClass: "table table-borderless m-b-none" - }, [_vm._m(0), _vm._v(" "), _c('tbody', _vm._l((_vm.tokens), function(token) { - return _c('tr', [_c('td', { - staticStyle: { - "vertical-align": "middle" - } - }, [_vm._v("\n " + _vm._s(token.client.name) + "\n ")]), _vm._v(" "), _c('td', { - staticStyle: { - "vertical-align": "middle" - } - }, [(token.scopes.length > 0) ? _c('span', [_vm._v("\n " + _vm._s(token.scopes.join(', ')) + "\n ")]) : _vm._e()]), _vm._v(" "), _c('td', { - staticStyle: { - "vertical-align": "middle" - } - }, [_c('a', { - staticClass: "action-link text-danger", - on: { - "click": function($event) { - _vm.revoke(token) - } - } - }, [_vm._v("\n Revoke\n ")])])]) - }))])])])]) : _vm._e()]) -},staticRenderFns: [function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h; - return _c('thead', [_c('tr', [_c('th', [_vm._v("Name")]), _vm._v(" "), _c('th', [_vm._v("Scopes")]), _vm._v(" "), _c('th')])]) -}]} -module.exports.render._withStripped = true -if (false) { - module.hot.accept() - if (module.hot.data) { - require("vue-hot-reload-api").rerender("data-v-0632e6bd", module.exports) - } +// style-loader: Adds some css to the DOM by adding a