view_component_reflex 2.3.6 → 2.3.12

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: e937fd7ba932deab56c293b8144506f734d1a4c5dc44e74d9facfcc07b789599
4
- data.tar.gz: f0fbd8dd07122877e370629f4d65387e79129c7b8b5528cb052b1040452d3f14
3
+ metadata.gz: cd84d332d4e687111e200c5ce5ee21714aff7b96e3911527b2a6b0fe1957fa4c
4
+ data.tar.gz: 3402b8dd84bf2b1dd4e3d11053916aaa62c0e583f3605a0c2a89c321668673ef
5
5
  SHA512:
6
- metadata.gz: 4d00f0ff02d17d4067436df5577de2aa84021ec28a509122bfef518862f46f77558c30745da154b56126b1506a056ff0abc4580a2f051d7f473b6b3f7b89b679
7
- data.tar.gz: 7217133fd36a2cc2d4fc6cba7fd6ebce9ee6e16a4935d54dcc8502beb9ca7bdc9620f1ae6c45ad29a590066b86c3fea27f5cb521ae90ca81ab26075e0a80595c
6
+ metadata.gz: 515a31e4d242bdd381e537d5b4dac20322a8318895cba609ef39cba068940a3b3e931b5862cf6404364794bea1bfbf0ed6ad6ce71cef9f9032bc7ddf7fc2499a
7
+ data.tar.gz: cd1040ec6bac0ee57ef3050c2cd1d0cfaa79daa21cbe141efec01ca97f5bdcba6553cb384a752294ba7149e299eb3e2a5631a4ccf2204557d7c3a2eecca41b28
data/README.md CHANGED
@@ -324,7 +324,7 @@ The gem is available as open source under the terms of the [MIT License](https:/
324
324
 
325
325
  ## Caveats
326
326
 
327
- State uses session to maintain state as of right now. It also assumes your component view is written with the file extension `.html.erb`
327
+ State uses session to maintain state as of right now. It also assumes your component view is written with a file extension of either `.html.erb`, `.html.haml` or `.html.slim`.
328
328
 
329
329
  ## Support me
330
330
 
@@ -139,6 +139,10 @@ module ViewComponentReflex
139
139
  []
140
140
  end
141
141
 
142
+ # def receive_params(old_state, params)
143
+ # # no op
144
+ # end
145
+
142
146
  def key
143
147
  # initialize session state
144
148
  if !stimulus_reflex? || ViewComponentReflex::Engine.state_adapter.state(request, @key).empty?
@@ -147,8 +151,12 @@ module ViewComponentReflex
147
151
 
148
152
  ViewComponentReflex::Engine.state_adapter.store_state(request, @key, new_state)
149
153
  ViewComponentReflex::Engine.state_adapter.store_state(request, "#{@key}_initial", new_state)
150
- else
154
+ elsif !@initialized_state
151
155
  initial_state = ViewComponentReflex::Engine.state_adapter.state(request, "#{@key}_initial")
156
+
157
+ # incoming_params = safe_instance_variables.each_with_object({}) { |var, obj| obj[var] = instance_variable_get(var) }
158
+ # receive_params(ViewComponentReflex::Engine.state_adapter.state(request, @key), incoming_params)
159
+
152
160
  ViewComponentReflex::Engine.state_adapter.state(request, @key).each do |k, v|
153
161
  instance_value = instance_variable_get(k)
154
162
  if permit_parameter?(initial_state[k], instance_value)
@@ -158,6 +166,7 @@ module ViewComponentReflex
158
166
  instance_variable_set(k, v)
159
167
  end
160
168
  end
169
+ @initialized_state = true
161
170
  end
162
171
  @key
163
172
  end
@@ -172,7 +181,7 @@ module ViewComponentReflex
172
181
  [
173
182
  :@view_context, :@lookup_context, :@view_renderer, :@view_flow,
174
183
  :@virtual_path, :@variant, :@current_template, :@output_buffer, :@key,
175
- :@helpers, :@controller, :@request, :@tag_builder
184
+ :@helpers, :@controller, :@request, :@tag_builder, :@initialized_state
176
185
  ]
177
186
  end
178
187
 
@@ -20,12 +20,18 @@ module ViewComponentReflex
20
20
  [primary_selector, *rest].each do |s|
21
21
  html = document.css(s)
22
22
  if html.present?
23
- morph(s, html.inner_html)
23
+ cable_ready[channel.stream_name].morph(
24
+ selector: s,
25
+ html: html.inner_html,
26
+ children_only: true,
27
+ permanent_attribute_name: "data-reflex-permanent"
28
+ )
24
29
  end
25
30
  end
26
31
  else
27
32
  refresh_component!
28
33
  end
34
+ cable_ready.broadcast
29
35
  end
30
36
 
31
37
  def refresh_component!
@@ -1,3 +1,3 @@
1
1
  module ViewComponentReflex
2
- VERSION = '2.3.6'
2
+ VERSION = '2.3.12'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: view_component_reflex
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.6
4
+ version: 2.3.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - Joshua LeBlanc
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-10-02 00:00:00.000000000 Z
11
+ date: 2020-10-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -16,20 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 6.0.3
20
- - - ">="
21
- - !ruby/object:Gem::Version
22
- version: 6.0.3.1
19
+ version: '5.2'
23
20
  type: :runtime
24
21
  prerelease: false
25
22
  version_requirements: !ruby/object:Gem::Requirement
26
23
  requirements:
27
24
  - - "~>"
28
25
  - !ruby/object:Gem::Version
29
- version: 6.0.3
30
- - - ">="
31
- - !ruby/object:Gem::Version
32
- version: 6.0.3.1
26
+ version: '5.2'
33
27
  - !ruby/object:Gem::Dependency
34
28
  name: stimulus_reflex
35
29
  requirement: !ruby/object:Gem::Requirement