hyper-state 1.0.alpha1.5 → 1.0.alpha1.6

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: bbfec87cc6da586fe45f940f9d45f0cd75c4fd1c310fbff4369a122d2227f5c8
4
- data.tar.gz: 67b6304b162a71b483791b94552d349ed7156c40c102423cabbd6f439570d1ce
3
+ metadata.gz: acfff47e32791c6d2f2bb0d4f2b0f171db4a0b041f45ff8424d5695cc515a4cf
4
+ data.tar.gz: 62c00f7a40cd804b285d72b31465946498e5e4cd842daca9ac07b9d5fc9754cd
5
5
  SHA512:
6
- metadata.gz: 7c4931c8b4020f833b41389669d7a57e4790a1a6dc7149d1403bc71cc73b1c7624611cb4a0663a7aa71a5c35123c365ebd1ee348c78abf1e236a3dc3aabb63ff
7
- data.tar.gz: 290f3579a58e7549759fe4a4692548e9686dc1ea724df2dd9fd0b015dda7dc611a4c0e5981f49cf0fb0939a867750205c68e18086f13ed0e416699fd401f2525
6
+ metadata.gz: 8e27eb935d489093c38b53fd05bcb1d03a9b34deeaf1729eb7427916b251f1dcd0b9ea7bec9718003a10f4bd436347f52be6762dad08a4fe11c7b8acc39491d8
7
+ data.tar.gz: bc0b139edc6a1f62f0d16766a7f20590b4a3ca71e54f9e2c9d3ec012e73869159c6e8ef4d6ec9725424a778b3b8e709e0dce068a6dd28097b0ed964b6f7f9ff8
data/hyper-state.gemspec CHANGED
@@ -22,26 +22,25 @@ Gem::Specification.new do |spec|
22
22
  spec.require_paths = ['lib']
23
23
 
24
24
  spec.add_dependency 'hyperstack-config', Hyperstack::State::VERSION
25
- spec.add_dependency 'opal', '>= 0.11.0', '< 0.12.0'
26
- spec.add_development_dependency 'bundler', ['>= 1.17.3', '< 2.1']
25
+
26
+ spec.add_development_dependency 'bundler'
27
27
  spec.add_development_dependency 'chromedriver-helper'
28
28
  spec.add_development_dependency 'hyper-component', Hyperstack::State::VERSION
29
29
  spec.add_development_dependency 'hyper-spec', Hyperstack::State::VERSION
30
30
  spec.add_development_dependency 'listen'
31
- spec.add_development_dependency 'mini_racer', '~> 0.2.4'
31
+ # spec.add_development_dependency 'mini_racer', '~> 0.2.4'
32
32
  spec.add_development_dependency 'opal-browser', '~> 0.2.0'
33
- spec.add_development_dependency 'opal-rails', '~> 0.9.4'
34
- spec.add_development_dependency 'pry-byebug'
33
+ spec.add_development_dependency 'opal-rails', '>= 0.9.4', '< 2.0'
35
34
  spec.add_development_dependency 'pry-rescue'
35
+ spec.add_development_dependency 'pry-stack_explorer'
36
36
  spec.add_development_dependency 'puma'
37
- spec.add_development_dependency 'rails', '>= 4.0.0'
37
+ spec.add_development_dependency 'rails', ENV['RAILS_VERSION'] || '>= 5.0.0', '< 7.0'
38
38
  spec.add_development_dependency 'rake'
39
39
  spec.add_development_dependency 'react-rails', '>= 2.4.0', '< 2.5.0'
40
40
  spec.add_development_dependency 'rspec', '~> 3.7.0'
41
41
  spec.add_development_dependency 'rspec-rails'
42
42
  spec.add_development_dependency 'rspec-steps', '~> 2.1.1'
43
43
  spec.add_development_dependency 'rubocop', '~> 0.51.0'
44
- spec.add_development_dependency 'sqlite3', '~> 1.3.6' # see https://github.com/rails/rails/issues/35153
44
+ spec.add_development_dependency 'sqlite3', '~> 1.4.2' # see https://github.com/rails/rails/issues/35153
45
45
  spec.add_development_dependency 'timecop', '~> 0.8.1'
46
-
47
46
  end
@@ -12,29 +12,30 @@ module Hyperstack
12
12
 
13
13
  def run_callback(name, *args)
14
14
  self.class.callbacks_for(name).flatten.each do |callback|
15
- result = if callback.is_a?(Proc)
16
- instance_exec(*args, &callback)
17
- else
18
- send(callback, *args)
19
- end
20
- args = yield(result) if block_given?
15
+ callback = method(callback) unless callback.is_a? Proc
16
+ args = self.class.send("_#{name}_before_call_hook", name, self, callback, *args)
21
17
  end
22
18
  args
23
19
  end
24
20
 
25
21
  module ClassMethods
26
- def define_callback(callback_name, &after_define_hook)
22
+ def define_callback(callback_name, before_call_hook: nil, after_define_hook: nil)
27
23
  wrapper_name = "_#{callback_name}_callbacks"
