rails-js 0.0.8 → 0.1.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 969ced4eca8917dbd25be67315925da6870b79ef
4
- data.tar.gz: a2c97a9b0b4e5cb4468ea944b1ea6a96a0663595
3
+ metadata.gz: 86b7da8b9fa0f2625715bf5f3f8d12a0787db532
4
+ data.tar.gz: 2b8c703e25250fb05a26764b74231f91186074dc
5
5
  SHA512:
6
- metadata.gz: bfcd360de23394d97f6be0690484df753b2b84f66e3e2ad289d7e24662f7680603df84e65adcc598803d54f2a9703609a3c9b34eb09c0e2a48ee82815e26ea75
7
- data.tar.gz: 28931e20325ca6968a137ac9e34b51bfd6973501c762a6170e86005109c6b87bd326665b052716eb82e78f51c3dd1110aefd1e1311b49e80d9e3de6b1f9fa84f
6
+ metadata.gz: 842ee769ced2bc2287870556218fe6c1c5fe6c26dbb50b148d15cc97670ddec18fdfadec30b5559c4053a40657f99b6adbcc8a92203dfef1e6a2028f491ffc68
7
+ data.tar.gz: 68ffb370e5f535cb2d307e7af75482effe4ae276c81f9d86b6ccbfe3dfa2b97b427f952fc03f7eace1707af806eb41d3494077426acf1f5f858cd6bf94481e1e
data/Gemfile.lock CHANGED
@@ -1,33 +1,33 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- rails-js (0.0.6)
4
+ rails-js (0.1.0)
5
5
  rails (~> 4)
6
6
 
7
7
  GEM
8
8
  remote: https://rubygems.org/
9
9
  specs:
10
- actionmailer (4.1.7)
11
- actionpack (= 4.1.7)
12
- actionview (= 4.1.7)
10
+ actionmailer (4.1.8)
11
+ actionpack (= 4.1.8)
12
+ actionview (= 4.1.8)
13
13
  mail (~> 2.5, >= 2.5.4)
14
- actionpack (4.1.7)
15
- actionview (= 4.1.7)
16
- activesupport (= 4.1.7)
14
+ actionpack (4.1.8)
15
+ actionview (= 4.1.8)
16
+ activesupport (= 4.1.8)
17
17
  rack (~> 1.5.2)
18
18
  rack-test (~> 0.6.2)
19
- actionview (4.1.7)
20
- activesupport (= 4.1.7)
19
+ actionview (4.1.8)
20
+ activesupport (= 4.1.8)
21
21
  builder (~> 3.1)
22
22
  erubis (~> 2.7.0)
23
- activemodel (4.1.7)
24
- activesupport (= 4.1.7)
23
+ activemodel (4.1.8)
24
+ activesupport (= 4.1.8)
25
25
  builder (~> 3.1)
26
- activerecord (4.1.7)
27
- activemodel (= 4.1.7)
28
- activesupport (= 4.1.7)
26
+ activerecord (4.1.8)
27
+ activemodel (= 4.1.8)
28
+ activesupport (= 4.1.8)
29
29
  arel (~> 5.0.0)
30
- activesupport (4.1.7)
30
+ activesupport (4.1.8)
31
31
  i18n (~> 0.6, >= 0.6.9)
32
32
  json (~> 1.7, >= 1.7.7)
33
33
  minitest (~> 5.1)
@@ -42,12 +42,12 @@ GEM
42
42
  rack-test (>= 0.5.4)
43
43
  xpath (~> 2.0)
44
44
  cliver (0.3.2)
45
- coveralls (0.7.1)
45
+ coveralls (0.7.2)
46
46
  multi_json (~> 1.3)
47
- rest-client
47
+ rest-client (= 1.6.7)
48
48
  simplecov (>= 0.7)
49
- term-ansicolor
50
- thor
49
+ term-ansicolor (= 1.2.2)
50
+ thor (= 0.18.1)
51
51
  docile (1.1.5)
52
52
  erubis (2.7.0)
53
53
  hike (1.2.3)
@@ -56,12 +56,11 @@ GEM
56
56
  mail (2.6.3)
57
57
  mime-types (>= 1.16, < 3)
58
58
  mime-types (2.4.3)
59
- mini_portile (0.6.0)
60
- minitest (5.4.2)
59
+ mini_portile (0.6.1)
60
+ minitest (5.4.3)
61
61
  multi_json (1.10.1)
