• Create a custom status mapping from user preferences.

    Parameters

    • preferences: Record<string, string>

      User preferences for status mapping.

    Returns Partial<StatusMappingConfig>

    Custom status mapping configuration.

    export function createCustomStatusMapping(
    preferences: Record<string, string>,
    ): Partial<StatusMappingConfig> {
    const customMapping: Partial<StatusMappingConfig> = {};

    // Validate and map preferences to status mapping
    Object.entries(preferences).forEach(([key, value]) => {
    // Validate Kenmei status
    const kenmeiStatus = validateKenmeiStatus(key);
    if (!kenmeiStatus) return;

    // Validate AniList status
    const anilistStatus = validateAniListStatus(value);
    if (!anilistStatus) return;

    // Add to custom mapping
    customMapping[kenmeiStatus] = anilistStatus;
    });

    return customMapping;
    }