hyperstack-config 1.0.alpha1.5 → 1.0.pre.alpha1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d14021b6ecdd6098649de52f6da0252c1293adf0c78e5d3def26df3a15a3564c
4
- data.tar.gz: c9da07047b3a4b765986c70ea1461e41458d6bf638b3c00530bd2e252a97d3f4
3
+ metadata.gz: 9578ba3bc6a4645f5728bd5cd5a9e570cbdda3f217c5295361e19d3a0dd511b5
4
+ data.tar.gz: 6a51c259c2c208f55fba84c61a344bad20fa3114f26e7ae300aafa472f204030
5
5
  SHA512:
6
- metadata.gz: 4d4375dc40618772fbde219f71217038b06baa335a1e4b772e2ce598e7a988f7e582c35c947584907d635eaaed8703f1ec9df7a5d1a8fa1c553febc081797fad
7
- data.tar.gz: c00034e43ae80a7bfd39534a8f3e497c84f20968f5182b1e7450035035772fe500a896467c52155e5dac16ce1f71482ad2eed8d7568800c3bea2c75bbeea2675
6
+ metadata.gz: cfd13590df14cd13aa970163f66d88ca6da9fbfb7ed3435e3619afc33d13103c17e52bf13975b0b119af1b1c69e1e9726d1b447d85b9f7e19a387982f462917c
7
+ data.tar.gz: b525c760ad459266de7eab0185b11069eeca882e2bd7e9fc3bca3c5767f73e0590daccad6be8d83a0b6de4288b9cc43c7db8e990b94801baad54913184189efe
data/.gitignore CHANGED
@@ -6,13 +6,10 @@
6
6
  /pkg/
7
7
  /spec/reports/
8
8
  /tmp/
9
+ /spec/test_app/Gemfile.lock
9
10
 
10
11
  # ignore gems
11
12
  *.gem
12
13
 
13
14
  # ignore Idea files
14
15
  .idea
