ember-rails 0.19.3 → 0.20.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.
Files changed (60) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +90 -14
  3. data/app/assets/javascripts/ember-rails/application.module.es6 +20 -0
  4. data/app/assets/javascripts/ember-rails/module_prefix.module.es6.erb +1 -0
  5. data/app/assets/javascripts/ember-rails/shims.js +11 -0
  6. data/lib/ember/rails/engine.rb +10 -1
  7. data/lib/ember/rails/version.rb +1 -1
  8. data/lib/ember_rails.rb +21 -2
  9. data/lib/generators/ember/adapter_generator.rb +1 -1
  10. data/lib/generators/ember/bootstrap_generator.rb +11 -4
  11. data/lib/generators/ember/component_generator.rb +2 -2
  12. data/lib/generators/ember/controller_generator.rb +1 -1
  13. data/lib/generators/ember/generator_helpers.rb +18 -1
  14. data/lib/generators/ember/model_generator.rb +1 -1
  15. data/lib/generators/ember/resource_generator.rb +1 -2
  16. data/lib/generators/ember/route_generator.rb +1 -1
  17. data/lib/generators/ember/template_generator.rb +1 -3
  18. data/lib/generators/ember/view_generator.rb +1 -1
  19. data/lib/generators/templates/{adapter.js.coffee → adapter.coffee} +0 -0
  20. data/lib/generators/templates/{adapter.js.em → adapter.em} +0 -0
  21. data/lib/generators/templates/{app.js.coffee → app.coffee} +0 -0
  22. data/lib/generators/templates/{app.js.em → app.em} +0 -0
  23. data/lib/generators/templates/app.module.es6 +17 -0
  24. data/lib/generators/templates/{application.js.coffee → application.coffee} +1 -0
  25. data/lib/generators/templates/{application.js.em → application.em} +1 -0
  26. data/lib/generators/templates/application.es6 +15 -0
  27. data/lib/generators/templates/application.js +12 -2
  28. data/lib/generators/templates/{application_adapter.js.coffee → application_adapter.coffee} +0 -1
  29. data/lib/generators/templates/{application_adapter.js.em → application_adapter.em} +0 -0
  30. data/lib/generators/templates/application_adapter.js +0 -1
  31. data/lib/generators/templates/application_adapter.module.es6 +4 -0
  32. data/lib/generators/templates/{array_controller.js.coffee → array_controller.coffee} +0 -0
  33. data/lib/generators/templates/{array_controller.js.em → array_controller.em} +0 -0
  34. data/lib/generators/templates/array_controller.module.es6 +7 -0
  35. data/lib/generators/templates/{component.js.coffee → component.coffee} +0 -0
  36. data/lib/generators/templates/{component.js.em → component.em} +0 -0
  37. data/lib/generators/templates/component.module.es6 +7 -0
  38. data/lib/generators/templates/{controller.js.coffee → controller.coffee} +0 -0
  39. data/lib/generators/templates/{controller.js.em → controller.em} +0 -0
  40. data/lib/generators/templates/controller.module.es6 +7 -0
  41. data/lib/generators/templates/environment.coffee +7 -0
  42. data/lib/generators/templates/environment.em +7 -0
  43. data/lib/generators/templates/environment.js +7 -0
  44. data/lib/generators/templates/environment.module.es6 +9 -0
  45. data/lib/generators/templates/{model.js.coffee → model.coffee} +0 -0
  46. data/lib/generators/templates/{model.js.em → model.em} +0 -0
  47. data/lib/generators/templates/model.module.es6 +15 -0
  48. data/lib/generators/templates/{object_controller.js.coffee → object_controller.coffee} +0 -0
  49. data/lib/generators/templates/{object_controller.js.em → object_controller.em} +0 -0
  50. data/lib/generators/templates/object_controller.module.es6 +7 -0
  51. data/lib/generators/templates/{route.js.coffee → route.coffee} +0 -0
  52. data/lib/generators/templates/{route.js.em → route.em} +0 -0
  53. data/lib/generators/templates/route.module.es6 +7 -0
  54. data/lib/generators/templates/{router.js.coffee → router.coffee} +0 -0
  55. data/lib/generators/templates/{router.js.em → router.em} +0 -0
  56. data/lib/generators/templates/router.module.es6 +13 -0
  57. data/lib/generators/templates/{view.js.coffee → view.coffee} +0 -0
  58. data/lib/generators/templates/{view.js.em → view.em} +0 -0
  59. data/lib/generators/templates/view.module.es6 +7 -0
  60. metadata +68 -36
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 5d9cd380daad038d670a1bd54406aa129db1bb0b
4
- data.tar.gz: f71403b6eb29a3d90a6e862249a21ee33c2b9aa2
3
+ metadata.gz: d05c20bcd4934bca81626f572018511151505d17
4
+ data.tar.gz: ed8ade5165062be1d4f8ec0c37c2413163894752
5
5
  SHA512:
