Commit 83c2758c7c481d43887d3d7cdfd0d0d7bd0a21fc

Authored by Artem Babak
1 parent 0a5796c9

Edge Downlinks new tab implementation

@@ -1194,10 +1194,6 @@ export default angular.module('thingsboard.types', []) @@ -1194,10 +1194,6 @@ export default angular.module('thingsboard.types', [])
1194 name: "permission.resource.display-type.ADMIN_SETTINGS" 1194 name: "permission.resource.display-type.ADMIN_SETTINGS"
1195 } 1195 }
1196 }, 1196 },
1197 - edgeEvent: {  
1198 - value: "EDGE_EVENT",  
1199 - name: "edge.downlink"  
1200 - },  
1201 edgeDownlinks: { 1197 edgeDownlinks: {
1202 value: "EDGE_DOWNLINKS", 1198 value: "EDGE_DOWNLINKS",
1203 name: "edge.downlinks" 1199 name: "edge.downlinks"
@@ -25,45 +25,13 @@ import edgeDownlinksTableTemplate from './edge-downlinks-table.tpl.html'; @@ -25,45 +25,13 @@ import edgeDownlinksTableTemplate from './edge-downlinks-table.tpl.html';
25 export default function EdgeDownlinksDirective($compile, $templateCache, $rootScope, $translate, types, 25 export default function EdgeDownlinksDirective($compile, $templateCache, $rootScope, $translate, types,
26 eventService, edgeService, attributeService) { 26 eventService, edgeService, attributeService) {
27 27
28 - var linker = function (scope, element, attrs) { 28 + var linker = function (scope, element) {
29 29
30 var template = $templateCache.get(edgeDownlinksTableTemplate); 30 var template = $templateCache.get(edgeDownlinksTableTemplate);
31 31
32 element.html(template); 32 element.html(template);
33 33
34 - if (attrs.disabledEventTypes) {  
35 - var disabledEventTypes = attrs.disabledEventTypes.split(',');  
36 - scope.eventTypes = {};  
37 - for (var type in types.eventType) {  
38 - var eventType = types.eventType[type];  
39 - var enabled = true;  
40 - for (var i=0;i<disabledEventTypes.length;i++) {  
41 - if (eventType.value === disabledEventTypes[i]) {  
42 - enabled = false;  
43 - break;  
44 - }  
45 - }  
46 - if (enabled) {  
47 - scope.eventTypes[type] = eventType;  
48 - }  
49 - }  
50 - } else {  
51 - scope.eventTypes = angular.copy(types.eventType);  
52 - }  
53 -  
54 - if (attrs.debugEventTypes) {  
55 - var debugEventTypes = attrs.debugEventTypes.split(',');  
56 - for (i=0;i<debugEventTypes.length;i++) {  
57 - for (type in types.debugEventType) {  
58 - eventType = types.debugEventType[type];  
59 - if (eventType.value === debugEventTypes[i]) {  
60 - scope.eventTypes[type] = eventType;  
61 - }  
62 - }  
63 - }  
64 - }  
65 -  
66 - scope.eventType = attrs.defaultEventType; 34 + scope.eventType = types.edgeDownlinks.value;
67 35
68 var pageSize = 20; 36 var pageSize = 20;
69 var startTime = 0; 37 var startTime = 0;
@@ -131,12 +99,6 @@ export default function EdgeDownlinksDirective($compile, $templateCache, $rootSc @@ -131,12 +99,6 @@ export default function EdgeDownlinksDirective($compile, $templateCache, $rootSc
131 } 99 }
132 }); 100 });
133 101
134 - scope.$watch("eventType", function(newVal, prevVal) {  
135 - if (newVal && !angular.equals(newVal, prevVal)) {  
136 - scope.reload();  
137 - }  
138 - });  
139 -  
140 scope.$watch("timewindow", function(newVal, prevVal) { 102 scope.$watch("timewindow", function(newVal, prevVal) {
141 if (newVal && !angular.equals(newVal, prevVal)) { 103 if (newVal && !angular.equals(newVal, prevVal)) {
142 scope.reload(); 104 scope.reload();
@@ -34,7 +34,7 @@ @@ -34,7 +34,7 @@
34 <md-divider></md-divider> 34 <md-divider></md-divider>
35 <span translate layout-align="center center" 35 <span translate layout-align="center center"
36 style="margin-top: 25px;" 36 style="margin-top: 25px;"
37 - class="tb-prompt" ng-show="noData()">event.no-events-prompt</span> 37 + class="tb-prompt" ng-show="noData()">edge.no-downlinks-prompt</span>
38 <md-virtual-repeat-container ng-show="hasData()" flex md-top-index="topIndex" tb-scope-element="repeatContainer"> 38 <md-virtual-repeat-container ng-show="hasData()" flex md-top-index="topIndex" tb-scope-element="repeatContainer">
39 <md-list-item md-virtual-repeat="event in theEvents" md-on-demand flex ng-style="hasScroll() ? {'margin-right':'-15px'} : {}"> 39 <md-list-item md-virtual-repeat="event in theEvents" md-on-demand flex ng-style="hasScroll() ? {'margin-right':'-15px'} : {}">
40 <md-list class="tb-row" flex layout="row" layout-align="start center" tb-event-row event-type="{{eventType}}" event="{{event}}"> 40 <md-list class="tb-row" flex layout="row" layout-align="start center" tb-event-row event-type="{{eventType}}" event="{{event}}">
@@ -19,7 +19,7 @@ import eventHeaderLcEventTemplate from './event-header-lc-event.tpl.html'; @@ -19,7 +19,7 @@ import eventHeaderLcEventTemplate from './event-header-lc-event.tpl.html';
19 import eventHeaderStatsTemplate from './event-header-stats.tpl.html'; 19 import eventHeaderStatsTemplate from './event-header-stats.tpl.html';
20 import eventHeaderErrorTemplate from './event-header-error.tpl.html'; 20 import eventHeaderErrorTemplate from './event-header-error.tpl.html';
21 import eventHeaderDebugRuleNodeTemplate from './event-header-debug-rulenode.tpl.html'; 21 import eventHeaderDebugRuleNodeTemplate from './event-header-debug-rulenode.tpl.html';
22 -import eventHeaderEdgeEventTemplate from './event-header-edge-event.tpl.html' 22 +import edgeDownlinksHeaderTemplate from './event-header-edge-event.tpl.html'
23 23
24 /* eslint-enable import/no-unresolved, import/default */ 24 /* eslint-enable import/no-unresolved, import/default */
25 25
@@ -47,7 +47,7 @@ export default function EventHeaderDirective($compile, $templateCache, types) { @@ -47,7 +47,7 @@ export default function EventHeaderDirective($compile, $templateCache, types) {
47 template = eventHeaderDebugRuleNodeTemplate; 47 template = eventHeaderDebugRuleNodeTemplate;
48 break; 48 break;
49 case types.edgeDownlinks.value: 49 case types.edgeDownlinks.value:
50 - template = eventHeaderEdgeEventTemplate; 50 + template = edgeDownlinksHeaderTemplate;
51 break; 51 break;
52 } 52 }
53 return $templateCache.get(template); 53 return $templateCache.get(template);
@@ -21,7 +21,7 @@ import eventRowLcEventTemplate from './event-row-lc-event.tpl.html'; @@ -21,7 +21,7 @@ import eventRowLcEventTemplate from './event-row-lc-event.tpl.html';
21 import eventRowStatsTemplate from './event-row-stats.tpl.html'; 21 import eventRowStatsTemplate from './event-row-stats.tpl.html';
22 import eventRowErrorTemplate from './event-row-error.tpl.html'; 22 import eventRowErrorTemplate from './event-row-error.tpl.html';
23 import eventRowDebugRuleNodeTemplate from './event-row-debug-rulenode.tpl.html'; 23 import eventRowDebugRuleNodeTemplate from './event-row-debug-rulenode.tpl.html';
24 -import eventRowEdgeEventTemplate from './event-row-edge-event.tpl.html'; 24 +import edgeDownlinlsRowTemplate from './event-row-edge-event.tpl.html';
25 25
26 /* eslint-enable import/no-unresolved, import/default */ 26 /* eslint-enable import/no-unresolved, import/default */
27 27
@@ -50,7 +50,7 @@ export default function EventRowDirective($compile, $templateCache, $mdDialog, $ @@ -50,7 +50,7 @@ export default function EventRowDirective($compile, $templateCache, $mdDialog, $
50 template = eventRowDebugRuleNodeTemplate; 50 template = eventRowDebugRuleNodeTemplate;
51 break; 51 break;
52 case types.edgeDownlinks.value: 52 case types.edgeDownlinks.value:
53 - template = eventRowEdgeEventTemplate; 53 + template = edgeDownlinlsRowTemplate;
54 break; 54 break;
55 } 55 }
56 return $templateCache.get(template); 56 return $templateCache.get(template);
@@ -85,76 +85,8 @@ md-list.tb-event-table { @@ -85,76 +85,8 @@ md-list.tb-event-table {
85 } 85 }
86 } 86 }
87 87
88 -md-list.tb-edge-downlinks-table {  
89 - padding: 0;  
90 -  
91 - md-list-item {  
92 - padding: 0;  
93 - }  
94 -  
95 - .tb-row {  
96 - height: 48px;  
97 - padding: 0;  
98 - overflow: hidden;  
99 -  
100 - .tb-cell {  
101 - text-overflow: ellipsis;  
102 -  
103 - &.tb-scroll {  
104 - overflow-x: auto;  
105 - overflow-y: hidden;  
106 - white-space: nowrap;  
107 - }  
108 -  
109 - &.tb-nowrap {  
110 - white-space: nowrap;  
111 - }  
112 - }  
113 - }  
114 -  
115 - .tb-row:hover {  
116 - background-color: #eee;  
117 - }  
118 -  
119 - .tb-header:hover {  
120 - background: none;  
121 - }  
122 -  
123 - .tb-header {  
124 - .tb-cell {  
125 - font-size: 12px;  
126 - font-weight: 700;  
127 - color: rgba(0, 0, 0, .54);  
128 - white-space: nowrap;  
129 - background: none;  
130 - }  
131 - }  
132 -  
133 - .tb-cell {  
134 - &:first-child {  
135 - padding-left: 14px;  
136 - }  
137 -  
138 - &:last-child {  
139 - padding-right: 14px;  
140 - }  
141 - padding: 0 6px;  
142 - margin: auto 0;  
143 - overflow: hidden;  
144 - font-size: 13px;  
145 - color: rgba(0, 0, 0, .87);  
146 - text-align: left;  
147 - vertical-align: middle;  
148 -  
149 - .md-button {  
150 - padding: 0;  
151 - margin: 0;  
152 - }  
153 - }  
154 -  
155 - .tb-cell.tb-number {  
156 - text-align: right;  
157 - } 88 +.tb-edge-downlinks-table {
  89 + @extend .tb-event-table;
158 } 90 }
159 91
160 #tb-event-content { 92 #tb-event-content {