isomorfeus-preact 10.6.45 → 10.6.46

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: 3363983634e71069a60fa277a03d0394993690dcf7cab706fb8a28fc22367072
4
- data.tar.gz: d8a9855c74eb31e3de87dba1c5bd5c5362a6f2cda93d7bbcb42e8b1ceec6d7ea
3
+ metadata.gz: c6aa16242ab93d05f360dd9c8b3455dd2e4b4084835116cd8973356edde20d4c
4
+ data.tar.gz: b230de356c9524d886f9cbfed54edc39c5531d7531b205301358c19acb800809
5
5
  SHA512:
6
- metadata.gz: 8a2e5544a14afdb95e1ca54a679285fffffacb9d25b8c8ab7971acd70d71221fde8b4c28733ee0aa4ca8900226653db6273de1d1d14552214a7c8458e6f51b88
7
- data.tar.gz: 2cf4331a001fce697899ebaacb409a50a8d1873efad53f52ebf4612cac50f02f8616eac13b9ab62518417f78503c7077750f8fc5a361ff53e3c4d36a865f4bce
6
+ metadata.gz: f0c8247ff444a7f045eb80e6a6d575f957869f87b559df2dba16520ebfe92e2a46d15aee505e9dd908fd4ce061139ff8285a9a9cef7afb6cb75f43d2fd728f50
7
+ data.tar.gz: acd073c0cb7c199228efa51ed17c1b11612f20670a4cea63b2c382bce7bf1dfef37d43180332de482907b6778fb15cf2d347a5f4a5aa15cdb94e90b02d913635
@@ -17,10 +17,7 @@ module Isomorfeus
17
17
  end
18
18
 
19
19
  def force_init!
20
- unless Isomorfeus.initial_state_fetched
21
- Isomorfeus.initial_state_fetched = true
22
- Redux::Store.preloaded_state = Isomorfeus.store.get_state
23
- end
20
+ @initialized = true
24
21
  Isomorfeus.force_init_store!
25
22
  execute_init_classes
26
23
  end
@@ -38,17 +35,6 @@ module Isomorfeus
38
35
  self.send("#{key}=", value)
39
36
  end
40
37
 
41
- # only used for SSR
42
- def cached_component_classes
43
- @cached_component_classes ||= {}
44
- end
45
-
46
- # only used for SSR
47
- def cached_component_class(class_name)
48
- return cached_component_classes[class_name] if cached_component_classes.key?(class_name)
49
- cached_component_classes[class_name] = "::#{class_name}".constantize
50
- end
51
-
52
38
  def execute_init_classes
53
39
  client_init_class_names.each do |constant|
54
40
  constant.constantize.send(:init)
@@ -58,7 +58,7 @@ module Isomorfeus
58
58
  # execute first render pass
59
59
  begin
60
60
  pass += 1
61
- has_transport, has_store, need_further_pass, exception = ctx.exec(javascript)
61
+ has_transport, need_further_pass, exception = ctx.exec(javascript)
62
62
  Isomorfeus.raise_error(message: "Server Side Rendering: #{exception['message']}", stack: exception['stack']) if exception
63
63
  rescue Exception => e
64
64
  Isomorfeus.raise_error(error: e)
@@ -95,14 +95,10 @@ module Isomorfeus
95
95
  Isomorfeus.raise_error(message: "Server Side Rendering: #{exception['message']}", stack: exception['stack']) if exception
96
96
  else
97
97
  start_time = Time.now
98
- script_key = if has_transport && has_store
98
+ script_key = if has_transport
99
99
  :still_busy
100
- elsif has_transport
101
- :transport_busy
102
- elsif has_store
103
- :store_busy
104
100
  else
105
- nil
101
+ :store_busy
106
102
  end
107
103
  while need_further_pass
108
104
  # execute further render passes
@@ -11,7 +11,6 @@ module Isomorfeus
11
11
  global.Exception = false;
12
12
  global.IsomorfeusSessionId = session_id;
13
13
  global.HasTransport = (typeof global.Opal.Isomorfeus.Transport !== 'undefined') && (api_ws_path !== '');
14
- global.HasStore = typeof global.Opal.Isomorfeus.store !== 'undefined';
15
14
  global.Opal.Isomorfeus['$env='](env);
