ovto 0.4.1 → 0.6.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (78) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -1
  3. data/.gitmodules +3 -0
  4. data/CHANGELOG.md +15 -2
  5. data/Gemfile +2 -2
  6. data/Gemfile.lock +23 -27
  7. data/README.md +2 -2
  8. data/book/SUMMARY.md +3 -1
  9. data/book/api/actions.md +1 -1
  10. data/book/api/fetch.md +3 -3
  11. data/book/api/middleware.md +99 -0
  12. data/book/api/pure_component.md +30 -0
  13. data/book/guides/install.md +76 -0
  14. data/book/guides/tutorial.md +3 -3
  15. data/book/ovtologo.png +0 -0
  16. data/docs/api/Array.html +190 -0
  17. data/docs/api/Hash.html +196 -0
  18. data/docs/api/Ovto/Actions.html +132 -40
  19. data/docs/api/Ovto/App.html +254 -40
  20. data/docs/api/Ovto/Component/MoreThanOneNode.html +6 -6
  21. data/docs/api/Ovto/Component.html +102 -27
  22. data/docs/api/Ovto/Middleware/Actions.html +428 -0
  23. data/docs/api/Ovto/Middleware/Base.html +606 -0
  24. data/docs/api/Ovto/Middleware/Component.html +355 -0
  25. data/docs/api/Ovto/Middleware.html +288 -0
  26. data/docs/api/Ovto/PureComponent/StateIsNotAvailable.html +124 -0
  27. data/docs/api/Ovto/PureComponent.html +368 -0
  28. data/docs/api/Ovto/Runtime.html +7 -7
  29. data/docs/api/Ovto/State/MissingValue.html +6 -6
  30. data/docs/api/Ovto/State/{UnknownKey.html → UnknownStateKey.html} +11 -11
  31. data/docs/api/Ovto/State.html +59 -43
  32. data/docs/api/Ovto/WiredActionSet.html +636 -0
  33. data/docs/api/Ovto/WiredActions.html +78 -35
  34. data/docs/api/Ovto.html +226 -29
  35. data/docs/api/_index.html +99 -11
  36. data/docs/api/actions.html +36 -10
  37. data/docs/api/app.html +35 -9
  38. data/docs/api/class_list.html +3 -3
  39. data/docs/api/component.html +37 -11
  40. data/docs/api/css/style.css +2 -2
  41. data/docs/api/fetch.html +40 -14
  42. data/docs/api/file.README.html +8 -8
  43. data/docs/api/file_list.html +2 -2
  44. data/docs/api/frames.html +2 -2
  45. data/docs/api/index.html +8 -8
  46. data/docs/api/js/app.js +14 -3
  47. data/docs/api/method_list.html +318 -22
  48. data/docs/api/middleware.html +498 -0
  49. data/docs/api/pure_component.html +428 -0
  50. data/docs/api/state.html +35 -9
  51. data/docs/api/top-level-namespace.html +9 -7
  52. data/docs/gitbook/gitbook.js +2 -2
  53. data/docs/gitbook/theme.js +1 -1
  54. data/docs/guides/debugging.html +35 -9
  55. data/docs/guides/development.html +35 -9
  56. data/docs/guides/install.html +452 -0
  57. data/docs/guides/tutorial.html +101 -66
  58. data/docs/index.html +37 -17
  59. data/docs/ovtologo.png +0 -0
  60. data/docs/search_index.json +1 -1
  61. data/examples/sinatra/Gemfile +2 -0
  62. data/examples/sinatra/Gemfile.lock +33 -31
  63. data/examples/sinatra/app.rb +1 -4
  64. data/examples/sinatra/config.ru +6 -6
  65. data/examples/static/Gemfile.lock +10 -14
  66. data/lib/ovto/actions.rb +11 -0
  67. data/lib/ovto/app.rb +37 -13
  68. data/lib/ovto/component.rb +149 -73
  69. data/lib/ovto/fetch.rb +1 -1
  70. data/lib/ovto/middleware.rb +121 -0
  71. data/lib/ovto/pure_component.rb +22 -0
  72. data/lib/ovto/state.rb +13 -5
  73. data/lib/ovto/version.rb +1 -1
  74. data/lib/ovto/wired_action_set.rb +40 -0
  75. data/lib/ovto/wired_actions.rb +49 -11
  76. data/lib/ovto.rb +27 -0
  77. data/ovto.gemspec +1 -1
  78. 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.3">
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="component.html" />
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
- Introduction
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/tutorial.html">
116
+ <li class="chapter " data-level="1.3" data-path="../guides/install.html">
117
117
 
