# 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/bindings/bindings.gni")
import("//third_party/WebKit/Source/core/core.gni")

# The paths in this file are absolute since this file is imported and the
# file lists must be valid from multple "current directories".

bindings_core_output_dir = "$bindings_output_dir/core"

# Global constructors
core_global_constructors_original_interfaces = [
  "Window",
  "SharedWorkerGlobalScope",
  "DedicatedWorkerGlobalScope",
]

# The interfaces aren't technically files, but we can treat them as file names
# to get process_file_template to generate lists of IDL files corresponding
# to each interface.
core_global_constructors_generated_idl_files =
    process_file_template(
        core_global_constructors_original_interfaces,
        [ "$blink_core_output_dir/{{source_name_part}}CoreConstructors.idl" ])

core_idl_files = get_path_info([
                                 "animation/KeyframeEffect.idl",
                                 "animation/KeyframeEffectReadOnly.idl",
                                 "animation/AnimationEffectReadOnly.idl",
                                 "animation/AnimationEffectTiming.idl",
                                 "animation/AnimationEffectTimingReadOnly.idl",
                                 "animation/Animation.idl",
                                 "animation/AnimationTimeline.idl",
                                 "animation/DocumentTimeline.idl",
                                 "clipboard/DataTransfer.idl",
                                 "clipboard/DataTransferItemList.idl",
                                 "css/CSS.idl",
                                 "css/CSSConditionRule.idl",
                                 "css/CSSFontFaceRule.idl",
                                 "css/CSSGroupingRule.idl",
                                 "css/CSSImportRule.idl",
                                 "css/CSSKeyframeRule.idl",
                                 "css/CSSKeyframesRule.idl",
                                 "css/CSSMediaRule.idl",
                                 "css/CSSNamespaceRule.idl",
                                 "css/CSSPageRule.idl",
                                 "css/CSSRule.idl",
                                 "css/CSSRuleList.idl",
                                 "css/CSSStyleDeclaration.idl",
                                 "css/CSSStyleRule.idl",
                                 "css/CSSStyleSheet.idl",
                                 "css/CSSSupportsRule.idl",
                                 "css/CSSViewportRule.idl",
                                 "css/FontFace.idl",
                                 "css/FontFaceSet.idl",
                                 "css/FontFaceSetLoadEvent.idl",
                                 "css/MediaList.idl",
                                 "css/MediaQueryList.idl",
                                 "css/MediaQueryListEvent.idl",
                                 "css/StyleMedia.idl",
                                 "css/StyleSheet.idl",
                                 "css/StyleSheetList.idl",
                                 "css/WebKitCSSMatrix.idl",
                                 "css/cssom/CSSAngleValue.idl",
                                 "css/cssom/CSSCalcLength.idl",
                                 "css/cssom/CSSImageValue.idl",
                                 "css/cssom/CSSKeywordValue.idl",
                                 "css/cssom/CSSLengthValue.idl",
                                 "css/cssom/CSSMatrixTransformComponent.idl",
                                 "css/cssom/CSSNumberValue.idl",
                                 "css/cssom/CSSPerspective.idl",
                                 "css/cssom/CSSPositionValue.idl",
                                 "css/cssom/CSSResourceValue.idl",
                                 "css/cssom/CSSRotation.idl",
                                 "css/cssom/CSSScale.idl",
                                 "css/cssom/CSSSimpleLength.idl",
                                 "css/cssom/CSSSkew.idl",
                                 "css/cssom/CSSStyleValue.idl",
                                 "css/cssom/CSSTransformComponent.idl",
                                 "css/cssom/CSSTransformValue.idl",
                                 "css/cssom/CSSTranslation.idl",
                                 "css/cssom/CSSURLImageValue.idl",
                                 "css/cssom/CSSUnparsedValue.idl",
                                 "css/cssom/CSSVariableReferenceValue.idl",
                                 "css/cssom/StylePropertyMap.idl",
                                 "dom/ArrayBuffer.idl",
                                 "dom/ArrayBufferView.idl",
                                 "dom/Attr.idl",
                                 "dom/CDATASection.idl",
                                 "dom/CharacterData.idl",
                                 "dom/ClientRect.idl",
                                 "dom/ClientRectList.idl",
                                 "dom/Comment.idl",
                                 "dom/CompositorProxy.idl",
                                 "dom/DOMException.idl",
                                 "dom/DOMImplementation.idl",
                                 "dom/DOMMatrix.idl",
                                 "dom/DOMMatrixReadOnly.idl",
                                 "dom/DOMPoint.idl",
                                 "dom/DOMPointReadOnly.idl",
                                 "dom/DOMRect.idl",
                                 "dom/DOMRectReadOnly.idl",
                                 "dom/DOMStringList.idl",
                                 "dom/DOMStringMap.idl",
                                 "dom/DOMTokenList.idl",
                                 "dom/DataView.idl",
                                 "dom/Document.idl",
                                 "dom/DocumentFragment.idl",
                                 "dom/DocumentType.idl",
                                 "dom/Element.idl",
                                 "dom/Float32Array.idl",
                                 "dom/Float64Array.idl",
                                 "dom/FrameRequestCallback.idl",
                                 "dom/IdleDeadline.idl",
                                 "dom/IdleRequestCallback.idl",
                                 "dom/Int16Array.idl",
                                 "dom/Int32Array.idl",
                                 "dom/Int8Array.idl",
                                 "dom/IntersectionObserver.idl",
                                 "dom/IntersectionObserverEntry.idl",
                                 "dom/Iterator.idl",
                                 "dom/MessageChannel.idl",
                                 "dom/MessagePort.idl",
                                 "dom/MutationObserver.idl",
                                 "dom/MutationRecord.idl",
                                 "dom/NamedNodeMap.idl",
                                 "dom/Node.idl",
                                 "dom/NodeFilter.idl",
                                 "dom/NodeIterator.idl",
                                 "dom/NodeList.idl",
                                 "dom/ProcessingInstruction.idl",
                                 "dom/Range.idl",
                                 "dom/SharedArrayBuffer.idl",
                                 "dom/StaticRange.idl",
                                 "dom/StringCallback.idl",
                                 "dom/Text.idl",
                                 "dom/Touch.idl",
                                 "dom/TouchList.idl",
                                 "dom/TreeWalker.idl",
                                 "dom/Uint16Array.idl",
                                 "dom/Uint32Array.idl",
                                 "dom/Uint8Array.idl",
                                 "dom/Uint8ClampedArray.idl",
                                 "dom/URLSearchParams.idl",
                                 "dom/XMLDocument.idl",
                                 "dom/custom/CustomElementRegistry.idl",
                                 "dom/shadow/ShadowRoot.idl",
                                 "editing/Selection.idl",
                                 "events/AnimationEvent.idl",
                                 "events/AnimationPlaybackEvent.idl",
                                 "events/ApplicationCacheErrorEvent.idl",
                                 "events/BeforeUnloadEvent.idl",
                                 "events/ClipboardEvent.idl",
                                 "events/CompositionEvent.idl",
                                 "events/CustomEvent.idl",
                                 "events/DragEvent.idl",
                                 "events/ErrorEvent.idl",
                                 "events/Event.idl",
                                 "events/EventTarget.idl",
                                 "events/FocusEvent.idl",
                                 "events/HashChangeEvent.idl",
                                 "events/InputEvent.idl",
                                 "events/KeyboardEvent.idl",
                                 "events/MessageEvent.idl",
                                 "events/MouseEvent.idl",
                                 "events/MutationEvent.idl",
                                 "events/PageTransitionEvent.idl",
                                 "events/PointerEvent.idl",
                                 "events/PopStateEvent.idl",
                                 "events/ProgressEvent.idl",
                                 "events/PromiseRejectionEvent.idl",
                                 "events/RelatedEvent.idl",
                                 "events/ResourceProgressEvent.idl",
                                 "events/SecurityPolicyViolationEvent.idl",
                                 "events/TextEvent.idl",
                                 "events/TouchEvent.idl",
                                 "events/TransitionEvent.idl",
                                 "events/UIEvent.idl",
                                 "events/WheelEvent.idl",
                                 "fileapi/Blob.idl",
                                 "fileapi/File.idl",
                                 "fileapi/BlobCallback.idl",
                                 "fileapi/FileList.idl",
                                 "fileapi/FileReader.idl",
                                 "fileapi/FileReaderSync.idl",
                                 "frame/BarProp.idl",
                                 "frame/External.idl",
                                 "frame/History.idl",
                                 "frame/ImageBitmap.idl",
                                 "frame/Location.idl",
                                 "frame/VisualViewport.idl",
                                 "html/FormData.idl",
                                 "html/HTMLAllCollection.idl",
                                 "html/HTMLAnchorElement.idl",
                                 "html/HTMLAreaElement.idl",
                                 "html/HTMLAudioElement.idl",
                                 "html/HTMLBRElement.idl",
                                 "html/HTMLBaseElement.idl",
                                 "html/HTMLBodyElement.idl",
                                 "html/HTMLButtonElement.idl",
                                 "html/HTMLCollection.idl",
                                 "html/HTMLContentElement.idl",
                                 "html/HTMLDListElement.idl",
                                 "html/HTMLDataListElement.idl",
                                 "html/HTMLDetailsElement.idl",
                                 "html/HTMLDialogElement.idl",
                                 "html/HTMLDirectoryElement.idl",
                                 "html/HTMLDivElement.idl",
                                 "html/HTMLDocument.idl",
                                 "html/HTMLElement.idl",
                                 "html/HTMLEmbedElement.idl",
                                 "html/HTMLFieldSetElement.idl",
                                 "html/HTMLFontElement.idl",
                                 "html/HTMLFormControlsCollection.idl",
                                 "html/HTMLFormElement.idl",
                                 "html/HTMLFrameElement.idl",
                                 "html/HTMLFrameSetElement.idl",
                                 "html/HTMLHRElement.idl",
                                 "html/HTMLHeadElement.idl",
                                 "html/HTMLHeadingElement.idl",
                                 "html/HTMLHtmlElement.idl",
                                 "html/HTMLImageElement.idl",
                                 "html/HTMLKeygenElement.idl",
                                 "html/HTMLLIElement.idl",
                                 "html/HTMLLabelElement.idl",
                                 "html/HTMLLegendElement.idl",
                                 "html/HTMLLinkElement.idl",
                                 "html/HTMLMapElement.idl",
                                 "html/HTMLMarqueeElement.idl",
                                 "html/HTMLMenuElement.idl",
                                 "html/HTMLMenuItemElement.idl",
                                 "html/HTMLMetaElement.idl",
                                 "html/HTMLMeterElement.idl",
                                 "html/HTMLModElement.idl",
                                 "html/HTMLOListElement.idl",
                                 "html/HTMLObjectElement.idl",
                                 "html/HTMLOptGroupElement.idl",
                                 "html/HTMLOptionElement.idl",
                                 "html/HTMLOptionsCollection.idl",
                                 "html/HTMLOutputElement.idl",
                                 "html/HTMLParagraphElement.idl",
                                 "html/HTMLParamElement.idl",
                                 "html/HTMLPictureElement.idl",
                                 "html/HTMLPreElement.idl",
                                 "html/HTMLProgressElement.idl",
                                 "html/HTMLQuoteElement.idl",
                                 "html/HTMLScriptElement.idl",
                                 "html/HTMLSelectElement.idl",
                                 "html/HTMLShadowElement.idl",
                                 "html/HTMLSlotElement.idl",
                                 "html/HTMLSourceElement.idl",
                                 "html/HTMLSpanElement.idl",
                                 "html/HTMLStyleElement.idl",
                                 "html/HTMLTableCaptionElement.idl",
                                 "html/HTMLTableCellElement.idl",
                                 "html/HTMLTableColElement.idl",
                                 "html/HTMLTableElement.idl",
                                 "html/HTMLTableRowElement.idl",
                                 "html/HTMLTableSectionElement.idl",
                                 "html/HTMLTemplateElement.idl",
                                 "html/HTMLTextAreaElement.idl",
                                 "html/HTMLTitleElement.idl",
                                 "html/HTMLTrackElement.idl",
                                 "html/HTMLUListElement.idl",
                                 "html/HTMLUnknownElement.idl",
                                 "html/ImageData.idl",
                                 "html/MediaError.idl",
                                 "html/RadioNodeList.idl",
                                 "html/TextMetrics.idl",
                                 "html/TimeRanges.idl",
                                 "html/ValidityState.idl",
                                 "html/VoidCallback.idl",
                                 "html/track/AudioTrackList.idl",
                                 "html/track/TextTrack.idl",
                                 "html/track/TextTrackCue.idl",
                                 "html/track/TextTrackCueList.idl",
                                 "html/track/TextTrackList.idl",
                                 "html/track/TrackEvent.idl",
                                 "html/track/VideoTrackList.idl",
                                 "html/track/vtt/VTTCue.idl",
                                 "html/track/vtt/VTTRegion.idl",
                                 "html/track/vtt/VTTRegionList.idl",
                                 "input/InputDeviceCapabilities.idl",
                                 "inspector/InspectorOverlayHost.idl",
                                 "loader/appcache/ApplicationCache.idl",
                                 "observer/ResizeObserver.idl",
                                 "observer/ResizeObserverCallback.idl",
                                 "observer/ResizeObserverEntry.idl",
                                 "page/PagePopupController.idl",
                                 "page/scrolling/ScrollState.idl",
                                 "page/scrolling/ScrollStateCallback.idl",
                                 "streams/Stream.idl",
                                 "streams/UnderlyingSourceBase.idl",
                                 "svg/SVGAElement.idl",
                                 "svg/SVGAngle.idl",
                                 "svg/SVGAnimateElement.idl",
                                 "svg/SVGAnimateMotionElement.idl",
                                 "svg/SVGAnimateTransformElement.idl",
                                 "svg/SVGAnimatedAngle.idl",
                                 "svg/SVGAnimatedBoolean.idl",
                                 "svg/SVGAnimatedEnumeration.idl",
                                 "svg/SVGAnimatedInteger.idl",
                                 "svg/SVGAnimatedLength.idl",
                                 "svg/SVGAnimatedLengthList.idl",
                                 "svg/SVGAnimatedNumber.idl",
                                 "svg/SVGAnimatedNumberList.idl",
                                 "svg/SVGAnimatedPreserveAspectRatio.idl",
                                 "svg/SVGAnimatedRect.idl",
                                 "svg/SVGAnimatedString.idl",
                                 "svg/SVGAnimatedTransformList.idl",
                                 "svg/SVGAnimationElement.idl",
                                 "svg/SVGCircleElement.idl",
                                 "svg/SVGClipPathElement.idl",
                                 "svg/SVGComponentTransferFunctionElement.idl",
                                 "svg/SVGCursorElement.idl",
                                 "svg/SVGDefsElement.idl",
                                 "svg/SVGDescElement.idl",
                                 "svg/SVGDiscardElement.idl",
                                 "svg/SVGElement.idl",
                                 "svg/SVGEllipseElement.idl",
                                 "svg/SVGFEBlendElement.idl",
                                 "svg/SVGFEColorMatrixElement.idl",
                                 "svg/SVGFEComponentTransferElement.idl",
                                 "svg/SVGFECompositeElement.idl",
                                 "svg/SVGFEConvolveMatrixElement.idl",
                                 "svg/SVGFEDiffuseLightingElement.idl",
                                 "svg/SVGFEDisplacementMapElement.idl",
                                 "svg/SVGFEDistantLightElement.idl",
                                 "svg/SVGFEDropShadowElement.idl",
                                 "svg/SVGFEFloodElement.idl",
                                 "svg/SVGFEFuncAElement.idl",
                                 "svg/SVGFEFuncBElement.idl",
                                 "svg/SVGFEFuncGElement.idl",
                                 "svg/SVGFEFuncRElement.idl",
                                 "svg/SVGFEGaussianBlurElement.idl",
                                 "svg/SVGFEImageElement.idl",
                                 "svg/SVGFEMergeElement.idl",
                                 "svg/SVGFEMergeNodeElement.idl",
                                 "svg/SVGFEMorphologyElement.idl",
                                 "svg/SVGFEOffsetElement.idl",
                                 "svg/SVGFEPointLightElement.idl",
                                 "svg/SVGFESpecularLightingElement.idl",
                                 "svg/SVGFESpotLightElement.idl",
                                 "svg/SVGFETileElement.idl",
                                 "svg/SVGFETurbulenceElement.idl",
                                 "svg/SVGFilterElement.idl",
                                 "svg/SVGForeignObjectElement.idl",
                                 "svg/SVGGElement.idl",
                                 "svg/SVGGeometryElement.idl",
                                 "svg/SVGGradientElement.idl",
                                 "svg/SVGGraphicsElement.idl",
                                 "svg/SVGImageElement.idl",
                                 "svg/SVGLength.idl",
                                 "svg/SVGLengthList.idl",
                                 "svg/SVGLineElement.idl",
                                 "svg/SVGLinearGradientElement.idl",
                                 "svg/SVGMPathElement.idl",
                                 "svg/SVGMarkerElement.idl",
                                 "svg/SVGMaskElement.idl",
                                 "svg/SVGMatrix.idl",
                                 "svg/SVGMetadataElement.idl",
                                 "svg/SVGNumber.idl",
                                 "svg/SVGNumberList.idl",
                                 "svg/SVGPathElement.idl",
                                 "svg/SVGPatternElement.idl",
                                 "svg/SVGPoint.idl",
                                 "svg/SVGPointList.idl",
                                 "svg/SVGPolygonElement.idl",
                                 "svg/SVGPolylineElement.idl",
                                 "svg/SVGPreserveAspectRatio.idl",
                                 "svg/SVGRadialGradientElement.idl",
                                 "svg/SVGRect.idl",
                                 "svg/SVGRectElement.idl",
                                 "svg/SVGSVGElement.idl",
                                 "svg/SVGScriptElement.idl",
                                 "svg/SVGSetElement.idl",
                                 "svg/SVGStopElement.idl",
                                 "svg/SVGStringList.idl",
                                 "svg/SVGStyleElement.idl",
                                 "svg/SVGSwitchElement.idl",
                                 "svg/SVGSymbolElement.idl",
                                 "svg/SVGTSpanElement.idl",
                                 "svg/SVGTextContentElement.idl",
                                 "svg/SVGTextElement.idl",
                                 "svg/SVGTextPathElement.idl",
                                 "svg/SVGTextPositioningElement.idl",
                                 "svg/SVGTitleElement.idl",
                                 "svg/SVGTransform.idl",
                                 "svg/SVGTransformList.idl",
                                 "svg/SVGUnitTypes.idl",
                                 "svg/SVGUseElement.idl",
                                 "svg/SVGViewElement.idl",
                                 "svg/SVGViewSpec.idl",
                                 "timing/MemoryInfo.idl",
                                 "timing/Performance.idl",
                                 "timing/PerformanceEntry.idl",
                                 "timing/PerformanceLongTaskTiming.idl",
                                 "timing/PerformanceMark.idl",
                                 "timing/PerformanceMeasure.idl",
                                 "timing/PerformanceNavigation.idl",
                                 "timing/PerformanceObserver.idl",
                                 "timing/PerformanceObserverEntryList.idl",
                                 "timing/PerformanceResourceTiming.idl",
                                 "timing/PerformanceTiming.idl",
                                 "timing/WorkerPerformance.idl",
                                 "workers/SharedWorker.idl",
                                 "workers/Worker.idl",
                                 "workers/WorkerLocation.idl",
                                 "workers/Worklet.idl",
                                 "workers/WorkletGlobalScope.idl",
                                 "xml/DOMParser.idl",
                                 "xml/XMLSerializer.idl",
                                 "xml/XPathEvaluator.idl",
                                 "xml/XPathExpression.idl",
                                 "xml/XPathNSResolver.idl",
                                 "xml/XPathResult.idl",
                                 "xml/XSLTProcessor.idl",
                                 "xmlhttprequest/XMLHttpRequest.idl",
                                 "xmlhttprequest/XMLHttpRequestEventTarget.idl",
                                 "xmlhttprequest/XMLHttpRequestUpload.idl",
                               ],
                               "abspath")