15
-
16
- # ignore Gemfile.locks https://yehudakatz.com/2010/12/16/clarifying-the-roles-of-the-gemspec-and-gemfile/
17
- /spec/test_app/Gemfile.lock
18
- /Gemfile.lock
data/Gemfile.lock ADDED
@@ -0,0 +1,303 @@
1
+ PATH
2
+ remote: ../hyper-spec
3
+ specs:
4
+ hyper-spec (0.1)
5
+ capybara
6
+ chromedriver-helper (= 1.2.0)
7
+ libv8 (~> 6.3.0)
8
+ method_source
9
+ mini_racer (~> 0.1.15)
10
+ opal (>= 0.11.0, < 0.12.0)
11
+ parser (>= 2.3.3.1)
12
+ pry
13
+ rspec-rails
14
+ selenium-webdriver
15
+ timecop (~> 0.8.1)
16
+ uglifier
17
+ unparser
18
+ webdrivers
19
+
20
+ PATH
21
+ remote: .
22
+ specs:
23
+ hyperstack-config (0.1)
24
+ libv8 (~> 6.3.0)
25
+ listen (~> 3.0)
26
+ mini_racer (~> 0.1.15)
27
+ opal (>= 0.11.0, < 0.12.0)
28
+ opal-browser (~> 0.2.0)
29
+ uglifier
30
+ websocket
31
+
32
+ GEM
33
+ remote: https://rubygems.org/
34
+ specs:
35
+ abstract_type (0.0.7)
36
+ actioncable (5.2.1)
37
+ actionpack (= 5.2.1)
38
+ nio4r (~> 2.0)
39
+ websocket-driver (>= 0.6.1)
40
+ actionmailer (5.2.1)
41
+ actionpack (= 5.2.1)
42
+ actionview (= 5.2.1)
43
+ activejob (= 5.2.1)
44
+ mail (~> 2.5, >= 2.5.4)
45
+ rails-dom-testing (~> 2.0)
46
+ actionpack (5.2.1)
47
+ actionview (= 5.2.1)
48
+ activesupport (= 5.2.1)
49
+ rack (~> 2.0)
50
+ rack-test (>= 0.6.3)
51
+ rails-dom-testing (~> 2.0)
52
+ rails-html-sanitizer (~> 1.0, >= 1.0.2)
53
+ actionview (5.2.1)
54
+ activesupport (= 5.2.1)
55
+ builder (~> 3.1)
56
+ erubi (~> 1.4)
57
+ rails-dom-testing (~> 2.0)
58
+ rails-html-sanitizer (~> 1.0, >= 1.0.3)
59
+ activejob (5.2.1)
60
+ activesupport (= 5.2.1)
61
+ globalid (>= 0.3.6)
62
+ activemodel (5.2.1)
63
+ activesupport (= 5.2.1)
64
+ activerecord (5.2.1)
65
+ activemodel (= 5.2.1)
66
+ activesupport (= 5.2.1)
67
+ arel (>= 9.0)
68
+ activestorage (5.2.1)
69
+ actionpack (= 5.2.1)
70
+ activerecord (= 5.2.1)
71
+ marcel (~> 0.3.1)
72
+ activesupport (5.2.1)
73
+ concurrent-ruby (~> 1.0, >= 1.0.2)
74
+ i18n (>= 0.7, < 2)
75
+ minitest (~> 5.1)
76
+ tzinfo (~> 1.1)
77
+ adamantium (0.2.0)
78
+ ice_nine (~> 0.11.0)
79
+ memoizable (~> 0.4.0)
80
+ addressable (2.5.2)
81
+ public_suffix (>= 2.0.2, < 4.0)
82
+ archive-zip (0.11.0)
83
+ io-like (~> 0.3.0)
84
+ arel (9.0.0)
85
+ ast (2.4.0)
86
+ builder (3.2.3)
87
+ capybara (3.9.0)
88
+ addressable
89
+ mini_mime (>= 0.1.3)
90
+ nokogiri (~> 1.8)
91
+ rack (>= 1.6.0)
92
+ rack-test (>= 0.6.3)
93
+ xpath (~> 3.1)
94
+ childprocess (0.9.0)
95
+ ffi (~> 1.0, >= 1.0.11)
96
+ chromedriver-helper (1.2.0)
97
+ archive-zip (~> 0.10)
98
+ nokogiri (~> 1.8)
99
+ coderay (1.1.2)
100
+ concord (0.1.5)
101
+ adamantium (~> 0.2.0)
102
+ equalizer (~> 0.0.9)
103
+ concurrent-ruby (1.0.5)
104
+ crass (1.0.4)
105
+ diff-lcs (1.3)
106
+ equalizer (0.0.11)
107
+ erubi (1.7.1)
108
+ execjs (2.7.0)
109
+ ffi (1.9.25)
110
+ globalid (0.4.1)
111
+ activesupport (>= 4.2.0)
112
+ hike (1.2.3)
113
+ i18n (1.1.0)
114
+ concurrent-ruby (~> 1.0)
115
+ ice_nine (0.11.2)
116
+ io-like (0.3.0)
117
+ jquery-rails (4.3.3)
118
+ rails-dom-testing (>= 1, < 3)
119
+ railties (>= 4.2.0)
120
+ thor (>= 0.14, < 2.0)
121
+ libv8 (6.3.292.48.1-x86_64-darwin-15)
122
+ listen (3.1.5)
123
+ rb-fsevent (~> 0.9, >= 0.9.4)
124
+ rb-inotify (~> 0.9, >= 0.9.7)
125
+ ruby_dep (~> 1.2)
126
+ loofah (2.2.2)
127
+ crass (~> 1.0.2)
128
+ nokogiri (>= 1.5.9)
129
+ mail (2.7.0)
130
+ mini_mime (>= 0.1.1)
131
+ marcel (0.3.2)
132
+ mimemagic (~> 0.3.2)
133
+ memoizable (0.4.2)
134
+ thread_safe (~> 0.3, >= 0.3.1)
135
+ method_source (0.9.0)
136
+ mimemagic (0.3.2)
137
+ mini_mime (1.0.1)
138
+ mini_portile2 (2.3.0)
139
+ mini_racer (0.1.15)
140
+ libv8 (~> 6.3)
141
+ minitest (5.11.3)
142
+ nio4r (2.3.1)
143
+ nokogiri (1.8.4)
144
+ mini_portile2 (~> 2.3.0)
145
+ opal (0.11.3)
146
+ ast (>= 2.3.0)
147
+ hike (~> 1.2)
148
+ parser (= 2.3.3.1)
149
+ sourcemap (~> 0.1.0)
150
+ opal-activesupport (0.3.1)
151
+ opal (>= 0.5.0, < 1.0.0)
152
+ opal-browser (0.2.0)
153
+ opal
154
+ paggio
155
+ opal-jquery (0.4.3)
156
+ opal (>= 0.10.0, < 0.12.0)
157
+ opal-rails (0.9.5)
158
+ jquery-rails
159
+ opal (>= 0.11.0, < 0.12)
160
+ opal-activesupport (>= 0.0.5)
161
+ opal-jquery (~> 0.4.0)
162
+ opal-sprockets (~> 0.4.2)
163
+ rails (>= 4.1, < 6.0)
164
+ sprockets-rails (>= 2.3.3, < 4.0)
165
+ opal-sprockets (0.4.2.0.11.0.3.1)
166
+ opal (~> 0.11.0)
167
+ sprockets (~> 3.1)
168
+ tilt (>= 1.4)
169
+ paggio (0.2.6)
170
+ parallel (1.12.1)
171
+ parser (2.3.3.1)
172
+ ast (~> 2.2)
173
+ powerpack (0.1.2)
174
+ procto (0.0.3)
175
+ pry (0.11.3)
176
+ coderay (~> 1.1.0)
177
+ method_source (~> 0.9.0)
178
+ public_suffix (3.0.3)
179
+ puma (3.12.0)
180
+ rack (2.0.5)
181
+ rack-test (1.1.0)
182
+ rack (>= 1.0, < 3)
183
+ rails (5.2.1)
184
+ actioncable (= 5.2.1)
185
+ actionmailer (= 5.2.1)
186
+ actionpack (= 5.2.1)
187
+ actionview (= 5.2.1)
188
+ activejob (= 5.2.1)
189
+ activemodel (= 5.2.1)
190
+ activerecord (= 5.2.1)
191
+ activestorage (= 5.2.1)
192
+ activesupport (= 5.2.1)
193
+ bundler (>= 1.3.0)
194
+ railties (= 5.2.1)
195
+ sprockets-rails (>= 2.0.0)
196
+ rails-dom-testing (2.0.3)
197
+ activesupport (>= 4.2.0)
198
+ nokogiri (>= 1.6)
199
+ rails-html-sanitizer (1.0.4)
200
+ loofah (~> 2.2, >= 2.2.2)
201
+ railties (5.2.1)
202
+ actionpack (= 5.2.1)
203
+ activesupport (= 5.2.1)
204
+ method_source
205
+ rake (>= 0.8.7)
206
+ thor (>= 0.19.0, < 2.0)
207
+ rainbow (2.2.2)
208
+ rake
209
+ rake (12.3.1)
210
+ rb-fsevent (0.10.3)
211
+ rb-inotify (0.9.10)
212
+ ffi (>= 0.5.0, < 2)
213
+ rspec (3.7.0)
214
+ rspec-core (~> 3.7.0)
215
+ rspec-expectations (~> 3.7.0)
216
+ rspec-mocks (~> 3.7.0)
217
+ rspec-core (3.7.1)
218
+ rspec-support (~> 3.7.0)
219
+ rspec-expectations (3.7.0)
220
+ diff-lcs (>= 1.2.0, < 2.0)
221
+ rspec-support (~> 3.7.0)
222
+ rspec-mocks (3.7.0)
223
+ diff-lcs (>= 1.2.0, < 2.0)
224
+ rspec-support (~> 3.7.0)
225
+ rspec-rails (3.7.2)
226
+ actionpack (>= 3.0)
227
+ activesupport (>= 3.0)
228
+ railties (>= 3.0)
229
+ rspec-core (~> 3.7.0)
230
+ rspec-expectations (~> 3.7.0)
231
+ rspec-mocks (~> 3.7.0)
232
+ rspec-support (~> 3.7.0)
233
+ rspec-support (3.7.1)
234
+ rubocop (0.51.0)
235
+ parallel (~> 1.10)
236
+ parser (>= 2.3.3.1, < 3.0)
237
+ powerpack (~> 0.1)
238
+ rainbow (>= 2.2.2, < 3.0)
239
+ ruby-progressbar (~> 1.7)
240
+ unicode-display_width (~> 1.0, >= 1.0.1)
241
+ ruby-progressbar (1.10.0)
242
+ ruby_dep (1.5.0)
243
+ rubyzip (1.2.2)
244
+ selenium-webdriver (3.14.1)
245
+ childprocess (~> 0.5)
246
+ rubyzip (~> 1.2, >= 1.2.2)
247
+ sourcemap (0.1.1)
248
+ sprockets (3.7.2)
249
+ concurrent-ruby (~> 1.0)
250
+ rack (> 1, < 3)
251
+ sprockets-rails (3.2.1)
252
+ actionpack (>= 4.0)
253
+ activesupport (>= 4.0)
254
+ sprockets (>= 3.0.0)
255
+ sqlite3 (1.3.13)
256
+ thor (0.20.0)
257
+ thread_safe (0.3.6)
258
+ tilt (2.0.8)
259
+ timecop (0.8.1)
260
+ tzinfo (1.2.5)
261
+ thread_safe (~> 0.1)
262
+ uglifier (4.1.19)
263
+ execjs (>= 0.3.0, < 3)
264
+ unicode-display_width (1.4.0)
265
+ unparser (0.2.8)
266
+ abstract_type (~> 0.0.7)
267
+ adamantium (~> 0.2.0)
268
+ concord (~> 0.1.5)
269
+ diff-lcs (~> 1.3)
270
+ equalizer (~> 0.0.9)
271
+ parser (>= 2.3.1.2, < 2.6)
272
+ procto (~> 0.0.2)
273
+ webdrivers (3.4.2)
274
+ nokogiri (~> 1.6)
275
+ rubyzip (~> 1.0)
276
+ selenium-webdriver (~> 3.0)
277
+ websocket (1.2.8)
278
+ websocket-driver (0.7.0)
279
+ websocket-extensions (>= 0.1.0)
280
+ websocket-extensions (0.1.3)
281
+ xpath (3.2.0)
282
+ nokogiri (~> 1.8)
283
+
284
+ PLATFORMS
285
+ ruby
286
+
287
+ DEPENDENCIES
288
+ bundler (~> 1.16.0)
289
+ chromedriver-helper
290
+ hyper-spec!
291
+ hyperstack-config!
292
+ opal-rails (~> 0.9.4)
293
+ pry
294
+ puma
295
+ rails (>= 4.0.0)
296
+ rake
297
+ rspec (~> 3.7.0)
298
+ rubocop (~> 0.51.0)
299
+ sqlite3
300
+ timecop (~> 0.8.1)
301
+
302
+ BUNDLED WITH
303
+ 1.16.1
@@ -22,15 +22,16 @@ Gem::Specification.new do |spec|
22
22
  spec.executables << 'hyperstack-hotloader'
