Edge Downlinks new tab implementation
This commit is contained in:
parent
0a5796c9fd
commit
83c2758c7c
@ -1194,10 +1194,6 @@ export default angular.module('thingsboard.types', [])
|
|||||||
name: "permission.resource.display-type.ADMIN_SETTINGS"
|
name: "permission.resource.display-type.ADMIN_SETTINGS"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
edgeEvent: {
|
|
||||||
value: "EDGE_EVENT",
|
|
||||||
name: "edge.downlink"
|
|
||||||
},
|
|
||||||
edgeDownlinks: {
|
edgeDownlinks: {
|
||||||
value: "EDGE_DOWNLINKS",
|
value: "EDGE_DOWNLINKS",
|
||||||
name: "edge.downlinks"
|
name: "edge.downlinks"
|
||||||
|
|||||||
@ -25,45 +25,13 @@ import edgeDownlinksTableTemplate from './edge-downlinks-table.tpl.html';
|
|||||||
export default function EdgeDownlinksDirective($compile, $templateCache, $rootScope, $translate, types,
|
export default function EdgeDownlinksDirective($compile, $templateCache, $rootScope, $translate, types,
|
||||||
eventService, edgeService, attributeService) {
|
eventService, edgeService, attributeService) {
|
||||||
|
|
||||||
var linker = function (scope, element, attrs) {
|
var linker = function (scope, element) {
|
||||||
|
|
||||||
var template = $templateCache.get(edgeDownlinksTableTemplate);
|
var template = $templateCache.get(edgeDownlinksTableTemplate);
|
||||||
|
|
||||||
element.html(template);
|
element.html(template);
|
||||||
|
|
||||||
if (attrs.disabledEventTypes) {
|
scope.eventType = types.edgeDownlinks.value;
|
||||||
var disabledEventTypes = attrs.disabledEventTypes.split(',');
|
|
||||||
scope.eventTypes = {};
|
|
||||||
for (var type in types.eventType) {
|
|
||||||
var eventType = types.eventType[type];
|
|
||||||
var enabled = true;
|
|
||||||
for (var i=0;i<disabledEventTypes.length;i++) {
|
|
||||||
if (eventType.value === disabledEventTypes[i]) {
|
|
||||||
enabled = false;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (enabled) {
|
|
||||||
scope.eventTypes[type] = eventType;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
scope.eventTypes = angular.copy(types.eventType);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (attrs.debugEventTypes) {
|
|
||||||
var debugEventTypes = attrs.debugEventTypes.split(',');
|
|
||||||
for (i=0;i<debugEventTypes.length;i++) {
|
|
||||||
for (type in types.debugEventType) {
|
|
||||||
eventType = types.debugEventType[type];
|
|
||||||
if (eventType.value === debugEventTypes[i]) {
|
|
||||||
scope.eventTypes[type] = eventType;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
scope.eventType = attrs.defaultEventType;
|
|
||||||
|
|
||||||
var pageSize = 20;
|
var pageSize = 20;
|
||||||
var startTime = 0;
|
var startTime = 0;
|
||||||
@ -131,12 +99,6 @@ export default function EdgeDownlinksDirective($compile, $templateCache, $rootSc
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
scope.$watch("eventType", function(newVal, prevVal) {
|
|
||||||
if (newVal && !angular.equals(newVal, prevVal)) {
|
|
||||||
scope.reload();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
scope.$watch("timewindow", function(newVal, prevVal) {
|
scope.$watch("timewindow", function(newVal, prevVal) {
|
||||||
if (newVal && !angular.equals(newVal, prevVal)) {
|
if (newVal && !angular.equals(newVal, prevVal)) {
|
||||||
scope.reload();
|
scope.reload();
|
||||||
|
|||||||
@ -34,7 +34,7 @@
|
|||||||
<md-divider></md-divider>
|
<md-divider></md-divider>
|
||||||
<span translate layout-align="center center"
|
<span translate layout-align="center center"
|
||||||
style="margin-top: 25px;"
|
style="margin-top: 25px;"
|
||||||
class="tb-prompt" ng-show="noData()">event.no-events-prompt</span>
|
class="tb-prompt" ng-show="noData()">edge.no-downlinks-prompt</span>
|
||||||
<md-virtual-repeat-container ng-show="hasData()" flex md-top-index="topIndex" tb-scope-element="repeatContainer">
|
<md-virtual-repeat-container ng-show="hasData()" flex md-top-index="topIndex" tb-scope-element="repeatContainer">
|
||||||
<md-list-item md-virtual-repeat="event in theEvents" md-on-demand flex ng-style="hasScroll() ? {'margin-right':'-15px'} : {}">
|
<md-list-item md-virtual-repeat="event in theEvents" md-on-demand flex ng-style="hasScroll() ? {'margin-right':'-15px'} : {}">
|
||||||
<md-list class="tb-row" flex layout="row" layout-align="start center" tb-event-row event-type="{{eventType}}" event="{{event}}">
|
<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';
|
|||||||
import eventHeaderStatsTemplate from './event-header-stats.tpl.html';
|
import eventHeaderStatsTemplate from './event-header-stats.tpl.html';
|
||||||
import eventHeaderErrorTemplate from './event-header-error.tpl.html';
|
import eventHeaderErrorTemplate from './event-header-error.tpl.html';
|
||||||
import eventHeaderDebugRuleNodeTemplate from './event-header-debug-rulenode.tpl.html';
|
import eventHeaderDebugRuleNodeTemplate from './event-header-debug-rulenode.tpl.html';
|
||||||
import eventHeaderEdgeEventTemplate from './event-header-edge-event.tpl.html'
|
import edgeDownlinksHeaderTemplate from './event-header-edge-event.tpl.html'
|
||||||
|
|
||||||
/* eslint-enable import/no-unresolved, import/default */
|
/* eslint-enable import/no-unresolved, import/default */
|
||||||
|
|
||||||
@ -47,7 +47,7 @@ export default function EventHeaderDirective($compile, $templateCache, types) {
|
|||||||
template = eventHeaderDebugRuleNodeTemplate;
|
template = eventHeaderDebugRuleNodeTemplate;
|
||||||
break;
|
break;
|
||||||
case types.edgeDownlinks.value:
|
case types.edgeDownlinks.value:
|
||||||
template = eventHeaderEdgeEventTemplate;
|
template = edgeDownlinksHeaderTemplate;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
return $templateCache.get(template);
|
return $templateCache.get(template);
|
||||||
|
|||||||
@ -21,7 +21,7 @@ import eventRowLcEventTemplate from './event-row-lc-event.tpl.html';
|
|||||||
import eventRowStatsTemplate from './event-row-stats.tpl.html';
|
import eventRowStatsTemplate from './event-row-stats.tpl.html';
|
||||||
import eventRowErrorTemplate from './event-row-error.tpl.html';
|
import eventRowErrorTemplate from './event-row-error.tpl.html';
|
||||||
import eventRowDebugRuleNodeTemplate from './event-row-debug-rulenode.tpl.html';
|
import eventRowDebugRuleNodeTemplate from './event-row-debug-rulenode.tpl.html';
|
||||||
import eventRowEdgeEventTemplate from './event-row-edge-event.tpl.html';
|
import edgeDownlinlsRowTemplate from './event-row-edge-event.tpl.html';
|
||||||
|
|
||||||
/* eslint-enable import/no-unresolved, import/default */
|
/* eslint-enable import/no-unresolved, import/default */
|
||||||
|
|
||||||
@ -50,7 +50,7 @@ export default function EventRowDirective($compile, $templateCache, $mdDialog, $
|
|||||||
template = eventRowDebugRuleNodeTemplate;
|
template = eventRowDebugRuleNodeTemplate;
|
||||||
break;
|
break;
|
||||||
case types.edgeDownlinks.value:
|
case types.edgeDownlinks.value:
|
||||||
template = eventRowEdgeEventTemplate;
|
template = edgeDownlinlsRowTemplate;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
return $templateCache.get(template);
|
return $templateCache.get(template);
|
||||||
|
|||||||
@ -85,76 +85,8 @@ md-list.tb-event-table {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
md-list.tb-edge-downlinks-table {
|
.tb-edge-downlinks-table {
|
||||||
padding: 0;
|
@extend .tb-event-table;
|
||||||
|
|
||||||
md-list-item {
|
|
||||||
padding: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tb-row {
|
|
||||||
height: 48px;
|
|
||||||
padding: 0;
|
|
||||||
overflow: hidden;
|
|
||||||
|
|
||||||
.tb-cell {
|
|
||||||
text-overflow: ellipsis;
|
|
||||||
|
|
||||||
&.tb-scroll {
|
|
||||||
overflow-x: auto;
|
|
||||||
overflow-y: hidden;
|
|
||||||
white-space: nowrap;
|
|
||||||
}
|
|
||||||
|
|
||||||
&.tb-nowrap {
|
|
||||||
white-space: nowrap;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.tb-row:hover {
|
|
||||||
background-color: #eee;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tb-header:hover {
|
|
||||||
background: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tb-header {
|
|
||||||
.tb-cell {
|
|
||||||
font-size: 12px;
|
|
||||||
font-weight: 700;
|
|
||||||
color: rgba(0, 0, 0, .54);
|
|
||||||
white-space: nowrap;
|
|
||||||
background: none;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.tb-cell {
|
|
||||||
&:first-child {
|
|
||||||
padding-left: 14px;
|
|
||||||
}
|
|
||||||
|
|
||||||
&:last-child {
|
|
||||||
padding-right: 14px;
|
|
||||||
}
|
|
||||||
padding: 0 6px;
|
|
||||||
margin: auto 0;
|
|
||||||
overflow: hidden;
|
|
||||||
font-size: 13px;
|
|
||||||
color: rgba(0, 0, 0, .87);
|
|
||||||
text-align: left;
|
|
||||||
vertical-align: middle;
|
|
||||||
|
|
||||||
.md-button {
|
|
||||||
padding: 0;
|
|
||||||
margin: 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.tb-cell.tb-number {
|
|
||||||
text-align: right;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#tb-event-content {
|
#tb-event-content {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user