From 04f18a6fe8a30c66ada598a6503600e3d1afb8fd Mon Sep 17 00:00:00 2001 From: Vladyslav Date: Tue, 24 Dec 2019 13:30:02 +0200 Subject: [PATCH 1/3] Bugs entityFields dataKey (#2293) * Add support import label * Fix not load and show first dataKey --- ui/src/app/api/entity.service.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ui/src/app/api/entity.service.js b/ui/src/app/api/entity.service.js index 51336ee374..b71fcfe75e 100644 --- a/ui/src/app/api/entity.service.js +++ b/ui/src/app/api/entity.service.js @@ -850,7 +850,7 @@ function EntityService($http, $q, $filter, $translate, $log, userService, device function getEntityFieldKeys (entityType, searchText) { let entityFieldKeys = []; - let query = searchText.toLowerCase(); + let query = searchText ? searchText.toLowerCase() : ""; switch(entityType) { case types.entityType.user: entityFieldKeys.push(types.entityField.name.keyName); From 8d45f32d8d78b436f57de43f7bf2928724bf0399 Mon Sep 17 00:00:00 2001 From: Igor Kulikov Date: Tue, 24 Dec 2019 14:04:04 +0200 Subject: [PATCH 2/3] Improve entity state controller. --- .../states/entity-state-controller.js | 23 +++++++++++-------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/ui/src/app/dashboard/states/entity-state-controller.js b/ui/src/app/dashboard/states/entity-state-controller.js index a4c6cb7d7c..4762af0942 100644 --- a/ui/src/app/dashboard/states/entity-state-controller.js +++ b/ui/src/app/dashboard/states/entity-state-controller.js @@ -44,8 +44,7 @@ export default function EntityStateController($scope, $timeout, $location, $stat function openState(id, params, openRightLayout) { if (vm.states && vm.states[id]) { resolveEntity(params).then( - function success(entityName) { - params.entityName = entityName; + function success() { var newState = { id: id, params: params @@ -66,8 +65,7 @@ export default function EntityStateController($scope, $timeout, $location, $stat } if (vm.states && vm.states[id]) { resolveEntity(params).then( - function success(entityName) { - params.entityName = entityName; + function success() { var newState = { id: id, params: params @@ -183,16 +181,16 @@ export default function EntityStateController($scope, $timeout, $location, $stat params = params[params.targetEntityParamName]; } if (params && params.entityId && params.entityId.id && params.entityId.entityType) { - if (params.entityName && params.entityName.length) { - deferred.resolve(params.entityName); + if (isEntityResolved(params)) { + deferred.resolve(); } else { entityService.getEntity(params.entityId.entityType, params.entityId.id, { ignoreLoading: true, ignoreErrors: true }).then( function success(entity) { - var entityName = entity.name; - deferred.resolve(entityName); + params.entityName = entity.name; + deferred.resolve(); }, function fail() { deferred.reject(); @@ -200,11 +198,18 @@ export default function EntityStateController($scope, $timeout, $location, $stat ); } } else { - deferred.resolve(''); + deferred.resolve(); } return deferred.promise; } + function isEntityResolved(params) { + if (!params.entityName || !params.entityName.length) { + return false; + } + return true; + } + function parseState(stateBase64) { var result; if (stateBase64) { From 981f7443ce9f3f0ea1ff3d582dd1a693e78da2c6 Mon Sep 17 00:00:00 2001 From: Igor Kulikov Date: Tue, 24 Dec 2019 14:23:35 +0200 Subject: [PATCH 3/3] Improve resolveAliasFilter method --- ui/src/app/api/entity.service.js | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/ui/src/app/api/entity.service.js b/ui/src/app/api/entity.service.js index b71fcfe75e..7c656442f7 100644 --- a/ui/src/app/api/entity.service.js +++ b/ui/src/app/api/entity.service.js @@ -439,7 +439,7 @@ function EntityService($http, $q, $filter, $translate, $log, userService, device return entityId; } - function getStateEntityId(filter, stateParams) { + function getStateEntityInfo(filter, stateParams) { var entityId = null; if (stateParams) { if (filter.stateEntityParamName && filter.stateEntityParamName.length) { @@ -456,7 +456,9 @@ function EntityService($http, $q, $filter, $translate, $log, userService, device if (entityId) { entityId = resolveAliasEntityId(entityId.entityType, entityId.id); } - return entityId; + return { + entityId: entityId + }; } function resolveAliasFilter(filter, stateParams, maxItems, failOnEmpty) { @@ -468,7 +470,8 @@ function EntityService($http, $q, $filter, $translate, $log, userService, device if (filter.stateEntityParamName && filter.stateEntityParamName.length) { result.entityParamName = filter.stateEntityParamName; } - var stateEntityId = getStateEntityId(filter, stateParams); + var stateEntityInfo = getStateEntityInfo(filter, stateParams); + var stateEntityId = stateEntityInfo.entityId; switch (filter.type) { case types.aliasFilterType.singleEntity.value: var aliasEntityId = resolveAliasEntityId(filter.singleEntity.entityType, filter.singleEntity.id);