28
24
  define_singleton_method(wrapper_name) do
29
25
  Context.set_var(self, "@#{wrapper_name}", force: true) { [] }
30
26
  end
27
+ before_call_hook ||= lambda do |_name, sself, proc, *args|
28
+ sself.instance_exec(*args, &proc)
29
+ args
30
+ end
31
+ define_singleton_method("_#{callback_name}_before_call_hook", &before_call_hook)
31
32
  define_singleton_method(callback_name) do |*args, &block|
32
33
  args << block if block_given?
33
34
  send(wrapper_name).push args
34
35
  Hotloader.when_file_updates do
35
36
  send(wrapper_name).delete_if { |item| item.equal? args }
36
37
  end
37
- after_define_hook.call(*args, &block) if after_define_hook
38
+ after_define_hook.call(self) if after_define_hook
38
39
  end
39
40
  end
40
41
 
@@ -13,7 +13,9 @@ module Hyperstack
13
13
  map_object[0]
14
14
  end
15
15
 
16
- def set(obj, name, value)
16
+ def set(obj, name, value, _x = nil)
17
+ # _x is some legacy function, which I think queued up state changes to the end
18
+ # which is perhaps now the default.
17
19
  map_object = legacy_map[obj][name]
18
20
  map_object[0] = value
19
21
  Hyperstack::Internal::State::Mapper.mutated!(map_object.object_id)
@@ -12,13 +12,13 @@ module Hyperstack
12
12
  Internal::Receiver.mount(self, *args, &block)
13
13
  end
14
14
  base.send(:"define_#{kind}", :observe) do |*args, &block|
15
- result = block && block.call || args.last
15
+ result = block ? block.call : args.last
16
16
  Internal::State::Mapper.observed! self
17
17
  result
18
18
  end
19
19
  base.send(:"define_#{kind}", :mutate) do |*args, &block|
20
20
  # any args will be ignored thus allowing us to say `mutate @foo = 123, @bar[:x] = 7` etc
21
- result = block && block.call || args.last
21
+ result = block ? block.call : args.last
22
22
  Internal::State::Mapper.mutated! self
23
23
  result
24
24
  end
@@ -1,5 +1,5 @@
1
1
  module Hyperstack
2
2
  module State
3
- VERSION = '1.0.alpha1.5'
3
+ VERSION = '1.0.alpha1.6'
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hyper-state
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.alpha1.5
4
+ version: 1.0.alpha1.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mitch VanDuyn
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: exe
12
12
  cert_chain: []
13
- date: 2019-06-19 00:00:00.000000000 Z
13
+ date: 2021-03-29 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: hyperstack-config
@@ -18,54 +18,28 @@ dependencies:
18
18
  requirements:
19
19
  - - '='
20
20
  - !ruby/object:Gem::Version
21
- version: 1.0.alpha1.5
21
+ version: 1.0.alpha1.6
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
25
25
  requirements:
26
26
  - - '='
27
27
  - !ruby/object:Gem::Version
28
- version: 1.0.alpha1.5
29
- - !ruby/object:Gem::Dependency
30
- name: opal
31
- requirement: !ruby/object:Gem::Requirement
32
- requirements:
33
- - - ">="
34
- - !ruby/object:Gem::Version
35
- version: 0.11.0
36
- - - "<"
37
- - !ruby/object:Gem::Version
38
- version: 0.12.0
39
- type: :runtime
40
- prerelease: false
41
- version_requirements: !ruby/object:Gem::Requirement
42
- requirements:
43
- - - ">="
44
- - !ruby/object:Gem::Version
45
- version: 0.11.0
46
- - - "<"
47
- - !ruby/object:Gem::Version
48
- version: 0.12.0
28
+ version: 1.0.alpha1.6
49
29
  - !ruby/object:Gem::Dependency
50
30
  name: bundler
51
31
  requirement: !ruby/object:Gem::Requirement
52
32
  requirements:
53
33
  - - ">="
54
34
  - !ruby/object:Gem::Version
55
- version: 1.17.3
56
- - - "<"
57
- - !ruby/object:Gem::Version
58
- version: '2.1'
35
+ version: '0'
59
36
  type: :development
60
37
  prerelease: false
61
38
  version_requirements: !ruby/object:Gem::Requirement
62
39
  requirements:
63
40
  - - ">="
64
41
  - !ruby/object:Gem::Version
65
- version: 1.17.3
66
- - - "<"
67
- - !ruby/object:Gem::Version
68
- version: '2.1'
42
+ version: '0'
69
43
  - !ruby/object:Gem::Dependency
70
44
  name: chromedriver-helper
71
45
  requirement: !ruby/object:Gem::Requirement
@@ -86,28 +60,28 @@ dependencies:
86
60
  requirements:
87
61
  - - '='
88
62
  - !ruby/object:Gem::Version
89
- version: 1.0.alpha1.5
63
+ version: 1.0.alpha1.6
90
64
  type: :development
91
65
  prerelease: false
92
66
  version_requirements: !ruby/object:Gem::Requirement
93
67
  requirements:
