emberjs-rails 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.
Files changed (92) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +21 -0
  3. data/README.md +43 -0
  4. data/app/assets/javascripts/ember-rails/application.module.es6 +20 -0
  5. data/app/assets/javascripts/ember-rails/module_prefix.module.es6.erb +1 -0
  6. data/app/assets/javascripts/ember-rails/shims.js +11 -0
  7. data/lib/ember/rails/engine.rb +32 -0
  8. data/lib/ember/rails/version.rb +7 -0
  9. data/lib/ember_rails.rb +137 -0
  10. data/lib/emberjs-rails.rb +3 -0
  11. data/lib/generators/ember/adapter_generator.rb +23 -0
  12. data/lib/generators/ember/bootstrap_generator.rb +95 -0
  13. data/lib/generators/ember/component_generator.rb +28 -0
  14. data/lib/generators/ember/controller_generator.rb +35 -0
  15. data/lib/generators/ember/generator_helpers.rb +76 -0
  16. data/lib/generators/ember/initializer_generator.rb +25 -0
  17. data/lib/generators/ember/install_generator.rb +186 -0
  18. data/lib/generators/ember/instance_initializer_generator.rb +26 -0
  19. data/lib/generators/ember/model_generator.rb +51 -0
  20. data/lib/generators/ember/resource_generator.rb +30 -0
  21. data/lib/generators/ember/resource_override.rb +37 -0
  22. data/lib/generators/ember/route_generator.rb +23 -0
  23. data/lib/generators/ember/service_generator.rb +25 -0
  24. data/lib/generators/ember/template_generator.rb +22 -0
  25. data/lib/generators/ember/view_generator.rb +25 -0
  26. data/lib/generators/templates/adapter.coffee +5 -0
  27. data/lib/generators/templates/adapter.em +3 -0
  28. data/lib/generators/templates/adapter.js +5 -0
  29. data/lib/generators/templates/app.coffee +11 -0
  30. data/lib/generators/templates/app.em +11 -0
  31. data/lib/generators/templates/app.js +11 -0
  32. data/lib/generators/templates/app.module.es6 +17 -0
  33. data/lib/generators/templates/application.coffee +12 -0
  34. data/lib/generators/templates/application.em +12 -0
  35. data/lib/generators/templates/application.es6 +15 -0
  36. data/lib/generators/templates/application.hbs +3 -0
  37. data/lib/generators/templates/application.js +22 -0
  38. data/lib/generators/templates/application_adapter.coffee +4 -0
  39. data/lib/generators/templates/application_adapter.em +3 -0
  40. data/lib/generators/templates/application_adapter.js +4 -0
  41. data/lib/generators/templates/application_adapter.module.es6 +4 -0
  42. data/lib/generators/templates/array_controller.coffee +5 -0
  43. data/lib/generators/templates/array_controller.em +3 -0
  44. data/lib/generators/templates/array_controller.js +5 -0
  45. data/lib/generators/templates/array_controller.module.es6 +7 -0
  46. data/lib/generators/templates/component.coffee +5 -0
  47. data/lib/generators/templates/component.em +5 -0
  48. data/lib/generators/templates/component.js +4 -0
  49. data/lib/generators/templates/component.module.es6 +7 -0
  50. data/lib/generators/templates/component.template.hbs +1 -0
  51. data/lib/generators/templates/controller.coffee +5 -0
  52. data/lib/generators/templates/controller.em +3 -0
  53. data/lib/generators/templates/controller.js +5 -0
  54. data/lib/generators/templates/controller.module.es6 +7 -0
  55. data/lib/generators/templates/environment.coffee +7 -0
  56. data/lib/generators/templates/environment.em +7 -0
  57. data/lib/generators/templates/environment.js +7 -0
  58. data/lib/generators/templates/environment.module.es6 +9 -0
  59. data/lib/generators/templates/initializer.coffee +6 -0
  60. data/lib/generators/templates/initializer.em +5 -0
  61. data/lib/generators/templates/initializer.js +7 -0
  62. data/lib/generators/templates/initializer.module.es6 +7 -0
  63. data/lib/generators/templates/instance-initializer.coffee +6 -0
  64. data/lib/generators/templates/instance-initializer.em +6 -0
  65. data/lib/generators/templates/instance-initializer.js +7 -0
  66. data/lib/generators/templates/instance-initializer.module.es6 +7 -0
  67. data/lib/generators/templates/model.coffee +12 -0
  68. data/lib/generators/templates/model.em +12 -0
  69. data/lib/generators/templates/model.js +13 -0
  70. data/lib/generators/templates/model.module.es6 +15 -0
  71. data/lib/generators/templates/object_controller.coffee +5 -0
  72. data/lib/generators/templates/object_controller.em +3 -0
  73. data/lib/generators/templates/object_controller.js +5 -0
  74. data/lib/generators/templates/object_controller.module.es6 +7 -0
  75. data/lib/generators/templates/route.coffee +5 -0
  76. data/lib/generators/templates/route.em +3 -0
  77. data/lib/generators/templates/route.js +5 -0
  78. data/lib/generators/templates/route.module.es6 +7 -0
  79. data/lib/generators/templates/router.coffee +4 -0
  80. data/lib/generators/templates/router.em +4 -0
  81. data/lib/generators/templates/router.js +5 -0
  82. data/lib/generators/templates/router.module.es6 +13 -0
  83. data/lib/generators/templates/service.coffee +3 -0
  84. data/lib/generators/templates/service.em +1 -0
  85. data/lib/generators/templates/service.js +3 -0
  86. data/lib/generators/templates/service.module.es6 +5 -0
  87. data/lib/generators/templates/template.hbs +5 -0
  88. data/lib/generators/templates/view.coffee +4 -0
  89. data/lib/generators/templates/view.em +4 -0
  90. data/lib/generators/templates/view.js +5 -0
  91. data/lib/generators/templates/view.module.es6 +7 -0
  92. metadata +413 -0
