diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 34ee3430a9..12b810015a 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -38,6 +38,17 @@ jobs: ${{ runner.os }}-gradle- #--------------------------------------------------- + #Detekt + - name: Detekt + run: ./gradlew detekt + + - name: Upload Detekt Release report to GitHub + uses: actions/upload-artifact@v3 + with: + name: detekt-report.html + path: build/reports/detekt/detekt.html + #------------------------------------------------------------------ + #Lint - name: Lint (release) run: ./gradlew lintRelease diff --git a/build.gradle.kts b/build.gradle.kts index 9b47eec515..bd61c36dff 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -6,6 +6,11 @@ plugins { // ./gradlew dependencyUpdates // Simple report in the console // ./gradlew dependencyUpdates -DoutputFormatter=html,json,xml // Report in console & generate files accordingly id("com.github.ben-manes.versions") version "0.39.0" + + // Run with: + // ./gradlew detekt // Simple report in the console + // ./gradlew detektFormat // To check with enabled auto-correction + id("ivy.lint") } tasks { @@ -35,4 +40,4 @@ fun isNonStable(version: String): Boolean { val regex = "^[0-9,.v-]+(-r)?$".toRegex() val isStable = stableKeyword || regex.matches(version) return isStable.not() -} \ No newline at end of file +} diff --git a/buildSrc/build.gradle.kts b/buildSrc/build.gradle.kts index e09c0b480e..d852c2cd2e 100644 --- a/buildSrc/build.gradle.kts +++ b/buildSrc/build.gradle.kts @@ -26,4 +26,10 @@ dependencies { implementation("com.google.gms:google-services:4.3.15") implementation("com.google.firebase:firebase-crashlytics-gradle:2.9.8") -} \ No newline at end of file + + implementation(libs.detekt.gradle) + + // Make version catalog available in precompiled scripts + // https://github.com/gradle/gradle/issues/15383#issuecomment-1567461389 + implementation(files(libs.javaClass.superclass.protectionDomain.codeSource.location)) +} diff --git a/buildSrc/settings.gradle.kts b/buildSrc/settings.gradle.kts new file mode 100644 index 0000000000..39d5bad3be --- /dev/null +++ b/buildSrc/settings.gradle.kts @@ -0,0 +1,19 @@ +pluginManagement { + repositories { + google() + gradlePluginPortal() + } +} + +dependencyResolutionManagement { + repositories { + google() + gradlePluginPortal() + } + + versionCatalogs { + create("libs") { + from(files("../gradle/libs.versions.toml")) + } + } +} diff --git a/buildSrc/src/main/kotlin/ivy.lint.gradle.kts b/buildSrc/src/main/kotlin/ivy.lint.gradle.kts new file mode 100644 index 0000000000..60cdd96480 --- /dev/null +++ b/buildSrc/src/main/kotlin/ivy.lint.gradle.kts @@ -0,0 +1,47 @@ +import io.gitlab.arturbosch.detekt.Detekt +import io.gitlab.arturbosch.detekt.extensions.DetektExtension + +plugins { + id("io.gitlab.arturbosch.detekt") +} + +configure { + source.setFrom(projectDir) + config.setFrom("$rootDir/config/detekt/config.yml") + baseline = file("$rootDir/config/detekt/baseline.yml") +} + +tasks.register("detektFormat") { + autoCorrect = true +} + +tasks.withType { + // Disable task caching + outputs.upToDateWhen { false } + + reports { + html.required.set(true) + sarif.required.set(false) + md.required.set(false) + xml.required.set(false) + txt.required.set(false) + } + + include("**/*.kt", "**/*.kts") + exclude("**/resources/**", "**/build/**") + + parallel = true + + buildUponDefaultConfig = true + + allRules = true + + // Target version of the generated JVM bytecode. It is used for type resolution. + jvmTarget = "1.8" +} + +dependencies { + detektPlugins(libs.detekt.ruleset.compiler) + detektPlugins(libs.detekt.ruleset.ktlint) + detektPlugins(libs.detekt.ruleset.compose) +} diff --git a/buildSrc/src/main/kotlin/versionCatalog.kt b/buildSrc/src/main/kotlin/versionCatalog.kt new file mode 100644 index 0000000000..f23302c8ff --- /dev/null +++ b/buildSrc/src/main/kotlin/versionCatalog.kt @@ -0,0 +1,10 @@ +@file:Suppress("Filename") + +import org.gradle.accessors.dm.LibrariesForLibs +import org.gradle.api.Project +import org.gradle.kotlin.dsl.the + +// Make version catalog available in precompiled scripts +// https://github.com/gradle/gradle/issues/15383#issuecomment-1567461389 +val Project.libs: LibrariesForLibs + get() = the() diff --git a/config/detekt/baseline.yml b/config/detekt/baseline.yml new file mode 100644 index 0000000000..aee0e0cd45 --- /dev/null +++ b/config/detekt/baseline.yml @@ -0,0 +1,5618 @@ + + + + + ArgumentListWrapping:Accessors32ikgp1isdd8mwexzgbe6rirl.kt$("ext") + ArgumentListWrapping:Accessors46nwrg1rs44ofdqpi7vyy3pfc.kt$("ext") + ArgumentListWrapping:Accessors4ymijgaek646mzru18sdmblu7.kt$("detekt") + ArgumentListWrapping:Accessors8lcri9ibgd9oj8dt3t8z8nvfx.kt$("ext") + ArgumentListWrapping:Accessorsblypoh2ruc9u3bx9djsfqsntg.kt$("ext") + ArgumentListWrapping:Accessorsbtc8iwv8u9b0f38ikfmodj8ns.kt$("reporting") + ArgumentListWrapping:Accessorseessl0al0otcsbyqqruvoncpd.kt$("ext") + ArgumentListWrapping:AccountModal.kt$( modal = AccountModalData( account = null, baseCurrency = "BGN", balance = 0.0 ), onCreateAccount = { }, onEditAccount = { _, _ -> }) + ArgumentListWrapping:AccountModal.kt$(R.string.edit_account) + ArgumentListWrapping:AccountModal.kt$(R.string.new_account) + ArgumentListWrapping:AccountsTab.kt$( R.string.total, "BGN", "25.54" ) + ArgumentListWrapping:AccountsViewModel.kt$AccountsViewModel$( R.string.total, baseCurrencyCode, totalBalanceWithExcluded.format( baseCurrencyCode ) ) + ArgumentListWrapping:AmountModal.kt$( size = 52.dp, onClick = { calculatorModalVisible = true }) + ArgumentListWrapping:BackupLogic.kt$BackupLogic$( LocalDateTime::class.java, object : JsonDeserializer<LocalDateTime?> { @Throws(JsonParseException::class) override fun deserialize( json: JsonElement, type: Type?, jsonDeserializationContext: JsonDeserializationContext? ): LocalDateTime? { val instant: Instant = Instant.ofEpochMilli(json.asJsonPrimitive.asLong) return LocalDateTime.ofInstant(instant, ZoneOffset.UTC) } }) + ArgumentListWrapping:BackupLogic.kt$BackupLogic$( LocalDateTime::class.java, object : JsonSerializer<LocalDateTime?> { @Throws(JsonParseException::class) override fun serialize( src: LocalDateTime?, typeOfSrc: Type?, context: JsonSerializationContext? ): JsonElement { return JsonPrimitive(src!!.toEpochMilli().toString()) } }) + ArgumentListWrapping:BalanceViewModel.kt$BalanceViewModel$(ivyContext.startDayOfMonth) + ArgumentListWrapping:BalanceViewModel.kt$BalanceViewModel$(period.toRange(ivyContext.startDayOfMonth)) + ArgumentListWrapping:BudgetModal.kt$(R.string.create_budget) + ArgumentListWrapping:BudgetModal.kt$(R.string.edit_budget) + ArgumentListWrapping:BufferBattery.kt$( R.string.left_to_spend) + ArgumentListWrapping:CSVScreen.kt$( modifier = Modifier.horizontalScroll(rememberScrollState()), row = CSVRow(status.sampleValues), header = false, even = true ) + ArgumentListWrapping:CSVViewModel.kt$CSVViewModel$( initialValue = null, sampleCSV, amount, type, date, account, accountCurrency, ) + ArgumentListWrapping:CSVViewModel.kt$CSVViewModel$( initialValue = null, sampleCSV, category, title, description, ) + ArgumentListWrapping:CSVViewModel.kt$CSVViewModel$( initialValue = null, sampleCSV, toAccount, toAccountCurrency, toAmount, ) + ArgumentListWrapping:ChooseStartDateOfMonthModal.kt$(modifier = Modifier .size(48.dp) .clip(CircleShape) .border(2.dp, if (selected) Ivy else UI.colors.medium, CircleShape) .thenIf(selected) { background(Ivy, CircleShape) } .clickable { onClick(number) }, contentAlignment = Alignment.Center ) + ArgumentListWrapping:CustomExchangeRateCard.kt$( icon = R.drawable.ic_refresh, modifier = Modifier .padding(end = 16.dp) .clickable { onRefresh() }) + ArgumentListWrapping:DetektConfigurationAccessors.kt$( this, "detekt", dependencyNotation, dependencyConfiguration ) + ArgumentListWrapping:DetektPluginsConfigurationAccessors.kt$( this, "detektPlugins", dependencyNotation, dependencyConfiguration ) + ArgumentListWrapping:Exchange.kt$( baseCurrency, toCurrency ) + ArgumentListWrapping:FilterOverlay.kt$( acc1, acc2 ) + ArgumentListWrapping:FilterOverlay.kt$( placeable.width, placeable.height ) + ArgumentListWrapping:GitHubAutoBackupManager.kt$GitHubAutoBackupManager$( 6, TimeUnit.HOURS ) + ArgumentListWrapping:HomeHeader.kt$(R.string.cashflow, (if (cashflow > 0) "+" else ""), cashflow.format(currency), currency) + ArgumentListWrapping:HomeHeader.kt$(R.string.hi) + ArgumentListWrapping:HomeHeader.kt$(R.string.hi_name, name) + ArgumentListWrapping:HomeHeader.kt$(currency) + ArgumentListWrapping:ItemStatisticScreen.kt$( baseCurrency, accounts, categories ) + ArgumentListWrapping:IvyBilling.kt$IvyBilling$("Acknowledge purchase result, code=${acknowledgeResult.responseCode}: ${acknowledgeResult.debugMessage}") + ArgumentListWrapping:IvyChecklistTextField.kt$( modifier = Modifier .align(Alignment.CenterStart) .background(UI.colors.red) .padding(horizontal = 24.dp), value = TextFieldValue(), hint = "Hint", onValueChanged = {}) + ArgumentListWrapping:IvyChecklistTextField.kt$( modifier = Modifier .background(UI.colors.red) .padding(horizontal = 24.dp), value = TextFieldValue("Cur habitio favere? Sunt navises promissio grandis, primus accolaes. Yes, there is chaos, it contacts with light."), hint = "Hint", onValueChanged = {}) + ArgumentListWrapping:IvyChecklistTextField.kt$("Cur habitio favere? Sunt navises promissio grandis, primus accolaes. Yes, there is chaos, it contacts with light.") + ArgumentListWrapping:IvyDescriptionTextField.kt$( modifier = Modifier .align(Alignment.CenterStart) .background(UI.colors.red) .padding(horizontal = 24.dp), value = TextFieldValue(), hint = "Hint", onValueChanged = {}) + ArgumentListWrapping:IvyDescriptionTextField.kt$( modifier = Modifier .background(UI.colors.red) .padding(horizontal = 24.dp), value = TextFieldValue("Cur habitio favere? Sunt navises promissio grandis, primus accolaes. Yes, there is chaos, it contacts with light."), hint = "Hint", onValueChanged = {}) + ArgumentListWrapping:IvyDescriptionTextField.kt$("Cur habitio favere? Sunt navises promissio grandis, primus accolaes. Yes, there is chaos, it contacts with light.") + ArgumentListWrapping:IvyOutlinedTextField.kt$( modifier = Modifier.padding(horizontal = 24.dp), value = TextFieldValue(), hint = "Hint", onValueChanged = {}) + ArgumentListWrapping:IvyRoomDatabase.kt$IvyRoomDatabase.Companion$( applicationContext, IvyRoomDatabase::class.java, DB_NAME ) + ArgumentListWrapping:Loan.kt$Loan$( R.string.lent_uppercase) + ArgumentListWrapping:LoanRecordModal.kt$( R.string.new_record) + ArgumentListWrapping:Migration106to107_Wishlist.kt$Migration106to107_Wishlist$("CREATE TABLE IF NOT EXISTS `wishlist_items` (`name` TEXT NOT NULL, `price` REAL NOT NULL, `accountId` TEXT NOT NULL, `categoryId` TEXT, `description` TEXT, `plannedDateTime` INTEGER, `orderNum` REAL NOT NULL, `id` TEXT NOT NULL, PRIMARY KEY(`id`))") + ArgumentListWrapping:Migration108to109_Users.kt$Migration108to109_Users$("CREATE TABLE IF NOT EXISTS `users` (`email` TEXT NOT NULL, `authProviderType` TEXT NOT NULL, `firstName` TEXT NOT NULL, `lastName` TEXT, `profilePicture` TEXT, `color` INTEGER NOT NULL, `id` TEXT NOT NULL, PRIMARY KEY(`id`))") + ArgumentListWrapping:Migration109to110_PlannedPayments.kt$Migration109to110_PlannedPayments$("CREATE TABLE IF NOT EXISTS `transaction_recurring_rules` (`startDate` INTEGER, `intervalN` INTEGER, `intervalType` TEXT, `oneTime` INTEGER NOT NULL, `type` TEXT NOT NULL, `accountId` TEXT NOT NULL, `amount` REAL NOT NULL, `categoryId` TEXT, `title` TEXT, `description` TEXT, `isSynced` INTEGER NOT NULL, `isDeleted` INTEGER NOT NULL, `id` TEXT NOT NULL, PRIMARY KEY(`id`))") + ArgumentListWrapping:Migration110to111_PlannedPaymentRule.kt$Migration110to111_PlannedPaymentRule$("CREATE TABLE IF NOT EXISTS `planned_payment_rules` (`startDate` INTEGER, `intervalN` INTEGER, `intervalType` TEXT, `oneTime` INTEGER NOT NULL, `type` TEXT NOT NULL, `accountId` TEXT NOT NULL, `amount` REAL NOT NULL, `categoryId` TEXT, `title` TEXT, `description` TEXT, `isSynced` INTEGER NOT NULL, `isDeleted` INTEGER NOT NULL, `id` TEXT NOT NULL, PRIMARY KEY(`id`))") + ArgumentListWrapping:Migration112to113_ExchangeRates.kt$Migration112to113_ExchangeRates$("CREATE TABLE IF NOT EXISTS `exchange_rates` (`baseCurrency` TEXT NOT NULL, `currency` TEXT NOT NULL, `rate` REAL NOT NULL, PRIMARY KEY(`baseCurrency`, `currency`))") + ArgumentListWrapping:Migration117to118_Budgets.kt$Migration117to118_Budgets$("CREATE TABLE IF NOT EXISTS `${tableName}` (`name` TEXT NOT NULL, `amount` REAL NOT NULL, `categoryIdsSerialized` TEXT, `accountIdsSerialized` TEXT, `isSynced` INTEGER NOT NULL, `isDeleted` INTEGER NOT NULL, `orderId` REAL NOT NULL, `id` TEXT NOT NULL, PRIMARY KEY(`id`))") + ArgumentListWrapping:Migration118to119_Loans.kt$Migration118to119_Loans$("CREATE TABLE IF NOT EXISTS `$LOANS_TABLE` (`name` TEXT NOT NULL, `amount` REAL NOT NULL, `type` TEXT NOT NULL, `color` INTEGER NOT NULL, `icon` TEXT, `orderNum` REAL NOT NULL, `isSynced` INTEGER NOT NULL, `isDeleted` INTEGER NOT NULL, `id` TEXT NOT NULL, PRIMARY KEY(`id`))") + ArgumentListWrapping:Migration118to119_Loans.kt$Migration118to119_Loans$("CREATE TABLE IF NOT EXISTS `$LOAN_RECORDS_TABLE` (`loanId` TEXT NOT NULL, `amount` REAL NOT NULL, `note` TEXT, `dateTime` INTEGER NOT NULL, `isSynced` INTEGER NOT NULL, `isDeleted` INTEGER NOT NULL, `id` TEXT NOT NULL, PRIMARY KEY(`id`))") + ArgumentListWrapping:OnboardingPrivacyTC.kt$("dragAmount=$dragAmount, offsetX=$offsetX, newOffsetX=$newOffsetX, maxOffset=$maxOffsetX") + ArgumentListWrapping:OnboardingToolbar.kt$( hasSkip = true, onBack = {} ) + ArgumentListWrapping:PieChart.kt$PieChartView$( 0f, 0f, convertDpToPixel(context, 2 * RADIUS_DP), convertDpToPixel(context, 2 * RADIUS_DP) ) + ArgumentListWrapping:PieChartStatisticBottomBar.kt$(id = R.string.add_expense) + ArgumentListWrapping:PieChartStatisticBottomBar.kt$(id = R.string.add_income) + ArgumentListWrapping:PieChartStatisticScreen.kt$(R.string.expenses) + ArgumentListWrapping:PlannedPaymentRuleDao.kt$PlannedPaymentRuleDao$("SELECT * FROM planned_payment_rules WHERE isDeleted = 0 AND oneTime = :oneTime ORDER BY amount DESC, startDate ASC") + ArgumentListWrapping:RootActivity.kt$RootActivity$( Intent().apply { action = Intent.ACTION_SEND putExtra(Intent.EXTRA_STREAM, fileUri) type = "application/zip" }, null ) + ArgumentListWrapping:RootActivity.kt$RootActivity$( Intent().apply { action = Intent.ACTION_SEND putExtra(Intent.EXTRA_STREAM, fileUri) type = "text/csv" }, null ) + ArgumentListWrapping:RootActivity.kt$RootActivity$( Intent.EXTRA_SUBJECT, "Ivy Wallet Support Request #" + caseNumber + "0" + BuildConfig.VERSION_CODE ) + ArgumentListWrapping:RootActivity.kt$RootActivity$( this, executor, biometricPromptCallback ) + ArgumentListWrapping:SettingsScreen.kt$( R.string.confirm_all_userd_data_deletion, user?.email ?: stringResource( R.string.all_of_your_data ) ) + ArgumentListWrapping:SettingsScreen.kt$( R.string.delete_all_user_cloud_data_warning, user?.email ?: stringResource( R.string.your_account ) ) + ArgumentListWrapping:SettingsScreen.kt$( R.string.delete_all_user_data_warning, user?.email ?: stringResource( R.string.your_account ) ) + ArgumentListWrapping:SettingsViewModel.kt$SettingsViewModel$("Settings - GOOGLE_SIGN_IN ERROR: generic exception when logging with GOOGLE") + ArgumentListWrapping:TransactionDao.kt$TransactionDao$("SELECT * FROM transactions WHERE isDeleted = 0 AND (categoryId = :categoryId) AND dateTime >= :startDate AND dateTime <= :endDate ORDER BY dateTime DESC") + ArgumentListWrapping:TransactionDao.kt$TransactionDao$("SELECT * FROM transactions WHERE isDeleted = 0 AND (categoryId = :categoryId) AND type = :type AND dateTime >= :startDate AND dateTime <= :endDate ORDER BY dateTime DESC") + ArgumentListWrapping:TransactionDao.kt$TransactionDao$("SELECT * FROM transactions WHERE isDeleted = 0 AND (categoryId IS NULL) AND dateTime >= :startDate AND dateTime <= :endDate ORDER BY dateTime DESC") + ArgumentListWrapping:TransactionDao.kt$TransactionDao$("SELECT * FROM transactions WHERE isDeleted = 0 AND (categoryId IS NULL) AND type = :type AND dateTime >= :startDate AND dateTime <= :endDate ORDER BY dateTime DESC") + ArgumentListWrapping:TransactionDao.kt$TransactionDao$("SELECT * FROM transactions WHERE isDeleted = 0 AND accountId = :accountId AND dateTime >= :startDate AND dateTime <= :endDate ORDER BY dateTime DESC") + ArgumentListWrapping:TransactionDao.kt$TransactionDao$("SELECT * FROM transactions WHERE isDeleted = 0 AND dateTime >= :startDate AND dateTime <= :endDate AND recurringRuleId = :recurringRuleId ORDER BY dateTime DESC") + ArgumentListWrapping:TransactionDao.kt$TransactionDao$("SELECT * FROM transactions WHERE isDeleted = 0 AND dateTime >= :startDate AND dateTime <= :endDate AND type = :type ORDER BY dateTime DESC") + ArgumentListWrapping:TransactionDao.kt$TransactionDao$("SELECT * FROM transactions WHERE isDeleted = 0 AND dateTime >= :startDate AND dateTime <= :endDate ORDER BY dateTime DESC") + ArgumentListWrapping:TransactionDao.kt$TransactionDao$("SELECT * FROM transactions WHERE isDeleted = 0 AND dueDate >= :startDate AND dueDate <= :endDate AND (categoryId = :categoryId) ORDER BY dateTime DESC, dueDate ASC") + ArgumentListWrapping:TransactionDao.kt$TransactionDao$("SELECT * FROM transactions WHERE isDeleted = 0 AND dueDate >= :startDate AND dueDate <= :endDate AND (categoryId IS NULL) ORDER BY dateTime DESC, dueDate ASC") + ArgumentListWrapping:TransactionDao.kt$TransactionDao$("SELECT * FROM transactions WHERE isDeleted = 0 AND dueDate >= :startDate AND dueDate <= :endDate AND accountId = :accountId ORDER BY dateTime DESC, dueDate ASC") + ArgumentListWrapping:TransactionDao.kt$TransactionDao$("SELECT * FROM transactions WHERE isDeleted = 0 AND dueDate >= :startDate AND dueDate <= :endDate ORDER BY dueDate ASC") + ArgumentListWrapping:TransactionDao.kt$TransactionDao$("SELECT * FROM transactions WHERE isDeleted = 0 AND recurringRuleId = :recurringRuleId ORDER BY dateTime DESC") + ArgumentListWrapping:TransactionDao.kt$TransactionDao$("SELECT * FROM transactions WHERE isDeleted = 0 AND toAccountId = :toAccountId AND dateTime >= :startDate AND dateTime <= :endDate ORDER BY dateTime DESC") + ArgumentListWrapping:TransactionDao.kt$TransactionDao$("SELECT * FROM transactions WHERE isDeleted = 0 AND type = :type and accountId = :accountId ORDER BY dateTime DESC") + ArgumentListWrapping:TransactionDao.kt$TransactionDao$("SELECT * FROM transactions WHERE isDeleted = 0 AND type = :type and accountId = :accountId and dateTime >= :startDate AND dateTime <= :endDate ORDER BY dateTime DESC") + ArgumentListWrapping:TransactionDao.kt$TransactionDao$("SELECT * FROM transactions WHERE isDeleted = 0 AND type = :type and toAccountId = :toAccountId ORDER BY dateTime DESC") + ArgumentListWrapping:TransactionDao.kt$TransactionDao$("SELECT * FROM transactions WHERE isDeleted = 0 AND type = :type and toAccountId = :toAccountId and dateTime >= :startDate AND dateTime <= :endDate ORDER BY dateTime DESC") + ArgumentListWrapping:TransactionDao.kt$TransactionDao$("UPDATE transactions SET isDeleted = 1, isSynced = 0 WHERE recurringRuleId = :recurringRuleId AND dateTime IS NULL") + ArgumentListWrapping:ViewPager.kt$("onDragStopped(): velocity = $velocity, finalVelocity = $finalVelocity, currentPageOffset = ${state.currentPageOffset}") + ChainWrapping:AmountFormatting.kt$|| + ChainWrapping:EditTransactionViewModel.kt$EditTransactionViewModel$&& + ChainWrapping:ItemStatisticViewModel.kt$ItemStatisticViewModel$&& + ChainWrapping:LoanRecordModal.kt$&& + ChainWrapping:LoanTransactionsCore.kt$LoanTransactionsCore$|| + ChainWrapping:Screens.kt$EditPlanned$&& + ClassNaming:Ivy_lintPlugin.kt$Ivy_lintPlugin : Plugin + ClassNaming:Migration105to106_TrnRecurringRules.kt$Migration105to106_TrnRecurringRules : Migration + ClassNaming:Migration106to107_Wishlist.kt$Migration106to107_Wishlist : Migration + ClassNaming:Migration107to108_Sync.kt$Migration107to108_Sync : Migration + ClassNaming:Migration108to109_Users.kt$Migration108to109_Users : Migration + ClassNaming:Migration109to110_PlannedPayments.kt$Migration109to110_PlannedPayments : Migration + ClassNaming:Migration110to111_PlannedPaymentRule.kt$Migration110to111_PlannedPaymentRule : Migration + ClassNaming:Migration111to112_User_testUser.kt$Migration111to112_User_testUser : Migration + ClassNaming:Migration112to113_ExchangeRates.kt$Migration112to113_ExchangeRates : Migration + ClassNaming:Migration113to114_Multi_Currency.kt$Migration113to114_Multi_Currency : Migration + ClassNaming:Migration114to115_Category_Account_Icons.kt$Migration114to115_Category_Account_Icons : Migration + ClassNaming:Migration115to116_Account_Include_In_Balance.kt$Migration115to116_Account_Include_In_Balance : Migration + ClassNaming:Migration116to117_SalteEdgeIntgration.kt$Migration116to117_SalteEdgeIntgration : Migration + ClassNaming:Migration117to118_Budgets.kt$Migration117to118_Budgets : Migration + ClassNaming:Migration118to119_Loans.kt$Migration118to119_Loans : Migration + ClassNaming:Migration119to120_LoanTransactions.kt$Migration119to120_LoanTransactions : Migration + ClassNaming:Migration120to121_DropWishlistItem.kt$Migration120to121_DropWishlistItem : Migration + ClassNaming:Migration122to123_ExchangeRates.kt$Migration122to123_ExchangeRates : Migration + CommentSpacing:AccValueFunctions.kt$AccountValueFunctions$//Account's transactions + CommentSpacing:AccValueFunctions.kt$AccountValueFunctions$//potential transfer to account? + CommentSpacing:AccValueFunctions.kt$AccountValueFunctions$//transfer to another account + CommentSpacing:AccValueFunctions.kt$AccountValueFunctions$//transfer to self + CommentSpacing:AccountByIdAct.kt$AccountByIdAct$//accountId + CommentSpacing:AccountUploader.kt$AccountUploader$//Delete on server + CommentSpacing:AccountUploader.kt$AccountUploader$//delete from local db + CommentSpacing:AccountUploader.kt$AccountUploader$//flag as synced + CommentSpacing:AccountUploader.kt$AccountUploader$//update + CommentSpacing:AccountsTab.kt$//scroll hack + CommentSpacing:AccountsViewModel.kt$AccountsViewModel$//this must be monthly + CommentSpacing:AddTransactionWidget.kt$AddTransactionWidget$//--------------------------- </BROADCASTS> ---------------------------------------------------- + CommentSpacing:AddTransactionWidgetClick.kt$AddTransactionWidgetClick$//============================= <HANDLE> ======================================================= + CommentSpacing:AddTransactionWidgetClick.kt$AddTransactionWidgetClick.Setup$//----------------------------- </SETUP> ------------------------------------------------------- + CommentSpacing:AddTransactionWidgetClick.kt$AddTransactionWidgetClick.Setup$//------------------------------ <SETUP> ------------------------------------------------------- + CommentSpacing:AddTransactionWidgetClick.kt$AddTransactionWidgetClick.Setup$//============================= <HANDLE> ======================================================= + CommentSpacing:AddTransactionWidgetCompact.kt$AddTransactionWidgetCompact$//--------------------------- </BROADCASTS> ---------------------------------------------------- + CommentSpacing:AmountFormatting.kt$//Display Formatting + CommentSpacing:AmountFormatting.kt$//TODO: Review, might cause trouble when integrating crypto + CommentSpacing:AnalyticsReportResponse.kt$AnalyticsReportResponse$//1-4 transaction per week + CommentSpacing:AnalyticsReportResponse.kt$AnalyticsReportResponse$//5-13 transactions per week + CommentSpacing:AnalyticsReportResponse.kt$AnalyticsReportResponse$//>= 14 per week (2 transactions per day = 14 per week) + CommentSpacing:AnalyticsReportResponse.kt$AnalyticsReportResponse$//Events ----------------------------------------------------- + CommentSpacing:AnalyticsReportResponse.kt$AnalyticsReportResponse$//Health + CommentSpacing:AnalyticsReportResponse.kt$AnalyticsReportResponse$//KPIs + CommentSpacing:AnalyticsReportResponse.kt$AnalyticsReportResponse$//User Stats + CommentSpacing:AppLockedScreen.kt$//To automatically launch the biometric screen on load of this composable + CommentSpacing:AppModuleDI.kt$AppModuleDI$//Sync + CommentSpacing:BalanceScreen.kt$//preview + CommentSpacing:BalanceViewModel.kt$BalanceViewModel$//+ positive if Income > Expenses else - negative + CommentSpacing:BudgetModal.kt$//add category + CommentSpacing:BudgetModal.kt$//remove category + CommentSpacing:BudgetScreen.kt$//preview + CommentSpacing:BudgetScreen.kt$//scroll hack + CommentSpacing:BudgetUploader.kt$BudgetUploader$//Delete on server + CommentSpacing:BudgetUploader.kt$BudgetUploader$//delete from local db + CommentSpacing:BudgetUploader.kt$BudgetUploader$//flag as synced + CommentSpacing:BudgetUploader.kt$BudgetUploader$//update + CommentSpacing:BudgetViewModel.kt$BudgetViewModel$//TODO: Re-work this by creating an FPAction for it + CommentSpacing:BudgetViewModel.kt$BudgetViewModel$//decrement spent amount if it's not global budget + CommentSpacing:BudgetViewModel.kt$BudgetViewModel$//ignore income + CommentSpacing:BudgetViewModel.kt$BudgetViewModel$//ignore transfers for simplicity + CommentSpacing:BudgetViewModel.kt$BudgetViewModel$//increment spent amount + CommentSpacing:CSVImporter.kt$CSVImporter$//+ 1 because we skip Header and +1 because they don't start from zero + CommentSpacing:CSVImporter.kt$CSVImporter$//As a fallback set all transactions 1 year before now + CommentSpacing:CSVImporter.kt$CSVImporter$//Cannot save transactions with zero amount + CommentSpacing:CSVImporter.kt$CSVImporter$//Cannot save transactions without any date + CommentSpacing:CSVImporter.kt$CSVImporter$//Example: Fortune City + CommentSpacing:CSVImporter.kt$CSVImporter$//Fortune City Date variations with 12-h (am/pm) + CommentSpacing:CSVImporter.kt$CSVImporter$//Fortune City Date variations with 24-h + CommentSpacing:CSVImporter.kt$CSVImporter$//Fortune City Date with "-" variations with 12-h (am/pm) + CommentSpacing:CSVImporter.kt$CSVImporter$//Fortune City Date with "-" variations with 24-h + CommentSpacing:CSVImporter.kt$CSVImporter$//More Fortune City Date formats + CommentSpacing:CSVImporter.kt$CSVImporter$//Return Expense for intentionally set Type mapping to null + CommentSpacing:CSVImporter.kt$CSVImporter$//create new account + CommentSpacing:CSVImporter.kt$CSVImporter$//create new category + CommentSpacing:CSVImporter.kt$CSVImporter.<no name provided>$//do nothing + CommentSpacing:CSVImporterV2.kt$CSVImporterV2$//+ 1 because we skip Header and +1 because they don't start from zero + CommentSpacing:CSVImporterV2.kt$CSVImporterV2$//Cannot save transactions with zero amount + CommentSpacing:CSVImporterV2.kt$CSVImporterV2$//create new account + CommentSpacing:CSVImporterV2.kt$CSVImporterV2$//create new category + CommentSpacing:CSVMapper.kt$CSVMapper$//14 - Don't map because it fcks up the sync with Insufficient Permission error + CommentSpacing:CSVMapper.kt$CSVMapper$//Don't map because it fcks up the sync with Insufficient Permission error + CommentSpacing:CSVMapper.kt$CSVMapper$//Monefy doesn't have transaction type, it uses amount +/- sign + CommentSpacing:CSVMapper.kt$CSVMapper$//Monefy doesn't have transaction type, it uses amount +/- sign, + CommentSpacing:CSVMapper.kt$CSVMapper$//Praseto - https://play.google.com/store/apps/details?id=com.realbyteapps.moneymanagerfree&hl=en&gl=US + CommentSpacing:CSVMapper.kt$CSVMapper$//Transfer Currency - 8 + CommentSpacing:CSVMapper.kt$CSVMapper$//Wallet By BudgetBakers - https://play.google.com/store/apps/details?id=com.droid4you.application.wallet&hl=en&gl=US + CommentSpacing:CSVMapper.kt$CSVMapper$//category group = 7 + CommentSpacing:CSVMapper.kt$CSVMapper$//converted amount = 5 + CommentSpacing:CSVMapper.kt$CSVMapper$//currency = 6 + CommentSpacing:CSVMapper.kt$CSVMapper$//exchangeRate = 6 + CommentSpacing:CSVMapper.kt$CSVMapper$//set time = 2 + CommentSpacing:CSVMapper.kt$CSVMapper$//skip "Receive Currency" + CommentSpacing:CSVViewModel.kt$CSVViewModel.<no name provided>$//do nothing + CommentSpacing:CalculatorModal.kt$//handle only number expression formatting + CommentSpacing:Card.kt$//Transaction history card + CommentSpacing:CategoriesScreen.kt$//Divider + CommentSpacing:CategoriesScreen.kt$//scroll hack + CommentSpacing:CategoriesViewModel.kt$CategoriesViewModel$//this must be monthly + CommentSpacing:CategoryCharts.kt$//add category + CommentSpacing:CategoryCharts.kt$//remove category + CommentSpacing:CategoryCharts.kt$//scroll hack + CommentSpacing:CategoryUploader.kt$CategoryUploader$//Delete on server + CommentSpacing:CategoryUploader.kt$CategoryUploader$//delete from local db + CommentSpacing:CategoryUploader.kt$CategoryUploader$//flag as synced + CommentSpacing:CategoryUploader.kt$CategoryUploader$//update + CommentSpacing:ChartPeriod.kt$ChartPeriod$//end recursion + CommentSpacing:ChartPeriod.kt$ChartPeriod$//not sure if this line is needed + CommentSpacing:ChartPeriod.kt$ChartPeriod$//recurse + CommentSpacing:ChartsViewModel.kt$ChartsViewModel$//Re-load categories + CommentSpacing:ChartsViewModel.kt$ChartsViewModel$//TODO: Implement + CommentSpacing:ChooseIconModal.kt$//RECURSE + CommentSpacing:ChooseIconModal.kt$//end recursion + CommentSpacing:ChooseIconModal.kt$//icon + CommentSpacing:ChooseIconModal.kt$//recurse + CommentSpacing:ChooseIconModal.kt$//recurse and reset acc + CommentSpacing:ChooseIconModal.kt$//recurse by filling acc + CommentSpacing:ChoosePeriodModal.kt$MonthYear$//current year + CommentSpacing:ChoosePeriodModal.kt$MonthYear$//not current year + CommentSpacing:CircleButtons.kt$//enlarge click area + CommentSpacing:ColoredItemCard.kt$//Ivy Wallet's account + loans cards + CommentSpacing:Colors.kt$//-------------------------------------------------------------------------------------------------- + CommentSpacing:Colors.kt$//Dark + CommentSpacing:Colors.kt$//Light + CommentSpacing:Colors.kt$//Primary + CommentSpacing:Compose.kt$//Cannot use Modifier#then() because it stacks the previous modifiers multiple times + CommentSpacing:Compose.kt$//consume click + CommentSpacing:ComposeExt.kt$//consume click + CommentSpacing:Constants.kt$Constants$//Time in seconds + CommentSpacing:CurrencyPicker.kt$//Hint + CommentSpacing:CustomerJourney.kt$//enlarge click area + CommentSpacing:DateExt.kt$//this is if you want to display the Zone in the pattern + CommentSpacing:DeleteAllData.kt$//Delete Button + Delete Confirmation Modal + Delete type + CommentSpacing:DeleteItem.kt$//Delete Button + Delete Confirmation Modal + CommentSpacing:DonateScreen.kt$//scroll hack + CommentSpacing:DueTrnsInfoAct.kt$DueTrnsInfoAct$//We have due transactions in different currencies + CommentSpacing:EditBottomSheet.kt$//+1 because Spacer width 24.dp + CommentSpacing:EditBottomSheet.kt$//Accounts label + CommentSpacing:EditBottomSheet.kt$//breaks UI tests + CommentSpacing:EditBottomSheet.kt$//system stuff + keyboard padding + CommentSpacing:EditContentCard.kt$//Ivy Wallet's "Edit" screen description card, created on, etc + CommentSpacing:EditPlannedScreen.kt$//Create mode + CommentSpacing:EditPlannedScreen.kt$//DO NOT display title suggestions for "Planned Payments" + CommentSpacing:EditPlannedScreen.kt$//Flow Convert (Amount, Account, Category) + CommentSpacing:EditPlannedScreen.kt$//Flow Empty + CommentSpacing:EditPlannedScreen.kt$//Modals + CommentSpacing:EditPlannedScreen.kt$//scroll hack + CommentSpacing:EditTransactionScreen.kt$//Edit mode + CommentSpacing:EditTransactionScreen.kt$//Modals + CommentSpacing:EditTransactionScreen.kt$//Set exchangeRate to null to reset + CommentSpacing:EditTransactionScreen.kt$//Setting the transaction type to TransactionType.TRANSFER for transactions associated + CommentSpacing:EditTransactionScreen.kt$//This is to scroll the column to the customExchangeCard composable when it is shown + CommentSpacing:EditTransactionScreen.kt$//create new mode + CommentSpacing:EditTransactionScreen.kt$//due date stuff + CommentSpacing:EditTransactionScreen.kt$//has changes + CommentSpacing:EditTransactionScreen.kt$//no changes, pay + CommentSpacing:EditTransactionScreen.kt$//normal transaction + CommentSpacing:EditTransactionScreen.kt$//scroll hack + CommentSpacing:EditTransactionViewModel.kt$EditTransactionViewModel$//Reset Counter + CommentSpacing:EditTransactionViewModel.kt$EditTransactionViewModel$//Select the newly created category + CommentSpacing:EditTransactionViewModel.kt$EditTransactionViewModel$//This is used to when the transaction is associated with a loan/loan record, + CommentSpacing:EditTransactionViewModel.kt$EditTransactionViewModel$//Used for optimising in updating all loan/loanRecords + CommentSpacing:EditTransactionViewModel.kt$EditTransactionViewModel$//update last selected account + CommentSpacing:EditTransactionViewModel.kt$EditTransactionViewModel$//use last selected account + CommentSpacing:Exchange.kt$//Convert: toBaseCurrency -> toToCurrency + CommentSpacing:Exchange.kt$//exchange from base currency to other currency + CommentSpacing:Exchange.kt$//exchange from other currency to base currency + CommentSpacing:Exchange.kt$//exchange from other currency to other currency + CommentSpacing:Exchange.kt$//exchange rate which <= 0 is invalid! + CommentSpacing:Exchange.kt$//fromCurrency = baseCurrency + CommentSpacing:Exchange.kt$//that's the only possible case left because we already checked "fromCurrency == toCurrency" + CommentSpacing:Exchange.kt$//toAmount = fromAmount * rateFromTo + CommentSpacing:Exchange.kt$//toCurrency = baseCurrency + CommentSpacing:Exchange.kt$//we need the rate from baseCurrency to toCurrency + CommentSpacing:Exchange.kt$//we'll get the rate to + CommentSpacing:ExchangeRatesLogic.kt$ExchangeRatesLogic$//convert to base currency + CommentSpacing:ExchangeRatesLogic.kt$ExchangeRatesLogic$//helper + CommentSpacing:ExchangeRatesLogic.kt$ExchangeRatesLogic$//no conversion + CommentSpacing:ExchangeRatesLogic.kt$ExchangeRatesLogic$//no conversion needed, return amount + CommentSpacing:ExportCSVLogic.kt$ExportCSVLogic$//Account + CommentSpacing:ExportCSVLogic.kt$ExportCSVLogic$//Account Color + CommentSpacing:ExportCSVLogic.kt$ExportCSVLogic$//Account Icon + CommentSpacing:ExportCSVLogic.kt$ExportCSVLogic$//Account orderNum + CommentSpacing:ExportCSVLogic.kt$ExportCSVLogic$//Amount + CommentSpacing:ExportCSVLogic.kt$ExportCSVLogic$//Category + CommentSpacing:ExportCSVLogic.kt$ExportCSVLogic$//Category Color + CommentSpacing:ExportCSVLogic.kt$ExportCSVLogic$//Category Icon + CommentSpacing:ExportCSVLogic.kt$ExportCSVLogic$//Currency + CommentSpacing:ExportCSVLogic.kt$ExportCSVLogic$//Date + CommentSpacing:ExportCSVLogic.kt$ExportCSVLogic$//Description + CommentSpacing:ExportCSVLogic.kt$ExportCSVLogic$//Due Date + CommentSpacing:ExportCSVLogic.kt$ExportCSVLogic$//ID + CommentSpacing:ExportCSVLogic.kt$ExportCSVLogic$//Receive Amount + CommentSpacing:ExportCSVLogic.kt$ExportCSVLogic$//Receive Currency + CommentSpacing:ExportCSVLogic.kt$ExportCSVLogic$//Title + CommentSpacing:ExportCSVLogic.kt$ExportCSVLogic$//To Account + CommentSpacing:ExportCSVLogic.kt$ExportCSVLogic$//To Account Color + CommentSpacing:ExportCSVLogic.kt$ExportCSVLogic$//To Account Icon + CommentSpacing:ExportCSVLogic.kt$ExportCSVLogic$//To Account orderNum + CommentSpacing:ExportCSVLogic.kt$ExportCSVLogic$//Transfer Amount + CommentSpacing:ExportCSVLogic.kt$ExportCSVLogic$//Transfer Currency + CommentSpacing:ExportCSVLogic.kt$ExportCSVLogic$//Type + CommentSpacing:FAB.kt$//Floating action button + CommentSpacing:FetchAllTrnsFromServerAct.kt$FetchAllTrnsFromServerAct$//recurse + CommentSpacing:FilterOverlay.kt$//Remove keyword + CommentSpacing:FilterOverlay.kt$//add account + CommentSpacing:FilterOverlay.kt$//add category + CommentSpacing:FilterOverlay.kt$//add trn type + CommentSpacing:FilterOverlay.kt$//expand click area + CommentSpacing:FilterOverlay.kt$//filter duplicated + CommentSpacing:FilterOverlay.kt$//remove account + CommentSpacing:FilterOverlay.kt$//remove category + CommentSpacing:FilterOverlay.kt$//remove trn type + CommentSpacing:FromToTimeRange.kt$//make sure that it's in the future + CommentSpacing:FromToTimeRange.kt$//make sure that it's in the past + CommentSpacing:FromToTimeRange.kt$FromToTimeRange$//+1 day to ensure that everything is included + CommentSpacing:FromToTimeRange.kt$FromToTimeRange$//-1 day to ensure that everything is included + CommentSpacing:GesturesExt.kt$//dragAmount: positive when scrolling down; negative when scrolling up + CommentSpacing:GesturesExt.kt$//offset < 0 when swipe left + CommentSpacing:GesturesExt.kt$//offset < 0 when swipe up + CommentSpacing:GesturesExt.kt$//offset > 0 when swipe down + CommentSpacing:GesturesExt.kt$//offset > 0 when swipe right + CommentSpacing:HomeHeader.kt$//Balance mini row + CommentSpacing:HomeHeader.kt$//settings menu button spacer + CommentSpacing:HomeMoreMenu.kt$//Background + CommentSpacing:HomeMoreMenu.kt$//Second Row + CommentSpacing:HomeMoreMenu.kt$//do nothing + CommentSpacing:HomeTab.kt$<no name provided>$//To prevent unnecessary updates + CommentSpacing:HomeViewModel.kt$HomeViewModel$//----------------------------------------------------------------- + CommentSpacing:HomeViewModel.kt$HomeViewModel$//----------------------------------------------------------------------------------- + CommentSpacing:HomeViewModel.kt$HomeViewModel$//Showing Balance fow 5s + CommentSpacing:HomeViewModel.kt$HomeViewModel$//TODO: Refactor + CommentSpacing:HomeViewModel.kt$HomeViewModel$//This method is used to restore the theme when user imports locally backed up data + CommentSpacing:HomeViewModel.kt$HomeViewModel$//doesn't have transactions lead him to adjust balance + CommentSpacing:HomeViewModel.kt$HomeViewModel$//has transactions show him "Balance" screen + CommentSpacing:HomeViewModel.kt$HomeViewModel$//transactions.forEach { + CommentSpacing:HomeViewModel.kt$HomeViewModel$//update exchange rates from POV of the new base currency + CommentSpacing:HomeViewModel.kt$HomeViewModel$//} + CommentSpacing:ImportFrom.kt$//last spacer + CommentSpacing:ImportFrom.kt$//onboarding toolbar include paddingBottom 16.dp + CommentSpacing:ImportInstructions.kt$//last spacer + CommentSpacing:ImportInstructions.kt$//onboarding toolbar include paddingBottom 16.dp + CommentSpacing:ImportResultUI.kt$//TODO: Implement "See failed imports" + CommentSpacing:ImportViewModel.kt$ImportViewModel$//do nothing, disable back + CommentSpacing:IncomeExpensesRow.kt$//Divider + CommentSpacing:InputField.kt$//Log focus.triggerRecomposition so recomposition can be triggered + CommentSpacing:InputField.kt$//Make sure we don't break the default new line action + CommentSpacing:InputField.kt$//TODO: Fix bug where cursor color isn't updated after theme switch + CommentSpacing:InputField.kt$//do nothing + CommentSpacing:InputField.kt$//do nothing, no need to set input type + CommentSpacing:InputField.kt$//ensure that the EditText is initialized + CommentSpacing:InputField.kt$//hint text alignment cannot be set to EditText + CommentSpacing:InputField.kt$//hint text size cannot be set to EditText + CommentSpacing:InputField.kt$//restore original selection + CommentSpacing:ItemDetailsScreen.kt$//Ivy Wallet's ItemStatisticsScreen() + CommentSpacing:ItemIcon.kt$//2.dp is too small padding + CommentSpacing:ItemIcon.kt$//32.dp - 24.dp = 8.dp / 4 = 2.dp + CommentSpacing:ItemIcon.kt$//48.dp - 32.dp = 16.dp / 4 = 4.dp + CommentSpacing:ItemIcon.kt$//64.dp - 48.dp = 16.dp / 4 = 4.dp + CommentSpacing:ItemIcon.kt$//do nothing for the old format of icons + CommentSpacing:ItemStatisticScreen.kt$//Rounded corners top effect + CommentSpacing:ItemStatisticScreen.kt$//Unspecified + CommentSpacing:ItemStatisticScreen.kt$//itemColor is displayed below the clip + CommentSpacing:ItemStatisticScreen.kt$//preview + CommentSpacing:ItemStatisticViewModel.kt$ItemStatisticViewModel$//History + CommentSpacing:ItemStatisticViewModel.kt$ItemStatisticViewModel$//Overdue + CommentSpacing:ItemStatisticViewModel.kt$ItemStatisticViewModel$//TODO: Rework Overdue to FP + CommentSpacing:ItemStatisticViewModel.kt$ItemStatisticViewModel$//TODO: Rework Upcoming to FP + CommentSpacing:ItemStatisticViewModel.kt$ItemStatisticViewModel$//Upcoming + CommentSpacing:ItemStatisticViewModel.kt$ItemStatisticViewModel$//the server deletes transactions + planned payments for the account + CommentSpacing:ItemStatisticViewModel.kt$ItemStatisticViewModel$//unspecifiedCategory==false is explicitly checked to accommodate for a temp AccountTransfers Category during Reports Screen + CommentSpacing:IvyAndroidApp.kt$//I don't want strings.xml to handle something different than String at this point + CommentSpacing:IvyColorPicker.kt$//Dark + CommentSpacing:IvyColorPicker.kt$//Light + CommentSpacing:IvyColorPicker.kt$//Primary + CommentSpacing:IvyColorPicker.kt$//java.lang.IllegalStateException: pending composition has not been applied + CommentSpacing:IvyColorPicker.kt$//listState.scrollToItem breaks the tests + CommentSpacing:IvyColors.kt$//-------------------------------------------------------------------------------------------------- + CommentSpacing:IvyColors.kt$//Dark + CommentSpacing:IvyColors.kt$//Light + CommentSpacing:IvyColors.kt$//Primary + CommentSpacing:IvyLineChart.kt$//24.dp + CommentSpacing:IvyLineChart.kt$//Lerp: (start + x * (end - start)) = value + CommentSpacing:IvyLineChart.kt$//TODO: Fix + CommentSpacing:IvyLineChart.kt$//marginFromX //TODO: FIX + CommentSpacing:IvyLineChart.kt$//recurse + CommentSpacing:IvyLineChart.kt$//x * (end - start) = value - start + CommentSpacing:IvyLineChart.kt$//x = (value - start) / (end - start) + CommentSpacing:IvyModal.kt$//Bottom padding + CommentSpacing:IvySwitch.kt$//Circle + CommentSpacing:IvyViewPager.kt$//(-1f to 1f) + CommentSpacing:IvyViewPager.kt$//Pages to pre-load + CommentSpacing:IvyViewPager.kt$//current page + CommentSpacing:IvyViewPager.kt$//next page + CommentSpacing:IvyViewPager.kt$//next page (offset = 1f) + CommentSpacing:IvyViewPager.kt$//previous page + CommentSpacing:IvyViewPager.kt$//previous page (offset = -1f) + CommentSpacing:IvyWalletCtx.kt$IvyWalletCtx$//---------------------- Optimization ---------------------------- + CommentSpacing:IvyWalletCtx.kt$IvyWalletCtx$//------------------------------------------ State --------------------------------------------- + CommentSpacing:IvyWalletCtx.kt$IvyWalletCtx$//------------------------------------------- Navigation ---------------------------------------- + CommentSpacing:IvyWalletCtx.kt$IvyWalletCtx$//Activity help ------------------------------------------------------------------------------- + CommentSpacing:IvyWalletCtx.kt$IvyWalletCtx$//Testing -------------------------------------------------------------------------------------- + CommentSpacing:IvyWalletCtx.kt$IvyWalletCtx$//if (BuildConfig.DEBUG) Constants.PREMIUM_INITIAL_VALUE_DEBUG else false + CommentSpacing:IvyWalletCtx.kt$IvyWalletCtx$//this is default value + CommentSpacing:KPIs.kt$KPIs$//Paywall + CommentSpacing:KPIs.kt$KPIs$//Premium + CommentSpacing:Keyboard.kt$//callback as soon as the layout is set with whether the keyboard is open or not + CommentSpacing:Keyboard.kt$//get init state of keyboard + CommentSpacing:Keyboard.kt$//since the observer is hit quite often, only callback when there is a change. + CommentSpacing:Keyboard.kt$//whenever the layout resizes/changes, callback with the state of the keyboard. + CommentSpacing:LoanDetailsScreen.kt$//Rounded corners top effect + CommentSpacing:LoanDetailsScreen.kt$//Spacer(modifier = Modifier.width(8.dp)) + CommentSpacing:LoanDetailsScreen.kt$//Support UI for Old Versions where + CommentSpacing:LoanDetailsScreen.kt$//do Nothing + CommentSpacing:LoanDetailsScreen.kt$//do nothing + CommentSpacing:LoanDetailsScreen.kt$//itemColor is displayed below the clip + CommentSpacing:LoanDetailsScreen.kt$//scroll hack + CommentSpacing:LoanDetailsViewModel.kt$LoanDetailsViewModel$//Using a local variable to calculate the amount and then reassigning to + CommentSpacing:LoanDetailsViewModel.kt$LoanDetailsViewModel$//close screen + CommentSpacing:LoanModal.kt$//+1 because Spacer width 24.dp + CommentSpacing:LoanModal.kt$//breaks UI tests + CommentSpacing:LoanModal.kt$//enabled = nameTextFieldValue.text.isNotNullOrBlank() && amount > 0 && ((createLoanTrans && selectedAcc != null) || !createLoanTrans) + CommentSpacing:LoanRecord.kt$LoanRecord$//This is used store the converted amount for currencies which are different from the loan account currency + CommentSpacing:LoanRecordDTO.kt$LoanRecordDTO$//This is used store the converted amount for currencies which are different from the loan account currency + CommentSpacing:LoanRecordEntity.kt$LoanRecordEntity$//This is used store the converted amount for currencies which are different from the loan account currency + CommentSpacing:LoanRecordModal.kt$//+1 because Spacer width 24.dp + CommentSpacing:LoanRecordModal.kt$//Unchecks the Recalculate Option if Recalculate Checkbox is not visible + CommentSpacing:LoanRecordModal.kt$//breaks UI tests + CommentSpacing:LoanRecordModal.kt$//enabled = amount > 0 && ((createLoanRecordTrans && selectedAcc != null) || !createLoanRecordTrans) + CommentSpacing:LoanRecordModal.kt$//fix broken tests + CommentSpacing:LoanRecordUploader.kt$LoanRecordUploader$//Delete on server + CommentSpacing:LoanRecordUploader.kt$LoanRecordUploader$//delete from local db + CommentSpacing:LoanRecordUploader.kt$LoanRecordUploader$//flag as synced + CommentSpacing:LoanRecordUploader.kt$LoanRecordUploader$//update + CommentSpacing:LoanService.kt$LoanService$//LOAN RECORDS ---------------------------------------------------------------- + CommentSpacing:LoanUploader.kt$LoanUploader$//Delete on server + CommentSpacing:LoanUploader.kt$LoanUploader$//delete from local db + CommentSpacing:LoanUploader.kt$LoanUploader$//flag as synced + CommentSpacing:LoanUploader.kt$LoanUploader$//update + CommentSpacing:LoansScreen.kt$//scroll hack + CommentSpacing:MainBottomBar.kt$//+ & x button + CommentSpacing:MainBottomBar.kt$//24.dp + CommentSpacing:MainBottomBar.kt$//80.dp + CommentSpacing:MainBottomBar.kt$//Add EXPENSE ------------------------------------------------------------------------------ + CommentSpacing:MainBottomBar.kt$//Add TRANSFER ---------------------------------------------------------------------------- + CommentSpacing:MainBottomBar.kt$//Click area + CommentSpacing:MainBottomBar.kt$//consume click + CommentSpacing:MainBottomBar.kt$//consume click, do nothing + CommentSpacing:MainBottomBar.kt$//prevent double open of the screen + CommentSpacing:MainBottomBar.kt$//swipe up + CommentSpacing:MainBottomBar.kt$//swipe up left + CommentSpacing:MainBottomBar.kt$//swipe up right + CommentSpacing:MainViewModel.kt$MainViewModel$//Exiting (the backstack will close the app) + CommentSpacing:MainViewModel.kt$MainViewModel$//Sync exchange rates + CommentSpacing:MainViewModel.kt$MainViewModel$//sync app data + CommentSpacing:MoreInfo.kt$//More Info Button + Info Modal + CommentSpacing:MoreMenu.kt$//Ivy Wallet's Home More menu + CommentSpacing:OnboardingPrivacyTC.kt$//24+8=32.dp + CommentSpacing:OnboardingRouter.kt$OnboardingRouter$//------------------------------------- Step 0 - Splash ---------------------------------------- + CommentSpacing:OnboardingRouter.kt$OnboardingRouter$//------------------------------------- Step 0 ------------------------------------------------- + CommentSpacing:OnboardingRouter.kt$OnboardingRouter$//------------------------------------- Step 1 - Login ----------------------------------------- + CommentSpacing:OnboardingRouter.kt$OnboardingRouter$//------------------------------------- Step 1 ------------------------------------------------- + CommentSpacing:OnboardingRouter.kt$OnboardingRouter$//------------------------------------- Step 2 - Choose path ----------------------------------- + CommentSpacing:OnboardingRouter.kt$OnboardingRouter$//------------------------------------- Step 2 ------------------------------------------------- + CommentSpacing:OnboardingRouter.kt$OnboardingRouter$//------------------------------------- Step 3 - Currency -------------------------------------- + CommentSpacing:OnboardingRouter.kt$OnboardingRouter$//------------------------------------- Step 3 ------------------------------------------------- + CommentSpacing:OnboardingRouter.kt$OnboardingRouter$//------------------------------------- Step 4 - Accounts -------------------------------------- + CommentSpacing:OnboardingRouter.kt$OnboardingRouter$//------------------------------------- Step 4 ------------------------------------------------- + CommentSpacing:OnboardingRouter.kt$OnboardingRouter$//------------------------------------- Step 5 - Categories ------------------------------------ + CommentSpacing:OnboardingRouter.kt$OnboardingRouter$//------------------------------------- Step 5 ------------------------------------------------- + CommentSpacing:OnboardingRouter.kt$OnboardingRouter$//-------------------------------------- Routes ------------------------------------------------ + CommentSpacing:OnboardingRouter.kt$OnboardingRouter$//Route logged user + CommentSpacing:OnboardingRouter.kt$OnboardingRouter$//Route new user + CommentSpacing:OnboardingRouter.kt$OnboardingRouter$//do nothing, consume back + CommentSpacing:OnboardingRouter.kt$OnboardingRouter$//fresh user + CommentSpacing:OnboardingRouter.kt$OnboardingRouter$//let the user exit the app + CommentSpacing:OnboardingRouter.kt$OnboardingRouter$//the rest below is not UI stuff so I don't care + CommentSpacing:OnboardingRouter.kt$OnboardingRouter$//user with Ivy account + CommentSpacing:OnboardingToolbar.kt$//enlarge click area + CommentSpacing:OnboardingViewModel.kt$OnboardingViewModel$//--------------------- Accounts --------------------------------------------------------------- + CommentSpacing:OnboardingViewModel.kt$OnboardingViewModel$//---------------------------- Categories ------------------------------------------------------ + CommentSpacing:OnboardingViewModel.kt$OnboardingViewModel$//Only OnboardingRouter stuff + CommentSpacing:OnboardingViewModel.kt$OnboardingViewModel$//Step 1 --------------------------------------------------------------------------------------- + CommentSpacing:OnboardingViewModel.kt$OnboardingViewModel$//Step 2 --------------------------------------------------------------------------------------- + CommentSpacing:OnboardingViewModel.kt$OnboardingViewModel$//reset login with Google operation state + CommentSpacing:PaywallLogic.kt$PaywallLogic$//+1 for the account being added + CommentSpacing:PaywallLogic.kt$PaywallLogic$//+1 for the category being added + CommentSpacing:PaywallLogic.kt$PaywallLogic$//+1 for the item being added + CommentSpacing:PaywallScreen.kt$//16.dp padding from IvyToolbar already => 24.dp - 16.dp = 8.dp + CommentSpacing:PaywallScreen.kt$//last item spacer + CommentSpacing:PeriodSelector.kt$//preview + CommentSpacing:PieChart.kt$PieChartView$//draw + CommentSpacing:PieChartAct.kt$PieChartAct$//for unspecified + CommentSpacing:PieChartStatisticScreen.kt$//Balance mini row + CommentSpacing:PieChartStatisticScreen.kt$//Unspecified category = Gray + CommentSpacing:PieChartStatisticScreen.kt$//no selectedCategory + CommentSpacing:PieChartStatisticScreen.kt$//preview + CommentSpacing:PieChartStatisticScreen.kt$//scroll hack + CommentSpacing:PieChartStatisticScreen.kt$//selectedCategory && we're selected + CommentSpacing:PlannedPaymentRuleUploader.kt$PlannedPaymentRuleUploader$//Delete on server + CommentSpacing:PlannedPaymentRuleUploader.kt$PlannedPaymentRuleUploader$//delete from local db + CommentSpacing:PlannedPaymentRuleUploader.kt$PlannedPaymentRuleUploader$//flag as synced + CommentSpacing:PlannedPaymentRuleUploader.kt$PlannedPaymentRuleUploader$//update + CommentSpacing:PlannedPaymentsGenerator.kt$PlannedPaymentsGenerator$//delete all not happened transactions + CommentSpacing:PlannedPaymentsGenerator.kt$PlannedPaymentsGenerator$//generate transaction + CommentSpacing:PlannedPaymentsGenerator.kt$PlannedPaymentsGenerator$//skip first N happened transactions + CommentSpacing:PlannedPaymentsLazyColumn.kt$//last spacer - scroll hack + CommentSpacing:PlannedPaymentsLogic.kt$PlannedPaymentsLogic$//0.03% + CommentSpacing:PlannedPaymentsLogic.kt$PlannedPaymentsLogic$//0.22% + CommentSpacing:PlannedPaymentsLogic.kt$PlannedPaymentsLogic$//delete paid oneTime planned payment rules + CommentSpacing:PlannedPaymentsViewModel.kt$PlannedPaymentsViewModel$//One Time + CommentSpacing:PlannedPaymentsViewModel.kt$PlannedPaymentsViewModel$//Recurring + CommentSpacing:PlansSheet.kt$//Lifetime plan + CommentSpacing:PlansSheet.kt$//Subscription + CommentSpacing:PreloadDataLogic.kt$PreloadDataLogic$//Preload data only if the user has less than 2 accounts + CommentSpacing:RecurringRuleModal.kt$//One-time & Multiple Times + CommentSpacing:ReorderModal.kt$//It's first in it's priority + CommentSpacing:ReorderModal.kt$//It's last in it's priority + CommentSpacing:ReorderModal.kt$//Ivy Wallet's reorder modal + CommentSpacing:ReportScreen.kt$//Export CSV + CommentSpacing:ReportScreen.kt$//Filter + CommentSpacing:ReportScreen.kt$//consume clicks + CommentSpacing:ReportViewModel.kt$ReportViewModel$//!NOTE: Amount must be converted to baseCurrency amount + CommentSpacing:ReportViewModel.kt$ReportViewModel$//Filter by Accounts + CommentSpacing:ReportViewModel.kt$ReportViewModel$//Filter by Amount + CommentSpacing:ReportViewModel.kt$ReportViewModel$//Filter by Categories + CommentSpacing:ReportViewModel.kt$ReportViewModel$//Filter by Excluded Keywords + CommentSpacing:ReportViewModel.kt$ReportViewModel$//Filter by Included Keywords + CommentSpacing:ReportViewModel.kt$ReportViewModel$//Filter by Time Period + CommentSpacing:ReportViewModel.kt$ReportViewModel$//Filter by Transaction Type + CommentSpacing:ReportViewModel.kt$ReportViewModel$//Overdue + CommentSpacing:ReportViewModel.kt$ReportViewModel$//Transfers In + CommentSpacing:ReportViewModel.kt$ReportViewModel$//Transfers Out + CommentSpacing:ReportViewModel.kt$ReportViewModel$//Upcoming + CommentSpacing:ReportViewModel.kt$ReportViewModel$//clear filter + CommentSpacing:RestClient.kt$RestClient.Companion$//Add AUTH headers + CommentSpacing:RestClient.kt$RestClient.Companion$//Handle Server errors + CommentSpacing:RestClient.kt$RestClient.Companion$//Session not initialized, yet - do nothing + CommentSpacing:RestClient.kt$RestClient.Companion$//TODO: SECURITY - Considering trusting only Ivy's cert + CommentSpacing:RootActivity.kt$RootActivity$//Helpers for Compose UI + CommentSpacing:RootActivity.kt$RootActivity$//display nothing + CommentSpacing:RootActivity.kt$RootActivity$//month-1 because LocalDate start from 1 and date picker starts from 0 + CommentSpacing:RootViewModel.kt$RootViewModel$//App Lock & UserInactivity -------------------------------------------------------------------- + CommentSpacing:RootViewModel.kt$RootViewModel$//by default we assume that the app is locked + CommentSpacing:RootViewModel.kt$RootViewModel$//initial app locked state + CommentSpacing:Screens.kt$EditTransaction$//extras + CommentSpacing:SearchScreen.kt$//add keyboard height margin at bototm so the list can scroll to bottom + CommentSpacing:SearchScreen.kt$//enlarge click area + CommentSpacing:SearchScreen.kt$//scroll to top when transactions are changed + CommentSpacing:SelectedCategory.kt$SelectedCategory$//null - Unspecified + CommentSpacing:SettingsScreen.kt$//Spacer(Modifier.weight(1f)) + CommentSpacing:SettingsScreen.kt$//last item spacer + CommentSpacing:SettingsScreen.kt$//not synced + CommentSpacing:SettingsScreen.kt$//onboarding toolbar include paddingBottom 16.dp + CommentSpacing:SettingsScreen.kt$//synced + CommentSpacing:SettingsViewModel.kt$SettingsViewModel$//go to home screen + CommentSpacing:SettingsViewModel.kt$SettingsViewModel$//wait for sync to finish + CommentSpacing:SharedPrefs.kt$SharedPrefs.Companion$//----------------------------- App Settings ----------------------------------------------- + CommentSpacing:SharedPrefs.kt$SharedPrefs.Companion$//----------------------------- Others ----------------------------------------------- + CommentSpacing:SharedPrefs.kt$SharedPrefs.Companion$//-------------------------------- Bank Integrations temp ---------------------------------- + CommentSpacing:SharedPrefs.kt$SharedPrefs.Companion$//-------------------------------- Customer Journey ---------------------------------------- + CommentSpacing:SharedPrefs.kt$SharedPrefs.Companion$//-------------------------------------- UX ------------------------------------------------ + CommentSpacing:SharedPrefs.kt$SharedPrefs.Companion$//----------------------------------------------------------------------------- + CommentSpacing:SharedPrefs.kt$SharedPrefs.Companion$//------------------------------------------------------------------------------------------ + CommentSpacing:SharedPrefs.kt$SharedPrefs.Companion$//Analytics + CommentSpacing:SharedPrefs.kt$SharedPrefs.Companion$//Sync + CommentSpacing:SmartTitleSuggestionsLogic.kt$SmartTitleSuggestionsLogic$//all titles used for the specific account + CommentSpacing:SmartTitleSuggestionsLogic.kt$SmartTitleSuggestionsLogic$//all titles used for the specific category + CommentSpacing:SmartTitleSuggestionsLogic.kt$SmartTitleSuggestionsLogic$//exclude already suggested suggestions so they're ordered by priority at the end + CommentSpacing:SmartTitleSuggestionsLogic.kt$SmartTitleSuggestionsLogic$//last resort, suggest by account + CommentSpacing:SmartTitleSuggestionsLogic.kt$SmartTitleSuggestionsLogic$//ordered by N times used + CommentSpacing:SmartTitleSuggestionsLogic.kt$SmartTitleSuggestionsLogic$//suggest by category + CommentSpacing:SmartTitleSuggestionsLogic.kt$SmartTitleSuggestionsLogic$//suggest by title + CommentSpacing:Switch.kt$//Circle + CommentSpacing:TimePeriod.kt$TimePeriod$//e.g. Correct: 14.10-13.11 (Incorrect: 14.10-14.11) + CommentSpacing:TimePeriod.kt$TimePeriod$//not this year + CommentSpacing:TimePeriod.kt$TimePeriod$//startDayOfMonth != 1 just shift N day the month forward so to should +1 month + CommentSpacing:TimePeriod.kt$TimePeriod$//this year + CommentSpacing:TimePeriod.kt$TimePeriod.Companion$//Examples month = Nov. startDate = 7; Period = from Nov (7) till Dec (6) + CommentSpacing:TimePeriod.kt$TimePeriod.Companion$//new monthly period has already started then observe it => current month + CommentSpacing:TimePeriod.kt$TimePeriod.Companion$//new monthly period hasn't yet started then observe the ongoing one => previous month + CommentSpacing:Title.kt$//scroll to top for better UX + CommentSpacing:Toolbar.kt$//show nothing + CommentSpacing:Transaction.kt$Transaction$//TODO: Remove default values & introduce Transaction#dummy() method + CommentSpacing:Transaction.kt$Transaction$//This refers to the loan id that is linked with a transaction + CommentSpacing:Transaction.kt$Transaction$//This refers to the loan record id that is linked with a transaction + CommentSpacing:TransactionCard.kt$//Normal Expense + CommentSpacing:TransactionCard.kt$//Overdue Expense + CommentSpacing:TransactionCard.kt$//Pay/Get button + CommentSpacing:TransactionCard.kt$//TODO: Optimize this + CommentSpacing:TransactionCard.kt$//Transfer + CommentSpacing:TransactionCard.kt$//Upcoming Expense + CommentSpacing:TransactionDTO.kt$TransactionDTO$//This refers to the loan id that is linked with a transaction + CommentSpacing:TransactionDTO.kt$TransactionDTO$//This refers to the loan record id that is linked with a transaction + CommentSpacing:TransactionDao.kt$TransactionDao$//Smart Title Suggestions + CommentSpacing:TransactionEntity.kt$TransactionEntity$//Set isSynced && isDeleted to false so they aren't accounted in the equals check + CommentSpacing:TransactionEntity.kt$TransactionEntity$//This refers to the loan id that is linked with a transaction + CommentSpacing:TransactionEntity.kt$TransactionEntity$//This refers to the loan record id that is linked with a transaction + CommentSpacing:TransactionReminderLogic.kt$TransactionReminderLogic$//8 PM has passed, we'll start reminding from tomorrow + CommentSpacing:TransactionReminderLogic.kt$TransactionReminderLogic$//8 PM is in the future, we can start reminder today + CommentSpacing:TransactionReminderWorker.kt$TransactionReminderWorker$//Double check is needed because the user can switch off notifications in settings after it has been scheduled to show notifications for the next day + CommentSpacing:TransactionReminderWorker.kt$TransactionReminderWorker$//Have less than 1 two transactions today, remind them + CommentSpacing:TransactionUploader.kt$TransactionUploader$//Delete on server + CommentSpacing:TransactionUploader.kt$TransactionUploader$//delete from local db + CommentSpacing:TransactionUploader.kt$TransactionUploader$//flag as synced + CommentSpacing:TransactionUploader.kt$TransactionUploader$//update + CommentSpacing:TransactionViewModel.kt$TransactionViewModel$//TODO: Handle properly transfers exchange rate + CommentSpacing:TransactionViewModel.kt$TransactionViewModel$//TODO: Handle transfers properly + CommentSpacing:TransactionViewModel.kt$TransactionViewModel$//TRANSFER w/o toAccount + CommentSpacing:Transactions.kt$//guard + CommentSpacing:Transactions.kt$//last spacer - scroll hack + CommentSpacing:TrnByIdAct.kt$TrnByIdAct$//transactionId + CommentSpacing:TrnDateDividers.kt$//this case shouldn't happen + CommentSpacing:TrnEvent.kt$TrnEvent$//---------------------------- + CommentSpacing:TrnState.kt$TrnState.NewTransaction$//-------------------------- + CommentSpacing:TrnState.kt$TrnState.NewTransaction$//Transfers + CommentSpacing:UIExt.kt$//callback as soon as the layout is set with whether the keyboard is open or not + CommentSpacing:UIExt.kt$//get init state of keyboard + CommentSpacing:UIExt.kt$//since the observer is hit quite often, only callback when there is a change. + CommentSpacing:UIExt.kt$//whenever the layout resizes/changes, callback with the state of the keyboard. + CommentSpacing:ViewPager.kt$//0f to 1f + CommentSpacing:ViewPager.kt$//page appears + CommentSpacing:ViewPager.kt$//page disappears + CommentSpacing:ViewPager.kt$//pageOffset <0 when moving forward + CommentSpacing:WalletAccountLogic.kt$WalletAccountLogic$//TODO: Remove this once Bank Integration trn sync is properly implemented + CommentSpacing:WalletAccountLogic.kt$WalletAccountLogic$//add expense + CommentSpacing:WalletAccountLogic.kt$WalletAccountLogic$//add income + CommentSpacing:WalletAccountLogic.kt$WalletAccountLogic$//transfer out + CommentSpacing:WalletAccountLogic.kt$WalletAccountLogic$//transfers in + CommentSpacing:WalletCategoryLogic.kt$WalletCategoryLogic$//TODO: Transfer zero operation + CommentSpacing:WalletCharts.kt$//recurse + CommentSpacing:WalletCharts.kt$//scroll hack + CommentSpacing:WalletValueFunctions.kt$WalletValueFunctions$//Do not remove copy() + CommentSpacing:WebViewScreen.kt$//Activate Dark mode if the user uses Dark theme & it's supported + CommentSpacing:WebViewScreen.kt$//Android WebView should not be a in a scroll container :/ + CommentSpacing:WebViewScreen.kt$//Chrome Client is compatible with most of websites + CommentSpacing:WebViewScreen.kt$//because anchor links doesn't work + CommentSpacing:WebViewScreen.kt$//https://stackoverflow.com/questions/3039555/android-webview-anchor-link-jump-link-not-working + CommentSpacing:WrapContentRow.kt$//Reset x + CommentSpacing:WrapContentRow.kt$//item is overflowing -> move it to a new row + CommentSpacing:build.gradle.kts$//------------------------------------------------------- + CommentSpacing:build.gradle.kts$//Exclude this files so Jetpack Compose UI tests can build + CommentSpacing:build.gradle.kts$//Must match kotlinVersion from dependencies.kt + CommentSpacing:build.gradle.kts$//Required by Kotest + CommentSpacing:build.gradle.kts$//URL: https://developers.google.com/android/guides/google-services-plugin + CommentSpacing:build.gradle.kts$//https://mvnrepository.com/artifact/com.android.tools.build/gradle?repo=google + CommentSpacing:dependencies.kt$//--------------------------------------------------------------------------------- + CommentSpacing:dependencies.kt$//URL: https://developer.android.com/jetpack/androidx/releases/core + CommentSpacing:dependencies.kt$//URL: https://developer.android.com/jetpack/androidx/releases/recyclerview + CommentSpacing:dependencies.kt$//URL: https://developer.android.com/jetpack/androidx/releases/work + CommentSpacing:dependencies.kt$//URL: https://developer.android.com/training/dependency-injection/hilt-jetpack#workmanager + CommentSpacing:dependencies.kt$//URL: https://github.com/JakeWharton/timber/releases + CommentSpacing:dependencies.kt$//URL: https://github.com/airbnb/lottie-android + CommentSpacing:dependencies.kt$//URL: https://github.com/google/gson + CommentSpacing:dependencies.kt$//URL: https://github.com/greenrobot/EventBus/releases + CommentSpacing:dependencies.kt$//URL: https://github.com/jeziellago/compose-markdown + CommentSpacing:dependencies.kt$//URL: https://github.com/notKamui/Keval - evaluate math expressions (calculator) + CommentSpacing:dependencies.kt$//URL: https://github.com/square/okhttp/tree/master/okhttp-logging-interceptor + CommentSpacing:dependencies.kt$//URL: https://github.com/square/retrofit + CommentSpacing:dependencies.kt$//URL: https://mvnrepository.com/artifact/androidx.hilt/hilt-lifecycle-viewmodel?repo=google + CommentSpacing:dependencies.kt$//https://developer.android.com/jetpack/androidx/releases/appcompat + CommentSpacing:dependencies.kt$Project$//App + CommentSpacing:dependencies.kt$Project$//Compile SDK & Build Tools + CommentSpacing:dependencies.kt$Project$//Version + ComplexCondition:AnalyticsReportScreen.kt$loading || onboardingReport == null || kpis == null || health == null || userStats == null + ComplexCondition:EditTransactionViewModel.kt$EditTransactionViewModel$customExchangeRateState.value.showCard && toAccCurrencyCode == customExchangeRateState.value.toCurrencyCode && fromAccCurrencyCode == customExchangeRateState.value.fromCurrencyCode && !resetRate + ComplexCondition:Transactions.kt$(upcoming == null || upcoming.trns.isEmpty()) && (overdue == null || overdue.trns.isEmpty()) && history.isEmpty() + ComposableNaming:Compose.kt$onEvent + ComposableNaming:ComposeExt.kt$onScreenStart + ComposableNaming:Keyboard.kt$hideKeyboard + ComposableNaming:Keyboard.kt$showKeyboard + ComposableNaming:UIExt.kt$setStatusBarDarkTextCompat + ComposableParamOrder:AddKeywordModal.kt$AddKeywordModal + ComposableParamOrder:AmountModal.kt$AmountKeyboard + ComposableParamOrder:AmountModal.kt$AmountModal + ComposableParamOrder:AmountModal.kt$KeypadCircleButton + ComposableParamOrder:BackBottomBar.kt$BackBottomBar + ComposableParamOrder:BalanceRow.kt$BalanceRow + ComposableParamOrder:BalanceRow.kt$BalanceRowMedium + ComposableParamOrder:BalanceRow.kt$BalanceRowMini + ComposableParamOrder:BudgetBattery.kt$BudgetBattery + ComposableParamOrder:BudgetScreen.kt$NoBudgetsEmptyState + ComposableParamOrder:BufferBattery.kt$BufferBattery + ComposableParamOrder:Button.kt$Button + ComposableParamOrder:ButtonWithIcon.kt$Button + ComposableParamOrder:CalculatorModal.kt$CalculatorModal + ComposableParamOrder:CategoriesScreen.kt$AddedSpent + ComposableParamOrder:CategoriesScreen.kt$SortModal + ComposableParamOrder:CategoryCharts.kt$CategoriesChart + ComposableParamOrder:ChangeTransactionTypeModal.kt$ChangeTransactionTypeModal + ComposableParamOrder:ChartsScreen.kt$ChartButton + ComposableParamOrder:Checkbox.kt$Checkbox + ComposableParamOrder:Checkbox.kt$CheckboxWithText + ComposableParamOrder:ChooseCategoryModal.kt$ChooseCategoryModal + ComposableParamOrder:ChooseIconModal.kt$ChooseIconModal + ComposableParamOrder:ChoosePeriodModal.kt$MonthButton + ComposableParamOrder:ChooseStartDateOfMonthModal.kt$ChooseStartDateOfMonthModal + ComposableParamOrder:CircleButtons.kt$CircleButton + ComposableParamOrder:CircleButtons.kt$CircleButtonFilled + ComposableParamOrder:CircleButtons.kt$CircleButtonFilledGradient + ComposableParamOrder:CurrencyPicker.kt$CurrencyPicker + ComposableParamOrder:CustomExchangeRateCard.kt$CustomExchangeRateCard + ComposableParamOrder:DeleteModal.kt$DeleteModal + ComposableParamOrder:DescriptionModal.kt$DescriptionModal + ComposableParamOrder:EditBottomSheet.kt$AccountsRow + ComposableParamOrder:EditBottomSheet.kt$Amount + ComposableParamOrder:EditBottomSheet.kt$EditBottomSheet + ComposableParamOrder:EditPlannedScreen.kt$UI + ComposableParamOrder:EditTransactionScreen.kt$UI + ComposableParamOrder:FilterOverlay.kt$TypeFilterCheckbox + ComposableParamOrder:GradientCut.kt$GradientCutTop + ComposableParamOrder:HomeHeader.kt$CashFlowInfo + ComposableParamOrder:HomeHeader.kt$HeaderStickyRow + ComposableParamOrder:HomeHeader.kt$HomeHeader + ComposableParamOrder:HomeTab.kt$HomeLazyColumn + ComposableParamOrder:IconButton.kt$IconButton + ComposableParamOrder:ImportInstructions.kt$InstructionButton + ComposableParamOrder:IncomeExpensesRow.kt$IncomeExpensesRow + ComposableParamOrder:ItemIcon.kt$ItemIcon + ComposableParamOrder:ItemIcon.kt$ItemIconL + ComposableParamOrder:ItemIcon.kt$ItemIconM + ComposableParamOrder:ItemIcon.kt$ItemIconMDefaultIcon + ComposableParamOrder:ItemIcon.kt$ItemIconS + ComposableParamOrder:ItemIcon.kt$ItemIconSDefaultIcon + ComposableParamOrder:ItemStatisticScreen.kt$Header + ComposableParamOrder:ItemStatisticScreen.kt$UI + ComposableParamOrder:IvyBasicTextField.kt$IvyBasicTextField + ComposableParamOrder:IvyBorderButton.kt$IvyBorderButton + ComposableParamOrder:IvyButton.kt$IvyButton + ComposableParamOrder:IvyCheckbox.kt$IvyCheckbox + ComposableParamOrder:IvyCheckbox.kt$IvyCheckboxWithText + ComposableParamOrder:IvyChecklistTextField.kt$IvyChecklistTextField + ComposableParamOrder:IvyCircleButton.kt$IvyCircleButton + ComposableParamOrder:IvyDescriptionTextField.kt$IvyDescriptionTextField + ComposableParamOrder:IvyIcon.kt$IvyIcon + ComposableParamOrder:IvyIcon.kt$IvyIconScaled + ComposableParamOrder:IvyLineChart.kt$IvyLineChart + ComposableParamOrder:IvyModal.kt$IvyModal + ComposableParamOrder:IvyModalComponents.kt$ModalCheck + ComposableParamOrder:IvyModalComponents.kt$ModalDynamicPrimaryAction + ComposableParamOrder:IvyModalComponents.kt$ModalPositiveButton + ComposableParamOrder:IvyNameTextFieldValue.kt$IvyNameTextField + ComposableParamOrder:IvyNumberTextField.kt$IvyNumberTextField + ComposableParamOrder:IvyOutlinedButton.kt$IvyOutlinedButton + ComposableParamOrder:IvyOutlinedButton.kt$IvyOutlinedButtonFillMaxWidth + ComposableParamOrder:IvyOutlinedTextField.kt$IvyOutlinedTextField + ComposableParamOrder:IvySwitch.kt$IvySwitch + ComposableParamOrder:IvyText.kt$IvyText + ComposableParamOrder:IvyTitleTextField.kt$IvyTitleTextField + ComposableParamOrder:LoanDetailsScreen.kt$Header + ComposableParamOrder:LoanDetailsScreen.kt$UI + ComposableParamOrder:LoanModal.kt$AccountsRow + ComposableParamOrder:LoanModal.kt$LoanModal + ComposableParamOrder:LoanRecordModal.kt$AccountsRow + ComposableParamOrder:LoanRecordModal.kt$LoanRecordModal + ComposableParamOrder:LoansScreen.kt$NoLoansEmptyState + ComposableParamOrder:MonthPickerModal.kt$MonthPickerModal + ComposableParamOrder:OnboardingComponents.kt$OnboardingButton + ComposableParamOrder:OnboardingProgressSlider.kt$OnboardingProgressSlider + ComposableParamOrder:PeriodSelector.kt$PeriodSelector + ComposableParamOrder:PieChartStatisticBottomBar.kt$PieChartStatisticBottomBar + ComposableParamOrder:PieChartStatisticScreen.kt$Header + ComposableParamOrder:PlannedPaymentsBottomBar.kt$PlannedPaymentsBottomBar + ComposableParamOrder:PlannedPaymentsLazyColumn.kt$PlannedPaymentsLazyColumn + ComposableParamOrder:PlansSheet.kt$PlansSheet + ComposableParamOrder:Preview.kt$IvyPreview + ComposableParamOrder:PrimaryAttributeColumn.kt$PrimaryAttributeColumn + ComposableParamOrder:ProgressBar.kt$ProgressBar + ComposableParamOrder:ProgressModal.kt$ProgressModal + ComposableParamOrder:ReorderModal.kt$ReorderModal + ComposableParamOrder:ReorderModal.kt$ReorderModalSingleType + ComposableParamOrder:ScreenTitle.kt$ScreenTitle + ComposableParamOrder:SettingsScreen.kt$AppSwitch + ComposableParamOrder:SettingsScreen.kt$SettingsButtonRow + ComposableParamOrder:SettingsScreen.kt$UI + ComposableParamOrder:Shapes.kt$Shape + ComposableParamOrder:Shapes.kt$ShapeOutlined + ComposableParamOrder:Switch.kt$Switch + ComposableParamOrder:Title.kt$Title + ComposableParamOrder:WrapContentRow.kt$WrapContentRow + CompositionLocalAllowlist:IvyTheme.kt$LocalIvyColors + CompositionLocalAllowlist:IvyTheme.kt$LocalIvyShapes + CompositionLocalAllowlist:IvyTheme.kt$LocalIvyTypography + CompositionLocalAllowlist:IvyUI.kt$LocalIvyContext + ConstructorParameterNaming:LoanTransactionsLogic.kt$LoanTransactionsLogic$val Loan: LTLoanMapper + ConstructorParameterNaming:LoanTransactionsLogic.kt$LoanTransactionsLogic$val LoanRecord: LTLoanRecordMapper + ConstructorParameterNaming:OnboardingRouter.kt$OnboardingRouter$private val _accountSuggestions: MutableLiveData<List<CreateAccountData>> + ConstructorParameterNaming:OnboardingRouter.kt$OnboardingRouter$private val _accounts: MutableLiveData<List<AccountBalance>> + ConstructorParameterNaming:OnboardingRouter.kt$OnboardingRouter$private val _categories: MutableLiveData<List<Category>> + ConstructorParameterNaming:OnboardingRouter.kt$OnboardingRouter$private val _categorySuggestions: MutableLiveData<List<CreateCategoryData>> + ConstructorParameterNaming:OnboardingRouter.kt$OnboardingRouter$private val _opGoogleSignIn: MutableLiveData<OpResult<Unit>?> + ConstructorParameterNaming:OnboardingRouter.kt$OnboardingRouter$private val _state: MutableLiveData<OnboardingState> + ConstructorParameterNaming:ReorderModal.kt$Adapter$private val ItemContent: @Composable RowScope.(Int, Any) -> Unit + CyclomaticComplexMethod:AccountModal.kt$@Composable fun BoxWithConstraintsScope.AccountModal( modal: AccountModalData?, onCreateAccount: (CreateAccountData) -> Unit, onEditAccount: (Account, balance: Double) -> Unit, dismiss: () -> Unit, ) + CyclomaticComplexMethod:AnalyticsReportViewModel.kt$AnalyticsReportViewModel$fun start( startDate: LocalDateTime? = this.startDate.value, endDate: LocalDateTime? = this.endDate.value, ) + CyclomaticComplexMethod:BudgetBattery.kt$@Composable fun BudgetBattery( modifier: Modifier = Modifier, currency: String, expenses: Double, budget: Double, backgroundNotFilled: Color = UI.colors.pure, onClick: (() -> Unit)? = null, ) + CyclomaticComplexMethod:CSVViewModel.kt$CSVViewModel$private suspend fun handleEvent(event: CSVEvent) + CyclomaticComplexMethod:DonateScreen.kt$@Composable private fun DonateOptionPicker( option: DonateOption, onSelect: (DonateOption) -> Unit ) + CyclomaticComplexMethod:EditTransactionScreen.kt$@ExperimentalFoundationApi @Composable private fun BoxWithConstraintsScope.UI( screen: EditTransaction, transactionType: TransactionType, baseCurrency: String, initialTitle: String?, titleSuggestions: Set<String>, description: String?, category: Category?, dateTime: LocalDateTime?, account: Account?, toAccount: Account?, dueDate: LocalDateTime?, amount: Double, loanData: EditTransactionDisplayLoan = EditTransactionDisplayLoan(), backgroundProcessing: Boolean = false, customExchangeRateState: CustomExchangeRateState, categories: List<Category>, accounts: List<Account>, hasChanges: Boolean = false, onTitleChanged: (String?) -> Unit, onDescriptionChanged: (String?) -> Unit, onAmountChanged: (Double) -> Unit, onCategoryChanged: (Category?) -> Unit, onAccountChanged: (Account) -> Unit, onToAccountChanged: (Account) -> Unit, onDueDateChanged: (LocalDateTime?) -> Unit, onSetDateTime: (LocalDateTime) -> Unit, onSetTransactionType: (TransactionType) -> Unit, onCreateCategory: (CreateCategoryData) -> Unit, onEditCategory: (Category) -> Unit, onPayPlannedPayment: () -> Unit, onSave: (closeScreen: Boolean) -> Unit, onSetHasChanges: (hasChanges: Boolean) -> Unit, onDelete: () -> Unit, onCreateAccount: (CreateAccountData) -> Unit, onExchangeRateChanged: (Double?) -> Unit = { } ) + CyclomaticComplexMethod:EditTransactionViewModel.kt$EditTransactionViewModel$private suspend fun updateCustomExchangeRateState( toAccount: Account? = null, fromAccount: Account? = null, amt: Double? = null, exchangeRate: Double? = null, resetRate: Boolean = false ) + CyclomaticComplexMethod:ExportCSVLogic.kt$ExportCSVLogic$private fun Transaction.toCSV( baseCurrency: String, accountMap: Map<UUID, Account>, categoryMap: Map<UUID, Category> ): String + CyclomaticComplexMethod:HomeViewModel.kt$HomeViewModel$override suspend fun handleEvent(event: HomeEvent): suspend () -> HomeState + CyclomaticComplexMethod:InputField.kt$fun EditText.setupInputType( inputType: IvyInputType, imeAction: IvyImeAction, onImeActionListener: ((EditText) -> Unit)? ) + CyclomaticComplexMethod:LoanModal.kt$@Composable fun BoxWithConstraintsScope.LoanModal( accounts: List<Account> = emptyList(), onCreateAccount: (CreateAccountData) -> Unit = {}, modal: LoanModalData?, onCreateLoan: (CreateLoanData) -> Unit, onEditLoan: (Loan, Boolean) -> Unit, onPerformCalculations: () -> Unit = {}, dismiss: () -> Unit, ) + CyclomaticComplexMethod:LoanRecordModal.kt$@Composable fun BoxWithConstraintsScope.LoanRecordModal( modal: LoanRecordModalData?, accounts: List<Account> = emptyList(), onCreateAccount: (CreateAccountData) -> Unit = {}, onCreate: (CreateLoanRecordData) -> Unit, onEdit: (EditLoanRecordData) -> Unit, onDelete: (LoanRecord) -> Unit, dismiss: () -> Unit ) + CyclomaticComplexMethod:MainBottomBar.kt$@Composable fun BoxWithConstraintsScope.BottomBar( tab: MainTab, selectTab: (MainTab) -> Unit, onAddIncome: () -> Unit, onAddExpense: () -> Unit, onAddTransfer: () -> Unit, onAddPlannedPayment: () -> Unit, showAddAccountModal: () -> Unit, ) + CyclomaticComplexMethod:ParseFields.kt$fun parseTransactionType( value: String, metadata: TrnTypeMetadata ): TransactionType? + CyclomaticComplexMethod:PlannedPaymentsLogic.kt$PlannedPaymentsLogic$suspend fun payOrGet( transactions: List<Transaction>, syncTransaction: Boolean = true, skipTransaction: Boolean = false, onUpdateUI: suspend (paidTransactions: List<Transaction>) -> Unit ) + CyclomaticComplexMethod:PlansSheet.kt$@Composable private fun ColumnScope.PlanCard( plan: Plan, purchased: Boolean, selectedPlan: Plan?, monthlyPlan: Plan?, onClick: () -> Unit ) + CyclomaticComplexMethod:ReportViewModel.kt$ReportViewModel$private suspend fun filterTransactions( baseCurrency: String, accounts: List<Account>, filter: ReportFilter, ): List<Transaction> + CyclomaticComplexMethod:RootActivity.kt$RootActivity$@ExperimentalFoundationApi @ExperimentalAnimationApi @Composable private fun BoxWithConstraintsScope.Screens(screen: Screen?) + CyclomaticComplexMethod:TransactionCard.kt$@Composable fun TransactionCard( baseData: AppBaseData, transaction: Transaction, onPayOrGet: (Transaction) -> Unit, onSkipTransaction: (Transaction) -> Unit = {}, onClick: (Transaction) -> Unit, ) + CyclomaticComplexMethod:TransactionViewModel.kt$TransactionViewModel$override suspend fun handleEvent(event: TrnEvent): suspend () -> TrnState + CyclomaticComplexMethod:ViewPager.kt$@Composable fun Pager( state: PagerState, modifier: Modifier = Modifier, pageContent: @Composable PagerScope.() -> Unit ) + EmptyCatchBlock:CSVImporter.kt$CSVImporter${ } + EmptyCatchBlock:ComposeExt.kt${ } + EmptyCatchBlock:IntervalPickerRow.kt${ } + EmptyClassBlock:AccountsUpdatedEvent.kt$AccountsUpdatedEvent${ } + EmptyDefaultConstructor:IvyBilling.kt$IvyBilling$( ) + EmptyFunctionBlock:AccountCharts.kt${ } + EmptyFunctionBlock:RestClient.kt$RestClient.Companion.<no name provided>${ } + EmptyFunctionBlock:RootViewModel.kt$RootViewModel.<no name provided>${ } + ExplicitItLambdaParameter:TimeValue.kt${ index, it -> Value( x = index.toDouble(), y = it.value ) } + ExplicitItLambdaParameter:TimeValue.kt${ index, it -> Value( x = index.toDouble(), y = it.value.toDouble() ) } + Filename:dependencies.kt$com.ivy.wallet.buildsrc.dependencies.kt + FinalNewline:AccValueFunctions.kt$com.ivy.wallet.domain.pure.transaction.AccValueFunctions.kt + FinalNewline:Account.kt$com.ivy.wallet.domain.data.core.Account.kt + FinalNewline:AccountBalance.kt$com.ivy.wallet.ui.onboarding.model.AccountBalance.kt + FinalNewline:AccountByIdAct.kt$com.ivy.wallet.domain.action.account.AccountByIdAct.kt + FinalNewline:AccountCharts.kt$com.ivy.wallet.ui.charts.charts.AccountCharts.kt + FinalNewline:AccountCreator.kt$com.ivy.wallet.domain.deprecated.logic.AccountCreator.kt + FinalNewline:AccountDao.kt$com.ivy.wallet.io.persistence.dao.AccountDao.kt + FinalNewline:AccountData.kt$com.ivy.wallet.ui.accounts.AccountData.kt + FinalNewline:AccountDataAct.kt$com.ivy.wallet.domain.action.viewmodel.account.AccountDataAct.kt + FinalNewline:AccountEntity.kt$com.ivy.wallet.io.persistence.data.AccountEntity.kt + FinalNewline:AccountFunctions.kt$com.ivy.wallet.domain.pure.account.AccountFunctions.kt + FinalNewline:AccountModal.kt$com.ivy.wallet.ui.theme.modal.edit.AccountModal.kt + FinalNewline:AccountService.kt$com.ivy.wallet.io.network.service.AccountService.kt + FinalNewline:AccountState.kt$com.ivy.wallet.ui.accounts.AccountState.kt + FinalNewline:AccountSync.kt$com.ivy.wallet.domain.deprecated.sync.item.AccountSync.kt + FinalNewline:AccountUploader.kt$com.ivy.wallet.domain.deprecated.sync.uploader.AccountUploader.kt + FinalNewline:AccountsAct.kt$com.ivy.wallet.domain.action.account.AccountsAct.kt + FinalNewline:AccountsEvent.kt$com.ivy.wallet.ui.accounts.AccountsEvent.kt + FinalNewline:AccountsResponse.kt$com.ivy.wallet.io.network.request.account.AccountsResponse.kt + FinalNewline:AccountsUpdatedEvent.kt$com.ivy.wallet.domain.event.AccountsUpdatedEvent.kt + FinalNewline:AccountsViewModel.kt$com.ivy.wallet.ui.accounts.AccountsViewModel.kt + FinalNewline:ActivityResultExt.kt$com.ivy.wallet.utils.ActivityResultExt.kt + FinalNewline:AddKeywordModal.kt$com.ivy.wallet.ui.theme.modal.AddKeywordModal.kt + FinalNewline:AddPrimaryAttributeButton.kt$com.ivy.wallet.ui.theme.components.AddPrimaryAttributeButton.kt + FinalNewline:AddRateModal.kt$com.ivy.wallet.ui.exchangerates.modal.AddRateModal.kt + FinalNewline:AddTransactionWidget.kt$com.ivy.wallet.ui.widget.AddTransactionWidget.kt + FinalNewline:AddTransactionWidgetClick.kt$com.ivy.wallet.ui.widget.AddTransactionWidgetClick.kt + FinalNewline:AddTransactionWidgetCompact.kt$com.ivy.wallet.ui.widget.AddTransactionWidgetCompact.kt + FinalNewline:AllTrnsAct.kt$com.ivy.wallet.domain.action.transaction.AllTrnsAct.kt + FinalNewline:AmountCurrency.kt$com.ivy.wallet.ui.theme.wallet.AmountCurrency.kt + FinalNewline:AmountFormatting.kt$com.ivy.wallet.utils.AmountFormatting.kt + FinalNewline:AnalyticsEvent.kt$com.ivy.wallet.domain.data.analytics.AnalyticsEvent.kt + FinalNewline:AnalyticsReportResponse.kt$com.ivy.wallet.io.network.request.analytics.AnalyticsReportResponse.kt + FinalNewline:AnalyticsReportViewModel.kt$com.ivy.wallet.ui.analytics.AnalyticsReportViewModel.kt + FinalNewline:AnalyticsService.kt$com.ivy.wallet.io.network.service.AnalyticsService.kt + FinalNewline:AnalyticsTab.kt$com.ivy.wallet.ui.analytics.AnalyticsTab.kt + FinalNewline:Android.kt$com.ivy.design.utils.Android.kt + FinalNewline:Animation.kt$com.ivy.design.utils.Animation.kt + FinalNewline:AppBaseData.kt$com.ivy.wallet.ui.data.AppBaseData.kt + FinalNewline:AppModuleDI.kt$com.ivy.wallet.AppModuleDI.kt + FinalNewline:AuthProviderType.kt$com.ivy.wallet.domain.data.AuthProviderType.kt + FinalNewline:AuthResponse.kt$com.ivy.wallet.io.network.request.auth.AuthResponse.kt + FinalNewline:AuthService.kt$com.ivy.wallet.io.network.service.AuthService.kt + FinalNewline:BackBottomBar.kt$com.ivy.wallet.ui.theme.components.BackBottomBar.kt + FinalNewline:Background.kt$com.ivy.design.l1_buildingBlocks.data.Background.kt + FinalNewline:BackupLogic.kt$com.ivy.wallet.domain.deprecated.logic.zip.BackupLogic.kt + FinalNewline:BalanceChartAct.kt$com.ivy.wallet.domain.action.charts.BalanceChartAct.kt + FinalNewline:BalanceRow.kt$com.ivy.wallet.ui.theme.components.BalanceRow.kt + FinalNewline:BalanceViewModel.kt$com.ivy.wallet.ui.balance.BalanceViewModel.kt + FinalNewline:BaseCurrencyAct.kt$com.ivy.wallet.domain.action.settings.BaseCurrencyAct.kt + FinalNewline:Budget.kt$com.ivy.wallet.domain.data.core.Budget.kt + FinalNewline:BudgetBattery.kt$com.ivy.wallet.ui.theme.components.BudgetBattery.kt + FinalNewline:BudgetCreator.kt$com.ivy.wallet.domain.deprecated.logic.BudgetCreator.kt + FinalNewline:BudgetDTO.kt$com.ivy.wallet.io.network.data.BudgetDTO.kt + FinalNewline:BudgetDao.kt$com.ivy.wallet.io.persistence.dao.BudgetDao.kt + FinalNewline:BudgetEntity.kt$com.ivy.wallet.io.persistence.data.BudgetEntity.kt + FinalNewline:BudgetModal.kt$com.ivy.wallet.ui.theme.modal.BudgetModal.kt + FinalNewline:BudgetService.kt$com.ivy.wallet.io.network.service.BudgetService.kt + FinalNewline:BudgetSync.kt$com.ivy.wallet.domain.deprecated.sync.item.BudgetSync.kt + FinalNewline:BudgetUploader.kt$com.ivy.wallet.domain.deprecated.sync.uploader.BudgetUploader.kt + FinalNewline:BudgetViewModel.kt$com.ivy.wallet.ui.budget.BudgetViewModel.kt + FinalNewline:BudgetsAct.kt$com.ivy.wallet.domain.action.budget.BudgetsAct.kt + FinalNewline:BudgetsResponse.kt$com.ivy.wallet.io.network.request.budget.BudgetsResponse.kt + FinalNewline:BufferBattery.kt$com.ivy.wallet.ui.theme.components.BufferBattery.kt + FinalNewline:BufferInfo.kt$com.ivy.wallet.ui.data.BufferInfo.kt + FinalNewline:BufferModal.kt$com.ivy.wallet.ui.theme.modal.BufferModal.kt + FinalNewline:ButtonWithIcon.kt$com.ivy.design.l2_components.ButtonWithIcon.kt + FinalNewline:CSVEvent.kt$com.ivy.wallet.ui.csv.CSVEvent.kt + FinalNewline:CSVImporter.kt$com.ivy.wallet.domain.deprecated.logic.csv.CSVImporter.kt + FinalNewline:CSVImporterV2.kt$com.ivy.wallet.ui.csv.domain.CSVImporterV2.kt + FinalNewline:CSVMapper.kt$com.ivy.wallet.domain.deprecated.logic.csv.CSVMapper.kt + FinalNewline:CSVNormalizer.kt$com.ivy.wallet.domain.deprecated.logic.csv.CSVNormalizer.kt + FinalNewline:CSVRow.kt$com.ivy.wallet.domain.deprecated.logic.csv.model.CSVRow.kt + FinalNewline:CSVState.kt$com.ivy.wallet.ui.csv.CSVState.kt + FinalNewline:CSVViewModel.kt$com.ivy.wallet.ui.csv.CSVViewModel.kt + FinalNewline:CalcAccBalanceAct.kt$com.ivy.wallet.domain.action.account.CalcAccBalanceAct.kt + FinalNewline:CalcAccIncomeExpenseAct.kt$com.ivy.wallet.domain.action.account.CalcAccIncomeExpenseAct.kt + FinalNewline:CalcBufferDiffAct.kt$com.ivy.wallet.domain.action.settings.CalcBufferDiffAct.kt + FinalNewline:CalcIncomeExpenseAct.kt$com.ivy.wallet.domain.action.wallet.CalcIncomeExpenseAct.kt + FinalNewline:CalcTrnsIncomeExpenseAct.kt$com.ivy.wallet.domain.action.transaction.CalcTrnsIncomeExpenseAct.kt + FinalNewline:CalculatorModal.kt$com.ivy.wallet.ui.theme.modal.edit.CalculatorModal.kt + FinalNewline:Card.kt$com.ivy.design.l3_ivyComponents.Card.kt + FinalNewline:CatValueFunctions.kt$com.ivy.wallet.domain.pure.transaction.CatValueFunctions.kt + FinalNewline:CategoriesAct.kt$com.ivy.wallet.domain.action.category.CategoriesAct.kt + FinalNewline:CategoriesScreen.kt$com.ivy.wallet.ui.category.CategoriesScreen.kt + FinalNewline:Category.kt$com.ivy.wallet.domain.data.core.Category.kt + FinalNewline:Category.kt$com.ivy.wallet.ui.edit.core.Category.kt + FinalNewline:CategoryAmount.kt$com.ivy.wallet.ui.statistic.level1.CategoryAmount.kt + FinalNewline:CategoryByIdAct.kt$com.ivy.wallet.domain.action.category.CategoryByIdAct.kt + FinalNewline:CategoryCreator.kt$com.ivy.wallet.domain.deprecated.logic.CategoryCreator.kt + FinalNewline:CategoryDTO.kt$com.ivy.wallet.io.network.data.CategoryDTO.kt + FinalNewline:CategoryDao.kt$com.ivy.wallet.io.persistence.dao.CategoryDao.kt + FinalNewline:CategoryData.kt$com.ivy.wallet.ui.category.CategoryData.kt + FinalNewline:CategoryEntity.kt$com.ivy.wallet.io.persistence.data.CategoryEntity.kt + FinalNewline:CategoryIncomeWithAccountFiltersAct.kt$com.ivy.wallet.domain.action.category.CategoryIncomeWithAccountFiltersAct.kt + FinalNewline:CategoryModal.kt$com.ivy.wallet.ui.theme.modal.edit.CategoryModal.kt + FinalNewline:CategoryService.kt$com.ivy.wallet.io.network.service.CategoryService.kt + FinalNewline:CategorySync.kt$com.ivy.wallet.domain.deprecated.sync.item.CategorySync.kt + FinalNewline:CategoryTrnsBetweenAct.kt$com.ivy.wallet.domain.action.category.CategoryTrnsBetweenAct.kt + FinalNewline:CategoryUploader.kt$com.ivy.wallet.domain.deprecated.sync.uploader.CategoryUploader.kt + FinalNewline:CategoryValues.kt$com.ivy.wallet.ui.charts.CategoryValues.kt + FinalNewline:ChangeTransactionTypeModal.kt$com.ivy.wallet.ui.theme.components.ChangeTransactionTypeModal.kt + FinalNewline:ChartPeriod.kt$com.ivy.wallet.domain.pure.charts.ChartPeriod.kt + FinalNewline:ChartType.kt$com.ivy.wallet.ui.charts.ChartType.kt + FinalNewline:ChartsCore.kt$com.ivy.wallet.domain.pure.charts.ChartsCore.kt + FinalNewline:CheckEmailRequest.kt$com.ivy.wallet.io.network.request.auth.CheckEmailRequest.kt + FinalNewline:CheckEmailResponse.kt$com.ivy.wallet.io.network.request.auth.CheckEmailResponse.kt + FinalNewline:Checkbox.kt$com.ivy.design.l2_components.Checkbox.kt + FinalNewline:ChooseCategoryModal.kt$com.ivy.wallet.ui.theme.modal.edit.ChooseCategoryModal.kt + FinalNewline:ChoosePeriodModal.kt$com.ivy.wallet.ui.theme.modal.ChoosePeriodModal.kt + FinalNewline:ChooseStartDateOfMonthModal.kt$com.ivy.wallet.ui.theme.modal.ChooseStartDateOfMonthModal.kt + FinalNewline:CircleButtons.kt$com.ivy.wallet.ui.theme.components.CircleButtons.kt + FinalNewline:ClosedTimeRange.kt$com.ivy.wallet.domain.pure.data.ClosedTimeRange.kt + FinalNewline:ColoredItemCard.kt$com.ivy.design.l4_patterns.ColoredItemCard.kt + FinalNewline:Colors.kt$com.ivy.design.l0_system.Colors.kt + FinalNewline:ColumnRoot.kt$com.ivy.design.l1_buildingBlocks.ColumnRoot.kt + FinalNewline:Compose.kt$com.ivy.design.utils.Compose.kt + FinalNewline:ComposeExt.kt$com.ivy.wallet.utils.ComposeExt.kt + FinalNewline:Constants.kt$com.ivy.wallet.Constants.kt + FinalNewline:CreateAccountData.kt$com.ivy.wallet.domain.deprecated.logic.model.CreateAccountData.kt + FinalNewline:CreateBudgetData.kt$com.ivy.wallet.domain.deprecated.logic.model.CreateBudgetData.kt + FinalNewline:CreateCategoryData.kt$com.ivy.wallet.domain.deprecated.logic.model.CreateCategoryData.kt + FinalNewline:CreateLoanData.kt$com.ivy.wallet.domain.deprecated.logic.model.CreateLoanData.kt + FinalNewline:CreateLoanRecordData.kt$com.ivy.wallet.domain.deprecated.logic.model.CreateLoanRecordData.kt + FinalNewline:CrupdateBudgetRequest.kt$com.ivy.wallet.io.network.request.budget.CrupdateBudgetRequest.kt + FinalNewline:CurrencyModal.kt$com.ivy.wallet.ui.theme.modal.CurrencyModal.kt + FinalNewline:CurrencyPicker.kt$com.ivy.wallet.ui.theme.components.CurrencyPicker.kt + FinalNewline:CustomExchangeRateCard.kt$com.ivy.wallet.ui.theme.components.CustomExchangeRateCard.kt + FinalNewline:CustomExchangeRateState.kt$com.ivy.wallet.domain.data.CustomExchangeRateState.kt + FinalNewline:CustomerJourney.kt$com.ivy.wallet.ui.home.CustomerJourney.kt + FinalNewline:CustomerJourneyCardData.kt$com.ivy.wallet.domain.deprecated.logic.model.CustomerJourneyCardData.kt + FinalNewline:DataCircle.kt$com.ivy.wallet.ui.analytics.DataCircle.kt + FinalNewline:DateExt.kt$com.ivy.wallet.utils.DateExt.kt + FinalNewline:DefaultImportSteps.kt$com.ivy.wallet.ui.csvimport.flow.instructions.DefaultImportSteps.kt + FinalNewline:DeleteAccountRequest.kt$com.ivy.wallet.io.network.request.account.DeleteAccountRequest.kt + FinalNewline:DeleteAllData.kt$com.ivy.design.l4_patterns.delete.DeleteAllData.kt + FinalNewline:DeleteBudgetRequest.kt$com.ivy.wallet.io.network.request.budget.DeleteBudgetRequest.kt + FinalNewline:DeleteButton.kt$com.ivy.wallet.ui.theme.components.DeleteButton.kt + FinalNewline:DeleteItem.kt$com.ivy.design.l4_patterns.delete.DeleteItem.kt + FinalNewline:DeleteLoanRecordRequest.kt$com.ivy.wallet.io.network.request.loan.DeleteLoanRecordRequest.kt + FinalNewline:DeleteLoanRequest.kt$com.ivy.wallet.io.network.request.loan.DeleteLoanRequest.kt + FinalNewline:DeleteModal.kt$com.ivy.wallet.ui.theme.modal.DeleteModal.kt + FinalNewline:DeletePlannedPaymentRuleRequest.kt$com.ivy.wallet.io.network.request.planned.DeletePlannedPaymentRuleRequest.kt + FinalNewline:DeleteTransactionRequest.kt$com.ivy.wallet.io.network.request.transaction.DeleteTransactionRequest.kt + FinalNewline:DeleteWalletCategoryRequest.kt$com.ivy.wallet.io.network.request.category.DeleteWalletCategoryRequest.kt + FinalNewline:Description.kt$com.ivy.wallet.ui.edit.core.Description.kt + FinalNewline:DescriptionModal.kt$com.ivy.wallet.ui.theme.modal.edit.DescriptionModal.kt + FinalNewline:DisplayBudget.kt$com.ivy.wallet.ui.budget.model.DisplayBudget.kt + FinalNewline:DisplayLoan.kt$com.ivy.wallet.ui.loan.data.DisplayLoan.kt + FinalNewline:Dividers.kt$com.ivy.design.l1_buildingBlocks.Dividers.kt + FinalNewline:DonateEvent.kt$com.ivy.wallet.ui.donate.DonateEvent.kt + FinalNewline:DonateModal.kt$com.ivy.wallet.ui.donate.DonateModal.kt + FinalNewline:DonateOption.kt$com.ivy.wallet.ui.donate.data.DonateOption.kt + FinalNewline:DonateScreen.kt$com.ivy.wallet.ui.donate.DonateScreen.kt + FinalNewline:DonateState.kt$com.ivy.wallet.ui.donate.DonateState.kt + FinalNewline:DonateViewModel.kt$com.ivy.wallet.ui.donate.DonateViewModel.kt + FinalNewline:DueDate.kt$com.ivy.wallet.ui.edit.core.DueDate.kt + FinalNewline:DueSection.kt$com.ivy.wallet.ui.data.DueSection.kt + FinalNewline:DueTrnsAct.kt$com.ivy.wallet.domain.action.transaction.DueTrnsAct.kt + FinalNewline:DueTrnsInfoAct.kt$com.ivy.wallet.domain.action.viewmodel.home.DueTrnsInfoAct.kt + FinalNewline:EditBottomSheet.kt$com.ivy.wallet.ui.edit.core.EditBottomSheet.kt + FinalNewline:EditContentCard.kt$com.ivy.design.l4_patterns.EditContentCard.kt + FinalNewline:EditLoanRecordData.kt$com.ivy.wallet.domain.deprecated.logic.model.EditLoanRecordData.kt + FinalNewline:EditPlannedScreen.kt$com.ivy.wallet.ui.planned.edit.EditPlannedScreen.kt + FinalNewline:EditPlannedViewModel.kt$com.ivy.wallet.ui.planned.edit.EditPlannedViewModel.kt + FinalNewline:EditTransactionScreen.kt$com.ivy.wallet.ui.edit.EditTransactionScreen.kt + FinalNewline:EditTransactionViewModel.kt$com.ivy.wallet.ui.edit.EditTransactionViewModel.kt + FinalNewline:EmailState.kt$com.ivy.wallet.domain.data.EmailState.kt + FinalNewline:EncryptedSharedPrefs.kt$com.ivy.wallet.data.EncryptedSharedPrefs.kt + FinalNewline:ErrorCode.kt$com.ivy.wallet.io.network.error.ErrorCode.kt + FinalNewline:ExampleInstrumentedTest.kt$com.ivy.design.ExampleInstrumentedTest.kt + FinalNewline:Exchange.kt$com.ivy.wallet.domain.pure.exchange.Exchange.kt + FinalNewline:ExchangeRate.kt$com.ivy.wallet.domain.data.core.ExchangeRate.kt + FinalNewline:ExchangeRateDTO.kt$com.ivy.wallet.io.network.data.ExchangeRateDTO.kt + FinalNewline:ExchangeRateDao.kt$com.ivy.wallet.io.persistence.dao.ExchangeRateDao.kt + FinalNewline:ExchangeRateEntity.kt$com.ivy.wallet.io.persistence.data.ExchangeRateEntity.kt + FinalNewline:ExchangeRatesLogic.kt$com.ivy.wallet.domain.deprecated.logic.currency.ExchangeRatesLogic.kt + FinalNewline:ExchangeRatesResponse.kt$com.ivy.wallet.io.network.request.currency.ExchangeRatesResponse.kt + FinalNewline:ExchangeRatesScreen.kt$com.ivy.wallet.ui.exchangerates.ExchangeRatesScreen.kt + FinalNewline:ExchangeRatesService.kt$com.ivy.wallet.io.network.service.ExchangeRatesService.kt + FinalNewline:ExchangeRatesViewModel.kt$com.ivy.wallet.ui.exchangerates.ExchangeRatesViewModel.kt + FinalNewline:ExchangeTrns.kt$com.ivy.wallet.domain.pure.exchange.ExchangeTrns.kt + FinalNewline:ExpImagesService.kt$com.ivy.wallet.io.network.service.ExpImagesService.kt + FinalNewline:ExportCSVLogic.kt$com.ivy.wallet.domain.deprecated.logic.csv.ExportCSVLogic.kt + FinalNewline:FAB.kt$com.ivy.design.l3_ivyComponents.button.FAB.kt + FinalNewline:FetchAllTrnsFromServerAct.kt$com.ivy.wallet.domain.action.transaction.FetchAllTrnsFromServerAct.kt + FinalNewline:FetchImagesAct.kt$com.ivy.wallet.domain.action.viewmodel.experiment.FetchImagesAct.kt + FinalNewline:FileUtil.kt$com.ivy.wallet.utils.FileUtil.kt + FinalNewline:FilterOverlay.kt$com.ivy.wallet.ui.reports.FilterOverlay.kt + FinalNewline:FinancistoSteps.kt$com.ivy.wallet.ui.csvimport.flow.instructions.FinancistoSteps.kt + FinalNewline:FirebaseExt.kt$com.ivy.wallet.utils.FirebaseExt.kt + FinalNewline:FoldTransactions.kt$com.ivy.wallet.domain.pure.transaction.FoldTransactions.kt + FinalNewline:FortuneCitySteps.kt$com.ivy.wallet.ui.csvimport.flow.instructions.FortuneCitySteps.kt + FinalNewline:FromToTimeRange.kt$com.ivy.wallet.ui.onboarding.model.FromToTimeRange.kt + FinalNewline:GesturesExt.kt$com.ivy.wallet.utils.GesturesExt.kt + FinalNewline:GitHubBackup.kt$com.ivy.wallet.backup.github.GitHubBackup.kt + FinalNewline:GitHubBackupCard.kt$com.ivy.wallet.backup.github.ui.GitHubBackupCard.kt + FinalNewline:GitHubBackupScreen.kt$com.ivy.wallet.backup.github.ui.GitHubBackupScreen.kt + FinalNewline:GitHubBackupStatus.kt$com.ivy.wallet.backup.github.ui.GitHubBackupStatus.kt + FinalNewline:GitHubBackupViewModel.kt$com.ivy.wallet.backup.github.ui.GitHubBackupViewModel.kt + FinalNewline:GitHubBackupViewState.kt$com.ivy.wallet.backup.github.ui.GitHubBackupViewState.kt + FinalNewline:GitHubClient.kt$com.ivy.wallet.backup.github.GitHubClient.kt + FinalNewline:GitHubCredentials.kt$com.ivy.wallet.backup.github.GitHubCredentials.kt + FinalNewline:GitHubPATMigration.kt$com.ivy.wallet.migrations.impl.GitHubPATMigration.kt + FinalNewline:GitHubWorkerMigration.kt$com.ivy.wallet.migrations.impl.GitHubWorkerMigration.kt + FinalNewline:GoogleSignInRequest.kt$com.ivy.wallet.io.network.request.auth.GoogleSignInRequest.kt + FinalNewline:GradientCut.kt$com.ivy.wallet.ui.theme.components.GradientCut.kt + FinalNewline:GsonTypeAdapters.kt$com.ivy.wallet.io.network.GsonTypeAdapters.kt + FinalNewline:HasTrnsAct.kt$com.ivy.wallet.domain.action.viewmodel.home.HasTrnsAct.kt + FinalNewline:Health.kt$com.ivy.wallet.ui.analytics.model.Health.kt + FinalNewline:HealthTab.kt$com.ivy.wallet.ui.analytics.tab.HealthTab.kt + FinalNewline:HistoryDateDivider.kt$com.ivy.wallet.ui.component.transaction.HistoryDateDivider.kt + FinalNewline:HistoryTrnsAct.kt$com.ivy.wallet.domain.action.transaction.HistoryTrnsAct.kt + FinalNewline:HistoryWithDateDivsAct.kt$com.ivy.wallet.domain.action.transaction.HistoryWithDateDivsAct.kt + FinalNewline:HomeEvent.kt$com.ivy.wallet.ui.home.HomeEvent.kt + FinalNewline:HomeHeader.kt$com.ivy.wallet.ui.home.HomeHeader.kt + FinalNewline:HomeMoreMenu.kt$com.ivy.wallet.ui.home.HomeMoreMenu.kt + FinalNewline:HomeState.kt$com.ivy.wallet.ui.home.HomeState.kt + FinalNewline:HomeTab.kt$com.ivy.wallet.ui.home.HomeTab.kt + FinalNewline:HomeViewModel.kt$com.ivy.wallet.ui.home.HomeViewModel.kt + FinalNewline:IconButton.kt$com.ivy.design.l2_components.IconButton.kt + FinalNewline:ImportFrom.kt$com.ivy.wallet.ui.csvimport.flow.ImportFrom.kt + FinalNewline:ImportProcessing.kt$com.ivy.wallet.ui.csvimport.flow.ImportProcessing.kt + FinalNewline:ImportResult.kt$com.ivy.wallet.domain.deprecated.logic.csv.model.ImportResult.kt + FinalNewline:ImportResultUI.kt$com.ivy.wallet.ui.csvimport.flow.ImportResultUI.kt + FinalNewline:ImportStep.kt$com.ivy.wallet.ui.csvimport.ImportStep.kt + FinalNewline:ImportType.kt$com.ivy.wallet.domain.deprecated.logic.csv.model.ImportType.kt + FinalNewline:ImportViewModel.kt$com.ivy.wallet.ui.csvimport.ImportViewModel.kt + FinalNewline:IncomeExpensePair.kt$com.ivy.wallet.domain.pure.data.IncomeExpensePair.kt + FinalNewline:InitiateResetPasswordRequest.kt$com.ivy.wallet.io.network.request.auth.InitiateResetPasswordRequest.kt + FinalNewline:InitiateResetPasswordResponse.kt$com.ivy.wallet.io.network.request.auth.InitiateResetPasswordResponse.kt + FinalNewline:InputError.kt$com.ivy.wallet.utils.InputError.kt + FinalNewline:InputField.kt$com.ivy.design.l2_components.InputField.kt + FinalNewline:Insets.kt$com.ivy.design.utils.Insets.kt + FinalNewline:IntervalPickerRow.kt$com.ivy.wallet.ui.theme.components.IntervalPickerRow.kt + FinalNewline:IntervalType.kt$com.ivy.wallet.domain.data.IntervalType.kt + FinalNewline:ItemDetailsScreen.kt$com.ivy.design.l5_concept.ItemDetailsScreen.kt + FinalNewline:ItemIcon.kt$com.ivy.wallet.ui.theme.components.ItemIcon.kt + FinalNewline:ItemStatisticScreen.kt$com.ivy.wallet.ui.statistic.level2.ItemStatisticScreen.kt + FinalNewline:ItemStatisticViewModel.kt$com.ivy.wallet.ui.statistic.level2.ItemStatisticViewModel.kt + FinalNewline:IvyAnalytics.kt$com.ivy.wallet.io.network.IvyAnalytics.kt + FinalNewline:IvyAndroidApp.kt$com.ivy.wallet.IvyAndroidApp.kt + FinalNewline:IvyAnimation.kt$com.ivy.wallet.utils.IvyAnimation.kt + FinalNewline:IvyBasicTextField.kt$com.ivy.wallet.ui.theme.components.IvyBasicTextField.kt + FinalNewline:IvyBilling.kt$com.ivy.wallet.android.billing.IvyBilling.kt + FinalNewline:IvyBorderButton.kt$com.ivy.wallet.ui.theme.components.IvyBorderButton.kt + FinalNewline:IvyButton.kt$com.ivy.wallet.ui.theme.components.IvyButton.kt + FinalNewline:IvyCheckbox.kt$com.ivy.wallet.ui.theme.components.IvyCheckbox.kt + FinalNewline:IvyChecklistTextField.kt$com.ivy.wallet.ui.theme.components.IvyChecklistTextField.kt + FinalNewline:IvyCircleButton.kt$com.ivy.wallet.ui.theme.components.IvyCircleButton.kt + FinalNewline:IvyColorPicker.kt$com.ivy.wallet.ui.theme.components.IvyColorPicker.kt + FinalNewline:IvyColors.kt$com.ivy.design.l0_system.IvyColors.kt + FinalNewline:IvyColors.kt$com.ivy.wallet.ui.theme.IvyColors.kt + FinalNewline:IvyComponents.kt$com.ivy.wallet.ui.theme.components.IvyComponents.kt + FinalNewline:IvyContext.kt$com.ivy.design.IvyContext.kt + FinalNewline:IvyDataStore.kt$com.ivy.wallet.io.persistence.datastore.IvyDataStore.kt + FinalNewline:IvyDescriptionTextField.kt$com.ivy.wallet.ui.theme.components.IvyDescriptionTextField.kt + FinalNewline:IvyDesign.kt$com.ivy.design.api.IvyDesign.kt + FinalNewline:IvyDivider.kt$com.ivy.wallet.ui.theme.components.IvyDivider.kt + FinalNewline:IvyDividerDot.kt$com.ivy.wallet.ui.theme.components.IvyDividerDot.kt + FinalNewline:IvyDomainUtils.kt$com.ivy.wallet.domain.pure.util.IvyDomainUtils.kt + FinalNewline:IvyFileReader.kt$com.ivy.wallet.domain.deprecated.logic.csv.IvyFileReader.kt + FinalNewline:IvyIcon.kt$com.ivy.design.l1_buildingBlocks.IvyIcon.kt + FinalNewline:IvyIcon.kt$com.ivy.wallet.ui.theme.components.IvyIcon.kt + FinalNewline:IvyLineChart.kt$com.ivy.wallet.ui.theme.components.charts.linechart.IvyLineChart.kt + FinalNewline:IvyModal.kt$com.ivy.wallet.ui.theme.modal.IvyModal.kt + FinalNewline:IvyModalComponents.kt$com.ivy.wallet.ui.theme.modal.IvyModalComponents.kt + FinalNewline:IvyNameTextFieldValue.kt$com.ivy.wallet.ui.theme.components.IvyNameTextFieldValue.kt + FinalNewline:IvyNotification.kt$com.ivy.wallet.android.notification.IvyNotification.kt + FinalNewline:IvyNotificationChannel.kt$com.ivy.wallet.android.notification.IvyNotificationChannel.kt + FinalNewline:IvyOutlinedButton.kt$com.ivy.wallet.ui.theme.components.IvyOutlinedButton.kt + FinalNewline:IvyOutlinedTextField.kt$com.ivy.wallet.ui.theme.components.IvyOutlinedTextField.kt + FinalNewline:IvyPadding.kt$com.ivy.design.l1_buildingBlocks.data.IvyPadding.kt + FinalNewline:IvyRoomDatabase.kt$com.ivy.wallet.io.persistence.IvyRoomDatabase.kt + FinalNewline:IvySession.kt$com.ivy.wallet.io.network.IvySession.kt + FinalNewline:IvyShapes.kt$com.ivy.design.l0_system.IvyShapes.kt + FinalNewline:IvySwitch.kt$com.ivy.wallet.ui.theme.components.IvySwitch.kt + FinalNewline:IvySync.kt$com.ivy.wallet.domain.deprecated.sync.IvySync.kt + FinalNewline:IvyText.kt$com.ivy.design.l1_buildingBlocks.IvyText.kt + FinalNewline:IvyTitleTextField.kt$com.ivy.wallet.ui.theme.components.IvyTitleTextField.kt + FinalNewline:IvyToolbar.kt$com.ivy.wallet.ui.theme.components.IvyToolbar.kt + FinalNewline:IvyTypography.kt$com.ivy.design.l0_system.IvyTypography.kt + FinalNewline:IvyUI.kt$com.ivy.design.api.IvyUI.kt + FinalNewline:IvyViewPager.kt$com.ivy.wallet.ui.theme.components.IvyViewPager.kt + FinalNewline:IvyWalletCompleteData.kt$com.ivy.wallet.domain.data.IvyWalletCompleteData.kt + FinalNewline:IvyWalletDatastore.kt$com.ivy.wallet.data.IvyWalletDatastore.kt + FinalNewline:IvyWalletDesign.kt$com.ivy.design.api.systems.IvyWalletDesign.kt + FinalNewline:IvyWalletSteps.kt$com.ivy.wallet.ui.csvimport.flow.instructions.IvyWalletSteps.kt + FinalNewline:KPIs.kt$com.ivy.wallet.ui.analytics.model.KPIs.kt + FinalNewline:KPIsTab.kt$com.ivy.wallet.ui.analytics.tab.KPIsTab.kt + FinalNewline:KTWMoneyMangerSteps.kt$com.ivy.wallet.ui.csvimport.flow.instructions.KTWMoneyMangerSteps.kt + FinalNewline:Keyboard.kt$com.ivy.design.utils.Keyboard.kt + FinalNewline:KtorClient.kt$com.ivy.wallet.backup.ktor.KtorClient.kt + FinalNewline:KtorClientModule.kt$com.ivy.wallet.backup.ktor.KtorClientModule.kt + FinalNewline:LTLoanRecordMapper.kt$com.ivy.wallet.domain.deprecated.logic.loantrasactions.LTLoanRecordMapper.kt + FinalNewline:LastNTimeRange.kt$com.ivy.wallet.ui.onboarding.model.LastNTimeRange.kt + FinalNewline:Loan.kt$com.ivy.wallet.domain.data.core.Loan.kt + FinalNewline:LoanBottomBar.kt$com.ivy.wallet.ui.loan.LoanBottomBar.kt + FinalNewline:LoanByIdAct.kt$com.ivy.wallet.domain.action.loan.LoanByIdAct.kt + FinalNewline:LoanCreator.kt$com.ivy.wallet.domain.deprecated.logic.LoanCreator.kt + FinalNewline:LoanDTO.kt$com.ivy.wallet.io.network.data.LoanDTO.kt + FinalNewline:LoanDao.kt$com.ivy.wallet.io.persistence.dao.LoanDao.kt + FinalNewline:LoanDetailsScreen.kt$com.ivy.wallet.ui.loandetails.LoanDetailsScreen.kt + FinalNewline:LoanDetailsViewModel.kt$com.ivy.wallet.ui.loandetails.LoanDetailsViewModel.kt + FinalNewline:LoanEntity.kt$com.ivy.wallet.io.persistence.data.LoanEntity.kt + FinalNewline:LoanModal.kt$com.ivy.wallet.ui.theme.modal.LoanModal.kt + FinalNewline:LoanRecord.kt$com.ivy.wallet.domain.data.core.LoanRecord.kt + FinalNewline:LoanRecordCreator.kt$com.ivy.wallet.domain.deprecated.logic.LoanRecordCreator.kt + FinalNewline:LoanRecordDTO.kt$com.ivy.wallet.io.network.data.LoanRecordDTO.kt + FinalNewline:LoanRecordDao.kt$com.ivy.wallet.io.persistence.dao.LoanRecordDao.kt + FinalNewline:LoanRecordEntity.kt$com.ivy.wallet.io.persistence.data.LoanRecordEntity.kt + FinalNewline:LoanRecordModal.kt$com.ivy.wallet.ui.theme.modal.LoanRecordModal.kt + FinalNewline:LoanRecordSync.kt$com.ivy.wallet.domain.deprecated.sync.item.LoanRecordSync.kt + FinalNewline:LoanRecordUploader.kt$com.ivy.wallet.domain.deprecated.sync.uploader.LoanRecordUploader.kt + FinalNewline:LoanRecordsResponse.kt$com.ivy.wallet.io.network.request.loan.LoanRecordsResponse.kt + FinalNewline:LoanService.kt$com.ivy.wallet.io.network.service.LoanService.kt + FinalNewline:LoanSync.kt$com.ivy.wallet.domain.deprecated.sync.item.LoanSync.kt + FinalNewline:LoanTransactionsCore.kt$com.ivy.wallet.domain.deprecated.logic.loantrasactions.LoanTransactionsCore.kt + FinalNewline:LoanType.kt$com.ivy.wallet.domain.data.LoanType.kt + FinalNewline:LoanUploader.kt$com.ivy.wallet.domain.deprecated.sync.uploader.LoanUploader.kt + FinalNewline:LoanViewModel.kt$com.ivy.wallet.ui.loan.LoanViewModel.kt + FinalNewline:LoansAct.kt$com.ivy.wallet.domain.action.loan.LoansAct.kt + FinalNewline:LoansResponse.kt$com.ivy.wallet.io.network.request.loan.LoansResponse.kt + FinalNewline:LoansScreen.kt$com.ivy.wallet.ui.loan.LoansScreen.kt + FinalNewline:LogEventRequest.kt$com.ivy.wallet.io.network.request.analytics.LogEventRequest.kt + FinalNewline:LogoutLogic.kt$com.ivy.wallet.domain.deprecated.logic.LogoutLogic.kt + FinalNewline:MVVMExt.kt$com.ivy.wallet.utils.MVVMExt.kt + FinalNewline:MainBottomBar.kt$com.ivy.wallet.ui.main.MainBottomBar.kt + FinalNewline:MainScreen.kt$com.ivy.wallet.ui.main.MainScreen.kt + FinalNewline:MainTab.kt$com.ivy.wallet.ui.main.MainTab.kt + FinalNewline:MainViewModel.kt$com.ivy.wallet.ui.main.MainViewModel.kt + FinalNewline:Migration.kt$com.ivy.wallet.migrations.Migration.kt + FinalNewline:Migration105to106_TrnRecurringRules.kt$com.ivy.wallet.io.persistence.migration.Migration105to106_TrnRecurringRules.kt + FinalNewline:Migration106to107_Wishlist.kt$com.ivy.wallet.io.persistence.migration.Migration106to107_Wishlist.kt + FinalNewline:Migration107to108_Sync.kt$com.ivy.wallet.io.persistence.migration.Migration107to108_Sync.kt + FinalNewline:Migration108to109_Users.kt$com.ivy.wallet.io.persistence.migration.Migration108to109_Users.kt + FinalNewline:Migration109to110_PlannedPayments.kt$com.ivy.wallet.io.persistence.migration.Migration109to110_PlannedPayments.kt + FinalNewline:Migration110to111_PlannedPaymentRule.kt$com.ivy.wallet.io.persistence.migration.Migration110to111_PlannedPaymentRule.kt + FinalNewline:Migration111to112_User_testUser.kt$com.ivy.wallet.io.persistence.migration.Migration111to112_User_testUser.kt + FinalNewline:Migration112to113_ExchangeRates.kt$com.ivy.wallet.io.persistence.migration.Migration112to113_ExchangeRates.kt + FinalNewline:Migration113to114_Multi_Currency.kt$com.ivy.wallet.io.persistence.migration.Migration113to114_Multi_Currency.kt + FinalNewline:Migration114to115_Category_Account_Icons.kt$com.ivy.wallet.io.persistence.migration.Migration114to115_Category_Account_Icons.kt + FinalNewline:Migration115to116_Account_Include_In_Balance.kt$com.ivy.wallet.io.persistence.migration.Migration115to116_Account_Include_In_Balance.kt + FinalNewline:Migration116to117_SalteEdgeIntgration.kt$com.ivy.wallet.io.persistence.migration.Migration116to117_SalteEdgeIntgration.kt + FinalNewline:Migration117to118_Budgets.kt$com.ivy.wallet.io.persistence.migration.Migration117to118_Budgets.kt + FinalNewline:Migration118to119_Loans.kt$com.ivy.wallet.io.persistence.migration.Migration118to119_Loans.kt + FinalNewline:Migration119to120_LoanTransactions.kt$com.ivy.wallet.io.persistence.migration.Migration119to120_LoanTransactions.kt + FinalNewline:Migration120to121_DropWishlistItem.kt$com.ivy.wallet.io.persistence.migration.Migration120to121_DropWishlistItem.kt + FinalNewline:Migration122to123_ExchangeRates.kt$com.ivy.wallet.io.persistence.migration.Migration122to123_ExchangeRates.kt + FinalNewline:MigrationsManager.kt$com.ivy.wallet.migrations.MigrationsManager.kt + FinalNewline:MonefySteps.kt$com.ivy.wallet.ui.csvimport.flow.instructions.MonefySteps.kt + FinalNewline:MoneyManagerPraseSteps.kt$com.ivy.wallet.ui.csvimport.flow.instructions.MoneyManagerPraseSteps.kt + FinalNewline:Month.kt$com.ivy.wallet.ui.theme.modal.model.Month.kt + FinalNewline:MonthPickerModal.kt$com.ivy.wallet.ui.theme.modal.MonthPickerModal.kt + FinalNewline:MoreInfo.kt$com.ivy.design.l4_patterns.MoreInfo.kt + FinalNewline:MoreMenu.kt$com.ivy.design.l4_patterns.MoreMenu.kt + FinalNewline:NameModal.kt$com.ivy.wallet.ui.theme.modal.NameModal.kt + FinalNewline:NetworkError.kt$com.ivy.wallet.io.network.error.NetworkError.kt + FinalNewline:NewEditScreenPref.kt$com.ivy.wallet.domain.data.preference.NewEditScreenPref.kt + FinalNewline:NotificationService.kt$com.ivy.wallet.android.notification.NotificationService.kt + FinalNewline:NukeService.kt$com.ivy.wallet.io.network.service.NukeService.kt + FinalNewline:OnboardingAccounts.kt$com.ivy.wallet.ui.onboarding.steps.OnboardingAccounts.kt + FinalNewline:OnboardingCategories.kt$com.ivy.wallet.ui.onboarding.steps.OnboardingCategories.kt + FinalNewline:OnboardingComponents.kt$com.ivy.wallet.ui.theme.components.OnboardingComponents.kt + FinalNewline:OnboardingPrivacyTC.kt$com.ivy.wallet.ui.onboarding.steps.archived.OnboardingPrivacyTC.kt + FinalNewline:OnboardingProgressSlider.kt$com.ivy.wallet.ui.onboarding.components.OnboardingProgressSlider.kt + FinalNewline:OnboardingReport.kt$com.ivy.wallet.ui.analytics.model.OnboardingReport.kt + FinalNewline:OnboardingReportTab.kt$com.ivy.wallet.ui.analytics.tab.OnboardingReportTab.kt + FinalNewline:OnboardingRouter.kt$com.ivy.wallet.ui.onboarding.viewmodel.OnboardingRouter.kt + FinalNewline:OnboardingScreen.kt$com.ivy.wallet.ui.onboarding.OnboardingScreen.kt + FinalNewline:OnboardingSetCurrency.kt$com.ivy.wallet.ui.onboarding.steps.OnboardingSetCurrency.kt + FinalNewline:OnboardingSetName.kt$com.ivy.wallet.ui.onboarding.steps.archived.OnboardingSetName.kt + FinalNewline:OnboardingSplashLogin.kt$com.ivy.wallet.ui.onboarding.steps.OnboardingSplashLogin.kt + FinalNewline:OnboardingState.kt$com.ivy.wallet.ui.onboarding.OnboardingState.kt + FinalNewline:OnboardingToolbar.kt$com.ivy.wallet.ui.onboarding.components.OnboardingToolbar.kt + FinalNewline:OnboardingType.kt$com.ivy.wallet.ui.onboarding.steps.OnboardingType.kt + FinalNewline:OnboardingViewModel.kt$com.ivy.wallet.ui.onboarding.viewmodel.OnboardingViewModel.kt + FinalNewline:OneMoneySteps.kt$com.ivy.wallet.ui.csvimport.flow.instructions.OneMoneySteps.kt + FinalNewline:OpResult.kt$com.ivy.wallet.utils.OpResult.kt + FinalNewline:OpenIssueRequest.kt$com.ivy.wallet.io.network.request.github.OpenIssueRequest.kt + FinalNewline:OpenIssueResponse.kt$com.ivy.wallet.io.network.request.github.OpenIssueResponse.kt + FinalNewline:OverdueAct.kt$com.ivy.wallet.domain.action.viewmodel.home.OverdueAct.kt + FinalNewline:ParseFields.kt$com.ivy.wallet.ui.csv.domain.ParseFields.kt + FinalNewline:ParseStatus.kt$com.ivy.wallet.ui.csv.domain.ParseStatus.kt + FinalNewline:PaywallLogic.kt$com.ivy.wallet.domain.deprecated.logic.PaywallLogic.kt + FinalNewline:PaywallReason.kt$com.ivy.wallet.ui.paywall.PaywallReason.kt + FinalNewline:PaywallViewModel.kt$com.ivy.wallet.ui.paywall.PaywallViewModel.kt + FinalNewline:PeriodSelector.kt$com.ivy.wallet.ui.theme.wallet.PeriodSelector.kt + FinalNewline:PieChart.kt$com.ivy.wallet.ui.statistic.level1.PieChart.kt + FinalNewline:PieChartAct.kt$com.ivy.wallet.domain.action.charts.PieChartAct.kt + FinalNewline:PieChartStatisticBottomBar.kt$com.ivy.wallet.ui.statistic.level1.PieChartStatisticBottomBar.kt + FinalNewline:PieChartStatisticViewModel.kt$com.ivy.wallet.ui.statistic.level1.PieChartStatisticViewModel.kt + FinalNewline:Plan.kt$com.ivy.wallet.android.billing.Plan.kt + FinalNewline:PlanType.kt$com.ivy.wallet.android.billing.PlanType.kt + FinalNewline:PlannedPaymentRule.kt$com.ivy.wallet.domain.data.core.PlannedPaymentRule.kt + FinalNewline:PlannedPaymentRuleDTO.kt$com.ivy.wallet.io.network.data.PlannedPaymentRuleDTO.kt + FinalNewline:PlannedPaymentRuleDao.kt$com.ivy.wallet.io.persistence.dao.PlannedPaymentRuleDao.kt + FinalNewline:PlannedPaymentRuleEntity.kt$com.ivy.wallet.io.persistence.data.PlannedPaymentRuleEntity.kt + FinalNewline:PlannedPaymentRuleService.kt$com.ivy.wallet.io.network.service.PlannedPaymentRuleService.kt + FinalNewline:PlannedPaymentRuleUploader.kt$com.ivy.wallet.domain.deprecated.sync.uploader.PlannedPaymentRuleUploader.kt + FinalNewline:PlannedPaymentRulesResponse.kt$com.ivy.wallet.io.network.request.planned.PlannedPaymentRulesResponse.kt + FinalNewline:PlannedPaymentSync.kt$com.ivy.wallet.domain.deprecated.sync.item.PlannedPaymentSync.kt + FinalNewline:PlannedPaymentsBottomBar.kt$com.ivy.wallet.ui.planned.list.PlannedPaymentsBottomBar.kt + FinalNewline:PlannedPaymentsGenerator.kt$com.ivy.wallet.domain.deprecated.logic.PlannedPaymentsGenerator.kt + FinalNewline:PlannedPaymentsLazyColumn.kt$com.ivy.wallet.ui.planned.list.PlannedPaymentsLazyColumn.kt + FinalNewline:PlannedPaymentsLogic.kt$com.ivy.wallet.domain.deprecated.logic.PlannedPaymentsLogic.kt + FinalNewline:PlannedPaymentsScreen.kt$com.ivy.wallet.ui.planned.list.PlannedPaymentsScreen.kt + FinalNewline:PlannedPaymentsViewModel.kt$com.ivy.wallet.ui.planned.list.PlannedPaymentsViewModel.kt + FinalNewline:PlansSheet.kt$com.ivy.wallet.ui.paywall.PlansSheet.kt + FinalNewline:Preference.kt$com.ivy.wallet.domain.data.preference.Preference.kt + FinalNewline:PreferenceAct.kt$com.ivy.wallet.domain.action.settings.preference.PreferenceAct.kt + FinalNewline:Preview.kt$com.ivy.design.utils.Preview.kt + FinalNewline:PrimaryAttributeColumn.kt$com.ivy.wallet.ui.edit.PrimaryAttributeColumn.kt + FinalNewline:ProgressBar.kt$com.ivy.wallet.ui.theme.components.ProgressBar.kt + FinalNewline:ProgressModal.kt$com.ivy.wallet.ui.theme.modal.ProgressModal.kt + FinalNewline:PropertyTestExample.kt$com.ivy.wallet.PropertyTestExample.kt + FinalNewline:RateItem.kt$com.ivy.wallet.ui.exchangerates.component.RateItem.kt + FinalNewline:RateUi.kt$com.ivy.wallet.ui.exchangerates.data.RateUi.kt + FinalNewline:RatesEvent.kt$com.ivy.wallet.ui.exchangerates.RatesEvent.kt + FinalNewline:RatesState.kt$com.ivy.wallet.ui.exchangerates.RatesState.kt + FinalNewline:RecurringRule.kt$com.ivy.wallet.ui.planned.edit.RecurringRule.kt + FinalNewline:RecurringRuleModal.kt$com.ivy.wallet.ui.theme.modal.RecurringRuleModal.kt + FinalNewline:ReorderModal.kt$com.ivy.design.l4_patterns.ReorderModal.kt + FinalNewline:ReorderModal.kt$com.ivy.wallet.ui.theme.components.ReorderModal.kt + FinalNewline:Reorderable.kt$com.ivy.wallet.domain.data.Reorderable.kt + FinalNewline:ReportFilter.kt$com.ivy.wallet.ui.reports.ReportFilter.kt + FinalNewline:ReportScreen.kt$com.ivy.wallet.ui.reports.ReportScreen.kt + FinalNewline:ReportScreenEvent.kt$com.ivy.wallet.ui.reports.ReportScreenEvent.kt + FinalNewline:ReportScreenState.kt$com.ivy.wallet.ui.reports.ReportScreenState.kt + FinalNewline:ReportViewModel.kt$com.ivy.wallet.ui.reports.ReportViewModel.kt + FinalNewline:ResetPasswordRequest.kt$com.ivy.wallet.io.network.request.auth.ResetPasswordRequest.kt + FinalNewline:RestClient.kt$com.ivy.wallet.io.network.RestClient.kt + FinalNewline:RestError.kt$com.ivy.wallet.io.network.error.RestError.kt + FinalNewline:RoomTypeConverters.kt$com.ivy.wallet.io.persistence.RoomTypeConverters.kt + FinalNewline:RootActivity.kt$com.ivy.wallet.ui.RootActivity.kt + FinalNewline:RootViewModel.kt$com.ivy.wallet.ui.RootViewModel.kt + FinalNewline:RowMapping.kt$com.ivy.wallet.domain.deprecated.logic.csv.model.RowMapping.kt + FinalNewline:SaveTrnLocallyAct.kt$com.ivy.wallet.domain.action.viewmodel.transaction.SaveTrnLocallyAct.kt + FinalNewline:ScreenTitle.kt$com.ivy.design.l3_ivyComponents.ScreenTitle.kt + FinalNewline:SearchScreen.kt$com.ivy.wallet.ui.search.SearchScreen.kt + FinalNewline:SearchViewModel.kt$com.ivy.wallet.ui.search.SearchViewModel.kt + FinalNewline:SelectedCategory.kt$com.ivy.wallet.ui.statistic.level1.SelectedCategory.kt + FinalNewline:ServerStopScreen.kt$com.ivy.wallet.ui.serverstop.ServerStopScreen.kt + FinalNewline:ServerStopState.kt$com.ivy.wallet.ui.serverstop.ServerStopState.kt + FinalNewline:ServerStopViewModel.kt$com.ivy.wallet.ui.serverstop.ServerStopViewModel.kt + FinalNewline:SetPreferenceAct.kt$com.ivy.wallet.domain.action.settings.preference.SetPreferenceAct.kt + FinalNewline:Settings.kt$com.ivy.wallet.domain.data.core.Settings.kt + FinalNewline:SettingsAct.kt$com.ivy.wallet.domain.action.settings.SettingsAct.kt + FinalNewline:SettingsDTO.kt$com.ivy.wallet.io.network.data.SettingsDTO.kt + FinalNewline:SettingsDao.kt$com.ivy.wallet.io.persistence.dao.SettingsDao.kt + FinalNewline:SettingsEntity.kt$com.ivy.wallet.io.persistence.data.SettingsEntity.kt + FinalNewline:SettingsScreen.kt$com.ivy.wallet.ui.settings.SettingsScreen.kt + FinalNewline:SettingsViewModel.kt$com.ivy.wallet.ui.settings.SettingsViewModel.kt + FinalNewline:Shapes.kt$com.ivy.design.l1_buildingBlocks.Shapes.kt + FinalNewline:SharedPrefs.kt$com.ivy.wallet.io.persistence.SharedPrefs.kt + FinalNewline:ShortAmountTest.kt$com.ivy.wallet.ShortAmountTest.kt + FinalNewline:ShouldHideBalanceAct.kt$com.ivy.wallet.domain.action.viewmodel.home.ShouldHideBalanceAct.kt + FinalNewline:SignInRequest.kt$com.ivy.wallet.io.network.request.auth.SignInRequest.kt + FinalNewline:SignUpRequest.kt$com.ivy.wallet.io.network.request.auth.SignUpRequest.kt + FinalNewline:SmallTrnsPref.kt$com.ivy.wallet.domain.data.preference.SmallTrnsPref.kt + FinalNewline:SmartTitleSuggestionsLogic.kt$com.ivy.wallet.domain.deprecated.logic.SmartTitleSuggestionsLogic.kt + FinalNewline:SortOrder.kt$com.ivy.wallet.domain.data.SortOrder.kt + FinalNewline:Spacers.kt$com.ivy.design.l1_buildingBlocks.Spacers.kt + FinalNewline:SpendeeSteps.kt$com.ivy.wallet.ui.csvimport.flow.instructions.SpendeeSteps.kt + FinalNewline:StartDayOfMonthAct.kt$com.ivy.wallet.domain.action.global.StartDayOfMonthAct.kt + FinalNewline:Suggestions.kt$com.ivy.wallet.ui.onboarding.components.Suggestions.kt + FinalNewline:Switch.kt$com.ivy.design.l2_components.Switch.kt + FinalNewline:SyncExchangeRatesAct.kt$com.ivy.wallet.domain.action.exchange.SyncExchangeRatesAct.kt + FinalNewline:TestScreen.kt$com.ivy.wallet.ui.test.TestScreen.kt + FinalNewline:TestViewModel.kt$com.ivy.wallet.ui.test.TestViewModel.kt + FinalNewline:Theme.kt$com.ivy.design.l0_system.Theme.kt + FinalNewline:TimePeriod.kt$com.ivy.wallet.ui.onboarding.model.TimePeriod.kt + FinalNewline:TimeValue.kt$com.ivy.wallet.ui.charts.TimeValue.kt + FinalNewline:Title.kt$com.ivy.wallet.ui.edit.core.Title.kt + FinalNewline:Transaction.kt$com.ivy.wallet.domain.data.core.Transaction.kt + FinalNewline:TransactionCard.kt$com.ivy.wallet.ui.component.transaction.TransactionCard.kt + FinalNewline:TransactionDTO.kt$com.ivy.wallet.io.network.data.TransactionDTO.kt + FinalNewline:TransactionDao.kt$com.ivy.wallet.io.persistence.dao.TransactionDao.kt + FinalNewline:TransactionDateTime.kt$com.ivy.wallet.ui.edit.TransactionDateTime.kt + FinalNewline:TransactionEntity.kt$com.ivy.wallet.io.persistence.data.TransactionEntity.kt + FinalNewline:TransactionHistoryDateDivider.kt$com.ivy.wallet.domain.data.TransactionHistoryDateDivider.kt + FinalNewline:TransactionHistoryItem.kt$com.ivy.wallet.domain.data.TransactionHistoryItem.kt + FinalNewline:TransactionReminderLogic.kt$com.ivy.wallet.domain.deprecated.logic.notification.TransactionReminderLogic.kt + FinalNewline:TransactionReminderWorker.kt$com.ivy.wallet.domain.deprecated.logic.notification.TransactionReminderWorker.kt + FinalNewline:TransactionSectionDivider.kt$com.ivy.wallet.ui.component.transaction.TransactionSectionDivider.kt + FinalNewline:TransactionService.kt$com.ivy.wallet.io.network.service.TransactionService.kt + FinalNewline:TransactionSync.kt$com.ivy.wallet.domain.deprecated.sync.item.TransactionSync.kt + FinalNewline:TransactionType.kt$com.ivy.wallet.domain.data.TransactionType.kt + FinalNewline:TransactionUploader.kt$com.ivy.wallet.domain.deprecated.sync.uploader.TransactionUploader.kt + FinalNewline:TransactionViewModel.kt$com.ivy.wallet.ui.transaction.TransactionViewModel.kt + FinalNewline:TransactionsDividerLine.kt$com.ivy.wallet.ui.component.transaction.TransactionsDividerLine.kt + FinalNewline:TransactionsResponse.kt$com.ivy.wallet.io.network.request.transaction.TransactionsResponse.kt + FinalNewline:TrnByIdAct.kt$com.ivy.wallet.domain.action.transaction.TrnByIdAct.kt + FinalNewline:TrnDate.kt$com.ivy.wallet.ui.transaction.data.TrnDate.kt + FinalNewline:TrnDateDividers.kt$com.ivy.wallet.domain.pure.transaction.TrnDateDividers.kt + FinalNewline:TrnEvent.kt$com.ivy.wallet.ui.transaction.TrnEvent.kt + FinalNewline:TrnExchangeRate.kt$com.ivy.wallet.ui.transaction.data.TrnExchangeRate.kt + FinalNewline:TrnFunctions.kt$com.ivy.wallet.domain.pure.transaction.TrnFunctions.kt + FinalNewline:TrnState.kt$com.ivy.wallet.ui.transaction.TrnState.kt + FinalNewline:TrnsWithDateDivsAct.kt$com.ivy.wallet.domain.action.transaction.TrnsWithDateDivsAct.kt + FinalNewline:TrnsWithRangeAndAccFiltersAct.kt$com.ivy.wallet.domain.action.transaction.TrnsWithRangeAndAccFiltersAct.kt + FinalNewline:TypographyExt.kt$com.ivy.design.l0_system.TypographyExt.kt + FinalNewline:UIExt.kt$com.ivy.wallet.utils.UIExt.kt + FinalNewline:UUIDSerializer.kt$com.ivy.wallet.backup.kotlinxserilzation.UUIDSerializer.kt + FinalNewline:UiText.kt$com.ivy.wallet.utils.UiText.kt + FinalNewline:UpcomingAct.kt$com.ivy.wallet.domain.action.viewmodel.home.UpcomingAct.kt + FinalNewline:UpdateAccCacheAct.kt$com.ivy.wallet.domain.action.viewmodel.home.UpdateAccCacheAct.kt + FinalNewline:UpdateAccountRequest.kt$com.ivy.wallet.io.network.request.account.UpdateAccountRequest.kt + FinalNewline:UpdateCategoriesCacheAct.kt$com.ivy.wallet.domain.action.viewmodel.home.UpdateCategoriesCacheAct.kt + FinalNewline:UpdateLoanRecordRequest.kt$com.ivy.wallet.io.network.request.loan.UpdateLoanRecordRequest.kt + FinalNewline:UpdateLoanRequest.kt$com.ivy.wallet.io.network.request.loan.UpdateLoanRequest.kt + FinalNewline:UpdatePlannedPaymentRuleRequest.kt$com.ivy.wallet.io.network.request.planned.UpdatePlannedPaymentRuleRequest.kt + FinalNewline:UpdateSettingsAct.kt$com.ivy.wallet.domain.action.settings.UpdateSettingsAct.kt + FinalNewline:UpdateStartDayOfMonthAct.kt$com.ivy.wallet.domain.action.global.UpdateStartDayOfMonthAct.kt + FinalNewline:UpdateTransactionRequest.kt$com.ivy.wallet.io.network.request.transaction.UpdateTransactionRequest.kt + FinalNewline:UpdateUserInfoRequest.kt$com.ivy.wallet.io.network.request.auth.UpdateUserInfoRequest.kt + FinalNewline:UpdateUserInfoResponse.kt$com.ivy.wallet.io.network.request.auth.UpdateUserInfoResponse.kt + FinalNewline:UpdateWalletCategoryRequest.kt$com.ivy.wallet.io.network.request.category.UpdateWalletCategoryRequest.kt + FinalNewline:UploadTrnToServerAct.kt$com.ivy.wallet.domain.action.viewmodel.transaction.UploadTrnToServerAct.kt + FinalNewline:User.kt$com.ivy.wallet.domain.data.core.User.kt + FinalNewline:UserDTO.kt$com.ivy.wallet.io.network.data.UserDTO.kt + FinalNewline:UserDao.kt$com.ivy.wallet.io.persistence.dao.UserDao.kt + FinalNewline:UserEntity.kt$com.ivy.wallet.io.persistence.data.UserEntity.kt + FinalNewline:UserStats.kt$com.ivy.wallet.ui.analytics.model.UserStats.kt + FinalNewline:UserStatsTab.kt$com.ivy.wallet.ui.analytics.tab.UserStatsTab.kt + FinalNewline:UtilExt.kt$com.ivy.wallet.utils.UtilExt.kt + FinalNewline:Utils.kt$com.ivy.wallet.domain.pure.util.Utils.kt + FinalNewline:Utils.kt$com.ivy.wallet.ui.component.transaction.Utils.kt + FinalNewline:View.kt$com.ivy.design.utils.View.kt + FinalNewline:WalletAccountLogic.kt$com.ivy.wallet.domain.deprecated.logic.WalletAccountLogic.kt + FinalNewline:WalletBalanceWidget.kt$com.ivy.wallet.ui.widget.WalletBalanceWidget.kt + FinalNewline:WalletBalanceWidgetActions.kt$com.ivy.wallet.ui.widget.WalletBalanceWidgetActions.kt + FinalNewline:WalletBalanceWidgetContent.kt$com.ivy.wallet.ui.widget.WalletBalanceWidgetContent.kt + FinalNewline:WalletByBudgetBakersSteps.kt$com.ivy.wallet.ui.csvimport.flow.instructions.WalletByBudgetBakersSteps.kt + FinalNewline:WalletCategoriesResponse.kt$com.ivy.wallet.io.network.request.category.WalletCategoriesResponse.kt + FinalNewline:WalletCategoryLogic.kt$com.ivy.wallet.domain.deprecated.logic.WalletCategoryLogic.kt + FinalNewline:WalletCharts.kt$com.ivy.wallet.domain.pure.charts.WalletCharts.kt + FinalNewline:WalletDAOs.kt$com.ivy.wallet.domain.pure.data.WalletDAOs.kt + FinalNewline:WalletUtil.kt$com.ivy.wallet.utils.WalletUtil.kt + FinalNewline:WalletValueFunctions.kt$com.ivy.wallet.domain.pure.transaction.WalletValueFunctions.kt + FinalNewline:WidgetBase.kt$com.ivy.wallet.ui.widget.WidgetBase.kt + FinalNewline:WrapContentRow.kt$com.ivy.wallet.ui.theme.components.WrapContentRow.kt + FinalNewline:ZipUtils.kt$com.ivy.wallet.domain.deprecated.logic.zip.ZipUtils.kt + FinalNewline:dependencies.kt$com.ivy.wallet.buildsrc.dependencies.kt + FinalNewline:ivy.lint.gradle.kts$.ivy.lint.gradle.kts + FinalNewline:settings.gradle.kts$.settings.gradle.kts + ForbiddenComment:AmountFormatting.kt$//TODO: Review, might cause trouble when integrating crypto + ForbiddenComment:BudgetViewModel.kt$BudgetViewModel$//TODO: Re-work this by creating an FPAction for it + ForbiddenComment:ChartsViewModel.kt$ChartsViewModel$//TODO: Implement + ForbiddenComment:HomeViewModel.kt$HomeViewModel$//TODO: Refactor + ForbiddenComment:ImportResultUI.kt$//TODO: Implement "See failed imports" + ForbiddenComment:InputField.kt$//TODO: Fix bug where cursor color isn't updated after theme switch + ForbiddenComment:ItemStatisticViewModel.kt$ItemStatisticViewModel$//TODO: Rework Overdue to FP + ForbiddenComment:ItemStatisticViewModel.kt$ItemStatisticViewModel$//TODO: Rework Upcoming to FP + ForbiddenComment:IvyLineChart.kt$//TODO: Fix + ForbiddenComment:IvyLineChart.kt$//marginFromX //TODO: FIX + ForbiddenComment:OnboardingViewModel.kt$OnboardingViewModel$// TODO: Delete this legacy code + ForbiddenComment:RestClient.kt$RestClient.Companion$//TODO: SECURITY - Considering trusting only Ivy's cert + ForbiddenComment:Transaction.kt$Transaction$//TODO: Remove default values & introduce Transaction#dummy() method + ForbiddenComment:TransactionCard.kt$//TODO: Optimize this + ForbiddenComment:TransactionViewModel.kt$TransactionViewModel$//TODO: Handle properly transfers exchange rate + ForbiddenComment:TransactionViewModel.kt$TransactionViewModel$//TODO: Handle transfers properly + ForbiddenComment:WalletAccountLogic.kt$WalletAccountLogic$//TODO: Remove this once Bank Integration trn sync is properly implemented + ForbiddenComment:WalletCategoryLogic.kt$WalletCategoryLogic$//TODO: Transfer zero operation + FunctionNaming:Accessors32ikgp1isdd8mwexzgbe6rirl.kt$internal fun io.gitlab.arturbosch.detekt.extensions.DetektExtension.`ext`(configure: Action<org.gradle.api.plugins.ExtraPropertiesExtension>): Unit + FunctionNaming:Accessors46nwrg1rs44ofdqpi7vyy3pfc.kt$internal fun org.gradle.api.artifacts.dsl.RepositoryHandler.`ext`(configure: Action<org.gradle.api.plugins.ExtraPropertiesExtension>): Unit + FunctionNaming:Accessors4ymijgaek646mzru18sdmblu7.kt$internal fun org.gradle.api.Project.`detekt`(configure: Action<io.gitlab.arturbosch.detekt.extensions.DetektExtension>): Unit + FunctionNaming:Accessors8lcri9ibgd9oj8dt3t8z8nvfx.kt$internal fun org.gradle.api.artifacts.dsl.DependencyHandler.`ext`(configure: Action<org.gradle.api.plugins.ExtraPropertiesExtension>): Unit + FunctionNaming:Accessorsblypoh2ruc9u3bx9djsfqsntg.kt$internal fun org.gradle.api.Project.`ext`(configure: Action<org.gradle.api.plugins.ExtraPropertiesExtension>): Unit + FunctionNaming:Accessorsbtc8iwv8u9b0f38ikfmodj8ns.kt$internal fun org.gradle.api.Project.`reporting`(configure: Action<org.gradle.api.reporting.ReportingExtension>): Unit + FunctionNaming:Accessorseessl0al0otcsbyqqruvoncpd.kt$internal fun org.gradle.api.reporting.ReportingExtension.`ext`(configure: Action<org.gradle.api.plugins.ExtraPropertiesExtension>): Unit + FunctionNaming:AccountModal.kt$@Composable fun BoxWithConstraintsScope.AccountModal( modal: AccountModalData?, onCreateAccount: (CreateAccountData) -> Unit, onEditAccount: (Account, balance: Double) -> Unit, dismiss: () -> Unit, ) + FunctionNaming:AccountModal.kt$@Composable private fun AccountCurrency( currencyCode: String, onClick: () -> Unit ) + FunctionNaming:AccountModal.kt$@Preview @Composable private fun Preview() + FunctionNaming:AccountsTab.kt$@Composable fun BoxWithConstraintsScope.AccountsTab(screen: Main) + FunctionNaming:AccountsTab.kt$@Composable private fun AccountCard( baseCurrency: String, accountData: AccountData, onBalanceClick: () -> Unit, onLongClick: () -> Unit, onClick: () -> Unit ) + FunctionNaming:AccountsTab.kt$@Composable private fun AccountHeader( accountData: AccountData, currency: String, baseCurrency: String, contrastColor: Color, onBalanceClick: () -> Unit ) + FunctionNaming:AccountsTab.kt$@Composable private fun BoxWithConstraintsScope.UI( state: AccountState = AccountState(), onEventHandler: (AccountsEvent) -> Unit = {} ) + FunctionNaming:AccountsTab.kt$@Preview @Composable private fun PreviewAccountsTab() + FunctionNaming:AddKeywordModal.kt$@Composable fun BoxWithConstraintsScope.AddKeywordModal( id: UUID = UUID.randomUUID(), keyword: String, visible: Boolean, dismiss: () -> Unit, onKeywordChanged: (String) -> Unit ) + FunctionNaming:AddKeywordModal.kt$@Preview @Composable private fun Preview() + FunctionNaming:AddPrimaryAttributeButton.kt$@Composable fun AddPrimaryAttributeButton( @DrawableRes icon: Int, text: String, onClick: () -> Unit ) + FunctionNaming:AddPrimaryAttributeButton.kt$@Preview @Composable private fun PreviewAddPrimaryAttributeButton() + FunctionNaming:AddRateModal.kt$@Composable fun BoxWithConstraintsScope.AddRateModal( visible: Boolean, baseCurrency: String, dismiss: () -> Unit, onAdd: (RatesEvent.AddRate) -> Unit, ) + FunctionNaming:AddRateModal.kt$@Preview @Composable private fun Preview() + FunctionNaming:AmountCurrency.kt$@Composable fun AmountCurrencyB1( amount: Double, currency: String, amountFontWeight: FontWeight = FontWeight.Bold, textColor: Color = UI.colors.pureInverse, shortenBigNumbers: Boolean = false ) + FunctionNaming:AmountCurrency.kt$@Composable fun AmountCurrencyB1Row( amount: Double, currency: String, amountFontWeight: FontWeight = FontWeight.Bold, textColor: Color = UI.colors.pureInverse ) + FunctionNaming:AmountCurrency.kt$@Composable fun AmountCurrencyB2Row( amount: Double, currency: String, amountFontWeight: FontWeight = FontWeight.ExtraBold, textColor: Color = UI.colors.pureInverse ) + FunctionNaming:AmountCurrency.kt$@Composable fun AmountCurrencyCaption( amount: Double, currency: String, amountFontWeight: FontWeight = FontWeight.ExtraBold, textColor: Color = UI.colors.pureInverse ) + FunctionNaming:AmountCurrency.kt$@Composable fun AmountCurrencyH1( amount: Double, currency: String, textColor: Color = UI.colors.pureInverse ) + FunctionNaming:AmountCurrency.kt$@Composable fun AmountCurrencyH2Row( amount: Double, currency: String, textColor: Color = UI.colors.pureInverse ) + FunctionNaming:AmountModal.kt$@Composable fun AmountCurrency( amount: String, currency: String ) + FunctionNaming:AmountModal.kt$@Composable fun AmountInput( currency: String, amount: String, decimalCountMax: Int = 2, setAmount: (String) -> Unit, ) + FunctionNaming:AmountModal.kt$@Composable fun AmountKeyboard( forCalculator: Boolean, ZeroRow: (@Composable RowScope.() -> Unit)? = null, FirstRowExtra: (@Composable RowScope.() -> Unit)? = null, SecondRowExtra: (@Composable RowScope.() -> Unit)? = null, ThirdRowExtra: (@Composable RowScope.() -> Unit)? = null, FourthRowExtra: (@Composable RowScope.() -> Unit)? = null, onNumberPressed: (String) -> Unit, onDecimalPoint: () -> Unit, onBackspace: () -> Unit, ) + FunctionNaming:AmountModal.kt$@Composable fun BoxWithConstraintsScope.AmountModal( id: UUID, visible: Boolean, currency: String, initialAmount: Double?, decimalCountMax: Int = 2, Header: (@Composable () -> Unit)? = null, amountSpacerTop: Dp = 64.dp, dismiss: () -> Unit, onAmountChanged: (Double) -> Unit, ) + FunctionNaming:AmountModal.kt$@Composable fun CircleNumberButton( forCalculator: Boolean, value: String, onNumberPressed: (String) -> Unit, ) + FunctionNaming:AmountModal.kt$@Composable fun KeypadCircleButton( text: String, textColor: Color = UI.colors.pureInverse, testTag: String, onClick: () -> Unit ) + FunctionNaming:AmountModal.kt$@Preview @Composable private fun Preview() + FunctionNaming:AnalyticsReportScreen.kt$@Composable fun BoxWithConstraintsScope.AnalyticsReport(screen: AnalyticsReport) + FunctionNaming:AnalyticsReportScreen.kt$@Composable private fun ColumnScope.Content( selectedTab: AnalyticsTab, onboardingReport: OnboardingReport, kpis: KPIs, health: Health, userStats: UserStats, setSelectedTab: (AnalyticsTab) -> Unit, ) + FunctionNaming:AnalyticsReportScreen.kt$@Composable private fun UI( selectedTab: AnalyticsTab, startDate: LocalDateTime?, endDate: LocalDateTime?, onboardingReport: OnboardingReport?, kpis: KPIs?, health: Health?, userStats: UserStats?, loading: Boolean, onRefresh: () -> Unit = {}, onSetStartDate: (LocalDateTime?) -> Unit = {}, onSetEndDate: (LocalDateTime?) -> Unit = {}, onSelectTab: (AnalyticsTab) -> Unit = {}, onNukeTestEvents: () -> Unit = {}, ) + FunctionNaming:AnalyticsReportScreen.kt$@Preview @Composable private fun Preview() + FunctionNaming:AppLockedScreen.kt$@Composable fun BoxWithConstraintsScope.AppLockedScreen( onShowOSBiometricsModal: () -> Unit, onContinueWithoutAuthentication: () -> Unit ) + FunctionNaming:AppLockedScreen.kt$@Preview @Composable private fun Preview_Locked() + FunctionNaming:BackBottomBar.kt$@Composable fun BoxWithConstraintsScope.BackBottomBar( bottomInset: Dp = navigationBarInset().toDensityDp(), onBack: () -> Unit, PrimaryAction: @Composable () -> Unit, ) + FunctionNaming:BalanceRow.kt$@Composable fun BalanceRow( modifier: Modifier = Modifier, currency: String, balance: Double, hiddenMode: Boolean = false, textColor: Color = UI.colors.pureInverse, decimalPaddingTop: Dp = 12.dp, spacerCurrency: Dp = 12.dp, spacerDecimal: Dp = 8.dp, currencyFontSize: TextUnit? = null, integerFontSize: TextUnit? = null, decimalFontSize: TextUnit? = null, currencyUpfront: Boolean = true, balanceAmountPrefix: String? = null, shortenBigNumbers: Boolean = false, ) + FunctionNaming:BalanceRow.kt$@Composable fun BalanceRowMedium( modifier: Modifier = Modifier, textColor: Color = UI.colors.pureInverse, currency: String, balance: Double, balanceAmountPrefix: String? = null, currencyUpfront: Boolean = true, shortenBigNumbers: Boolean = false, hiddenMode: Boolean = false, ) + FunctionNaming:BalanceRow.kt$@Composable fun BalanceRowMini( modifier: Modifier = Modifier, textColor: Color = UI.colors.pureInverse, currency: String, balance: Double, balanceAmountPrefix: String? = null, currencyUpfront: Boolean = true, shortenBigNumbers: Boolean = false, hiddenMode: Boolean = false, ) + FunctionNaming:BalanceRow.kt$@Composable private fun Currency( currency: String, currencyFontSize: TextUnit?, textColor: Color, ) + FunctionNaming:BalanceRow.kt$@Preview @Composable private fun Preview_Default() + FunctionNaming:BalanceRow.kt$@Preview @Composable private fun Preview_Medium() + FunctionNaming:BalanceRow.kt$@Preview @Composable private fun Preview_Mini() + FunctionNaming:BalanceScreen.kt$@Composable fun BoxWithConstraintsScope.BalanceScreen(screen: BalanceScreen) + FunctionNaming:BalanceScreen.kt$@Composable private fun BoxWithConstraintsScope.UI( period: TimePeriod, baseCurrencyCode: String, currentBalance: Double, plannedPaymentsAmount: Double, balanceAfterPlannedPayments: Double, onSetPeriod: (TimePeriod) -> Unit = {}, onPreviousMonth: () -> Unit = {}, onNextMonth: () -> Unit = {} ) + FunctionNaming:BalanceScreen.kt$@Composable private fun ColumnScope.BalanceAfterPlannedPayments( currency: String, currentBalance: Double, plannedPaymentsAmount: Double, balanceAfterPlannedPayments: Double ) + FunctionNaming:BalanceScreen.kt$@Composable private fun ColumnScope.CloseButton() + FunctionNaming:BalanceScreen.kt$@Composable private fun ColumnScope.CurrentBalance( currency: String, currentBalance: Double ) + FunctionNaming:BalanceScreen.kt$@Preview @Composable private fun Preview() + FunctionNaming:BudgetBattery.kt$@Composable fun BudgetBattery( modifier: Modifier = Modifier, currency: String, expenses: Double, budget: Double, backgroundNotFilled: Color = UI.colors.pure, onClick: (() -> Unit)? = null, ) + FunctionNaming:BudgetBattery.kt$@Preview @Composable private fun Preview_budget_0() + FunctionNaming:BudgetBattery.kt$@Preview @Composable private fun Preview_buffer_100() + FunctionNaming:BudgetBattery.kt$@Preview @Composable private fun Preview_buffer_125() + FunctionNaming:BudgetBattery.kt$@Preview @Composable private fun Preview_buffer_25() + FunctionNaming:BudgetBattery.kt$@Preview @Composable private fun Preview_buffer_50() + FunctionNaming:BudgetBattery.kt$@Preview @Composable private fun Preview_buffer_75() + FunctionNaming:BudgetBattery.kt$@Preview @Composable private fun Preview_buffer_90() + FunctionNaming:BudgetBattery.kt$@Preview @Composable private fun Preview_expenses_0() + FunctionNaming:BudgetBattery.kt$@Preview @Composable private fun Preview_expenses_negative() + FunctionNaming:BudgetBattery.kt$@Preview @Composable private fun Preview_spent_very_low() + FunctionNaming:BudgetBottomBar.kt$@Composable internal fun BoxWithConstraintsScope.BudgetBottomBar( onClose: () -> Unit, onAdd: () -> Unit ) + FunctionNaming:BudgetBottomBar.kt$@Preview @Composable private fun PreviewBottomBar() + FunctionNaming:BudgetModal.kt$@Composable fun BoxWithConstraintsScope.BudgetModal( modal: BudgetModalData?, onCreate: (CreateBudgetData) -> Unit, onEdit: (Budget) -> Unit, onDelete: (Budget) -> Unit, dismiss: () -> Unit ) + FunctionNaming:BudgetModal.kt$@Composable fun ModalNameInput( hint: String, autoFocusKeyboard: Boolean, textFieldValue: TextFieldValue, setTextFieldValue: (TextFieldValue) -> Unit, ) + FunctionNaming:BudgetModal.kt$@Composable private fun CategoriesRow( categories: List<Category>, budgetCategoryIds: List<UUID>, onSetBudgetCategoryIds: (List<UUID>) -> Unit, ) + FunctionNaming:BudgetModal.kt$@Preview @Composable private fun Preview_create() + FunctionNaming:BudgetModal.kt$@Preview @Composable private fun Preview_edit() + FunctionNaming:BudgetScreen.kt$@Composable fun BoxWithConstraintsScope.BudgetScreen(screen: BudgetScreen) + FunctionNaming:BudgetScreen.kt$@Composable private fun BoxWithConstraintsScope.UI( timeRange: FromToTimeRange?, baseCurrency: String, categories: List<Category>, accounts: List<Account>, displayBudgets: List<DisplayBudget>, appBudgetMax: Double, categoryBudgetsTotal: Double, onCreateBudget: (CreateBudgetData) -> Unit = {}, onEditBudget: (Budget) -> Unit = {}, onDeleteBudget: (Budget) -> Unit = {}, onReorder: (List<DisplayBudget>) -> Unit = {} ) + FunctionNaming:BudgetScreen.kt$@Composable private fun BudgetItem( displayBudget: DisplayBudget, baseCurrency: String, onClick: () -> Unit ) + FunctionNaming:BudgetScreen.kt$@Composable private fun NoBudgetsEmptyState( modifier: Modifier = Modifier, emptyStateTitle: String, emptyStateText: String, ) + FunctionNaming:BudgetScreen.kt$@Composable private fun Toolbar( timeRange: FromToTimeRange?, baseCurrency: String, appBudgetMax: Double, categoryBudgetsTotal: Double, setReorderModalVisible: (Boolean) -> Unit ) + FunctionNaming:BudgetScreen.kt$@Preview @Composable private fun Preview_Budgets() + FunctionNaming:BudgetScreen.kt$@Preview @Composable private fun Preview_Empty() + FunctionNaming:BufferBattery.kt$@Composable fun BufferBattery( modifier: Modifier = Modifier, buffer: Double, balance: Double, currency: String, backgroundNotFilled: Color = UI.colors.pure, onClick: (() -> Unit)? = null, ) + FunctionNaming:BufferBattery.kt$@Preview @Composable private fun Preview_buffer_0() + FunctionNaming:BufferBattery.kt$@Preview @Composable private fun Preview_buffer_100() + FunctionNaming:BufferBattery.kt$@Preview @Composable private fun Preview_buffer_125() + FunctionNaming:BufferBattery.kt$@Preview @Composable private fun Preview_buffer_25() + FunctionNaming:BufferBattery.kt$@Preview @Composable private fun Preview_buffer_50() + FunctionNaming:BufferBattery.kt$@Preview @Composable private fun Preview_buffer_75() + FunctionNaming:BufferBattery.kt$@Preview @Composable private fun Preview_buffer_90() + FunctionNaming:BufferBattery.kt$@Preview @Composable private fun Preview_buffer_balance_0() + FunctionNaming:BufferBattery.kt$@Preview @Composable private fun Preview_buffer_very_low() + FunctionNaming:BufferModal.kt$@Composable fun BoxWithConstraintsScope.BufferModal( modal: BufferModalData?, dismiss: () -> Unit, onBufferChanged: (Double) -> Unit ) + FunctionNaming:Button.kt$@Composable fun Button( modifier: Modifier = Modifier, text: String, background: Background = Background.Solid( color = UI.colors.primary, shape = UI.shapes.rFull, padding = padding( horizontal = 24.dp, vertical = 12.dp ) ), textStyle: TextStyle = UI.typo.b2.style( color = White, textAlign = TextAlign.Center ), onClick: () -> Unit ) + FunctionNaming:Button.kt$@Preview @Composable private fun Preview_FillMaxWidth() + FunctionNaming:Button.kt$@Preview @Composable private fun Preview_Outlined() + FunctionNaming:Button.kt$@Preview @Composable private fun Preview_Solid() + FunctionNaming:ButtonWithIcon.kt$@Composable fun Button( modifier: Modifier = Modifier, text: String, mode: Mode = Mode.WRAP_CONTENT, background: Background = Background.Solid( color = UI.colors.primary, shape = UI.shapes.rFull, padding = padding( horizontal = 24.dp, vertical = 12.dp ) ), textStyle: TextStyle = UI.typo.b1.style( color = White, textAlign = TextAlign.Center ), @DrawableRes iconLeft: Int? = null, @DrawableRes iconRight: Int? = null, iconTint: Color = White, iconPadding: Dp = 12.dp, onClick: () -> Unit ) + FunctionNaming:ButtonWithIcon.kt$@Preview @Composable private fun Preview_IconLeft_FillMax() + FunctionNaming:ButtonWithIcon.kt$@Preview @Composable private fun Preview_IconLeft_Wrap() + FunctionNaming:ButtonWithIcon.kt$@Preview @Composable private fun Preview_IconRight_FillMax() + FunctionNaming:ButtonWithIcon.kt$@Preview @Composable private fun Preview_IconRight_Wrap() + FunctionNaming:CSVScreen.kt$@Composable fun CSVScreen( screen: CSVScreen ) + FunctionNaming:CSVScreen.kt$@Composable fun LabelContainsField( label: String, value: String, onValueChange: (String) -> Unit, ) + FunctionNaming:CSVScreen.kt$@Composable fun Spacer8(horizontal: Boolean = false) + FunctionNaming:CSVScreen.kt$@Composable private fun AmountMetadata( multiplier: Int, onMetaChange: (Int) -> Unit, ) + FunctionNaming:CSVScreen.kt$@Composable private fun CSVCell( text: String, header: Boolean, even: Boolean ) + FunctionNaming:CSVScreen.kt$@Composable private fun CSVRow( row: CSVRow, header: Boolean, even: Boolean, modifier: Modifier = Modifier, ) + FunctionNaming:CSVScreen.kt$@Composable private fun DateMetadataUI( metadata: DateMetadata, onEvent: (CSVEvent) -> Unit, ) + FunctionNaming:CSVScreen.kt$@Composable private fun EnabledButton( text: String, enabled: Boolean, onClick: () -> Unit, ) + FunctionNaming:CSVScreen.kt$@Composable private fun ImportButton( onFilePicked: (Uri) -> Unit, ) + FunctionNaming:CSVScreen.kt$@Composable private fun ImportUI( state: CSVState, launchedFromOnboarding: Boolean, onEvent: (CSVEvent) -> Unit, ) + FunctionNaming:CSVScreen.kt$@Composable private fun TypeMetadata( metadata: TrnTypeMetadata, onEvent: (CSVEvent) -> Unit ) + FunctionNaming:CalculatorModal.kt$@Composable fun BoxWithConstraintsScope.CalculatorModal( id: UUID = UUID.randomUUID(), initialAmount: Double?, visible: Boolean, currency: String, dismiss: () -> Unit, onCalculation: (Double) -> Unit ) + FunctionNaming:CalculatorModal.kt$@Preview @Composable private fun Preview() + FunctionNaming:CategoriesBottomBar.kt$@Composable internal fun BoxWithConstraintsScope.CategoriesBottomBar( onClose: () -> Unit, onAddCategory: () -> Unit ) + FunctionNaming:CategoriesBottomBar.kt$@Preview @Composable private fun PreviewBottomBar() + FunctionNaming:CategoriesScreen.kt$@Composable fun AddedSpent( modifier: Modifier = Modifier, textColor: Color = UI.colors.pureInverse, dividerColor: Color = UI.colors.medium, monthlyIncome: Double, monthlyExpenses: Double, currency: String, center: Boolean = true, dividerSpacer: Dp? = null, ) + FunctionNaming:CategoriesScreen.kt$@Composable fun BoxWithConstraintsScope.CategoriesScreen(screen: Categories) + FunctionNaming:CategoriesScreen.kt$@Composable fun BoxWithConstraintsScope.SortModal( title: String = stringResource(R.string.sort_by), items: List<SortOrder>, visible: Boolean, initialType: SortOrder, id: UUID = UUID.randomUUID(), dismiss: () -> Unit, onSortOrderChanged: (SortOrder) -> Unit ) + FunctionNaming:CategoriesScreen.kt$@Composable private fun BoxWithConstraintsScope.UI( state: CategoriesScreenState = CategoriesScreenState(), onEvent: (CategoriesScreenEvent) -> Unit = {} ) + FunctionNaming:CategoriesScreen.kt$@Composable private fun CategoryCard( currency: String, categoryData: CategoryData, onLongClick: () -> Unit, onClick: () -> Unit ) + FunctionNaming:CategoriesScreen.kt$@Composable private fun CategoryHeader( categoryData: CategoryData, currency: String, contrastColor: Color, ) + FunctionNaming:CategoriesScreen.kt$@Composable private fun LabelAmount( label: String, amount: Double, currency: String, textColor: Color, center: Boolean ) + FunctionNaming:CategoriesScreen.kt$@Composable private fun SelectTypeButton( text: String, @DrawableRes icon: Int, selected: Boolean, selectedGradient: Gradient = GradientGreen, textSelectedColor: Color = White, onClick: () -> Unit ) + FunctionNaming:CategoriesScreen.kt$@Preview @Composable private fun Preview() + FunctionNaming:Category.kt$@Composable fun Category( category: Category?, onChooseCategory: () -> Unit ) + FunctionNaming:Category.kt$@Composable private fun CategoryButton( category: Category, onClick: () -> Unit, ) + FunctionNaming:CategoryCharts.kt$@Composable private fun CategoriesChart( period: ChartPeriod, title: String, titleColor: Color = UI.colors.pureInverse, baseCurrencyCode: String, categoryValues: List<CategoryValues>, countChart: Boolean, ) + FunctionNaming:CategoryModal.kt$@Composable fun BoxWithConstraintsScope.CategoryModal( modal: CategoryModalData?, onCreateCategory: (CreateCategoryData) -> Unit, onEditCategory: (Category) -> Unit, dismiss: () -> Unit, ) + FunctionNaming:CategoryModal.kt$@Composable fun IconNameRow( hint: String, @DrawableRes defaultIcon: Int, color: Color, icon: String?, autoFocusKeyboard: Boolean, nameTextFieldValue: TextFieldValue, setNameTextFieldValue: (TextFieldValue) -> Unit, showChooseIconModal: () -> Unit ) + FunctionNaming:CategoryModal.kt$@Preview @Composable private fun PreviewCategoryModal() + FunctionNaming:ChangeTransactionTypeModal.kt$@Composable fun BoxWithConstraintsScope.ChangeTransactionTypeModal( title: String = stringResource(R.string.set_transaction_type), visible: Boolean, includeTransferType: Boolean, initialType: TransactionType, id: UUID = UUID.randomUUID(), dismiss: () -> Unit, onTransactionTypeChanged: (TransactionType) -> Unit ) + FunctionNaming:ChangeTransactionTypeModal.kt$@Composable private fun TransactionTypeButton( transactionType: TransactionType, selected: Boolean, selectedGradient: Gradient, textSelectedColor: Color, onClick: () -> Unit ) + FunctionNaming:ChangeTransactionTypeModal.kt$@Preview @Composable private fun Preview() + FunctionNaming:ChartsScreen.kt$@Composable fun BoxWithConstraintsScope.ChartsScreen(screen: Charts) + FunctionNaming:ChartsScreen.kt$@Composable private fun ChartButton( modifier: Modifier = Modifier, chartType: ChartType, selected: Boolean, onClick: () -> Unit ) + FunctionNaming:ChartsScreen.kt$@Composable private fun ChartsType( selectedChartType: ChartType, onSetChartType: (ChartType) -> Unit ) + FunctionNaming:ChartsScreen.kt$@Composable private fun Period( period: ChartPeriod, onSetPeriod: (ChartPeriod) -> Unit ) + FunctionNaming:ChartsScreen.kt$@Composable private fun Toolbar() + FunctionNaming:ChartsScreen.kt$@Composable private fun UI( period: ChartPeriod, baseCurrencyCode: String, balanceChart: List<SingleChartPoint> = emptyList(), incomeExpenseChart: List<IncomeExpenseChartPoint> = emptyList(), categories: List<Category> = emptyList(), categoryExpenseValues: List<CategoryValues> = emptyList(), categoryExpenseCount: List<CategoryValues> = emptyList(), categoryIncomeValues: List<CategoryValues> = emptyList(), categoryIncomeCount: List<CategoryValues> = emptyList(), onLoadCategory: (Category) -> Unit = {}, onRemoveCategory: (Category) -> Unit = {}, onChangePeriod: (ChartPeriod) -> Unit = {} ) + FunctionNaming:ChartsScreen.kt$@Preview @Composable private fun Preview() + FunctionNaming:Checkbox.kt$@Composable fun Checkbox( modifier: Modifier = Modifier, checked: Boolean, contentDescription: String = "checkbox", onCheckedChange: (checked: Boolean) -> Unit ) + FunctionNaming:Checkbox.kt$@Composable fun CheckboxWithText( modifier: Modifier = Modifier, checked: Boolean, text: String, textStyle: TextStyle = UI.typo.b2.style( color = UI.colors.pureInverse, fontWeight = FontWeight.SemiBold ), onCheckedChange: (checked: Boolean) -> Unit ) + FunctionNaming:Checkbox.kt$@Preview @Composable private fun PreviewIvyCheckboxWithText() + FunctionNaming:ChooseCategoryModal.kt$@Composable fun AddNewButton( modifier: Modifier = Modifier, onClick: () -> Unit ) + FunctionNaming:ChooseCategoryModal.kt$@ExperimentalFoundationApi @Composable fun BoxWithConstraintsScope.ChooseCategoryModal( id: UUID = UUID.randomUUID(), visible: Boolean, initialCategory: Category?, categories: List<Category>, showCategoryModal: (Category?) -> Unit, onCategoryChanged: (Category?) -> Unit, dismiss: () -> Unit ) + FunctionNaming:ChooseCategoryModal.kt$@ExperimentalFoundationApi @Composable private fun CategoryButton( category: Category, selected: Boolean, onClick: () -> Unit, onLongClick: () -> Unit, onDeselect: () -> Unit, ) + FunctionNaming:ChooseCategoryModal.kt$@ExperimentalFoundationApi @Composable private fun CategoryPicker( categories: List<Category>, selectedCategory: Category?, showCategoryModal: (Category?) -> Unit, onEditCategory: (Category) -> Unit, onSelected: (Category?) -> Unit, ) + FunctionNaming:ChooseCategoryModal.kt$@ExperimentalFoundationApi @Preview @Composable private fun PreviewChooseCategoryModal() + FunctionNaming:ChooseIconModal.kt$@Composable fun BoxWithConstraintsScope.ChooseIconModal( visible: Boolean, initialIcon: String?, color: Color, id: UUID = UUID.randomUUID(), dismiss: () -> Unit, onIconChosen: (String?) -> Unit ) + FunctionNaming:ChooseIconModal.kt$@Composable private fun Icon( icon: String, selected: Boolean, color: Color, onClick: () -> Unit, ) + FunctionNaming:ChooseIconModal.kt$@Composable private fun IconsRow( icons: List<String>, selectedIcon: String?, color: Color, onIconSelected: (String) -> Unit ) + FunctionNaming:ChooseIconModal.kt$@Composable private fun Section( title: String ) + FunctionNaming:ChooseIconModal.kt$@Preview @Composable private fun ChooseIconModal() + FunctionNaming:ChoosePeriodModal.kt$@Composable fun BoxWithConstraintsScope.ChoosePeriodModal( modal: ChoosePeriodModalData?, dismiss: () -> Unit, onPeriodSelected: (TimePeriod) -> Unit ) + FunctionNaming:ChoosePeriodModal.kt$@Composable private fun AllTime( timeRange: FromToTimeRange?, onSelected: (FromToTimeRange?) -> Unit, ) + FunctionNaming:ChoosePeriodModal.kt$@Composable private fun ChooseMonth( selectedMonthYear: MonthYear?, onSelected: (MonthYear) -> Unit, ) + FunctionNaming:ChoosePeriodModal.kt$@Composable private fun FromToRange( timeRange: FromToTimeRange?, onSelected: (FromToTimeRange?) -> Unit, ) + FunctionNaming:ChoosePeriodModal.kt$@Composable private fun IntervalFromToDate( border: IntervalBorder, dateTime: LocalDateTime?, otherEndDateTime: LocalDateTime?, onSelected: (LocalDateTime?) -> Unit ) + FunctionNaming:ChoosePeriodModal.kt$@Composable private fun LastNPeriod( modalScrollState: ScrollState, lastNTimeRange: LastNTimeRange?, onSelected: (LastNTimeRange) -> Unit ) + FunctionNaming:ChoosePeriodModal.kt$@Composable private fun MonthButton( modifier: Modifier = Modifier, selected: Boolean, text: String, onClick: () -> Unit ) + FunctionNaming:ChoosePeriodModal.kt$@Preview @Composable private fun Preview_FromTo() + FunctionNaming:ChoosePeriodModal.kt$@Preview @Composable private fun Preview_LastN() + FunctionNaming:ChoosePeriodModal.kt$@Preview @Composable private fun Preview_MonthSelected() + FunctionNaming:ChooseStartDateOfMonthModal.kt$@Composable fun BoxWithConstraintsScope.ChooseStartDateOfMonthModal( id: UUID = UUID.randomUUID(), visible: Boolean, selectedStartDateOfMonth: Int, dismiss: () -> Unit, onStartDateOfMonthSelected: (Int) -> Unit, ) + FunctionNaming:ChooseStartDateOfMonthModal.kt$@Composable private fun ColumnScope.NumberRow( selectedNumber: Int, fromInclusive: Int, toInclusive: Int, onClick: (Int) -> Unit ) + FunctionNaming:ChooseStartDateOfMonthModal.kt$@Composable private fun NumberView( number: Int, selected: Boolean, onClick: (Int) -> Unit ) + FunctionNaming:ChooseStartDateOfMonthModal.kt$@Preview @Composable private fun Preview() + FunctionNaming:CircleButtons.kt$@Composable fun BackButton( modifier: Modifier = Modifier, onClick: () -> Unit ) + FunctionNaming:CircleButtons.kt$@Composable fun CircleButton( modifier: Modifier = Modifier, @DrawableRes icon: Int, contentDescription: String = "icon", backgroundColor: Color = UI.colors.pure, borderColor: Color = UI.colors.medium, tint: Color? = UI.colors.pureInverse, onClick: () -> Unit ) + FunctionNaming:CircleButtons.kt$@Composable fun CircleButtonFilled( modifier: Modifier = Modifier, @DrawableRes icon: Int, contentDescription: String = "icon", backgroundColor: Color = UI.colors.medium, tint: Color? = UI.colors.pureInverse, clickAreaPadding: Dp = 8.dp, onClick: () -> Unit ) + FunctionNaming:CircleButtons.kt$@Composable fun CircleButtonFilledGradient( modifier: Modifier = Modifier, @DrawableRes icon: Int, contentDescription: String = "icon", iconPadding: Dp = 8.dp, backgroundGradient: Gradient = Gradient.solid(UI.colors.medium), tint: Color? = UI.colors.pureInverse, onClick: () -> Unit ) + FunctionNaming:CircleButtons.kt$@Composable fun CloseButton( modifier: Modifier = Modifier, onClick: () -> Unit ) + FunctionNaming:CircleButtons.kt$@Preview @Composable private fun PreviewBackButton() + FunctionNaming:CircleButtons.kt$@Preview @Composable private fun PreviewCloseButton() + FunctionNaming:ColumnRoot.kt$@Composable fun ColumnRoot( modifier: Modifier = Modifier, statusBarPadding: Boolean = true, navigationBarsPadding: Boolean = true, verticalArrangement: Arrangement.Vertical = Arrangement.Top, horizontalAlignment: Alignment.Horizontal = Alignment.Start, Content: @Composable ColumnScope.() -> Unit ) + FunctionNaming:CurrencyModal.kt$@Composable fun BoxWithConstraintsScope.CurrencyModal( title: String, initialCurrency: IvyCurrency?, visible: Boolean, dismiss: () -> Unit, id: UUID = UUID.randomUUID(), onSetCurrency: (String) -> Unit ) + FunctionNaming:CurrencyModal.kt$@Preview @Composable private fun Preview() + FunctionNaming:CurrencyPicker.kt$@Composable fun CurrencyPicker( modifier: Modifier = Modifier, initialSelectedCurrency: IvyCurrency?, preselectedCurrency: IvyCurrency = IvyCurrency.getDefault(), includeKeyboardShownInsetSpacer: Boolean, lastItemSpacer: Dp = 0.dp, onKeyboardShown: (keyboardVisible: Boolean) -> Unit = {}, onSelectedCurrencyChanged: (IvyCurrency) -> Unit ) + FunctionNaming:CurrencyPicker.kt$@Composable private fun CurrencyItemCard( currency: IvyCurrency, selected: Boolean, onClick: () -> Unit, ) + FunctionNaming:CurrencyPicker.kt$@Composable private fun CurrencyList( searchQueryLowercase: String, selectedCurrency: IvyCurrency, lastItemSpacer: Dp, onCurrencySelected: (IvyCurrency) -> Unit ) + FunctionNaming:CurrencyPicker.kt$@Composable private fun LetterDividerItem( spacerTop: Dp, letterDivider: LetterDivider ) + FunctionNaming:CurrencyPicker.kt$@Composable private fun SearchInput( searchTextFieldValue: TextFieldValue, onSetSearchTextFieldValue: (TextFieldValue) -> Unit ) + FunctionNaming:CurrencyPicker.kt$@Composable private fun SelectedCurrencyCard( currency: IvyCurrency, preselected: Boolean, ) + FunctionNaming:CurrencyPicker.kt$@Preview @Composable private fun Preview() + FunctionNaming:CustomExchangeRateCard.kt$@Composable fun CustomExchangeRateCard( modifier: Modifier = Modifier, title: String = stringResource(R.string.exchange_rate), fromCurrencyCode: String, toCurrencyCode: String, exchangeRate: Double, onRefresh: () -> Unit = {}, onClick: () -> Unit ) + FunctionNaming:CustomExchangeRateCard.kt$@Preview @Composable private fun Preview_OneTime() + FunctionNaming:CustomerJourney.kt$@Composable fun CustomerJourney( customerJourneyCards: List<CustomerJourneyCardData>, onDismiss: (CustomerJourneyCardData) -> Unit ) + FunctionNaming:CustomerJourney.kt$@Composable fun CustomerJourneyCard( cardData: CustomerJourneyCardData, onDismiss: () -> Unit, onCTA: () -> Unit ) + FunctionNaming:CustomerJourney.kt$@Preview @Composable private fun PreviewCard() + FunctionNaming:CustomerJourneyLogic.kt$@Preview @Composable private fun PreviewAddPlannedPaymentCard() + FunctionNaming:CustomerJourneyLogic.kt$@Preview @Composable private fun PreviewAdjustBalanceCard() + FunctionNaming:CustomerJourneyLogic.kt$@Preview @Composable private fun PreviewDidYouKnow_ExpensesPieChart() + FunctionNaming:CustomerJourneyLogic.kt$@Preview @Composable private fun PreviewDidYouKnow_PinAddTransactionWidgetCard() + FunctionNaming:CustomerJourneyLogic.kt$@Preview @Composable private fun PreviewIvyTelegram_2() + FunctionNaming:CustomerJourneyLogic.kt$@Preview @Composable private fun PreviewIvyWallet_gitHubBackups() + FunctionNaming:CustomerJourneyLogic.kt$@Preview @Composable private fun PreviewIvyWallet_isOpenSource() + FunctionNaming:CustomerJourneyLogic.kt$@Preview @Composable private fun PreviewJoinTelegram() + FunctionNaming:CustomerJourneyLogic.kt$@Preview @Composable private fun PreviewRateUsCard() + FunctionNaming:CustomerJourneyLogic.kt$@Preview @Composable private fun PreviewRateUs_2() + FunctionNaming:CustomerJourneyLogic.kt$@Preview @Composable private fun PreviewShareIvyWallet() + FunctionNaming:CustomerJourneyLogic.kt$CustomerJourneyLogic.Companion$fun didYouKnow_expensesPieChart() + FunctionNaming:CustomerJourneyLogic.kt$CustomerJourneyLogic.Companion$fun didYouKnow_pinAddTransactionWidgetCard() + FunctionNaming:CustomerJourneyLogic.kt$CustomerJourneyLogic.Companion$fun rateUsCard_2() + FunctionNaming:DataCircle.kt$@Composable fun DataCircle( count: Int, metric: String, circleColor: Color, parentCount: Int?, avgCount: Double? = null ) + FunctionNaming:DefaultImportSteps.kt$@Composable fun DefaultImportSteps( videoUrl: String? = null, articleUrl: String? = null, onUploadClick: () -> Unit ) + FunctionNaming:DeleteButton.kt$@Composable fun DeleteButton( modifier: Modifier = Modifier, hasShadow: Boolean = true, onClick: () -> Unit, ) + FunctionNaming:DeleteModal.kt$@Composable fun BoxWithConstraintsScope.DeleteModal( id: UUID = UUID.randomUUID(), title: String, description: String, visible: Boolean, buttonText: String = stringResource(R.string.delete), iconStart: Int = R.drawable.ic_delete, dismiss: () -> Unit, onDelete: () -> Unit, ) + FunctionNaming:Description.kt$@Composable fun Description( description: String?, onAddDescription: () -> Unit, onEditDescription: (String) -> Unit ) + FunctionNaming:Description.kt$@Composable private fun DescriptionText( description: String, onClick: () -> Unit, ) + FunctionNaming:Description.kt$@Preview @Composable private fun PreviewDescription_Empty() + FunctionNaming:Description.kt$@Preview @Composable private fun PreviewDescription_withText() + FunctionNaming:DescriptionModal.kt$@Composable fun BoxWithConstraintsScope.DescriptionModal( id: UUID = UUID.randomUUID(), visible: Boolean, description: String?, onDescriptionChanged: (String?) -> Unit, dismiss: () -> Unit, ) + FunctionNaming:DescriptionModal.kt$@Preview @Composable private fun PreviewDescriptionModal_emptyText() + FunctionNaming:DetektConfigurationAccessors.kt$internal fun <T : ModuleDependency> DependencyHandler.`detekt`( dependency: T, dependencyConfiguration: T.() -> Unit ): T + FunctionNaming:DetektConfigurationAccessors.kt$internal fun ArtifactHandler.`detekt`( artifactNotation: Any, configureAction: ConfigurablePublishArtifact.() -> Unit ): PublishArtifact + FunctionNaming:DetektConfigurationAccessors.kt$internal fun ArtifactHandler.`detekt`(artifactNotation: Any): PublishArtifact + FunctionNaming:DetektConfigurationAccessors.kt$internal fun DependencyConstraintHandler.`detekt`(constraintNotation: Any): DependencyConstraint? + FunctionNaming:DetektConfigurationAccessors.kt$internal fun DependencyConstraintHandler.`detekt`(constraintNotation: Any, block: DependencyConstraint.() -> Unit): DependencyConstraint? + FunctionNaming:DetektConfigurationAccessors.kt$internal fun DependencyHandler.`detekt`( dependencyNotation: Provider<*>, dependencyConfiguration: Action<ExternalModuleDependency> ): Unit + FunctionNaming:DetektConfigurationAccessors.kt$internal fun DependencyHandler.`detekt`( dependencyNotation: ProviderConvertible<*>, dependencyConfiguration: Action<ExternalModuleDependency> ): Unit + FunctionNaming:DetektConfigurationAccessors.kt$internal fun DependencyHandler.`detekt`( dependencyNotation: String, dependencyConfiguration: Action<ExternalModuleDependency> ): ExternalModuleDependency + FunctionNaming:DetektConfigurationAccessors.kt$internal fun DependencyHandler.`detekt`( group: String, name: String, version: String? = null, configuration: String? = null, classifier: String? = null, ext: String? = null, dependencyConfiguration: Action<ExternalModuleDependency>? = null ): ExternalModuleDependency + FunctionNaming:DetektConfigurationAccessors.kt$internal fun DependencyHandler.`detekt`(dependencyNotation: Any): Dependency? + FunctionNaming:DetektPluginsConfigurationAccessors.kt$internal fun <T : ModuleDependency> DependencyHandler.`detektPlugins`( dependency: T, dependencyConfiguration: T.() -> Unit ): T + FunctionNaming:DetektPluginsConfigurationAccessors.kt$internal fun ArtifactHandler.`detektPlugins`( artifactNotation: Any, configureAction: ConfigurablePublishArtifact.() -> Unit ): PublishArtifact + FunctionNaming:DetektPluginsConfigurationAccessors.kt$internal fun ArtifactHandler.`detektPlugins`(artifactNotation: Any): PublishArtifact + FunctionNaming:DetektPluginsConfigurationAccessors.kt$internal fun DependencyConstraintHandler.`detektPlugins`(constraintNotation: Any): DependencyConstraint? + FunctionNaming:DetektPluginsConfigurationAccessors.kt$internal fun DependencyConstraintHandler.`detektPlugins`(constraintNotation: Any, block: DependencyConstraint.() -> Unit): DependencyConstraint? + FunctionNaming:DetektPluginsConfigurationAccessors.kt$internal fun DependencyHandler.`detektPlugins`( dependencyNotation: Provider<*>, dependencyConfiguration: Action<ExternalModuleDependency> ): Unit + FunctionNaming:DetektPluginsConfigurationAccessors.kt$internal fun DependencyHandler.`detektPlugins`( dependencyNotation: ProviderConvertible<*>, dependencyConfiguration: Action<ExternalModuleDependency> ): Unit + FunctionNaming:DetektPluginsConfigurationAccessors.kt$internal fun DependencyHandler.`detektPlugins`( dependencyNotation: String, dependencyConfiguration: Action<ExternalModuleDependency> ): ExternalModuleDependency + FunctionNaming:DetektPluginsConfigurationAccessors.kt$internal fun DependencyHandler.`detektPlugins`( group: String, name: String, version: String? = null, configuration: String? = null, classifier: String? = null, ext: String? = null, dependencyConfiguration: Action<ExternalModuleDependency>? = null ): ExternalModuleDependency + FunctionNaming:DetektPluginsConfigurationAccessors.kt$internal fun DependencyHandler.`detektPlugins`(dependencyNotation: Any): Dependency? + FunctionNaming:Dividers.kt$@Composable fun ColumnScope.DividerW( weight: Float = 1f, width: Dp = 1.dp, color: Color = UI.colors.gray, shape: Shape = UI.shapes.rFull ) + FunctionNaming:Dividers.kt$@Composable fun Divider( modifier: Modifier = Modifier, color: Color = UI.colors.gray, shape: Shape = UI.shapes.rFull ) + FunctionNaming:Dividers.kt$@Composable fun DividerH( size: DividerSize = DividerSize.FillMax( padding = 16.dp ), width: Dp = 1.dp, color: Color = UI.colors.gray, shape: Shape = UI.shapes.rFull ) + FunctionNaming:Dividers.kt$@Composable fun DividerV( size: DividerSize = DividerSize.FillMax( padding = 16.dp ), width: Dp = 1.dp, color: Color = UI.colors.gray, shape: Shape = UI.shapes.rFull ) + FunctionNaming:Dividers.kt$@Composable fun RowScope.DividerW( weight: Float = 1f, height: Dp = 1.dp, color: Color = UI.colors.gray, shape: Shape = UI.shapes.rFull ) + FunctionNaming:Dividers.kt$@Preview @Composable private fun PreviewDivider() + FunctionNaming:Dividers.kt$@Preview @Composable private fun PreviewHorizontalDivider_fillMax() + FunctionNaming:Dividers.kt$@Preview @Composable private fun PreviewHorizontalDivider_fixed() + FunctionNaming:Dividers.kt$@Preview @Composable private fun PreviewVerticalDivider_fillMax() + FunctionNaming:Dividers.kt$@Preview @Composable private fun PreviewVerticalDivider_fixed() + FunctionNaming:DonateModal.kt$@Composable fun BoxWithConstraintsScope.DonateModal( visible: Boolean, dismiss: () -> Unit, onGooglePlay: () -> Unit, onGitHubSponsors: () -> Unit, ) + FunctionNaming:DonateModal.kt$@Preview @Composable private fun Preview() + FunctionNaming:DonateScreen.kt$@Composable fun BoxWithConstraintsScope.DonateScreen(screen: DonateScreen) + FunctionNaming:DonateScreen.kt$@Composable private fun BoxWithConstraintsScope.DonateButton( onGooglePlayDonate: () -> Unit ) + FunctionNaming:DonateScreen.kt$@Composable private fun BoxWithConstraintsScope.UI( onEvent: (DonateEvent) -> Unit ) + FunctionNaming:DonateScreen.kt$@Composable private fun DonateOptionPicker( option: DonateOption, onSelect: (DonateOption) -> Unit ) + FunctionNaming:DonateScreen.kt$@Composable private fun OptionPickerButton( @DrawableRes icon: Int, contentDescription: String, onClick: () -> Unit ) + FunctionNaming:DonateScreen.kt$@Composable private fun ScreenContent() + FunctionNaming:DonateScreen.kt$@Preview @Composable private fun Preview() + FunctionNaming:DueDate.kt$@Composable fun DueDate( dueDate: LocalDateTime, onPickDueDate: () -> Unit, ) + FunctionNaming:DueDate.kt$@Composable private fun DueDateCard( dueDate: LocalDateTime, onClick: () -> Unit, ) + FunctionNaming:DueDate.kt$@Preview @Composable private fun Preview_OneTime() + FunctionNaming:EditBottomSheet.kt$@Composable fun BoxWithConstraintsScope.EditBottomSheet( initialTransactionId: UUID?, type: TransactionType, accounts: List<Account>, selectedAccount: Account?, toAccount: Account?, amount: Double, currency: String, convertedAmount: Double? = null, convertedAmountCurrencyCode: String? = null, amountModalShown: Boolean, setAmountModalShown: (Boolean) -> Unit, ActionButton: @Composable () -> Unit, onAmountChanged: (Double) -> Unit, onSelectedAccountChanged: (Account) -> Unit, onToAccountChanged: (Account) -> Unit, onAddNewAccount: () -> Unit ) + FunctionNaming:EditBottomSheet.kt$@Composable private fun Account( account: Account, selected: Boolean, testTag: String, onClick: () -> Unit ) + FunctionNaming:EditBottomSheet.kt$@Composable private fun AccountsRow( modifier: Modifier = Modifier, accounts: List<Account>, selectedAccount: Account?, childrenTestTag: String? = null, onSelectedAccountChanged: (Account) -> Unit, onAddNewAccount: () -> Unit ) + FunctionNaming:EditBottomSheet.kt$@Composable private fun AddAccount( onClick: () -> Unit ) + FunctionNaming:EditBottomSheet.kt$@Composable private fun Amount( type: TransactionType, amount: Double, currency: String, percentExpanded: Float, label: String, account: Account?, showConvertedAmountText: String? = null, onShowAmountModal: () -> Unit, onAccountMiniClick: () -> Unit, ) + FunctionNaming:EditBottomSheet.kt$@Composable private fun BottomBar( keyboardShown: Boolean, keyboardShownInsetDp: Dp, setBottomBarHeight: (Int) -> Unit, expanded: Boolean, internalExpanded: Boolean, setInternalExpanded: (Boolean) -> Unit, navBarPadding: Dp, ActionButton: @Composable () -> Unit ) + FunctionNaming:EditBottomSheet.kt$@Composable private fun LabelAccountMini( percentExpanded: Float, label: String, account: Account?, onClick: () -> Unit ) + FunctionNaming:EditBottomSheet.kt$@Composable private fun SheetHeader( percentExpanded: Float, label: String, type: TransactionType, accounts: List<Account>, selectedAccount: Account?, toAccount: Account?, onSelectedAccountChanged: (Account) -> Unit, onToAccountChanged: (Account) -> Unit, onAddNewAccount: () -> Unit, ) + FunctionNaming:EditBottomSheet.kt$@Composable private fun TransferRowMini( percentCollapsed: Float, fromAccount: Account?, toAccount: Account?, onSetExpanded: () -> Unit ) + FunctionNaming:EditBottomSheet.kt$@Preview @Composable private fun Preview() + FunctionNaming:EditBottomSheet.kt$@Preview @Composable private fun Preview_Transfer() + FunctionNaming:EditPlannedScreen.kt$@ExperimentalFoundationApi @Composable fun BoxWithConstraintsScope.EditPlannedScreen(screen: EditPlanned) + FunctionNaming:EditPlannedScreen.kt$@ExperimentalFoundationApi @Composable private fun BoxWithConstraintsScope.UI( screen: EditPlanned, startDate: LocalDateTime?, intervalN: Int?, intervalType: IntervalType?, oneTime: Boolean, type: TransactionType, currency: String, initialTitle: String?, description: String?, category: Category?, account: Account?, amount: Double, categories: List<Category>, accounts: List<Account>, onRuleChanged: (LocalDateTime, oneTime: Boolean, Int?, IntervalType?) -> Unit, onTitleChanged: (String?) -> Unit, onDescriptionChanged: (String?) -> Unit, onAmountChanged: (Double) -> Unit, onCategoryChanged: (Category?) -> Unit, onAccountChanged: (Account) -> Unit, onSetTransactionType: (TransactionType) -> Unit, onCreateCategory: (CreateCategoryData) -> Unit = {}, onSave: () -> Unit, onDelete: () -> Unit, onCreateAccount: (CreateAccountData) -> Unit = {}, ) + FunctionNaming:EditPlannedScreen.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview() + FunctionNaming:EditTransactionScreen.kt$@ExperimentalFoundationApi @Composable fun BoxWithConstraintsScope.EditTransactionScreen(screen: EditTransaction) + FunctionNaming:EditTransactionScreen.kt$@ExperimentalFoundationApi @Composable private fun BoxWithConstraintsScope.UI( screen: EditTransaction, transactionType: TransactionType, baseCurrency: String, initialTitle: String?, titleSuggestions: Set<String>, description: String?, category: Category?, dateTime: LocalDateTime?, account: Account?, toAccount: Account?, dueDate: LocalDateTime?, amount: Double, loanData: EditTransactionDisplayLoan = EditTransactionDisplayLoan(), backgroundProcessing: Boolean = false, customExchangeRateState: CustomExchangeRateState, categories: List<Category>, accounts: List<Account>, hasChanges: Boolean = false, onTitleChanged: (String?) -> Unit, onDescriptionChanged: (String?) -> Unit, onAmountChanged: (Double) -> Unit, onCategoryChanged: (Category?) -> Unit, onAccountChanged: (Account) -> Unit, onToAccountChanged: (Account) -> Unit, onDueDateChanged: (LocalDateTime?) -> Unit, onSetDateTime: (LocalDateTime) -> Unit, onSetTransactionType: (TransactionType) -> Unit, onCreateCategory: (CreateCategoryData) -> Unit, onEditCategory: (Category) -> Unit, onPayPlannedPayment: () -> Unit, onSave: (closeScreen: Boolean) -> Unit, onSetHasChanges: (hasChanges: Boolean) -> Unit, onDelete: () -> Unit, onCreateAccount: (CreateAccountData) -> Unit, onExchangeRateChanged: (Double?) -> Unit = { } ) + FunctionNaming:EditTransactionScreen.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview() + FunctionNaming:ExchangeRatesScreen.kt$@Composable fun BoxWithConstraintsScope.ExchangeRatesScreen() + FunctionNaming:ExchangeRatesScreen.kt$@Composable private fun BoxWithConstraintsScope.UI( state: RatesState, onEvent: (RatesEvent) -> Unit, ) + FunctionNaming:ExchangeRatesScreen.kt$@Composable private fun SearchField( onSearch: (String) -> Unit, ) + FunctionNaming:ExchangeRatesScreen.kt$@Preview @Composable private fun Preview() + FunctionNaming:FilterOverlay.kt$@Composable fun BoxWithConstraintsScope.FilterOverlay( visible: Boolean, baseCurrency: String, accounts: List<Account>, categories: List<Category>, filter: ReportFilter?, onClose: () -> Unit, onSetFilter: (ReportFilter?) -> Unit ) + FunctionNaming:FilterOverlay.kt$@Composable fun ListItem( icon: String?, @DrawableRes defaultIcon: Int, text: String, selectedColor: Color?, onClick: (selected: Boolean) -> Unit ) + FunctionNaming:FilterOverlay.kt$@Composable private fun AccountsFilter( allAccounts: List<Account>, filter: ReportFilter?, nonNullFilter: (ReportFilter?) -> ReportFilter, onSetFilter: (ReportFilter) -> Unit ) + FunctionNaming:FilterOverlay.kt$@Composable private fun AddKeywordButton( text: String, onCLick: () -> Unit ) + FunctionNaming:FilterOverlay.kt$@Composable private fun AmountFilter( baseCurrency: String, filter: ReportFilter?, onShowMinAmountModal: () -> Unit, onShowMaxAmountModal: () -> Unit, ) + FunctionNaming:FilterOverlay.kt$@Composable private fun CategoriesFilter( allCategories: List<Category>, filter: ReportFilter?, nonNullFilter: (ReportFilter?) -> ReportFilter, onSetFilter: (ReportFilter) -> Unit ) + FunctionNaming:FilterOverlay.kt$@Composable private fun FilterDivider() + FunctionNaming:FilterOverlay.kt$@Composable private fun FilterTitleText( text: String, active: Boolean, inactiveColor: Color = Color.Gray ) + FunctionNaming:FilterOverlay.kt$@Composable private fun Keyword( keyword: String, borderColor: Color, onClick: () -> Unit, ) + FunctionNaming:FilterOverlay.kt$@Composable private fun KeywordsFilter( filter: ReportFilter?, nonNullFilter: (ReportFilter?) -> ReportFilter, onSetFilter: (ReportFilter) -> Unit, onShowIncludeKeywordModal: () -> Unit, onShowExcludeKeywordModal: () -> Unit, ) + FunctionNaming:FilterOverlay.kt$@Composable private fun ListFilterTitle( text: String, active: Boolean, itemsSelected: Int, onClearAll: () -> Unit, onSelectAll: () -> Unit ) + FunctionNaming:FilterOverlay.kt$@Composable private fun PeriodFilter( filter: ReportFilter?, onShowPeriodChooserModal: () -> Unit ) + FunctionNaming:FilterOverlay.kt$@Composable private fun TypeFilter( filter: ReportFilter?, nonNullFilter: (ReportFilter?) -> ReportFilter, onSetFilter: (ReportFilter) -> Unit ) + FunctionNaming:FilterOverlay.kt$@Composable private fun TypeFilterCheckbox( modifier: Modifier = Modifier, trnType: TransactionType, filter: ReportFilter?, nonFilter: (ReportFilter?) -> ReportFilter, onSetFilter: (ReportFilter) -> Unit ) + FunctionNaming:FilterOverlay.kt$@Preview @Composable private fun Preview() + FunctionNaming:FinancistoSteps.kt$@Composable fun FinancistoSteps( onUploadClick: () -> Unit ) + FunctionNaming:FortuneCitySteps.kt$@Composable fun FortuneCitySteps( onUploadClick: () -> Unit ) + FunctionNaming:GitHubBackupCard.kt$@Composable fun GitHubBackupCard( modifier: Modifier = Modifier, ) + FunctionNaming:GitHubBackupCard.kt$@Composable private fun BackupDisabled( modifier: Modifier = Modifier, ) + FunctionNaming:GitHubBackupCard.kt$@Composable private fun GitHubIcon( modifier: Modifier = Modifier, ) + FunctionNaming:GitHubBackupCard.kt$@Composable private fun LastBackup( viewModel: GitHubBackupViewModel, ) + FunctionNaming:GitHubBackupCard.kt$@OptIn(ExperimentalMaterial3Api::class) @Composable private fun BackupEnabled( viewModel: GitHubBackupViewModel, modifier: Modifier = Modifier, ) + FunctionNaming:GitHubBackupScreen.kt$@Composable private fun ColumnScope.HeaderInfo() + FunctionNaming:GitHubBackupScreen.kt$@Composable private fun Content( modifier: Modifier = Modifier, ) + FunctionNaming:GitHubBackupScreen.kt$@Composable private fun InfoButton( infoUrl: String, modifier: Modifier = Modifier, ) + FunctionNaming:GitHubBackupScreen.kt$@OptIn(ExperimentalMaterial3Api::class) @Composable fun GitHubBackupScreen() + FunctionNaming:GitHubBackupStatus.kt$@Composable fun GitHubBackupStatus( viewModel: GitHubBackupViewModel, ) + FunctionNaming:GradientCut.kt$@Composable fun BoxWithConstraintsScope.GradientCutBottom( height: Dp = 96.dp, alpha: Float = 1f, zIndex: Float? = null ) + FunctionNaming:GradientCut.kt$@Composable fun BoxWithConstraintsScope.GradientCutTop( modifier: Modifier = Modifier, height: Dp, ) + FunctionNaming:HealthTab.kt$@Composable fun ColumnScope.HealthTab( onboardedUsers: Int, localAccountCount: Int?, health: Health ) + FunctionNaming:HealthTab.kt$@Preview @Composable private fun Preview() + FunctionNaming:HistoryDateDivider.kt$@Composable fun HistoryDateDivider( date: LocalDate, spacerTop: Dp, baseCurrency: String, income: Double, expenses: Double ) + FunctionNaming:HistoryDateDivider.kt$@Preview @Composable private fun Preview_OneYear_Ago() + FunctionNaming:HistoryDateDivider.kt$@Preview @Composable private fun Preview_Today() + FunctionNaming:HistoryDateDivider.kt$@Preview @Composable private fun Preview_Yesterday() + FunctionNaming:HomeHeader.kt$@Composable private fun HeaderStickyRow( percentExpanded: Float, name: String, period: TimePeriod, currency: String, balance: Double, hideCurrentBalance: Boolean = false, onShowMonthModal: () -> Unit, onBalanceClick: () -> Unit, onHiddenBalanceClick: () -> Unit = {}, onSelectNextMonth: () -> Unit, onSelectPreviousMonth: () -> Unit, ) + FunctionNaming:HomeHeader.kt$@Composable private fun IncomeExpenses( percentExpanded: Float, period: TimePeriod, currency: String, monthlyIncome: Double, monthlyExpenses: Double ) + FunctionNaming:HomeHeader.kt$@Composable private fun RowScope.HeaderCard( @DrawableRes icon: Int, backgroundGradient: Gradient, percentVisible: Float, textColor: Color, label: String, currency: String, amount: Double, testTag: String, onClick: () -> Unit ) + FunctionNaming:HomeHeader.kt$@ExperimentalAnimationApi @Composable fun CashFlowInfo( percentExpanded: Float = 1f, period: TimePeriod, currency: String, balance: Double, bufferDiff: Double, monthlyIncome: Double, monthlyExpenses: Double, hideCurrentBalance: Boolean, onOpenMoreMenu: () -> Unit, onBalanceClick: () -> Unit, onHiddenBalanceClick: () -> Unit = {} ) + FunctionNaming:HomeHeader.kt$@ExperimentalAnimationApi @Composable internal fun HomeHeader( expanded: Boolean, name: String, period: TimePeriod, currency: String, balance: Double, bufferDiff: Double, hideCurrentBalance: Boolean = false, onShowMonthModal: () -> Unit, onBalanceClick: () -> Unit, onHiddenBalanceClick: () -> Unit = {}, onSelectNextMonth: () -> Unit, onSelectPreviousMonth: () -> Unit, ) + FunctionNaming:HomeMoreMenu.kt$@Composable fun BoxWithConstraintsScope.MoreMenu( expanded: Boolean, balance: Double, buffer: Double, currency: String, theme: Theme, setExpanded: (Boolean) -> Unit, onSwitchTheme: () -> Unit, onBufferClick: () -> Unit, onCurrencyClick: () -> Unit ) + FunctionNaming:HomeMoreMenu.kt$@Composable private fun BoxWithConstraintsScope.DonateButton( percentExpanded: Float ) + FunctionNaming:HomeMoreMenu.kt$@Composable private fun ColumnScope.Buffer( buffer: Double, currency: String, balance: Double, onBufferClick: () -> Unit ) + FunctionNaming:HomeMoreMenu.kt$@Composable private fun ColumnScope.Content( balance: Double, buffer: Double, currency: String, theme: Theme, onSwitchTheme: () -> Unit, onBufferClick: () -> Unit, onCurrencyClick: () -> Unit, ) + FunctionNaming:HomeMoreMenu.kt$@Composable private fun ColumnScope.OpenSource() + FunctionNaming:HomeMoreMenu.kt$@Composable private fun MoreMenuButton( @DrawableRes icon: Int, label: String, backgroundColor: Color = UI.colors.pure, tint: Color = UI.colors.pureInverse, expandPadding: Dp = 14.dp, onClick: () -> Unit ) + FunctionNaming:HomeMoreMenu.kt$@Composable private fun QuickAccess( theme: Theme, onSwitchTheme: () -> Unit ) + FunctionNaming:HomeMoreMenu.kt$@Composable private fun SearchButton( onClick: () -> Unit ) + FunctionNaming:HomeMoreMenu.kt$@Preview @Composable private fun Preview() + FunctionNaming:HomeMoreMenu.kt$@Preview @Composable private fun Preview_Expanded() + FunctionNaming:HomeTab.kt$@ExperimentalAnimationApi @Composable fun HomeLazyColumn( hideBalanceRowState: MutableState<Boolean>, listState: LazyListState, buffer: BufferInfo, hideCurrentBalance: Boolean, period: TimePeriod, baseData: AppBaseData, upcoming: DueSection, overdue: DueSection, balance: BigDecimal, stats: IncomeExpensePair, history: List<TransactionHistoryItem>, customerJourneyCards: List<CustomerJourneyCardData>, setUpcomingExpanded: (Boolean) -> Unit, setOverdueExpanded: (Boolean) -> Unit, onOpenMoreMenu: () -> Unit, onBalanceClick: () -> Unit, onHiddenBalanceClick: () -> Unit = {}, onPayOrGet: (Transaction) -> Unit, onDismiss: (CustomerJourneyCardData) -> Unit, onSkipTransaction: (Transaction) -> Unit = {}, onSkipAllTransactions: (List<Transaction>) -> Unit = {} ) + FunctionNaming:HomeTab.kt$@ExperimentalAnimationApi @ExperimentalFoundationApi @Composable fun BoxWithConstraintsScope.HomeTab(screen: Main) + FunctionNaming:HomeTab.kt$@ExperimentalAnimationApi @ExperimentalFoundationApi @Composable private fun BoxWithConstraintsScope.UI( state: HomeState, onEvent: (HomeEvent) -> Unit ) + FunctionNaming:HomeTab.kt$@ExperimentalAnimationApi @ExperimentalFoundationApi @Preview @Composable private fun PreviewHomeTab() + FunctionNaming:IconButton.kt$@Composable fun IconButton( modifier: Modifier = Modifier, @DrawableRes icon: Int, iconTint: Color = White, background: Background = Background.Solid( color = UI.colors.primary, shape = CircleShape, padding = padding(all = 8.dp) ), onClick: () -> Unit ) + FunctionNaming:IconButton.kt$@Preview @Composable private fun Preview() + FunctionNaming:ImportFrom.kt$@Composable private fun ImportOption( importType: ImportType, onImportFrom: (ImportType) -> Unit ) + FunctionNaming:ImportFrom.kt$@ExperimentalFoundationApi @Composable fun BoxWithConstraintsScope.ImportFrom( hasSkip: Boolean, launchedFromOnboarding: Boolean, onSkip: () -> Unit = {}, onImportFrom: (ImportType) -> Unit = {}, ) + FunctionNaming:ImportFrom.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview() + FunctionNaming:ImportInstructions.kt$@Composable fun ArticleButton( modifier: Modifier = Modifier, onClick: () -> Unit ) + FunctionNaming:ImportInstructions.kt$@Composable fun InstructionButton( modifier: Modifier = Modifier, @DrawableRes icon: Int?, caption: String, text: String, onClick: () -> Unit ) + FunctionNaming:ImportInstructions.kt$@Composable fun StepTitle( number: Int, title: String, description: String? = null, ) + FunctionNaming:ImportInstructions.kt$@Composable fun UploadFileStep( stepNumber: Int, text: String = stringResource(R.string.upload_csv_file), btnTitle: String = text, onUploadClick: () -> Unit ) + FunctionNaming:ImportInstructions.kt$@Composable fun VideoArticleRow( videoUrl: String?, articleUrl: String? ) + FunctionNaming:ImportInstructions.kt$@Composable fun VideoButton( modifier: Modifier = Modifier, onClick: () -> Unit ) + FunctionNaming:ImportInstructions.kt$@Composable private fun App( importType: ImportType ) + FunctionNaming:ImportInstructions.kt$@ExperimentalFoundationApi @Composable fun BoxWithConstraintsScope.ImportInstructions( hasSkip: Boolean, importType: ImportType, onSkip: () -> Unit, onUploadClick: () -> Unit, ) + FunctionNaming:ImportInstructions.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview() + FunctionNaming:ImportProcessing.kt$@Composable fun ImportProcessing( progressPercent: Int ) + FunctionNaming:ImportProcessing.kt$@Composable private fun ProgressBar( progressPercent: Int ) + FunctionNaming:ImportProcessing.kt$@Preview @Composable private fun Preview() + FunctionNaming:ImportResultUI.kt$@Composable fun ImportResultUI( result: ImportResult, launchedFromOnboarding: Boolean, isManualCsvImport: Boolean = false, onTryAgain: (() -> Unit)? = null, onFinish: () -> Unit ) + FunctionNaming:ImportResultUI.kt$@Preview @Composable private fun Preview() + FunctionNaming:ImportScreen.kt$@ExperimentalFoundationApi @Composable private fun BoxWithConstraintsScope.UI( screen: Import, importStep: ImportStep, importType: ImportType?, importProgressPercent: Int, importResult: ImportResult?, onChooseImportType: (ImportType) -> Unit = {}, onUploadCSVFile: () -> Unit = {}, onSkip: () -> Unit = {}, onFinish: () -> Unit = {}, ) + FunctionNaming:ImportScreen.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview() + FunctionNaming:ImportScreen.kt$@OptIn(ExperimentalStdlibApi::class) @ExperimentalFoundationApi @Composable fun BoxWithConstraintsScope.ImportCSVScreen(screen: Import) + FunctionNaming:ImportType.kt$ImportType$@Composable fun ImportSteps( onUploadClick: () -> Unit ) + FunctionNaming:IncomeExpensesRow.kt$@Composable fun IncomeExpensesRow( modifier: Modifier = Modifier, textColor: Color = UI.colors.pureInverse, dividerColor: Color = UI.colors.medium, incomeLabel: String = stringResource(R.string.income_uppercase), income: Double, expensesLabel: String = stringResource(R.string.expenses_uppercase), expenses: Double, currency: String, center: Boolean = true, dividerSpacer: Dp? = null, ) + FunctionNaming:IncomeExpensesRow.kt$@Composable private fun LabelAmountColumn( label: String, amount: Double, currency: String, textColor: Color, center: Boolean ) + FunctionNaming:InputField.kt$@Deprecated("A new better componenet would be created soon.") @Composable fun InputField( modifier: Modifier = Modifier, initialText: String = "", hint: String = "", textStyle: TextStyle = UI.typo.b1.style( color = UI.colors.pureInverse, textAlign = TextAlign.Start ), hintStyle: TextStyle = UI.typo.b1.style( color = Color.Gray, textAlign = TextAlign.Start ), inputType: IvyInputType = IvyInputType.SHORT_TEXT, imeAction: IvyImeAction = IvyImeAction.DONE, onImeActionListener: ((EditText) -> Unit)? = null, cursorColor: Color = UI.colors.pureInverse, highlightColor: Color = if (UI.colors.isLight) Purple1Light else Purple1Dark, focus: InputFieldFocus? = null, onTextChanged: (String) -> Unit ) + FunctionNaming:InputField.kt$@Preview @Composable private fun Preview() + FunctionNaming:IntervalPickerRow.kt$@Composable fun IntervalPickerRow( intervalN: Int, intervalType: IntervalType, onSetIntervalN: (Int) -> Unit, onSetIntervalType: (IntervalType) -> Unit ) + FunctionNaming:IntervalPickerRow.kt$@Composable private fun RowScope.IntervalTypeSelector( intervalN: Int, intervalType: IntervalType, onSetIntervalType: (IntervalType) -> Unit ) + FunctionNaming:IntervalPickerRow.kt$@Preview @Composable private fun Preview() + FunctionNaming:ItemIcon.kt$@Composable fun ItemIconL( modifier: Modifier = Modifier, iconName: String?, tint: Color = UI.colors.pureInverse, iconContentScale: ContentScale? = null, Default: (@Composable () -> Unit)? = null ) + FunctionNaming:ItemIcon.kt$@Composable fun ItemIconM( modifier: Modifier = Modifier, iconName: String?, tint: Color = UI.colors.pureInverse, iconContentScale: ContentScale? = null, Default: (@Composable () -> Unit)? = null ) + FunctionNaming:ItemIcon.kt$@Composable fun ItemIconMDefaultIcon( modifier: Modifier = Modifier, iconName: String?, tint: Color = UI.colors.pureInverse, @DrawableRes defaultIcon: Int ) + FunctionNaming:ItemIcon.kt$@Composable fun ItemIconS( modifier: Modifier = Modifier, iconName: String?, tint: Color = UI.colors.pureInverse, iconContentScale: ContentScale? = null, Default: (@Composable () -> Unit)? = null ) + FunctionNaming:ItemIcon.kt$@Composable fun ItemIconSDefaultIcon( modifier: Modifier = Modifier, iconName: String?, tint: Color = UI.colors.pureInverse, @DrawableRes defaultIcon: Int ) + FunctionNaming:ItemIcon.kt$@Composable private fun ItemIcon( modifier: Modifier = Modifier, iconName: String?, size: String, tint: Color = UI.colors.pureInverse, iconContentScale: ContentScale? = null, Default: (@Composable () -> Unit)? = null ) + FunctionNaming:ItemIcon.kt$@Preview @Composable private fun Preview_L() + FunctionNaming:ItemIcon.kt$@Preview @Composable private fun Preview_M() + FunctionNaming:ItemIcon.kt$@Preview @Composable private fun Preview_S() + FunctionNaming:ItemStatisticScreen.kt$@Composable fun BoxWithConstraintsScope.ItemStatisticScreen(screen: ItemStatistic) + FunctionNaming:ItemStatisticScreen.kt$@Composable fun IncomeExpensesCards( history: List<TransactionHistoryItem>, currency: String, income: Double, expenses: Double, hasAddButtons: Boolean, itemColor: Color, incomeHeaderCardClicked: () -> Unit = {}, expenseHeaderCardClicked: () -> Unit = {}, onAddTransaction: (TransactionType) -> Unit = {}, ) + FunctionNaming:ItemStatisticScreen.kt$@Composable fun ItemStatisticToolbar( contrastColor: Color, onEdit: () -> Unit, onDelete: () -> Unit, ) + FunctionNaming:ItemStatisticScreen.kt$@Composable private fun BoxWithConstraintsScope.UI( period: TimePeriod, baseCurrency: String, currency: String, account: Account?, category: Category?, categories: List<Category>, accounts: List<Account>, balance: Double, balanceBaseCurrency: Double?, income: Double, expenses: Double, initWithTransactions: Boolean = false, treatTransfersAsIncomeExpense: Boolean = false, history: List<TransactionHistoryItem>, upcomingExpanded: Boolean = true, setUpcomingExpanded: (Boolean) -> Unit = {}, upcomingIncome: Double = 0.0, upcomingExpenses: Double = 0.0, upcoming: List<Transaction> = emptyList(), overdueExpanded: Boolean = true, setOverdueExpanded: (Boolean) -> Unit = {}, overdueIncome: Double = 0.0, overdueExpenses: Double = 0.0, overdue: List<Transaction> = emptyList(), onPreviousMonth: () -> Unit, onNextMonth: () -> Unit, onSetPeriod: (TimePeriod) -> Unit, onEditAccount: (Account, Double) -> Unit, onEditCategory: (Category) -> Unit, onDelete: () -> Unit, onPayOrGet: (Transaction) -> Unit = {}, onSkipTransaction: (Transaction) -> Unit = {}, onSkipAllTransactions: (List<Transaction>) -> Unit = {} ) + FunctionNaming:ItemStatisticScreen.kt$@Composable private fun Header( history: List<TransactionHistoryItem>, currency: String, baseCurrency: String, itemColor: Color, account: Account?, category: Category?, balance: Double, balanceBaseCurrency: Double?, income: Double, expenses: Double, treatTransfersAsIncomeExpense: Boolean = false, onEdit: () -> Unit, onDelete: () -> Unit, onBalanceClick: () -> Unit, showCategoryModal: () -> Unit, showAccountModal: () -> Unit, ) + FunctionNaming:ItemStatisticScreen.kt$@Composable private fun Item( itemColor: Color, contrastColor: Color, account: Account?, category: Category?, showCategoryModal: () -> Unit, showAccountModal: () -> Unit, ) + FunctionNaming:ItemStatisticScreen.kt$@Composable private fun RowScope.HeaderCard( title: String, currencyCode: String, amount: Double, transactionCount: Int, isIncome: Boolean, addButtonText: String?, itemColor: Color, onHeaderCardClicked: () -> Unit = {}, onAddClick: () -> Unit ) + FunctionNaming:ItemStatisticScreen.kt$@Preview @Composable private fun Preview_crypto() + FunctionNaming:ItemStatisticScreen.kt$@Preview @Composable private fun Preview_empty() + FunctionNaming:ItemStatisticScreen.kt$@Preview @Composable private fun Preview_empty_upcoming() + FunctionNaming:IvyBasicTextField.kt$@Composable fun IvyBasicTextField( modifier: Modifier = Modifier, value: TextFieldValue, textColor: Color = UI.colors.pureInverse, hint: String?, visualTransformation: VisualTransformation = VisualTransformation.None, keyboardOptions: KeyboardOptions = KeyboardOptions( autoCorrect = true, keyboardType = KeyboardType.Text, imeAction = ImeAction.Done, capitalization = KeyboardCapitalization.Sentences ), keyboardActions: KeyboardActions? = null, onValueChanged: (TextFieldValue) -> Unit ) + FunctionNaming:IvyBasicTextField.kt$@Preview @Composable private fun Preview_Filled() + FunctionNaming:IvyBasicTextField.kt$@Preview @Composable private fun Preview_Hint() + FunctionNaming:IvyBorderButton.kt$@Composable fun IvyBorderButton( modifier: Modifier = Modifier, text: String, textStyle: TextStyle = UI.typo.b2.style( color = UI.colors.pureInverse, fontWeight = FontWeight.Bold ), backgroundGradient: Gradient = Gradient.solid(UI.colors.mediumInverse), @DrawableRes iconStart: Int? = null, @DrawableRes iconEnd: Int? = null, iconTint: Color = UI.colors.pureInverse, enabled: Boolean = true, wrapContentMode: Boolean = true, padding: Dp = 12.dp, onClick: () -> Unit ) + FunctionNaming:IvyBorderButton.kt$@Composable private fun IconEnd( icon: Int, tint: Color, ) + FunctionNaming:IvyBorderButton.kt$@Composable private fun IconStart( icon: Int, tint: Color, ) + FunctionNaming:IvyBorderButton.kt$@Preview @Composable private fun PreviewIvyBorderButton() + FunctionNaming:IvyButton.kt$@Composable fun IvyButton( modifier: Modifier = Modifier, text: String, backgroundGradient: Gradient = GradientIvy, textStyle: TextStyle = UI.typo.b2.style( color = White, fontWeight = FontWeight.Bold ), @DrawableRes iconStart: Int? = null, @DrawableRes iconEnd: Int? = null, iconTint: Color = White, enabled: Boolean = true, shadowAlpha: Float = 0.15f, wrapContentMode: Boolean = true, hasGlow: Boolean = true, padding: Dp = 12.dp, iconEdgePadding: Dp = 12.dp, iconTextPadding: Dp = 4.dp, onClick: () -> Unit ) + FunctionNaming:IvyButton.kt$@Composable private fun IconEnd( iconEdgePadding: Dp, iconTextPadding: Dp, icon: Int, tint: Color, ) + FunctionNaming:IvyButton.kt$@Composable private fun IconStart( iconEdgePadding: Dp, iconTextPadding: Dp, icon: Int, tint: Color, ) + FunctionNaming:IvyButton.kt$@Preview @Composable private fun PreviewIvyButtonFillMaxWidthWithIconEnd() + FunctionNaming:IvyButton.kt$@Preview @Composable private fun PreviewIvyButtonFillMaxWidthWithIconStart() + FunctionNaming:IvyButton.kt$@Preview @Composable private fun PreviewIvyButtonWrapContentWithIconEnd() + FunctionNaming:IvyButton.kt$@Preview @Composable private fun PreviewIvyButtonWrapContentWithIconStart() + FunctionNaming:IvyCheckbox.kt$@Composable fun IvyCheckbox( modifier: Modifier = Modifier, checked: Boolean, onCheckedChange: (checked: Boolean) -> Unit ) + FunctionNaming:IvyCheckbox.kt$@Composable fun IvyCheckboxWithText( modifier: Modifier = Modifier, text: String, checked: Boolean, onCheckedChange: (checked: Boolean) -> Unit ) + FunctionNaming:IvyCheckbox.kt$@Preview @Composable private fun PreviewIvyCheckboxWithText() + FunctionNaming:IvyChecklistTextField.kt$@Composable fun IvyChecklistTextField( modifier: Modifier = Modifier, textModifier: Modifier = Modifier, value: TextFieldValue, hint: String?, readOnly: Boolean = false, fontWeight: FontWeight = FontWeight.Medium, hintFontWeight: FontWeight = FontWeight.Medium, textColor: Color = UI.colors.pureInverse, hintColor: Color = UI.colors.mediumInverse, textAlign: TextAlign = TextAlign.Start, visualTransformation: VisualTransformation = VisualTransformation.None, keyboardOptions: KeyboardOptions? = KeyboardOptions.Default, keyboardActions: KeyboardActions? = KeyboardActions.Default, paddingVertical: Dp = 16.dp, onValueChanged: (TextFieldValue) -> Unit ) + FunctionNaming:IvyChecklistTextField.kt$@Preview @Composable private fun PreviewIvyTextField() + FunctionNaming:IvyChecklistTextField.kt$@Preview @Composable private fun PreviewIvyTextField_longText() + FunctionNaming:IvyCircleButton.kt$@Composable fun IvyCircleButton( modifier: Modifier = Modifier, backgroundPadding: Dp = 0.dp, backgroundGradient: Gradient = GradientIvy, horizontalGradient: Boolean = true, @DrawableRes icon: Int, tint: Color = White, enabled: Boolean = true, hasShadow: Boolean = true, onClick: () -> Unit ) + FunctionNaming:IvyCircleButton.kt$@Preview @Composable private fun PreviewIvyCircleButton_Disabled() + FunctionNaming:IvyCircleButton.kt$@Preview @Composable private fun PreviewIvyCircleButton_Enabled() + FunctionNaming:IvyColorPicker.kt$@Composable fun ColumnScope.IvyColorPicker( selectedColor: Color, onColorSelected: (Color) -> Unit ) + FunctionNaming:IvyColorPicker.kt$@Composable private fun ColorItem( index: Int, ivyColor: IvyColor, selectedColor: Color, onSelected: (IvyColor) -> Unit ) + FunctionNaming:IvyColorPicker.kt$@Preview @Composable private fun PreviewIvyColorPicker() + FunctionNaming:IvyComponents.kt$@Composable fun ActionsRow( modifier: Modifier = Modifier, lineColor: Color = UI.colors.medium, Content: @Composable RowScope.() -> Unit ) + FunctionNaming:IvyComposeApp.kt$@Composable fun IvyWalletComponentPreview( theme: Theme = Theme.LIGHT, Content: @Composable BoxScope.() -> Unit ) + FunctionNaming:IvyComposeApp.kt$@Composable fun IvyWalletPreview( theme: Theme = Theme.LIGHT, Content: @Composable BoxWithConstraintsScope.() -> Unit ) + FunctionNaming:IvyDescriptionTextField.kt$@Composable fun IvyDescriptionTextField( modifier: Modifier = Modifier, textModifier: Modifier = Modifier, testTag: String = "desc_input", value: TextFieldValue, hint: String?, fontWeight: FontWeight = FontWeight.Medium, textColor: Color = UI.colors.pureInverse, hintColor: Color = UI.colors.mediumInverse, visualTransformation: VisualTransformation = VisualTransformation.None, keyboardOptions: KeyboardOptions? = KeyboardOptions.Default, keyboardActions: KeyboardActions? = KeyboardActions.Default, onValueChanged: (TextFieldValue) -> Unit ) + FunctionNaming:IvyDescriptionTextField.kt$@Preview @Composable private fun PreviewIvyTextField() + FunctionNaming:IvyDescriptionTextField.kt$@Preview @Composable private fun PreviewIvyTextField_longText() + FunctionNaming:IvyDivider.kt$@Composable fun IvyDividerLine( modifier: Modifier = Modifier ) + FunctionNaming:IvyDivider.kt$@Composable fun IvyDividerLineRounded( modifier: Modifier = Modifier ) + FunctionNaming:IvyDivider.kt$@Preview @Composable private fun Preview() + FunctionNaming:IvyDividerDot.kt$@Composable fun IvyDividerDot() + FunctionNaming:IvyDividerDot.kt$@Preview @Composable private fun Preview() + FunctionNaming:IvyIcon.kt$@Composable fun IvyIcon( modifier: Modifier = Modifier, @DrawableRes icon: Int, tint: Color = UI.colors.pureInverse, contentDescription: String = "icon" ) + FunctionNaming:IvyIcon.kt$@Composable fun IvyIconScaled( modifier: Modifier = Modifier, @DrawableRes icon: Int, tint: Color = UI.colors.pureInverse, iconScale: IconScale, padding: Dp = when (iconScale) { IconScale.S -> 4.dp IconScale.M -> 4.dp IconScale.L -> 4.dp }, contentDescription: String = "icon" ) + FunctionNaming:IvyLineChart.kt$@Composable fun IvyLineChart( modifier: Modifier = Modifier, height: Dp = 300.dp, functions: List<Function>, title: String, xLabel: (x: Double) -> String, yLabel: (y: Double) -> String, onTap: (TapEvent) -> Unit = {} ) + FunctionNaming:IvyLineChart.kt$@Composable private fun IvyChart( modifier: Modifier, title: String, allValues: List<Value>, xLabel: (x: Double) -> String, yLabel: (y: Double) -> String, maxY: Double, minY: Double, functions: List<Function>, tapEvent: TapEvent?, onTap: (TapEvent) -> Unit ) + FunctionNaming:IvyLineChart.kt$@Preview @Composable private fun Preview_IvyChart() + FunctionNaming:IvyModal.kt$@Composable fun AddModalBackHandling( modalId: UUID?, visible: Boolean, action: () -> Unit ) + FunctionNaming:IvyModal.kt$@Composable fun BoxScope.IvyModal( id: UUID?, visible: Boolean, dismiss: () -> Unit, SecondaryActions: (@Composable () -> Unit)? = null, PrimaryAction: @Composable () -> Unit, scrollState: ScrollState? = rememberScrollState(), shiftIfKeyboardShown: Boolean = true, includeActionsRowPadding: Boolean = true, Content: @Composable ColumnScope.() -> Unit ) + FunctionNaming:IvyModal.kt$@Composable fun ModalActionsRow( visible: Boolean, modalPercentVisible: Float, keyboardShownInsetDp: Dp, navBarPadding: Dp, onHeightChanged: (Int) -> Unit, onClose: () -> Unit, SecondaryActions: (@Composable () -> Unit)? = null, PrimaryAction: @Composable () -> Unit ) + FunctionNaming:IvyModal.kt$@Composable fun ModalPreviewActionRowSpacer() + FunctionNaming:IvyModal.kt$@Composable private fun ModalBackHandling( modalId: UUID?, visible: Boolean, dismiss: () -> Unit ) + FunctionNaming:IvyModal.kt$@Preview @Composable private fun PreviewIvyModal_minimal() + FunctionNaming:IvyModalComponents.kt$@Composable fun <T> ModalAddSave( item: T, enabled: Boolean = true, onClick: () -> Unit ) + FunctionNaming:IvyModalComponents.kt$@Composable fun ModalAdd( enabled: Boolean = true, testTag: String = "modal_add", onClick: () -> Unit ) + FunctionNaming:IvyModalComponents.kt$@Composable fun ModalCheck( modifier: Modifier = Modifier, label: String, enabled: Boolean = true, onClick: () -> Unit ) + FunctionNaming:IvyModalComponents.kt$@Composable fun ModalCreate( enabled: Boolean = true, onClick: () -> Unit ) + FunctionNaming:IvyModalComponents.kt$@Composable fun ModalDelete( enabled: Boolean = true, testTag: String = "modal_delete", onClick: () -> Unit ) + FunctionNaming:IvyModalComponents.kt$@Composable fun ModalDynamicPrimaryAction( initialEmpty: Boolean, initialChanged: Boolean, testTagSave: String = "tag_save", testTagDelete: String = "tag_delete", onDelete: () -> Unit, dismiss: () -> Unit, onSave: () -> Unit ) + FunctionNaming:IvyModalComponents.kt$@Composable fun ModalNegativeButton( text: String, @DrawableRes iconStart: Int, enabled: Boolean = true, onClick: () -> Unit, ) + FunctionNaming:IvyModalComponents.kt$@Composable fun ModalPositiveButton( modifier: Modifier = Modifier, text: String, @DrawableRes iconStart: Int, enabled: Boolean = true, onClick: () -> Unit, ) + FunctionNaming:IvyModalComponents.kt$@Composable fun ModalPrimaryButton( text: String, @DrawableRes iconStart: Int, enabled: Boolean = true, onClick: () -> Unit, ) + FunctionNaming:IvyModalComponents.kt$@Composable fun ModalSave( modifier: Modifier = Modifier, enabled: Boolean = true, onClick: () -> Unit ) + FunctionNaming:IvyModalComponents.kt$@Composable fun ModalSet( modifier: Modifier = Modifier, label: String = stringResource(R.string.set), enabled: Boolean = true, onClick: () -> Unit ) + FunctionNaming:IvyModalComponents.kt$@Composable fun ModalSkip( text: String = stringResource(R.string.skip), onClick: () -> Unit ) + FunctionNaming:IvyModalComponents.kt$@Composable fun ModalTitle( text: String ) + FunctionNaming:IvyModalDomainComponents.kt$@Composable fun ModalAmountSection( label: String, currency: String, amount: Double, Header: (@Composable () -> Unit)? = null, amountPaddingTop: Dp = 48.dp, amountPaddingBottom: Dp = 48.dp, showAmountModal: () -> Unit, ) + FunctionNaming:IvyNameTextFieldValue.kt$@Composable fun IvyNameTextField( modifier: Modifier = Modifier, underlineModifier: Modifier = Modifier, value: TextFieldValue, textColor: Color = UI.colors.pureInverse, hint: String?, visualTransformation: VisualTransformation = VisualTransformation.None, keyboardOptions: KeyboardOptions = KeyboardOptions( autoCorrect = true, keyboardType = KeyboardType.Text, imeAction = ImeAction.Done, capitalization = KeyboardCapitalization.Sentences ), keyboardActions: KeyboardActions? = null, onValueChanged: (TextFieldValue) -> Unit ) + FunctionNaming:IvyNameTextFieldValue.kt$@Preview @Composable private fun PreviewIvyNameTextField() + FunctionNaming:IvyNumberTextField.kt$@Composable fun IvyNumberTextField( modifier: Modifier = Modifier, textModifier: Modifier = Modifier, value: TextFieldValue, hint: String?, fontWeight: FontWeight = FontWeight.ExtraBold, textColor: Color = UI.colors.pureInverse, hintColor: Color = Color.Gray, visualTransformation: VisualTransformation = VisualTransformation.None, keyboardOptions: KeyboardOptions? = null, keyboardActions: KeyboardActions? = null, onValueChanged: (TextFieldValue) -> Unit ) + FunctionNaming:IvyNumberTextField.kt$@Preview @Composable private fun Preview() + FunctionNaming:IvyOutlinedButton.kt$@Composable fun IvyOutlinedButton( modifier: Modifier = Modifier, text: String, @DrawableRes iconStart: Int?, solidBackground: Boolean = false, iconTint: Color = UI.colors.pureInverse, borderColor: Color = UI.colors.medium, textColor: Color = UI.colors.pureInverse, padding: Dp = 12.dp, onClick: () -> Unit, ) + FunctionNaming:IvyOutlinedButton.kt$@Composable fun IvyOutlinedButtonFillMaxWidth( modifier: Modifier = Modifier, text: String, @DrawableRes iconStart: Int?, solidBackground: Boolean = false, iconTint: Color = UI.colors.pureInverse, borderColor: Color = UI.colors.medium, textColor: Color = UI.colors.pureInverse, padding: Dp = 16.dp, onClick: () -> Unit, ) + FunctionNaming:IvyOutlinedButton.kt$@Preview @Composable private fun Preview_FillMaxWidth() + FunctionNaming:IvyOutlinedTextField.kt$@Composable fun IvyOutlinedTextField( modifier: Modifier = Modifier, value: TextFieldValue, hint: String?, hintColor: Color = UI.colors.gray, backgroundColor: Color = UI.colors.primary, emptyBorderColor: Color = UI.colors.gray, textColor: Color = UI.colors.pureInverse, cursorColor: Color = UI.colors.pureInverse, visualTransformation: VisualTransformation = VisualTransformation.None, keyboardOptions: KeyboardOptions = KeyboardOptions.Default, keyboardActions: KeyboardActions = KeyboardActions.Default, validateInput: (TextFieldValue) -> Boolean = { it.text.isNotNullOrBlank() }, onValueChanged: (TextFieldValue) -> Unit ) + FunctionNaming:IvyOutlinedTextField.kt$@Preview @Composable private fun PreviewOutlineTextField() + FunctionNaming:IvySwitch.kt$@Composable fun IvySwitch( modifier: Modifier = Modifier, enabled: Boolean, onEnabledChange: (checked: Boolean) -> Unit ) + FunctionNaming:IvySwitch.kt$@Preview @Composable private fun PreviewIvySwitch() + FunctionNaming:IvyText.kt$@Composable fun IvyText( modifier: Modifier = Modifier, text: String, typo: TextStyle, padding: IvyPadding? = null ) + FunctionNaming:IvyTheme.kt$@Composable fun IvyTheme( theme: Theme, design: IvyDesign, content: @Composable () -> Unit ) + FunctionNaming:IvyTitleTextField.kt$@Composable fun ColumnScope.IvyTitleTextField( modifier: Modifier = Modifier, dividerModifier: Modifier = Modifier, value: TextFieldValue, textColor: Color = UI.colors.pureInverse, hint: String?, visualTransformation: VisualTransformation = VisualTransformation.None, keyboardOptions: KeyboardOptions = KeyboardOptions( autoCorrect = true, keyboardType = KeyboardType.Text, imeAction = ImeAction.Done, capitalization = KeyboardCapitalization.Sentences ), keyboardActions: KeyboardActions? = null, onValueChanged: (TextFieldValue) -> Unit ) + FunctionNaming:IvyTitleTextField.kt$@Preview @Composable private fun PreviewIvyTitleTextField() + FunctionNaming:IvyToolbar.kt$@Composable fun IvyToolbar( onBack: () -> Unit, backButtonType: BackButtonType = BackButtonType.BACK, paddingTop: Dp = 16.dp, paddingBottom: Dp = 16.dp, Content: @Composable RowScope.() -> Unit = { } ) + FunctionNaming:IvyUI.kt$@Composable fun IvyUI( design: IvyDesign, Content: @Composable BoxWithConstraintsScope.() -> Unit ) + FunctionNaming:IvyViewPager.kt$@Composable fun IvyPager( state: IvyPagerState, pageContent: @Composable BoxScope.(page: Int) -> Unit ) + FunctionNaming:IvyWalletSteps.kt$@Composable fun IvyWalletSteps( onUploadClick: () -> Unit ) + FunctionNaming:KPIsTab.kt$@Composable @Preview private fun Preview() + FunctionNaming:KPIsTab.kt$@Composable fun ColumnScope.KPIsTab( kpis: KPIs, activeUsersCount: Int, onboardingCompletedEventCount: Int, onboardingStartedEventCount: Int, ) + FunctionNaming:KPIsTab.kt$@Composable private fun AccountCategoryTrnPlanned(kpis: KPIs) + FunctionNaming:KPIsTab.kt$@Composable private fun BuyPlanOptions(kpis: KPIs) + FunctionNaming:KPIsTab.kt$@Composable private fun ChoosePlanOptions(kpis: KPIs) + FunctionNaming:KPIsTab.kt$@Composable private fun Paywall( kpis: KPIs, onboardingCompletedEventCount: Int ) + FunctionNaming:KTWMoneyMangerSteps.kt$@Composable fun KTWMoneyManagerSteps( onUploadClick: () -> Unit ) + FunctionNaming:LoanBottomBar.kt$@Composable internal fun BoxWithConstraintsScope.LoanBottomBar( onClose: () -> Unit, onAdd: () -> Unit ) + FunctionNaming:LoanBottomBar.kt$@Preview @Composable private fun PreviewBottomBar() + FunctionNaming:LoanDetailsScreen.kt$@Composable fun BoxWithConstraintsScope.LoanDetailsScreen(screen: LoanDetails) + FunctionNaming:LoanDetailsScreen.kt$@Composable private fun BoxWithConstraintsScope.UI( baseCurrency: String, loan: Loan?, displayLoanRecords: List<DisplayLoanRecord> = emptyList(), amountPaid: Double, loanAmountPaid: Double = 0.0, accounts: List<Account> = emptyList(), selectedLoanAccount: Account? = null, createLoanTransaction: Boolean = false, onCreateAccount: (CreateAccountData) -> Unit = {}, onEditLoan: (Loan, Boolean) -> Unit = { _, _ -> }, onCreateLoanRecord: (CreateLoanRecordData) -> Unit = {}, onEditLoanRecord: (EditLoanRecordData) -> Unit = {}, onDeleteLoanRecord: (LoanRecord) -> Unit = {}, onDeleteLoan: () -> Unit = {}, ) + FunctionNaming:LoanDetailsScreen.kt$@Composable private fun Header( loan: Loan, baseCurrency: String, amountPaid: Double, loanAmountPaid: Double = 0.0, itemColor: Color, selectedLoanAccount: Account? = null, onAmountClick: () -> Unit, onEditLoan: () -> Unit, onDeleteLoan: () -> Unit, onAddRecord: () -> Unit ) + FunctionNaming:LoanDetailsScreen.kt$@Composable private fun LoanInfoCard( loan: Loan, baseCurrency: String, amountPaid: Double, loanAmountPaid: Double = 0.0, selectedLoanAccount: Account? = null, onAddRecord: () -> Unit ) + FunctionNaming:LoanDetailsScreen.kt$@Composable private fun LoanItem( loan: Loan, contrastColor: Color, onClick: () -> Unit, ) + FunctionNaming:LoanDetailsScreen.kt$@Composable private fun LoanRecordItem( loan: Loan, loanRecord: LoanRecord, baseCurrency: String, loanBaseCurrency: String = "", account: Account? = null, onClick: () -> Unit ) + FunctionNaming:LoanDetailsScreen.kt$@Composable private fun NoLoanRecordsEmptyState() + FunctionNaming:LoanDetailsScreen.kt$@Preview @Composable private fun Preview_Empty() + FunctionNaming:LoanDetailsScreen.kt$@Preview @Composable private fun Preview_Records() + FunctionNaming:LoanModal.kt$@Composable fun BoxWithConstraintsScope.LoanModal( accounts: List<Account> = emptyList(), onCreateAccount: (CreateAccountData) -> Unit = {}, modal: LoanModalData?, onCreateLoan: (CreateLoanData) -> Unit, onEditLoan: (Loan, Boolean) -> Unit, onPerformCalculations: () -> Unit = {}, dismiss: () -> Unit, ) + FunctionNaming:LoanModal.kt$@Composable private fun Account( account: Account, selected: Boolean, testTag: String, onClick: () -> Unit ) + FunctionNaming:LoanModal.kt$@Composable private fun AccountsRow( modifier: Modifier = Modifier, accounts: List<Account>, selectedAccount: Account?, childrenTestTag: String? = null, onSelectedAccountChanged: (Account) -> Unit, onAddNewAccount: () -> Unit ) + FunctionNaming:LoanModal.kt$@Composable private fun AddAccount( onClick: () -> Unit ) + FunctionNaming:LoanModal.kt$@Composable private fun ColumnScope.LoanTypePicker( type: LoanType, onTypeSelected: (LoanType) -> Unit ) + FunctionNaming:LoanModal.kt$@Composable private fun RowScope.SelectorButton( selected: Boolean, label: String, onClick: () -> Unit ) + FunctionNaming:LoanModal.kt$@Preview @Composable private fun Preview() + FunctionNaming:LoanRecordModal.kt$@Composable fun BoxWithConstraintsScope.LoanRecordModal( modal: LoanRecordModalData?, accounts: List<Account> = emptyList(), onCreateAccount: (CreateAccountData) -> Unit = {}, onCreate: (CreateLoanRecordData) -> Unit, onEdit: (EditLoanRecordData) -> Unit, onDelete: (LoanRecord) -> Unit, dismiss: () -> Unit ) + FunctionNaming:LoanRecordModal.kt$@Composable private fun Account( account: Account, selected: Boolean, testTag: String, onClick: () -> Unit ) + FunctionNaming:LoanRecordModal.kt$@Composable private fun AccountsRow( modifier: Modifier = Modifier, accounts: List<Account>, selectedAccount: Account?, childrenTestTag: String? = null, onSelectedAccountChanged: (Account) -> Unit, onAddNewAccount: () -> Unit ) + FunctionNaming:LoanRecordModal.kt$@Composable private fun AddAccount( onClick: () -> Unit ) + FunctionNaming:LoanRecordModal.kt$@Composable private fun DateTimeRow( dateTime: LocalDateTime, onSetDateTime: (LocalDateTime) -> Unit ) + FunctionNaming:LoanRecordModal.kt$@Preview @Composable private fun Preview() + FunctionNaming:LoansScreen.kt$@Composable fun BoxWithConstraintsScope.LoansScreen(screen: Loans) + FunctionNaming:LoansScreen.kt$@Composable private fun BoxWithConstraintsScope.UI( onEventHandler: (LoanScreenEvent) -> Unit = {}, state: LoanScreenState = LoanScreenState() ) + FunctionNaming:LoansScreen.kt$@Composable private fun ColumnScope.LoanInfo( displayLoan: DisplayLoan ) + FunctionNaming:LoansScreen.kt$@Composable private fun LoanHeader( displayLoan: DisplayLoan, contrastColor: Color, ) + FunctionNaming:LoansScreen.kt$@Composable private fun LoanItem( displayLoan: DisplayLoan, onClick: () -> Unit ) + FunctionNaming:LoansScreen.kt$@Composable private fun NoLoansEmptyState( modifier: Modifier = Modifier, emptyStateTitle: String, emptyStateText: String, ) + FunctionNaming:LoansScreen.kt$@Composable private fun Toolbar( setReorderModalVisible: (Boolean) -> Unit ) + FunctionNaming:LoansScreen.kt$@Preview @Composable private fun Preview() + FunctionNaming:MainBottomBar.kt$@Composable fun BoxWithConstraintsScope.BottomBar( tab: MainTab, selectTab: (MainTab) -> Unit, onAddIncome: () -> Unit, onAddExpense: () -> Unit, onAddTransfer: () -> Unit, onAddPlannedPayment: () -> Unit, showAddAccountModal: () -> Unit, ) + FunctionNaming:MainBottomBar.kt$@Composable private fun AddExpenseButton( buttonsShownPercent: Float, fabStartX: Float, fabStartY: Float, buttonCenterY: Float, clickAreaWidth: Int, onAddExpense: () -> Unit ) + FunctionNaming:MainBottomBar.kt$@Composable private fun AddIncomeButton( buttonsShownPercent: Float, fabStartX: Float, fabStartY: Float, buttonLeftX: Float, sideButtonsY: Float, clickAreaWidth: Int, onAddIncome: () -> Unit ) + FunctionNaming:MainBottomBar.kt$@Composable private fun AddTransferButton( buttonsShownPercent: Float, fabStartX: Float, fabStartY: Float, buttonRightX: Float, sideButtonsY: Float, clickAreaWidth: Int, onAddTransfer: () -> Unit ) + FunctionNaming:MainBottomBar.kt$@Composable private fun RowScope.Tab( @DrawableRes icon: Int, name: String, selected: Boolean, selectedColor: Color, onClick: () -> Unit ) + FunctionNaming:MainBottomBar.kt$@Composable private fun TransactionButtons( buttonsShownPercent: Float, fabStartX: Float, fabStartY: Float, onAddIncome: () -> Unit, onAddExpense: () -> Unit, onAddTransfer: () -> Unit, onAddPlannedPayment: () -> Unit, ) + FunctionNaming:MainScreen.kt$@ExperimentalAnimationApi @ExperimentalFoundationApi @Composable fun BoxWithConstraintsScope.MainScreen(screen: Main) + FunctionNaming:MainScreen.kt$@ExperimentalAnimationApi @ExperimentalFoundationApi @Composable private fun BoxWithConstraintsScope.UI( screen: Main, tab: MainTab, baseCurrency: String, selectTab: (MainTab) -> Unit, onCreateAccount: (CreateAccountData) -> Unit, ) + FunctionNaming:MainScreen.kt$@ExperimentalAnimationApi @ExperimentalFoundationApi @Preview @Composable private fun PreviewMainScreen() + FunctionNaming:MonefySteps.kt$@Composable fun MonefySteps( onUploadClick: () -> Unit ) + FunctionNaming:MoneyManagerPraseSteps.kt$@Composable fun MoneyManagerPraseSteps( onUploadClick: () -> Unit ) + FunctionNaming:MonthPickerModal.kt$@Composable fun BoxWithConstraintsScope.MonthPickerModal( id: UUID = UUID.randomUUID(), initialDate: LocalDate, visible: Boolean, dismiss: () -> Unit, onMonthSelected: (Int) -> Unit ) + FunctionNaming:MonthPickerModal.kt$@Composable private fun MonthButton( month: Month, selected: Boolean, onClick: () -> Unit, ) + FunctionNaming:MonthPickerModal.kt$@Composable private fun MonthPicker( selectedMonth: Int, onMonthSelected: (Int) -> Unit ) + FunctionNaming:MonthPickerModal.kt$@Preview @Composable private fun Preview() + FunctionNaming:NameModal.kt$@Composable fun BoxWithConstraintsScope.NameModal( visible: Boolean, name: String, dismiss: () -> Unit, id: UUID = UUID.randomUUID(), onNameChanged: (String) -> Unit ) + FunctionNaming:NameModal.kt$@Preview @Composable private fun Preview() + FunctionNaming:OnboardingAccounts.kt$@Composable fun BuyPremiumRow( itemLabelPlural: String, ) + FunctionNaming:OnboardingAccounts.kt$@Composable fun PremiumInfo( itemLabelPlural: String, itemsCount: Int, freeItemsCount: Int ) + FunctionNaming:OnboardingAccounts.kt$@Composable private fun AccountCard( baseCurrency: String, accountBalance: AccountBalance, onClick: () -> Unit ) + FunctionNaming:OnboardingAccounts.kt$@Composable private fun Accounts( baseCurrency: String, accounts: List<AccountBalance>, onClick: (AccountBalance) -> Unit ) + FunctionNaming:OnboardingAccounts.kt$@ExperimentalFoundationApi @Composable fun BoxWithConstraintsScope.OnboardingAccounts( baseCurrency: String, suggestions: List<CreateAccountData>, accounts: List<AccountBalance>, onCreateAccount: (CreateAccountData) -> Unit = { }, onEditAccount: (Account, Double) -> Unit = { _, _ -> }, onSkip: () -> Unit = {}, onDone: () -> Unit = {} ) + FunctionNaming:OnboardingAccounts.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview_Accounts() + FunctionNaming:OnboardingAccounts.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview_Empty() + FunctionNaming:OnboardingAccounts.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview_Premium() + FunctionNaming:OnboardingCategories.kt$@Composable private fun Categories( categories: List<Category>, onClick: (Category) -> Unit ) + FunctionNaming:OnboardingCategories.kt$@Composable private fun CategoryCard( category: Category, onClick: () -> Unit ) + FunctionNaming:OnboardingCategories.kt$@ExperimentalFoundationApi @Composable fun BoxWithConstraintsScope.OnboardingCategories( suggestions: List<CreateCategoryData>, categories: List<Category>, onCreateCategory: (CreateCategoryData) -> Unit = { }, onEditCategory: (Category) -> Unit = { _ -> }, onSkip: () -> Unit = {}, onDone: () -> Unit = {} ) + FunctionNaming:OnboardingCategories.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview_Categories() + FunctionNaming:OnboardingCategories.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview_Empty() + FunctionNaming:OnboardingCategories.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview_Premium() + FunctionNaming:OnboardingComponents.kt$@Composable fun OnboardingButton( modifier: Modifier = Modifier, text: String, textColor: Color, backgroundGradient: Gradient, @DrawableRes iconStart: Int? = null, hasNext: Boolean = false, enabled: Boolean = true, onClick: () -> Unit ) + FunctionNaming:OnboardingComponents.kt$@Preview @Composable private fun PreviewOnboardingButton() + FunctionNaming:OnboardingComponents.kt$@Preview @Composable private fun PreviewOnboardingTextField() + FunctionNaming:OnboardingPrivacyTC.kt$@Composable fun OnboardingPrivacyTC( onAccepted: () -> Unit ) + FunctionNaming:OnboardingPrivacyTC.kt$@Composable private fun LongText() + FunctionNaming:OnboardingPrivacyTC.kt$@Composable private fun SwipeToAgree( swipeToAgreeText: String, agreedText: String, onAgreed: (Boolean) -> Unit ) + FunctionNaming:OnboardingPrivacyTC.kt$@Composable private fun TextLink( text: String, url: String, ) + FunctionNaming:OnboardingPrivacyTC.kt$@Composable private fun URLsRow() + FunctionNaming:OnboardingPrivacyTC.kt$@Preview @Composable private fun Preview() + FunctionNaming:OnboardingProgressSlider.kt$@Composable fun OnboardingProgressSlider( modifier: Modifier = Modifier, selectedStep: Int, stepsCount: Int, selectedColor: Color ) + FunctionNaming:OnboardingProgressSlider.kt$@Composable private fun Line( width: Dp, color: Color ) + FunctionNaming:OnboardingReportTab.kt$@Composable fun ColumnScope.OnboardingReportTab( report: OnboardingReport ) + FunctionNaming:OnboardingReportTab.kt$@Composable private fun LoginGoogleOrLocalAccount( report: OnboardingReport ) + FunctionNaming:OnboardingReportTab.kt$@Composable private fun PrivacyTCorSetName( report: OnboardingReport ) + FunctionNaming:OnboardingReportTab.kt$@Preview @Composable private fun Preview() + FunctionNaming:OnboardingScreen.kt$@ExperimentalFoundationApi @Composable fun BoxWithConstraintsScope.OnboardingScreen(screen: Onboarding) + FunctionNaming:OnboardingScreen.kt$@ExperimentalFoundationApi @Composable private fun BoxWithConstraintsScope.UI( onboardingState: OnboardingState, currency: IvyCurrency, opGoogleSignIn: OpResult<Unit>?, accountSuggestions: List<CreateAccountData>, accounts: List<AccountBalance>, categorySuggestions: List<CreateCategoryData>, categories: List<Category>, onLoginWithGoogle: () -> Unit = {}, onSkip: () -> Unit = {}, onStartImport: () -> Unit = {}, onStartFresh: () -> Unit = {}, onSetCurrency: (IvyCurrency) -> Unit = {}, onCreateAccount: (CreateAccountData) -> Unit = { }, onEditAccount: (Account, Double) -> Unit = { _, _ -> }, onAddAccountsDone: () -> Unit = {}, onAddAccountsSkip: () -> Unit = {}, onCreateCategory: (CreateCategoryData) -> Unit = {}, onEditCategory: (Category) -> Unit = {}, onAddCategoryDone: () -> Unit = {}, onAddCategorySkip: () -> Unit = {}, ) + FunctionNaming:OnboardingScreen.kt$@ExperimentalFoundationApi @Preview @Composable private fun PreviewOnboarding() + FunctionNaming:OnboardingSetCurrency.kt$@Composable fun BoxWithConstraintsScope.OnboardingSetCurrency( preselectedCurrency: IvyCurrency, onSetCurrency: (IvyCurrency) -> Unit ) + FunctionNaming:OnboardingSetCurrency.kt$@Preview @Composable private fun Preview() + FunctionNaming:OnboardingSetName.kt$@Composable fun OnboardingSetName( onNameSet: (String) -> Unit ) + FunctionNaming:OnboardingSetName.kt$@Preview @Composable private fun Preview() + FunctionNaming:OnboardingSplashLogin.kt$@Composable fun BoxWithConstraintsScope.OnboardingSplashLogin( onboardingState: OnboardingState, opGoogleSignIn: OpResult<Unit>?, onLoginWithGoogle: () -> Unit, onSkip: () -> Unit, ) + FunctionNaming:OnboardingSplashLogin.kt$@Composable private fun LocalAccountExplanation() + FunctionNaming:OnboardingSplashLogin.kt$@Composable private fun LoginButton( @DrawableRes icon: Int, text: String, textColor: Color, backgroundGradient: Gradient, hasShadow: Boolean, onClick: () -> Unit ) + FunctionNaming:OnboardingSplashLogin.kt$@Composable private fun LoginSection( percentTransition: Float, opGoogleSignIn: OpResult<Unit>?, onLoginWithGoogle: () -> Unit, onSkip: () -> Unit ) + FunctionNaming:OnboardingSplashLogin.kt$@Composable private fun LoginWithGoogleExplanation() + FunctionNaming:OnboardingSplashLogin.kt$@Composable private fun PrivacyPolicyAndTC() + FunctionNaming:OnboardingSplashLogin.kt$@Preview @Composable private fun Preview() + FunctionNaming:OnboardingToolbar.kt$@Composable fun OnboardingToolbar( hasSkip: Boolean, onBack: () -> Unit, onSkip: () -> Unit ) + FunctionNaming:OnboardingToolbar.kt$@Preview @Composable private fun Preview() + FunctionNaming:OnboardingType.kt$@Composable fun OnboardingType( onStartImport: () -> Unit, onStartFresh: () -> Unit, ) + FunctionNaming:OnboardingType.kt$@Preview @Composable private fun Preview() + FunctionNaming:OneMoneySteps.kt$@Composable fun OneMoneySteps( onUploadClick: () -> Unit ) + FunctionNaming:PaywallScreen.kt$@Composable private fun BenefitRow( benefit: Benefit, ExtraInfo: @Composable () -> Unit ) + FunctionNaming:PaywallScreen.kt$@Composable private fun UsageText( usedCount: Int, freeCount: Int, itemName: String ) + FunctionNaming:PaywallScreen.kt$@ExperimentalFoundationApi @Composable fun BoxWithConstraintsScope.PaywallScreen(screen: Paywall, activity: RootActivity) + FunctionNaming:PaywallScreen.kt$@ExperimentalFoundationApi @Composable private fun BoxWithConstraintsScope.UI( plans: List<Plan>, purchasedSkus: List<String>, paywallReason: PaywallReason?, accounts: List<Account>, categories: List<Category>, budgets: List<Budget>, loans: List<Loan>, onPlanSelected: (Plan?) -> Unit = {}, onBuy: (Plan) -> Unit, ) + FunctionNaming:PaywallScreen.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview() + FunctionNaming:PeriodSelector.kt$@Composable fun PeriodSelector( modifier: Modifier = Modifier, period: TimePeriod, onPreviousMonth: () -> Unit, onNextMonth: () -> Unit, onShowChoosePeriodModal: () -> Unit, ) + FunctionNaming:PeriodSelector.kt$@Preview @Composable private fun Preview() + FunctionNaming:PieChart.kt$@Composable fun PieChart( type: TransactionType, categoryAmounts: List<CategoryAmount>, selectedCategory: SelectedCategory?, onCategoryClicked: (Category?) -> Unit = {} ) + FunctionNaming:PieChart.kt$@Preview @Composable private fun Preview() + FunctionNaming:PieChartStatisticBottomBar.kt$@Composable fun BoxWithConstraintsScope.PieChartStatisticBottomBar( type: TransactionType, bottomInset: Dp = navigationBarInset().toDensityDp(), onClose: () -> Unit, onAdd: (TransactionType) -> Unit ) + FunctionNaming:PieChartStatisticBottomBar.kt$@Preview @Composable private fun PreviewBottomBar() + FunctionNaming:PieChartStatisticScreen.kt$@Composable private fun CategoryAmountCard( categoryAmount: CategoryAmount, currency: String, totalAmount: Double, selectedCategory: SelectedCategory?, onClick: () -> Unit ) + FunctionNaming:PieChartStatisticScreen.kt$@Composable private fun Header( transactionType: TransactionType, period: TimePeriod, percentExpanded: Float, currency: String, amount: Double, showCloseButtonOnly: Boolean = false, onShowMonthModal: () -> Unit, onSelectNextMonth: () -> Unit, onSelectPreviousMonth: () -> Unit, onClose: () -> Unit, onAdd: (TransactionType) -> Unit, ) + FunctionNaming:PieChartStatisticScreen.kt$@Composable private fun PercentText( amount: Double, totalAmount: Double, selectedState: Boolean, contrastColor: Color ) + FunctionNaming:PieChartStatisticScreen.kt$@ExperimentalFoundationApi @Composable fun BoxWithConstraintsScope.PieChartStatisticScreen( screen: PieChartStatistic ) + FunctionNaming:PieChartStatisticScreen.kt$@ExperimentalFoundationApi @Composable private fun BoxWithConstraintsScope.UI( state: PieChartStatisticState = PieChartStatisticState(), onEventHandler: (PieChartStatisticEvent) -> Unit = {} ) + FunctionNaming:PieChartStatisticScreen.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview_Expense() + FunctionNaming:PieChartStatisticScreen.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview_Income() + FunctionNaming:PlannedPaymentCard.kt$@Composable fun LazyItemScope.PlannedPaymentCard( baseCurrency: String, categories: List<Category>, accounts: List<Account>, plannedPayment: PlannedPaymentRule, onClick: (PlannedPaymentRule) -> Unit, ) + FunctionNaming:PlannedPaymentCard.kt$@Composable private fun PlannedPaymentHeaderRow( plannedPayment: PlannedPaymentRule, categories: List<Category>, accounts: List<Account> ) + FunctionNaming:PlannedPaymentCard.kt$@Composable private fun RuleTextRow( oneTime: Boolean, startDate: LocalDateTime?, intervalN: Int?, intervalType: IntervalType? ) + FunctionNaming:PlannedPaymentCard.kt$@Preview @Composable private fun Preview_oneTime() + FunctionNaming:PlannedPaymentCard.kt$@Preview @Composable private fun Preview_recurring() + FunctionNaming:PlannedPaymentCard.kt$@Preview @Composable private fun Preview_recurringError() + FunctionNaming:PlannedPaymentsBottomBar.kt$@Composable fun BoxWithConstraintsScope.PlannedPaymentsBottomBar( bottomInset: Dp = navigationBarInset().toDensityDp(), onClose: () -> Unit, onAdd: () -> Unit ) + FunctionNaming:PlannedPaymentsBottomBar.kt$@Preview @Composable private fun PreviewBottomBar() + FunctionNaming:PlannedPaymentsLazyColumn.kt$@Composable fun PlannedPaymentsLazyColumn( Header: @Composable () -> Unit, currency: String, categories: List<Category>, accounts: List<Account>, listState: LazyListState = rememberLazyListState(), oneTime: List<PlannedPaymentRule>, oneTimeIncome: Double, oneTimeExpenses: Double, recurring: List<PlannedPaymentRule>, recurringIncome: Double, recurringExpenses: Double, ) + FunctionNaming:PlannedPaymentsLazyColumn.kt$@Composable private fun LazyItemScope.NoPlannedPaymentsEmptyState() + FunctionNaming:PlannedPaymentsScreen.kt$@Composable fun BoxWithConstraintsScope.PlannedPaymentsScreen(screen: PlannedPayments) + FunctionNaming:PlannedPaymentsScreen.kt$@Composable private fun BoxWithConstraintsScope.UI( currency: String, categories: List<Category>, accounts: List<Account>, oneTime: List<PlannedPaymentRule>, oneTimeIncome: Double, oneTimeExpenses: Double, recurring: List<PlannedPaymentRule>, recurringIncome: Double, recurringExpenses: Double ) + FunctionNaming:PlannedPaymentsScreen.kt$@Preview @Composable private fun Preview() + FunctionNaming:PlansSheet.kt$@Composable fun BoxWithConstraintsScope.PlansSheet( plans: List<Plan>, purchasedSkus: List<String>, onPlansSheetHeightChanged: (Int) -> Unit = {}, onPlanSelected: (Plan?) -> Unit, onBuy: (Plan) -> Unit ) + FunctionNaming:PlansSheet.kt$@Composable private fun BoxWithConstraintsScope.BottomBar( Action: @Composable () -> Unit, setBottomBarHeight: (Int) -> Unit, onClose: () -> Unit, ) + FunctionNaming:PlansSheet.kt$@Composable private fun ColumnScope.PlanCard( plan: Plan, purchased: Boolean, selectedPlan: Plan?, monthlyPlan: Plan?, onClick: () -> Unit ) + FunctionNaming:PlansSheet.kt$@Composable private fun LongNoticeText( plan: Plan? ) + FunctionNaming:PlansSheet.kt$@Composable private fun Plans( plans: List<Plan>, purchasedSkus: List<String>, selectedPlan: Plan?, onSetSelectedPlan: (Plan?) -> Unit, ) + FunctionNaming:PlansSheet.kt$@Preview @Composable private fun Preview() + FunctionNaming:PlansSheet.kt$@Preview @Composable private fun Preview_Shitty() + FunctionNaming:Preview.kt$@Composable fun IvyComponentPreview( design: IvyDesign = defaultDesign(), theme: Theme = Theme.LIGHT, content: @Composable BoxScope.() -> Unit ) + FunctionNaming:Preview.kt$@Composable fun IvyPreview( theme: Theme = Theme.LIGHT, design: IvyDesign, Content: @Composable BoxWithConstraintsScope.() -> Unit ) + FunctionNaming:PrimaryAttributeColumn.kt$@Composable fun PrimaryAttributeColumn( @DrawableRes icon: Int, title: String, TitleRowExtra: (@Composable RowScope.() -> Unit)? = null, onClick: () -> Unit, Content: @Composable ColumnScope.() -> Unit ) + FunctionNaming:PrimaryAttributeColumn.kt$@Preview @Composable private fun PreviewPrimaryAttributeColumn() + FunctionNaming:ProgressBar.kt$@Composable fun ProgressBar( modifier: Modifier = Modifier, notFilledColor: Color = UI.colors.pure, positiveProgress: Boolean = true, percent: Double ) + FunctionNaming:ProgressBar.kt$@Preview @Composable private fun Preview() + FunctionNaming:ProgressModal.kt$@Composable fun BoxWithConstraintsScope.ProgressModal( id: UUID = UUID.randomUUID(), title: String, description: String, visible: Boolean, color: Color = UI.colors.orange, dismiss: () -> Unit = {}, ) + FunctionNaming:RateItem.kt$@Composable fun RateItem( rate: RateUi, onDelete: (() -> Unit)?, onClick: () -> Unit, ) + FunctionNaming:RateItem.kt$@Preview @Composable private fun Preview() + FunctionNaming:RateItem.kt$@Preview @Composable private fun Preview_Delete() + FunctionNaming:RecurringRule.kt$@Composable fun RecurringRule( startDate: LocalDateTime?, intervalN: Int?, intervalType: IntervalType?, oneTime: Boolean, onShowRecurringRuleModal: () -> Unit, ) + FunctionNaming:RecurringRule.kt$@Composable private fun RecurringRuleCard( startDate: LocalDateTime, intervalN: Int?, intervalType: IntervalType?, oneTime: Boolean, onClick: () -> Unit, ) + FunctionNaming:RecurringRule.kt$@Preview @Composable private fun Preview_Empty() + FunctionNaming:RecurringRule.kt$@Preview @Composable private fun Preview_OneTime() + FunctionNaming:RecurringRule.kt$@Preview @Composable private fun Preview_Repeat() + FunctionNaming:RecurringRuleModal.kt$@Composable fun BoxWithConstraintsScope.RecurringRuleModal( modal: RecurringRuleModalData?, dismiss: () -> Unit, onRuleChanged: (LocalDateTime, oneTime: Boolean, Int?, IntervalType?) -> Unit, ) + FunctionNaming:RecurringRuleModal.kt$@Composable private fun DateRow( dateTime: LocalDateTime, onDatePicked: (LocalDateTime) -> Unit ) + FunctionNaming:RecurringRuleModal.kt$@Composable private fun MultipleTimes( startDate: LocalDateTime, intervalN: Int, intervalType: IntervalType, modalScrollState: ScrollState, onSetStartDate: (LocalDateTime) -> Unit, onSetIntervalN: (Int) -> Unit, onSetIntervalType: (IntervalType) -> Unit ) + FunctionNaming:RecurringRuleModal.kt$@Composable private fun OneTime( date: LocalDateTime, onDatePicked: (LocalDateTime) -> Unit ) + FunctionNaming:RecurringRuleModal.kt$@Composable private fun RowScope.TimesSelectorButton( selected: Boolean, label: String, onClick: () -> Unit ) + FunctionNaming:RecurringRuleModal.kt$@Composable private fun TimesSelector( oneTime: Boolean, onSetOneTime: (Boolean) -> Unit ) + FunctionNaming:RecurringRuleModal.kt$@Preview @Composable private fun Preview_multipleTimes() + FunctionNaming:RecurringRuleModal.kt$@Preview @Composable private fun Preview_oneTime() + FunctionNaming:ReorderModal.kt$@Composable fun <T : Reorderable> BoxScope.ReorderModal( visible: Boolean, id: UUID = UUID.randomUUID(), TitleContent: @Composable ColumnScope.() -> Unit = { Text( modifier = Modifier.padding(start = 32.dp), text = stringResource(R.string.reorder), style = UI.typo.b1.style( UI.colors.pureInverse, FontWeight.ExtraBold ) ) }, initialItems: List<Any>, dismiss: () -> Unit, onUpdateItemOrderNum: ( itemsInNewOrder: List<Any>, item: T, newOrderNum: Double ) -> Unit = { _, _, _ -> }, onReordered: ((List<Any>) -> Unit)? = null, ItemContent: @Composable RowScope.(Int, Any) -> Unit ) + FunctionNaming:ReorderModal.kt$@Composable fun ReorderButton( modifier: Modifier = Modifier, onClick: () -> Unit ) + FunctionNaming:ReorderModal.kt$@Suppress("UNCHECKED_CAST") @Composable fun <T : Reorderable> BoxScope.ReorderModalSingleType( visible: Boolean, id: UUID = UUID.randomUUID(), TitleContent: @Composable ColumnScope.() -> Unit = { Text( modifier = Modifier.padding(start = 32.dp), text = stringResource(R.string.reorder), style = UI.typo.b1.style( UI.colors.pureInverse, FontWeight.ExtraBold ) ) }, initialItems: List<T>, dismiss: () -> Unit, onUpdateItemOrderNum: (item: T, newOrderNum: Double) -> Unit = { _, _ -> }, onReordered: ((List<T>) -> Unit)? = null, ItemContent: @Composable (Int, T) -> Unit ) + FunctionNaming:ReportScreen.kt$@Composable private fun NoFilterEmptyState( setFilterOverlayVisible: (Boolean) -> Unit ) + FunctionNaming:ReportScreen.kt$@Composable private fun Toolbar( onExport: () -> Unit, onFilter: () -> Unit ) + FunctionNaming:ReportScreen.kt$@ExperimentalFoundationApi @Composable fun BoxWithConstraintsScope.ReportScreen( screen: Report ) + FunctionNaming:ReportScreen.kt$@ExperimentalFoundationApi @Composable private fun BoxWithConstraintsScope.UI( state: ReportScreenState = ReportScreenState(), onEventHandler: (ReportScreenEvent) -> Unit = {} ) + FunctionNaming:ReportScreen.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview() + FunctionNaming:ReportScreen.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview_NO_FILTER() + FunctionNaming:RootActivity.kt$RootActivity$@ExperimentalFoundationApi @ExperimentalAnimationApi @Composable private fun BoxWithConstraintsScope.Screens(screen: Screen?) + FunctionNaming:RootActivity.kt$RootActivity$@ExperimentalFoundationApi @ExperimentalAnimationApi @Composable private fun BoxWithConstraintsScope.UI(viewModel: RootViewModel) + FunctionNaming:ScreenTitle.kt$@Composable fun ScreenTitle( modifier: Modifier = Modifier, text: String, textStyle: TextStyle ) + FunctionNaming:ScreenTitle.kt$@Composable fun ScreenTitle( text: String, paddingStart: Dp = 0.dp, textColor: Color = UI.colors.primary ) + FunctionNaming:ScreenTitle.kt$@Composable fun ScreenTitleLarge( text: String, paddingStart: Dp = 0.dp, textColor: Color = UI.colors.primary ) + FunctionNaming:ScreenTitle.kt$@Preview @Composable private fun Preview_Large() + FunctionNaming:ScreenTitle.kt$@Preview @Composable private fun Preview_Standard() + FunctionNaming:SearchScreen.kt$@Composable fun SearchInput( searchQueryTextFieldValue: TextFieldValue, hint: String, focus: Boolean = true, onSetSearchQueryTextField: (TextFieldValue) -> Unit ) + FunctionNaming:SearchScreen.kt$@Composable fun SearchScreen(screen: Search) + FunctionNaming:SearchScreen.kt$@Composable private fun UI( transactions: List<TransactionHistoryItem>, baseCurrency: String, categories: List<Category>, accounts: List<Account>, onSearch: (String) -> Unit = {} ) + FunctionNaming:SearchScreen.kt$@Preview @Composable private fun Preview() + FunctionNaming:ServerStopScreen.kt$@Composable fun ServerStopScreen() + FunctionNaming:ServerStopScreen.kt$@Composable private fun ColumnScope.Loading() + FunctionNaming:ServerStopScreen.kt$@Composable private fun Content( onBackup: () -> Unit ) + FunctionNaming:ServerStopScreen.kt$@Composable private fun UI( state: ServerStopState, onBackup: () -> Unit, ) + FunctionNaming:ServerStopScreen.kt$@Preview @Composable private fun Preview() + FunctionNaming:ServerStopScreen.kt$@Preview @Composable private fun PreviewLoading() + FunctionNaming:SettingsScreen.kt$@Composable fun FetchMissingTransactionsButton( opFetchTrns: OpResult<Unit>?, onFetchMissingTransactions: () -> Unit ) + FunctionNaming:SettingsScreen.kt$@Composable private fun AccountCard( user: User?, opSync: OpResult<Boolean>?, nameLocalAccount: String?, onSync: () -> Unit, onLogout: () -> Unit, onLogin: () -> Unit, onCardClick: () -> Unit ) + FunctionNaming:SettingsScreen.kt$@Composable private fun AccountCardButton( @DrawableRes icon: Int, text: String, onClick: () -> Unit ) + FunctionNaming:SettingsScreen.kt$@Composable private fun AccountCardLocalAccount( name: String?, ) + FunctionNaming:SettingsScreen.kt$@Composable private fun AccountCardUser( localName: String?, user: User, opSync: OpResult<Boolean>?, onSync: () -> Unit, ) + FunctionNaming:SettingsScreen.kt$@Composable private fun AppSwitch( lockApp: Boolean, onSetLockApp: (Boolean) -> Unit, text: String, description: String = "", icon: Int, ) + FunctionNaming:SettingsScreen.kt$@Composable private fun ContactSupport() + FunctionNaming:SettingsScreen.kt$@Composable private fun CurrencyButton( currency: String, onClick: () -> Unit ) + FunctionNaming:SettingsScreen.kt$@Composable private fun ExportCSV( onExportToCSV: () -> Unit ) + FunctionNaming:SettingsScreen.kt$@Composable private fun HelpCenter() + FunctionNaming:SettingsScreen.kt$@Composable private fun IvyTelegram() + FunctionNaming:SettingsScreen.kt$@Composable private fun Premium() + FunctionNaming:SettingsScreen.kt$@Composable private fun ProjectContributors() + FunctionNaming:SettingsScreen.kt$@Composable private fun RequestFeature( onClick: () -> Unit ) + FunctionNaming:SettingsScreen.kt$@Composable private fun Roadmap() + FunctionNaming:SettingsScreen.kt$@Composable private fun SettingsButtonRow( hasShadow: Boolean = false, backgroundGradient: Gradient = Gradient.solid(UI.colors.medium), onClick: (() -> Unit)?, Content: @Composable RowScope.() -> Unit ) + FunctionNaming:SettingsScreen.kt$@Composable private fun SettingsDefaultButton( @DrawableRes icon: Int, text: String, iconPadding: Dp = 0.dp, onClick: () -> Unit ) + FunctionNaming:SettingsScreen.kt$@Composable private fun SettingsPrimaryButton( @DrawableRes icon: Int, text: String, hasShadow: Boolean = false, backgroundGradient: Gradient = Gradient.solid(UI.colors.medium), textColor: Color = White, iconPadding: Dp = 0.dp, onClick: () -> Unit ) + FunctionNaming:SettingsScreen.kt$@Composable private fun SettingsSectionDivider( text: String, color: Color = Gray ) + FunctionNaming:SettingsScreen.kt$@Composable private fun StartDateOfMonth( startDateOfMonth: Int, onClick: () -> Unit ) + FunctionNaming:SettingsScreen.kt$@Composable private fun TCAndPrivacyPolicy() + FunctionNaming:SettingsScreen.kt$@ExperimentalFoundationApi @Composable fun BoxWithConstraintsScope.SettingsScreen(screen: Settings) + FunctionNaming:SettingsScreen.kt$@ExperimentalFoundationApi @Composable private fun BoxWithConstraintsScope.UI( user: User?, currencyCode: String, opSync: OpResult<Boolean>?, lockApp: Boolean, showNotifications: Boolean = true, hideCurrentBalance: Boolean = false, progressState: Boolean = false, treatTransfersAsIncomeExpense: Boolean = false, nameLocalAccount: String?, startDateOfMonth: Int = 1, onSetCurrency: (String) -> Unit, onSetName: (String) -> Unit = {}, onSync: () -> Unit, onLogout: () -> Unit, onLogin: () -> Unit, onBackupData: () -> Unit = {}, onExportToCSV: () -> Unit = {}, onSetLockApp: (Boolean) -> Unit = {}, onSetShowNotifications: (Boolean) -> Unit = {}, onSetTreatTransfersAsIncExp: (Boolean) -> Unit = {}, onSetHideCurrentBalance: (Boolean) -> Unit = {}, onSetStartDateOfMonth: (Int) -> Unit = {}, onDeleteAllUserData: () -> Unit = {}, onDeleteCloudUserData: () -> Unit = {}, ) + FunctionNaming:SettingsScreen.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview_loading() + FunctionNaming:SettingsScreen.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview_localAccount() + FunctionNaming:SettingsScreen.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview_notSynced() + FunctionNaming:SettingsScreen.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview_synced() + FunctionNaming:Shapes.kt$@Composable fun Shape( modifier: Modifier = Modifier, size: Dp, shape: Shape, color: Color, ) + FunctionNaming:Shapes.kt$@Composable fun ShapeOutlined( modifier: Modifier = Modifier, size: Dp, shape: Shape, borderColor: Color, borderWidth: Dp = 1.dp, ) + FunctionNaming:Shapes.kt$@Preview @Composable private fun PreviewOutlined() + FunctionNaming:Shapes.kt$@Preview @Composable private fun Preview_Circle() + FunctionNaming:Spacers.kt$@Composable fun ColumnScope.SpacerWeight( weight: Float ) + FunctionNaming:Spacers.kt$@Composable fun RowScope.SpacerWeight( weight: Float ) + FunctionNaming:Spacers.kt$@Composable fun SpacerHor( width: Dp ) + FunctionNaming:Spacers.kt$@Composable fun SpacerKeyboardHeight( animation: AnimationSpec<Dp>? = null ) + FunctionNaming:Spacers.kt$@Composable fun SpacerVer( height: Dp ) + FunctionNaming:SpendeeSteps.kt$@Composable fun SpendeeSteps( onUploadClick: () -> Unit ) + FunctionNaming:Suggestions.kt$@Composable fun Suggestions( suggestions: List<Any>, onAddSuggestion: (Any) -> Unit, onAddNew: () -> Unit ) + FunctionNaming:Suggestions.kt$@Composable private fun AddNewButton( onClick: () -> Unit ) + FunctionNaming:Suggestions.kt$@Composable private fun Suggestion( name: String, onClick: () -> Unit ) + FunctionNaming:Suggestions.kt$@Preview @Composable private fun Preview() + FunctionNaming:Switch.kt$@Composable fun Switch( modifier: Modifier = Modifier, enabled: Boolean, enabledColor: Color = UI.colors.green, disabledColor: Color = UI.colors.gray, animationColor: AnimationSpec<Color> = springBounce(), animationMove: AnimationSpec<Float> = springBounce(), onEnabledChange: (checked: Boolean) -> Unit ) + FunctionNaming:Switch.kt$@Preview @Composable private fun PreviewIvySwitch() + FunctionNaming:Title.kt$@Composable fun ColumnScope.Title( type: TransactionType, titleFocus: FocusRequester, initialTransactionId: UUID?, titleTextFieldValue: TextFieldValue, setTitleTextFieldValue: (TextFieldValue) -> Unit, suggestions: Set<String>, scrollState: ScrollState? = null, onTitleChanged: (String?) -> Unit, onNext: () -> Unit, ) + FunctionNaming:Title.kt$@Composable private fun Suggestion( suggestion: String, onClick: () -> Unit ) + FunctionNaming:Title.kt$@Composable private fun Suggestions( suggestions: Set<String>, onClick: (String) -> Unit ) + FunctionNaming:Title.kt$@Preview @Composable private fun PreviewTitleWithSuggestions() + FunctionNaming:Toolbar.kt$@Composable fun Toolbar( type: TransactionType, initialTransactionId: UUID?, onDeleteTrnModal: () -> Unit, onChangeTransactionTypeModal: () -> Unit, ) + FunctionNaming:TransactionCard.kt$@Composable fun TransactionCard( baseData: AppBaseData, transaction: Transaction, onPayOrGet: (Transaction) -> Unit, onSkipTransaction: (Transaction) -> Unit = {}, onClick: (Transaction) -> Unit, ) + FunctionNaming:TransactionCard.kt$@Composable fun TypeAmountCurrency( transactionType: TransactionType, dueDate: LocalDateTime?, currency: String, amount: Double ) + FunctionNaming:TransactionCard.kt$@Composable private fun TransactionBadge( text: String, backgroundColor: Color, icon: String?, @DrawableRes defaultIcon: Int, onClick: () -> Unit ) + FunctionNaming:TransactionCard.kt$@Composable private fun TransactionHeaderRow( transaction: Transaction, categories: List<Category>, accounts: List<Account> ) + FunctionNaming:TransactionCard.kt$@Composable private fun TransferHeader( accounts: List<Account>, transaction: Transaction ) + FunctionNaming:TransactionCard.kt$@Preview @Composable private fun PreviewIncome() + FunctionNaming:TransactionCard.kt$@Preview @Composable private fun PreviewNormalExpense() + FunctionNaming:TransactionCard.kt$@Preview @Composable private fun PreviewOverdueExpense() + FunctionNaming:TransactionCard.kt$@Preview @Composable private fun PreviewTransfer() + FunctionNaming:TransactionCard.kt$@Preview @Composable private fun PreviewTransfer_differentCurrency() + FunctionNaming:TransactionCard.kt$@Preview @Composable private fun PreviewUpcomingExpense() + FunctionNaming:TransactionDao.kt$TransactionDao$@Query("SELECT * FROM transactions WHERE isDeleted = 0 LIMIT 1") suspend fun findAll_LIMIT_1(): List<TransactionEntity> + FunctionNaming:TransactionDateTime.kt$@Composable fun TransactionDateTime( dateTime: LocalDateTime?, dueDateTime: LocalDateTime?, onEditDateTime: () -> Unit ) + FunctionNaming:TransactionDateTime.kt$@Preview @Composable private fun Preview() + FunctionNaming:TransactionSectionDivider.kt$@Composable fun SectionDivider( expanded: Boolean, title: String, titleColor: Color, baseCurrency: String, income: Double, expenses: Double, showIncomeExpenseRow: Boolean = true, setExpanded: (Boolean) -> Unit ) + FunctionNaming:TransactionSectionDivider.kt$@Composable private fun SectionDividerIncomeExpenseRow( income: Double, expenses: Double, baseCurrency: String ) + FunctionNaming:TransactionSectionDivider.kt$@Preview @Composable private fun Preview_Expenses() + FunctionNaming:TransactionSectionDivider.kt$@Preview @Composable private fun Preview_Income() + FunctionNaming:TransactionSectionDivider.kt$@Preview @Composable private fun Preview_Income_Expenses() + FunctionNaming:Transactions.kt$@Composable private fun LazyItemScope.NoTransactionsEmptyState( emptyStateTitle: String, emptyStateText: String, ) + FunctionNaming:TransactionsDividerLine.kt$@Composable fun TransactionsDividerLine( modifier: Modifier = Modifier, paddingHorizontal: Dp = 24.dp ) + FunctionNaming:UserStatsTab.kt$@Composable fun ColumnScope.UserStatsTab( onboardedUsersGoogle: Int, userStats: UserStats ) + FunctionNaming:UserStatsTab.kt$@Preview @Composable private fun Preview() + FunctionNaming:ViewPager.kt$@Composable fun Pager( state: PagerState, modifier: Modifier = Modifier, pageContent: @Composable PagerScope.() -> Unit ) + FunctionNaming:WalletBalanceWidgetContent.kt$@Composable fun BalanceSection( balance: String, currency: String ) + FunctionNaming:WalletBalanceWidgetContent.kt$@Composable fun ButtonsSection() + FunctionNaming:WalletBalanceWidgetContent.kt$@Composable fun IncomeExpenseSection( income: String, expense: String, currency: String ) + FunctionNaming:WalletBalanceWidgetContent.kt$@Composable fun RowScope.WidgetClickableItem( @DrawableRes image: Int, @StringRes text: Int, ) + FunctionNaming:WalletBalanceWidgetContent.kt$@Composable fun WalletBalanceWidgetContent( appLocked: Boolean, balance: String, currency: String, income: String, expense: String ) + FunctionNaming:WalletByBudgetBakersSteps.kt$@Composable fun WalletByBudgetBakersSteps( onUploadClick: () -> Unit ) + FunctionNaming:WalletCharts.kt$@Composable fun BalanceChart( balanceChart: List<SingleChartPoint>, period: ChartPeriod, baseCurrencyCode: String ) + FunctionNaming:WalletCharts.kt$@Composable fun ChartInfoCard( baseCurrencyCode: String, backgroundColor: Color, chartPoint: SingleChartPoint, formatValueAsCount: Boolean = false, ) + FunctionNaming:WebViewScreen.kt$@SuppressLint("SetJavaScriptEnabled") @ExperimentalFoundationApi @Composable fun BoxWithConstraintsScope.WebViewScreen(screen: IvyWebView) + FunctionNaming:WebViewScreen.kt$@SuppressLint("SetJavaScriptEnabled") @ExperimentalFoundationApi @Composable private fun BoxWithConstraintsScope.UI(url: String) + FunctionNaming:WrapContentRow.kt$@Composable fun <T> WrapContentRow( modifier: Modifier = Modifier, items: List<T>, verticalMarginBetweenRows: Dp = 8.dp, horizontalMarginBetweenItems: Dp = 8.dp, ItemContent: @Composable (item: T) -> Unit ) + FunctionNaming:WrapContentRow.kt$@Preview @Composable private fun PreviewWrapContentRow() + FunctionNaming:dependencies.kt$fun DependencyHandler.AndroidX() + FunctionNaming:dependencies.kt$fun DependencyHandler.Hilt( hiltVersion: String, versionX: String ) + FunctionNaming:dependencies.kt$fun DependencyHandler.HiltTesting( version: String ) + FunctionNaming:dependencies.kt$fun DependencyHandler.Lifecycle( version: String = "2.6.1" ) + FunctionNaming:dependencies.kt$fun DependencyHandler.Networking( retrofitVersion: String = "2.9.0" ) + FunctionNaming:dependencies.kt$fun DependencyHandler.RoomDB( version: String = "2.6.0-alpha03" ) + FunctionNaming:dependencies.kt$fun DependencyHandler.ThirdParty() + FunctionOnlyReturningConstant:IvySession.kt$IvySession$fun isLoggedIn(): Boolean + FunctionParameterNaming:AmountModal.kt$FirstRowExtra: (@Composable RowScope.() -> Unit)? = null + FunctionParameterNaming:AmountModal.kt$FourthRowExtra: (@Composable RowScope.() -> Unit)? = null + FunctionParameterNaming:AmountModal.kt$Header: (@Composable () -> Unit)? = null + FunctionParameterNaming:AmountModal.kt$SecondRowExtra: (@Composable RowScope.() -> Unit)? = null + FunctionParameterNaming:AmountModal.kt$ThirdRowExtra: (@Composable RowScope.() -> Unit)? = null + FunctionParameterNaming:AmountModal.kt$ZeroRow: (@Composable RowScope.() -> Unit)? = null + FunctionParameterNaming:BackBottomBar.kt$PrimaryAction: @Composable () -> Unit + FunctionParameterNaming:ColumnRoot.kt$Content: @Composable ColumnScope.() -> Unit + FunctionParameterNaming:EditBottomSheet.kt$ActionButton: @Composable () -> Unit + FunctionParameterNaming:ItemIcon.kt$Default: (@Composable () -> Unit)? = null + FunctionParameterNaming:IvyComponents.kt$Content: @Composable RowScope.() -> Unit + FunctionParameterNaming:IvyComposeApp.kt$Content: @Composable BoxScope.() -> Unit + FunctionParameterNaming:IvyComposeApp.kt$Content: @Composable BoxWithConstraintsScope.() -> Unit + FunctionParameterNaming:IvyModal.kt$Content: @Composable ColumnScope.() -> Unit + FunctionParameterNaming:IvyModal.kt$PrimaryAction: @Composable () -> Unit + FunctionParameterNaming:IvyModal.kt$SecondaryActions: (@Composable () -> Unit)? = null + FunctionParameterNaming:IvyModalDomainComponents.kt$Header: (@Composable () -> Unit)? = null + FunctionParameterNaming:IvyToolbar.kt$Content: @Composable RowScope.() -> Unit = { } + FunctionParameterNaming:IvyUI.kt$Content: @Composable BoxWithConstraintsScope.() -> Unit + FunctionParameterNaming:PaywallScreen.kt$ExtraInfo: @Composable () -> Unit + FunctionParameterNaming:PlannedPaymentsLazyColumn.kt$Header: @Composable () -> Unit + FunctionParameterNaming:PlansSheet.kt$Action: @Composable () -> Unit + FunctionParameterNaming:Preview.kt$Content: @Composable BoxWithConstraintsScope.() -> Unit + FunctionParameterNaming:PrimaryAttributeColumn.kt$Content: @Composable ColumnScope.() -> Unit + FunctionParameterNaming:PrimaryAttributeColumn.kt$TitleRowExtra: (@Composable RowScope.() -> Unit)? = null + FunctionParameterNaming:ReorderModal.kt$Adapter.ItemViewHolder$ItemContent: @Composable RowScope.(Int, Any) -> Unit + FunctionParameterNaming:ReorderModal.kt$ItemContent: @Composable (Int, T) -> Unit + FunctionParameterNaming:ReorderModal.kt$ItemContent: @Composable RowScope.(Int, Any) -> Unit + FunctionParameterNaming:ReorderModal.kt$TitleContent: @Composable ColumnScope.() -> Unit = { Text( modifier = Modifier.padding(start = 32.dp), text = stringResource(R.string.reorder), style = UI.typo.b1.style( UI.colors.pureInverse, FontWeight.ExtraBold ) ) } + FunctionParameterNaming:SettingsScreen.kt$Content: @Composable RowScope.() -> Unit + FunctionParameterNaming:WrapContentRow.kt$ItemContent: @Composable (item: T) -> Unit + FunctionReturnTypeSpacing:ComposeExt.kt$fun Modifier.thenIf(condition: Boolean, thanModifier: @Composable Modifier.() -> Modifier) : Modifier + FunctionReturnTypeSpacing:ReportViewModel.kt$ReportViewModel$private fun calculateBalance(incomeExpenseTransferPair: IncomeExpenseTransferPair) : BigDecimal + FunctionStartOfBodySpacing:ItemStatisticViewModel.kt$ItemStatisticViewModel$fun skipTransaction(screen: ItemStatistic, transaction: Transaction) + FunctionStartOfBodySpacing:ItemStatisticViewModel.kt$ItemStatisticViewModel$fun skipTransactions(screen: ItemStatistic, transactions: List<Transaction>) + FunctionStartOfBodySpacing:PlannedPaymentsLogic.kt$PlannedPaymentsLogic$suspend fun payOrGet( transactions: List<Transaction>, syncTransaction: Boolean = true, skipTransaction: Boolean = false, onUpdateUI: suspend (paidTransactions: List<Transaction>) -> Unit ) + FunctionStartOfBodySpacing:ReportViewModel.kt$ReportViewModel$private fun calculateBalance(incomeExpenseTransferPair: IncomeExpenseTransferPair) : BigDecimal + ImportOrdering:Accessors32ikgp1isdd8mwexzgbe6rirl.kt$import org.gradle.api.Action import org.gradle.api.Incubating import org.gradle.api.NamedDomainObjectProvider import org.gradle.api.Project import org.gradle.api.Task import org.gradle.api.artifacts.Configuration import org.gradle.api.artifacts.ConfigurablePublishArtifact import org.gradle.api.artifacts.ConfigurationContainer import org.gradle.api.artifacts.Dependency import org.gradle.api.artifacts.DependencyConstraint import org.gradle.api.artifacts.ExternalModuleDependency import org.gradle.api.artifacts.ModuleDependency import org.gradle.api.artifacts.PublishArtifact import org.gradle.api.artifacts.dsl.ArtifactHandler import org.gradle.api.artifacts.dsl.DependencyConstraintHandler import org.gradle.api.artifacts.dsl.DependencyHandler import org.gradle.api.provider.Provider import org.gradle.api.provider.ProviderConvertible import org.gradle.api.tasks.TaskContainer import org.gradle.api.tasks.TaskProvider import org.gradle.kotlin.dsl.* import org.gradle.kotlin.dsl.accessors.runtime.* + ImportOrdering:Accessors46nwrg1rs44ofdqpi7vyy3pfc.kt$import org.gradle.api.Action import org.gradle.api.Incubating import org.gradle.api.NamedDomainObjectProvider import org.gradle.api.Project import org.gradle.api.Task import org.gradle.api.artifacts.Configuration import org.gradle.api.artifacts.ConfigurablePublishArtifact import org.gradle.api.artifacts.ConfigurationContainer import org.gradle.api.artifacts.Dependency import org.gradle.api.artifacts.DependencyConstraint import org.gradle.api.artifacts.ExternalModuleDependency import org.gradle.api.artifacts.ModuleDependency import org.gradle.api.artifacts.PublishArtifact import org.gradle.api.artifacts.dsl.ArtifactHandler import org.gradle.api.artifacts.dsl.DependencyConstraintHandler import org.gradle.api.artifacts.dsl.DependencyHandler import org.gradle.api.provider.Provider import org.gradle.api.provider.ProviderConvertible import org.gradle.api.tasks.TaskContainer import org.gradle.api.tasks.TaskProvider import org.gradle.kotlin.dsl.* import org.gradle.kotlin.dsl.accessors.runtime.* + ImportOrdering:Accessors4ymijgaek646mzru18sdmblu7.kt$import org.gradle.api.Action import org.gradle.api.Incubating import org.gradle.api.NamedDomainObjectProvider import org.gradle.api.Project import org.gradle.api.Task import org.gradle.api.artifacts.Configuration import org.gradle.api.artifacts.ConfigurablePublishArtifact import org.gradle.api.artifacts.ConfigurationContainer import org.gradle.api.artifacts.Dependency import org.gradle.api.artifacts.DependencyConstraint import org.gradle.api.artifacts.ExternalModuleDependency import org.gradle.api.artifacts.ModuleDependency import org.gradle.api.artifacts.PublishArtifact import org.gradle.api.artifacts.dsl.ArtifactHandler import org.gradle.api.artifacts.dsl.DependencyConstraintHandler import org.gradle.api.artifacts.dsl.DependencyHandler import org.gradle.api.provider.Provider import org.gradle.api.provider.ProviderConvertible import org.gradle.api.tasks.TaskContainer import org.gradle.api.tasks.TaskProvider import org.gradle.kotlin.dsl.* import org.gradle.kotlin.dsl.accessors.runtime.* + ImportOrdering:Accessors5x03zd2mf47s5vj1qv3jvhdru.kt$import org.gradle.api.Action import org.gradle.api.Incubating import org.gradle.api.NamedDomainObjectProvider import org.gradle.api.Project import org.gradle.api.Task import org.gradle.api.artifacts.Configuration import org.gradle.api.artifacts.ConfigurablePublishArtifact import org.gradle.api.artifacts.ConfigurationContainer import org.gradle.api.artifacts.Dependency import org.gradle.api.artifacts.DependencyConstraint import org.gradle.api.artifacts.ExternalModuleDependency import org.gradle.api.artifacts.ModuleDependency import org.gradle.api.artifacts.PublishArtifact import org.gradle.api.artifacts.dsl.ArtifactHandler import org.gradle.api.artifacts.dsl.DependencyConstraintHandler import org.gradle.api.artifacts.dsl.DependencyHandler import org.gradle.api.provider.Provider import org.gradle.api.provider.ProviderConvertible import org.gradle.api.tasks.TaskContainer import org.gradle.api.tasks.TaskProvider import org.gradle.kotlin.dsl.* import org.gradle.kotlin.dsl.accessors.runtime.* + ImportOrdering:Accessors6m89nhcqblthog8es93pjkmhg.kt$import org.gradle.api.Action import org.gradle.api.Incubating import org.gradle.api.NamedDomainObjectProvider import org.gradle.api.Project import org.gradle.api.Task import org.gradle.api.artifacts.Configuration import org.gradle.api.artifacts.ConfigurablePublishArtifact import org.gradle.api.artifacts.ConfigurationContainer import org.gradle.api.artifacts.Dependency import org.gradle.api.artifacts.DependencyConstraint import org.gradle.api.artifacts.ExternalModuleDependency import org.gradle.api.artifacts.ModuleDependency import org.gradle.api.artifacts.PublishArtifact import org.gradle.api.artifacts.dsl.ArtifactHandler import org.gradle.api.artifacts.dsl.DependencyConstraintHandler import org.gradle.api.artifacts.dsl.DependencyHandler import org.gradle.api.provider.Provider import org.gradle.api.provider.ProviderConvertible import org.gradle.api.tasks.TaskContainer import org.gradle.api.tasks.TaskProvider import org.gradle.kotlin.dsl.* import org.gradle.kotlin.dsl.accessors.runtime.* + ImportOrdering:Accessors72k7tti784t7idmqtg2upvaru.kt$import org.gradle.api.Action import org.gradle.api.Incubating import org.gradle.api.NamedDomainObjectProvider import org.gradle.api.Project import org.gradle.api.Task import org.gradle.api.artifacts.Configuration import org.gradle.api.artifacts.ConfigurablePublishArtifact import org.gradle.api.artifacts.ConfigurationContainer import org.gradle.api.artifacts.Dependency import org.gradle.api.artifacts.DependencyConstraint import org.gradle.api.artifacts.ExternalModuleDependency import org.gradle.api.artifacts.ModuleDependency import org.gradle.api.artifacts.PublishArtifact import org.gradle.api.artifacts.dsl.ArtifactHandler import org.gradle.api.artifacts.dsl.DependencyConstraintHandler import org.gradle.api.artifacts.dsl.DependencyHandler import org.gradle.api.provider.Provider import org.gradle.api.provider.ProviderConvertible import org.gradle.api.tasks.TaskContainer import org.gradle.api.tasks.TaskProvider import org.gradle.kotlin.dsl.* import org.gradle.kotlin.dsl.accessors.runtime.* + ImportOrdering:Accessors7hvycqvau4uyj5knata7lx0yx.kt$import org.gradle.api.Action import org.gradle.api.Incubating import org.gradle.api.NamedDomainObjectProvider import org.gradle.api.Project import org.gradle.api.Task import org.gradle.api.artifacts.Configuration import org.gradle.api.artifacts.ConfigurablePublishArtifact import org.gradle.api.artifacts.ConfigurationContainer import org.gradle.api.artifacts.Dependency import org.gradle.api.artifacts.DependencyConstraint import org.gradle.api.artifacts.ExternalModuleDependency import org.gradle.api.artifacts.ModuleDependency import org.gradle.api.artifacts.PublishArtifact import org.gradle.api.artifacts.dsl.ArtifactHandler import org.gradle.api.artifacts.dsl.DependencyConstraintHandler import org.gradle.api.artifacts.dsl.DependencyHandler import org.gradle.api.provider.Provider import org.gradle.api.provider.ProviderConvertible import org.gradle.api.tasks.TaskContainer import org.gradle.api.tasks.TaskProvider import org.gradle.kotlin.dsl.* import org.gradle.kotlin.dsl.accessors.runtime.* + ImportOrdering:Accessors8lcri9ibgd9oj8dt3t8z8nvfx.kt$import org.gradle.api.Action import org.gradle.api.Incubating import org.gradle.api.NamedDomainObjectProvider import org.gradle.api.Project import org.gradle.api.Task import org.gradle.api.artifacts.Configuration import org.gradle.api.artifacts.ConfigurablePublishArtifact import org.gradle.api.artifacts.ConfigurationContainer import org.gradle.api.artifacts.Dependency import org.gradle.api.artifacts.DependencyConstraint import org.gradle.api.artifacts.ExternalModuleDependency import org.gradle.api.artifacts.ModuleDependency import org.gradle.api.artifacts.PublishArtifact import org.gradle.api.artifacts.dsl.ArtifactHandler import org.gradle.api.artifacts.dsl.DependencyConstraintHandler import org.gradle.api.artifacts.dsl.DependencyHandler import org.gradle.api.provider.Provider import org.gradle.api.provider.ProviderConvertible import org.gradle.api.tasks.TaskContainer import org.gradle.api.tasks.TaskProvider import org.gradle.kotlin.dsl.* import org.gradle.kotlin.dsl.accessors.runtime.* + ImportOrdering:Accessorsa5ptgikd9fb816fav4742zvaq.kt$import org.gradle.api.Action import org.gradle.api.Incubating import org.gradle.api.NamedDomainObjectProvider import org.gradle.api.Project import org.gradle.api.Task import org.gradle.api.artifacts.Configuration import org.gradle.api.artifacts.ConfigurablePublishArtifact import org.gradle.api.artifacts.ConfigurationContainer import org.gradle.api.artifacts.Dependency import org.gradle.api.artifacts.DependencyConstraint import org.gradle.api.artifacts.ExternalModuleDependency import org.gradle.api.artifacts.ModuleDependency import org.gradle.api.artifacts.PublishArtifact import org.gradle.api.artifacts.dsl.ArtifactHandler import org.gradle.api.artifacts.dsl.DependencyConstraintHandler import org.gradle.api.artifacts.dsl.DependencyHandler import org.gradle.api.provider.Provider import org.gradle.api.provider.ProviderConvertible import org.gradle.api.tasks.TaskContainer import org.gradle.api.tasks.TaskProvider import org.gradle.kotlin.dsl.* import org.gradle.kotlin.dsl.accessors.runtime.* + ImportOrdering:Accessorsblypoh2ruc9u3bx9djsfqsntg.kt$import org.gradle.api.Action import org.gradle.api.Incubating import org.gradle.api.NamedDomainObjectProvider import org.gradle.api.Project import org.gradle.api.Task import org.gradle.api.artifacts.Configuration import org.gradle.api.artifacts.ConfigurablePublishArtifact import org.gradle.api.artifacts.ConfigurationContainer import org.gradle.api.artifacts.Dependency import org.gradle.api.artifacts.DependencyConstraint import org.gradle.api.artifacts.ExternalModuleDependency import org.gradle.api.artifacts.ModuleDependency import org.gradle.api.artifacts.PublishArtifact import org.gradle.api.artifacts.dsl.ArtifactHandler import org.gradle.api.artifacts.dsl.DependencyConstraintHandler import org.gradle.api.artifacts.dsl.DependencyHandler import org.gradle.api.provider.Provider import org.gradle.api.provider.ProviderConvertible import org.gradle.api.tasks.TaskContainer import org.gradle.api.tasks.TaskProvider import org.gradle.kotlin.dsl.* import org.gradle.kotlin.dsl.accessors.runtime.* + ImportOrdering:Accessorsbtc8iwv8u9b0f38ikfmodj8ns.kt$import org.gradle.api.Action import org.gradle.api.Incubating import org.gradle.api.NamedDomainObjectProvider import org.gradle.api.Project import org.gradle.api.Task import org.gradle.api.artifacts.Configuration import org.gradle.api.artifacts.ConfigurablePublishArtifact import org.gradle.api.artifacts.ConfigurationContainer import org.gradle.api.artifacts.Dependency import org.gradle.api.artifacts.DependencyConstraint import org.gradle.api.artifacts.ExternalModuleDependency import org.gradle.api.artifacts.ModuleDependency import org.gradle.api.artifacts.PublishArtifact import org.gradle.api.artifacts.dsl.ArtifactHandler import org.gradle.api.artifacts.dsl.DependencyConstraintHandler import org.gradle.api.artifacts.dsl.DependencyHandler import org.gradle.api.provider.Provider import org.gradle.api.provider.ProviderConvertible import org.gradle.api.tasks.TaskContainer import org.gradle.api.tasks.TaskProvider import org.gradle.kotlin.dsl.* import org.gradle.kotlin.dsl.accessors.runtime.* + ImportOrdering:Accessorseessl0al0otcsbyqqruvoncpd.kt$import org.gradle.api.Action import org.gradle.api.Incubating import org.gradle.api.NamedDomainObjectProvider import org.gradle.api.Project import org.gradle.api.Task import org.gradle.api.artifacts.Configuration import org.gradle.api.artifacts.ConfigurablePublishArtifact import org.gradle.api.artifacts.ConfigurationContainer import org.gradle.api.artifacts.Dependency import org.gradle.api.artifacts.DependencyConstraint import org.gradle.api.artifacts.ExternalModuleDependency import org.gradle.api.artifacts.ModuleDependency import org.gradle.api.artifacts.PublishArtifact import org.gradle.api.artifacts.dsl.ArtifactHandler import org.gradle.api.artifacts.dsl.DependencyConstraintHandler import org.gradle.api.artifacts.dsl.DependencyHandler import org.gradle.api.provider.Provider import org.gradle.api.provider.ProviderConvertible import org.gradle.api.tasks.TaskContainer import org.gradle.api.tasks.TaskProvider import org.gradle.kotlin.dsl.* import org.gradle.kotlin.dsl.accessors.runtime.* + ImportOrdering:Category.kt$import androidx.compose.foundation.layout.padding import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier import androidx.compose.ui.res.stringResource import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.unit.dp import com.ivy.design.l0_system.UI import com.ivy.design.l0_system.style import com.ivy.wallet.R import com.ivy.wallet.domain.data.core.Category import com.ivy.wallet.ui.theme.Gradient import com.ivy.wallet.ui.theme.components.IvyBorderButton import com.ivy.wallet.ui.theme.components.IvyButton import com.ivy.wallet.ui.theme.components.getCustomIconIdS import com.ivy.wallet.ui.theme.findContrastTextColor import com.ivy.wallet.ui.theme.toComposeColor + ImportOrdering:DetektConfigurationAccessors.kt$import org.gradle.api.Action import org.gradle.api.Incubating import org.gradle.api.NamedDomainObjectProvider import org.gradle.api.Project import org.gradle.api.Task import org.gradle.api.artifacts.Configuration import org.gradle.api.artifacts.ConfigurablePublishArtifact import org.gradle.api.artifacts.ConfigurationContainer import org.gradle.api.artifacts.Dependency import org.gradle.api.artifacts.DependencyConstraint import org.gradle.api.artifacts.ExternalModuleDependency import org.gradle.api.artifacts.ModuleDependency import org.gradle.api.artifacts.PublishArtifact import org.gradle.api.artifacts.dsl.ArtifactHandler import org.gradle.api.artifacts.dsl.DependencyConstraintHandler import org.gradle.api.artifacts.dsl.DependencyHandler import org.gradle.api.provider.Provider import org.gradle.api.provider.ProviderConvertible import org.gradle.api.tasks.TaskContainer import org.gradle.api.tasks.TaskProvider import org.gradle.kotlin.dsl.* import org.gradle.kotlin.dsl.accessors.runtime.* + ImportOrdering:DetektPluginsConfigurationAccessors.kt$import org.gradle.api.Action import org.gradle.api.Incubating import org.gradle.api.NamedDomainObjectProvider import org.gradle.api.Project import org.gradle.api.Task import org.gradle.api.artifacts.Configuration import org.gradle.api.artifacts.ConfigurablePublishArtifact import org.gradle.api.artifacts.ConfigurationContainer import org.gradle.api.artifacts.Dependency import org.gradle.api.artifacts.DependencyConstraint import org.gradle.api.artifacts.ExternalModuleDependency import org.gradle.api.artifacts.ModuleDependency import org.gradle.api.artifacts.PublishArtifact import org.gradle.api.artifacts.dsl.ArtifactHandler import org.gradle.api.artifacts.dsl.DependencyConstraintHandler import org.gradle.api.artifacts.dsl.DependencyHandler import org.gradle.api.provider.Provider import org.gradle.api.provider.ProviderConvertible import org.gradle.api.tasks.TaskContainer import org.gradle.api.tasks.TaskProvider import org.gradle.kotlin.dsl.* import org.gradle.kotlin.dsl.accessors.runtime.* + ImportOrdering:DueTrnsInfoAct.kt$import com.ivy.frp.action.FPAction import com.ivy.frp.lambda import com.ivy.frp.then import com.ivy.wallet.domain.action.account.AccountByIdAct import com.ivy.wallet.domain.action.exchange.ExchangeAct import com.ivy.wallet.domain.action.exchange.actInput import com.ivy.wallet.domain.action.transaction.DueTrnsAct import com.ivy.wallet.domain.data.core.Transaction import com.ivy.wallet.domain.pure.data.ClosedTimeRange import com.ivy.wallet.domain.pure.data.IncomeExpensePair import com.ivy.wallet.domain.pure.exchange.ExchangeTrnArgument import com.ivy.wallet.domain.pure.exchange.exchangeInBaseCurrency import com.ivy.wallet.domain.pure.transaction.expenses import com.ivy.wallet.domain.pure.transaction.incomes import com.ivy.wallet.domain.pure.transaction.sumTrns import com.ivy.wallet.utils.dateNowUTC import java.time.LocalDate import javax.inject.Inject + Indentation:AccountSync.kt$AccountSync$ + Indentation:AmountFormatting.kt$ + Indentation:AmountModal.kt$ + Indentation:BufferBattery.kt$ + Indentation:CSVScreen.kt$ + Indentation:CSVViewModel.kt$CSVViewModel$ + Indentation:CategoriesScreen.kt$ + Indentation:CategoriesViewModel.kt$CategoriesViewModel$ + Indentation:CategorySync.kt$CategorySync$ + Indentation:ChoosePeriodModal.kt$ + Indentation:ComposeExt.kt$ + Indentation:CurrencyPicker.kt$ + Indentation:CustomerJourneyLogic.kt$CustomerJourneyLogic.Companion$ + Indentation:DonateModal.kt$ + Indentation:EditPlannedViewModel.kt$EditPlannedViewModel$ + Indentation:EditTransactionViewModel.kt$EditTransactionViewModel$ + Indentation:ExportCSVLogic.kt$ExportCSVLogic$ + Indentation:HomeViewModel.kt$HomeViewModel$ + Indentation:ImportResultUI.kt$ + Indentation:InputField.kt$ + Indentation:Insets.kt$ + Indentation:ItemStatisticViewModel.kt$ItemStatisticViewModel$ + Indentation:IvySync.kt$IvySync$ + Indentation:KPIsTab.kt$ + Indentation:LastNTimeRange.kt$LastNTimeRange$ + Indentation:LoanRecordModal.kt$ + Indentation:LoanRecordSync.kt$LoanRecordSync$ + Indentation:LoanSync.kt$LoanSync$ + Indentation:LoanTransactionsCore.kt$LoanTransactionsCore$ + Indentation:MainBottomBar.kt$ + Indentation:OnboardingSplashLogin.kt$ + Indentation:ParseFields.kt$ + Indentation:PieChartAct.kt$PieChartAct$ + Indentation:PlannedPaymentSync.kt$PlannedPaymentSync$ + Indentation:PlannedPaymentsLogic.kt$PlannedPaymentsLogic$ + Indentation:PlansSheet.kt$ + Indentation:PrimaryAttributeColumn.kt$ + Indentation:RecurringRule.kt$ + Indentation:ReportViewModel.kt$ReportViewModel$ + Indentation:RootActivity.kt$RootActivity$ + Indentation:Screens.kt$EditPlanned$ + Indentation:SearchViewModel.kt$SearchViewModel$ + Indentation:ServerStopScreen.kt$ + Indentation:SettingsScreen.kt$ + Indentation:TransactionReminderWorker.kt$TransactionReminderWorker$ + Indentation:TransactionSync.kt$TransactionSync$ + Indentation:UtilExt.kt$ + Indentation:ViewPager.kt$PagerState$ + Indentation:WalletAccountLogic.kt$WalletAccountLogic$ + InstanceOfCheckForException:RestClient.kt$RestClient.Companion$exception is NetworkError + LargeClass:AppModuleDI.kt$AppModuleDI + LongMethod:AccountModal.kt$@Composable fun BoxWithConstraintsScope.AccountModal( modal: AccountModalData?, onCreateAccount: (CreateAccountData) -> Unit, onEditAccount: (Account, balance: Double) -> Unit, dismiss: () -> Unit, ) + LongMethod:AccountsTab.kt$@Composable private fun AccountHeader( accountData: AccountData, currency: String, baseCurrency: String, contrastColor: Color, onBalanceClick: () -> Unit ) + LongMethod:AccountsTab.kt$@Composable private fun BoxWithConstraintsScope.UI( state: AccountState = AccountState(), onEventHandler: (AccountsEvent) -> Unit = {} ) + LongMethod:AddRateModal.kt$@Composable fun BoxWithConstraintsScope.AddRateModal( visible: Boolean, baseCurrency: String, dismiss: () -> Unit, onAdd: (RatesEvent.AddRate) -> Unit, ) + LongMethod:AmountModal.kt$@Composable fun AmountKeyboard( forCalculator: Boolean, ZeroRow: (@Composable RowScope.() -> Unit)? = null, FirstRowExtra: (@Composable RowScope.() -> Unit)? = null, SecondRowExtra: (@Composable RowScope.() -> Unit)? = null, ThirdRowExtra: (@Composable RowScope.() -> Unit)? = null, FourthRowExtra: (@Composable RowScope.() -> Unit)? = null, onNumberPressed: (String) -> Unit, onDecimalPoint: () -> Unit, onBackspace: () -> Unit, ) + LongMethod:AmountModal.kt$@Composable fun BoxWithConstraintsScope.AmountModal( id: UUID, visible: Boolean, currency: String, initialAmount: Double?, decimalCountMax: Int = 2, Header: (@Composable () -> Unit)? = null, amountSpacerTop: Dp = 64.dp, dismiss: () -> Unit, onAmountChanged: (Double) -> Unit, ) + LongMethod:AnalyticsReportScreen.kt$@Composable private fun ColumnScope.Content( selectedTab: AnalyticsTab, onboardingReport: OnboardingReport, kpis: KPIs, health: Health, userStats: UserStats, setSelectedTab: (AnalyticsTab) -> Unit, ) + LongMethod:AnalyticsReportScreen.kt$@Composable private fun UI( selectedTab: AnalyticsTab, startDate: LocalDateTime?, endDate: LocalDateTime?, onboardingReport: OnboardingReport?, kpis: KPIs?, health: Health?, userStats: UserStats?, loading: Boolean, onRefresh: () -> Unit = {}, onSetStartDate: (LocalDateTime?) -> Unit = {}, onSetEndDate: (LocalDateTime?) -> Unit = {}, onSelectTab: (AnalyticsTab) -> Unit = {}, onNukeTestEvents: () -> Unit = {}, ) + LongMethod:AnalyticsReportViewModel.kt$AnalyticsReportViewModel$fun start( startDate: LocalDateTime? = this.startDate.value, endDate: LocalDateTime? = this.endDate.value, ) + LongMethod:AppLockedScreen.kt$@Composable fun BoxWithConstraintsScope.AppLockedScreen( onShowOSBiometricsModal: () -> Unit, onContinueWithoutAuthentication: () -> Unit ) + LongMethod:BalanceRow.kt$@Composable fun BalanceRow( modifier: Modifier = Modifier, currency: String, balance: Double, hiddenMode: Boolean = false, textColor: Color = UI.colors.pureInverse, decimalPaddingTop: Dp = 12.dp, spacerCurrency: Dp = 12.dp, spacerDecimal: Dp = 8.dp, currencyFontSize: TextUnit? = null, integerFontSize: TextUnit? = null, decimalFontSize: TextUnit? = null, currencyUpfront: Boolean = true, balanceAmountPrefix: String? = null, shortenBigNumbers: Boolean = false, ) + LongMethod:BudgetBattery.kt$@Composable fun BudgetBattery( modifier: Modifier = Modifier, currency: String, expenses: Double, budget: Double, backgroundNotFilled: Color = UI.colors.pure, onClick: (() -> Unit)? = null, ) + LongMethod:BudgetModal.kt$@Composable fun BoxWithConstraintsScope.BudgetModal( modal: BudgetModalData?, onCreate: (CreateBudgetData) -> Unit, onEdit: (Budget) -> Unit, onDelete: (Budget) -> Unit, dismiss: () -> Unit ) + LongMethod:BudgetScreen.kt$@Composable private fun BoxWithConstraintsScope.UI( timeRange: FromToTimeRange?, baseCurrency: String, categories: List<Category>, accounts: List<Account>, displayBudgets: List<DisplayBudget>, appBudgetMax: Double, categoryBudgetsTotal: Double, onCreateBudget: (CreateBudgetData) -> Unit = {}, onEditBudget: (Budget) -> Unit = {}, onDeleteBudget: (Budget) -> Unit = {}, onReorder: (List<DisplayBudget>) -> Unit = {} ) + LongMethod:BudgetScreen.kt$@Composable private fun Toolbar( timeRange: FromToTimeRange?, baseCurrency: String, appBudgetMax: Double, categoryBudgetsTotal: Double, setReorderModalVisible: (Boolean) -> Unit ) + LongMethod:BufferBattery.kt$@Composable fun BufferBattery( modifier: Modifier = Modifier, buffer: Double, balance: Double, currency: String, backgroundNotFilled: Color = UI.colors.pure, onClick: (() -> Unit)? = null, ) + LongMethod:CSVImporter.kt$CSVImporter$private fun mapDate( rowMapping: RowMapping, dateString: String? ): LocalDateTime? + LongMethod:CSVImporter.kt$CSVImporter$private suspend fun mapToTransaction( baseCurrency: String, row: List<String>, rowMapping: RowMapping ): Transaction? + LongMethod:CSVImporterV2.kt$CSVImporterV2$private suspend fun mapToTransaction( baseCurrency: String, row: CSVRowNew, importantFields: ImportantFields, transferFields: TransferFields, optionalFields: OptionalFields, ): Transaction? + LongMethod:CSVViewModel.kt$CSVViewModel$private suspend fun handleEvent(event: CSVEvent) + LongMethod:CalculatorModal.kt$@Composable fun BoxWithConstraintsScope.CalculatorModal( id: UUID = UUID.randomUUID(), initialAmount: Double?, visible: Boolean, currency: String, dismiss: () -> Unit, onCalculation: (Double) -> Unit ) + LongMethod:CategoriesScreen.kt$@Composable private fun BoxWithConstraintsScope.UI( state: CategoriesScreenState = CategoriesScreenState(), onEvent: (CategoriesScreenEvent) -> Unit = {} ) + LongMethod:CategoryCharts.kt$fun LazyListScope.categoryCharts( period: ChartPeriod, baseCurrencyCode: String, categories: List<Category>, categoryExpenseValues: List<CategoryValues> = emptyList(), categoryExpenseCount: List<CategoryValues> = emptyList(), categoryIncomeValues: List<CategoryValues> = emptyList(), categoryIncomeCount: List<CategoryValues> = emptyList(), onLoadCategory: (Category) -> Unit, onRemoveCategory: (Category) -> Unit ) + LongMethod:CategoryModal.kt$@Composable fun BoxWithConstraintsScope.CategoryModal( modal: CategoryModalData?, onCreateCategory: (CreateCategoryData) -> Unit, onEditCategory: (Category) -> Unit, dismiss: () -> Unit, ) + LongMethod:ChangeTransactionTypeModal.kt$@Composable fun BoxWithConstraintsScope.ChangeTransactionTypeModal( title: String = stringResource(R.string.set_transaction_type), visible: Boolean, includeTransferType: Boolean, initialType: TransactionType, id: UUID = UUID.randomUUID(), dismiss: () -> Unit, onTransactionTypeChanged: (TransactionType) -> Unit ) + LongMethod:ChooseCategoryModal.kt$@ExperimentalFoundationApi @Composable private fun CategoryButton( category: Category, selected: Boolean, onClick: () -> Unit, onLongClick: () -> Unit, onDeselect: () -> Unit, ) + LongMethod:ChooseIconModal.kt$fun ivyIcons(): List<Any> + LongMethod:ChoosePeriodModal.kt$@Composable fun BoxWithConstraintsScope.ChoosePeriodModal( modal: ChoosePeriodModalData?, dismiss: () -> Unit, onPeriodSelected: (TimePeriod) -> Unit ) + LongMethod:ChoosePeriodModal.kt$@Composable private fun ChooseMonth( selectedMonthYear: MonthYear?, onSelected: (MonthYear) -> Unit, ) + LongMethod:ChoosePeriodModal.kt$@Composable private fun IntervalFromToDate( border: IntervalBorder, dateTime: LocalDateTime?, otherEndDateTime: LocalDateTime?, onSelected: (LocalDateTime?) -> Unit ) + LongMethod:ChooseStartDateOfMonthModal.kt$@Composable fun BoxWithConstraintsScope.ChooseStartDateOfMonthModal( id: UUID = UUID.randomUUID(), visible: Boolean, selectedStartDateOfMonth: Int, dismiss: () -> Unit, onStartDateOfMonthSelected: (Int) -> Unit, ) + LongMethod:CurrencyPicker.kt$@Composable private fun SearchInput( searchTextFieldValue: TextFieldValue, onSetSearchTextFieldValue: (TextFieldValue) -> Unit ) + LongMethod:CustomExchangeRateCard.kt$@Composable fun CustomExchangeRateCard( modifier: Modifier = Modifier, title: String = stringResource(R.string.exchange_rate), fromCurrencyCode: String, toCurrencyCode: String, exchangeRate: Double, onRefresh: () -> Unit = {}, onClick: () -> Unit ) + LongMethod:CustomerJourney.kt$@Composable fun CustomerJourneyCard( cardData: CustomerJourneyCardData, onDismiss: () -> Unit, onCTA: () -> Unit ) + LongMethod:DescriptionModal.kt$@Composable fun BoxWithConstraintsScope.DescriptionModal( id: UUID = UUID.randomUUID(), visible: Boolean, description: String?, onDescriptionChanged: (String?) -> Unit, dismiss: () -> Unit, ) + LongMethod:DonateModal.kt$@Composable fun BoxWithConstraintsScope.DonateModal( visible: Boolean, dismiss: () -> Unit, onGooglePlay: () -> Unit, onGitHubSponsors: () -> Unit, ) + LongMethod:DonateScreen.kt$@Composable private fun DonateOptionPicker( option: DonateOption, onSelect: (DonateOption) -> Unit ) + LongMethod:EditBottomSheet.kt$@Composable fun BoxWithConstraintsScope.EditBottomSheet( initialTransactionId: UUID?, type: TransactionType, accounts: List<Account>, selectedAccount: Account?, toAccount: Account?, amount: Double, currency: String, convertedAmount: Double? = null, convertedAmountCurrencyCode: String? = null, amountModalShown: Boolean, setAmountModalShown: (Boolean) -> Unit, ActionButton: @Composable () -> Unit, onAmountChanged: (Double) -> Unit, onSelectedAccountChanged: (Account) -> Unit, onToAccountChanged: (Account) -> Unit, onAddNewAccount: () -> Unit ) + LongMethod:EditBottomSheet.kt$@Composable private fun TransferRowMini( percentCollapsed: Float, fromAccount: Account?, toAccount: Account?, onSetExpanded: () -> Unit ) + LongMethod:EditPlannedScreen.kt$@ExperimentalFoundationApi @Composable private fun BoxWithConstraintsScope.UI( screen: EditPlanned, startDate: LocalDateTime?, intervalN: Int?, intervalType: IntervalType?, oneTime: Boolean, type: TransactionType, currency: String, initialTitle: String?, description: String?, category: Category?, account: Account?, amount: Double, categories: List<Category>, accounts: List<Account>, onRuleChanged: (LocalDateTime, oneTime: Boolean, Int?, IntervalType?) -> Unit, onTitleChanged: (String?) -> Unit, onDescriptionChanged: (String?) -> Unit, onAmountChanged: (Double) -> Unit, onCategoryChanged: (Category?) -> Unit, onAccountChanged: (Account) -> Unit, onSetTransactionType: (TransactionType) -> Unit, onCreateCategory: (CreateCategoryData) -> Unit = {}, onSave: () -> Unit, onDelete: () -> Unit, onCreateAccount: (CreateAccountData) -> Unit = {}, ) + LongMethod:EditTransactionScreen.kt$@ExperimentalFoundationApi @Composable fun BoxWithConstraintsScope.EditTransactionScreen(screen: EditTransaction) + LongMethod:EditTransactionScreen.kt$@ExperimentalFoundationApi @Composable private fun BoxWithConstraintsScope.UI( screen: EditTransaction, transactionType: TransactionType, baseCurrency: String, initialTitle: String?, titleSuggestions: Set<String>, description: String?, category: Category?, dateTime: LocalDateTime?, account: Account?, toAccount: Account?, dueDate: LocalDateTime?, amount: Double, loanData: EditTransactionDisplayLoan = EditTransactionDisplayLoan(), backgroundProcessing: Boolean = false, customExchangeRateState: CustomExchangeRateState, categories: List<Category>, accounts: List<Account>, hasChanges: Boolean = false, onTitleChanged: (String?) -> Unit, onDescriptionChanged: (String?) -> Unit, onAmountChanged: (Double) -> Unit, onCategoryChanged: (Category?) -> Unit, onAccountChanged: (Account) -> Unit, onToAccountChanged: (Account) -> Unit, onDueDateChanged: (LocalDateTime?) -> Unit, onSetDateTime: (LocalDateTime) -> Unit, onSetTransactionType: (TransactionType) -> Unit, onCreateCategory: (CreateCategoryData) -> Unit, onEditCategory: (Category) -> Unit, onPayPlannedPayment: () -> Unit, onSave: (closeScreen: Boolean) -> Unit, onSetHasChanges: (hasChanges: Boolean) -> Unit, onDelete: () -> Unit, onCreateAccount: (CreateAccountData) -> Unit, onExchangeRateChanged: (Double?) -> Unit = { } ) + LongMethod:ExchangeRatesScreen.kt$@Composable private fun BoxWithConstraintsScope.UI( state: RatesState, onEvent: (RatesEvent) -> Unit, ) + LongMethod:ExportCSVLogic.kt$ExportCSVLogic$private fun Transaction.toCSV( baseCurrency: String, accountMap: Map<UUID, Account>, categoryMap: Map<UUID, Category> ): String + LongMethod:FilterOverlay.kt$@Composable fun BoxWithConstraintsScope.FilterOverlay( visible: Boolean, baseCurrency: String, accounts: List<Account>, categories: List<Category>, filter: ReportFilter?, onClose: () -> Unit, onSetFilter: (ReportFilter?) -> Unit ) + LongMethod:FilterOverlay.kt$@Composable private fun KeywordsFilter( filter: ReportFilter?, nonNullFilter: (ReportFilter?) -> ReportFilter, onSetFilter: (ReportFilter) -> Unit, onShowIncludeKeywordModal: () -> Unit, onShowExcludeKeywordModal: () -> Unit, ) + LongMethod:GitHubBackupCard.kt$@OptIn(ExperimentalMaterial3Api::class) @Composable private fun BackupEnabled( viewModel: GitHubBackupViewModel, modifier: Modifier = Modifier, ) + LongMethod:GitHubBackupScreen.kt$@Composable private fun Content( modifier: Modifier = Modifier, ) + LongMethod:HomeMoreMenu.kt$@Composable fun BoxWithConstraintsScope.MoreMenu( expanded: Boolean, balance: Double, buffer: Double, currency: String, theme: Theme, setExpanded: (Boolean) -> Unit, onSwitchTheme: () -> Unit, onBufferClick: () -> Unit, onCurrencyClick: () -> Unit ) + LongMethod:HomeMoreMenu.kt$@Composable private fun QuickAccess( theme: Theme, onSwitchTheme: () -> Unit ) + LongMethod:HomeTab.kt$@ExperimentalAnimationApi @ExperimentalFoundationApi @Composable private fun BoxWithConstraintsScope.UI( state: HomeState, onEvent: (HomeEvent) -> Unit ) + LongMethod:ImportInstructions.kt$@ExperimentalFoundationApi @Composable fun BoxWithConstraintsScope.ImportInstructions( hasSkip: Boolean, importType: ImportType, onSkip: () -> Unit, onUploadClick: () -> Unit, ) + LongMethod:ImportResultUI.kt$@Composable fun ImportResultUI( result: ImportResult, launchedFromOnboarding: Boolean, isManualCsvImport: Boolean = false, onTryAgain: (() -> Unit)? = null, onFinish: () -> Unit ) + LongMethod:ItemStatisticScreen.kt$@Composable fun BoxWithConstraintsScope.ItemStatisticScreen(screen: ItemStatistic) + LongMethod:ItemStatisticScreen.kt$@Composable private fun BoxWithConstraintsScope.UI( period: TimePeriod, baseCurrency: String, currency: String, account: Account?, category: Category?, categories: List<Category>, accounts: List<Account>, balance: Double, balanceBaseCurrency: Double?, income: Double, expenses: Double, initWithTransactions: Boolean = false, treatTransfersAsIncomeExpense: Boolean = false, history: List<TransactionHistoryItem>, upcomingExpanded: Boolean = true, setUpcomingExpanded: (Boolean) -> Unit = {}, upcomingIncome: Double = 0.0, upcomingExpenses: Double = 0.0, upcoming: List<Transaction> = emptyList(), overdueExpanded: Boolean = true, setOverdueExpanded: (Boolean) -> Unit = {}, overdueIncome: Double = 0.0, overdueExpenses: Double = 0.0, overdue: List<Transaction> = emptyList(), onPreviousMonth: () -> Unit, onNextMonth: () -> Unit, onSetPeriod: (TimePeriod) -> Unit, onEditAccount: (Account, Double) -> Unit, onEditCategory: (Category) -> Unit, onDelete: () -> Unit, onPayOrGet: (Transaction) -> Unit = {}, onSkipTransaction: (Transaction) -> Unit = {}, onSkipAllTransactions: (List<Transaction>) -> Unit = {} ) + LongMethod:ItemStatisticScreen.kt$@Composable private fun Header( history: List<TransactionHistoryItem>, currency: String, baseCurrency: String, itemColor: Color, account: Account?, category: Category?, balance: Double, balanceBaseCurrency: Double?, income: Double, expenses: Double, treatTransfersAsIncomeExpense: Boolean = false, onEdit: () -> Unit, onDelete: () -> Unit, onBalanceClick: () -> Unit, showCategoryModal: () -> Unit, showAccountModal: () -> Unit, ) + LongMethod:ItemStatisticScreen.kt$@Composable private fun Item( itemColor: Color, contrastColor: Color, account: Account?, category: Category?, showCategoryModal: () -> Unit, showAccountModal: () -> Unit, ) + LongMethod:ItemStatisticScreen.kt$@Composable private fun RowScope.HeaderCard( title: String, currencyCode: String, amount: Double, transactionCount: Int, isIncome: Boolean, addButtonText: String?, itemColor: Color, onHeaderCardClicked: () -> Unit = {}, onAddClick: () -> Unit ) + LongMethod:ItemStatisticViewModel.kt$ItemStatisticViewModel$private suspend fun initForAccount(accountId: UUID) + LongMethod:ItemStatisticViewModel.kt$ItemStatisticViewModel$private suspend fun initForCategoryWithTransactions( categoryId: UUID, accountFilterList: List<UUID>, transactions: List<Transaction> ) + LongMethod:IvyBorderButton.kt$@Composable fun IvyBorderButton( modifier: Modifier = Modifier, text: String, textStyle: TextStyle = UI.typo.b2.style( color = UI.colors.pureInverse, fontWeight = FontWeight.Bold ), backgroundGradient: Gradient = Gradient.solid(UI.colors.mediumInverse), @DrawableRes iconStart: Int? = null, @DrawableRes iconEnd: Int? = null, iconTint: Color = UI.colors.pureInverse, enabled: Boolean = true, wrapContentMode: Boolean = true, padding: Dp = 12.dp, onClick: () -> Unit ) + LongMethod:IvyButton.kt$@Composable fun IvyButton( modifier: Modifier = Modifier, text: String, backgroundGradient: Gradient = GradientIvy, textStyle: TextStyle = UI.typo.b2.style( color = White, fontWeight = FontWeight.Bold ), @DrawableRes iconStart: Int? = null, @DrawableRes iconEnd: Int? = null, iconTint: Color = White, enabled: Boolean = true, shadowAlpha: Float = 0.15f, wrapContentMode: Boolean = true, hasGlow: Boolean = true, padding: Dp = 12.dp, iconEdgePadding: Dp = 12.dp, iconTextPadding: Dp = 4.dp, onClick: () -> Unit ) + LongMethod:IvyChecklistTextField.kt$@Composable fun IvyChecklistTextField( modifier: Modifier = Modifier, textModifier: Modifier = Modifier, value: TextFieldValue, hint: String?, readOnly: Boolean = false, fontWeight: FontWeight = FontWeight.Medium, hintFontWeight: FontWeight = FontWeight.Medium, textColor: Color = UI.colors.pureInverse, hintColor: Color = UI.colors.mediumInverse, textAlign: TextAlign = TextAlign.Start, visualTransformation: VisualTransformation = VisualTransformation.None, keyboardOptions: KeyboardOptions? = KeyboardOptions.Default, keyboardActions: KeyboardActions? = KeyboardActions.Default, paddingVertical: Dp = 16.dp, onValueChanged: (TextFieldValue) -> Unit ) + LongMethod:IvyColorPicker.kt$@Composable fun ColumnScope.IvyColorPicker( selectedColor: Color, onColorSelected: (Color) -> Unit ) + LongMethod:IvyLineChart.kt$@Composable private fun IvyChart( modifier: Modifier, title: String, allValues: List<Value>, xLabel: (x: Double) -> String, yLabel: (y: Double) -> String, maxY: Double, minY: Double, functions: List<Function>, tapEvent: TapEvent?, onTap: (TapEvent) -> Unit ) + LongMethod:IvyLineChart.kt$@Preview @Composable private fun Preview_IvyChart() + LongMethod:IvyLineChart.kt$private fun DrawScope.drawFunction( function: Function, functionIndex: Int, minY: Double, maxY: Double, chartHeight: Float, cellSize: Float, lineDistance: Float, lineWidth: Float, offsetLeft: Float, offsetTop: Float, offsetBottom: Float, ): List<FunctionPoint> + LongMethod:IvyModal.kt$@Composable fun BoxScope.IvyModal( id: UUID?, visible: Boolean, dismiss: () -> Unit, SecondaryActions: (@Composable () -> Unit)? = null, PrimaryAction: @Composable () -> Unit, scrollState: ScrollState? = rememberScrollState(), shiftIfKeyboardShown: Boolean = true, includeActionsRowPadding: Boolean = true, Content: @Composable ColumnScope.() -> Unit ) + LongMethod:IvyViewPager.kt$@Composable fun IvyPager( state: IvyPagerState, pageContent: @Composable BoxScope.(page: Int) -> Unit ) + LongMethod:IvyWalletDesign.kt$IvyWalletDesign$override fun typography(): IvyTypography + LongMethod:KPIsTab.kt$@Composable fun ColumnScope.KPIsTab( kpis: KPIs, activeUsersCount: Int, onboardingCompletedEventCount: Int, onboardingStartedEventCount: Int, ) + LongMethod:LoanDetailsScreen.kt$@Composable private fun BoxWithConstraintsScope.UI( baseCurrency: String, loan: Loan?, displayLoanRecords: List<DisplayLoanRecord> = emptyList(), amountPaid: Double, loanAmountPaid: Double = 0.0, accounts: List<Account> = emptyList(), selectedLoanAccount: Account? = null, createLoanTransaction: Boolean = false, onCreateAccount: (CreateAccountData) -> Unit = {}, onEditLoan: (Loan, Boolean) -> Unit = { _, _ -> }, onCreateLoanRecord: (CreateLoanRecordData) -> Unit = {}, onEditLoanRecord: (EditLoanRecordData) -> Unit = {}, onDeleteLoanRecord: (LoanRecord) -> Unit = {}, onDeleteLoan: () -> Unit = {}, ) + LongMethod:LoanDetailsScreen.kt$@Composable private fun LoanInfoCard( loan: Loan, baseCurrency: String, amountPaid: Double, loanAmountPaid: Double = 0.0, selectedLoanAccount: Account? = null, onAddRecord: () -> Unit ) + LongMethod:LoanDetailsScreen.kt$@Composable private fun LoanRecordItem( loan: Loan, loanRecord: LoanRecord, baseCurrency: String, loanBaseCurrency: String = "", account: Account? = null, onClick: () -> Unit ) + LongMethod:LoanDetailsViewModel.kt$LoanDetailsViewModel$private fun load(loanId: UUID) + LongMethod:LoanModal.kt$@Composable fun BoxWithConstraintsScope.LoanModal( accounts: List<Account> = emptyList(), onCreateAccount: (CreateAccountData) -> Unit = {}, modal: LoanModalData?, onCreateLoan: (CreateLoanData) -> Unit, onEditLoan: (Loan, Boolean) -> Unit, onPerformCalculations: () -> Unit = {}, dismiss: () -> Unit, ) + LongMethod:LoanRecordModal.kt$@Composable fun BoxWithConstraintsScope.LoanRecordModal( modal: LoanRecordModalData?, accounts: List<Account> = emptyList(), onCreateAccount: (CreateAccountData) -> Unit = {}, onCreate: (CreateLoanRecordData) -> Unit, onEdit: (EditLoanRecordData) -> Unit, onDelete: (LoanRecord) -> Unit, dismiss: () -> Unit ) + LongMethod:LoansScreen.kt$@Composable private fun BoxWithConstraintsScope.UI( onEventHandler: (LoanScreenEvent) -> Unit = {}, state: LoanScreenState = LoanScreenState() ) + LongMethod:MainBottomBar.kt$@Composable fun BoxWithConstraintsScope.BottomBar( tab: MainTab, selectTab: (MainTab) -> Unit, onAddIncome: () -> Unit, onAddExpense: () -> Unit, onAddTransfer: () -> Unit, onAddPlannedPayment: () -> Unit, showAddAccountModal: () -> Unit, ) + LongMethod:MainBottomBar.kt$@Composable private fun AddExpenseButton( buttonsShownPercent: Float, fabStartX: Float, fabStartY: Float, buttonCenterY: Float, clickAreaWidth: Int, onAddExpense: () -> Unit ) + LongMethod:MainBottomBar.kt$@Composable private fun AddIncomeButton( buttonsShownPercent: Float, fabStartX: Float, fabStartY: Float, buttonLeftX: Float, sideButtonsY: Float, clickAreaWidth: Int, onAddIncome: () -> Unit ) + LongMethod:MainBottomBar.kt$@Composable private fun AddTransferButton( buttonsShownPercent: Float, fabStartX: Float, fabStartY: Float, buttonRightX: Float, sideButtonsY: Float, clickAreaWidth: Int, onAddTransfer: () -> Unit ) + LongMethod:OnboardingAccounts.kt$@ExperimentalFoundationApi @Composable fun BoxWithConstraintsScope.OnboardingAccounts( baseCurrency: String, suggestions: List<CreateAccountData>, accounts: List<AccountBalance>, onCreateAccount: (CreateAccountData) -> Unit = { }, onEditAccount: (Account, Double) -> Unit = { _, _ -> }, onSkip: () -> Unit = {}, onDone: () -> Unit = {} ) + LongMethod:OnboardingCategories.kt$@ExperimentalFoundationApi @Composable fun BoxWithConstraintsScope.OnboardingCategories( suggestions: List<CreateCategoryData>, categories: List<Category>, onCreateCategory: (CreateCategoryData) -> Unit = { }, onEditCategory: (Category) -> Unit = { _ -> }, onSkip: () -> Unit = {}, onDone: () -> Unit = {} ) + LongMethod:OnboardingCategories.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview_Categories() + LongMethod:OnboardingCategories.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview_Premium() + LongMethod:OnboardingPrivacyTC.kt$@Composable private fun SwipeToAgree( swipeToAgreeText: String, agreedText: String, onAgreed: (Boolean) -> Unit ) + LongMethod:OnboardingSetCurrency.kt$@Composable fun BoxWithConstraintsScope.OnboardingSetCurrency( preselectedCurrency: IvyCurrency, onSetCurrency: (IvyCurrency) -> Unit ) + LongMethod:OnboardingSetName.kt$@Composable fun OnboardingSetName( onNameSet: (String) -> Unit ) + LongMethod:OnboardingSplashLogin.kt$@Composable fun BoxWithConstraintsScope.OnboardingSplashLogin( onboardingState: OnboardingState, opGoogleSignIn: OpResult<Unit>?, onLoginWithGoogle: () -> Unit, onSkip: () -> Unit, ) + LongMethod:OnboardingType.kt$@Composable fun OnboardingType( onStartImport: () -> Unit, onStartFresh: () -> Unit, ) + LongMethod:ParseFields.kt$private fun possibleDateFormats(metadata: DateMetadata): List<String> + LongMethod:PaywallScreen.kt$@ExperimentalFoundationApi @Composable private fun BoxWithConstraintsScope.UI( plans: List<Plan>, purchasedSkus: List<String>, paywallReason: PaywallReason?, accounts: List<Account>, categories: List<Category>, budgets: List<Budget>, loans: List<Loan>, onPlanSelected: (Plan?) -> Unit = {}, onBuy: (Plan) -> Unit, ) + LongMethod:PeriodSelector.kt$@Composable fun PeriodSelector( modifier: Modifier = Modifier, period: TimePeriod, onPreviousMonth: () -> Unit, onNextMonth: () -> Unit, onShowChoosePeriodModal: () -> Unit, ) + LongMethod:PieChartAct.kt$PieChartAct$override suspend fun Input.compose(): suspend () -> Output + LongMethod:PieChartStatisticScreen.kt$@Composable private fun CategoryAmountCard( categoryAmount: CategoryAmount, currency: String, totalAmount: Double, selectedCategory: SelectedCategory?, onClick: () -> Unit ) + LongMethod:PieChartStatisticScreen.kt$@Composable private fun Header( transactionType: TransactionType, period: TimePeriod, percentExpanded: Float, currency: String, amount: Double, showCloseButtonOnly: Boolean = false, onShowMonthModal: () -> Unit, onSelectNextMonth: () -> Unit, onSelectPreviousMonth: () -> Unit, onClose: () -> Unit, onAdd: (TransactionType) -> Unit, ) + LongMethod:PieChartStatisticScreen.kt$@ExperimentalFoundationApi @Composable private fun BoxWithConstraintsScope.UI( state: PieChartStatisticState = PieChartStatisticState(), onEventHandler: (PieChartStatisticEvent) -> Unit = {} ) + LongMethod:PlannedPaymentCard.kt$@Composable private fun PlannedPaymentHeaderRow( plannedPayment: PlannedPaymentRule, categories: List<Category>, accounts: List<Account> ) + LongMethod:PlannedPaymentsLazyColumn.kt$private fun LazyListScope.plannedPaymentItems( nav: Navigation, currency: String, categories: List<Category>, accounts: List<Account>, listState: LazyListState, oneTime: List<PlannedPaymentRule>, oneTimeIncome: Double, oneTimeExpenses: Double, oneTimeExpanded: Boolean, setOneTimeExpanded: (Boolean) -> Unit, recurring: List<PlannedPaymentRule>, recurringIncome: Double, recurringExpenses: Double, recurringExpanded: Boolean, setRecurringExpanded: (Boolean) -> Unit ) + LongMethod:PlansSheet.kt$@Composable fun BoxWithConstraintsScope.PlansSheet( plans: List<Plan>, purchasedSkus: List<String>, onPlansSheetHeightChanged: (Int) -> Unit = {}, onPlanSelected: (Plan?) -> Unit, onBuy: (Plan) -> Unit ) + LongMethod:PlansSheet.kt$@Composable private fun ColumnScope.PlanCard( plan: Plan, purchased: Boolean, selectedPlan: Plan?, monthlyPlan: Plan?, onClick: () -> Unit ) + LongMethod:PreloadDataLogic.kt$PreloadDataLogic$fun categorySuggestions(): List<CreateCategoryData> + LongMethod:RecurringRuleModal.kt$@Composable fun BoxWithConstraintsScope.RecurringRuleModal( modal: RecurringRuleModalData?, dismiss: () -> Unit, onRuleChanged: (LocalDateTime, oneTime: Boolean, Int?, IntervalType?) -> Unit, ) + LongMethod:ReorderModal.kt$@Composable fun <T : Reorderable> BoxScope.ReorderModal( visible: Boolean, id: UUID = UUID.randomUUID(), TitleContent: @Composable ColumnScope.() -> Unit = { Text( modifier = Modifier.padding(start = 32.dp), text = stringResource(R.string.reorder), style = UI.typo.b1.style( UI.colors.pureInverse, FontWeight.ExtraBold ) ) }, initialItems: List<Any>, dismiss: () -> Unit, onUpdateItemOrderNum: ( itemsInNewOrder: List<Any>, item: T, newOrderNum: Double ) -> Unit = { _, _, _ -> }, onReordered: ((List<Any>) -> Unit)? = null, ItemContent: @Composable RowScope.(Int, Any) -> Unit ) + LongMethod:ReportScreen.kt$@ExperimentalFoundationApi @Composable private fun BoxWithConstraintsScope.UI( state: ReportScreenState = ReportScreenState(), onEventHandler: (ReportScreenEvent) -> Unit = {} ) + LongMethod:ReportViewModel.kt$ReportViewModel$private suspend fun filterTransactions( baseCurrency: String, accounts: List<Account>, filter: ReportFilter, ): List<Transaction> + LongMethod:ReportViewModel.kt$ReportViewModel$private suspend fun setFilter(filter: ReportFilter?) + LongMethod:SearchScreen.kt$@Composable private fun UI( transactions: List<TransactionHistoryItem>, baseCurrency: String, categories: List<Category>, accounts: List<Account>, onSearch: (String) -> Unit = {} ) + LongMethod:ServerStopScreen.kt$@Composable private fun Content( onBackup: () -> Unit ) + LongMethod:SettingsScreen.kt$@Composable private fun AccountCardUser( localName: String?, user: User, opSync: OpResult<Boolean>?, onSync: () -> Unit, ) + LongMethod:SettingsScreen.kt$@ExperimentalFoundationApi @Composable private fun BoxWithConstraintsScope.UI( user: User?, currencyCode: String, opSync: OpResult<Boolean>?, lockApp: Boolean, showNotifications: Boolean = true, hideCurrentBalance: Boolean = false, progressState: Boolean = false, treatTransfersAsIncomeExpense: Boolean = false, nameLocalAccount: String?, startDateOfMonth: Int = 1, onSetCurrency: (String) -> Unit, onSetName: (String) -> Unit = {}, onSync: () -> Unit, onLogout: () -> Unit, onLogin: () -> Unit, onBackupData: () -> Unit = {}, onExportToCSV: () -> Unit = {}, onSetLockApp: (Boolean) -> Unit = {}, onSetShowNotifications: (Boolean) -> Unit = {}, onSetTreatTransfersAsIncExp: (Boolean) -> Unit = {}, onSetHideCurrentBalance: (Boolean) -> Unit = {}, onSetStartDateOfMonth: (Int) -> Unit = {}, onDeleteAllUserData: () -> Unit = {}, onDeleteCloudUserData: () -> Unit = {}, ) + LongMethod:TransactionCard.kt$@Composable fun TransactionCard( baseData: AppBaseData, transaction: Transaction, onPayOrGet: (Transaction) -> Unit, onSkipTransaction: (Transaction) -> Unit = {}, onClick: (Transaction) -> Unit, ) + LongMethod:TransactionCard.kt$@Composable fun TypeAmountCurrency( transactionType: TransactionType, dueDate: LocalDateTime?, currency: String, amount: Double ) + LongMethod:ViewPager.kt$@Composable fun Pager( state: PagerState, modifier: Modifier = Modifier, pageContent: @Composable PagerScope.() -> Unit ) + LongMethod:WalletBalanceWidgetContent.kt$@Composable fun IncomeExpenseSection( income: String, expense: String, currency: String ) + LongParameterList:AccountModal.kt$( account: Account?, nameTextFieldValue: TextFieldValue, currency: String, color: Color, icon: String?, amount: Double, includeInBalance: Boolean, onCreateAccount: (CreateAccountData) -> Unit, onEditAccount: (Account, balance: Double) -> Unit, dismiss: () -> Unit ) + LongParameterList:AccountsViewModel.kt$AccountsViewModel$( private val walletDAOs: WalletDAOs, private val accountDao: AccountDao, private val settingsDao: SettingsDao, private val accountSync: AccountSync, private val accountCreator: AccountCreator, private val ivyContext: IvyWalletCtx, private val sharedPrefs: SharedPrefs, private val accountsAct: AccountsAct, private val calcWalletBalanceAct: CalcWalletBalanceAct, private val baseCurrencyAct: BaseCurrencyAct, private val accountDataAct: AccountDataAct ) + LongParameterList:AmountModal.kt$( forCalculator: Boolean, ZeroRow: (@Composable RowScope.() -> Unit)? = null, FirstRowExtra: (@Composable RowScope.() -> Unit)? = null, SecondRowExtra: (@Composable RowScope.() -> Unit)? = null, ThirdRowExtra: (@Composable RowScope.() -> Unit)? = null, FourthRowExtra: (@Composable RowScope.() -> Unit)? = null, onNumberPressed: (String) -> Unit, onDecimalPoint: () -> Unit, onBackspace: () -> Unit, ) + LongParameterList:AmountModal.kt$( id: UUID, visible: Boolean, currency: String, initialAmount: Double?, decimalCountMax: Int = 2, Header: (@Composable () -> Unit)? = null, amountSpacerTop: Dp = 64.dp, dismiss: () -> Unit, onAmountChanged: (Double) -> Unit, ) + LongParameterList:AnalyticsReportScreen.kt$( selectedTab: AnalyticsTab, onboardingReport: OnboardingReport, kpis: KPIs, health: Health, userStats: UserStats, setSelectedTab: (AnalyticsTab) -> Unit, ) + LongParameterList:AnalyticsReportScreen.kt$( selectedTab: AnalyticsTab, startDate: LocalDateTime?, endDate: LocalDateTime?, onboardingReport: OnboardingReport?, kpis: KPIs?, health: Health?, userStats: UserStats?, loading: Boolean, onRefresh: () -> Unit = {}, onSetStartDate: (LocalDateTime?) -> Unit = {}, onSetEndDate: (LocalDateTime?) -> Unit = {}, onSelectTab: (AnalyticsTab) -> Unit = {}, onNukeTestEvents: () -> Unit = {}, ) + LongParameterList:AppModuleDI.kt$AppModuleDI$( accountSync: AccountSync, categorySync: CategorySync, transactionSync: TransactionSync, plannedPaymentSync: PlannedPaymentSync, budgetSync: BudgetSync, loanSync: LoanSync, loanRecordSync: LoanRecordSync, ivySession: IvySession ) + LongParameterList:AppModuleDI.kt$AppModuleDI$( categoryDao: CategoryDao, transactionUploader: TransactionUploader, transactionDao: TransactionDao, ivyContext: IvyWalletCtx, loanDao: LoanDao, loanRecordDao: LoanRecordDao, exchangeRatesLogic: ExchangeRatesLogic, settingsDao: SettingsDao, accountDao: AccountDao ) + LongParameterList:AppModuleDI.kt$AppModuleDI$( ivyBilling: IvyBilling, ivyContext: IvyWalletCtx, navigation: Navigation, accountDao: AccountDao, categoryDao: CategoryDao, budgetDao: BudgetDao, loanDao: LoanDao ) + LongParameterList:AppModuleDI.kt$AppModuleDI$( plannedPaymentRuleDao: PlannedPaymentRuleDao, transactionDao: TransactionDao, transactionUploader: TransactionUploader, exchangeRatesLogic: ExchangeRatesLogic, accountDao: AccountDao, settingsDao: SettingsDao, plannedPaymentRuleUploader: PlannedPaymentRuleUploader ) + LongParameterList:BackupLogic.kt$BackupLogic$( private val accountDao: AccountDao, private val budgetDao: BudgetDao, private val categoryDao: CategoryDao, private val loanRecordDao: LoanRecordDao, private val loanDao: LoanDao, private val plannedPaymentRuleDao: PlannedPaymentRuleDao, private val settingsDao: SettingsDao, private val transactionDao: TransactionDao, private val sharedPrefs: SharedPrefs, @ApplicationContext private val context: Context, ) + LongParameterList:BalanceRow.kt$( modifier: Modifier = Modifier, currency: String, balance: Double, hiddenMode: Boolean = false, textColor: Color = UI.colors.pureInverse, decimalPaddingTop: Dp = 12.dp, spacerCurrency: Dp = 12.dp, spacerDecimal: Dp = 8.dp, currencyFontSize: TextUnit? = null, integerFontSize: TextUnit? = null, decimalFontSize: TextUnit? = null, currencyUpfront: Boolean = true, balanceAmountPrefix: String? = null, shortenBigNumbers: Boolean = false, ) + LongParameterList:BalanceRow.kt$( modifier: Modifier = Modifier, textColor: Color = UI.colors.pureInverse, currency: String, balance: Double, balanceAmountPrefix: String? = null, currencyUpfront: Boolean = true, shortenBigNumbers: Boolean = false, hiddenMode: Boolean = false, ) + LongParameterList:BalanceScreen.kt$( period: TimePeriod, baseCurrencyCode: String, currentBalance: Double, plannedPaymentsAmount: Double, balanceAfterPlannedPayments: Double, onSetPeriod: (TimePeriod) -> Unit = {}, onPreviousMonth: () -> Unit = {}, onNextMonth: () -> Unit = {} ) + LongParameterList:BudgetBattery.kt$( modifier: Modifier = Modifier, currency: String, expenses: Double, budget: Double, backgroundNotFilled: Color = UI.colors.pure, onClick: (() -> Unit)? = null, ) + LongParameterList:BudgetScreen.kt$( timeRange: FromToTimeRange?, baseCurrency: String, categories: List<Category>, accounts: List<Account>, displayBudgets: List<DisplayBudget>, appBudgetMax: Double, categoryBudgetsTotal: Double, onCreateBudget: (CreateBudgetData) -> Unit = {}, onEditBudget: (Budget) -> Unit = {}, onDeleteBudget: (Budget) -> Unit = {}, onReorder: (List<DisplayBudget>) -> Unit = {} ) + LongParameterList:BudgetViewModel.kt$BudgetViewModel$( private val sharedPrefs: SharedPrefs, private val settingsDao: SettingsDao, private val budgetDao: BudgetDao, private val categoryDao: CategoryDao, private val accountDao: AccountDao, private val budgetCreator: BudgetCreator, private val budgetSync: BudgetSync, private val ivyContext: IvyWalletCtx, private val accountsAct: AccountsAct, private val categoriesAct: CategoriesAct, private val budgetsAct: BudgetsAct, private val baseCurrencyAct: BaseCurrencyAct, private val historyTrnsAct: HistoryTrnsAct, private val exchangeAct: ExchangeAct ) + LongParameterList:BufferBattery.kt$( modifier: Modifier = Modifier, buffer: Double, balance: Double, currency: String, backgroundNotFilled: Color = UI.colors.pure, onClick: (() -> Unit)? = null, ) + LongParameterList:ButtonWithIcon.kt$( modifier: Modifier = Modifier, text: String, mode: Mode = Mode.WRAP_CONTENT, background: Background = Background.Solid( color = UI.colors.primary, shape = UI.shapes.rFull, padding = padding( horizontal = 24.dp, vertical = 12.dp ) ), textStyle: TextStyle = UI.typo.b1.style( color = White, textAlign = TextAlign.Center ), @DrawableRes iconLeft: Int? = null, @DrawableRes iconRight: Int? = null, iconTint: Color = White, iconPadding: Dp = 12.dp, onClick: () -> Unit ) + LongParameterList:CSVImporter.kt$CSVImporter$( baseCurrency: String, accountNameString: String?, color: Int?, icon: String?, orderNum: Double?, currencyRawString: String?, ) + LongParameterList:CSVImporterV2.kt$CSVImporterV2$( baseCurrency: String, accountNameString: String?, color: Int?, icon: String?, orderNum: Double?, currencyRawString: String?, ) + LongParameterList:CalculatorModal.kt$( id: UUID = UUID.randomUUID(), initialAmount: Double?, visible: Boolean, currency: String, dismiss: () -> Unit, onCalculation: (Double) -> Unit ) + LongParameterList:CategoriesScreen.kt$( modifier: Modifier = Modifier, textColor: Color = UI.colors.pureInverse, dividerColor: Color = UI.colors.medium, monthlyIncome: Double, monthlyExpenses: Double, currency: String, center: Boolean = true, dividerSpacer: Dp? = null, ) + LongParameterList:CategoriesScreen.kt$( text: String, @DrawableRes icon: Int, selected: Boolean, selectedGradient: Gradient = GradientGreen, textSelectedColor: Color = White, onClick: () -> Unit ) + LongParameterList:CategoriesScreen.kt$( title: String = stringResource(R.string.sort_by), items: List<SortOrder>, visible: Boolean, initialType: SortOrder, id: UUID = UUID.randomUUID(), dismiss: () -> Unit, onSortOrderChanged: (SortOrder) -> Unit ) + LongParameterList:CategoriesViewModel.kt$CategoriesViewModel$( private val categoryDao: CategoryDao, private val categorySync: CategorySync, private val categoryCreator: CategoryCreator, private val categoriesAct: CategoriesAct, private val ivyContext: IvyWalletCtx, private val sharedPrefs: SharedPrefs, private val baseCurrencyAct: BaseCurrencyAct, private val accountsAct: AccountsAct, private val trnsWithRangeAndAccFiltersAct: TrnsWithRangeAndAccFiltersAct, private val categoryIncomeWithAccountFiltersAct: CategoryIncomeWithAccountFiltersAct ) + LongParameterList:CategoryCharts.kt$( period: ChartPeriod, baseCurrencyCode: String, categories: List<Category>, categoryExpenseValues: List<CategoryValues> = emptyList(), categoryExpenseCount: List<CategoryValues> = emptyList(), categoryIncomeValues: List<CategoryValues> = emptyList(), categoryIncomeCount: List<CategoryValues> = emptyList(), onLoadCategory: (Category) -> Unit, onRemoveCategory: (Category) -> Unit ) + LongParameterList:CategoryCharts.kt$( period: ChartPeriod, title: String, titleColor: Color = UI.colors.pureInverse, baseCurrencyCode: String, categoryValues: List<CategoryValues>, countChart: Boolean, ) + LongParameterList:CategoryModal.kt$( hint: String, @DrawableRes defaultIcon: Int, color: Color, icon: String?, autoFocusKeyboard: Boolean, nameTextFieldValue: TextFieldValue, setNameTextFieldValue: (TextFieldValue) -> Unit, showChooseIconModal: () -> Unit ) + LongParameterList:ChangeTransactionTypeModal.kt$( title: String = stringResource(R.string.set_transaction_type), visible: Boolean, includeTransferType: Boolean, initialType: TransactionType, id: UUID = UUID.randomUUID(), dismiss: () -> Unit, onTransactionTypeChanged: (TransactionType) -> Unit ) + LongParameterList:ChartsScreen.kt$( period: ChartPeriod, baseCurrencyCode: String, balanceChart: List<SingleChartPoint> = emptyList(), incomeExpenseChart: List<IncomeExpenseChartPoint> = emptyList(), categories: List<Category> = emptyList(), categoryExpenseValues: List<CategoryValues> = emptyList(), categoryExpenseCount: List<CategoryValues> = emptyList(), categoryIncomeValues: List<CategoryValues> = emptyList(), categoryIncomeCount: List<CategoryValues> = emptyList(), onLoadCategory: (Category) -> Unit = {}, onRemoveCategory: (Category) -> Unit = {}, onChangePeriod: (ChartPeriod) -> Unit = {} ) + LongParameterList:ChooseCategoryModal.kt$( id: UUID = UUID.randomUUID(), visible: Boolean, initialCategory: Category?, categories: List<Category>, showCategoryModal: (Category?) -> Unit, onCategoryChanged: (Category?) -> Unit, dismiss: () -> Unit ) + LongParameterList:ChooseIconModal.kt$( icons: List<Any>, rowAcc: List<String> = emptyList(), iconsPerRow: Int, selectedIcon: String?, color: Color, onIconSelected: (String) -> Unit ) + LongParameterList:ChooseIconModal.kt$( visible: Boolean, initialIcon: String?, color: Color, id: UUID = UUID.randomUUID(), dismiss: () -> Unit, onIconChosen: (String?) -> Unit ) + LongParameterList:CircleButtons.kt$( modifier: Modifier = Modifier, @DrawableRes icon: Int, contentDescription: String = "icon", backgroundColor: Color = UI.colors.medium, tint: Color? = UI.colors.pureInverse, clickAreaPadding: Dp = 8.dp, onClick: () -> Unit ) + LongParameterList:CircleButtons.kt$( modifier: Modifier = Modifier, @DrawableRes icon: Int, contentDescription: String = "icon", backgroundColor: Color = UI.colors.pure, borderColor: Color = UI.colors.medium, tint: Color? = UI.colors.pureInverse, onClick: () -> Unit ) + LongParameterList:CircleButtons.kt$( modifier: Modifier = Modifier, @DrawableRes icon: Int, contentDescription: String = "icon", iconPadding: Dp = 8.dp, backgroundGradient: Gradient = Gradient.solid(UI.colors.medium), tint: Color? = UI.colors.pureInverse, onClick: () -> Unit ) + LongParameterList:ColumnRoot.kt$( modifier: Modifier = Modifier, statusBarPadding: Boolean = true, navigationBarsPadding: Boolean = true, verticalArrangement: Arrangement.Vertical = Arrangement.Top, horizontalAlignment: Alignment.Horizontal = Alignment.Start, Content: @Composable ColumnScope.() -> Unit ) + LongParameterList:ComposeExt.kt$( color: Color, alpha: Float = 0.15f, borderRadius: Dp = 0.dp, shadowRadius: Dp = 16.dp, offsetX: Dp = 0.dp, offsetY: Dp = 8.dp ) + LongParameterList:CurrencyModal.kt$( title: String, initialCurrency: IvyCurrency?, visible: Boolean, dismiss: () -> Unit, id: UUID = UUID.randomUUID(), onSetCurrency: (String) -> Unit ) + LongParameterList:CurrencyPicker.kt$( modifier: Modifier = Modifier, initialSelectedCurrency: IvyCurrency?, preselectedCurrency: IvyCurrency = IvyCurrency.getDefault(), includeKeyboardShownInsetSpacer: Boolean, lastItemSpacer: Dp = 0.dp, onKeyboardShown: (keyboardVisible: Boolean) -> Unit = {}, onSelectedCurrencyChanged: (IvyCurrency) -> Unit ) + LongParameterList:CustomExchangeRateCard.kt$( modifier: Modifier = Modifier, title: String = stringResource(R.string.exchange_rate), fromCurrencyCode: String, toCurrencyCode: String, exchangeRate: Double, onRefresh: () -> Unit = {}, onClick: () -> Unit ) + LongParameterList:DeleteModal.kt$( id: UUID = UUID.randomUUID(), title: String, description: String, visible: Boolean, buttonText: String = stringResource(R.string.delete), iconStart: Int = R.drawable.ic_delete, dismiss: () -> Unit, onDelete: () -> Unit, ) + LongParameterList:DetektConfigurationAccessors.kt$( group: String, name: String, version: String? = null, configuration: String? = null, classifier: String? = null, ext: String? = null, dependencyConfiguration: Action<ExternalModuleDependency>? = null ) + LongParameterList:DetektPluginsConfigurationAccessors.kt$( group: String, name: String, version: String? = null, configuration: String? = null, classifier: String? = null, ext: String? = null, dependencyConfiguration: Action<ExternalModuleDependency>? = null ) + LongParameterList:EditBottomSheet.kt$( initialTransactionId: UUID?, type: TransactionType, accounts: List<Account>, selectedAccount: Account?, toAccount: Account?, amount: Double, currency: String, convertedAmount: Double? = null, convertedAmountCurrencyCode: String? = null, amountModalShown: Boolean, setAmountModalShown: (Boolean) -> Unit, ActionButton: @Composable () -> Unit, onAmountChanged: (Double) -> Unit, onSelectedAccountChanged: (Account) -> Unit, onToAccountChanged: (Account) -> Unit, onAddNewAccount: () -> Unit ) + LongParameterList:EditBottomSheet.kt$( keyboardShown: Boolean, keyboardShownInsetDp: Dp, setBottomBarHeight: (Int) -> Unit, expanded: Boolean, internalExpanded: Boolean, setInternalExpanded: (Boolean) -> Unit, navBarPadding: Dp, ActionButton: @Composable () -> Unit ) + LongParameterList:EditBottomSheet.kt$( modifier: Modifier = Modifier, accounts: List<Account>, selectedAccount: Account?, childrenTestTag: String? = null, onSelectedAccountChanged: (Account) -> Unit, onAddNewAccount: () -> Unit ) + LongParameterList:EditBottomSheet.kt$( percentExpanded: Float, label: String, type: TransactionType, accounts: List<Account>, selectedAccount: Account?, toAccount: Account?, onSelectedAccountChanged: (Account) -> Unit, onToAccountChanged: (Account) -> Unit, onAddNewAccount: () -> Unit, ) + LongParameterList:EditBottomSheet.kt$( type: TransactionType, amount: Double, currency: String, percentExpanded: Float, label: String, account: Account?, showConvertedAmountText: String? = null, onShowAmountModal: () -> Unit, onAccountMiniClick: () -> Unit, ) + LongParameterList:EditPlannedScreen.kt$( screen: EditPlanned, startDate: LocalDateTime?, intervalN: Int?, intervalType: IntervalType?, oneTime: Boolean, type: TransactionType, currency: String, initialTitle: String?, description: String?, category: Category?, account: Account?, amount: Double, categories: List<Category>, accounts: List<Account>, onRuleChanged: (LocalDateTime, oneTime: Boolean, Int?, IntervalType?) -> Unit, onTitleChanged: (String?) -> Unit, onDescriptionChanged: (String?) -> Unit, onAmountChanged: (Double) -> Unit, onCategoryChanged: (Category?) -> Unit, onAccountChanged: (Account) -> Unit, onSetTransactionType: (TransactionType) -> Unit, onCreateCategory: (CreateCategoryData) -> Unit = {}, onSave: () -> Unit, onDelete: () -> Unit, onCreateAccount: (CreateAccountData) -> Unit = {}, ) + LongParameterList:EditPlannedViewModel.kt$EditPlannedViewModel$( private val transactionDao: TransactionDao, private val accountDao: AccountDao, private val categoryDao: CategoryDao, private val settingsDao: SettingsDao, private val ivyContext: IvyWalletCtx, private val nav: Navigation, private val transactionSync: TransactionSync, private val plannedPaymentRuleDao: PlannedPaymentRuleDao, private val plannedPaymentRuleUploader: PlannedPaymentRuleUploader, private val plannedPaymentsGenerator: PlannedPaymentsGenerator, private val categoryCreator: CategoryCreator, private val accountCreator: AccountCreator, private val accountsAct: AccountsAct, private val categoriesAct: CategoriesAct ) + LongParameterList:EditTransactionScreen.kt$( screen: EditTransaction, transactionType: TransactionType, baseCurrency: String, initialTitle: String?, titleSuggestions: Set<String>, description: String?, category: Category?, dateTime: LocalDateTime?, account: Account?, toAccount: Account?, dueDate: LocalDateTime?, amount: Double, loanData: EditTransactionDisplayLoan = EditTransactionDisplayLoan(), backgroundProcessing: Boolean = false, customExchangeRateState: CustomExchangeRateState, categories: List<Category>, accounts: List<Account>, hasChanges: Boolean = false, onTitleChanged: (String?) -> Unit, onDescriptionChanged: (String?) -> Unit, onAmountChanged: (Double) -> Unit, onCategoryChanged: (Category?) -> Unit, onAccountChanged: (Account) -> Unit, onToAccountChanged: (Account) -> Unit, onDueDateChanged: (LocalDateTime?) -> Unit, onSetDateTime: (LocalDateTime) -> Unit, onSetTransactionType: (TransactionType) -> Unit, onCreateCategory: (CreateCategoryData) -> Unit, onEditCategory: (Category) -> Unit, onPayPlannedPayment: () -> Unit, onSave: (closeScreen: Boolean) -> Unit, onSetHasChanges: (hasChanges: Boolean) -> Unit, onDelete: () -> Unit, onCreateAccount: (CreateAccountData) -> Unit, onExchangeRateChanged: (Double?) -> Unit = { } ) + LongParameterList:EditTransactionViewModel.kt$EditTransactionViewModel$( private val loanDao: LoanDao, private val transactionDao: TransactionDao, private val accountDao: AccountDao, private val categoryDao: CategoryDao, private val settingsDao: SettingsDao, private val ivyContext: IvyWalletCtx, private val nav: Navigation, private val transactionUploader: TransactionUploader, private val sharedPrefs: SharedPrefs, private val exchangeRatesLogic: ExchangeRatesLogic, private val categoryCreator: CategoryCreator, private val accountCreator: AccountCreator, private val paywallLogic: PaywallLogic, private val plannedPaymentsLogic: PlannedPaymentsLogic, private val smartTitleSuggestionsLogic: SmartTitleSuggestionsLogic, private val loanTransactionsLogic: LoanTransactionsLogic, private val accountsAct: AccountsAct, private val categoriesAct: CategoriesAct, private val trnByIdAct: TrnByIdAct, private val categoryByIdAct: CategoryByIdAct, private val accountByIdAct: AccountByIdAct ) + LongParameterList:FilterOverlay.kt$( visible: Boolean, baseCurrency: String, accounts: List<Account>, categories: List<Category>, filter: ReportFilter?, onClose: () -> Unit, onSetFilter: (ReportFilter?) -> Unit ) + LongParameterList:HomeHeader.kt$( @DrawableRes icon: Int, backgroundGradient: Gradient, percentVisible: Float, textColor: Color, label: String, currency: String, amount: Double, testTag: String, onClick: () -> Unit ) + LongParameterList:HomeHeader.kt$( expanded: Boolean, name: String, period: TimePeriod, currency: String, balance: Double, bufferDiff: Double, hideCurrentBalance: Boolean = false, onShowMonthModal: () -> Unit, onBalanceClick: () -> Unit, onHiddenBalanceClick: () -> Unit = {}, onSelectNextMonth: () -> Unit, onSelectPreviousMonth: () -> Unit, ) + LongParameterList:HomeHeader.kt$( percentExpanded: Float = 1f, period: TimePeriod, currency: String, balance: Double, bufferDiff: Double, monthlyIncome: Double, monthlyExpenses: Double, hideCurrentBalance: Boolean, onOpenMoreMenu: () -> Unit, onBalanceClick: () -> Unit, onHiddenBalanceClick: () -> Unit = {} ) + LongParameterList:HomeHeader.kt$( percentExpanded: Float, name: String, period: TimePeriod, currency: String, balance: Double, hideCurrentBalance: Boolean = false, onShowMonthModal: () -> Unit, onBalanceClick: () -> Unit, onHiddenBalanceClick: () -> Unit = {}, onSelectNextMonth: () -> Unit, onSelectPreviousMonth: () -> Unit, ) + LongParameterList:HomeMoreMenu.kt$( @DrawableRes icon: Int, label: String, backgroundColor: Color = UI.colors.pure, tint: Color = UI.colors.pureInverse, expandPadding: Dp = 14.dp, onClick: () -> Unit ) + LongParameterList:HomeMoreMenu.kt$( balance: Double, buffer: Double, currency: String, theme: Theme, onSwitchTheme: () -> Unit, onBufferClick: () -> Unit, onCurrencyClick: () -> Unit, ) + LongParameterList:HomeMoreMenu.kt$( expanded: Boolean, balance: Double, buffer: Double, currency: String, theme: Theme, setExpanded: (Boolean) -> Unit, onSwitchTheme: () -> Unit, onBufferClick: () -> Unit, onCurrencyClick: () -> Unit ) + LongParameterList:HomeTab.kt$( hideBalanceRowState: MutableState<Boolean>, listState: LazyListState, buffer: BufferInfo, hideCurrentBalance: Boolean, period: TimePeriod, baseData: AppBaseData, upcoming: DueSection, overdue: DueSection, balance: BigDecimal, stats: IncomeExpensePair, history: List<TransactionHistoryItem>, customerJourneyCards: List<CustomerJourneyCardData>, setUpcomingExpanded: (Boolean) -> Unit, setOverdueExpanded: (Boolean) -> Unit, onOpenMoreMenu: () -> Unit, onBalanceClick: () -> Unit, onHiddenBalanceClick: () -> Unit = {}, onPayOrGet: (Transaction) -> Unit, onDismiss: (CustomerJourneyCardData) -> Unit, onSkipTransaction: (Transaction) -> Unit = {}, onSkipAllTransactions: (List<Transaction>) -> Unit = {} ) + LongParameterList:HomeViewModel.kt$HomeViewModel$( private val ivyContext: IvyWalletCtx, private val nav: Navigation, private val exchangeRatesLogic: ExchangeRatesLogic, private val plannedPaymentsLogic: PlannedPaymentsLogic, private val customerJourneyLogic: CustomerJourneyLogic, private val historyWithDateDivsAct: HistoryWithDateDivsAct, private val calcIncomeExpenseAct: CalcIncomeExpenseAct, private val calcWalletBalanceAct: CalcWalletBalanceAct, private val settingsAct: SettingsAct, private val accountsAct: AccountsAct, private val categoriesAct: CategoriesAct, private val calcBufferDiffAct: CalcBufferDiffAct, private val upcomingAct: UpcomingAct, private val overdueAct: OverdueAct, private val hasTrnsAct: HasTrnsAct, private val startDayOfMonthAct: StartDayOfMonthAct, private val shouldHideBalanceAct: ShouldHideBalanceAct, private val updateSettingsAct: UpdateSettingsAct, private val updateAccCacheAct: UpdateAccCacheAct, private val updateCategoriesCacheAct: UpdateCategoriesCacheAct, private val syncExchangeRatesAct: SyncExchangeRatesAct, ) + LongParameterList:ImportScreen.kt$( screen: Import, importStep: ImportStep, importType: ImportType?, importProgressPercent: Int, importResult: ImportResult?, onChooseImportType: (ImportType) -> Unit = {}, onUploadCSVFile: () -> Unit = {}, onSkip: () -> Unit = {}, onFinish: () -> Unit = {}, ) + LongParameterList:ImportViewModel.kt$ImportViewModel$( private val ivyContext: IvyWalletCtx, private val nav: Navigation, private val fileReader: IvyFileReader, private val csvNormalizer: CSVNormalizer, private val csvMapper: CSVMapper, private val csvImporter: CSVImporter, private val backupLogic: BackupLogic ) + LongParameterList:IncomeExpensesRow.kt$( modifier: Modifier = Modifier, textColor: Color = UI.colors.pureInverse, dividerColor: Color = UI.colors.medium, incomeLabel: String = stringResource(R.string.income_uppercase), income: Double, expensesLabel: String = stringResource(R.string.expenses_uppercase), expenses: Double, currency: String, center: Boolean = true, dividerSpacer: Dp? = null, ) + LongParameterList:InputField.kt$( modifier: Modifier = Modifier, initialText: String = "", hint: String = "", textStyle: TextStyle = UI.typo.b1.style( color = UI.colors.pureInverse, textAlign = TextAlign.Start ), hintStyle: TextStyle = UI.typo.b1.style( color = Color.Gray, textAlign = TextAlign.Start ), inputType: IvyInputType = IvyInputType.SHORT_TEXT, imeAction: IvyImeAction = IvyImeAction.DONE, onImeActionListener: ((EditText) -> Unit)? = null, cursorColor: Color = UI.colors.pureInverse, highlightColor: Color = if (UI.colors.isLight) Purple1Light else Purple1Dark, focus: InputFieldFocus? = null, onTextChanged: (String) -> Unit ) + LongParameterList:ItemIcon.kt$( modifier: Modifier = Modifier, iconName: String?, size: String, tint: Color = UI.colors.pureInverse, iconContentScale: ContentScale? = null, Default: (@Composable () -> Unit)? = null ) + LongParameterList:ItemStatisticScreen.kt$( history: List<TransactionHistoryItem>, currency: String, baseCurrency: String, itemColor: Color, account: Account?, category: Category?, balance: Double, balanceBaseCurrency: Double?, income: Double, expenses: Double, treatTransfersAsIncomeExpense: Boolean = false, onEdit: () -> Unit, onDelete: () -> Unit, onBalanceClick: () -> Unit, showCategoryModal: () -> Unit, showAccountModal: () -> Unit, ) + LongParameterList:ItemStatisticScreen.kt$( history: List<TransactionHistoryItem>, currency: String, income: Double, expenses: Double, hasAddButtons: Boolean, itemColor: Color, incomeHeaderCardClicked: () -> Unit = {}, expenseHeaderCardClicked: () -> Unit = {}, onAddTransaction: (TransactionType) -> Unit = {}, ) + LongParameterList:ItemStatisticScreen.kt$( itemColor: Color, contrastColor: Color, account: Account?, category: Category?, showCategoryModal: () -> Unit, showAccountModal: () -> Unit, ) + LongParameterList:ItemStatisticScreen.kt$( period: TimePeriod, baseCurrency: String, currency: String, account: Account?, category: Category?, categories: List<Category>, accounts: List<Account>, balance: Double, balanceBaseCurrency: Double?, income: Double, expenses: Double, initWithTransactions: Boolean = false, treatTransfersAsIncomeExpense: Boolean = false, history: List<TransactionHistoryItem>, upcomingExpanded: Boolean = true, setUpcomingExpanded: (Boolean) -> Unit = {}, upcomingIncome: Double = 0.0, upcomingExpenses: Double = 0.0, upcoming: List<Transaction> = emptyList(), overdueExpanded: Boolean = true, setOverdueExpanded: (Boolean) -> Unit = {}, overdueIncome: Double = 0.0, overdueExpenses: Double = 0.0, overdue: List<Transaction> = emptyList(), onPreviousMonth: () -> Unit, onNextMonth: () -> Unit, onSetPeriod: (TimePeriod) -> Unit, onEditAccount: (Account, Double) -> Unit, onEditCategory: (Category) -> Unit, onDelete: () -> Unit, onPayOrGet: (Transaction) -> Unit = {}, onSkipTransaction: (Transaction) -> Unit = {}, onSkipAllTransactions: (List<Transaction>) -> Unit = {} ) + LongParameterList:ItemStatisticScreen.kt$( title: String, currencyCode: String, amount: Double, transactionCount: Int, isIncome: Boolean, addButtonText: String?, itemColor: Color, onHeaderCardClicked: () -> Unit = {}, onAddClick: () -> Unit ) + LongParameterList:ItemStatisticViewModel.kt$ItemStatisticViewModel$( private val walletDAOs: WalletDAOs, private val accountDao: AccountDao, private val exchangeRateDao: ExchangeRateDao, private val transactionDao: TransactionDao, private val categoryDao: CategoryDao, private val settingsDao: SettingsDao, private val ivyContext: IvyWalletCtx, private val nav: Navigation, private val categoryUploader: CategoryUploader, private val accountUploader: AccountUploader, private val accountLogic: WalletAccountLogic, private val categoryLogic: WalletCategoryLogic, private val plannedPaymentRuleDao: PlannedPaymentRuleDao, private val categoryCreator: CategoryCreator, private val accountCreator: AccountCreator, private val plannedPaymentsLogic: PlannedPaymentsLogic, private val exchangeRatesLogic: ExchangeRatesLogic, private val sharedPrefs: SharedPrefs, private val categoriesAct: CategoriesAct, private val accountsAct: AccountsAct, private val accTrnsAct: AccTrnsAct, private val trnsWithDateDivsAct: TrnsWithDateDivsAct, private val baseCurrencyAct: BaseCurrencyAct, private val calcAccBalanceAct: CalcAccBalanceAct, private val calcAccIncomeExpenseAct: CalcAccIncomeExpenseAct, private val calcTrnsIncomeExpenseAct: CalcTrnsIncomeExpenseAct, private val exchangeAct: ExchangeAct ) + LongParameterList:IvyBasicTextField.kt$( modifier: Modifier = Modifier, value: TextFieldValue, textColor: Color = UI.colors.pureInverse, hint: String?, visualTransformation: VisualTransformation = VisualTransformation.None, keyboardOptions: KeyboardOptions = KeyboardOptions( autoCorrect = true, keyboardType = KeyboardType.Text, imeAction = ImeAction.Done, capitalization = KeyboardCapitalization.Sentences ), keyboardActions: KeyboardActions? = null, onValueChanged: (TextFieldValue) -> Unit ) + LongParameterList:IvyBorderButton.kt$( modifier: Modifier = Modifier, text: String, textStyle: TextStyle = UI.typo.b2.style( color = UI.colors.pureInverse, fontWeight = FontWeight.Bold ), backgroundGradient: Gradient = Gradient.solid(UI.colors.mediumInverse), @DrawableRes iconStart: Int? = null, @DrawableRes iconEnd: Int? = null, iconTint: Color = UI.colors.pureInverse, enabled: Boolean = true, wrapContentMode: Boolean = true, padding: Dp = 12.dp, onClick: () -> Unit ) + LongParameterList:IvyButton.kt$( modifier: Modifier = Modifier, text: String, backgroundGradient: Gradient = GradientIvy, textStyle: TextStyle = UI.typo.b2.style( color = White, fontWeight = FontWeight.Bold ), @DrawableRes iconStart: Int? = null, @DrawableRes iconEnd: Int? = null, iconTint: Color = White, enabled: Boolean = true, shadowAlpha: Float = 0.15f, wrapContentMode: Boolean = true, hasGlow: Boolean = true, padding: Dp = 12.dp, iconEdgePadding: Dp = 12.dp, iconTextPadding: Dp = 4.dp, onClick: () -> Unit ) + LongParameterList:IvyChecklistTextField.kt$( modifier: Modifier = Modifier, textModifier: Modifier = Modifier, value: TextFieldValue, hint: String?, readOnly: Boolean = false, fontWeight: FontWeight = FontWeight.Medium, hintFontWeight: FontWeight = FontWeight.Medium, textColor: Color = UI.colors.pureInverse, hintColor: Color = UI.colors.mediumInverse, textAlign: TextAlign = TextAlign.Start, visualTransformation: VisualTransformation = VisualTransformation.None, keyboardOptions: KeyboardOptions? = KeyboardOptions.Default, keyboardActions: KeyboardActions? = KeyboardActions.Default, paddingVertical: Dp = 16.dp, onValueChanged: (TextFieldValue) -> Unit ) + LongParameterList:IvyCircleButton.kt$( modifier: Modifier = Modifier, backgroundPadding: Dp = 0.dp, backgroundGradient: Gradient = GradientIvy, horizontalGradient: Boolean = true, @DrawableRes icon: Int, tint: Color = White, enabled: Boolean = true, hasShadow: Boolean = true, onClick: () -> Unit ) + LongParameterList:IvyDescriptionTextField.kt$( modifier: Modifier = Modifier, textModifier: Modifier = Modifier, testTag: String = "desc_input", value: TextFieldValue, hint: String?, fontWeight: FontWeight = FontWeight.Medium, textColor: Color = UI.colors.pureInverse, hintColor: Color = UI.colors.mediumInverse, visualTransformation: VisualTransformation = VisualTransformation.None, keyboardOptions: KeyboardOptions? = KeyboardOptions.Default, keyboardActions: KeyboardActions? = KeyboardActions.Default, onValueChanged: (TextFieldValue) -> Unit ) + LongParameterList:IvyIcon.kt$( modifier: Modifier = Modifier, @DrawableRes icon: Int, tint: Color = UI.colors.pureInverse, iconScale: IconScale, padding: Dp = when (iconScale) { IconScale.S -> 4.dp IconScale.M -> 4.dp IconScale.L -> 4.dp }, contentDescription: String = "icon" ) + LongParameterList:IvyLineChart.kt$( cellSize: Float, offsetLeft: Float, offsetRight: Float, lineDistance: Float, chartHeight: Float, allValues: List<Value>, xLabel: (x: Double) -> String, textColor: Color ) + LongParameterList:IvyLineChart.kt$( chartWidth: Float, lineDistance: Float, chartHeight: Float, offsetLeft: Float = 0f, offsetTop: Float = 0f, offsetBottom: Float = 0f, cellSize: Float, maxY: Double, minY: Double, functions: List<Function>, ) + LongParameterList:IvyLineChart.kt$( function: Function, functionIndex: Int, minY: Double, maxY: Double, chartHeight: Float, cellSize: Float, lineDistance: Float, lineWidth: Float, offsetLeft: Float, offsetTop: Float, offsetBottom: Float, ) + LongParameterList:IvyLineChart.kt$( functions: List<Function>, tapEvent: TapEvent?, chartWidth: Float, chartHeight: Float, minY: Double, maxY: Double ) + LongParameterList:IvyLineChart.kt$( max: Double, min: Double, value: Double, chartHeight: Float, offsetTop: Float, offsetBottom: Float ) + LongParameterList:IvyLineChart.kt$( minY: Double, maxY: Double, offsetTop: Float, chartHeight: Float, offsetBottom: Float, yLabel: (y: Double) -> String, cellSize: Float ) + LongParameterList:IvyLineChart.kt$( modifier: Modifier = Modifier, height: Dp = 300.dp, functions: List<Function>, title: String, xLabel: (x: Double) -> String, yLabel: (y: Double) -> String, onTap: (TapEvent) -> Unit = {} ) + LongParameterList:IvyLineChart.kt$( modifier: Modifier, title: String, allValues: List<Value>, xLabel: (x: Double) -> String, yLabel: (y: Double) -> String, maxY: Double, minY: Double, functions: List<Function>, tapEvent: TapEvent?, onTap: (TapEvent) -> Unit ) + LongParameterList:IvyModal.kt$( id: UUID?, visible: Boolean, dismiss: () -> Unit, SecondaryActions: (@Composable () -> Unit)? = null, PrimaryAction: @Composable () -> Unit, scrollState: ScrollState? = rememberScrollState(), shiftIfKeyboardShown: Boolean = true, includeActionsRowPadding: Boolean = true, Content: @Composable ColumnScope.() -> Unit ) + LongParameterList:IvyModal.kt$( visible: Boolean, modalPercentVisible: Float, keyboardShownInsetDp: Dp, navBarPadding: Dp, onHeightChanged: (Int) -> Unit, onClose: () -> Unit, SecondaryActions: (@Composable () -> Unit)? = null, PrimaryAction: @Composable () -> Unit ) + LongParameterList:IvyModalComponents.kt$( initialEmpty: Boolean, initialChanged: Boolean, testTagSave: String = "tag_save", testTagDelete: String = "tag_delete", onDelete: () -> Unit, dismiss: () -> Unit, onSave: () -> Unit ) + LongParameterList:IvyModalDomainComponents.kt$( label: String, currency: String, amount: Double, Header: (@Composable () -> Unit)? = null, amountPaddingTop: Dp = 48.dp, amountPaddingBottom: Dp = 48.dp, showAmountModal: () -> Unit, ) + LongParameterList:IvyNameTextFieldValue.kt$( modifier: Modifier = Modifier, underlineModifier: Modifier = Modifier, value: TextFieldValue, textColor: Color = UI.colors.pureInverse, hint: String?, visualTransformation: VisualTransformation = VisualTransformation.None, keyboardOptions: KeyboardOptions = KeyboardOptions( autoCorrect = true, keyboardType = KeyboardType.Text, imeAction = ImeAction.Done, capitalization = KeyboardCapitalization.Sentences ), keyboardActions: KeyboardActions? = null, onValueChanged: (TextFieldValue) -> Unit ) + LongParameterList:IvyNumberTextField.kt$( modifier: Modifier = Modifier, textModifier: Modifier = Modifier, value: TextFieldValue, hint: String?, fontWeight: FontWeight = FontWeight.ExtraBold, textColor: Color = UI.colors.pureInverse, hintColor: Color = Color.Gray, visualTransformation: VisualTransformation = VisualTransformation.None, keyboardOptions: KeyboardOptions? = null, keyboardActions: KeyboardActions? = null, onValueChanged: (TextFieldValue) -> Unit ) + LongParameterList:IvyOutlinedButton.kt$( modifier: Modifier = Modifier, text: String, @DrawableRes iconStart: Int?, solidBackground: Boolean = false, iconTint: Color = UI.colors.pureInverse, borderColor: Color = UI.colors.medium, textColor: Color = UI.colors.pureInverse, padding: Dp = 12.dp, onClick: () -> Unit, ) + LongParameterList:IvyOutlinedButton.kt$( modifier: Modifier = Modifier, text: String, @DrawableRes iconStart: Int?, solidBackground: Boolean = false, iconTint: Color = UI.colors.pureInverse, borderColor: Color = UI.colors.medium, textColor: Color = UI.colors.pureInverse, padding: Dp = 16.dp, onClick: () -> Unit, ) + LongParameterList:IvyOutlinedTextField.kt$( modifier: Modifier = Modifier, value: TextFieldValue, hint: String?, hintColor: Color = UI.colors.gray, backgroundColor: Color = UI.colors.primary, emptyBorderColor: Color = UI.colors.gray, textColor: Color = UI.colors.pureInverse, cursorColor: Color = UI.colors.pureInverse, visualTransformation: VisualTransformation = VisualTransformation.None, keyboardOptions: KeyboardOptions = KeyboardOptions.Default, keyboardActions: KeyboardActions = KeyboardActions.Default, validateInput: (TextFieldValue) -> Boolean = { it.text.isNotNullOrBlank() }, onValueChanged: (TextFieldValue) -> Unit ) + LongParameterList:IvySync.kt$IvySync$( private val accountSync: AccountSync, private val categorySync: CategorySync, private val budgetSync: BudgetSync, private val transactionSync: TransactionSync, private val plannedPaymentSync: PlannedPaymentSync, private val loanSync: LoanSync, private val loanRecordSync: LoanRecordSync, private val ivySession: IvySession ) + LongParameterList:IvyTitleTextField.kt$( modifier: Modifier = Modifier, dividerModifier: Modifier = Modifier, value: TextFieldValue, textColor: Color = UI.colors.pureInverse, hint: String?, visualTransformation: VisualTransformation = VisualTransformation.None, keyboardOptions: KeyboardOptions = KeyboardOptions( autoCorrect = true, keyboardType = KeyboardType.Text, imeAction = ImeAction.Done, capitalization = KeyboardCapitalization.Sentences ), keyboardActions: KeyboardActions? = null, onValueChanged: (TextFieldValue) -> Unit ) + LongParameterList:LoanDetailsScreen.kt$( baseCurrency: String, loan: Loan?, displayLoanRecords: List<DisplayLoanRecord> = emptyList(), amountPaid: Double, loanAmountPaid: Double = 0.0, accounts: List<Account> = emptyList(), selectedLoanAccount: Account? = null, createLoanTransaction: Boolean = false, onCreateAccount: (CreateAccountData) -> Unit = {}, onEditLoan: (Loan, Boolean) -> Unit = { _, _ -> }, onCreateLoanRecord: (CreateLoanRecordData) -> Unit = {}, onEditLoanRecord: (EditLoanRecordData) -> Unit = {}, onDeleteLoanRecord: (LoanRecord) -> Unit = {}, onDeleteLoan: () -> Unit = {}, ) + LongParameterList:LoanDetailsScreen.kt$( loan: Loan, baseCurrency: String, amountPaid: Double, loanAmountPaid: Double = 0.0, itemColor: Color, selectedLoanAccount: Account? = null, onAmountClick: () -> Unit, onEditLoan: () -> Unit, onDeleteLoan: () -> Unit, onAddRecord: () -> Unit ) + LongParameterList:LoanDetailsScreen.kt$( loan: Loan, baseCurrency: String, amountPaid: Double, loanAmountPaid: Double = 0.0, selectedLoanAccount: Account? = null, onAddRecord: () -> Unit ) + LongParameterList:LoanDetailsScreen.kt$( loan: Loan, loanRecord: LoanRecord, baseCurrency: String, loanBaseCurrency: String = "", account: Account? = null, onClick: () -> Unit ) + LongParameterList:LoanDetailsViewModel.kt$LoanDetailsViewModel$( private val loanDao: LoanDao, private val loanRecordDao: LoanRecordDao, private val loanCreator: LoanCreator, private val loanRecordCreator: LoanRecordCreator, private val settingsDao: SettingsDao, private val ivyContext: IvyWalletCtx, private val transactionDao: TransactionDao, private val accountDao: AccountDao, private val accountCreator: AccountCreator, private val loanTransactionsLogic: LoanTransactionsLogic, private val nav: Navigation, private val accountsAct: AccountsAct, private val loanByIdAct: LoanByIdAct ) + LongParameterList:LoanModal.kt$( accounts: List<Account> = emptyList(), onCreateAccount: (CreateAccountData) -> Unit = {}, modal: LoanModalData?, onCreateLoan: (CreateLoanData) -> Unit, onEditLoan: (Loan, Boolean) -> Unit, onPerformCalculations: () -> Unit = {}, dismiss: () -> Unit, ) + LongParameterList:LoanModal.kt$( loan: Loan?, nameTextFieldValue: TextFieldValue, type: LoanType, color: Color, icon: String?, amount: Double, selectedAccount: Account? = null, createLoanTransaction: Boolean = false, onCreateLoan: (CreateLoanData) -> Unit, onEditLoan: (Loan, Boolean) -> Unit, dismiss: () -> Unit ) + LongParameterList:LoanModal.kt$( modifier: Modifier = Modifier, accounts: List<Account>, selectedAccount: Account?, childrenTestTag: String? = null, onSelectedAccountChanged: (Account) -> Unit, onAddNewAccount: () -> Unit ) + LongParameterList:LoanRecordModal.kt$( loanRecord: LoanRecord?, noteTextFieldValue: TextFieldValue, amount: Double, dateTime: LocalDateTime, loanRecordInterest: Boolean = false, createLoanRecordTransaction: Boolean = false, selectedAccount: Account? = null, reCalculateAmount: Boolean = false, onCreate: (CreateLoanRecordData) -> Unit, onEdit: (EditLoanRecordData) -> Unit, dismiss: () -> Unit ) + LongParameterList:LoanRecordModal.kt$( modal: LoanRecordModalData?, accounts: List<Account> = emptyList(), onCreateAccount: (CreateAccountData) -> Unit = {}, onCreate: (CreateLoanRecordData) -> Unit, onEdit: (EditLoanRecordData) -> Unit, onDelete: (LoanRecord) -> Unit, dismiss: () -> Unit ) + LongParameterList:LoanRecordModal.kt$( modifier: Modifier = Modifier, accounts: List<Account>, selectedAccount: Account?, childrenTestTag: String? = null, onSelectedAccountChanged: (Account) -> Unit, onAddNewAccount: () -> Unit ) + LongParameterList:LoanTransactionsCore.kt$LoanTransactionsCore$( createTransaction: Boolean, loanRecordId: UUID? = null, loanId: UUID, amount: Double, loanType: LoanType, selectedAccountId: UUID?, title: String? = null, category: Category? = null, time: LocalDateTime? = null, isLoanRecord: Boolean = false, transaction: Transaction? = null, ) + LongParameterList:LoanTransactionsCore.kt$LoanTransactionsCore$( loanRecordId: UUID? = null, amount: Double, loanType: LoanType, loanId: UUID, selectedAccountId: UUID?, title: String? = null, categoryId: UUID? = null, time: LocalDateTime = timeNowUTC(), isLoanRecord: Boolean = false, transaction: Transaction? = null ) + LongParameterList:LoanTransactionsCore.kt$LoanTransactionsCore$( oldLoanRecordAccountId: UUID?, oldLonRecordConvertedAmount: Double?, oldLoanRecordAmount: Double, newLoanRecordAccountID: UUID?, newLoanRecordAmount: Double, loanAccountId: UUID?, accounts: List<Account>, reCalculateLoanAmount: Boolean = false, ) + LongParameterList:LoanTransactionsCore.kt$LoanTransactionsCore$( private val categoryDao: CategoryDao, private val transactionUploader: TransactionUploader, private val transactionDao: TransactionDao, private val ivyContext: IvyWalletCtx, private val loanRecordDao: LoanRecordDao, private val loanDao: LoanDao, private val settingsDao: SettingsDao, private val accountsDao: AccountDao, private val exchangeRatesLogic: ExchangeRatesLogic ) + LongParameterList:LoanViewModel.kt$LoanViewModel$( private val loanDao: LoanDao, private val loanRecordDao: LoanRecordDao, private val settingsDao: SettingsDao, private val loanSync: LoanSync, private val loanCreator: LoanCreator, private val sharedPrefs: SharedPrefs, private val accountDao: AccountDao, private val accountCreator: AccountCreator, private val loanTransactionsLogic: LoanTransactionsLogic, private val loansAct: LoansAct, private val accountsAct: AccountsAct, private val categoriesAct: CategoriesAct ) + LongParameterList:MainBottomBar.kt$( buttonsShownPercent: Float, fabStartX: Float, fabStartY: Float, buttonCenterY: Float, clickAreaWidth: Int, onAddExpense: () -> Unit ) + LongParameterList:MainBottomBar.kt$( buttonsShownPercent: Float, fabStartX: Float, fabStartY: Float, buttonLeftX: Float, sideButtonsY: Float, clickAreaWidth: Int, onAddIncome: () -> Unit ) + LongParameterList:MainBottomBar.kt$( buttonsShownPercent: Float, fabStartX: Float, fabStartY: Float, buttonRightX: Float, sideButtonsY: Float, clickAreaWidth: Int, onAddTransfer: () -> Unit ) + LongParameterList:MainBottomBar.kt$( buttonsShownPercent: Float, fabStartX: Float, fabStartY: Float, onAddIncome: () -> Unit, onAddExpense: () -> Unit, onAddTransfer: () -> Unit, onAddPlannedPayment: () -> Unit, ) + LongParameterList:MainBottomBar.kt$( tab: MainTab, selectTab: (MainTab) -> Unit, onAddIncome: () -> Unit, onAddExpense: () -> Unit, onAddTransfer: () -> Unit, onAddPlannedPayment: () -> Unit, showAddAccountModal: () -> Unit, ) + LongParameterList:MainViewModel.kt$MainViewModel$( private val settingsDao: SettingsDao, private val ivyContext: IvyWalletCtx, private val nav: Navigation, private val ivySync: IvySync, private val exchangeRatesLogic: ExchangeRatesLogic, private val syncExchangeRatesAct: SyncExchangeRatesAct, private val accountCreator: AccountCreator, private val sharedPrefs: SharedPrefs, ) + LongParameterList:OnboardingAccounts.kt$( baseCurrency: String, suggestions: List<CreateAccountData>, accounts: List<AccountBalance>, onCreateAccount: (CreateAccountData) -> Unit = { }, onEditAccount: (Account, Double) -> Unit = { _, _ -> }, onSkip: () -> Unit = {}, onDone: () -> Unit = {} ) + LongParameterList:OnboardingCategories.kt$( suggestions: List<CreateCategoryData>, categories: List<Category>, onCreateCategory: (CreateCategoryData) -> Unit = { }, onEditCategory: (Category) -> Unit = { _ -> }, onSkip: () -> Unit = {}, onDone: () -> Unit = {} ) + LongParameterList:OnboardingComponents.kt$( modifier: Modifier = Modifier, text: String, textColor: Color, backgroundGradient: Gradient, @DrawableRes iconStart: Int? = null, hasNext: Boolean = false, enabled: Boolean = true, onClick: () -> Unit ) + LongParameterList:OnboardingRouter.kt$OnboardingRouter$( private val _opGoogleSignIn: MutableLiveData<OpResult<Unit>?>, private val _state: MutableLiveData<OnboardingState>, private val _accounts: MutableLiveData<List<AccountBalance>>, private val _accountSuggestions: MutableLiveData<List<CreateAccountData>>, private val _categories: MutableLiveData<List<Category>>, private val _categorySuggestions: MutableLiveData<List<CreateCategoryData>>, private val ivyContext: IvyWalletCtx, private val nav: Navigation, private val ivyAnalytics: IvyAnalytics, private val exchangeRatesLogic: ExchangeRatesLogic, private val accountDao: AccountDao, private val sharedPrefs: SharedPrefs, private val transactionReminderLogic: TransactionReminderLogic, private val ivySync: IvySync, private val preloadDataLogic: PreloadDataLogic, private val categoryDao: CategoryDao, private val logoutLogic: LogoutLogic, private val syncExchangeRatesAct: SyncExchangeRatesAct, ) + LongParameterList:OnboardingScreen.kt$( onboardingState: OnboardingState, currency: IvyCurrency, opGoogleSignIn: OpResult<Unit>?, accountSuggestions: List<CreateAccountData>, accounts: List<AccountBalance>, categorySuggestions: List<CreateCategoryData>, categories: List<Category>, onLoginWithGoogle: () -> Unit = {}, onSkip: () -> Unit = {}, onStartImport: () -> Unit = {}, onStartFresh: () -> Unit = {}, onSetCurrency: (IvyCurrency) -> Unit = {}, onCreateAccount: (CreateAccountData) -> Unit = { }, onEditAccount: (Account, Double) -> Unit = { _, _ -> }, onAddAccountsDone: () -> Unit = {}, onAddAccountsSkip: () -> Unit = {}, onCreateCategory: (CreateCategoryData) -> Unit = {}, onEditCategory: (Category) -> Unit = {}, onAddCategoryDone: () -> Unit = {}, onAddCategorySkip: () -> Unit = {}, ) + LongParameterList:OnboardingSplashLogin.kt$( @DrawableRes icon: Int, text: String, textColor: Color, backgroundGradient: Gradient, hasShadow: Boolean, onClick: () -> Unit ) + LongParameterList:OnboardingViewModel.kt$OnboardingViewModel$( private val ivyContext: IvyWalletCtx, private val nav: Navigation, private val accountDao: AccountDao, private val settingsDao: SettingsDao, private val restClient: RestClient, private val session: IvySession, private val accountLogic: WalletAccountLogic, private val categoryCreator: CategoryCreator, private val categoryDao: CategoryDao, private val accountCreator: AccountCreator, private val accountsAct: AccountsAct, private val categoriesAct: CategoriesAct, private val syncExchangeRatesAct: SyncExchangeRatesAct, //Only OnboardingRouter stuff sharedPrefs: SharedPrefs, ivySync: IvySync, ivyAnalytics: IvyAnalytics, transactionReminderLogic: TransactionReminderLogic, preloadDataLogic: PreloadDataLogic, exchangeRatesLogic: ExchangeRatesLogic, logoutLogic: LogoutLogic, ) + LongParameterList:PaywallLogic.kt$PaywallLogic$( private val ivyBilling: IvyBilling, private val ivyContext: IvyWalletCtx, private val navigation: Navigation, private val accountDao: AccountDao, private val categoryDao: CategoryDao, private val budgetDao: BudgetDao, private val loanDao: LoanDao ) + LongParameterList:PaywallScreen.kt$( plans: List<Plan>, purchasedSkus: List<String>, paywallReason: PaywallReason?, accounts: List<Account>, categories: List<Category>, budgets: List<Budget>, loans: List<Loan>, onPlanSelected: (Plan?) -> Unit = {}, onBuy: (Plan) -> Unit, ) + LongParameterList:PaywallViewModel.kt$PaywallViewModel$( private val ivyBilling: IvyBilling, private val paywallLogic: PaywallLogic, private val ivyAnalytics: IvyAnalytics, private val categoriesAct: CategoriesAct, private val accountsAct: AccountsAct, private val budgetsAct: BudgetsAct, private val loansAct: LoansAct ) + LongParameterList:PieChartAct.kt$PieChartAct$( showAccountTransfersCategory: Boolean, type: TransactionType, accountTransfersCategory: Category, accountIdFilterSet: Set<UUID>, @SideEffect transactions: suspend () -> List<Transaction>, @SideEffect incomeExpenseTransfer: suspend () -> IncomeExpenseTransferPair, @SideEffect categoryAmounts: suspend () -> List<CategoryAmount> ) + LongParameterList:PieChartAct.kt$PieChartAct$( type: TransactionType, baseCurrency: String, addAssociatedTransToCategoryAmt: Boolean = false, @SideEffect allCategories: suspend () -> List<Category?>, @SideEffect transactions: suspend () -> List<Transaction>, @SideEffect accountsUsed: suspend () -> List<Account>, ) + LongParameterList:PieChartStatisticScreen.kt$( transactionType: TransactionType, period: TimePeriod, percentExpanded: Float, currency: String, amount: Double, showCloseButtonOnly: Boolean = false, onShowMonthModal: () -> Unit, onSelectNextMonth: () -> Unit, onSelectPreviousMonth: () -> Unit, onClose: () -> Unit, onAdd: (TransactionType) -> Unit, ) + LongParameterList:PieChartStatisticViewModel.kt$PieChartStatisticViewModel$( period: TimePeriod, type: TransactionType, accountIdFilterList: List<UUID>, filterExclude: Boolean, transactions: List<Transaction>, treatTransfersAsIncomeExpense: Boolean ) + LongParameterList:PlannedPaymentsLazyColumn.kt$( Header: @Composable () -> Unit, currency: String, categories: List<Category>, accounts: List<Account>, listState: LazyListState = rememberLazyListState(), oneTime: List<PlannedPaymentRule>, oneTimeIncome: Double, oneTimeExpenses: Double, recurring: List<PlannedPaymentRule>, recurringIncome: Double, recurringExpenses: Double, ) + LongParameterList:PlannedPaymentsLazyColumn.kt$( nav: Navigation, currency: String, categories: List<Category>, accounts: List<Account>, listState: LazyListState, oneTime: List<PlannedPaymentRule>, oneTimeIncome: Double, oneTimeExpenses: Double, oneTimeExpanded: Boolean, setOneTimeExpanded: (Boolean) -> Unit, recurring: List<PlannedPaymentRule>, recurringIncome: Double, recurringExpenses: Double, recurringExpanded: Boolean, setRecurringExpanded: (Boolean) -> Unit ) + LongParameterList:PlannedPaymentsLogic.kt$PlannedPaymentsLogic$( private val plannedPaymentRuleDao: PlannedPaymentRuleDao, private val transactionDao: TransactionDao, private val transactionUploader: TransactionUploader, private val settingsDao: SettingsDao, private val exchangeRatesLogic: ExchangeRatesLogic, private val accountDao: AccountDao, private val plannedPaymentRuleUploader: PlannedPaymentRuleUploader ) + LongParameterList:PlannedPaymentsScreen.kt$( currency: String, categories: List<Category>, accounts: List<Account>, oneTime: List<PlannedPaymentRule>, oneTimeIncome: Double, oneTimeExpenses: Double, recurring: List<PlannedPaymentRule>, recurringIncome: Double, recurringExpenses: Double ) + LongParameterList:ProgressModal.kt$( id: UUID = UUID.randomUUID(), title: String, description: String, visible: Boolean, color: Color = UI.colors.orange, dismiss: () -> Unit = {}, ) + LongParameterList:RecurringRuleModal.kt$( startDate: LocalDateTime, intervalN: Int, intervalType: IntervalType, modalScrollState: ScrollState, onSetStartDate: (LocalDateTime) -> Unit, onSetIntervalN: (Int) -> Unit, onSetIntervalType: (IntervalType) -> Unit ) + LongParameterList:ReorderModal.kt$( visible: Boolean, id: UUID = UUID.randomUUID(), TitleContent: @Composable ColumnScope.() -> Unit = { Text( modifier = Modifier.padding(start = 32.dp), text = stringResource(R.string.reorder), style = UI.typo.b1.style( UI.colors.pureInverse, FontWeight.ExtraBold ) ) }, initialItems: List<Any>, dismiss: () -> Unit, onUpdateItemOrderNum: ( itemsInNewOrder: List<Any>, item: T, newOrderNum: Double ) -> Unit = { _, _, _ -> }, onReordered: ((List<Any>) -> Unit)? = null, ItemContent: @Composable RowScope.(Int, Any) -> Unit ) + LongParameterList:ReorderModal.kt$( visible: Boolean, id: UUID = UUID.randomUUID(), TitleContent: @Composable ColumnScope.() -> Unit = { Text( modifier = Modifier.padding(start = 32.dp), text = stringResource(R.string.reorder), style = UI.typo.b1.style( UI.colors.pureInverse, FontWeight.ExtraBold ) ) }, initialItems: List<T>, dismiss: () -> Unit, onUpdateItemOrderNum: (item: T, newOrderNum: Double) -> Unit = { _, _ -> }, onReordered: ((List<T>) -> Unit)? = null, ItemContent: @Composable (Int, T) -> Unit ) + LongParameterList:ReportViewModel.kt$ReportViewModel$( private val plannedPaymentsLogic: PlannedPaymentsLogic, private val settingsDao: SettingsDao, private val transactionDao: TransactionDao, private val ivyContext: IvyWalletCtx, private val nav: Navigation, private val exportCSVLogic: ExportCSVLogic, private val exchangeAct: ExchangeAct, private val accountsAct: AccountsAct, private val categoriesAct: CategoriesAct, private val trnsWithDateDivsAct: TrnsWithDateDivsAct, private val calcTrnsIncomeExpenseAct: CalcTrnsIncomeExpenseAct, private val baseCurrencyAct: BaseCurrencyAct ) + LongParameterList:RootViewModel.kt$RootViewModel$( private val ivyContext: IvyWalletCtx, private val nav: Navigation, private val ivyAnalytics: IvyAnalytics, private val settingsDao: SettingsDao, private val sharedPrefs: SharedPrefs, private val ivySession: IvySession, private val ivyBilling: IvyBilling, private val paywallLogic: PaywallLogic, private val transactionReminderLogic: TransactionReminderLogic, private val migrationsManager: MigrationsManager, ) + LongParameterList:SettingsScreen.kt$( @DrawableRes icon: Int, text: String, hasShadow: Boolean = false, backgroundGradient: Gradient = Gradient.solid(UI.colors.medium), textColor: Color = White, iconPadding: Dp = 0.dp, onClick: () -> Unit ) + LongParameterList:SettingsScreen.kt$( user: User?, currencyCode: String, opSync: OpResult<Boolean>?, lockApp: Boolean, showNotifications: Boolean = true, hideCurrentBalance: Boolean = false, progressState: Boolean = false, treatTransfersAsIncomeExpense: Boolean = false, nameLocalAccount: String?, startDateOfMonth: Int = 1, onSetCurrency: (String) -> Unit, onSetName: (String) -> Unit = {}, onSync: () -> Unit, onLogout: () -> Unit, onLogin: () -> Unit, onBackupData: () -> Unit = {}, onExportToCSV: () -> Unit = {}, onSetLockApp: (Boolean) -> Unit = {}, onSetShowNotifications: (Boolean) -> Unit = {}, onSetTreatTransfersAsIncExp: (Boolean) -> Unit = {}, onSetHideCurrentBalance: (Boolean) -> Unit = {}, onSetStartDateOfMonth: (Int) -> Unit = {}, onDeleteAllUserData: () -> Unit = {}, onDeleteCloudUserData: () -> Unit = {}, ) + LongParameterList:SettingsScreen.kt$( user: User?, opSync: OpResult<Boolean>?, nameLocalAccount: String?, onSync: () -> Unit, onLogout: () -> Unit, onLogin: () -> Unit, onCardClick: () -> Unit ) + LongParameterList:SettingsViewModel.kt$SettingsViewModel$( private val settingsDao: SettingsDao, private val ivySession: IvySession, private val userDao: UserDao, private val ivyContext: IvyWalletCtx, private val ivySync: IvySync, private val exportCSVLogic: ExportCSVLogic, private val restClient: RestClient, private val ivyAnalytics: IvyAnalytics, private val exchangeRatesLogic: ExchangeRatesLogic, private val logoutLogic: LogoutLogic, private val sharedPrefs: SharedPrefs, private val backupLogic: BackupLogic, private val startDayOfMonthAct: StartDayOfMonthAct, private val updateStartDayOfMonthAct: UpdateStartDayOfMonthAct, private val fetchAllTrnsFromServerAct: FetchAllTrnsFromServerAct, private val nav: Navigation, private val syncExchangeRatesAct: SyncExchangeRatesAct, ) + LongParameterList:Switch.kt$( modifier: Modifier = Modifier, enabled: Boolean, enabledColor: Color = UI.colors.green, disabledColor: Color = UI.colors.gray, animationColor: AnimationSpec<Color> = springBounce(), animationMove: AnimationSpec<Float> = springBounce(), onEnabledChange: (checked: Boolean) -> Unit ) + LongParameterList:Title.kt$( type: TransactionType, titleFocus: FocusRequester, initialTransactionId: UUID?, titleTextFieldValue: TextFieldValue, setTitleTextFieldValue: (TextFieldValue) -> Unit, suggestions: Set<String>, scrollState: ScrollState? = null, onTitleChanged: (String?) -> Unit, onNext: () -> Unit, ) + LongParameterList:TransactionSectionDivider.kt$( expanded: Boolean, title: String, titleColor: Color, baseCurrency: String, income: Double, expenses: Double, showIncomeExpenseRow: Boolean = true, setExpanded: (Boolean) -> Unit ) + LongParameterList:Transactions.kt$( baseData: AppBaseData, overdue: DueSection?, onPayOrGet: (Transaction) -> Unit, onSkipTransaction: (Transaction) -> Unit, onSkipAllTransactions: (List<Transaction>) -> Unit, setExpanded: (Boolean) -> Unit ) + LongParameterList:Transactions.kt$( baseData: AppBaseData, upcoming: DueSection?, overdue: DueSection?, history: List<TransactionHistoryItem>, emptyStateTitle: String = stringRes(R.string.no_transactions), emptyStateText: String, dateDividerMarginTop: Dp? = null, lastItemSpacer: Dp? = null, onPayOrGet: (Transaction) -> Unit, setUpcomingExpanded: (Boolean) -> Unit, setOverdueExpanded: (Boolean) -> Unit, onSkipTransaction: (Transaction) -> Unit = {}, onSkipAllTransactions: (List<Transaction>) -> Unit = {} ) + LongParameterList:WalletAccountLogic.kt$WalletAccountLogic$( account: Account, actualBalance: Double? = null, newBalance: Double, adjustTransactionTitle: String = "Adjust balance", isFiat: Boolean? = null, trnIsSyncedFlag: Boolean = false, //TODO: Remove this once Bank Integration trn sync is properly implemented ) + LoopWithTooManyJumpStatements:PieChart.kt$PieChartView$for + MagicNumber:AmountFormatting.kt$0.009 + MagicNumber:AmountFormatting.kt$9 + MagicNumber:AppModuleDI.kt$AppModuleDI.<no name provided>$50 + MagicNumber:BackBottomBar.kt$180f + MagicNumber:BackupLogic.kt$BackupLogic$0.05 + MagicNumber:BackupLogic.kt$BackupLogic$0.1 + MagicNumber:BackupLogic.kt$BackupLogic$0.4 + MagicNumber:BackupLogic.kt$BackupLogic$0.6 + MagicNumber:BackupLogic.kt$BackupLogic$0.7 + MagicNumber:BackupLogic.kt$BackupLogic$0.8 + MagicNumber:BackupLogic.kt$BackupLogic$0.9 + MagicNumber:BalanceScreen.kt$200f + MagicNumber:BalanceScreen.kt$45f + MagicNumber:BudgetBattery.kt$0.30 + MagicNumber:BudgetBattery.kt$0.50 + MagicNumber:BudgetBattery.kt$0.75 + MagicNumber:BufferBattery.kt$0.25 + MagicNumber:BufferBattery.kt$0.50 + MagicNumber:BufferBattery.kt$0.75 + MagicNumber:CSVImporter.kt$CSVImporter$0.5 + MagicNumber:CSVImporter.kt$CSVImporter$12 + MagicNumber:CSVImporterV2.kt$CSVImporterV2$0.5 + MagicNumber:CSVScreen.kt$10 + MagicNumber:CSVViewModel.kt$CSVViewModel$100 + MagicNumber:CSVViewModel.kt$CSVViewModel$3 + MagicNumber:ChartPeriod.kt$ChartPeriod$10 + MagicNumber:ChartPeriod.kt$ChartPeriod$7 + MagicNumber:ChartPeriod.kt$ChartPeriod$8 + MagicNumber:ChooseIconModal.kt$5 + MagicNumber:ChoosePeriodModal.kt$200 + MagicNumber:ChoosePeriodModal.kt$3 + MagicNumber:ChoosePeriodModal.kt$35 + MagicNumber:Colors.kt$0.1f + MagicNumber:Colors.kt$0.4f + MagicNumber:Colors.kt$0.5 + MagicNumber:Colors.kt$0.5f + MagicNumber:Colors.kt$0.6f + MagicNumber:Colors.kt$0.8f + MagicNumber:Colors.kt$0xFF0A664F + MagicNumber:Colors.kt$0xFF111114 + MagicNumber:Colors.kt$0xFF14CC9E + MagicNumber:Colors.kt$0xFF223D73 + MagicNumber:Colors.kt$0xFF22733D + MagicNumber:Colors.kt$0xFF227373 + MagicNumber:Colors.kt$0xFF266280 + MagicNumber:Colors.kt$0xFF2B2C2D + MagicNumber:Colors.kt$0xFF352680 + MagicNumber:Colors.kt$0xFF457BE6 + MagicNumber:Colors.kt$0xFF45E67B + MagicNumber:Colors.kt$0xFF45E6E6 + MagicNumber:Colors.kt$0xFF49F2C8 + MagicNumber:Colors.kt$0xFF4CC3FF + MagicNumber:Colors.kt$0xFF622680 + MagicNumber:Colors.kt$0xFF637317 + MagicNumber:Colors.kt$0xFF66371F + MagicNumber:Colors.kt$0xFF66804D + MagicNumber:Colors.kt$0xFF6B4DFF + MagicNumber:Colors.kt$0xFF734B17 + MagicNumber:Colors.kt$0xFF801919 + MagicNumber:Colors.kt$0xFF802030 + MagicNumber:Colors.kt$0xFF802653 + MagicNumber:Colors.kt$0xFF802680 + MagicNumber:Colors.kt$0xFF806226 + MagicNumber:Colors.kt$0xFF807719 + MagicNumber:Colors.kt$0xFF939199 + MagicNumber:Colors.kt$0xFF96E645 + MagicNumber:Colors.kt$0xFF99FFBB + MagicNumber:Colors.kt$0xFFAA99FF + MagicNumber:Colors.kt$0xFFAAF2E0 + MagicNumber:Colors.kt$0xFFB3E6FF + MagicNumber:Colors.kt$0xFFB3FFFF + MagicNumber:Colors.kt$0xFFC34CFF + MagicNumber:Colors.kt$0xFFC7E62E + MagicNumber:Colors.kt$0xFFCCDDFF + MagicNumber:Colors.kt$0xFFCCFF99 + MagicNumber:Colors.kt$0xFFD5CCFF + MagicNumber:Colors.kt$0xFFE62E2E + MagicNumber:Colors.kt$0xFFE67B45 + MagicNumber:Colors.kt$0xFFEECCFF + MagicNumber:Colors.kt$0xFFEEFF99 + MagicNumber:Colors.kt$0xFFEFEEF0 + MagicNumber:Colors.kt$0xFFF29F30 + MagicNumber:Colors.kt$0xFFF2CD9E + MagicNumber:Colors.kt$0xFFFAFAFA + MagicNumber:Colors.kt$0xFFFF4060 + MagicNumber:Colors.kt$0xFFFF4CA6 + MagicNumber:Colors.kt$0xFFFF4CFF + MagicNumber:Colors.kt$0xFFFF99AB + MagicNumber:Colors.kt$0xFFFFB3B3 + MagicNumber:Colors.kt$0xFFFFBFFF + MagicNumber:Colors.kt$0xFFFFC34C + MagicNumber:Colors.kt$0xFFFFCCB3 + MagicNumber:Colors.kt$0xFFFFCCD5 + MagicNumber:Colors.kt$0xFFFFCCE6 + MagicNumber:Colors.kt$0xFFFFDC99 + MagicNumber:Colors.kt$0xFFFFDEB3 + MagicNumber:Colors.kt$0xFFFFEE33 + MagicNumber:Colors.kt$0xFFFFF799 + MagicNumber:Colors.kt$3 + MagicNumber:CurrencyPicker.kt$20 + MagicNumber:CustomExchangeRateCard.kt$4 + MagicNumber:DataCircle.kt$100 + MagicNumber:DateExt.kt$10 + MagicNumber:DateExt.kt$23 + MagicNumber:DateExt.kt$30 + MagicNumber:DateExt.kt$59 + MagicNumber:DueDate.kt$5 + MagicNumber:EditBottomSheet.kt$0.01f + MagicNumber:EditBottomSheet.kt$16 + MagicNumber:EditBottomSheet.kt$18 + MagicNumber:EditBottomSheet.kt$20 + MagicNumber:EditBottomSheet.kt$20f + MagicNumber:EditBottomSheet.kt$30 + MagicNumber:EditBottomSheet.kt$4 + MagicNumber:EditBottomSheet.kt$40 + MagicNumber:EditBottomSheet.kt$8 + MagicNumber:EditBottomSheet.kt$8f + MagicNumber:EditTransactionScreen.kt$0.3f + MagicNumber:EditTransactionScreen.kt$12 + MagicNumber:ErrorCode.kt$ErrorCode.CATEGORY_NOT_FOUND$4041 + MagicNumber:ErrorCode.kt$ErrorCode.CUSTOM_FIELD_NOT_FOUND$4046 + MagicNumber:ErrorCode.kt$ErrorCode.EVENT_NOT_FOUND$4045 + MagicNumber:ErrorCode.kt$ErrorCode.LABEL_NOT_FOUND$4042 + MagicNumber:ErrorCode.kt$ErrorCode.NOTE_NOT_FOUND$4044 + MagicNumber:ErrorCode.kt$ErrorCode.NOT_IVY_ATTACHMENT$7404 + MagicNumber:ErrorCode.kt$ErrorCode.PARSE$2 + MagicNumber:ErrorCode.kt$ErrorCode.PERMISSION_ERROR$14 + MagicNumber:ErrorCode.kt$ErrorCode.SECURITY$13 + MagicNumber:ErrorCode.kt$ErrorCode.SERVER_EXCEPTION$666 + MagicNumber:ErrorCode.kt$ErrorCode.STATE_ERROR$7 + MagicNumber:ErrorCode.kt$ErrorCode.TASK_NOT_FOUND$4043 + MagicNumber:ErrorCode.kt$ErrorCode.UNKNOWN$666 + MagicNumber:ExchangeRatesScreen.kt$1.23 + MagicNumber:ExchangeRatesScreen.kt$1.85 + MagicNumber:ExchangeRatesScreen.kt$1.96 + MagicNumber:FilterOverlay.kt$0.01f + MagicNumber:FilterOverlay.kt$100f + MagicNumber:FilterOverlay.kt$200f + MagicNumber:FromToTimeRange.kt$FromToTimeRange$30 + MagicNumber:GitHubAutoBackupManager.kt$GitHubAutoBackupManager$30 + MagicNumber:GitHubAutoBackupManager.kt$GitHubAutoBackupManager$6 + MagicNumber:GitHubAutoBackupManager.kt$GitHubAutoBackupManager$60 + MagicNumber:GitHubBackupViewModel.kt$GitHubBackupViewModel$2_000L + MagicNumber:GitHubClient.kt$GitHubClient$403 + MagicNumber:GitHubClient.kt$GitHubClient$404 + MagicNumber:HomeHeader.kt$0.5f + MagicNumber:HomeMoreMenu.kt$0.01f + MagicNumber:HomeMoreMenu.kt$1.5f + MagicNumber:HomeMoreMenu.kt$500f + MagicNumber:HomeMoreMenu.kt$510f + MagicNumber:HomeMoreMenu.kt$520f + MagicNumber:HomeTab.kt$<no name provided>$150 + MagicNumber:HomeViewModel.kt$HomeViewModel$5000 + MagicNumber:ImportProcessing.kt$100 + MagicNumber:ImportResultUI.kt$100 + MagicNumber:ImportViewModel.kt$ImportViewModel$100 + MagicNumber:InputField.kt$100 + MagicNumber:IntervalPickerRow.kt$180f + MagicNumber:ItemStatisticScreen.kt$0.7f + MagicNumber:ItemStatisticScreen.kt$10L + MagicNumber:IvyBilling.kt$IvyBilling.<no name provided>$666 + MagicNumber:IvyColors.kt$0.1f + MagicNumber:IvyColors.kt$0.4f + MagicNumber:IvyColors.kt$0.5 + MagicNumber:IvyColors.kt$0.5f + MagicNumber:IvyColors.kt$0.6f + MagicNumber:IvyColors.kt$0.8f + MagicNumber:IvyColors.kt$0xFF0A664F + MagicNumber:IvyColors.kt$0xFF111114 + MagicNumber:IvyColors.kt$0xFF14CC9E + MagicNumber:IvyColors.kt$0xFF223D73 + MagicNumber:IvyColors.kt$0xFF22733D + MagicNumber:IvyColors.kt$0xFF227373 + MagicNumber:IvyColors.kt$0xFF266280 + MagicNumber:IvyColors.kt$0xFF2B2C2D + MagicNumber:IvyColors.kt$0xFF352680 + MagicNumber:IvyColors.kt$0xFF457BE6 + MagicNumber:IvyColors.kt$0xFF45E67B + MagicNumber:IvyColors.kt$0xFF45E6E6 + MagicNumber:IvyColors.kt$0xFF49F2C8 + MagicNumber:IvyColors.kt$0xFF4CC3FF + MagicNumber:IvyColors.kt$0xFF622680 + MagicNumber:IvyColors.kt$0xFF637317 + MagicNumber:IvyColors.kt$0xFF66371F + MagicNumber:IvyColors.kt$0xFF66804D + MagicNumber:IvyColors.kt$0xFF6B4DFF + MagicNumber:IvyColors.kt$0xFF734B17 + MagicNumber:IvyColors.kt$0xFF801919 + MagicNumber:IvyColors.kt$0xFF802030 + MagicNumber:IvyColors.kt$0xFF802653 + MagicNumber:IvyColors.kt$0xFF802680 + MagicNumber:IvyColors.kt$0xFF806226 + MagicNumber:IvyColors.kt$0xFF807719 + MagicNumber:IvyColors.kt$0xFF939199 + MagicNumber:IvyColors.kt$0xFF96E645 + MagicNumber:IvyColors.kt$0xFF99FFBB + MagicNumber:IvyColors.kt$0xFFAA99FF + MagicNumber:IvyColors.kt$0xFFAAF2E0 + MagicNumber:IvyColors.kt$0xFFB3E6FF + MagicNumber:IvyColors.kt$0xFFB3FFFF + MagicNumber:IvyColors.kt$0xFFC34CFF + MagicNumber:IvyColors.kt$0xFFC7E62E + MagicNumber:IvyColors.kt$0xFFCCDDFF + MagicNumber:IvyColors.kt$0xFFCCFF99 + MagicNumber:IvyColors.kt$0xFFD5CCFF + MagicNumber:IvyColors.kt$0xFFE62E2E + MagicNumber:IvyColors.kt$0xFFE67B45 + MagicNumber:IvyColors.kt$0xFFEECCFF + MagicNumber:IvyColors.kt$0xFFEEFF99 + MagicNumber:IvyColors.kt$0xFFEFEEF0 + MagicNumber:IvyColors.kt$0xFFF29F30 + MagicNumber:IvyColors.kt$0xFFF2CD9E + MagicNumber:IvyColors.kt$0xFFFAFAFA + MagicNumber:IvyColors.kt$0xFFFF4060 + MagicNumber:IvyColors.kt$0xFFFF4CA6 + MagicNumber:IvyColors.kt$0xFFFF4CFF + MagicNumber:IvyColors.kt$0xFFFF99AB + MagicNumber:IvyColors.kt$0xFFFFB3B3 + MagicNumber:IvyColors.kt$0xFFFFBFFF + MagicNumber:IvyColors.kt$0xFFFFC34C + MagicNumber:IvyColors.kt$0xFFFFCCB3 + MagicNumber:IvyColors.kt$0xFFFFCCD5 + MagicNumber:IvyColors.kt$0xFFFFCCE6 + MagicNumber:IvyColors.kt$0xFFFFDC99 + MagicNumber:IvyColors.kt$0xFFFFDEB3 + MagicNumber:IvyColors.kt$0xFFFFEE33 + MagicNumber:IvyColors.kt$0xFFFFF799 + MagicNumber:IvyColors.kt$3 + MagicNumber:IvyLineChart.kt$3 + MagicNumber:IvyModal.kt$0.01f + MagicNumber:IvyModal.kt$1000f + MagicNumber:IvyModal.kt$1100f + MagicNumber:LoanDetailsScreen.kt$100 + MagicNumber:LoanTransactionsCore.kt$LoanTransactionsCore$12 + MagicNumber:LoanViewModel.kt$LoanViewModel$100 + MagicNumber:MainBottomBar.kt$0.01f + MagicNumber:MainBottomBar.kt$100f + MagicNumber:MainBottomBar.kt$199f + MagicNumber:MainBottomBar.kt$200f + MagicNumber:MainBottomBar.kt$3 + MagicNumber:Migration105to106_TrnRecurringRules.kt$Migration105to106_TrnRecurringRules$105 + MagicNumber:Migration105to106_TrnRecurringRules.kt$Migration105to106_TrnRecurringRules$106 + MagicNumber:Migration106to107_Wishlist.kt$Migration106to107_Wishlist$106 + MagicNumber:Migration106to107_Wishlist.kt$Migration106to107_Wishlist$107 + MagicNumber:Migration107to108_Sync.kt$Migration107to108_Sync$107 + MagicNumber:Migration107to108_Sync.kt$Migration107to108_Sync$108 + MagicNumber:Migration108to109_Users.kt$Migration108to109_Users$108 + MagicNumber:Migration108to109_Users.kt$Migration108to109_Users$109 + MagicNumber:Migration109to110_PlannedPayments.kt$Migration109to110_PlannedPayments$109 + MagicNumber:Migration109to110_PlannedPayments.kt$Migration109to110_PlannedPayments$110 + MagicNumber:Migration110to111_PlannedPaymentRule.kt$Migration110to111_PlannedPaymentRule$110 + MagicNumber:Migration110to111_PlannedPaymentRule.kt$Migration110to111_PlannedPaymentRule$111 + MagicNumber:Migration111to112_User_testUser.kt$Migration111to112_User_testUser$111 + MagicNumber:Migration111to112_User_testUser.kt$Migration111to112_User_testUser$112 + MagicNumber:Migration112to113_ExchangeRates.kt$Migration112to113_ExchangeRates$112 + MagicNumber:Migration112to113_ExchangeRates.kt$Migration112to113_ExchangeRates$113 + MagicNumber:Migration113to114_Multi_Currency.kt$Migration113to114_Multi_Currency$113 + MagicNumber:Migration113to114_Multi_Currency.kt$Migration113to114_Multi_Currency$114 + MagicNumber:Migration114to115_Category_Account_Icons.kt$Migration114to115_Category_Account_Icons$114 + MagicNumber:Migration114to115_Category_Account_Icons.kt$Migration114to115_Category_Account_Icons$115 + MagicNumber:Migration115to116_Account_Include_In_Balance.kt$Migration115to116_Account_Include_In_Balance$115 + MagicNumber:Migration115to116_Account_Include_In_Balance.kt$Migration115to116_Account_Include_In_Balance$116 + MagicNumber:Migration116to117_SalteEdgeIntgration.kt$Migration116to117_SalteEdgeIntgration$116 + MagicNumber:Migration116to117_SalteEdgeIntgration.kt$Migration116to117_SalteEdgeIntgration$117 + MagicNumber:Migration117to118_Budgets.kt$Migration117to118_Budgets$117 + MagicNumber:Migration117to118_Budgets.kt$Migration117to118_Budgets$118 + MagicNumber:Migration118to119_Loans.kt$Migration118to119_Loans$118 + MagicNumber:Migration118to119_Loans.kt$Migration118to119_Loans$119 + MagicNumber:Migration119to120_LoanTransactions.kt$Migration119to120_LoanTransactions$119 + MagicNumber:Migration119to120_LoanTransactions.kt$Migration119to120_LoanTransactions$120 + MagicNumber:Migration120to121_DropWishlistItem.kt$Migration120to121_DropWishlistItem$120 + MagicNumber:Migration120to121_DropWishlistItem.kt$Migration120to121_DropWishlistItem$121 + MagicNumber:Migration122to123_ExchangeRates.kt$Migration122to123_ExchangeRates$122 + MagicNumber:Migration122to123_ExchangeRates.kt$Migration122to123_ExchangeRates$123 + MagicNumber:MigrationsManager.kt$MigrationsManager$2_000L + MagicNumber:Month.kt$Month.Companion$10 + MagicNumber:Month.kt$Month.Companion$11 + MagicNumber:Month.kt$Month.Companion$12 + MagicNumber:Month.kt$Month.Companion$3 + MagicNumber:Month.kt$Month.Companion$4 + MagicNumber:Month.kt$Month.Companion$5 + MagicNumber:Month.kt$Month.Companion$6 + MagicNumber:Month.kt$Month.Companion$7 + MagicNumber:Month.kt$Month.Companion$8 + MagicNumber:Month.kt$Month.Companion$9 + MagicNumber:NotificationService.kt$NotificationService$1000 + MagicNumber:NotificationService.kt$NotificationService$200 + MagicNumber:OnboardingAccounts.kt$0xFF4DCAFF + MagicNumber:OnboardingCategories.kt$0xFF1e5166 + MagicNumber:OnboardingCategories.kt$0xFF4dfff3 + MagicNumber:OnboardingCategories.kt$0xFF75ff4d + MagicNumber:OnboardingCategories.kt$12 + MagicNumber:OnboardingPrivacyTC.kt$0.01f + MagicNumber:OnboardingPrivacyTC.kt$0.5f + MagicNumber:OnboardingPrivacyTC.kt$0.99f + MagicNumber:OnboardingPrivacyTC.kt$10 + MagicNumber:OnboardingRouter.kt$OnboardingRouter$1000 + MagicNumber:OnboardingSplashLogin.kt$0.01f + MagicNumber:OnboardingSplashLogin.kt$3f + MagicNumber:ParseFields.kt$0.0001 + MagicNumber:ParseFields.kt$0.001 + MagicNumber:ParseFields.kt$0.01 + MagicNumber:ParseFields.kt$0.1 + MagicNumber:ParseFields.kt$10 + MagicNumber:ParseFields.kt$10.0 + MagicNumber:ParseFields.kt$100 + MagicNumber:ParseFields.kt$100.0 + MagicNumber:ParseFields.kt$10_000 + MagicNumber:ParseFields.kt$10_000.0 + MagicNumber:ParseFields.kt$1_000 + MagicNumber:ParseFields.kt$1_000.0 + MagicNumber:ParseFields.kt$1_0000 + MagicNumber:PeriodSelector.kt$180f + MagicNumber:PieChart.kt$PieChartView$360 + MagicNumber:PieChart.kt$PieChartView$90.0 + MagicNumber:PieChartStatisticScreen.kt$100 + MagicNumber:PieChartStatisticScreen.kt$40 + MagicNumber:Plan.kt$Plan$3 + MagicNumber:Plan.kt$Plan$4 + MagicNumber:PlannedPaymentCard.kt$5 + MagicNumber:PlannedPaymentsGenerator.kt$PlannedPaymentsGenerator$3 + MagicNumber:PlannedPaymentsLogic.kt$PlannedPaymentsLogic$12 + MagicNumber:PlannedPaymentsLogic.kt$PlannedPaymentsLogic$7 + MagicNumber:PlannedPaymentsScreen.kt$5 + MagicNumber:PlansSheet.kt$0.01f + MagicNumber:PlansSheet.kt$100 + MagicNumber:PlansSheet.kt$100f + MagicNumber:PlansSheet.kt$12 + MagicNumber:PlansSheet.kt$200f + MagicNumber:RecurringRule.kt$5 + MagicNumber:RecurringRuleModal.kt$12 + MagicNumber:RecurringRuleModal.kt$200 + MagicNumber:ReportScreen.kt$1000f + MagicNumber:RestClient.kt$RestClient.Companion$15 + MagicNumber:RestClient.kt$RestClient.Companion$200 + MagicNumber:RestClient.kt$RestClient.Companion$299 + MagicNumber:RestClient.kt$RestClient.Companion$5 + MagicNumber:RootActivity.kt$RootActivity$100 + MagicNumber:RootActivity.kt$RootActivity$12 + MagicNumber:RootViewModel.kt$RootViewModel$1000 + MagicNumber:SortOrder.kt$SortOrder.ALPHABETICAL$3 + MagicNumber:TransactionCard.kt$5 + MagicNumber:TransactionReminderLogic.kt$TransactionReminderLogic$20 + MagicNumber:TransactionReminderLogic.kt$TransactionReminderLogic$24 + MagicNumber:TransactionReminderLogic.kt$TransactionReminderLogic$5 + MagicNumber:TransactionViewModel.kt$TransactionViewModel$12 + MagicNumber:Transactions.kt$5 + MagicNumber:UpdateStartDayOfMonthAct.kt$UpdateStartDayOfMonthAct$31 + MagicNumber:WalletAccountLogic.kt$WalletAccountLogic$0.009 + MatchingDeclarationName:AccountModal.kt$AccountModalData + MatchingDeclarationName:BudgetModal.kt$BudgetModalData + MatchingDeclarationName:BufferModal.kt$BufferModalData + MatchingDeclarationName:CategoryModal.kt$CategoryModalData + MatchingDeclarationName:ChartsCore.kt$ChartPoint<V> + MatchingDeclarationName:Exchange.kt$ExchangeData + MatchingDeclarationName:IvyToolbar.kt$BackButtonType + MatchingDeclarationName:LoanModal.kt$LoanModalData + MatchingDeclarationName:LoanRecordModal.kt$LoanRecordModalData + MatchingDeclarationName:RecurringRuleModal.kt$RecurringRuleModalData + MatchingDeclarationName:WalletCharts.kt$ToRange + MaxLineLength:Accessors32ikgp1isdd8mwexzgbe6rirl.kt$(this as org.gradle.api.plugins.ExtensionAware).extensions.getByName("ext") as org.gradle.api.plugins.ExtraPropertiesExtension + MaxLineLength:Accessors32ikgp1isdd8mwexzgbe6rirl.kt$fun + MaxLineLength:Accessors32ikgp1isdd8mwexzgbe6rirl.kt$val + MaxLineLength:Accessors46nwrg1rs44ofdqpi7vyy3pfc.kt$(this as org.gradle.api.plugins.ExtensionAware).extensions.getByName("ext") as org.gradle.api.plugins.ExtraPropertiesExtension + MaxLineLength:Accessors46nwrg1rs44ofdqpi7vyy3pfc.kt$fun + MaxLineLength:Accessors4ymijgaek646mzru18sdmblu7.kt$(this as org.gradle.api.plugins.ExtensionAware).extensions.getByName("detekt") as io.gitlab.arturbosch.detekt.extensions.DetektExtension + MaxLineLength:Accessors6m89nhcqblthog8es93pjkmhg.kt$val + MaxLineLength:Accessors72k7tti784t7idmqtg2upvaru.kt$val + MaxLineLength:Accessors8lcri9ibgd9oj8dt3t8z8nvfx.kt$(this as org.gradle.api.plugins.ExtensionAware).extensions.getByName("ext") as org.gradle.api.plugins.ExtraPropertiesExtension + MaxLineLength:Accessors8lcri9ibgd9oj8dt3t8z8nvfx.kt$fun + MaxLineLength:Accessorsblypoh2ruc9u3bx9djsfqsntg.kt$(this as org.gradle.api.plugins.ExtensionAware).extensions.getByName("ext") as org.gradle.api.plugins.ExtraPropertiesExtension + MaxLineLength:Accessorsbtc8iwv8u9b0f38ikfmodj8ns.kt$(this as org.gradle.api.plugins.ExtensionAware).extensions.getByName("reporting") as org.gradle.api.reporting.ReportingExtension + MaxLineLength:Accessorseessl0al0otcsbyqqruvoncpd.kt$(this as org.gradle.api.plugins.ExtensionAware).extensions.getByName("ext") as org.gradle.api.plugins.ExtraPropertiesExtension + MaxLineLength:Accessorseessl0al0otcsbyqqruvoncpd.kt$fun + MaxLineLength:AccountModal.kt$text = if (modal?.account != null) stringResource(R.string.edit_account) else stringResource(R.string.new_account) + MaxLineLength:AppModuleDI.kt$AppModuleDI.<no name provided>$"https://img.poki.com/cdn-cgi/image/quality=78,width=600,height=600,fit=cover,f=auto/94945631828bfdcf32a8ad0b79978913.png" + MaxLineLength:AppModuleDI.kt$AppModuleDI.<no name provided>$"https://maserati.scene7.com/is/image/maserati/maserati/regional/us/models/my22/levante/22_LV_Trofeo_PS_T1_HomePage_1920x1080.jpg?\$1920x2000\$&fit=constrain" + MaxLineLength:AppModuleDI.kt$AppModuleDI.<no name provided>$"https://stimg.cardekho.com/images/carexteriorimages/930x620/Lamborghini/Aventador/6721/Lamborghini-Aventador-SVJ/1621849426405/front-left-side-47.jpg" + MaxLineLength:BalanceViewModel.kt$BalanceViewModel$plannedPaymentsLogic.plannedPaymentsAmountFor(period.toRange(ivyContext.startDayOfMonth)) //+ positive if Income > Expenses else - negative + MaxLineLength:BudgetModal.kt$text = if (modal?.budget != null) stringResource(R.string.edit_budget) else stringResource(R.string.create_budget) + MaxLineLength:CustomerJourneyLogic.kt$CustomerJourneyLogic.Companion$"If you haven't yet, feel free join our invite-only Ivy Telegram Community and make our app better :)" + MaxLineLength:CustomerJourneyLogic.kt$CustomerJourneyLogic.Companion$description = "It looks like that you're enjoying Ivy Wallet! Feel free join our invite-only Ivy Telegram Community and make our app better :)" + MaxLineLength:DetektConfigurationAccessors.kt$fun + MaxLineLength:DetektPluginsConfigurationAccessors.kt$fun + MaxLineLength:DonateModal.kt$"1) You have custom donation options.\n2) If you choose a 'tier', you'll receive a small digital reward from us " + MaxLineLength:DonateScreen.kt$text = "BIG THANKS to all Ivy contributors who made Ivy Wallet possible! That's why we opened a donations channel to sustain and improve our small project." + MaxLineLength:DonateScreen.kt$text = "If you want to support us feel free to donate whatever amount you're comfortable with - it all helps! (local taxes may apply)".uppercase() + MaxLineLength:EditTransactionViewModel.kt$EditTransactionViewModel$"You are trying to change the account associated with the loan record to an account of different currency" + MaxLineLength:EditTransactionViewModel.kt$EditTransactionViewModel$?: + MaxLineLength:FortuneCitySteps.kt$articleUrl = "https://fourdesire.helpshift.com/hc/en/5-fortune-city/faq/242-can-i-export-my-fortune-city-records/" + MaxLineLength:GitHubBackupScreen.kt$"https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens#creating-a-fine-grained-personal-access-token" + MaxLineLength:HomeHeader.kt$text = if (name.isNotNullOrBlank()) stringResource(R.string.hi_name, name) else stringResource(R.string.hi) + MaxLineLength:HomeHeader.kt$text = stringResource(R.string.cashflow, (if (cashflow > 0) "+" else ""), cashflow.format(currency), currency) + MaxLineLength:ItemStatisticViewModel.kt$ItemStatisticViewModel$//unspecifiedCategory==false is explicitly checked to accommodate for a temp AccountTransfers Category during Reports Screen + MaxLineLength:IvyBilling.kt$IvyBilling$Timber.i("Acknowledge purchase result, code=${acknowledgeResult.responseCode}: ${acknowledgeResult.debugMessage}") + MaxLineLength:IvyChecklistTextField.kt$value = TextFieldValue("Cur habitio favere? Sunt navises promissio grandis, primus accolaes. Yes, there is chaos, it contacts with light.") + MaxLineLength:IvyDescriptionTextField.kt$value = TextFieldValue("Cur habitio favere? Sunt navises promissio grandis, primus accolaes. Yes, there is chaos, it contacts with light.") + MaxLineLength:LoanModal.kt$//enabled = nameTextFieldValue.text.isNotNullOrBlank() && amount > 0 && ((createLoanTrans && selectedAcc != null) || !createLoanTrans) + MaxLineLength:MainBottomBar.kt$y = buttonCenterY.roundToInt() - 48.dp.roundToPx() - placealbe.height - FAB_BUTTON_SIZE.roundToPx() + MaxLineLength:Migration105to106_TrnRecurringRules.kt$Migration105to106_TrnRecurringRules$"CREATE TABLE IF NOT EXISTS `transaction_recurring_rules` (`startDate` INTEGER NOT NULL, `intervalSeconds` INTEGER NOT NULL, `type` TEXT NOT NULL, `accountId` TEXT NOT NULL, `amount` REAL NOT NULL, `categoryId` TEXT, `title` TEXT, `description` TEXT, `id` TEXT NOT NULL, PRIMARY KEY(`id`))" + MaxLineLength:Migration106to107_Wishlist.kt$Migration106to107_Wishlist$database.execSQL("CREATE TABLE IF NOT EXISTS `wishlist_items` (`name` TEXT NOT NULL, `price` REAL NOT NULL, `accountId` TEXT NOT NULL, `categoryId` TEXT, `description` TEXT, `plannedDateTime` INTEGER, `orderNum` REAL NOT NULL, `id` TEXT NOT NULL, PRIMARY KEY(`id`))") + MaxLineLength:Migration108to109_Users.kt$Migration108to109_Users$database.execSQL("CREATE TABLE IF NOT EXISTS `users` (`email` TEXT NOT NULL, `authProviderType` TEXT NOT NULL, `firstName` TEXT NOT NULL, `lastName` TEXT, `profilePicture` TEXT, `color` INTEGER NOT NULL, `id` TEXT NOT NULL, PRIMARY KEY(`id`))") + MaxLineLength:Migration109to110_PlannedPayments.kt$Migration109to110_PlannedPayments$database.execSQL("CREATE TABLE IF NOT EXISTS `transaction_recurring_rules` (`startDate` INTEGER, `intervalN` INTEGER, `intervalType` TEXT, `oneTime` INTEGER NOT NULL, `type` TEXT NOT NULL, `accountId` TEXT NOT NULL, `amount` REAL NOT NULL, `categoryId` TEXT, `title` TEXT, `description` TEXT, `isSynced` INTEGER NOT NULL, `isDeleted` INTEGER NOT NULL, `id` TEXT NOT NULL, PRIMARY KEY(`id`))") + MaxLineLength:Migration110to111_PlannedPaymentRule.kt$Migration110to111_PlannedPaymentRule$database.execSQL("CREATE TABLE IF NOT EXISTS `planned_payment_rules` (`startDate` INTEGER, `intervalN` INTEGER, `intervalType` TEXT, `oneTime` INTEGER NOT NULL, `type` TEXT NOT NULL, `accountId` TEXT NOT NULL, `amount` REAL NOT NULL, `categoryId` TEXT, `title` TEXT, `description` TEXT, `isSynced` INTEGER NOT NULL, `isDeleted` INTEGER NOT NULL, `id` TEXT NOT NULL, PRIMARY KEY(`id`))") + MaxLineLength:Migration112to113_ExchangeRates.kt$Migration112to113_ExchangeRates$database.execSQL("CREATE TABLE IF NOT EXISTS `exchange_rates` (`baseCurrency` TEXT NOT NULL, `currency` TEXT NOT NULL, `rate` REAL NOT NULL, PRIMARY KEY(`baseCurrency`, `currency`))") + MaxLineLength:Migration117to118_Budgets.kt$Migration117to118_Budgets$database.execSQL("CREATE TABLE IF NOT EXISTS `${tableName}` (`name` TEXT NOT NULL, `amount` REAL NOT NULL, `categoryIdsSerialized` TEXT, `accountIdsSerialized` TEXT, `isSynced` INTEGER NOT NULL, `isDeleted` INTEGER NOT NULL, `orderId` REAL NOT NULL, `id` TEXT NOT NULL, PRIMARY KEY(`id`))") + MaxLineLength:Migration118to119_Loans.kt$Migration118to119_Loans$database.execSQL("CREATE TABLE IF NOT EXISTS `$LOANS_TABLE` (`name` TEXT NOT NULL, `amount` REAL NOT NULL, `type` TEXT NOT NULL, `color` INTEGER NOT NULL, `icon` TEXT, `orderNum` REAL NOT NULL, `isSynced` INTEGER NOT NULL, `isDeleted` INTEGER NOT NULL, `id` TEXT NOT NULL, PRIMARY KEY(`id`))") + MaxLineLength:Migration118to119_Loans.kt$Migration118to119_Loans$database.execSQL("CREATE TABLE IF NOT EXISTS `$LOAN_RECORDS_TABLE` (`loanId` TEXT NOT NULL, `amount` REAL NOT NULL, `note` TEXT, `dateTime` INTEGER NOT NULL, `isSynced` INTEGER NOT NULL, `isDeleted` INTEGER NOT NULL, `id` TEXT NOT NULL, PRIMARY KEY(`id`))") + MaxLineLength:OnboardingAccounts.kt$text = if (itemsCount == 0) "Up to $freeItemsCount free $itemLabelPlural" else "$freeItemsLeft $itemLabelPlural left" + MaxLineLength:OnboardingPrivacyTC.kt$Timber.i("dragAmount=$dragAmount, offsetX=$offsetX, newOffsetX=$newOffsetX, maxOffset=$maxOffsetX") + MaxLineLength:PieChartAct.kt$PieChartAct$if + MaxLineLength:PieChartStatisticBottomBar.kt$text = if (isIncome) stringResource(id = R.string.add_income) else stringResource(id = R.string.add_expense) + MaxLineLength:PieChartStatisticScreen.kt$text + MaxLineLength:PlannedPaymentRuleDao.kt$PlannedPaymentRuleDao$@Query("SELECT * FROM planned_payment_rules WHERE isDeleted = 0 AND oneTime = :oneTime ORDER BY amount DESC, startDate ASC") + MaxLineLength:PlansSheet.kt$} + MaxLineLength:PluginSpecBuilders.kt$* The `com.android.internal.asset-pack-bundle` plugin implemented by [com.android.build.gradle.internal.plugins.AssetPackBundlePlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `com.android.internal.asset-pack` plugin implemented by [com.android.build.gradle.internal.plugins.AssetPackPlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `com.android.internal.dynamic-feature` plugin implemented by [com.android.build.gradle.internal.plugins.DynamicFeaturePlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `com.android.internal.fused-library` plugin implemented by [com.android.build.gradle.internal.plugins.FusedLibraryPlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `com.android.internal.kotlin.multiplatform.library` plugin implemented by [com.android.build.gradle.internal.plugins.KotlinMultiplatformAndroidPlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `com.android.internal.privacy-sandbox-sdk` plugin implemented by [com.android.build.gradle.internal.plugins.PrivacySandboxSdkPlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `com.android.internal.reporting` plugin implemented by [com.android.build.gradle.internal.plugins.ReportingPlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `com.android.internal.version-check` plugin implemented by [com.android.build.gradle.internal.plugins.VersionCheckPlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `com.android.kotlin.multiplatform.library` plugin implemented by [com.android.build.gradle.api.KotlinMultiplatformAndroidPlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `com.google.firebase.crashlytics` plugin implemented by [com.google.firebase.crashlytics.gradle.CrashlyticsPlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `io.github.detekt.gradle.compiler-plugin` plugin implemented by [io.github.detekt.gradle.DetektKotlinCompilerPlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `kotlin-android-extensions` plugin implemented by [org.jetbrains.kotlin.gradle.internal.AndroidExtensionsSubpluginIndicator]. + MaxLineLength:PluginSpecBuilders.kt$* The `kotlin-multiplatform` plugin implemented by [org.jetbrains.kotlin.gradle.plugin.KotlinMultiplatformPluginWrapper]. + MaxLineLength:PluginSpecBuilders.kt$* The `kotlin-native-cocoapods` plugin implemented by [org.jetbrains.kotlin.gradle.plugin.cocoapods.KotlinCocoapodsPlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `kotlin-native-performance` plugin implemented by [org.jetbrains.kotlin.gradle.plugin.performance.KotlinPerformancePlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `kotlin-scripting` plugin implemented by [org.jetbrains.kotlin.gradle.scripting.internal.ScriptingGradleSubplugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `org.gradle.clang-compiler` plugin implemented by [org.gradle.nativeplatform.toolchain.plugins.ClangCompilerPlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `org.gradle.component-model-base` plugin implemented by [org.gradle.language.base.plugins.ComponentModelBasePlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `org.gradle.google-test-test-suite` plugin implemented by [org.gradle.nativeplatform.test.googletest.plugins.GoogleTestPlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `org.gradle.google-test` plugin implemented by [org.gradle.nativeplatform.test.googletest.plugins.GoogleTestConventionPlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `org.gradle.groovy-gradle-plugin` plugin implemented by [org.gradle.plugin.devel.internal.precompiled.PrecompiledGroovyPluginsPlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `org.gradle.jacoco-report-aggregation` plugin implemented by [org.gradle.testing.jacoco.plugins.JacocoReportAggregationPlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `org.gradle.java-library-distribution` plugin implemented by [org.gradle.api.plugins.JavaLibraryDistributionPlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `org.gradle.jvm-toolchain-management` plugin implemented by [org.gradle.api.plugins.JvmToolchainManagementPlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `org.gradle.microsoft-visual-cpp-compiler` plugin implemented by [org.gradle.nativeplatform.toolchain.plugins.MicrosoftVisualCppCompilerPlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `org.gradle.native-component-model` plugin implemented by [org.gradle.nativeplatform.plugins.NativeComponentModelPlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `org.gradle.objective-c-lang` plugin implemented by [org.gradle.language.objectivec.plugins.ObjectiveCLangPlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `org.gradle.objective-cpp-lang` plugin implemented by [org.gradle.language.objectivecpp.plugins.ObjectiveCppLangPlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `org.gradle.standard-tool-chains` plugin implemented by [org.gradle.nativeplatform.toolchain.internal.plugins.StandardToolChainsPlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `org.gradle.windows-resource-script` plugin implemented by [org.gradle.language.rc.plugins.WindowsResourceScriptPlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `org.jetbrains.kotlin.android` plugin implemented by [org.jetbrains.kotlin.gradle.plugin.KotlinAndroidPluginWrapper]. + MaxLineLength:PluginSpecBuilders.kt$* The `org.jetbrains.kotlin.multiplatform` plugin implemented by [org.jetbrains.kotlin.gradle.plugin.KotlinMultiplatformPluginWrapper]. + MaxLineLength:PluginSpecBuilders.kt$* The `org.jetbrains.kotlin.native.cocoapods` plugin implemented by [org.jetbrains.kotlin.gradle.plugin.cocoapods.KotlinCocoapodsPlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `org.jetbrains.kotlin.native.performance` plugin implemented by [org.jetbrains.kotlin.gradle.plugin.performance.KotlinPerformancePlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `org.jetbrains.kotlin.platform.android` plugin implemented by [org.jetbrains.kotlin.gradle.plugin.KotlinPlatformAndroidPlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `org.jetbrains.kotlin.platform.common` plugin implemented by [org.jetbrains.kotlin.gradle.plugin.KotlinPlatformCommonPlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `org.jetbrains.kotlin.platform.js` plugin implemented by [org.jetbrains.kotlin.gradle.plugin.KotlinPlatformJsPlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `org.jetbrains.kotlin.platform.jvm` plugin implemented by [org.jetbrains.kotlin.gradle.plugin.KotlinPlatformJvmPlugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `org.jetbrains.kotlin.plugin.parcelize` plugin implemented by [org.jetbrains.kotlin.gradle.internal.ParcelizeSubplugin]. + MaxLineLength:PluginSpecBuilders.kt$* The `org.jetbrains.kotlin.plugin.scripting` plugin implemented by [org.jetbrains.kotlin.gradle.scripting.internal.ScriptingGradleSubplugin]. + MaxLineLength:PrimaryAttributeColumn.kt$"Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0.\n" + MaxLineLength:PrimaryAttributeColumn.kt$"See https://docs.gradle.org/7.0-rc-1/userguide/command_line_interface.html#sec:command_line_warnings" + MaxLineLength:ReportViewModel.kt$ReportViewModel$if (stateVal().treatTransfersAsIncExp) historyIncomeExpense.value.transferExpense.toDouble() else 0.0 + MaxLineLength:ReportViewModel.kt$ReportViewModel$return incomeExpenseTransferPair.income + incomeExpenseTransferPair.transferIncome - incomeExpenseTransferPair.expense - incomeExpenseTransferPair.transferExpense + MaxLineLength:SettingsViewModel.kt$SettingsViewModel$e.sendToCrashlytics("Settings - GOOGLE_SIGN_IN ERROR: generic exception when logging with GOOGLE") + MaxLineLength:TransactionDao.kt$TransactionDao$@Query("SELECT * FROM transactions WHERE isDeleted = 0 AND (categoryId = :categoryId) AND dateTime >= :startDate AND dateTime <= :endDate ORDER BY dateTime DESC") + MaxLineLength:TransactionDao.kt$TransactionDao$@Query("SELECT * FROM transactions WHERE isDeleted = 0 AND (categoryId = :categoryId) AND type = :type AND dateTime >= :startDate AND dateTime <= :endDate ORDER BY dateTime DESC") + MaxLineLength:TransactionDao.kt$TransactionDao$@Query("SELECT * FROM transactions WHERE isDeleted = 0 AND (categoryId IS NULL) AND dateTime >= :startDate AND dateTime <= :endDate ORDER BY dateTime DESC") + MaxLineLength:TransactionDao.kt$TransactionDao$@Query("SELECT * FROM transactions WHERE isDeleted = 0 AND (categoryId IS NULL) AND type = :type AND dateTime >= :startDate AND dateTime <= :endDate ORDER BY dateTime DESC") + MaxLineLength:TransactionDao.kt$TransactionDao$@Query("SELECT * FROM transactions WHERE isDeleted = 0 AND accountId = :accountId AND dateTime >= :startDate AND dateTime <= :endDate ORDER BY dateTime DESC") + MaxLineLength:TransactionDao.kt$TransactionDao$@Query("SELECT * FROM transactions WHERE isDeleted = 0 AND dateTime >= :startDate AND dateTime <= :endDate AND recurringRuleId = :recurringRuleId ORDER BY dateTime DESC") + MaxLineLength:TransactionDao.kt$TransactionDao$@Query("SELECT * FROM transactions WHERE isDeleted = 0 AND dateTime >= :startDate AND dateTime <= :endDate AND type = :type ORDER BY dateTime DESC") + MaxLineLength:TransactionDao.kt$TransactionDao$@Query("SELECT * FROM transactions WHERE isDeleted = 0 AND dateTime >= :startDate AND dateTime <= :endDate ORDER BY dateTime DESC") + MaxLineLength:TransactionDao.kt$TransactionDao$@Query("SELECT * FROM transactions WHERE isDeleted = 0 AND dueDate >= :startDate AND dueDate <= :endDate AND (categoryId = :categoryId) ORDER BY dateTime DESC, dueDate ASC") + MaxLineLength:TransactionDao.kt$TransactionDao$@Query("SELECT * FROM transactions WHERE isDeleted = 0 AND dueDate >= :startDate AND dueDate <= :endDate AND (categoryId IS NULL) ORDER BY dateTime DESC, dueDate ASC") + MaxLineLength:TransactionDao.kt$TransactionDao$@Query("SELECT * FROM transactions WHERE isDeleted = 0 AND dueDate >= :startDate AND dueDate <= :endDate AND accountId = :accountId ORDER BY dateTime DESC, dueDate ASC") + MaxLineLength:TransactionDao.kt$TransactionDao$@Query("SELECT * FROM transactions WHERE isDeleted = 0 AND dueDate >= :startDate AND dueDate <= :endDate ORDER BY dueDate ASC") + MaxLineLength:TransactionDao.kt$TransactionDao$@Query("SELECT * FROM transactions WHERE isDeleted = 0 AND recurringRuleId = :recurringRuleId ORDER BY dateTime DESC") + MaxLineLength:TransactionDao.kt$TransactionDao$@Query("SELECT * FROM transactions WHERE isDeleted = 0 AND toAccountId = :toAccountId AND dateTime >= :startDate AND dateTime <= :endDate ORDER BY dateTime DESC") + MaxLineLength:TransactionDao.kt$TransactionDao$@Query("SELECT * FROM transactions WHERE isDeleted = 0 AND type = :type and accountId = :accountId ORDER BY dateTime DESC") + MaxLineLength:TransactionDao.kt$TransactionDao$@Query("SELECT * FROM transactions WHERE isDeleted = 0 AND type = :type and accountId = :accountId and dateTime >= :startDate AND dateTime <= :endDate ORDER BY dateTime DESC") + MaxLineLength:TransactionDao.kt$TransactionDao$@Query("SELECT * FROM transactions WHERE isDeleted = 0 AND type = :type and toAccountId = :toAccountId ORDER BY dateTime DESC") + MaxLineLength:TransactionDao.kt$TransactionDao$@Query("SELECT * FROM transactions WHERE isDeleted = 0 AND type = :type and toAccountId = :toAccountId and dateTime >= :startDate AND dateTime <= :endDate ORDER BY dateTime DESC") + MaxLineLength:TransactionDao.kt$TransactionDao$@Query("UPDATE transactions SET isDeleted = 1, isSynced = 0 WHERE recurringRuleId = :recurringRuleId AND dateTime IS NULL") + MaxLineLength:TransactionReminderWorker.kt$TransactionReminderWorker$//Double check is needed because the user can switch off notifications in settings after it has been scheduled to show notifications for the next day + MaxLineLength:UIExt.kt$if (pIsDark) lFlags and View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR.inv() else lFlags or View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR + MaxLineLength:ViewPager.kt$Timber.d("onDragStopped(): velocity = $velocity, finalVelocity = $finalVelocity, currentPageOffset = ${state.currentPageOffset}") + MaxLineLength:WalletByBudgetBakersSteps.kt$articleUrl = "https://support.budgetbakers.com/hc/en-us/articles/209753325-How-to-EXPORT-transactions-from-Wallet" + MaximumLineLength:Accessors32ikgp1isdd8mwexzgbe6rirl.kt$ + MaximumLineLength:Accessors32ikgp1isdd8mwexzgbe6rirl.kt$fun + MaximumLineLength:Accessors32ikgp1isdd8mwexzgbe6rirl.kt$val + MaximumLineLength:Accessors46nwrg1rs44ofdqpi7vyy3pfc.kt$ + MaximumLineLength:Accessors46nwrg1rs44ofdqpi7vyy3pfc.kt$fun + MaximumLineLength:Accessors4ymijgaek646mzru18sdmblu7.kt$ + MaximumLineLength:Accessors6m89nhcqblthog8es93pjkmhg.kt$val + MaximumLineLength:Accessors72k7tti784t7idmqtg2upvaru.kt$val + MaximumLineLength:Accessors8lcri9ibgd9oj8dt3t8z8nvfx.kt$ + MaximumLineLength:Accessors8lcri9ibgd9oj8dt3t8z8nvfx.kt$fun + MaximumLineLength:Accessorsblypoh2ruc9u3bx9djsfqsntg.kt$ + MaximumLineLength:Accessorsbtc8iwv8u9b0f38ikfmodj8ns.kt$ + MaximumLineLength:Accessorseessl0al0otcsbyqqruvoncpd.kt$ + MaximumLineLength:Accessorseessl0al0otcsbyqqruvoncpd.kt$fun + MaximumLineLength:AccountModal.kt$ + MaximumLineLength:AppModuleDI.kt$AppModuleDI.<no name provided>$ + MaximumLineLength:BalanceViewModel.kt$BalanceViewModel$ + MaximumLineLength:BudgetModal.kt$ + MaximumLineLength:CustomerJourneyLogic.kt$CustomerJourneyLogic.Companion$ + MaximumLineLength:DetektConfigurationAccessors.kt$fun + MaximumLineLength:DetektPluginsConfigurationAccessors.kt$fun + MaximumLineLength:DonateModal.kt$ + MaximumLineLength:DonateScreen.kt$ + MaximumLineLength:EditTransactionViewModel.kt$EditTransactionViewModel$ + MaximumLineLength:FortuneCitySteps.kt$ + MaximumLineLength:GitHubBackupScreen.kt$ + MaximumLineLength:HomeHeader.kt$ + MaximumLineLength:IvyBilling.kt$IvyBilling$ + MaximumLineLength:IvyChecklistTextField.kt$ + MaximumLineLength:IvyDescriptionTextField.kt$ + MaximumLineLength:MainBottomBar.kt$ + MaximumLineLength:Migration105to106_TrnRecurringRules.kt$Migration105to106_TrnRecurringRules$ + MaximumLineLength:Migration106to107_Wishlist.kt$Migration106to107_Wishlist$ + MaximumLineLength:Migration108to109_Users.kt$Migration108to109_Users$ + MaximumLineLength:Migration109to110_PlannedPayments.kt$Migration109to110_PlannedPayments$ + MaximumLineLength:Migration110to111_PlannedPaymentRule.kt$Migration110to111_PlannedPaymentRule$ + MaximumLineLength:Migration112to113_ExchangeRates.kt$Migration112to113_ExchangeRates$ + MaximumLineLength:Migration117to118_Budgets.kt$Migration117to118_Budgets$ + MaximumLineLength:Migration118to119_Loans.kt$Migration118to119_Loans$ + MaximumLineLength:OnboardingAccounts.kt$ + MaximumLineLength:OnboardingPrivacyTC.kt$ + MaximumLineLength:PieChartAct.kt$PieChartAct$ + MaximumLineLength:PieChartStatisticBottomBar.kt$ + MaximumLineLength:PieChartStatisticScreen.kt$ + MaximumLineLength:PlannedPaymentRuleDao.kt$PlannedPaymentRuleDao$ + MaximumLineLength:PlansSheet.kt$ + MaximumLineLength:PrimaryAttributeColumn.kt$ + MaximumLineLength:ReportViewModel.kt$ReportViewModel$ + MaximumLineLength:SettingsViewModel.kt$SettingsViewModel$ + MaximumLineLength:TransactionDao.kt$TransactionDao$ + MaximumLineLength:UIExt.kt$ + MaximumLineLength:ViewPager.kt$ + MaximumLineLength:WalletByBudgetBakersSteps.kt$ + ModifierListSpacing:Accessors32ikgp1isdd8mwexzgbe6rirl.kt$internal + ModifierListSpacing:Accessors46nwrg1rs44ofdqpi7vyy3pfc.kt$internal + ModifierListSpacing:Accessors4ymijgaek646mzru18sdmblu7.kt$internal + ModifierListSpacing:Accessors5x03zd2mf47s5vj1qv3jvhdru.kt$internal + ModifierListSpacing:Accessors6m89nhcqblthog8es93pjkmhg.kt$internal + ModifierListSpacing:Accessors72k7tti784t7idmqtg2upvaru.kt$internal + ModifierListSpacing:Accessors7hvycqvau4uyj5knata7lx0yx.kt$internal + ModifierListSpacing:Accessors8lcri9ibgd9oj8dt3t8z8nvfx.kt$internal + ModifierListSpacing:Accessorsa5ptgikd9fb816fav4742zvaq.kt$internal + ModifierListSpacing:Accessorsblypoh2ruc9u3bx9djsfqsntg.kt$internal + ModifierListSpacing:Accessorsbtc8iwv8u9b0f38ikfmodj8ns.kt$internal + ModifierListSpacing:Accessorseessl0al0otcsbyqqruvoncpd.kt$internal + ModifierListSpacing:DetektConfigurationAccessors.kt$internal + ModifierListSpacing:DetektPluginsConfigurationAccessors.kt$internal + ModifierListSpacing:Ivy_lintPlugin.kt$Ivy_lintPlugin$public + ModifierListSpacing:PluginSpecBuilders.kt$ComAndroidInternalKotlinMultiplatformPluginGroup$@org.gradle.api.Generated internal + ModifierListSpacing:PluginSpecBuilders.kt$ComAndroidInternalKotlinPluginGroup$@org.gradle.api.Generated internal + ModifierListSpacing:PluginSpecBuilders.kt$ComAndroidInternalPluginGroup$@org.gradle.api.Generated internal + ModifierListSpacing:PluginSpecBuilders.kt$ComAndroidKotlinMultiplatformPluginGroup$@org.gradle.api.Generated internal + ModifierListSpacing:PluginSpecBuilders.kt$ComAndroidKotlinPluginGroup$@org.gradle.api.Generated internal + ModifierListSpacing:PluginSpecBuilders.kt$ComAndroidPluginGroup$@org.gradle.api.Generated internal + ModifierListSpacing:PluginSpecBuilders.kt$ComGoogleDaggerHiltPluginGroup$@org.gradle.api.Generated internal + ModifierListSpacing:PluginSpecBuilders.kt$ComGoogleDaggerPluginGroup$@org.gradle.api.Generated internal + ModifierListSpacing:PluginSpecBuilders.kt$ComGoogleFirebasePluginGroup$@org.gradle.api.Generated internal + ModifierListSpacing:PluginSpecBuilders.kt$ComGoogleGmsPluginGroup$@org.gradle.api.Generated internal + ModifierListSpacing:PluginSpecBuilders.kt$ComGooglePluginGroup$@org.gradle.api.Generated internal + ModifierListSpacing:PluginSpecBuilders.kt$ComPluginGroup$@org.gradle.api.Generated internal + ModifierListSpacing:PluginSpecBuilders.kt$DaggerHiltAndroidPluginGroup$@org.gradle.api.Generated internal + ModifierListSpacing:PluginSpecBuilders.kt$DaggerHiltPluginGroup$@org.gradle.api.Generated internal + ModifierListSpacing:PluginSpecBuilders.kt$DaggerPluginGroup$@org.gradle.api.Generated internal + ModifierListSpacing:PluginSpecBuilders.kt$IoGithubDetektGradlePluginGroup$@org.gradle.api.Generated internal + ModifierListSpacing:PluginSpecBuilders.kt$IoGithubDetektPluginGroup$@org.gradle.api.Generated internal + ModifierListSpacing:PluginSpecBuilders.kt$IoGithubPluginGroup$@org.gradle.api.Generated internal + ModifierListSpacing:PluginSpecBuilders.kt$IoGitlabArturboschPluginGroup$@org.gradle.api.Generated internal + ModifierListSpacing:PluginSpecBuilders.kt$IoGitlabPluginGroup$@org.gradle.api.Generated internal + ModifierListSpacing:PluginSpecBuilders.kt$IoPluginGroup$@org.gradle.api.Generated internal + ModifierListSpacing:PluginSpecBuilders.kt$OrgGradlePluginGroup$@org.gradle.api.Generated internal + ModifierListSpacing:PluginSpecBuilders.kt$OrgJetbrainsKotlinNativePluginGroup$@org.gradle.api.Generated internal + ModifierListSpacing:PluginSpecBuilders.kt$OrgJetbrainsKotlinPlatformPluginGroup$@org.gradle.api.Generated internal + ModifierListSpacing:PluginSpecBuilders.kt$OrgJetbrainsKotlinPluginGroup$@org.gradle.api.Generated internal + ModifierListSpacing:PluginSpecBuilders.kt$OrgJetbrainsKotlinPluginPluginGroup$@org.gradle.api.Generated internal + ModifierListSpacing:PluginSpecBuilders.kt$OrgJetbrainsPluginGroup$@org.gradle.api.Generated internal + ModifierListSpacing:PluginSpecBuilders.kt$OrgPluginGroup$@org.gradle.api.Generated internal + ModifierListSpacing:PluginSpecBuilders.kt$internal + ModifierMissing:AccountModal.kt$AccountModal + ModifierMissing:AddKeywordModal.kt$AddKeywordModal + ModifierMissing:AddPrimaryAttributeButton.kt$AddPrimaryAttributeButton + ModifierMissing:AddRateModal.kt$AddRateModal + ModifierMissing:AmountCurrency.kt$AmountCurrencyB1 + ModifierMissing:AmountCurrency.kt$AmountCurrencyB1Row + ModifierMissing:AmountCurrency.kt$AmountCurrencyB2Row + ModifierMissing:AmountCurrency.kt$AmountCurrencyCaption + ModifierMissing:AmountCurrency.kt$AmountCurrencyH1 + ModifierMissing:AmountCurrency.kt$AmountCurrencyH2Row + ModifierMissing:AmountModal.kt$AmountCurrency + ModifierMissing:AmountModal.kt$AmountKeyboard + ModifierMissing:AmountModal.kt$AmountModal + ModifierMissing:AmountModal.kt$KeypadCircleButton + ModifierMissing:AppLockedScreen.kt$AppLockedScreen + ModifierMissing:BackBottomBar.kt$BackBottomBar + ModifierMissing:BudgetModal.kt$BudgetModal + ModifierMissing:BudgetModal.kt$ModalNameInput + ModifierMissing:BufferModal.kt$BufferModal + ModifierMissing:CSVScreen.kt$LabelContainsField + ModifierMissing:CSVScreen.kt$Spacer8 + ModifierMissing:CalculatorModal.kt$CalculatorModal + ModifierMissing:CategoriesScreen.kt$SortModal + ModifierMissing:Category.kt$Category + ModifierMissing:CategoryModal.kt$CategoryModal + ModifierMissing:CategoryModal.kt$IconNameRow + ModifierMissing:ChangeTransactionTypeModal.kt$ChangeTransactionTypeModal + ModifierMissing:ChooseCategoryModal.kt$ChooseCategoryModal + ModifierMissing:ChooseIconModal.kt$ChooseIconModal + ModifierMissing:ChoosePeriodModal.kt$ChoosePeriodModal + ModifierMissing:ChooseStartDateOfMonthModal.kt$ChooseStartDateOfMonthModal + ModifierMissing:CurrencyModal.kt$CurrencyModal + ModifierMissing:CustomerJourney.kt$CustomerJourney + ModifierMissing:CustomerJourney.kt$CustomerJourneyCard + ModifierMissing:DataCircle.kt$DataCircle + ModifierMissing:DefaultImportSteps.kt$DefaultImportSteps + ModifierMissing:DeleteModal.kt$DeleteModal + ModifierMissing:DescriptionModal.kt$DescriptionModal + ModifierMissing:Dividers.kt$DividerH + ModifierMissing:Dividers.kt$DividerV + ModifierMissing:Dividers.kt$DividerW + ModifierMissing:DonateModal.kt$DonateModal + ModifierMissing:EditBottomSheet.kt$EditBottomSheet + ModifierMissing:FilterOverlay.kt$FilterOverlay + ModifierMissing:FilterOverlay.kt$ListItem + ModifierMissing:FinancistoSteps.kt$FinancistoSteps + ModifierMissing:GitHubBackupScreen.kt$GitHubBackupScreen + ModifierMissing:GitHubBackupStatus.kt$GitHubBackupStatus + ModifierMissing:GradientCut.kt$GradientCutBottom + ModifierMissing:HealthTab.kt$HealthTab + ModifierMissing:HistoryDateDivider.kt$HistoryDateDivider + ModifierMissing:HomeHeader.kt$CashFlowInfo + ModifierMissing:HomeMoreMenu.kt$MoreMenu + ModifierMissing:HomeTab.kt$HomeLazyColumn + ModifierMissing:ImportFrom.kt$ImportFrom + ModifierMissing:ImportInstructions.kt$ImportInstructions + ModifierMissing:ImportInstructions.kt$StepTitle + ModifierMissing:ImportInstructions.kt$UploadFileStep + ModifierMissing:ImportInstructions.kt$VideoArticleRow + ModifierMissing:ImportProcessing.kt$ImportProcessing + ModifierMissing:ImportResultUI.kt$ImportResultUI + ModifierMissing:IntervalPickerRow.kt$IntervalPickerRow + ModifierMissing:ItemStatisticScreen.kt$IncomeExpensesCards + ModifierMissing:ItemStatisticScreen.kt$ItemStatisticToolbar + ModifierMissing:IvyColorPicker.kt$IvyColorPicker + ModifierMissing:IvyComposeApp.kt$IvyWalletComponentPreview + ModifierMissing:IvyDividerDot.kt$IvyDividerDot + ModifierMissing:IvyModal.kt$IvyModal + ModifierMissing:IvyModal.kt$ModalActionsRow + ModifierMissing:IvyModal.kt$ModalPreviewActionRowSpacer + ModifierMissing:IvyModalComponents.kt$ModalAdd + ModifierMissing:IvyModalComponents.kt$ModalDelete + ModifierMissing:IvyModalComponents.kt$ModalDynamicPrimaryAction + ModifierMissing:IvyModalComponents.kt$ModalTitle + ModifierMissing:IvyModalDomainComponents.kt$ModalAmountSection + ModifierMissing:IvyToolbar.kt$IvyToolbar + ModifierMissing:IvyUI.kt$IvyUI + ModifierMissing:IvyViewPager.kt$IvyPager + ModifierMissing:IvyWalletSteps.kt$IvyWalletSteps + ModifierMissing:KPIsTab.kt$KPIsTab + ModifierMissing:LoanModal.kt$LoanModal + ModifierMissing:LoanRecordModal.kt$LoanRecordModal + ModifierMissing:MainBottomBar.kt$BottomBar + ModifierMissing:MonefySteps.kt$MonefySteps + ModifierMissing:MoneyManagerPraseSteps.kt$MoneyManagerPraseSteps + ModifierMissing:MonthPickerModal.kt$MonthPickerModal + ModifierMissing:NameModal.kt$NameModal + ModifierMissing:OnboardingAccounts.kt$BuyPremiumRow + ModifierMissing:OnboardingAccounts.kt$OnboardingAccounts + ModifierMissing:OnboardingAccounts.kt$PremiumInfo + ModifierMissing:OnboardingCategories.kt$OnboardingCategories + ModifierMissing:OnboardingPrivacyTC.kt$OnboardingPrivacyTC + ModifierMissing:OnboardingReportTab.kt$OnboardingReportTab + ModifierMissing:OnboardingSetCurrency.kt$OnboardingSetCurrency + ModifierMissing:OnboardingSetName.kt$OnboardingSetName + ModifierMissing:OnboardingSplashLogin.kt$OnboardingSplashLogin + ModifierMissing:OnboardingToolbar.kt$OnboardingToolbar + ModifierMissing:OnboardingType.kt$OnboardingType + ModifierMissing:PieChart.kt$PieChart + ModifierMissing:PieChartStatisticBottomBar.kt$PieChartStatisticBottomBar + ModifierMissing:PlannedPaymentCard.kt$PlannedPaymentCard + ModifierMissing:PlannedPaymentsBottomBar.kt$PlannedPaymentsBottomBar + ModifierMissing:PlannedPaymentsLazyColumn.kt$PlannedPaymentsLazyColumn + ModifierMissing:PlansSheet.kt$PlansSheet + ModifierMissing:Preview.kt$IvyComponentPreview + ModifierMissing:PrimaryAttributeColumn.kt$PrimaryAttributeColumn + ModifierMissing:ProgressModal.kt$ProgressModal + ModifierMissing:RateItem.kt$RateItem + ModifierMissing:RecurringRuleModal.kt$RecurringRuleModal + ModifierMissing:ReorderModal.kt$ReorderModal + ModifierMissing:ReorderModal.kt$ReorderModalSingleType + ModifierMissing:ScreenTitle.kt$ScreenTitle + ModifierMissing:ScreenTitle.kt$ScreenTitleLarge + ModifierMissing:SearchScreen.kt$SearchInput + ModifierMissing:Spacers.kt$SpacerHor + ModifierMissing:Spacers.kt$SpacerVer + ModifierMissing:Spacers.kt$SpacerWeight + ModifierMissing:SpendeeSteps.kt$SpendeeSteps + ModifierMissing:Suggestions.kt$Suggestions + ModifierMissing:Title.kt$Title + ModifierMissing:Toolbar.kt$Toolbar + ModifierMissing:TransactionCard.kt$TransactionCard + ModifierMissing:TransactionCard.kt$TypeAmountCurrency + ModifierMissing:TransactionDateTime.kt$TransactionDateTime + ModifierMissing:TransactionSectionDivider.kt$SectionDivider + ModifierMissing:UserStatsTab.kt$UserStatsTab + ModifierMissing:WalletBalanceWidgetContent.kt$BalanceSection + ModifierMissing:WalletBalanceWidgetContent.kt$ButtonsSection + ModifierMissing:WalletBalanceWidgetContent.kt$IncomeExpenseSection + ModifierMissing:WalletBalanceWidgetContent.kt$WalletBalanceWidgetContent + ModifierMissing:WalletBalanceWidgetContent.kt$WidgetClickableItem + ModifierMissing:WalletCharts.kt$BalanceChart + ModifierMissing:WalletCharts.kt$ChartInfoCard + ModifierNotUsedAtRoot:ItemIcon.kt$modifier = modifier + ModifierNotUsedAtRoot:IvyNameTextFieldValue.kt$modifier = modifier + ModifierReused:ItemIcon.kt$Image( modifier = modifier, painter = painterResource(id = defaultIcon), colorFilter = ColorFilter.tint(tint), contentDescription = "item icon" ) + ModifierReused:ItemIcon.kt$ItemIconM( modifier = modifier, iconName = iconName, tint = tint, Default = { Image( modifier = modifier, painter = painterResource(id = defaultIcon), colorFilter = ColorFilter.tint(tint), contentDescription = "item icon" ) } ) + ModifierReused:ItemIcon.kt$ItemIconS( modifier = modifier, iconName = iconName, tint = tint, Default = { Image( modifier = modifier, painter = painterResource(id = defaultIcon), colorFilter = ColorFilter.tint(tint), contentDescription = "item icon" ) } ) + ModifierWithoutDefault:IvyLineChart.kt$modifier + MultiLineIfElse:AccValueFunctions.kt$AccountValueFunctions$BigDecimal.ONE + MultiLineIfElse:AccValueFunctions.kt$AccountValueFunctions$BigDecimal.ZERO + MultiLineIfElse:AccValueFunctions.kt$AccountValueFunctions$amount + MultiLineIfElse:AccValueFunctions.kt$AccountValueFunctions$toAmount + MultiLineIfElse:AmountFormatting.kt$"" + MultiLineIfElse:AmountFormatting.kt$"${localDecimalSeparator()}$decimalPartFormatted" + MultiLineIfElse:AmountFormatting.kt$numberStringWithZeros + MultiLineIfElse:AmountFormatting.kt$numberStringWithZeros.substring(0, lastTrailingZeroIndex) + MultiLineIfElse:AmountModal.kt$"" + MultiLineIfElse:AmountModal.kt$"$amount${localDecimalSeparator()}" + MultiLineIfElse:AmountModal.kt$"0${localDecimalSeparator()}" + MultiLineIfElse:AmountModal.kt$"calc_key_${value}" + MultiLineIfElse:AmountModal.kt$"calc_key_decimal_separator" + MultiLineIfElse:AmountModal.kt$"key_${value}" + MultiLineIfElse:AmountModal.kt$"key_decimal_separator" + MultiLineIfElse:AmountModal.kt$initialAmount?.takeIf { it != 0.0 }?.format(currency) ?: "" + MultiLineIfElse:AmountModal.kt$initialAmount?.takeIf { it != 0.0 }?.format(decimalCountMax) ?: "" + MultiLineIfElse:AnalyticsReportScreen.kt$Gradient.solid( Gray ) + MultiLineIfElse:AnalyticsReportScreen.kt$GradientIvy + MultiLineIfElse:BackupLogic.kt$BackupLogic$Pair(accountsFirst.id, accountsZero.id) + MultiLineIfElse:BackupLogic.kt$BackupLogic$Pair(accountsZero.id, accountsFirst.id) + MultiLineIfElse:BackupLogic.kt$BackupLogic$Pair(categoryFirst.id, categoryZero.id) + MultiLineIfElse:BackupLogic.kt$BackupLogic$Pair(categoryZero.id, categoryFirst.id) + MultiLineIfElse:BackupLogic.kt$BackupLogic$error("Couldn't unzip") + MultiLineIfElse:BackupLogic.kt$BackupLogic$error("Didn't unzip exactly one file.") + MultiLineIfElse:BackupLogic.kt$BackupLogic$return false + MultiLineIfElse:BackupLogic.kt$BackupLogic$return@scopedIOThread emptyList() + MultiLineIfElse:BudgetScreen.kt$"" + MultiLineIfElse:BudgetScreen.kt$stringResource( R.string.budget_info_both, categoryBudgetText, appBudgetMaxText ) + MultiLineIfElse:BudgetScreen.kt$stringResource(R.string.budget_info, categoryBudgetText, appBudgetMaxText) + MultiLineIfElse:BufferBattery.kt$stringResource( R.string.left_to_spend) + MultiLineIfElse:BufferBattery.kt$stringResource(R.string.buffer_exceeded_by) + MultiLineIfElse:CSVImporter.kt$CSVImporter$0.0 + MultiLineIfElse:CSVImporter.kt$CSVImporter$index / rowsCount.toDouble() + MultiLineIfElse:CSVImporter.kt$CSVImporter$index / transactions.size.toDouble() + MultiLineIfElse:CSVImporter.kt$CSVImporter$null + MultiLineIfElse:CSVImporterV2.kt$CSVImporterV2$0.0 + MultiLineIfElse:CSVImporterV2.kt$CSVImporterV2$index / rowsCount.toDouble() + MultiLineIfElse:CSVImporterV2.kt$CSVImporterV2$index / transactions.size.toDouble() + MultiLineIfElse:CSVImporterV2.kt$CSVImporterV2$null + MultiLineIfElse:CSVMapper.kt$CSVMapper$TransactionType.EXPENSE + MultiLineIfElse:CSVMapper.kt$CSVMapper$TransactionType.INCOME + MultiLineIfElse:CSVViewModel.kt$CSVViewModel$null + MultiLineIfElse:CatValueFunctions.kt$CategoryValueFunctions$BigDecimal.ZERO + MultiLineIfElse:CategoryIncomeWithAccountFiltersAct.kt$CategoryIncomeWithAccountFiltersAct$accountFilterSet.contains(it.accountId) + MultiLineIfElse:CategoryIncomeWithAccountFiltersAct.kt$CategoryIncomeWithAccountFiltersAct$true + MultiLineIfElse:CategoryModal.kt$stringResource( R.string.create_category ) + MultiLineIfElse:CategoryModal.kt$stringResource(R.string.edit_category) + MultiLineIfElse:ChooseCategoryModal.kt$UI.colors.pureInverse + MultiLineIfElse:ChooseCategoryModal.kt$findContrastTextColor(categoryColor) + MultiLineIfElse:ChoosePeriodModal.kt$null + MultiLineIfElse:ChoosePeriodModal.kt$otherEndDateTime ?.toLocalDate() ?.minusDays(1) + MultiLineIfElse:ChoosePeriodModal.kt$otherEndDateTime ?.toLocalDate() ?.plusDays(1) + MultiLineIfElse:Compose.kt$this + MultiLineIfElse:ComposeExt.kt$this + MultiLineIfElse:CurrencyPicker.kt$keyboardShownInsetDp + lastItemSpacer + MultiLineIfElse:CurrencyPicker.kt$lastItemSpacer + MultiLineIfElse:DateExt.kt$"$closeDay, ${this.formatLocal(patternNoWeekDay, zone)}" + MultiLineIfElse:DateExt.kt$this.formatLocal( pattern, zone ) + MultiLineIfElse:EditBottomSheet.kt$mutableStateOf("${convertedAmount.format(2)} $convertedAmountCurrencyCode") + MultiLineIfElse:EditBottomSheet.kt$mutableStateOf(null) + MultiLineIfElse:EditTransactionScreen.kt$onAccountChanged(it) + MultiLineIfElse:EditTransactionScreen.kt$stringResource( R.string.pay ) + MultiLineIfElse:EditTransactionScreen.kt$stringResource(R.string.get) + MultiLineIfElse:EditTransactionViewModel.kt$EditTransactionViewModel$"* This transaction is associated with Loan : ${loan.name}" + MultiLineIfElse:EditTransactionViewModel.kt$EditTransactionViewModel$"* This transaction is associated with a Loan Record of Loan : ${loan.name}" + MultiLineIfElse:EditTransactionViewModel.kt$EditTransactionViewModel$"Note: This transaction is associated with a Loan Record of Loan : ${loan.name}\n" + "You are trying to change the account associated with the loan record to an account of different currency" + "\n The Loan Record will be re-calculated based on today's currency exchanges rates" + MultiLineIfElse:EditTransactionViewModel.kt$EditTransactionViewModel$CustomExchangeRateState() + MultiLineIfElse:EditTransactionViewModel.kt$EditTransactionViewModel$customExchangeRateState.value.exchangeRate + MultiLineIfElse:EditTransactionViewModel.kt$EditTransactionViewModel$exchangeRatesLogic.convertAmount( baseCurrency = baseUserCurrency, amount = 1.0, fromCurrency = fromAccCurrencyCode, toCurrency = toAccCurrencyCode ) + MultiLineIfElse:EditTransactionViewModel.kt$EditTransactionViewModel$return EditTransactionDisplayLoan() + MultiLineIfElse:FoldTransactions.kt$sum + MultiLineIfElse:FoldTransactions.kt$sumTransactionsInternal( valueFunctionArgument = valueFunctionArgument, transactions = transactions.drop(1), valueFunctions = valueFunctions, sum = sum.mapIndexedNel { index, sumValue -> val valueFunction = valueFunctions[index] sumValue + valueFunction(transactions.first(), valueFunctionArgument) } ) + MultiLineIfElse:FoldTransactions.kt$sumTransactionsSuspendInternal( valueFunctionArgument = valueFunctionArgument, transactions = transactions.drop(1), valueFunctions = valueFunctions, sum = sum.mapIndexedNelSuspend { index, sumValue -> val valueFunction = valueFunctions[index] sumValue + valueFunction(transactions.first(), valueFunctionArgument) } ) + MultiLineIfElse:GitHubBackupCard.kt$LocalContentColor.current + MultiLineIfElse:GitHubBackupCard.kt$MaterialTheme.colorScheme.error + MultiLineIfElse:GitHubBackupViewModel.kt$GitHubBackupViewModel$null + MultiLineIfElse:HomeHeader.kt$onBalanceClick() + MultiLineIfElse:HomeHeader.kt$onHiddenBalanceClick() + MultiLineIfElse:HomeViewModel.kt$HomeViewModel$stateVal() + MultiLineIfElse:ImportResultUI.kt$(result.transactionsImported / result.rowsFound.toDouble()) * 100 + MultiLineIfElse:ImportResultUI.kt$0.0 + MultiLineIfElse:ImportViewModel.kt$ImportViewModel$restoreCSVFile(fileUri = fileUri, importType = importType) + MultiLineIfElse:IntervalPickerRow.kt$Gradient .solid(UI.colors.medium) .asHorizontalBrush() + MultiLineIfElse:IntervalPickerRow.kt$GradientIvy.asHorizontalBrush() + MultiLineIfElse:ItemIcon.kt$ContentScale.Fit + MultiLineIfElse:ItemIcon.kt$ContentScale.None + MultiLineIfElse:ItemStatisticScreen.kt$MediumBlack.copy(alpha = 0.9f) + MultiLineIfElse:ItemStatisticScreen.kt$MediumWhite.copy(alpha = 0.9f) + MultiLineIfElse:ItemStatisticScreen.kt$balancePrefix( income = income, expenses = expenses ) + MultiLineIfElse:ItemStatisticScreen.kt$choosePeriodModal = ChoosePeriodModalData( period = period ) + MultiLineIfElse:ItemStatisticScreen.kt$null + MultiLineIfElse:IvyBorderButton.kt$SolidColor(UI.colors.gray) + MultiLineIfElse:IvyBorderButton.kt$backgroundGradient.asHorizontalBrush() + MultiLineIfElse:IvyButton.kt$SolidColor(UI.colors.gray) + MultiLineIfElse:IvyButton.kt$backgroundGradient.asHorizontalBrush() + MultiLineIfElse:IvyCircleButton.kt$backgroundGradient.asHorizontalBrush() + MultiLineIfElse:IvyCircleButton.kt$backgroundGradient.asVerticalBrush() + MultiLineIfElse:IvyTheme.kt$darkColorScheme() + MultiLineIfElse:IvyTheme.kt$lightColorScheme() + MultiLineIfElse:Keyboard.kt$0.dp + MultiLineIfElse:Keyboard.kt$keyboardOnlyWindowInsets().bottom.toDensityDp() + MultiLineIfElse:LTLoanMapper.kt$LTLoanMapper$return@computationThread + MultiLineIfElse:Loan.kt$Loan$stringRes( R.string.lent_uppercase) + MultiLineIfElse:Loan.kt$Loan$stringRes(R.string.borrowed_uppercase) + MultiLineIfElse:LoanDetailsScreen.kt$IvyButton( modifier = Modifier.padding(end = 16.dp, top = 12.dp), backgroundGradient = Gradient.solid(loan.color.toComposeColor()), hasGlow = false, iconTint = contrastColor, text = selectedLoanAccount.name, iconStart = getCustomIconIdS( iconName = selectedLoanAccount.icon, defaultIcon = R.drawable.ic_custom_account_s ), textStyle = UI.typo.c.style( color = contrastColor, fontWeight = FontWeight.ExtraBold ), padding = 8.dp, iconEdgePadding = 10.dp ) { nav.navigateTo( ItemStatistic( accountId = selectedLoanAccount.id, categoryId = null ) ) } + MultiLineIfElse:LoanDetailsScreen.kt$MediumBlack.copy(alpha = 0.9f) + MultiLineIfElse:LoanDetailsScreen.kt$MediumWhite.copy(alpha = 0.9f) + MultiLineIfElse:LoanDetailsScreen.kt$Spacer(Modifier.height(12.dp)) + MultiLineIfElse:LoanDetailsScreen.kt$Spacer(Modifier.height(16.dp)) + MultiLineIfElse:LoanDetailsViewModel.kt$LoanDetailsViewModel$loanInterestAmtPaid += convertedAmount + MultiLineIfElse:LoanRecordModal.kt$save( loanRecord = initialRecord, noteTextFieldValue = noteTextFieldValue, amount = amount, dateTime = dateTime, loanRecordInterest = loanInterest, selectedAccount = selectedAcc, createLoanRecordTransaction = createLoanRecordTrans, reCalculateAmount = reCalculate, onCreate = onCreate, onEdit = onEdit, dismiss = dismiss, ) + MultiLineIfElse:LoanRecordModal.kt$stringResource( R.string.new_record) + MultiLineIfElse:LoanRecordModal.kt$stringResource(R.string.edit_record) + MultiLineIfElse:LoanTransactionsCore.kt$LoanTransactionsCore$if (loanType == LoanType.BORROW) TransactionType.EXPENSE else TransactionType.INCOME + MultiLineIfElse:LoanTransactionsCore.kt$LoanTransactionsCore$if (loanType == LoanType.BORROW) TransactionType.INCOME else TransactionType.EXPENSE + MultiLineIfElse:LoanTransactionsCore.kt$LoanTransactionsCore$ioThread { loanCategory?.let { categoryDao.save(it.toEntity()) } } + MultiLineIfElse:LoanTransactionsCore.kt$LoanTransactionsCore$listOf(transactionDao.findLoanRecordTransaction(loanRecordId!!)).map { it?.toDomain() } + MultiLineIfElse:LoanTransactionsCore.kt$LoanTransactionsCore$null + MultiLineIfElse:LoanTransactionsCore.kt$LoanTransactionsCore$return + MultiLineIfElse:LoanTransactionsCore.kt$LoanTransactionsCore$return existingCategoryId + MultiLineIfElse:LoanTransactionsCore.kt$LoanTransactionsCore$transactionDao.findAllByLoanId(loanId = loanId) .map { it.toDomain() } + MultiLineIfElse:LoanTransactionsLogic.kt$LoanTransactionsLogic$return@computationThread + MultiLineIfElse:MonthPickerModal.kt$UI.colors.pureInverse + MultiLineIfElse:MonthPickerModal.kt$findContrastTextColor(monthColor) + MultiLineIfElse:OnboardingComponents.kt$SolidColor(UI.colors.gray) + MultiLineIfElse:OnboardingComponents.kt$backgroundGradient.asHorizontalBrush() + MultiLineIfElse:PieChart.kt$PieChartView$360 - Math.toDegrees(acos((-centerY * y2) / (d1 * d2))) + MultiLineIfElse:PieChartAct.kt$PieChartAct$BigDecimal.ZERO + MultiLineIfElse:PieChartAct.kt$PieChartAct$accountIdFilterSet.contains(it.accountId) + MultiLineIfElse:PieChartAct.kt$PieChartAct$accountIdFilterSet.contains(it.toAccountId) + MultiLineIfElse:PieChartAct.kt$PieChartAct$allAccounts then ::filterExcluded + MultiLineIfElse:PieChartAct.kt$PieChartAct$allAccounts thenFilter { accountIdFilterList.contains(it.id) } + MultiLineIfElse:PieChartAct.kt$PieChartAct$categoryAmounts then { it.sortedByDescending { ca -> ca.amount } } + MultiLineIfElse:PieChartAct.kt$PieChartAct$emptyList() + MultiLineIfElse:PieChartAct.kt$PieChartAct$incExpQuad.transferExpense + MultiLineIfElse:PieChartAct.kt$PieChartAct$incExpQuad.transferExpense.toDouble() + MultiLineIfElse:PieChartAct.kt$PieChartAct$incExpQuad.transferIncome + MultiLineIfElse:PieChartAct.kt$PieChartAct$incExpQuad.transferIncome.toDouble() + MultiLineIfElse:PieChartAct.kt$PieChartAct$trans.filter { it.type == type && it.categoryId == category?.id } + MultiLineIfElse:PieChartStatisticScreen.kt$GradientGreen + MultiLineIfElse:PieChartStatisticScreen.kt$UI.colors.pure + MultiLineIfElse:PieChartStatisticScreen.kt$White + MultiLineIfElse:PieChartStatisticScreen.kt$gradientExpenses() + MultiLineIfElse:PieChartStatisticScreen.kt$stringResource( R.string.income ) + MultiLineIfElse:PieChartStatisticScreen.kt$stringResource(R.string.expenses) + MultiLineIfElse:PieChartStatisticScreen.kt$stringResource(R.string.percent, "0") + MultiLineIfElse:PieChartStatisticScreen.kt$stringResource(R.string.percent, ((amount / totalAmount) * 100).format(2)) + MultiLineIfElse:PieChartStatisticViewModel.kt$PieChartStatisticViewModel$ChoosePeriodModalData(period = timePeriod) + MultiLineIfElse:PieChartStatisticViewModel.kt$PieChartStatisticViewModel$SelectedCategory(category = clickedCategory) + MultiLineIfElse:PieChartStatisticViewModel.kt$PieChartStatisticViewModel$null + MultiLineIfElse:PlannedPaymentsLogic.kt$PlannedPaymentsLogic$paidTransactions.forEach { paidTransaction -> transactionDao.flagDeleted(paidTransaction.id) } + MultiLineIfElse:PlannedPaymentsLogic.kt$PlannedPaymentsLogic$paidTransactions.forEach { paidTransaction -> transactionDao.save(paidTransaction.toEntity()) } + MultiLineIfElse:PlannedPaymentsLogic.kt$PlannedPaymentsLogic$transactionDao.flagDeleted(paidTransaction.id) + MultiLineIfElse:PlannedPaymentsLogic.kt$PlannedPaymentsLogic$transactionDao.save(paidTransaction.toEntity()) + MultiLineIfElse:PlansSheet.kt$UI.colors.pureInverse + MultiLineIfElse:PlansSheet.kt$White + MultiLineIfElse:PlansSheet.kt$null + MultiLineIfElse:ReportScreen.kt$Spacer(Modifier.height(32.dp)) + MultiLineIfElse:ReportScreen.kt$nav.navigateTo( PieChartStatistic( type = TransactionType.EXPENSE, transactions = state.transactions, accountList = state.accountIdFilters, treatTransfersAsIncomeExpense = state.treatTransfersAsIncExp ) ) + MultiLineIfElse:ReportScreen.kt$nav.navigateTo( PieChartStatistic( type = TransactionType.INCOME, transactions = state.transactions, accountList = state.accountIdFilters, treatTransfersAsIncomeExpense = state.treatTransfersAsIncExp ) ) + MultiLineIfElse:RestClient.kt$RestClient.Companion$exception + MultiLineIfElse:RootActivity.kt$RootActivity$viewModel.checkUserInactiveTimeStatus() + MultiLineIfElse:RootActivity.kt$RootActivity$viewModel.startUserInactiveTimeCounter() + MultiLineIfElse:TransactionCard.kt$Orange + MultiLineIfElse:TransactionCard.kt$UI.colors.gray + MultiLineIfElse:TransactionReminderLogic.kt$TransactionReminderLogic$return + MultiLineIfElse:Transactions.kt$Gradient( Black, Black ) + MultiLineIfElse:Transactions.kt$Gradient(White, White) + MultiLineIfElse:UtilExt.kt$it.titlecase( Locale.getDefault() ) + MultiLineIfElse:UtilExt.kt$it.toString() + MultiLineIfElse:ViewPager.kt$(state.currentPage + 1).coerceAtMost(state.maxPage) + MultiLineIfElse:ViewPager.kt$(state.currentPage - 1).coerceAtLeast(state.minPage) + MultiLineIfElse:ViewPager.kt$1f - abs(currentPageOffset) + MultiLineIfElse:ViewPager.kt$abs(currentPageOffset) + MultiLineIfElse:ViewPager.kt$currentPage + MultiLineIfElse:WalletCharts.kt$accumulator + MultiLineIfElse:WebViewScreen.kt$WebSettingsCompat.FORCE_DARK_OFF + MultiLineIfElse:WebViewScreen.kt$WebSettingsCompat.FORCE_DARK_ON + MultiLineIfElse:ZipUtils.kt$"$it${File.separator}" + MultiLineIfElse:ZipUtils.kt$(file.parent!!).substring( file.parent!!.lastIndexOf("/") ) + "/" + file.name + MultiLineIfElse:ZipUtils.kt$file.name + MultiLineIfElse:ZipUtils.kt$it + MultiLineIfElse:ZipUtils.kt$throw IllegalStateException("Location file must be directory or not exist") + MultipleEmitters:AccountsTab.kt$AccountCard + MultipleEmitters:AmountCurrency.kt$AmountCurrencyB1 + MultipleEmitters:AmountCurrency.kt$AmountCurrencyCaption + MultipleEmitters:AmountCurrency.kt$AmountCurrencyH1 + MultipleEmitters:AmountModal.kt$AmountKeyboard + MultipleEmitters:BudgetModal.kt$CategoriesRow + MultipleEmitters:BudgetScreen.kt$BudgetItem + MultipleEmitters:CSVScreen.kt$AmountMetadata + MultipleEmitters:CSVScreen.kt$DateMetadataUI + MultipleEmitters:CSVScreen.kt$TypeMetadata + MultipleEmitters:CategoriesScreen.kt$CategoryCard + MultipleEmitters:CategoryCharts.kt$CategoriesChart + MultipleEmitters:ChoosePeriodModal.kt$AllTime + MultipleEmitters:ChoosePeriodModal.kt$ChooseMonth + MultipleEmitters:ChoosePeriodModal.kt$FromToRange + MultipleEmitters:ChoosePeriodModal.kt$LastNPeriod + MultipleEmitters:CurrencyPicker.kt$CurrencyItemCard + MultipleEmitters:CurrencyPicker.kt$LetterDividerItem + MultipleEmitters:DefaultImportSteps.kt$DefaultImportSteps + MultipleEmitters:EditBottomSheet.kt$Account + MultipleEmitters:EditBottomSheet.kt$AddAccount + MultipleEmitters:FilterOverlay.kt$AccountsFilter + MultipleEmitters:FilterOverlay.kt$AmountFilter + MultipleEmitters:FilterOverlay.kt$CategoriesFilter + MultipleEmitters:FilterOverlay.kt$FilterDivider + MultipleEmitters:FilterOverlay.kt$KeywordsFilter + MultipleEmitters:FilterOverlay.kt$ListItem + MultipleEmitters:FilterOverlay.kt$PeriodFilter + MultipleEmitters:FilterOverlay.kt$TypeFilter + MultipleEmitters:FinancistoSteps.kt$FinancistoSteps + MultipleEmitters:HistoryDateDivider.kt$HistoryDateDivider + MultipleEmitters:HomeHeader.kt$HomeHeader + MultipleEmitters:HomeMoreMenu.kt$QuickAccess + MultipleEmitters:ImportFrom.kt$ImportOption + MultipleEmitters:ImportInstructions.kt$UploadFileStep + MultipleEmitters:IvyBorderButton.kt$IconEnd + MultipleEmitters:IvyBorderButton.kt$IconStart + MultipleEmitters:IvyButton.kt$IconEnd + MultipleEmitters:IvyButton.kt$IconStart + MultipleEmitters:IvyColorPicker.kt$ColorItem + MultipleEmitters:IvyWalletSteps.kt$IvyWalletSteps + MultipleEmitters:LoanDetailsScreen.kt$NoLoanRecordsEmptyState + MultipleEmitters:LoanModal.kt$Account + MultipleEmitters:LoanModal.kt$AddAccount + MultipleEmitters:LoanRecordModal.kt$Account + MultipleEmitters:LoanRecordModal.kt$AddAccount + MultipleEmitters:MainBottomBar.kt$AddExpenseButton + MultipleEmitters:MainBottomBar.kt$AddIncomeButton + MultipleEmitters:MainBottomBar.kt$AddTransferButton + MultipleEmitters:MonefySteps.kt$MonefySteps + MultipleEmitters:MoneyManagerPraseSteps.kt$MoneyManagerPraseSteps + MultipleEmitters:OnboardingSplashLogin.kt$LocalAccountExplanation + MultipleEmitters:PlansSheet.kt$LongNoticeText + MultipleEmitters:RecurringRuleModal.kt$MultipleTimes + MultipleEmitters:RecurringRuleModal.kt$OneTime + MultipleEmitters:ServerStopScreen.kt$Content + MultipleEmitters:SettingsScreen.kt$AccountCardLocalAccount + MultipleEmitters:SettingsScreen.kt$AccountCardUser + MultipleEmitters:SettingsScreen.kt$SettingsSectionDivider + MultipleEmitters:SpendeeSteps.kt$SpendeeSteps + MultipleEmitters:TransactionCard.kt$TransactionCard + MultipleEmitters:TransactionSectionDivider.kt$SectionDivider + MultipleEmitters:WalletCharts.kt$BalanceChart + MutableParams:HomeTab.kt$hideBalanceRowState + NestedBlockDepth:AccValueFunctions.kt$AccountValueFunctions$fun balance( transaction: Transaction, accountId: UUID ): BigDecimal + NewLineAtEndOfFile:AccValueFunctions.kt$com.ivy.wallet.domain.pure.transaction.AccValueFunctions.kt + NewLineAtEndOfFile:Account.kt$com.ivy.wallet.domain.data.core.Account.kt + NewLineAtEndOfFile:AccountBalance.kt$com.ivy.wallet.ui.onboarding.model.AccountBalance.kt + NewLineAtEndOfFile:AccountByIdAct.kt$com.ivy.wallet.domain.action.account.AccountByIdAct.kt + NewLineAtEndOfFile:AccountCharts.kt$com.ivy.wallet.ui.charts.charts.AccountCharts.kt + NewLineAtEndOfFile:AccountCreator.kt$com.ivy.wallet.domain.deprecated.logic.AccountCreator.kt + NewLineAtEndOfFile:AccountDao.kt$com.ivy.wallet.io.persistence.dao.AccountDao.kt + NewLineAtEndOfFile:AccountData.kt$com.ivy.wallet.ui.accounts.AccountData.kt + NewLineAtEndOfFile:AccountDataAct.kt$com.ivy.wallet.domain.action.viewmodel.account.AccountDataAct.kt + NewLineAtEndOfFile:AccountEntity.kt$com.ivy.wallet.io.persistence.data.AccountEntity.kt + NewLineAtEndOfFile:AccountFunctions.kt$com.ivy.wallet.domain.pure.account.AccountFunctions.kt + NewLineAtEndOfFile:AccountModal.kt$com.ivy.wallet.ui.theme.modal.edit.AccountModal.kt + NewLineAtEndOfFile:AccountService.kt$com.ivy.wallet.io.network.service.AccountService.kt + NewLineAtEndOfFile:AccountState.kt$com.ivy.wallet.ui.accounts.AccountState.kt + NewLineAtEndOfFile:AccountSync.kt$com.ivy.wallet.domain.deprecated.sync.item.AccountSync.kt + NewLineAtEndOfFile:AccountUploader.kt$com.ivy.wallet.domain.deprecated.sync.uploader.AccountUploader.kt + NewLineAtEndOfFile:AccountsAct.kt$com.ivy.wallet.domain.action.account.AccountsAct.kt + NewLineAtEndOfFile:AccountsEvent.kt$com.ivy.wallet.ui.accounts.AccountsEvent.kt + NewLineAtEndOfFile:AccountsResponse.kt$com.ivy.wallet.io.network.request.account.AccountsResponse.kt + NewLineAtEndOfFile:AccountsUpdatedEvent.kt$com.ivy.wallet.domain.event.AccountsUpdatedEvent.kt + NewLineAtEndOfFile:AccountsViewModel.kt$com.ivy.wallet.ui.accounts.AccountsViewModel.kt + NewLineAtEndOfFile:ActivityResultExt.kt$com.ivy.wallet.utils.ActivityResultExt.kt + NewLineAtEndOfFile:AddKeywordModal.kt$com.ivy.wallet.ui.theme.modal.AddKeywordModal.kt + NewLineAtEndOfFile:AddPrimaryAttributeButton.kt$com.ivy.wallet.ui.theme.components.AddPrimaryAttributeButton.kt + NewLineAtEndOfFile:AddRateModal.kt$com.ivy.wallet.ui.exchangerates.modal.AddRateModal.kt + NewLineAtEndOfFile:AddTransactionWidget.kt$com.ivy.wallet.ui.widget.AddTransactionWidget.kt + NewLineAtEndOfFile:AddTransactionWidgetClick.kt$com.ivy.wallet.ui.widget.AddTransactionWidgetClick.kt + NewLineAtEndOfFile:AddTransactionWidgetCompact.kt$com.ivy.wallet.ui.widget.AddTransactionWidgetCompact.kt + NewLineAtEndOfFile:AllTrnsAct.kt$com.ivy.wallet.domain.action.transaction.AllTrnsAct.kt + NewLineAtEndOfFile:AmountCurrency.kt$com.ivy.wallet.ui.theme.wallet.AmountCurrency.kt + NewLineAtEndOfFile:AmountFormatting.kt$com.ivy.wallet.utils.AmountFormatting.kt + NewLineAtEndOfFile:AnalyticsEvent.kt$com.ivy.wallet.domain.data.analytics.AnalyticsEvent.kt + NewLineAtEndOfFile:AnalyticsReportResponse.kt$com.ivy.wallet.io.network.request.analytics.AnalyticsReportResponse.kt + NewLineAtEndOfFile:AnalyticsReportViewModel.kt$com.ivy.wallet.ui.analytics.AnalyticsReportViewModel.kt + NewLineAtEndOfFile:AnalyticsService.kt$com.ivy.wallet.io.network.service.AnalyticsService.kt + NewLineAtEndOfFile:AnalyticsTab.kt$com.ivy.wallet.ui.analytics.AnalyticsTab.kt + NewLineAtEndOfFile:Android.kt$com.ivy.design.utils.Android.kt + NewLineAtEndOfFile:Animation.kt$com.ivy.design.utils.Animation.kt + NewLineAtEndOfFile:AppBaseData.kt$com.ivy.wallet.ui.data.AppBaseData.kt + NewLineAtEndOfFile:AppModuleDI.kt$com.ivy.wallet.AppModuleDI.kt + NewLineAtEndOfFile:AuthProviderType.kt$com.ivy.wallet.domain.data.AuthProviderType.kt + NewLineAtEndOfFile:AuthResponse.kt$com.ivy.wallet.io.network.request.auth.AuthResponse.kt + NewLineAtEndOfFile:AuthService.kt$com.ivy.wallet.io.network.service.AuthService.kt + NewLineAtEndOfFile:BackBottomBar.kt$com.ivy.wallet.ui.theme.components.BackBottomBar.kt + NewLineAtEndOfFile:Background.kt$com.ivy.design.l1_buildingBlocks.data.Background.kt + NewLineAtEndOfFile:BackupLogic.kt$com.ivy.wallet.domain.deprecated.logic.zip.BackupLogic.kt + NewLineAtEndOfFile:BalanceChartAct.kt$com.ivy.wallet.domain.action.charts.BalanceChartAct.kt + NewLineAtEndOfFile:BalanceRow.kt$com.ivy.wallet.ui.theme.components.BalanceRow.kt + NewLineAtEndOfFile:BalanceViewModel.kt$com.ivy.wallet.ui.balance.BalanceViewModel.kt + NewLineAtEndOfFile:BaseCurrencyAct.kt$com.ivy.wallet.domain.action.settings.BaseCurrencyAct.kt + NewLineAtEndOfFile:Budget.kt$com.ivy.wallet.domain.data.core.Budget.kt + NewLineAtEndOfFile:BudgetBattery.kt$com.ivy.wallet.ui.theme.components.BudgetBattery.kt + NewLineAtEndOfFile:BudgetCreator.kt$com.ivy.wallet.domain.deprecated.logic.BudgetCreator.kt + NewLineAtEndOfFile:BudgetDTO.kt$com.ivy.wallet.io.network.data.BudgetDTO.kt + NewLineAtEndOfFile:BudgetDao.kt$com.ivy.wallet.io.persistence.dao.BudgetDao.kt + NewLineAtEndOfFile:BudgetEntity.kt$com.ivy.wallet.io.persistence.data.BudgetEntity.kt + NewLineAtEndOfFile:BudgetModal.kt$com.ivy.wallet.ui.theme.modal.BudgetModal.kt + NewLineAtEndOfFile:BudgetService.kt$com.ivy.wallet.io.network.service.BudgetService.kt + NewLineAtEndOfFile:BudgetSync.kt$com.ivy.wallet.domain.deprecated.sync.item.BudgetSync.kt + NewLineAtEndOfFile:BudgetUploader.kt$com.ivy.wallet.domain.deprecated.sync.uploader.BudgetUploader.kt + NewLineAtEndOfFile:BudgetViewModel.kt$com.ivy.wallet.ui.budget.BudgetViewModel.kt + NewLineAtEndOfFile:BudgetsAct.kt$com.ivy.wallet.domain.action.budget.BudgetsAct.kt + NewLineAtEndOfFile:BudgetsResponse.kt$com.ivy.wallet.io.network.request.budget.BudgetsResponse.kt + NewLineAtEndOfFile:BufferBattery.kt$com.ivy.wallet.ui.theme.components.BufferBattery.kt + NewLineAtEndOfFile:BufferInfo.kt$com.ivy.wallet.ui.data.BufferInfo.kt + NewLineAtEndOfFile:BufferModal.kt$com.ivy.wallet.ui.theme.modal.BufferModal.kt + NewLineAtEndOfFile:ButtonWithIcon.kt$com.ivy.design.l2_components.ButtonWithIcon.kt + NewLineAtEndOfFile:CSVEvent.kt$com.ivy.wallet.ui.csv.CSVEvent.kt + NewLineAtEndOfFile:CSVImporter.kt$com.ivy.wallet.domain.deprecated.logic.csv.CSVImporter.kt + NewLineAtEndOfFile:CSVImporterV2.kt$com.ivy.wallet.ui.csv.domain.CSVImporterV2.kt + NewLineAtEndOfFile:CSVMapper.kt$com.ivy.wallet.domain.deprecated.logic.csv.CSVMapper.kt + NewLineAtEndOfFile:CSVNormalizer.kt$com.ivy.wallet.domain.deprecated.logic.csv.CSVNormalizer.kt + NewLineAtEndOfFile:CSVRow.kt$com.ivy.wallet.domain.deprecated.logic.csv.model.CSVRow.kt + NewLineAtEndOfFile:CSVState.kt$com.ivy.wallet.ui.csv.CSVState.kt + NewLineAtEndOfFile:CSVViewModel.kt$com.ivy.wallet.ui.csv.CSVViewModel.kt + NewLineAtEndOfFile:CalcAccBalanceAct.kt$com.ivy.wallet.domain.action.account.CalcAccBalanceAct.kt + NewLineAtEndOfFile:CalcAccIncomeExpenseAct.kt$com.ivy.wallet.domain.action.account.CalcAccIncomeExpenseAct.kt + NewLineAtEndOfFile:CalcBufferDiffAct.kt$com.ivy.wallet.domain.action.settings.CalcBufferDiffAct.kt + NewLineAtEndOfFile:CalcIncomeExpenseAct.kt$com.ivy.wallet.domain.action.wallet.CalcIncomeExpenseAct.kt + NewLineAtEndOfFile:CalcTrnsIncomeExpenseAct.kt$com.ivy.wallet.domain.action.transaction.CalcTrnsIncomeExpenseAct.kt + NewLineAtEndOfFile:CalculatorModal.kt$com.ivy.wallet.ui.theme.modal.edit.CalculatorModal.kt + NewLineAtEndOfFile:Card.kt$com.ivy.design.l3_ivyComponents.Card.kt + NewLineAtEndOfFile:CatValueFunctions.kt$com.ivy.wallet.domain.pure.transaction.CatValueFunctions.kt + NewLineAtEndOfFile:CategoriesAct.kt$com.ivy.wallet.domain.action.category.CategoriesAct.kt + NewLineAtEndOfFile:CategoriesScreen.kt$com.ivy.wallet.ui.category.CategoriesScreen.kt + NewLineAtEndOfFile:Category.kt$com.ivy.wallet.domain.data.core.Category.kt + NewLineAtEndOfFile:Category.kt$com.ivy.wallet.ui.edit.core.Category.kt + NewLineAtEndOfFile:CategoryAmount.kt$com.ivy.wallet.ui.statistic.level1.CategoryAmount.kt + NewLineAtEndOfFile:CategoryByIdAct.kt$com.ivy.wallet.domain.action.category.CategoryByIdAct.kt + NewLineAtEndOfFile:CategoryCreator.kt$com.ivy.wallet.domain.deprecated.logic.CategoryCreator.kt + NewLineAtEndOfFile:CategoryDTO.kt$com.ivy.wallet.io.network.data.CategoryDTO.kt + NewLineAtEndOfFile:CategoryDao.kt$com.ivy.wallet.io.persistence.dao.CategoryDao.kt + NewLineAtEndOfFile:CategoryData.kt$com.ivy.wallet.ui.category.CategoryData.kt + NewLineAtEndOfFile:CategoryEntity.kt$com.ivy.wallet.io.persistence.data.CategoryEntity.kt + NewLineAtEndOfFile:CategoryIncomeWithAccountFiltersAct.kt$com.ivy.wallet.domain.action.category.CategoryIncomeWithAccountFiltersAct.kt + NewLineAtEndOfFile:CategoryModal.kt$com.ivy.wallet.ui.theme.modal.edit.CategoryModal.kt + NewLineAtEndOfFile:CategoryService.kt$com.ivy.wallet.io.network.service.CategoryService.kt + NewLineAtEndOfFile:CategorySync.kt$com.ivy.wallet.domain.deprecated.sync.item.CategorySync.kt + NewLineAtEndOfFile:CategoryTrnsBetweenAct.kt$com.ivy.wallet.domain.action.category.CategoryTrnsBetweenAct.kt + NewLineAtEndOfFile:CategoryUploader.kt$com.ivy.wallet.domain.deprecated.sync.uploader.CategoryUploader.kt + NewLineAtEndOfFile:CategoryValues.kt$com.ivy.wallet.ui.charts.CategoryValues.kt + NewLineAtEndOfFile:ChangeTransactionTypeModal.kt$com.ivy.wallet.ui.theme.components.ChangeTransactionTypeModal.kt + NewLineAtEndOfFile:ChartPeriod.kt$com.ivy.wallet.domain.pure.charts.ChartPeriod.kt + NewLineAtEndOfFile:ChartType.kt$com.ivy.wallet.ui.charts.ChartType.kt + NewLineAtEndOfFile:ChartsCore.kt$com.ivy.wallet.domain.pure.charts.ChartsCore.kt + NewLineAtEndOfFile:CheckEmailRequest.kt$com.ivy.wallet.io.network.request.auth.CheckEmailRequest.kt + NewLineAtEndOfFile:CheckEmailResponse.kt$com.ivy.wallet.io.network.request.auth.CheckEmailResponse.kt + NewLineAtEndOfFile:Checkbox.kt$com.ivy.design.l2_components.Checkbox.kt + NewLineAtEndOfFile:ChooseCategoryModal.kt$com.ivy.wallet.ui.theme.modal.edit.ChooseCategoryModal.kt + NewLineAtEndOfFile:ChoosePeriodModal.kt$com.ivy.wallet.ui.theme.modal.ChoosePeriodModal.kt + NewLineAtEndOfFile:ChooseStartDateOfMonthModal.kt$com.ivy.wallet.ui.theme.modal.ChooseStartDateOfMonthModal.kt + NewLineAtEndOfFile:CircleButtons.kt$com.ivy.wallet.ui.theme.components.CircleButtons.kt + NewLineAtEndOfFile:ClosedTimeRange.kt$com.ivy.wallet.domain.pure.data.ClosedTimeRange.kt + NewLineAtEndOfFile:ColoredItemCard.kt$com.ivy.design.l4_patterns.ColoredItemCard.kt + NewLineAtEndOfFile:Colors.kt$com.ivy.design.l0_system.Colors.kt + NewLineAtEndOfFile:ColumnRoot.kt$com.ivy.design.l1_buildingBlocks.ColumnRoot.kt + NewLineAtEndOfFile:Compose.kt$com.ivy.design.utils.Compose.kt + NewLineAtEndOfFile:ComposeExt.kt$com.ivy.wallet.utils.ComposeExt.kt + NewLineAtEndOfFile:Constants.kt$com.ivy.wallet.Constants.kt + NewLineAtEndOfFile:CreateAccountData.kt$com.ivy.wallet.domain.deprecated.logic.model.CreateAccountData.kt + NewLineAtEndOfFile:CreateBudgetData.kt$com.ivy.wallet.domain.deprecated.logic.model.CreateBudgetData.kt + NewLineAtEndOfFile:CreateCategoryData.kt$com.ivy.wallet.domain.deprecated.logic.model.CreateCategoryData.kt + NewLineAtEndOfFile:CreateLoanData.kt$com.ivy.wallet.domain.deprecated.logic.model.CreateLoanData.kt + NewLineAtEndOfFile:CreateLoanRecordData.kt$com.ivy.wallet.domain.deprecated.logic.model.CreateLoanRecordData.kt + NewLineAtEndOfFile:CrupdateBudgetRequest.kt$com.ivy.wallet.io.network.request.budget.CrupdateBudgetRequest.kt + NewLineAtEndOfFile:CurrencyModal.kt$com.ivy.wallet.ui.theme.modal.CurrencyModal.kt + NewLineAtEndOfFile:CurrencyPicker.kt$com.ivy.wallet.ui.theme.components.CurrencyPicker.kt + NewLineAtEndOfFile:CustomExchangeRateCard.kt$com.ivy.wallet.ui.theme.components.CustomExchangeRateCard.kt + NewLineAtEndOfFile:CustomExchangeRateState.kt$com.ivy.wallet.domain.data.CustomExchangeRateState.kt + NewLineAtEndOfFile:CustomerJourney.kt$com.ivy.wallet.ui.home.CustomerJourney.kt + NewLineAtEndOfFile:CustomerJourneyCardData.kt$com.ivy.wallet.domain.deprecated.logic.model.CustomerJourneyCardData.kt + NewLineAtEndOfFile:DataCircle.kt$com.ivy.wallet.ui.analytics.DataCircle.kt + NewLineAtEndOfFile:DateExt.kt$com.ivy.wallet.utils.DateExt.kt + NewLineAtEndOfFile:DefaultImportSteps.kt$com.ivy.wallet.ui.csvimport.flow.instructions.DefaultImportSteps.kt + NewLineAtEndOfFile:DeleteAccountRequest.kt$com.ivy.wallet.io.network.request.account.DeleteAccountRequest.kt + NewLineAtEndOfFile:DeleteAllData.kt$com.ivy.design.l4_patterns.delete.DeleteAllData.kt + NewLineAtEndOfFile:DeleteBudgetRequest.kt$com.ivy.wallet.io.network.request.budget.DeleteBudgetRequest.kt + NewLineAtEndOfFile:DeleteButton.kt$com.ivy.wallet.ui.theme.components.DeleteButton.kt + NewLineAtEndOfFile:DeleteItem.kt$com.ivy.design.l4_patterns.delete.DeleteItem.kt + NewLineAtEndOfFile:DeleteLoanRecordRequest.kt$com.ivy.wallet.io.network.request.loan.DeleteLoanRecordRequest.kt + NewLineAtEndOfFile:DeleteLoanRequest.kt$com.ivy.wallet.io.network.request.loan.DeleteLoanRequest.kt + NewLineAtEndOfFile:DeleteModal.kt$com.ivy.wallet.ui.theme.modal.DeleteModal.kt + NewLineAtEndOfFile:DeletePlannedPaymentRuleRequest.kt$com.ivy.wallet.io.network.request.planned.DeletePlannedPaymentRuleRequest.kt + NewLineAtEndOfFile:DeleteTransactionRequest.kt$com.ivy.wallet.io.network.request.transaction.DeleteTransactionRequest.kt + NewLineAtEndOfFile:DeleteWalletCategoryRequest.kt$com.ivy.wallet.io.network.request.category.DeleteWalletCategoryRequest.kt + NewLineAtEndOfFile:Description.kt$com.ivy.wallet.ui.edit.core.Description.kt + NewLineAtEndOfFile:DescriptionModal.kt$com.ivy.wallet.ui.theme.modal.edit.DescriptionModal.kt + NewLineAtEndOfFile:DisplayBudget.kt$com.ivy.wallet.ui.budget.model.DisplayBudget.kt + NewLineAtEndOfFile:DisplayLoan.kt$com.ivy.wallet.ui.loan.data.DisplayLoan.kt + NewLineAtEndOfFile:Dividers.kt$com.ivy.design.l1_buildingBlocks.Dividers.kt + NewLineAtEndOfFile:DonateEvent.kt$com.ivy.wallet.ui.donate.DonateEvent.kt + NewLineAtEndOfFile:DonateModal.kt$com.ivy.wallet.ui.donate.DonateModal.kt + NewLineAtEndOfFile:DonateOption.kt$com.ivy.wallet.ui.donate.data.DonateOption.kt + NewLineAtEndOfFile:DonateScreen.kt$com.ivy.wallet.ui.donate.DonateScreen.kt + NewLineAtEndOfFile:DonateState.kt$com.ivy.wallet.ui.donate.DonateState.kt + NewLineAtEndOfFile:DonateViewModel.kt$com.ivy.wallet.ui.donate.DonateViewModel.kt + NewLineAtEndOfFile:DueDate.kt$com.ivy.wallet.ui.edit.core.DueDate.kt + NewLineAtEndOfFile:DueSection.kt$com.ivy.wallet.ui.data.DueSection.kt + NewLineAtEndOfFile:DueTrnsAct.kt$com.ivy.wallet.domain.action.transaction.DueTrnsAct.kt + NewLineAtEndOfFile:DueTrnsInfoAct.kt$com.ivy.wallet.domain.action.viewmodel.home.DueTrnsInfoAct.kt + NewLineAtEndOfFile:EditBottomSheet.kt$com.ivy.wallet.ui.edit.core.EditBottomSheet.kt + NewLineAtEndOfFile:EditContentCard.kt$com.ivy.design.l4_patterns.EditContentCard.kt + NewLineAtEndOfFile:EditLoanRecordData.kt$com.ivy.wallet.domain.deprecated.logic.model.EditLoanRecordData.kt + NewLineAtEndOfFile:EditPlannedScreen.kt$com.ivy.wallet.ui.planned.edit.EditPlannedScreen.kt + NewLineAtEndOfFile:EditPlannedViewModel.kt$com.ivy.wallet.ui.planned.edit.EditPlannedViewModel.kt + NewLineAtEndOfFile:EditTransactionScreen.kt$com.ivy.wallet.ui.edit.EditTransactionScreen.kt + NewLineAtEndOfFile:EditTransactionViewModel.kt$com.ivy.wallet.ui.edit.EditTransactionViewModel.kt + NewLineAtEndOfFile:EmailState.kt$com.ivy.wallet.domain.data.EmailState.kt + NewLineAtEndOfFile:EncryptedSharedPrefs.kt$com.ivy.wallet.data.EncryptedSharedPrefs.kt + NewLineAtEndOfFile:ErrorCode.kt$com.ivy.wallet.io.network.error.ErrorCode.kt + NewLineAtEndOfFile:ExampleInstrumentedTest.kt$com.ivy.design.ExampleInstrumentedTest.kt + NewLineAtEndOfFile:Exchange.kt$com.ivy.wallet.domain.pure.exchange.Exchange.kt + NewLineAtEndOfFile:ExchangeRate.kt$com.ivy.wallet.domain.data.core.ExchangeRate.kt + NewLineAtEndOfFile:ExchangeRateDTO.kt$com.ivy.wallet.io.network.data.ExchangeRateDTO.kt + NewLineAtEndOfFile:ExchangeRateDao.kt$com.ivy.wallet.io.persistence.dao.ExchangeRateDao.kt + NewLineAtEndOfFile:ExchangeRateEntity.kt$com.ivy.wallet.io.persistence.data.ExchangeRateEntity.kt + NewLineAtEndOfFile:ExchangeRatesLogic.kt$com.ivy.wallet.domain.deprecated.logic.currency.ExchangeRatesLogic.kt + NewLineAtEndOfFile:ExchangeRatesResponse.kt$com.ivy.wallet.io.network.request.currency.ExchangeRatesResponse.kt + NewLineAtEndOfFile:ExchangeRatesScreen.kt$com.ivy.wallet.ui.exchangerates.ExchangeRatesScreen.kt + NewLineAtEndOfFile:ExchangeRatesService.kt$com.ivy.wallet.io.network.service.ExchangeRatesService.kt + NewLineAtEndOfFile:ExchangeRatesViewModel.kt$com.ivy.wallet.ui.exchangerates.ExchangeRatesViewModel.kt + NewLineAtEndOfFile:ExchangeTrns.kt$com.ivy.wallet.domain.pure.exchange.ExchangeTrns.kt + NewLineAtEndOfFile:ExpImagesService.kt$com.ivy.wallet.io.network.service.ExpImagesService.kt + NewLineAtEndOfFile:ExportCSVLogic.kt$com.ivy.wallet.domain.deprecated.logic.csv.ExportCSVLogic.kt + NewLineAtEndOfFile:FAB.kt$com.ivy.design.l3_ivyComponents.button.FAB.kt + NewLineAtEndOfFile:FetchAllTrnsFromServerAct.kt$com.ivy.wallet.domain.action.transaction.FetchAllTrnsFromServerAct.kt + NewLineAtEndOfFile:FetchImagesAct.kt$com.ivy.wallet.domain.action.viewmodel.experiment.FetchImagesAct.kt + NewLineAtEndOfFile:FileUtil.kt$com.ivy.wallet.utils.FileUtil.kt + NewLineAtEndOfFile:FilterOverlay.kt$com.ivy.wallet.ui.reports.FilterOverlay.kt + NewLineAtEndOfFile:FinancistoSteps.kt$com.ivy.wallet.ui.csvimport.flow.instructions.FinancistoSteps.kt + NewLineAtEndOfFile:FirebaseExt.kt$com.ivy.wallet.utils.FirebaseExt.kt + NewLineAtEndOfFile:FoldTransactions.kt$com.ivy.wallet.domain.pure.transaction.FoldTransactions.kt + NewLineAtEndOfFile:FortuneCitySteps.kt$com.ivy.wallet.ui.csvimport.flow.instructions.FortuneCitySteps.kt + NewLineAtEndOfFile:FromToTimeRange.kt$com.ivy.wallet.ui.onboarding.model.FromToTimeRange.kt + NewLineAtEndOfFile:GesturesExt.kt$com.ivy.wallet.utils.GesturesExt.kt + NewLineAtEndOfFile:GitHubBackup.kt$com.ivy.wallet.backup.github.GitHubBackup.kt + NewLineAtEndOfFile:GitHubBackupCard.kt$com.ivy.wallet.backup.github.ui.GitHubBackupCard.kt + NewLineAtEndOfFile:GitHubBackupScreen.kt$com.ivy.wallet.backup.github.ui.GitHubBackupScreen.kt + NewLineAtEndOfFile:GitHubBackupStatus.kt$com.ivy.wallet.backup.github.ui.GitHubBackupStatus.kt + NewLineAtEndOfFile:GitHubBackupViewModel.kt$com.ivy.wallet.backup.github.ui.GitHubBackupViewModel.kt + NewLineAtEndOfFile:GitHubBackupViewState.kt$com.ivy.wallet.backup.github.ui.GitHubBackupViewState.kt + NewLineAtEndOfFile:GitHubClient.kt$com.ivy.wallet.backup.github.GitHubClient.kt + NewLineAtEndOfFile:GitHubCredentials.kt$com.ivy.wallet.backup.github.GitHubCredentials.kt + NewLineAtEndOfFile:GitHubPATMigration.kt$com.ivy.wallet.migrations.impl.GitHubPATMigration.kt + NewLineAtEndOfFile:GitHubWorkerMigration.kt$com.ivy.wallet.migrations.impl.GitHubWorkerMigration.kt + NewLineAtEndOfFile:GoogleSignInRequest.kt$com.ivy.wallet.io.network.request.auth.GoogleSignInRequest.kt + NewLineAtEndOfFile:GradientCut.kt$com.ivy.wallet.ui.theme.components.GradientCut.kt + NewLineAtEndOfFile:GsonTypeAdapters.kt$com.ivy.wallet.io.network.GsonTypeAdapters.kt + NewLineAtEndOfFile:HasTrnsAct.kt$com.ivy.wallet.domain.action.viewmodel.home.HasTrnsAct.kt + NewLineAtEndOfFile:Health.kt$com.ivy.wallet.ui.analytics.model.Health.kt + NewLineAtEndOfFile:HealthTab.kt$com.ivy.wallet.ui.analytics.tab.HealthTab.kt + NewLineAtEndOfFile:HistoryDateDivider.kt$com.ivy.wallet.ui.component.transaction.HistoryDateDivider.kt + NewLineAtEndOfFile:HistoryTrnsAct.kt$com.ivy.wallet.domain.action.transaction.HistoryTrnsAct.kt + NewLineAtEndOfFile:HistoryWithDateDivsAct.kt$com.ivy.wallet.domain.action.transaction.HistoryWithDateDivsAct.kt + NewLineAtEndOfFile:HomeEvent.kt$com.ivy.wallet.ui.home.HomeEvent.kt + NewLineAtEndOfFile:HomeHeader.kt$com.ivy.wallet.ui.home.HomeHeader.kt + NewLineAtEndOfFile:HomeMoreMenu.kt$com.ivy.wallet.ui.home.HomeMoreMenu.kt + NewLineAtEndOfFile:HomeState.kt$com.ivy.wallet.ui.home.HomeState.kt + NewLineAtEndOfFile:HomeTab.kt$com.ivy.wallet.ui.home.HomeTab.kt + NewLineAtEndOfFile:HomeViewModel.kt$com.ivy.wallet.ui.home.HomeViewModel.kt + NewLineAtEndOfFile:IconButton.kt$com.ivy.design.l2_components.IconButton.kt + NewLineAtEndOfFile:ImportFrom.kt$com.ivy.wallet.ui.csvimport.flow.ImportFrom.kt + NewLineAtEndOfFile:ImportProcessing.kt$com.ivy.wallet.ui.csvimport.flow.ImportProcessing.kt + NewLineAtEndOfFile:ImportResult.kt$com.ivy.wallet.domain.deprecated.logic.csv.model.ImportResult.kt + NewLineAtEndOfFile:ImportResultUI.kt$com.ivy.wallet.ui.csvimport.flow.ImportResultUI.kt + NewLineAtEndOfFile:ImportStep.kt$com.ivy.wallet.ui.csvimport.ImportStep.kt + NewLineAtEndOfFile:ImportType.kt$com.ivy.wallet.domain.deprecated.logic.csv.model.ImportType.kt + NewLineAtEndOfFile:ImportViewModel.kt$com.ivy.wallet.ui.csvimport.ImportViewModel.kt + NewLineAtEndOfFile:IncomeExpensePair.kt$com.ivy.wallet.domain.pure.data.IncomeExpensePair.kt + NewLineAtEndOfFile:InitiateResetPasswordRequest.kt$com.ivy.wallet.io.network.request.auth.InitiateResetPasswordRequest.kt + NewLineAtEndOfFile:InitiateResetPasswordResponse.kt$com.ivy.wallet.io.network.request.auth.InitiateResetPasswordResponse.kt + NewLineAtEndOfFile:InputError.kt$com.ivy.wallet.utils.InputError.kt + NewLineAtEndOfFile:InputField.kt$com.ivy.design.l2_components.InputField.kt + NewLineAtEndOfFile:Insets.kt$com.ivy.design.utils.Insets.kt + NewLineAtEndOfFile:IntervalPickerRow.kt$com.ivy.wallet.ui.theme.components.IntervalPickerRow.kt + NewLineAtEndOfFile:IntervalType.kt$com.ivy.wallet.domain.data.IntervalType.kt + NewLineAtEndOfFile:ItemDetailsScreen.kt$com.ivy.design.l5_concept.ItemDetailsScreen.kt + NewLineAtEndOfFile:ItemIcon.kt$com.ivy.wallet.ui.theme.components.ItemIcon.kt + NewLineAtEndOfFile:ItemStatisticScreen.kt$com.ivy.wallet.ui.statistic.level2.ItemStatisticScreen.kt + NewLineAtEndOfFile:ItemStatisticViewModel.kt$com.ivy.wallet.ui.statistic.level2.ItemStatisticViewModel.kt + NewLineAtEndOfFile:IvyAnalytics.kt$com.ivy.wallet.io.network.IvyAnalytics.kt + NewLineAtEndOfFile:IvyAndroidApp.kt$com.ivy.wallet.IvyAndroidApp.kt + NewLineAtEndOfFile:IvyAnimation.kt$com.ivy.wallet.utils.IvyAnimation.kt + NewLineAtEndOfFile:IvyBasicTextField.kt$com.ivy.wallet.ui.theme.components.IvyBasicTextField.kt + NewLineAtEndOfFile:IvyBilling.kt$com.ivy.wallet.android.billing.IvyBilling.kt + NewLineAtEndOfFile:IvyBorderButton.kt$com.ivy.wallet.ui.theme.components.IvyBorderButton.kt + NewLineAtEndOfFile:IvyButton.kt$com.ivy.wallet.ui.theme.components.IvyButton.kt + NewLineAtEndOfFile:IvyCheckbox.kt$com.ivy.wallet.ui.theme.components.IvyCheckbox.kt + NewLineAtEndOfFile:IvyChecklistTextField.kt$com.ivy.wallet.ui.theme.components.IvyChecklistTextField.kt + NewLineAtEndOfFile:IvyCircleButton.kt$com.ivy.wallet.ui.theme.components.IvyCircleButton.kt + NewLineAtEndOfFile:IvyColorPicker.kt$com.ivy.wallet.ui.theme.components.IvyColorPicker.kt + NewLineAtEndOfFile:IvyColors.kt$com.ivy.design.l0_system.IvyColors.kt + NewLineAtEndOfFile:IvyColors.kt$com.ivy.wallet.ui.theme.IvyColors.kt + NewLineAtEndOfFile:IvyComponents.kt$com.ivy.wallet.ui.theme.components.IvyComponents.kt + NewLineAtEndOfFile:IvyContext.kt$com.ivy.design.IvyContext.kt + NewLineAtEndOfFile:IvyDataStore.kt$com.ivy.wallet.io.persistence.datastore.IvyDataStore.kt + NewLineAtEndOfFile:IvyDescriptionTextField.kt$com.ivy.wallet.ui.theme.components.IvyDescriptionTextField.kt + NewLineAtEndOfFile:IvyDesign.kt$com.ivy.design.api.IvyDesign.kt + NewLineAtEndOfFile:IvyDivider.kt$com.ivy.wallet.ui.theme.components.IvyDivider.kt + NewLineAtEndOfFile:IvyDividerDot.kt$com.ivy.wallet.ui.theme.components.IvyDividerDot.kt + NewLineAtEndOfFile:IvyDomainUtils.kt$com.ivy.wallet.domain.pure.util.IvyDomainUtils.kt + NewLineAtEndOfFile:IvyFileReader.kt$com.ivy.wallet.domain.deprecated.logic.csv.IvyFileReader.kt + NewLineAtEndOfFile:IvyIcon.kt$com.ivy.design.l1_buildingBlocks.IvyIcon.kt + NewLineAtEndOfFile:IvyIcon.kt$com.ivy.wallet.ui.theme.components.IvyIcon.kt + NewLineAtEndOfFile:IvyLineChart.kt$com.ivy.wallet.ui.theme.components.charts.linechart.IvyLineChart.kt + NewLineAtEndOfFile:IvyModal.kt$com.ivy.wallet.ui.theme.modal.IvyModal.kt + NewLineAtEndOfFile:IvyModalComponents.kt$com.ivy.wallet.ui.theme.modal.IvyModalComponents.kt + NewLineAtEndOfFile:IvyNameTextFieldValue.kt$com.ivy.wallet.ui.theme.components.IvyNameTextFieldValue.kt + NewLineAtEndOfFile:IvyNotification.kt$com.ivy.wallet.android.notification.IvyNotification.kt + NewLineAtEndOfFile:IvyNotificationChannel.kt$com.ivy.wallet.android.notification.IvyNotificationChannel.kt + NewLineAtEndOfFile:IvyOutlinedButton.kt$com.ivy.wallet.ui.theme.components.IvyOutlinedButton.kt + NewLineAtEndOfFile:IvyOutlinedTextField.kt$com.ivy.wallet.ui.theme.components.IvyOutlinedTextField.kt + NewLineAtEndOfFile:IvyPadding.kt$com.ivy.design.l1_buildingBlocks.data.IvyPadding.kt + NewLineAtEndOfFile:IvyRoomDatabase.kt$com.ivy.wallet.io.persistence.IvyRoomDatabase.kt + NewLineAtEndOfFile:IvySession.kt$com.ivy.wallet.io.network.IvySession.kt + NewLineAtEndOfFile:IvyShapes.kt$com.ivy.design.l0_system.IvyShapes.kt + NewLineAtEndOfFile:IvySwitch.kt$com.ivy.wallet.ui.theme.components.IvySwitch.kt + NewLineAtEndOfFile:IvySync.kt$com.ivy.wallet.domain.deprecated.sync.IvySync.kt + NewLineAtEndOfFile:IvyText.kt$com.ivy.design.l1_buildingBlocks.IvyText.kt + NewLineAtEndOfFile:IvyTitleTextField.kt$com.ivy.wallet.ui.theme.components.IvyTitleTextField.kt + NewLineAtEndOfFile:IvyToolbar.kt$com.ivy.wallet.ui.theme.components.IvyToolbar.kt + NewLineAtEndOfFile:IvyTypography.kt$com.ivy.design.l0_system.IvyTypography.kt + NewLineAtEndOfFile:IvyUI.kt$com.ivy.design.api.IvyUI.kt + NewLineAtEndOfFile:IvyViewPager.kt$com.ivy.wallet.ui.theme.components.IvyViewPager.kt + NewLineAtEndOfFile:IvyWalletCompleteData.kt$com.ivy.wallet.domain.data.IvyWalletCompleteData.kt + NewLineAtEndOfFile:IvyWalletDatastore.kt$com.ivy.wallet.data.IvyWalletDatastore.kt + NewLineAtEndOfFile:IvyWalletDesign.kt$com.ivy.design.api.systems.IvyWalletDesign.kt + NewLineAtEndOfFile:IvyWalletSteps.kt$com.ivy.wallet.ui.csvimport.flow.instructions.IvyWalletSteps.kt + NewLineAtEndOfFile:KPIs.kt$com.ivy.wallet.ui.analytics.model.KPIs.kt + NewLineAtEndOfFile:KPIsTab.kt$com.ivy.wallet.ui.analytics.tab.KPIsTab.kt + NewLineAtEndOfFile:KTWMoneyMangerSteps.kt$com.ivy.wallet.ui.csvimport.flow.instructions.KTWMoneyMangerSteps.kt + NewLineAtEndOfFile:Keyboard.kt$com.ivy.design.utils.Keyboard.kt + NewLineAtEndOfFile:KtorClient.kt$com.ivy.wallet.backup.ktor.KtorClient.kt + NewLineAtEndOfFile:KtorClientModule.kt$com.ivy.wallet.backup.ktor.KtorClientModule.kt + NewLineAtEndOfFile:LTLoanRecordMapper.kt$com.ivy.wallet.domain.deprecated.logic.loantrasactions.LTLoanRecordMapper.kt + NewLineAtEndOfFile:LastNTimeRange.kt$com.ivy.wallet.ui.onboarding.model.LastNTimeRange.kt + NewLineAtEndOfFile:Loan.kt$com.ivy.wallet.domain.data.core.Loan.kt + NewLineAtEndOfFile:LoanBottomBar.kt$com.ivy.wallet.ui.loan.LoanBottomBar.kt + NewLineAtEndOfFile:LoanByIdAct.kt$com.ivy.wallet.domain.action.loan.LoanByIdAct.kt + NewLineAtEndOfFile:LoanCreator.kt$com.ivy.wallet.domain.deprecated.logic.LoanCreator.kt + NewLineAtEndOfFile:LoanDTO.kt$com.ivy.wallet.io.network.data.LoanDTO.kt + NewLineAtEndOfFile:LoanDao.kt$com.ivy.wallet.io.persistence.dao.LoanDao.kt + NewLineAtEndOfFile:LoanDetailsScreen.kt$com.ivy.wallet.ui.loandetails.LoanDetailsScreen.kt + NewLineAtEndOfFile:LoanDetailsViewModel.kt$com.ivy.wallet.ui.loandetails.LoanDetailsViewModel.kt + NewLineAtEndOfFile:LoanEntity.kt$com.ivy.wallet.io.persistence.data.LoanEntity.kt + NewLineAtEndOfFile:LoanModal.kt$com.ivy.wallet.ui.theme.modal.LoanModal.kt + NewLineAtEndOfFile:LoanRecord.kt$com.ivy.wallet.domain.data.core.LoanRecord.kt + NewLineAtEndOfFile:LoanRecordCreator.kt$com.ivy.wallet.domain.deprecated.logic.LoanRecordCreator.kt + NewLineAtEndOfFile:LoanRecordDTO.kt$com.ivy.wallet.io.network.data.LoanRecordDTO.kt + NewLineAtEndOfFile:LoanRecordDao.kt$com.ivy.wallet.io.persistence.dao.LoanRecordDao.kt + NewLineAtEndOfFile:LoanRecordEntity.kt$com.ivy.wallet.io.persistence.data.LoanRecordEntity.kt + NewLineAtEndOfFile:LoanRecordModal.kt$com.ivy.wallet.ui.theme.modal.LoanRecordModal.kt + NewLineAtEndOfFile:LoanRecordSync.kt$com.ivy.wallet.domain.deprecated.sync.item.LoanRecordSync.kt + NewLineAtEndOfFile:LoanRecordUploader.kt$com.ivy.wallet.domain.deprecated.sync.uploader.LoanRecordUploader.kt + NewLineAtEndOfFile:LoanRecordsResponse.kt$com.ivy.wallet.io.network.request.loan.LoanRecordsResponse.kt + NewLineAtEndOfFile:LoanService.kt$com.ivy.wallet.io.network.service.LoanService.kt + NewLineAtEndOfFile:LoanSync.kt$com.ivy.wallet.domain.deprecated.sync.item.LoanSync.kt + NewLineAtEndOfFile:LoanTransactionsCore.kt$com.ivy.wallet.domain.deprecated.logic.loantrasactions.LoanTransactionsCore.kt + NewLineAtEndOfFile:LoanType.kt$com.ivy.wallet.domain.data.LoanType.kt + NewLineAtEndOfFile:LoanUploader.kt$com.ivy.wallet.domain.deprecated.sync.uploader.LoanUploader.kt + NewLineAtEndOfFile:LoanViewModel.kt$com.ivy.wallet.ui.loan.LoanViewModel.kt + NewLineAtEndOfFile:LoansAct.kt$com.ivy.wallet.domain.action.loan.LoansAct.kt + NewLineAtEndOfFile:LoansResponse.kt$com.ivy.wallet.io.network.request.loan.LoansResponse.kt + NewLineAtEndOfFile:LoansScreen.kt$com.ivy.wallet.ui.loan.LoansScreen.kt + NewLineAtEndOfFile:LogEventRequest.kt$com.ivy.wallet.io.network.request.analytics.LogEventRequest.kt + NewLineAtEndOfFile:LogoutLogic.kt$com.ivy.wallet.domain.deprecated.logic.LogoutLogic.kt + NewLineAtEndOfFile:MVVMExt.kt$com.ivy.wallet.utils.MVVMExt.kt + NewLineAtEndOfFile:MainBottomBar.kt$com.ivy.wallet.ui.main.MainBottomBar.kt + NewLineAtEndOfFile:MainScreen.kt$com.ivy.wallet.ui.main.MainScreen.kt + NewLineAtEndOfFile:MainTab.kt$com.ivy.wallet.ui.main.MainTab.kt + NewLineAtEndOfFile:MainViewModel.kt$com.ivy.wallet.ui.main.MainViewModel.kt + NewLineAtEndOfFile:Migration.kt$com.ivy.wallet.migrations.Migration.kt + NewLineAtEndOfFile:Migration105to106_TrnRecurringRules.kt$com.ivy.wallet.io.persistence.migration.Migration105to106_TrnRecurringRules.kt + NewLineAtEndOfFile:Migration106to107_Wishlist.kt$com.ivy.wallet.io.persistence.migration.Migration106to107_Wishlist.kt + NewLineAtEndOfFile:Migration107to108_Sync.kt$com.ivy.wallet.io.persistence.migration.Migration107to108_Sync.kt + NewLineAtEndOfFile:Migration108to109_Users.kt$com.ivy.wallet.io.persistence.migration.Migration108to109_Users.kt + NewLineAtEndOfFile:Migration109to110_PlannedPayments.kt$com.ivy.wallet.io.persistence.migration.Migration109to110_PlannedPayments.kt + NewLineAtEndOfFile:Migration110to111_PlannedPaymentRule.kt$com.ivy.wallet.io.persistence.migration.Migration110to111_PlannedPaymentRule.kt + NewLineAtEndOfFile:Migration111to112_User_testUser.kt$com.ivy.wallet.io.persistence.migration.Migration111to112_User_testUser.kt + NewLineAtEndOfFile:Migration112to113_ExchangeRates.kt$com.ivy.wallet.io.persistence.migration.Migration112to113_ExchangeRates.kt + NewLineAtEndOfFile:Migration113to114_Multi_Currency.kt$com.ivy.wallet.io.persistence.migration.Migration113to114_Multi_Currency.kt + NewLineAtEndOfFile:Migration114to115_Category_Account_Icons.kt$com.ivy.wallet.io.persistence.migration.Migration114to115_Category_Account_Icons.kt + NewLineAtEndOfFile:Migration115to116_Account_Include_In_Balance.kt$com.ivy.wallet.io.persistence.migration.Migration115to116_Account_Include_In_Balance.kt + NewLineAtEndOfFile:Migration116to117_SalteEdgeIntgration.kt$com.ivy.wallet.io.persistence.migration.Migration116to117_SalteEdgeIntgration.kt + NewLineAtEndOfFile:Migration117to118_Budgets.kt$com.ivy.wallet.io.persistence.migration.Migration117to118_Budgets.kt + NewLineAtEndOfFile:Migration118to119_Loans.kt$com.ivy.wallet.io.persistence.migration.Migration118to119_Loans.kt + NewLineAtEndOfFile:Migration119to120_LoanTransactions.kt$com.ivy.wallet.io.persistence.migration.Migration119to120_LoanTransactions.kt + NewLineAtEndOfFile:Migration120to121_DropWishlistItem.kt$com.ivy.wallet.io.persistence.migration.Migration120to121_DropWishlistItem.kt + NewLineAtEndOfFile:Migration122to123_ExchangeRates.kt$com.ivy.wallet.io.persistence.migration.Migration122to123_ExchangeRates.kt + NewLineAtEndOfFile:MigrationsManager.kt$com.ivy.wallet.migrations.MigrationsManager.kt + NewLineAtEndOfFile:MonefySteps.kt$com.ivy.wallet.ui.csvimport.flow.instructions.MonefySteps.kt + NewLineAtEndOfFile:MoneyManagerPraseSteps.kt$com.ivy.wallet.ui.csvimport.flow.instructions.MoneyManagerPraseSteps.kt + NewLineAtEndOfFile:Month.kt$com.ivy.wallet.ui.theme.modal.model.Month.kt + NewLineAtEndOfFile:MonthPickerModal.kt$com.ivy.wallet.ui.theme.modal.MonthPickerModal.kt + NewLineAtEndOfFile:MoreInfo.kt$com.ivy.design.l4_patterns.MoreInfo.kt + NewLineAtEndOfFile:MoreMenu.kt$com.ivy.design.l4_patterns.MoreMenu.kt + NewLineAtEndOfFile:NameModal.kt$com.ivy.wallet.ui.theme.modal.NameModal.kt + NewLineAtEndOfFile:NetworkError.kt$com.ivy.wallet.io.network.error.NetworkError.kt + NewLineAtEndOfFile:NewEditScreenPref.kt$com.ivy.wallet.domain.data.preference.NewEditScreenPref.kt + NewLineAtEndOfFile:NotificationService.kt$com.ivy.wallet.android.notification.NotificationService.kt + NewLineAtEndOfFile:NukeService.kt$com.ivy.wallet.io.network.service.NukeService.kt + NewLineAtEndOfFile:OnboardingAccounts.kt$com.ivy.wallet.ui.onboarding.steps.OnboardingAccounts.kt + NewLineAtEndOfFile:OnboardingCategories.kt$com.ivy.wallet.ui.onboarding.steps.OnboardingCategories.kt + NewLineAtEndOfFile:OnboardingComponents.kt$com.ivy.wallet.ui.theme.components.OnboardingComponents.kt + NewLineAtEndOfFile:OnboardingPrivacyTC.kt$com.ivy.wallet.ui.onboarding.steps.archived.OnboardingPrivacyTC.kt + NewLineAtEndOfFile:OnboardingProgressSlider.kt$com.ivy.wallet.ui.onboarding.components.OnboardingProgressSlider.kt + NewLineAtEndOfFile:OnboardingReport.kt$com.ivy.wallet.ui.analytics.model.OnboardingReport.kt + NewLineAtEndOfFile:OnboardingReportTab.kt$com.ivy.wallet.ui.analytics.tab.OnboardingReportTab.kt + NewLineAtEndOfFile:OnboardingRouter.kt$com.ivy.wallet.ui.onboarding.viewmodel.OnboardingRouter.kt + NewLineAtEndOfFile:OnboardingScreen.kt$com.ivy.wallet.ui.onboarding.OnboardingScreen.kt + NewLineAtEndOfFile:OnboardingSetCurrency.kt$com.ivy.wallet.ui.onboarding.steps.OnboardingSetCurrency.kt + NewLineAtEndOfFile:OnboardingSetName.kt$com.ivy.wallet.ui.onboarding.steps.archived.OnboardingSetName.kt + NewLineAtEndOfFile:OnboardingSplashLogin.kt$com.ivy.wallet.ui.onboarding.steps.OnboardingSplashLogin.kt + NewLineAtEndOfFile:OnboardingState.kt$com.ivy.wallet.ui.onboarding.OnboardingState.kt + NewLineAtEndOfFile:OnboardingToolbar.kt$com.ivy.wallet.ui.onboarding.components.OnboardingToolbar.kt + NewLineAtEndOfFile:OnboardingType.kt$com.ivy.wallet.ui.onboarding.steps.OnboardingType.kt + NewLineAtEndOfFile:OnboardingViewModel.kt$com.ivy.wallet.ui.onboarding.viewmodel.OnboardingViewModel.kt + NewLineAtEndOfFile:OneMoneySteps.kt$com.ivy.wallet.ui.csvimport.flow.instructions.OneMoneySteps.kt + NewLineAtEndOfFile:OpResult.kt$com.ivy.wallet.utils.OpResult.kt + NewLineAtEndOfFile:OpenIssueRequest.kt$com.ivy.wallet.io.network.request.github.OpenIssueRequest.kt + NewLineAtEndOfFile:OpenIssueResponse.kt$com.ivy.wallet.io.network.request.github.OpenIssueResponse.kt + NewLineAtEndOfFile:OverdueAct.kt$com.ivy.wallet.domain.action.viewmodel.home.OverdueAct.kt + NewLineAtEndOfFile:ParseFields.kt$com.ivy.wallet.ui.csv.domain.ParseFields.kt + NewLineAtEndOfFile:ParseStatus.kt$com.ivy.wallet.ui.csv.domain.ParseStatus.kt + NewLineAtEndOfFile:PaywallLogic.kt$com.ivy.wallet.domain.deprecated.logic.PaywallLogic.kt + NewLineAtEndOfFile:PaywallReason.kt$com.ivy.wallet.ui.paywall.PaywallReason.kt + NewLineAtEndOfFile:PaywallViewModel.kt$com.ivy.wallet.ui.paywall.PaywallViewModel.kt + NewLineAtEndOfFile:PeriodSelector.kt$com.ivy.wallet.ui.theme.wallet.PeriodSelector.kt + NewLineAtEndOfFile:PieChart.kt$com.ivy.wallet.ui.statistic.level1.PieChart.kt + NewLineAtEndOfFile:PieChartAct.kt$com.ivy.wallet.domain.action.charts.PieChartAct.kt + NewLineAtEndOfFile:PieChartStatisticBottomBar.kt$com.ivy.wallet.ui.statistic.level1.PieChartStatisticBottomBar.kt + NewLineAtEndOfFile:PieChartStatisticViewModel.kt$com.ivy.wallet.ui.statistic.level1.PieChartStatisticViewModel.kt + NewLineAtEndOfFile:Plan.kt$com.ivy.wallet.android.billing.Plan.kt + NewLineAtEndOfFile:PlanType.kt$com.ivy.wallet.android.billing.PlanType.kt + NewLineAtEndOfFile:PlannedPaymentRule.kt$com.ivy.wallet.domain.data.core.PlannedPaymentRule.kt + NewLineAtEndOfFile:PlannedPaymentRuleDTO.kt$com.ivy.wallet.io.network.data.PlannedPaymentRuleDTO.kt + NewLineAtEndOfFile:PlannedPaymentRuleDao.kt$com.ivy.wallet.io.persistence.dao.PlannedPaymentRuleDao.kt + NewLineAtEndOfFile:PlannedPaymentRuleEntity.kt$com.ivy.wallet.io.persistence.data.PlannedPaymentRuleEntity.kt + NewLineAtEndOfFile:PlannedPaymentRuleService.kt$com.ivy.wallet.io.network.service.PlannedPaymentRuleService.kt + NewLineAtEndOfFile:PlannedPaymentRuleUploader.kt$com.ivy.wallet.domain.deprecated.sync.uploader.PlannedPaymentRuleUploader.kt + NewLineAtEndOfFile:PlannedPaymentRulesResponse.kt$com.ivy.wallet.io.network.request.planned.PlannedPaymentRulesResponse.kt + NewLineAtEndOfFile:PlannedPaymentSync.kt$com.ivy.wallet.domain.deprecated.sync.item.PlannedPaymentSync.kt + NewLineAtEndOfFile:PlannedPaymentsBottomBar.kt$com.ivy.wallet.ui.planned.list.PlannedPaymentsBottomBar.kt + NewLineAtEndOfFile:PlannedPaymentsGenerator.kt$com.ivy.wallet.domain.deprecated.logic.PlannedPaymentsGenerator.kt + NewLineAtEndOfFile:PlannedPaymentsLazyColumn.kt$com.ivy.wallet.ui.planned.list.PlannedPaymentsLazyColumn.kt + NewLineAtEndOfFile:PlannedPaymentsLogic.kt$com.ivy.wallet.domain.deprecated.logic.PlannedPaymentsLogic.kt + NewLineAtEndOfFile:PlannedPaymentsScreen.kt$com.ivy.wallet.ui.planned.list.PlannedPaymentsScreen.kt + NewLineAtEndOfFile:PlannedPaymentsViewModel.kt$com.ivy.wallet.ui.planned.list.PlannedPaymentsViewModel.kt + NewLineAtEndOfFile:PlansSheet.kt$com.ivy.wallet.ui.paywall.PlansSheet.kt + NewLineAtEndOfFile:Preference.kt$com.ivy.wallet.domain.data.preference.Preference.kt + NewLineAtEndOfFile:PreferenceAct.kt$com.ivy.wallet.domain.action.settings.preference.PreferenceAct.kt + NewLineAtEndOfFile:Preview.kt$com.ivy.design.utils.Preview.kt + NewLineAtEndOfFile:PrimaryAttributeColumn.kt$com.ivy.wallet.ui.edit.PrimaryAttributeColumn.kt + NewLineAtEndOfFile:ProgressBar.kt$com.ivy.wallet.ui.theme.components.ProgressBar.kt + NewLineAtEndOfFile:ProgressModal.kt$com.ivy.wallet.ui.theme.modal.ProgressModal.kt + NewLineAtEndOfFile:PropertyTestExample.kt$com.ivy.wallet.PropertyTestExample.kt + NewLineAtEndOfFile:RateItem.kt$com.ivy.wallet.ui.exchangerates.component.RateItem.kt + NewLineAtEndOfFile:RateUi.kt$com.ivy.wallet.ui.exchangerates.data.RateUi.kt + NewLineAtEndOfFile:RatesEvent.kt$com.ivy.wallet.ui.exchangerates.RatesEvent.kt + NewLineAtEndOfFile:RatesState.kt$com.ivy.wallet.ui.exchangerates.RatesState.kt + NewLineAtEndOfFile:RecurringRule.kt$com.ivy.wallet.ui.planned.edit.RecurringRule.kt + NewLineAtEndOfFile:RecurringRuleModal.kt$com.ivy.wallet.ui.theme.modal.RecurringRuleModal.kt + NewLineAtEndOfFile:ReorderModal.kt$com.ivy.design.l4_patterns.ReorderModal.kt + NewLineAtEndOfFile:ReorderModal.kt$com.ivy.wallet.ui.theme.components.ReorderModal.kt + NewLineAtEndOfFile:Reorderable.kt$com.ivy.wallet.domain.data.Reorderable.kt + NewLineAtEndOfFile:ReportFilter.kt$com.ivy.wallet.ui.reports.ReportFilter.kt + NewLineAtEndOfFile:ReportScreen.kt$com.ivy.wallet.ui.reports.ReportScreen.kt + NewLineAtEndOfFile:ReportScreenEvent.kt$com.ivy.wallet.ui.reports.ReportScreenEvent.kt + NewLineAtEndOfFile:ReportScreenState.kt$com.ivy.wallet.ui.reports.ReportScreenState.kt + NewLineAtEndOfFile:ReportViewModel.kt$com.ivy.wallet.ui.reports.ReportViewModel.kt + NewLineAtEndOfFile:ResetPasswordRequest.kt$com.ivy.wallet.io.network.request.auth.ResetPasswordRequest.kt + NewLineAtEndOfFile:RestClient.kt$com.ivy.wallet.io.network.RestClient.kt + NewLineAtEndOfFile:RestError.kt$com.ivy.wallet.io.network.error.RestError.kt + NewLineAtEndOfFile:RoomTypeConverters.kt$com.ivy.wallet.io.persistence.RoomTypeConverters.kt + NewLineAtEndOfFile:RootActivity.kt$com.ivy.wallet.ui.RootActivity.kt + NewLineAtEndOfFile:RootViewModel.kt$com.ivy.wallet.ui.RootViewModel.kt + NewLineAtEndOfFile:RowMapping.kt$com.ivy.wallet.domain.deprecated.logic.csv.model.RowMapping.kt + NewLineAtEndOfFile:SaveTrnLocallyAct.kt$com.ivy.wallet.domain.action.viewmodel.transaction.SaveTrnLocallyAct.kt + NewLineAtEndOfFile:ScreenTitle.kt$com.ivy.design.l3_ivyComponents.ScreenTitle.kt + NewLineAtEndOfFile:SearchScreen.kt$com.ivy.wallet.ui.search.SearchScreen.kt + NewLineAtEndOfFile:SearchViewModel.kt$com.ivy.wallet.ui.search.SearchViewModel.kt + NewLineAtEndOfFile:SelectedCategory.kt$com.ivy.wallet.ui.statistic.level1.SelectedCategory.kt + NewLineAtEndOfFile:ServerStopScreen.kt$com.ivy.wallet.ui.serverstop.ServerStopScreen.kt + NewLineAtEndOfFile:ServerStopState.kt$com.ivy.wallet.ui.serverstop.ServerStopState.kt + NewLineAtEndOfFile:ServerStopViewModel.kt$com.ivy.wallet.ui.serverstop.ServerStopViewModel.kt + NewLineAtEndOfFile:SetPreferenceAct.kt$com.ivy.wallet.domain.action.settings.preference.SetPreferenceAct.kt + NewLineAtEndOfFile:Settings.kt$com.ivy.wallet.domain.data.core.Settings.kt + NewLineAtEndOfFile:SettingsAct.kt$com.ivy.wallet.domain.action.settings.SettingsAct.kt + NewLineAtEndOfFile:SettingsDTO.kt$com.ivy.wallet.io.network.data.SettingsDTO.kt + NewLineAtEndOfFile:SettingsDao.kt$com.ivy.wallet.io.persistence.dao.SettingsDao.kt + NewLineAtEndOfFile:SettingsEntity.kt$com.ivy.wallet.io.persistence.data.SettingsEntity.kt + NewLineAtEndOfFile:SettingsScreen.kt$com.ivy.wallet.ui.settings.SettingsScreen.kt + NewLineAtEndOfFile:SettingsViewModel.kt$com.ivy.wallet.ui.settings.SettingsViewModel.kt + NewLineAtEndOfFile:Shapes.kt$com.ivy.design.l1_buildingBlocks.Shapes.kt + NewLineAtEndOfFile:SharedPrefs.kt$com.ivy.wallet.io.persistence.SharedPrefs.kt + NewLineAtEndOfFile:ShortAmountTest.kt$com.ivy.wallet.ShortAmountTest.kt + NewLineAtEndOfFile:ShouldHideBalanceAct.kt$com.ivy.wallet.domain.action.viewmodel.home.ShouldHideBalanceAct.kt + NewLineAtEndOfFile:SignInRequest.kt$com.ivy.wallet.io.network.request.auth.SignInRequest.kt + NewLineAtEndOfFile:SignUpRequest.kt$com.ivy.wallet.io.network.request.auth.SignUpRequest.kt + NewLineAtEndOfFile:SmallTrnsPref.kt$com.ivy.wallet.domain.data.preference.SmallTrnsPref.kt + NewLineAtEndOfFile:SmartTitleSuggestionsLogic.kt$com.ivy.wallet.domain.deprecated.logic.SmartTitleSuggestionsLogic.kt + NewLineAtEndOfFile:SortOrder.kt$com.ivy.wallet.domain.data.SortOrder.kt + NewLineAtEndOfFile:Spacers.kt$com.ivy.design.l1_buildingBlocks.Spacers.kt + NewLineAtEndOfFile:SpendeeSteps.kt$com.ivy.wallet.ui.csvimport.flow.instructions.SpendeeSteps.kt + NewLineAtEndOfFile:StartDayOfMonthAct.kt$com.ivy.wallet.domain.action.global.StartDayOfMonthAct.kt + NewLineAtEndOfFile:Suggestions.kt$com.ivy.wallet.ui.onboarding.components.Suggestions.kt + NewLineAtEndOfFile:Switch.kt$com.ivy.design.l2_components.Switch.kt + NewLineAtEndOfFile:SyncExchangeRatesAct.kt$com.ivy.wallet.domain.action.exchange.SyncExchangeRatesAct.kt + NewLineAtEndOfFile:TestScreen.kt$com.ivy.wallet.ui.test.TestScreen.kt + NewLineAtEndOfFile:TestViewModel.kt$com.ivy.wallet.ui.test.TestViewModel.kt + NewLineAtEndOfFile:Theme.kt$com.ivy.design.l0_system.Theme.kt + NewLineAtEndOfFile:TimePeriod.kt$com.ivy.wallet.ui.onboarding.model.TimePeriod.kt + NewLineAtEndOfFile:TimeValue.kt$com.ivy.wallet.ui.charts.TimeValue.kt + NewLineAtEndOfFile:Title.kt$com.ivy.wallet.ui.edit.core.Title.kt + NewLineAtEndOfFile:Transaction.kt$com.ivy.wallet.domain.data.core.Transaction.kt + NewLineAtEndOfFile:TransactionCard.kt$com.ivy.wallet.ui.component.transaction.TransactionCard.kt + NewLineAtEndOfFile:TransactionDTO.kt$com.ivy.wallet.io.network.data.TransactionDTO.kt + NewLineAtEndOfFile:TransactionDao.kt$com.ivy.wallet.io.persistence.dao.TransactionDao.kt + NewLineAtEndOfFile:TransactionDateTime.kt$com.ivy.wallet.ui.edit.TransactionDateTime.kt + NewLineAtEndOfFile:TransactionEntity.kt$com.ivy.wallet.io.persistence.data.TransactionEntity.kt + NewLineAtEndOfFile:TransactionHistoryDateDivider.kt$com.ivy.wallet.domain.data.TransactionHistoryDateDivider.kt + NewLineAtEndOfFile:TransactionHistoryItem.kt$com.ivy.wallet.domain.data.TransactionHistoryItem.kt + NewLineAtEndOfFile:TransactionReminderLogic.kt$com.ivy.wallet.domain.deprecated.logic.notification.TransactionReminderLogic.kt + NewLineAtEndOfFile:TransactionReminderWorker.kt$com.ivy.wallet.domain.deprecated.logic.notification.TransactionReminderWorker.kt + NewLineAtEndOfFile:TransactionSectionDivider.kt$com.ivy.wallet.ui.component.transaction.TransactionSectionDivider.kt + NewLineAtEndOfFile:TransactionService.kt$com.ivy.wallet.io.network.service.TransactionService.kt + NewLineAtEndOfFile:TransactionSync.kt$com.ivy.wallet.domain.deprecated.sync.item.TransactionSync.kt + NewLineAtEndOfFile:TransactionType.kt$com.ivy.wallet.domain.data.TransactionType.kt + NewLineAtEndOfFile:TransactionUploader.kt$com.ivy.wallet.domain.deprecated.sync.uploader.TransactionUploader.kt + NewLineAtEndOfFile:TransactionViewModel.kt$com.ivy.wallet.ui.transaction.TransactionViewModel.kt + NewLineAtEndOfFile:TransactionsDividerLine.kt$com.ivy.wallet.ui.component.transaction.TransactionsDividerLine.kt + NewLineAtEndOfFile:TransactionsResponse.kt$com.ivy.wallet.io.network.request.transaction.TransactionsResponse.kt + NewLineAtEndOfFile:TrnByIdAct.kt$com.ivy.wallet.domain.action.transaction.TrnByIdAct.kt + NewLineAtEndOfFile:TrnDate.kt$com.ivy.wallet.ui.transaction.data.TrnDate.kt + NewLineAtEndOfFile:TrnDateDividers.kt$com.ivy.wallet.domain.pure.transaction.TrnDateDividers.kt + NewLineAtEndOfFile:TrnEvent.kt$com.ivy.wallet.ui.transaction.TrnEvent.kt + NewLineAtEndOfFile:TrnExchangeRate.kt$com.ivy.wallet.ui.transaction.data.TrnExchangeRate.kt + NewLineAtEndOfFile:TrnFunctions.kt$com.ivy.wallet.domain.pure.transaction.TrnFunctions.kt + NewLineAtEndOfFile:TrnState.kt$com.ivy.wallet.ui.transaction.TrnState.kt + NewLineAtEndOfFile:TrnsWithDateDivsAct.kt$com.ivy.wallet.domain.action.transaction.TrnsWithDateDivsAct.kt + NewLineAtEndOfFile:TrnsWithRangeAndAccFiltersAct.kt$com.ivy.wallet.domain.action.transaction.TrnsWithRangeAndAccFiltersAct.kt + NewLineAtEndOfFile:TypographyExt.kt$com.ivy.design.l0_system.TypographyExt.kt + NewLineAtEndOfFile:UIExt.kt$com.ivy.wallet.utils.UIExt.kt + NewLineAtEndOfFile:UUIDSerializer.kt$com.ivy.wallet.backup.kotlinxserilzation.UUIDSerializer.kt + NewLineAtEndOfFile:UiText.kt$com.ivy.wallet.utils.UiText.kt + NewLineAtEndOfFile:UpcomingAct.kt$com.ivy.wallet.domain.action.viewmodel.home.UpcomingAct.kt + NewLineAtEndOfFile:UpdateAccCacheAct.kt$com.ivy.wallet.domain.action.viewmodel.home.UpdateAccCacheAct.kt + NewLineAtEndOfFile:UpdateAccountRequest.kt$com.ivy.wallet.io.network.request.account.UpdateAccountRequest.kt + NewLineAtEndOfFile:UpdateCategoriesCacheAct.kt$com.ivy.wallet.domain.action.viewmodel.home.UpdateCategoriesCacheAct.kt + NewLineAtEndOfFile:UpdateLoanRecordRequest.kt$com.ivy.wallet.io.network.request.loan.UpdateLoanRecordRequest.kt + NewLineAtEndOfFile:UpdateLoanRequest.kt$com.ivy.wallet.io.network.request.loan.UpdateLoanRequest.kt + NewLineAtEndOfFile:UpdatePlannedPaymentRuleRequest.kt$com.ivy.wallet.io.network.request.planned.UpdatePlannedPaymentRuleRequest.kt + NewLineAtEndOfFile:UpdateSettingsAct.kt$com.ivy.wallet.domain.action.settings.UpdateSettingsAct.kt + NewLineAtEndOfFile:UpdateStartDayOfMonthAct.kt$com.ivy.wallet.domain.action.global.UpdateStartDayOfMonthAct.kt + NewLineAtEndOfFile:UpdateTransactionRequest.kt$com.ivy.wallet.io.network.request.transaction.UpdateTransactionRequest.kt + NewLineAtEndOfFile:UpdateUserInfoRequest.kt$com.ivy.wallet.io.network.request.auth.UpdateUserInfoRequest.kt + NewLineAtEndOfFile:UpdateUserInfoResponse.kt$com.ivy.wallet.io.network.request.auth.UpdateUserInfoResponse.kt + NewLineAtEndOfFile:UpdateWalletCategoryRequest.kt$com.ivy.wallet.io.network.request.category.UpdateWalletCategoryRequest.kt + NewLineAtEndOfFile:UploadTrnToServerAct.kt$com.ivy.wallet.domain.action.viewmodel.transaction.UploadTrnToServerAct.kt + NewLineAtEndOfFile:User.kt$com.ivy.wallet.domain.data.core.User.kt + NewLineAtEndOfFile:UserDTO.kt$com.ivy.wallet.io.network.data.UserDTO.kt + NewLineAtEndOfFile:UserDao.kt$com.ivy.wallet.io.persistence.dao.UserDao.kt + NewLineAtEndOfFile:UserEntity.kt$com.ivy.wallet.io.persistence.data.UserEntity.kt + NewLineAtEndOfFile:UserStats.kt$com.ivy.wallet.ui.analytics.model.UserStats.kt + NewLineAtEndOfFile:UserStatsTab.kt$com.ivy.wallet.ui.analytics.tab.UserStatsTab.kt + NewLineAtEndOfFile:UtilExt.kt$com.ivy.wallet.utils.UtilExt.kt + NewLineAtEndOfFile:Utils.kt$com.ivy.wallet.domain.pure.util.Utils.kt + NewLineAtEndOfFile:Utils.kt$com.ivy.wallet.ui.component.transaction.Utils.kt + NewLineAtEndOfFile:View.kt$com.ivy.design.utils.View.kt + NewLineAtEndOfFile:WalletAccountLogic.kt$com.ivy.wallet.domain.deprecated.logic.WalletAccountLogic.kt + NewLineAtEndOfFile:WalletBalanceWidget.kt$com.ivy.wallet.ui.widget.WalletBalanceWidget.kt + NewLineAtEndOfFile:WalletBalanceWidgetActions.kt$com.ivy.wallet.ui.widget.WalletBalanceWidgetActions.kt + NewLineAtEndOfFile:WalletBalanceWidgetContent.kt$com.ivy.wallet.ui.widget.WalletBalanceWidgetContent.kt + NewLineAtEndOfFile:WalletByBudgetBakersSteps.kt$com.ivy.wallet.ui.csvimport.flow.instructions.WalletByBudgetBakersSteps.kt + NewLineAtEndOfFile:WalletCategoriesResponse.kt$com.ivy.wallet.io.network.request.category.WalletCategoriesResponse.kt + NewLineAtEndOfFile:WalletCategoryLogic.kt$com.ivy.wallet.domain.deprecated.logic.WalletCategoryLogic.kt + NewLineAtEndOfFile:WalletCharts.kt$com.ivy.wallet.domain.pure.charts.WalletCharts.kt + NewLineAtEndOfFile:WalletDAOs.kt$com.ivy.wallet.domain.pure.data.WalletDAOs.kt + NewLineAtEndOfFile:WalletUtil.kt$com.ivy.wallet.utils.WalletUtil.kt + NewLineAtEndOfFile:WalletValueFunctions.kt$com.ivy.wallet.domain.pure.transaction.WalletValueFunctions.kt + NewLineAtEndOfFile:WidgetBase.kt$com.ivy.wallet.ui.widget.WidgetBase.kt + NewLineAtEndOfFile:WrapContentRow.kt$com.ivy.wallet.ui.theme.components.WrapContentRow.kt + NewLineAtEndOfFile:ZipUtils.kt$com.ivy.wallet.domain.deprecated.logic.zip.ZipUtils.kt + NewLineAtEndOfFile:dependencies.kt$com.ivy.wallet.buildsrc.dependencies.kt + NewLineAtEndOfFile:ivy.lint.gradle.kts$.ivy.lint.gradle.kts + NewLineAtEndOfFile:settings.gradle.kts$.settings.gradle.kts + NoBlankLineBeforeRbrace:AccountCharts.kt$ + NoBlankLineBeforeRbrace:AccountModal.kt$ + NoBlankLineBeforeRbrace:AccountUploader.kt$AccountUploader$ + NoBlankLineBeforeRbrace:AddKeywordModal.kt$ + NoBlankLineBeforeRbrace:AddPrimaryAttributeButton.kt$ + NoBlankLineBeforeRbrace:AmountModal.kt$ + NoBlankLineBeforeRbrace:AppModuleDI.kt$AppModuleDI.<no name provided>$ + NoBlankLineBeforeRbrace:AuthService.kt$AuthService$ + NoBlankLineBeforeRbrace:BudgetBattery.kt$ + NoBlankLineBeforeRbrace:BudgetBottomBar.kt$ + NoBlankLineBeforeRbrace:BudgetModal.kt$ + NoBlankLineBeforeRbrace:BudgetScreen.kt$ + NoBlankLineBeforeRbrace:BudgetUploader.kt$BudgetUploader$ + NoBlankLineBeforeRbrace:BufferBattery.kt$ + NoBlankLineBeforeRbrace:Button.kt$ + NoBlankLineBeforeRbrace:ButtonWithIcon.kt$ + NoBlankLineBeforeRbrace:CSVImporter.kt$CSVImporter$ + NoBlankLineBeforeRbrace:CSVImporter.kt$CSVImporter.<no name provided>$ + NoBlankLineBeforeRbrace:CSVImporterV2.kt$CSVImporterV2$ + NoBlankLineBeforeRbrace:CSVScreen.kt$ + NoBlankLineBeforeRbrace:CSVViewModel.kt$CSVViewModel.<no name provided>$ + NoBlankLineBeforeRbrace:CategoriesBottomBar.kt$ + NoBlankLineBeforeRbrace:CategoriesScreen.kt$ + NoBlankLineBeforeRbrace:CategoryCharts.kt$ + NoBlankLineBeforeRbrace:CategoryCreator.kt$CategoryCreator$ + NoBlankLineBeforeRbrace:CategoryModal.kt$ + NoBlankLineBeforeRbrace:CategoryUploader.kt$CategoryUploader$ + NoBlankLineBeforeRbrace:ChangeTransactionTypeModal.kt$ + NoBlankLineBeforeRbrace:ChartsScreen.kt$ + NoBlankLineBeforeRbrace:Checkbox.kt$ + NoBlankLineBeforeRbrace:ChooseCategoryModal.kt$ + NoBlankLineBeforeRbrace:ChooseIconModal.kt$ + NoBlankLineBeforeRbrace:ChoosePeriodModal.kt$ + NoBlankLineBeforeRbrace:ChooseStartDateOfMonthModal.kt$ + NoBlankLineBeforeRbrace:CircleButtons.kt$ + NoBlankLineBeforeRbrace:CurrencyModal.kt$ + NoBlankLineBeforeRbrace:CurrencyPicker.kt$ + NoBlankLineBeforeRbrace:DataCircle.kt$ + NoBlankLineBeforeRbrace:Description.kt$ + NoBlankLineBeforeRbrace:DescriptionModal.kt$ + NoBlankLineBeforeRbrace:EditBottomSheet.kt$ + NoBlankLineBeforeRbrace:EditTransactionScreen.kt$ + NoBlankLineBeforeRbrace:FilterOverlay.kt$ + NoBlankLineBeforeRbrace:GesturesExt.kt$ + NoBlankLineBeforeRbrace:GitHubBackupViewModel.kt$GitHubBackupViewModel$ + NoBlankLineBeforeRbrace:GitHubClient.kt$GitHubClient$ + NoBlankLineBeforeRbrace:GsonTypeAdapters.kt$ErrorCodeTypeAdapter$ + NoBlankLineBeforeRbrace:HomeHeader.kt$ + NoBlankLineBeforeRbrace:HomeMoreMenu.kt$ + NoBlankLineBeforeRbrace:IconButton.kt$ + NoBlankLineBeforeRbrace:ImportInstructions.kt$ + NoBlankLineBeforeRbrace:ImportResultUI.kt$ + NoBlankLineBeforeRbrace:IncomeExpensesRow.kt$ + NoBlankLineBeforeRbrace:InputField.kt$ + NoBlankLineBeforeRbrace:IvyBilling.kt$IvyBilling$ + NoBlankLineBeforeRbrace:IvyBorderButton.kt$ + NoBlankLineBeforeRbrace:IvyButton.kt$ + NoBlankLineBeforeRbrace:IvyCheckbox.kt$ + NoBlankLineBeforeRbrace:IvyCircleButton.kt$ + NoBlankLineBeforeRbrace:IvyColorPicker.kt$ + NoBlankLineBeforeRbrace:IvyModal.kt$ + NoBlankLineBeforeRbrace:IvyNameTextFieldValue.kt$ + NoBlankLineBeforeRbrace:IvyNumberTextField.kt$ + NoBlankLineBeforeRbrace:IvyOutlinedButton.kt$ + NoBlankLineBeforeRbrace:IvyTitleTextField.kt$ + NoBlankLineBeforeRbrace:IvyViewPager.kt$ + NoBlankLineBeforeRbrace:IvyViewPager.kt$IvyPagerState$ + NoBlankLineBeforeRbrace:LoanBottomBar.kt$ + NoBlankLineBeforeRbrace:LoanModal.kt$ + NoBlankLineBeforeRbrace:LoanRecordModal.kt$ + NoBlankLineBeforeRbrace:LoanRecordUploader.kt$LoanRecordUploader$ + NoBlankLineBeforeRbrace:LoanUploader.kt$LoanUploader$ + NoBlankLineBeforeRbrace:LoansScreen.kt$ + NoBlankLineBeforeRbrace:MainBottomBar.kt$ + NoBlankLineBeforeRbrace:MainViewModel.kt$MainViewModel$ + NoBlankLineBeforeRbrace:Migration110to111_PlannedPaymentRule.kt$Migration110to111_PlannedPaymentRule$ + NoBlankLineBeforeRbrace:Migration111to112_User_testUser.kt$Migration111to112_User_testUser$ + NoBlankLineBeforeRbrace:Migration112to113_ExchangeRates.kt$Migration112to113_ExchangeRates$ + NoBlankLineBeforeRbrace:Migration113to114_Multi_Currency.kt$Migration113to114_Multi_Currency$ + NoBlankLineBeforeRbrace:Migration114to115_Category_Account_Icons.kt$Migration114to115_Category_Account_Icons$ + NoBlankLineBeforeRbrace:Migration115to116_Account_Include_In_Balance.kt$Migration115to116_Account_Include_In_Balance$ + NoBlankLineBeforeRbrace:Migration116to117_SalteEdgeIntgration.kt$Migration116to117_SalteEdgeIntgration$ + NoBlankLineBeforeRbrace:Migration117to118_Budgets.kt$Migration117to118_Budgets$ + NoBlankLineBeforeRbrace:Migration118to119_Loans.kt$Migration118to119_Loans$ + NoBlankLineBeforeRbrace:MonthPickerModal.kt$ + NoBlankLineBeforeRbrace:NameModal.kt$ + NoBlankLineBeforeRbrace:OnboardingPrivacyTC.kt$ + NoBlankLineBeforeRbrace:OnboardingRouter.kt$OnboardingRouter$ + NoBlankLineBeforeRbrace:OnboardingSetCurrency.kt$ + NoBlankLineBeforeRbrace:OnboardingSetName.kt$ + NoBlankLineBeforeRbrace:OnboardingToolbar.kt$ + NoBlankLineBeforeRbrace:OnboardingType.kt$ + NoBlankLineBeforeRbrace:PaywallLogic.kt$PaywallLogic$ + NoBlankLineBeforeRbrace:PeriodSelector.kt$ + NoBlankLineBeforeRbrace:PieChart.kt$ + NoBlankLineBeforeRbrace:PieChartStatisticScreen.kt$ + NoBlankLineBeforeRbrace:Plan.kt$Plan$ + NoBlankLineBeforeRbrace:PlannedPaymentCard.kt$ + NoBlankLineBeforeRbrace:PlannedPaymentRuleUploader.kt$PlannedPaymentRuleUploader$ + NoBlankLineBeforeRbrace:PlannedPaymentsGenerator.kt$PlannedPaymentsGenerator$ + NoBlankLineBeforeRbrace:PreloadDataLogic.kt$PreloadDataLogic$ + NoBlankLineBeforeRbrace:RecurringRuleModal.kt$ + NoBlankLineBeforeRbrace:RootActivity.kt$RootActivity$ + NoBlankLineBeforeRbrace:RootViewModel.kt$RootViewModel$ + NoBlankLineBeforeRbrace:RootViewModel.kt$RootViewModel.<no name provided>$ + NoBlankLineBeforeRbrace:SetPreferenceAct.kt$SetPreferenceAct$ + NoBlankLineBeforeRbrace:SettingsScreen.kt$ + NoBlankLineBeforeRbrace:Suggestions.kt$ + NoBlankLineBeforeRbrace:TimePeriod.kt$TimePeriod$ + NoBlankLineBeforeRbrace:Title.kt$ + NoBlankLineBeforeRbrace:TransactionCard.kt$ + NoBlankLineBeforeRbrace:TransactionDateTime.kt$ + NoBlankLineBeforeRbrace:TransactionSectionDivider.kt$ + NoBlankLineBeforeRbrace:TransactionUploader.kt$TransactionUploader$ + NoBlankLineBeforeRbrace:WalletBalanceWidget.kt$WalletBalanceWidget$ + NoBlankLineBeforeRbrace:WalletCategoryLogic.kt$WalletCategoryLogic$ + NoBlankLineBeforeRbrace:WidgetBase.kt$WidgetBase$ + NoBlankLineBeforeRbrace:ZipUtils.kt$ + NoConsecutiveBlankLines:AccTrnsAct.kt$ + NoConsecutiveBlankLines:AccValueFunctions.kt$AccountValueFunctions$ + NoConsecutiveBlankLines:Accessors32ikgp1isdd8mwexzgbe6rirl.kt$ + NoConsecutiveBlankLines:Accessors46nwrg1rs44ofdqpi7vyy3pfc.kt$ + NoConsecutiveBlankLines:Accessors4ymijgaek646mzru18sdmblu7.kt$ + NoConsecutiveBlankLines:Accessors5x03zd2mf47s5vj1qv3jvhdru.kt$ + NoConsecutiveBlankLines:Accessors6m89nhcqblthog8es93pjkmhg.kt$ + NoConsecutiveBlankLines:Accessors72k7tti784t7idmqtg2upvaru.kt$ + NoConsecutiveBlankLines:Accessors7hvycqvau4uyj5knata7lx0yx.kt$ + NoConsecutiveBlankLines:Accessors8lcri9ibgd9oj8dt3t8z8nvfx.kt$ + NoConsecutiveBlankLines:Accessorsa5ptgikd9fb816fav4742zvaq.kt$ + NoConsecutiveBlankLines:Accessorsblypoh2ruc9u3bx9djsfqsntg.kt$ + NoConsecutiveBlankLines:Accessorsbtc8iwv8u9b0f38ikfmodj8ns.kt$ + NoConsecutiveBlankLines:Accessorseessl0al0otcsbyqqruvoncpd.kt$ + NoConsecutiveBlankLines:AccountDTO.kt$ + NoConsecutiveBlankLines:AccountModal.kt$ + NoConsecutiveBlankLines:AccountUploader.kt$AccountUploader$ + NoConsecutiveBlankLines:AccountsResponse.kt$ + NoConsecutiveBlankLines:AddPrimaryAttributeButton.kt$ + NoConsecutiveBlankLines:AddRateModal.kt$ + NoConsecutiveBlankLines:AmountCurrency.kt$ + NoConsecutiveBlankLines:AnalyticsEvent.kt$AnalyticsEvent.Companion$ + NoConsecutiveBlankLines:AnalyticsReportScreen.kt$ + NoConsecutiveBlankLines:AppLockedScreen.kt$ + NoConsecutiveBlankLines:AppModuleDI.kt$AppModuleDI$ + NoConsecutiveBlankLines:BackupLogic.kt$ + NoConsecutiveBlankLines:BalanceRow.kt$ + NoConsecutiveBlankLines:BalanceScreen.kt$ + NoConsecutiveBlankLines:BarChart.kt$ + NoConsecutiveBlankLines:BottomBar.kt$ + NoConsecutiveBlankLines:BottomNavigationBar.kt$ + NoConsecutiveBlankLines:Budget.kt$Budget$ + NoConsecutiveBlankLines:BudgetCreator.kt$BudgetCreator$ + NoConsecutiveBlankLines:BudgetDTO.kt$BudgetDTO$ + NoConsecutiveBlankLines:BudgetEntity.kt$BudgetEntity$ + NoConsecutiveBlankLines:BudgetModal.kt$ + NoConsecutiveBlankLines:BudgetScreen.kt$ + NoConsecutiveBlankLines:BudgetUploader.kt$BudgetUploader$ + NoConsecutiveBlankLines:BudgetViewModel.kt$BudgetViewModel$ + NoConsecutiveBlankLines:BudgetsResponse.kt$ + NoConsecutiveBlankLines:BufferModal.kt$ + NoConsecutiveBlankLines:Button.kt$ + NoConsecutiveBlankLines:ButtonBack.kt$ + NoConsecutiveBlankLines:ButtonClose.kt$ + NoConsecutiveBlankLines:ButtonDelete.kt$ + NoConsecutiveBlankLines:ButtonExpandCollapse.kt$ + NoConsecutiveBlankLines:ButtonPrimary.kt$ + NoConsecutiveBlankLines:ButtonSecondary.kt$ + NoConsecutiveBlankLines:CSVImporter.kt$CSVImporter$ + NoConsecutiveBlankLines:CSVImporterV2.kt$CSVImporterV2$ + NoConsecutiveBlankLines:CSVMapper.kt$CSVMapper$ + NoConsecutiveBlankLines:CSVScreen.kt$ + NoConsecutiveBlankLines:CSVViewModel.kt$CSVViewModel$ + NoConsecutiveBlankLines:CategoriesScreen.kt$ + NoConsecutiveBlankLines:CategoryCharts.kt$ + NoConsecutiveBlankLines:CategoryCreator.kt$CategoryCreator$ + NoConsecutiveBlankLines:CategoryModal.kt$ + NoConsecutiveBlankLines:CategoryUploader.kt$CategoryUploader$ + NoConsecutiveBlankLines:ChartsScreen.kt$ + NoConsecutiveBlankLines:ChartsViewModel.kt$ + NoConsecutiveBlankLines:ChartsViewModel.kt$ChartsViewModel$ + NoConsecutiveBlankLines:CircleButtons.kt$ + NoConsecutiveBlankLines:ColorPicker.kt$ + NoConsecutiveBlankLines:Colors.kt$ + NoConsecutiveBlankLines:ComposeExt.kt$ + NoConsecutiveBlankLines:CrupdateBudgetRequest.kt$ + NoConsecutiveBlankLines:CurrencyPicker.kt$ + NoConsecutiveBlankLines:CustomExchangeRateCard.kt$ + NoConsecutiveBlankLines:CustomerJourneyLogic.kt$ + NoConsecutiveBlankLines:DataCircle.kt$ + NoConsecutiveBlankLines:DateExt.kt$ + NoConsecutiveBlankLines:DeleteConfirmationModal.kt$ + NoConsecutiveBlankLines:DependencyHandlerExt.kt$ + NoConsecutiveBlankLines:DetektConfigurationAccessors.kt$ + NoConsecutiveBlankLines:DetektPluginsConfigurationAccessors.kt$ + NoConsecutiveBlankLines:DonateModal.kt$ + NoConsecutiveBlankLines:DueDate.kt$ + NoConsecutiveBlankLines:EditBottomSheet.kt$ + NoConsecutiveBlankLines:EditPlannedViewModel.kt$EditPlannedViewModel$ + NoConsecutiveBlankLines:EditTransactionViewModel.kt$EditTransactionViewModel$ + NoConsecutiveBlankLines:ErrorModal.kt$ + NoConsecutiveBlankLines:Exchange.kt$ + NoConsecutiveBlankLines:ExchangeRatesScreen.kt$ + NoConsecutiveBlankLines:ExchangeRatesViewModel.kt$ExchangeRatesViewModel$ + NoConsecutiveBlankLines:FilterOverlay.kt$ + NoConsecutiveBlankLines:GitHubBackupStatus.kt$ + NoConsecutiveBlankLines:GitHubBackupViewModel.kt$GitHubBackupViewModel$ + NoConsecutiveBlankLines:GitHubBackupViewState.kt$ + NoConsecutiveBlankLines:GitHubClient.kt$ + NoConsecutiveBlankLines:GitHubCredentialsManager.kt$ + NoConsecutiveBlankLines:GradientCut.kt$ + NoConsecutiveBlankLines:Grid.kt$ + NoConsecutiveBlankLines:HistoryDateDivider.kt$ + NoConsecutiveBlankLines:HomeHeader.kt$ + NoConsecutiveBlankLines:HomeMoreMenu.kt$ + NoConsecutiveBlankLines:HomeTab.kt$ + NoConsecutiveBlankLines:IconPicker.kt$ + NoConsecutiveBlankLines:ImportFrom.kt$ + NoConsecutiveBlankLines:ImportInstructions.kt$ + NoConsecutiveBlankLines:ImportProcessing.kt$ + NoConsecutiveBlankLines:ImportResultUI.kt$ + NoConsecutiveBlankLines:InputField.kt$ + NoConsecutiveBlankLines:Insets.kt$ + NoConsecutiveBlankLines:ItemIcon.kt$ + NoConsecutiveBlankLines:ItemStatisticScreen.kt$ + NoConsecutiveBlankLines:IvyAndroidApp.kt$IvyAndroidApp$ + NoConsecutiveBlankLines:IvyBasicTextField.kt$ + NoConsecutiveBlankLines:IvyBorderButton.kt$ + NoConsecutiveBlankLines:IvyCheckbox.kt$ + NoConsecutiveBlankLines:IvyChecklistTextField.kt$ + NoConsecutiveBlankLines:IvyCircleButton.kt$ + NoConsecutiveBlankLines:IvyColorPicker.kt$ + NoConsecutiveBlankLines:IvyColors.kt$ + NoConsecutiveBlankLines:IvyComponents.kt$ + NoConsecutiveBlankLines:IvyComposeApp.kt$ + NoConsecutiveBlankLines:IvyDescriptionTextField.kt$ + NoConsecutiveBlankLines:IvyDivider.kt$ + NoConsecutiveBlankLines:IvyDividerDot.kt$ + NoConsecutiveBlankLines:IvyIcon.kt$ + NoConsecutiveBlankLines:IvyLineChart.kt$ + NoConsecutiveBlankLines:IvyModal.kt$ + NoConsecutiveBlankLines:IvyModalDomainComponents.kt$ + NoConsecutiveBlankLines:IvyNameTextFieldValue.kt$ + NoConsecutiveBlankLines:IvyNotificationChannel.kt$IvyNotificationChannel$ + NoConsecutiveBlankLines:IvyNumberTextField.kt$ + NoConsecutiveBlankLines:IvyOutlinedButton.kt$ + NoConsecutiveBlankLines:IvyOutlinedTextField.kt$ + NoConsecutiveBlankLines:IvyRoomDatabase.kt$ + NoConsecutiveBlankLines:IvySwitch.kt$ + NoConsecutiveBlankLines:IvyTheme.kt$ + NoConsecutiveBlankLines:IvyTitleTextField.kt$ + NoConsecutiveBlankLines:IvyUI.kt$ + NoConsecutiveBlankLines:IvyWalletCtx.kt$IvyWalletCtx$ + NoConsecutiveBlankLines:IvyWalletDesign.kt$IvyWalletDesign$ + NoConsecutiveBlankLines:Keyboard.kt$ + NoConsecutiveBlankLines:LineChart.kt$ + NoConsecutiveBlankLines:Loading.kt$ + NoConsecutiveBlankLines:LoanCreator.kt$LoanCreator$ + NoConsecutiveBlankLines:LoanDetailsScreen.kt$ + NoConsecutiveBlankLines:LoanModal.kt$ + NoConsecutiveBlankLines:LoanRecordCreator.kt$LoanRecordCreator$ + NoConsecutiveBlankLines:LoanRecordModal.kt$ + NoConsecutiveBlankLines:LoanRecordUploader.kt$LoanRecordUploader$ + NoConsecutiveBlankLines:LoanTransactionsCore.kt$LoanTransactionsCore$ + NoConsecutiveBlankLines:LoanUploader.kt$LoanUploader$ + NoConsecutiveBlankLines:LoansScreen.kt$ + NoConsecutiveBlankLines:MainBottomBar.kt$ + NoConsecutiveBlankLines:MoneyManagerPraseSteps.kt$ + NoConsecutiveBlankLines:Month.kt$Month$ + NoConsecutiveBlankLines:MonthPickerModal.kt$ + NoConsecutiveBlankLines:NotificationService.kt$NotificationService$ + NoConsecutiveBlankLines:Onboarding.kt$ + NoConsecutiveBlankLines:OnboardingAccounts.kt$ + NoConsecutiveBlankLines:OnboardingCategories.kt$ + NoConsecutiveBlankLines:OnboardingComponents.kt$ + NoConsecutiveBlankLines:OnboardingProgressSlider.kt$ + NoConsecutiveBlankLines:OnboardingReportTab.kt$ + NoConsecutiveBlankLines:OnboardingRouter.kt$OnboardingRouter$ + NoConsecutiveBlankLines:OnboardingSetName.kt$ + NoConsecutiveBlankLines:OnboardingSplashLogin.kt$ + NoConsecutiveBlankLines:OnboardingViewModel.kt$OnboardingViewModel$ + NoConsecutiveBlankLines:Padding.kt$ + NoConsecutiveBlankLines:ParseStatus.kt$ + NoConsecutiveBlankLines:PaywallLogic.kt$PaywallLogic$ + NoConsecutiveBlankLines:PaywallScreen.kt$ + NoConsecutiveBlankLines:PeriodSelector.kt$ + NoConsecutiveBlankLines:PieChart.kt$ + NoConsecutiveBlankLines:PieChart.kt$PieChartView$ + NoConsecutiveBlankLines:PieChartStatisticScreen.kt$ + NoConsecutiveBlankLines:PlannedPaymentRuleUploader.kt$PlannedPaymentRuleUploader$ + NoConsecutiveBlankLines:PlannedPaymentRulesResponse.kt$ + NoConsecutiveBlankLines:PlannedPaymentSync.kt$PlannedPaymentSync$ + NoConsecutiveBlankLines:PlannedPaymentsLazyColumn.kt$ + NoConsecutiveBlankLines:PlannedPaymentsLogic.kt$PlannedPaymentsLogic$ + NoConsecutiveBlankLines:PlansSheet.kt$ + NoConsecutiveBlankLines:PluginSpecBuilders.kt$ + NoConsecutiveBlankLines:PreloadDataLogic.kt$ + NoConsecutiveBlankLines:PreloadDataLogic.kt$PreloadDataLogic$ + NoConsecutiveBlankLines:Preview.kt$ + NoConsecutiveBlankLines:PreviewUtils.kt$ + NoConsecutiveBlankLines:PrimaryAttributeColumn.kt$ + NoConsecutiveBlankLines:ProgressBar.kt$ + NoConsecutiveBlankLines:RateItem.kt$ + NoConsecutiveBlankLines:RecurringRuleModal.kt$ + NoConsecutiveBlankLines:ReorderModal.kt$ + NoConsecutiveBlankLines:ReorderModal.kt$<no name provided>$ + NoConsecutiveBlankLines:RestClient.kt$RestClient.Companion$ + NoConsecutiveBlankLines:RootActivity.kt$ + NoConsecutiveBlankLines:RootActivity.kt$RootActivity$ + NoConsecutiveBlankLines:RootViewModel.kt$RootViewModel$ + NoConsecutiveBlankLines:SearchBar.kt$ + NoConsecutiveBlankLines:ServerStopScreen.kt$ + NoConsecutiveBlankLines:SettingsScreen.kt$ + NoConsecutiveBlankLines:SettingsViewModel.kt$SettingsViewModel$ + NoConsecutiveBlankLines:SharedPrefs.kt$SharedPrefs.Companion$ + NoConsecutiveBlankLines:SmartTitleSuggestionsLogic.kt$SmartTitleSuggestionsLogic$ + NoConsecutiveBlankLines:Suggestions.kt$ + NoConsecutiveBlankLines:Transaction.kt$Transaction$ + NoConsecutiveBlankLines:TransactionCard.kt$ + NoConsecutiveBlankLines:TransactionDao.kt$TransactionDao$ + NoConsecutiveBlankLines:TransactionDateTime.kt$ + NoConsecutiveBlankLines:TransactionService.kt$TransactionService$ + NoConsecutiveBlankLines:TransactionUploader.kt$TransactionUploader$ + NoConsecutiveBlankLines:TransactionsDividerLine.kt$ + NoConsecutiveBlankLines:TransactionsResponse.kt$ + NoConsecutiveBlankLines:TrnDateDividers.kt$ + NoConsecutiveBlankLines:UIExt.kt$ + NoConsecutiveBlankLines:WalletAccountLogic.kt$WalletAccountLogic$ + NoConsecutiveBlankLines:WalletBalanceWidget.kt$WalletBalanceWidgetReceiver$ + NoConsecutiveBlankLines:WalletCategoriesResponse.kt$ + NoConsecutiveBlankLines:WalletCategoryLogic.kt$WalletCategoryLogic$ + NoConsecutiveBlankLines:WalletCharts.kt$ + NoConsecutiveBlankLines:WebViewScreen.kt$ + NoConsecutiveBlankLines:WrapContentRow.kt$ + NoConsecutiveBlankLines:build.gradle.kts$ + NoConsecutiveBlankLines:dependencies.kt$ + NoEmptyClassBody:AccountsUpdatedEvent.kt$AccountsUpdatedEvent${ } + NoEmptyFirstLineInMethodBlock:AccountCharts.kt$ + NoEmptyFirstLineInMethodBlock:AccountModal.kt$ + NoEmptyFirstLineInMethodBlock:AccountsTab.kt$ + NoEmptyFirstLineInMethodBlock:AddKeywordModal.kt$ + NoEmptyFirstLineInMethodBlock:AddPrimaryAttributeButton.kt$ + NoEmptyFirstLineInMethodBlock:AmountModal.kt$ + NoEmptyFirstLineInMethodBlock:AnalyticsReportScreen.kt$ + NoEmptyFirstLineInMethodBlock:BudgetBottomBar.kt$ + NoEmptyFirstLineInMethodBlock:BudgetModal.kt$ + NoEmptyFirstLineInMethodBlock:Button.kt$ + NoEmptyFirstLineInMethodBlock:ButtonWithIcon.kt$ + NoEmptyFirstLineInMethodBlock:CSVViewModel.kt$CSVViewModel$ + NoEmptyFirstLineInMethodBlock:CategoriesBottomBar.kt$ + NoEmptyFirstLineInMethodBlock:CategoryModal.kt$ + NoEmptyFirstLineInMethodBlock:ChangeTransactionTypeModal.kt$ + NoEmptyFirstLineInMethodBlock:Checkbox.kt$ + NoEmptyFirstLineInMethodBlock:ChooseCategoryModal.kt$ + NoEmptyFirstLineInMethodBlock:ChooseIconModal.kt$ + NoEmptyFirstLineInMethodBlock:ChoosePeriodModal.kt$ + NoEmptyFirstLineInMethodBlock:ChooseStartDateOfMonthModal.kt$ + NoEmptyFirstLineInMethodBlock:CircleButtons.kt$ + NoEmptyFirstLineInMethodBlock:CurrencyModal.kt$ + NoEmptyFirstLineInMethodBlock:CurrencyPicker.kt$ + NoEmptyFirstLineInMethodBlock:Description.kt$ + NoEmptyFirstLineInMethodBlock:DescriptionModal.kt$ + NoEmptyFirstLineInMethodBlock:EditBottomSheet.kt$ + NoEmptyFirstLineInMethodBlock:ExportCSVLogic.kt$ExportCSVLogic$ + NoEmptyFirstLineInMethodBlock:HomeMoreMenu.kt$ + NoEmptyFirstLineInMethodBlock:IconButton.kt$ + NoEmptyFirstLineInMethodBlock:ImportInstructions.kt$ + NoEmptyFirstLineInMethodBlock:ImportResultUI.kt$ + NoEmptyFirstLineInMethodBlock:InputField.kt$ + NoEmptyFirstLineInMethodBlock:IntervalPickerRow.kt$ + NoEmptyFirstLineInMethodBlock:IvyBorderButton.kt$ + NoEmptyFirstLineInMethodBlock:IvyButton.kt$ + NoEmptyFirstLineInMethodBlock:IvyCheckbox.kt$ + NoEmptyFirstLineInMethodBlock:IvyCircleButton.kt$ + NoEmptyFirstLineInMethodBlock:IvyColorPicker.kt$ + NoEmptyFirstLineInMethodBlock:IvyModal.kt$ + NoEmptyFirstLineInMethodBlock:IvyNumberTextField.kt$ + NoEmptyFirstLineInMethodBlock:IvyOutlinedButton.kt$ + NoEmptyFirstLineInMethodBlock:LTLoanMapper.kt$LTLoanMapper$ + NoEmptyFirstLineInMethodBlock:LoanBottomBar.kt$ + NoEmptyFirstLineInMethodBlock:LoanDetailsScreen.kt$ + NoEmptyFirstLineInMethodBlock:LoanModal.kt$ + NoEmptyFirstLineInMethodBlock:LoanRecordModal.kt$ + NoEmptyFirstLineInMethodBlock:LoanTransactionsCore.kt$LoanTransactionsCore$ + NoEmptyFirstLineInMethodBlock:LoanTransactionsLogic.kt$LoanTransactionsLogic$ + NoEmptyFirstLineInMethodBlock:LoanViewModel.kt$LoanViewModel$ + NoEmptyFirstLineInMethodBlock:LoansScreen.kt$ + NoEmptyFirstLineInMethodBlock:MonthPickerModal.kt$ + NoEmptyFirstLineInMethodBlock:NameModal.kt$ + NoEmptyFirstLineInMethodBlock:OnboardingPrivacyTC.kt$ + NoEmptyFirstLineInMethodBlock:OnboardingSetCurrency.kt$ + NoEmptyFirstLineInMethodBlock:OnboardingSetName.kt$ + NoEmptyFirstLineInMethodBlock:OnboardingToolbar.kt$ + NoEmptyFirstLineInMethodBlock:OnboardingType.kt$ + NoEmptyFirstLineInMethodBlock:PeriodSelector.kt$ + NoEmptyFirstLineInMethodBlock:PieChartAct.kt$PieChartAct$ + NoEmptyFirstLineInMethodBlock:PlannedPaymentCard.kt$ + NoEmptyFirstLineInMethodBlock:PlannedPaymentsLazyColumn.kt$ + NoEmptyFirstLineInMethodBlock:PlansSheet.kt$ + NoEmptyFirstLineInMethodBlock:RecurringRuleModal.kt$ + NoEmptyFirstLineInMethodBlock:RootViewModel.kt$RootViewModel.<no name provided>$ + NoEmptyFirstLineInMethodBlock:Suggestions.kt$ + NoEmptyFirstLineInMethodBlock:Title.kt$ + NoEmptyFirstLineInMethodBlock:Toolbar.kt$ + NoEmptyFirstLineInMethodBlock:TransactionCard.kt$ + NoEmptyFirstLineInMethodBlock:TransactionDateTime.kt$ + NoEmptyFirstLineInMethodBlock:TransactionReminderWorker.kt$TransactionReminderWorker$ + NoEmptyFirstLineInMethodBlock:TransactionSectionDivider.kt$ + NoEmptyFirstLineInMethodBlock:UIExt.kt$ + NoEmptyFirstLineInMethodBlock:WalletCategoryLogic.kt$WalletCategoryLogic$ + NoLineBreakAfterElse:LoanTransactionsCore.kt$LoanTransactionsCore$ + NoMultipleSpaces:AccountsTab.kt$ + NoMultipleSpaces:BudgetScreen.kt$ + NoMultipleSpaces:CategoriesScreen.kt$ + NoMultipleSpaces:ChartsViewModel.kt$ChartsViewModel$ + NoMultipleSpaces:Constants.kt$Constants$ + NoMultipleSpaces:DetektConfigurationAccessors.kt$ + NoMultipleSpaces:DetektPluginsConfigurationAccessors.kt$ + NoMultipleSpaces:LoansScreen.kt$ + NoMultipleSpaces:ivy.lint.gradle.kts$ + NoSemicolons:LogoutLogic.kt$LogoutLogic$; + NoSemicolons:UIExt.kt$; + NoSemicolons:UtilExt.kt$; + NoTrailingSpaces:ivy.lint.gradle.kts$ + NoUnusedImports:Accessors32ikgp1isdd8mwexzgbe6rirl.kt$gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9.Accessors32ikgp1isdd8mwexzgbe6rirl.kt + NoUnusedImports:Accessors46nwrg1rs44ofdqpi7vyy3pfc.kt$gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9.Accessors46nwrg1rs44ofdqpi7vyy3pfc.kt + NoUnusedImports:Accessors4ymijgaek646mzru18sdmblu7.kt$gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9.Accessors4ymijgaek646mzru18sdmblu7.kt + NoUnusedImports:Accessors5x03zd2mf47s5vj1qv3jvhdru.kt$gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9.Accessors5x03zd2mf47s5vj1qv3jvhdru.kt + NoUnusedImports:Accessors6m89nhcqblthog8es93pjkmhg.kt$gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9.Accessors6m89nhcqblthog8es93pjkmhg.kt + NoUnusedImports:Accessors72k7tti784t7idmqtg2upvaru.kt$gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9.Accessors72k7tti784t7idmqtg2upvaru.kt + NoUnusedImports:Accessors7hvycqvau4uyj5knata7lx0yx.kt$gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9.Accessors7hvycqvau4uyj5knata7lx0yx.kt + NoUnusedImports:Accessors8lcri9ibgd9oj8dt3t8z8nvfx.kt$gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9.Accessors8lcri9ibgd9oj8dt3t8z8nvfx.kt + NoUnusedImports:Accessorsa5ptgikd9fb816fav4742zvaq.kt$gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9.Accessorsa5ptgikd9fb816fav4742zvaq.kt + NoUnusedImports:Accessorsblypoh2ruc9u3bx9djsfqsntg.kt$gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9.Accessorsblypoh2ruc9u3bx9djsfqsntg.kt + NoUnusedImports:Accessorsbtc8iwv8u9b0f38ikfmodj8ns.kt$gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9.Accessorsbtc8iwv8u9b0f38ikfmodj8ns.kt + NoUnusedImports:Accessorseessl0al0otcsbyqqruvoncpd.kt$gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9.Accessorseessl0al0otcsbyqqruvoncpd.kt + NoUnusedImports:DetektConfigurationAccessors.kt$gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9.DetektConfigurationAccessors.kt + NoUnusedImports:DetektPluginsConfigurationAccessors.kt$gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9.DetektPluginsConfigurationAccessors.kt + NoUnusedImports:NotificationService.kt$com.ivy.wallet.android.notification.NotificationService.kt + NoWildcardImports:Accessors32ikgp1isdd8mwexzgbe6rirl.kt$import org.gradle.kotlin.dsl.* + NoWildcardImports:Accessors32ikgp1isdd8mwexzgbe6rirl.kt$import org.gradle.kotlin.dsl.accessors.runtime.* + NoWildcardImports:Accessors46nwrg1rs44ofdqpi7vyy3pfc.kt$import org.gradle.kotlin.dsl.* + NoWildcardImports:Accessors46nwrg1rs44ofdqpi7vyy3pfc.kt$import org.gradle.kotlin.dsl.accessors.runtime.* + NoWildcardImports:Accessors4ymijgaek646mzru18sdmblu7.kt$import org.gradle.kotlin.dsl.* + NoWildcardImports:Accessors4ymijgaek646mzru18sdmblu7.kt$import org.gradle.kotlin.dsl.accessors.runtime.* + NoWildcardImports:Accessors5x03zd2mf47s5vj1qv3jvhdru.kt$import org.gradle.kotlin.dsl.* + NoWildcardImports:Accessors5x03zd2mf47s5vj1qv3jvhdru.kt$import org.gradle.kotlin.dsl.accessors.runtime.* + NoWildcardImports:Accessors6m89nhcqblthog8es93pjkmhg.kt$import org.gradle.kotlin.dsl.* + NoWildcardImports:Accessors6m89nhcqblthog8es93pjkmhg.kt$import org.gradle.kotlin.dsl.accessors.runtime.* + NoWildcardImports:Accessors72k7tti784t7idmqtg2upvaru.kt$import org.gradle.kotlin.dsl.* + NoWildcardImports:Accessors72k7tti784t7idmqtg2upvaru.kt$import org.gradle.kotlin.dsl.accessors.runtime.* + NoWildcardImports:Accessors7hvycqvau4uyj5knata7lx0yx.kt$import org.gradle.kotlin.dsl.* + NoWildcardImports:Accessors7hvycqvau4uyj5knata7lx0yx.kt$import org.gradle.kotlin.dsl.accessors.runtime.* + NoWildcardImports:Accessors8lcri9ibgd9oj8dt3t8z8nvfx.kt$import org.gradle.kotlin.dsl.* + NoWildcardImports:Accessors8lcri9ibgd9oj8dt3t8z8nvfx.kt$import org.gradle.kotlin.dsl.accessors.runtime.* + NoWildcardImports:Accessorsa5ptgikd9fb816fav4742zvaq.kt$import org.gradle.kotlin.dsl.* + NoWildcardImports:Accessorsa5ptgikd9fb816fav4742zvaq.kt$import org.gradle.kotlin.dsl.accessors.runtime.* + NoWildcardImports:Accessorsblypoh2ruc9u3bx9djsfqsntg.kt$import org.gradle.kotlin.dsl.* + NoWildcardImports:Accessorsblypoh2ruc9u3bx9djsfqsntg.kt$import org.gradle.kotlin.dsl.accessors.runtime.* + NoWildcardImports:Accessorsbtc8iwv8u9b0f38ikfmodj8ns.kt$import org.gradle.kotlin.dsl.* + NoWildcardImports:Accessorsbtc8iwv8u9b0f38ikfmodj8ns.kt$import org.gradle.kotlin.dsl.accessors.runtime.* + NoWildcardImports:Accessorseessl0al0otcsbyqqruvoncpd.kt$import org.gradle.kotlin.dsl.* + NoWildcardImports:Accessorseessl0al0otcsbyqqruvoncpd.kt$import org.gradle.kotlin.dsl.accessors.runtime.* + NoWildcardImports:AccountService.kt$import retrofit2.http.* + NoWildcardImports:AppModuleDI.kt$import com.ivy.wallet.domain.deprecated.logic.* + NoWildcardImports:AppModuleDI.kt$import com.ivy.wallet.domain.deprecated.logic.csv.* + NoWildcardImports:AppModuleDI.kt$import com.ivy.wallet.domain.deprecated.sync.item.* + NoWildcardImports:AppModuleDI.kt$import com.ivy.wallet.domain.deprecated.sync.uploader.* + NoWildcardImports:AppModuleDI.kt$import com.ivy.wallet.io.network.* + NoWildcardImports:AppModuleDI.kt$import com.ivy.wallet.io.persistence.dao.* + NoWildcardImports:AuthService.kt$import com.ivy.wallet.io.network.request.auth.* + NoWildcardImports:BackupLogic.kt$import com.google.gson.* + NoWildcardImports:BackupLogic.kt$import com.ivy.wallet.io.persistence.dao.* + NoWildcardImports:BudgetService.kt$import retrofit2.http.* + NoWildcardImports:BufferModal.kt$import androidx.compose.runtime.* + NoWildcardImports:CSVViewModel.kt$import androidx.compose.runtime.* + NoWildcardImports:CSVViewModel.kt$import com.ivy.wallet.ui.csv.domain.* + NoWildcardImports:CategoriesViewModel.kt$import kotlinx.coroutines.* + NoWildcardImports:CategoryModal.kt$import androidx.compose.foundation.layout.* + NoWildcardImports:CategoryModal.kt$import androidx.compose.runtime.* + NoWildcardImports:CategoryService.kt$import retrofit2.http.* + NoWildcardImports:ChooseIconModal.kt$import androidx.compose.foundation.layout.* + NoWildcardImports:ChooseIconModal.kt$import androidx.compose.runtime.* + NoWildcardImports:ComposeExt.kt$import androidx.compose.runtime.* + NoWildcardImports:DateExt.kt$import java.time.* + NoWildcardImports:DetektConfigurationAccessors.kt$import org.gradle.kotlin.dsl.* + NoWildcardImports:DetektConfigurationAccessors.kt$import org.gradle.kotlin.dsl.accessors.runtime.* + NoWildcardImports:DetektPluginsConfigurationAccessors.kt$import org.gradle.kotlin.dsl.* + NoWildcardImports:DetektPluginsConfigurationAccessors.kt$import org.gradle.kotlin.dsl.accessors.runtime.* + NoWildcardImports:Dividers.kt$import androidx.compose.foundation.layout.* + NoWildcardImports:EditPlannedViewModel.kt$import com.ivy.wallet.io.persistence.dao.* + NoWildcardImports:ExchangeRatesViewModel.kt$import kotlinx.coroutines.flow.* + NoWildcardImports:FileUtil.kt$import java.io.* + NoWildcardImports:FromToTimeRange.kt$import com.ivy.wallet.utils.* + NoWildcardImports:HealthTab.kt$import androidx.compose.foundation.layout.* + NoWildcardImports:HomeViewModel.kt$import com.ivy.wallet.domain.action.viewmodel.home.* + NoWildcardImports:ImportType.kt$import com.ivy.wallet.ui.csvimport.flow.instructions.* + NoWildcardImports:ImportType.kt$import com.ivy.wallet.ui.theme.* + NoWildcardImports:InputField.kt$import com.ivy.design.l0_system.* + NoWildcardImports:InputField.kt$import com.ivy.design.utils.* + NoWildcardImports:ItemStatisticViewModel.kt$import com.ivy.wallet.domain.deprecated.logic.* + NoWildcardImports:ItemStatisticViewModel.kt$import com.ivy.wallet.io.persistence.dao.* + NoWildcardImports:ItemStatisticViewModel.kt$import com.ivy.wallet.utils.* + NoWildcardImports:IvyLineChart.kt$import androidx.compose.runtime.* + NoWildcardImports:IvyLineChart.kt$import androidx.compose.ui.graphics.* + NoWildcardImports:IvyRoomDatabase.kt$import androidx.room.* + NoWildcardImports:IvyRoomDatabase.kt$import com.ivy.wallet.io.persistence.dao.* + NoWildcardImports:IvyRoomDatabase.kt$import com.ivy.wallet.io.persistence.data.* + NoWildcardImports:IvyRoomDatabase.kt$import com.ivy.wallet.io.persistence.migration.* + NoWildcardImports:IvySwitch.kt$import androidx.compose.foundation.layout.* + NoWildcardImports:IvySwitch.kt$import androidx.compose.runtime.* + NoWildcardImports:IvySync.kt$import com.ivy.wallet.domain.deprecated.sync.item.* + NoWildcardImports:IvyToolbar.kt$import androidx.compose.foundation.layout.* + NoWildcardImports:IvyViewPager.kt$import androidx.compose.foundation.layout.* + NoWildcardImports:IvyViewPager.kt$import androidx.compose.runtime.* + NoWildcardImports:IvyWalletCompleteData.kt$import com.ivy.wallet.io.persistence.data.* + NoWildcardImports:IvyWalletDesign.kt$import com.ivy.design.l0_system.* + NoWildcardImports:KPIsTab.kt$import androidx.compose.foundation.layout.* + NoWildcardImports:KPIsTab.kt$import com.ivy.wallet.ui.theme.* + NoWildcardImports:Keyboard.kt$import androidx.compose.runtime.* + NoWildcardImports:LoanDetailsViewModel.kt$import com.ivy.wallet.io.persistence.dao.* + NoWildcardImports:LoanService.kt$import com.ivy.wallet.io.network.request.loan.* + NoWildcardImports:LoanService.kt$import retrofit2.http.* + NoWildcardImports:LoanTransactionsCore.kt$import com.ivy.wallet.domain.data.core.* + NoWildcardImports:LoanTransactionsCore.kt$import com.ivy.wallet.io.persistence.dao.* + NoWildcardImports:MainScreen.kt$import androidx.compose.runtime.* + NoWildcardImports:MainScreen.kt$import com.ivy.wallet.ui.* + NoWildcardImports:OnboardingReportTab.kt$import androidx.compose.foundation.layout.* + NoWildcardImports:OnboardingReportTab.kt$import com.ivy.wallet.ui.theme.* + NoWildcardImports:OnboardingScreen.kt$import com.ivy.wallet.ui.onboarding.steps.* + NoWildcardImports:PieChart.kt$import androidx.compose.foundation.layout.* + NoWildcardImports:PieChart.kt$import com.ivy.wallet.ui.theme.* + NoWildcardImports:PlannedPaymentRuleService.kt$import retrofit2.http.* + NoWildcardImports:PreloadDataLogic.kt$import com.ivy.wallet.ui.theme.* + NoWildcardImports:ProgressBar.kt$import com.ivy.wallet.ui.theme.* + NoWildcardImports:ReorderModal.kt$import androidx.compose.foundation.layout.* + NoWildcardImports:ReorderModal.kt$import androidx.compose.runtime.* + NoWildcardImports:ReorderModal.kt$import androidx.recyclerview.widget.ItemTouchHelper.* + NoWildcardImports:ReportViewModel.kt$import com.ivy.wallet.utils.* + NoWildcardImports:RestClient.kt$import com.ivy.wallet.io.network.service.* + NoWildcardImports:Spacers.kt$import androidx.compose.foundation.layout.* + NoWildcardImports:Switch.kt$import androidx.compose.foundation.layout.* + NoWildcardImports:Switch.kt$import androidx.compose.runtime.* + NoWildcardImports:TimePeriod.kt$import com.ivy.wallet.utils.* + NoWildcardImports:TransactionService.kt$import retrofit2.http.* + NoWildcardImports:UserStatsTab.kt$import androidx.compose.foundation.layout.* + NoWildcardImports:ViewPager.kt$import androidx.compose.runtime.* + NoWildcardImports:WalletBalanceWidgetContent.kt$import androidx.glance.layout.* + NoWildcardImports:ZipUtils.kt$import java.io.* + ObjectPropertyNaming:SharedPrefs.kt$SharedPrefs.Companion$//-------------------------------- Customer Journey ---------------------------------------- const val _CARD_DISMISSED = "_cj_dismissed" + PackageName:Accessors32ikgp1isdd8mwexzgbe6rirl.kt$package gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9 + PackageName:Accessors46nwrg1rs44ofdqpi7vyy3pfc.kt$package gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9 + PackageName:Accessors4ymijgaek646mzru18sdmblu7.kt$package gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9 + PackageName:Accessors5x03zd2mf47s5vj1qv3jvhdru.kt$package gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9 + PackageName:Accessors6m89nhcqblthog8es93pjkmhg.kt$package gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9 + PackageName:Accessors72k7tti784t7idmqtg2upvaru.kt$package gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9 + PackageName:Accessors7hvycqvau4uyj5knata7lx0yx.kt$package gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9 + PackageName:Accessors8lcri9ibgd9oj8dt3t8z8nvfx.kt$package gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9 + PackageName:Accessorsa5ptgikd9fb816fav4742zvaq.kt$package gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9 + PackageName:Accessorsblypoh2ruc9u3bx9djsfqsntg.kt$package gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9 + PackageName:Accessorsbtc8iwv8u9b0f38ikfmodj8ns.kt$package gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9 + PackageName:Accessorseessl0al0otcsbyqqruvoncpd.kt$package gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9 + PackageName:Background.kt$package com.ivy.design.l1_buildingBlocks.data + PackageName:BarChart.kt$package com.ivy.design.l3_ivyComponents.chart + PackageName:BottomBar.kt$package com.ivy.design.l3_ivyComponents.bar + PackageName:BottomNavigationBar.kt$package com.ivy.design.l3_ivyComponents.bar + PackageName:Button.kt$package com.ivy.design.l2_components + PackageName:ButtonBack.kt$package com.ivy.design.l3_ivyComponents.button + PackageName:ButtonClose.kt$package com.ivy.design.l3_ivyComponents.button + PackageName:ButtonDelete.kt$package com.ivy.design.l3_ivyComponents.button + PackageName:ButtonExpandCollapse.kt$package com.ivy.design.l3_ivyComponents.button + PackageName:ButtonPrimary.kt$package com.ivy.design.l3_ivyComponents.button + PackageName:ButtonSecondary.kt$package com.ivy.design.l3_ivyComponents.button + PackageName:ButtonWithIcon.kt$package com.ivy.design.l2_components + PackageName:Card.kt$package com.ivy.design.l3_ivyComponents + PackageName:Checkbox.kt$package com.ivy.design.l2_components + PackageName:ColorPicker.kt$package com.ivy.design.l4_patterns + PackageName:ColoredItemCard.kt$package com.ivy.design.l4_patterns + PackageName:Colors.kt$package com.ivy.design.l0_system + PackageName:ColumnRoot.kt$package com.ivy.design.l1_buildingBlocks + PackageName:DeleteAllData.kt$package com.ivy.design.l4_patterns.delete + PackageName:DeleteConfirmationModal.kt$package com.ivy.design.l4_patterns.delete + PackageName:DeleteItem.kt$package com.ivy.design.l4_patterns.delete + PackageName:DetektConfigurationAccessors.kt$package gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9 + PackageName:DetektPluginsConfigurationAccessors.kt$package gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9 + PackageName:Dividers.kt$package com.ivy.design.l1_buildingBlocks + PackageName:EditContentCard.kt$package com.ivy.design.l4_patterns + PackageName:ErrorModal.kt$package com.ivy.design.l4_patterns + PackageName:FAB.kt$package com.ivy.design.l3_ivyComponents.button + PackageName:IconButton.kt$package com.ivy.design.l2_components + PackageName:IconPicker.kt$package com.ivy.design.l4_patterns + PackageName:InputField.kt$package com.ivy.design.l2_components + PackageName:ItemDetailsScreen.kt$package com.ivy.design.l5_concept + PackageName:IvyColors.kt$package com.ivy.design.l0_system + PackageName:IvyIcon.kt$package com.ivy.design.l1_buildingBlocks + PackageName:IvyPadding.kt$package com.ivy.design.l1_buildingBlocks.data + PackageName:IvyShapes.kt$package com.ivy.design.l0_system + PackageName:IvyText.kt$package com.ivy.design.l1_buildingBlocks + PackageName:IvyTheme.kt$package com.ivy.design.l0_system + PackageName:IvyTypography.kt$package com.ivy.design.l0_system + PackageName:LineChart.kt$package com.ivy.design.l3_ivyComponents.chart + PackageName:Loading.kt$package com.ivy.design.l3_ivyComponents.percentage + PackageName:MoreInfo.kt$package com.ivy.design.l4_patterns + PackageName:MoreMenu.kt$package com.ivy.design.l4_patterns + PackageName:Onboarding.kt$package com.ivy.design.l5_concept + PackageName:PieChart.kt$package com.ivy.design.l3_ivyComponents.chart + PackageName:PluginSpecBuilders.kt$package gradle.kotlin.dsl.plugins._cbc4edcb0c3d88134f29766b2a7d4f41 + PackageName:ProgressBar.kt$package com.ivy.design.l3_ivyComponents.percentage + PackageName:ReorderModal.kt$package com.ivy.design.l4_patterns + PackageName:ScreenTitle.kt$package com.ivy.design.l3_ivyComponents + PackageName:SearchBar.kt$package com.ivy.design.l3_ivyComponents.bar + PackageName:Shapes.kt$package com.ivy.design.l1_buildingBlocks + PackageName:Spacers.kt$package com.ivy.design.l1_buildingBlocks + PackageName:Switch.kt$package com.ivy.design.l2_components + PackageName:Theme.kt$package com.ivy.design.l0_system + PackageName:Toolbar.kt$package com.ivy.design.l3_ivyComponents.bar + PackageName:TypographyExt.kt$package com.ivy.design.l0_system + PackageNaming:Accessors32ikgp1isdd8mwexzgbe6rirl.kt$package gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9 + PackageNaming:Accessors46nwrg1rs44ofdqpi7vyy3pfc.kt$package gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9 + PackageNaming:Accessors4ymijgaek646mzru18sdmblu7.kt$package gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9 + PackageNaming:Accessors5x03zd2mf47s5vj1qv3jvhdru.kt$package gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9 + PackageNaming:Accessors6m89nhcqblthog8es93pjkmhg.kt$package gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9 + PackageNaming:Accessors72k7tti784t7idmqtg2upvaru.kt$package gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9 + PackageNaming:Accessors7hvycqvau4uyj5knata7lx0yx.kt$package gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9 + PackageNaming:Accessors8lcri9ibgd9oj8dt3t8z8nvfx.kt$package gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9 + PackageNaming:Accessorsa5ptgikd9fb816fav4742zvaq.kt$package gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9 + PackageNaming:Accessorsblypoh2ruc9u3bx9djsfqsntg.kt$package gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9 + PackageNaming:Accessorsbtc8iwv8u9b0f38ikfmodj8ns.kt$package gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9 + PackageNaming:Accessorseessl0al0otcsbyqqruvoncpd.kt$package gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9 + PackageNaming:Background.kt$package com.ivy.design.l1_buildingBlocks.data + PackageNaming:BarChart.kt$package com.ivy.design.l3_ivyComponents.chart + PackageNaming:BottomBar.kt$package com.ivy.design.l3_ivyComponents.bar + PackageNaming:BottomNavigationBar.kt$package com.ivy.design.l3_ivyComponents.bar + PackageNaming:Button.kt$package com.ivy.design.l2_components + PackageNaming:ButtonBack.kt$package com.ivy.design.l3_ivyComponents.button + PackageNaming:ButtonClose.kt$package com.ivy.design.l3_ivyComponents.button + PackageNaming:ButtonDelete.kt$package com.ivy.design.l3_ivyComponents.button + PackageNaming:ButtonExpandCollapse.kt$package com.ivy.design.l3_ivyComponents.button + PackageNaming:ButtonPrimary.kt$package com.ivy.design.l3_ivyComponents.button + PackageNaming:ButtonSecondary.kt$package com.ivy.design.l3_ivyComponents.button + PackageNaming:ButtonWithIcon.kt$package com.ivy.design.l2_components + PackageNaming:Card.kt$package com.ivy.design.l3_ivyComponents + PackageNaming:Checkbox.kt$package com.ivy.design.l2_components + PackageNaming:ColorPicker.kt$package com.ivy.design.l4_patterns + PackageNaming:ColoredItemCard.kt$package com.ivy.design.l4_patterns + PackageNaming:Colors.kt$package com.ivy.design.l0_system + PackageNaming:ColumnRoot.kt$package com.ivy.design.l1_buildingBlocks + PackageNaming:DeleteAllData.kt$package com.ivy.design.l4_patterns.delete + PackageNaming:DeleteConfirmationModal.kt$package com.ivy.design.l4_patterns.delete + PackageNaming:DeleteItem.kt$package com.ivy.design.l4_patterns.delete + PackageNaming:DetektConfigurationAccessors.kt$package gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9 + PackageNaming:DetektPluginsConfigurationAccessors.kt$package gradle.kotlin.dsl.accessors._6b1cdd1e881959619ea23cf7941079a9 + PackageNaming:Dividers.kt$package com.ivy.design.l1_buildingBlocks + PackageNaming:EditContentCard.kt$package com.ivy.design.l4_patterns + PackageNaming:ErrorModal.kt$package com.ivy.design.l4_patterns + PackageNaming:FAB.kt$package com.ivy.design.l3_ivyComponents.button + PackageNaming:IconButton.kt$package com.ivy.design.l2_components + PackageNaming:IconPicker.kt$package com.ivy.design.l4_patterns + PackageNaming:InputField.kt$package com.ivy.design.l2_components + PackageNaming:ItemDetailsScreen.kt$package com.ivy.design.l5_concept + PackageNaming:IvyColors.kt$package com.ivy.design.l0_system + PackageNaming:IvyIcon.kt$package com.ivy.design.l1_buildingBlocks + PackageNaming:IvyPadding.kt$package com.ivy.design.l1_buildingBlocks.data + PackageNaming:IvyShapes.kt$package com.ivy.design.l0_system + PackageNaming:IvyText.kt$package com.ivy.design.l1_buildingBlocks + PackageNaming:IvyTheme.kt$package com.ivy.design.l0_system + PackageNaming:IvyTypography.kt$package com.ivy.design.l0_system + PackageNaming:LineChart.kt$package com.ivy.design.l3_ivyComponents.chart + PackageNaming:Loading.kt$package com.ivy.design.l3_ivyComponents.percentage + PackageNaming:MoreInfo.kt$package com.ivy.design.l4_patterns + PackageNaming:MoreMenu.kt$package com.ivy.design.l4_patterns + PackageNaming:Onboarding.kt$package com.ivy.design.l5_concept + PackageNaming:PieChart.kt$package com.ivy.design.l3_ivyComponents.chart + PackageNaming:PluginSpecBuilders.kt$package gradle.kotlin.dsl.plugins._cbc4edcb0c3d88134f29766b2a7d4f41 + PackageNaming:ProgressBar.kt$package com.ivy.design.l3_ivyComponents.percentage + PackageNaming:ReorderModal.kt$package com.ivy.design.l4_patterns + PackageNaming:ScreenTitle.kt$package com.ivy.design.l3_ivyComponents + PackageNaming:SearchBar.kt$package com.ivy.design.l3_ivyComponents.bar + PackageNaming:Shapes.kt$package com.ivy.design.l1_buildingBlocks + PackageNaming:Spacers.kt$package com.ivy.design.l1_buildingBlocks + PackageNaming:Switch.kt$package com.ivy.design.l2_components + PackageNaming:Theme.kt$package com.ivy.design.l0_system + PackageNaming:Toolbar.kt$package com.ivy.design.l3_ivyComponents.bar + PackageNaming:TypographyExt.kt$package com.ivy.design.l0_system + ParameterListWrapping:Accessors32ikgp1isdd8mwexzgbe6rirl.kt$(configure: Action<org.gradle.api.plugins.ExtraPropertiesExtension>) + ParameterListWrapping:Accessors46nwrg1rs44ofdqpi7vyy3pfc.kt$(configure: Action<org.gradle.api.plugins.ExtraPropertiesExtension>) + ParameterListWrapping:Accessors8lcri9ibgd9oj8dt3t8z8nvfx.kt$(configure: Action<org.gradle.api.plugins.ExtraPropertiesExtension>) + ParameterListWrapping:Accessorseessl0al0otcsbyqqruvoncpd.kt$(configure: Action<org.gradle.api.plugins.ExtraPropertiesExtension>) + ParameterListWrapping:DetektConfigurationAccessors.kt$(constraintNotation: Any, block: DependencyConstraint.() -> Unit) + ParameterListWrapping:DetektPluginsConfigurationAccessors.kt$(constraintNotation: Any, block: DependencyConstraint.() -> Unit) + ParameterListWrapping:TransactionReminderWorker.kt$TransactionReminderWorker$( @Assisted appContext: Context, @Assisted params: WorkerParameters, private val transactionDao: TransactionDao, private val notificationService: NotificationService, private val sharedPrefs: SharedPrefs, ) + PrintStackTrace:AccountSync.kt$AccountSync$e + PrintStackTrace:AccountUploader.kt$AccountUploader$e + PrintStackTrace:Budget.kt$Budget$e + PrintStackTrace:BudgetCreator.kt$BudgetCreator$e + PrintStackTrace:BudgetDTO.kt$BudgetDTO$e + PrintStackTrace:BudgetEntity.kt$BudgetEntity$e + PrintStackTrace:BudgetSync.kt$BudgetSync$e + PrintStackTrace:BudgetUploader.kt$BudgetUploader$e + PrintStackTrace:CSVImporter.kt$CSVImporter$e + PrintStackTrace:CSVViewModel.kt$CSVViewModel$e + PrintStackTrace:CategoryCreator.kt$CategoryCreator$e + PrintStackTrace:CategorySync.kt$CategorySync$e + PrintStackTrace:CategoryUploader.kt$CategoryUploader$e + PrintStackTrace:EditTransactionViewModel.kt$EditTransactionViewModel$e + PrintStackTrace:ExportCSVLogic.kt$ExportCSVLogic$e + PrintStackTrace:FileUtil.kt$e + PrintStackTrace:IvyBilling.kt$IvyBilling$e + PrintStackTrace:IvyCurrency.kt$IvyCurrency.Companion$e + PrintStackTrace:Keyboard.kt$e + PrintStackTrace:LoanCreator.kt$LoanCreator$e + PrintStackTrace:LoanRecordCreator.kt$LoanRecordCreator$e + PrintStackTrace:LoanRecordSync.kt$LoanRecordSync$e + PrintStackTrace:LoanRecordUploader.kt$LoanRecordUploader$e + PrintStackTrace:LoanSync.kt$LoanSync$e + PrintStackTrace:LoanUploader.kt$LoanUploader$e + PrintStackTrace:MigrationsManager.kt$MigrationsManager$e + PrintStackTrace:NotificationService.kt$NotificationService$e + PrintStackTrace:PlannedPaymentRuleUploader.kt$PlannedPaymentRuleUploader$e + PrintStackTrace:PlannedPaymentSync.kt$PlannedPaymentSync$e + PrintStackTrace:RootActivity.kt$RootActivity$e + PrintStackTrace:SyncExchangeRatesAct.kt$SyncExchangeRatesAct$e + PrintStackTrace:TransactionSync.kt$TransactionSync$e + PrintStackTrace:TransactionUploader.kt$TransactionUploader$e + PrintStackTrace:UIExt.kt$e + ReturnCount:CSVImporter.kt$CSVImporter$private fun mapDate( rowMapping: RowMapping, dateString: String? ): LocalDateTime? + ReturnCount:CSVImporter.kt$CSVImporter$private fun mapType( row: List<String>, rowMapping: RowMapping ): TransactionType? + ReturnCount:CSVImporter.kt$CSVImporter$private suspend fun mapAccount( baseCurrency: String, accountNameString: String?, color: Int?, icon: String?, orderNum: Double?, currencyRawString: String?, ): Account? + ReturnCount:CSVImporter.kt$CSVImporter$private suspend fun mapCategory( categoryNameString: String?, color: Int?, icon: String?, orderNum: Double? ): Category? + ReturnCount:CSVImporter.kt$CSVImporter$private suspend fun mapToTransaction( baseCurrency: String, row: List<String>, rowMapping: RowMapping ): Transaction? + ReturnCount:CSVImporterV2.kt$CSVImporterV2$private suspend fun mapAccount( baseCurrency: String, accountNameString: String?, color: Int?, icon: String?, orderNum: Double?, currencyRawString: String?, ): Account? + ReturnCount:CSVImporterV2.kt$CSVImporterV2$private suspend fun mapCategory( categoryNameString: String?, color: Int?, icon: String?, orderNum: Double? ): Category? + ReturnCount:CSVImporterV2.kt$CSVImporterV2$private suspend fun mapToTransaction( baseCurrency: String, row: CSVRowNew, importantFields: ImportantFields, transferFields: TransferFields, optionalFields: OptionalFields, ): Transaction? + ReturnCount:CSVViewModel.kt$CSVViewModel$private fun processFile( uri: Uri, normalizeCSV: Boolean = false, charset: Charset = Charsets.UTF_8 ): List<CSVRow>? + ReturnCount:EditPlannedViewModel.kt$EditPlannedViewModel$private fun validate(): Boolean + ReturnCount:EditTransactionViewModel.kt$EditTransactionViewModel$private fun validateTransaction(): Boolean + ReturnCount:EditTransactionViewModel.kt$EditTransactionViewModel$private suspend fun defaultAccountId( screen: EditTransaction, accounts: List<Account>, ): UUID + ReturnCount:EditTransactionViewModel.kt$EditTransactionViewModel$private suspend fun getDisplayLoanHelper(trans: Transaction): EditTransactionDisplayLoan + ReturnCount:ExchangeRatesLogic.kt$ExchangeRatesLogic$private suspend fun exchangeRate( baseCurrency: String, currency: String ): Double + ReturnCount:IvyCurrency.kt$IvyCurrency.Companion$fun fromCode(code: String): IvyCurrency? + ReturnCount:LoanCreator.kt$LoanCreator$suspend fun create( data: CreateLoanData, onRefreshUI: suspend (Loan) -> Unit ): UUID? + ReturnCount:LoanRecordCreator.kt$LoanRecordCreator$suspend fun create( loanId: UUID, data: CreateLoanRecordData, onRefreshUI: suspend (LoanRecord) -> Unit ): UUID? + ReturnCount:PaywallLogic.kt$PaywallLogic$private suspend fun checkPaywall( paywallHitDefinition: suspend () -> PaywallReason? ): PaywallReason? + ReturnCount:Plan.kt$Plan$fun parsePrice(): AmountCurrency? + ReturnCount:PlannedPaymentsLogic.kt$PlannedPaymentsLogic$private suspend fun amountForMonthInBaseCurrency( plannedPayment: PlannedPaymentRule, baseCurrency: String, accounts: List<Account> ): Double + ReturnCount:ReportFilter.kt$ReportFilter$fun validate(): Boolean + ReturnCount:SyncExchangeRatesAct.kt$SyncExchangeRatesAct$private suspend fun sync(baseCurrency: String) + SpacingAroundColon:AmountFormatting.kt$: + SpacingAroundColon:ComposeExt.kt$: + SpacingAroundColon:CreateLoanData.kt$CreateLoanData$: + SpacingAroundColon:ReorderModal.kt$: + SpacingAroundColon:ReportViewModel.kt$ReportViewModel$: + SpacingAroundColon:UiText.kt$UiText$: + SpacingAroundComma:ItemStatisticScreen.kt$, + SpacingAroundComma:IvyDesign.kt$IvyDesign$, + SpacingAroundComma:IvyWalletDesign.kt$IvyWalletDesign$, + SpacingAroundComma:PlannedPaymentCard.kt$, + SpacingAroundCurly:ItemStatisticScreen.kt${ + SpacingAroundCurly:ItemStatisticViewModel.kt$ItemStatisticViewModel${ + SpacingAroundCurly:PlannedPaymentsLogic.kt$PlannedPaymentsLogic${ + SpacingAroundCurly:ReportViewModel.kt$ReportViewModel${ + SpacingAroundKeyword:ExportCSVLogic.kt$ExportCSVLogic$when + SpacingAroundKeyword:IvyWalletDesign.kt$IvyWalletDesign$if + SpacingAroundKeyword:OnboardingAccounts.kt$if + SpacingAroundParens:AppModuleDI.kt$AppModuleDI$( + SpacingAroundParens:IvyBilling.kt$IvyBilling$( + SpreadOperator:UiText.kt$UiText$(resId, *args) + StringTemplate:AccountModal.kt$${currencyName} + StringTemplate:AddRateModal.kt$${baseCurrency} + StringTemplate:AddRateModal.kt$${toCurrency} + StringTemplate:AmountFormatting.kt$${decimalPartString} + StringTemplate:AmountModal.kt$${decimalPartString} + StringTemplate:AmountModal.kt$${value} + StringTemplate:FileUtil.kt$${dirPath} + StringTemplate:GitHubBackupViewModel.kt$GitHubBackupViewModel$${owner} + StringTemplate:GitHubBackupViewModel.kt$GitHubBackupViewModel$${repo} + StringTemplate:ImportProcessing.kt$${progressPercent} + StringTemplate:ItemIcon.kt$${size} + StringTemplate:Migration117to118_Budgets.kt$Migration117to118_Budgets$${tableName} + StringTemplate:PaywallScreen.kt$${usedCount} + StringTemplate:PlansSheet.kt$${savePercentage} + StringTemplate:ReorderModal.kt$Adapter.ItemViewHolder$${position} + StringTemplate:SmartTitleSuggestionsLogic.kt$SmartTitleSuggestionsLogic$${it} + StringTemplate:SmartTitleSuggestionsLogic.kt$SmartTitleSuggestionsLogic$${title} + SwallowedException:BackupLogic.kt$BackupLogic$e: Exception + SwallowedException:CSVImporter.kt$CSVImporter$e: Exception + SwallowedException:CSVImporterV2.kt$CSVImporterV2$e: Exception + SwallowedException:CSVViewModel.kt$CSVViewModel$e: Exception + SwallowedException:CalculatorModal.kt$e: Exception + SwallowedException:ComposeExt.kt$e: Exception + SwallowedException:GsonTypeAdapters.kt$ErrorCodeTypeAdapter$e: Exception + SwallowedException:GsonTypeAdapters.kt$LocalDateTimeTypeAdapter$e: Exception + SwallowedException:IntervalPickerRow.kt$e: Exception + SwallowedException:ItemIcon.kt$e: Exception + SwallowedException:Ivy_lintPlugin.kt$Ivy_lintPlugin$e: java.lang.reflect.InvocationTargetException + SwallowedException:ParseFields.kt$e: Exception + SwallowedException:ParseStatus.kt$e: Exception + SwallowedException:Plan.kt$Plan$e: Exception + SwallowedException:RestClient.kt$RestClient.Companion$e: NoSessionException + SwallowedException:RootActivity.kt$RootActivity$e: ActivityNotFoundException + SwallowedException:RootViewModel.kt$RootViewModel$e: IllegalArgumentException + ThrowsCount:RestClient.kt$RestClient.Companion$private fun newRetrofit(gson: Gson, session: IvySession): Retrofit + TooGenericExceptionCaught:AccountSync.kt$AccountSync$e: Exception + TooGenericExceptionCaught:AccountUploader.kt$AccountUploader$e: Exception + TooGenericExceptionCaught:AmountModal.kt$e: Exception + TooGenericExceptionCaught:AnalyticsReportViewModel.kt$AnalyticsReportViewModel$e: Exception + TooGenericExceptionCaught:BackupLogic.kt$BackupLogic$e: Exception + TooGenericExceptionCaught:Budget.kt$Budget$e: Exception + TooGenericExceptionCaught:BudgetCreator.kt$BudgetCreator$e: Exception + TooGenericExceptionCaught:BudgetDTO.kt$BudgetDTO$e: Exception + TooGenericExceptionCaught:BudgetEntity.kt$BudgetEntity$e: Exception + TooGenericExceptionCaught:BudgetSync.kt$BudgetSync$e: Exception + TooGenericExceptionCaught:BudgetUploader.kt$BudgetUploader$e: Exception + TooGenericExceptionCaught:CSVImporter.kt$CSVImporter$e: Exception + TooGenericExceptionCaught:CSVImporterV2.kt$CSVImporterV2$e: Exception + TooGenericExceptionCaught:CSVViewModel.kt$CSVViewModel$e: Exception + TooGenericExceptionCaught:CalculatorModal.kt$e: Exception + TooGenericExceptionCaught:CategoryCreator.kt$CategoryCreator$e: Exception + TooGenericExceptionCaught:CategorySync.kt$CategorySync$e: Exception + TooGenericExceptionCaught:CategoryUploader.kt$CategoryUploader$e: Exception + TooGenericExceptionCaught:ComposeExt.kt$e: Exception + TooGenericExceptionCaught:EditPlannedViewModel.kt$EditPlannedViewModel$e: Exception + TooGenericExceptionCaught:EditTransactionViewModel.kt$EditTransactionViewModel$e: Exception + TooGenericExceptionCaught:ExportCSVLogic.kt$ExportCSVLogic$e: Exception + TooGenericExceptionCaught:GitHubClient.kt$GitHubClient$e: Exception + TooGenericExceptionCaught:GsonTypeAdapters.kt$ErrorCodeTypeAdapter$e: Exception + TooGenericExceptionCaught:GsonTypeAdapters.kt$LocalDateTimeTypeAdapter$e: Exception + TooGenericExceptionCaught:ImportViewModel.kt$ImportViewModel$e: Exception + TooGenericExceptionCaught:IntervalPickerRow.kt$e: Exception + TooGenericExceptionCaught:ItemIcon.kt$e: Exception + TooGenericExceptionCaught:IvyAnalytics.kt$IvyAnalytics$e: Exception + TooGenericExceptionCaught:IvyBilling.kt$IvyBilling$e: Exception + TooGenericExceptionCaught:IvyCurrency.kt$IvyCurrency.Companion$e: Exception + TooGenericExceptionCaught:Keyboard.kt$e: Exception + TooGenericExceptionCaught:LoanCreator.kt$LoanCreator$e: Exception + TooGenericExceptionCaught:LoanRecordCreator.kt$LoanRecordCreator$e: Exception + TooGenericExceptionCaught:LoanRecordSync.kt$LoanRecordSync$e: Exception + TooGenericExceptionCaught:LoanRecordUploader.kt$LoanRecordUploader$e: Exception + TooGenericExceptionCaught:LoanSync.kt$LoanSync$e: Exception + TooGenericExceptionCaught:LoanUploader.kt$LoanUploader$e: Exception + TooGenericExceptionCaught:MigrationsManager.kt$MigrationsManager$e: Exception + TooGenericExceptionCaught:NotificationService.kt$NotificationService$e: Exception + TooGenericExceptionCaught:OnboardingViewModel.kt$OnboardingViewModel$e: Exception + TooGenericExceptionCaught:ParseFields.kt$e: Exception + TooGenericExceptionCaught:ParseStatus.kt$e: Exception + TooGenericExceptionCaught:Plan.kt$Plan$e: Exception + TooGenericExceptionCaught:PlannedPaymentRuleUploader.kt$PlannedPaymentRuleUploader$e: Exception + TooGenericExceptionCaught:PlannedPaymentSync.kt$PlannedPaymentSync$e: Exception + TooGenericExceptionCaught:RestClient.kt$RestClient.Companion$exception: Exception + TooGenericExceptionCaught:RootActivity.kt$RootActivity$e: Exception + TooGenericExceptionCaught:SettingsViewModel.kt$SettingsViewModel$e: Exception + TooGenericExceptionCaught:SyncExchangeRatesAct.kt$SyncExchangeRatesAct$e: Exception + TooGenericExceptionCaught:TransactionSync.kt$TransactionSync$e: Exception + TooGenericExceptionCaught:TransactionUploader.kt$TransactionUploader$e: Exception + TooGenericExceptionCaught:UIExt.kt$e: Exception + TooManyFunctions:AmountFormatting.kt$com.ivy.wallet.utils.AmountFormatting.kt + TooManyFunctions:AppModuleDI.kt$AppModuleDI + TooManyFunctions:BackupLogic.kt$BackupLogic + TooManyFunctions:BudgetBattery.kt$com.ivy.wallet.ui.theme.components.BudgetBattery.kt + TooManyFunctions:CSVImporter.kt$CSVImporter + TooManyFunctions:CSVMapper.kt$CSVMapper + TooManyFunctions:CSVScreen.kt$com.ivy.wallet.ui.csv.CSVScreen.kt + TooManyFunctions:CSVViewModel.kt$CSVViewModel : ViewModel + TooManyFunctions:ChartsViewModel.kt$ChartsViewModel : ViewModel + TooManyFunctions:Colors.kt$com.ivy.design.l0_system.Colors.kt + TooManyFunctions:ComposeExt.kt$com.ivy.wallet.utils.ComposeExt.kt + TooManyFunctions:CustomerJourneyLogic.kt$CustomerJourneyLogic$Companion + TooManyFunctions:CustomerJourneyLogic.kt$com.ivy.wallet.domain.deprecated.logic.CustomerJourneyLogic.kt + TooManyFunctions:DateExt.kt$com.ivy.wallet.utils.DateExt.kt + TooManyFunctions:EditBottomSheet.kt$com.ivy.wallet.ui.edit.core.EditBottomSheet.kt + TooManyFunctions:EditPlannedViewModel.kt$EditPlannedViewModel : ViewModel + TooManyFunctions:EditTransactionViewModel.kt$EditTransactionViewModel : ViewModel + TooManyFunctions:FilterOverlay.kt$com.ivy.wallet.ui.reports.FilterOverlay.kt + TooManyFunctions:HomeViewModel.kt$HomeViewModel : FRPViewModel + TooManyFunctions:ItemIcon.kt$com.ivy.wallet.ui.theme.components.ItemIcon.kt + TooManyFunctions:ItemStatisticViewModel.kt$ItemStatisticViewModel : ViewModel + TooManyFunctions:IvyColors.kt$com.ivy.wallet.ui.theme.IvyColors.kt + TooManyFunctions:IvyLineChart.kt$com.ivy.wallet.ui.theme.components.charts.linechart.IvyLineChart.kt + TooManyFunctions:IvyModalComponents.kt$com.ivy.wallet.ui.theme.modal.IvyModalComponents.kt + TooManyFunctions:IvyRoomDatabase.kt$IvyRoomDatabase : RoomDatabase + TooManyFunctions:LoanTransactionsCore.kt$LoanTransactionsCore + TooManyFunctions:OnboardingRouter.kt$OnboardingRouter + TooManyFunctions:OnboardingViewModel.kt$OnboardingViewModel : ViewModel + TooManyFunctions:ParseFields.kt$com.ivy.wallet.ui.csv.domain.ParseFields.kt + TooManyFunctions:PieChartStatisticViewModel.kt$PieChartStatisticViewModel : FRPViewModel + TooManyFunctions:PlannedPaymentRuleDao.kt$PlannedPaymentRuleDao + TooManyFunctions:PlannedPaymentsLogic.kt$PlannedPaymentsLogic + TooManyFunctions:ReportViewModel.kt$ReportViewModel : FRPViewModel + TooManyFunctions:RoomTypeConverters.kt$RoomTypeConverters + TooManyFunctions:RootActivity.kt$RootActivity : AppCompatActivity + TooManyFunctions:RootViewModel.kt$RootViewModel : ViewModel + TooManyFunctions:SettingsScreen.kt$com.ivy.wallet.ui.settings.SettingsScreen.kt + TooManyFunctions:SettingsViewModel.kt$SettingsViewModel : ViewModel + TooManyFunctions:SharedPrefs.kt$SharedPrefs + TooManyFunctions:TransactionCard.kt$com.ivy.wallet.ui.component.transaction.TransactionCard.kt + TooManyFunctions:TransactionDao.kt$TransactionDao + TooManyFunctions:UIExt.kt$com.ivy.wallet.utils.UIExt.kt + TooManyFunctions:UtilExt.kt$com.ivy.wallet.utils.UtilExt.kt + TooManyFunctions:WalletAccountLogic.kt$WalletAccountLogic + TooManyFunctions:WalletCategoryLogic.kt$WalletCategoryLogic + TopLevelPropertyNaming:Accessors32ikgp1isdd8mwexzgbe6rirl.kt$/** * Retrieves the [ext][org.gradle.api.plugins.ExtraPropertiesExtension] extension. */ internal val io.gitlab.arturbosch.detekt.extensions.DetektExtension.`ext`: org.gradle.api.plugins.ExtraPropertiesExtension get() = (this as org.gradle.api.plugins.ExtensionAware).extensions.getByName("ext") as org.gradle.api.plugins.ExtraPropertiesExtension + TopLevelPropertyNaming:Accessors46nwrg1rs44ofdqpi7vyy3pfc.kt$/** * Retrieves the [ext][org.gradle.api.plugins.ExtraPropertiesExtension] extension. */ internal val org.gradle.api.artifacts.dsl.RepositoryHandler.`ext`: org.gradle.api.plugins.ExtraPropertiesExtension get() = (this as org.gradle.api.plugins.ExtensionAware).extensions.getByName("ext") as org.gradle.api.plugins.ExtraPropertiesExtension + TopLevelPropertyNaming:Accessors4ymijgaek646mzru18sdmblu7.kt$/** * Retrieves the [detekt][io.gitlab.arturbosch.detekt.extensions.DetektExtension] extension. */ internal val org.gradle.api.Project.`detekt`: io.gitlab.arturbosch.detekt.extensions.DetektExtension get() = (this as org.gradle.api.plugins.ExtensionAware).extensions.getByName("detekt") as io.gitlab.arturbosch.detekt.extensions.DetektExtension + TopLevelPropertyNaming:Accessors5x03zd2mf47s5vj1qv3jvhdru.kt$/** * Provides the existing [detekt][io.gitlab.arturbosch.detekt.Detekt] task. */ internal val TaskContainer.`detekt`: TaskProvider<io.gitlab.arturbosch.detekt.Detekt> get() = named<io.gitlab.arturbosch.detekt.Detekt>("detekt") + TopLevelPropertyNaming:Accessors6m89nhcqblthog8es93pjkmhg.kt$/** * Provides the existing [detektPlugins][org.gradle.api.artifacts.Configuration] element. */ internal val org.gradle.api.NamedDomainObjectContainer<org.gradle.api.artifacts.Configuration>.`detektPlugins`: NamedDomainObjectProvider<org.gradle.api.artifacts.Configuration> get() = named<org.gradle.api.artifacts.Configuration>("detektPlugins") + TopLevelPropertyNaming:Accessors72k7tti784t7idmqtg2upvaru.kt$/** * Provides the existing [detekt][org.gradle.api.artifacts.Configuration] element. */ internal val org.gradle.api.NamedDomainObjectContainer<org.gradle.api.artifacts.Configuration>.`detekt`: NamedDomainObjectProvider<org.gradle.api.artifacts.Configuration> get() = named<org.gradle.api.artifacts.Configuration>("detekt") + TopLevelPropertyNaming:Accessors7hvycqvau4uyj5knata7lx0yx.kt$/** * Provides the existing [detektGenerateConfig][io.gitlab.arturbosch.detekt.DetektGenerateConfigTask] task. */ internal val TaskContainer.`detektGenerateConfig`: TaskProvider<io.gitlab.arturbosch.detekt.DetektGenerateConfigTask> get() = named<io.gitlab.arturbosch.detekt.DetektGenerateConfigTask>("detektGenerateConfig") + TopLevelPropertyNaming:Accessors8lcri9ibgd9oj8dt3t8z8nvfx.kt$/** * Retrieves the [ext][org.gradle.api.plugins.ExtraPropertiesExtension] extension. */ internal val org.gradle.api.artifacts.dsl.DependencyHandler.`ext`: org.gradle.api.plugins.ExtraPropertiesExtension get() = (this as org.gradle.api.plugins.ExtensionAware).extensions.getByName("ext") as org.gradle.api.plugins.ExtraPropertiesExtension + TopLevelPropertyNaming:Accessorsa5ptgikd9fb816fav4742zvaq.kt$/** * Provides the existing [detektBaseline][io.gitlab.arturbosch.detekt.DetektCreateBaselineTask] task. */ internal val TaskContainer.`detektBaseline`: TaskProvider<io.gitlab.arturbosch.detekt.DetektCreateBaselineTask> get() = named<io.gitlab.arturbosch.detekt.DetektCreateBaselineTask>("detektBaseline") + TopLevelPropertyNaming:Accessorsblypoh2ruc9u3bx9djsfqsntg.kt$/** * Retrieves the [ext][org.gradle.api.plugins.ExtraPropertiesExtension] extension. */ internal val org.gradle.api.Project.`ext`: org.gradle.api.plugins.ExtraPropertiesExtension get() = (this as org.gradle.api.plugins.ExtensionAware).extensions.getByName("ext") as org.gradle.api.plugins.ExtraPropertiesExtension + TopLevelPropertyNaming:Accessorsbtc8iwv8u9b0f38ikfmodj8ns.kt$/** * Retrieves the [reporting][org.gradle.api.reporting.ReportingExtension] extension. */ internal val org.gradle.api.Project.`reporting`: org.gradle.api.reporting.ReportingExtension get() = (this as org.gradle.api.plugins.ExtensionAware).extensions.getByName("reporting") as org.gradle.api.reporting.ReportingExtension + TopLevelPropertyNaming:Accessorseessl0al0otcsbyqqruvoncpd.kt$/** * Retrieves the [ext][org.gradle.api.plugins.ExtraPropertiesExtension] extension. */ internal val org.gradle.api.reporting.ReportingExtension.`ext`: org.gradle.api.plugins.ExtraPropertiesExtension get() = (this as org.gradle.api.plugins.ExtensionAware).extensions.getByName("ext") as org.gradle.api.plugins.ExtraPropertiesExtension + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * Plugin ids starting with `com.android.internal.kotlin.multiplatform`. */ internal val `ComAndroidInternalKotlinPluginGroup`.`multiplatform`: `ComAndroidInternalKotlinMultiplatformPluginGroup` get() = `ComAndroidInternalKotlinMultiplatformPluginGroup`(plugins) + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * Plugin ids starting with `com.android.internal.kotlin`. */ internal val `ComAndroidInternalPluginGroup`.`kotlin`: `ComAndroidInternalKotlinPluginGroup` get() = `ComAndroidInternalKotlinPluginGroup`(plugins) + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * Plugin ids starting with `com.android.internal`. */ internal val `ComAndroidPluginGroup`.`internal`: `ComAndroidInternalPluginGroup` get() = `ComAndroidInternalPluginGroup`(plugins) + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * Plugin ids starting with `com.android.kotlin.multiplatform`. */ internal val `ComAndroidKotlinPluginGroup`.`multiplatform`: `ComAndroidKotlinMultiplatformPluginGroup` get() = `ComAndroidKotlinMultiplatformPluginGroup`(plugins) + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * Plugin ids starting with `com.android.kotlin`. */ internal val `ComAndroidPluginGroup`.`kotlin`: `ComAndroidKotlinPluginGroup` get() = `ComAndroidKotlinPluginGroup`(plugins) + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * Plugin ids starting with `com.android`. */ internal val `ComPluginGroup`.`android`: `ComAndroidPluginGroup` get() = `ComAndroidPluginGroup`(plugins) + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * Plugin ids starting with `com.google.dagger.hilt`. */ internal val `ComGoogleDaggerPluginGroup`.`hilt`: `ComGoogleDaggerHiltPluginGroup` get() = `ComGoogleDaggerHiltPluginGroup`(plugins) + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * Plugin ids starting with `com.google.dagger`. */ internal val `ComGooglePluginGroup`.`dagger`: `ComGoogleDaggerPluginGroup` get() = `ComGoogleDaggerPluginGroup`(plugins) + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * Plugin ids starting with `com.google.firebase`. */ internal val `ComGooglePluginGroup`.`firebase`: `ComGoogleFirebasePluginGroup` get() = `ComGoogleFirebasePluginGroup`(plugins) + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * Plugin ids starting with `com.google.gms`. */ internal val `ComGooglePluginGroup`.`gms`: `ComGoogleGmsPluginGroup` get() = `ComGoogleGmsPluginGroup`(plugins) + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * Plugin ids starting with `com.google`. */ internal val `ComPluginGroup`.`google`: `ComGooglePluginGroup` get() = `ComGooglePluginGroup`(plugins) + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * Plugin ids starting with `com`. */ internal val `PluginDependenciesSpec`.`com`: `ComPluginGroup` get() = `ComPluginGroup`(this) + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * Plugin ids starting with `dagger.hilt.android`. */ internal val `DaggerHiltPluginGroup`.`android`: `DaggerHiltAndroidPluginGroup` get() = `DaggerHiltAndroidPluginGroup`(plugins) + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * Plugin ids starting with `dagger.hilt`. */ internal val `DaggerPluginGroup`.`hilt`: `DaggerHiltPluginGroup` get() = `DaggerHiltPluginGroup`(plugins) + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * Plugin ids starting with `dagger`. */ internal val `PluginDependenciesSpec`.`dagger`: `DaggerPluginGroup` get() = `DaggerPluginGroup`(this) + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * Plugin ids starting with `io.github.detekt.gradle`. */ internal val `IoGithubDetektPluginGroup`.`gradle`: `IoGithubDetektGradlePluginGroup` get() = `IoGithubDetektGradlePluginGroup`(plugins) + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * Plugin ids starting with `io.github.detekt`. */ internal val `IoGithubPluginGroup`.`detekt`: `IoGithubDetektPluginGroup` get() = `IoGithubDetektPluginGroup`(plugins) + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * Plugin ids starting with `io.github`. */ internal val `IoPluginGroup`.`github`: `IoGithubPluginGroup` get() = `IoGithubPluginGroup`(plugins) + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * Plugin ids starting with `io.gitlab.arturbosch`. */ internal val `IoGitlabPluginGroup`.`arturbosch`: `IoGitlabArturboschPluginGroup` get() = `IoGitlabArturboschPluginGroup`(plugins) + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * Plugin ids starting with `io.gitlab`. */ internal val `IoPluginGroup`.`gitlab`: `IoGitlabPluginGroup` get() = `IoGitlabPluginGroup`(plugins) + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * Plugin ids starting with `io`. */ internal val `PluginDependenciesSpec`.`io`: `IoPluginGroup` get() = `IoPluginGroup`(this) + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * Plugin ids starting with `org.gradle`. */ internal val `OrgPluginGroup`.`gradle`: `OrgGradlePluginGroup` get() = `OrgGradlePluginGroup`(plugins) + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * Plugin ids starting with `org.jetbrains.kotlin.native`. */ internal val `OrgJetbrainsKotlinPluginGroup`.`native`: `OrgJetbrainsKotlinNativePluginGroup` get() = `OrgJetbrainsKotlinNativePluginGroup`(plugins) + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * Plugin ids starting with `org.jetbrains.kotlin.platform`. */ internal val `OrgJetbrainsKotlinPluginGroup`.`platform`: `OrgJetbrainsKotlinPlatformPluginGroup` get() = `OrgJetbrainsKotlinPlatformPluginGroup`(plugins) + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * Plugin ids starting with `org.jetbrains.kotlin.plugin`. */ internal val `OrgJetbrainsKotlinPluginGroup`.`plugin`: `OrgJetbrainsKotlinPluginPluginGroup` get() = `OrgJetbrainsKotlinPluginPluginGroup`(plugins) + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * Plugin ids starting with `org.jetbrains.kotlin`. */ internal val `OrgJetbrainsPluginGroup`.`kotlin`: `OrgJetbrainsKotlinPluginGroup` get() = `OrgJetbrainsKotlinPluginGroup`(plugins) + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * Plugin ids starting with `org.jetbrains`. */ internal val `OrgPluginGroup`.`jetbrains`: `OrgJetbrainsPluginGroup` get() = `OrgJetbrainsPluginGroup`(plugins) + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * Plugin ids starting with `org`. */ internal val `PluginDependenciesSpec`.`org`: `OrgPluginGroup` get() = `OrgPluginGroup`(this) + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `android-library` plugin implemented by [com.android.build.gradle.LibraryPlugin]. */ internal val `PluginDependenciesSpec`.`android-library`: PluginDependencySpec get() = this.id("android-library") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `android-reporting` plugin implemented by [com.android.build.gradle.ReportingPlugin]. */ internal val `PluginDependenciesSpec`.`android-reporting`: PluginDependencySpec get() = this.id("android-reporting") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `android` plugin implemented by [com.android.build.gradle.AppPlugin]. */ internal val `PluginDependenciesSpec`.`android`: PluginDependencySpec get() = this.id("android") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `com.android.application` plugin implemented by [com.android.build.gradle.AppPlugin]. */ internal val `ComAndroidPluginGroup`.`application`: PluginDependencySpec get() = plugins.id("com.android.application") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `com.android.asset-pack-bundle` plugin implemented by [com.android.build.gradle.AssetPackBundlePlugin]. */ internal val `ComAndroidPluginGroup`.`asset-pack-bundle`: PluginDependencySpec get() = plugins.id("com.android.asset-pack-bundle") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `com.android.asset-pack` plugin implemented by [com.android.build.gradle.AssetPackPlugin]. */ internal val `ComAndroidPluginGroup`.`asset-pack`: PluginDependencySpec get() = plugins.id("com.android.asset-pack") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `com.android.base` plugin implemented by [com.android.build.gradle.api.AndroidBasePlugin]. */ internal val `ComAndroidPluginGroup`.`base`: PluginDependencySpec get() = plugins.id("com.android.base") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `com.android.dynamic-feature` plugin implemented by [com.android.build.gradle.DynamicFeaturePlugin]. */ internal val `ComAndroidPluginGroup`.`dynamic-feature`: PluginDependencySpec get() = plugins.id("com.android.dynamic-feature") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `com.android.fused-library` plugin implemented by [com.android.build.gradle.api.FusedLibraryPlugin]. */ internal val `ComAndroidPluginGroup`.`fused-library`: PluginDependencySpec get() = plugins.id("com.android.fused-library") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `com.android.internal.application` plugin implemented by [com.android.build.gradle.internal.plugins.AppPlugin]. */ internal val `ComAndroidInternalPluginGroup`.`application`: PluginDependencySpec get() = plugins.id("com.android.internal.application") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `com.android.internal.asset-pack-bundle` plugin implemented by [com.android.build.gradle.internal.plugins.AssetPackBundlePlugin]. */ internal val `ComAndroidInternalPluginGroup`.`asset-pack-bundle`: PluginDependencySpec get() = plugins.id("com.android.internal.asset-pack-bundle") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `com.android.internal.asset-pack` plugin implemented by [com.android.build.gradle.internal.plugins.AssetPackPlugin]. */ internal val `ComAndroidInternalPluginGroup`.`asset-pack`: PluginDependencySpec get() = plugins.id("com.android.internal.asset-pack") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `com.android.internal.dynamic-feature` plugin implemented by [com.android.build.gradle.internal.plugins.DynamicFeaturePlugin]. */ internal val `ComAndroidInternalPluginGroup`.`dynamic-feature`: PluginDependencySpec get() = plugins.id("com.android.internal.dynamic-feature") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `com.android.internal.fused-library` plugin implemented by [com.android.build.gradle.internal.plugins.FusedLibraryPlugin]. */ internal val `ComAndroidInternalPluginGroup`.`fused-library`: PluginDependencySpec get() = plugins.id("com.android.internal.fused-library") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `com.android.internal.kotlin.multiplatform.library` plugin implemented by [com.android.build.gradle.internal.plugins.KotlinMultiplatformAndroidPlugin]. */ internal val `ComAndroidInternalKotlinMultiplatformPluginGroup`.`library`: PluginDependencySpec get() = plugins.id("com.android.internal.kotlin.multiplatform.library") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `com.android.internal.library` plugin implemented by [com.android.build.gradle.internal.plugins.LibraryPlugin]. */ internal val `ComAndroidInternalPluginGroup`.`library`: PluginDependencySpec get() = plugins.id("com.android.internal.library") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `com.android.internal.lint` plugin implemented by [com.android.build.gradle.internal.plugins.LintPlugin]. */ internal val `ComAndroidInternalPluginGroup`.`lint`: PluginDependencySpec get() = plugins.id("com.android.internal.lint") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `com.android.internal.privacy-sandbox-sdk` plugin implemented by [com.android.build.gradle.internal.plugins.PrivacySandboxSdkPlugin]. */ internal val `ComAndroidInternalPluginGroup`.`privacy-sandbox-sdk`: PluginDependencySpec get() = plugins.id("com.android.internal.privacy-sandbox-sdk") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `com.android.internal.reporting` plugin implemented by [com.android.build.gradle.internal.plugins.ReportingPlugin]. */ internal val `ComAndroidInternalPluginGroup`.`reporting`: PluginDependencySpec get() = plugins.id("com.android.internal.reporting") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `com.android.internal.test` plugin implemented by [com.android.build.gradle.internal.plugins.TestPlugin]. */ internal val `ComAndroidInternalPluginGroup`.`test`: PluginDependencySpec get() = plugins.id("com.android.internal.test") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `com.android.internal.version-check` plugin implemented by [com.android.build.gradle.internal.plugins.VersionCheckPlugin]. */ internal val `ComAndroidInternalPluginGroup`.`version-check`: PluginDependencySpec get() = plugins.id("com.android.internal.version-check") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `com.android.kotlin.multiplatform.library` plugin implemented by [com.android.build.gradle.api.KotlinMultiplatformAndroidPlugin]. */ internal val `ComAndroidKotlinMultiplatformPluginGroup`.`library`: PluginDependencySpec get() = plugins.id("com.android.kotlin.multiplatform.library") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `com.android.library` plugin implemented by [com.android.build.gradle.LibraryPlugin]. */ internal val `ComAndroidPluginGroup`.`library`: PluginDependencySpec get() = plugins.id("com.android.library") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `com.android.lint` plugin implemented by [com.android.build.gradle.LintPlugin]. */ internal val `ComAndroidPluginGroup`.`lint`: PluginDependencySpec get() = plugins.id("com.android.lint") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `com.android.privacy-sandbox-sdk` plugin implemented by [com.android.build.gradle.api.PrivacySandboxSdkPlugin]. */ internal val `ComAndroidPluginGroup`.`privacy-sandbox-sdk`: PluginDependencySpec get() = plugins.id("com.android.privacy-sandbox-sdk") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `com.android.reporting` plugin implemented by [com.android.build.gradle.ReportingPlugin]. */ internal val `ComAndroidPluginGroup`.`reporting`: PluginDependencySpec get() = plugins.id("com.android.reporting") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `com.android.test` plugin implemented by [com.android.build.gradle.TestPlugin]. */ internal val `ComAndroidPluginGroup`.`test`: PluginDependencySpec get() = plugins.id("com.android.test") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `com.google.dagger.hilt.android` plugin implemented by [dagger.hilt.android.plugin.HiltGradlePlugin]. */ internal val `ComGoogleDaggerHiltPluginGroup`.`android`: PluginDependencySpec get() = plugins.id("com.google.dagger.hilt.android") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `com.google.firebase.crashlytics` plugin implemented by [com.google.firebase.crashlytics.gradle.CrashlyticsPlugin]. */ internal val `ComGoogleFirebasePluginGroup`.`crashlytics`: PluginDependencySpec get() = plugins.id("com.google.firebase.crashlytics") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `com.google.gms.google-services` plugin implemented by [com.google.gms.googleservices.GoogleServicesPlugin]. */ internal val `ComGoogleGmsPluginGroup`.`google-services`: PluginDependencySpec get() = plugins.id("com.google.gms.google-services") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `dagger.hilt.android.plugin` plugin implemented by [dagger.hilt.android.plugin.HiltGradlePlugin]. */ internal val `DaggerHiltAndroidPluginGroup`.`plugin`: PluginDependencySpec get() = plugins.id("dagger.hilt.android.plugin") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `io.github.detekt.gradle.compiler-plugin` plugin implemented by [io.github.detekt.gradle.DetektKotlinCompilerPlugin]. */ internal val `IoGithubDetektGradlePluginGroup`.`compiler-plugin`: PluginDependencySpec get() = plugins.id("io.github.detekt.gradle.compiler-plugin") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `io.gitlab.arturbosch.detekt` plugin implemented by [io.gitlab.arturbosch.detekt.DetektPlugin]. */ internal val `IoGitlabArturboschPluginGroup`.`detekt`: PluginDependencySpec get() = plugins.id("io.gitlab.arturbosch.detekt") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `kotlin-android-extensions` plugin implemented by [org.jetbrains.kotlin.gradle.internal.AndroidExtensionsSubpluginIndicator]. */ internal val `PluginDependenciesSpec`.`kotlin-android-extensions`: PluginDependencySpec get() = this.id("kotlin-android-extensions") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `kotlin-android` plugin implemented by [org.jetbrains.kotlin.gradle.plugin.KotlinAndroidPluginWrapper]. */ internal val `PluginDependenciesSpec`.`kotlin-android`: PluginDependencySpec get() = this.id("kotlin-android") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `kotlin-kapt` plugin implemented by [org.jetbrains.kotlin.gradle.internal.Kapt3GradleSubplugin]. */ internal val `PluginDependenciesSpec`.`kotlin-kapt`: PluginDependencySpec get() = this.id("kotlin-kapt") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `kotlin-multiplatform` plugin implemented by [org.jetbrains.kotlin.gradle.plugin.KotlinMultiplatformPluginWrapper]. */ internal val `PluginDependenciesSpec`.`kotlin-multiplatform`: PluginDependencySpec get() = this.id("kotlin-multiplatform") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `kotlin-native-cocoapods` plugin implemented by [org.jetbrains.kotlin.gradle.plugin.cocoapods.KotlinCocoapodsPlugin]. */ internal val `PluginDependenciesSpec`.`kotlin-native-cocoapods`: PluginDependencySpec get() = this.id("kotlin-native-cocoapods") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `kotlin-native-performance` plugin implemented by [org.jetbrains.kotlin.gradle.plugin.performance.KotlinPerformancePlugin]. */ internal val `PluginDependenciesSpec`.`kotlin-native-performance`: PluginDependencySpec get() = this.id("kotlin-native-performance") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `kotlin-parcelize` plugin implemented by [org.jetbrains.kotlin.gradle.internal.ParcelizeSubplugin]. */ internal val `PluginDependenciesSpec`.`kotlin-parcelize`: PluginDependencySpec get() = this.id("kotlin-parcelize") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `kotlin-platform-android` plugin implemented by [org.jetbrains.kotlin.gradle.plugin.KotlinPlatformAndroidPlugin]. */ internal val `PluginDependenciesSpec`.`kotlin-platform-android`: PluginDependencySpec get() = this.id("kotlin-platform-android") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `kotlin-platform-common` plugin implemented by [org.jetbrains.kotlin.gradle.plugin.KotlinPlatformCommonPlugin]. */ internal val `PluginDependenciesSpec`.`kotlin-platform-common`: PluginDependencySpec get() = this.id("kotlin-platform-common") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `kotlin-platform-js` plugin implemented by [org.jetbrains.kotlin.gradle.plugin.KotlinPlatformJsPlugin]. */ internal val `PluginDependenciesSpec`.`kotlin-platform-js`: PluginDependencySpec get() = this.id("kotlin-platform-js") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `kotlin-platform-jvm` plugin implemented by [org.jetbrains.kotlin.gradle.plugin.KotlinPlatformJvmPlugin]. */ internal val `PluginDependenciesSpec`.`kotlin-platform-jvm`: PluginDependencySpec get() = this.id("kotlin-platform-jvm") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `kotlin-scripting` plugin implemented by [org.jetbrains.kotlin.gradle.scripting.internal.ScriptingGradleSubplugin]. */ internal val `PluginDependenciesSpec`.`kotlin-scripting`: PluginDependencySpec get() = this.id("kotlin-scripting") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `kotlin` plugin implemented by [org.jetbrains.kotlin.gradle.plugin.KotlinPluginWrapper]. */ internal val `PluginDependenciesSpec`.`kotlin`: PluginDependencySpec get() = this.id("kotlin") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.antlr` plugin implemented by [org.gradle.api.plugins.antlr.AntlrPlugin]. */ internal val `OrgGradlePluginGroup`.`antlr`: PluginDependencySpec get() = plugins.id("org.gradle.antlr") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.application` plugin implemented by [org.gradle.api.plugins.ApplicationPlugin]. */ internal val `OrgGradlePluginGroup`.`application`: PluginDependencySpec get() = plugins.id("org.gradle.application") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.assembler-lang` plugin implemented by [org.gradle.language.assembler.plugins.AssemblerLangPlugin]. */ internal val `OrgGradlePluginGroup`.`assembler-lang`: PluginDependencySpec get() = plugins.id("org.gradle.assembler-lang") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.assembler` plugin implemented by [org.gradle.language.assembler.plugins.AssemblerPlugin]. */ internal val `OrgGradlePluginGroup`.`assembler`: PluginDependencySpec get() = plugins.id("org.gradle.assembler") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.base` plugin implemented by [org.gradle.api.plugins.BasePlugin]. */ internal val `OrgGradlePluginGroup`.`base`: PluginDependencySpec get() = plugins.id("org.gradle.base") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.binary-base` plugin implemented by [org.gradle.platform.base.plugins.BinaryBasePlugin]. */ internal val `OrgGradlePluginGroup`.`binary-base`: PluginDependencySpec get() = plugins.id("org.gradle.binary-base") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.build-dashboard` plugin implemented by [org.gradle.api.reporting.plugins.BuildDashboardPlugin]. */ internal val `OrgGradlePluginGroup`.`build-dashboard`: PluginDependencySpec get() = plugins.id("org.gradle.build-dashboard") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.build-init` plugin implemented by [org.gradle.buildinit.plugins.BuildInitPlugin]. */ internal val `OrgGradlePluginGroup`.`build-init`: PluginDependencySpec get() = plugins.id("org.gradle.build-init") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.c-lang` plugin implemented by [org.gradle.language.c.plugins.CLangPlugin]. */ internal val `OrgGradlePluginGroup`.`c-lang`: PluginDependencySpec get() = plugins.id("org.gradle.c-lang") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.c` plugin implemented by [org.gradle.language.c.plugins.CPlugin]. */ internal val `OrgGradlePluginGroup`.`c`: PluginDependencySpec get() = plugins.id("org.gradle.c") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.checkstyle` plugin implemented by [org.gradle.api.plugins.quality.CheckstylePlugin]. */ internal val `OrgGradlePluginGroup`.`checkstyle`: PluginDependencySpec get() = plugins.id("org.gradle.checkstyle") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.clang-compiler` plugin implemented by [org.gradle.nativeplatform.toolchain.plugins.ClangCompilerPlugin]. */ internal val `OrgGradlePluginGroup`.`clang-compiler`: PluginDependencySpec get() = plugins.id("org.gradle.clang-compiler") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.codenarc` plugin implemented by [org.gradle.api.plugins.quality.CodeNarcPlugin]. */ internal val `OrgGradlePluginGroup`.`codenarc`: PluginDependencySpec get() = plugins.id("org.gradle.codenarc") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.component-base` plugin implemented by [org.gradle.platform.base.plugins.ComponentBasePlugin]. */ internal val `OrgGradlePluginGroup`.`component-base`: PluginDependencySpec get() = plugins.id("org.gradle.component-base") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.component-model-base` plugin implemented by [org.gradle.language.base.plugins.ComponentModelBasePlugin]. */ internal val `OrgGradlePluginGroup`.`component-model-base`: PluginDependencySpec get() = plugins.id("org.gradle.component-model-base") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.cpp-application` plugin implemented by [org.gradle.language.cpp.plugins.CppApplicationPlugin]. */ internal val `OrgGradlePluginGroup`.`cpp-application`: PluginDependencySpec get() = plugins.id("org.gradle.cpp-application") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.cpp-lang` plugin implemented by [org.gradle.language.cpp.plugins.CppLangPlugin]. */ internal val `OrgGradlePluginGroup`.`cpp-lang`: PluginDependencySpec get() = plugins.id("org.gradle.cpp-lang") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.cpp-library` plugin implemented by [org.gradle.language.cpp.plugins.CppLibraryPlugin]. */ internal val `OrgGradlePluginGroup`.`cpp-library`: PluginDependencySpec get() = plugins.id("org.gradle.cpp-library") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.cpp-unit-test` plugin implemented by [org.gradle.nativeplatform.test.cpp.plugins.CppUnitTestPlugin]. */ internal val `OrgGradlePluginGroup`.`cpp-unit-test`: PluginDependencySpec get() = plugins.id("org.gradle.cpp-unit-test") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.cpp` plugin implemented by [org.gradle.language.cpp.plugins.CppPlugin]. */ internal val `OrgGradlePluginGroup`.`cpp`: PluginDependencySpec get() = plugins.id("org.gradle.cpp") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.cunit-test-suite` plugin implemented by [org.gradle.nativeplatform.test.cunit.plugins.CUnitPlugin]. */ internal val `OrgGradlePluginGroup`.`cunit-test-suite`: PluginDependencySpec get() = plugins.id("org.gradle.cunit-test-suite") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.cunit` plugin implemented by [org.gradle.nativeplatform.test.cunit.plugins.CUnitConventionPlugin]. */ internal val `OrgGradlePluginGroup`.`cunit`: PluginDependencySpec get() = plugins.id("org.gradle.cunit") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.distribution` plugin implemented by [org.gradle.api.distribution.plugins.DistributionPlugin]. */ internal val `OrgGradlePluginGroup`.`distribution`: PluginDependencySpec get() = plugins.id("org.gradle.distribution") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.ear` plugin implemented by [org.gradle.plugins.ear.EarPlugin]. */ internal val `OrgGradlePluginGroup`.`ear`: PluginDependencySpec get() = plugins.id("org.gradle.ear") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.eclipse-wtp` plugin implemented by [org.gradle.plugins.ide.eclipse.EclipseWtpPlugin]. */ internal val `OrgGradlePluginGroup`.`eclipse-wtp`: PluginDependencySpec get() = plugins.id("org.gradle.eclipse-wtp") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.eclipse` plugin implemented by [org.gradle.plugins.ide.eclipse.EclipsePlugin]. */ internal val `OrgGradlePluginGroup`.`eclipse`: PluginDependencySpec get() = plugins.id("org.gradle.eclipse") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.gcc-compiler` plugin implemented by [org.gradle.nativeplatform.toolchain.plugins.GccCompilerPlugin]. */ internal val `OrgGradlePluginGroup`.`gcc-compiler`: PluginDependencySpec get() = plugins.id("org.gradle.gcc-compiler") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.google-test-test-suite` plugin implemented by [org.gradle.nativeplatform.test.googletest.plugins.GoogleTestPlugin]. */ internal val `OrgGradlePluginGroup`.`google-test-test-suite`: PluginDependencySpec get() = plugins.id("org.gradle.google-test-test-suite") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.google-test` plugin implemented by [org.gradle.nativeplatform.test.googletest.plugins.GoogleTestConventionPlugin]. */ internal val `OrgGradlePluginGroup`.`google-test`: PluginDependencySpec get() = plugins.id("org.gradle.google-test") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.groovy-base` plugin implemented by [org.gradle.api.plugins.GroovyBasePlugin]. */ internal val `OrgGradlePluginGroup`.`groovy-base`: PluginDependencySpec get() = plugins.id("org.gradle.groovy-base") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.groovy-gradle-plugin` plugin implemented by [org.gradle.plugin.devel.internal.precompiled.PrecompiledGroovyPluginsPlugin]. */ internal val `OrgGradlePluginGroup`.`groovy-gradle-plugin`: PluginDependencySpec get() = plugins.id("org.gradle.groovy-gradle-plugin") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.groovy` plugin implemented by [org.gradle.api.plugins.GroovyPlugin]. */ internal val `OrgGradlePluginGroup`.`groovy`: PluginDependencySpec get() = plugins.id("org.gradle.groovy") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.help-tasks` plugin implemented by [org.gradle.api.plugins.HelpTasksPlugin]. */ internal val `OrgGradlePluginGroup`.`help-tasks`: PluginDependencySpec get() = plugins.id("org.gradle.help-tasks") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.idea` plugin implemented by [org.gradle.plugins.ide.idea.IdeaPlugin]. */ internal val `OrgGradlePluginGroup`.`idea`: PluginDependencySpec get() = plugins.id("org.gradle.idea") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.ivy-publish` plugin implemented by [org.gradle.api.publish.ivy.plugins.IvyPublishPlugin]. */ internal val `OrgGradlePluginGroup`.`ivy-publish`: PluginDependencySpec get() = plugins.id("org.gradle.ivy-publish") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.jacoco-report-aggregation` plugin implemented by [org.gradle.testing.jacoco.plugins.JacocoReportAggregationPlugin]. */ internal val `OrgGradlePluginGroup`.`jacoco-report-aggregation`: PluginDependencySpec get() = plugins.id("org.gradle.jacoco-report-aggregation") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.jacoco` plugin implemented by [org.gradle.testing.jacoco.plugins.JacocoPlugin]. */ internal val `OrgGradlePluginGroup`.`jacoco`: PluginDependencySpec get() = plugins.id("org.gradle.jacoco") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.java-base` plugin implemented by [org.gradle.api.plugins.JavaBasePlugin]. */ internal val `OrgGradlePluginGroup`.`java-base`: PluginDependencySpec get() = plugins.id("org.gradle.java-base") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.java-gradle-plugin` plugin implemented by [org.gradle.plugin.devel.plugins.JavaGradlePluginPlugin]. */ internal val `OrgGradlePluginGroup`.`java-gradle-plugin`: PluginDependencySpec get() = plugins.id("org.gradle.java-gradle-plugin") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.java-library-distribution` plugin implemented by [org.gradle.api.plugins.JavaLibraryDistributionPlugin]. */ internal val `OrgGradlePluginGroup`.`java-library-distribution`: PluginDependencySpec get() = plugins.id("org.gradle.java-library-distribution") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.java-library` plugin implemented by [org.gradle.api.plugins.JavaLibraryPlugin]. */ internal val `OrgGradlePluginGroup`.`java-library`: PluginDependencySpec get() = plugins.id("org.gradle.java-library") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.java-platform` plugin implemented by [org.gradle.api.plugins.JavaPlatformPlugin]. */ internal val `OrgGradlePluginGroup`.`java-platform`: PluginDependencySpec get() = plugins.id("org.gradle.java-platform") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.java-test-fixtures` plugin implemented by [org.gradle.api.plugins.JavaTestFixturesPlugin]. */ internal val `OrgGradlePluginGroup`.`java-test-fixtures`: PluginDependencySpec get() = plugins.id("org.gradle.java-test-fixtures") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.java` plugin implemented by [org.gradle.api.plugins.JavaPlugin]. */ internal val `OrgGradlePluginGroup`.`java`: PluginDependencySpec get() = plugins.id("org.gradle.java") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.jdk-toolchains` plugin implemented by [org.gradle.api.plugins.JdkToolchainsPlugin]. */ internal val `OrgGradlePluginGroup`.`jdk-toolchains`: PluginDependencySpec get() = plugins.id("org.gradle.jdk-toolchains") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.jvm-ecosystem` plugin implemented by [org.gradle.api.plugins.JvmEcosystemPlugin]. */ internal val `OrgGradlePluginGroup`.`jvm-ecosystem`: PluginDependencySpec get() = plugins.id("org.gradle.jvm-ecosystem") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.jvm-test-suite` plugin implemented by [org.gradle.api.plugins.JvmTestSuitePlugin]. */ internal val `OrgGradlePluginGroup`.`jvm-test-suite`: PluginDependencySpec get() = plugins.id("org.gradle.jvm-test-suite") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.jvm-toolchain-management` plugin implemented by [org.gradle.api.plugins.JvmToolchainManagementPlugin]. */ internal val `OrgGradlePluginGroup`.`jvm-toolchain-management`: PluginDependencySpec get() = plugins.id("org.gradle.jvm-toolchain-management") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.jvm-toolchains` plugin implemented by [org.gradle.api.plugins.JvmToolchainsPlugin]. */ internal val `OrgGradlePluginGroup`.`jvm-toolchains`: PluginDependencySpec get() = plugins.id("org.gradle.jvm-toolchains") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.language-base` plugin implemented by [org.gradle.language.base.plugins.LanguageBasePlugin]. */ internal val `OrgGradlePluginGroup`.`language-base`: PluginDependencySpec get() = plugins.id("org.gradle.language-base") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.lifecycle-base` plugin implemented by [org.gradle.language.base.plugins.LifecycleBasePlugin]. */ internal val `OrgGradlePluginGroup`.`lifecycle-base`: PluginDependencySpec get() = plugins.id("org.gradle.lifecycle-base") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.maven-publish` plugin implemented by [org.gradle.api.publish.maven.plugins.MavenPublishPlugin]. */ internal val `OrgGradlePluginGroup`.`maven-publish`: PluginDependencySpec get() = plugins.id("org.gradle.maven-publish") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.microsoft-visual-cpp-compiler` plugin implemented by [org.gradle.nativeplatform.toolchain.plugins.MicrosoftVisualCppCompilerPlugin]. */ internal val `OrgGradlePluginGroup`.`microsoft-visual-cpp-compiler`: PluginDependencySpec get() = plugins.id("org.gradle.microsoft-visual-cpp-compiler") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.native-component-model` plugin implemented by [org.gradle.nativeplatform.plugins.NativeComponentModelPlugin]. */ internal val `OrgGradlePluginGroup`.`native-component-model`: PluginDependencySpec get() = plugins.id("org.gradle.native-component-model") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.native-component` plugin implemented by [org.gradle.nativeplatform.plugins.NativeComponentPlugin]. */ internal val `OrgGradlePluginGroup`.`native-component`: PluginDependencySpec get() = plugins.id("org.gradle.native-component") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.objective-c-lang` plugin implemented by [org.gradle.language.objectivec.plugins.ObjectiveCLangPlugin]. */ internal val `OrgGradlePluginGroup`.`objective-c-lang`: PluginDependencySpec get() = plugins.id("org.gradle.objective-c-lang") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.objective-c` plugin implemented by [org.gradle.language.objectivec.plugins.ObjectiveCPlugin]. */ internal val `OrgGradlePluginGroup`.`objective-c`: PluginDependencySpec get() = plugins.id("org.gradle.objective-c") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.objective-cpp-lang` plugin implemented by [org.gradle.language.objectivecpp.plugins.ObjectiveCppLangPlugin]. */ internal val `OrgGradlePluginGroup`.`objective-cpp-lang`: PluginDependencySpec get() = plugins.id("org.gradle.objective-cpp-lang") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.objective-cpp` plugin implemented by [org.gradle.language.objectivecpp.plugins.ObjectiveCppPlugin]. */ internal val `OrgGradlePluginGroup`.`objective-cpp`: PluginDependencySpec get() = plugins.id("org.gradle.objective-cpp") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.pmd` plugin implemented by [org.gradle.api.plugins.quality.PmdPlugin]. */ internal val `OrgGradlePluginGroup`.`pmd`: PluginDependencySpec get() = plugins.id("org.gradle.pmd") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.project-report` plugin implemented by [org.gradle.api.plugins.ProjectReportsPlugin]. */ internal val `OrgGradlePluginGroup`.`project-report`: PluginDependencySpec get() = plugins.id("org.gradle.project-report") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.project-reports` plugin implemented by [org.gradle.api.plugins.ProjectReportsPlugin]. */ internal val `OrgGradlePluginGroup`.`project-reports`: PluginDependencySpec get() = plugins.id("org.gradle.project-reports") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.publishing` plugin implemented by [org.gradle.api.publish.plugins.PublishingPlugin]. */ internal val `OrgGradlePluginGroup`.`publishing`: PluginDependencySpec get() = plugins.id("org.gradle.publishing") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.reporting-base` plugin implemented by [org.gradle.api.plugins.ReportingBasePlugin]. */ internal val `OrgGradlePluginGroup`.`reporting-base`: PluginDependencySpec get() = plugins.id("org.gradle.reporting-base") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.scala-base` plugin implemented by [org.gradle.api.plugins.scala.ScalaBasePlugin]. */ internal val `OrgGradlePluginGroup`.`scala-base`: PluginDependencySpec get() = plugins.id("org.gradle.scala-base") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.scala` plugin implemented by [org.gradle.api.plugins.scala.ScalaPlugin]. */ internal val `OrgGradlePluginGroup`.`scala`: PluginDependencySpec get() = plugins.id("org.gradle.scala") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.signing` plugin implemented by [org.gradle.plugins.signing.SigningPlugin]. */ internal val `OrgGradlePluginGroup`.`signing`: PluginDependencySpec get() = plugins.id("org.gradle.signing") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.standard-tool-chains` plugin implemented by [org.gradle.nativeplatform.toolchain.internal.plugins.StandardToolChainsPlugin]. */ internal val `OrgGradlePluginGroup`.`standard-tool-chains`: PluginDependencySpec get() = plugins.id("org.gradle.standard-tool-chains") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.swift-application` plugin implemented by [org.gradle.language.swift.plugins.SwiftApplicationPlugin]. */ internal val `OrgGradlePluginGroup`.`swift-application`: PluginDependencySpec get() = plugins.id("org.gradle.swift-application") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.swift-library` plugin implemented by [org.gradle.language.swift.plugins.SwiftLibraryPlugin]. */ internal val `OrgGradlePluginGroup`.`swift-library`: PluginDependencySpec get() = plugins.id("org.gradle.swift-library") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.swiftpm-export` plugin implemented by [org.gradle.swiftpm.plugins.SwiftPackageManagerExportPlugin]. */ internal val `OrgGradlePluginGroup`.`swiftpm-export`: PluginDependencySpec get() = plugins.id("org.gradle.swiftpm-export") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.test-report-aggregation` plugin implemented by [org.gradle.api.plugins.TestReportAggregationPlugin]. */ internal val `OrgGradlePluginGroup`.`test-report-aggregation`: PluginDependencySpec get() = plugins.id("org.gradle.test-report-aggregation") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.test-suite-base` plugin implemented by [org.gradle.testing.base.plugins.TestSuiteBasePlugin]. */ internal val `OrgGradlePluginGroup`.`test-suite-base`: PluginDependencySpec get() = plugins.id("org.gradle.test-suite-base") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.version-catalog` plugin implemented by [org.gradle.api.plugins.catalog.VersionCatalogPlugin]. */ internal val `OrgGradlePluginGroup`.`version-catalog`: PluginDependencySpec get() = plugins.id("org.gradle.version-catalog") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.visual-studio` plugin implemented by [org.gradle.ide.visualstudio.plugins.VisualStudioPlugin]. */ internal val `OrgGradlePluginGroup`.`visual-studio`: PluginDependencySpec get() = plugins.id("org.gradle.visual-studio") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.war` plugin implemented by [org.gradle.api.plugins.WarPlugin]. */ internal val `OrgGradlePluginGroup`.`war`: PluginDependencySpec get() = plugins.id("org.gradle.war") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.windows-resource-script` plugin implemented by [org.gradle.language.rc.plugins.WindowsResourceScriptPlugin]. */ internal val `OrgGradlePluginGroup`.`windows-resource-script`: PluginDependencySpec get() = plugins.id("org.gradle.windows-resource-script") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.windows-resources` plugin implemented by [org.gradle.language.rc.plugins.WindowsResourcesPlugin]. */ internal val `OrgGradlePluginGroup`.`windows-resources`: PluginDependencySpec get() = plugins.id("org.gradle.windows-resources") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.wrapper` plugin implemented by [org.gradle.buildinit.plugins.WrapperPlugin]. */ internal val `OrgGradlePluginGroup`.`wrapper`: PluginDependencySpec get() = plugins.id("org.gradle.wrapper") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.xcode` plugin implemented by [org.gradle.ide.xcode.plugins.XcodePlugin]. */ internal val `OrgGradlePluginGroup`.`xcode`: PluginDependencySpec get() = plugins.id("org.gradle.xcode") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.gradle.xctest` plugin implemented by [org.gradle.nativeplatform.test.xctest.plugins.XCTestConventionPlugin]. */ internal val `OrgGradlePluginGroup`.`xctest`: PluginDependencySpec get() = plugins.id("org.gradle.xctest") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.jetbrains.kotlin.android` plugin implemented by [org.jetbrains.kotlin.gradle.plugin.KotlinAndroidPluginWrapper]. */ internal val `OrgJetbrainsKotlinPluginGroup`.`android`: PluginDependencySpec get() = plugins.id("org.jetbrains.kotlin.android") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.jetbrains.kotlin.js` plugin implemented by [org.jetbrains.kotlin.gradle.plugin.KotlinJsPluginWrapper]. */ internal val `OrgJetbrainsKotlinPluginGroup`.`js`: PluginDependencySpec get() = plugins.id("org.jetbrains.kotlin.js") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.jetbrains.kotlin.jvm` plugin implemented by [org.jetbrains.kotlin.gradle.plugin.KotlinPluginWrapper]. */ internal val `OrgJetbrainsKotlinPluginGroup`.`jvm`: PluginDependencySpec get() = plugins.id("org.jetbrains.kotlin.jvm") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.jetbrains.kotlin.kapt` plugin implemented by [org.jetbrains.kotlin.gradle.internal.Kapt3GradleSubplugin]. */ internal val `OrgJetbrainsKotlinPluginGroup`.`kapt`: PluginDependencySpec get() = plugins.id("org.jetbrains.kotlin.kapt") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.jetbrains.kotlin.multiplatform` plugin implemented by [org.jetbrains.kotlin.gradle.plugin.KotlinMultiplatformPluginWrapper]. */ internal val `OrgJetbrainsKotlinPluginGroup`.`multiplatform`: PluginDependencySpec get() = plugins.id("org.jetbrains.kotlin.multiplatform") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.jetbrains.kotlin.native.cocoapods` plugin implemented by [org.jetbrains.kotlin.gradle.plugin.cocoapods.KotlinCocoapodsPlugin]. */ internal val `OrgJetbrainsKotlinNativePluginGroup`.`cocoapods`: PluginDependencySpec get() = plugins.id("org.jetbrains.kotlin.native.cocoapods") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.jetbrains.kotlin.native.performance` plugin implemented by [org.jetbrains.kotlin.gradle.plugin.performance.KotlinPerformancePlugin]. */ internal val `OrgJetbrainsKotlinNativePluginGroup`.`performance`: PluginDependencySpec get() = plugins.id("org.jetbrains.kotlin.native.performance") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.jetbrains.kotlin.platform.android` plugin implemented by [org.jetbrains.kotlin.gradle.plugin.KotlinPlatformAndroidPlugin]. */ internal val `OrgJetbrainsKotlinPlatformPluginGroup`.`android`: PluginDependencySpec get() = plugins.id("org.jetbrains.kotlin.platform.android") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.jetbrains.kotlin.platform.common` plugin implemented by [org.jetbrains.kotlin.gradle.plugin.KotlinPlatformCommonPlugin]. */ internal val `OrgJetbrainsKotlinPlatformPluginGroup`.`common`: PluginDependencySpec get() = plugins.id("org.jetbrains.kotlin.platform.common") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.jetbrains.kotlin.platform.js` plugin implemented by [org.jetbrains.kotlin.gradle.plugin.KotlinPlatformJsPlugin]. */ internal val `OrgJetbrainsKotlinPlatformPluginGroup`.`js`: PluginDependencySpec get() = plugins.id("org.jetbrains.kotlin.platform.js") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.jetbrains.kotlin.platform.jvm` plugin implemented by [org.jetbrains.kotlin.gradle.plugin.KotlinPlatformJvmPlugin]. */ internal val `OrgJetbrainsKotlinPlatformPluginGroup`.`jvm`: PluginDependencySpec get() = plugins.id("org.jetbrains.kotlin.platform.jvm") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.jetbrains.kotlin.plugin.parcelize` plugin implemented by [org.jetbrains.kotlin.gradle.internal.ParcelizeSubplugin]. */ internal val `OrgJetbrainsKotlinPluginPluginGroup`.`parcelize`: PluginDependencySpec get() = plugins.id("org.jetbrains.kotlin.plugin.parcelize") + TopLevelPropertyNaming:PluginSpecBuilders.kt$/** * The `org.jetbrains.kotlin.plugin.scripting` plugin implemented by [org.jetbrains.kotlin.gradle.scripting.internal.ScriptingGradleSubplugin]. */ internal val `OrgJetbrainsKotlinPluginPluginGroup`.`scripting`: PluginDependencySpec get() = plugins.id("org.jetbrains.kotlin.plugin.scripting") + UnnecessaryParenthesesBeforeTrailingLambda:EditBottomSheet.kt$() + UnstableCollections:BudgetModal.kt$List<Category> + UnstableCollections:BudgetModal.kt$List<UUID> + UnstableCollections:BudgetScreen.kt$List<Account> + UnstableCollections:BudgetScreen.kt$List<Category> + UnstableCollections:BudgetScreen.kt$List<DisplayBudget> + UnstableCollections:CSVViewModel.kt$CSVViewModel$List<CSVRow>? + UnstableCollections:CategoriesScreen.kt$List<SortOrder> + UnstableCollections:CategoryCharts.kt$List<CategoryValues> + UnstableCollections:ChartsScreen.kt$List<Category> + UnstableCollections:ChartsScreen.kt$List<CategoryValues> + UnstableCollections:ChartsScreen.kt$List<IncomeExpenseChartPoint> + UnstableCollections:ChartsScreen.kt$List<SingleChartPoint> + UnstableCollections:ChooseCategoryModal.kt$List<Category> + UnstableCollections:ChooseIconModal.kt$List<String> + UnstableCollections:CustomerJourney.kt$List<CustomerJourneyCardData> + UnstableCollections:EditBottomSheet.kt$List<Account> + UnstableCollections:EditPlannedScreen.kt$List<Account> + UnstableCollections:EditPlannedScreen.kt$List<Category> + UnstableCollections:EditTransactionScreen.kt$List<Account> + UnstableCollections:EditTransactionScreen.kt$List<Category> + UnstableCollections:EditTransactionScreen.kt$Set<String> + UnstableCollections:FilterOverlay.kt$List<Account> + UnstableCollections:FilterOverlay.kt$List<Category> + UnstableCollections:HomeTab.kt$List<CustomerJourneyCardData> + UnstableCollections:HomeTab.kt$List<TransactionHistoryItem> + UnstableCollections:ItemStatisticScreen.kt$List<Account> + UnstableCollections:ItemStatisticScreen.kt$List<Category> + UnstableCollections:ItemStatisticScreen.kt$List<Transaction> + UnstableCollections:ItemStatisticScreen.kt$List<TransactionHistoryItem> + UnstableCollections:IvyLineChart.kt$List<Function> + UnstableCollections:IvyLineChart.kt$List<Value> + UnstableCollections:LoanDetailsScreen.kt$List<Account> + UnstableCollections:LoanDetailsScreen.kt$List<DisplayLoanRecord> + UnstableCollections:LoanModal.kt$List<Account> + UnstableCollections:LoanRecordModal.kt$List<Account> + UnstableCollections:OnboardingAccounts.kt$List<AccountBalance> + UnstableCollections:OnboardingAccounts.kt$List<CreateAccountData> + UnstableCollections:OnboardingCategories.kt$List<Category> + UnstableCollections:OnboardingCategories.kt$List<CreateCategoryData> + UnstableCollections:OnboardingScreen.kt$List<AccountBalance> + UnstableCollections:OnboardingScreen.kt$List<Category> + UnstableCollections:OnboardingScreen.kt$List<CreateAccountData> + UnstableCollections:OnboardingScreen.kt$List<CreateCategoryData> + UnstableCollections:PaywallScreen.kt$List<Account> + UnstableCollections:PaywallScreen.kt$List<Budget> + UnstableCollections:PaywallScreen.kt$List<Category> + UnstableCollections:PaywallScreen.kt$List<Loan> + UnstableCollections:PaywallScreen.kt$List<Plan> + UnstableCollections:PaywallScreen.kt$List<String> + UnstableCollections:PieChart.kt$List<CategoryAmount> + UnstableCollections:PlannedPaymentCard.kt$List<Account> + UnstableCollections:PlannedPaymentCard.kt$List<Category> + UnstableCollections:PlannedPaymentsLazyColumn.kt$List<Account> + UnstableCollections:PlannedPaymentsLazyColumn.kt$List<Category> + UnstableCollections:PlannedPaymentsLazyColumn.kt$List<PlannedPaymentRule> + UnstableCollections:PlannedPaymentsScreen.kt$List<Account> + UnstableCollections:PlannedPaymentsScreen.kt$List<Category> + UnstableCollections:PlannedPaymentsScreen.kt$List<PlannedPaymentRule> + UnstableCollections:PlansSheet.kt$List<Plan> + UnstableCollections:PlansSheet.kt$List<String> + UnstableCollections:ReorderModal.kt$List<Any> + UnstableCollections:ReorderModal.kt$List<T> + UnstableCollections:SearchScreen.kt$List<Account> + UnstableCollections:SearchScreen.kt$List<Category> + UnstableCollections:SearchScreen.kt$List<TransactionHistoryItem> + UnstableCollections:Suggestions.kt$List<Any> + UnstableCollections:Title.kt$Set<String> + UnstableCollections:TransactionCard.kt$List<Account> + UnstableCollections:TransactionCard.kt$List<Category> + UnstableCollections:Utils.kt$List<Account> + UnstableCollections:Utils.kt$List<Category> + UnstableCollections:WalletCharts.kt$List<SingleChartPoint> + UnstableCollections:WrapContentRow.kt$List<T> + UnusedParameter:AccountCharts.kt$period: ChartPeriod + UnusedParameter:AccountsTab.kt$onLongClick: () -> Unit + UnusedParameter:AccountsTab.kt$screen: Main + UnusedParameter:AccountsViewModel.kt$AccountsViewModel$event: AccountsUpdatedEvent + UnusedParameter:AnalyticsReportScreen.kt$screen: AnalyticsReport + UnusedParameter:BalanceScreen.kt$screen: BalanceScreen + UnusedParameter:BudgetScreen.kt$screen: BudgetScreen + UnusedParameter:CategoriesScreen.kt$onLongClick: () -> Unit + UnusedParameter:CategoriesScreen.kt$screen: Categories + UnusedParameter:CategoryCharts.kt$countChart: Boolean + UnusedParameter:ChartsScreen.kt$categories: List<Category> = emptyList() + UnusedParameter:ChartsScreen.kt$categoryExpenseCount: List<CategoryValues> = emptyList() + UnusedParameter:ChartsScreen.kt$categoryExpenseValues: List<CategoryValues> = emptyList() + UnusedParameter:ChartsScreen.kt$categoryIncomeCount: List<CategoryValues> = emptyList() + UnusedParameter:ChartsScreen.kt$categoryIncomeValues: List<CategoryValues> = emptyList() + UnusedParameter:ChartsScreen.kt$incomeExpenseChart: List<IncomeExpenseChartPoint> = emptyList() + UnusedParameter:ChartsScreen.kt$onLoadCategory: (Category) -> Unit = {} + UnusedParameter:ChartsScreen.kt$onRemoveCategory: (Category) -> Unit = {} + UnusedParameter:ChartsScreen.kt$screen: Charts + UnusedParameter:ChartsViewModel.kt$ChartsViewModel$calculateValue: suspend (range: FromToTimeRange) -> Double + UnusedParameter:ChartsViewModel.kt$ChartsViewModel$category: Category + UnusedParameter:ChartsViewModel.kt$ChartsViewModel$period: ChartPeriod + UnusedParameter:DateExt.kt$secondsLabel: String = "s" + UnusedParameter:DonateScreen.kt$screen: DonateScreen + UnusedParameter:FileUtil.kt$context: Context + UnusedParameter:FileUtil.kt$directoryType: String + UnusedParameter:HomeHeader.kt$bufferDiff: Double + UnusedParameter:HomeHeader.kt$period: TimePeriod + UnusedParameter:HomeMoreMenu.kt$onCurrencyClick: () -> Unit + UnusedParameter:HomeTab.kt$screen: Main + UnusedParameter:HomeViewModel.kt$HomeViewModel$input: HomeState + UnusedParameter:ItemStatisticScreen.kt$itemColor: Color + UnusedParameter:IvyBasicTextField.kt$textColor: Color = UI.colors.pureInverse + UnusedParameter:IvyLineChart.kt$cellSize: Float + UnusedParameter:IvyLineChart.kt$chartWidth: Float + UnusedParameter:IvyLineChart.kt$offsetRight: Float + UnusedParameter:KPIsTab.kt$activeUsersCount: Int + UnusedParameter:LoanDetailsScreen.kt$baseCurrency: String = "" + UnusedParameter:LoanDetailsScreen.kt$loanRecords: List<LoanRecord> = emptyList() + UnusedParameter:LoansScreen.kt$screen: Loans + UnusedParameter:OnboardingSplashLogin.kt$onLoginWithGoogle: () -> Unit + UnusedParameter:OnboardingSplashLogin.kt$opGoogleSignIn: OpResult<Unit>? + UnusedParameter:ParseFields.kt$metadata: Unit + UnusedParameter:PaywallScreen.kt$paywallReason: PaywallReason? + UnusedParameter:PlannedPaymentsLazyColumn.kt$listState: LazyListState + UnusedParameter:PlannedPaymentsViewModel.kt$PlannedPaymentsViewModel$screen: PlannedPayments + UnusedParameter:ReportScreen.kt$screen: Report + UnusedParameter:SearchScreen.kt$screen: Search + UnusedParameter:SettingsScreen.kt$onLogin: () -> Unit + UnusedParameter:SettingsScreen.kt$screen: Settings + UnusedParameter:Shapes.kt$modifier: Modifier = Modifier + UnusedParameter:TestScreen.kt$onSyncCategories: () -> Unit + UnusedParameter:TestScreen.kt$onTestWorker: () -> Unit + UnusedParameter:TestScreen.kt$screen: Test + UnusedParameter:Title.kt$initialTransactionId: UUID? + UnusedParameter:WalletCharts.kt$baseCurrencyCode: String + UnusedParameter:WalletCharts.kt$walletDAOs: WalletDAOs + UnusedPrivateMember:AccountsTab.kt$@Preview @Composable private fun PreviewAccountsTab() + UnusedPrivateMember:AddPrimaryAttributeButton.kt$@Preview @Composable private fun PreviewAddPrimaryAttributeButton() + UnusedPrivateMember:AppLockedScreen.kt$@Preview @Composable private fun Preview_Locked() + UnusedPrivateMember:BalanceRow.kt$@Preview @Composable private fun Preview_Default() + UnusedPrivateMember:BalanceRow.kt$@Preview @Composable private fun Preview_Medium() + UnusedPrivateMember:BalanceRow.kt$@Preview @Composable private fun Preview_Mini() + UnusedPrivateMember:BudgetBattery.kt$@Preview @Composable private fun Preview_budget_0() + UnusedPrivateMember:BudgetBattery.kt$@Preview @Composable private fun Preview_buffer_100() + UnusedPrivateMember:BudgetBattery.kt$@Preview @Composable private fun Preview_buffer_125() + UnusedPrivateMember:BudgetBattery.kt$@Preview @Composable private fun Preview_buffer_25() + UnusedPrivateMember:BudgetBattery.kt$@Preview @Composable private fun Preview_buffer_50() + UnusedPrivateMember:BudgetBattery.kt$@Preview @Composable private fun Preview_buffer_75() + UnusedPrivateMember:BudgetBattery.kt$@Preview @Composable private fun Preview_buffer_90() + UnusedPrivateMember:BudgetBattery.kt$@Preview @Composable private fun Preview_expenses_0() + UnusedPrivateMember:BudgetBattery.kt$@Preview @Composable private fun Preview_expenses_negative() + UnusedPrivateMember:BudgetBattery.kt$@Preview @Composable private fun Preview_spent_very_low() + UnusedPrivateMember:BudgetBottomBar.kt$@Preview @Composable private fun PreviewBottomBar() + UnusedPrivateMember:BudgetModal.kt$@Preview @Composable private fun Preview_create() + UnusedPrivateMember:BudgetModal.kt$@Preview @Composable private fun Preview_edit() + UnusedPrivateMember:BudgetScreen.kt$@Preview @Composable private fun Preview_Budgets() + UnusedPrivateMember:BudgetScreen.kt$@Preview @Composable private fun Preview_Empty() + UnusedPrivateMember:BufferBattery.kt$@Preview @Composable private fun Preview_buffer_0() + UnusedPrivateMember:BufferBattery.kt$@Preview @Composable private fun Preview_buffer_100() + UnusedPrivateMember:BufferBattery.kt$@Preview @Composable private fun Preview_buffer_125() + UnusedPrivateMember:BufferBattery.kt$@Preview @Composable private fun Preview_buffer_25() + UnusedPrivateMember:BufferBattery.kt$@Preview @Composable private fun Preview_buffer_50() + UnusedPrivateMember:BufferBattery.kt$@Preview @Composable private fun Preview_buffer_75() + UnusedPrivateMember:BufferBattery.kt$@Preview @Composable private fun Preview_buffer_90() + UnusedPrivateMember:BufferBattery.kt$@Preview @Composable private fun Preview_buffer_balance_0() + UnusedPrivateMember:BufferBattery.kt$@Preview @Composable private fun Preview_buffer_very_low() + UnusedPrivateMember:Button.kt$@Preview @Composable private fun Preview_FillMaxWidth() + UnusedPrivateMember:Button.kt$@Preview @Composable private fun Preview_Outlined() + UnusedPrivateMember:Button.kt$@Preview @Composable private fun Preview_Solid() + UnusedPrivateMember:ButtonWithIcon.kt$@Preview @Composable private fun Preview_IconLeft_FillMax() + UnusedPrivateMember:ButtonWithIcon.kt$@Preview @Composable private fun Preview_IconLeft_Wrap() + UnusedPrivateMember:ButtonWithIcon.kt$@Preview @Composable private fun Preview_IconRight_FillMax() + UnusedPrivateMember:ButtonWithIcon.kt$@Preview @Composable private fun Preview_IconRight_Wrap() + UnusedPrivateMember:CategoriesBottomBar.kt$@Preview @Composable private fun PreviewBottomBar() + UnusedPrivateMember:CategoryModal.kt$@Preview @Composable private fun PreviewCategoryModal() + UnusedPrivateMember:Checkbox.kt$@Preview @Composable private fun PreviewIvyCheckboxWithText() + UnusedPrivateMember:ChooseCategoryModal.kt$@ExperimentalFoundationApi @Preview @Composable private fun PreviewChooseCategoryModal() + UnusedPrivateMember:ChoosePeriodModal.kt$@Preview @Composable private fun Preview_FromTo() + UnusedPrivateMember:ChoosePeriodModal.kt$@Preview @Composable private fun Preview_LastN() + UnusedPrivateMember:ChoosePeriodModal.kt$@Preview @Composable private fun Preview_MonthSelected() + UnusedPrivateMember:CircleButtons.kt$@Preview @Composable private fun PreviewBackButton() + UnusedPrivateMember:CircleButtons.kt$@Preview @Composable private fun PreviewCloseButton() + UnusedPrivateMember:CustomExchangeRateCard.kt$@Preview @Composable private fun Preview_OneTime() + UnusedPrivateMember:CustomerJourney.kt$@Preview @Composable private fun PreviewCard() + UnusedPrivateMember:CustomerJourneyLogic.kt$@Preview @Composable private fun PreviewAddPlannedPaymentCard() + UnusedPrivateMember:CustomerJourneyLogic.kt$@Preview @Composable private fun PreviewAdjustBalanceCard() + UnusedPrivateMember:CustomerJourneyLogic.kt$@Preview @Composable private fun PreviewDidYouKnow_ExpensesPieChart() + UnusedPrivateMember:CustomerJourneyLogic.kt$@Preview @Composable private fun PreviewDidYouKnow_PinAddTransactionWidgetCard() + UnusedPrivateMember:CustomerJourneyLogic.kt$@Preview @Composable private fun PreviewIvyTelegram_2() + UnusedPrivateMember:CustomerJourneyLogic.kt$@Preview @Composable private fun PreviewIvyWallet_gitHubBackups() + UnusedPrivateMember:CustomerJourneyLogic.kt$@Preview @Composable private fun PreviewIvyWallet_isOpenSource() + UnusedPrivateMember:CustomerJourneyLogic.kt$@Preview @Composable private fun PreviewJoinTelegram() + UnusedPrivateMember:CustomerJourneyLogic.kt$@Preview @Composable private fun PreviewRateUsCard() + UnusedPrivateMember:CustomerJourneyLogic.kt$@Preview @Composable private fun PreviewRateUs_2() + UnusedPrivateMember:CustomerJourneyLogic.kt$@Preview @Composable private fun PreviewShareIvyWallet() + UnusedPrivateMember:Description.kt$@Preview @Composable private fun PreviewDescription_Empty() + UnusedPrivateMember:Description.kt$@Preview @Composable private fun PreviewDescription_withText() + UnusedPrivateMember:DescriptionModal.kt$@Preview @Composable private fun PreviewDescriptionModal_emptyText() + UnusedPrivateMember:Dividers.kt$@Preview @Composable private fun PreviewDivider() + UnusedPrivateMember:Dividers.kt$@Preview @Composable private fun PreviewHorizontalDivider_fillMax() + UnusedPrivateMember:Dividers.kt$@Preview @Composable private fun PreviewHorizontalDivider_fixed() + UnusedPrivateMember:Dividers.kt$@Preview @Composable private fun PreviewVerticalDivider_fillMax() + UnusedPrivateMember:Dividers.kt$@Preview @Composable private fun PreviewVerticalDivider_fixed() + UnusedPrivateMember:DueDate.kt$@Preview @Composable private fun Preview_OneTime() + UnusedPrivateMember:EditBottomSheet.kt$@Preview @Composable private fun Preview_Transfer() + UnusedPrivateMember:EditTransactionViewModel.kt$EditTransactionViewModel$private suspend fun transferToAmount( amount: Double ): Double? + UnusedPrivateMember:HistoryDateDivider.kt$@Preview @Composable private fun Preview_OneYear_Ago() + UnusedPrivateMember:HistoryDateDivider.kt$@Preview @Composable private fun Preview_Today() + UnusedPrivateMember:HistoryDateDivider.kt$@Preview @Composable private fun Preview_Yesterday() + UnusedPrivateMember:HomeMoreMenu.kt$@Preview @Composable private fun Preview_Expanded() + UnusedPrivateMember:HomeTab.kt$@ExperimentalAnimationApi @ExperimentalFoundationApi @Preview @Composable private fun PreviewHomeTab() + UnusedPrivateMember:ItemIcon.kt$@Preview @Composable private fun Preview_L() + UnusedPrivateMember:ItemIcon.kt$@Preview @Composable private fun Preview_M() + UnusedPrivateMember:ItemIcon.kt$@Preview @Composable private fun Preview_S() + UnusedPrivateMember:ItemStatisticScreen.kt$@Preview @Composable private fun Preview_crypto() + UnusedPrivateMember:ItemStatisticScreen.kt$@Preview @Composable private fun Preview_empty() + UnusedPrivateMember:ItemStatisticScreen.kt$@Preview @Composable private fun Preview_empty_upcoming() + UnusedPrivateMember:IvyBasicTextField.kt$@Preview @Composable private fun Preview_Filled() + UnusedPrivateMember:IvyBasicTextField.kt$@Preview @Composable private fun Preview_Hint() + UnusedPrivateMember:IvyBorderButton.kt$@Preview @Composable private fun PreviewIvyBorderButton() + UnusedPrivateMember:IvyButton.kt$@Preview @Composable private fun PreviewIvyButtonFillMaxWidthWithIconEnd() + UnusedPrivateMember:IvyButton.kt$@Preview @Composable private fun PreviewIvyButtonFillMaxWidthWithIconStart() + UnusedPrivateMember:IvyButton.kt$@Preview @Composable private fun PreviewIvyButtonWrapContentWithIconEnd() + UnusedPrivateMember:IvyButton.kt$@Preview @Composable private fun PreviewIvyButtonWrapContentWithIconStart() + UnusedPrivateMember:IvyCheckbox.kt$@Preview @Composable private fun PreviewIvyCheckboxWithText() + UnusedPrivateMember:IvyChecklistTextField.kt$@Preview @Composable private fun PreviewIvyTextField() + UnusedPrivateMember:IvyChecklistTextField.kt$@Preview @Composable private fun PreviewIvyTextField_longText() + UnusedPrivateMember:IvyCircleButton.kt$@Preview @Composable private fun PreviewIvyCircleButton_Disabled() + UnusedPrivateMember:IvyCircleButton.kt$@Preview @Composable private fun PreviewIvyCircleButton_Enabled() + UnusedPrivateMember:IvyColorPicker.kt$@Preview @Composable private fun PreviewIvyColorPicker() + UnusedPrivateMember:IvyDescriptionTextField.kt$@Preview @Composable private fun PreviewIvyTextField() + UnusedPrivateMember:IvyDescriptionTextField.kt$@Preview @Composable private fun PreviewIvyTextField_longText() + UnusedPrivateMember:IvyLineChart.kt$@Preview @Composable private fun Preview_IvyChart() + UnusedPrivateMember:IvyModal.kt$@Preview @Composable private fun PreviewIvyModal_minimal() + UnusedPrivateMember:IvyNameTextFieldValue.kt$@Preview @Composable private fun PreviewIvyNameTextField() + UnusedPrivateMember:IvyOutlinedButton.kt$@Preview @Composable private fun Preview_FillMaxWidth() + UnusedPrivateMember:IvyOutlinedTextField.kt$@Preview @Composable private fun PreviewOutlineTextField() + UnusedPrivateMember:IvySwitch.kt$@Preview @Composable private fun PreviewIvySwitch() + UnusedPrivateMember:IvyTitleTextField.kt$@Preview @Composable private fun PreviewIvyTitleTextField() + UnusedPrivateMember:LoanBottomBar.kt$@Preview @Composable private fun PreviewBottomBar() + UnusedPrivateMember:LoanDetailsScreen.kt$@Preview @Composable private fun Preview_Empty() + UnusedPrivateMember:LoanDetailsScreen.kt$@Preview @Composable private fun Preview_Records() + UnusedPrivateMember:MainScreen.kt$@ExperimentalAnimationApi @ExperimentalFoundationApi @Preview @Composable private fun PreviewMainScreen() + UnusedPrivateMember:Migration109to110_PlannedPayments.kt$Migration109to110_PlannedPayments$private fun SupportSQLiteDatabase.addSyncColumns(tableName: String) + UnusedPrivateMember:OnboardingAccounts.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview_Accounts() + UnusedPrivateMember:OnboardingAccounts.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview_Empty() + UnusedPrivateMember:OnboardingAccounts.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview_Premium() + UnusedPrivateMember:OnboardingCategories.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview_Categories() + UnusedPrivateMember:OnboardingCategories.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview_Empty() + UnusedPrivateMember:OnboardingCategories.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview_Premium() + UnusedPrivateMember:OnboardingComponents.kt$@Preview @Composable private fun PreviewOnboardingButton() + UnusedPrivateMember:OnboardingComponents.kt$@Preview @Composable private fun PreviewOnboardingTextField() + UnusedPrivateMember:OnboardingReportTab.kt$@Composable private fun PrivacyTCorSetName( report: OnboardingReport ) + UnusedPrivateMember:OnboardingScreen.kt$@ExperimentalFoundationApi @Preview @Composable private fun PreviewOnboarding() + UnusedPrivateMember:OnboardingSplashLogin.kt$@Composable private fun LoginWithGoogleExplanation() + UnusedPrivateMember:PieChartStatisticBottomBar.kt$@Preview @Composable private fun PreviewBottomBar() + UnusedPrivateMember:PieChartStatisticScreen.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview_Expense() + UnusedPrivateMember:PieChartStatisticScreen.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview_Income() + UnusedPrivateMember:PlannedPaymentCard.kt$@Preview @Composable private fun Preview_oneTime() + UnusedPrivateMember:PlannedPaymentCard.kt$@Preview @Composable private fun Preview_recurring() + UnusedPrivateMember:PlannedPaymentCard.kt$@Preview @Composable private fun Preview_recurringError() + UnusedPrivateMember:PlannedPaymentsBottomBar.kt$@Preview @Composable private fun PreviewBottomBar() + UnusedPrivateMember:PlansSheet.kt$@Composable private fun BoxWithConstraintsScope.BottomBar( Action: @Composable () -> Unit, setBottomBarHeight: (Int) -> Unit, onClose: () -> Unit, ) + UnusedPrivateMember:PlansSheet.kt$@Preview @Composable private fun Preview_Shitty() + UnusedPrivateMember:PrimaryAttributeColumn.kt$@Preview @Composable private fun PreviewPrimaryAttributeColumn() + UnusedPrivateMember:RateItem.kt$@Preview @Composable private fun Preview_Delete() + UnusedPrivateMember:RecurringRule.kt$@Preview @Composable private fun Preview_Empty() + UnusedPrivateMember:RecurringRule.kt$@Preview @Composable private fun Preview_OneTime() + UnusedPrivateMember:RecurringRule.kt$@Preview @Composable private fun Preview_Repeat() + UnusedPrivateMember:RecurringRuleModal.kt$@Preview @Composable private fun Preview_multipleTimes() + UnusedPrivateMember:RecurringRuleModal.kt$@Preview @Composable private fun Preview_oneTime() + UnusedPrivateMember:ReportScreen.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview_NO_FILTER() + UnusedPrivateMember:ScreenTitle.kt$@Preview @Composable private fun Preview_Large() + UnusedPrivateMember:ScreenTitle.kt$@Preview @Composable private fun Preview_Standard() + UnusedPrivateMember:ServerStopScreen.kt$@Preview @Composable private fun PreviewLoading() + UnusedPrivateMember:SettingsScreen.kt$@Composable private fun Premium() + UnusedPrivateMember:SettingsScreen.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview_loading() + UnusedPrivateMember:SettingsScreen.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview_localAccount() + UnusedPrivateMember:SettingsScreen.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview_notSynced() + UnusedPrivateMember:SettingsScreen.kt$@ExperimentalFoundationApi @Preview @Composable private fun Preview_synced() + UnusedPrivateMember:Shapes.kt$@Preview @Composable private fun PreviewOutlined() + UnusedPrivateMember:Shapes.kt$@Preview @Composable private fun Preview_Circle() + UnusedPrivateMember:Switch.kt$@Preview @Composable private fun PreviewIvySwitch() + UnusedPrivateMember:Title.kt$@Preview @Composable private fun PreviewTitleWithSuggestions() + UnusedPrivateMember:TransactionCard.kt$@Preview @Composable private fun PreviewIncome() + UnusedPrivateMember:TransactionCard.kt$@Preview @Composable private fun PreviewNormalExpense() + UnusedPrivateMember:TransactionCard.kt$@Preview @Composable private fun PreviewOverdueExpense() + UnusedPrivateMember:TransactionCard.kt$@Preview @Composable private fun PreviewTransfer() + UnusedPrivateMember:TransactionCard.kt$@Preview @Composable private fun PreviewTransfer_differentCurrency() + UnusedPrivateMember:TransactionCard.kt$@Preview @Composable private fun PreviewUpcomingExpense() + UnusedPrivateMember:TransactionSectionDivider.kt$@Preview @Composable private fun Preview_Expenses() + UnusedPrivateMember:TransactionSectionDivider.kt$@Preview @Composable private fun Preview_Income() + UnusedPrivateMember:TransactionSectionDivider.kt$@Preview @Composable private fun Preview_Income_Expenses() + UnusedPrivateMember:TransactionViewModel.kt$TransactionViewModel$private fun isEditMode(): Boolean + UnusedPrivateMember:TransactionViewModel.kt$TransactionViewModel$private suspend fun createNewTransaction(state: TrnState.NewTransaction) + UnusedPrivateMember:WrapContentRow.kt$@Preview @Composable private fun PreviewWrapContentRow() + UnusedPrivateProperty:AccountModal.kt$val context = LocalContext.current + UnusedPrivateProperty:AccountsViewModel.kt$AccountsViewModel$private val settingsDao: SettingsDao + UnusedPrivateProperty:AccountsViewModel.kt$AccountsViewModel$private val walletDAOs: WalletDAOs + UnusedPrivateProperty:AppModuleDI.kt$AppModuleDI.<no name provided>$i + UnusedPrivateProperty:BudgetViewModel.kt$BudgetViewModel$private val accountDao: AccountDao + UnusedPrivateProperty:BudgetViewModel.kt$BudgetViewModel$private val categoryDao: CategoryDao + UnusedPrivateProperty:BudgetViewModel.kt$BudgetViewModel$private val settingsDao: SettingsDao + UnusedPrivateProperty:CategoryCharts.kt$val value = functions.getOrNull(it.functionIndex)?.values?.get(it.valueIndex) ?: return@let + UnusedPrivateProperty:ChartsViewModel.kt$ChartsViewModel$private val categoryDao: CategoryDao + UnusedPrivateProperty:ChartsViewModel.kt$ChartsViewModel$private val settingsDao: SettingsDao + UnusedPrivateProperty:DateExt.kt$val seconds = TimeUnit.MILLISECONDS.toSeconds(timeLeftAfterCalculations) + UnusedPrivateProperty:EditPlannedViewModel.kt$EditPlannedViewModel$private val ivyContext: IvyWalletCtx + UnusedPrivateProperty:EditTransactionViewModel.kt$EditTransactionViewModel$private val accountDao: AccountDao + UnusedPrivateProperty:EditTransactionViewModel.kt$EditTransactionViewModel$private val categoryDao: CategoryDao + UnusedPrivateProperty:EditTransactionViewModel.kt$EditTransactionViewModel$private val ivyContext: IvyWalletCtx + UnusedPrivateProperty:ExchangeRatesLogic.kt$ExchangeRatesLogic$restClient: RestClient + UnusedPrivateProperty:HomeTab.kt$val nav = navigation() + UnusedPrivateProperty:HomeViewModel.kt$HomeViewModel$private val exchangeRatesLogic: ExchangeRatesLogic + UnusedPrivateProperty:ItemStatisticViewModel.kt$ItemStatisticViewModel$private val exchangeRateDao: ExchangeRateDao + UnusedPrivateProperty:ItemStatisticViewModel.kt$ItemStatisticViewModel$private val exchangeRatesLogic: ExchangeRatesLogic + UnusedPrivateProperty:ItemStatisticViewModel.kt$ItemStatisticViewModel$private val settingsDao: SettingsDao + UnusedPrivateProperty:ItemStatisticViewModel.kt$ItemStatisticViewModel$private val walletDAOs: WalletDAOs + UnusedPrivateProperty:IvyBilling.kt$IvyBilling.Companion$private const val LIFETIME_V1 = "ivy_wallet_lifetime_v1" + UnusedPrivateProperty:IvyLineChart.kt$val marginFromX = 4.dp.toPx() + UnusedPrivateProperty:LoanDetailsViewModel.kt$LoanDetailsViewModel$private val accountDao: AccountDao + UnusedPrivateProperty:LoanDetailsViewModel.kt$LoanDetailsViewModel$private val ivyContext: IvyWalletCtx + UnusedPrivateProperty:LoanDetailsViewModel.kt$LoanDetailsViewModel$private val loanDao: LoanDao + UnusedPrivateProperty:LoanViewModel.kt$LoanViewModel$private val accountDao: AccountDao + UnusedPrivateProperty:LoanViewModel.kt$LoanViewModel$private val categoriesAct: CategoriesAct + UnusedPrivateProperty:MainViewModel.kt$MainViewModel$private val exchangeRatesLogic: ExchangeRatesLogic + UnusedPrivateProperty:OnboardingRouter.kt$OnboardingRouter$private val exchangeRatesLogic: ExchangeRatesLogic + UnusedPrivateProperty:OnboardingRouter.kt$OnboardingRouter$private val ivyContext: IvyWalletCtx + UnusedPrivateProperty:PlannedPaymentsViewModel.kt$PlannedPaymentsViewModel$private val accountDao: AccountDao + UnusedPrivateProperty:PlannedPaymentsViewModel.kt$PlannedPaymentsViewModel$private val categoryDao: CategoryDao + UnusedPrivateProperty:ReportScreen.kt$val ivyContext = ivyWalletCtx() + UnusedPrivateProperty:ReportScreen.kt$val listState = rememberLazyListState() + UnusedPrivateProperty:ReportViewModel.kt$ReportViewModel$private val settingsDao: SettingsDao + UnusedPrivateProperty:SearchScreen.kt$val ivyContext = ivyWalletCtx() + UnusedPrivateProperty:SearchScreen.kt$val nav = navigation() + UnusedPrivateProperty:SettingsViewModel.kt$SettingsViewModel$private val exchangeRatesLogic: ExchangeRatesLogic + UnusedPrivateProperty:TestViewModel.kt$TestViewModel$private val gitHubClient: GitHubClient + UnusedPrivateProperty:TransactionReminderLogic.kt$TransactionReminderLogic.Companion$private const val UNIQUE_WORK_NAME_V1 = "transaction_reminder_work" + UnusedPrivateProperty:TransactionViewModel.kt$TransactionViewModel$private val saveTrnLocallyAct: SaveTrnLocallyAct + UnusedPrivateProperty:UploadTrnToServerAct.kt$UploadTrnToServerAct$private val dao: TransactionDao + UnusedPrivateProperty:UploadTrnToServerAct.kt$UploadTrnToServerAct$private val ivySession: IvySession + UnusedPrivateProperty:UploadTrnToServerAct.kt$UploadTrnToServerAct$private val service = restClient.transactionService + UnusedPrivateProperty:WalletAccountLogic.kt$WalletAccountLogic$private val accountDao: AccountDao + UnusedPrivateProperty:WalletAccountLogic.kt$WalletAccountLogic$private val exchangeRatesLogic: ExchangeRatesLogic + UnusedPrivateProperty:WalletAccountLogic.kt$WalletAccountLogic$private val settingsDao: SettingsDao + UseCheckOrError:IvyContext.kt$IvyContext$throw IllegalStateException("screenHeight not initialized") + UseCheckOrError:IvyContext.kt$IvyContext$throw IllegalStateException("screenWidth not initialized") + UseCheckOrError:SharedPrefs.kt$SharedPrefs$throw IllegalStateException("SharePrefs key '$key' cannot be null") + UseCheckOrError:ZipUtils.kt$throw IllegalStateException("Location file must be directory or not exist") + UtilityClassWithPublicConstructor:WidgetBase.kt$WidgetBase + ViewModelForwarding:GitHubBackupCard.kt$GitHubBackupStatus(viewModel) + ViewModelForwarding:GitHubBackupCard.kt$LastBackup(viewModel) + ViewModelInjection:AccountsTab.kt$viewModel + ViewModelInjection:AnalyticsReportScreen.kt$viewModel + ViewModelInjection:BalanceScreen.kt$viewModel + ViewModelInjection:BudgetScreen.kt$viewModel + ViewModelInjection:CSVScreen.kt$onboardingViewModel + ViewModelInjection:CSVScreen.kt$viewModel + ViewModelInjection:CategoriesScreen.kt$viewModel + ViewModelInjection:ChartsScreen.kt$viewModel + ViewModelInjection:DonateScreen.kt$viewModel + ViewModelInjection:EditPlannedScreen.kt$viewModel + ViewModelInjection:EditTransactionScreen.kt$viewModel + ViewModelInjection:ExchangeRatesScreen.kt$viewModel + ViewModelInjection:GitHubBackupCard.kt$viewModel + ViewModelInjection:GitHubBackupScreen.kt$viewModel + ViewModelInjection:HomeTab.kt$viewModel + ViewModelInjection:ImportScreen.kt$onboardingViewModel + ViewModelInjection:ImportScreen.kt$viewModel + ViewModelInjection:ItemStatisticScreen.kt$viewModel + ViewModelInjection:LoanDetailsScreen.kt$viewModel + ViewModelInjection:LoansScreen.kt$viewModel + ViewModelInjection:MainScreen.kt$viewModel + ViewModelInjection:OnboardingScreen.kt$viewModel + ViewModelInjection:PaywallScreen.kt$viewModel + ViewModelInjection:PieChartStatisticScreen.kt$viewModel + ViewModelInjection:PlannedPaymentsScreen.kt$viewModel + ViewModelInjection:ReportScreen.kt$viewModel + ViewModelInjection:SearchScreen.kt$viewModel + ViewModelInjection:ServerStopScreen.kt$viewModel + ViewModelInjection:SettingsScreen.kt$viewModel + ViewModelInjection:TestScreen.kt$viewModel + WildcardImport:Accessors32ikgp1isdd8mwexzgbe6rirl.kt$import org.gradle.kotlin.dsl.* + WildcardImport:Accessors32ikgp1isdd8mwexzgbe6rirl.kt$import org.gradle.kotlin.dsl.accessors.runtime.* + WildcardImport:Accessors46nwrg1rs44ofdqpi7vyy3pfc.kt$import org.gradle.kotlin.dsl.* + WildcardImport:Accessors46nwrg1rs44ofdqpi7vyy3pfc.kt$import org.gradle.kotlin.dsl.accessors.runtime.* + WildcardImport:Accessors4ymijgaek646mzru18sdmblu7.kt$import org.gradle.kotlin.dsl.* + WildcardImport:Accessors4ymijgaek646mzru18sdmblu7.kt$import org.gradle.kotlin.dsl.accessors.runtime.* + WildcardImport:Accessors5x03zd2mf47s5vj1qv3jvhdru.kt$import org.gradle.kotlin.dsl.* + WildcardImport:Accessors5x03zd2mf47s5vj1qv3jvhdru.kt$import org.gradle.kotlin.dsl.accessors.runtime.* + WildcardImport:Accessors6m89nhcqblthog8es93pjkmhg.kt$import org.gradle.kotlin.dsl.* + WildcardImport:Accessors6m89nhcqblthog8es93pjkmhg.kt$import org.gradle.kotlin.dsl.accessors.runtime.* + WildcardImport:Accessors72k7tti784t7idmqtg2upvaru.kt$import org.gradle.kotlin.dsl.* + WildcardImport:Accessors72k7tti784t7idmqtg2upvaru.kt$import org.gradle.kotlin.dsl.accessors.runtime.* + WildcardImport:Accessors7hvycqvau4uyj5knata7lx0yx.kt$import org.gradle.kotlin.dsl.* + WildcardImport:Accessors7hvycqvau4uyj5knata7lx0yx.kt$import org.gradle.kotlin.dsl.accessors.runtime.* + WildcardImport:Accessors8lcri9ibgd9oj8dt3t8z8nvfx.kt$import org.gradle.kotlin.dsl.* + WildcardImport:Accessors8lcri9ibgd9oj8dt3t8z8nvfx.kt$import org.gradle.kotlin.dsl.accessors.runtime.* + WildcardImport:Accessorsa5ptgikd9fb816fav4742zvaq.kt$import org.gradle.kotlin.dsl.* + WildcardImport:Accessorsa5ptgikd9fb816fav4742zvaq.kt$import org.gradle.kotlin.dsl.accessors.runtime.* + WildcardImport:Accessorsblypoh2ruc9u3bx9djsfqsntg.kt$import org.gradle.kotlin.dsl.* + WildcardImport:Accessorsblypoh2ruc9u3bx9djsfqsntg.kt$import org.gradle.kotlin.dsl.accessors.runtime.* + WildcardImport:Accessorsbtc8iwv8u9b0f38ikfmodj8ns.kt$import org.gradle.kotlin.dsl.* + WildcardImport:Accessorsbtc8iwv8u9b0f38ikfmodj8ns.kt$import org.gradle.kotlin.dsl.accessors.runtime.* + WildcardImport:Accessorseessl0al0otcsbyqqruvoncpd.kt$import org.gradle.kotlin.dsl.* + WildcardImport:Accessorseessl0al0otcsbyqqruvoncpd.kt$import org.gradle.kotlin.dsl.accessors.runtime.* + WildcardImport:AccountService.kt$import retrofit2.http.* + WildcardImport:AppModuleDI.kt$import com.ivy.wallet.domain.deprecated.logic.* + WildcardImport:AppModuleDI.kt$import com.ivy.wallet.domain.deprecated.logic.csv.* + WildcardImport:AppModuleDI.kt$import com.ivy.wallet.domain.deprecated.sync.item.* + WildcardImport:AppModuleDI.kt$import com.ivy.wallet.domain.deprecated.sync.uploader.* + WildcardImport:AppModuleDI.kt$import com.ivy.wallet.io.network.* + WildcardImport:AppModuleDI.kt$import com.ivy.wallet.io.persistence.dao.* + WildcardImport:AuthService.kt$import com.ivy.wallet.io.network.request.auth.* + WildcardImport:BackupLogic.kt$import com.google.gson.* + WildcardImport:BackupLogic.kt$import com.ivy.wallet.io.persistence.dao.* + WildcardImport:BudgetService.kt$import retrofit2.http.* + WildcardImport:BufferModal.kt$import androidx.compose.runtime.* + WildcardImport:CSVViewModel.kt$import androidx.compose.runtime.* + WildcardImport:CSVViewModel.kt$import com.ivy.wallet.ui.csv.domain.* + WildcardImport:CategoriesViewModel.kt$import kotlinx.coroutines.* + WildcardImport:CategoryModal.kt$import androidx.compose.foundation.layout.* + WildcardImport:CategoryModal.kt$import androidx.compose.runtime.* + WildcardImport:CategoryService.kt$import retrofit2.http.* + WildcardImport:ChooseIconModal.kt$import androidx.compose.foundation.layout.* + WildcardImport:ChooseIconModal.kt$import androidx.compose.runtime.* + WildcardImport:ComposeExt.kt$import androidx.compose.runtime.* + WildcardImport:DateExt.kt$import java.time.* + WildcardImport:DetektConfigurationAccessors.kt$import org.gradle.kotlin.dsl.* + WildcardImport:DetektConfigurationAccessors.kt$import org.gradle.kotlin.dsl.accessors.runtime.* + WildcardImport:DetektPluginsConfigurationAccessors.kt$import org.gradle.kotlin.dsl.* + WildcardImport:DetektPluginsConfigurationAccessors.kt$import org.gradle.kotlin.dsl.accessors.runtime.* + WildcardImport:Dividers.kt$import androidx.compose.foundation.layout.* + WildcardImport:EditPlannedViewModel.kt$import com.ivy.wallet.io.persistence.dao.* + WildcardImport:ExchangeRatesViewModel.kt$import kotlinx.coroutines.flow.* + WildcardImport:FileUtil.kt$import java.io.* + WildcardImport:FromToTimeRange.kt$import com.ivy.wallet.utils.* + WildcardImport:HealthTab.kt$import androidx.compose.foundation.layout.* + WildcardImport:HomeViewModel.kt$import com.ivy.wallet.domain.action.viewmodel.home.* + WildcardImport:ImportType.kt$import com.ivy.wallet.ui.csvimport.flow.instructions.* + WildcardImport:ImportType.kt$import com.ivy.wallet.ui.theme.* + WildcardImport:InputField.kt$import com.ivy.design.l0_system.* + WildcardImport:InputField.kt$import com.ivy.design.utils.* + WildcardImport:ItemStatisticViewModel.kt$import com.ivy.wallet.domain.deprecated.logic.* + WildcardImport:ItemStatisticViewModel.kt$import com.ivy.wallet.io.persistence.dao.* + WildcardImport:ItemStatisticViewModel.kt$import com.ivy.wallet.utils.* + WildcardImport:IvyLineChart.kt$import androidx.compose.runtime.* + WildcardImport:IvyLineChart.kt$import androidx.compose.ui.graphics.* + WildcardImport:IvyRoomDatabase.kt$import androidx.room.* + WildcardImport:IvyRoomDatabase.kt$import com.ivy.wallet.io.persistence.dao.* + WildcardImport:IvyRoomDatabase.kt$import com.ivy.wallet.io.persistence.data.* + WildcardImport:IvyRoomDatabase.kt$import com.ivy.wallet.io.persistence.migration.* + WildcardImport:IvySwitch.kt$import androidx.compose.foundation.layout.* + WildcardImport:IvySwitch.kt$import androidx.compose.runtime.* + WildcardImport:IvySync.kt$import com.ivy.wallet.domain.deprecated.sync.item.* + WildcardImport:IvyToolbar.kt$import androidx.compose.foundation.layout.* + WildcardImport:IvyViewPager.kt$import androidx.compose.foundation.layout.* + WildcardImport:IvyViewPager.kt$import androidx.compose.runtime.* + WildcardImport:IvyWalletCompleteData.kt$import com.ivy.wallet.io.persistence.data.* + WildcardImport:IvyWalletDesign.kt$import com.ivy.design.l0_system.* + WildcardImport:KPIsTab.kt$import androidx.compose.foundation.layout.* + WildcardImport:KPIsTab.kt$import com.ivy.wallet.ui.theme.* + WildcardImport:Keyboard.kt$import androidx.compose.runtime.* + WildcardImport:LoanDetailsViewModel.kt$import com.ivy.wallet.io.persistence.dao.* + WildcardImport:LoanService.kt$import com.ivy.wallet.io.network.request.loan.* + WildcardImport:LoanService.kt$import retrofit2.http.* + WildcardImport:LoanTransactionsCore.kt$import com.ivy.wallet.domain.data.core.* + WildcardImport:LoanTransactionsCore.kt$import com.ivy.wallet.io.persistence.dao.* + WildcardImport:MainScreen.kt$import androidx.compose.runtime.* + WildcardImport:MainScreen.kt$import com.ivy.wallet.ui.* + WildcardImport:OnboardingReportTab.kt$import androidx.compose.foundation.layout.* + WildcardImport:OnboardingReportTab.kt$import com.ivy.wallet.ui.theme.* + WildcardImport:OnboardingScreen.kt$import com.ivy.wallet.ui.onboarding.steps.* + WildcardImport:PieChart.kt$import androidx.compose.foundation.layout.* + WildcardImport:PieChart.kt$import com.ivy.wallet.ui.theme.* + WildcardImport:PlannedPaymentRuleService.kt$import retrofit2.http.* + WildcardImport:PreloadDataLogic.kt$import com.ivy.wallet.ui.theme.* + WildcardImport:ProgressBar.kt$import com.ivy.wallet.ui.theme.* + WildcardImport:ReorderModal.kt$import androidx.compose.foundation.layout.* + WildcardImport:ReorderModal.kt$import androidx.compose.runtime.* + WildcardImport:ReorderModal.kt$import androidx.recyclerview.widget.ItemTouchHelper.* + WildcardImport:ReportViewModel.kt$import com.ivy.wallet.utils.* + WildcardImport:RestClient.kt$import com.ivy.wallet.io.network.service.* + WildcardImport:Spacers.kt$import androidx.compose.foundation.layout.* + WildcardImport:Switch.kt$import androidx.compose.foundation.layout.* + WildcardImport:Switch.kt$import androidx.compose.runtime.* + WildcardImport:TimePeriod.kt$import com.ivy.wallet.utils.* + WildcardImport:TransactionService.kt$import retrofit2.http.* + WildcardImport:UserStatsTab.kt$import androidx.compose.foundation.layout.* + WildcardImport:ViewPager.kt$import androidx.compose.runtime.* + WildcardImport:WalletBalanceWidgetContent.kt$import androidx.glance.layout.* + WildcardImport:ZipUtils.kt$import java.io.* + Wrapping:AccountModal.kt$( + Wrapping:AccountsViewModel.kt$AccountsViewModel$( R.string.total, baseCurrencyCode, totalBalanceWithExcluded.format( baseCurrencyCode ) ) + Wrapping:AmountModal.kt$( + Wrapping:BackupLogic.kt$BackupLogic$( + Wrapping:BackupLogic.kt$BackupLogic$( LocalDateTime::class.java, object : JsonDeserializer<LocalDateTime?> { @Throws(JsonParseException::class) override fun deserialize( json: JsonElement, type: Type?, jsonDeserializationContext: JsonDeserializationContext? ): LocalDateTime? { val instant: Instant = Instant.ofEpochMilli(json.asJsonPrimitive.asLong) return LocalDateTime.ofInstant(instant, ZoneOffset.UTC) } }) + Wrapping:BackupLogic.kt$BackupLogic$( LocalDateTime::class.java, object : JsonSerializer<LocalDateTime?> { @Throws(JsonParseException::class) override fun serialize( src: LocalDateTime?, typeOfSrc: Type?, context: JsonSerializationContext? ): JsonElement { return JsonPrimitive(src!!.toEpochMilli().toString()) } }) + Wrapping:BufferBattery.kt$( + Wrapping:ChartsViewModel.kt$ChartsViewModel$( + Wrapping:ChooseStartDateOfMonthModal.kt$( + Wrapping:CustomExchangeRateCard.kt$( + Wrapping:ItemStatisticViewModel.kt$ItemStatisticViewModel$( + Wrapping:IvyChecklistTextField.kt$( + Wrapping:IvyDescriptionTextField.kt$( + Wrapping:IvyOutlinedTextField.kt$( + Wrapping:IvyViewPager.kt$( + Wrapping:KtorClient.kt$( + Wrapping:Loan.kt$Loan$( + Wrapping:LoanModal.kt$( + Wrapping:LoanRecordModal.kt$( + Wrapping:PlannedPaymentsLogic.kt$PlannedPaymentsLogic$-> + Wrapping:RestClient.kt$RestClient.Companion$( + Wrapping:RootActivity.kt$RootActivity$( Intent().apply { action = Intent.ACTION_SEND putExtra(Intent.EXTRA_STREAM, fileUri) type = "application/zip" }, null ) + Wrapping:RootActivity.kt$RootActivity$( Intent().apply { action = Intent.ACTION_SEND putExtra(Intent.EXTRA_STREAM, fileUri) type = "text/csv" }, null ) + Wrapping:RootActivity.kt$RootActivity$( Intent.EXTRA_SUBJECT, "Ivy Wallet Support Request #" + caseNumber + "0" + BuildConfig.VERSION_CODE ) + Wrapping:SettingsScreen.kt$( R.string.confirm_all_userd_data_deletion, user?.email ?: stringResource( R.string.all_of_your_data ) ) + Wrapping:SettingsScreen.kt$( R.string.delete_all_user_cloud_data_warning, user?.email ?: stringResource( R.string.your_account ) ) + Wrapping:SettingsScreen.kt$( R.string.delete_all_user_data_warning, user?.email ?: stringResource( R.string.your_account ) ) + Wrapping:ViewPager.kt$( + + diff --git a/config/detekt/config.yml b/config/detekt/config.yml new file mode 100644 index 0000000000..c1e3a1e530 --- /dev/null +++ b/config/detekt/config.yml @@ -0,0 +1,1108 @@ +build: + maxIssues: 0 + excludeCorrectable: false + weights: + # complexity: 2 + # LongParameterList: 1 + # style: 1 + # comments: 1 + +config: + validation: true + warningsAsErrors: false + checkExhaustiveness: false + # when writing own rules with new properties, exclude the property path e.g.: 'my_rule_set,.*>.*>[my_property]' + excludes: '' + +processors: + active: true + exclude: + - 'DetektProgressListener' + # - 'KtFileCountProcessor' + # - 'PackageCountProcessor' + # - 'ClassCountProcessor' + # - 'FunctionCountProcessor' + # - 'PropertyCountProcessor' + # - 'ProjectComplexityProcessor' + # - 'ProjectCognitiveComplexityProcessor' + # - 'ProjectLLOCProcessor' + # - 'ProjectCLOCProcessor' + # - 'ProjectLOCProcessor' + # - 'ProjectSLOCProcessor' + # - 'LicenseHeaderLoaderExtension' + +console-reports: + active: true + exclude: + - 'ProjectStatisticsReport' + - 'ComplexityReport' + - 'NotificationReport' + - 'FindingsReport' + - 'FileBasedFindingsReport' + # - 'LiteFindingsReport' + +output-reports: + active: true + exclude: + # - 'TxtOutputReport' + # - 'XmlOutputReport' + # - 'HtmlOutputReport' + # - 'MdOutputReport' + # - 'SarifOutputReport' + +comments: + active: true + AbsentOrWrongFileLicense: + active: false + licenseTemplateFile: 'license.template' + licenseTemplateIsRegex: false + CommentOverPrivateFunction: + active: false + CommentOverPrivateProperty: + active: false + DeprecatedBlockTag: + active: false + EndOfSentenceFormat: + active: false + endOfSentenceFormat: '([.?!][ \t\n\r\f<])|([.?!:]$)' + KDocReferencesNonPublicProperty: + active: false + excludes: ['**/test/**', '**/androidTest/**', '**/androidUnitTest/**', '**/androidInstrumentedTest/**'] + OutdatedDocumentation: + active: false + matchTypeParameters: true + matchDeclarationsOrder: true + allowParamOnConstructorProperties: false + UndocumentedPublicClass: + active: false + excludes: ['**/test/**', '**/androidTest/**', '**/androidUnitTest/**', '**/androidInstrumentedTest/**'] + searchInNestedClass: true + searchInInnerClass: true + searchInInnerObject: true + searchInInnerInterface: true + searchInProtectedClass: false + UndocumentedPublicFunction: + active: false + excludes: ['**/test/**', '**/androidTest/**', '**/androidUnitTest/**', '**/androidInstrumentedTest/**'] + searchProtectedFunction: false + UndocumentedPublicProperty: + active: false + excludes: ['**/test/**', '**/androidTest/**', '**/androidUnitTest/**', '**/androidInstrumentedTest/**'] + searchProtectedProperty: false + +complexity: + active: true + CognitiveComplexMethod: + active: false + threshold: 15 + ComplexCondition: + active: true + threshold: 4 + ComplexInterface: + active: false + threshold: 10 + includeStaticDeclarations: false + includePrivateDeclarations: false + ignoreOverloaded: false + CyclomaticComplexMethod: + active: true + threshold: 15 + ignoreSingleWhenExpression: false + ignoreSimpleWhenEntries: false + ignoreNestingFunctions: false + nestingFunctions: + - 'also' + - 'apply' + - 'forEach' + - 'isNotNull' + - 'ifNull' + - 'let' + - 'run' + - 'use' + - 'with' + LabeledExpression: + active: false + ignoredLabels: [] + LargeClass: + active: true + threshold: 600 + LongMethod: + active: true + threshold: 60 + LongParameterList: + active: true + functionThreshold: 6 + constructorThreshold: 7 + ignoreDefaultParameters: false + ignoreDataClasses: true + ignoreAnnotatedParameter: [] + MethodOverloading: + active: false + threshold: 6 + NamedArguments: + active: false + threshold: 3 + ignoreArgumentsMatchingNames: false + NestedBlockDepth: + active: true + threshold: 4 + NestedScopeFunctions: + active: false + threshold: 1 + functions: + - 'kotlin.apply' + - 'kotlin.run' + - 'kotlin.with' + - 'kotlin.let' + - 'kotlin.also' + ReplaceSafeCallChainWithRun: + active: false + StringLiteralDuplication: + active: false + excludes: ['**/test/**', '**/androidTest/**', '**/androidUnitTest/**', '**/androidInstrumentedTest/**'] + threshold: 3 + ignoreAnnotation: true + excludeStringsWithLessThan5Characters: true + ignoreStringsRegex: '$^' + TooManyFunctions: + active: true + excludes: ['**/test/**', '**/androidTest/**', '**/androidUnitTest/**', '**/androidInstrumentedTest/**'] + thresholdInFiles: 11 + thresholdInClasses: 11 + thresholdInInterfaces: 11 + thresholdInObjects: 11 + thresholdInEnums: 11 + ignoreDeprecated: false + ignorePrivate: false + ignoreOverridden: false + +coroutines: + active: true + GlobalCoroutineUsage: + active: false + InjectDispatcher: + active: true + dispatcherNames: + - 'IO' + - 'Default' + - 'Unconfined' + RedundantSuspendModifier: + active: true + SleepInsteadOfDelay: + active: true + SuspendFunSwallowedCancellation: + active: false + SuspendFunWithCoroutineScopeReceiver: + active: false + SuspendFunWithFlowReturnType: + active: true + +empty-blocks: + active: true + EmptyCatchBlock: + active: true + allowedExceptionNameRegex: '_|(ignore|expected).*' + EmptyClassBlock: + active: true + EmptyDefaultConstructor: + active: true + EmptyDoWhileBlock: + active: true + EmptyElseBlock: + active: true + EmptyFinallyBlock: + active: true + EmptyForBlock: + active: true + EmptyFunctionBlock: + active: true + ignoreOverridden: false + EmptyIfBlock: + active: true + EmptyInitBlock: + active: true + EmptyKtFile: + active: true + EmptySecondaryConstructor: + active: true + EmptyTryBlock: + active: true + EmptyWhenBlock: + active: true + EmptyWhileBlock: + active: true + +exceptions: + active: true + ExceptionRaisedInUnexpectedLocation: + active: true + methodNames: + - 'equals' + - 'finalize' + - 'hashCode' + - 'toString' + InstanceOfCheckForException: + active: true + excludes: ['**/test/**', '**/androidTest/**', '**/androidUnitTest/**', '**/androidInstrumentedTest/**'] + NotImplementedDeclaration: + active: false + ObjectExtendsThrowable: + active: false + PrintStackTrace: + active: true + RethrowCaughtException: + active: true + ReturnFromFinally: + active: true + ignoreLabeled: false + SwallowedException: + active: true + ignoredExceptionTypes: + - 'InterruptedException' + - 'MalformedURLException' + - 'NumberFormatException' + - 'ParseException' + allowedExceptionNameRegex: '_|(ignore|expected).*' + ThrowingExceptionFromFinally: + active: true + ThrowingExceptionInMain: + active: false + ThrowingExceptionsWithoutMessageOrCause: + active: true + excludes: ['**/test/**', '**/androidTest/**', '**/androidUnitTest/**', '**/androidInstrumentedTest/**'] + exceptions: + - 'ArrayIndexOutOfBoundsException' + - 'Exception' + - 'IllegalArgumentException' + - 'IllegalMonitorStateException' + - 'IllegalStateException' + - 'IndexOutOfBoundsException' + - 'NullPointerException' + - 'RuntimeException' + - 'Throwable' + ThrowingNewInstanceOfSameException: + active: true + TooGenericExceptionCaught: + active: true + excludes: ['**/test/**', '**/androidTest/**', '**/androidUnitTest/**', '**/androidInstrumentedTest/**'] + exceptionNames: + - 'ArrayIndexOutOfBoundsException' + - 'Error' + - 'Exception' + - 'IllegalMonitorStateException' + - 'IndexOutOfBoundsException' + - 'NullPointerException' + - 'RuntimeException' + - 'Throwable' + allowedExceptionNameRegex: '_|(ignore|expected).*' + TooGenericExceptionThrown: + active: true + exceptionNames: + - 'Error' + - 'Exception' + - 'RuntimeException' + - 'Throwable' + +naming: + active: true + BooleanPropertyNaming: + active: false + allowedPattern: '^(is|has|are)' + ClassNaming: + active: true + classPattern: '[A-Z][a-zA-Z0-9]*' + ConstructorParameterNaming: + active: true + parameterPattern: '[a-z][A-Za-z0-9]*' + privateParameterPattern: '[a-z][A-Za-z0-9]*' + excludeClassPattern: '$^' + EnumNaming: + active: true + enumEntryPattern: '[A-Z][_a-zA-Z0-9]*' + ForbiddenClassName: + active: false + forbiddenName: [] + FunctionMaxLength: + active: false + maximumFunctionNameLength: 30 + FunctionMinLength: + active: false + minimumFunctionNameLength: 3 + FunctionNaming: + active: true + excludes: ['**/test/**', '**/androidTest/**', '**/androidUnitTest/**', '**/androidInstrumentedTest/**'] + functionPattern: '[a-z][a-zA-Z0-9]*' + excludeClassPattern: '$^' + FunctionParameterNaming: + active: true + parameterPattern: '[a-z][A-Za-z0-9]*' + excludeClassPattern: '$^' + InvalidPackageDeclaration: + active: true + rootPackage: '' + requireRootInDeclaration: false + LambdaParameterNaming: + active: false + parameterPattern: '[a-z][A-Za-z0-9]*|_' + MatchingDeclarationName: + active: true + mustBeFirst: true + MemberNameEqualsClassName: + active: true + ignoreOverridden: true + NoNameShadowing: + active: true + NonBooleanPropertyPrefixedWithIs: + active: false + ObjectPropertyNaming: + active: true + constantPattern: '[A-Za-z][_A-Za-z0-9]*' + propertyPattern: '[A-Za-z][_A-Za-z0-9]*' + privatePropertyPattern: '(_)?[A-Za-z][_A-Za-z0-9]*' + PackageNaming: + active: true + packagePattern: '[a-z]+(\.[a-z][A-Za-z0-9]*)*' + TopLevelPropertyNaming: + active: true + constantPattern: '[A-Z][_A-Z0-9]*' + propertyPattern: '[A-Za-z][_A-Za-z0-9]*' + privatePropertyPattern: '_?[A-Za-z][_A-Za-z0-9]*' + VariableMaxLength: + active: false + maximumVariableNameLength: 64 + VariableMinLength: + active: false + minimumVariableNameLength: 1 + VariableNaming: + active: true + variablePattern: '[a-z][A-Za-z0-9]*' + privateVariablePattern: '(_)?[a-z][A-Za-z0-9]*' + excludeClassPattern: '$^' + +performance: + active: true + ArrayPrimitive: + active: true + CouldBeSequence: + active: false + threshold: 3 + ForEachOnRange: + active: true + excludes: ['**/test/**', '**/androidTest/**', '**/androidUnitTest/**', '**/androidInstrumentedTest/**'] + SpreadOperator: + active: true + excludes: ['**/test/**', '**/androidTest/**', '**/androidUnitTest/**', '**/androidInstrumentedTest/**'] + UnnecessaryPartOfBinaryExpression: + active: false + UnnecessaryTemporaryInstantiation: + active: true + +potential-bugs: + active: true + AvoidReferentialEquality: + active: true + forbiddenTypePatterns: + - 'kotlin.String' + CastNullableToNonNullableType: + active: false + CastToNullableType: + active: false + Deprecation: + active: false + DontDowncastCollectionTypes: + active: false + DoubleMutabilityForCollection: + active: true + mutableTypes: + - 'kotlin.collections.MutableList' + - 'kotlin.collections.MutableMap' + - 'kotlin.collections.MutableSet' + - 'java.util.ArrayList' + - 'java.util.LinkedHashSet' + - 'java.util.HashSet' + - 'java.util.LinkedHashMap' + - 'java.util.HashMap' + ElseCaseInsteadOfExhaustiveWhen: + active: false + ignoredSubjectTypes: [] + EqualsAlwaysReturnsTrueOrFalse: + active: true + EqualsWithHashCodeExist: + active: true + ExitOutsideMain: + active: false + ExplicitGarbageCollectionCall: + active: true + HasPlatformType: + active: true + IgnoredReturnValue: + active: true + restrictToConfig: true + returnValueAnnotations: + - 'CheckResult' + - '*.CheckResult' + - 'CheckReturnValue' + - '*.CheckReturnValue' + ignoreReturnValueAnnotations: + - 'CanIgnoreReturnValue' + - '*.CanIgnoreReturnValue' + returnValueTypes: + - 'kotlin.sequences.Sequence' + - 'kotlinx.coroutines.flow.*Flow' + - 'java.util.stream.*Stream' + ignoreFunctionCall: [] + ImplicitDefaultLocale: + active: true + ImplicitUnitReturnType: + active: false + allowExplicitReturnType: true + InvalidRange: + active: true + IteratorHasNextCallsNextMethod: + active: true + IteratorNotThrowingNoSuchElementException: + active: true + LateinitUsage: + active: false + excludes: ['**/test/**', '**/androidTest/**', '**/androidUnitTest/**', '**/androidInstrumentedTest/**'] + ignoreOnClassesPattern: '' + MapGetWithNotNullAssertionOperator: + active: true + MissingPackageDeclaration: + active: false + excludes: ['**/*.kts'] + NullCheckOnMutableProperty: + active: false + NullableToStringCall: + active: false + PropertyUsedBeforeDeclaration: + active: false + UnconditionalJumpStatementInLoop: + active: false + UnnecessaryNotNullCheck: + active: false + UnnecessaryNotNullOperator: + active: true + UnnecessarySafeCall: + active: true + UnreachableCatchBlock: + active: true + UnreachableCode: + active: true + UnsafeCallOnNullableType: + active: true + excludes: ['**/test/**', '**/androidTest/**', '**/androidUnitTest/**', '**/androidInstrumentedTest/**'] + UnsafeCast: + active: true + UnusedUnaryOperator: + active: true + UselessPostfixExpression: + active: true + WrongEqualsTypeParameter: + active: true + +style: + active: true + AlsoCouldBeApply: + active: false + BracesOnIfStatements: + active: false + singleLine: 'never' + multiLine: 'always' + # OptionalWhenBraces is the deprecated rule, use OptionalWhenBraces instead. + # Use it now because BracesOnWhenStatements doesn't work as expected + # https://github.com/detekt/detekt/issues/6377 + # Delete OptionalWhenBraces rule config after detekt#6377 fix + OptionalWhenBraces: + active: false + BracesOnWhenStatements: + active: false + singleLine: 'necessary' + multiLine: 'consistent' + CanBeNonNullable: + active: false + CascadingCallWrapping: + active: false + includeElvis: true + ClassOrdering: + active: false + CollapsibleIfStatements: + active: false + DataClassContainsFunctions: + active: false + conversionFunctionPrefix: + - 'to' + allowOperators: false + DataClassShouldBeImmutable: + active: false + DestructuringDeclarationWithTooManyEntries: + active: true + maxDestructuringEntries: 3 + DoubleNegativeLambda: + active: false + negativeFunctions: + - reason: 'Use `takeIf` instead.' + value: 'takeUnless' + - reason: 'Use `all` instead.' + value: 'none' + negativeFunctionNameParts: + - 'not' + - 'non' + EqualsNullCall: + active: true + EqualsOnSignatureLine: + active: false + ExplicitCollectionElementAccessMethod: + active: false + ExplicitItLambdaParameter: + active: true + ExpressionBodySyntax: + active: false + includeLineWrapping: false + ForbiddenAnnotation: + active: false + annotations: + - reason: 'it is a java annotation. Use `Suppress` instead.' + value: 'java.lang.SuppressWarnings' + - reason: 'it is a java annotation. Use `kotlin.Deprecated` instead.' + value: 'java.lang.Deprecated' + - reason: 'it is a java annotation. Use `kotlin.annotation.MustBeDocumented` instead.' + value: 'java.lang.annotation.Documented' + - reason: 'it is a java annotation. Use `kotlin.annotation.Target` instead.' + value: 'java.lang.annotation.Target' + - reason: 'it is a java annotation. Use `kotlin.annotation.Retention` instead.' + value: 'java.lang.annotation.Retention' + - reason: 'it is a java annotation. Use `kotlin.annotation.Repeatable` instead.' + value: 'java.lang.annotation.Repeatable' + - reason: 'Kotlin does not support @Inherited annotation, see https://youtrack.jetbrains.com/issue/KT-22265' + value: 'java.lang.annotation.Inherited' + ForbiddenComment: + active: true + comments: + - reason: 'Forbidden FIXME todo marker in comment, please fix the problem.' + value: 'FIXME:' + - reason: 'Forbidden STOPSHIP todo marker in comment, please address the problem before shipping the code.' + value: 'STOPSHIP:' + - reason: 'Forbidden TODO todo marker in comment, please do the changes.' + value: 'TODO:' + allowedPatterns: '' + ForbiddenImport: + active: false + imports: [] + forbiddenPatterns: '' + ForbiddenMethodCall: + active: false + methods: + - reason: 'print does not allow you to configure the output stream. Use a logger instead.' + value: 'kotlin.io.print' + - reason: 'println does not allow you to configure the output stream. Use a logger instead.' + value: 'kotlin.io.println' + ForbiddenSuppress: + active: false + rules: [] + ForbiddenVoid: + active: true + ignoreOverridden: false + ignoreUsageInGenerics: false + FunctionOnlyReturningConstant: + active: true + ignoreOverridableFunction: true + ignoreActualFunction: true + excludedFunctions: [] + LoopWithTooManyJumpStatements: + active: true + maxJumpCount: 1 + MagicNumber: + active: true + excludes: ['**/test/**', '**/androidTest/**', '**/androidUnitTest/**', '**/androidInstrumentedTest/**', '**/*.kts'] + ignoreNumbers: + - '-1' + - '0' + - '1' + - '2' + ignoreHashCodeFunction: true + ignorePropertyDeclaration: false + ignoreLocalVariableDeclaration: false + ignoreConstantDeclaration: true + ignoreCompanionObjectPropertyDeclaration: true + ignoreAnnotation: false + ignoreNamedArgument: true + ignoreEnums: false + ignoreRanges: false + ignoreExtensionFunctions: true + MandatoryBracesLoops: + active: false + MaxChainedCallsOnSameLine: + active: false + maxChainedCalls: 5 + MaxLineLength: + active: true + maxLineLength: 120 + excludePackageStatements: true + excludeImportStatements: true + excludeCommentStatements: false + excludeRawStrings: true + MayBeConst: + active: true + ModifierOrder: + active: true + MultilineLambdaItParameter: + active: false + MultilineRawStringIndentation: + active: false + indentSize: 4 + trimmingMethods: + - 'trimIndent' + - 'trimMargin' + NestedClassesVisibility: + active: true + NewLineAtEndOfFile: + active: true + NoTabs: + active: false + NullableBooleanCheck: + active: false + ObjectLiteralToLambda: + active: true + OptionalAbstractKeyword: + active: true + OptionalUnit: + active: false + PreferToOverPairSyntax: + active: false + ProtectedMemberInFinalClass: + active: true + RedundantExplicitType: + active: false + RedundantHigherOrderMapUsage: + active: true + RedundantVisibilityModifierRule: + active: false + ReturnCount: + active: true + max: 2 + excludedFunctions: + - 'equals' + excludeLabeled: false + excludeReturnFromLambda: true + excludeGuardClauses: false + SafeCast: + active: true + SerialVersionUIDInSerializableClass: + active: true + SpacingBetweenPackageAndImports: + active: false + StringShouldBeRawString: + active: false + maxEscapedCharacterCount: 2 + ignoredCharacters: [] + ThrowsCount: + active: true + max: 2 + excludeGuardClauses: false + TrailingWhitespace: + active: false + TrimMultilineRawString: + active: false + trimmingMethods: + - 'trimIndent' + - 'trimMargin' + UnderscoresInNumericLiterals: + active: false + acceptableLength: 4 + allowNonStandardGrouping: false + UnnecessaryAbstractClass: + active: true + UnnecessaryAnnotationUseSiteTarget: + active: false + UnnecessaryApply: + active: true + UnnecessaryBackticks: + active: false + UnnecessaryBracesAroundTrailingLambda: + active: false + UnnecessaryFilter: + active: true + UnnecessaryInheritance: + active: true + UnnecessaryInnerClass: + active: false + UnnecessaryLet: + active: false + UnnecessaryParentheses: + active: false + allowForUnclearPrecedence: false + UntilInsteadOfRangeTo: + active: false + UnusedImports: + active: false + UnusedParameter: + active: true + allowedNames: 'ignored|expected' + UnusedPrivateClass: + active: true + UnusedPrivateMember: + active: true + allowedNames: '' + UnusedPrivateProperty: + active: true + allowedNames: '_|ignored|expected|serialVersionUID' + UseAnyOrNoneInsteadOfFind: + active: true + UseArrayLiteralsInAnnotations: + active: true + UseCheckNotNull: + active: true + UseCheckOrError: + active: true + UseDataClass: + active: false + allowVars: false + UseEmptyCounterpart: + active: false + UseIfEmptyOrIfBlank: + active: false + UseIfInsteadOfWhen: + active: false + ignoreWhenContainingVariableDeclaration: false + UseIsNullOrEmpty: + active: true + UseLet: + active: false + UseOrEmpty: + active: true + UseRequire: + active: true + UseRequireNotNull: + active: true + UseSumOfInsteadOfFlatMapSize: + active: false + UselessCallOnNotNull: + active: true + UtilityClassWithPublicConstructor: + active: true + VarCouldBeVal: + active: true + ignoreLateinitVar: false + WildcardImport: + active: true + excludeImports: + - 'java.util.*' + +compiler: + CompilerInfo: + active: false + ignoreDiagnostic: [] + CompilerWarning: + active: true + ignoreDiagnostic: + - 'OPT_IN_IS_NOT_ENABLED' + +formatting: + active: true + android: false + autoCorrect: true + AnnotationOnSeparateLine: + active: true + autoCorrect: true + indentSize: 4 + AnnotationSpacing: + active: true + autoCorrect: true + ArgumentListWrapping: + active: true + autoCorrect: true + indentSize: 4 + maxLineLength: 120 + BlockCommentInitialStarAlignment: + active: true + autoCorrect: true + ChainWrapping: + active: true + autoCorrect: true + indentSize: 4 + ClassName: + active: false + CommentSpacing: + active: true + autoCorrect: true + CommentWrapping: + active: true + autoCorrect: true + indentSize: 4 + ContextReceiverMapping: + active: false + autoCorrect: true + maxLineLength: 120 + indentSize: 4 + DiscouragedCommentLocation: + active: false + autoCorrect: true + EnumEntryNameCase: + active: true + autoCorrect: true + EnumWrapping: + active: false + autoCorrect: true + indentSize: 4 + Filename: + active: true + FinalNewline: + active: true + autoCorrect: true + insertFinalNewLine: true + FunKeywordSpacing: + active: true + autoCorrect: true + FunctionName: + active: false + FunctionReturnTypeSpacing: + active: true + autoCorrect: true + maxLineLength: 120 + FunctionSignature: + active: false + autoCorrect: true + forceMultilineWhenParameterCountGreaterOrEqualThan: 2147483647 + functionBodyExpressionWrapping: 'default' + maxLineLength: 120 + indentSize: 4 + FunctionStartOfBodySpacing: + active: true + autoCorrect: true + FunctionTypeReferenceSpacing: + active: true + autoCorrect: true + IfElseBracing: + active: false + autoCorrect: true + indentSize: 4 + IfElseWrapping: + active: false + autoCorrect: true + indentSize: 4 + ImportOrdering: + active: true + autoCorrect: true + layout: '*,java.**,javax.**,kotlin.**,^' + Indentation: + active: true + autoCorrect: true + indentSize: 4 + KdocWrapping: + active: true + autoCorrect: true + indentSize: 4 + MaximumLineLength: + active: true + maxLineLength: 120 + ignoreBackTickedIdentifier: false + ModifierListSpacing: + active: true + autoCorrect: true + ModifierOrdering: + active: true + autoCorrect: true + MultiLineIfElse: + active: true + autoCorrect: true + indentSize: 4 + MultilineExpressionWrapping: + active: false + autoCorrect: true + indentSize: 4 + NoBlankLineBeforeRbrace: + active: true + autoCorrect: true + NoBlankLineInList: + active: false + autoCorrect: true + NoBlankLinesInChainedMethodCalls: + active: true + autoCorrect: true + NoConsecutiveBlankLines: + active: true + autoCorrect: true + NoConsecutiveComments: + active: false + NoEmptyClassBody: + active: true + autoCorrect: true + NoEmptyFirstLineInClassBody: + active: false + autoCorrect: true + indentSize: 4 + NoEmptyFirstLineInMethodBlock: + active: true + autoCorrect: true + NoLineBreakAfterElse: + active: true + autoCorrect: true + NoLineBreakBeforeAssignment: + active: true + autoCorrect: true + NoMultipleSpaces: + active: true + autoCorrect: true + NoSemicolons: + active: true + autoCorrect: true + NoSingleLineBlockComment: + active: false + autoCorrect: true + indentSize: 4 + NoTrailingSpaces: + active: true + autoCorrect: true + NoUnitReturn: + active: true + autoCorrect: true + NoUnusedImports: + active: true + autoCorrect: true + NoWildcardImports: + active: true + packagesToUseImportOnDemandProperty: 'java.util.*,kotlinx.android.synthetic.**' + NullableTypeSpacing: + active: true + autoCorrect: true + PackageName: + active: true + autoCorrect: true + ParameterListSpacing: + active: false + autoCorrect: true + ParameterListWrapping: + active: true + autoCorrect: true + maxLineLength: 120 + indentSize: 4 + ParameterWrapping: + active: true + autoCorrect: true + indentSize: 4 + maxLineLength: 120 + PropertyName: + active: false + PropertyWrapping: + active: true + autoCorrect: true + indentSize: 4 + maxLineLength: 120 + SpacingAroundAngleBrackets: + active: true + autoCorrect: true + SpacingAroundColon: + active: true + autoCorrect: true + SpacingAroundComma: + active: true + autoCorrect: true + SpacingAroundCurly: + active: true + autoCorrect: true + SpacingAroundDot: + active: true + autoCorrect: true + SpacingAroundDoubleColon: + active: true + autoCorrect: true + SpacingAroundKeyword: + active: true + autoCorrect: true + SpacingAroundOperators: + active: true + autoCorrect: true + SpacingAroundParens: + active: true + autoCorrect: true + SpacingAroundRangeOperator: + active: true + autoCorrect: true + SpacingAroundUnaryOperator: + active: true + autoCorrect: true + SpacingBetweenDeclarationsWithAnnotations: + active: true + autoCorrect: true + SpacingBetweenDeclarationsWithComments: + active: true + autoCorrect: true + SpacingBetweenFunctionNameAndOpeningParenthesis: + active: true + autoCorrect: true + StringTemplate: + active: true + autoCorrect: true + StringTemplateIndent: + active: false + autoCorrect: true + indentSize: 4 + TrailingCommaOnCallSite: + active: false + autoCorrect: true + useTrailingCommaOnCallSite: true + TrailingCommaOnDeclarationSite: + active: false + autoCorrect: true + useTrailingCommaOnDeclarationSite: true + TryCatchFinallySpacing: + active: false + autoCorrect: true + indentSize: 4 + TypeArgumentListSpacing: + active: false + autoCorrect: true + indentSize: 4 + TypeParameterListSpacing: + active: false + autoCorrect: true + indentSize: 4 + UnnecessaryParenthesesBeforeTrailingLambda: + active: true + autoCorrect: true + Wrapping: + active: true + autoCorrect: true + indentSize: 4 + maxLineLength: 120 + +Compose: + CompositionLocalAllowlist: + active: true + ContentEmitterReturningValues: + active: true + DefaultsVisibility: + active: true + ModifierComposable: + active: true + ModifierMissing: + active: true + ModifierNaming: + active: true + ModifierNotUsedAtRoot: + active: true + ModifierReused: + active: true + ModifierWithoutDefault: + active: true + MultipleEmitters: + active: true + MutableParams: + active: true + ComposableNaming: + active: true + ComposableParamOrder: + active: true + PreviewNaming: + active: true + PreviewPublic: + active: true + RememberMissing: + active: true + UnstableCollections: + active: true + ViewModelForwarding: + active: true + ViewModelInjection: + active: true diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 0af22146f0..492e4b655f 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -23,6 +23,11 @@ google-play-core = "1.10.0" google-play-core-ktx = "1.8.1" firebase-crashlytics = "17.3.0" +# Linters +detekt = "1.23.1" # https://detekt.dev/docs/gettingstarted/gradle/ +detekt-ruleset-compiler = "0.0.2" # https://github.com/BraisGabin/detekt-compiler-rules/releases +detekt-ruleset-compose = "0.2.1" # https://github.com/mrmans0n/compose-rules/releases + [libraries] kotlin-stdlib = { module = "org.jetbrains.kotlin:kotlin-stdlib", version.ref = "kotlin" } kotlin-coroutines-core = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core", version.ref = "kotlin-coroutines" } @@ -69,6 +74,12 @@ google-play-core = { module = "com.google.android.play:core", version.ref = "goo google-play-core-ktx = { module = "com.google.android.play:core-ktx", version.ref = "google-play-core-ktx" } firebase-crashlytics = { module = "com.google.firebase:firebase-crashlytics", version.ref = "firebase-crashlytics" } +# Linters +detekt-gradle = { module = "io.gitlab.arturbosch.detekt:detekt-gradle-plugin", version.ref = "detekt" } +detekt-ruleset-compiler = { module = "com.braisgabin.detekt:kotlin-compiler-wrapper", version.ref = "detekt-ruleset-compiler" } +detekt-ruleset-ktlint = { module = "io.gitlab.arturbosch.detekt:detekt-formatting", version.ref = "detekt" } +detekt-ruleset-compose = { module = "io.nlopez.compose.rules:detekt", version.ref = "detekt-ruleset-compose" } + [bundles] kotlin = [ "kotlin-stdlib", diff --git a/ivy-design/build.gradle.kts b/ivy-design/build.gradle.kts index ba5f63cb8c..2f577fc466 100644 --- a/ivy-design/build.gradle.kts +++ b/ivy-design/build.gradle.kts @@ -62,4 +62,4 @@ dependencies { implementation(libs.bundles.arrow) implementation(libs.bundles.kotlin) implementation(libs.bundles.compose) -} \ No newline at end of file +}