isomorfeus-react 16.6.2 → 16.6.3

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: 61b8f04576385edf701a851c23d7844a692112c4350fe2fd05863711c277529c
4
- data.tar.gz: bacec1878a3881c084805101d070c8dce6c934803085172ec3b2fd516660224e
3
+ metadata.gz: 7e53afc038b68f7a7f6b3fd6471c39a0a4d03e8cdb8f5b9af5b2fc82f88c8bb2
4
+ data.tar.gz: ad38368017933cbd6f79d9f25bf7c1600129d4cedb60d965edf234a05118a944
5
5
  SHA512:
6
- metadata.gz: 64d409626ef651aa300a38066514de2460a6f5232c4c7ca1ec8977fba314091f4a0690a12f302dfa1934d8eb7e3848f0398a9ee88d1f1eb805ebc113cea5b06e
7
- data.tar.gz: 2f654f344ef6b82583aa51de25a33c55c526fa860d0e23635b69bb0997b99325d5e8a084989a66f0ba6bb2a888d416cde86358b5e08d6ee6286aa41ae959ce50
6
+ metadata.gz: 405733531edf7b1d5e1883f83e58971164d4fb6c088436569cf0fc8c34d454d253c719c880c62a60591c5d93cf2d05eccf41cca803e1cac0f0def4fd91cf5d81
7
+ data.tar.gz: 65df8532b419500abeeef2ab1b6d36e9af42cfe3924b45a6e9c1f09efd69e82378bda1e445abe249ba58ce64359f59b4e1d1b77698f92fbfd63be830b125b440
@@ -1,84 +1,48 @@
1
- if RUBY_ENGINE == 'opal'
2
- module Isomorfeus
1
+ module Isomorfeus
2
+ if RUBY_ENGINE == 'opal'
3
3
  class << self
4
- attr_reader :options
5
- attr_reader :initialized
4
+ attr_reader :initialized?
6
5
  attr_reader :store
7
6
 
8
7
  def init
9
- return if initialized
8
+ return if initialized?
10
9
  @initialized = true
11
10
  # at least one reducer must have been added at this stage
12
11
  # this happened in isomorfeus-react.rb, where the component reducers were added
13
12
  @store = Redux::Store.init!
14
13
  `Opal.Isomorfeus.store = #@store`
15
- init_options
16
14
  execute_init_classes
17
15
  end
18
16
 
19
- def init_options
20
- return @options if @options
21
- @options = Hash.new(`Opal.IsomorfeusOptions`)
22
- @options.keys.each do |option|
23
- define_singleton_method(option) do
24
- @options[option]
25
- end
26
- end
17
+ def add_client_init_class_name(init_class_name)
18
+ client_init_class_names << init_class_name
19
+ end
20
+
21
+ def add_client_option(key, value = nil)
22
+ self.class.attr_accessor(key)
23
+ self.send("#{key}=", value)
27
24
  end
28
25
 
29
26
  def execute_init_classes
30
- if options.has_key?(:client_init_class_names)
31
- client_init_class_names.each do |constant|
32
- constant.constantize.send(:init)
33
- end
27
+ client_init_class_names.each do |constant|
28
+ constant.constantize.send(:init)
34
29
  end
35
30
  end
36
31
  end
37
- end
38
- else
39
- module Isomorfeus
32
+ self.add_client_option(:client_init_class_names, [])
33
+ else
40
34
  class << self
41
- attr_accessor :client_init_class_names
42
35
  attr_accessor :prerendering
43
- attr_accessor :version
44
-
45
- def add_client_option(option)
46
- @options_for_client ||= Set.new
47
- @options_for_client << option
48
- end
49
-
50
- def add_client_options(options)
51
- options.each do |option|
52
- add_client_option(option)
53
- end
54
- end
55
-
56
- def add_client_init_class_name(class_name)
57
- client_init_class_names << class_name
58
- end
59
36
 
60
37
  def configuration(&block)
61
38
  block.call(self)
62
39
  end
63
40
 