118
- <a href="../guides/tutorial.html">
118
+ <a href="../guides/install.html">
119
119
 
120
120
 
121
- Getting Started
121
+ Install
122
122
 
123
123
  </a>
124
124
 
@@ -192,7 +192,33 @@
192
192
 
193
193
  </li>
194
194
 
195
- <li class="chapter active" data-level="1.4.5" data-path="fetch.html">
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&apos;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">&apos;/api/tasks&apos;</span>){|json_data|
334
+ <pre><code class="lang-rb">Ovto.fetch(<span class="hljs-string">&apos;/api/tasks&apos;</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">&apos;/api/new_task&apos;</span>, <span class="hljs-string">&apos;POST&apos;</span>, {<span class="hljs-symbol">title:</span> <span class="hljs-string">&quot;do something&quot;</span>}){|json_data|
341
+ <pre><code class="lang-rb">Ovto.fetch(<span class="hljs-string">&apos;/api/new_task&apos;</span>, <span class="hljs-string">&apos;POST&apos;</span>, {<span class="hljs-symbol">title:</span> <span class="hljs-string">&quot;do something&quot;</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">&apos;/api/tasks/1&apos;</span>, <span class="hljs-string">&apos;PUT&apos;</span>, {<span class="hljs-symbol">title:</span> <span class="hljs-string">&quot;do something&quot;</span>}){|json_data|
348
+ <pre><code class="lang-rb">Ovto.fetch(<span class="hljs-string">&apos;/api/tasks/1&apos;</span>, <span class="hljs-string">&apos;PUT&apos;</span>, {<span class="hljs-symbol">title:</span> <span class="hljs-string">&quot;do something&quot;</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="component.html" class="navigation navigation-prev navigation-unique" aria-label="Previous page: Ovto::Component">
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.5","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::Component","level":"1.4.4","depth":2,"path":"api/component.md","ref":"api/component.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":"2018-08-18T07:44:18.000Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2019-04-19T03:51:35.766Z"},"basePath":"..","book":{"language":""}});
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>
@@ -6,15 +6,15 @@
6
6
  <title>
7
7
  File: README
8
8
 
9
- &mdash; Documentation by YARD 0.9.19
9
+ &mdash; Documentation by YARD 0.9.24
10
10
 
11
11
  </title>
12
12
 
13
- <link rel="stylesheet" href="css/style.css" type="text/css" charset="utf-8" />
13
+ <link rel="stylesheet" href="css/style.css" type="text/css" />
14
14
 
15
- <link rel="stylesheet" href="css/common.css" type="text/css" charset="utf-8" />
15
+ <link rel="stylesheet" href="css/common.css" type="text/css" />
16
16
 
17
- <script type="text/javascript" charset="utf-8">
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 Fri Apr 19 12:51:39 2019 by
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.19 (ruby-2.5.5).
158
+ 0.9.24 (ruby-2.5.5).
159
159
  </div>
160
160
 
161
161
  </div>
@@ -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" charset="utf-8" />
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" charset="utf-8" />
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.19</title>
5
+ <title>Documentation by YARD 0.9.24</title>
6
6
  </head>
7
- <script type="text/javascript" charset="utf-8">
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
- &mdash; Documentation by YARD 0.9.19
9
+ &mdash; Documentation by YARD 0.9.24
10
10
 
11
11
  </title>
12
12
 
13
- <link rel="stylesheet" href="css/style.css" type="text/css" charset="utf-8" />
13
+ <link rel="stylesheet" href="css/style.css" type="text/css" />
14
14
 
15
- <link rel="stylesheet" href="css/common.css" type="text/css" charset="utf-8" />
15
+ <link rel="stylesheet" href="css/common.css" type="text/css" />
16
16
 
17
- <script type="text/javascript" charset="utf-8">
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 Fri Apr 19 12:51:39 2019 by
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.19 (ruby-2.5.5).
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
- var tmp = $('<ol/>'); toc.append(tmp); toc = tmp;
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++) toc = toc.parent();
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
- toc.append('<li><a href="#' + this.id + '">' + title + '</a></li>');
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;