# Copyright 2016 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//third_party/WebKit/Source/core/core.gni")

blink_core_sources("loader") {
  sources = [
    "AllowedByNosniff.cpp",
    "AllowedByNosniff.h",
    "BaseFetchContext.cpp",
    "BaseFetchContext.h",
    "CookieJar.cpp",
    "CookieJar.h",
    "DocumentLoadTiming.cpp",
    "DocumentLoadTiming.h",
    "DocumentLoader.cpp",
    "DocumentLoader.h",
    "DocumentThreadableLoader.cpp",
    "DocumentThreadableLoader.h",
    "DocumentThreadableLoaderClient.h",
    "EmptyClients.cpp",
    "EmptyClients.h",
    "FormSubmission.cpp",
    "FormSubmission.h",
    "FrameFetchContext.cpp",
    "FrameFetchContext.h",
    "FrameLoadRequest.cpp",
    "FrameLoadRequest.h",
    "FrameLoader.cpp",
    "FrameLoader.h",
    "FrameLoaderStateMachine.cpp",
    "FrameLoaderStateMachine.h",
    "FrameLoaderTypes.h",
    "HistoryItem.cpp",
    "HistoryItem.h",
    "HttpEquiv.cpp",
    "HttpEquiv.h",
    "IdlenessDetector.cpp",
    "IdlenessDetector.h",
    "ImageLoader.cpp",
    "ImageLoader.h",
    "InteractiveDetector.cpp",
    "InteractiveDetector.h",
    "LinkLoader.cpp",
    "LinkLoader.h",
    "LinkLoaderClient.h",
    "MixedContentChecker.cpp",
    "MixedContentChecker.h",
    "NavigationPolicy.cpp",
    "NavigationPolicy.h",
    "NavigationScheduler.cpp",
    "NavigationScheduler.h",
    "NetworkHintsInterface.h",
    "PingLoader.cpp",
    "PingLoader.h",
    "PrerendererClient.cpp",
    "PrerendererClient.h",
    "ProgressTracker.cpp",
    "ProgressTracker.h",
    "ScheduledNavigation.cpp",
    "ScheduledNavigation.h",
    "SubresourceFilter.cpp",
    "SubresourceFilter.h",
    "SubresourceIntegrityHelper.cpp",
    "SubresourceIntegrityHelper.h",
    "TextResourceDecoderBuilder.cpp",
    "TextResourceDecoderBuilder.h",
    "TextTrackLoader.cpp",
    "TextTrackLoader.h",
    "ThreadableLoader.cpp",
    "ThreadableLoader.h",
    "ThreadableLoaderClient.h",
    "ThreadableLoadingContext.cpp",
    "ThreadableLoadingContext.h",
    "WorkerFetchContext.cpp",
    "WorkerFetchContext.h",
    "WorkerThreadableLoader.cpp",
    "WorkerThreadableLoader.h",
    "appcache/ApplicationCache.cpp",
    "appcache/ApplicationCache.h",
    "appcache/ApplicationCacheHost.cpp",
    "appcache/ApplicationCacheHost.h",
    "modulescript/DocumentModuleScriptFetcher.cpp",
    "modulescript/DocumentModuleScriptFetcher.h",
    "modulescript/ModuleScriptCreationParams.h",
    "modulescript/ModuleScriptFetchRequest.h",
    "modulescript/ModuleScriptFetcher.cpp",
    "modulescript/ModuleScriptFetcher.h",
    "modulescript/ModuleScriptLoader.cpp",
    "modulescript/ModuleScriptLoader.h",
    "modulescript/ModuleScriptLoaderClient.h",
    "modulescript/ModuleScriptLoaderRegistry.cpp",
    "modulescript/ModuleScriptLoaderRegistry.h",
    "modulescript/ModuleTreeLinker.cpp",
    "modulescript/ModuleTreeLinker.h",
    "modulescript/ModuleTreeLinkerRegistry.cpp",
    "modulescript/ModuleTreeLinkerRegistry.h",
    "modulescript/WorkletModuleScriptFetcher.cpp",
    "modulescript/WorkletModuleScriptFetcher.h",
    "private/FrameClientHintsPreferencesContext.cpp",
    "private/FrameClientHintsPreferencesContext.h",
    "private/PrerenderHandle.cpp",
    "private/PrerenderHandle.h",
    "resource/CSSStyleSheetResource.cpp",
    "resource/CSSStyleSheetResource.h",
    "resource/DocumentResource.cpp",
    "resource/DocumentResource.h",
    "resource/FontResource.cpp",
    "resource/FontResource.h",
    "resource/ImageResource.cpp",
    "resource/ImageResource.h",
    "resource/ImageResourceContent.cpp",
    "resource/ImageResourceContent.h",
    "resource/ImageResourceInfo.h",
    "resource/ImageResourceObserver.h",
    "resource/LinkFetchResource.cpp",
    "resource/LinkFetchResource.h",
    "resource/MultipartImageResourceParser.cpp",
    "resource/MultipartImageResourceParser.h",
    "resource/ScriptResource.cpp",
    "resource/ScriptResource.h",
    "resource/TextResource.cpp",
    "resource/TextResource.h",
    "resource/XSLStyleSheetResource.cpp",
    "resource/XSLStyleSheetResource.h",
  ]

  public_deps = [
    "//third_party/WebKit/Source/platform",
  ]
}
