Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -22,26 +22,12 @@ import com.ahmadkharfan.androidstudiolite.domain.repository.GitOperationMonitor
import com.ahmadkharfan.androidstudiolite.domain.repository.WorkspaceWriteGate
import com.ahmadkharfan.androidstudiolite.domain.usecase.CloneProjectUseCase
import com.ahmadkharfan.androidstudiolite.domain.usecase.ProjectPathResolver
import com.ahmadkharfan.androidstudiolite.feature.projects.clonerepo.CloneRepoViewModel
import com.ahmadkharfan.androidstudiolite.feature.editor.assets.AssetsViewModel
import com.ahmadkharfan.androidstudiolite.feature.git.api.GitPanelApi
import com.ahmadkharfan.androidstudiolite.feature.git.GitPanelApiImpl
import com.ahmadkharfan.androidstudiolite.feature.git.GitPanelViewModel
import com.ahmadkharfan.androidstudiolite.feature.git.diff.GitDiffViewModel
import com.ahmadkharfan.androidstudiolite.feature.git.history.GitBlameViewModel
import com.ahmadkharfan.androidstudiolite.feature.git.history.GitHistoryViewModel
import com.ahmadkharfan.androidstudiolite.feature.git.refs.GitRefsViewModel
import com.ahmadkharfan.androidstudiolite.feature.git.conflict.GitConflictViewModel
import com.ahmadkharfan.androidstudiolite.feature.settings.gitauth.GitAuthSettingsViewModel
import org.koin.android.ext.koin.androidContext
import org.koin.core.module.dsl.viewModel
import org.koin.core.module.dsl.viewModelOf
import org.koin.dsl.module

private val Context.gitAuthorDataStore: DataStore<Preferences> by preferencesDataStore(name = "git_author")

