vuejs 1.0.38 → 1.0.39

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: e04be1261c14b06a65091871eda7785b00855d4c
4
- data.tar.gz: d8f4713cd2c92341a39c90a408611f39052e5a66
2
+ SHA256:
3
+ metadata.gz: 29c3b8f0bee58fa7d32cd10676329f9647eb58d0d859a7a20632a156034b7f3f
4
+ data.tar.gz: 3b86ca6b277de4d9e1a05fc132260f9eb193e026e352ed1471e8478f2f356b39
5
5
  SHA512:
6
- metadata.gz: b60e91b243c332362b0dc6c5cdb7fe2eba654a402a72b7723a066eba70403b7c24f9c88d34e4256d863149fcdb51bc71b8c1975d6a15680aae211850b6c94bda
7
- data.tar.gz: f506418a1d780320b4e6ca6618bf5fb462a41a7ecf32ea25bc51b640ab519720b05b2948f6a81500703d2cdf1f523740b3ee3f705edf8f3cf4cc5579b9c9501d
6
+ metadata.gz: e0646e8e8f47a1fe33dfb4061c704752e7d04488233a1898c2daa5721b68c63c3aad6332b44c43686e1e37a1c0e5ef4e823cd54d69fed29b78cda300e207eced
7
+ data.tar.gz: c08fdd45a5efa313f03506136dab64916c2674ae9b03ec94336340ef281bc7fb53e072b13ab80525ec65f3d9365cf6564a50dfff97ca5fa86489c683e449f180
data/README.md CHANGED
@@ -1,24 +1,6 @@
1
1
  # Vuejs Gem
2
2
 
