plugins {
    id("com.android.library")
    id("AndroidXDocsPlugin")
}

def docsForOptionalProject(path) {
    Project project = findProject(path)
    if (project != null) {
        dependencies {
            docs(project)
        }
    }
}

android {
    namespace "androidx.docs.tipoftree"
}

// The dependency list should only be changed when a new project is registered or a project's source is removed. Samples should never be added.

dependencies {
    // If there is not at least one samples dependency, DocsImplPlugin breaks. b/332262321
    samples("androidx.window:window-samples:1.3.0")

    docsForOptionalProject(":xr:xr")
    docsForOptionalProject(":xr:xr-material3-adaptive")
    docs(project(":activity:activity"))
    docs(project(":activity:activity-compose"))
    docs(project(":activity:activity-ktx"))
    // ads-identifier is deprecated
    kmpDocs(project(":annotation:annotation"))
    docs(project(":annotation:annotation-experimental"))
    docs(project(":appcompat:appcompat"))
    docs(project(":appcompat:appcompat-resources"))
    docs(project(":appsearch:appsearch"))
    docs(project(":appsearch:appsearch-builtin-types"))
    docs(project(":appsearch:appsearch-ktx"))
    docs(project(":appsearch:appsearch-platform-storage"))
    docs(project(":appsearch:appsearch-play-services-storage"))
    docs(project(":appsearch:appsearch-local-storage"))
    docs(project(":arch:core:core-common"))
    docs(project(":arch:core:core-runtime"))
    docs(project(":arch:core:core-testing"))
    docs(project(":asynclayoutinflater:asynclayoutinflater"))
    docs(project(":asynclayoutinflater:asynclayoutinflater-appcompat"))
    docs(project(":autofill:autofill"))
    docs(project(":benchmark:benchmark-common"))
    docs(project(":benchmark:benchmark-junit4"))
    docs(project(":benchmark:benchmark-macro"))
    docs(project(":benchmark:benchmark-macro-junit4"))
    docs(project(":biometric:biometric"))
    docs(project(":bluetooth:bluetooth"))
    docs(project(":bluetooth:bluetooth-testing"))
    docs(project(":browser:browser"))
    docs(project(":camera:camera-camera2"))
    docs(project(":camera:camera-compose"))
    docs(project(":camera:camera-core"))
    docs(project(":camera:camera-effects"))
    docs(project(":camera:camera-effects-still-portrait"))
    docs(project(":camera:camera-extensions"))
    stubs(fileTree(dir: "../camera/camera-extensions-stub", include: ["camera-extensions-stub.jar"]))
    docs(project(":camera:camera-feature-combination-query"))
    docs(project(":camera:camera-feature-combination-query-play-services"))
    docs(project(":camera:camera-lifecycle"))
    docs(project(":camera:camera-media3-effect"))
    docs(project(":camera:camera-mlkit-vision"))
    docs(project(":camera:camera-testing"))
    docs(project(":camera:camera-video"))
    docs(project(":camera:camera-view"))
    docs(project(":camera:viewfinder:viewfinder-compose"))
    docs(project(":camera:viewfinder:viewfinder-core"))
    docs(project(":camera:viewfinder:viewfinder-view"))
    docs(project(":car:app:app"))
    docs(project(":car:app:app-automotive"))
    docs(project(":car:app:app-projected"))
    docs(project(":car:app:app-testing"))
    docs(project(":cardview:cardview"))
    kmpDocs(project(":collection:collection"))
    docs(project(":collection:collection-ktx"))
    kmpDocs(project(":compose:animation:animation"))
    kmpDocs(project(":compose:animation:animation-core"))
    kmpDocs(project(":compose:animation:animation-graphics"))
    kmpDocs(project(":compose:foundation:foundation"))
    kmpDocs(project(":compose:foundation:foundation-layout"))
    kmpDocs(project(":compose:material3:adaptive:adaptive"))
    kmpDocs(project(":compose:material3:adaptive:adaptive-layout"))
    kmpDocs(project(":compose:material3:adaptive:adaptive-navigation"))
    kmpDocs(project(":compose:material3:material3"))
    kmpDocs(project(":compose:material3:material3-adaptive-navigation-suite"))
    kmpDocs(project(":compose:material3:material3-common"))
    kmpDocs(project(":compose:material3:material3-window-size-class"))
    kmpDocs(project(":compose:material:material"))
    kmpDocs(project(":compose:material:material-ripple"))
    docs(project(":compose:material:material-navigation"))
    kmpDocs(project(":compose:runtime:runtime"))
    docs(project(":compose:runtime:runtime-livedata"))
    docs(project(":compose:runtime:runtime-rxjava2"))
    docs(project(":compose:runtime:runtime-rxjava3"))
    kmpDocs(project(":compose:runtime:runtime-saveable"))
    docs(project(":compose:runtime:runtime-tracing"))
    kmpDocs(project(":compose:ui:ui"))
    kmpDocs(project(":compose:ui:ui-geometry"))
    kmpDocs(project(":compose:ui:ui-graphics"))
    kmpDocs(project(":compose:ui:ui-test"))
    kmpDocs(project(":compose:ui:ui-test-junit4"))
    kmpDocs(project(":compose:ui:ui-text"))
    docs(project(":compose:ui:ui-text-google-fonts"))
    kmpDocs(project(":compose:ui:ui-tooling"))
    kmpDocs(project(":compose:ui:ui-tooling-data"))
    kmpDocs(project(":compose:ui:ui-tooling-preview"))
    kmpDocs(project(":compose:ui:ui-unit"))
    kmpDocs(project(":compose:ui:ui-util"))
    docs(project(":compose:ui:ui-viewbinding"))
    docs(project(":concurrent:concurrent-futures"))
    docs(project(":concurrent:concurrent-futures-ktx"))
    docs(project(":constraintlayout:constraintlayout"))
    kmpDocs(project(":constraintlayout:constraintlayout-compose"))
    docs(project(":constraintlayout:constraintlayout-core"))
    docs(project(":contentpager:contentpager"))
    docs(project(":coordinatorlayout:coordinatorlayout"))
    docs(project(":core:core"))
    docs(project(":core:core-animation"))
    docs(project(":core:core-animation-testing"))
    docs(project(":core:core-appdigest"))
    docs(project(":core:core-backported-fixes"))
    docs(project(":core:core-google-shortcuts"))
    docs(project(":core:haptics:haptics"))
    docs(project(":core:core-i18n"))
    docs(project(":core:core-ktx"))
    docs(project(":core:core-location-altitude"))
    docs(project(":core:core-performance"))
    docs(project(":core:core-performance-play-services"))
    docs(project(":core:core-performance-testing"))
    docs(project(":core:core-remoteviews"))
    docs(project(":core:core-role"))
    docs(project(":core:core-splashscreen"))
    docs(project(":core:core-telecom"))
    docs(project(":core:core-testing"))
    docs(project(":core:core-viewtree"))
    docs(project(":core:uwb:uwb"))
    docs(project(":core:uwb:uwb-rxjava3"))
    docs(project(":credentials:credentials"))
    docs(project(":credentials:credentials-fido"))
    docs(project(":credentials:credentials-play-services-auth"))
    docs(project(":credentials:credentials-e2ee"))
    docs(project(":credentials:credentials-play-services-e2ee"))
    docs(project(":credentials:registry:registry-digitalcredentials-mdoc"))
    docs(project(":credentials:registry:registry-digitalcredentials-preview"))
    docs(project(":credentials:registry:registry-provider"))
    docs(project(":credentials:registry:registry-provider-play-services"))
    docs(project(":cursoradapter:cursoradapter"))
    docs(project(":customview:customview"))
    docs(project(":customview:customview-poolingcontainer"))
    kmpDocs(project(":datastore:datastore"))
    kmpDocs(project(":datastore:datastore-core"))
    kmpDocs(project(":datastore:datastore-core-okio"))
    docs(project(":datastore:datastore-guava"))
    kmpDocs(project(":datastore:datastore-preferences"))
    kmpDocs(project(":datastore:datastore-preferences-core"))
    docs(project(":datastore:datastore-preferences-rxjava2"))
    docs(project(":datastore:datastore-preferences-rxjava3"))
    docs(project(":datastore:datastore-rxjava2"))
    docs(project(":datastore:datastore-rxjava3"))
    docs(project(":documentfile:documentfile"))
    docs(project(":draganddrop:draganddrop"))
    docs(project(":drawerlayout:drawerlayout"))
    docs(project(":dynamicanimation:dynamicanimation"))
    docs(project(":dynamicanimation:dynamicanimation-ktx"))
    docs(project(":emoji:emoji"))
    docs(project(":emoji:emoji-appcompat"))
    docs(project(":emoji:emoji-bundled"))
    docs(project(":emoji2:emoji2"))
    docs(project(":emoji2:emoji2-bundled"))
    docs(project(":emoji2:emoji2-emojipicker"))
    docs(project(":emoji2:emoji2-views"))
    docs(project(":emoji2:emoji2-views-helper"))
    docs(project(":enterprise:enterprise-feedback"))
    docs(project(":enterprise:enterprise-feedback-testing"))
    docs(project(":exifinterface:exifinterface"))
    docs(project(":fragment:fragment"))
    docs(project(":fragment:fragment-compose"))
    docs(project(":fragment:fragment-ktx"))
    docs(project(":fragment:fragment-testing"))
    docs(project(":glance:glance"))
    docs(project(":glance:glance-appwidget"))
    docs(project(":glance:glance-appwidget-multiprocess"))
    docs(project(":glance:glance-appwidget-testing"))
    docs(project(":glance:glance-appwidget-preview"))
    docs(project(":glance:glance-material"))
    docs(project(":glance:glance-material3"))
    docs(project(":glance:glance-preview"))
    docs(project(":glance:glance-testing"))
    docs(project(":glance:glance-template"))
    docs(project(":glance:glance-wear-tiles"))
    docs(project(":graphics:filters:filters"))
    docs(project(":graphics:graphics-core"))
    docs(project(":graphics:graphics-path"))
    kmpDocs(project(":graphics:graphics-shapes"))
    docs(project(":gridlayout:gridlayout"))
    docs(project(":health:connect:connect-client"))
    docs(project(":health:connect:connect-testing"))
    docs(project(":health:health-services-client"))
    docs(project(":heifwriter:heifwriter"))
    docs(project(":hilt:hilt-common"))
    docs(project(":hilt:hilt-navigation"))
    docs(project(":hilt:hilt-navigation-compose"))
    docs(project(":hilt:hilt-navigation-fragment"))
    docs(project(":hilt:hilt-work"))
    kmpDocs(project(":ink:ink-authoring"))
    kmpDocs(project(":ink:ink-brush"))
    kmpDocs(project(":ink:ink-geometry"))
    kmpDocs(project(":ink:ink-nativeloader"))
    kmpDocs(project(":ink:ink-strokes"))
    kmpDocs(project(":ink:ink-rendering"))
    docs(project(":input:input-motionprediction"))
    docs(project(":interpolator:interpolator"))
    docs(project(":javascriptengine:javascriptengine"))
    docs(project(":leanback:leanback"))
    docs(project(":leanback:leanback-grid"))
    docs(project(":leanback:leanback-paging"))
    docs(project(":leanback:leanback-preference"))
    docs(project(":leanback:leanback-tab"))
    kmpDocs(project(":lifecycle:lifecycle-common"))
    docs(project(":lifecycle:lifecycle-common-java8"))
    docs(project(":lifecycle:lifecycle-extensions"))
    docs(project(":lifecycle:lifecycle-livedata"))
    docs(project(":lifecycle:lifecycle-livedata-core"))
    docs(project(":lifecycle:lifecycle-livedata-core-ktx"))
    docs(project(":lifecycle:lifecycle-livedata-ktx"))
    docs(project(":lifecycle:lifecycle-process"))
    docs(project(":lifecycle:lifecycle-reactivestreams"))
    docs(project(":lifecycle:lifecycle-reactivestreams-ktx"))
    kmpDocs(project(":lifecycle:lifecycle-runtime"))
    kmpDocs(project(":lifecycle:lifecycle-runtime-compose"))
    kmpDocs(project(":lifecycle:lifecycle-runtime-ktx"))
    kmpDocs(project(":lifecycle:lifecycle-runtime-testing"))
    docs(project(":lifecycle:lifecycle-service"))
    kmpDocs(project(":lifecycle:lifecycle-viewmodel"))
    kmpDocs(project(":lifecycle:lifecycle-viewmodel-compose"))
    docs(project(":lifecycle:lifecycle-viewmodel-ktx"))
    kmpDocs(project(":lifecycle:lifecycle-viewmodel-savedstate"))
    kmpDocs(project(":lifecycle:lifecycle-viewmodel-testing"))
    docs(project(":loader:loader"))
    docs(project(":loader:loader-ktx"))
    // localbroadcastmanager is deprecated
    docs(project(":media:media"))
    // androidx.media3 is not hosted in androidx
    docs(project(":mediarouter:mediarouter"))
    docs(project(":mediarouter:mediarouter-testing"))
    docs(project(":metrics:metrics-performance"))
    docs(project(":navigation:navigation-common"))
    docs(project(":navigation:navigation-common-ktx"))
    docs(project(":navigation:navigation-compose"))
    docs(project(":navigation:navigation-dynamic-features-fragment"))
    docs(project(":navigation:navigation-dynamic-features-runtime"))
    docs(project(":navigation:navigation-fragment"))
    docs(project(":navigation:navigation-fragment-compose"))
    docs(project(":navigation:navigation-fragment-ktx"))
    docs(project(":navigation:navigation-runtime"))
    docs(project(":navigation:navigation-runtime-ktx"))
    docs(project(":navigation:navigation-testing"))
    docs(project(":navigation:navigation-ui"))
    docs(project(":navigation:navigation-ui-ktx"))
    kmpDocs(project(":paging:paging-common"))
    docs(project(":paging:paging-common-ktx"))
    kmpDocs(project(":paging:paging-compose"))
    docs(project(":paging:paging-guava"))
    docs(project(":paging:paging-runtime"))
    docs(project(":paging:paging-runtime-ktx"))
    docs(project(":paging:paging-rxjava2"))
    docs(project(":paging:paging-rxjava2-ktx"))
    docs(project(":paging:paging-rxjava3"))
    kmpDocs(project(":paging:paging-testing"))
    docs(project(":palette:palette"))
    docs(project(":palette:palette-ktx"))
    docs(project(":pdf:pdf-document-service"))
    docs(project(":pdf:pdf-viewer"))
    docs(project(":pdf:pdf-viewer-fragment"))
    docs(project(":percentlayout:percentlayout"))
    docs(project(":preference:preference"))
    docs(project(":preference:preference-ktx"))
    docs(project(":print:print"))
    docs(project(":privacysandbox:activity:activity-client"))
    docs(project(":privacysandbox:activity:activity-core"))
    docs(project(":privacysandbox:activity:activity-provider"))
    docs(project(":privacysandbox:ads:ads-adservices"))
    docs(project(":privacysandbox:ads:ads-adservices-java"))
    docs(project(":privacysandbox:sdkruntime:sdkruntime-client"))
    docs(project(":privacysandbox:sdkruntime:sdkruntime-core"))
    docs(project(":privacysandbox:sdkruntime:sdkruntime-provider"))
    docs(project(":privacysandbox:tools:tools"))
    docs(project(":privacysandbox:ui:ui-client"))
    docs(project(":privacysandbox:ui:ui-core"))
    docs(project(":privacysandbox:ui:ui-provider"))
    docs(project(":profileinstaller:profileinstaller"))
    docs(project(":recommendation:recommendation"))
    docs(project(":recyclerview:recyclerview"))
    docs(project(":recyclerview:recyclerview-selection"))
    docs(project(":remotecallback:remotecallback"))
    docs(project(":resourceinspection:resourceinspection-annotation"))
    kmpDocs(project(":room:room-common"))
    docs(project(":room:room-guava"))
    docs(project(":room:room-ktx"))
    kmpDocs(project(":room:room-migration"))
    kmpDocs(project(":room:room-paging"))
    docs(project(":room:room-paging-guava"))
    docs(project(":room:room-paging-rxjava2"))
    docs(project(":room:room-paging-rxjava3"))
    kmpDocs(project(":room:room-runtime"))
    docs(project(":room:room-rxjava2"))
    docs(project(":room:room-rxjava3"))
    kmpDocs(project(":room:room-testing"))
    docs(project(":safeparcel:safeparcel"))
    kmpDocs(project(":savedstate:savedstate"))
    docs(project(":savedstate:savedstate-ktx"))
    docs(project(":security:security-app-authenticator"))
    docs(project(":security:security-app-authenticator-testing"))
    docs(project(":security:security-biometric"))
    docs(project(":security:security-crypto"))
    docs(project(":security:security-crypto-ktx"))
    docs(project(":security:security-identity-credential"))
    docs(project(":security:security-mls"))
    docs(project(":security:security-state"))
    docs(project(":sharetarget:sharetarget"))
    docs(project(":slice:slice-builders"))
    docs(project(":slice:slice-builders-ktx"))
    docs(project(":slice:slice-core"))
    docs(project(":slice:slice-remotecallback"))
    docs(project(":slice:slice-view"))
    docs(project(":slidingpanelayout:slidingpanelayout"))
    kmpDocs(project(":sqlite:sqlite"))
    kmpDocs(project(":sqlite:sqlite-bundled"))
    kmpDocs(project(":sqlite:sqlite-framework"))
    docs(project(":sqlite:sqlite-ktx"))
    docs(project(":startup:startup-runtime"))
    docs(project(":swiperefreshlayout:swiperefreshlayout"))
    // androidx.test is not hosted in androidx
    docs(project(":test:ext:junit-gtest"))
    docs(project(":test:uiautomator:uiautomator"))
    // androidx.textclassifier is not hosted in androidx
    docs(project(":tracing:tracing"))
    docs(project(":tracing:tracing-ktx"))
    docs(project(":tracing:tracing-perfetto"))
    docs(project(":tracing:tracing-perfetto-handshake"))
    docs(project(":transition:transition"))
    docs(project(":transition:transition-ktx"))
    docs(project(":tv:tv-foundation"))
    docs(project(":tv:tv-material"))
    docs(project(":tvprovider:tvprovider"))
    docs(project(":vectordrawable:vectordrawable"))
    docs(project(":vectordrawable:vectordrawable-animated"))
    docs(project(":vectordrawable:vectordrawable-seekable"))
    docs(project(":versionedparcelable:versionedparcelable"))
    docs(project(":viewpager2:viewpager2"))
    docs(project(":viewpager:viewpager"))
    docs(project(":wear:compose:compose-foundation"))
    docs(project(":wear:compose:compose-material"))
    docs(project(":wear:compose:compose-material-core"))
    docs(project(":wear:compose:compose-material3"))
    docs(project(":wear:compose:compose-navigation"))
    docs(project(":wear:compose:compose-ui-tooling"))
    docs(project(":wear:protolayout:protolayout"))
    docs(project(":wear:protolayout:protolayout-expression"))
    docs(project(":wear:protolayout:protolayout-expression-pipeline"))
    docs(project(":wear:protolayout:protolayout-material"))
    docs(project(":wear:protolayout:protolayout-material-core"))
    docs(project(":wear:protolayout:protolayout-material3"))
    docs(project(":wear:protolayout:protolayout-renderer"))
    docs(project(":wear:protolayout:protolayout-testing"))
    docs(project(":wear:tiles:tiles"))
    docs(project(":wear:tiles:tiles-material"))
    docs(project(":wear:tiles:tiles-renderer"))
    docs(project(":wear:tiles:tiles-testing"))
    docs(project(":wear:tiles:tiles-tooling"))
    docs(project(":wear:tiles:tiles-tooling-preview"))
    docs(project(":wear:watchface:watchface"))
    docs(project(":wear:watchface:watchface-client"))
    docs(project(":wear:watchface:watchface-client-guava"))
    docs(project(":wear:watchface:watchface-complications"))
    docs(project(":wear:watchface:watchface-complications-data"))
    docs(project(":wear:watchface:watchface-complications-data-source"))
    docs(project(":wear:watchface:watchface-complications-data-source-ktx"))
    docs(project(":wear:watchface:watchface-complications-rendering"))
    docs(project(":wear:watchface:watchface-data"))
    docs(project(":wear:watchface:watchface-editor"))
    docs(project(":wear:watchface:watchface-editor-guava"))
    docs(project(":wear:watchface:watchface-guava"))
    docs(project(":wear:watchface:watchface-style"))
    docs(project(":wear:wear"))
    docs(project(":wear:wear-core"))
    stubs(fileTree(dir: "../wear/wear_stubs/", include: ["com.google.android.wearable-stubs.jar"]))
    docs(project(":wear:wear-input"))
    docs(project(":wear:wear-input-testing"))
    docs(project(":wear:wear-ongoing"))
    docs(project(":wear:wear-phone-interactions"))
    docs(project(":wear:wear-remote-interactions"))
    docs(project(":wear:wear-tooling-preview"))
    docs(project(":webkit:webkit"))
    docs(project(":window:window"))
    stubs(fileTree(dir: "../window/stubs/", include: ["window-sidecar-release.aar"]))
    docs(project(":window:extensions:core:core"))
    docs(project(":window:extensions:extensions"))
    kmpDocs(project(":window:window-core"))
    docs(project(":window:window-java"))
    docs(project(":window:window-rxjava2"))
    docs(project(":window:window-rxjava3"))
    docs(project(":window:window-testing"))
    docs(project(":work:work-gcm"))
    docs(project(":work:work-multiprocess"))
    docs(project(":work:work-runtime"))
    docs(project(":work:work-runtime-ktx"))
    docs(project(":work:work-rxjava2"))
    docs(project(":work:work-rxjava3"))
    docs(project(":work:work-testing"))
}
afterEvaluate {
  tasks["docs"].doFirst {
    println("docs-tip-of-tree:docs starting")
  }
  tasks["docs"].doLast {
    println("docs-tip-of-tree:docs completing")
  }
}
