diff --git a/build/build.js b/build/build.js index 37f5a82..1bd15ff 100644 --- a/build/build.js +++ b/build/build.js @@ -6,6 +6,7 @@ var path = require('path') var config = require('../config') var ora = require('ora') var webpack = require('webpack') +var ghpages = require('gh-pages') var webpackConfig = require('./webpack.prod.conf') console.log( @@ -32,4 +33,6 @@ webpack(webpackConfig, function (err, stats) { chunks: false, chunkModules: false }) + '\n') + + ghpages.publish(path.join(__dirname, '../dist')) }) diff --git a/build/webpack.base.conf.js b/build/webpack.base.conf.js index 2a6dbf2..6a26d83 100644 --- a/build/webpack.base.conf.js +++ b/build/webpack.base.conf.js @@ -5,7 +5,7 @@ var projectRoot = path.resolve(__dirname, '../') module.exports = { entry: { - app: './src/main.js' + app: './docs/main.js' }, output: { path: config.build.assetsRoot, @@ -45,7 +45,7 @@ module.exports = { loader: 'vue-html' }, { - test: /\.(png|jpe?g|gif|svg)(\?.*)?$/, + test: /\.(png|jpe?g|gif)(\?.*)?$/, loader: 'url', query: { limit: 10000, @@ -53,7 +53,7 @@ module.exports = { } }, { - test: /\.(woff2?|eot|ttf|otf)(\?.*)?$/, + test: /\.(woff2?|eot|ttf|otf|svg)(\?.*)?$/, loader: 'url', query: { limit: 10000, diff --git a/config/index.js b/config/index.js index 59773a0..3703302 100644 --- a/config/index.js +++ b/config/index.js @@ -7,7 +7,7 @@ module.exports = { index: path.resolve(__dirname, '../dist/index.html'), assetsRoot: path.resolve(__dirname, '../dist'), assetsSubDirectory: 'static', - assetsPublicPath: '/', + assetsPublicPath: '/vue-select/', productionSourceMap: true }, dev: { diff --git a/docs/App.vue b/docs/App.vue new file mode 100644 index 0000000..9559b45 --- /dev/null +++ b/docs/App.vue @@ -0,0 +1,32 @@ + + + + + diff --git a/src/assets/fonts/octicons-local.ttf b/docs/assets/fonts/octicons-local.ttf similarity index 100% rename from src/assets/fonts/octicons-local.ttf rename to docs/assets/fonts/octicons-local.ttf diff --git a/src/assets/fonts/octicons.eot b/docs/assets/fonts/octicons.eot similarity index 100% rename from src/assets/fonts/octicons.eot rename to docs/assets/fonts/octicons.eot diff --git a/src/assets/fonts/octicons.scss b/docs/assets/fonts/octicons.scss similarity index 100% rename from src/assets/fonts/octicons.scss rename to docs/assets/fonts/octicons.scss diff --git a/src/assets/fonts/octicons.svg b/docs/assets/fonts/octicons.svg similarity index 100% rename from src/assets/fonts/octicons.svg rename to docs/assets/fonts/octicons.svg diff --git a/src/assets/fonts/octicons.ttf b/docs/assets/fonts/octicons.ttf similarity index 100% rename from src/assets/fonts/octicons.ttf rename to docs/assets/fonts/octicons.ttf diff --git a/src/assets/fonts/octicons.woff b/docs/assets/fonts/octicons.woff similarity index 100% rename from src/assets/fonts/octicons.woff rename to docs/assets/fonts/octicons.woff diff --git a/src/assets/scss/_cyan_theme.scss b/docs/assets/scss/_cyan_theme.scss similarity index 100% rename from src/assets/scss/_cyan_theme.scss rename to docs/assets/scss/_cyan_theme.scss diff --git a/src/assets/scss/_demo.scss b/docs/assets/scss/_demo.scss similarity index 99% rename from src/assets/scss/_demo.scss rename to docs/assets/scss/_demo.scss index 3fa118c..ddf3996 100644 --- a/src/assets/scss/_demo.scss +++ b/docs/assets/scss/_demo.scss @@ -83,4 +83,9 @@ p.lead { .selected-tag .close { font-family: "Helvetica Neue", "Helvetica"; font-weight: 400; +} + +.accolades a { + margin-left: 0; + margin-right: 5px; } \ No newline at end of file diff --git a/src/assets/scss/_octicons.scss b/docs/assets/scss/_octicons.scss similarity index 100% rename from src/assets/scss/_octicons.scss rename to docs/assets/scss/_octicons.scss diff --git a/src/assets/scss/_prism.scss b/docs/assets/scss/_prism.scss similarity index 100% rename from src/assets/scss/_prism.scss rename to docs/assets/scss/_prism.scss diff --git a/src/assets/scss/_variables.scss b/docs/assets/scss/_variables.scss similarity index 100% rename from src/assets/scss/_variables.scss rename to docs/assets/scss/_variables.scss diff --git a/src/components/Code.vue b/docs/components/Code.vue similarity index 100% rename from src/components/Code.vue rename to docs/components/Code.vue diff --git a/src/components/Install.vue b/docs/components/Install.vue similarity index 97% rename from src/components/Install.vue rename to docs/components/Install.vue index 0ebeed8..13f6163 100644 --- a/src/components/Install.vue +++ b/docs/components/Install.vue @@ -141,9 +141,9 @@ * for the demo site at http://sagalbot.github.io/vue-select/. They'll * be moved out of this repo in the very near future to avoid confusion. */ - import countries from '../countries/advanced' - import simple from '../countries/simple' - import vSelect from './Select.vue' + import countries from '../data/advanced' + import simple from '../data/simple' + import vSelect from '../../src/components/Select.vue' import vCode from './Code.vue' import InstallSnippet from './snippets/InstallSnippet.vue' export default { diff --git a/src/components/Params.vue b/docs/components/Params.vue similarity index 100% rename from src/components/Params.vue rename to docs/components/Params.vue diff --git a/src/components/snippets/InstallSnippet.vue b/docs/components/snippets/InstallSnippet.vue similarity index 100% rename from src/components/snippets/InstallSnippet.vue rename to docs/components/snippets/InstallSnippet.vue diff --git a/src/countries/advanced.js b/docs/data/advanced.js similarity index 100% rename from src/countries/advanced.js rename to docs/data/advanced.js diff --git a/src/countries/simple.js b/docs/data/simple.js similarity index 100% rename from src/countries/simple.js rename to docs/data/simple.js diff --git a/docs/main.js b/docs/main.js new file mode 100644 index 0000000..543ae06 --- /dev/null +++ b/docs/main.js @@ -0,0 +1,40 @@ +import Vue from 'vue' +import App from './App.vue' +import store from './vuex/store' +import 'prismjs' +import vSelect from '../src/components/Select.vue' + +Vue.component('v-select', vSelect) + +Vue.config.debug = true +Vue.config.devtools = true + +import { setSelected, toggleMultiple, setPlaceholder, toggleOptionType } from './vuex/actions' + + +/* eslint-disable no-new */ +new Vue({ + el: 'body', + store, + components: { App }, + vuex: { + getters: { + placeholder (store) { + return store.placeholder + }, + selected (store) { + return store.selected + }, + type (store) { + return store.optionType + }, + options (store) { + return store.options[store.optionType] + }, + multiple (store) { + return store.multiple + } + }, + actions: { setSelected, toggleMultiple, setPlaceholder, toggleOptionType } + } +}) diff --git a/src/vuex/actions.js b/docs/vuex/actions.js similarity index 100% rename from src/vuex/actions.js rename to docs/vuex/actions.js diff --git a/src/vuex/store.js b/docs/vuex/store.js similarity index 88% rename from src/vuex/store.js rename to docs/vuex/store.js index 9a964be..6dd9207 100644 --- a/src/vuex/store.js +++ b/docs/vuex/store.js @@ -10,8 +10,8 @@ const state = { multiple: true, maxHeight: '400px', options: { - advanced: require('../countries/advanced.js'), - simple: require('../countries/simple.js'), + advanced: require('../data/advanced.js'), + simple: require('../data/simple.js'), }, optionType: 'advanced' } diff --git a/index.html b/index.html index ae23730..0eacd7e 100644 --- a/index.html +++ b/index.html @@ -24,6 +24,61 @@ +
+
+
+ +

Vue Select

+ +

+ Build Status + Code Climate Rating + Code Coverage + No Dependencies + MIT License + Current Release +

+ +

A native Vue.js select component that provides similar functionality to Select2/Chosen without the overhead of jQuery.

+ + + + +
+
+
    +
  • Fully Reactive
  • +
  • Tagging Support v1.1.0
  • +
  • Works with Vuex
  • +
  • Zero dependencies
  • +
+
+
+
    +
  • +95% Test Coverage
  • +
  • Select Single/Multiple
  • +
  • Typeahead Suggestions
  • +
  • Bootstrap Friendly Markup
  • +
+
+
+ + View on GitHub +
+
+ + Install, Examples & Documentation + + +
diff --git a/src/main.js b/src/main.js deleted file mode 100644 index 632a045..0000000 --- a/src/main.js +++ /dev/null @@ -1,14 +0,0 @@ -import Vue from 'vue' -import App from './App.vue' -import store from './vuex/store' -import 'prismjs' - -// Vue.config.debug = true -Vue.config.devtools = true - -/* eslint-disable no-new */ -new Vue({ - el: 'body', - store, - components: { App } -})