yellow-brick-road 0.2.0 → 0.2.1
Sign up to get free protection for your applications and to get access to all the features.
- data/README.rst +10 -5
- data/lib/yellow-brick-road/directive_processor.rb +10 -3
- data/lib/yellow-brick-road/version.rb +1 -1
- data/test/dummy/app/assets/javascripts/closure-deps.js +3 -3
- data/test/dummy/log/development.log +159 -0
- data/test/dummy/tmp/cache/assets/C1E/0C0/sprockets%2F9c2f7430126aff8d8514326208712832 +165 -0
- data/test/dummy/tmp/cache/assets/C29/5D0/sprockets%2F1498f4451d0836a53c7c302c49920996 +0 -0
- data/test/dummy/tmp/cache/assets/C7E/9F0/sprockets%2F89862076204c62c4593ac20de32da909 +6 -6
- data/test/dummy/tmp/cache/assets/CB4/5B0/sprockets%2Ff17618b71eca9a4621f68626572a75b2 +103 -0
- data/test/dummy/tmp/cache/assets/CC2/240/sprockets%2F9f41da672330830c3366594f7ff5e7f6 +590 -0
- data/test/dummy/tmp/cache/assets/CC4/2C0/sprockets%2F715db78c7d974ea64406ed9711793f42 +494 -0
- data/test/dummy/tmp/cache/assets/CE1/610/sprockets%2F50c01109ecf86153176ccf577595fab4 +53 -0
- data/test/dummy/tmp/cache/assets/CE1/C20/sprockets%2F58a7b0499656c97a2204b5821eadab84 +207 -0
- data/test/dummy/tmp/cache/assets/CE4/DE0/sprockets%2Fb3aab0604ee02598f339965ec583a746 +204 -0
- data/test/dummy/tmp/cache/assets/CE9/B00/sprockets%2F80b139f66661444d6a781bfe56aee076 +0 -0
- data/test/dummy/tmp/cache/assets/CEB/840/sprockets%2F38fe57c2a5963f36a49404f672cc707b +0 -0
- data/test/dummy/tmp/cache/assets/CEC/6C0/sprockets%2F01b982295748dbd09683557aebd358bd +0 -0
- data/test/dummy/tmp/cache/assets/CF0/140/sprockets%2F3974b046fe949e86ef851a0271eb9d50 +1545 -0
- data/test/dummy/tmp/cache/assets/D01/DF0/sprockets%2F2ce268622b41a173bb209465a2ced6b9 +806 -0
- data/test/dummy/tmp/cache/assets/D05/920/sprockets%2F909507434dcc270db4853e4c147f0aac +4 -5
- data/test/dummy/tmp/cache/assets/D0A/C10/sprockets%2Fd050d5ee6a2073aa708a26c589a4c974 +283 -0
- data/test/dummy/tmp/cache/assets/D0F/360/sprockets%2Fa18927874a5e02c58c14c5b5df19ec04 +300 -0
- data/test/dummy/tmp/cache/assets/D15/700/sprockets%2F2987192f402d2bdc72792b5ae17f9a2f +142 -0
- data/test/dummy/tmp/cache/assets/D15/F60/sprockets%2Fa28394e3f80365b5bc86794dd46daa22 +0 -0
- data/test/dummy/tmp/cache/assets/D1F/E60/sprockets%2Fe65796b72231e36f5573ce71e2c8bbf8 +511 -0
- data/test/dummy/tmp/cache/assets/D22/200/sprockets%2F874bd1079c304ae88fbec8434d6d7794 +187 -0
- data/test/dummy/tmp/cache/assets/D3B/6A0/sprockets%2Ff8a978a3672b4f7ba513303b91ad15fc +127 -0
- data/test/dummy/tmp/cache/assets/D3C/530/sprockets%2Fe6730ff143273d9a7471b4afc3e1c19d +0 -0
- data/test/dummy/tmp/cache/assets/D41/B30/sprockets%2Fba1b93913dd01d83ac9a96df334456f8 +0 -0
- data/test/dummy/tmp/cache/assets/D49/570/sprockets%2Fd76be81d59871518ea06d3668f2c4bbb +239 -0
- data/test/dummy/tmp/cache/assets/D49/DA0/sprockets%2Fa84f85a305cde80a4d53785d7be0892f +457 -0
- data/test/dummy/tmp/cache/assets/D5C/760/sprockets%2F5cd491e0f9106cfd4ec4938896c97de7 +256 -0
- data/test/dummy/tmp/cache/assets/D5C/A00/sprockets%2Fefe291b3012745251e2641defbe4cad0 +1529 -0
- data/test/dummy/tmp/cache/assets/D68/2B0/sprockets%2Fe51ab0aca893e08c40f9672edef71106 +0 -0
- data/test/dummy/tmp/cache/assets/D6E/EA0/sprockets%2Fb52cbc47414c9e60ad4c46824928fbbe +115 -0
- data/test/dummy/tmp/cache/assets/D70/0B0/sprockets%2F1ae574bacfb86b4d51281b5e47fe1892 +505 -0
- data/test/dummy/tmp/cache/assets/D75/A60/sprockets%2Fab64285176f11f975fb6bb40af8bce76 +0 -0
- data/test/dummy/tmp/cache/assets/D76/0A0/sprockets%2F3ad3bd078c47096b34d5bcce886d7b47 +794 -0
- data/test/dummy/tmp/cache/assets/D79/C00/sprockets%2F94449fa386c370a1ebd7628eba9afe72 +72 -0
- data/test/dummy/tmp/cache/assets/D7B/310/sprockets%2Ff56e44be18b2d65efda80e588e5229a4 +0 -0
- data/test/dummy/tmp/cache/assets/D84/210/sprockets%2Fabd0103ccec2b428ac62c94e4c40b384 +7 -8
- data/test/dummy/tmp/cache/assets/D95/D20/sprockets%2F05b19351f203fb1eadf8ef1f0e6f9a60 +173 -0
- data/test/dummy/tmp/cache/assets/D9F/250/sprockets%2F40dcbb8f852f0e6360c4afb1f39964eb +0 -0
- data/test/dummy/tmp/cache/assets/DA8/0E0/sprockets%2F1351359f5bbdb94ef7d247df9af38bd1 +2556 -0
- data/test/dummy/tmp/cache/assets/DB3/070/sprockets%2Fd98f91680433cec456e6eb7485dcfdbc +522 -0
- data/test/dummy/tmp/cache/assets/DC4/6E0/sprockets%2F72117f09fccb98e6aac4cd1124edae42 +2539 -0
- data/test/dummy/tmp/cache/assets/DCC/D50/sprockets%2F9b2b027991c15af6f8afeacdd183c14e +1260 -0
- data/test/dummy/tmp/cache/assets/DD9/FF0/sprockets%2Fdf5dcfe86e199b272742a52a4b7e5fbd +823 -0
- data/test/dummy/tmp/cache/assets/DE7/0D0/sprockets%2Fe4d9fe29b6d96cdeb070d9b595af83d7 +1354 -0
- data/test/dummy/tmp/cache/assets/E00/3A0/sprockets%2Fc1db8cbfbc94bd2736f9f067a4c06cc7 +811 -0
- data/test/dummy/tmp/cache/assets/E04/890/sprockets%2F2f5173deea6c795b8fdde723bb4b63af +0 -0
- data/test/dummy/tmp/cache/assets/E0C/C80/sprockets%2F55805edb5f27aaef88eef6632fd08ade +1277 -0
- data/test/dummy/tmp/cache/assets/E1B/CF0/sprockets%2Feb58b29b94f29d7da8d9fbe666e4a8dd +474 -0
- data/test/dummy/tmp/cache/assets/E1E/E00/sprockets%2Fb005d4fa3dc6cfc1c5098e0fdb3f6b2b +1371 -0
- data/test/dummy/tmp/cache/assets/E30/8E0/sprockets%2Fef4fdb83b3eefb027cbc8e19b274ec80 +607 -0
- metadata +96 -8
data/README.rst
CHANGED
@@ -20,21 +20,26 @@ Yellow-brick-road is a set of tools to integrate google `closure library <http:/
|
|
20
20
|
Setup
|
21
21
|
+++++
|
22
22
|
|
23
|
-
To use yellow-brick-road in rails, add
|
23
|
+
To use yellow-brick-road in rails, add these gems to ``Gemfile``:
|
24
24
|
|
25
25
|
::
|
26
26
|
|
27
27
|
gem 'yellow-brick-road'
|
28
|
+
gem 'closure-library-wrapper',
|
29
|
+
:git => 'git://github.com/alitn/closure-library-wrapper.git',
|
30
|
+
:submodules => true
|
31
|
+
|
32
|
+
When an external closure library source is used, the second gem is not necessary.
|
28
33
|
|
29
|
-
|
34
|
+
Configuration
|
35
|
+
+++++++++++++
|
36
|
+
|
37
|
+
Run this generator to create an initializer for yello-brick-road:
|
30
38
|
|
31
39
|
::
|
32
40
|
|
33
41
|
rails generate yellow_brick_road:install
|
34
42
|
|
35
|
-
Configuration
|
36
|
-
+++++++++++++
|
37
|
-
|
38
43
|
Using the internal closure library
|
39
44
|
''''''''''''''''''''''''''''''''''
|
40
45
|
|
@@ -32,7 +32,11 @@ class ClosureBuilderProcessor < Sprockets::DirectiveProcessor
|
|
32
32
|
raise ArgumentError, 'require_closure_root argument must be a relative path'
|
33
33
|
end
|
34
34
|
|
35
|
-
|
35
|
+
relpath = path.starts_with?('./') ? path[2..-1] : path
|
36
|
+
@closure_roots << {
|
37
|
+
path: closure_root.to_s,
|
38
|
+
path_relative_to_goog_base: File.join('..', '..', relpath)
|
39
|
+
}
|
36
40
|
end
|
37
41
|
|
38
42
|
def process_directives
|
@@ -46,10 +50,13 @@ private
|
|
46
50
|
return nil if @closure_roots.empty? || @has_executed_closure_builder
|
47
51
|
|
48
52
|
if !YellowBrickRoad.standalone_soy
|
49
|
-
@closure_roots.unshift <<
|
53
|
+
@closure_roots.unshift << {
|
54
|
+
path: CLOSURE_SOYUTILS_USEGOOG_ROOT,
|
55
|
+
path_relative_to_goog_base: '/'
|
56
|
+
}
|
50
57
|
end
|
51
58
|
|
52
|
-
closure_roots_with_prefix = @closure_roots.map { |cr| "'#{cr} #{
|
59
|
+
closure_roots_with_prefix = @closure_roots.map { |cr| "'#{cr[:path]} #{cr[:path_relative_to_goog_base]}'" }
|
53
60
|
|
54
61
|
result = Utils::run_command YellowBrickRoad.closure_deps_writer,
|
55
62
|
command_options: {
|
@@ -1,4 +1,4 @@
|
|
1
|
-
// This file was autogenerated by /Users/ali/.rvm/gems/ruby-1.9.3-p0/bundler/gems/closure-library-wrapper-
|
1
|
+
// This file was autogenerated by /Users/ali/.rvm/gems/ruby-1.9.3-p0/bundler/gems/closure-library-wrapper-031d1d0f0e50/vendor/closure-library/closure/bin/build/depswriter.py.
|
2
2
|
// Please do not edit.
|
3
|
-
goog.addDependency('../../
|
4
|
-
goog.addDependency('
|
3
|
+
goog.addDependency('../../my-closure/start.js', ['myproject.start'], ['goog.dom', 'myproject.templates']);
|
4
|
+
goog.addDependency('/soyutils_usegoog.js', ['soy', 'soy.StringBuilder', 'soy.esc', 'soydata', 'soydata.SanitizedHtml', 'soydata.SanitizedHtmlAttribute', 'soydata.SanitizedJsStrChars', 'soydata.SanitizedUri'], ['goog.asserts', 'goog.dom.DomHelper', 'goog.format', 'goog.i18n.BidiFormatter', 'goog.i18n.bidi', 'goog.soy', 'goog.string', 'goog.string.StringBuffer']);
|
@@ -16885,3 +16885,162 @@ Served asset /closure/goog/string/stringbuffer.js - 304 Not Modified (9ms)
|
|
16885
16885
|
|
16886
16886
|
Started GET "/assets/soyutils_usegoog.js" for 127.0.0.1 at 2012-01-03 00:07:48 +0000
|
16887
16887
|
Served asset /soyutils_usegoog.js - 304 Not Modified (9ms)
|
16888
|
+
|
16889
|
+
|
16890
|
+
Started GET "/" for 127.0.0.1 at 2012-01-05 02:19:03 +0000
|
16891
|
+
Processing by ApplicationController#index as HTML
|
16892
|
+
Rendered application/index.html.erb within layouts/application (3.0ms)
|
16893
|
+
Cache for Asset (application.js) is stale
|
16894
|
+
/Users/ali/.rvm/gems/ruby-1.9.3-p0/bundler/gems/closure-library-wrapper-b30bab11ab83/vendor/closure-library/closure/goog/base.js isn't in paths: /Users/ali/.rvm/gems/ruby-1.9.3-p0/bundler/gems/closure-library-wrapper-031d1d0f0e50/vendor/closure-library, /Volumes/Development/dev-web/yellow-brick-road/vendor/closure-soyutils-usegoog, /Volumes/Development/dev-web/yellow-brick-road/test/dummy/app/assets/images, /Volumes/Development/dev-web/yellow-brick-road/test/dummy/app/assets/javascripts, /Volumes/Development/dev-web/yellow-brick-road/test/dummy/app/assets/stylesheets, /Users/ali/.rvm/gems/ruby-1.9.3-p0/gems/jquery-rails-1.0.19/vendor/assets/javascripts
|
16895
|
+
Executed closure depswriter.py on root paths: {:path=>"/Volumes/Development/dev-web/yellow-brick-road/test/dummy/app/assets/javascripts/my-closure", :path_relative_to_goog_base=>"../../my-closure"}, {:path=>"/Volumes/Development/dev-web/yellow-brick-road/vendor/closure-soyutils-usegoog", :path_relative_to_goog_base=>"/"}
|
16896
|
+
Compiled application.js (1885ms) (pid 84460)
|
16897
|
+
Compiled closure/goog/base.js (29ms) (pid 84460)
|
16898
|
+
Compiled closure-deps.js (0ms) (pid 84460)
|
16899
|
+
Compiled my-closure/start.js (1ms) (pid 84460)
|
16900
|
+
Completed 200 OK in 2253ms (Views: 2252.6ms)
|
16901
|
+
|
16902
|
+
|
16903
|
+
Started GET "/assets/application.css?body=1" for 127.0.0.1 at 2012-01-05 02:19:05 +0000
|
16904
|
+
Served asset /application.css - 200 OK (0ms)
|
16905
|
+
|
16906
|
+
|
16907
|
+
Started GET "/assets/closure-deps.js?body=1" for 127.0.0.1 at 2012-01-05 02:19:05 +0000
|
16908
|
+
Served asset /closure-deps.js - 200 OK (3ms)
|
16909
|
+
|
16910
|
+
|
16911
|
+
Started GET "/assets/jquery_ujs.js?body=1" for 127.0.0.1 at 2012-01-05 02:19:05 +0000
|
16912
|
+
Served asset /jquery_ujs.js - 200 OK (5ms)
|
16913
|
+
|
16914
|
+
|
16915
|
+
Started GET "/assets/jquery.js?body=1" for 127.0.0.1 at 2012-01-05 02:19:05 +0000
|
16916
|
+
Served asset /jquery.js - 200 OK (7ms)
|
16917
|
+
|
16918
|
+
|
16919
|
+
Started GET "/assets/closure/goog/base.js?body=1" for 127.0.0.1 at 2012-01-05 02:19:05 +0000
|
16920
|
+
Served asset /closure/goog/base.js - 200 OK (27ms)
|
16921
|
+
|
16922
|
+
|
16923
|
+
Started GET "/assets/my-closure/simple.js?body=1" for 127.0.0.1 at 2012-01-05 02:19:05 +0000
|
16924
|
+
Served asset /my-closure/simple.js - 200 OK (4ms)
|
16925
|
+
|
16926
|
+
|
16927
|
+
Started GET "/assets/my-closure/start.js?body=1" for 127.0.0.1 at 2012-01-05 02:19:05 +0000
|
16928
|
+
Served asset /my-closure/start.js - 200 OK (3ms)
|
16929
|
+
|
16930
|
+
|
16931
|
+
Started GET "/assets/application.js?body=1" for 127.0.0.1 at 2012-01-05 02:19:05 +0000
|
16932
|
+
Served asset /application.js - 200 OK (37ms)
|
16933
|
+
|
16934
|
+
|
16935
|
+
Started GET "/assets/closure/goog/deps.js" for 127.0.0.1 at 2012-01-05 02:19:07 +0000
|
16936
|
+
Compiled closure/goog/deps.js (2ms) (pid 84460)
|
16937
|
+
Served asset /closure/goog/deps.js - 200 OK (211ms)
|
16938
|
+
|
16939
|
+
|
16940
|
+
Started GET "/assets/closure/goog/debug/error.js" for 127.0.0.1 at 2012-01-05 02:19:07 +0000
|
16941
|
+
Compiled closure/goog/debug/error.js (0ms) (pid 84460)
|
16942
|
+
Served asset /closure/goog/debug/error.js - 200 OK (11ms)
|
16943
|
+
|
16944
|
+
|
16945
|
+
Started GET "/assets/closure/goog/string/string.js" for 127.0.0.1 at 2012-01-05 02:19:07 +0000
|
16946
|
+
Compiled closure/goog/string/string.js (1ms) (pid 84460)
|
16947
|
+
Served asset /closure/goog/string/string.js - 200 OK (41ms)
|
16948
|
+
|
16949
|
+
|
16950
|
+
Started GET "/assets/closure/goog/useragent/useragent.js" for 127.0.0.1 at 2012-01-05 02:19:07 +0000
|
16951
|
+
Compiled closure/goog/useragent/useragent.js (1ms) (pid 84460)
|
16952
|
+
Served asset /closure/goog/useragent/useragent.js - 200 OK (25ms)
|
16953
|
+
|
16954
|
+
|
16955
|
+
Started GET "/assets/closure/goog/asserts/asserts.js" for 127.0.0.1 at 2012-01-05 02:19:07 +0000
|
16956
|
+
Compiled closure/goog/asserts/asserts.js (1ms) (pid 84460)
|
16957
|
+
Served asset /closure/goog/asserts/asserts.js - 200 OK (12ms)
|
16958
|
+
|
16959
|
+
|
16960
|
+
Started GET "/assets/closure/goog/dom/tagname.js" for 127.0.0.1 at 2012-01-05 02:19:07 +0000
|
16961
|
+
Compiled closure/goog/dom/tagname.js (1ms) (pid 84460)
|
16962
|
+
Served asset /closure/goog/dom/tagname.js - 200 OK (32ms)
|
16963
|
+
|
16964
|
+
|
16965
|
+
Started GET "/assets/closure/goog/dom/browserfeature.js" for 127.0.0.1 at 2012-01-05 02:19:07 +0000
|
16966
|
+
Compiled closure/goog/dom/browserfeature.js (1ms) (pid 84460)
|
16967
|
+
Served asset /closure/goog/dom/browserfeature.js - 200 OK (9ms)
|
16968
|
+
|
16969
|
+
|
16970
|
+
Started GET "/assets/closure/goog/array/array.js" for 127.0.0.1 at 2012-01-05 02:19:07 +0000
|
16971
|
+
Compiled closure/goog/array/array.js (3ms) (pid 84460)
|
16972
|
+
Served asset /closure/goog/array/array.js - 200 OK (12ms)
|
16973
|
+
|
16974
|
+
|
16975
|
+
Started GET "/assets/closure/goog/dom/classes.js" for 127.0.0.1 at 2012-01-05 02:19:07 +0000
|
16976
|
+
Compiled closure/goog/dom/classes.js (2ms) (pid 84460)
|
16977
|
+
Served asset /closure/goog/dom/classes.js - 200 OK (14ms)
|
16978
|
+
|
16979
|
+
|
16980
|
+
Started GET "/assets/closure/goog/math/coordinate.js" for 127.0.0.1 at 2012-01-05 02:19:07 +0000
|
16981
|
+
Compiled closure/goog/math/coordinate.js (1ms) (pid 84460)
|
16982
|
+
Served asset /closure/goog/math/coordinate.js - 200 OK (14ms)
|
16983
|
+
|
16984
|
+
|
16985
|
+
Started GET "/assets/closure/goog/math/size.js" for 127.0.0.1 at 2012-01-05 02:19:07 +0000
|
16986
|
+
Compiled closure/goog/math/size.js (1ms) (pid 84460)
|
16987
|
+
Served asset /closure/goog/math/size.js - 200 OK (13ms)
|
16988
|
+
|
16989
|
+
|
16990
|
+
Started GET "/assets/closure/goog/object/object.js" for 127.0.0.1 at 2012-01-05 02:19:07 +0000
|
16991
|
+
Compiled closure/goog/object/object.js (0ms) (pid 84460)
|
16992
|
+
Served asset /closure/goog/object/object.js - 200 OK (28ms)
|
16993
|
+
|
16994
|
+
|
16995
|
+
Started GET "/assets/closure/goog/dom/dom.js" for 127.0.0.1 at 2012-01-05 02:19:07 +0000
|
16996
|
+
Compiled closure/goog/dom/dom.js (1ms) (pid 84460)
|
16997
|
+
Served asset /closure/goog/dom/dom.js - 200 OK (13ms)
|
16998
|
+
|
16999
|
+
|
17000
|
+
Started GET "/assets/closure/goog/structs/inversionmap.js" for 127.0.0.1 at 2012-01-05 02:19:07 +0000
|
17001
|
+
Compiled closure/goog/structs/inversionmap.js (151ms) (pid 84460)
|
17002
|
+
Served asset /closure/goog/structs/inversionmap.js - 200 OK (170ms)
|
17003
|
+
|
17004
|
+
|
17005
|
+
Started GET "/assets/closure/goog/i18n/graphemebreak.js" for 127.0.0.1 at 2012-01-05 02:19:07 +0000
|
17006
|
+
Compiled closure/goog/i18n/graphemebreak.js (1ms) (pid 84460)
|
17007
|
+
Served asset /closure/goog/i18n/graphemebreak.js - 200 OK (64ms)
|
17008
|
+
|
17009
|
+
|
17010
|
+
Started GET "/assets/closure/goog/format/format.js" for 127.0.0.1 at 2012-01-05 02:19:07 +0000
|
17011
|
+
Compiled closure/goog/format/format.js (1ms) (pid 84460)
|
17012
|
+
Served asset /closure/goog/format/format.js - 200 OK (10ms)
|
17013
|
+
|
17014
|
+
|
17015
|
+
Started GET "/assets/closure/goog/i18n/bidi.js" for 127.0.0.1 at 2012-01-05 02:19:07 +0000
|
17016
|
+
Compiled closure/goog/i18n/bidi.js (1ms) (pid 84460)
|
17017
|
+
Served asset /closure/goog/i18n/bidi.js - 200 OK (10ms)
|
17018
|
+
|
17019
|
+
|
17020
|
+
Started GET "/assets/closure/goog/i18n/bidiformatter.js" for 127.0.0.1 at 2012-01-05 02:19:07 +0000
|
17021
|
+
Compiled closure/goog/i18n/bidiformatter.js (1ms) (pid 84460)
|
17022
|
+
Served asset /closure/goog/i18n/bidiformatter.js - 200 OK (10ms)
|
17023
|
+
|
17024
|
+
|
17025
|
+
Started GET "/assets/closure/goog/soy/soy.js" for 127.0.0.1 at 2012-01-05 02:19:07 +0000
|
17026
|
+
Compiled closure/goog/soy/soy.js (1ms) (pid 84460)
|
17027
|
+
Served asset /closure/goog/soy/soy.js - 200 OK (9ms)
|
17028
|
+
|
17029
|
+
|
17030
|
+
Started GET "/assets/closure/goog/useragent/jscript.js" for 127.0.0.1 at 2012-01-05 02:19:07 +0000
|
17031
|
+
Compiled closure/goog/useragent/jscript.js (1ms) (pid 84460)
|
17032
|
+
Served asset /closure/goog/useragent/jscript.js - 200 OK (10ms)
|
17033
|
+
|
17034
|
+
|
17035
|
+
Started GET "/assets/closure/goog/string/stringbuffer.js" for 127.0.0.1 at 2012-01-05 02:19:08 +0000
|
17036
|
+
Compiled closure/goog/string/stringbuffer.js (0ms) (pid 84460)
|
17037
|
+
Served asset /closure/goog/string/stringbuffer.js - 200 OK (7ms)
|
17038
|
+
|
17039
|
+
|
17040
|
+
Started GET "/assets/closure/goog//soyutils_usegoog.js" for 127.0.0.1 at 2012-01-05 02:19:08 +0000
|
17041
|
+
Served asset /closure/goog/soyutils_usegoog.js - 404 Not Found (5ms)
|
17042
|
+
|
17043
|
+
ActionController::RoutingError (No route matches [GET] "/assets/closure/goog/soyutils_usegoog.js"):
|
17044
|
+
|
17045
|
+
|
17046
|
+
Rendered /Users/ali/.rvm/gems/ruby-1.9.3-p0/gems/actionpack-3.1.3/lib/action_dispatch/middleware/templates/rescues/routing_error.erb within rescues/layout (1.1ms)
|
@@ -0,0 +1,165 @@
|
|
1
|
+
o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1325729947.870778:@value{ I"length:EFi�I"digest;
|
2
|
+
F"%4677892072a8f5cb3a0f4b57b8396468I"source;
|
3
|
+
FI"�// Copyright 2008 The Closure Library Authors. All Rights Reserved.
|
4
|
+
//
|
5
|
+
// Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
// you may not use this file except in compliance with the License.
|
7
|
+
// You may obtain a copy of the License at
|
8
|
+
//
|
9
|
+
// http://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
//
|
11
|
+
// Unless required by applicable law or agreed to in writing, software
|
12
|
+
// distributed under the License is distributed on an "AS-IS" BASIS,
|
13
|
+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
// See the License for the specific language governing permissions and
|
15
|
+
// limitations under the License.
|
16
|
+
|
17
|
+
/**
|
18
|
+
* @fileoverview Provides inversion and inversion map functionality for storing
|
19
|
+
* integer ranges and corresponding values.
|
20
|
+
*
|
21
|
+
*/
|
22
|
+
|
23
|
+
|
24
|
+
goog.provide('goog.structs.InversionMap');
|
25
|
+
|
26
|
+
goog.require('goog.array');
|
27
|
+
|
28
|
+
|
29
|
+
|
30
|
+
/**
|
31
|
+
* Maps ranges to values using goog.structs.Inversion.
|
32
|
+
* @param {Array.<number>} rangeArray An array of monotonically
|
33
|
+
* increasing integer values, with at least one instance.
|
34
|
+
* @param {Array.<*>} valueArray An array of corresponding values.
|
35
|
+
* Length must be the same as rangeArray.
|
36
|
+
* @param {boolean=} opt_delta If true, saves only delta from previous value.
|
37
|
+
* @constructor
|
38
|
+
*/
|
39
|
+
goog.structs.InversionMap = function(rangeArray, valueArray, opt_delta) {
|
40
|
+
if (rangeArray.length != valueArray.length) {
|
41
|
+
// rangeArray and valueArray has to match in number of entries.
|
42
|
+
return null;
|
43
|
+
}
|
44
|
+
this.storeInversion_(rangeArray, opt_delta);
|
45
|
+
|
46
|
+
/**
|
47
|
+
* @type {Array}
|
48
|
+
* @protected
|
49
|
+
*/
|
50
|
+
this.values = valueArray;
|
51
|
+
};
|
52
|
+
|
53
|
+
|
54
|
+
/**
|
55
|
+
* @type {Array}
|
56
|
+
* @protected
|
57
|
+
*/
|
58
|
+
goog.structs.InversionMap.prototype.rangeArray;
|
59
|
+
|
60
|
+
|
61
|
+
/**
|
62
|
+
* Stores the integers as ranges (half-open).
|
63
|
+
* If delta is true, the integers are delta from the previous value and
|
64
|
+
* will be restored to the absolute value.
|
65
|
+
* When used as a set, even indices are IN, and odd are OUT.
|
66
|
+
* @param {Array.<number?>} rangeArray An array of monotonically
|
67
|
+
* increasing integer values, with at least one instance.
|
68
|
+
* @param {boolean=} opt_delta If true, saves only delta from previous value.
|
69
|
+
* @private
|
70
|
+
*/
|
71
|
+
goog.structs.InversionMap.prototype.storeInversion_ = function(rangeArray,
|
72
|
+
opt_delta) {
|
73
|
+
this.rangeArray = rangeArray;
|
74
|
+
|
75
|
+
for (var i = 1; i < rangeArray.length; i++) {
|
76
|
+
if (rangeArray[i] == null) {
|
77
|
+
rangeArray[i] = rangeArray[i - 1] + 1;
|
78
|
+
} else if (opt_delta) {
|
79
|
+
rangeArray[i] += rangeArray[i - 1];
|
80
|
+
}
|
81
|
+
}
|
82
|
+
};
|
83
|
+
|
84
|
+
|
85
|
+
/**
|
86
|
+
* Splices a range -> value map into this inversion map.
|
87
|
+
* @param {Array.<number>} rangeArray An array of monotonically
|
88
|
+
* increasing integer values, with at least one instance.
|
89
|
+
* @param {Array.<*>} valueArray An array of corresponding values.
|
90
|
+
* Length must be the same as rangeArray.
|
91
|
+
* @param {boolean=} opt_delta If true, saves only delta from previous value.
|
92
|
+
*/
|
93
|
+
goog.structs.InversionMap.prototype.spliceInversion = function(
|
94
|
+
rangeArray, valueArray, opt_delta) {
|
95
|
+
// By building another inversion map, we build the arrays that we need
|
96
|
+
// to splice in.
|
97
|
+
var otherMap = new goog.structs.InversionMap(
|
98
|
+
rangeArray, valueArray, opt_delta);
|
99
|
+
|
100
|
+
// Figure out where to splice those arrays.
|
101
|
+
var startRange = otherMap.rangeArray[0];
|
102
|
+
var endRange =
|
103
|
+
(/** @type {number} */ goog.array.peek(otherMap.rangeArray));
|
104
|
+
var startSplice = this.getLeast(startRange);
|
105
|
+
var endSplice = this.getLeast(endRange);
|
106
|
+
|
107
|
+
// The inversion map works by storing the start points of ranges...
|
108
|
+
if (startRange != this.rangeArray[startSplice]) {
|
109
|
+
// ...if we're splicing in a start point that isn't already here,
|
110
|
+
// then we need to insert it after the insertion point.
|
111
|
+
startSplice++;
|
112
|
+
} // otherwise we overwrite the insertion point.
|
113
|
+
|
114
|
+
var spliceLength = endSplice - startSplice + 1;
|
115
|
+
goog.partial(goog.array.splice, this.rangeArray, startSplice,
|
116
|
+
spliceLength).apply(null, otherMap.rangeArray);
|
117
|
+
goog.partial(goog.array.splice, this.values, startSplice,
|
118
|
+
spliceLength).apply(null, otherMap.values);
|
119
|
+
};
|
120
|
+
|
121
|
+
|
122
|
+
/**
|
123
|
+
* Gets the value corresponding to a number from the inversion map.
|
124
|
+
* @param {number} intKey The number for which value needs to be retrieved
|
125
|
+
* from inversion map.
|
126
|
+
* @return {*} Value retrieved from inversion map; null if not found.
|
127
|
+
*/
|
128
|
+
goog.structs.InversionMap.prototype.at = function(intKey) {
|
129
|
+
var index = this.getLeast(intKey);
|
130
|
+
if (index < 0) {
|
131
|
+
return null;
|
132
|
+
}
|
133
|
+
return this.values[index];
|
134
|
+
};
|
135
|
+
|
136
|
+
|
137
|
+
/**
|
138
|
+
* Gets the largest index such that rangeArray[index] <= intKey from the
|
139
|
+
* inversion map.
|
140
|
+
* @param {number} intKey The probe for which rangeArray is searched.
|
141
|
+
* @return {number} Largest index such that rangeArray[index] <= intKey.
|
142
|
+
* @protected
|
143
|
+
*/
|
144
|
+
goog.structs.InversionMap.prototype.getLeast = function(intKey) {
|
145
|
+
var arr = this.rangeArray;
|
146
|
+
var low = 0;
|
147
|
+
var high = arr.length;
|
148
|
+
while (high - low > 8) {
|
149
|
+
var mid = (high + low) >> 1;
|
150
|
+
if (arr[mid] <= intKey) {
|
151
|
+
low = mid;
|
152
|
+
} else {
|
153
|
+
high = mid;
|
154
|
+
}
|
155
|
+
}
|
156
|
+
for (; low < high; ++low) {
|
157
|
+
if (intKey < arr[low]) {
|
158
|
+
break;
|
159
|
+
}
|
160
|
+
}
|
161
|
+
return low - 1;
|
162
|
+
};
|
163
|
+
;
|
164
|
+
FI"
|
165
|
+
F"%7837f66e6fd4e54fa3a1e72c9a63905a
|
Binary file
|
@@ -1,9 +1,9 @@
|
|
1
|
-
o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf
|
2
|
-
F"%
|
3
|
-
FI"�// This file was autogenerated by /Users/ali/.rvm/gems/ruby-1.9.3-p0/bundler/gems/closure-library-wrapper-
|
1
|
+
o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1325729945.5889258:@value{ I"length:EFi�I"digest;
|
2
|
+
F"%e8d058e562853e6dd6b04cfe2c5f20b6I"source;
|
3
|
+
FI"�// This file was autogenerated by /Users/ali/.rvm/gems/ruby-1.9.3-p0/bundler/gems/closure-library-wrapper-031d1d0f0e50/vendor/closure-library/closure/bin/build/depswriter.py.
|
4
4
|
// Please do not edit.
|
5
|
-
goog.addDependency('../../
|
6
|
-
goog.addDependency('
|
5
|
+
goog.addDependency('../../my-closure/start.js', ['myproject.start'], ['goog.dom', 'myproject.templates']);
|
6
|
+
goog.addDependency('/soyutils_usegoog.js', ['soy', 'soy.StringBuilder', 'soy.esc', 'soydata', 'soydata.SanitizedHtml', 'soydata.SanitizedHtmlAttribute', 'soydata.SanitizedJsStrChars', 'soydata.SanitizedUri'], ['goog.asserts', 'goog.dom.DomHelper', 'goog.format', 'goog.i18n.BidiFormatter', 'goog.i18n.bidi', 'goog.soy', 'goog.string', 'goog.string.StringBuffer']);
|
7
7
|
;
|
8
8
|
FI"
|
9
|
-
F"%
|
9
|
+
F"%508f605e32d9a455e15341a6f7c85c3d
|
@@ -0,0 +1,103 @@
|
|
1
|
+
o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1325729948.002632:@value{ I"length:EFi�
|
2
|
+
I"digest;
|
3
|
+
F"%b7f2f9f2118221772fcf6fca3140bf0aI"source;
|
4
|
+
FI"�
|
5
|
+
// Copyright 2007 The Closure Library Authors. All Rights Reserved.
|
6
|
+
//
|
7
|
+
// Licensed under the Apache License, Version 2.0 (the "License");
|
8
|
+
// you may not use this file except in compliance with the License.
|
9
|
+
// You may obtain a copy of the License at
|
10
|
+
//
|
11
|
+
// http://www.apache.org/licenses/LICENSE-2.0
|
12
|
+
//
|
13
|
+
// Unless required by applicable law or agreed to in writing, software
|
14
|
+
// distributed under the License is distributed on an "AS-IS" BASIS,
|
15
|
+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
16
|
+
// See the License for the specific language governing permissions and
|
17
|
+
// limitations under the License.
|
18
|
+
|
19
|
+
/**
|
20
|
+
* @fileoverview Detection of JScript version.
|
21
|
+
*
|
22
|
+
* @author arv@google.com (Erik Arvidsson)
|
23
|
+
*/
|
24
|
+
|
25
|
+
|
26
|
+
|
27
|
+
goog.provide('goog.userAgent.jscript');
|
28
|
+
|
29
|
+
goog.require('goog.string');
|
30
|
+
|
31
|
+
|
32
|
+
/**
|
33
|
+
* @define {boolean} True if it is known at compile time that the runtime
|
34
|
+
* environment will not be using JScript.
|
35
|
+
*/
|
36
|
+
goog.userAgent.jscript.ASSUME_NO_JSCRIPT = false;
|
37
|
+
|
38
|
+
|
39
|
+
/**
|
40
|
+
* Initializer for goog.userAgent.jscript. Detects if the user agent is using
|
41
|
+
* Microsoft JScript and which version of it.
|
42
|
+
*
|
43
|
+
* This is a named function so that it can be stripped via the jscompiler
|
44
|
+
* option for stripping types.
|
45
|
+
* @private
|
46
|
+
*/
|
47
|
+
goog.userAgent.jscript.init_ = function() {
|
48
|
+
var hasScriptEngine = 'ScriptEngine' in goog.global;
|
49
|
+
|
50
|
+
/**
|
51
|
+
* @type {boolean}
|
52
|
+
* @private
|
53
|
+
*/
|
54
|
+
goog.userAgent.jscript.DETECTED_HAS_JSCRIPT_ =
|
55
|
+
hasScriptEngine && goog.global['ScriptEngine']() == 'JScript';
|
56
|
+
|
57
|
+
/**
|
58
|
+
* @type {string}
|
59
|
+
* @private
|
60
|
+
*/
|
61
|
+
goog.userAgent.jscript.DETECTED_VERSION_ =
|
62
|
+
goog.userAgent.jscript.DETECTED_HAS_JSCRIPT_ ?
|
63
|
+
(goog.global['ScriptEngineMajorVersion']() + '.' +
|
64
|
+
goog.global['ScriptEngineMinorVersion']() + '.' +
|
65
|
+
goog.global['ScriptEngineBuildVersion']()) :
|
66
|
+
'0';
|
67
|
+
};
|
68
|
+
|
69
|
+
if (!goog.userAgent.jscript.ASSUME_NO_JSCRIPT) {
|
70
|
+
goog.userAgent.jscript.init_();
|
71
|
+
}
|
72
|
+
|
73
|
+
|
74
|
+
/**
|
75
|
+
* Whether we detect that the user agent is using Microsoft JScript.
|
76
|
+
* @type {boolean}
|
77
|
+
*/
|
78
|
+
goog.userAgent.jscript.HAS_JSCRIPT = goog.userAgent.jscript.ASSUME_NO_JSCRIPT ?
|
79
|
+
false : goog.userAgent.jscript.DETECTED_HAS_JSCRIPT_;
|
80
|
+
|
81
|
+
|
82
|
+
/**
|
83
|
+
* The installed version of JScript.
|
84
|
+
* @type {string}
|
85
|
+
*/
|
86
|
+
goog.userAgent.jscript.VERSION = goog.userAgent.jscript.ASSUME_NO_JSCRIPT ?
|
87
|
+
'0' : goog.userAgent.jscript.DETECTED_VERSION_;
|
88
|
+
|
89
|
+
|
90
|
+
/**
|
91
|
+
* Whether the installed version of JScript is as new or newer than a given
|
92
|
+
* version.
|
93
|
+
* @param {string} version The version to check.
|
94
|
+
* @return {boolean} Whether the installed version of JScript is as new or
|
95
|
+
* newer than the given version.
|
96
|
+
*/
|
97
|
+
goog.userAgent.jscript.isVersion = function(version) {
|
98
|
+
return goog.string.compareVersions(goog.userAgent.jscript.VERSION,
|
99
|
+
version) >= 0;
|
100
|
+
};
|
101
|
+
;
|
102
|
+
FI"
|
103
|
+
F"%a181c72c42d98272cb874d1a170c09e7
|