export function getAlertKeyValue()

in src/push/monitor.ts [357:389]


export function getAlertKeyValue(
  key: 'status' | 'tls',
  config: MonitorConfig,
  alertConfig?: AlertConfig
): { enabled: boolean } {
  const value = config.alert;
  if (value?.[key]?.enabled !== undefined) {
    return {
      enabled: value[key].enabled,
    };
  }

  if (value?.[`${key}.enabled`] !== undefined) {
    const val = value?.[`${key}.enabled`];
    delete value?.[`${key}.enabled`];
    if (Object.keys(value).length === 0) {
      delete config.alert;
    }
    return {
      enabled: val,
    };
  }
  const rootKey = `alert.${key}.enabled`;
  if (config[rootKey] !== undefined) {
    const enabled = config[rootKey];
    delete config[rootKey];
    return {
      enabled,
    };
  }

  return alertConfig?.[key];
}