23
23
  spec.require_paths = ['lib']
24
24
 
25
+ spec.add_dependency 'libv8', '~> 6.3.0' # see https://github.com/discourse/mini_racer/issues/92
25
26
  spec.add_dependency 'listen', '~> 3.0' # for hot loader
26
- spec.add_dependency 'mini_racer', '~> 0.2.4'
27
+ spec.add_dependency 'mini_racer', '~> 0.1.15'
27
28
  spec.add_dependency 'opal', '>= 0.11.0', '< 0.12.0'
28
29
  spec.add_dependency 'opal-browser', '~> 0.2.0'
29
30
  spec.add_dependency 'uglifier'
30
31
  spec.add_dependency 'websocket' # for hot loader
31
32
 
32
33
 
33
- spec.add_development_dependency 'bundler', ['>= 1.17.3', '< 2.1']
34
+ spec.add_development_dependency 'bundler', '~> 1.16.0'
34
35
  spec.add_development_dependency 'chromedriver-helper'
35
36
  spec.add_development_dependency 'opal-rails', '~> 0.9.4'
36
37
  spec.add_development_dependency 'pry'
@@ -39,6 +40,6 @@ Gem::Specification.new do |spec|
39
40
  spec.add_development_dependency 'rake'
40
41
  spec.add_development_dependency 'rspec', '~> 3.7.0'