# Files for which bindings (.cpp and .h files) will be generated.
core_idl_with_modules_dependency_files =
    get_path_info([
                    "clipboard/DataTransferItem.idl",
                    "dom/URL.idl",
                    "frame/Navigator.idl",
                    "frame/Screen.idl",
                    "frame/Window.idl",
                    "html/HTMLCanvasElement.idl",
                    "html/HTMLIFrameElement.idl",
                    "html/HTMLInputElement.idl",
                    "html/HTMLMediaElement.idl",
                    "html/HTMLVideoElement.idl",
                    "html/track/AudioTrack.idl",
                    "html/track/VideoTrack.idl",
                    "inspector/DevToolsHost.idl",
                    "offscreencanvas/OffscreenCanvas.idl",
                    "workers/DedicatedWorkerGlobalScope.idl",
                    "workers/SharedWorkerGlobalScope.idl",
                    "workers/WorkerGlobalScope.idl",
                    "workers/WorkerNavigator.idl",
                  ],
                  "abspath")

# 'partial interface', target (right side of) 'implements', and
# interfaces with static bindings (in bindings/core/v8/)
core_dependency_idl_files =
    get_path_info([
                    "animation/DocumentAnimation.idl",
                    "animation/ElementAnimation.idl",
                    "css/DocumentFontFaceSet.idl",
                    "css/PropertyRegistration.idl",
                    "css/cssom/WindowGetComputedStyle.idl",
                    "dom/ChildNode.idl",
                    "dom/DocumentFullscreen.idl",
                    "dom/DocumentOrShadowRoot.idl",
                    "dom/ElementFullscreen.idl",
                    "dom/GlobalEventHandlers.idl",
                    "dom/NonDocumentTypeChildNode.idl",
                    "dom/NonElementParentNode.idl",
                    "dom/ParentNode.idl",
                    "dom/URLUtilsReadOnly.idl",
                    "events/EventListener.idl",
                    "events/NavigatorEvents.idl",
                    "fileapi/URLFileAPI.idl",
                    "frame/NavigatorCPU.idl",
                    "frame/NavigatorID.idl",
                    "frame/NavigatorLanguage.idl",
                    "frame/NavigatorOnLine.idl",
                    "frame/NavigatorStorageUtils.idl",
                    "frame/WindowBase64.idl",
                    "frame/WindowEventHandlers.idl",
                    "frame/WindowTimers.idl",
                    "html/HTMLHyperlinkElementUtils.idl",
                    "imagebitmap/ImageBitmapFactories.idl",
                    "svg/SVGDocument.idl",
                    "svg/SVGFilterPrimitiveStandardAttributes.idl",
                    "svg/SVGFitToViewBox.idl",
                    "svg/SVGTests.idl",
                    "svg/SVGURIReference.idl",
                    "svg/SVGZoomAndPan.idl",
                    "timing/SharedWorkerPerformance.idl",
                    "timing/WindowPerformance.idl",
                    "timing/WorkerGlobalScopePerformance.idl",
                    "workers/AbstractWorker.idl",
                    "xml/DocumentXMLTreeViewer.idl",
                    "xml/DocumentXPathEvaluator.idl",
                  ],
                  "abspath")

