artoo 1.5.0 → 1.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (53) hide show
  1. checksums.yaml +4 -4
  2. data/.ruby-version +1 -1
  3. data/.travis.yml +4 -3
  4. data/Gemfile +0 -12
  5. data/Gemfile.lock +12 -72
  6. data/LICENSE +1 -1
  7. data/README.md +19 -8
  8. data/artoo.gemspec +1 -0
  9. data/bin/artoo +2 -1
  10. data/examples/hello.rb +6 -3
  11. data/lib/artoo/adaptors/adaptor.rb +2 -2
  12. data/lib/artoo/api/api.rb +6 -10
  13. data/lib/artoo/api/route_helpers.rb +3 -3
  14. data/lib/artoo/commands/connect.rb +12 -4
  15. data/lib/artoo/commands/install.rb +2 -2
  16. data/lib/artoo/delegator.rb +1 -1
  17. data/lib/artoo/drivers/passthru.rb +1 -1
  18. data/lib/artoo/generators/adaptor/artoo-%adaptor_name%.gemspec.tt +1 -0
  19. data/lib/artoo/generators/adaptor/lib/artoo/drivers/%adaptor_name%.rb.tt +1 -1
  20. data/lib/artoo/robot.rb +1 -1
  21. data/lib/artoo/robot_class_methods.rb +7 -2
  22. data/lib/artoo/version.rb +1 -1
  23. metadata +38 -54
  24. data/Guardfile +0 -10
  25. data/api/assets/compass.rb +0 -25
  26. data/api/assets/javascripts/artoo/controllers/robot.js.coffee +0 -33
  27. data/api/assets/javascripts/artoo/routes.js.coffee +0 -23
  28. data/api/assets/javascripts/core.js.coffee +0 -6
  29. data/api/assets/javascripts/vendor/angular.min.js +0 -161
  30. data/api/assets/javascripts/vendor/bootstrap.min.js +0 -6
  31. data/api/assets/javascripts/vendor/jquery.min.js +0 -5
  32. data/api/assets/stylesheets/artoo/_core.css.scss +0 -3
  33. data/api/assets/stylesheets/artoo/_font-awesome.scss +0 -534
  34. data/api/assets/stylesheets/artoo/_variables.scss +0 -8
  35. data/api/assets/stylesheets/core.scss +0 -76
  36. data/api/public/core.css +0 -9856
  37. data/api/public/core.js +0 -274
  38. data/api/public/favicon.ico +0 -0
  39. data/api/public/font/FontAwesome.otf +0 -0
  40. data/api/public/font/fontawesome-webfont.eot +0 -0
  41. data/api/public/font/fontawesome-webfont.svg +0 -284
  42. data/api/public/font/fontawesome-webfont.ttf +0 -0
  43. data/api/public/font/fontawesome-webfont.woff +0 -0
  44. data/api/public/html5shiv.js +0 -8
  45. data/api/public/images/devices/ardrone.jpg +0 -0
  46. data/api/public/images/devices/arduino.jpg +0 -0
  47. data/api/public/images/devices/sphero.png +0 -0
  48. data/api/public/images/glyphicons-halflings-white.png +0 -0
  49. data/api/public/images/glyphicons-halflings.png +0 -0
  50. data/api/public/index.html +0 -36
  51. data/api/public/partials/robot-detail.html +0 -125
  52. data/api/public/partials/robot-device-detail.html +0 -0
  53. data/api/public/partials/robot-index.html +0 -26