62
- netrc (0.8.0)
63
- nokogiri (1.6.3.1)
64
- mini_portile (= 0.6.0)
62
+ nokogiri (1.6.4.1)
63
+ mini_portile (~> 0.6.0)
65
64
  poltergeist (1.5.1)
66
65
  capybara (~> 2.1)
67
66
  cliver (~> 0.3.1)
@@ -70,25 +69,24 @@ GEM
70
69
  rack (1.5.2)
71
70
  rack-test (0.6.2)
72
71
  rack (>= 1.0)
73
- rails (4.1.7)
74
- actionmailer (= 4.1.7)
75
- actionpack (= 4.1.7)
76
- actionview (= 4.1.7)
77
- activemodel (= 4.1.7)
78
- activerecord (= 4.1.7)
79
- activesupport (= 4.1.7)
72
+ rails (4.1.8)
73
+ actionmailer (= 4.1.8)
74
+ actionpack (= 4.1.8)
75
+ actionview (= 4.1.8)
76
+ activemodel (= 4.1.8)
77
+ activerecord (= 4.1.8)
78
+ activesupport (= 4.1.8)
80
79
  bundler (>= 1.3.0, < 2.0)
81
- railties (= 4.1.7)
80
+ railties (= 4.1.8)
82
81
  sprockets-rails (~> 2.0)
83
- railties (4.1.7)
84
- actionpack (= 4.1.7)
85
- activesupport (= 4.1.7)
82
+ railties (4.1.8)
83
+ actionpack (= 4.1.8)
84
+ activesupport (= 4.1.8)
86
85
  rake (>= 0.8.7)
87
86
  thor (>= 0.18.1, < 2.0)
88
87
  rake (10.3.2)
89
- rest-client (1.7.2)
90
- mime-types (>= 1.16, < 3.0)
91
- netrc (~> 0.7)
88
+ rest-client (1.6.7)
89
+ mime-types (>= 1.16)
92
90
  simplecov (0.9.1)
93
91
  docile (~> 1.1.0)
94
92
  multi_json (~> 1.0)
@@ -106,15 +104,15 @@ GEM
106
104
  sqlite3 (1.3.10)
107
105
  teaspoon (0.8.0)
108
106
  railties (>= 3.2.5, < 5)
109
- term-ansicolor (1.3.0)
110
- tins (~> 1.0)
111
- thor (0.19.1)
107
+ term-ansicolor (1.2.2)
108
+ tins (~> 0.8)
109
+ thor (0.18.1)
112
110
  thread_safe (0.3.4)
113
111
  tilt (1.4.1)
114
- tins (1.3.3)
112
+ tins (0.13.2)
115
113
  tzinfo (1.2.2)
116
114
  thread_safe (~> 0.1)
117
- websocket-driver (0.3.5)
115
+ websocket-driver (0.4.0)
118
116
  xpath (2.0.0)
119
117
  nokogiri (~> 1.3)
120
118
 
data/README.md CHANGED
@@ -27,7 +27,7 @@ I came up with the conclusion to organize the javascript code like the ruby code
27
27
  /*
28
28
  * app/assets/javascripts/application.js
29
29
  */