64
- def options_for_client
65
- @options_for_client
66
- end
67
-
68
- def options_hash_for_client
69
- opts = {}
70
- Isomorfeus.options_for_client.each do |option|
71
- opts[option] = Isomorfeus.send(option)
72
- end
73
- opts
41
+ def version
42
+ Isomorfeus::VERSION
74
43
  end
75
44
  end
76
45
 
77
- self.add_client_option(:client_init_class_names)
78
- self.add_client_option(:version)
79
-
80
- self.client_init_class_names = []
81
46
  self.prerendering = :off
82
- # self.version = ::Isomorfeus::Component::VERSION # thats equal to the isomorfeus version
83
47
  end
84
48
  end
@@ -1,21 +1,5 @@
1
1
  module Isomorfeus
2
2
  module ViewHelpers
3
- def isomorfeus_script_tag(options = {})
4
- # client side used options:
5
- # current_user_id
6
- # session_id
7
- # form_authenticity_token
8
- options_hash = Isomorfeus.options_hash_for_client
9
- options_hash.merge!(options)
10
- tag = <<~SCRIPT
11
- <script type="text/javascript">
12
- Opal.IsomorfeusOptions = #{options_hash.to_json};
13
- Opal.Isomorfeus.$init();
14
- </script>
15
- SCRIPT
16
- tag.respond_to?(:html_safe) ? tag.html_safe : tag
17
- end
18
-
19
3
  def react_component(component_name, params)
20
4
  component_name_id = component_id_name(component_name)
21
5
  tag = <<~SCRIPT
@@ -56,7 +56,8 @@ module LucidApp
56
56
  var current_ruby_state = Opal.Hash.$new(this.state.isomorfeus_store_state);
57
57
  var next_ruby_state = Opal.Hash.$new(next_state);
58
58
  if (#{`next_ruby_state` != `current_ruby_state`}) {
59
- this.setState({isomorfeus_store_state: next_state});
59
+ var self = this;
60
+ /* setTimeout(function() { */ self.setState({ isomorfeus_store_state: next_state }); /*}, 0 ); */
60
61
  }
61
62
  }