# IDL files that only have typedefs/enums.
core_typedefs_enums_only_idl_files =
    get_path_info([
                    "dom/CommonDefinitions.idl",
                    "timing/DOMHighResTimeStamp.idl",
                    "timing/PerformanceEntryList.idl",
                  ],
                  "abspath")

core_dictionary_idl_files =
    get_path_info([
                    "animation/AnimationEffectTimingProperties.idl",
                    "animation/ComputedTimingProperties.idl",
                    "animation/KeyframeEffectOptions.idl",
                    "css/FontFaceDescriptors.idl",
                    "css/FontFaceSetLoadEventInit.idl",
                    "css/MediaQueryListEventInit.idl",
                    "css/PropertyDescriptor.idl",
                    "css/cssom/CSSCalcDictionary.idl",
                    "dom/DOMPointInit.idl",
                    "dom/DOMMatrixInit.idl",
                    "dom/ElementDefinitionOptions.idl",
                    "dom/ElementRegistrationOptions.idl",
                    "dom/GetRootNodeOptions.idl",
                    "dom/IdleRequestOptions.idl",
                    "dom/IntersectionObserverInit.idl",
                    "dom/MutationObserverInit.idl",
                    "dom/shadow/ShadowRootInit.idl",
                    "dom/TouchInit.idl",
                    "events/AddEventListenerOptions.idl",
                    "events/AnimationEventInit.idl",
                    "events/AnimationPlaybackEventInit.idl",
                    "events/ApplicationCacheErrorEventInit.idl",
                    "events/CompositionEventInit.idl",
                    "events/CustomEventInit.idl",
                    "events/DragEventInit.idl",
                    "events/ErrorEventInit.idl",
                    "events/EventInit.idl",
                    "events/EventListenerOptions.idl",
                    "events/EventModifierInit.idl",
                    "events/FocusEventInit.idl",
                    "events/HashChangeEventInit.idl",
                    "events/InputEventInit.idl",
                    "events/KeyboardEventInit.idl",
                    "events/MessageEventInit.idl",
                    "events/MouseEventInit.idl",
                    "events/PageTransitionEventInit.idl",
                    "events/PointerEventInit.idl",
                    "events/PopStateEventInit.idl",
                    "events/ProgressEventInit.idl",
                    "events/PromiseRejectionEventInit.idl",
                    "events/RelatedEventInit.idl",
                    "events/SecurityPolicyViolationEventInit.idl",
                    "events/TouchEventInit.idl",
                    "events/TransitionEventInit.idl",
                    "events/UIEventInit.idl",
                    "events/WheelEventInit.idl",
                    "fileapi/BlobPropertyBag.idl",
                    "fileapi/FilePropertyBag.idl",
                    "frame/ScrollOptions.idl",
                    "frame/ScrollToOptions.idl",
                    "html/AssignedNodesOptions.idl",
                    "html/canvas/CanvasContextCreationAttributes.idl",
                    "html/track/TrackEventInit.idl",
                    "imagebitmap/ImageBitmapOptions.idl",
                    "input/InputDeviceCapabilitiesInit.idl",
                    "offscreencanvas/ImageEncodeOptions.idl",
                    "page/scrolling/ScrollStateInit.idl",
                    "timing/PerformanceObserverInit.idl",
                  ],
                  "abspath")