@@ -0,0 +1,186 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'generators/ember/generator_helpers'
4
+ require 'net/http'
5
+ require 'uri'
6
+ require 'fileutils'
7
+
8
+ module Ember
9
+ module Generators
10
+ class InstallGenerator < ::Rails::Generators::Base
11
+ class InvalidChannel < ::Thor::Error; end
12
+ class ConflictingOptions < ::Thor::Error; end
13
+ class InsufficientOptions < ::Thor::Error; end
14
+
15
+ ::InvalidChannel = InvalidChannel
16
+ ::ConflictingOptions = ConflictingOptions
17
+ ::InsufficientOptions = InsufficientOptions
18
+
19
+ desc 'Install Ember.js into your vendor folder'
20
+ class_option :head,
21
+ type: :boolean,
22
+ default: false,
23
+ desc: 'Download Ember.js & Ember data from canary channel. This is deprecated. Use channel instead.'
24
+ class_option :channel,
25
+ type: :string,
26
+ required: false,
27
+ desc: "Ember release channel Choose between 'release', 'beta' or 'canary'"
28
+ class_option :ember_only,
29
+ type: :boolean,
30
+ required: false,
31
+ desc: 'Only download Ember.',
32
+ aliases: '--ember'
33
+ class_option :ember_data_only,
34
+ type: :boolean,
35
+ required: false,
36
+ desc: 'Only download ember-data',
37
+ aliases: '--ember-data'
38
+ class_option :tag,
39
+ type: :string,
40
+ required: false,
41
+ desc: 'Download tagged release use syntax v1.0.0-beta.3/ember-data & v1.0.0-rc.8/ember'
42
+
43
+ def initialize(args = [], options = {}, config = {})
44
+ super(args, options, config)
45
+ check_options
46
+ process_options
47
+ end
48
+
49
+ def ember
50
+ unless options.ember_data_only?
51
+ get_ember_js_for(:development)
52
+ get_ember_js_for(:production)
53
+ end
54
+ rescue Thor::Error
55
+ say('WARNING: no ember files on this channel or tag', :yellow)
56
+ end
57
+
58
+ def ember_data
59
+ unless options.ember_only?
60
+ get_ember_data_for(:development)
61
+ get_ember_data_for(:production)
62
+ end
63
+ rescue Thor::Error
64
+ say('WARNING: no ember-data files on this channel or tag', :yellow)
65
+ end
66
+
67
+ private
68
+
69
+ def get_ember_data_for(environment)
70
+ create_file "vendor/assets/ember/#{environment}/ember-data.js" do
71
+ fetch url_for(channel, 'ember-data', environment), "vendor/assets/ember/#{environment}/ember-data.js"
72
+ end
73
+
74
+ sourcemap_url = "#{base_url}/#{channel}/ember-data.js.map"
75
+ if resource_exist?(sourcemap_url)
76
+ create_file "vendor/assets/ember/#{environment}/ember-data.js.map" do
77
+ fetch sourcemap_url, "vendor/assets/ember/#{environment}/ember-data.js.map", false
78
+ end
79
+ end
80
+ end
81
+
82
+ def get_ember_js_for(environment)
83
+ create_file "vendor/assets/ember/#{environment}/ember.js" do
84
+ fetch url_for(channel, 'ember', environment), "vendor/assets/ember/#{environment}/ember.js"
85
+ end
86
+
87
+ compiler_url = "#{base_url}/#{channel}/ember-template-compiler.js"
88
+ if resource_exist?(compiler_url)
89
+ create_file "vendor/assets/ember/#{environment}/ember-template-compiler.js" do
90
+ fetch "#{base_url}/#{channel}/ember-template-compiler.js",
91
+ "vendor/assets/ember/#{environment}/ember-template-compiler.js"
92
+ end
93
+ end
94
+ end
95
+
96
+ def url_for(channel, component, environment)
97
+ base = "#{base_url}/#{channel}/#{component}"
98
+
99
+ case environment
100
+ when :production
101
+ "#{base}.prod.js"
102
+ when :development
103
+ if resource_exist?("#{base}.debug.js")
104
+ "#{base}.debug.js" # Ember.js 1.10.0.beta.1 or later
105
+ else
106
+ "#{base}.js"
107
+ end
108
+ end
109
+ end
110
+
111
+ def check_options
112
+ say('WARNING: --head option is deprecated in favor of --channel=canary', :yellow) if options.head?
113
+ if options.head? && options.channel?
114
+ say 'ERROR: conflicting options. --head and --channel. Use either --head or --channel=<channel>', :red
115
+ raise ConflictingOptions
116
+ end
117
+ if options.channel? && !%w[release beta canary].include?(options[:channel])
118
+ say 'ERROR: channel can either be release, beta or canary', :red
119
+ raise InvalidChannel
120
+ end
121
+ if options.channel? && options.tag?
122
+ say 'ERROR: conflicting options. --tag and --channel. --tag is incompatible with other options', :red
123
+ raise ConflictingOptions
124
+ end
125
+ if options.head? && options.tag?
126
+ say 'ERROR: conflicting options. --tag and --head. --tag is incompatible with other options', :red
127
+ raise ConflictingOptions
128
+ end
129
+ if options.tag? && !(options.ember_only? || options.ember_data_only?)
130
+ say 'ERROR: insufficient options. --tag needs to be combined with eithe --ember or --ember-data', :red
131
+ raise InsufficientOptions
132
+ end
133
+ end
134
+
135
+ def process_options
136
+ @channel = :canary if options.head?
137
+ @channel = "tags/#{options.tag}" if options.tag?
138
+ end
139
+
140
+ def base_url
141
+ 'http://builds.emberjs.com'
142
+ end
143
+
144
+ def channel
145
+ @channel ||= if options.channel
146
+ options[:channel]
147
+ else
148
+ :release
149
+ end
150
+ end
151
+
152
+ def fetch(from, to, prepend_verbose = true)
153
+ message = "#{from} -> #{to}"
154
+ say_status('downloading:', message, :green)
155
+
156
+ uri = URI(from)
157
+ output = StringIO.new
158
+ if prepend_verbose
159
+ output.puts "// Fetched from channel: #{channel}, with url " + uri.to_s
160
+ output.puts "// Fetched on: #{Time.now.utc.iso8601}"
161
+ end
162
+
163
+ response = Net::HTTP.get_response(uri)
164
+ case response.code
165
+ when '404'
166
+ say "ERROR: Error reading the content from the channel with url #{from}. File not found", :red
167
+ raise Thor::Error
168
+ when '200'
169
+ output.puts response.body.force_encoding('UTF-8')
170
+ else
171
+ say "ERROR: Unexpected error with status #{response.code} reading the content from the channel with url #{from}.",
172
+ :red
173
+ raise Thor::Error
174
+ end
175
+ output.rewind
176
+ output.read
177
+ end
178
+
179
+ def resource_exist?(target)
180
+ uri = URI(target)
181
+ response = Net::HTTP.new(uri.host, uri.port).head(uri.path)
182
+ response.code == '200'
183
+ end
184
+ end
185
+ end
186
+ end
@@ -0,0 +1,26 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'generators/ember/generator_helpers'
4
+
5
+ module Ember
6
+ module Generators
7
+ class InstanceInitializerGenerator < ::Rails::Generators::NamedBase
8
+ include Ember::Generators::GeneratorHelpers
9
+
10
+ source_root File.expand_path('../templates', __dir__)
11
+
12
+ desc 'Creates a new Ember.js instance initializer'
13
+
14
+ class_option :javascript_engine, desc: 'Engine for JavaScripts'
15
+ class_option :ember_path, type: :string, aliases: '-d', desc: 'Custom ember app path'
16
+ class_option :app_name, type: :string, aliases: '-n', desc: 'Custom ember app name'
17
+
18
+ def create_instance_initializer_files
19
+ file_path = File.join(ember_path, 'instance-initializers', class_path,
20
+ "#{file_name.dasherize}.#{engine_extension}")
21
+
22
+ template "instance-initializer.#{engine_extension}", file_path
23
+ end
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,51 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'generators/ember/generator_helpers'
4
+
5
+ module Ember
6
+ module Generators
7
+ class ModelGenerator < ::Rails::Generators::NamedBase
8
+ include Ember::Generators::GeneratorHelpers
9
+
10
+ source_root File.expand_path('../templates', __dir__)
11
+ desc 'creates a new ember.js model'
12
+ argument :attributes, type: :array, default: [], banner: 'field[:type] field[:type] ...'
13
+ class_option :javascript_engine, desc: 'engine for javascripts'
14
+ class_option :ember_path, type: :string, aliases: '-d', desc: 'custom ember app path'
15
+ class_option :app_name, type: :string, aliases: '-n', desc: 'Custom ember app name'
16
+
17
+ def create_model_files
18
+ file_path = File.join(ember_path, 'models', class_path, "#{file_name.dasherize}.#{engine_extension}")
19
+ template "model.#{engine_extension}", file_path
20
+ end
21
+
22
+ private
23
+
24
+ EMBER_TYPE_LOOKUP = {
25
+ nil => 'string',
26
+ :binary => 'string',
27
+ :string => 'string',
28
+ :text => 'string',
29
+ :boolean => 'boolean',
30
+ :date => 'date',
31
+ :datetime => 'date',
32
+ :time => 'date',
33
+ :timestamp => 'date',
34
+ :decimal => 'number',
35
+ :float => 'number',
36
+ :integer => 'number',
37
+ :primary_key => 'number'
38
+ }.freeze
39
+
40
+ def parse_attributes!
41
+ self.attributes = (attributes || []).map do |attr|
42
+ name, type = attr.split(':')
43
+ key = type.try(:to_sym)
44
+ ember_type = EMBER_TYPE_LOOKUP[key] || type
45
+
46
+ { name: name, type: ember_type }
47
+ end
48
+ end
49
+ end
50
+ end
51
+ end
@@ -0,0 +1,30 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'generators/ember/generator_helpers'
4
+
5
+ module Ember
6
+ module Generators
7
+ class ResourceGenerator < ::Rails::Generators::NamedBase
8
+ include Ember::Generators::GeneratorHelpers
9
+
10
+ source_root File.expand_path('../templates', __dir__)
11
+
12
+ desc 'Creates a new Ember.js router, controller, view and template'
13
+
14
+ class_option :javascript_engine, desc: 'Engine for JavaScripts'
15
+ class_option :skip_route, type: :boolean, default: false, desc: "Don't create route"
16
+ class_option :array, type: :boolean, default: false,
17
+ desc: 'Create an Ember.ArrayController to represent multiple objects'
18
+ class_option :object, type: :boolean, default: false,
19
+ desc: 'Create an Ember.Controller to represent a single object'
20
+ class_option :app_name, type: :string, aliases: '-n', desc: 'Custom ember app name'
21
+
22
+ def create_resource_files
23
+ invoke('ember:route', [name], options) unless options[:skip_route]
24
+ invoke('ember:controller', [name], options)
25
+ invoke('ember:view', [name], options)
26
+ invoke('ember:template', [name], options)
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,37 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'rails/generators'
4
+ require 'rails/generators/rails/resource/resource_generator'
5
+ require 'generators/ember/controller_generator'
6
+ require 'generators/ember/view_generator'
7
+
8
+ module Rails
9
+ module Generators
10
+ ResourceGenerator.class_eval do
11
+ class_option :javascript_engine, desc: 'Engine for JavaScripts'
12
+ class_option :ember_path, type: :string, aliases: '-d', desc: 'Custom ember app path'
13
+ class_option :with_template, type: :boolean, default: false, desc: 'Create template for this view'
14
+ class_option :app_name, type: :string, aliases: '-n', desc: 'Custom ember app name'
15
+
16
+ def add_ember
17
+ say_status :invoke, 'ember:model', :white
18
+ with_padding do
19
+ invoke 'ember:model'
20
+ end
21
+
22
+ say_status :invoke, 'ember controller and view (singular)', :white
23
+ with_padding do
24
+ invoke 'ember:view', [singular_name], options.merge(object: true)
25
+ end
26
+
27
+ @_invocations[Ember::Generators::ControllerGenerator].delete 'create_controller_files'
28
+ @_invocations[Ember::Generators::ViewGenerator].delete 'create_view_files'
29
+
30
+ say_status :invoke, 'ember controller and view (plural)', :white
31
+ with_padding do
32
+ invoke 'ember:view', [plural_name], options.merge(array: true)
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'generators/ember/generator_helpers'
4
+
5
+ module Ember
6
+ module Generators
7
+ class RouteGenerator < ::Rails::Generators::NamedBase
8
+ include Ember::Generators::GeneratorHelpers
9
+
10
+ source_root File.expand_path('../templates', __dir__)
11
+
12
+ desc 'Creates a new Ember.js route'
13
+ class_option :ember_path, type: :string, aliases: '-d', desc: 'Custom ember app path'
14
+ class_option :javascript_engine, desc: 'Engine for JavaScripts'
15
+ class_option :app_name, type: :string, aliases: '-n', desc: 'Custom ember app name'
16
+
17
+ def create_route_files
18
+ file_path = File.join(ember_path, 'routes', class_path, "#{file_name.dasherize}.#{engine_extension}")
19
+ template "route.#{engine_extension}", file_path
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,25 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'generators/ember/generator_helpers'
4
+
5
+ module Ember
6
+ module Generators
7
+ class ServiceGenerator < ::Rails::Generators::NamedBase
8
+ include Ember::Generators::GeneratorHelpers
9
+
10
+ source_root File.expand_path('../templates', __dir__)
11
+
12
+ desc 'Creates a new Ember.js service'
13
+
14
+ class_option :javascript_engine, desc: 'Engine for JavaScripts'
15
+ class_option :ember_path, type: :string, aliases: '-d', desc: 'Custom ember app path'
16
+ class_option :app_name, type: :string, aliases: '-n', desc: 'Custom ember app name'
17
+
18
+ def create_service_files
19
+ file_path = File.join(ember_path, 'services', class_path, "#{file_name.dasherize}.#{engine_extension}")
20
+
21
+ template "service.#{engine_extension}", file_path
22
+ end
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'generators/ember/generator_helpers'
4
+
5
+ module Ember
6
+ module Generators
7
+ class TemplateGenerator < ::Rails::Generators::NamedBase
8
+ include Ember::Generators::GeneratorHelpers
9
+
10
+ source_root File.expand_path('../templates', __dir__)
11
+
12
+ desc 'Creates a new Ember.js template'
13
+ class_option :javascript_engine, desc: 'Engine for JavaScripts'
14
+ class_option :ember_path, type: :string, aliases: '-d', desc: 'Custom ember app path'
15
+
16
+ def create_template_files
17
+ file_path = File.join(ember_path, 'templates', class_path, "#{file_name.dasherize}.hbs")
18
+ template 'template.hbs', file_path
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,25 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'generators/ember/generator_helpers'
4
+
5
+ module Ember
6
+ module Generators
7
+ class ViewGenerator < ::Rails::Generators::NamedBase
8
+ include Ember::Generators::GeneratorHelpers
9
+
10
+ source_root File.expand_path('../templates', __dir__)
11
+
12
+ desc 'Creates a new Ember.js view and associated Handlebars template'
13
+ class_option :javascript_engine, desc: 'Engine for JavaScripts'
14
+ class_option :ember_path, type: :string, aliases: '-d', desc: 'Custom ember app path'
15
+ class_option :with_template, type: :boolean, default: false, desc: 'Create template for this view'
16
+ class_option :app_name, type: :string, aliases: '-n', desc: 'Custom ember app name'
17
+
18
+ def create_view_files
19
+ file_path = File.join(ember_path, 'views', class_path, "#{file_name.dasherize}.#{engine_extension}")
20
+ template "view.#{engine_extension}", file_path
21
+ invoke('ember:template', [name], options) if options[:with_template]
22
+ end
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,5 @@
1
+ # For more information see: http://emberjs.com/guides/models/customizing-adapters/
2
+
3
+ <%= application_name.camelize %>.<%= class_name.camelize %>Adapter = DS.ActiveModelAdapter.extend({
4
+
5
+ })
@@ -0,0 +1,3 @@
1
+ # For more information see: http://emberjs.com/guides/models/customizing-adapters/
2
+
3
+ class <%= application_name.camelize %>.<%= class_name.camelize %>Adapter extends DS.ActiveModelAdapter
@@ -0,0 +1,5 @@
1
+ // For more information see: http://emberjs.com/guides/models/customizing-adapters/
2
+
3
+ <%= application_name.camelize %>.<%= class_name.camelize %>Adapter = DS.ActiveModelAdapter.extend({
4
+
5
+ });
@@ -0,0 +1,11 @@
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
+ #= require_self
@@ -0,0 +1,11 @@
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
+ #= require_self
@@ -0,0 +1,11 @@
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
+ //= require_self
@@ -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;
@@ -0,0 +1,12 @@
1
+ #= require jquery
2
+ #= require jquery_ujs
3
+ <%= "#= require handlebars\n" if Ember::Handlebars::Template.handlebars_available? -%>
4
+ #= require ./environment
5
+ #= require ember
6
+ #= require ember-data
7
+ #= require active-model-adapter
8
+ #= require_self
9
+ #= require ./<%= application_name.underscore.dasherize %>
10
+
11
+ # for more details see: http://emberjs.com/guides/application/
12
+ window.<%= application_name.camelize %> = Ember.Application.create()
@@ -0,0 +1,12 @@
1
+ #= require jquery
2
+ #= require jquery_ujs
3
+ <%= "#= require handlebars\n" if Ember::Handlebars::Template.handlebars_available? -%>
4
+ #= require ./environment
5
+ #= require ember
6
+ #= require ember-data
7
+ #= require active-model-adapter
8
+ #= require_self
9
+ #= require ./<%= application_name.underscore.dasherize %>
10
+
11
+ # for more details see: http://emberjs.com/guides/application/
12
+ window.<%= application_name.camelize %> = Ember.Application.create()
@@ -0,0 +1,15 @@
1
+ //= require jquery
2
+ //= require jquery_ujs
3
+ <%= "//= require handlebars\n" if Ember::Handlebars::Template.handlebars_available? -%>
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();
@@ -0,0 +1,3 @@
1
+ <h1><%= application_name %></h1>
2
+
3
+ {{outlet}}
@@ -0,0 +1,22 @@
1
+ //= require jquery
2
+ //= require jquery_ujs
3
+ <%= "//= require handlebars\n" if Ember::Handlebars::Template.handlebars_available? -%>
4
+ //= require ./environment
5
+ //= require ember
6
+ //= require ember-data
7
+ //= require active-model-adapter
8
+ <%- if engine_extension == 'module.es6' -%>
9
+ //= require ember-rails/application
10
+ //
11
+ //= require ./<%= application_name.underscore.dasherize %>
12
+ //= require_self
13
+
14
+ require('<%= application_name.underscore.dasherize %>');
15
+ <%- else -%>
16
+
17
+ //= require_self
18
+ //= require ./<%= application_name.underscore.dasherize %>
19
+ <%- end -%>
20
+
21
+ // for more details see: http://emberjs.com/guides/application/
22
+ <%= application_name.camelize %> = Ember.Application.create();
@@ -0,0 +1,4 @@
1
+ # Override the default adapter with the `DS.ActiveModelAdapter` which
2
+
3
+ <%= application_name.camelize %>.ApplicationAdapter = DS.ActiveModelAdapter.extend({
4
+ })
@@ -0,0 +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
@@ -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
+ <%= application_name.camelize %>.ApplicationAdapter = DS.ActiveModelAdapter.extend({
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,5 @@
1
+ # for more details see: http://emberjs.com/guides/controllers/
2
+
3
+ <%= application_name.camelize %>.<%= class_name %>Controller = Ember.ArrayController.extend({
4
+
5
+ })
@@ -0,0 +1,3 @@
1
+ # for more details see: http://emberjs.com/guides/controllers/
2
+
3
+ class <%= application_name.camelize %>.<%= class_name %>Controller extends Ember.ArrayController
@@ -0,0 +1,5 @@
1
+ // for more details see: http://emberjs.com/guides/controllers/representing-multiple-models-with-arraycontroller/
2
+
3
+ <%= application_name.camelize %>.<%= class_name %>Controller = Ember.ArrayController.extend({
4
+
5
+ });
@@ -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,5 @@
1
+ # for more details see: http://emberjs.com/guides/components/
2
+
3
+ <%= application_name.camelize %>.<%= class_name %>Component = Ember.Component.extend({
4
+
5
+ })
@@ -0,0 +1,5 @@
1
+ # for more details see: http://emberjs.com/guides/components/
2
+
3
+ <%= application_name.camelize %>.<%= class_name %>Component = Ember.Component.extend({
4
+
5
+ })
@@ -0,0 +1,4 @@
1
+ // for more details see: http://emberjs.com/guides/components/
2
+
3
+ <%= application_name.camelize %>.<%= class_name %>Component = Ember.Component.extend({
4
+ });
@@ -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
+ });