From ae37b32845e0d1f6ee82af3ee0f79df75b5e4da5 Mon Sep 17 00:00:00 2001 From: mxrco Date: Tue, 6 Oct 2020 22:01:38 -0500 Subject: [PATCH] Primer avance --- package-lock.json | 69 +++++++++ package.json | 8 +- src/App.vue | 60 +++++++- src/components/prestamos/menu.vue | 101 ++++++++++++++ src/components/prestamos/tabla.vue | 27 ++++ src/config/config.js | 8 ++ src/main.js | 22 +++ src/pages/login/index.vue | 114 +++++++++++++++ src/pages/prestamos/index.vue | 140 +++++++++++++++++++ src/pages/usuarios/index.vue | 217 +++++++++++++++++++++++++++++ src/router.js | 28 ++++ src/static/icon.png | Bin 0 -> 16764 bytes 12 files changed, 787 insertions(+), 7 deletions(-) create mode 100644 src/components/prestamos/menu.vue create mode 100644 src/components/prestamos/tabla.vue create mode 100644 src/config/config.js create mode 100644 src/pages/login/index.vue create mode 100644 src/pages/prestamos/index.vue create mode 100644 src/pages/usuarios/index.vue create mode 100644 src/router.js create mode 100644 src/static/icon.png diff --git a/package-lock.json b/package-lock.json index edc2cd6..911e582 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1054,6 +1054,32 @@ "to-fast-properties": "^2.0.0" } }, + "@fortawesome/fontawesome-common-types": { + "version": "0.2.32", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-0.2.32.tgz", + "integrity": "sha512-ux2EDjKMpcdHBVLi/eWZynnPxs0BtFVXJkgHIxXRl+9ZFaHPvYamAfCzeeQFqHRjuJtX90wVnMRaMQAAlctz3w==" + }, + "@fortawesome/fontawesome-svg-core": { + "version": "1.2.32", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-1.2.32.tgz", + "integrity": "sha512-XjqyeLCsR/c/usUpdWcOdVtWFVjPbDFBTQkn2fQRrWhhUoxriQohO2RWDxLyUM8XpD+Zzg5xwJ8gqTYGDLeGaQ==", + "requires": { + "@fortawesome/fontawesome-common-types": "^0.2.32" + } + }, + "@fortawesome/free-solid-svg-icons": { + "version": "5.15.1", + "resolved": "https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-5.15.1.tgz", + "integrity": "sha512-EFMuKtzRMNbvjab/SvJBaOOpaqJfdSap/Nl6hst7CgrJxwfORR1drdTV6q1Ib/JVzq4xObdTDcT6sqTaXMqfdg==", + "requires": { + "@fortawesome/fontawesome-common-types": "^0.2.32" + } + }, + "@fortawesome/vue-fontawesome": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@fortawesome/vue-fontawesome/-/vue-fontawesome-2.0.0.tgz", + "integrity": "sha512-N3VKw7KzRfOm8hShUVldpinlm13HpvLBQgT63QS+aCrIRLwjoEUXY5Rcmttbfb6HkzZaeqjLqd/aZCQ53UjQpg==" + }, "@hapi/address": { "version": "2.1.4", "resolved": "https://registry.npmjs.org/@hapi/address/-/address-2.1.4.tgz", @@ -7938,6 +7964,12 @@ "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", "dev": true }, + "klona": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.4.tgz", + "integrity": "sha512-ZRbnvdg/NxqzC7L9Uyqzf4psi1OM4Cuc+sJAkQPjO6XkQIJTNbfK2Rsmbw8fx1p2mkZdp2FZYo2+LwXYY/uwIA==", + "dev": true + }, "last-run": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/last-run/-/last-run-1.1.1.tgz", @@ -11284,6 +11316,38 @@ } } }, + "sass-loader": { + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-10.0.2.tgz", + "integrity": "sha512-wV6NDUVB8/iEYMalV/+139+vl2LaRFlZGEd5/xmdcdzQcgmis+npyco6NsDTVOlNA3y2NV9Gcz+vHyFMIT+ffg==", + "dev": true, + "requires": { + "klona": "^2.0.3", + "loader-utils": "^2.0.0", + "neo-async": "^2.6.2", + "schema-utils": "^2.7.1", + "semver": "^7.3.2" + }, + "dependencies": { + "loader-utils": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz", + "integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + } + }, + "semver": { + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", + "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==", + "dev": true + } + } + }, "sax": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", @@ -13311,6 +13375,11 @@ "webrtc-adapter": "7.7.0" } }, + "vue-router": { + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-3.4.5.tgz", + "integrity": "sha512-ioRY5QyDpXM9TDjOX6hX79gtaMXSVDDzSlbIlyAmbHNteIL81WIVB2e+jbzV23vzxtoV0krdS2XHm+GxFg+Nxg==" + }, "vue-style-loader": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/vue-style-loader/-/vue-style-loader-4.1.2.tgz", diff --git a/package.json b/package.json index 2650bfb..5e89762 100644 --- a/package.json +++ b/package.json @@ -8,6 +8,9 @@ "lint": "vue-cli-service lint" }, "dependencies": { + "@fortawesome/fontawesome-svg-core": "^1.2.32", + "@fortawesome/free-solid-svg-icons": "^5.15.1", + "@fortawesome/vue-fontawesome": "^2.0.0", "axios": "^0.20.0", "bootstrap": "^4.5.2", "bootstrap-vue": "^2.17.3", @@ -16,7 +19,8 @@ "sweetalert2": "^10.3.5", "validator": "^13.1.17", "vue": "^2.6.11", - "vue-qrcode-reader": "^2.3.13" + "vue-qrcode-reader": "^2.3.13", + "vue-router": "^3.4.5" }, "devDependencies": { "@vue/cli-plugin-babel": "~4.5.0", @@ -28,6 +32,8 @@ "gulp": "^4.0.2", "gulp-autoprefixer": "^7.0.1", "gulp-sass": "^4.1.0", + "node-sass": "^4.14.1", + "sass-loader": "^10.0.2", "vue-template-compiler": "^2.6.11" }, "eslintConfig": { diff --git a/src/App.vue b/src/App.vue index c95ff2e..cba5da0 100644 --- a/src/App.vue +++ b/src/App.vue @@ -1,14 +1,62 @@ - +> + + diff --git a/src/components/prestamos/menu.vue b/src/components/prestamos/menu.vue new file mode 100644 index 0000000..66f5a6f --- /dev/null +++ b/src/components/prestamos/menu.vue @@ -0,0 +1,101 @@ + + + + + \ No newline at end of file diff --git a/src/components/prestamos/tabla.vue b/src/components/prestamos/tabla.vue new file mode 100644 index 0000000..3452a93 --- /dev/null +++ b/src/components/prestamos/tabla.vue @@ -0,0 +1,27 @@ + + + + + \ No newline at end of file diff --git a/src/config/config.js b/src/config/config.js new file mode 100644 index 0000000..e358102 --- /dev/null +++ b/src/config/config.js @@ -0,0 +1,8 @@ +const config = { + // api: 'https://venus.acatlan.unam.mx/ss-pruebas/', + // api: 'https://12704064.ngrok.io/', + // api: 'http://localhost:3000/', + api: 'https://venus.acatlan.unam.mx/serviciosocial', +} + +module.exports = config \ No newline at end of file diff --git a/src/main.js b/src/main.js index 63eb05f..9cad8ae 100644 --- a/src/main.js +++ b/src/main.js @@ -1,8 +1,30 @@ import Vue from 'vue' +import router from './router' import App from './App.vue' +import BootstrapVue from 'bootstrap-vue' +import 'bootstrap/dist/css/bootstrap.css' +import 'bootstrap-vue/dist/bootstrap-vue.css' +import { library } from '@fortawesome/fontawesome-svg-core' +import { + faSearch, + faBars, + faUser + +} from '@fortawesome/free-solid-svg-icons' +import { FontAwesomeIcon } from '@fortawesome/vue-fontawesome' + +library.add(faSearch) +library.add(faBars) +library.add(faUser) + + + +Vue.use(BootstrapVue) +Vue.component('font-awesome-icon', FontAwesomeIcon) Vue.config.productionTip = false new Vue({ render: h => h(App), + router }).$mount('#app') diff --git a/src/pages/login/index.vue b/src/pages/login/index.vue new file mode 100644 index 0000000..64d9301 --- /dev/null +++ b/src/pages/login/index.vue @@ -0,0 +1,114 @@ + + + + + \ No newline at end of file diff --git a/src/pages/prestamos/index.vue b/src/pages/prestamos/index.vue new file mode 100644 index 0000000..c8a2034 --- /dev/null +++ b/src/pages/prestamos/index.vue @@ -0,0 +1,140 @@ + + + + + \ No newline at end of file diff --git a/src/pages/usuarios/index.vue b/src/pages/usuarios/index.vue new file mode 100644 index 0000000..6a8f463 --- /dev/null +++ b/src/pages/usuarios/index.vue @@ -0,0 +1,217 @@ + + + + + \ No newline at end of file diff --git a/src/router.js b/src/router.js new file mode 100644 index 0000000..a555830 --- /dev/null +++ b/src/router.js @@ -0,0 +1,28 @@ +import Vue from 'vue' +import Router from 'vue-router' +import Prestamos from './pages/prestamos/index.vue' +import Login from './pages/login/index.vue' +import Usuarios from './pages/usuarios/index.vue' + +Vue.use(Router) + +export default new Router({ + mode: 'history', + routes: [ + { + path: '/', + name: 'Prestamos', + component: Prestamos + }, + { + path: '/login', + name: 'Login', + component: Login + }, + { + path: '/usuarios', + name: 'Usuarios', + component: Usuarios + }, + ] +}) \ No newline at end of file diff --git a/src/static/icon.png b/src/static/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..50ff3d3598ba6c1b13b57dd65dfc93ac158a115f GIT binary patch literal 16764 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