import { ADB2C_PREFIX, SEND_COMPLETE_PREFIX } from "./constants";

/**
 * ADB2Cのユーザー格納用のキーを生成する
 * @param externalId 外部ユーザーID
 * @returns キャッシュのキー
 */
export const makeADB2CKey = (externalId: string): string => {
  return `${ADB2C_PREFIX}${externalId}`;
};

/**
 * ADB2Cのユーザー格納用のキーから外部ユーザーIDを取得する
 * @param key キャッシュのキー
 * @returns 外部ユーザーID
 */
export const restoreAdB2cID = (key: string): string => {
  return key.replace(ADB2C_PREFIX, "");
};

/**
 * ライセンスアラートメール送信履歴格納用のキーを生成する
 * @param formattedDate 当日の日付（YYYY:MM:DD）
 * @param externalId 外部ユーザーID
 * @param mail メール種別
 * @returns キャッシュのキー
 */
export const makeSendCompKey = (
  formattedDate: string,
  externalId: string,
  mail: string
): string => {
  return `${SEND_COMPLETE_PREFIX}${formattedDate}${mail}${externalId}`;
};
