The domain column showed a dash unless a hive had a dashboard but sorted and filtered on the domain alone, so rows looked mis-sorted. It now shows the domain as text when there is no dashboard to link. An empty hive roster says so. The schedule form's agent names reload with the schedules and the form says when that load failed.
22 lines
645 B
TypeScript
22 lines
645 B
TypeScript
// What the hives table shows in its domain column. The cell, the sort and the
|
|
// text filter all read this one value, so a row sorts and filters under the
|
|
// text it displays.
|
|
|
|
export interface HiveDomainFields {
|
|
domain: string | null;
|
|
dashboard: string | null;
|
|
}
|
|
|
|
export interface DomainCell {
|
|
/** The domain, or "" when the hive has none. */
|
|
text: string;
|
|
/** The dashboard URL, or null when the hive has no dashboard to open. */
|
|
href: string | null;
|
|
}
|
|
|
|
export function domainCell(h: HiveDomainFields): DomainCell {
|
|
return {
|
|
text: h.domain ?? "",
|
|
href: h.domain && h.dashboard ? `https://${h.dashboard}/` : null,
|
|
};
|
|
}
|