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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  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