bob-rails 0.0.1
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/LICENSE +22 -0
- data/README.md +4 -0
- data/Rakefile +8 -0
- data/app/assets/javascripts/bob.js +1989 -0
- data/lib/bob/rails/compiler.rb +61 -0
- data/lib/bob/rails/engine.rb +11 -0
- data/lib/bob/rails/paged.js +11 -0
- data/lib/bob/rails/version.rb +5 -0
- data/lib/bob/rails.rb +2 -0
- metadata +94 -0
@@ -0,0 +1,61 @@
|
|
1
|
+
require 'pathname'
|
2
|
+
require 'sprockets'
|
3
|
+
require 'sprockets/engines'
|
4
|
+
require 'bob/compiler'
|
5
|
+
require 'json'
|
6
|
+
|
7
|
+
module Bob
|
8
|
+
module Rails
|
9
|
+
class Compiler < Tilt::Template
|
10
|
+
def self.default_mime_type
|
11
|
+
'application/javascript'
|
12
|
+
end
|
13
|
+
|
14
|
+
def prepare; end
|
15
|
+
|
16
|
+
def evaluate(scope, locals, &block)
|
17
|
+
pathname = Pathname.new(scope.logical_path)
|
18
|
+
compiled = ::Bob::Compiler::Template.new(pathname.basename.to_s, data)
|
19
|
+
|
20
|
+
script = ''
|
21
|
+
|
22
|
+
unless compiled.errors.empty?
|
23
|
+
script << error("#{compiled.errors.length} error(s) while compiling #{pathname.to_s}...")
|
24
|
+
|
25
|
+
compiled.errors.each do |error|
|
26
|
+
script << error(" Line #{error.line}: #{error.message}")
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
unless compiled.warnings.empty?
|
31
|
+
script << warn("#{compiled.warnings.length} warnings(s) while compiling #{pathname.to_s}...")
|
32
|
+
|
33
|
+
compiled.warnings.each do |warning|
|
34
|
+
script << warn(" Line #{warning.line}: #{warning.message}")
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
if compiled.valid?
|
39
|
+
script << compiled.result
|
40
|
+
end
|
41
|
+
|
42
|
+
script
|
43
|
+
end
|
44
|
+
|
45
|
+
private
|
46
|
+
def error(str)
|
47
|
+
::Rails.logger.error str
|
48
|
+
"Bob.logger.error(#{quote str});\n"
|
49
|
+
end
|
50
|
+
|
51
|
+
def warn(str)
|
52
|
+
::Rails.logger.warn str
|
53
|
+
"Bob.logger.warn(#{quote str});\n"
|
54
|
+
end
|
55
|
+
|
56
|
+
def quote(str)
|
57
|
+
::JSON.generate(str.to_s, quirks_mode: true)
|
58
|
+
end
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
data/lib/bob/rails.rb
ADDED
metadata
ADDED
@@ -0,0 +1,94 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: bob-rails
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Godfrey Chan
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2015-01-13 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: rails
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: 3.2.0
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: 3.2.0
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: sprockets
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '2.2'
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '2.2'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: bob-compiler
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - '='
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: 0.0.1
|
48
|
+
type: :runtime
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - '='
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: 0.0.1
|
55
|
+
description:
|
56
|
+
email:
|
57
|
+
- godfrey@brewhouse.io
|
58
|
+
executables: []
|
59
|
+
extensions: []
|
60
|
+
extra_rdoc_files: []
|
61
|
+
files:
|
62
|
+
- LICENSE
|
63
|
+
- README.md
|
64
|
+
- Rakefile
|
65
|
+
- app/assets/javascripts/bob.js
|
66
|
+
- lib/bob/rails.rb
|
67
|
+
- lib/bob/rails/compiler.rb
|
68
|
+
- lib/bob/rails/engine.rb
|
69
|
+
- lib/bob/rails/paged.js
|
70
|
+
- lib/bob/rails/version.rb
|
71
|
+
homepage: https://github.com/BrewhouseTeam/bob-rails
|
72
|
+
licenses: []
|
73
|
+
metadata: {}
|
74
|
+
post_install_message:
|
75
|
+
rdoc_options: []
|
76
|
+
require_paths:
|
77
|
+
- lib
|
78
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ">="
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0'
|
83
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
84
|
+
requirements:
|
85
|
+
- - ">="
|
86
|
+
- !ruby/object:Gem::Version
|
87
|
+
version: '0'
|
88
|
+
requirements: []
|
89
|
+
rubyforge_project:
|
90
|
+
rubygems_version: 2.4.5
|
91
|
+
signing_key:
|
92
|
+
specification_version: 4
|
93
|
+
summary: Bob-flavoured in the Rails asset pipeline.
|
94
|
+
test_files: []
|