6
- metadata.gz: 4c789c701b117ca187f858ae1823f8bd29fcbd2939681390d1ab4d71239520488bb1ebd2e3cd2049b59231e5258d876ff858467b3fbe3d4be61035631396f0e4
7
- data.tar.gz: 44ee4e0b40f63b144fbacf0c4a88cd94c9af976c94663e4676c308b86c54d6013d6765a56c28750bcebaa87a5fbe96437d39de734f0b211bf2462c37df17661d
6
+ metadata.gz: d50b22c47d0ae55ad1a73d25ea7fff9cf083975cd047e28ac79ed2680ea01fb74d20ff23c68982a73aa8f37ab85e1363083a7d73e1c5b7afddaa9c920a1ec19f
7
+ data.tar.gz: bcc836b552105700948d7806bf83a8945eab9b8c3002bd79541341ef61b7b558bfb3b96d0037d1fb595fca6be4894024a63a3d30c73a5cfec4e221bc57999679
data/README.md CHANGED
@@ -33,7 +33,7 @@ Rails supports the ability to build projects from a template source ruby file.
33
33
  To build an Ember centric Rails project you can simply type the following into your command line:
34
34
 
35
35
  ```
36
- rails new my_app -m http://emberjs.com/edge_template.rb
36
+ rails new my-app -m http://emberjs.com/edge_template.rb
37
37
  ```
38
38
 
