From cdb062844f96f8b21f76e3c5c3bfca8b148dfbcd Mon Sep 17 00:00:00 2001 From: MatheusMello Date: Sep 12 2017 19:58:21 +0000 Subject: [PATCH 1/22] disabling mock --- diff --git a/src/components/List.vue b/src/components/List.vue index bae7f43..38a2e77 100644 --- a/src/components/List.vue +++ b/src/components/List.vue @@ -33,12 +33,10 @@ export default({ self.disabled = true self.notUpdating = false - setTimeout(function () { - self.disabled = false - self.notUpdating = true - }, 2000) getPackages().then(response => { this.tableData = parseApiData(response.data.packages) + self.disabled = false + self.notUpdating = true console.log(response) }) }, From fe0b307af806b2f53b9a1ef983a0e7e73a62029e Mon Sep 17 00:00:00 2001 From: MatheusMello Date: Sep 12 2017 19:59:24 +0000 Subject: [PATCH 2/22] Merge branch 'autorefresh_48' of ssh://pagure.io/forks/kiskadeemes/kiskadee/kiskadee_ui into autorefresh_48 --- diff --git a/.gitignore b/.gitignore index cce8044..faf2133 100644 --- a/.gitignore +++ b/.gitignore @@ -5,7 +5,7 @@ npm-debug.log* yarn-debug.log* yarn-error.log* test/unit/coverage -*.lock.json +*lock.json # Editor directories and files .idea diff --git a/config/index.js b/config/index.js index 196da1f..c0e698d 100644 --- a/config/index.js +++ b/config/index.js @@ -27,7 +27,12 @@ module.exports = { autoOpenBrowser: true, assetsSubDirectory: 'static', assetsPublicPath: '/', - proxyTable: {}, + proxyTable: { + '/api': { + target: 'http://localhost:5000', + changeOrigin: true + } + }, // CSS Sourcemaps off by default because relative paths are "buggy" // with this option, according to the CSS-Loader README // (https://github.com/webpack/css-loader#sourcemaps) diff --git a/index.html b/index.html index 713d8dd..a4a551b 100644 --- a/index.html +++ b/index.html @@ -1,10 +1,12 @@ - - - -
- -
- -
-
+ + + + Kiskadee + + + + +
+ + diff --git a/package.json b/package.json index e906dad..8ca4576 100644 --- a/package.json +++ b/package.json @@ -13,13 +13,18 @@ "lint": "eslint --ext .js,.vue src test/unit/specs" }, "dependencies": { + "css-loader": "^0.28.7", "element-ui": "^1.4.3", + "moment": "^2.18.1", + "node-sass": "^4.5.3", + "sass-loader": "^6.0.6", "vue": "^2.3.3", "vue-awesome": "^2.3.1", "vue-data-tables": "^2.0.4", "vue-material": "^0.7.4", "vue-router": "^2.6.0", - "vue-table-component": "^1.3.0" + "vue-table-component": "^1.3.0", + "vue-toastr-2": "0.0.9" }, "devDependencies": { "autoprefixer": "^7.1.2", @@ -36,7 +41,6 @@ "connect-history-api-fallback": "^1.3.0", "copy-webpack-plugin": "^4.0.1", "cross-env": "^5.0.1", - "css-loader": "^0.28.0", "cssnano": "^3.10.0", "eslint": "^3.19.0", "eslint-config-standard": "^6.2.1", diff --git a/src/App.vue b/src/App.vue index e9bd7e8..1b90d41 100644 --- a/src/App.vue +++ b/src/App.vue @@ -1,31 +1,20 @@ + + diff --git a/src/api/index.js b/src/api/index.js new file mode 100644 index 0000000..f00eb03 --- /dev/null +++ b/src/api/index.js @@ -0,0 +1,9 @@ +import axios from 'axios' + +let axiosApi = axios.create({ + // baseURL: '/api', + baseURL: 'http://localhost:5000', + timeout: 1000 +}) + +export default axiosApi diff --git a/src/api/packages.js b/src/api/packages.js new file mode 100644 index 0000000..3379371 --- /dev/null +++ b/src/api/packages.js @@ -0,0 +1,7 @@ +import axiosApi from './index' + +export default { + get: () => { + return axiosApi.get('/packages') + } +} diff --git a/src/components/Header.vue b/src/components/Header.vue deleted file mode 100644 index c869f1c..0000000 --- a/src/components/Header.vue +++ /dev/null @@ -1,56 +0,0 @@ - - - - - - diff --git a/src/components/Hello.vue b/src/components/Hello.vue deleted file mode 100644 index 2d80539..0000000 --- a/src/components/Hello.vue +++ /dev/null @@ -1,53 +0,0 @@ - - - - - - diff --git a/src/components/List.vue b/src/components/List.vue deleted file mode 100644 index 38a2e77..0000000 --- a/src/components/List.vue +++ /dev/null @@ -1,92 +0,0 @@ - - - - - - diff --git a/src/components/home/Home.vue b/src/components/home/Home.vue new file mode 100644 index 0000000..7341376 --- /dev/null +++ b/src/components/home/Home.vue @@ -0,0 +1,22 @@ + + + + + \ No newline at end of file diff --git a/src/components/packages/List.vue b/src/components/packages/List.vue new file mode 100644 index 0000000..38a2e77 --- /dev/null +++ b/src/components/packages/List.vue @@ -0,0 +1,92 @@ + + + + + + diff --git a/src/components/shared/HeaderK.vue b/src/components/shared/HeaderK.vue new file mode 100644 index 0000000..d2e69e5 --- /dev/null +++ b/src/components/shared/HeaderK.vue @@ -0,0 +1,36 @@ + + + + + diff --git a/src/main.js b/src/main.js index 13891b8..318d2e5 100644 --- a/src/main.js +++ b/src/main.js @@ -1,9 +1,8 @@ -// The Vue build version to load with the `import` command -// (runtime-only or standalone) has been set in webpack.base.conf with an alias. import Vue from 'vue' import App from './App' -import Header from './components/Header' -import List from './components/List' + +import VueRouter from 'vue-router' +import { routes } from './router/routes' import 'vue-awesome/icons' import Icon from 'vue-awesome/components/Icon' @@ -17,9 +16,11 @@ locale.use(lang) Vue.use(ElementUI) Vue.use(DataTables) -var VueMaterial = require('vue-material') +import VueMaterial from 'vue-material' Vue.use(VueMaterial) +Vue.use(VueRouter) + Vue.material.registerTheme('default', { primary: { color: 'teal', @@ -33,22 +34,14 @@ Vue.material.registerTheme('default', { Vue.config.productionTip = false /* eslint-disable no-new */ -new Vue({ - el: '#app', - template: '', - components: { App } -}) - -new Vue({ - el: '#header', - template: '
', - components: { Header } +const router = new VueRouter({ + routes: routes }) new Vue({ - el: '#list', - template: '', - components: { List } + el: '#app', + router: router, + render: h => h(App) }) Vue.component('icon', Icon) diff --git a/src/router/index.js b/src/router/index.js deleted file mode 100644 index 5bf9ea6..0000000 --- a/src/router/index.js +++ /dev/null @@ -1,15 +0,0 @@ -import Vue from 'vue' -import Router from 'vue-router' -import Hello from '@/components/Hello' - -Vue.use(Router) - -export default new Router({ - routes: [ - { - path: '/', - name: 'Hello', - component: Hello - } - ] -}) diff --git a/src/router/routes.js b/src/router/routes.js new file mode 100644 index 0000000..183a362 --- /dev/null +++ b/src/router/routes.js @@ -0,0 +1,5 @@ +import Home from '../components/home/Home.vue' + +export const routes = [ + { path: '', component: Home } +] From 9b63ff1547f37e7064bc35c9009a10f6dc203fe5 Mon Sep 17 00:00:00 2001 From: MatheusMello Date: Sep 12 2017 20:31:14 +0000 Subject: [PATCH 3/22] component register order --- diff --git a/src/components/List.vue b/src/components/List.vue new file mode 100644 index 0000000..38a2e77 --- /dev/null +++ b/src/components/List.vue @@ -0,0 +1,92 @@ + + + + + + diff --git a/src/main.js b/src/main.js index 318d2e5..3b300c6 100644 --- a/src/main.js +++ b/src/main.js @@ -38,10 +38,10 @@ const router = new VueRouter({ routes: routes }) +Vue.component('icon', Icon) + new Vue({ el: '#app', router: router, render: h => h(App) }) - -Vue.component('icon', Icon) From 8473d2395e2f0856dfaba9f23d30fcdfb4d986b3 Mon Sep 17 00:00:00 2001 From: MatheusMello Date: Sep 12 2017 20:40:29 +0000 Subject: [PATCH 4/22] removing duplicated file --- diff --git a/src/components/List.vue b/src/components/List.vue deleted file mode 100644 index 38a2e77..0000000 --- a/src/components/List.vue +++ /dev/null @@ -1,92 +0,0 @@ - - - - - - From 8e376bc6d6d0c8d12384691fa3af86168f56c3e0 Mon Sep 17 00:00:00 2001 From: Thiago Moreira Date: Sep 19 2017 20:28:02 +0000 Subject: [PATCH 5/22] Adding bootstrap --- diff --git a/package.json b/package.json index 53af5fd..964e5b3 100644 --- a/package.json +++ b/package.json @@ -33,6 +33,7 @@ "babel-preset-env": "^1.3.2", "babel-preset-stage-2": "^6.22.0", "babel-register": "^6.22.0", + "bootstrap-vue": "^1.0.0-beta.7", "chai": "^3.5.0", "chalk": "^2.0.1", "connect-history-api-fallback": "^1.3.0", diff --git a/src/main.js b/src/main.js index a025eca..668d5fd 100644 --- a/src/main.js +++ b/src/main.js @@ -10,6 +10,7 @@ import ElementUI from 'element-ui' import 'element-ui/lib/theme-default/index.css' import lang from 'element-ui/lib/locale/lang/en' import locale from 'element-ui/lib/locale' +import BootstrapVue from 'bootstrap-vue' locale.use(lang) @@ -18,6 +19,11 @@ Vue.use(DataTables) import VueMaterial from 'vue-material' Vue.use(VueMaterial) +import 'bootstrap/dist/css/bootstrap.css' +import 'bootstrap-vue/dist/bootstrap-vue.css' + +Vue.use(BootstrapVue) + Vue.use(VueRouter) Vue.material.registerTheme('default', { @@ -27,7 +33,7 @@ Vue.material.registerTheme('default', { }, accent: 'black', warn: 'black', - background: 'black' + background: 'white' }) Vue.config.productionTip = false From 2196096a90de9b44fa233c8497ed21e55dc3301f Mon Sep 17 00:00:00 2001 From: MatheusMello Date: Sep 19 2017 21:42:12 +0000 Subject: [PATCH 6/22] Search Component Signed-off-by: MatheusMello Signed-off-by: ThiagoMoreira --- diff --git a/src/components/home/Home.vue b/src/components/home/Home.vue index 7341376..6b436ba 100644 --- a/src/components/home/Home.vue +++ b/src/components/home/Home.vue @@ -1,6 +1,7 @@ @@ -8,9 +9,11 @@ + + diff --git a/src/main.js b/src/main.js index 668d5fd..1da55c8 100644 --- a/src/main.js +++ b/src/main.js @@ -12,6 +12,10 @@ import lang from 'element-ui/lib/locale/lang/en' import locale from 'element-ui/lib/locale' import BootstrapVue from 'bootstrap-vue' +import 'vue-awesome/icons' +import Icon from 'vue-awesome/components/Icon' +Vue.component('icon', Icon) + locale.use(lang) Vue.use(ElementUI) From acbb6a901dd9eb8a98af9b3bce1947b910442c35 Mon Sep 17 00:00:00 2001 From: MatheusMello Date: Sep 19 2017 21:58:29 +0000 Subject: [PATCH 7/22] Search component styles Signed-off-by: MatheusMello Signed-off-by: ThiagoMoreira --- diff --git a/src/components/packages/Search.vue b/src/components/packages/Search.vue index d9faa33..444896f 100644 --- a/src/components/packages/Search.vue +++ b/src/components/packages/Search.vue @@ -46,16 +46,17 @@ export default { h1 { margin-top: 30px; text-transform: uppercase; - text-size: 4em; + font-size: 4em; line-height: 1; - font-weight: 300; + font-weight: 200; } h4 { - margin-top: -10px; - font-size: 1.4em; + margin: 5px 0; + font-size: 1.3em; font-weight: 300; - color: rgb(31, 48, 90); + color: #2066AC; + /*color: rgb(31, 48, 90);*/ } .wrapper { @@ -79,6 +80,14 @@ h4 { color: black; } + input { + margin-top: 20px; + padding: 8px 5px; + width: 450px; + font-size: 1.2em; + line-height: 30px; + } + input:focus { border-color: rgb(31, 48, 90); box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(31, 48, 90, 0.6); diff --git a/static/grey.jpg b/static/grey.jpg new file mode 100644 index 0000000..35ebb92 Binary files /dev/null and b/static/grey.jpg differ From e8473cbc8aae713d54461746cc1027afeeccbf72 Mon Sep 17 00:00:00 2001 From: MatheusMello Date: Sep 21 2017 20:41:39 +0000 Subject: [PATCH 8/22] Search Component Signed-off-by: MatheusMello Signed-off-by: ThiagoMoreira --- diff --git a/src/components/packages/Search.vue b/src/components/packages/Search.vue index 444896f..0541538 100644 --- a/src/components/packages/Search.vue +++ b/src/components/packages/Search.vue @@ -7,18 +7,19 @@
-

2 new projects recently added

+

2 new packages recently added

-
-
- - - - +
+
+
+ + + + +
-
@@ -36,10 +37,22 @@ export default { \ No newline at end of file + diff --git a/src/components/packages/Search.vue b/src/components/packages/Search.vue new file mode 100644 index 0000000..ffa3f87 --- /dev/null +++ b/src/components/packages/Search.vue @@ -0,0 +1,139 @@ + + + + + diff --git a/src/main.js b/src/main.js index 5fd43a7..7729772 100644 --- a/src/main.js +++ b/src/main.js @@ -14,6 +14,10 @@ import lang from 'element-ui/lib/locale/lang/en' import locale from 'element-ui/lib/locale' import BootstrapVue from 'bootstrap-vue' +import 'vue-awesome/icons' +import Icon from 'vue-awesome/components/Icon' +Vue.component('icon', Icon) + locale.use(lang) Vue.use(ElementUI) diff --git a/src/store/actionTypes.js b/src/store/actionTypes.js index bf553e5..14876ae 100644 --- a/src/store/actionTypes.js +++ b/src/store/actionTypes.js @@ -1 +1,2 @@ export const FETCH_PACKAGES = 'fetchPackages' +export const FILTERED_PACKAGES = 'filteredPackages' diff --git a/src/store/getterNames.js b/src/store/getterNames.js index f1e1aba..dcfa1a9 100644 --- a/src/store/getterNames.js +++ b/src/store/getterNames.js @@ -1 +1,2 @@ export const allPackages = 'allPackages' +export const filteredPackages = 'filteredPackages' diff --git a/src/store/modules/packages.js b/src/store/modules/packages.js index 9d92df5..a57c996 100644 --- a/src/store/modules/packages.js +++ b/src/store/modules/packages.js @@ -1,35 +1,80 @@ -import api from '../../api/packages' +// import api from '../../api/packages' import * as actionTypes from '../actionTypes' import * as getterNames from '../getterNames' import * as mutationTypes from '../mutationsTypes' +const mockedPackages = [ + { + name: 'example1', + last_version: '0.1' + }, + { + name: 'foo1', + last_version: '0.2' + }, + { + name: 'example2', + last_version: '0.3' + } +] + const state = { - allPackages: [] + allPackages: [], + filteredPackages: {} } const getters = { [getterNames.allPackages]: (state) => { return state.allPackages + }, + [getterNames.filteredPackages]: (state) => { + return state.filteredPackages } } const actions = { - async [actionTypes.FETCH_PACKAGES] ({commit, getters, state}) { - let { data } = await api.get() + async [actionTypes.FETCH_PACKAGES] ({commit, getters, state}, search) { + // let { data } = await api.get() + console.log(`action: ${search}`) + let data = [] + if (!search) { + data = mockedPackages + } else { + data = mockedPackages.filter((pkg) => { + return pkg.name.includes(search) + }) + } commit(mutationTypes.STORE_PACKAGES, data) + }, + async [actionTypes.FILTERED_PACKAGES] ({commit, getters, state}, search) { + commit(mutationTypes.FILTER_PACKAGES, search) } } const mutations = { [mutationTypes.STORE_PACKAGES] (state, data) { - state.allPackages = data.packages.map((pkg) => { + state.allPackages = data.map((pkg) => { + return { + name: pkg.name, + last_version: pkg.last_version + } + }) + }, + [mutationTypes.FILTER_PACKAGES] (state, search) { + state.filtered = state.allPackages.map((pkg) => { return { package_id: pkg.versions[0].package_id, name: pkg.name, +<<<<<<< HEAD last_version: pkg.versions[0].number, fetcher_id: pkg.fetcher_id, analyzer_id: pkg.versions[0].analysis[0].analyzer_id +======= + last_version: pkg.last_version +>>>>>>> 12-search } + }).filter((pkg) => { + return pkg.name.includes(search) }) } } diff --git a/src/store/mutationsTypes.js b/src/store/mutationsTypes.js index fca80de..ee1f6b1 100644 --- a/src/store/mutationsTypes.js +++ b/src/store/mutationsTypes.js @@ -1 +1,2 @@ export const STORE_PACKAGES = 'STORE_PACKAGES' +export const FILTER_PACKAGES = 'FILTER_PACKAGES' From 10fb37809a82177bba603bcffa9fa8eaa1690c21 Mon Sep 17 00:00:00 2001 From: MatheusMello Date: Sep 26 2017 19:31:36 +0000 Subject: [PATCH 18/22] merge --- diff --git a/src/main.js b/src/main.js index 7729772..ad3eabe 100644 --- a/src/main.js +++ b/src/main.js @@ -14,8 +14,6 @@ import lang from 'element-ui/lib/locale/lang/en' import locale from 'element-ui/lib/locale' import BootstrapVue from 'bootstrap-vue' -import 'vue-awesome/icons' -import Icon from 'vue-awesome/components/Icon' Vue.component('icon', Icon) locale.use(lang) diff --git a/src/store/modules/packages.js b/src/store/modules/packages.js index a57c996..47fa484 100644 --- a/src/store/modules/packages.js +++ b/src/store/modules/packages.js @@ -65,13 +65,9 @@ const mutations = { return { package_id: pkg.versions[0].package_id, name: pkg.name, -<<<<<<< HEAD - last_version: pkg.versions[0].number, + last_version: pkg.last_version, fetcher_id: pkg.fetcher_id, analyzer_id: pkg.versions[0].analysis[0].analyzer_id -======= - last_version: pkg.last_version ->>>>>>> 12-search } }).filter((pkg) => { return pkg.name.includes(search) From edfd9f6e7833e398549c21c0cf04a84378d2b8fc Mon Sep 17 00:00:00 2001 From: Omar Junior Date: Sep 26 2017 20:57:41 +0000 Subject: [PATCH 19/22] Adding last update table time --- diff --git a/src/components/packages/List.vue b/src/components/packages/List.vue index 3208b61..c2f417c 100644 --- a/src/components/packages/List.vue +++ b/src/components/packages/List.vue @@ -1,7 +1,8 @@ @@ -10,6 +11,7 @@ import { mapActions, mapGetters } from 'vuex' import * as actionTypes from '../../store/actionTypes.js' import * as getterNames from '../../store/getterNames.js' +import moment from 'moment' const items = [ { Name: 'Debian', Version: 1.0, Upstream: 'http://ftp.us.debian.org/debian' }, @@ -20,6 +22,7 @@ const items = [ export default({ data () { return { + updateData: null, notUpdating: true, disabled: false, items: items, @@ -49,6 +52,7 @@ export default({ this.notUpdating = true }, 1000) }) + this.updateData = moment().calendar() }, updateAnimation () { this.notUpdating = true From 7d977d9ba12153dad1b30e246d62deab1363e1d5 Mon Sep 17 00:00:00 2001 From: eduqg Date: Sep 26 2017 21:30:15 +0000 Subject: [PATCH 20/22] Inserting message for sucess and import error --- diff --git a/src/components/packages/List.vue b/src/components/packages/List.vue index 3208b61..fa7566b 100644 --- a/src/components/packages/List.vue +++ b/src/components/packages/List.vue @@ -1,7 +1,22 @@ @@ -27,7 +42,10 @@ export default({ show: false }, currentRow: null, - timer: '' + timer: '', + dismissSecs: 3, + sucessCountDown: 0, + errorCountDown: 0 } }, computed: { @@ -44,7 +62,8 @@ export default({ }, updateTable () { this.notUpdating = false - this.fetchPackages().then((res) => { + this.fetchPackages().then(async response => { + this.showAlert(response) setTimeout(() => { this.notUpdating = true }, 1000) @@ -53,6 +72,19 @@ export default({ updateAnimation () { this.notUpdating = true setTimeout(function () { console.log(this.notUpdating) }, 3000) + }, + successCountDownChanged (sucessCountDown) { + this.sucessCountDown = sucessCountDown + }, + errorCountDownChanged (errorCountDown) { + this.errorCountDown = errorCountDown + }, + showAlert (sucessMessage) { + if (sucessMessage === true) { + this.sucessCountDown = this.dismissSecs + } else { + this.errorCountDown = this.dismissSecs + } } }, created () { diff --git a/src/store/modules/packages.js b/src/store/modules/packages.js index 47fa484..3f37f35 100644 --- a/src/store/modules/packages.js +++ b/src/store/modules/packages.js @@ -45,6 +45,12 @@ const actions = { }) } commit(mutationTypes.STORE_PACKAGES, data) + + if (data.length === 0) { + return false + } else { + return true + } }, async [actionTypes.FILTERED_PACKAGES] ({commit, getters, state}, search) { commit(mutationTypes.FILTER_PACKAGES, search) From 00b52126adcfdd2015aab5d0418efa00553878ec Mon Sep 17 00:00:00 2001 From: MatheusMello Date: Sep 26 2017 21:32:55 +0000 Subject: [PATCH 21/22] merge message import --- diff --git a/src/components/packages/List.vue b/src/components/packages/List.vue index c2f417c..550f13c 100644 --- a/src/components/packages/List.vue +++ b/src/components/packages/List.vue @@ -1,5 +1,20 @@