robeaux 0.3.0 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (99) hide show
  1. checksums.yaml +4 -4
  2. data/README.markdown +41 -61
  3. data/css/application.css +2 -0
  4. data/css/application.css.map +7 -0
  5. data/index.html +5 -39
  6. data/js/script.js +7 -0
  7. data/robeaux.gemspec +16 -8
  8. metadata +11 -104
  9. data/.gitignore +0 -1
  10. data/Gruntfile.js +0 -43
  11. data/Makefile +0 -22
  12. data/css/fonts.css +0 -59
  13. data/css/main.css +0 -1
  14. data/css/normalize.css +0 -425
  15. data/css/style.css +0 -558
  16. data/css/themes/artoo.css +0 -3
  17. data/css/themes/blackboard.css +0 -1
  18. data/css/themes/cylon.css +0 -3
  19. data/css/themes/dark.css +0 -1
  20. data/css/themes/gobot.css +0 -3
  21. data/css/themes/gray.css +0 -1
  22. data/css/themes/whiteboard.css +0 -1
  23. data/js/app.js +0 -1
  24. data/js/controllers/device_commands_ctrl.js +0 -81
  25. data/js/controllers/device_events_ctrl.js +0 -31
  26. data/js/controllers/index_ctrl.js +0 -9
  27. data/js/controllers/nav_ctrl.js +0 -5
  28. data/js/controllers/robot_commands_ctrl.js +0 -33
  29. data/js/controllers/robot_ctrl.js +0 -25
  30. data/js/controllers/themes_ctrl.js +0 -36
  31. data/js/controllers/widget_editor_ctrl.js +0 -44
  32. data/js/controllers/widgets_ctrl.js +0 -40
  33. data/js/directives/widget.js +0 -50
  34. data/js/router.js +0 -27
  35. data/js/services/themes.js +0 -90
  36. data/js/services/widgets.js +0 -86
  37. data/js/vendor/angular-route.min.js +0 -13
  38. data/js/vendor/angular.min.js +0 -212
  39. data/js/widgets/attitude.html +0 -32
  40. data/js/widgets/attitude.js +0 -27
  41. data/js/widgets/mindwave.html +0 -51
  42. data/js/widgets/mindwave.js +0 -23
  43. data/less/app.less +0 -21
  44. data/less/objects/buttons.less +0 -32
  45. data/less/objects/connections.less +0 -28
  46. data/less/objects/device.less +0 -30
  47. data/less/objects/forms.less +0 -29
  48. data/less/objects/list.less +0 -27
  49. data/less/objects/nav.less +0 -33
  50. data/less/objects/robot.less +0 -43
  51. data/less/objects/themes.less +0 -18
  52. data/less/objects/widgets.less +0 -85
  53. data/less/support/buttons.less +0 -39
  54. data/less/support/container.less +0 -9
  55. data/less/support/forms.less +0 -18
  56. data/less/support/mixins.less +0 -3
  57. data/less/themes/blackboard.less +0 -158
  58. data/less/themes/dark.less +0 -148
  59. data/less/themes/default.less +0 -52
  60. data/less/themes/gray.less +0 -121
  61. data/less/themes/whiteboard.less +0 -152
  62. data/less/vendor/elements.less +0 -156
  63. data/less/vendor/normalize.less +0 -425
  64. data/less/vendor/semantic-grid.less +0 -67
  65. data/less/views/devices.less +0 -47
  66. data/less/views/robots.less +0 -132
  67. data/less/views/themes.less +0 -31
  68. data/less/views/widgets.less +0 -50
  69. data/package.json +0 -21
  70. data/partials/device.html +0 -76
  71. data/partials/index.html +0 -17
  72. data/partials/robot.html +0 -127
  73. data/partials/themes.html +0 -42
  74. data/partials/widget_editor.html +0 -68
  75. data/test/controllers/device_commands_ctrl.js +0 -129
  76. data/test/controllers/device_events_ctrl.js +0 -82
  77. data/test/controllers/index_ctrl.js +0 -48
  78. data/test/controllers/nav_ctrl.js +0 -40
  79. data/test/controllers/robot_commands_ctrl.js +0 -127
  80. data/test/controllers/robot_ctrl.js +0 -62
  81. data/test/controllers/themes_ctrl.js +0 -96
  82. data/test/controllers/widget_editor_ctrl.js +0 -111
  83. data/test/controllers/widgets_ctrl.js +0 -74
  84. data/test/functions/functions.js +0 -30
  85. data/test/karma.conf.js +0 -76
  86. data/test/karma_test_all.conf.js +0 -23
  87. data/test/karma_test_controllers.conf.js +0 -19
  88. data/test/karma_test_functions.conf.js +0 -14
  89. data/test/karma_test_services.conf.js +0 -17
  90. data/test/services/themes.js +0 -122
  91. data/test/services/widgets.js +0 -104
  92. data/test/support/myDevice.json +0 -15
  93. data/test/support/myRobot.json +0 -31
  94. data/test/support/robots.json +0 -33
  95. data/test/support/themes.json +0 -9
  96. data/test/support/widgets.json +0 -18
  97. data/test/vendor/angular-mocks.js +0 -2163
  98. data/test/vendor/jasmine-jquery.js +0 -704
  99. data/test/vendor/jquery.js +0 -8755