3
- > Reactive Components for Modern Web Interfaces by Evan You and Vuejs team
4
-
5
- TODO: update this to support webpacker. Or make plans to create [webpacker-vue](https://github.com/ytbryan/webpacker-vue)
6
-
7
- The rubygem `vuejs` ships with the following goodies:
8
-
9
- - `vue` (v2.1.10)
10
- - `vuex` (v2.1.1)
11
- - `vue-router` (v2.1.3)
12
- - `vue-validator2` (v2.1.7) + `vue-validator3` (v3.0.0-alpha.2)
13
- - `axios` (v0.15.3)
14
-
15
- It also ships with the following legacy goodies
16
-
17
- - `vue` (v1.0.28)
18
- - `vuex` (v1.0.1)
19
- - `vue-router` (v0.7.13)
20
- - `vue-resource` (v1.2.0)
21
- - `vue-validator` (v1.4.4)
3
+ > Vue for your favourite Ruby on Rails projects
22
4
 
23
5
  # Requirement
24
6
 
@@ -27,7 +9,7 @@ It also ships with the following legacy goodies
27
9
  Add this line to your application's Gemfile:
28
10
 
29
11
  ```ruby
30
- gem 'vuejs'
12
+ gem 'vuejs'
31
13
  ```
32
14
 
33
15
  And then execute:
@@ -38,15 +20,72 @@ Or install it yourself as:
38
20
 
39
21
  $ gem install vuejs
40
22
 
23
+ # Webpacker
24
+
25
+ ## Vue component generator
26
+
27
+ ```
28
+ rails generate vue <NAME>
29
+ ```
30
+
31
+ Note: `vuejs` gem creates vue components with seperation of concern by default.
32
+
33
+ To generate a single-file component, please use `--single` option. eg. `rails g vue component_name --single`
41
34
 
42
- ## Vue Component generator
35
+ ## Vue component destroyer
43
36
 
44
- rails g vue <NAME>
37
+ ```
38
+ rails destroy vue <NAME>
39
+ ```
40
+
41
+ ## Vue viewer
42
+
43
+ Vue viewer allows you to browse your vue component easily. Simply type in http://localhost:3000/vue/<name>
44
+
45
+ At routes.rb
46
+
47
+ ```
48
+ mount Vuejs::engine, to: 'vue'
49
+ ```
50
+
51
+ ## Vuex support - coming soon
52
+
53
+ ```
54
+ rails g vue <NAME> --vuex
55
+ ```
45
56
 
57
+ This will add vuex using yarn. And generate a vue component with vuex support
58
+
59
+ ## Add webpacker helpers - coming soon
60
+
61
+ ```
62
+ rails g vue <NAME> --helpers
63
+ ```
64
+
65
+ ---
66
+
67
+ # Asset Pipeline
68
+
69
+ The ruby gem `vuejs` ships with the following goodies for assets pipeline:
70
+
71
+ * `vue` (v2.1.10)
72
+ * `vuex` (v2.1.1)
73
+ * `vue-router` (v2.1.3)
74
+ * `vue-validator2` (v2.1.7) + `vue-validator3` (v3.0.0-alpha.2)
75
+ * `axios` (v0.15.3)
76
+
77
+ It also ships with the following legacy goodies
78
+
79
+ * `vue` (v1.0.28)
80
+ * `vuex` (v1.0.1)
81
+ * `vue-router` (v0.7.13)
82
+ * `vue-resource` (v1.2.0)
83
+ * `vue-validator` (v1.4.4)
46
84
 
47
85
  ## Usage
48
86
 
49
87
  For 2.x Vue & vue-router or Vue-validator
88
+
50
89
  ```
51
90
  //= require vue2
52
91
  //= require vue-router2
@@ -55,23 +94,22 @@ For 2.x Vue & vue-router or Vue-validator
55
94
  //= require axios
56
95
  ```
57
96
 
58
- # Some Solution
97
+ # Some Solution for assets pipeline
59
98
 
60
99
  ### Sprockets::FileNotFound: couldn't find file 'vue-validator'
61
100
 
62
101
  ```
63
102
  Sprockets::FileNotFound: couldn't find file 'vue-validator' with type 'application/javascript'
64
103
  ```
104
+
65
105
  vue-validator has been changed to vue-validator2
66
106
  and vue-validator3. Use `//= require vue-validator2` or `//= require vue-validator3` instead.
67
107
 
68
-
69
108
  ### Sprockets::FileNotFound: couldn't find file 'vuex'
70
109
 
71
110
  vuex has been updated to vuex2. Therefore use `//= require vuex2` to resolve the error `Sprockets::FileNotFound: couldn't find file 'vuex'`.
72
111
 
73
-
74
- ### You are running Vue in development mode.
112
+ ### You are running Vue in development mode.
75
113
 
76
114
  ```
77
115
  You are running Vue in development mode.
@@ -81,7 +119,6 @@ vuex has been updated to vuex2. Therefore use `//= require vuex2` to resolve the
81
119
 
82
120
  Try to use `//= require vue2.min` to remove the warning statement from console.
83
121
 
84
-
85
122
  For 1.x
86
123
 
87
124
  ```
@@ -96,25 +133,14 @@ For 1.x
96
133
  //= require_tree .
97
134
  ```
98
135
 
99
- ## Development
100
-
101
- After checking out the repo, run `bin/setup` to install dependencies. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
102
-
103
- To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
104
-
105
- ## Contributing
136
+ ## Contributing and License
106
137
 
107
138
  Bug reports and pull requests are welcome on GitHub at https://github.com/ytbryan/vuejs. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.
108
-
109
-
110
- ## License
111
-
112
139
  The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
113
140
 
114
-
115
141
  ## Book
116
142
 
117
- Richard LaFranchi and I are writing a book on Vue on rails. If you are interested to be one of the early reviewers of our drafts, please email me.
143
+ Richard LaFranchi and I are writing a book on Vue on rails. If you are interested to be one of the early reviewers of our drafts, please email me.
118
144
 
119
145
  ## Contact
120
146
 
@@ -0,0 +1,2 @@
1
+ class VueController < ApplicationController
2
+ end
@@ -7,10 +7,6 @@ module SyntaxHelper
7
7
  "<p>#{Vuejs::VERSION}</p>".html_safe
8
8
  end
9
9
 
10
- # def vue_version
11
- # "<p>#{Vue.version}</p>".html_safe
12
- # end
13
-
14
10
  def vue_component(*name, **options)
15
11
  javascript_pack_tag(*name, **options) + ( stylesheet_pack_tag(*name, **options) if options[:stylesheet] != false )
16
12
  end
@@ -0,0 +1,5 @@
1
+ <%= vue_component params[:name] %>
2
+
3
+ <script>
4
+ //poll
5
+ </script>
@@ -0,0 +1,5 @@
1
+ Rails.application.routes.draw do
2
+ if Rails.env.development?
3
+ get 'vue/(:name)', to: "vue#index"
4
+ end
5
+ end
@@ -1,7 +1,10 @@
1
1
  export default {
2
- data: function () {
2
+ data: function() {
3
3
  return {
4
4
  message: "Hello <%= name %>!"
5
- }
5
+ };
6
+ },
7
+ methods: {
8
+
6
9
  }
7
- }
10
+ };
@@ -1,8 +1,8 @@
1
1
  import Vue from 'vue'
2
- <% if options[:single] == false %>
3
- import App from '../parts/<%= name %>/<%= name %>.vue'
4
- <% else %>
2
+ <% if options[:single] %>
5
3
  import App from '../parts/<%= name %>.vue'