41
42
  spec.add_development_dependency 'rubocop', '~> 0.51.0'
42
- spec.add_development_dependency 'sqlite3', '~> 1.3.6' # see https://github.com/rails/rails/issues/35153
43
+ spec.add_development_dependency 'sqlite3'
43
44
  spec.add_development_dependency 'timecop', '~> 0.8.1'
44
45
  end
@@ -38,7 +38,6 @@ else
38
38
  require 'hyperstack/on_error'
39
39
  Hyperstack.define_setting :hotloader_port, 25222
40
40
  Hyperstack.define_setting :hotloader_ping, nil
41
- Hyperstack.define_setting :hotloader_ignore_callback_mapping, false
42
41
  Hyperstack.import 'opal', gem: true
43
42
  Hyperstack.import 'browser', client_only: true
44
43
  Hyperstack.import 'hyperstack-config', gem: true
@@ -1,7 +1,7 @@
1
+ console.log('hotloader config doing its thing')
1
2
  if ((typeof(window) !== 'undefined') && (window.Hyperstack==undefined || window.Hyperstack.hotloader==undefined)) {
2
3
  window.Hyperstack = { hotloader: function(port, ping) { }}
3
4
  }
4
5
  //if (typeof(Hyperstack) === 'undefined') { Hyperstack = {} }