@@ -1,67 +0,0 @@
1
- /////////////////
2
- // Semantic.gs // for LESS: http://lesscss.org/
3
- /////////////////
4
-
5
- // Defaults which you can freely override
6
- // @column-width: 60;
7
- // @gutter-width: 20;
8
- // @columns: 12;
9
-
10
- // Utility variable — you should never need to modify this
11
- // @gridsystem-width: (@column-width*@columns) + (@gutter-width*@columns) * 1px;
12
-
13
- // Set @total-width to 100% for a fluid layout
14
- // @total-width: @gridsystem-width;
15
-
16
- // Uncomment these two lines and the star-hack width/margin lines below to enable sub-pixel fix for IE6 & 7. See http://tylertate.com/blog/2012/01/05/subpixel-rounding.html
17
- // @min-width: 960;
18
- // @correction: 0.5 / @min-width * 100 * 1%;
19
-
20
- // The micro clearfix http://nicolasgallagher.com/micro-clearfix-hack/
21
- .clearfix() {
22
- *zoom:1;
23
-
24
- &:before,
25
- &:after {
26
- content:"";
27
- display:table;
28
- }
29
- &:after {
30
- clear:both;
31
- }
32
- }
33
-
34
-
35
- //////////
36
- // GRID //
37
- //////////
38
-
39
- /*
40
- body {
41
- width: 100%;
42
- .clearfix;
43
- }
44
- */
45
-
46
- .row(@columns:@columns) {
47
- display: block;
48
- width: @total-width*((@gutter-width + @gridsystem-width)/@gridsystem-width);
49
- margin: 0 @total-width*(((@gutter-width*.5)/@gridsystem-width)*-1);
50
- // *width: @total-width*((@gutter-width + @gridsystem-width)/@gridsystem-width)-@correction;
51
- // *margin: 0 @total-width*(((@gutter-width*.5)/@gridsystem-width)*-1)-@correction;
52
- .clearfix();
53
- }
54
- .column(@x,@columns:@columns) {
55
- display: inline;
56
- float: left;
57
- width: @total-width*((((@gutter-width+@column-width)*@x)-@gutter-width) / @gridsystem-width);
58
- margin: 0 @total-width*((@gutter-width*.5)/@gridsystem-width);
59
- // *width: @total-width*((((@gutter-width+@column-width)*@x)-@gutter-width) / @gridsystem-width)-@correction;
60
- // *margin: 0 @total-width*((@gutter-width*.5)/@gridsystem-width)-@correction;
61
- }
62
- .push(@offset:1) {
63
- margin-left: @total-width*(((@gutter-width+@column-width)*@offset) / @gridsystem-width) + @total-width*((@gutter-width*.5)/@gridsystem-width);
64
- }
65
- .pull(@offset:1) {
66
- margin-right: @total-width*(((@gutter-width+@column-width)*@offset) / @gridsystem-width) + @total-width*((@gutter-width*.5)/@gridsystem-width);
67
- }
@@ -1,47 +0,0 @@
1
- .device-detail {
2
- .device-header {
3
- .container();
4
- h2{
5
- .column(6);
6
- }
7
- }
8
-
9
- .device-commands {
10
- .column(6);
11
- }
12
-
13
- .device-events {
14
- .column(6);
15
-
16
- .input {
17
- .column(6);
18
-
19
- input {
20
- .column(7);
21
- padding: 8px 12px;
22
- margin: 0 2.08166667% 0 0;
23
- }
24
-
25
- button {
26
- .column(5);
27
- }
28
- }
29
-
30
- .listeners-div {
31
- .column(6);
32
- margin-bottom: 30px;
33
- table {
34
- width: 100%;
35
- }
36
-
37
- }
38
-
39
- .events {
40
- width: 100%;
41
- }
42
- }
43
-
44
- .remove {
45
- width: 10%;
46
- }
47
- }
@@ -1,132 +0,0 @@
1
- body {
2
- background: @body-background-color;
3
- font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif;
4
- color: @body-text-color;
5
- }
6
-
7
- .container-wrap {
8
- margin-bottom: 30px;
9
- }
10
-
11
- .container, .robot, .widgets, .connections, .themes {
12
- width: @gridsystem-width;
13
- padding:0;
14
- .container();
15
- }
16
-
17
- .row {
18
- background: #fff;
19
- padding: 15px 0;
20
- margin-top: 10px;
21
- .clearfix();
22
- }
23
-
24
- .robot-details {
25
- .column(12);
26
- }
27
-
28
- .robot {
29
-
30
- h2 {
31
- .column(12);
32
- text-align: center;
33
- margin-bottom: 15px;
34
- }
35
-
36
- .input, .results {
37
- .column(6);
38
- }
39
- }
40
-
41
- .robot-detail {
42
- .widgets {
43
- .new-widget-instance {
44
- height: 100vh;
45
- width: 100%;
46
- }
47
-
48
- .active-widgets {
49
-
50
- .add-widget {
51
- .column(3);
52
- }
53
-
54
- button {
55
- font-size: 2em;
56
- }
57
-
58
- widget {
59
- .column(9);
60
- }
61
- }
62
-
63
- .panel {
64
- margin: 10% auto;
65
- width: 600px;
66
-
67
- .type {
68
- .column(5);
69
- }
70
-
71
- .attrs {
72
- .column(7);
73
-
74
- label {
75
- .column(4);
76
- }
77
-
78
- input {
79
- .column(8);
80
- }
81
- }
82
- }
83
- }
84
-
85
- .robot-devices {
86
- .column(6);
87
- }
88
-
89
- .robot-connection {
90
- .column(6);
91
- }
92
- }
93
-
94
- .commands, .device-commands {
95
- .param {
96
- .row(6);
97
- height: 40px;
98
-
99
- input[type='text'] {
100
- .column(2,6);
101
- }
102
-
103
- select {
104
- .column(1.5,6);
105
- }
106
-
107
- .close {
108
- .column(0.5,6);
109
- line-height: 34px;
110
- &:hover {
111
- color: #f00;
112
- cursor: pointer;
113
- }
114
- }
115
- }
116
-
117
- .input>select, &>select {
118
- width: 100%;
119
- .container-block();
120
- margin-bottom: 15px;
121
- }
122
-
123
- button {
124
- width: 70%;
125
- margin-top: 15px;
126
- .container-block();
127
- }
128
-
129
- table {
130
- width: 100%;
131
- }
132
- }
@@ -1,31 +0,0 @@
1
- .themes {
2
- .sidebar {
3
- .column(4);
4
- }
5
-
6
- .new-theme {
7
- .row(4);
8
-
9
- input {
10
- .column(3,4);
11
- }
12
-
13
- button {
14
- .column(1,4);
15
- }
16
- }
17
-
18
- .editor {
19
- .column(8);
20
-
21
- textarea {
22
- width: 100%;
23
- height: 250px;
24
- }
25
- }
26
-
27
- .footer {
28
- .clearfix();
29
- .column(12);
30
- }
31
- }
@@ -1,50 +0,0 @@
1
- .widgets {
2
- .sidebar {
3
- .column(3);
4
- }
5
-
6
- .new-widget {
7
- .row(3);
8
-
9
- input {
10
- .column(2, 3);
11
- }
12
-
13
- button {
14
- .column(1, 3);
15
- }
16
- }
17
-
18
- .new-attr {
19
- .row(9);
20
-
21
- input {
22
- .column(5, 9);
23
- }
24
-
25
- button {
26
- .column(3, 9);
27
- }
28
- }
29
-
30
- .editor {
31
- .column(9);
32
- }
33
-
34
- .attrs {
35
- .column(9, 9);
36
- }
37
-
38
- .field {
39
- .column(4.5, 9);
40
-
41
- textarea {
42
- width: 100%;
43
- min-height: 250px;
44
- }
45
- }
46
-
47
- .footer {
48
- .column(12);
49
- }
50
- }
data/package.json DELETED
@@ -1,21 +0,0 @@
1
- {
2
- "name": "robeaux",
3
- "version": "0.3.0",
4
- "description": "An AngularJS interface for the CPPP-IO API spec",
5
- "homepage": "http://cylonjs.com",
6
- "bugs": "https://github.com/hybridgroup/robeaux/issues",
7
- "author": "The Hybrid Group <cylonjs@hybridgroup.com>",
8
- "repository": {
9
- "type": "git",
10
- "url": "https://github.com/hybridgroup/robeaux"
11
- },
12
- "license": "Apache 2.0",
13
- "devDependencies": {
14
- "grunt": "^0.4.5",
15
- "grunt-contrib-less": "^0.12.0",
16
- "grunt-contrib-watch": "^0.6.1",
17
- "karma": "~0.12.16",
18
- "karma-jasmine": "~0.1.5",
19
- "karma-phantomjs-launcher": "~0.1"
20
- }
21
- }
data/partials/device.html DELETED
@@ -1,76 +0,0 @@
1
- <section class="device-detail">
2
- <div class="row">
3
- <div class="device-header">
4
- <h2>Commands</h2>
5
- <h2>Events</h2>
6
- </div>
7
- </div>
8
-
9
- <div class="row row-device">
10
- <div class="container">
11
- <div class="device-commands" ng-controller="DeviceCommandsCtrl">
12
- <select ng-model="command" ng-options="cmd for cmd in device.commands">
13
- </select>
14
-
15
- <div class="params">
16
- <div class="param" ng-repeat="param in device.params">
17
- <input placeholder='name' type="text" ng-model="param.name" ng-focus="addParam($last)">
18
- <input placeholder='value' type="text" ng-model="param.value" ng-focus="addParam($last)">
19
- <select ng-options="type for type in types" ng-model="param.type"></select>
20
- <span class="close" ng-click="removeParam($index)">&#x2716;</span>
21
- </div>
22
- </div>
23
-
24
- <button class="btn btn-run" ng-click="submit()" ng-disabled="isDisabled()">run</button>
25
-
26
- <table class="results">
27
- <thead>
28
- <tr>
29
- <th>Results</th>
30
- </tr>
31
- </thead>
32
- <tbody>
33
- <tr class="result" ng-repeat="entry in device.results">
34
- <td>{{entry.result}}</td>
35
- </tr>
36
- </tbody>
37
- </table>
38
- </div>
39
-
40
- <div class="device-events" ng-controller="DeviceEventsCtrl">
41
- <div class="input">
42
- <input type="text" ng-model="eventName" placeholder="event name">
43
- <button class="btn btn-robot" ng-click="listen()">listen</button>
44
- </div>
45
-
46
- <div class="listeners-div">
47
- <table class="listeners">
48
- <thead>
49
- <th colspan="2">Listeners</th>
50
- </thead>
51
-
52
- <tbody>
53
- <tr class="listener" ng-repeat="(name, listeners) in device.listeners">
54
- <td>{{name}}</td>
55
- <td class="remove" ng-click="remove(name)">remove</td>
56
- </tr>
57
- </tbody>
58
- </table>
59
- </div>
60
-
61
- <table class="events">
62
- <thead>
63
- <th colspan="2">Events</th>
64
- </thead>
65
-
66
- <tbody>
67
- <tr class="event" ng-repeat="event in device.events">
68
- <td>{{event.name}}</td>
69
- <td>{{event.data}}</td>
70
- </tr>
71
- </tbody>
72
- </table>
73
- </div>
74
- </div>
75
- </div>
76
- </section>
data/partials/index.html DELETED
@@ -1,17 +0,0 @@
1
- <div class="robots">
2
- <div class="row" ng-repeat="robot in robots" ng-click="details(robot.name)">
3
- <div class="robot">
4
- <div class="robot-details">
5
-
6
- <span class="btn btn-robot btn-big">robot</span>
7
- <span class="name">{{robot.name}}</span>
8
-
9
- <div class="details">
10
- <span class="bullet-connections"><strong>Connections</strong> {{robot.connections.length}}</span>
11
- <span class="bullet-devices"><strong>Devices</strong> {{robot.devices.length}}</span>
12
- </div>
13
-
14
- </div>
15
- </div>
16
- </div>
17
- </div>