39
39
  Read more about [Rails application templates](http://edgeguides.rubyonrails.org/rails_application_templates.html) and take a look at the edge_template.rb [source code](https://github.com/emberjs/website/blob/master/source/edge_template.rb).
@@ -59,7 +59,7 @@ Also, ember-rails includes some flags for the bootstrap generator:
59
59
  ```
60
60
  --ember-path or -d # custom ember path
61
61
  --skip-git or -g # skip git keeps
62
- --javascript-engine # engine for javascript (js, coffee or em)
62
+ --javascript-engine # engine for javascript (js, coffee, em or es6)
63
63
  --app-name or -n # custom ember app name
64
64
  ```
65
65
 
@@ -94,6 +94,84 @@ You can now use the flag `--javascript-engine=em` to specify EmberScript
94
94
  assets in your generators, but all of the generators will default to
95
95
  using an EmberScript variant first.
96
96
 
97
+ ## For ES6 support
98
+
99
+ Ember.js recommends using ES6 syntax.
100
+ It is supported by [Babel](https://babeljs.io/) via [ember-es6_template](https://github.com/tricknotes/ember-es6_template).
101
+
102
+ Run the bootstrap generator with an extra flag:
103
+
104
+ ``` sh
105
+ rails g ember:bootstrap --javascript-engine=es6
106
+ ```
107
+
108
+ Note:
109
+
110
+ To use ES6 module in your application, the following configuration is required:
111
+
112
+ ### Single Ember Application
113
+
114
+ This is the case for single Ember application in `app/assets/javascripts` (not under the sub directiry).
115
+
116
+ `my-app.es6`
117
+ ``` javascript
118
+ import Application from 'ember-rails/application';
119
+
120
+ const App = Application.extend({
121
+ // Configure your application.
122
+ });
123
+
124
+ App.create();
125
+ ```
126
+
127
+ `import Application from 'ember-rails/application';` and `Application.extend()` is important.
128
+ It provides customized Ember application to resolve dependencies from ES6 modules instead of `Ember.Application.extend()`.
129
+
130
+ `application.js`
131
+ ``` javascript
132
+ //= require jquery
133
+ //= require ember
134
+ //= require ember-data
135
+ //= require ember-rails/application
136
+ //= require ./my-app
137
+ //= require_self
138
+
139
+ require('my-app'); // Run your Ember.js application
140
+ ```
141
+
142
+ ### Multiple Ember Application
143
+
144
+ This is the case for multiple Ember application in your Rails application.
145
+ (Or your Ember application is placed in sub directories of `app/assets/javascripts`.)
146
+
147
+ First, you should configure `config.ember.module_prefix` to `nil`.
148
+ To disable prepending the module prefix to you modules.
149
+
150
+ `config/application.rb`
151
+ ``` ruby
152
+ config.ember.module_prefix = nil
153
+ ```
154
+
155
+ Second, please specify `modulePrefix` to your Ember application.
156
+
157
+ `my-app/application.module.es6`
158
+ ``` javascript
159
+ import Application from 'ember-rails/application';
160
+ import loadInitializers from 'ember/load-initializers';
161
+
162
+ const App = Application.extend({
163
+ modulePrefix: 'my-app' // This value should be the same as directory name.
164
+ });
165
+
166
+ loadInitializers(App, 'my-app');
167
+
168
+ App.create();
169
+ ```
170
+
171
+ Last, add your endpoint to where you want to run your Ember application.
172
+ ``` javascript
173
+ require('my-app'); // Run your Ember.js application
174
+ ```
97
175
 
98
176
  ## Configuration Options
99
177
 
@@ -105,6 +183,7 @@ config files (`config/application.rb`, `config/environments/development.rb`, etc
105
183
  | `config.ember.variant` | Determines which Ember variant to use. Valid options: `:development`, `:production`. Defaults to `:production` in production, and `:development` everywhere else. |
106
184
  | `config.ember.app_name` | Specificies a default application name for all generators. |
107
185
  | `config.ember.ember_path` | Specifies a default custom root path for all generators. |
186
+ | `config.ember.module_prefix` | Sets module prefix for es6 module. This option is used for only `es6` scripts. Default value: `ember-app`. |
108
187
  | `config.handlebars.precompile` | Enables or disables precompilation. Default value: `true`. |
109
188
  | `config.handlebars.templates_root` | Sets the root path (under `app/assets/javascripts`) for templates to be looked up in. Default value: `"templates"`. |
110
189
  | `config.handlebars.templates_path_separator` | The path separator to use for templates. Default value: `'/'`. |
@@ -147,10 +226,9 @@ to use `rails g ember:bootstrap` to create the following directory structure und
147
226
  ├── helpers
148
227
  ├── mixins
149
228
  ├── models
150
- ├── practicality.js.coffee
151
- ├── router.js.coffee
229
+ ├── practicality.coffee
230
+ ├── router.coffee
152
231
  ├── routes
153
- ├── store.js.coffee
154
232
  ├── templates
155
233
  │ └── components
156
234
  └── views
@@ -161,7 +239,6 @@ By default, it uses the Rails Application's name and creates an `rails_app_name.
161
239
  file to set up application namespace and initial requires:
162
240
 
163
241
  ```javascript
164
- //= require handlebars
165
242
  //= require ember
166
243
  //= require ember-data
167
244
  //= require_self
@@ -197,8 +274,8 @@ If you want to avoid `.gitkeep` files, use the `skip git` option like
197
274
  this: `rails g ember:bootstrap -g`.
198
275
 
199
276
  Ask Rails to serve HandlebarsJS and pre-compile templates to Ember
200
- by putting each template in a dedicated ".js.hjs", ".hbs" or ".handlebars" file
201
- (e.g. `app/assets/javascripts/templates/admin_panel.handlebars`)
277
+ by putting each template in a dedicated ".hbs", ".js.hjs" or ".handlebars" file
278
+ (e.g. `app/assets/javascripts/templates/admin_panel.hbs`)
202
279
  and including the assets in your layout:
203
280
 
204
281
  <%= javascript_include_tag "templates/admin_panel" %>
@@ -207,7 +284,7 @@ If you want to avoid the `templates` prefix, set the `templates_root` option in
207
284
 
208
285
  config.handlebars.templates_root = 'ember_templates'
209
286
 
210
- If you store templates in a file like `app/assets/javascripts/ember_templates/admin_panel.handlebars` after setting the above config,
287
+ If you store templates in a file like `app/assets/javascripts/ember_templates/admin_panel.hbs` after setting the above config,
211
288
  it will be made available to Ember as the `admin_panel` template.
212
289
 
213
290
  _(Note: you must clear the local sprockets cache after modifying `templates_root`, stored by default in `tmp/cache/assets`)_
@@ -243,17 +320,16 @@ Given the following folder structure:
243
320
  ├── helpers
244
321
  ├── mixins
245
322
  ├── models
246
- ├── practicality.js.coffee
247
- ├── router.js.coffee
323
+ ├── practicality.coffee
324
+ ├── router.coffee
248
325
  ├── routes
249
- ├── store.js.coffee
250
326
  ├── templates
251
327
  │ └── components
252
- │ └── my-component.handlebars
328
+ │ └── my-component.hbs
253
329
  └── views
254
330
  ```
255
331
 
256
- and a `my-component.handlebars` file with the following contents:
332
+ and a `my-component.hbs` file with the following contents:
257
333
 
258
334
  <h1>My Component</h1>
259
335
 
@@ -0,0 +1,20 @@
1
+ //= require ember/loader
2
+ //= require ember-rails/shims
3
+ //= require ember/resolver
4
+ //= require ember/load-initializers
5
+ //
6
+ //= require ember-rails/module_prefix
7
+
8
+ import Ember from 'ember';
9
+ import Resolver from 'ember/resolver';
10
+ import loadInitializers from 'ember/load-initializers';
11
+ import modulePrefix from 'ember-rails/module_prefix';
12
+
13
+ let App = Ember.Application.extend({
14
+ modulePrefix: modulePrefix,
15
+ Resolver: Resolver
16
+ });
17
+
18
+ loadInitializers(App, modulePrefix);
19
+
20
+ export default App;
@@ -0,0 +1 @@
1
+ export default <%= Rails.application.config.ember.module_prefix.to_json %>;
@@ -0,0 +1,11 @@
1
+ define('ember', [], function() {
2
+ return {
3
+ 'default': Ember
4
+ };
5
+ });
6
+
7
+ define('ember-data', [], function() {
8
+ return {
9
+ 'default': DS
10
+ };
11
+ });
@@ -1,5 +1,8 @@
1
1
  require 'ember/handlebars/template'
2
2
  require 'active_model_serializers'
3
+ require 'ember/es6_template'
4
+ require 'ember/cli/assets'
5
+
3
6
  require 'sprockets/railtie'
4
7
 
5
8
  module Ember
@@ -17,8 +20,14 @@ module Ember
17
20
 
18
21
  config.before_initialize do |app|
19
22
  Sprockets::Engines #force autoloading
23
+ end
20
24
 
21
- Ember::Handlebars::Template.setup Sprockets
25
+ config.before_initialize do |app|
26
+ Ember::ES6Template.configure do |ember_config|
27
+ ember_config.module_prefix = config.ember.module_prefix
28
+ ember_config.prefix_files = config.ember.prefix_files
29
+ ember_config.prefix_dirs = config.ember.prefix_dirs
30
+ end
22
31
  end
23
32
  end
24
33
  end
@@ -1,5 +1,5 @@
1
1
  module Ember
2
2
  module Rails
3
- VERSION = '0.19.3'
3
+ VERSION = '0.20.0'
4
4
  end
5
5
  end
@@ -16,10 +16,11 @@ module Ember
16
16
  module Rails
17
17
  class Railtie < ::Rails::Railtie
18
18
  config.ember = ActiveSupport::OrderedOptions.new
19
+ config.ember.module_prefix = 'ember-app'
20
+ config.ember.prefix_files = %w(store router)
21
+ config.ember.prefix_dirs = %w(models controllers views routes components helpers mixins serializers adapters)
19
22
 
20
23
  generators do |app|
21
- app ||= ::Rails.application # Rails 3.0.x does not yield `app`
22
-
23
24
  app.config.generators.assets = false
24
25
 
25
26
  ::Rails::Generators.configure!(app.config.generators)
@@ -89,6 +90,24 @@ module Ember
89
90
  end
90
91
  end
91
92
 
93
+ initializer "ember_rails.setup_ember_cli_assets", :after => "ember_rails.setup_vendor", :group => :all do |app|
94
+ configure_assets app do |env|
95
+ env.append_path Ember::CLI::Assets.root
96
+ end
97
+ end
98
+
99
+ initializer "ember_rails.setup_ember_handlebars_template", :after => "ember_rails.setup_vendor", :group => :all do |app|
100
+ configure_assets app do |env|
101
+ Ember::Handlebars::Template.setup env
102
+ end
103
+ end
104
+
105
+ initializer "ember_rails.setup_ember_es6_template", :after => "ember_rails.setup_vendor", :group => :all do |app|
106
+ configure_assets app do |env|
107
+ Ember::ES6Template.setup env
108
+ end
109
+ end
110
+
92
111
  initializer "ember_rails.es5_default", :group => :all do |app|
93
112
  if defined?(Closure::Compiler) && app.config.assets.js_compressor == :closure
94
113
  Closure::Compiler::DEFAULT_OPTIONS[:language_in] = 'ECMASCRIPT5'
@@ -13,7 +13,7 @@ module Ember
13
13
  class_option :app_name, :type => :string, :aliases => "-n", :default => false, :desc => "Custom ember app name"
14
14
 
15
15
  def create_adapter_files
16
- file_path = File.join(ember_path, 'adapters', class_path, "#{file_name}_adapter.#{engine_extension}")
16
+ file_path = File.join(ember_path, 'adapters', class_path, "#{file_name}.#{engine_extension}")
17
17
  template "adapter.#{engine_extension}", file_path
18
18
  end
19
19
  end
@@ -16,13 +16,16 @@ module Ember
16
16
 
17
17
  def inject_ember
18
18
  begin
19
- inject_into_application_file(engine_extension)
19
+ if javascript_engine == 'es6'
20
+ inject_into_application_file('es6') # Don't use `.module.es6`.
21
+ else
22
+ inject_into_application_file(engine_extension)
23
+ end
20
24
  rescue Exception => e
21
25
  inject_into_application_file('js')
22
26
  end
23
27
  end
24
28
 
25
-
26
29
  def create_dir_layout
27
30
  %W{models controllers views routes helpers components templates templates/components mixins adapters}.each do |dir|
28
31
  empty_directory "#{ember_path}/#{dir}"
@@ -31,7 +34,7 @@ module Ember
31
34
  end
32
35
 
33
36
  def create_app_file
34
- template "app.#{engine_extension}", "#{ember_path}/#{application_name.underscore}.#{engine_extension}"
37
+ template "app.#{engine_extension}", "#{ember_path}/#{application_name.underscore.dasherize}.#{engine_extension}"
35
38
  end
36
39
 
37
40
  def create_router_file
@@ -39,7 +42,11 @@ module Ember
39
42
  end
40
43
 
41
44
  def create_adapter_file
42
- template "application_adapter.#{engine_extension}", "#{ember_path}/adapters/application_adapter.#{engine_extension}"
45
+ template "application_adapter.#{engine_extension}", "#{ember_path}/adapters/application.#{engine_extension}"
46
+ end
47
+
48
+ def create_env_file
49
+ template "environment.#{engine_extension}", "#{ember_path}/environment.#{engine_extension}"
43
50
  end
44
51
 
45
52
  private
@@ -14,8 +14,8 @@ module Ember
14
14
  class_option :app_name, :type => :string, :aliases => "-n", :default => false, :desc => "Custom ember app name"
15
15
 
16
16
  def create_component_files
17
- dashed_file_name = file_name.gsub(/_/, '-')
18
- comp_path = File.join(ember_path, 'components', class_path, "#{dashed_file_name}_component.#{engine_extension}")
17
+ dashed_file_name = file_name.dasherize
18
+ comp_path = File.join(ember_path, 'components', class_path, "#{dashed_file_name}.#{engine_extension}")
19
19
  template "component.#{engine_extension}", comp_path
20
20
 
21
21
  templ_path = File.join(ember_path, 'templates/components', class_path, "#{dashed_file_name}.hbs")
@@ -17,7 +17,7 @@ module Ember
17
17
 
18
18
 
19
19
  def create_controller_files
20
- file_path = File.join(ember_path, 'controllers', class_path, "#{file_name}_controller.#{engine_extension}")
20
+ file_path = File.join(ember_path, 'controllers', class_path, "#{file_name.dasherize}.#{engine_extension}")
21
21
 
22
22
  if options.array?
23
23
  template "array_controller.#{engine_extension}", file_path
@@ -45,7 +45,24 @@ module Ember
45
45
  end
46
46
 
47
47
  def engine_extension
48
- @engine_extension ||= "js.#{options[:javascript_engine]}".sub('js.js','js')
48
+ @engine_extension ||= begin
49
+ extension_table = {
50
+ 'js' => 'js',
51
+ 'coffee' => 'coffee',
52
+ 'em' => 'em',
53
+ 'es6' => 'module.es6'
54
+ }
55
+
56
+ extension = extension_table[javascript_engine]
57
+
58
+ raise "Unsupported javascript engine: `#{javascript_engine}` (Supported engines are: [#{extension_table.keys.join(', ')}])" if extension.nil?
59
+
60
+ extension
61
+ end
62
+ end
63
+
64
+ def javascript_engine
65
+ options[:javascript_engine].to_s
49
66
  end
50
67
 
51
68
  def configuration
@@ -13,7 +13,7 @@ module Ember
13
13
  class_option :app_name, :type => :string, :aliases => "-n", :default => false, :desc => "Custom ember app name"
14
14
 
15
15
  def create_model_files
16
- file_path = File.join(ember_path, 'models', class_path, "#{file_name}.#{engine_extension}")
16
+ file_path = File.join(ember_path, 'models', class_path, "#{file_name.dasherize}.#{engine_extension}")
17
17
  template "model.#{engine_extension}", file_path
18
18
  end
19
19
 
@@ -17,11 +17,10 @@ module Ember
17
17
 
18
18
 
19
19
  def create_resource_files
20
-
21
20
  invoke('ember:route', [ name ], options) unless options[:skip_route]
22
21
  invoke('ember:controller', [ name ], options)
23
22
  invoke('ember:view', [ name ], options)
24
- invoke('ember:template', [ name ], options)
23
+ invoke('ember:template', [ name ], options)
25
24
  end
26
25
 
27
26
  end
@@ -13,7 +13,7 @@ module Ember
13
13
  class_option :app_name, :type => :string, :aliases => "-n", :default => false, :desc => "Custom ember app name"
14
14
 
15
15
  def create_route_files
16
- file_path = File.join(ember_path, 'routes', class_path, "#{file_name}_route.#{engine_extension}")
16
+ file_path = File.join(ember_path, 'routes', class_path, "#{file_name.dasherize}.#{engine_extension}")
17
17
  template "route.#{engine_extension}", file_path
18
18
  end
19
19
  end
@@ -11,10 +11,8 @@ module Ember
11
11
  class_option :javascript_engine, :desc => "Engine for JavaScripts"
12
12
  class_option :ember_path, :type => :string, :aliases => "-d", :default => false, :desc => "Custom ember app path"
13
13
 
14
-
15
-
16
14
  def create_template_files
17
- file_path = File.join(ember_path, 'templates', class_path, "#{file_name}.hbs")
15
+ file_path = File.join(ember_path, 'templates', class_path, "#{file_name.dasherize}.hbs")
18
16
  template 'template.hbs', file_path
19
17
  end
20
18
 
@@ -14,7 +14,7 @@ module Ember
14
14
  class_option :app_name, :type => :string, :aliases => "-n", :default => false, :desc => "Custom ember app name"
15
15
 
16
16
  def create_view_files
17
- file_path = File.join(ember_path, 'views', class_path, "#{file_name}_view.#{engine_extension}")
17
+ file_path = File.join(ember_path, 'views', class_path, "#{file_name.dasherize}.#{engine_extension}")
18
18
  template "view.#{engine_extension}", file_path
19
19
  invoke('ember:template', [ name ], options) if options[:with_template]
20
20
  end
@@ -0,0 +1,17 @@
1
+ //= require_tree ./adapters
2
+ //= require_tree ./mixins
3
+ //= require_tree ./models
4
+ //= require_tree ./controllers
5
+ //= require_tree ./views
6
+ //= require_tree ./helpers
7
+ //= require_tree ./components
8
+ //= require_tree ./templates
9
+ //= require_tree ./routes
10
+ //= require ./router
11
+ //
12
+ //= require_self
13
+
14
+ import Application from 'ember-rails/application';
15
+
16
+ // for more details see: http://emberjs.com/guides/application/
17
+ export default Application;
@@ -1,6 +1,7 @@
1
1
  #= require jquery
2
2
  #= require jquery_ujs
3
3
  <%= "#= require handlebars\n" if ::Rails.configuration.handlebars.ember_template == 'Handlebars' -%>
4
+ #= require ./environment
4
5
  #= require ember
5
6
  #= require ember-data
6
7
  #= require active-model-adapter
@@ -1,6 +1,7 @@
1
1
  #= require jquery
2
2
  #= require jquery_ujs
3
3
  <%= "#= require handlebars\n" if ::Rails.configuration.handlebars.ember_template == 'Handlebars' -%>
4
+ #= require ./environment
4
5
  #= require ember
5
6
  #= require ember-data
6
7
  #= require active-model-adapter
@@ -0,0 +1,15 @@
1
+ //= require jquery
2
+ //= require jquery_ujs
3
+ <%= "//= require handlebars\n" if ::Rails.configuration.handlebars.ember_template == 'Handlebars' -%>
4
+ //= require ./environment
5
+ //= require ember
6
+ //= require ember-data
7
+ //= require ember-rails/application
8
+ //
9
+ //= require ./<%= application_name.underscore.dasherize %>
10
+ //= require_self
11
+
12
+ import <%= application_name.camelize %> from '<%= application_name.underscore.dasherize %>';
13
+ // import config from 'environment'; // You can use `config` for application specific variables such as API key, etc.
14
+
15
+ <%= application_name.camelize %>.create();
@@ -1,12 +1,22 @@
1
1
  //= require jquery
2
2
  //= require jquery_ujs
3
3
  <%= "//= require handlebars\n" if ::Rails.configuration.handlebars.ember_template == 'Handlebars' -%>
4
+ //= require ./environment
4
5
  //= require ember
5
6
  //= require ember-data
6
7
  //= require active-model-adapter
8
+ <%- if engine_extension == 'module.es6' -%>
9
+ //= require ember-rails/application
10
+ //
11
+ //= require ./<%= application_name.underscore.dasherize %>
7
12
  //= require_self
8
- //= require ./<%= application_name.underscore %>
13
+
14
+ require('<%= application_name.underscore.dasherize %>');
15
+ <%- else -%>
16
+
17
+ //= require_self
18
+ //= require ./<%= application_name.underscore.dasherize %>
19
+ <%- end -%>
9
20
 
10
21
  // for more details see: http://emberjs.com/guides/application/
11
22
  <%= application_name.camelize %> = Ember.Application.create();
12
-
@@ -1,5 +1,4 @@
1
1
  # Override the default adapter with the `DS.ActiveModelAdapter` which
2
2
 
3
3
  <%= application_name.camelize %>.ApplicationAdapter = DS.ActiveModelAdapter.extend({
4
-
5
4
  })
@@ -1,5 +1,4 @@
1
1
  // Override the default adapter with the `DS.ActiveModelAdapter` which
2
2
  // is built to work nicely with the ActiveModel::Serializers gem.
3
3
  <%= application_name.camelize %>.ApplicationAdapter = DS.ActiveModelAdapter.extend({
4
-
5
4
  });
@@ -0,0 +1,4 @@
1
+ // Override the default adapter with the `DS.ActiveModelAdapter` which
2
+ // is built to work nicely with the ActiveModel::Serializers gem.
3
+ export default DS.ActiveModelAdapter.extend({
4
+ });
@@ -0,0 +1,7 @@
1
+ // for more details see: http://emberjs.com/guides/controllers/representing-multiple-models-with-arraycontroller/
2
+
3
+ import Ember from 'ember';
4
+
5
+ export default Ember.ArrayController.extend({
6
+
7
+ });
@@ -0,0 +1,7 @@
1
+ // for more details see: http://emberjs.com/guides/components/
2
+
3
+ import Ember from 'ember';
4
+
5
+ export default Ember.Component.extend({
6
+
7
+ });
@@ -0,0 +1,7 @@
1
+ // for more details see: http://emberjs.com/guides/controllers/
2
+
3
+ import Ember from 'ember';
4
+
5
+ export default Ember.Controller.extend({
6
+
7
+ });
@@ -0,0 +1,7 @@
1
+ wondow.EmberENV = {
2
+ # FEATURES: {},
3
+ # EXTEND_PROTOTYPES: {
4
+ # Function: false,
5
+ # Array: true
6
+ # }
7
+ }
@@ -0,0 +1,7 @@
1
+ wondow.EmberENV = {
2
+ # FEATURES: {},
3
+ # EXTEND_PROTOTYPES: {
4
+ # Function: false,
5
+ # Array: true
6
+ # }
7
+ }
@@ -0,0 +1,7 @@
1
+ window.EmberENV = {
2
+ // FEATURES: {},
3
+ // EXTEND_PROTOTYPES: {
4
+ // Function: false,
5
+ // Array: true
6
+ // }
7
+ };
@@ -0,0 +1,9 @@
1
+ export default {
2
+ EmberENV: {
3
+ // FEATURES: {},
4
+ // EXTEND_PROTOTYPES: {
5
+ // Function: false,
6
+ // Array: true
7
+ // }
8
+ }
9
+ };
@@ -0,0 +1,15 @@
1
+ // for more details see: http://emberjs.com/guides/models/defining-models/
2
+
3
+ import DS from 'ember-data';
4
+
5
+ export default DS.Model.extend({
6
+ <% attributes.each_with_index do |attribute, idx| -%>
7
+ <%= attribute[:name].camelize(:lower) %>: <%=
8
+ if %w(references belongs_to).member?(attribute[:type])
9
+ "DS.belongsTo('%s')" % attribute[:name].camelize(:lower)
10
+ else
11
+ "DS.attr('%s')" % attribute[:type]
12
+ end
13
+ %><% if (idx < attributes.length-1) %>,<% end %>
14
+ <% end -%>
15
+ });
@@ -0,0 +1,7 @@
1
+ // for more details see: http://emberjs.com/guides/controllers/
2
+
3
+ import Ember from 'ember';
4
+
5
+ export default Ember.ObjectController.extend({
6
+
7
+ });
@@ -0,0 +1,7 @@
1
+ // For more information see: http://emberjs.com/guides/routing/
2
+
3
+ import Ember from 'ember';
4
+
5
+ export default Ember.Route.extend({
6
+
7
+ });
@@ -0,0 +1,13 @@
1
+ // For more information see: http://emberjs.com/guides/routing/
2
+
3
+ import Ember from 'ember';
4
+
5
+ var Router = Ember.Router.extend({
6
+ // location: 'history'
7
+ });
8
+
9
+ Router.map(function() {
10
+ // this.resource('posts');
11
+ });
12
+
13
+ export default Router;
@@ -0,0 +1,7 @@
1
+ // for more details see: http://emberjs.com/guides/views/
2
+
3
+ import Ember from 'ember';
4
+
5
+ export default Ember.View.extend({
6
+ templateName: '<%= handlebars_template_path %>'
7
+ });
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.19.3
4
+ version: 0.20.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: 2015-12-09 00:00:00.000000000 Z
14
+ date: 2016-02-09 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: railties
@@ -118,33 +118,47 @@ dependencies:
118
118
  - !ruby/object:Gem::Version
119
119
  version: '1.0'
120
120
  - !ruby/object:Gem::Dependency
121
- name: bundler
121
+ name: ember-es6_template
122
122
  requirement: !ruby/object:Gem::Requirement
123
123
  requirements:
124
- - - ">="
124
+ - - "~>"
125
125
  - !ruby/object:Gem::Version
126
- version: 1.2.2
127
- type: :development
126
+ version: 0.4.0
127
+ type: :runtime
128
128
  prerelease: false
129
129
  version_requirements: !ruby/object:Gem::Requirement
130
130
  requirements:
131
- - - ">="
131
+ - - "~>"
132
132
  - !ruby/object:Gem::Version
133
- version: 1.2.2
133
+ version: 0.4.0
134
134
  - !ruby/object:Gem::Dependency
135
- name: appraisal
135
+ name: ember-cli-assets
136
+ requirement: !ruby/object:Gem::Requirement
137
+ requirements:
138
+ - - "~>"
139
+ - !ruby/object:Gem::Version
140
+ version: 0.0.1
141
+ type: :runtime
142
+ prerelease: false
143
+ version_requirements: !ruby/object:Gem::Requirement
144
+ requirements:
145
+ - - "~>"
146
+ - !ruby/object:Gem::Version
147
+ version: 0.0.1
148
+ - !ruby/object:Gem::Dependency
149
+ name: bundler
136
150
  requirement: !ruby/object:Gem::Requirement
137
151
  requirements:
138
152
  - - ">="
139
153
  - !ruby/object:Gem::Version
140
- version: 1.0.0
154
+ version: 1.2.2
141
155
  type: :development
142
156
  prerelease: false
143
157
  version_requirements: !ruby/object:Gem::Requirement
144
158
  requirements:
145
159
  - - ">="
146
160
  - !ruby/object:Gem::Version
147
- version: 1.0.0
161
+ version: 1.2.2
148
162
  - !ruby/object:Gem::Dependency
149
163
  name: tzinfo
150
164
  requirement: !ruby/object:Gem::Requirement
@@ -259,6 +273,9 @@ extra_rdoc_files: []
259
273
  files:
260
274
  - LICENSE
261
275
  - README.md
276
+ - app/assets/javascripts/ember-rails/application.module.es6
277
+ - app/assets/javascripts/ember-rails/module_prefix.module.es6.erb
278
+ - app/assets/javascripts/ember-rails/shims.js
262
279
  - lib/ember-rails.rb
263
280
  - lib/ember/rails/engine.rb
264
281
  - lib/ember/rails/version.rb
@@ -275,45 +292,60 @@ files:
275
292
  - lib/generators/ember/route_generator.rb
276
293
  - lib/generators/ember/template_generator.rb
277
294
  - lib/generators/ember/view_generator.rb
295
+ - lib/generators/templates/adapter.coffee
296
+ - lib/generators/templates/adapter.em
278
297
  - lib/generators/templates/adapter.js
279
- - lib/generators/templates/adapter.js.coffee
280
- - lib/generators/templates/adapter.js.em
298
+ - lib/generators/templates/app.coffee
299
+ - lib/generators/templates/app.em
281
300
  - lib/generators/templates/app.js
282
- - lib/generators/templates/app.js.coffee
283
- - lib/generators/templates/app.js.em
301
+ - lib/generators/templates/app.module.es6
302
+ - lib/generators/templates/application.coffee
303
+ - lib/generators/templates/application.em
304
+ - lib/generators/templates/application.es6
284
305
  - lib/generators/templates/application.hbs
285
306
  - lib/generators/templates/application.js
286
- - lib/generators/templates/application.js.coffee
287
- - lib/generators/templates/application.js.em
307
+ - lib/generators/templates/application_adapter.coffee
308
+ - lib/generators/templates/application_adapter.em
288
309
  - lib/generators/templates/application_adapter.js
289
- - lib/generators/templates/application_adapter.js.coffee
290
- - lib/generators/templates/application_adapter.js.em
310
+ - lib/generators/templates/application_adapter.module.es6
311
+ - lib/generators/templates/array_controller.coffee
312
+ - lib/generators/templates/array_controller.em
291
313
  - lib/generators/templates/array_controller.js
292
- - lib/generators/templates/array_controller.js.coffee
293
- - lib/generators/templates/array_controller.js.em
314
+ - lib/generators/templates/array_controller.module.es6
315
+ - lib/generators/templates/component.coffee
316
+ - lib/generators/templates/component.em
294
317
  - lib/generators/templates/component.js
295
- - lib/generators/templates/component.js.coffee
296
- - lib/generators/templates/component.js.em
318
+ - lib/generators/templates/component.module.es6
297
319
  - lib/generators/templates/component.template.hbs
320
+ - lib/generators/templates/controller.coffee
321
+ - lib/generators/templates/controller.em
298
322
  - lib/generators/templates/controller.js
299
- - lib/generators/templates/controller.js.coffee
300
- - lib/generators/templates/controller.js.em
323
+ - lib/generators/templates/controller.module.es6
324
+ - lib/generators/templates/environment.coffee
325
+ - lib/generators/templates/environment.em
326
+ - lib/generators/templates/environment.js
327
+ - lib/generators/templates/environment.module.es6
328
+ - lib/generators/templates/model.coffee
329
+ - lib/generators/templates/model.em
301
330
  - lib/generators/templates/model.js
302
- - lib/generators/templates/model.js.coffee
303
- - lib/generators/templates/model.js.em
331
+ - lib/generators/templates/model.module.es6
332
+ - lib/generators/templates/object_controller.coffee
333
+ - lib/generators/templates/object_controller.em
304
334
  - lib/generators/templates/object_controller.js
305
- - lib/generators/templates/object_controller.js.coffee
306
- - lib/generators/templates/object_controller.js.em
335
+ - lib/generators/templates/object_controller.module.es6
336
+ - lib/generators/templates/route.coffee
337
+ - lib/generators/templates/route.em
307
338
  - lib/generators/templates/route.js
308
- - lib/generators/templates/route.js.coffee
309
- - lib/generators/templates/route.js.em
339
+ - lib/generators/templates/route.module.es6
340
+ - lib/generators/templates/router.coffee
341
+ - lib/generators/templates/router.em
310
342
  - lib/generators/templates/router.js
311
- - lib/generators/templates/router.js.coffee
312
- - lib/generators/templates/router.js.em
343
+ - lib/generators/templates/router.module.es6
313
344
  - lib/generators/templates/template.hbs
345
+ - lib/generators/templates/view.coffee
346
+ - lib/generators/templates/view.em
314
347
  - lib/generators/templates/view.js
315
- - lib/generators/templates/view.js.coffee
316
- - lib/generators/templates/view.js.em
348
+ - lib/generators/templates/view.module.es6
317
349
  homepage: https://github.com/emberjs/ember-rails
318
350
  licenses:
319
351
  - MIT
@@ -334,7 +366,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
334
366
  version: '0'
335
367
  requirements: []
336
368
  rubyforge_project:
337
- rubygems_version: 2.4.5.1
369
+ rubygems_version: 2.5.1
338
370
  signing_key:
339
371
  specification_version: 4
340
372
  summary: Ember for Rails 3.1+