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"
}

dependencies {
    docsForOptionalProject(":xr:xr")
    docs(project(":activity:activity"))
    docs(project(":activity:activity-compose"))
    samples(project(":activity:activity-compose:activity-compose-samples"))
    docs(project(":activity:activity-ktx"))
    // ads-identifier is deprecated
    kmpDocs(project(":annotation:annotation"))
    docs(project(":annotation:annotation-experimental"))
    docs(project(":appactions:builtintypes:builtintypes"))
    samples(project(":appactions:builtintypes:builtintypes:builtintypes-samples"))
    docs(project(":appactions:interaction:interaction-capabilities-communication"))
    docs(project(":appactions:interaction:interaction-capabilities-core"))
    docs(project(":appactions:interaction:interaction-capabilities-productivity"))
    docs(project(":appactions:interaction:interaction-capabilities-safety"))
    docs(project(":appactions:interaction:interaction-capabilities-fitness"))
    docs(project(":appactions:interaction:interaction-capabilities-testing"))
    docs(project(":appactions:interaction:interaction-service"))
    docs(project(":appactions:interaction:interaction-service-testing"))
    docs(project(":appactions:interaction:interaction-service-wear"))
    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(":biometric:biometric-ktx"))
    samples(project(":biometric:biometric-ktx-samples"))
    docs(project(":bluetooth:bluetooth"))
    docs(project(":bluetooth:bluetooth-testing"))
    docs(project(":browser:browser"))
    docs(project(":camera:camera-camera2"))
    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-lifecycle"))
    docs(project(":camera:camera-mlkit-vision"))
    docs(project(":camera:camera-testing"))
    docs(project(":camera:camera-video"))
    docs(project(":camera:camera-view"))
    docs(project(":camera:camera-viewfinder"))
    docs(project(":camera:camera-viewfinder-compose"))
    docs(project(":camera:camera-viewfinder-core"))
    samples(project(":camera:camera-viewfinder-core:camera-viewfinder-core-samples"))
    docs(project(":car:app:app"))
    docs(project(":car:app:app-automotive"))
    docs(project(":car:app:app-projected"))
    docs(project(":car:app:app-testing"))
    samples(project(":car:app:app-samples:navigation-common"))
    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"))
    samples(project(":compose:animation:animation-core:animation-core-samples"))
    samples(project(":compose:animation:animation:animation-samples"))
    samples(project(":compose:animation:animation-graphics:animation-graphics-samples"))
    kmpDocs(project(":compose:foundation:foundation"))
    kmpDocs(project(":compose:foundation:foundation-layout"))
    samples(project(":compose:foundation:foundation-layout:foundation-layout-samples"))
    samples(project(":compose:foundation:foundation:foundation-samples"))
    kmpDocs(project(":compose:material3:adaptive:adaptive"))
    kmpDocs(project(":compose:material3:adaptive:adaptive-layout"))
    kmpDocs(project(":compose:material3:adaptive:adaptive-navigation"))
    samples(project(":compose:material3:adaptive:adaptive-samples"))
    kmpDocs(project(":compose:material3:material3"))
    kmpDocs(project(":compose:material3:material3-adaptive-navigation-suite"))
    samples(project(":compose:material3:material3-adaptive-navigation-suite:material3-adaptive-navigation-suite-samples"))
    kmpDocs(project(":compose:material3:material3-common"))
    samples(project(":compose:material3:material3:material3-samples"))
    kmpDocs(project(":compose:material3:material3-window-size-class"))
    samples(project(":compose:material3:material3-window-size-class:material3-window-size-class-samples"))
    kmpDocs(project(":compose:material:material"))
    kmpDocs(project(":compose:material:material-icons-core"))
    samples(project(":compose:material:material-icons-core:material-icons-core-samples"))
    kmpDocs(project(":compose:material:material-ripple"))
    docs(project(":compose:material:material-navigation"))
    samples(project(":compose:material:material-navigation-samples"))
    samples(project(":compose:material:material:material-samples"))
    kmpDocs(project(":compose:runtime:runtime"))
    samples(project(":compose:runtime:runtime:runtime-samples"))
    docs(project(":compose:runtime:runtime-livedata"))
    samples(project(":compose:runtime:runtime-livedata:runtime-livedata-samples"))
    docs(project(":compose:runtime:runtime-rxjava2"))
    samples(project(":compose:runtime:runtime-rxjava2:runtime-rxjava2-samples"))
    docs(project(":compose:runtime:runtime-rxjava3"))
    samples(project(":compose:runtime:runtime-rxjava3:runtime-rxjava3-samples"))
    kmpDocs(project(":compose:runtime:runtime-saveable"))
    samples(project(":compose:runtime:runtime-saveable:runtime-saveable-samples"))
    docs(project(":compose:runtime:runtime-tracing"))
    kmpDocs(project(":compose:ui:ui"))
    docs(project(":compose:ui:ui-android-stubs"))
    kmpDocs(project(":compose:ui:ui-geometry"))
    kmpDocs(project(":compose:ui:ui-graphics"))
    samples(project(":compose:ui:ui-graphics:ui-graphics-samples"))
    kmpDocs(project(":compose:ui:ui-test"))
    samples(project(":compose:ui:ui-test:ui-test-samples"))
    kmpDocs(project(":compose:ui:ui-test-junit4"))
    kmpDocs(project(":compose:ui:ui-text"))
    samples(project(":compose:ui:ui-text:ui-text-samples"))
    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"))
    samples(project(":compose:ui:ui-unit:ui-unit-samples"))
    kmpDocs(project(":compose:ui:ui-util"))
    docs(project(":compose:ui:ui-viewbinding"))
    samples(project(":compose:ui:ui-viewbinding:ui-viewbinding-samples"))
    samples(project(":compose:ui:ui:ui-samples"))
    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-google-shortcuts"))
    docs(project(":core:haptics:haptics"))
    samples(project(":core:haptics:haptics-samples"))
    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"))
    samples(project(":core:core-performance:core-performance-samples"))
    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:uwb:uwb"))
    docs(project(":core:uwb:uwb-rxjava3"))
    docs(project(":credentials:credentials"))
    docs(project(":credentials:credentials-fido"))
    samples(project(":credentials:credentials-samples"))
    docs(project(":credentials:credentials-play-services-auth"))
    docs(project(":credentials:credentials-e2ee"))
    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"))
    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-testing"))
    samples(project(":glance:glance-appwidget:glance-appwidget-samples"))
    samples(project(":glance:glance-appwidget-testing:glance-appwidget-testing-samples"))
    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"))
    samples(project(":graphics:graphics-core:graphics-core-samples"))
    docs(project(":graphics:graphics-path"))
    kmpDocs(project(":graphics:graphics-shapes"))
    docs(project(":gridlayout:gridlayout"))
    docs(project(":health:connect:connect-client"))
    samples(project(":health:connect:connect-client-samples"))
    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"))
    samples(project(":hilt:hilt-navigation-compose-samples"))
    docs(project(":hilt:hilt-navigation-fragment"))
    docs(project(":hilt:hilt-work"))
    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"))
    docs(project(":lifecycle:lifecycle-runtime-compose"))
    samples(project(":lifecycle:lifecycle-runtime-compose:lifecycle-runtime-compose-samples"))
    kmpDocs(project(":lifecycle:lifecycle-runtime-ktx"))
    docs(project(":lifecycle:lifecycle-runtime-testing"))
    docs(project(":lifecycle:lifecycle-service"))
    kmpDocs(project(":lifecycle:lifecycle-viewmodel"))
    docs(project(":lifecycle:lifecycle-viewmodel-compose"))
    samples(project(":lifecycle:lifecycle-viewmodel-compose:lifecycle-viewmodel-compose-samples"))
    docs(project(":lifecycle:lifecycle-viewmodel-ktx"))
    docs(project(":lifecycle:lifecycle-viewmodel-savedstate"))
    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"))
    samples(project(":navigation:navigation-compose:navigation-compose-samples"))
    docs(project(":navigation:navigation-dynamic-features-fragment"))
    docs(project(":navigation:navigation-dynamic-features-runtime"))
    docs(project(":navigation:navigation-fragment"))
    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"))
    samples(project(":paging:paging-compose:paging-compose-samples"))
    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"))
    samples(project(":paging:paging-samples"))
    kmpDocs(project(":paging:paging-testing"))
    docs(project(":palette:palette"))
    docs(project(":palette:palette-ktx"))
    docs(project(":pdf:pdf-viewer"))
    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"))
    docs(project(":room:room-migration"))
    docs(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"))
    docs(project(":room:room-testing"))
    docs(project(":safeparcel:safeparcel"))
    docs(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(":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"))
    samples(project(":tv:tv-samples"))
    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"))
    samples(project(":wear:compose:compose-foundation-samples"))
    docs(project(":wear:compose:compose-material"))
    docs(project(":wear:compose:compose-material-core"))
    samples(project(":wear:compose:compose-material-samples"))
    docs(project(":wear:compose:compose-material3"))
    samples(project(":wear:compose:compose-material3-samples"))
    docs(project(":wear:compose:compose-navigation"))
    samples(project(":wear:compose:compose-navigation-samples"))
    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-renderer"))
    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"))
    samples(project(":wear:watchface:watchface-complications-permission-dialogs-sample"))
    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"))
    samples(project(":wear:watchface:watchface-editor-samples"))
    docs(project(":wear:watchface:watchface-guava"))
    samples(project(":wear:watchface:watchface-samples"))
    docs(project(":wear:watchface:watchface-style"))
    docs(project(":wear:wear"))
    stubs(fileTree(dir: "../wear/wear_stubs/", include: ["com.google.android.wearable-stubs.jar"]))
    docs(project(":wear:wear-input"))
    samples(project(":wear:wear-input-samples"))
    docs(project(":wear:wear-input-testing"))
    docs(project(":wear:wear-ongoing"))
    docs(project(":wear:wear-phone-interactions"))
    samples(project(":wear:wear-phone-interactions-samples"))
    docs(project(":wear:wear-remote-interactions"))
    samples(project(":wear:wear-remote-interactions-samples"))
    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"))
    samples(project(":window:window-samples"))
    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")
  }
}