core_testing_dictionary_idl_files =
    get_path_info([
                    "testing/InternalDictionary.idl",
                    "testing/InternalDictionaryDerived.idl",
                    "testing/InternalDictionaryDerivedDerived.idl",
                  ],
                  "abspath")

webcore_testing_idl_files =
    get_path_info([
                    "testing/CallbackFunctionTest.idl",
                    "testing/DeathAwareScriptWrappable.idl",
                    "testing/DictionaryTest.idl",
                    "testing/GCObservation.idl",
                    "testing/GarbageCollectedScriptWrappable.idl",
                    "testing/InternalSettings.idl",
                    "testing/LayerRect.idl",
                    "testing/LayerRectList.idl",
                    "testing/OriginTrialsTest.idl",
                    "testing/PrivateScriptTest.idl",
                    "testing/TypeConversions.idl",
                    "testing/UnionTypesTest.idl",
                    "testing/WorkerInternals.idl",
                  ],
                  "abspath")

# Testing IDL files that have partial interfaces in modules.
webcore_testing_idl_with_modules_dependency_files =
    get_path_info([ "testing/Internals.idl" ], "abspath")

webcore_testing_dependency_idl_files =
    get_path_info([
                    "testing/OriginTrialsTestPartial.idl",
                    "testing/PartialPrivateScriptTest.idl",
                  ],
                  "abspath")

