snabberb 1.3.0 → 1.3.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/examples/rack/Gemfile +1 -1
- data/examples/rack/Gemfile.lock +10 -12
- data/lib/snabberb/version.rb +1 -1
- data/opal/snabberb/component.rb +13 -10
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cb82424f513fedb084f9889e64adc0b3484e3403522d5f0fb1ab3531c9fd627b
|
4
|
+
data.tar.gz: '08a6595aa3bed2cde156991811e6a612296e11aaeae9a24a10dd9aca58c2f3f8'
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9f599f947849c63880508953ec5f096f6ccfc4936c08fe51d7c8a3fd087260b921cdba6d7b64b70e5a6e565c63d2cf02cd1962880c1b5ae4b96f4a793cddfe3d
|
7
|
+
data.tar.gz: 06d6ff61cf0853e796f4c8d4896db4e4a74b7dd28a79a421fdc4df947d99e92f7eec63ca604c993ab445142bd9f095d782122730f11936387ee4314313fc4768
|
data/examples/rack/Gemfile
CHANGED
data/examples/rack/Gemfile.lock
CHANGED
@@ -1,31 +1,29 @@
|
|
1
1
|
PATH
|
2
2
|
remote: ../..
|
3
3
|
specs:
|
4
|
-
snabberb (1.
|
5
|
-
opal (~> 1.
|
4
|
+
snabberb (1.3.0)
|
5
|
+
opal (~> 1.1)
|
6
6
|
|
7
7
|
GEM
|
8
8
|
remote: https://rubygems.org/
|
9
9
|
specs:
|
10
|
-
ast (2.4.
|
11
|
-
|
12
|
-
ast (~> 2.4.0)
|
13
|
-
parser (= 2.6.4.1)
|
14
|
-
opal (1.0.3)
|
10
|
+
ast (2.4.2)
|
11
|
+
opal (1.1.1)
|
15
12
|
ast (>= 2.3.0)
|
16
|
-
parser (~>
|
17
|
-
parser (
|
18
|
-
ast (~> 2.4.
|
13
|
+
parser (~> 3.0)
|
14
|
+
parser (3.0.0.0)
|
15
|
+
ast (~> 2.4.1)
|
19
16
|
rack (2.2.3)
|
17
|
+
webrick (1.7.0)
|
20
18
|
|
21
19
|
PLATFORMS
|
22
20
|
ruby
|
23
21
|
|
24
22
|
DEPENDENCIES
|
25
|
-
c_lexer
|
26
23
|
opal
|
27
24
|
rack
|
28
25
|
snabberb!
|
26
|
+
webrick
|
29
27
|
|
30
28
|
BUNDLED WITH
|
31
|
-
2.
|
29
|
+
2.2.3
|
data/lib/snabberb/version.rb
CHANGED
data/opal/snabberb/component.rb
CHANGED
@@ -87,6 +87,17 @@ module Snabberb
|
|
87
87
|
])
|
88
88
|
}
|
89
89
|
|
90
|
+
%x{
|
91
|
+
const PATCHER = snabbdom.init([
|
92
|
+
snabbdom.attributesModule,
|
93
|
+
snabbdom.classModule,
|
94
|
+
snabbdom.datasetModule,
|
95
|
+
snabbdom.eventListenersModule,
|
96
|
+
snabbdom.propsModule,
|
97
|
+
snabbdom.styleModule,
|
98
|
+
])
|
99
|
+
}
|
100
|
+
|
90
101
|
# You can define needs in each component. They are automatically set as instance variables
|
91
102
|
#
|
92
103
|
# For example:
|
@@ -109,7 +120,7 @@ module Snabberb
|
|
109
120
|
def self.attach(container, **passed_needs)
|
110
121
|
component = new(nil, passed_needs)
|
111
122
|
component.node = `document.getElementById(#{container})`
|
112
|
-
component.update
|
123
|
+
component.update!
|
113
124
|
end
|
114
125
|
|
115
126
|
# Render the component as an HTML string using snabbdom-to-html.
|
@@ -177,16 +188,8 @@ module Snabberb
|
|
177
188
|
request_ids.shift
|
178
189
|
return unless request_ids.empty?
|
179
190
|
|
180
|
-
@@patcher ||= %x{snabbdom.init([
|
181
|
-
snabbdom.attributesModule,
|
182
|
-
snabbdom.classModule,
|
183
|
-
snabbdom.datasetModule,
|
184
|
-
snabbdom.eventListenersModule,
|
185
|
-
snabbdom.propsModule,
|
186
|
-
snabbdom.styleModule,
|
187
|
-
])}
|
188
191
|
node = @root.render
|
189
|
-
|
192
|
+
`PATCHER(#{root.node}, #{node})`
|
190
193
|
@root.node = node
|
191
194
|
end
|
192
195
|
|