5
6
  Hyperstack.hotloader.port = <%= Hyperstack.hotloader_port %>
6
- Hyperstack.hotloader.ping = <%= Hyperstack.hotloader_ping ? Hyperstack.hotloader_ping : false %>
7
- Hyperstack.hotloader.ignore_callback_mapping = <%= !(!Hyperstack.hotloader_ignore_callback_mapping && Rails.configuration.assets.debug) %>
7
+ Hyperstack.hotloader.ping = <%= !!Hyperstack.hotloader_ping %>
@@ -1,5 +1,5 @@
1
1
  module Hyperstack
2
2
  module Config
3
- VERSION = '1.0.alpha1.5'
3
+ VERSION = '1.0-alpha1'
4
4
  end
5
5
  end
@@ -25,8 +25,7 @@ module Hyperstack
25
25
  # @context.
26
26
  if @context
27
27
  @context.each do |ctx, vars|
28
- # be careful: You can't dup nil, hence `init && init.dup`
29
- vars.each { |var, init| ctx.instance_variable_set(var, init && init.dup) }
28
+ vars.each { |var, init| ctx.instance_variable_set(var, init.dup) }
30
29
  end
31
30
  Hyperstack::Application::Boot.run if reboot
32
31
  else
@@ -15,43 +15,35 @@ end
15
15
  module Hyperstack
16
16
 
17
17
  class Hotloader
18
- def self.callbacks
19
- @@callbacks ||= Hash.new { |h, k| h[k] = Array.new }
18
+ def self.callbackmaps
19
+ @@callbackmaps ||= Hash.new { |h, k| h[k] = Hash.new { |h1, k1| h1[k1] = Hash.new { |h2, k2| h2[k2] = Array.new }}}
20
20
  end
21
21
 
22
- STACKDIRS = ['hyperstack', 'corelib']
23
-
24
- def self.file_name(frame)
25
- return unless frame
26
- file_name = `#{frame}.fileName`
27
- match = %r{^(.+\/assets)\/}.match(file_name)
28
- return unless match
29
- file_name = file_name.gsub(match[0], '').split('/')
30
- n = (file_name.length - 1) / 2
31
- return unless file_name[0..n - 1] == file_name[n..2 * n - 1]
32
- return if STACKDIRS.include?(file_name[0])
33
- "#{match[0]}#{file_name[0..n - 1].join('/')}/#{file_name[-1]}"
34
- end
35
-
36
- def self.when_file_updates(&block)
37
- return if `Hyperstack.hotloader.ignore_callback_mapping`
38
- return callbacks[$_hyperstack_reloader_file_name] << block if $_hyperstack_reloader_file_name
39
- callback = lambda do |frames|
40
- # StackTrace.get maps the stack frames back to the source maps
41
- # we then associate any files in the call stack that match our application file pattern
42
- # with the block, which will remove any callbacks defined when those files were executing.
43
- # Note that StackTrace.getSync gives us the raw .js file names so it will not work
44
- frames.collect(&method(:file_name)).compact.uniq.each { |name| callbacks[name] << block if name }
45
- end
46
- error = lambda do |e|
47
- `console.error(#{"hyperstack hot loader could not find source file for callback: #{e}"})`
48
- end
49
- `StackTrace.get().then(#{callback}).catch(#{error})`
22
+ def self.record(klass, instance_var, depth, *items)
23
+ if $_hyperstack_reloader_file_name
24
+ callbackmaps[$_hyperstack_reloader_file_name][klass][instance_var].concat items
25
+ else
26
+ callback = lambda do |stack_frames|
27
+ file_name = `#{stack_frames[depth]}.fileName`
28
+ match = /^(.+\/assets\/)(.+\/)\2/.match(file_name)
29
+ if match
30
+ file_name = file_name.gsub(match[1]+match[2], '')
31
+ callbackmaps[file_name][klass][instance_var].concat items
32
+ end
33
+ end
34
+ error = lambda do |err|
35
+ `console.error(#{"hyperstack hot loader could not find source file for callback: #{err}"})`
36
+ end
37
+ `StackTrace.get().then(#{callback}).catch(#{error})`
38
+ end
50
39
  end
