preact-rails 0.0.18

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 ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: afe12265d3fa306fbd4ff138cfc79dadf825cf24
4
+ data.tar.gz: 9cd63bc18829e60e06b22928efad7fcbd3bdf7b9
5
+ SHA512:
6
+ metadata.gz: e44c5373b08dd5b60bc848046cf2c559ab2179b66245574f03b6113381c0b3c0fb41ec63973927e3def73a6e07d2eb3fb88711f2489b1057795f5c2223188a60
7
+ data.tar.gz: bfcd5c97e41cbfb2779d5746aa975fca4b8c9fe88ba0009c16d03b889935f1063c4796b858a84e170d5baefb3650d82805db773f27470473b55f89f03a6efb60
@@ -0,0 +1,2 @@
1
+ require 'preact/view_helper'
2
+ require 'preact/railtie'
@@ -0,0 +1,7 @@
1
+ class Railtie < Rails::Railtie
2
+ initializer 'preact_rails.setup_view_helpers', after: :load_config_initializers, group: :all do |app|
3
+ ActiveSupport.on_load(:action_view) do
4
+ include ViewHelper
5
+ end
6
+ end
7
+ end
@@ -0,0 +1,11 @@
1
+ module ViewHelper
2
+ def preact_component(name, props = {}, options = {}, &block)
3
+ html_options = options.reverse_merge(:data => {})
4
+ html_options[:data].tap do |data|
5
+ data[:preact_class] = name
6
+ data[:preact_props] = (props.is_a?(String) ? props : props.to_json)
7
+ end
8
+
9
+ return content_tag(:div, '', html_options, &block)
10
+ end
11
+ end
metadata ADDED
@@ -0,0 +1,77 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: preact-rails
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.18
5
+ platform: ruby
6
+ authors:
7
+ - Ishuah Kariuki
8
+ - David Kutalek
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2019-05-22 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: rails
16
+ requirement: !ruby/object:Gem::Requirement
17
+ requirements:
18
+ - - ">="
19
+ - !ruby/object:Gem::Version
20
+ version: '3.2'
21
+ type: :development
22
+ prerelease: false
23
+ version_requirements: !ruby/object:Gem::Requirement
24
+ requirements:
25
+ - - ">="
26
+ - !ruby/object:Gem::Version
27
+ version: '3.2'
28
+ - !ruby/object:Gem::Dependency
29
+ name: railties
30
+ requirement: !ruby/object:Gem::Requirement
31
+ requirements:
32
+ - - ">="
33
+ - !ruby/object:Gem::Version
34
+ version: '3.2'
35
+ type: :runtime
36
+ prerelease: false
37
+ version_requirements: !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - ">="
40
+ - !ruby/object:Gem::Version
41
+ version: '3.2'
42
+ description: Render preact components in views or controller actions.
43
+ email:
44
+ - kariuki@ishuah.com
45
+ - dav.kutalek@gmail.com
46
+ executables: []
47
+ extensions: []
48
+ extra_rdoc_files: []
49
+ files:
50
+ - lib/preact-rails.rb
51
+ - lib/preact/railtie.rb
52
+ - lib/preact/view_helper.rb
53
+ homepage: https://rubygems.org/gems/preact-rails
54
+ licenses:
55
+ - Apache-2.0
56
+ metadata: {}
57
+ post_install_message:
58
+ rdoc_options: []
59
+ require_paths:
60
+ - lib
61
+ required_ruby_version: !ruby/object:Gem::Requirement
62
+ requirements:
63
+ - - ">="
64
+ - !ruby/object:Gem::Version
65
+ version: '0'
66
+ required_rubygems_version: !ruby/object:Gem::Requirement
67
+ requirements:
68
+ - - ">="
69
+ - !ruby/object:Gem::Version
70
+ version: '0'
71
+ requirements: []
72
+ rubyforge_project:
73
+ rubygems_version: 2.6.12
74
+ signing_key:
75
+ specification_version: 4
76
+ summary: Preact integration for Ruby on Rails
77
+ test_files: []