30
-
30
+
31
31
  Rails.app({
32
32
  // Define global helpers here
33
33
  helper: function() {
@@ -57,7 +57,7 @@ Rails.controller('users', {
57
57
  // execute helper
58
58
  h.awesomeHelper();
59
59
  },
60
-
60
+
61
61
  index: function(h) {
62
62
  // Do the same as in new()
63
63
  this.index(h);
@@ -78,17 +78,17 @@ Rails.controller('users', {
78
78
  /*
79
79
  * app/assets/javascripts/controllers/admin/users.js
80
80
  */
81
-
81
+
82
82
  Rails.controller('admin/users', {
83
83
  new: function(h) {
84
84
  // Execute action of foreign controller
85
85
  R.action('users#new');
86
86
  },
87
-
87
+
88
88
  index: function(h) {
89
89
  // Execute foreign helper with arguments
90
90
  R.helper('users', 'awesomeHelper', 1, 2, 3);
91
-
91
+
92
92
  // Execute global helper with arguments
93
93
  R.global('helper', 1, 2, 3);
94
94
  }
@@ -118,7 +118,7 @@ console.log(R('a.global.variable'));
118
118
  /*
119
119
  * app/assets/javascripts/namespaces/admin.js
120
120
  */
121
-
121
+
122
122
  Rails.namespace('admin', function() {
123
123
  // Will be executed on all admin routes (e.g. admin/users#new)
124
124
  console.log('Hello Mr. Admin');
@@ -126,7 +126,7 @@ Rails.namespace('admin', function() {
126
126
  ```
127
127
 
128
128
  #### For more info...
129
- ...just read in ``app/assets/javascripts/rails.js``. I tried my best and documented nearly every line of code :)
129
+ ...just read in ``app/assets/javascripts/rails.js``. I tried my best and documented nearly every line of code :)
130
130
 
131
131
  Installing
132
132
  ==========
@@ -152,3 +152,7 @@ Contributing
152
152
  ============
153
153
 
154
154
  [Fork](https://github.com/tonekk/rails-js/fork) -> Commit -> Pull Request
155
+
156
+ This project uses the [Airbnb Styleguide](https://github.com/airbnb/javascript) as our coding guideline.
157
+ We think this is a good piece of work and worth spreading.
158
+ In case of any doubts refer to the style used around.
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 0.1.0
@@ -49,7 +49,7 @@
49
49
  */
50
50
  listener = function(event) {
51
51
 
52
- if(Rails.config && Rails.config.test) {
52
+ if (Rails.config && Rails.config.test) {
53
53
  return;
54
54
  }
55
55
 
@@ -61,8 +61,8 @@
61
61
  /*
62
62
  * Add support to Turbolinks page changes
63
63
  */
64
- if(typeof Turbolinks !== 'undefined') {
65
- document.addEventListener("page:load", listener);
64
+ if (typeof Turbolinks !== 'undefined') {
65
+ document.addEventListener('page:load', listener);
66
66
  }
67
67
  };
68
68
 
@@ -83,7 +83,7 @@
83
83
  /*
84
84
  * Should not be able to define controller (and helpers) twice
85
85
  */
86
- if(controllers[name]) {
86
+ if (controllers[name]) {
87
87
  throw ['Controller \'', name,
88
88
  '\' is already defined! Please use a namespace'].join('');
89
89
  }
@@ -105,34 +105,34 @@
105
105
  /*
106
106
  * Make sure rails.js has been properly added to the layout
107
107
  */
108
- if(!(this.config && this.config.controller && this.config.action)) {
108
+ if (!(this.config && this.config.controller && this.config.action)) {
109
109
 
110
110
  throw ['No action or controller given.',
111
111
  'It seems like you forgot to add rails.js to your layouts\' header.'].join(' ');
112
112
  }
113
113
 
114
- var controller,
114
+ var controllerName = this.config.controller,
115
115
  namespaceHook,
116
- controllerName = this.config.controller;
116
+ controller;
117
117
 
118
118
  /*
119
119
  * Execute beforeAll() hook if defined
120
120
  */
121
- if(beforeAll && typeof(beforeAll) == 'function') {
121
+ if (beforeAll && typeof(beforeAll) == 'function') {
122
122
  beforeAll();
123
123
  }
124
124
 
125
125
  /*
126
126
  * Take care of namespace (e.g. admin/users)
127
127
  */
128
- if(this.config.namespace) {
128
+ if (this.config.namespace) {
129
129
  controllerName = this.config.namespace + '/' + controllerName;
130
130
 
131
131
  /*
132
132
  * Execute namespace hook if we defined one
133
133
  */
134
134
  namespaceHook = namespaceHooks[this.config.namespace];
135
- if(namespaceHook && typeof(namespaceHook) == 'function') {
135
+ if (namespaceHook && typeof(namespaceHook) == 'function') {
136
136
  namespaceHook();
137
137
  }
138
138
  }
@@ -141,7 +141,7 @@
141
141
  * Find controller and execute method
142
142
  */
143
143
  var controller = controllers[controllerName];
144
- if(controller && controller[this.config.action] &&
144
+ if (controller && controller[this.config.action] &&
145
145
  typeof(controller[this.config.action]) == 'function') {
146
146
 
147
147
  controller[this.config.action](controller.helpers);
@@ -162,7 +162,7 @@
162
162
  /*
163
163
  * Should not be able to define controller (and helpers) twice
164
164
  */
165
- if(namespaceHooks[name]) {
165
+ if (namespaceHooks[name]) {
166
166
  throw ['Namespace \'', name, '\' is already defined!'].join('');
167
167
  }
168
168
 
@@ -192,11 +192,12 @@
192
192
  *
193
193
  */
194
194
  var steps = key.split('.'),
195
- step = data;
195
+ step = data,
196
+ i;
196
197
 
197
- if(arguments.length == 2) {
198
- for(var i = 0; i < steps.length-1; i++) {
199
- if(!step[steps[i]]) {
198
+ if (arguments.length == 2) {
199
+ for (i = 0; i < steps.length-1; i++) {
200
+ if (!step[steps[i]]) {
200
201
  step[steps[i]] = {};
201
202
  }
202
203
 
@@ -206,9 +207,9 @@
206
207
  step[steps[steps.length -1]] = val;
207
208
 
208
209
  } else {
209
- for(var i = 0; i < steps.length; i++) {
210
+ for (i = 0; i < steps.length; i++) {
210
211
  step = step[steps[i]];
211
- if(!step) {
212
+ if (!step) {
212
213
  break;
213
214
  }
214
215
 
@@ -235,14 +236,14 @@
235
236
  /*
236
237
  * Treat 3rd argument as arguments for helper if it is an Array
237
238
  */
238
- if(args.length == 1 && args[0] instanceof Array) {
239
+ if (args.length == 1 && args[0] instanceof Array) {
239
240
  args = args[0];
240
241
  }
241
242
 
242
243
  /*
243
244
  * Choose global helper if controllerName is not given
244
245
  */
245
- if(controllerName) {
246
+ if (controllerName) {
246
247
  controller = controllers[controllerName];
247
248
  helper = controller.helpers[helperName];
248
249
  } else {
@@ -252,8 +253,8 @@
252
253
  /*
253
254
  * Make sure our helper exists
254
255
  */
255
- if(!(helper && typeof(helper) == 'function')) {
256
- if(controllerName) {
256
+ if (!(helper && typeof(helper) == 'function')) {
257
+ if (controllerName) {
257
258
  throw ['Helper \'', helperName, '\' not defined for controller \'',
258
259
  controllerName, '\''].join('');
259
260
  } else {
@@ -299,7 +300,7 @@
299
300
  controllerName = arguments[0],
300
301
  actionName = arguments[1];
301
302
 
302
- if(action.indexOf('#') !== -1) {
303
+ if (action.indexOf('#') !== -1) {
303
304
  controllerName = action.split('#')[0];
304
305
  actionName = action.split('#')[1];
305
306
  }
@@ -309,10 +310,10 @@
309
310
  */
310
311
  controller = controllers[controllerName];
311
312
 
312
- if(!controller) {
313
+ if (!controller) {
313
314
  throw ['Attempting to call action \'', controllerName, '#', actionName,
314
315
  '\', but Controller \'', controllerName, '\' is not defined!'].join('');
315
- } else if(!controller[actionName] || !(typeof(controller[actionName]) == 'function')) {
316
+ } else if (!controller[actionName] || !(typeof(controller[actionName]) == 'function')) {
316
317
  throw ['Attempting to call action \'', controllerName, '#', actionName,
317
318
  '\', but Action \'', actionName, '\' is not defined!'].join('');
318
319
  }
@@ -1,5 +1,5 @@
1
1
  module Rails
2
2
  module JS
3
- VERSION = "0.0.8"
3
+ VERSION = "0.1.0"
4
4
  end
5
5
  end
data/rails-js.gemspec CHANGED
@@ -6,7 +6,7 @@ require "rails/js/version"
6
6
  Gem::Specification.new do |s|
7
7
  s.name = 'rails-js'
8
8
  s.version = Rails::JS::VERSION
9
- s.date = '2014-10-11'
9
+ s.date = Time.now.strftime("%Y-%m-%d")
10
10
  s.summary = "A new approach to structure your javascript in non single-page Rails apps"
11
11
  s.description = "Divide your javascript like you divide your ruby code. Put it in controllers and actions and write clean, scalable code."
12
12
  s.authors = ["Finn-Lenanrt Heemeyer"]
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails-js
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.8
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Finn-Lenanrt Heemeyer
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-10-11 00:00:00.000000000 Z
11
+ date: 2014-11-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -94,6 +94,7 @@ files:
94
94
  - MIT-LICENSE
95
95
  - README.md
96
96
  - Rakefile
97
+ - VERSION
97
98
  - app/assets/javascripts/rails.js
98
99
  - lib/rails/js.rb
99
100
  - lib/rails/js/engine.rb
@@ -171,7 +172,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
171
172
  version: '0'
172
173
  requirements: []
173
174
  rubyforge_project:
174
- rubygems_version: 2.3.0
175
+ rubygems_version: 2.0.14
175
176
  signing_key:
176
177
  specification_version: 4
177
178
  summary: A new approach to structure your javascript in non single-page Rails apps