51
40
 
52
41
  def self.remove(file_name)
53
- callbacks[file_name].each(&:call)
54
- callbacks[file_name] = []
42
+ callbackmaps[file_name].each do |klass, instance_vars|
43
+ instance_vars.each do |instance_var, items|
44
+ klass.instance_variable_get(instance_var).reject! { |item| items.include? item }
45
+ end
46
+ end
55
47
  end
56
48
 
57
49
  def connect_to_websocket(port)
@@ -90,7 +82,7 @@ module Hyperstack
90
82
  puts "Reloading #{reload_request[:filename]} (asset_path: #{reload_request[:asset_path]})"
91
83
  begin
92
84
  #Hyperstack::Context.reset! false
93
- file_name = reload_request[:asset_path].gsub(/.+hyperstack\//, '') # this gsub we need sometimes????
85
+ file_name = reload_request[:asset_path] #.gsub(/.+hyperstack\//, '')
94
86
  Hotloader.remove(file_name)
95
87
  $eval_proc.call file_name, reload_request[:source_code]
96
88
  rescue
@@ -3,7 +3,7 @@ module Hyperstack
3
3
  module AddErrorBoundry
4
4
  def self.included(base)
5
5
  base.after_error do |*err|
6
- @err = Hyperstack::Internal::Component::RescueWrapper.after_error_args || err
6
+ @err = err
7
7
  Hyperstack::Component.force_update!
8
8
  end
9
9
  base.define_method :render do
@@ -4,6 +4,6 @@ if (typeof window !== 'undefined') {
4
4
  Opal.Hyperstack.$const_get('Hotloader').$listen(port || 25222, ping || Opal.nil)
5
5
  }
6
6
  }
7
- } /* else {
7
+ } else {
8
8
  throw 'Attempt to run hotloader during prerendering - make sure you import with the `client_only: true` option'
9
- } */
9
+ }
@@ -1,12 +1,10 @@
1
1
  # insure that stubs for Hyperstack::Hotloader.record and window.Hyperstack.hotloader are defined
2
2
  # importing 'hyperstack/hotloader' will define/redefine these
3
- # note that some internal hyperstack modules will use callbacks, which will call this, but it
4
- # doesn't matter...
5
3
 
6
4
  module Hyperstack
7
5
  unless defined? Hotloader
8
6
  class Hotloader
9
- def self.when_file_updates(&block); end
7
+ def self.record(klass, instance_var, depth, *items); end
10
8
  end
11
9
  end
12
10
  end
@@ -6,17 +6,13 @@ module Hyperstack
6
6
  end
7
7
 
8
8
  def import(value, gem: nil, cancelled: nil, client_only: nil, server_only: nil, tree: nil, js_import: nil, at_head: nil)
9
- return if imported? value
9
+ return if import_list.detect { |current_value, *_rest| value == current_value }
10
10
  new_element = [
11
11
  value, cancelled, !client_only, !server_only, (tree ? :tree : :gem), js_import
12
12
  ]
13
13
  import_list.send(at_head ? :unshift : :push, new_element)
14
14
  end
15
15
 
16
- def imported?(value)
17
- import_list.detect { |current_value, *| value == current_value }
18
- end
19
-
20
16
  alias imports import
21
17
 
22
18
  def import_tree(value, cancelled: nil, client_only: nil, server_only: nil)
@@ -48,19 +44,9 @@ module Hyperstack
48
44
  import client_and_server_manifest.split("/").last, at_head: true if client_and_server_manifest
49
45
  end
50
46
 
