mirror of
https://github.com/embarklabs/embark.git
synced 2025-02-03 09:24:25 +00:00
fix(cockpit/firefox): fix bug with entities in firefox (ordering)
This commit is contained in:
parent
447f3eda06
commit
dddc9d0cf6
@ -88,7 +88,7 @@ const sorter = {
|
||||
},
|
||||
};
|
||||
|
||||
const filtrer = {
|
||||
const filters = {
|
||||
processes: function(process, index, self) {
|
||||
if (["embark", "blockchain"].indexOf(process.name) === -1) return false;
|
||||
return index === self.findIndex((t) => t.name === process.name);
|
||||
@ -151,8 +151,8 @@ function entities(state = entitiesDefaultState, action) {
|
||||
return {...state, files: action.files};
|
||||
}
|
||||
for (let name of Object.keys(state)) {
|
||||
let filter = filtrer[name] || (() => true);
|
||||
let sort = sorter[name] || (() => true);
|
||||
let filter = filters[name] || (() => true);
|
||||
let sort = sorter[name] || (() => 0);
|
||||
if (action[name] && action[name].length > 1) {
|
||||
return {...state, [name]: [...action[name], ...state[name]].sort(sort).filter(filter)};
|
||||
}
|
||||
@ -160,8 +160,8 @@ function entities(state = entitiesDefaultState, action) {
|
||||
let entity = action[name][0];
|
||||
let nested = Object.keys(state).reduce((acc, entityName) => {
|
||||
if (entity && entity[entityName] && entity[entityName].length > 0) {
|
||||
let entityFilter = filtrer[entityName] || (() => true);
|
||||
let entitySort = sorter[entityName] || (() => true);
|
||||
let entityFilter = filters[entityName] || (() => true);
|
||||
let entitySort = sorter[entityName] || (() => 0);
|
||||
acc[entityName] = [...entity[entityName], ...state[entityName]].sort(entitySort).filter(entityFilter);
|
||||
}
|
||||
return acc;
|
||||
|
@ -1,4 +1,5 @@
|
||||
let async = require('../utils/async_extend.js');
|
||||
const async = require('../utils/async_extend.js');
|
||||
const deepEqual = require('deep-equal');
|
||||
|
||||
class ServicesMonitor {
|
||||
constructor(options) {
|
||||
@ -32,9 +33,12 @@ ServicesMonitor.prototype.initCheck = function (checkName) {
|
||||
if (check && check.status === 'on' && obj.status === 'off') {
|
||||
self.events.emit('check:wentOffline:' + checkName);
|
||||
}
|
||||
self.checkState[checkName] = {name: obj.name, status: obj.status, serviceName: checkName};
|
||||
check.status = obj.status;
|
||||
self.events.emit("servicesState", self.checkState);
|
||||
const newState = {name: obj.name, status: obj.status, serviceName: checkName};
|
||||
if (!deepEqual(newState, self.checkState[checkName])) {
|
||||
self.checkState[checkName] = {name: obj.name, status: obj.status, serviceName: checkName};
|
||||
self.events.emit("servicesState", self.checkState);
|
||||
}
|
||||
});
|
||||
|
||||
if (check.interval !== 0) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user