Module: Opal::Connect
- Extended by:
- ConnectPlugins::Base::ClassMethods
- Included in:
- App::Components::Example
- Defined in:
- lib/opal/connect.rb,
lib/opal/connect/rspec.rb,
lib/opal/connect/version.rb,
lib/opal/connect/rake_task.rb,
lib/opal/connect/plugins/dom.rb,
lib/opal/connect/plugins/form.rb,
lib/opal/connect/plugins/html.rb,
lib/opal/connect/plugins/pjax.rb,
lib/opal/connect/plugins/modal.rb,
lib/opal/connect/plugins/rspec.rb,
lib/opal/connect/plugins/scope.rb,
lib/opal/connect/plugins/events.rb,
lib/opal/connect/plugins/server.rb,
lib/opal/connect/plugins/abilities.rb,
lib/opal/connect/plugins/current_user.rb
Defined Under Namespace
Modules: ConnectPlugins
Classes: ConnectCache, ConnectError, Form, RakeTask
Constant Summary
collapse
- CLIENT_OPTIONS =
%w'url plugins'
- STUBS =
%w'opal native promise console base64 json'
- VERSION =
"0.0.22"
Class Attribute Summary collapse
Class Method Summary
collapse
build, builder, included_files, javascript, plugin, plugin_paths, read_file, render, setup, write_entry_file, write_file
Class Attribute Details
.pids ⇒ Object
Returns the value of attribute pids.
23
24
25
|
# File 'lib/opal/connect.rb', line 23
def pids
@pids
end
|
Class Method Details
.client_options ⇒ Object
37
38
39
|
# File 'lib/opal/connect.rb', line 37
def client_options
Connect.options.hash.select { |key, _| CLIENT_OPTIONS.include? key.to_s }
end
|
.files ⇒ Object
45
46
47
|
# File 'lib/opal/connect.rb', line 45
def files
@_files ||= { connect: ['require "opal-connect"', Connect::VERSION] }
end
|
.included(klass) ⇒ Object
73
74
75
76
77
78
79
80
81
82
|
# File 'lib/opal/connect.rb', line 73
def included(klass)
if RUBY_ENGINE != 'opal'
file = caller[0][/[^:]*/].sub(Dir.pwd, '')[1..-1]
included_files << file unless files.include?(file) || file[/^spec/]
end
klass.extend ConnectPlugins::Base::ClassMethods
Connect.options[:plugins].each { |plug| klass.plugin plug, :included }
end
|
.options ⇒ Object
25
26
27
28
29
30
31
32
33
34
35
|
# File 'lib/opal/connect.rb', line 25
def options
@_options ||= Connect::ConnectCache.new(
livereload: false,
url: '/connect',
plugins: [],
plugins_loaded: [],
javascript: [],
requires: [],
setup_blocks: {},
)
end
|
.setup(&block) ⇒ Object
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
|
# File 'lib/opal/connect.rb', line 49
def setup(&block)
if RUBY_ENGINE != 'opal' && block_given?
Opal.append_path Dir.pwd unless RUBY_ENGINE == 'opal'
instance_exec(&block)
options[:plugins].each do |plug|
unless options[:plugins_loaded].include? plug
options[:plugins_loaded] << plug
Connect.plugin(plug)
end
end
end
unless block_given?
options[:setup_blocks].each do |klass, b|
klass.instance_exec(&b)
end
options[:setup_blocks] = {}
end
end
|
.stubbed_files ⇒ Object
41
42
43
|
# File 'lib/opal/connect.rb', line 41
def stubbed_files
STUBS.concat(Opal::Config.stubbed_files.to_a)
end
|