isomorfeus-react 16.9.24 → 16.10.0
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
- metadata +3 -85
- data/README.md +0 -64
- data/lib/browser/delegate_native.rb +0 -70
- data/lib/browser/element.rb +0 -176
- data/lib/browser/element/canvas.rb +0 -17
- data/lib/browser/element/media.rb +0 -78
- data/lib/browser/event.rb +0 -92
- data/lib/browser/event_target.rb +0 -39
- data/lib/browser/file_list.rb +0 -125
- data/lib/browser/iterable.rb +0 -15
- data/lib/isomorfeus-react-material-ui.rb +0 -10
- data/lib/isomorfeus-react.rb +0 -145
- data/lib/isomorfeus/config.rb +0 -130
- data/lib/isomorfeus/props/validate_hash_proxy.rb +0 -178
- data/lib/isomorfeus/props/validator.rb +0 -131
- data/lib/isomorfeus/react_view_helper.rb +0 -130
- data/lib/isomorfeus/top_level.rb +0 -86
- data/lib/isomorfeus/top_level_ssr.rb +0 -28
- data/lib/lucid_app/api.rb +0 -30
- data/lib/lucid_app/base.rb +0 -7
- data/lib/lucid_app/context.rb +0 -7
- data/lib/lucid_app/mixin.rb +0 -20
- data/lib/lucid_app/native_component_constructor.rb +0 -105
- data/lib/lucid_component/app_store_defaults.rb +0 -36
- data/lib/lucid_component/app_store_proxy.rb +0 -38
- data/lib/lucid_component/base.rb +0 -7
- data/lib/lucid_component/class_store_proxy.rb +0 -41
- data/lib/lucid_component/component_class_store_defaults.rb +0 -38
- data/lib/lucid_component/component_instance_store_defaults.rb +0 -35
- data/lib/lucid_component/event_handler.rb +0 -17
- data/lib/lucid_component/initializer.rb +0 -12
- data/lib/lucid_component/instance_store_proxy.rb +0 -45
- data/lib/lucid_component/mixin.rb +0 -18
- data/lib/lucid_component/native_component_constructor.rb +0 -116
- data/lib/lucid_component/reducers.rb +0 -48
- data/lib/lucid_component/store_api.rb +0 -38
- data/lib/lucid_component/styles_support.rb +0 -37
- data/lib/lucid_material/app/base.rb +0 -9
- data/lib/lucid_material/app/mixin.rb +0 -22
- data/lib/lucid_material/app/native_component_constructor.rb +0 -107
- data/lib/lucid_material/component/base.rb +0 -9
- data/lib/lucid_material/component/mixin.rb +0 -20
- data/lib/lucid_material/component/native_component_constructor.rb +0 -118
- data/lib/lucid_prop_declaration/mixin.rb +0 -91
- data/lib/react.rb +0 -195
- data/lib/react/active_support_support.rb +0 -13
- data/lib/react/children.rb +0 -35
- data/lib/react/component/api.rb +0 -80
- data/lib/react/component/base.rb +0 -9
- data/lib/react/component/callbacks.rb +0 -106
- data/lib/react/component/elements.rb +0 -60
- data/lib/react/component/event_handler.rb +0 -19
- data/lib/react/component/features.rb +0 -47
- data/lib/react/component/history.rb +0 -36
- data/lib/react/component/initializer.rb +0 -11
- data/lib/react/component/location.rb +0 -15
- data/lib/react/component/match.rb +0 -31
- data/lib/react/component/mixin.rb +0 -19
- data/lib/react/component/native_component_constructor.rb +0 -93
- data/lib/react/component/props.rb +0 -59
- data/lib/react/component/resolution.rb +0 -70
- data/lib/react/component/should_component_update.rb +0 -14
- data/lib/react/component/state.rb +0 -52
- data/lib/react/component/styles.rb +0 -27
- data/lib/react/component/unsafe_api.rb +0 -33
- data/lib/react/context_wrapper.rb +0 -46
- data/lib/react/function_component/api.rb +0 -63
- data/lib/react/function_component/base.rb +0 -9
- data/lib/react/function_component/creator.rb +0 -32
- data/lib/react/function_component/event_handler.rb +0 -13
- data/lib/react/function_component/mixin.rb +0 -14
- data/lib/react/function_component/resolution.rb +0 -62
- data/lib/react/memo_component/base.rb +0 -9
- data/lib/react/memo_component/creator.rb +0 -32
- data/lib/react/memo_component/mixin.rb +0 -14
- data/lib/react/native_constant_wrapper.rb +0 -26
- data/lib/react/pure_component/base.rb +0 -9
- data/lib/react/pure_component/mixin.rb +0 -18
- data/lib/react/ref.rb +0 -13
- data/lib/react/synthetic_event.rb +0 -53
- data/lib/react/version.rb +0 -3
- data/lib/react_dom.rb +0 -47
- data/lib/react_dom_server.rb +0 -19
@@ -1,78 +0,0 @@
|
|
1
|
-
module Browser
|
2
|
-
class Element
|
3
|
-
element :video, :audio do
|
4
|
-
def buffered
|
5
|
-
TimeRanges.new(`#@native.buffered`)
|
6
|
-
end
|
7
|
-
|
8
|
-
def played
|
9
|
-
TimeRanges.new(`#@native.played`)
|
10
|
-
end
|
11
|
-
|
12
|
-
def seekable
|
13
|
-
TimeRanges.new(`#@native.seekable`)
|
14
|
-
end
|
15
|
-
|
16
|
-
def network_state
|
17
|
-
case `#@native.networkState`
|
18
|
-
when `HTMLMediaElement.NETWORK_EMPTY` then :no_data
|
19
|
-
when `HTMLMediaElement.NETWORK_IDLE` then :idle
|
20
|
-
when `HTMLMediaElement.NETWORK_LOADING` then :loading
|
21
|
-
when `HTMLMediaElement.NETWORK_NO_SOURCE` then :no_source
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|
25
|
-
|
26
|
-
element :video do
|
27
|
-
def fullscreen
|
28
|
-
fullscreen = %w(
|
29
|
-
requestFullScreen
|
30
|
-
requestFullscreen
|
31
|
-
webkitRequestFullScreen
|
32
|
-
webkitRequestFullscreen
|
33
|
-
mozRequestFullScreen
|
34
|
-
msRequestFullscreen
|
35
|
-
).find { |prop| `!!#@native[prop]` }
|
36
|
-
|
37
|
-
if fullscreen
|
38
|
-
`#@native[fullscreen]()`
|
39
|
-
else
|
40
|
-
warn "[#{self.class}] Cannot determine the method to full-screen a video"
|
41
|
-
super
|
42
|
-
end
|
43
|
-
end
|
44
|
-
alias request_fullscreen fullscreen
|
45
|
-
end
|
46
|
-
|
47
|
-
class TimeRanges
|
48
|
-
include Enumerable
|
49
|
-
|
50
|
-
def initialize native
|
51
|
-
@native = native
|
52
|
-
end
|
53
|
-
|
54
|
-
def to_n
|
55
|
-
@native
|
56
|
-
end
|
57
|
-
|
58
|
-
def each
|
59
|
-
`#@native.length`.times do |i|
|
60
|
-
yield TimeRange.new(`#@native.start(i)`, `#@native.end(i)`)
|
61
|
-
end
|
62
|
-
|
63
|
-
self
|
64
|
-
end
|
65
|
-
end
|
66
|
-
|
67
|
-
class TimeRange
|
68
|
-
attr_reader :start, :end
|
69
|
-
|
70
|
-
def initialize start, _end
|
71
|
-
@start = start
|
72
|
-
@end = _end
|
73
|
-
end
|
74
|
-
|
75
|
-
alias begin start
|
76
|
-
end
|
77
|
-
end
|
78
|
-
end
|
data/lib/browser/event.rb
DELETED
@@ -1,92 +0,0 @@
|
|
1
|
-
module Browser
|
2
|
-
# Wrapper for JS events
|
3
|
-
class Event
|
4
|
-
# @param [JS] the native event to wrap
|
5
|
-
def initialize native
|
6
|
-
@native = native
|
7
|
-
end
|
8
|
-
|
9
|
-
# Prevent the runtime from executing this event's default behavior. For
|
10
|
-
# example, prevent navigation after clicking a link.
|
11
|
-
#
|
12
|
-
# @return [Browser::Event] self
|
13
|
-
def prevent
|
14
|
-
`#@native.preventDefault()`
|
15
|
-
self
|
16
|
-
end
|
17
|
-
|
18
|
-
# Prevent the runtime from bubbling this event up the hierarchy. This is
|
19
|
-
# typically used to keep an event local to the element on which it was
|
20
|
-
# triggered, such as keeping a click event on a button from unintentionally
|
21
|
-
# triggering a handler on a parent element.
|
22
|
-
#
|
23
|
-
# @return self
|
24
|
-
def stop_propagation
|
25
|
-
`#@native.stopPropagation()`
|
26
|
-
self
|
27
|
-
end
|
28
|
-
|
29
|
-
# @return [Boolean] true if `prevent` has been called on this event, false
|
30
|
-
# otherwise
|
31
|
-
def prevented?
|
32
|
-
`#@native.defaultPrevented`
|
33
|
-
end
|
34
|
-
|
35
|
-
# @return [Boolean] true if the Meta/Command/Windows key was pressed when
|
36
|
-
# this event fired, false otherwise
|
37
|
-
def meta?
|
38
|
-
`#@native.metaKey`
|
39
|
-
end
|
40
|
-
|
41
|
-
# @return [Boolean] true if the Shift key was pressed when this event fired,
|
42
|
-
# false otherwise
|
43
|
-
def shift?
|
44
|
-
`#@native.shiftKey`
|
45
|
-
end
|
46
|
-
|
47
|
-
# @return [Boolean] true if the Ctrl key was pressed when this event fired,
|
48
|
-
# false otherwise
|
49
|
-
def ctrl?
|
50
|
-
`#@native.ctrlKey`
|
51
|
-
end
|
52
|
-
|
53
|
-
# @return [Boolean] true if the Alt key was pressed when this event fired,
|
54
|
-
# false otherwise
|
55
|
-
def alt?
|
56
|
-
`#@native.altKey`
|
57
|
-
end
|
58
|
-
|
59
|
-
# The target for this event
|
60
|
-
#
|
61
|
-
# @return [Browser::Element] the element on which this event was triggered
|
62
|
-
# @todo Handle non-DOM events here
|
63
|
-
def target
|
64
|
-
Element.new(`#@native.target`)
|
65
|
-
end
|
66
|
-
|
67
|
-
# @return [Numeric] the key code associated with this event. Only useful for
|
68
|
-
# keyboard-based events.
|
69
|
-
def code
|
70
|
-
`#@native.keyCode`
|
71
|
-
end
|
72
|
-
|
73
|
-
# Return properties on the event not covered by Ruby methods.
|
74
|
-
def method_missing name, *args
|
75
|
-
property = name.gsub(/_[a-z]/) { |match| match[-1, 1].upcase }
|
76
|
-
value = `#@native[property]`
|
77
|
-
|
78
|
-
if `!!value && #{Proc === value}`
|
79
|
-
value.call(*args)
|
80
|
-
elsif `value == null`
|
81
|
-
nil
|
82
|
-
else
|
83
|
-
value
|
84
|
-
end
|
85
|
-
end
|
86
|
-
|
87
|
-
# @return [JS] the native event wrapped by this object.
|
88
|
-
def to_n
|
89
|
-
@native
|
90
|
-
end
|
91
|
-
end
|
92
|
-
end
|
data/lib/browser/event_target.rb
DELETED
@@ -1,39 +0,0 @@
|
|
1
|
-
module Browser
|
2
|
-
module EventTarget
|
3
|
-
# Add the block as a handler for the specified event name. Will use either
|
4
|
-
# `addEventListener` or `addListener` if they exist.
|
5
|
-
#
|
6
|
-
# @param event_name [String] the name of the event
|
7
|
-
# @return [Proc] the block to pass to `off` to remove this handler
|
8
|
-
# @yieldparam event [Browser::Event] the event object
|
9
|
-
def on event_name, &block
|
10
|
-
wrapper = proc { |event| block.call Event.new(event) }
|
11
|
-
|
12
|
-
if `#@native.addEventListener !== undefined`
|
13
|
-
`#@native.addEventListener(event_name, wrapper)`
|
14
|
-
elsif `#@native.addListener !== undefined`
|
15
|
-
`#@native.addListener(event_name, wrapper)`
|
16
|
-
else
|
17
|
-
warn "[Browser] Not entirely sure how to add an event listener to #{self}"
|
18
|
-
end
|
19
|
-
|
20
|
-
wrapper
|
21
|
-
end
|
22
|
-
|
23
|
-
# Remove an event handler
|
24
|
-
#
|
25
|
-
# @param event_name [String] the name of the event
|
26
|
-
# @block the handler to remove, as returned from `on`
|
27
|
-
def off event_name, &block
|
28
|
-
if `#@native.removeEventListener !== undefined`
|
29
|
-
`#@native.removeEventListener(event_name, block)`
|
30
|
-
elsif `#@native.removeListener !== undefined`
|
31
|
-
`#@native.removeListener(event_name, block)`
|
32
|
-
else
|
33
|
-
warn "[Browser] Not entirely sure how to remove an event listener from #{self}"
|
34
|
-
end
|
35
|
-
|
36
|
-
nil
|
37
|
-
end
|
38
|
-
end
|
39
|
-
end
|
data/lib/browser/file_list.rb
DELETED
@@ -1,125 +0,0 @@
|
|
1
|
-
module Browser
|
2
|
-
class FileList
|
3
|
-
include Enumerable
|
4
|
-
|
5
|
-
# @param native [JS] the native FileList object to wrap
|
6
|
-
def initialize native
|
7
|
-
@native = `#{native} || []`
|
8
|
-
@files = length.times.each_with_object([]) { |index, array|
|
9
|
-
array[index] = File.new(`#@native[index]`)
|
10
|
-
}
|
11
|
-
end
|
12
|
-
|
13
|
-
# @param index [Integer] the index of the file in the list
|
14
|
-
# @return [Browser::FileList::File] the file at the specified index
|
15
|
-
def [] index
|
16
|
-
@files[index]
|
17
|
-
end
|
18
|
-
|
19
|
-
# @return [Integer] the number of files in this list
|
20
|
-
def length
|
21
|
-
`#@native.length`
|
22
|
-
end
|
23
|
-
alias size length
|
24
|
-
|
25
|
-
# Call the given block for each file in the list
|
26
|
-
#
|
27
|
-
# @yieldparam file [Browser::FileList::File]
|
28
|
-
def each &block
|
29
|
-
@files.each do |file|
|
30
|
-
block.call file
|
31
|
-
end
|
32
|
-
end
|
33
|
-
|
34
|
-
# Convert this FileList into an array
|
35
|
-
def to_a
|
36
|
-
@files.dup # Don't return a value that can mutate our internal state
|
37
|
-
end
|
38
|
-
alias to_ary to_a
|
39
|
-
|
40
|
-
# @return [String] a string representation of this FileList
|
41
|
-
def to_s
|
42
|
-
@files.to_s
|
43
|
-
end
|
44
|
-
|
45
|
-
# An individual item in a FileList
|
46
|
-
class File
|
47
|
-
attr_reader :data
|
48
|
-
|
49
|
-
# @param native [JS] the native File object to wrap
|
50
|
-
def initialize native
|
51
|
-
@native = native
|
52
|
-
@data = nil
|
53
|
-
end
|
54
|
-
|
55
|
-
# @return [String] the filename
|
56
|
-
def name
|
57
|
-
`#@native.name`
|
58
|
-
end
|
59
|
-
|
60
|
-
# @return [Integer] the size of this file on disk
|
61
|
-
def size
|
62
|
-
`#@native.size`
|
63
|
-
end
|
64
|
-
|
65
|
-
# @return [String] the MIME type of the file, detected by the browser
|
66
|
-
def type
|
67
|
-
`#@native.type`
|
68
|
-
end
|
69
|
-
|
70
|
-
# @return [Time] the timestamp of the file
|
71
|
-
def last_modified
|
72
|
-
`#@native.lastModifiedDate`
|
73
|
-
end
|
74
|
-
|
75
|
-
# Read the file from disk into memory
|
76
|
-
#
|
77
|
-
# @return [Promise] a promise that resolves when finished loading and
|
78
|
-
# rejects if an error occurs while loading.
|
79
|
-
def read
|
80
|
-
promise = Promise.new
|
81
|
-
reader = FileReader.new
|
82
|
-
reader.on :load do
|
83
|
-
result = reader.result
|
84
|
-
|
85
|
-
@data = result
|
86
|
-
promise.resolve result
|
87
|
-
end
|
88
|
-
|
89
|
-
reader.on :error do
|
90
|
-
promise.reject reader.result
|
91
|
-
end
|
92
|
-
|
93
|
-
reader.read_as_binary_string self
|
94
|
-
|
95
|
-
promise
|
96
|
-
end
|
97
|
-
|
98
|
-
# Convert to the native object
|
99
|
-
#
|
100
|
-
# @return [JS.HTMLElement] the underlying native element
|
101
|
-
def to_n
|
102
|
-
@native
|
103
|
-
end
|
104
|
-
|
105
|
-
# The object that reads the file from disk.
|
106
|
-
#
|
107
|
-
# @api private
|
108
|
-
class FileReader
|
109
|
-
include EventTarget
|
110
|
-
|
111
|
-
def initialize
|
112
|
-
@native = `new FileReader()`
|
113
|
-
end
|
114
|
-
|
115
|
-
def result
|
116
|
-
`#@native.result`
|
117
|
-
end
|
118
|
-
|
119
|
-
def read_as_binary_string file
|
120
|
-
`#@native.readAsBinaryString(#{file.to_n})`
|
121
|
-
end
|
122
|
-
end
|
123
|
-
end
|
124
|
-
end
|
125
|
-
end
|
data/lib/browser/iterable.rb
DELETED
@@ -1,10 +0,0 @@
|
|
1
|
-
require 'isomorfeus-react'
|
2
|
-
|
3
|
-
# LucidMaterial::Component
|
4
|
-
require 'lucid_material/component/native_component_constructor'
|
5
|
-
require 'lucid_material/component/mixin'
|
6
|
-
require 'lucid_material/component/base'
|
7
|
-
# LucidMaterial::App
|
8
|
-
require 'lucid_material/app/native_component_constructor'
|
9
|
-
require 'lucid_material/app/mixin'
|
10
|
-
require 'lucid_material/app/base'
|
data/lib/isomorfeus-react.rb
DELETED
@@ -1,145 +0,0 @@
|
|
1
|
-
if RUBY_ENGINE == 'opal'
|
2
|
-
require 'opal'
|
3
|
-
require 'opal-autoloader'
|
4
|
-
require 'native'
|
5
|
-
require 'promise'
|
6
|
-
require 'active_support/core_ext/string'
|
7
|
-
require 'react/active_support_support'
|
8
|
-
require 'isomorfeus-redux'
|
9
|
-
|
10
|
-
if Isomorfeus.on_browser?
|
11
|
-
require 'browser/event'
|
12
|
-
require 'browser/event_target'
|
13
|
-
require 'browser/delegate_native'
|
14
|
-
require 'browser/element'
|
15
|
-
end
|
16
|
-
|
17
|
-
require 'isomorfeus/config'
|
18
|
-
|
19
|
-
# allow mounting of components
|
20
|
-
if Isomorfeus.on_browser?
|
21
|
-
require 'isomorfeus/top_level'
|
22
|
-
else
|
23
|
-
require 'isomorfeus/top_level_ssr'
|
24
|
-
end
|
25
|
-
|
26
|
-
# react
|
27
|
-
require 'react/version'
|
28
|
-
require 'react'
|
29
|
-
require 'react/synthetic_event'
|
30
|
-
require 'react/ref'
|
31
|
-
require 'react/children'
|
32
|
-
if Isomorfeus.on_browser?
|
33
|
-
require 'react_dom'
|
34
|
-
else
|
35
|
-
require 'react_dom_server'
|
36
|
-
end
|
37
|
-
|
38
|
-
# props
|
39
|
-
require 'isomorfeus/props/validate_hash_proxy'
|
40
|
-
require 'isomorfeus/props/validator'
|
41
|
-
require 'lucid_prop_declaration/mixin'
|
42
|
-
require 'react/component/props'
|
43
|
-
|
44
|
-
# HTML Elements support
|
45
|
-
require 'react/component/elements'
|
46
|
-
|
47
|
-
# React Features
|
48
|
-
require 'react/component/features'
|
49
|
-
require 'react/context_wrapper'
|
50
|
-
require 'react/native_constant_wrapper'
|
51
|
-
|
52
|
-
# Function Component
|
53
|
-
require 'react/function_component/resolution'
|
54
|
-
require 'react/function_component/api'
|
55
|
-
require 'react/function_component/event_handler'
|
56
|
-
require 'react/function_component/creator'
|
57
|
-
require 'react/function_component/mixin'
|
58
|
-
require 'react/function_component/base'
|
59
|
-
require 'react/memo_component/creator'
|
60
|
-
require 'react/memo_component/mixin'
|
61
|
-
require 'react/memo_component/base'
|
62
|
-
|
63
|
-
# React::Component
|
64
|
-
require 'react/component/api'
|
65
|
-
require 'react/component/callbacks'
|
66
|
-
# require 'react/component/unsafe_api'
|
67
|
-
require 'react/component/initializer'
|
68
|
-
require 'react/component/native_component_constructor'
|
69
|
-
require 'react/component/state'
|
70
|
-
require 'react/component/match'
|
71
|
-
require 'react/component/location'
|
72
|
-
require 'react/component/history'
|
73
|
-
require 'react/component/resolution'
|
74
|
-
require 'react/component/should_component_update'
|
75
|
-
require 'react/component/event_handler'
|
76
|
-
require 'react/component/styles'
|
77
|
-
require 'react/component/mixin'
|
78
|
-
require 'react/component/base'
|
79
|
-
|
80
|
-
# React::PureComponent
|
81
|
-
require 'react/pure_component/mixin'
|
82
|
-
require 'react/pure_component/base'
|
83
|
-
|
84
|
-
# init component reducers
|
85
|
-
require 'lucid_component/reducers'
|
86
|
-
LucidComponent::Reducers.add_component_reducers_to_store
|
87
|
-
|
88
|
-
# init LucidApplicationContext (Store Provider and Consumer)
|
89
|
-
require 'lucid_app/context'
|
90
|
-
LucidApp::Context.create_application_context
|
91
|
-
|
92
|
-
# LucidComponent
|
93
|
-
require 'lucid_component/styles_support'
|
94
|
-
require 'lucid_component/store_api'
|
95
|
-
require 'lucid_component/app_store_defaults'
|
96
|
-
require 'lucid_component/component_class_store_defaults'
|
97
|
-
require 'lucid_component/component_instance_store_defaults'
|
98
|
-
require 'lucid_component/app_store_proxy'
|
99
|
-
require 'lucid_component/class_store_proxy'
|
100
|
-
require 'lucid_component/instance_store_proxy'
|
101
|
-
require 'lucid_component/initializer'
|
102
|
-
require 'lucid_component/native_component_constructor'
|
103
|
-
require 'lucid_component/event_handler'
|
104
|
-
require 'lucid_component/mixin'
|
105
|
-
require 'lucid_component/base'
|
106
|
-
|
107
|
-
# LucidApp
|
108
|
-
require 'lucid_app/api'
|
109
|
-
require 'lucid_app/native_component_constructor'
|
110
|
-
require 'lucid_app/mixin'
|
111
|
-
require 'lucid_app/base'
|
112
|
-
|
113
|
-
Opal::Autoloader.add_load_path('components')
|
114
|
-
else
|
115
|
-
require 'oj'
|
116
|
-
require 'opal'
|
117
|
-
require 'opal-activesupport'
|
118
|
-
require 'opal-autoloader'
|
119
|
-
require 'isomorfeus-redux'
|
120
|
-
require 'isomorfeus-speednode'
|
121
|
-
require 'react/version'
|
122
|
-
require 'isomorfeus/config'
|
123
|
-
|
124
|
-
# props
|
125
|
-
require 'isomorfeus/props/validate_hash_proxy'
|
126
|
-
require 'isomorfeus/props/validator'
|
127
|
-
require 'lucid_prop_declaration/mixin'
|
128
|
-
|
129
|
-
Isomorfeus.env = ENV['RACK_ENV']
|
130
|
-
|
131
|
-
if Isomorfeus.production?
|
132
|
-
Isomorfeus.server_side_rendering = true
|
133
|
-
else
|
134
|
-
Isomorfeus.server_side_rendering = false
|
135
|
-
end
|
136
|
-
|
137
|
-
require 'isomorfeus/execution_environment'
|
138
|
-
require 'isomorfeus/react_view_helper'
|
139
|
-
|
140
|
-
Opal.append_path(__dir__.untaint)
|
141
|
-
|
142
|
-
if Dir.exist?('isomorfeus')
|
143
|
-
Opal.append_path(File.expand_path('isomorfeus')) unless Opal.paths.include?(File.expand_path('isomorfeus'))
|
144
|
-
end
|
145
|
-
end
|