51
- def add_inflections(sys)
52
- return [] unless sys
53
- ["puts \"require 'config/initializers/inflections.rb'\""] +
54
- File.open(Rails.root.join('config', 'initializers', 'inflections.rb'), &:readlines).tap do
55
- puts " require 'config/initializers/inflections.rb'"
56
- end
57
- rescue Errno::ENOENT
58
- []
59
- end
60
-
61
47
  def generate_requires(mode, sys, file)
62
48
  handle_webpack
63
- (import_list.collect do |value, cancelled, render_on_server, render_on_client, kind|
49
+ import_list.collect do |value, cancelled, render_on_server, render_on_client, kind|
64
50
  next if cancelled
65
51
  next if (sys && kind == :tree) || (!sys && kind != :tree)
66
52
  next if mode == :client && !render_on_client
@@ -74,7 +60,7 @@ module Hyperstack
74
60
  else
75
61
  generate_directive(:require, value, file, render_on_server, render_on_client)
76
62
  end
77
- end + add_inflections(sys)).compact.join("\n")
63
+ end.compact.join("\n")
78
64
  end
79
65
 
80
66
  def generate_directive(directive, to, file, render_on_server, render_on_client)
@@ -94,8 +80,8 @@ module Hyperstack
94
80
  Dir.glob(Rails.root.join('app', path, '**', '*')).sort.collect do |fname|
