• Preparing search index...
  • The search index is not available
Kenmei To Anilist
  • Kenmei To Anilist
  • MangaImportUtils
  • mergeMangaData

Function mergeMangaData

  • mergeMangaData(
        previousManga: NormalizedMangaItem[],
        normalizedManga: NormalizedMangaItem[],
    ): { mergedManga: NormalizedMangaItem[]; results: ImportResults }

    Merge new manga with existing manga data

    Parameters

    • previousManga: NormalizedMangaItem[]
    • normalizedManga: NormalizedMangaItem[]

    Returns { mergedManga: NormalizedMangaItem[]; results: ImportResults }

    • Defined in src/utils/manga-import-utils.ts:65

Settings

Member Visibility
  • src
    • api
      • anilist
        • client.ts
          • Cache
          • request
          • getOAuthUrl
          • getAccessToken
          • searchManga
          • advancedSearchManga
          • clearSearchCache
          • getMangaByIds
          • getUserMangaList
          • MediaListEntry
          • MediaListCollection
          • __test__
        • mutations.ts
          • generateUpdateMangaEntryMutation
          • DELETE_MANGA_ENTRY
        • queries.ts
          • GET_VIEWER
          • GET_USER_MANGA_LIST
          • SEARCH_MANGA
          • ADVANCED_SEARCH_MANGA
          • GET_MANGA_BY_ID
          • GET_MANGA_BY_IDS
        • sync-service.ts
          • SyncResult
          • SyncProgress
          • SyncReport
          • updateMangaEntry
          • deleteMangaEntry
          • syncMangaBatch
          • retryFailedUpdates
        • types.ts
          • MediaListStatus
          • AniListManga
          • AniListMediaEntry
          • AniListUser
          • GraphQLError
          • AniListResponse
          • PageInfo
          • SearchResult
          • MangaMatch
          • MangaSearchResponse
          • MatchStatus
          • MangaMatchResult
          • UserMediaEntry
          • UserMediaList
      • kenmei
        • data-processor.ts
          • ProcessOptions
          • DEFAULT_PROCESS_OPTIONS
          • processKenmeiExport
          • prepareEntryForSync
          • extractReadingStats
          • processMangaInBatches
          • filterMangaEntries
        • matcher.ts
          • calculateSimilarity
          • scoreMatch
          • findBestMatch
        • parser.ts
          • parseKenmeiExport
          • processKenmeiMangaBatches
          • parseKenmeiCsvExport
          • extractMangaMetadata
        • status-mapper.ts
          • mapKenmeiToAniListStatus
          • mapAniListToKenmeiStatus
          • createCustomStatusMapping
          • getAllPossibleStatusMappings
        • types.ts
          • KenmeiStatus
          • KenmeiManga
          • KenmeiExport
          • KenmeiParseOptions
          • DEFAULT_PARSE_OPTIONS
          • MangaMatch
          • STATUS_MAPPING
          • StatusMappingConfig
          • ValidationError
          • ProcessingResult
      • manga-sources
        • comick
          • client.ts
            • ComickClient
            • comickClient
            • searchComickManga
            • getComickMangaDetail
            • extractAniListIdFromComick
            • searchComickAndGetAniListManga
            • clearComickCache
            • getComickCacheStatus
          • types.ts
            • ComickManga
            • ComickSearchResponse
            • ComickMangaDetail
            • ComickMatchResult
            • EnhancedAniListManga
        • mangadex
          • client.ts
            • MangaDexClient
            • mangaDexClient
            • searchMangaDexManga
            • getMangaDexMangaDetail
            • extractAniListIdFromMangaDex
            • searchMangaDexAndGetAniListManga
            • clearMangaDexCache
            • getMangaDexCacheStatus
          • types.ts
            • MangaDexManga
            • MangaDexAttributes
            • MangaDexSearchResponse
            • MangaDexMangaDetail
        • base-client.ts
          • BaseMangaSourceClient
        • config.ts
          • COMICK_CONFIG
          • MANGADEX_CONFIG
          • MANGA_SOURCE_CONFIGS
          • getMangaSourceConfig
          • getAvailableMangaSources
          • isMangaSourceAvailable
        • index.ts
          • MangaSource
          • BaseMangaEntry
          • BaseMangaDetail
          • BaseMangaSearchResponse
          • MangaSourceConfig
          • MangaMatchResult
          • EnhancedAniListManga
          • MangaSourceCacheEntry
          • MangaSourceCache
          • BaseMangaSourceClient
          • mangaSourceRegistry
          • MangaSourceRegistry
          • COMICK_CONFIG
          • MANGADEX_CONFIG
          • MANGA_SOURCE_CONFIGS
          • getMangaSourceConfig
          • getAvailableMangaSources
          • isMangaSourceAvailable
          • ComickManga
          • ComickMangaDetail
          • comickClient
          • MangaDexManga
          • MangaDexMangaDetail
          • mangaDexClient
          • getMangaSourceClient
          • searchMangaSource
          • getMangaSourceDetail
        • registry.ts
          • MangaSourceRegistry
          • mangaSourceRegistry
        • types.ts
          • MangaSource
          • BaseMangaEntry
          • BaseMangaDetail
          • BaseMangaSearchResponse
          • MangaSourceConfig
          • MangaMatchResult
          • EnhancedAniListManga
          • MangaSourceCacheEntry
          • MangaSourceCache
      • matching
        • manga-search-service.ts
          • setManualMatchingPause
          • isManualMatchingPaused
          • SearchServiceConfig
          • DEFAULT_SEARCH_CONFIG
          • searchMangaByTitle
          • matchSingleManga
          • batchMatchManga
          • preloadCommonManga
          • clearMangaCache
          • getCacheStats
          • cacheDebugger
          • getBatchedMangaIds
          • clearCacheForTitles
        • match-engine.ts
          • MatchEngineConfig
          • DEFAULT_MATCH_CONFIG
          • normalizeString
          • calculateSimilarity
          • scoreMatch
          • findBestMatches
          • processBatchMatches
    • components
      • debug
        • DebugMenu.tsx
          • DebugMenuProps
          • DebugMenu
        • LogViewer.tsx
          • LogViewer
        • StateInspector.tsx
          • StateInspector
        • StorageDebugger.tsx
          • StorageDebugger
      • import
        • DataTable.tsx
          • DataTableProps
          • DataTable
        • FileDropZone.tsx
          • FileDropZoneProps
          • FileDropZone
        • ImportPageContent.tsx
          • ImportSuccessProps
          • ImportSuccessContent
          • FileUploadProps
          • FileUploadContent
          • FileReadyProps
          • FileReadyContent
        • ImportSummary.tsx
          • ImportSummaryProps
          • StatusCount
          • ImportSummary
      • layout
        • BackgroundMatchingIndicator.tsx
          • BackgroundMatchingIndicator
        • BaseLayout.tsx
          • baseLayout
        • Footer.tsx
          • Footer
        • Header.tsx
          • Header
      • matching
        • MangaMatchingPanel
          • AlternativeSearchSettingsCard.tsx
            • AlternativeSearchSettingsCardProps
            • AlternativeSearchSettingsCard
          • ConfidenceBadge.tsx
            • ConfidenceBadgeProps
            • ConfidenceBadge
            • confidenceBadge
          • MatchActions.tsx
            • MatchActionsProps
            • MatchActions
            • matchActions
          • MatchBulkActions.tsx
            • MatchBulkActionsProps
            • MatchBulkActions
          • MatchCard.tsx
            • MatchCardProps
            • matchCard
          • MatchFilterControls.tsx
            • StatusFiltersState
            • MatchFilterStats
            • MatchFilterControlsProps
            • MatchFilterControls
          • MatchStatisticsCard.tsx
            • MatchStatisticsCardProps
            • MatchStatisticsCard
          • createKenmeiUrl.ts
            • createKenmeiUrl
        • AuthRequiredCard.tsx
          • Props
          • authRequiredCard
        • CacheClearingNotification.tsx
          • CacheClearingNotificationProps
          • CacheClearingNotification
        • DuplicateWarning.tsx
          • DuplicateEntry
          • DuplicateWarningProps
          • DuplicateWarning
        • InitializationCard.tsx
          • Props
          • initializationCard
        • LoadingView.tsx
          • LoadingViewProps
          • LoadingView
        • MangaMatchingPanel.tsx
          • MangaMatchingPanelProps
          • MangaMatchingPanel
        • MangaSearchPanel.tsx
          • MangaSearchPanelProps
          • MangaSearchPanel
        • MatchingErrorToast.tsx
          • Props
          • matchingErrorToast
        • MatchingPageHeader.tsx
          • Props
          • MatchingPageHeader
          • matchingPageHeader
        • MatchingPanel.tsx
          • Props
          • MatchingPanel
          • matchingPanel
        • MatchingProgress.tsx
          • MatchingProgressProps
          • MatchingProgressPanel
        • MatchingResume.tsx
          • Props
          • MatchingResume
          • matchingResume
        • NoResultsView.tsx
          • Props
          • noResultsView
        • RematchOptions.tsx
          • RematchOptionsProps
          • RematchOptions
        • ResumeNotification.tsx
          • ResumeNotificationProps
          • ResumeNotification
        • SearchModal.tsx
          • SearchModalProps
          • SearchModal
        • detectDuplicateAniListIds.ts
          • detectDuplicateAniListIds
      • settings
        • SettingsHero.tsx
          • SettingsHeroProps
          • SettingsHero
        • SettingsSectionShell.tsx
          • SettingsSectionShellProps
          • SettingsSectionShell
      • sync
        • ChangesSummary.tsx
          • ChangesSummaryProps
          • ChangesSummary
        • ErrorStateDisplay.tsx
          • ErrorStateDisplayProps
          • ErrorStateDisplay
        • LoadingStateDisplay.tsx
          • LoadingStateDisplayProps
          • LoadingStateDisplay
        • SyncConfigurationPanel.tsx
          • SyncConfigurationPanelProps
          • SyncConfigurationPanel
        • SyncManager.tsx
          • SyncManagerProps
          • SyncManager
        • SyncResultsView.tsx
          • SyncResultsViewProps
          • SyncResultsView
        • ViewControls.tsx
          • ViewControlsProps
          • ViewControls
        • animations.ts
          • pageVariants
          • cardVariants
          • staggerContainerVariants
          • viewModeTransition
          • fadeVariants
        • entry-preparation.ts
          • prepareAllEntriesToSync
          • hasChanges
        • filtering.ts
          • filterMangaMatches
          • sortMangaMatches
        • library-handlers.ts
          • LibraryRefreshParams
          • handleLibraryRefresh
          • refreshUserLibrary
        • sync-utils.ts
          • KenmeiMangaData
          • UserEntryData
          • SyncChangesResult
          • getEffectiveStatus
          • calculateSyncChanges
        • types.ts
          • ViewMode
          • DisplayMode
          • SortField
          • SortDirection
          • SortOption
          • FilterOptions
      • DragWindowRegion.tsx
        • DragWindowRegionProps
        • dragWindowRegion
        • WindowButtons
      • RateLimitCountdown.tsx
        • RateLimitCountdownProps
        • RateLimitCountdown
      • ToggleTheme.tsx
        • toggleTheme
    • config
      • anilist.ts
        • DEFAULT_AUTH_PORT
        • DEFAULT_ANILIST_CONFIG
        • AUTH_STORAGE_CONFIG
        • ANILIST_API_ENDPOINTS
        • RATE_LIMIT_CONFIG
    • contexts
      • AuthContext.tsx
        • AuthProviderProps
        • AuthProvider
      • AuthContextDefinition.ts
        • AuthContext
      • DebugContext.tsx
        • DebugContextType
        • StateInspectorRegistration
        • StateInspectorSourceSnapshot
        • StateInspectorHandle
        • DebugProvider
        • useDebug
      • RateLimitContext.tsx
        • RateLimitState
        • RateLimitContextType
        • RateLimitProvider
        • useRateLimit
      • ThemeContext.tsx
        • ThemeContextType
        • ThemeProvider
        • useTheme
    • helpers
      • ipc
        • api
          • api-context.ts
            • exposeApiContext
          • api-listeners.ts
            • setupAniListAPI
        • auth
          • auth-context.ts
            • exposeAuthContext
          • auth-listeners.ts
            • addAuthEventListeners
        • store
          • store-context.ts
            • exposeStoreContext
          • store-setup.ts
            • setupStoreIPC
        • theme
          • theme-channels.ts
            • THEME_MODE_CURRENT_CHANNEL
            • THEME_MODE_TOGGLE_CHANNEL
            • THEME_MODE_DARK_CHANNEL
            • THEME_MODE_LIGHT_CHANNEL
            • THEME_MODE_SYSTEM_CHANNEL
          • theme-context.ts
            • exposeThemeContext
          • theme-listeners.ts
            • addThemeEventListeners
        • window
          • window-channels.ts
            • WIN_MINIMIZE_CHANNEL
            • WIN_MAXIMIZE_CHANNEL
            • WIN_CLOSE_CHANNEL
          • window-context.ts
            • exposeWindowContext
          • window-listeners.ts
            • addWindowEventListeners
        • context-exposer.ts
          • contextExposer
        • listeners-register.ts
          • listenersRegister
      • theme_helpers.ts
        • THEME_KEY
        • ThemePreferences
        • getCurrentTheme
        • setTheme
        • enableDarkMode
        • enableLightMode
        • applySystemTheme
        • toggleTheme
        • syncThemeWithLocal
        • updateDocumentTheme
      • window_helpers.ts
        • minimizeWindow
        • maximizeWindow
        • closeWindow
    • hooks
      • useAuth.ts
        • useAuth
      • useMatchHandlers.ts
        • useMatchHandlers
      • useMatchingProcess.ts
        • useMatchingProcess
      • usePendingManga.ts
        • usePendingManga
      • useSynchronization.ts
        • SynchronizationState
        • SynchronizationActions
        • useSynchronization
      • useTimeEstimate.ts
        • useTimeEstimate
    • pages
      • HomePage.tsx
        • HomePage
      • ImportPage.tsx
        • ImportPage
      • MatchingPage.tsx
        • MatchingPage
      • SettingsPage.tsx
        • SettingsPage
      • SyncPage.tsx
        • SyncPage
        • syncPage
    • routes
      • __root.tsx
        • RootRoute
        • Root
      • router.tsx
        • history
        • router
      • routes.tsx
        • HomeRoute
        • ImportRoute
        • ReviewRoute
        • SyncRoute
        • SettingsRoute
        • rootTree
    • types
      • api.ts
        • TokenExchangeParams
      • auth.ts
        • AuthState
        • APICredentials
        • TokenExchangeResponse
        • ViewerResponse
        • AuthContextType
      • images.d.ts
        • value
      • kenmei.ts
        • KenmeiMangaItem
        • KenmeiData
      • matching.ts
        • ApiError
        • MatchingProgress
        • TimeEstimate
        • StatusFilterOptions
        • MatchHandlersProps
      • theme-mode.ts
        • ThemeMode
    • utils
      • app-version.ts
        • getAppVersion
        • getAppVersionElectron
        • getFormattedAppVersion
        • UpdateInfo
        • checkForUpdates
        • compareVersions
        • AppVersionStatus
        • GitHubRelease
        • getAppVersionStatus
      • enhanced-similarity.ts
        • SimilarityConfig
        • DEFAULT_SIMILARITY_CONFIG
        • enhancedNormalize
        • extractMeaningfulWords
        • calculateEnhancedSimilarity
      • errorHandling.ts
        • ErrorType
        • AppError
        • createError
        • handleNetworkError
        • fetchWithTimeout
        • showErrorNotification
        • safeAsync
      • export-utils.ts
        • exportSyncErrorLog
        • exportSyncReport
        • saveSyncReportToHistory
      • getPathname.ts
        • getPathname
      • logging.ts
        • LogLevel
        • LogEntry
        • MAX_LOG_ENTRIES
        • LogCollector
        • logCollector
        • installConsoleInterceptor
        • SerializableLogEntry
        • serialiseLogEntries
      • manga-import-utils.ts
        • NormalizedMangaItem
        • ImportResults
        • normalizeMangaItems
        • getPreviousMangaData
        • mergeMangaData
        • validateMangaData
        • updateMatchResults
        • clearPendingMangaStorage
      • manga-status-utils.tsx
        • StatusCounts
        • getStatusCounts
        • getStatusColor
        • getStatusIcon
        • formatStatusLabel
      • mediaListHelpers.ts
        • formatMediaListStatus
        • getStatusColor
        • getStatusBadgeColor
        • formatScore
        • isOnUserList
      • storage.ts
        • KenmeiManga
        • KenmeiData
        • ImportStats
        • AnilistMatch
        • MatchResult
        • storageCache
        • storage
        • STORAGE_KEYS
        • CURRENT_CACHE_VERSION
        • SyncConfig
        • DEFAULT_SYNC_CONFIG
        • MatchConfig
        • DEFAULT_MATCH_CONFIG
        • saveKenmeiData
        • getKenmeiData
        • getImportStats
        • getStatusCountsFromData
        • getSavedMatchResults
        • mergeMatchResults
        • saveSyncConfig
        • getSyncConfig
        • saveMatchConfig
        • getMatchConfig
        • IgnoredDuplicate
        • addIgnoredDuplicate
        • getIgnoredDuplicates
        • removeIgnoredDuplicate
        • clearIgnoredDuplicates
        • isAniListIdIgnored
      • tailwind.ts
        • cn
      • timeUtils.ts
        • formatTimeRemaining
    • App.tsx
      • app
    • main.ts
      • createWindow
      • installExtensions
    • preload.ts
      • renderer.ts
        • types.d.ts
          • MAIN_WINDOW_VITE_DEV_SERVER_URL
          • MAIN_WINDOW_VITE_NAME
          • ThemeModeContext
          • ElectronWindow
          • MatchingProcessState

          Generated using TypeDoc v0.27.9