val gitModule = module {
single<GitPanelApi> { GitPanelApiImpl() }
single<GitCredentialStore> { EncryptedGitCredentialStore(androidContext()) }
single<GitHubDeviceAuthenticator> {
GitHubDeviceFlowAuthenticator(
Expand Down Expand Up @@ -75,75 +61,7 @@ val gitModule = module {
}


viewModelOf(::CloneRepoViewModel)


viewModel { params ->
GitPanelViewModel(
projectId = params.get(),
projectPathResolver = get(),
gitRepository = get(),
operationMonitor = get(),
credentialStore = get(),
authenticator = get(),
)
}
viewModel { params ->
GitDiffViewModel(
projectId = params[0],
path = params[1],
target = params[2],
commitId = params.get<String>(3).takeIf { it.isNotBlank() },
projectPathResolver = get(),
gitRepository = get(),
)
}
viewModel { params ->
GitHistoryViewModel(
projectId = params[0],

requestedPath = params.get<String>(1).takeIf { it.isNotBlank() },
projectPathResolver = get(),
gitRepository = get(),
)
}
viewModel { params ->
GitBlameViewModel(
projectId = params[0],
requestedPath = params[1],
projectPathResolver = get(),
gitRepository = get(),
)
}
viewModel { params ->
GitRefsViewModel(
projectId = params[0],
mode = params[1],
projectPathResolver = get(),
gitRepository = get(),
credentialStore = get(),
authenticator = get(),
)
}
viewModel { params ->
GitConflictViewModel(
projectId = params.get(),
projectPathResolver = get(),
gitRepository = get(),
)
}

viewModel { params ->
AssetsViewModel(
projectId = params.get(),
projectPathResolver = get(),
)
}
viewModel {
GitAuthSettingsViewModel(
credentialStore = get(),
authenticator = get(),
gitAuthorStore = get(),
)
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ package com.ahmadkharfan.androidstudiolite.di

import com.ahmadkharfan.androidstudiolite.core.network.NetworkMonitor
import com.ahmadkharfan.androidstudiolite.feature.editor.di.editorModule
import com.ahmadkharfan.androidstudiolite.feature.git.di.gitPresentationModule
import com.ahmadkharfan.androidstudiolite.feature.onboarding.di.onboardingModule
import com.ahmadkharfan.androidstudiolite.feature.projects.di.projectsModule
import com.ahmadkharfan.androidstudiolite.feature.settings.di.settingsModule
Expand All @@ -20,6 +21,7 @@ private val featureModules = listOf(
projectsModule,
terminalFeatureModule,
editorModule,
gitPresentationModule,
)

val appModules = listOf(dataModule, gradleModule)
Expand Down
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
63
64
0
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
8 changes: 4 additions & 4 deletions feature/editor/presentation/build/reports/detekt/detekt.html
Original file line number Diff line number Diff line change
Expand Up @@ -170,9 +170,9 @@ <h2>Complexity Report</h2>

<div>
<ul>
<li>12,749 lines of code (loc)</li>
<li>11,938 source lines of code (sloc)</li>
<li>8,817 logical lines of code (lloc)</li>
<li>12,753 lines of code (loc)</li>
<li>11,942 source lines of code (sloc)</li>
<li>8,819 logical lines of code (lloc)</li>
<li>2 comment lines of code (cloc)</li>
<li>2,748 cyclomatic complexity (mcc)</li>
<li>1,609 cognitive complexity</li>
Expand All @@ -188,7 +188,7 @@ <h2>Findings</h2>
<div>Total: 0</div>


generated with <a href="https://detekt.dev/">detekt version 1.23.8</a> on 2026-07-30 08:30:57 UTC.
generated with <a href="https://detekt.dev/">detekt version 1.23.8</a> on 2026-07-30 08:49:50 UTC.

</body>
</html>
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ <h2>summary</h2>
</td>
<td>
<div class="infoBox duration">
<div class="counter">0.016s</div>
<div class="counter">0.024s</div>
<p>duration</p>
</div>
</td>
Expand Down Expand Up @@ -94,7 +94,7 @@ <h2>summary</h2>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0.001s</td>
<td>0s</td>
<td class="success">100%</td>
</tr>
<tr>
Expand All @@ -103,7 +103,7 @@ <h2>summary</h2>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0.002s</td>
<td>0s</td>
<td class="success">100%</td>
</tr>
<tr>
Expand All @@ -112,7 +112,7 @@ <h2>summary</h2>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0s</td>
<td>0.001s</td>
<td class="success">100%</td>
</tr>
<tr>
Expand All @@ -121,7 +121,7 @@ <h2>summary</h2>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0s</td>
<td>0.001s</td>
<td class="success">100%</td>
</tr>
<tr>
Expand All @@ -148,7 +148,7 @@ <h2>summary</h2>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0.001s</td>
<td>0.005s</td>
<td class="success">100%</td>
</tr>
<tr>
Expand All @@ -175,7 +175,7 @@ <h2>summary</h2>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0.001s</td>
<td>0s</td>
<td class="success">100%</td>
</tr>
<tr>
Expand All @@ -193,7 +193,7 @@ <h2>summary</h2>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0.004s</td>
<td>0.001s</td>
<td class="success">100%</td>
</tr>
<tr>
Expand All @@ -202,7 +202,7 @@ <h2>summary</h2>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0s</td>
<td>0.002s</td>
<td class="success">100%</td>
</tr>
<tr>
Expand All @@ -229,7 +229,7 @@ <h2>summary</h2>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0s</td>
<td>0.001s</td>
<td class="success">100%</td>
</tr>
<tr>
Expand Down Expand Up @@ -283,7 +283,7 @@ <h2>summary</h2>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0.003s</td>
<td>0.001s</td>
<td class="success">100%</td>
</tr>
<tr>
Expand All @@ -308,7 +308,7 @@ <h2>summary</h2>
<input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/>
</label>
</div>Generated by
<a href="https://www.gradle.org">Gradle 9.4.1</a> at Jul 30, 2026, 11:32:56 AM</p>
<a href="https://www.gradle.org">Gradle 9.4.1</a> at Jul 30, 2026, 11:49:52 AM</p>
</div>
</div>
</body>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ <h2>summary</h2>
</td>
<td>
<div class="infoBox duration">
<div class="counter">0.015s</div>
<div class="counter">0.030s</div>
<p>duration</p>
</div>
</td>
Expand Down Expand Up @@ -94,7 +94,7 @@ <h2>summary</h2>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0.002s</td>
<td>0.001s</td>
<td class="success">100%</td>
</tr>
<tr>
Expand All @@ -103,7 +103,7 @@ <h2>summary</h2>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0.002s</td>
<td>0.003s</td>
<td class="success">100%</td>
</tr>
<tr>
Expand All @@ -112,7 +112,7 @@ <h2>summary</h2>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0.007s</td>
<td>0.011s</td>
<td class="success">100%</td>
</tr>
<tr>
Expand All @@ -121,7 +121,7 @@ <h2>summary</h2>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0s</td>
<td>0.012s</td>
<td class="success">100%</td>
</tr>
</table>
Expand All @@ -137,7 +137,7 @@ <h2>summary</h2>
<input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/>
</label>
</div>Generated by
<a href="https://www.gradle.org">Gradle 9.4.1</a> at Jul 30, 2026, 11:32:56 AM</p>
<a href="https://www.gradle.org">Gradle 9.4.1</a> at Jul 30, 2026, 11:49:52 AM</p>
</div>
</div>
</body>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ <h2>summary</h2>
</td>
<td>
<div class="infoBox duration">
<div class="counter">0.001s</div>
<div class="counter">0.008s</div>
<p>duration</p>
</div>
</td>
Expand Down Expand Up @@ -94,7 +94,7 @@ <h2>summary</h2>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0s</td>
<td>0.001s</td>
<td class="success">100%</td>
</tr>
<tr>
Expand All @@ -103,7 +103,7 @@ <h2>summary</h2>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0.001s</td>
<td>0.003s</td>
<td class="success">100%</td>
</tr>
<tr>
Expand Down Expand Up @@ -139,7 +139,7 @@ <h2>summary</h2>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0s</td>
<td>0.001s</td>
<td class="success">100%</td>
</tr>
</table>
Expand All @@ -155,7 +155,7 @@ <h2>summary</h2>
<input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/>
</label>
</div>Generated by
<a href="https://www.gradle.org">Gradle 9.4.1</a> at Jul 30, 2026, 11:32:56 AM</p>
<a href="https://www.gradle.org">Gradle 9.4.1</a> at Jul 30, 2026, 11:49:52 AM</p>
</div>
</div>
</body>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ <h2>summary</h2>
</td>
<td>
<div class="infoBox duration">
<div class="counter">0.007s</div>
<div class="counter">0.011s</div>
<p>duration</p>
</div>
</td>
Expand Down Expand Up @@ -103,7 +103,7 @@ <h2>summary</h2>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0.004s</td>
<td>0.005s</td>
<td class="success">100%</td>
</tr>
</table>
Expand All @@ -119,7 +119,7 @@ <h2>summary</h2>
<input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/>
</label>
</div>Generated by
<a href="https://www.gradle.org">Gradle 9.4.1</a> at Jul 30, 2026, 11:32:56 AM</p>
<a href="https://www.gradle.org">Gradle 9.4.1</a> at Jul 30, 2026, 11:49:52 AM</p>
</div>
</div>
</body>
Expand Down
Loading
Loading