16
15
  if (typeof global.Opal.Isomorfeus["$current_locale="] === 'function') { global.Opal.Isomorfeus["$current_locale="](locale); }
17
16
  global.Opal.Isomorfeus['$force_init!']();
@@ -22,8 +21,7 @@ module Isomorfeus
22
21
  global.Opal.send(global.Opal.Isomorfeus.Transport.$promise_connect(global.IsomorfeusSessionId), 'then', [], ($$1 = function(){
23
22
  try {
24
23
  global.RenderedTree = global.Opal.Isomorfeus.TopLevel.$render_component_to_string(component_name, props);
25
- let nfp = global.Opal.Isomorfeus.Transport["$busy?"]() || global.Opal.Isomorfeus.store['$recently_dispatched?']();
26
- global.NeedFurtherPass = (nfp == nil) ? false : nfp;
24
+ global.NeedFurtherPass = self.still_busy();
27
25
  global.FirstPassFinished = true;
28
26
  } catch (e) {
29
27
  global.Exception = e;
@@ -33,16 +31,13 @@ module Isomorfeus
33
31
  } else {
34
32
  try {
35
33
  global.RenderedTree = global.Opal.Isomorfeus.TopLevel.$render_component_to_string(component_name, props);
36
- if (global.HasStore) {
37
- let nfp = global.Opal.Isomorfeus.store['$recently_dispatched?']();
38
- global.NeedFurtherPass = (nfp == nil) ? false : nfp;
39
- }
34
+ global.NeedFurtherPass = self.store_busy();
40
35
  } catch (e) {
41
36
  global.Exception = e;
42
37
  global.NeedFurtherPass = false;
43
38
  }
44
39
  };
45
- return [global.HasTransport, global.HasStore, global.NeedFurtherPass, global.Exception ? { message: global.Exception.message, stack: global.Exception.stack } : false];
40
+ return [global.HasTransport, global.NeedFurtherPass, global.Exception ? { message: global.Exception.message, stack: global.Exception.stack } : false];
46
41
  }
47
42
 
48
43
  self.first_pass_result = function() {
@@ -66,8 +61,7 @@ module Isomorfeus
66
61
  }
67
62
  let application_state = global.Opal.Isomorfeus.store.native.getState();
68
63
  if (typeof global.NanoCSSInstance !== 'undefined') { ssr_styles = global.NanoCSSInstance.raw }
69
- let nfp = (global.HasTransport && global.Opal.Isomorfeus.Transport["$busy?"]()) || (global.HasStore && global.Opal.Isomorfeus.store["$recently_dispatched?"]());
70
- global.NeedFurtherPass = (nfp == nil) ? false : nfp;
64
+ global.NeedFurtherPass = ((global.HasTransport && global.Opal.Isomorfeus.Transport["$busy?"]()) || self.store_busy());
71
65
  return [rendered_tree, application_state, ssr_styles, global.Opal.Isomorfeus['$ssr_response_status'](), global.NeedFurtherPass, global.Exception ? { message: global.Exception.message, stack: global.Exception.stack } : false];
72
66
  }
73
67
 
@@ -21,9 +21,18 @@ module Isomorfeus
21
21
  component = component_name;
22
22
  }
23
23
  }
24
- component = Isomorfeus.cached_component_class(component_name) unless component
24
+ component = cached_component_class(component_name) unless component
25
25
  Preact.render_to_string(Preact.create_element(component, `Opal.Hash.$new(props)`))
26
26
  end
27
+
28
+ def cached_component_classes
29
+ @cached_component_classes ||= {}
30
+ end
31
+
32
+ def cached_component_class(class_name)
33
+ return cached_component_classes[class_name] if cached_component_classes.key?(class_name)
34
+ cached_component_classes[class_name] = "::#{class_name}".constantize
35
+ end
27
36
  end
28
37
  end
29
38
  end
@@ -1,3 +1,3 @@
1
1
  module Preact
2
- VERSION = '10.6.45'
2
+ VERSION = '10.6.46'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: isomorfeus-preact
3
3
  version: !ruby/object:Gem::Version
4
- version: 10.6.45
4
+ version: 10.6.46
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jan Biedermann