generated_webcore_testing_idl_files =
    get_path_info(
        [
          "$blink_core_output_dir/testing/InternalRuntimeFlags.idl",
          "$blink_core_output_dir/testing/InternalSettingsGenerated.idl",
        ],
        "abspath")

core_definition_idl_files = core_dictionary_idl_files + core_idl_files +
                            core_idl_with_modules_dependency_files

core_testing_definition_idl_files =
    core_testing_dictionary_idl_files + webcore_testing_idl_files +
    webcore_testing_idl_with_modules_dependency_files

# Static IDL files
core_static_interface_idl_files =
    core_definition_idl_files + core_testing_definition_idl_files +
    core_typedefs_enums_only_idl_files

core_static_dependency_idl_files =
    core_dependency_idl_files + webcore_testing_dependency_idl_files

# Generated IDL files
core_generated_interface_idl_files = generated_webcore_testing_idl_files  # interfaces
core_generated_dependency_idl_files =
    core_global_constructors_generated_idl_files  # partial interfaces

# Dependency IDL files: don't generate individual bindings, but do process
# in IDL dependency computation, and count as build dependencies
# 'core_dependency_idl_files' is already used in Source/core, so avoid
# collision
core_all_dependency_idl_files =
    core_static_dependency_idl_files + core_generated_dependency_idl_files
