import { formatToDateTime } from '@jnpf/utils';

interface WatermarkUserInfo {
  mobilePhone?: null | string;
  userAccount?: null | string;
  userName?: null | string;
}

export function isGlobalWatermarkEnabled(value: unknown): boolean {
  return Number(value) === 1;
}

export function getWatermarkIdentity(userInfo: WatermarkUserInfo): string {
  return [userInfo.userName, userInfo.mobilePhone].filter(Boolean).join(' ') || userInfo.userAccount || '';
}

export function getWatermarkContent(userInfo: WatermarkUserInfo, now: Date = new Date()): string {
  return `${getWatermarkIdentity(userInfo)}\n${formatToDateTime(now)}`;
}
