hyper-component 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 +4 -4
- data/.gitignore +4 -0
- data/hyper-component.gemspec +1 -1
- data/lib/hyperstack/component/element.rb +28 -7
- data/lib/hyperstack/component/version.rb +1 -1
- data/lib/hyperstack/internal/component/haml.rb +3 -12
- data/lib/hyperstack/internal/component/react_wrapper.rb +45 -20
- metadata +12 -13
- data/Gemfile.lock +0 -364
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 407fc5c699f76a1d030f4f8c3c221806ce010cd473adb062fbba7f08d41f2a74
|
4
|
+
data.tar.gz: 9d139310c4721502f09b74477efdd4f4f6fe388bc4a410abf6abe87e7cee0f52
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: aa213634e017097aa2562f00f29083017a12e345ba1abfe51bac88e7941b7e0f08f787f32f64871698b922e8518ec0e11bd34faa52a83c3c453f931a8ce97811
|
7
|
+
data.tar.gz: bf453d84ab0e93c94831a42cba2b3a3c364d18612071e7564b4d3f751d282c5fa04240f3c938e591e9f755f2dee619e69b885b90c4718f2da5199446ce380587
|
data/.gitignore
CHANGED
data/hyper-component.gemspec
CHANGED
@@ -47,6 +47,6 @@ Gem::Specification.new do |spec|
|
|
47
47
|
spec.add_development_dependency 'rake'
|
48
48
|
spec.add_development_dependency 'rspec-rails'
|
49
49
|
spec.add_development_dependency 'rubocop', '~> 0.51.0'
|
50
|
-
spec.add_development_dependency 'sqlite3'
|
50
|
+
spec.add_development_dependency 'sqlite3', '~> 1.3.6' # see https://github.com/rails/rails/issues/35153
|
51
51
|
spec.add_development_dependency 'timecop', '~> 0.8.1'
|
52
52
|
end
|
@@ -33,6 +33,19 @@ module Hyperstack
|
|
33
33
|
@native = native_element
|
34
34
|
end
|
35
35
|
|
36
|
+
def _update_ref(x)
|
37
|
+
@ref = x
|
38
|
+
@_child_element._update_ref(x) if @_child_element
|
39
|
+
end
|
40
|
+
|
41
|
+
def ref
|
42
|
+
@ref || raise("#{self} has not been mounted yet")
|
43
|
+
end
|
44
|
+
|
45
|
+
def dom_node
|
46
|
+
@type.is_a?(String) ? ref : ref.dom_node
|
47
|
+
end
|
48
|
+
|
36
49
|
# Attach event handlers.
|
37
50
|
|
38
51
|
def on(*event_names, &block)
|
@@ -45,14 +58,14 @@ module Hyperstack
|
|
45
58
|
# Used for elements that are not yet in DOM, i.e. they are provided as children
|
46
59
|
# or they have been explicitly removed from the rendering context using the delete method.
|
47
60
|
|
48
|
-
def render(*props
|
61
|
+
def render(*props)
|
49
62
|
if props.empty?
|
50
63
|
Hyperstack::Internal::Component::RenderingContext.render(self)
|
51
64
|
else
|
52
|
-
props = Hyperstack::Internal::Component::ReactWrapper.convert_props(props)
|
53
|
-
Hyperstack::Internal::Component::RenderingContext.render(
|
65
|
+
props = Hyperstack::Internal::Component::ReactWrapper.convert_props(@type, @properties, *props)
|
66
|
+
@_child_element = Hyperstack::Internal::Component::RenderingContext.render(
|
54
67
|
Element.new(`React.cloneElement(#{@native}, #{props.shallow_to_n})`,
|
55
|
-
type,
|
68
|
+
type, props, block)
|
56
69
|
)
|
57
70
|
end
|
58
71
|
end
|
@@ -96,7 +109,7 @@ module Hyperstack
|
|
96
109
|
end
|
97
110
|
end
|
98
111
|
|
99
|
-
def merge_built_in_event_prop!(prop_name)
|
112
|
+
def merge_built_in_event_prop!(prop_name, &block)
|
100
113
|
@properties.merge!(
|
101
114
|
prop_name => %x{
|
102
115
|
function(){
|
@@ -106,9 +119,17 @@ module Hyperstack
|
|
106
119
|
if (arguments.length > 1) {
|
107
120
|
all_args = Array.prototype.slice.call(arguments);
|
108
121
|
other_args = all_args.slice(1, arguments.length);
|
109
|
-
return #{
|
122
|
+
return #{
|
123
|
+
Internal::State::Mapper.ignore_bulk_updates(
|
124
|
+
Event.new(`react_event`), *(`other_args`), &block
|
125
|
+
)
|
126
|
+
};
|
110
127
|
} else {
|
111
|
-
return #{
|
128
|
+
return #{
|
129
|
+
Internal::State::Mapper.ignore_bulk_updates(
|
130
|
+
Event.new(`react_event`), &block
|
131
|
+
)
|
132
|
+
};
|
112
133
|
}
|
113
134
|
}
|
114
135
|
}
|
@@ -27,7 +27,9 @@ module Hyperstack
|
|
27
27
|
Hyperstack::Internal::Component::RenderingContext.replace(
|
28
28
|
self,
|
29
29
|
Hyperstack::Internal::Component::RenderingContext.build do
|
30
|
-
Hyperstack::Internal::Component::RenderingContext.render(
|
30
|
+
Hyperstack::Internal::Component::RenderingContext.render(
|
31
|
+
type, @properties, args, class: haml_class_name(class_name), &new_block
|
32
|
+
)
|
31
33
|
end
|
32
34
|
)
|
33
35
|
end
|
@@ -39,17 +41,6 @@ module Hyperstack
|
|
39
41
|
def haml_class_name(class_name)
|
40
42
|
class_name.gsub(/__|_/, '__' => '_', '_' => '-')
|
41
43
|
end
|
42
|
-
|
43
|
-
private
|
44
|
-
|
45
|
-
def build_new_properties(class_name, args)
|
46
|
-
class_name = haml_class_name(class_name)
|
47
|
-
new_props = @properties.dup
|
48
|
-
new_props[:className] = "\
|
49
|
-
#{class_name} #{new_props[:className]} #{args.delete(:class)} #{args.delete(:className)}\
|
50
|
-
".split(' ').uniq.join(' ')
|
51
|
-
new_props.merge! args
|
52
|
-
end
|
53
44
|
end
|
54
45
|
end
|
55
46
|
end
|
@@ -18,6 +18,10 @@ module Hyperstack
|
|
18
18
|
class ReactWrapper
|
19
19
|
@@component_classes = {}
|
20
20
|
|
21
|
+
def self.stateless?(ncc)
|
22
|
+
`typeof #{ncc} === 'function' && !(#{ncc}.prototype && #{ncc}.prototype.isReactComponent)`
|
23
|
+
end
|
24
|
+
|
21
25
|
def self.import_native_component(opal_class, native_class)
|
22
26
|
opal_class.instance_variable_set("@native_import", true)
|
23
27
|
@@component_classes[opal_class] = native_class
|
@@ -29,9 +33,8 @@ module Hyperstack
|
|
29
33
|
is_component_class = `#{component}.prototype !== undefined` &&
|
30
34
|
(`!!#{component}.prototype.isReactComponent` ||
|
31
35
|
`!!#{component}.prototype.render`)
|
32
|
-
is_functional_component = `typeof #{component} === "function"`
|
33
36
|
has_render_method = `typeof #{component}.render === "function"`
|
34
|
-
unless is_component_class ||
|
37
|
+
unless is_component_class || stateless?(component) || has_render_method
|
35
38
|
raise 'does not appear to be a native react component'
|
36
39
|
end
|
37
40
|
component
|
@@ -178,7 +181,9 @@ module Hyperstack
|
|
178
181
|
end
|
179
182
|
|
180
183
|
# Convert Passed in properties
|
181
|
-
|
184
|
+
ele = nil # create nil var for the ref to use
|
185
|
+
ref = ->(ref) { ele._update_ref(ref) } unless stateless?(ncc)
|
186
|
+
properties = convert_props(type, { ref: ref }, *args)
|
182
187
|
params << properties.shallow_to_n
|
183
188
|
|
184
189
|
# Children Nodes
|
@@ -190,14 +195,17 @@ module Hyperstack
|
|
190
195
|
}
|
191
196
|
}
|
192
197
|
end
|
193
|
-
|
198
|
+
# assign to ele so that the ref callback can use it
|
199
|
+
ele = Hyperstack::Component::Element.new(
|
200
|
+
`React.createElement.apply(null, #{params})`, type, properties, block
|
201
|
+
)
|
194
202
|
end
|
195
203
|
|
196
204
|
def self.clear_component_class_cache
|
197
205
|
@@component_classes = {}
|
198
206
|
end
|
199
207
|
|
200
|
-
def self.convert_props(args)
|
208
|
+
def self.convert_props(type, *args)
|
201
209
|
# merge args together into a single properties hash
|
202
210
|
properties = {}
|
203
211
|
args.each do |arg|
|
@@ -234,33 +242,50 @@ module Hyperstack
|
|
234
242
|
# process properties according to react rules
|
235
243
|
props = {}
|
236
244
|
properties.each do |key, value|
|
237
|
-
if [
|
245
|
+
if %w[style dangerously_set_inner_HTML].include? key
|
238
246
|
props[lower_camelize(key)] = value.to_n
|
239
247
|
|
240
|
-
elsif key ==
|
248
|
+
elsif key == :className
|
241
249
|
props[key] = value.join(' ')
|
242
250
|
|
243
|
-
elsif key ==
|
244
|
-
props[
|
251
|
+
elsif key == :key
|
252
|
+
props[:key] = value.to_key
|
253
|
+
|
254
|
+
elsif key == :init
|
255
|
+
if %w[select textarea].include? type
|
256
|
+
key = :defaultValue
|
257
|
+
elsif type == :input
|
258
|
+
key = if %w[radio checkbox].include? properties[:type]
|
259
|
+
:defaultChecked
|
260
|
+
else
|
261
|
+
:defaultValue
|
262
|
+
end
|
263
|
+
end
|
264
|
+
props[key] = value
|
245
265
|
|
246
266
|
elsif key == 'ref'
|
267
|
+
next unless value
|
247
268
|
unless value.respond_to?(:call)
|
248
269
|
raise "The ref and dom params must be given a Proc.\n"\
|
249
270
|
"If you want to capture the ref in an instance variable use the `set` method.\n"\
|
250
271
|
"For example `ref: set(:TheRef)` will capture assign the ref to `@TheRef`\n"
|
251
272
|
end
|
252
|
-
|
253
|
-
|
254
|
-
|
255
|
-
|
256
|
-
|
257
|
-
|
258
|
-
|
259
|
-
|
260
|
-
|
261
|
-
}
|
273
|
+
unless `value.__hyperstack_component_ref_is_already_wrapped`
|
274
|
+
fn = value
|
275
|
+
value = %x{
|
276
|
+
function(dom_node){
|
277
|
+
if (dom_node !== null && dom_node.__opalInstance !== undefined && dom_node.__opalInstance !== null) {
|
278
|
+
#{ Hyperstack::Internal::State::Mapper.ignore_mutations { fn.call(`dom_node.__opalInstance`) } };
|
279
|
+
} else if(dom_node !== null && ReactDOM.findDOMNode !== undefined && dom_node.nodeType === undefined) {
|
280
|
+
#{ Hyperstack::Internal::State::Mapper.ignore_mutations { fn.call(`ReactDOM.findDOMNode(dom_node)`) } };
|
281
|
+
} else if(dom_node !== null){
|
282
|
+
#{ Hyperstack::Internal::State::Mapper.ignore_mutations { fn.call(`dom_node`) } };
|
262
283
|
}
|
263
|
-
|
284
|
+
}
|
285
|
+
}
|
286
|
+
`value.__hyperstack_component_ref_is_already_wrapped = true`
|
287
|
+
end
|
288
|
+
props[key] = value
|
264
289
|
elsif key == 'jq_ref'
|
265
290
|
unless value.respond_to?(:call)
|
266
291
|
raise "The ref and dom params must be given a Proc.\n"\
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hyper-component
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.alpha1.
|
4
|
+
version: 1.0.alpha1.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David Chang
|
@@ -12,7 +12,7 @@ authors:
|
|
12
12
|
autorequire:
|
13
13
|
bindir: bin
|
14
14
|
cert_chain: []
|
15
|
-
date: 2019-
|
15
|
+
date: 2019-02-16 00:00:00.000000000 Z
|
16
16
|
dependencies:
|
17
17
|
- !ruby/object:Gem::Dependency
|
18
18
|
name: hyper-state
|
@@ -20,28 +20,28 @@ dependencies:
|
|
20
20
|
requirements:
|
21
21
|
- - '='
|
22
22
|
- !ruby/object:Gem::Version
|
23
|
-
version: 1.0.alpha1.
|
23
|
+
version: 1.0.alpha1.4
|
24
24
|
type: :runtime
|
25
25
|
prerelease: false
|
26
26
|
version_requirements: !ruby/object:Gem::Requirement
|
27
27
|
requirements:
|
28
28
|
- - '='
|
29
29
|
- !ruby/object:Gem::Version
|
30
|
-
version: 1.0.alpha1.
|
30
|
+
version: 1.0.alpha1.4
|
31
31
|
- !ruby/object:Gem::Dependency
|
32
32
|
name: hyperstack-config
|
33
33
|
requirement: !ruby/object:Gem::Requirement
|
34
34
|
requirements:
|
35
35
|
- - '='
|
36
36
|
- !ruby/object:Gem::Version
|
37
|
-
version: 1.0.alpha1.
|
37
|
+
version: 1.0.alpha1.4
|
38
38
|
type: :runtime
|
39
39
|
prerelease: false
|
40
40
|
version_requirements: !ruby/object:Gem::Requirement
|
41
41
|
requirements:
|
42
42
|
- - '='
|
43
43
|
- !ruby/object:Gem::Version
|
44
|
-
version: 1.0.alpha1.
|
44
|
+
version: 1.0.alpha1.4
|
45
45
|
- !ruby/object:Gem::Dependency
|
46
46
|
name: libv8
|
47
47
|
requirement: !ruby/object:Gem::Requirement
|
@@ -164,14 +164,14 @@ dependencies:
|
|
164
164
|
requirements:
|
165
165
|
- - '='
|
166
166
|
- !ruby/object:Gem::Version
|
167
|
-
version: 1.0.alpha1.
|
167
|
+
version: 1.0.alpha1.4
|
168
168
|
type: :development
|
169
169
|
prerelease: false
|
170
170
|
version_requirements: !ruby/object:Gem::Requirement
|
171
171
|
requirements:
|
172
172
|
- - '='
|
173
173
|
- !ruby/object:Gem::Version
|
174
|
-
version: 1.0.alpha1.
|
174
|
+
version: 1.0.alpha1.4
|
175
175
|
- !ruby/object:Gem::Dependency
|
176
176
|
name: jquery-rails
|
177
177
|
requirement: !ruby/object:Gem::Requirement
|
@@ -386,16 +386,16 @@ dependencies:
|
|
386
386
|
name: sqlite3
|
387
387
|
requirement: !ruby/object:Gem::Requirement
|
388
388
|
requirements:
|
389
|
-
- - "
|
389
|
+
- - "~>"
|
390
390
|
- !ruby/object:Gem::Version
|
391
|
-
version:
|
391
|
+
version: 1.3.6
|
392
392
|
type: :development
|
393
393
|
prerelease: false
|
394
394
|
version_requirements: !ruby/object:Gem::Requirement
|
395
395
|
requirements:
|
396
|
-
- - "
|
396
|
+
- - "~>"
|
397
397
|
- !ruby/object:Gem::Version
|
398
|
-
version:
|
398
|
+
version: 1.3.6
|
399
399
|
- !ruby/object:Gem::Dependency
|
400
400
|
name: timecop
|
401
401
|
requirement: !ruby/object:Gem::Requirement
|
@@ -422,7 +422,6 @@ files:
|
|
422
422
|
- ".travis.yml"
|
423
423
|
- CHANGELOG.md
|
424
424
|
- Gemfile
|
425
|
-
- Gemfile.lock
|
426
425
|
- Rakefile
|
427
426
|
- how-component-name-lookup-works.md
|
428
427
|
- hyper-component.gemspec
|
data/Gemfile.lock
DELETED
@@ -1,364 +0,0 @@
|
|
1
|
-
PATH
|
2
|
-
remote: ../hyper-spec
|
3
|
-
specs:
|
4
|
-
hyper-spec (1.0.alpha1.3)
|
5
|
-
capybara
|
6
|
-
chromedriver-helper (= 1.2.0)
|
7
|
-
libv8
|
8
|
-
method_source
|
9
|
-
mini_racer (~> 0.2.4)
|
10
|
-
opal (>= 0.11.0, < 0.12.0)
|
11
|
-
parser (>= 2.3.3.1)
|
12
|
-
pry
|
13
|
-
rspec-rails
|
14
|
-
selenium-webdriver
|
15
|
-
timecop (~> 0.8.1)
|
16
|
-
uglifier
|
17
|
-
unparser (>= 0.2, < 0.4)
|
18
|
-
webdrivers
|
19
|
-
|
20
|
-
PATH
|
21
|
-
remote: ../hyper-state
|
22
|
-
specs:
|
23
|
-
hyper-state (1.0.alpha1.3)
|
24
|
-
hyperstack-config (= 1.0.alpha1.3)
|
25
|
-
opal (>= 0.11.0, < 0.12.0)
|
26
|
-
|
27
|
-
PATH
|
28
|
-
remote: ../hyper-store
|
29
|
-
specs:
|
30
|
-
hyper-store (1.0.alpha1.3)
|
31
|
-
hyper-state (= 1.0.alpha1.3)
|
32
|
-
hyperstack-config (= 1.0.alpha1.3)
|
33
|
-
opal (>= 0.11.0, < 0.12.0)
|
34
|
-
|
35
|
-
PATH
|
36
|
-
remote: ../hyperstack-config
|
37
|
-
specs:
|
38
|
-
hyperstack-config (1.0.alpha1.3)
|
39
|
-
listen (~> 3.0)
|
40
|
-
mini_racer (~> 0.2.4)
|
41
|
-
opal (>= 0.11.0, < 0.12.0)
|
42
|
-
opal-browser (~> 0.2.0)
|
43
|
-
uglifier
|
44
|
-
websocket
|
45
|
-
|
46
|
-
PATH
|
47
|
-
remote: .
|
48
|
-
specs:
|
49
|
-
hyper-component (1.0.alpha1.3)
|
50
|
-
hyper-state (= 1.0.alpha1.3)
|
51
|
-
hyperstack-config (= 1.0.alpha1.3)
|
52
|
-
libv8 (~> 6.7.0)
|
53
|
-
mini_racer (~> 0.2.4)
|
54
|
-
opal (>= 0.11.0, < 0.12.0)
|
55
|
-
opal-activesupport (~> 0.3.1)
|
56
|
-
react-rails (>= 2.4.0, < 2.5.0)
|
57
|
-
|
58
|
-
GEM
|
59
|
-
remote: https://rubygems.org/
|
60
|
-
specs:
|
61
|
-
abstract_type (0.0.7)
|
62
|
-
actioncable (5.2.1)
|
63
|
-
actionpack (= 5.2.1)
|
64
|
-
nio4r (~> 2.0)
|
65
|
-
websocket-driver (>= 0.6.1)
|
66
|
-
actionmailer (5.2.1)
|
67
|
-
actionpack (= 5.2.1)
|
68
|
-
actionview (= 5.2.1)
|
69
|
-
activejob (= 5.2.1)
|
70
|
-
mail (~> 2.5, >= 2.5.4)
|
71
|
-
rails-dom-testing (~> 2.0)
|
72
|
-
actionpack (5.2.1)
|
73
|
-
actionview (= 5.2.1)
|
74
|
-
activesupport (= 5.2.1)
|
75
|
-
rack (~> 2.0)
|
76
|
-
rack-test (>= 0.6.3)
|
77
|
-
rails-dom-testing (~> 2.0)
|
78
|
-
rails-html-sanitizer (~> 1.0, >= 1.0.2)
|
79
|
-
actionview (5.2.1)
|
80
|
-
activesupport (= 5.2.1)
|
81
|
-
builder (~> 3.1)
|
82
|
-
erubi (~> 1.4)
|
83
|
-
rails-dom-testing (~> 2.0)
|
84
|
-
rails-html-sanitizer (~> 1.0, >= 1.0.3)
|
85
|
-
activejob (5.2.1)
|
86
|
-
activesupport (= 5.2.1)
|
87
|
-
globalid (>= 0.3.6)
|
88
|
-
activemodel (5.2.1)
|
89
|
-
activesupport (= 5.2.1)
|
90
|
-
activerecord (5.2.1)
|
91
|
-
activemodel (= 5.2.1)
|
92
|
-
activesupport (= 5.2.1)
|
93
|
-
arel (>= 9.0)
|
94
|
-
activestorage (5.2.1)
|
95
|
-
actionpack (= 5.2.1)
|
96
|
-
activerecord (= 5.2.1)
|
97
|
-
marcel (~> 0.3.1)
|
98
|
-
activesupport (5.2.1)
|
99
|
-
concurrent-ruby (~> 1.0, >= 1.0.2)
|
100
|
-
i18n (>= 0.7, < 2)
|
101
|
-
minitest (~> 5.1)
|
102
|
-
tzinfo (~> 1.1)
|
103
|
-
adamantium (0.2.0)
|
104
|
-
ice_nine (~> 0.11.0)
|
105
|
-
memoizable (~> 0.4.0)
|
106
|
-
addressable (2.5.2)
|
107
|
-
public_suffix (>= 2.0.2, < 4.0)
|
108
|
-
archive-zip (0.11.0)
|
109
|
-
io-like (~> 0.3.0)
|
110
|
-
arel (9.0.0)
|
111
|
-
ast (2.4.0)
|
112
|
-
babel-source (5.8.35)
|
113
|
-
babel-transpiler (0.7.0)
|
114
|
-
babel-source (>= 4.0, < 6)
|
115
|
-
execjs (~> 2.0)
|
116
|
-
builder (3.2.3)
|
117
|
-
capybara (3.12.0)
|
118
|
-
addressable
|
119
|
-
mini_mime (>= 0.1.3)
|
120
|
-
nokogiri (~> 1.8)
|
121
|
-
rack (>= 1.6.0)
|
122
|
-
rack-test (>= 0.6.3)
|
123
|
-
regexp_parser (~> 1.2)
|
124
|
-
xpath (~> 3.2)
|
125
|
-
childprocess (0.9.0)
|
126
|
-
ffi (~> 1.0, >= 1.0.11)
|
127
|
-
chromedriver-helper (1.2.0)
|
128
|
-
archive-zip (~> 0.10)
|
129
|
-
nokogiri (~> 1.8)
|
130
|
-
coderay (1.1.2)
|
131
|
-
concord (0.1.5)
|
132
|
-
adamantium (~> 0.2.0)
|
133
|
-
equalizer (~> 0.0.9)
|
134
|
-
concurrent-ruby (1.0.5)
|
135
|
-
connection_pool (2.2.2)
|
136
|
-
crass (1.0.4)
|
137
|
-
diff-lcs (1.3)
|
138
|
-
equalizer (0.0.11)
|
139
|
-
erubi (1.7.1)
|
140
|
-
execjs (2.7.0)
|
141
|
-
ffi (1.9.25)
|
142
|
-
globalid (0.4.1)
|
143
|
-
activesupport (>= 4.2.0)
|
144
|
-
hike (1.2.3)
|
145
|
-
i18n (1.1.1)
|
146
|
-
concurrent-ruby (~> 1.0)
|
147
|
-
ice_nine (0.11.2)
|
148
|
-
interception (0.5)
|
149
|
-
io-like (0.3.0)
|
150
|
-
jquery-rails (4.3.3)
|
151
|
-
rails-dom-testing (>= 1, < 3)
|
152
|
-
railties (>= 4.2.0)
|
153
|
-
thor (>= 0.14, < 2.0)
|
154
|
-
libv8 (6.7.288.46.1)
|
155
|
-
listen (3.1.5)
|
156
|
-
rb-fsevent (~> 0.9, >= 0.9.4)
|
157
|
-
rb-inotify (~> 0.9, >= 0.9.7)
|
158
|
-
ruby_dep (~> 1.2)
|
159
|
-
loofah (2.2.2)
|
160
|
-
crass (~> 1.0.2)
|
161
|
-
nokogiri (>= 1.5.9)
|
162
|
-
mail (2.7.1)
|
163
|
-
mini_mime (>= 0.1.1)
|
164
|
-
marcel (0.3.3)
|
165
|
-
mimemagic (~> 0.3.2)
|
166
|
-
memoizable (0.4.2)
|
167
|
-
thread_safe (~> 0.3, >= 0.3.1)
|
168
|
-
method_source (0.9.0)
|
169
|
-
mime-types (3.2.2)
|
170
|
-
mime-types-data (~> 3.2015)
|
171
|
-
mime-types-data (3.2018.0812)
|
172
|
-
mimemagic (0.3.2)
|
173
|
-
mini_mime (1.0.1)
|
174
|
-
mini_portile2 (2.3.0)
|
175
|
-
mini_racer (0.2.4)
|
176
|
-
libv8 (>= 6.3)
|
177
|
-
minitest (5.11.3)
|
178
|
-
net_http_ssl_fix (0.0.10)
|
179
|
-
nio4r (2.3.1)
|
180
|
-
nokogiri (1.8.5)
|
181
|
-
mini_portile2 (~> 2.3.0)
|
182
|
-
opal (0.11.3)
|
183
|
-
ast (>= 2.3.0)
|
184
|
-
hike (~> 1.2)
|
185
|
-
parser (= 2.3.3.1)
|
186
|
-
sourcemap (~> 0.1.0)
|
187
|
-
opal-activesupport (0.3.1)
|
188
|
-
opal (>= 0.5.0, < 1.0.0)
|
189
|
-
opal-browser (0.2.0)
|
190
|
-
opal
|
191
|
-
paggio
|
192
|
-
opal-jquery (0.4.3)
|
193
|
-
opal (>= 0.10.0, < 0.12.0)
|
194
|
-
opal-rails (0.9.5)
|
195
|
-
jquery-rails
|
196
|
-
opal (>= 0.11.0, < 0.12)
|
197
|
-
opal-activesupport (>= 0.0.5)
|
198
|
-
opal-jquery (~> 0.4.0)
|
199
|
-
opal-sprockets (~> 0.4.2)
|
200
|
-
rails (>= 4.1, < 6.0)
|
201
|
-
sprockets-rails (>= 2.3.3, < 4.0)
|
202
|
-
opal-rspec (0.6.1)
|
203
|
-
opal (>= 0.10.0, < 0.12)
|
204
|
-
opal-sprockets (0.4.2.0.11.0.3.1)
|
205
|
-
opal (~> 0.11.0)
|
206
|
-
sprockets (~> 3.1)
|
207
|
-
tilt (>= 1.4)
|
208
|
-
paggio (0.2.6)
|
209
|
-
parallel (1.12.1)
|
210
|
-
parser (2.3.3.1)
|
211
|
-
ast (~> 2.2)
|
212
|
-
powerpack (0.1.2)
|
213
|
-
procto (0.0.3)
|
214
|
-
pry (0.11.3)
|
215
|
-
coderay (~> 1.1.0)
|
216
|
-
method_source (~> 0.9.0)
|
217
|
-
pry-rescue (1.4.5)
|
218
|
-
interception (>= 0.5)
|
219
|
-
pry
|
220
|
-
public_suffix (3.0.3)
|
221
|
-
puma (3.12.0)
|
222
|
-
rack (2.0.5)
|
223
|
-
rack-test (1.1.0)
|
224
|
-
rack (>= 1.0, < 3)
|
225
|
-
rails (5.2.1)
|
226
|
-
actioncable (= 5.2.1)
|
227
|
-
actionmailer (= 5.2.1)
|
228
|
-
actionpack (= 5.2.1)
|
229
|
-
actionview (= 5.2.1)
|
230
|
-
activejob (= 5.2.1)
|
231
|
-
activemodel (= 5.2.1)
|
232
|
-
activerecord (= 5.2.1)
|
233
|
-
activestorage (= 5.2.1)
|
234
|
-
activesupport (= 5.2.1)
|
235
|
-
bundler (>= 1.3.0)
|
236
|
-
railties (= 5.2.1)
|
237
|
-
sprockets-rails (>= 2.0.0)
|
238
|
-
rails-controller-testing (1.0.2)
|
239
|
-
actionpack (~> 5.x, >= 5.0.1)
|
240
|
-
actionview (~> 5.x, >= 5.0.1)
|
241
|
-
activesupport (~> 5.x)
|
242
|
-
rails-dom-testing (2.0.3)
|
243
|
-
activesupport (>= 4.2.0)
|
244
|
-
nokogiri (>= 1.6)
|
245
|
-
rails-html-sanitizer (1.0.4)
|
246
|
-
loofah (~> 2.2, >= 2.2.2)
|
247
|
-
railties (5.2.1)
|
248
|
-
actionpack (= 5.2.1)
|
249
|
-
activesupport (= 5.2.1)
|
250
|
-
method_source
|
251
|
-
rake (>= 0.8.7)
|
252
|
-
thor (>= 0.19.0, < 2.0)
|
253
|
-
rainbow (2.2.2)
|
254
|
-
rake
|
255
|
-
rake (12.3.1)
|
256
|
-
rb-fsevent (0.10.3)
|
257
|
-
rb-inotify (0.9.10)
|
258
|
-
ffi (>= 0.5.0, < 2)
|
259
|
-
react-rails (2.4.7)
|
260
|
-
babel-transpiler (>= 0.7.0)
|
261
|
-
connection_pool
|
262
|
-
execjs
|
263
|
-
railties (>= 3.2)
|
264
|
-
tilt
|
265
|
-
regexp_parser (1.3.0)
|
266
|
-
rspec-core (3.8.0)
|
267
|
-
rspec-support (~> 3.8.0)
|
268
|
-
rspec-expectations (3.8.2)
|
269
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
270
|
-
rspec-support (~> 3.8.0)
|
271
|
-
rspec-mocks (3.8.0)
|
272
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
273
|
-
rspec-support (~> 3.8.0)
|
274
|
-
rspec-rails (3.8.1)
|
275
|
-
actionpack (>= 3.0)
|
276
|
-
activesupport (>= 3.0)
|
277
|
-
railties (>= 3.0)
|
278
|
-
rspec-core (~> 3.8.0)
|
279
|
-
rspec-expectations (~> 3.8.0)
|
280
|
-
rspec-mocks (~> 3.8.0)
|
281
|
-
rspec-support (~> 3.8.0)
|
282
|
-
rspec-support (3.8.0)
|
283
|
-
rubocop (0.51.0)
|
284
|
-
parallel (~> 1.10)
|
285
|
-
parser (>= 2.3.3.1, < 3.0)
|
286
|
-
powerpack (~> 0.1)
|
287
|
-
rainbow (>= 2.2.2, < 3.0)
|
288
|
-
ruby-progressbar (~> 1.7)
|
289
|
-
unicode-display_width (~> 1.0, >= 1.0.1)
|
290
|
-
ruby-progressbar (1.10.0)
|
291
|
-
ruby_dep (1.5.0)
|
292
|
-
rubyzip (1.2.2)
|
293
|
-
selenium-webdriver (3.141.0)
|
294
|
-
childprocess (~> 0.5)
|
295
|
-
rubyzip (~> 1.2, >= 1.2.2)
|
296
|
-
sourcemap (0.1.1)
|
297
|
-
sprockets (3.7.2)
|
298
|
-
concurrent-ruby (~> 1.0)
|
299
|
-
rack (> 1, < 3)
|
300
|
-
sprockets-rails (3.2.1)
|
301
|
-
actionpack (>= 4.0)
|
302
|
-
activesupport (>= 4.0)
|
303
|
-
sprockets (>= 3.0.0)
|
304
|
-
sqlite3 (1.3.13)
|
305
|
-
thor (0.20.0)
|
306
|
-
thread_safe (0.3.6)
|
307
|
-
tilt (2.0.8)
|
308
|
-
timecop (0.8.1)
|
309
|
-
tzinfo (1.2.5)
|
310
|
-
thread_safe (~> 0.1)
|
311
|
-
uglifier (4.1.20)
|
312
|
-
execjs (>= 0.3.0, < 3)
|
313
|
-
unicode-display_width (1.4.0)
|
314
|
-
unparser (0.2.8)
|
315
|
-
abstract_type (~> 0.0.7)
|
316
|
-
adamantium (~> 0.2.0)
|
317
|
-
concord (~> 0.1.5)
|
318
|
-
diff-lcs (~> 1.3)
|
319
|
-
equalizer (~> 0.0.9)
|
320
|
-
parser (>= 2.3.1.2, < 2.6)
|
321
|
-
procto (~> 0.0.2)
|
322
|
-
webdrivers (3.6.0)
|
323
|
-
net_http_ssl_fix
|
324
|
-
nokogiri (~> 1.6)
|
325
|
-
rubyzip (~> 1.0)
|
326
|
-
selenium-webdriver (~> 3.0)
|
327
|
-
websocket (1.2.8)
|
328
|
-
websocket-driver (0.7.0)
|
329
|
-
websocket-extensions (>= 0.1.0)
|
330
|
-
websocket-extensions (0.1.3)
|
331
|
-
xpath (3.2.0)
|
332
|
-
nokogiri (~> 1.8)
|
333
|
-
|
334
|
-
PLATFORMS
|
335
|
-
ruby
|
336
|
-
|
337
|
-
DEPENDENCIES
|
338
|
-
bundler (>= 1.17.3, < 2.1)
|
339
|
-
chromedriver-helper
|
340
|
-
hyper-component!
|
341
|
-
hyper-spec!
|
342
|
-
hyper-state!
|
343
|
-
hyper-store!
|
344
|
-
hyperstack-config!
|
345
|
-
jquery-rails
|
346
|
-
listen
|
347
|
-
mime-types
|
348
|
-
nokogiri
|
349
|
-
opal-jquery
|
350
|
-
opal-rails (~> 0.9.4)
|
351
|
-
opal-rspec
|
352
|
-
pry
|
353
|
-
pry-rescue
|
354
|
-
puma
|
355
|
-
rails (>= 4.0.0)
|
356
|
-
rails-controller-testing
|
357
|
-
rake
|
358
|
-
rspec-rails
|
359
|
-
rubocop (~> 0.51.0)
|
360
|
-
sqlite3
|
361
|
-
timecop (~> 0.8.1)
|
362
|
-
|
363
|
-
BUNDLED WITH
|
364
|
-
2.0.1
|