95
81
  fname = fname.gsub(/^#{base_name}/, '')
96
82
  fname = fname.gsub(/\.erb$/, '')
97
- if fname =~ /(\.js$)|(\.rb$)|(\.jsx$)/
98
- fname = fname.gsub(/(\.js$)|(\.rb$)|(\.jsx$)/, '')
83
+ if fname =~ /(\.js$)|(\.rb$)/
84
+ fname = fname.gsub(/(\.js$)|(\.rb$)/, '')
99
85
  r = "require '#{fname}' #{client_guard(render_on_server, render_on_client)}"
100
86
  puts " #{r}"
101
87
  "puts \"#{r}\"; #{r}"
@@ -1,5 +1,5 @@
1
1
  module Hyperstack
2
- def self.on_error(err, reason, params, formatted_error_message)
2
+ def self.on_error(err, reason, details)
3
3
  # do whatever you want here... i.e. log, debug, etc
4
4
  end
5
5
  end
@@ -2,7 +2,7 @@ module Hyperstack
2
2
 
3
3
  class Engine < ::Rails::Engine
4
4
  end
5
-
5
+
6
6
  define_setting :add_hyperstack_paths, true
7
7
 
8
8
  define_setting :prerendering_files, ['hyperstack-prerender-loader.js']
@@ -20,8 +20,6 @@ module Hyperstack
20
20
  config.eager_load_paths += %W(#{config.root}/app/hyperstack/models)
21
21
  config.eager_load_paths += %W(#{config.root}/app/hyperstack/models/concerns)
22
22
  config.eager_load_paths += %W(#{config.root}/app/hyperstack/operations)
23
- config.eager_load_paths += %W(#{config.root}/app/hyperstack/shared)
24
-
25
23
  # rails will add everything immediately below app to eager and auto load, so we need to remove it
26
24
  delete_first config.eager_load_paths, "#{config.root}/app/hyperstack"
27
25
 
@@ -29,8 +27,6 @@ module Hyperstack
29
27
  config.autoload_paths += %W(#{config.root}/app/hyperstack/models)
30
28
  config.autoload_paths += %W(#{config.root}/app/hyperstack/models/concerns)
31
29
  config.autoload_paths += %W(#{config.root}/app/hyperstack/operations)
32
- config.autoload_paths += %W(#{config.root}/app/hyperstack/shared)
33
-
34
30
  # config.eager_load_paths += %W(#{config.root}/app/hyperstack/stores)
35
31
  # config.autoload_paths += %W(#{config.root}/app/hyperstack/stores)
36
32
  delete_first config.autoload_paths, "#{config.root}/app/hyperstack"
@@ -56,9 +52,6 @@ module Hyperstack
56
52
  # delete_first config.autoload_paths, "#{config.root}/app/hyperstack/stores"
57
53
  delete_first config.eager_load_paths, "#{config.root}/app/hyperstack/operations"
58
54
  delete_first config.autoload_paths, "#{config.root}/app/hyperstack/operations"
59
- delete_first config.eager_load_paths, "#{config.root}/app/hyperstack/shared"
60
- delete_first config.autoload_paths, "#{config.root}/app/hyperstack/shared"
61
-
62
55
 
63
56
  delete_first config.assets.paths, ::Rails.root.join('app', 'hyperstack').to_s
64
57
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hyperstack-config
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.alpha1.5
4
+ version: 1.0.pre.alpha1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mitch VanDuyn
@@ -9,8 +9,22 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2019-06-19 00:00:00.000000000 Z
12
+ date: 2018-11-12 00:00:00.000000000 Z
13
13
  dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: libv8
16
+ requirement: !ruby/object:Gem::Requirement
17
+ requirements:
18
+ - - "~>"
19
+ - !ruby/object:Gem::Version
20
+ version: 6.3.0
21
+ type: :runtime
22
+ prerelease: false
23
+ version_requirements: !ruby/object:Gem::Requirement
24
+ requirements:
25
+ - - "~>"
26
+ - !ruby/object:Gem::Version
27
+ version: 6.3.0
14
28
  - !ruby/object:Gem::Dependency
15
29
  name: listen
16
30
  requirement: !ruby/object:Gem::Requirement
@@ -31,14 +45,14 @@ dependencies:
31
45
  requirements:
32
46
  - - "~>"
33
47
  - !ruby/object:Gem::Version
34
- version: 0.2.4
48
+ version: 0.1.15
35
49
  type: :runtime
36
50
  prerelease: false
37
51
  version_requirements: !ruby/object:Gem::Requirement
38
52
  requirements:
39
53
  - - "~>"
40
54
  - !ruby/object:Gem::Version
41
- version: 0.2.4
55
+ version: 0.1.15
42
56
  - !ruby/object:Gem::Dependency
43
57
  name: opal
44
58
  requirement: !ruby/object:Gem::Requirement
@@ -105,22 +119,16 @@ dependencies:
105
119
  name: bundler
106
120
  requirement: !ruby/object:Gem::Requirement
107
121
  requirements:
108
- - - ">="
109
- - !ruby/object:Gem::Version
110
- version: 1.17.3
111
- - - "<"
122
+ - - "~>"
112
123
  - !ruby/object:Gem::Version
113
- version: '2.1'
124
+ version: 1.16.0
114
125
  type: :development
115
126
  prerelease: false
116
127
  version_requirements: !ruby/object:Gem::Requirement
117
128
  requirements:
118
- - - ">="
119
- - !ruby/object:Gem::Version
120
- version: 1.17.3
121
- - - "<"
129
+ - - "~>"
122
130
  - !ruby/object:Gem::Version
123
- version: '2.1'
131
+ version: 1.16.0
124
132
  - !ruby/object:Gem::Dependency
125
133
  name: chromedriver-helper
126
134
  requirement: !ruby/object:Gem::Requirement
@@ -237,16 +245,16 @@ dependencies:
237
245
  name: sqlite3
238
246
  requirement: !ruby/object:Gem::Requirement
239
247
  requirements:
240
- - - "~>"
248
+ - - ">="
241
249
  - !ruby/object:Gem::Version
242
- version: 1.3.6
250
+ version: '0'
243
251
  type: :development
244
252
  prerelease: false
245
253
  version_requirements: !ruby/object:Gem::Requirement
246
254
  requirements:
247
- - - "~>"
255
+ - - ">="
248
256
  - !ruby/object:Gem::Version
249
- version: 1.3.6
257
+ version: '0'
250
258
  - !ruby/object:Gem::Dependency
251
259
  name: timecop
252
260
  requirement: !ruby/object:Gem::Requirement
@@ -273,6 +281,7 @@ files:
273
281
  - ".gitignore"
274
282
  - ".travis.yml"
275
283
  - Gemfile
284
+ - Gemfile.lock
276
285
  - README.md
277
286
  - Rakefile
278
287
  - bin/hyperstack-hotloader
@@ -333,7 +342,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
333
342
  - !ruby/object:Gem::Version
334
343
  version: 1.3.1
335
344
  requirements: []
336
- rubygems_version: 3.0.4
345
+ rubyforge_project:
346
+ rubygems_version: 2.7.8
337
347
  signing_key:
338
348
  specification_version: 4
339
349
  summary: Provides a single point configuration module for hyperstack gems