hyper-state 1.0.alpha1.3 → 1.0.alpha1.4

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: 5b2e57db899fdc1cf26978b2a1bc65abe6e9e9394594be644163de6070c2376d
4
- data.tar.gz: 014705ce36d24c695f5d104004dc70be1a2d8f9039d879ab36887bebfdd14c88
3
+ metadata.gz: 11b9945541d489ae1444209136dc3d4337f6cef75631d85813eb6678c5ff12e3
4
+ data.tar.gz: fd7207a4e732d5b4137a5f5beaa914764b4f8aa0cdbaf3edc7ec2735b1bff5e1
5
5
  SHA512:
6
- metadata.gz: bbc9b8724cb6cf3b0c82c081270d2bdba0cf1378261ce2abfcb62629a24af6e8a128e2a3cfe9ce7a71a293c0463e9c5e627602ddf092b9cc7c91088a8633b0e5
7
- data.tar.gz: cb72f01f5629cff13064a0b125eb3a618bdef737f6413c9778ca4a6297b1ce4d30d176588d185cc8547ada050b620db45a217c919e620c34e8674ef5d15e443b
6
+ metadata.gz: 1c3a6e469339cad335dabd9e578733bb7933812efafe0182b5f9502427f6b8eb3e3526d1e56a1afe3adf8649bb0c536a5210af0ea699912072e3c61c7847f00d
7
+ data.tar.gz: c8d9179a60072061d880874a198119372bb67a60f4153e9ff88869544913557798a31b15c36ff8c13fd6c72ca5b3303fa121f5dd54a748eb00607d0fc459fec2
data/.gitignore CHANGED
@@ -11,7 +11,6 @@ capybara-*.html
11
11
  **.orig
12
12
  rerun.txt
13
13
  pickle-email-*.html
14
- Gemfile.lock
15
14
 
16
15
  # TODO Comment out these rules if you are OK with secrets being uploaded to the repo
17
16
  config/initializers/secret_token.rb
@@ -51,3 +50,7 @@ bower.json
51
50
 
52
51
  # ignore IDE files
53
52
  .idea
53
+
54
+ # ignore Gemfile.locks https://yehudakatz.com/2010/12/16/clarifying-the-roles-of-the-gemspec-and-gemfile/
55
+ /spec/test_app/Gemfile.lock
56
+ /Gemfile.lock
@@ -41,7 +41,7 @@ Gem::Specification.new do |spec|
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'
44
+ spec.add_development_dependency 'sqlite3', '~> 1.3.6' # see https://github.com/rails/rails/issues/35153
45
45
  spec.add_development_dependency 'timecop', '~> 0.8.1'
46
46
 
47
47
  end
@@ -102,6 +102,18 @@ module Hyperstack
102
102
  @bulk_update_flag = saved_bulk_update_flag
103
103
  end
104
104
 
105
+ # React already will batch together updates inside of event handlers
106
+ # so we don't have to, and having Hyperstack batch them outside of the
107
+ # event handler causes INPUT/TEXT/SELECT s not to work properly.
108
+ # This method is called by the Component event wrapper.
109
+ def ignore_bulk_updates(*args)
110
+ saved_ignore_bulk_update_flag = @ignore_bulk_update_flag
111
+ @ignore_bulk_update_flag = true
112
+ yield(*args)
113
+ ensure
114
+ @ignore_bulk_update_flag = saved_ignore_bulk_update_flag
115
+ end
116
+
105
117
  def ignore_mutations
106
118
  saved_ignore_mutations_flag = @ignore_mutations
107
119
  @ignore_mutations = true
@@ -207,9 +219,10 @@ module Hyperstack
207
219
  # case that the object being updated is themselves.
208
220
 
209
221
  def delay_updates?(object)
210
- @bulk_update_flag ||
211
- (Hyperstack.on_client? &&
212
- (@immediate_update != @current_observer || @current_observer != object))
222
+ return false if @ignore_bulk_update_flag
223
+ return true if @bulk_update_flag
224
+ return false unless Hyperstack.on_client?
225
+ (@immediate_update != @current_observer || @current_observer != object)
213
226
  end
214
227
 
215
228
  # schedule_delayed_updater adds a new set to the
@@ -1,5 +1,5 @@
1
1
  module Hyperstack
2
2
  module State
3
- VERSION = '1.0.alpha1.3'
3
+ VERSION = '1.0.alpha1.4'
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.3
4
+ version: 1.0.alpha1.4
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-01-17 00:00:00.000000000 Z
13
+ date: 2019-02-16 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: hyperstack-config
@@ -18,14 +18,14 @@ dependencies:
18
18
  requirements:
19
19
  - - '='
20
20
  - !ruby/object:Gem::Version
21
- version: 1.0.alpha1.3
21
+ version: 1.0.alpha1.4
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.3
28
+ version: 1.0.alpha1.4
29
29
  - !ruby/object:Gem::Dependency
30
30
  name: opal
31
31
  requirement: !ruby/object:Gem::Requirement
@@ -86,28 +86,28 @@ dependencies:
86
86
  requirements:
87
87
  - - '='
88
88
  - !ruby/object:Gem::Version
89
- version: 1.0.alpha1.3
89
+ version: 1.0.alpha1.4
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - '='
95
95
  - !ruby/object:Gem::Version
96
- version: 1.0.alpha1.3
96
+ version: 1.0.alpha1.4
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: hyper-spec
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
101
  - - '='
102
102
  - !ruby/object:Gem::Version
103
- version: 1.0.alpha1.3
103
+ version: 1.0.alpha1.4
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
108
  - - '='
109
109
  - !ruby/object:Gem::Version
110
- version: 1.0.alpha1.3
110
+ version: 1.0.alpha1.4
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: listen
113
113
  requirement: !ruby/object:Gem::Requirement
@@ -314,16 +314,16 @@ dependencies:
314
314
  name: sqlite3
315
315
  requirement: !ruby/object:Gem::Requirement
316
316
  requirements:
317
- - - ">="
317
+ - - "~>"
318
318
  - !ruby/object:Gem::Version
319
- version: '0'
319
+ version: 1.3.6
320
320
  type: :development
321
321
  prerelease: false
322
322
  version_requirements: !ruby/object:Gem::Requirement
323
323
  requirements:
324
- - - ">="
324
+ - - "~>"
325
325
  - !ruby/object:Gem::Version
326
- version: '0'
326
+ version: 1.3.6
327
327
  - !ruby/object:Gem::Dependency
328
328
  name: timecop
329
329
  requirement: !ruby/object:Gem::Requirement