Skip to content
Snippets Groups Projects
  • Mohamed's avatar
    53cf44c2
    QR Code Poster (EXPOSUREAPP-5962) (#2727) · 53cf44c2
    Mohamed authored
    * Move CreateTraceLocationApiV1.kt and TraceLocationServer.kt into new sub-package
    
    * Move CreateTraceLocation DI logic into sub-package
    
    * Create infrastructure code for new Qr-Code Poster Template Endpoint
    
    * Add new url to environment
    
    * Show new URL in the Test Menu
    
    * Implement unzipping, signature verification and parsing
    
    * Add possibility to download poster template from TestMenu
    
    * Show Android Vector Drawable in TestMenu
    
    * Create QrCodePosterTemplateApiV1Test.kt
    
    * Remove non-used ProtoConverter from retrofit
    
    * Change button position in Test Fragment
    
    * Show error if something goes wrong
    
    * Improve QrCodePosterTemplateApiV1Test.kt
    
    * Create QrCodePosterTemplateServerTest.kt
    
    * Initial setup
    
    * Connect flow to poster
    
    * Fix flow connection
    
    * Nice transition
    
    * Lint
    
    * Allow nullable extras
    
    * Adjust icon tint
    
    * rename file
    
    * Use MutableLive Data to keep the bitmap on back navigation
    
    * Fix merge issues
    
    * Change title
    
    * Display poster
    
    * lint
    
    * Adjust QR Code margin
    
    * Adjust position
    
    * Show progress
    
    * Print PDF
    
    * lint
    
    * Update QrCodePosterFragment.kt
    
    * Refactoring
    
    * Renaming
    
    * Position QR Code image
    
    * Specify size as A3
    
    * Fix merge issues
    
    * Pass location id
    
    * lint
    
    * Avoid nullable
    
    * Avoid creating blank file
    
    * Use config to position poster and QR Code
    
    * lint
    
    * Refactoring
    
    * Add info text
    
    * Scale info text
    
    * Enhancement
    
    * Defensive color parsing
    
    * typo
    
    * Delete testing screens
    
    * Revert
    
    * :soap:
    
    
    
    * Rename
    
    * Linear progress
    
    * Update QrCodePosterViewModel.kt
    
    * unify folders
    
    * Update QrCodePosterViewModel.kt
    
    * Show progress
    
    * Use server values
    
    * Generate QR Code from location url
    
    * Update TraceLocation.kt
    
    * Use location data
    
    * Remove old views and update layout preview
    
    * lint
    
    * Extend testing by adding access to qrCode
    
    * Add qrcode screen to test graph
    
    * Update fragment_test_eventregistration.xml
    
    * Rename PDF file
    
    * Polishing
    
    * Create QrCodePosterViewModelTest.kt
    
    * Update QrCodePosterViewModelTest.kt
    
    * lint
    
    * Use weak reference
    
    * Switch context
    
    * Updated strings
    
    Co-authored-by: default avatarLukas Lechner <office@lukaslechner.com>
    Co-authored-by: default avatarharambasicluka <64483219+harambasicluka@users.noreply.github.com>
    Co-authored-by: default avatarLukas Lechner <lukas.lechner@sap.com>
    Co-authored-by: default avatarI502720 <axel.herbstreith@sap.com>
    QR Code Poster (EXPOSUREAPP-5962) (#2727)
    Mohamed authored
    * Move CreateTraceLocationApiV1.kt and TraceLocationServer.kt into new sub-package
    
    * Move CreateTraceLocation DI logic into sub-package
    
    * Create infrastructure code for new Qr-Code Poster Template Endpoint
    
    * Add new url to environment
    
    * Show new URL in the Test Menu
    
    * Implement unzipping, signature verification and parsing
    
    * Add possibility to download poster template from TestMenu
    
    * Show Android Vector Drawable in TestMenu
    
    * Create QrCodePosterTemplateApiV1Test.kt
    
    * Remove non-used ProtoConverter from retrofit
    
    * Change button position in Test Fragment
    
    * Show error if something goes wrong
    
    * Improve QrCodePosterTemplateApiV1Test.kt
    
    * Create QrCodePosterTemplateServerTest.kt
    
    * Initial setup
    
    * Connect flow to poster
    
    * Fix flow connection
    
    * Nice transition
    
    * Lint
    
    * Allow nullable extras
    
    * Adjust icon tint
    
    * rename file
    
    * Use MutableLive Data to keep the bitmap on back navigation
    
    * Fix merge issues
    
    * Change title
    
    * Display poster
    
    * lint
    
    * Adjust QR Code margin
    
    * Adjust position
    
    * Show progress
    
    * Print PDF
    
    * lint
    
    * Update QrCodePosterFragment.kt
    
    * Refactoring
    
    * Renaming
    
    * Position QR Code image
    
    * Specify size as A3
    
    * Fix merge issues
    
    * Pass location id
    
    * lint
    
    * Avoid nullable
    
    * Avoid creating blank file
    
    * Use config to position poster and QR Code
    
    * lint
    
    * Refactoring
    
    * Add info text
    
    * Scale info text
    
    * Enhancement
    
    * Defensive color parsing
    
    * typo
    
    * Delete testing screens
    
    * Revert
    
    * :soap:
    
    
    
    * Rename
    
    * Linear progress
    
    * Update QrCodePosterViewModel.kt
    
    * unify folders
    
    * Update QrCodePosterViewModel.kt
    
    * Show progress
    
    * Use server values
    
    * Generate QR Code from location url
    
    * Update TraceLocation.kt
    
    * Use location data
    
    * Remove old views and update layout preview
    
    * lint
    
    * Extend testing by adding access to qrCode
    
    * Add qrcode screen to test graph
    
    * Update fragment_test_eventregistration.xml
    
    * Rename PDF file
    
    * Polishing
    
    * Create QrCodePosterViewModelTest.kt
    
    * Update QrCodePosterViewModelTest.kt
    
    * lint
    
    * Use weak reference
    
    * Switch context
    
    * Updated strings
    
    Co-authored-by: default avatarLukas Lechner <office@lukaslechner.com>
    Co-authored-by: default avatarharambasicluka <64483219+harambasicluka@users.noreply.github.com>
    Co-authored-by: default avatarLukas Lechner <lukas.lechner@sap.com>
    Co-authored-by: default avatarI502720 <axel.herbstreith@sap.com>
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
build.gradle 3.30 KiB
// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    ext.kotlin_version = '1.4.21'
    ext.protobufVersion = '0.8.12'
    ext.navVersion = "2.2.2"

    repositories {
        google()
        jcenter()
        maven {
            url "https://plugins.gradle.org/m2/"
        }
    }
    dependencies {
        // https://issuetracker.google.com/issues/176381203
        // Fixed in bleeding-edge
        // Can be upgraded once new Android version is released or
        // the specific version is available via maven
        classpath 'com.android.tools:r8:2.0.88'
        classpath 'com.android.tools.build:gradle:4.1.3'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
        classpath "com.google.protobuf:protobuf-gradle-plugin:$protobufVersion"
        classpath "androidx.navigation:navigation-safe-args-gradle-plugin:$navVersion"
        classpath "org.jlleitschuh.gradle:ktlint-gradle:9.4.1"
        classpath "io.gitlab.arturbosch.detekt:detekt-gradle-plugin:1.16.0-RC1"

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

subprojects {
    apply plugin: "io.gitlab.arturbosch.detekt"
    apply plugin: "org.jlleitschuh.gradle.ktlint"

    detekt {
        debug = true
        ignoreFailures = false
        failFast = false // fail build on any finding
        buildUponDefaultConfig = true // preconfigure defaults
        config = files("$projectDir/config/detekt.yml")
        // point to your custom config defining rules to run, overwriting default behavior
        baseline = file("$projectDir/config/detekt-baseline.xml")
        parallel = true
        reports {
            html.enabled = true // observe findings in your browser with structure and code snippets
            xml.enabled = true // checkstyle like format mainly for integrations like Jenkins
            txt.enabled = true
            // similar to the console output, contains issue signature to manually edit baseline files
        }
    }

    ktlint {
        debug = false
        ignoreFailures = false
        coloredOutput = false
    }
}

allprojects {
    repositories {
        google()
        jcenter()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

wrapper {
    gradleVersion = "6.7.1"
    distributionType = "all"
}

task quickBuild {
    dependsOn ':Corona-Warn-App:assembleDeviceRelease'
    dependsOn ':Corona-Warn-App:testDeviceReleaseUnitTest'
    dependsOn ':Corona-Warn-App:lintDeviceRelease'
    dependsOn ':Corona-Warn-App:ktlintDeviceReleaseCheck'
    dependsOn ':Corona-Warn-App:detekt'
}

task quickBuildTest {
    dependsOn ':Corona-Warn-App:assembleDeviceForTestersRelease'
    dependsOn ':Corona-Warn-App:testDeviceForTestersReleaseUnitTest'
    dependsOn ':Corona-Warn-App:lintDeviceForTestersRelease'
    dependsOn ':Corona-Warn-App:ktlintDeviceForTestersReleaseCheck'
    dependsOn ':Corona-Warn-App:detekt'
}

task quickBuildWithFixes {
    dependsOn ':Corona-Warn-App:assembleDeviceRelease'
    dependsOn ':Corona-Warn-App:testDeviceReleaseUnitTest'
    dependsOn ':Corona-Warn-App:lintDeviceRelease'
    dependsOn ':Corona-Warn-App:ktlintFormat'
    dependsOn ':Corona-Warn-App:ktlintDeviceReleaseCheck'
    dependsOn ':Corona-Warn-App:detekt'
}