94
68
  - - '='
95
69
  - !ruby/object:Gem::Version
96
- version: 1.0.alpha1.5
70
+ version: 1.0.alpha1.6
97
71
  - !ruby/object:Gem::Dependency
98
72
  name: hyper-spec
99
73
  requirement: !ruby/object:Gem::Requirement
100
74
  requirements:
101
75
  - - '='
102
76
  - !ruby/object:Gem::Version
103
- version: 1.0.alpha1.5
77
+ version: 1.0.alpha1.6
104
78
  type: :development
105
79
  prerelease: false
106
80
  version_requirements: !ruby/object:Gem::Requirement
107
81
  requirements:
108
82
  - - '='
109
83
  - !ruby/object:Gem::Version
110
- version: 1.0.alpha1.5
84
+ version: 1.0.alpha1.6
111
85
  - !ruby/object:Gem::Dependency
112
86
  name: listen
113
87
  requirement: !ruby/object:Gem::Requirement
@@ -122,20 +96,6 @@ dependencies:
122
96
  - - ">="
123
97
  - !ruby/object:Gem::Version
124
98
  version: '0'
125
- - !ruby/object:Gem::Dependency
126
- name: mini_racer
127
- requirement: !ruby/object:Gem::Requirement
128
- requirements:
129
- - - "~>"
130
- - !ruby/object:Gem::Version
131
- version: 0.2.4
132
- type: :development
133
- prerelease: false
134
- version_requirements: !ruby/object:Gem::Requirement
135
- requirements:
136
- - - "~>"
137
- - !ruby/object:Gem::Version
138
- version: 0.2.4
139
99
  - !ruby/object:Gem::Dependency
140
100
  name: opal-browser
141
101
  requirement: !ruby/object:Gem::Requirement
@@ -154,18 +114,24 @@ dependencies:
154
114
  name: opal-rails
155
115
  requirement: !ruby/object:Gem::Requirement
156
116
  requirements:
157
- - - "~>"
117
+ - - ">="
158
118
  - !ruby/object:Gem::Version
159
119
  version: 0.9.4
120
+ - - "<"
121
+ - !ruby/object:Gem::Version
122
+ version: '2.0'
160
123
  type: :development
161
124
  prerelease: false
162
125
  version_requirements: !ruby/object:Gem::Requirement
163
126
  requirements:
164
- - - "~>"
127
+ - - ">="
165
128
  - !ruby/object:Gem::Version
166
129
  version: 0.9.4
130
+ - - "<"
131
+ - !ruby/object:Gem::Version
132
+ version: '2.0'
167
133
  - !ruby/object:Gem::Dependency
168
- name: pry-byebug
134
+ name: pry-rescue
169
135
  requirement: !ruby/object:Gem::Requirement
170
136
  requirements:
171
137
  - - ">="
@@ -179,7 +145,7 @@ dependencies:
179
145
  - !ruby/object:Gem::Version
180
146
  version: '0'
181
147
  - !ruby/object:Gem::Dependency
182
- name: pry-rescue
148
+ name: pry-stack_explorer
183
149
  requirement: !ruby/object:Gem::Requirement
184
150
  requirements:
185
151
  - - ">="
@@ -212,14 +178,20 @@ dependencies:
212
178
  requirements:
213
179
  - - ">="
214
180
  - !ruby/object:Gem::Version
215
- version: 4.0.0
181
+ version: 5.0.0
182
+ - - "<"
183
+ - !ruby/object:Gem::Version
184
+ version: '7.0'
216
185
  type: :development
217
186
  prerelease: false
218
187
  version_requirements: !ruby/object:Gem::Requirement
219
188
  requirements:
220
189
  - - ">="
221
190
  - !ruby/object:Gem::Version
222
- version: 4.0.0
191
+ version: 5.0.0
192
+ - - "<"
193
+ - !ruby/object:Gem::Version
194
+ version: '7.0'
223
195
  - !ruby/object:Gem::Dependency
224
196
  name: rake
225
197
  requirement: !ruby/object:Gem::Requirement
@@ -316,14 +288,14 @@ dependencies:
316
288
  requirements:
317
289
  - - "~>"
318
290
  - !ruby/object:Gem::Version
319
- version: 1.3.6
291
+ version: 1.4.2
320
292
  type: :development
321
293
  prerelease: false
322
294
  version_requirements: !ruby/object:Gem::Requirement
323
295
  requirements:
324
296
  - - "~>"
325
297
  - !ruby/object:Gem::Version
326
- version: 1.3.6
298
+ version: 1.4.2
327
299
  - !ruby/object:Gem::Dependency
328
300
  name: timecop
329
301
  requirement: !ruby/object:Gem::Requirement
@@ -382,7 +354,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
382
354
  - !ruby/object:Gem::Version
383
355
  version: 1.3.1
384
356
  requirements: []
385
- rubygems_version: 3.0.4
357
+ rubygems_version: 3.0.8
386
358
  signing_key:
387
359
  specification_version: 4
388
360
  summary: Flux Stores and more for Hyperloop