rails-es6 0.0.2
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 +7 -0
- data/lib/es6/railtie.rb +24 -0
- data/lib/es6/template.rb +50 -0
- data/lib/es6/version.rb +3 -0
- data/lib/rails-es6.rb +2 -0
- metadata +135 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: abbe627c0d45511dbe5669c895003d558c24bf20
|
4
|
+
data.tar.gz: ba5097f303b9c818253f938d3d637a3f3eba2521
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: a0a7de5d5b48cd10638471d59415746366fa361f3252d783c77f677075ee8fa46209fb69485156547fffc98f27b3e2f5d702f832e7f70d800630674a894884c9
|
7
|
+
data.tar.gz: fdefc84458811ca013a08b535e90afb2cd3c8639bbe6df3b9ea2c51608b4758e3b4b97d977f27936ca8238f677b904c285bbb49a648d5ba78d7fc4a02395e0c9
|
data/lib/es6/railtie.rb
ADDED
@@ -0,0 +1,24 @@
|
|
1
|
+
begin
|
2
|
+
require 'sprockets/railtie'
|
3
|
+
rescue LoadError
|
4
|
+
require 'sprockets/rails/railtie'
|
5
|
+
end
|
6
|
+
|
7
|
+
module Es6
|
8
|
+
class Railtie < ::Rails::Railtie
|
9
|
+
config.es6 = ActiveSupport::OrderedOptions.new
|
10
|
+
|
11
|
+
config.es6.map = false
|
12
|
+
|
13
|
+
initializer :setup_es6, group: :all do |app|
|
14
|
+
config.assets.configure do |env|
|
15
|
+
env.register_engine '.es6', Es6::Template
|
16
|
+
|
17
|
+
env.context_class.class_eval do
|
18
|
+
class_attribute :es6_config
|
19
|
+
self.es6_config = app.config.es6
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
data/lib/es6/template.rb
ADDED
@@ -0,0 +1,50 @@
|
|
1
|
+
require 'babel/transpiler'
|
2
|
+
|
3
|
+
module Es6
|
4
|
+
class Template < Tilt::Template
|
5
|
+
def self.default_mime_type
|
6
|
+
'application/javascript'
|
7
|
+
end
|
8
|
+
|
9
|
+
def self.engine_initialized?
|
10
|
+
true
|
11
|
+
end
|
12
|
+
|
13
|
+
def initialize_engine
|
14
|
+
end
|
15
|
+
|
16
|
+
def prepare
|
17
|
+
end
|
18
|
+
|
19
|
+
def syntax
|
20
|
+
:es6
|
21
|
+
end
|
22
|
+
|
23
|
+
def evaluate(context, locals, &block)
|
24
|
+
logical_path = context.logical_path
|
25
|
+
data = File.read(eval_file)
|
26
|
+
|
27
|
+
result = Babel::Transpiler.transform(data, {
|
28
|
+
'sourceMap' => context.es6_config.source_map,
|
29
|
+
'sourceRoot' => source_root(logical_path),
|
30
|
+
'filenameRelative' => filename_relative(logical_path)})
|
31
|
+
|
32
|
+
# TODO: figure out who adding ; at the end of each js file
|
33
|
+
result['code'] + "\n"
|
34
|
+
end
|
35
|
+
|
36
|
+
private
|
37
|
+
|
38
|
+
def filename_regexp
|
39
|
+
/[^\/]*$/
|
40
|
+
end
|
41
|
+
|
42
|
+
def filename_relative(logical_path)
|
43
|
+
filename_regexp.match(logical_path)[0].to_s
|
44
|
+
end
|
45
|
+
|
46
|
+
def source_root(logical_path)
|
47
|
+
logical_path.gsub(filename_regexp, '')
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
data/lib/es6/version.rb
ADDED
data/lib/rails-es6.rb
ADDED
metadata
ADDED
@@ -0,0 +1,135 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: rails-es6
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.2
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Oleksii Levzhynskyi
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2015-04-06 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: railties
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: 4.0.0
|
20
|
+
- - "<"
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: '5.0'
|
23
|
+
type: :runtime
|
24
|
+
prerelease: false
|
25
|
+
version_requirements: !ruby/object:Gem::Requirement
|
26
|
+
requirements:
|
27
|
+
- - ">="
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: 4.0.0
|
30
|
+
- - "<"
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: '5.0'
|
33
|
+
- !ruby/object:Gem::Dependency
|
34
|
+
name: sprockets-rails
|
35
|
+
requirement: !ruby/object:Gem::Requirement
|
36
|
+
requirements:
|
37
|
+
- - ">="
|
38
|
+
- !ruby/object:Gem::Version
|
39
|
+
version: '2.0'
|
40
|
+
- - "<"
|
41
|
+
- !ruby/object:Gem::Version
|
42
|
+
version: '4.0'
|
43
|
+
type: :runtime
|
44
|
+
prerelease: false
|
45
|
+
version_requirements: !ruby/object:Gem::Requirement
|
46
|
+
requirements:
|
47
|
+
- - ">="
|
48
|
+
- !ruby/object:Gem::Version
|
49
|
+
version: '2.0'
|
50
|
+
- - "<"
|
51
|
+
- !ruby/object:Gem::Version
|
52
|
+
version: '4.0'
|
53
|
+
- !ruby/object:Gem::Dependency
|
54
|
+
name: sprockets
|
55
|
+
requirement: !ruby/object:Gem::Requirement
|
56
|
+
requirements:
|
57
|
+
- - ">="
|
58
|
+
- !ruby/object:Gem::Version
|
59
|
+
version: '2.8'
|
60
|
+
- - "<"
|
61
|
+
- !ruby/object:Gem::Version
|
62
|
+
version: '4.0'
|
63
|
+
type: :runtime
|
64
|
+
prerelease: false
|
65
|
+
version_requirements: !ruby/object:Gem::Requirement
|
66
|
+
requirements:
|
67
|
+
- - ">="
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: '2.8'
|
70
|
+
- - "<"
|
71
|
+
- !ruby/object:Gem::Version
|
72
|
+
version: '4.0'
|
73
|
+
- !ruby/object:Gem::Dependency
|
74
|
+
name: tilt
|
75
|
+
requirement: !ruby/object:Gem::Requirement
|
76
|
+
requirements:
|
77
|
+
- - "~>"
|
78
|
+
- !ruby/object:Gem::Version
|
79
|
+
version: '1.1'
|
80
|
+
type: :runtime
|
81
|
+
prerelease: false
|
82
|
+
version_requirements: !ruby/object:Gem::Requirement
|
83
|
+
requirements:
|
84
|
+
- - "~>"
|
85
|
+
- !ruby/object:Gem::Version
|
86
|
+
version: '1.1'
|
87
|
+
- !ruby/object:Gem::Dependency
|
88
|
+
name: babel-transpiler
|
89
|
+
requirement: !ruby/object:Gem::Requirement
|
90
|
+
requirements:
|
91
|
+
- - "~>"
|
92
|
+
- !ruby/object:Gem::Version
|
93
|
+
version: '0'
|
94
|
+
type: :runtime
|
95
|
+
prerelease: false
|
96
|
+
version_requirements: !ruby/object:Gem::Requirement
|
97
|
+
requirements:
|
98
|
+
- - "~>"
|
99
|
+
- !ruby/object:Gem::Version
|
100
|
+
version: '0'
|
101
|
+
description: Babel adapter for the Rails asset pipeline.
|
102
|
+
email: oleksii.levzhynskyi@gmail.com
|
103
|
+
executables: []
|
104
|
+
extensions: []
|
105
|
+
extra_rdoc_files: []
|
106
|
+
files:
|
107
|
+
- lib/es6/railtie.rb
|
108
|
+
- lib/es6/template.rb
|
109
|
+
- lib/es6/version.rb
|
110
|
+
- lib/rails-es6.rb
|
111
|
+
homepage: https://github.com/levzhinsky/rails-es6
|
112
|
+
licenses:
|
113
|
+
- MIT
|
114
|
+
metadata: {}
|
115
|
+
post_install_message:
|
116
|
+
rdoc_options: []
|
117
|
+
require_paths:
|
118
|
+
- lib
|
119
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
120
|
+
requirements:
|
121
|
+
- - ">="
|
122
|
+
- !ruby/object:Gem::Version
|
123
|
+
version: '0'
|
124
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
125
|
+
requirements:
|
126
|
+
- - ">="
|
127
|
+
- !ruby/object:Gem::Version
|
128
|
+
version: '0'
|
129
|
+
requirements: []
|
130
|
+
rubyforge_project:
|
131
|
+
rubygems_version: 2.2.2
|
132
|
+
signing_key:
|
133
|
+
specification_version: 4
|
134
|
+
summary: Babel adapter for the Rails asset pipeline.
|
135
|
+
test_files: []
|