Initial commit: Open sourcing all of the Maple Open Technologies code.

This commit is contained in:
Bartlomiej Mika 2025-12-02 14:33:08 -05:00
commit 755d54a99d
2010 changed files with 448675 additions and 0 deletions

View file

@ -0,0 +1,19 @@
package syncstate
import (
"codeberg.org/mapleopentech/monorepo/native/desktop/maplefile/internal/domain/syncstate"
)
type GetUseCase struct {
syncStateRepo syncstate.Repository
}
// ProvideGetUseCase creates the use case for Wire
func ProvideGetUseCase(syncStateRepo syncstate.Repository) *GetUseCase {
return &GetUseCase{syncStateRepo: syncStateRepo}
}
// Execute retrieves the current sync state
func (uc *GetUseCase) Execute() (*syncstate.SyncState, error) {
return uc.syncStateRepo.Get()
}

View file

@ -0,0 +1,19 @@
package syncstate
import (
"codeberg.org/mapleopentech/monorepo/native/desktop/maplefile/internal/domain/syncstate"
)
type ResetUseCase struct {
syncStateRepo syncstate.Repository
}
// ProvideResetUseCase creates the use case for Wire
func ProvideResetUseCase(syncStateRepo syncstate.Repository) *ResetUseCase {
return &ResetUseCase{syncStateRepo: syncStateRepo}
}
// Execute resets the sync state for a fresh sync
func (uc *ResetUseCase) Execute() error {
return uc.syncStateRepo.Reset()
}

View file

@ -0,0 +1,19 @@
package syncstate
import (
"codeberg.org/mapleopentech/monorepo/native/desktop/maplefile/internal/domain/syncstate"
)
type SaveUseCase struct {
syncStateRepo syncstate.Repository
}
// ProvideSaveUseCase creates the use case for Wire
func ProvideSaveUseCase(syncStateRepo syncstate.Repository) *SaveUseCase {
return &SaveUseCase{syncStateRepo: syncStateRepo}
}
// Execute saves the sync state
func (uc *SaveUseCase) Execute(state *syncstate.SyncState) error {
return uc.syncStateRepo.Save(state)
}