isomorfeus-react 16.12.1 → 16.12.2
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 +4 -4
- data/lib/isomorfeus/top_level.rb +7 -4
- data/lib/lucid_app/native_lucid_component_constructor.rb +1 -1
- data/lib/lucid_func/native_component_constructor.rb +6 -1
- data/lib/lucid_material/func/native_component_constructor.rb +6 -1
- data/lib/react/component/callbacks.rb +6 -6
- data/lib/react/version.rb +1 -1
- metadata +7 -14
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e2f2cf299b88aea2632443beec126b7d0407eb85dced22573d0ad712c92019a9
|
4
|
+
data.tar.gz: d4af259b498ae72fc0a09dc099a307587ae383630a77f578de1b364feeb752ff
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3eea5b7f5db17a5d788b1fcc110329b00c7ef4e0ba82513e717a799ad8a456ec02ed7659e540b3ca5f544d10df04c9c1f4bc6cea38b0c650ff691879360accdf
|
7
|
+
data.tar.gz: 862dfd20043bcfaae2a6aa1b416e3fadd7bc3d8d0f64faf406a92089691d132fc2125ec73c69512be7814a6e65c9f6490dc95e8ec3222da477c00b186afc3ad9
|
data/lib/isomorfeus/top_level.rb
CHANGED
@@ -5,6 +5,7 @@ module Isomorfeus
|
|
5
5
|
Isomorfeus.init
|
6
6
|
Isomorfeus::TopLevel.on_ready do
|
7
7
|
root_element = `document.querySelector('div[data-iso-root]')`
|
8
|
+
raise "Isomorfeus root element not found!" unless root_element
|
8
9
|
component_name = root_element.JS.getAttribute('data-iso-root')
|
9
10
|
Isomorfeus.env = root_element.JS.getAttribute('data-iso-env')
|
10
11
|
component = nil
|
@@ -37,11 +38,13 @@ module Isomorfeus
|
|
37
38
|
}
|
38
39
|
end
|
39
40
|
begin
|
40
|
-
Isomorfeus::TopLevel.mount_component(component, props, root_element, hydrated)
|
41
|
+
result = Isomorfeus::TopLevel.mount_component(component, props, root_element, hydrated)
|
42
|
+
@tried_another_time = false
|
43
|
+
result
|
41
44
|
rescue Exception => e
|
42
|
-
|
43
|
-
|
44
|
-
`setTimeout(Opal.Isomorfeus.TopLevel['$mount!'],
|
45
|
+
if !@tried_another_time
|
46
|
+
@tried_another_time = true
|
47
|
+
`setTimeout(Opal.Isomorfeus.TopLevel['$mount!'], 250)`
|
45
48
|
else
|
46
49
|
`console.error("Unable to mount '" + #{component_name} + "'! Error: " + #{e.message} + "!")`
|
47
50
|
`console.error(#{e.backtrace.join("\n")})`
|
@@ -63,7 +63,7 @@ module LucidApp
|
|
63
63
|
oper.render_buffer.push([]);
|
64
64
|
// console.log("lucid app pushed", oper.render_buffer, oper.render_buffer.toString());
|
65
65
|
oper.active_components.push(this);
|
66
|
-
oper.active_redux_components.push(this
|
66
|
+
oper.active_redux_components.push(this);
|
67
67
|
let block_result;
|
68
68
|
if (base.preload_block && base.while_loading_block && !this.state.preloaded) { block_result = #{`this.__ruby_instance`.instance_exec(&`base.while_loading_block`)}; }
|
69
69
|
else { block_result = #{`this.__ruby_instance`.instance_exec(&`base.render_block`)}; }
|
@@ -5,7 +5,12 @@ module LucidFunc
|
|
5
5
|
%x{
|
6
6
|
base.store_updates = true;
|
7
7
|
base.equality_checker = null;
|
8
|
-
base.instance_init = function(initial) {
|
8
|
+
base.instance_init = function(initial) {
|
9
|
+
let ruby_instance = { instance: #{base.new(`{}`)} };
|
10
|
+
ruby_instance.data_access = function() { return this.props.store; }
|
11
|
+
ruby_instance.data_access.bind(ruby_instance);
|
12
|
+
return ruby_instance;
|
13
|
+
}
|
9
14
|
base.instance_reducer = function(state, action) { return state; }
|
10
15
|
base.react_component = Opal.global.React.memo(function(props) {
|
11
16
|
const og = Opal.global;
|
@@ -6,7 +6,12 @@ module LucidMaterial
|
|
6
6
|
%x{
|
7
7
|
base.store_updates = true;
|
8
8
|
base.equality_checker = null;
|
9
|
-
base.instance_init = function(initial) {
|
9
|
+
base.instance_init = function(initial) {
|
10
|
+
let ruby_instance = { instance: #{base.new(`{}`)} };
|
11
|
+
ruby_instance.data_access = function() { return this.props.store; }
|
12
|
+
ruby_instance.data_access.bind(ruby_instance);
|
13
|
+
return ruby_instance;
|
14
|
+
}
|
10
15
|
base.instance_reducer = function(state, action) { return state; }
|
11
16
|
base.react_component = Opal.global.React.memo(function(props) {
|
12
17
|
const og = Opal.global;
|
@@ -7,7 +7,7 @@ module React
|
|
7
7
|
# TODO convert error and info
|
8
8
|
%x{
|
9
9
|
var fun = function(error, info) {
|
10
|
-
Opal.React.active_redux_components.push(this
|
10
|
+
Opal.React.active_redux_components.push(this);
|
11
11
|
#{`this.__ruby_instance`.instance_exec(`error`, `info`, &block)};
|
12
12
|
Opal.React.active_redux_components.pop();
|
13
13
|
}
|
@@ -19,7 +19,7 @@ module React
|
|
19
19
|
def component_did_mount(&block)
|
20
20
|
%x{
|
21
21
|
let fun = function() {
|
22
|
-
Opal.React.active_redux_components.push(this
|
22
|
+
Opal.React.active_redux_components.push(this);
|
23
23
|
#{`this.__ruby_instance`.instance_exec(&block)};
|
24
24
|
Opal.React.active_redux_components.pop();
|
25
25
|
}
|
@@ -40,7 +40,7 @@ module React
|
|
40
40
|
def component_did_update(&block)
|
41
41
|
%x{
|
42
42
|
var fun = function(prev_props, prev_state, snapshot) {
|
43
|
-
Opal.React.active_redux_components.push(this
|
43
|
+
Opal.React.active_redux_components.push(this);
|
44
44
|
#{`this.__ruby_instance`.instance_exec(`Opal.React.Component.Props.$new({props: prev_props})`,
|
45
45
|
`Opal.React.Component.State.$new({state: prev_state})`,
|
46
46
|
`snapshot`, &block)};
|
@@ -55,7 +55,7 @@ module React
|
|
55
55
|
%x{
|
56
56
|
var fun = function() {
|
57
57
|
if (typeof this.unsubscriber === "function") { this.unsubscriber(); };
|
58
|
-
Opal.React.active_redux_components.push(this
|
58
|
+
Opal.React.active_redux_components.push(this);
|
59
59
|
#{`this.__ruby_instance`.instance_exec(&block)};
|
60
60
|
Opal.React.active_redux_components.pop();
|
61
61
|
}
|
@@ -81,7 +81,7 @@ module React
|
|
81
81
|
def get_derived_state_from_props(&block)
|
82
82
|
%x{
|
83
83
|
var fun = function(props, state) {
|
84
|
-
Opal.React.active_redux_components.push(this
|
84
|
+
Opal.React.active_redux_components.push(this);
|
85
85
|
var result = #{`this.__ruby_instance`.instance_exec(`Opal.React.Component.Props.$new({props: props})`,
|
86
86
|
`Opal.React.Component.State.$new({state: state})`, &block)};
|
87
87
|
Opal.React.active_redux_components.pop();
|
@@ -97,7 +97,7 @@ module React
|
|
97
97
|
def get_snapshot_before_update(&block)
|
98
98
|
%x{
|
99
99
|
var fun = function(prev_props, prev_state) {
|
100
|
-
|
100
|
+
Opal.React.active_redux_components.push(this);
|
101
101
|
var result = #{`this.__ruby_instance`.instance_exec(`Opal.React.Component.Props.$new({props: prev_props})`,
|
102
102
|
`Opal.React.Component.State.$new({state: prev_state})`, &block)};
|
103
103
|
Opal.React.active_redux_components.pop();
|
data/lib/react/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: isomorfeus-react
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 16.12.
|
4
|
+
version: 16.12.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jan Biedermann
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-12-
|
11
|
+
date: 2019-12-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: concurrent-ruby
|
@@ -30,14 +30,14 @@ dependencies:
|
|
30
30
|
requirements:
|
31
31
|
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '3.
|
33
|
+
version: '3.10'
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: '3.
|
40
|
+
version: '3.10'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: opal
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -279,16 +279,9 @@ files:
|
|
279
279
|
homepage: http://isomorfeus.com
|
280
280
|
licenses:
|
281
281
|
- MIT
|
282
|
-
metadata:
|
283
|
-
|
284
|
-
|
285
|
-
isomorfeus-react 16.12.1:
|
286
|
-
Major improvement:
|
287
|
-
Using Zeitwerk and Opal-Zeitwerk for autoloading, may break existing installations which use opal-autoloader.
|
288
|
-
- existing installations may lock isomorfeus-react to 16.11.1 or upgrade to isomorfeus 1.0.0.zeta6
|
289
|
-
- new installations with isomorfeus 1.0.0.zeta5 should lock to 16.11.1
|
290
|
-
- new installations with isomorfeus 1.0.0.zeta6 and up -> enjoy the latest isomorfeus-react
|
291
|
-
|
282
|
+
metadata:
|
283
|
+
github_repo: ssh://github.com/isomorfeus/gems
|
284
|
+
post_install_message:
|
292
285
|
rdoc_options: []
|
293
286
|
require_paths:
|
294
287
|
- lib
|