ovto 0.4.1 → 0.6.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +1 -1
- data/.gitmodules +3 -0
- data/CHANGELOG.md +15 -2
- data/Gemfile +2 -2
- data/Gemfile.lock +23 -27
- data/README.md +2 -2
- data/book/SUMMARY.md +3 -1
- data/book/api/actions.md +1 -1
- data/book/api/fetch.md +3 -3
- data/book/api/middleware.md +99 -0
- data/book/api/pure_component.md +30 -0
- data/book/guides/install.md +76 -0
- data/book/guides/tutorial.md +3 -3
- data/book/ovtologo.png +0 -0
- data/docs/api/Array.html +190 -0
- data/docs/api/Hash.html +196 -0
- data/docs/api/Ovto/Actions.html +132 -40
- data/docs/api/Ovto/App.html +254 -40
- data/docs/api/Ovto/Component/MoreThanOneNode.html +6 -6
- data/docs/api/Ovto/Component.html +102 -27
- data/docs/api/Ovto/Middleware/Actions.html +428 -0
- data/docs/api/Ovto/Middleware/Base.html +606 -0
- data/docs/api/Ovto/Middleware/Component.html +355 -0
- data/docs/api/Ovto/Middleware.html +288 -0
- data/docs/api/Ovto/PureComponent/StateIsNotAvailable.html +124 -0
- data/docs/api/Ovto/PureComponent.html +368 -0
- data/docs/api/Ovto/Runtime.html +7 -7
- data/docs/api/Ovto/State/MissingValue.html +6 -6
- data/docs/api/Ovto/State/{UnknownKey.html → UnknownStateKey.html} +11 -11
- data/docs/api/Ovto/State.html +59 -43
- data/docs/api/Ovto/WiredActionSet.html +636 -0
- data/docs/api/Ovto/WiredActions.html +78 -35
- data/docs/api/Ovto.html +226 -29
- data/docs/api/_index.html +99 -11
- data/docs/api/actions.html +36 -10
- data/docs/api/app.html +35 -9
- data/docs/api/class_list.html +3 -3
- data/docs/api/component.html +37 -11
- data/docs/api/css/style.css +2 -2
- data/docs/api/fetch.html +40 -14
- data/docs/api/file.README.html +8 -8
- data/docs/api/file_list.html +2 -2
- data/docs/api/frames.html +2 -2
- data/docs/api/index.html +8 -8
- data/docs/api/js/app.js +14 -3
- data/docs/api/method_list.html +318 -22
- data/docs/api/middleware.html +498 -0
- data/docs/api/pure_component.html +428 -0
- data/docs/api/state.html +35 -9
- data/docs/api/top-level-namespace.html +9 -7
- data/docs/gitbook/gitbook.js +2 -2
- data/docs/gitbook/theme.js +1 -1
- data/docs/guides/debugging.html +35 -9
- data/docs/guides/development.html +35 -9
- data/docs/guides/install.html +452 -0
- data/docs/guides/tutorial.html +101 -66
- data/docs/index.html +37 -17
- data/docs/ovtologo.png +0 -0
- data/docs/search_index.json +1 -1
- data/examples/sinatra/Gemfile +2 -0
- data/examples/sinatra/Gemfile.lock +33 -31
- data/examples/sinatra/app.rb +1 -4
- data/examples/sinatra/config.ru +6 -6
- data/examples/static/Gemfile.lock +10 -14
- data/lib/ovto/actions.rb +11 -0
- data/lib/ovto/app.rb +37 -13
- data/lib/ovto/component.rb +149 -73
- data/lib/ovto/fetch.rb +1 -1
- data/lib/ovto/middleware.rb +121 -0
- data/lib/ovto/pure_component.rb +22 -0
- data/lib/ovto/state.rb +13 -5
- data/lib/ovto/version.rb +1 -1
- data/lib/ovto/wired_action_set.rb +40 -0
- data/lib/ovto/wired_actions.rb +49 -11
- data/lib/ovto.rb +27 -0
- data/ovto.gemspec +1 -1
- metadata +35 -9
data/docs/api/fetch.html
CHANGED
@@ -7,7 +7,7 @@
|
|
7
7
|
<title>Ovto.fetch · GitBook</title>
|
8
8
|
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
9
9
|
<meta name="description" content="">
|
10
|
-
<meta name="generator" content="GitBook 3.2.
|
10
|
+
<meta name="generator" content="GitBook 3.2.2">
|
11
11
|
|
12
12
|
|
13
13
|
|
@@ -58,7 +58,7 @@
|
|
58
58
|
|
59
59
|
|
60
60
|
|
61
|
-
<link rel="prev" href="
|
61
|
+
<link rel="prev" href="middleware.html" />
|
62
62
|
|
63
63
|
|
64
64
|
</head>
|
@@ -100,12 +100,12 @@
|
|
100
100
|
|
101
101
|
</li>
|
102
102
|
|
103
|
-
<li class="chapter " data-level="1.2" data-path="../">
|
103
|
+
<li class="chapter " data-level="1.2" data-path="../guides/tutorial.html">
|
104
104
|
|
105
|
-
<a href="../">
|
105
|
+
<a href="../guides/tutorial.html">
|
106
106
|
|
107
107
|
|
108
|
-
|
108
|
+
Getting Started
|
109
109
|
|
110
110
|
</a>
|
111
111
|
|
@@ -113,12 +113,12 @@
|
|
113
113
|
|
114
114
|
</li>
|
115
115
|
|
116
|
-
<li class="chapter " data-level="1.3" data-path="../guides/
|
116
|
+
<li class="chapter " data-level="1.3" data-path="../guides/install.html">
|
117
117
|
|
118
|
-
<a href="../guides/
|
118
|
+
<a href="../guides/install.html">
|
119
119
|
|
120
120
|
|
121
|
-
|
121
|
+
Install
|
122
122
|
|
123
123
|
</a>
|
124
124
|
|
@@ -192,7 +192,33 @@
|
|
192
192
|
|
193
193
|
</li>
|
194
194
|
|
195
|
-
<li class="chapter
|
195
|
+
<li class="chapter " data-level="1.4.5" data-path="pure_component.html">
|
196
|
+
|
197
|
+
<a href="pure_component.html">
|
198
|
+
|
199
|
+
|
200
|
+
Ovto::PureComponent
|
201
|
+
|
202
|
+
</a>
|
203
|
+
|
204
|
+
|
205
|
+
|
206
|
+
</li>
|
207
|
+
|
208
|
+
<li class="chapter " data-level="1.4.6" data-path="middleware.html">
|
209
|
+
|
210
|
+
<a href="middleware.html">
|
211
|
+
|
212
|
+
|
213
|
+
Ovto::Middleware
|
214
|
+
|
215
|
+
</a>
|
216
|
+
|
217
|
+
|
218
|
+
|
219
|
+
</li>
|
220
|
+
|
221
|
+
<li class="chapter active" data-level="1.4.7" data-path="fetch.html">
|
196
222
|
|
197
223
|
<a href="fetch.html">
|
198
224
|
|
@@ -305,21 +331,21 @@
|
|
305
331
|
<p><code>Ovto.fetch</code> returns Opal's Promise object that calls the API with the specified parameters.</p>
|
306
332
|
<h2 id="examples">Examples</h2>
|
307
333
|
<p>GET</p>
|
308
|
-
<pre><code class="lang-rb">Ovto.fetch(<span class="hljs-string">'/api/tasks'</span>){|json_data|
|
334
|
+
<pre><code class="lang-rb">Ovto.fetch(<span class="hljs-string">'/api/tasks'</span>).<span class="hljs-keyword">then</span>{|json_data|
|
309
335
|
p json_data
|
310
336
|
}.fail{|e| <span class="hljs-comment"># Network error, 404 Not Found, JSON parse error, etc.</span>
|
311
337
|
p e
|
312
338
|
}
|
313
339
|
</code></pre>
|
314
340
|
<p>POST</p>
|
315
|
-
<pre><code class="lang-rb">Ovto.fetch(<span class="hljs-string">'/api/new_task'</span>, <span class="hljs-string">'POST'</span>, {<span class="hljs-symbol">title:</span> <span class="hljs-string">"do something"</span>}){|json_data|
|
341
|
+
<pre><code class="lang-rb">Ovto.fetch(<span class="hljs-string">'/api/new_task'</span>, <span class="hljs-string">'POST'</span>, {<span class="hljs-symbol">title:</span> <span class="hljs-string">"do something"</span>}).<span class="hljs-keyword">then</span>{|json_data|
|
316
342
|
p json_data
|
317
343
|
}.fail{|e| <span class="hljs-comment"># Network error, 404 Not Found, JSON parse error, etc.</span>
|
318
344
|
p e
|
319
345
|
}
|
320
346
|
</code></pre>
|
321
347
|
<p>PUT</p>
|
322
|
-
<pre><code class="lang-rb">Ovto.fetch(<span class="hljs-string">'/api/tasks/1'</span>, <span class="hljs-string">'PUT'</span>, {<span class="hljs-symbol">title:</span> <span class="hljs-string">"do something"</span>}){|json_data|
|
348
|
+
<pre><code class="lang-rb">Ovto.fetch(<span class="hljs-string">'/api/tasks/1'</span>, <span class="hljs-string">'PUT'</span>, {<span class="hljs-symbol">title:</span> <span class="hljs-string">"do something"</span>}).<span class="hljs-keyword">then</span>{|json_data|
|
323
349
|
p json_data
|
324
350
|
}.fail{|e| <span class="hljs-comment"># Network error, 404 Not Found, JSON parse error, etc.</span>
|
325
351
|
p e
|
@@ -354,7 +380,7 @@
|
|
354
380
|
|
355
381
|
|
356
382
|
|
357
|
-
<a href="
|
383
|
+
<a href="middleware.html" class="navigation navigation-prev navigation-unique" aria-label="Previous page: Ovto::Middleware">
|
358
384
|
<i class="fa fa-angle-left"></i>
|
359
385
|
</a>
|
360
386
|
|
@@ -366,7 +392,7 @@
|
|
366
392
|
<script>
|
367
393
|
var gitbook = gitbook || [];
|
368
394
|
gitbook.push(function() {
|
369
|
-
gitbook.page.hasChanged({"page":{"title":"Ovto.fetch","level":"1.4.
|
395
|
+
gitbook.page.hasChanged({"page":{"title":"Ovto.fetch","level":"1.4.7","depth":2,"next":{"title":"Guides","level":"1.5","depth":1,"ref":"","articles":[{"title":"Debugging","level":"1.5.1","depth":2,"path":"guides/debugging.md","ref":"guides/debugging.md","articles":[]},{"title":"Development","level":"1.5.2","depth":2,"path":"guides/development.md","ref":"guides/development.md","articles":[]}]},"previous":{"title":"Ovto::Middleware","level":"1.4.6","depth":2,"path":"api/middleware.md","ref":"api/middleware.md","articles":[]},"dir":"ltr"},"config":{"gitbook":"*","theme":"default","variables":{},"plugins":[],"pluginsConfig":{"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"}},"file":{"path":"api/fetch.md","mtime":"2019-08-07T16:07:49.000Z","type":"markdown"},"gitbook":{"version":"3.2.2","time":"2020-02-29T14:26:27.632Z"},"basePath":"..","book":{"language":""}});
|
370
396
|
});
|
371
397
|
</script>
|
372
398
|
</div>
|
data/docs/api/file.README.html
CHANGED
@@ -6,15 +6,15 @@
|
|
6
6
|
<title>
|
7
7
|
File: README
|
8
8
|
|
9
|
-
— Documentation by YARD 0.9.
|
9
|
+
— Documentation by YARD 0.9.24
|
10
10
|
|
11
11
|
</title>
|
12
12
|
|
13
|
-
<link rel="stylesheet" href="css/style.css" type="text/css"
|
13
|
+
<link rel="stylesheet" href="css/style.css" type="text/css" />
|
14
14
|
|
15
|
-
<link rel="stylesheet" href="css/common.css" type="text/css"
|
15
|
+
<link rel="stylesheet" href="css/common.css" type="text/css" />
|
16
16
|
|
17
|
-
<script type="text/javascript"
|
17
|
+
<script type="text/javascript">
|
18
18
|
pathId = "README";
|
19
19
|
relpath = '';
|
20
20
|
</script>
|
@@ -66,7 +66,7 @@
|
|
66
66
|
|
67
67
|
<h2 id="label-Documents">Documents</h2>
|
68
68
|
<ul><li>
|
69
|
-
<p><a href="https://yhara.github.io/ovto/">Book</a></p>
|
69
|
+
<p><a href="https://yhara.github.io/ovto/docs/">Book</a></p>
|
70
70
|
</li><li>
|
71
71
|
<p><a href="https://yhara.github.io/ovto/api/">yardoc</a></p>
|
72
72
|
</li></ul>
|
@@ -121,7 +121,7 @@
|
|
121
121
|
</code></pre>
|
122
122
|
|
123
123
|
<p>See the <a
|
124
|
-
href="https://yhara.github.io/ovto/guides/tutorial.html">book</a> for
|
124
|
+
href="https://yhara.github.io/ovto/docs/guides/tutorial.html">book</a> for
|
125
125
|
details.</p>
|
126
126
|
|
127
127
|
<h2 id="label-Setup">Setup</h2>
|
@@ -153,9 +153,9 @@ href="https://github.com/yhara/ovto/issues">github.com/yhara/ovto/issues</a></p>
|
|
153
153
|
</div></div>
|
154
154
|
|
155
155
|
<div id="footer">
|
156
|
-
Generated on
|
156
|
+
Generated on Sat Feb 29 23:26:32 2020 by
|
157
157
|
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
158
|
-
0.9.
|
158
|
+
0.9.24 (ruby-2.5.5).
|
159
159
|
</div>
|
160
160
|
|
161
161
|
</div>
|
data/docs/api/file_list.html
CHANGED
@@ -4,9 +4,9 @@
|
|
4
4
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
5
5
|
<meta charset="utf-8" />
|
6
6
|
|
7
|
-
<link rel="stylesheet" href="css/full_list.css" type="text/css" media="screen"
|
7
|
+
<link rel="stylesheet" href="css/full_list.css" type="text/css" media="screen" />
|
8
8
|
|
9
|
-
<link rel="stylesheet" href="css/common.css" type="text/css" media="screen"
|
9
|
+
<link rel="stylesheet" href="css/common.css" type="text/css" media="screen" />
|
10
10
|
|
11
11
|
|
12
12
|
|
data/docs/api/frames.html
CHANGED
@@ -2,9 +2,9 @@
|
|
2
2
|
<html>
|
3
3
|
<head>
|
4
4
|
<meta charset="utf-8">
|
5
|
-
<title>Documentation by YARD 0.9.
|
5
|
+
<title>Documentation by YARD 0.9.24</title>
|
6
6
|
</head>
|
7
|
-
<script type="text/javascript"
|
7
|
+
<script type="text/javascript">
|
8
8
|
var match = unescape(window.location.hash).match(/^#!(.+)/);
|
9
9
|
var name = match ? match[1] : 'index.html';
|
10
10
|
name = name.replace(/^(\w+):\/\//, '').replace(/^\/\//, '');
|
data/docs/api/index.html
CHANGED
@@ -6,15 +6,15 @@
|
|
6
6
|
<title>
|
7
7
|
File: README
|
8
8
|
|
9
|
-
— Documentation by YARD 0.9.
|
9
|
+
— Documentation by YARD 0.9.24
|
10
10
|
|
11
11
|
</title>
|
12
12
|
|
13
|
-
<link rel="stylesheet" href="css/style.css" type="text/css"
|
13
|
+
<link rel="stylesheet" href="css/style.css" type="text/css" />
|
14
14
|
|
15
|
-
<link rel="stylesheet" href="css/common.css" type="text/css"
|
15
|
+
<link rel="stylesheet" href="css/common.css" type="text/css" />
|
16
16
|
|
17
|
-
<script type="text/javascript"
|
17
|
+
<script type="text/javascript">
|
18
18
|
pathId = "README";
|
19
19
|
relpath = '';
|
20
20
|
</script>
|
@@ -66,7 +66,7 @@
|
|
66
66
|
|
67
67
|
<h2 id="label-Documents">Documents</h2>
|
68
68
|
<ul><li>
|
69
|
-
<p><a href="https://yhara.github.io/ovto/">Book</a></p>
|
69
|
+
<p><a href="https://yhara.github.io/ovto/docs/">Book</a></p>
|
70
70
|
</li><li>
|
71
71
|
<p><a href="https://yhara.github.io/ovto/api/">yardoc</a></p>
|
72
72
|
</li></ul>
|
@@ -121,7 +121,7 @@
|
|
121
121
|
</code></pre>
|
122
122
|
|
123
123
|
<p>See the <a
|
124
|
-
href="https://yhara.github.io/ovto/guides/tutorial.html">book</a> for
|
124
|
+
href="https://yhara.github.io/ovto/docs/guides/tutorial.html">book</a> for
|
125
125
|
details.</p>
|
126
126
|
|
127
127
|
<h2 id="label-Setup">Setup</h2>
|
@@ -153,9 +153,9 @@ href="https://github.com/yhara/ovto/issues">github.com/yhara/ovto/issues</a></p>
|
|
153
153
|
</div></div>
|
154
154
|
|
155
155
|
<div id="footer">
|
156
|
-
Generated on
|
156
|
+
Generated on Sat Feb 29 23:26:31 2020 by
|
157
157
|
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
158
|
-
0.9.
|
158
|
+
0.9.24 (ruby-2.5.5).
|
159
159
|
</div>
|
160
160
|
|
161
161
|
</div>
|
data/docs/api/js/app.js
CHANGED
@@ -171,6 +171,7 @@ function generateTOC() {
|
|
171
171
|
var counter = 0;
|
172
172
|
var tags = ['h2', 'h3', 'h4', 'h5', 'h6'];
|
173
173
|
var i;
|
174
|
+
var curli;
|
174
175
|
if ($('#filecontents h1').length > 1) tags.unshift('h1');
|
175
176
|
for (i = 0; i < tags.length; i++) { tags[i] = '#filecontents ' + tags[i]; }
|
176
177
|
var lastTag = parseInt(tags[0][1], 10);
|
@@ -190,15 +191,25 @@ function generateTOC() {
|
|
190
191
|
}
|
191
192
|
if (thisTag > lastTag) {
|
192
193
|
for (i = 0; i < thisTag - lastTag; i++) {
|
193
|
-
|
194
|
+
if ( typeof(curli) == "undefined" ) {
|
195
|
+
curli = $('<li/>');
|
196
|
+
toc.append(curli);
|
197
|
+
}
|
198
|
+
toc = $('<ol/>');
|
199
|
+
curli.append(toc);
|
200
|
+
curli = undefined;
|
194
201
|
}
|
195
202
|
}
|
196
203
|
if (thisTag < lastTag) {
|
197
|
-
for (i = 0; i < lastTag - thisTag; i++)
|
204
|
+
for (i = 0; i < lastTag - thisTag; i++) {
|
205
|
+
toc = toc.parent();
|
206
|
+
toc = toc.parent();
|
207
|
+
}
|
198
208
|
}
|
199
209
|
var title = $(this).attr('toc-title');
|
200
210
|
if (typeof(title) == "undefined") title = $(this).text();
|
201
|
-
|
211
|
+
curli =$('<li><a href="#' + this.id + '">' + title + '</a></li>');
|
212
|
+
toc.append(curli);
|
202
213
|
lastTag = thisTag;
|
203
214
|
});
|
204
215
|
if (!show) return;
|