├── .gitignore
├── README.md
├── babel.config.js
├── package-lock.json
├── package.json
├── public
├── favicon.ico
└── index.html
├── src
├── App.vue
├── assets
│ └── logo.png
├── components
│ ├── Gantt.vue
│ └── Info.vue
├── main.js
└── styles
│ ├── quasar.styl
│ └── quasar.variables.styl
└── vue.config.js
/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /dist
4 |
5 | # local env files
6 | .env.local
7 | .env.*.local
8 |
9 | # Log files
10 | npm-debug.log*
11 | yarn-debug.log*
12 | yarn-error.log*
13 |
14 | # Editor directories and files
15 | .idea
16 | .vscode
17 | *.suo
18 | *.ntvs*
19 | *.njsproj
20 | *.sln
21 | *.sw*
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # vue-gantt-elastic
2 |
3 | ## Project setup
4 | ```
5 | npm install
6 | ```
7 |
8 | ### Compiles and hot-reloads for development
9 | ```
10 | npm run serve
11 | ```
12 |
13 | ### Compiles and minifies for production
14 | ```
15 | npm run build
16 | ```
17 |
18 | ### Run your tests
19 | ```
20 | npm run test
21 | ```
22 |
23 | ### Lints and fixes files
24 | ```
25 | npm run lint
26 | ```
27 |
28 | ### Customize configuration
29 | See [Configuration Reference](https://cli.vuejs.org/config/).
30 |
--------------------------------------------------------------------------------
/babel.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | "presets": [
3 | "@vue/app"
4 | ],
5 | "plugins": [
6 | [
7 | "transform-imports",
8 | {
9 | "quasar": {
10 | "transform": "quasar/dist/babel-transforms/imports.js",
11 | "preventFullImport": true
12 | }
13 | }
14 | ]
15 | ]
16 | }
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "vue-gantt-elastic",
3 | "version": "1.0.1",
4 | "private": true,
5 | "scripts": {
6 | "serve": "vue-cli-service serve",
7 | "build": "vue-cli-service build",
8 | "lint": "vue-cli-service lint"
9 | },
10 | "dependencies": {
11 | "@quasar/extras": "^1.1.2",
12 | "dayjs": "^1.8.14",
13 | "gantt-elastic": "^1.0.0",
14 | "gantt-elastic-header": "^0.1.11",
15 | "quasar": "^1.0.0-beta.23",
16 | "vue": "^2.6.10",
17 | "vue-router": "^3.0.6"
18 | },
19 | "devDependencies": {
20 | "@vue/cli-plugin-babel": "^3.7.0",
21 | "@vue/cli-plugin-eslint": "^3.7.0",
22 | "@vue/cli-service": "^3.7.0",
23 | "@vue/eslint-config-prettier": "^4.0.1",
24 | "babel-eslint": "^10.0.1",
25 | "babel-plugin-transform-imports": "1.5.0",
26 | "eslint": "^5.16.0",
27 | "eslint-plugin-vue": "^5.0.0",
28 | "stylus": "^0.54.5",
29 | "stylus-loader": "^3.0.2",
30 | "vue-cli-plugin-quasar": "^1.0.0-beta.1",
31 | "vue-template-compiler": "^2.6.10"
32 | },
33 | "eslintConfig": {
34 | "root": true,
35 | "env": {
36 | "node": true
37 | },
38 | "extends": [
39 | "plugin:vue/essential",
40 | "eslint:recommended"
41 | ],
42 | "rules": {},
43 | "parserOptions": {
44 | "parser": "babel-eslint"
45 | }
46 | },
47 | "postcss": {
48 | "plugins": {
49 | "autoprefixer": {}
50 | }
51 | },
52 | "browserslist": [
53 | "> 1%",
54 | "last 2 versions",
55 | "not ie <= 8"
56 | ]
57 | }
58 |
--------------------------------------------------------------------------------
/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/neuronetio/vue-gantt-elastic/14b5aa7eb646469b255f3cc10755954cc60b3fd0/public/favicon.ico
--------------------------------------------------------------------------------
/public/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 | vue-gantt-elastic
9 |
10 |
11 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/src/App.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
13 |
14 |
15 | Gantt Elastic demo
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | Demo
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 | Documentation
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
59 |
60 |
62 |
--------------------------------------------------------------------------------
/src/assets/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/neuronetio/vue-gantt-elastic/14b5aa7eb646469b255f3cc10755954cc60b3fd0/src/assets/logo.png
--------------------------------------------------------------------------------
/src/components/Gantt.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
19 |
20 |
373 |
--------------------------------------------------------------------------------
/src/components/Info.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
11 |
18 |
19 |
20 |
21 |
38 |
39 |
41 |
--------------------------------------------------------------------------------
/src/main.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue';
2 | import App from './App.vue';
3 | import Gantt from './components/Gantt.vue';
4 | import Info from './components/Info.vue';
5 |
6 | import Router from 'vue-router';
7 | Vue.use(Router);
8 |
9 | const router = new Router({
10 | routes: [
11 | {
12 | path: '/',
13 | component: Gantt
14 | },
15 | {
16 | path: '/info',
17 | component: Info
18 | }
19 | ]
20 | });
21 |
22 | import './styles/quasar.styl';
23 | import iconSet from 'quasar/icon-set/mdi-v3.js';
24 | import '@quasar/extras/roboto-font/roboto-font.css';
25 | import '@quasar/extras/mdi-v3/mdi-v3.css';
26 | import {
27 | Quasar,
28 | QLayout,
29 | QHeader,
30 | QDrawer,
31 | QPageContainer,
32 | QPage,
33 | QToolbar,
34 | QToolbarTitle,
35 | QBtn,
36 | QIcon,
37 | QList,
38 | QItem,
39 | QItemSection,
40 | QItemLabel
41 | } from 'quasar';
42 |
43 | Vue.use(Quasar, {
44 | config: {},
45 | components: {
46 | QLayout,
47 | QHeader,
48 | QDrawer,
49 | QPageContainer,
50 | QPage,
51 | QToolbar,
52 | QToolbarTitle,
53 | QBtn,
54 | QIcon,
55 | QList,
56 | QItem,
57 | QItemSection,
58 | QItemLabel
59 | },
60 | directives: {},
61 | plugins: {},
62 | iconSet: iconSet
63 | });
64 |
65 | Vue.config.productionTip = false;
66 |
67 | new Vue({
68 | router,
69 | render: h => h(App)
70 | }).$mount('#app');
71 |
--------------------------------------------------------------------------------
/src/styles/quasar.styl:
--------------------------------------------------------------------------------
1 | @import './quasar.variables'
2 | @import '~quasar-styl'
3 | // @import '~quasar-addon-styl'
4 |
--------------------------------------------------------------------------------
/src/styles/quasar.variables.styl:
--------------------------------------------------------------------------------
1 | // It's highly recommended to change the default colors
2 | // to match your app's branding.
3 |
4 | $primary = #027BE3
5 | $secondary = #26A69A
6 | $accent = #9C27B0
7 |
8 | $positive = #21BA45
9 | $negative = #C10015
10 | $info = #31CCEC
11 | $warning = #F2C037
12 |
13 | @import '~quasar-variables-styl'
14 |
--------------------------------------------------------------------------------
/vue.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | pluginOptions: {
3 | quasar: {
4 | treeShake: true
5 | }
6 | },
7 | transpileDependencies: [
8 | /[\\\/]node_modules[\\\/]quasar[\\\/]/
9 | ]
10 | }
11 |
--------------------------------------------------------------------------------