es6-rails 0.1.1 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +26 -10
- data/lib/es6-rails.rb +3 -0
- data/lib/es6/rails/generators/assets_generator.rb +11 -0
- data/lib/es6/rails/generators/templates/javascript.es6 +1 -0
- data/lib/es6/rails/js_hook.rb +14 -0
- data/lib/es6/rails/railtie.rb +22 -0
- data/lib/es6/rails/version.rb +1 -1
- metadata +7 -5
- data/.gitignore +0 -1
- data/es6-rails.gemspec +0 -27
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ee000840a43208cf832b0ddbcc865b6ee0e219c4
|
4
|
+
data.tar.gz: 6c33e586cf267c831d44e4f60b48a5fe484602b5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4bdd6a5d16e857b9dec4bea49c2d1484689a3c27e3f487e013a8a7b8a537cd05b8fd4906c8ba08a9d48b428e8746a4db9795f087a320b508890f47901d6ce3f8
|
7
|
+
data.tar.gz: 03b84723a9b2b1aabc8a5321d422ec7676c13a8421c71ccfa00e98cc2d27757d59d598f337554df6bdbc1bb05d416bd199f92c329e97db4fcdf348aaea6a6bfd
|
data/README.md
CHANGED
@@ -1,16 +1,27 @@
|
|
1
|
-
# ES6
|
2
|
-
ES6 (EcmaScript
|
1
|
+
# Use ES6 in Rails everywhere
|
2
|
+
ES6 (EcmaScript 2015) adapter for Rails. It transpiles all ES6 code to ES5 (JavaScript) using [ruby-babel-transpiler](https://github.com/babel/ruby-babel-transpiler).
|
3
|
+
|
4
|
+
## Write ES6 in:
|
5
|
+
|
6
|
+
- assets
|
7
|
+
- views as remote es6 script
|
8
|
+
- views as inline html
|
9
|
+
|
10
|
+
## Example app
|
11
|
+
|
12
|
+
[es6-rails-example](https://github.com/es6-rails/es6-rails-example)
|
3
13
|
|
4
14
|
## Use
|
5
|
-
|
6
|
-
- add ES6 code
|
15
|
+
Assets:
|
16
|
+
- add ES6 code as `.es6` files in `/app/assets/javascripts/`
|
17
|
+
- use rails generator: `rails g es6:assets my_file`
|
7
18
|
|
8
|
-
|
9
|
-
- add ES6 code
|
10
|
-
|
19
|
+
ES6 views:
|
20
|
+
- add ES6 code as `.es6` files in `/app/views/` (you can include `erb` code too)
|
21
|
+
|
22
|
+
HTML views:
|
23
|
+
- add ES6 code in any HTML(ERB) file in `/app/views/` using: `<%= es6_transform do %> .. es6 code .. <% end %>`
|
11
24
|
|
12
|
-
Inline:
|
13
|
-
- use with: `<%= es6_transform do %> .. es6 code .. <% end %>`
|
14
25
|
E.g.:
|
15
26
|
```
|
16
27
|
<script>
|
@@ -22,8 +33,13 @@ E.g.:
|
|
22
33
|
```
|
23
34
|
|
24
35
|
## Installation
|
25
|
-
|
36
|
+
|
37
|
+
Add the `es6-rails` to your Gemfile:
|
26
38
|
|
27
39
|
~~~ruby
|
28
40
|
gem 'es6-rails'
|
29
41
|
~~~
|
42
|
+
|
43
|
+
## Test
|
44
|
+
|
45
|
+
- for testing the gem please run the tests in the [es6-rails-example](https://github.com/es6-rails/es6-rails-example) example application with tests all use cases
|
data/lib/es6-rails.rb
CHANGED
@@ -0,0 +1,11 @@
|
|
1
|
+
module Es6
|
2
|
+
module Generators
|
3
|
+
class AssetsGenerator < ::Rails::Generators::NamedBase
|
4
|
+
source_root File.expand_path("../templates", __FILE__)
|
5
|
+
|
6
|
+
def copy_es6
|
7
|
+
template "javascript.es6", File.join('app/assets/javascripts', class_path, "#{file_name}.es6")
|
8
|
+
end
|
9
|
+
end
|
10
|
+
end
|
11
|
+
end
|
@@ -0,0 +1 @@
|
|
1
|
+
// something
|
@@ -0,0 +1,22 @@
|
|
1
|
+
require 'rails/engine'
|
2
|
+
require 'rails/generators'
|
3
|
+
require 'es6/rails/js_hook'
|
4
|
+
require 'rails/railtie'
|
5
|
+
|
6
|
+
module Es6
|
7
|
+
module Rails
|
8
|
+
class Railtie < ::Rails::Railtie
|
9
|
+
config.app_generators.javascript_engine :es6
|
10
|
+
|
11
|
+
if config.respond_to?(:annotations)
|
12
|
+
config.annotations.register_extensions("es6") { |annotation| /#\s*(#{annotation}):?\s*(.*)$/ }
|
13
|
+
end
|
14
|
+
|
15
|
+
initializer 'override js_template hook' do |app|
|
16
|
+
if app.config.generators.rails[:javascript_engine] == :es6
|
17
|
+
::Rails::Generators::NamedBase.send :include, Es6::Rails::JsHook
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
data/lib/es6/rails/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: es6-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Cristian Dugacicu
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2016-06-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -96,12 +96,14 @@ executables: []
|
|
96
96
|
extensions: []
|
97
97
|
extra_rdoc_files: []
|
98
98
|
files:
|
99
|
-
- ".gitignore"
|
100
99
|
- LICENSE.txt
|
101
100
|
- README.md
|
102
|
-
- es6-rails.gemspec
|
103
101
|
- lib/es6-rails.rb
|
102
|
+
- lib/es6/rails/generators/assets_generator.rb
|
103
|
+
- lib/es6/rails/generators/templates/javascript.es6
|
104
104
|
- lib/es6/rails/inline_handler.rb
|
105
|
+
- lib/es6/rails/js_hook.rb
|
106
|
+
- lib/es6/rails/railtie.rb
|
105
107
|
- lib/es6/rails/template_handler.rb
|
106
108
|
- lib/es6/rails/version.rb
|
107
109
|
homepage: https://github.com/es6-rails/es6-rails
|
@@ -124,7 +126,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
124
126
|
version: '0'
|
125
127
|
requirements: []
|
126
128
|
rubyforge_project:
|
127
|
-
rubygems_version: 2.
|
129
|
+
rubygems_version: 2.5.1
|
128
130
|
signing_key:
|
129
131
|
specification_version: 4
|
130
132
|
summary: ES6 adapter for Rails
|
data/.gitignore
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
*.gem
|
data/es6-rails.gemspec
DELETED
@@ -1,27 +0,0 @@
|
|
1
|
-
lib = File.expand_path('../lib', __FILE__)
|
2
|
-
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
3
|
-
require "es6/rails/version"
|
4
|
-
|
5
|
-
Gem::Specification.new do |s|
|
6
|
-
s.name = 'es6-rails'
|
7
|
-
s.version = Es6::Rails::VERSION
|
8
|
-
s.date = '2015-10-19'
|
9
|
-
s.summary = "ES6 adapter for Rails"
|
10
|
-
s.description = "Enables use of ES6 in assets, views and inline."
|
11
|
-
s.files = `git ls-files`.split($/)
|
12
|
-
'http://rubygems.org'
|
13
|
-
s.homepage = "https://github.com/es6-rails/es6-rails"
|
14
|
-
s.license = 'MIT'
|
15
|
-
|
16
|
-
s.require_paths = ["lib"]
|
17
|
-
s.required_ruby_version = '>= 2.0.0'
|
18
|
-
|
19
|
-
s.add_dependency 'rails', '>= 4.0', '< 5.0'
|
20
|
-
s.add_dependency 'babel-transpiler', '~> 0.7', '>= 0.7.0'
|
21
|
-
s.add_dependency 'sprockets', '~> 3.0', '>= 3.0.0'
|
22
|
-
s.add_dependency 'sprockets-es6', '~> 0.8', '>= 0.8.1'
|
23
|
-
|
24
|
-
s.authors = ["Cristian Dugacicu"]
|
25
|
-
s.email = 'razorcd@yahoo.com'
|
26
|
-
end
|
27
|
-
|