@@ -1,8 +0,0 @@
1
- /*
2
- HTML5 Shiv v3.6.2pre | @afarkas @jdalton @jon_neal @rem | MIT/GPL2 Licensed
3
- */
4
- (function(l,f){function m(){var a=e.elements;return"string"==typeof a?a.split(" "):a}function i(a){var b=n[a[o]];b||(b={},h++,a[o]=h,n[h]=b);return b}function p(a,b,c){b||(b=f);if(g)return b.createElement(a);c||(c=i(b));b=c.cache[a]?c.cache[a].cloneNode():r.test(a)?(c.cache[a]=c.createElem(a)).cloneNode():c.createElem(a);return b.canHaveChildren&&!s.test(a)?c.frag.appendChild(b):b}function t(a,b){if(!b.cache)b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag();
5
- a.createElement=function(c){return!e.shivMethods?b.createElem(c):p(c,a,b)};a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+m().join().replace(/\w+/g,function(a){b.createElem(a);b.frag.createElement(a);return'c("'+a+'")'})+");return n}")(e,b.frag)}function q(a){a||(a=f);var b=i(a);if(e.shivCSS&&!j&&!b.hasCSS){var c,d=a;c=d.createElement("p");d=d.getElementsByTagName("head")[0]||d.documentElement;c.innerHTML="x<style>article,aside,figcaption,figure,footer,header,hgroup,nav,section{display:block}mark{background:#FF0;color:#000}</style>";
6
- c=d.insertBefore(c.lastChild,d.firstChild);b.hasCSS=!!c}g||t(a,b);return a}var k=l.html5||{},s=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,r=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,j,o="_html5shiv",h=0,n={},g;(function(){try{var a=f.createElement("a");a.innerHTML="<xyz></xyz>";j="hidden"in a;var b;if(!(b=1==a.childNodes.length)){f.createElement("a");var c=f.createDocumentFragment();b="undefined"==typeof c.cloneNode||
7
- "undefined"==typeof c.createDocumentFragment||"undefined"==typeof c.createElement}g=b}catch(d){g=j=!0}})();var e={elements:k.elements||"abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup mark meter nav output progress section summary time video",version:"3.6.2pre",shivCSS:!1!==k.shivCSS,supportsUnknownElements:g,shivMethods:!1!==k.shivMethods,type:"default",shivDocument:q,createElement:p,createDocumentFragment:function(a,b){a||(a=f);if(g)return a.createDocumentFragment();
8
- for(var b=b||i(a),c=b.frag.cloneNode(),d=0,e=m(),h=e.length;d<h;d++)c.createElement(e[d]);return c}};l.html5=e;q(f)})(this,document);
Binary file
Binary file
Binary file
@@ -1,36 +0,0 @@
1
- <!DOCTYPE html>
2
- <html ng-app="artoo">
3
- <head>
4
- <title>Artoo</title>
5
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <!-- Bootstrap -->
7
- <script type="text/javascript" src="core.js"></script>
8
- <link rel="stylesheet" href="core.css" rel="stylesheet" media="screen">
9
- <!-- Le HTML5 shim, for IE6-8 support of HTML5 elements -->
10
- <!--[if lt IE 9]>
11
- <script src="html5shiv.js"></script>
12
- <![endif]-->
13
- </head>
14
- <body>
15
- <div class="navbar navbar-inverse navbar-fixed-top">
16
- <div class="navbar-inner">
17
- <div class="container">
18
- <a class="brand" href="/">Artoo</a>
19
-
20
- <button type="button" class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
21
- <span class="icon-bar"></span>
22
- <span class="icon-bar"></span>
23
- <span class="icon-bar"></span>
24
- </button>
25
- <div class="nav-collapse collapse">
26
- <ul class="nav" ng-app="link">
27
- <li active-link="active"><a href="#/robots">Robots</a></li>
28
- </ul>
29
- </div><!--/.nav-collapse -->
30
- </div>
31
- </div>
32
- </div>
33
-
34
- <div ng-view></div>
35
- </body>
36
- </html>
@@ -1,125 +0,0 @@
1
- <div class="container">
2
- <div class="container device">
3
- <div class="row-fluid">
4
- <div class="span2">
5
- <div class="display">
6
- {{robot.type || "Robot"}}
7
- </div>
8
- </div>
9
- <div class="span10">
10
- <b>
11
- <span class="name">{{robot.name}}</span>
12
- <dl class="controls">
13
- <dt><i class="icon-fighter-jet"></i> devices: </dt>
14
- <dd>{{robot.connections.length}}</dd>
15
- <dt><i class="icon-exchange"></i> connections: </dt>
16
- <dd>{{robot.connections.length}}</dd>
17
- </dl>
18
- </b>
19
- </div>
20
- </div>
21
- </div>
22
-
23
- <div class="container device details" ng-show='deviceDetail'>
24
- <div class="row-fluid">
25
- <div class="span2">
26
- <b><span class="name">{{deviceDetail.name}}</span></b>
27
- </div>
28
- <div class="span5 pull-right">
29
- <b>
30
- <dl class="controls">
31
- <span ng-show='deviceDetail.pin'>
32
- <dt><i class="icon-fighter-jet"></i> </dt>
33
- <dd>{{ deviceDetail.pin }}</dd>
34
- </span>
35
- <span ng-show='deviceDetail.driver'>
36
- <dt><i class="icon-hdd"></i></dt>
37
- <dd>{{ deviceDetail.driver }}</dd>
38
- </span>
39
- <span ng-show='deviceDetail.adaptor'>
40
- <dt><i class="icon-resize-horizontal"></i></dt>
41
- <dd>{{ deviceDetail.adaptor }}</dd>
42
- </span>
43
- <span ng-show='deviceDetail.connection'>
44
- <dt><i class="icon-circle" ng-class="isConnected(deviceDetail.connection)"></i> </dt>
45
- <dd ng-show="deviceDetail.connection.name">{{deviceDetail.connection.name}}</dd>
46
- </span>
47
- </dl>
48
- <div class="input-prepend">
49
- <div class="commands btn-group" >
50
- <a class="btn dropdown-toggle btn-mini" data-toggle="dropdown" href="#">
51
- Commands
52
- <span class="caret"></span>
53
- </a>
54
- <ul class="dropdown-menu">
55
- <div ng-repeat="command in deviceDetail.commands">
56
- <li><a ng-click="executeCommand(deviceDetail.name, command)">{{command }}</a></li>
57
- </div>
58
- </ul>
59
- </div>
60
- <input id="appendedDropdownButton" type="text">
61
- </div>
62
- </b>
63
- </div>
64
- </div>
65
- <div class="row-fluid content">
66
- <div class="console">
67
- <code></code>
68
- </div>
69
- </div>
70
- </div>
71
-
72
-
73
- <div class="row">
74
-
75
- <div class="span6">
76
- <div class="device" ng-repeat="device in robot.devices" ng-click="getDeviceDetail(device.name)">
77
- <div class="row-fluid">
78
- <div class="span2">
79
- <div class="display">
80
- D
81
- </div>
82
- </div>
83
- <div class="span10">
84
- <b>
85
- <span class="name">{{device.name}}</span>
86
- <dl class="controls">
87
- <span ng-show="device.pin">
88
- <dt ><i class="icon-bolt"></i> pin: </dt>
89
- <dd>{{device.pin}}</dd>
90
- </span>
91
- <dt><i class="icon-exchange"></i> </dt>
92
- <dd>{{device.connection.name}}</dd>
93
- </dl>
94
- </b>
95
- </div>
96
- </div>
97
- </div>
98
- </div>
99
-
100
-
101
- <div class="span6">
102
- <div class="device" ng-repeat="connection in robot.connections">
103
- <div class="row-fluid">
104
- <div class="span2">
105
- <div class="display">
106
- <i class="icon-exchange"></i>
107
- </div>
108
- </div>
109
- <div class="span10">
110
- <b>
111
- <span class="name">{{connection.name}}</span>
112
- <dl class="controls">
113
- <dt><i class="icon-circle" ng-class="isConnected(connection)"></i> </dt>
114
- <dd ng-show="connection.port">{{connection.port}}</dd>
115
- </dl>
116
- </b>
117
- </div>
118
- </div>
119
- </div>
120
- </div>
121
-
122
- </div>
123
-
124
-
125
- </div>
File without changes
@@ -1,26 +0,0 @@
1
- <div class="container">
2
-
3
- <h1>Listing all Robots</h1>
4
-
5
- <div class="container device clickable" ng-repeat="robot in robots" ng-click="robotDetail(robot.name)">
6
- <div class="row-fluid">
7
- <div class="span2">
8
- <div class="display sphero">
9
- {{robot.type || "Robot"}}
10
- </div>
11
- </div>
12
- <div class="span10">
13
- <b>
14
- <span class="name">{{robot.name}}</span>
15
- <dl class="controls">
16
- <dt><i class="icon-fighter-jet"></i> Devices: </dt>
17
- <dd>{{robot.connections.length}}</dd>
18
- <dt><i class="icon-exchange"></i> Connections: </dt>
19
- <dd>{{robot.connections.length}}</dd>
20
- </dl>
21
- </b>
22
- </div>
23
- </div>
24
- </div>
25
-
26
- </div>