ember-rails 0.15.1 → 0.16.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 +8 -1
- data/lib/ember/handlebars/template.rb +7 -7
- data/lib/ember/rails/engine.rb +1 -0
- data/lib/ember/rails/version.rb +1 -1
- data/lib/ember_rails.rb +4 -4
- data/lib/generators/ember/adapter_generator.rb +21 -0
- data/lib/generators/ember/bootstrap_generator.rb +5 -1
- data/lib/generators/ember/install_generator.rb +0 -2
- data/lib/generators/templates/adapter.js +5 -0
- data/lib/generators/templates/adapter.js.coffee +5 -0
- data/lib/generators/templates/adapter.js.em +3 -0
- data/lib/generators/templates/app.js +1 -0
- data/lib/generators/templates/app.js.coffee +1 -0
- data/lib/generators/templates/app.js.em +1 -0
- data/lib/generators/templates/application_adapter.js +5 -0
- data/lib/generators/templates/application_adapter.js.coffee +5 -0
- data/lib/generators/templates/application_adapter.js.em +3 -0
- data/lib/generators/templates/store.js +0 -7
- data/lib/generators/templates/store.js.coffee +0 -9
- data/lib/generators/templates/store.js.em +0 -4
- metadata +12 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 020f2f3771234456fc51419a375bfe4be3b01be3
|
4
|
+
data.tar.gz: 87e169fa757402db45e3935ee6c3d6068f8bd220
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 175f30b8b6e3a0fbb49ab344efbdf72aa86c626525f08252c7c84e34f7b18ee056406d53a75c28500c94a9d07833abfbad722150472b5898f882692f2b5bd785
|
7
|
+
data.tar.gz: 95eb8fcc6923aab085c665650ab0f0dab20c7116f596bd631589127aaa56ec76b6a51fd7c3e24aa5c494b8610ba1384c1c784f8e8e8040aebceddd40ac08daf9
|
data/README.md
CHANGED
@@ -112,13 +112,14 @@ config files (`config/application.rb`, `config/environments/development.rb`, etc
|
|
112
112
|
|
113
113
|
| Configuration Option | Description |
|
114
114
|
|----------------------------------------------|---------------------------------------------------------------------------------------------------------------------|
|
115
|
-
| `config.ember.variant` | Determines which Ember variant to use. Valid options: `:development`, `:production`.
|
115
|
+
| `config.ember.variant` | Determines which Ember variant to use. Valid options: `:development`, `:production`. Defaults to `:production` in production, and `:development` everywhere else. |
|
116
116
|
| `config.ember.app_name` | Specificies a default application name for all generators. |
|
117
117
|
| `config.ember.ember_path` | Specifies a default custom root path for all generators. |
|
118
118
|
| `config.handlebars.precompile` | Enables or disables precompilation. Default value: `true`. |
|
119
119
|
| `config.handlebars.templates_root` | Sets the root path (under `app/assets/javascripts`) for templates to be looked up in. Default value: `"templates"`. |
|
120
120
|
| `config.handlebars.templates_path_separator` | The path separator to use for templates. Default value: `'/'`. |
|
121
121
|
| `config.handlebars.output_type` | Configures the style of output (options are `:amd` and `:global`). Default value: `:global`. |
|
122
|
+
| `config.handlebars.ember_template` | Default which Ember template type to compile. Valid options: `'Handlebars', `HTMLBars`. Defaults to 'Handlebars`' when `Ember::VERSION` is under 1.10.0, `HTMLBars` when `Ember::VERSION` is over 1.10.0. |
|
122
123
|
|
123
124
|
Note:
|
124
125
|
|
@@ -149,6 +150,7 @@ Ember does not require an organized file structure. However, ember-rails allows
|
|
149
150
|
to use `rails g ember:bootstrap` to create the following directory structure under `app/assets/javascripts`:
|
150
151
|
|
151
152
|
```
|
153
|
+
├── adapters
|
152
154
|
├── components
|
153
155
|
├── controllers
|
154
156
|
├── helpers
|
@@ -194,6 +196,10 @@ RailsAppName = Ember.Application.create();
|
|
194
196
|
create app/assets/javascripts/templates/.gitkeep
|
195
197
|
create app/assets/javascripts/templates/components
|
196
198
|
create app/assets/javascripts/templates/components/.gitkeep
|
199
|
+
create app/assets/javascripts/mixins
|
200
|
+
create app/assets/javascripts/mixins/.gitkeep
|
201
|
+
create app/assets/javascripts/adapters
|
202
|
+
create app/assets/javascripts/adapters/.gitkeep
|
197
203
|
create app/assets/javascripts/app.js
|
198
204
|
|
199
205
|
If you want to avoid `.gitkeep` files, use the `skip git` option like
|
@@ -251,6 +257,7 @@ When necessary, ember-rails adheres to a conventional folder structure. To creat
|
|
251
257
|
Given the following folder structure:
|
252
258
|
|
253
259
|
```
|
260
|
+
├── adapters
|
254
261
|
├── components
|
255
262
|
├── controllers
|
256
263
|
├── helpers
|
@@ -24,13 +24,13 @@ module Ember
|
|
24
24
|
if raw
|
25
25
|
template = precompile_handlebars(template)
|
26
26
|
else
|
27
|
-
template = precompile_ember_handlebars(template)
|
27
|
+
template = precompile_ember_handlebars(template, configuration.ember_template)
|
28
28
|
end
|
29
29
|
else
|
30
30
|
if raw
|
31
31
|
template = compile_handlebars(data)
|
32
32
|
else
|
33
|
-
template = compile_ember_handlebars(template)
|
33
|
+
template = compile_ember_handlebars(template, configuration.ember_template)
|
34
34
|
end
|
35
35
|
end
|
36
36
|
|
@@ -64,15 +64,15 @@ module Ember
|
|
64
64
|
end
|
65
65
|
|
66
66
|
def precompile_handlebars(string)
|
67
|
-
Barber::
|
67
|
+
"Handlebars.template(#{Barber::Precompiler.compile(string)});"
|
68
68
|
end
|
69
69
|
|
70
|
-
def compile_ember_handlebars(string)
|
71
|
-
"Ember.
|
70
|
+
def compile_ember_handlebars(string, ember_template = 'Handlebars')
|
71
|
+
"Ember.#{ember_template}.compile(#{indent(string).inspect});"
|
72
72
|
end
|
73
73
|
|
74
|
-
def precompile_ember_handlebars(string)
|
75
|
-
Barber::Ember::
|
74
|
+
def precompile_ember_handlebars(string, ember_template = 'Handlebars')
|
75
|
+
"Ember.#{ember_template}.template(#{Barber::Ember::Precompiler.compile(string)});"
|
76
76
|
end
|
77
77
|
|
78
78
|
def mustache_to_handlebars(scope, template)
|
data/lib/ember/rails/engine.rb
CHANGED
@@ -11,6 +11,7 @@ module Ember
|
|
11
11
|
config.handlebars.templates_root = "templates"
|
12
12
|
config.handlebars.templates_path_separator = '/'
|
13
13
|
config.handlebars.output_type = :global
|
14
|
+
config.handlebars.ember_template = Ember::VERSION =~ /\A1.[0-9]\./ ? 'Handlebars' : 'HTMLBars'
|
14
15
|
|
15
16
|
config.before_initialize do |app|
|
16
17
|
Sprockets::Engines #force autoloading
|
data/lib/ember/rails/version.rb
CHANGED
data/lib/ember_rails.rb
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
require 'rails'
|
2
|
-
require 'ember/rails/version'
|
3
|
-
require 'ember/rails/engine'
|
4
2
|
require 'ember/source'
|
5
3
|
require 'ember/data/source'
|
4
|
+
require 'ember/rails/version'
|
5
|
+
require 'ember/rails/engine'
|
6
6
|
require 'handlebars/source'
|
7
7
|
|
8
8
|
module Ember
|
@@ -23,8 +23,8 @@ module Ember
|
|
23
23
|
initializer "ember_rails.setup_vendor", :after => "ember_rails.setup", :group => :all do |app|
|
24
24
|
variant = app.config.ember.variant || (::Rails.env.production? ? :production : :development)
|
25
25
|
|
26
|
-
# Copy over the desired ember
|
27
|
-
# ember-source
|
26
|
+
# Copy over the desired ember and ember-data bundled in
|
27
|
+
# ember-source and ember-data-source to a tmp folder.
|
28
28
|
tmp_path = app.root.join("tmp/ember-rails")
|
29
29
|
FileUtils.mkdir_p(tmp_path)
|
30
30
|
|
@@ -0,0 +1,21 @@
|
|
1
|
+
require 'generators/ember/generator_helpers'
|
2
|
+
|
3
|
+
module Ember
|
4
|
+
module Generators
|
5
|
+
class AdapterGenerator < ::Rails::Generators::NamedBase
|
6
|
+
include Ember::Generators::GeneratorHelpers
|
7
|
+
|
8
|
+
source_root File.expand_path("../../templates", __FILE__)
|
9
|
+
|
10
|
+
desc "Creates a new Ember.js adapter"
|
11
|
+
class_option :ember_path, :type => :string, :aliases => "-d", :default => false, :desc => "Custom ember app path"
|
12
|
+
class_option :javascript_engine, :desc => "Engine for JavaScripts"
|
13
|
+
class_option :app_name, :type => :string, :aliases => "-n", :default => false, :desc => "Custom ember app name"
|
14
|
+
|
15
|
+
def create_adapter_files
|
16
|
+
file_path = File.join(ember_path, 'adapters', class_path, "#{file_name}_adapter.#{engine_extension}")
|
17
|
+
template "adapter.#{engine_extension}", file_path
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -24,7 +24,7 @@ module Ember
|
|
24
24
|
|
25
25
|
|
26
26
|
def create_dir_layout
|
27
|
-
%W{models controllers views routes helpers components templates templates/components mixins}.each do |dir|
|
27
|
+
%W{models controllers views routes helpers components templates templates/components mixins adapters}.each do |dir|
|
28
28
|
empty_directory "#{ember_path}/#{dir}"
|
29
29
|
create_file "#{ember_path}/#{dir}/.gitkeep" unless options[:skip_git]
|
30
30
|
end
|
@@ -42,6 +42,10 @@ module Ember
|
|
42
42
|
template "store.#{engine_extension}", "#{ember_path}/store.#{engine_extension}"
|
43
43
|
end
|
44
44
|
|
45
|
+
def create_adapter_file
|
46
|
+
template "application_adapter.#{engine_extension}", "#{ember_path}/adapters/application_adapter.#{engine_extension}"
|
47
|
+
end
|
48
|
+
|
45
49
|
private
|
46
50
|
|
47
51
|
def inject_into_application_file(safe_extension)
|
@@ -10,12 +10,10 @@ module Ember
|
|
10
10
|
|
11
11
|
class InvalidChannel < ::Thor::Error; end
|
12
12
|
class ConflictingOptions < ::Thor::Error; end
|
13
|
-
class Deprecated < ::Thor::Error; end
|
14
13
|
class InsufficientOptions < ::Thor::Error; end
|
15
14
|
|
16
15
|
::InvalidChannel = InvalidChannel
|
17
16
|
::ConflictingOptions = ConflictingOptions
|
18
|
-
::Deprecated = Deprecated
|
19
17
|
::InsufficientOptions = InsufficientOptions
|
20
18
|
|
21
19
|
desc "Install Ember.js into your vendor folder"
|
@@ -1,10 +1,3 @@
|
|
1
|
-
// Override the default adapter with the `DS.ActiveModelAdapter` which
|
2
|
-
// is built to work nicely with the ActiveModel::Serializers gem.
|
3
|
-
<%= application_name.camelize %>.ApplicationAdapter = DS.ActiveModelAdapter.extend({
|
4
|
-
|
5
|
-
});
|
6
|
-
|
7
|
-
|
8
1
|
// Adds X-CSRF-Token to all REST requests.
|
9
2
|
// Allows for the use of Rails protect_from_forgery
|
10
3
|
// The CSRF Token is normally found in app/views/layouts/application.html.*
|
@@ -1,12 +1,3 @@
|
|
1
|
-
# http://emberjs.com/guides/models/#toc_store
|
2
|
-
# http://emberjs.com/guides/models/pushing-records-into-the-store/
|
3
|
-
|
4
|
-
# Override the default adapter with the `DS.ActiveModelAdapter` which
|
5
|
-
# is built to work nicely with the ActiveModel::Serializers gem.
|
6
|
-
<%= application_name.camelize %>.ApplicationAdapter = DS.ActiveModelAdapter.extend({
|
7
|
-
|
8
|
-
})
|
9
|
-
|
10
1
|
# Adds X-CSRF-Token to all REST requests.
|
11
2
|
# Allows for the use of Rails protect_from_forgery
|
12
3
|
# The CSRF Token is normally found in app/views/layouts/application.html.*
|
@@ -1,7 +1,3 @@
|
|
1
|
-
# Override the default adapter with the `DS.ActiveModelAdapter` which
|
2
|
-
# is built to work nicely with the ActiveModel::Serializers gem.
|
3
|
-
class <%= application_name.camelize %>.ApplicationAdapter extends DS.ActiveModelAdapter
|
4
|
-
|
5
1
|
# Adds X-CSRF-Token to all REST requests.
|
6
2
|
# Allows for the use of Rails protect_from_forgery
|
7
3
|
# The CSRF Token is normally found in app/views/layouts/application.html.*
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ember-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.16.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Keith Pitt
|
@@ -11,7 +11,7 @@ authors:
|
|
11
11
|
autorequire:
|
12
12
|
bindir: bin
|
13
13
|
cert_chain: []
|
14
|
-
date: 2014-12-
|
14
|
+
date: 2014-12-28 00:00:00.000000000 Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: execjs
|
@@ -61,14 +61,14 @@ dependencies:
|
|
61
61
|
requirements:
|
62
62
|
- - ">="
|
63
63
|
- !ruby/object:Gem::Version
|
64
|
-
version: 0.
|
64
|
+
version: 0.6.0
|
65
65
|
type: :runtime
|
66
66
|
prerelease: false
|
67
67
|
version_requirements: !ruby/object:Gem::Requirement
|
68
68
|
requirements:
|
69
69
|
- - ">="
|
70
70
|
- !ruby/object:Gem::Version
|
71
|
-
version: 0.
|
71
|
+
version: 0.6.0
|
72
72
|
- !ruby/object:Gem::Dependency
|
73
73
|
name: jquery-rails
|
74
74
|
requirement: !ruby/object:Gem::Requirement
|
@@ -224,6 +224,7 @@ files:
|
|
224
224
|
- lib/ember/rails/engine.rb
|
225
225
|
- lib/ember/rails/version.rb
|
226
226
|
- lib/ember_rails.rb
|
227
|
+
- lib/generators/ember/adapter_generator.rb
|
227
228
|
- lib/generators/ember/bootstrap_generator.rb
|
228
229
|
- lib/generators/ember/component_generator.rb
|
229
230
|
- lib/generators/ember/controller_generator.rb
|
@@ -235,6 +236,9 @@ files:
|
|
235
236
|
- lib/generators/ember/route_generator.rb
|
236
237
|
- lib/generators/ember/template_generator.rb
|
237
238
|
- lib/generators/ember/view_generator.rb
|
239
|
+
- lib/generators/templates/adapter.js
|
240
|
+
- lib/generators/templates/adapter.js.coffee
|
241
|
+
- lib/generators/templates/adapter.js.em
|
238
242
|
- lib/generators/templates/app.js
|
239
243
|
- lib/generators/templates/app.js.coffee
|
240
244
|
- lib/generators/templates/app.js.em
|
@@ -242,6 +246,9 @@ files:
|
|
242
246
|
- lib/generators/templates/application.js
|
243
247
|
- lib/generators/templates/application.js.coffee
|
244
248
|
- lib/generators/templates/application.js.em
|
249
|
+
- lib/generators/templates/application_adapter.js
|
250
|
+
- lib/generators/templates/application_adapter.js.coffee
|
251
|
+
- lib/generators/templates/application_adapter.js.em
|
245
252
|
- lib/generators/templates/array_controller.js
|
246
253
|
- lib/generators/templates/array_controller.js.coffee
|
247
254
|
- lib/generators/templates/array_controller.js.em
|
@@ -290,7 +297,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
290
297
|
version: '0'
|
291
298
|
requirements: []
|
292
299
|
rubyforge_project:
|
293
|
-
rubygems_version: 2.
|
300
|
+
rubygems_version: 2.2.2
|
294
301
|
signing_key:
|
295
302
|
specification_version: 4
|
296
303
|
summary: Ember for Rails 3.1+
|