68 lines
1.9 KiB
TypeScript
68 lines
1.9 KiB
TypeScript
|
|
import type {
|
||
|
|
DockerContainerInfo,
|
||
|
|
DockerImageInfo,
|
||
|
|
ListeningPortInfo,
|
||
|
|
SystemdUnitInfo,
|
||
|
|
SystemProcessInfo,
|
||
|
|
TmuxSessionInfo,
|
||
|
|
} from './types';
|
||
|
|
|
||
|
|
export function systemProcessInfoEqual(a: SystemProcessInfo, b: SystemProcessInfo): boolean {
|
||
|
|
return a.pid === b.pid
|
||
|
|
&& a.ppid === b.ppid
|
||
|
|
&& a.user === b.user
|
||
|
|
&& a.stat === b.stat
|
||
|
|
&& a.cpuPercent === b.cpuPercent
|
||
|
|
&& a.memPercent === b.memPercent
|
||
|
|
&& a.rssKb === b.rssKb
|
||
|
|
&& a.vszKb === b.vszKb
|
||
|
|
&& a.elapsed === b.elapsed
|
||
|
|
&& a.command === b.command;
|
||
|
|
}
|
||
|
|
|
||
|
|
export function tmuxSessionInfoEqual(a: TmuxSessionInfo, b: TmuxSessionInfo): boolean {
|
||
|
|
return a.name === b.name
|
||
|
|
&& a.windows === b.windows
|
||
|
|
&& a.attached === b.attached
|
||
|
|
&& a.created === b.created
|
||
|
|
&& a.activity === b.activity
|
||
|
|
&& a.group === b.group;
|
||
|
|
}
|
||
|
|
|
||
|
|
export function dockerContainerInfoEqual(a: DockerContainerInfo, b: DockerContainerInfo): boolean {
|
||
|
|
return a.id === b.id
|
||
|
|
&& a.name === b.name
|
||
|
|
&& a.image === b.image
|
||
|
|
&& a.status === b.status
|
||
|
|
&& a.state === b.state
|
||
|
|
&& a.ports === b.ports
|
||
|
|
&& a.createdAt === b.createdAt;
|
||
|
|
}
|
||
|
|
|
||
|
|
export function dockerImageInfoEqual(a: DockerImageInfo, b: DockerImageInfo): boolean {
|
||
|
|
return a.id === b.id
|
||
|
|
&& a.repository === b.repository
|
||
|
|
&& a.tag === b.tag
|
||
|
|
&& a.name === b.name
|
||
|
|
&& a.size === b.size
|
||
|
|
&& a.createdAt === b.createdAt;
|
||
|
|
}
|
||
|
|
|
||
|
|
export function listeningPortInfoEqual(a: ListeningPortInfo, b: ListeningPortInfo): boolean {
|
||
|
|
return a.id === b.id
|
||
|
|
&& a.protocol === b.protocol
|
||
|
|
&& a.address === b.address
|
||
|
|
&& a.port === b.port
|
||
|
|
&& a.pid === b.pid
|
||
|
|
&& a.processName === b.processName;
|
||
|
|
}
|
||
|
|
|
||
|
|
export function systemdUnitInfoEqual(a: SystemdUnitInfo, b: SystemdUnitInfo): boolean {
|
||
|
|
return a.name === b.name
|
||
|
|
&& a.loadState === b.loadState
|
||
|
|
&& a.activeState === b.activeState
|
||
|
|
&& a.subState === b.subState
|
||
|
|
&& a.description === b.description
|
||
|
|
&& a.scope === b.scope;
|
||
|
|
}
|