4
+ <% else %>
5
+ import App from '../parts/<%= name %>/<%= name %>.vue'
6
6
  <% end %>
7
7
 
8
8
  document.addEventListener('DOMContentLoaded', () => {
@@ -10,6 +10,5 @@ document.addEventListener('DOMContentLoaded', () => {
10
10
  const app = new Vue({
11
11
  render: h => h(App)
12
12
  }).$mount('hello')
13
-
14
13
  //console.log(app)
15
- })
14
+ })
@@ -10,6 +10,9 @@ export default {
10
10
  return {
11
11
  message: "Hello <%= name %>!"
12
12
  }
13
+ },
14
+ methods: {
15
+
13
16
  }
14
17
  }
15
18
  </script>
@@ -1,20 +1,38 @@
1
1
  class VueGenerator < Rails::Generators::NamedBase
2
- PACKS_PATH = "app/javascript/packs"
3
- PARTS_PATH = "app/javascript/parts"
4
-
5
2
  source_root File.expand_path('../../generator_templates', __FILE__)
3
+
6
4
  argument :name, :type => :string, :default => :index
7
5
  class_option :single, type: :boolean, default: false
6
+ class_option :vuex, type: :boolean, default: false
7
+ # class_option :helpers, type: :boolean, default: false
8
+
9
+ PACKS_PATH = "app/javascript/packs"
10
+ PARTS_PATH = "app/javascript/parts"
8
11
 
9
12
  def vue
10
- if options[:single] == false
11
- create_component_with_seperate_concern_using(name)
13
+ if options[:single]
14
+ create_single_file_component_using(name)
12
15
  else
13
- create_single_file_component_using(name)
16
+ create_component_with_seperate_concern_using(name)
14
17
  end
18
+
19
+ # options[:vuex] ? add_vuex_to_component(name) : nil
20
+ # options[:helpers] ? add_helpers_to_component(name) : nil
15
21
  end
16
22
 
17
23
  private
24
+ def add_helpers_to_component name
25
+ puts "adding helpers"
26
+ end
27
+
28
+ def add_vuex_to_component name
29
+ puts "adding vuex"
30
+ # yarn add vuex
31
+ # import vuex from 'vuex'
32
+ # Vue.use(vuex)
33
+ # Generate a vuex.html.erb
34
+ end
35
+
18
36
  def create_component_with_seperate_concern_using name
19
37
  template "pack.js", "#{PACKS_PATH}/#{name}.js"
20
38
  template "index.vue", "#{PARTS_PATH}/#{name}/#{name}.vue"
@@ -3,34 +3,11 @@ require "thor"
3
3
 
4
4
  module Vuejs
5
5
  class Engine < ::Rails::Engine
6
+ engine_name 'vuejs'
6
7
  end
7
8
 
8
9
  class Base < Thor
9
10
  check_unknown_options!
10
11
  package_name 'vuejs'
11
-
12
- # desc :info, ""
13
- # def info
14
- # puts "version: "
15
- # end
16
-
17
- # def move
18
- # cp node_modules/vue/dist/vue.min.js app/assets/javascripts/
19
- # end
20
12
  end
21
-
22
-
23
-
24
-
25
-
26
- # class Base < Thor
27
- # check_unknown_options!
28
- # package_name 'vuejs'
29
- # default_task :info
30
- #
31
- # desc :info
32
- # def info
33
- # puts "version: "
34
- # end
35
- # end
36
13
  end
@@ -1,3 +1,3 @@
1
1
  module Vuejs
2
- VERSION = "1.0.38"
2
+ VERSION = "1.0.39"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vuejs
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.38
4
+ version: 1.0.39
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bryan Lim
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-03-26 00:00:00.000000000 Z
11
+ date: 2018-04-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -48,7 +48,10 @@ extra_rdoc_files: []
48
48
  files:
49
49
  - LICENSE
50
50
  - README.md
51
+ - app/controllers/vue_controller.rb
51
52
  - app/helpers/syntax_helper.rb
53
+ - app/views/vue/index.html.erb
54
+ - config/routes.rb
52
55
  - lib/generators/generator_templates/index.css
53
56
  - lib/generators/generator_templates/index.js
54
57
  - lib/generators/generator_templates/index.vue
@@ -95,7 +98,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
95
98
  version: '0'
96
99
  requirements: []
97
100
  rubyforge_project:
98
- rubygems_version: 2.6.13
101
+ rubygems_version: 2.7.6
99
102
  signing_key:
100
103
  specification_version: 4
101
104
  summary: Latest Vue.js + vue-router + vue-resource + vue-validator + vuex for Rails