62
63
  componentWillUnmount() {
@@ -65,8 +65,7 @@ module LucidComponent
65
65
  if (property === "isomorfeus_store") {
66
66
  var res = this.scu_for_used_store_paths(this, this.state.isomorfeus_store, next_state.isomorfeus_store);
67
67
  if (res) { return true; }
68
- }
69
- if (next_props.hasOwnProperty(property)) {
68
+ } else if (next_props.hasOwnProperty(property)) {
70
69
  if (!this.props.hasOwnProperty(property)) { return true; };
71
70
  if (property == "children") { if (next_props.children !== this.props.children) { return true; }}
72
71
  else if (typeof next_props[property] !== "undefined" && typeof next_props[property]['$!='] !== "undefined" && typeof this.props[property] !== "undefined" && typeof this.props[property]['$!='] !== "undefined") {
@@ -85,15 +84,20 @@ module LucidComponent
85
84
  return false;
86
85
  }
87
86
  scu_for_used_store_paths(self, current_state, next_state) {
88
- var unique_used_store_paths = self.used_store_paths.filter(function(elem, pos) {
89
- return (self.used_store_paths.indexOf(elem) === pos);
87
+ var unique_used_store_paths = self.used_store_paths.filter(function(elem, pos, paths) {
88
+ return (paths.indexOf(elem) === pos);
90
89
  });
91
90
  var used_length = unique_used_store_paths.length;
92
91
  var store_path;
93
92
  var current_value;
94
93
  var next_value;
94
+ var store_path_last;
95
95
  for (var i = 0; i < used_length; i++) {
96
96
  store_path = unique_used_store_paths[i];
97
+ store_path_last = store_path.length - 1;
98
+ if (store_path[store_path_last].constructor === Array) {
99
+ store_path[store_path_last] = JSON.stringify(store_path[store_path_last]);
100
+ }
97
101
  current_value = store_path.reduce(function(prev, curr) { return prev && prev[curr]; }, current_state);
98
102
  next_value = store_path.reduce(function(prev, curr) { return prev && prev[curr]; }, next_state);
99
103
  if (current_value !== next_value) { return true; };
data/lib/react.rb CHANGED
@@ -37,12 +37,15 @@ module React
37
37
  return result;
38
38
  }
39
39
 
40
- self.internal_render = function(component, props, block) {
40
+ self.internal_render = function(component, props, string_child, block) {
41
41
  var children;
42
42
  var block_result;
43
43
  var react_element;
44
+ var native_props = null;
44
45
 
45
- if (block !== nil) {
46
+ if (string_child) {
47
+ children = string_child;
48
+ } else if (block !== nil) {
46
49
  Opal.React.render_buffer.push([]);
47
50
  block_result = block.$call();
48
51
  if (block_result && (block_result !== nil && (typeof block_result === "string" || typeof block_result.$$typeof === "symbol" ||
@@ -54,7 +57,8 @@ module React
54
57
  if (children.length == 1) { children = children[0]; }
55
58
  else if (children.length == 0) { children = null; }
56
59
  }
57
- react_element = React.createElement(component, props, children);
60
+ if (props) { native_props = Opal.React.to_native_react_props(props); }
61
+ react_element = React.createElement(component, native_props, children);
58
62
  Opal.React.render_buffer[Opal.React.render_buffer.length - 1].push(react_element);
59
63
  };
60
64
 
@@ -7,23 +7,25 @@ module React
7
7
  if base_module != ''
8
8
  base_module.constantize.define_singleton_method(base.to_s.demodulize) do |*args, &block|
9
9
  %x{
10
- var props = null;
11
-
12
10
  if (args.length > 0) {
13
- props = Opal.React.to_native_react_props(args[0]);
14
- }
15
- Opal.React.internal_render(#{base}.react_component, props, block);
11
+ var last_arg = args[args.length - 1];
12
+ if (typeof last_arg === 'string' || last_arg instanceof String) {
13
+ if (args.length === 1) { Opal.React.internal_render(#{base}.react_component, null, last_arg, null); }
14
+ else { Opal.React.internal_render(#{base}.react_component, args[0], last_arg, null); }
15
+ } else { Opal.React.internal_render(#{base}.react_component, args[0], null, block); }
16
+ } else { Opal.React.internal_render(#{base}.react_component, null, null, block); }
16
17
  }
17
18
  end
18
19
  else
19
20
  Object.define_method(base.to_s) do |*args, &block|
20
21
  %x{
21
- var props = null;
22
-
23
22
  if (args.length > 0) {
24
- props = Opal.React.to_native_react_props(args[0]);
25
- }
26
- Opal.React.internal_render(#{base}.react_component, props, block);
23
+ var last_arg = args[args.length - 1];
24
+ if (typeof last_arg === 'string' || last_arg instanceof String) {
25
+ if (args.length === 1) { Opal.React.internal_render(#{base}.react_component, null, last_arg, null); }
26
+ else { Opal.React.internal_render(#{base}.react_component, args[0], last_arg, null); }
27
+ } else { Opal.React.internal_render(#{base}.react_component, args[0], null, block); }
28
+ } else { Opal.React.internal_render(#{base}.react_component, null, null, block); }
27
29
  }
28
30
  end
29
31
  end
@@ -54,22 +54,24 @@ module React
54
54
  SUPPORTED_HTML_AND_SVG_ELEMENTS.each do |element|
55
55
  define_method(element) do |*args, &block|
56
56
  %x{
57
- var props = null;
58
-
59
57
  if (args.length > 0) {
60
- props = Opal.React.to_native_react_props(args[0]);
61
- }
62
- Opal.React.internal_render(element, props, block);
58
+ var last_arg = args[args.length - 1];
59
+ if (typeof last_arg === 'string' || last_arg instanceof String) {
60
+ if (args.length === 1) { Opal.React.internal_render(element, null, last_arg, null); }
61
+ else { Opal.React.internal_render(element, args[0], last_arg, null); }
62
+ } else { Opal.React.internal_render(element, args[0], null, block); }
63
+ } else { Opal.React.internal_render(element, null, null, block); }
63
64
  }
64
65
  end
65
66
  define_method(`element.toUpperCase()`) do |*args, &block|
66
67
  %x{
67
- var props = null;
68
-
69
68
  if (args.length > 0) {
70
- props = Opal.React.to_native_react_props(args[0]);
71
- }
72
- Opal.React.internal_render(element, props, block);
69
+ var last_arg = args[args.length - 1];
70
+ if (typeof last_arg === 'string' || last_arg instanceof String) {
71
+ if (args.length === 1) { Opal.React.internal_render(element, null, last_arg, null); }
72
+ else { Opal.React.internal_render(element, args[0], last_arg, null); }
73
+ } else { Opal.React.internal_render(element, args[0], null, block); }
74
+ } else { Opal.React.internal_render(element, null, null, block); }
73
75
  }
74
76
  end
75
77
  end
@@ -1,14 +1,15 @@
1
1
  module React
2
2
  module Component
3
3
  module Features
4
- def Fragment(props = `null`, &block)
4
+ def Fragment(*args, &block)
5
5
  %x{
6
- var native_props = null;
7
-
8
- if (props) {
9
- native_props = Opal.React.to_native_react_props(args[0]);
10
- }
11
- Opal.React.internal_render(React.Fragment, native_props, block);
6
+ if (args.length > 0) {
7
+ var last_arg = args[args.length - 1];
8
+ if (typeof last_arg === 'string' || last_arg instanceof String) {
9
+ if (args.length === 1) { Opal.React.internal_render(React.Fragment, null, last_arg, null); }
10
+ else { Opal.React.internal_render(React.Fragment, args[0], last_arg, null); }
11
+ } else { Opal.React.internal_render(React.Fragment, args[0], null, block); }
12
+ } else { Opal.React.internal_render(React.Fragment, null, null, block); }
12
13
  }
13
14
  end
14
15
 
@@ -32,25 +33,27 @@ module React
32
33
  }
33
34
  end
34
35
 
35
- def StrictMode(props = `null`, &block)
36
+ def StrictMode(*args, &block)
36
37
  %x{
37
- var native_props = null;
38
-
39
- if (props) {
40
- native_props = Opal.React.to_native_react_props(args[0]);
41
- }
42
- Opal.React.internal_render(React.StrictMode, native_props, block);
38
+ if (args.length > 0) {
39
+ var last_arg = args[args.length - 1];
40
+ if (typeof last_arg === 'string' || last_arg instanceof String) {
41
+ if (args.length === 1) { Opal.React.internal_render(React.StrictMode, null, last_arg, null); }
42
+ else { Opal.React.internal_render(React.StrictMode, args[0], last_arg, null); }
43
+ } else { Opal.React.internal_render(React.StrictMode, args[0], null, block); }
44
+ } else { Opal.React.internal_render(React.StrictMode, null, null, block); }
43
45
  }
44
46
  end
45
47
 
46
- def Suspense(props = `null`, &block)
48
+ def Suspense(*args, &block)
47
49
  %x{
48
- var native_props = null;
49
-
50
- if (props) {
51
- native_props = Opal.React.to_native_react_props(args[0]);
52
- }
53
- Opal.React.internal_render(React.Suspense, native_props, block);
50
+ if (args.length > 0) {
51
+ var last_arg = args[args.length - 1];
52
+ if (typeof last_arg === 'string' || last_arg instanceof String) {
53
+ if (args.length === 1) { Opal.React.internal_render(React.Suspense, null, last_arg, null); }
54
+ else { Opal.React.internal_render(React.Suspense, args[0], last_arg, null); }
55
+ } else { Opal.React.internal_render(React.Suspense, args[0], null, block); }
56
+ } else { Opal.React.internal_render(React.Suspense, null, null, block); }
54
57
  }
55
58
  end
56
59
  end
@@ -54,12 +54,13 @@ module React
54
54
  }
55
55
  }
56
56
  if (component) {
57
- var props = null;
58
-
59
57
  if (args.length > 0) {
60
- props = Opal.React.to_native_react_props(args[0]);
61
- }
62
- Opal.React.internal_render(component, props, block);
58
+ var last_arg = args[args.length - 1];
59
+ if (typeof last_arg === 'string' || last_arg instanceof String) {
60
+ if (args.length === 1) { Opal.React.internal_render(component, null, last_arg, null); }
61
+ else { Opal.React.internal_render(component, args[0], last_arg, null); }
62
+ } else { Opal.React.internal_render(component, args[0], null, block); }
63
+ } else { Opal.React.internal_render(component, null, null, block); }
63
64
  } else {
64
65
  return #{_react_component_resolution_original_method_missing(component_name, *args, block)};
65
66
  }
@@ -9,9 +9,7 @@ module React
9
9
  var props = null;
10
10
  var react_element;
11
11
 
12
- if (args.length > 0) {
13
- props = Opal.React.to_native_react_props(args[0]);
14
- }
12
+ if (args.length > 0) { props = args[0]; }
15
13
 
16
14
  var react_element = React.createElement(this.native.Consumer, props, function(value) {
17
15
  if (block !== nil) {
@@ -36,11 +34,8 @@ module React
36
34
  def Provider(*args, &block)
37
35
  %x{
38
36
  var props = null;
39
-
40
- if (args.length > 0) {
41
- props = Opal.React.to_native_react_props(args[0]);
42
- }
43
- Opal.React.internal_render(this.native.Provider, props, block);
37
+ if (args.length > 0) { props = args[0]; }
38
+ Opal.React.internal_render(this.native.Provider, props, null, block);
44
39
  }
45
40
  end
46
41
  end
@@ -45,11 +45,22 @@ module React
45
45
  }
46
46
  if (component) {
47
47
  var props = null;
48
-
49
48
  if (args.length > 0) {
50
- props = Opal.React.to_native_react_props(args[0]);
49
+ var last_arg = args[args.length - 1];
50
+ if (typeof last_arg === 'string' || last_arg instanceof String) {
51
+ if (args.length === 1) {
52
+ Opal.React.internal_render(component, null, last_arg, null);
53
+ } else {
54
+ props = Opal.React.to_native_react_props(args[0]);
55
+ Opal.React.internal_render(component, props, last_arg, null);
56
+ }
57
+ } else {
58
+ props = Opal.React.to_native_react_props(args[0]);
59
+ Opal.React.internal_render(component, props, null, block);
60
+ }
61
+ } else {
62
+ Opal.React.internal_render(component, null, null, block);
51
63
  }
52
- Opal.React.internal_render(component, props, block);
53
64
  } else {
54
65
  return #{_react_component_resolution_original_method_missing(component_name, *args, block)};
55
66
  }
@@ -17,13 +17,14 @@ module React
17
17
  if (component) {
18
18
  var children = null;
19
19
  var block_result = null;
20
- var props = null;
21
20
  var react_element;
22
-
23
21
  if (args.length > 0) {
24
- props = Opal.React.to_native_react_props(args[0]);
25
- }
26
- Opal.React.internal_render(component, props, block);
22
+ var last_arg = args[args.length - 1];
23
+ if (typeof last_arg === 'string' || last_arg instanceof String) {
24
+ if (args.length === 1) { Opal.React.internal_render(element, null, last_arg, null); }
25
+ else { Opal.React.internal_render(element, args[0], last_arg, null); }
26
+ } else { Opal.React.internal_render(element, args[0], null, block); }
27
+ } else { Opal.React.internal_render(element, null, null, block); }
27
28
  } else {
28
29
  #{raise NameError, "No such native Component #@const_name.#{name}"};
29
30
  }
@@ -55,7 +55,10 @@ module React
55
55
  }
56
56
  listener() {
57
57
  var next_state = Object.assign({}, this.state, { isomorfeus_store: Opal.Isomorfeus.store.native.getState() });
58
- if (this.scu_for_used_store_paths(this, this.state.isomorfeus_store, next_state.isomorfeus_store)) { this.setState(next_state); }
58
+ if (this.scu_for_used_store_paths(this, this.state.isomorfeus_store, next_state.isomorfeus_store)) {
59
+ var self = this;
60
+ /* setTimeout(function() { */ self.setState(next_state); /* }, 0); */
61
+ }
59
62
  }
60
63
  register_used_store_path(path) {
61
64
  this.used_store_paths.push(path);
@@ -83,10 +86,9 @@ module React
83
86
  }
84
87
  for (var property in next_state) {
85
88
  if (property === "isomorfeus_store") {
86
- var res = this.scu_for_used_store_paths(this, this.state.isomorfeus_store, next_state.isomorfeus_store);
89
+ return this.scu_for_used_store_paths(this, this.state.isomorfeus_store, next_state.isomorfeus_store);
87
90
  if (res) { return true; }
88
- }
89
- if (next_state.hasOwnProperty(property)) {
91
+ } else if (next_state.hasOwnProperty(property)) {
90
92
  if (!this.state.hasOwnProperty(property)) { return true; };
91
93
  if (typeof next_state[property]['$!='] !== "undefined" && typeof this.state[property]['$!='] !== "undefined") {
92
94
  if (#{ !! (`next_state[property]` != `this.state[property]`) }) { return true };
@@ -96,15 +98,20 @@ module React
96
98
  return false;
97
99
  }
98
100
  scu_for_used_store_paths(self, current_state, next_state) {
99
- var unique_used_store_paths = self.used_store_paths.filter(function(elem, pos) {
100
- return (self.used_store_paths.indexOf(elem) === pos);
101
+ var unique_used_store_paths = self.used_store_paths.filter(function(elem, pos, paths) {
102
+ return (paths.indexOf(elem) === pos);
101
103
  });
102
104
  var used_length = unique_used_store_paths.length;
103
105
  var store_path;
104
106
  var current_value;
105
107
  var next_value;
108
+ var store_path_last;
106
109
  for (var i = 0; i < used_length; i++) {
107
110
  store_path = unique_used_store_paths[i];
111
+ store_path_last = store_path.length - 1;
112
+ if (store_path[store_path_last].constructor === Array) {
113
+ store_path[store_path_last] = JSON.stringify(store_path[store_path_last]);
114
+ }
108
115
  current_value = store_path.reduce(function(prev, curr) { return prev && prev[curr]; }, current_state);
109
116
  next_value = store_path.reduce(function(prev, curr) { return prev && prev[curr]; }, next_state);
110
117
  if (current_value !== next_value) { return true; };
@@ -9,9 +9,6 @@ module React
9
9
  new_state[action[:object_id]] = {} unless new_state.has_key?(action[:object_id])
10
10
  new_state[action[:object_id]].merge!(action[:name] => action[:value])
11
11
  new_state
12
- when 'INIT'
13
- new_state = {}
14
- new_state
15
12
  else
16
13
  prev_state
17
14
  end
@@ -24,23 +21,19 @@ module React
24
21
  new_state[action[:class]] = {} unless new_state.has_key?(action[:class])
25
22
  new_state[action[:class]].merge!(action[:name] => action[:value])
26
23
  new_state
27
- when 'INIT'
28
- new_state = {}
29
- new_state
30
24
  else
31
25
  prev_state
32
26
  end
33
27
  end
34
28
 
29
+ # TODO move application_state to i-redux
30
+ # TODO implement Isomomorfeus.store.app_store or Isomomorfeus.app_store
35
31
  app_reducer = Redux.create_reducer do |prev_state, action|
36
32
  case action[:type]
37
33
  when 'APPLICATION_STATE'
38
34
  new_state = {}.merge!(prev_state) # make a copy of state
39
35
  new_state.merge!(action[:name] => action[:value])
40
36
  new_state
41
- when 'INIT'
42
- new_state = {}
43
- new_state
44
37
  else
45
38
  prev_state
46
39
  end
data/lib/react/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module React
2
- VERSION = '16.6.2'
2
+ VERSION = '16.6.3'
3
3
  end
File without changes
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.6.2
4
+ version: 16.6.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jan Biedermann
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-10-31 00:00:00.000000000 Z
11
+ date: 2019-05-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: opal
@@ -17,9 +17,6 @@ dependencies:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
19
  version: 0.11.0
20
- - - "<"
21
- - !ruby/object:Gem::Version
22
- version: 0.12.0
23
20
  type: :runtime
24
21
  prerelease: false
25
22
  version_requirements: !ruby/object:Gem::Requirement
@@ -27,9 +24,6 @@ dependencies:
27
24
  - - ">="
28
25
  - !ruby/object:Gem::Version
29
26
  version: 0.11.0
30
- - - "<"
31
- - !ruby/object:Gem::Version
32
- version: 0.12.0
33
27
  - !ruby/object:Gem::Dependency
34
28
  name: opal-activesupport
35
29
  requirement: !ruby/object:Gem::Requirement
@@ -64,14 +58,28 @@ dependencies:
64
58
  requirements:
65
59
  - - "~>"
66
60
  - !ruby/object:Gem::Version
67
- version: 4.0.0
61
+ version: 4.0.1
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: 4.0.1
69
+ - !ruby/object:Gem::Dependency
70
+ name: isomorfeus-speednode
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: 0.2.1
68
76
  type: :runtime
69
77
  prerelease: false
70
78
  version_requirements: !ruby/object:Gem::Requirement
71
79
  requirements:
72
80
  - - "~>"
73
81
  - !ruby/object:Gem::Version
74
- version: 4.0.0
82
+ version: 0.2.1
75
83
  description: Write React Components in Ruby.
76
84
  email:
77
85
  - jan@kursator.com
@@ -79,9 +87,6 @@ executables: []
79
87
  extensions: []
80
88
  extra_rdoc_files: []
81
89
  files:
82
- - Gemfile
83
- - README.md
84
- - isomorfeus-react.gemspec
85
90
  - lib/isomorfeus-react.rb
86
91
  - lib/isomorfeus/config.rb
87
92
  - lib/isomorfeus/top_level.rb
@@ -140,6 +145,7 @@ files:
140
145
  - lib/react/version.rb
141
146
  - lib/react_dom.rb
142
147
  - lib/react_dom_server.rb
148
+ - readme.md
143
149
  homepage: http://isomorfeus.com
144
150
  licenses:
145
151
  - MIT
@@ -159,8 +165,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
159
165
  - !ruby/object:Gem::Version
160
166
  version: '0'
161
167
  requirements: []
162
- rubyforge_project:
163
- rubygems_version: 2.7.6
168
+ rubygems_version: 3.0.3
164
169
  signing_key:
165
170
  specification_version: 4
166
171
  summary: React for Opal Ruby.
data/Gemfile DELETED
@@ -1 +0,0 @@
1
- gemspec
@@ -1,23 +0,0 @@
1
- # -*- encoding: utf-8 -*-
2
- require_relative 'lib/react/version.rb'
3
-
4
- Gem::Specification.new do |s|
5
- s.name = 'isomorfeus-react'
6
- s.version = React::VERSION
7
-
8
- s.authors = ['Jan Biedermann']
9
- s.email = ['jan@kursator.com']
10
- s.homepage = 'http://isomorfeus.com'
11
- s.summary = 'React for Opal Ruby.'
12
- s.license = 'MIT'
13
- s.description = 'Write React Components in Ruby.'
14
-
15
- s.files = `git ls-files`.split("\n").reject { |f| f.match(%r{^(gemfiles|s)/}) }
16
- #s.test_files = `git ls-files -- {test,s,features}/*`.split("\n")
17
- s.require_paths = ['lib']
18
-
19
- s.add_dependency 'opal', '>= 0.11.0', '< 0.12.0'
20
- s.add_dependency 'opal-activesupport', '~> 0.3.1'
21
- s.add_dependency 'opal-browser', '~> 0.2.0'
22
- s.add_dependency 'isomorfeus-redux', '~> 4.0.0'
23
- end