feat: auth screen with auto-redirect, sync favorites/history with backend

This commit is contained in:
nk
2026-06-02 19:12:07 +03:00
parent d4adb1e7be
commit a83672b455
2934 changed files with 97351 additions and 163 deletions

View File

@@ -0,0 +1,61 @@
package com.radiola.service;
import androidx.annotation.CallSuper;
import androidx.media3.session.MediaSessionService;
import dagger.hilt.android.internal.managers.ServiceComponentManager;
import dagger.hilt.internal.GeneratedComponentManagerHolder;
import dagger.hilt.internal.UnsafeCasts;
import java.lang.Object;
import java.lang.Override;
import javax.annotation.processing.Generated;
/**
* A generated base class to be extended by the @dagger.hilt.android.AndroidEntryPoint annotated class. If using the Gradle plugin, this is swapped as the base class via bytecode transformation.
*/
@Generated("dagger.hilt.android.processor.internal.androidentrypoint.ServiceGenerator")
public abstract class Hilt_PlayerService extends MediaSessionService implements GeneratedComponentManagerHolder {
private volatile ServiceComponentManager componentManager;
private final Object componentManagerLock = new Object();
private boolean injected = false;
Hilt_PlayerService() {
super();
}
@CallSuper
@Override
public void onCreate() {
inject();
super.onCreate();
}
protected ServiceComponentManager createComponentManager() {
return new ServiceComponentManager(this);
}
@Override
public final ServiceComponentManager componentManager() {
if (componentManager == null) {
synchronized (componentManagerLock) {
if (componentManager == null) {
componentManager = createComponentManager();
}
}
}
return componentManager;
}
protected void inject() {
if (!injected) {
injected = true;
((PlayerService_GeneratedInjector) this.generatedComponent()).injectPlayerService(UnsafeCasts.<PlayerService>unsafeCast(this));
}
}
@Override
public final Object generatedComponent() {
return this.componentManager().generatedComponent();
}
}

View File

@@ -0,0 +1,44 @@
package com.radiola.service;
import android.content.Context;
import dagger.internal.DaggerGenerated;
import dagger.internal.Factory;
import dagger.internal.QualifierMetadata;
import dagger.internal.ScopeMetadata;
import javax.annotation.processing.Generated;
import javax.inject.Provider;
@ScopeMetadata("javax.inject.Singleton")
@QualifierMetadata("dagger.hilt.android.qualifiers.ApplicationContext")
@DaggerGenerated
@Generated(
value = "dagger.internal.codegen.ComponentProcessor",
comments = "https://dagger.dev"
)
@SuppressWarnings({
"unchecked",
"rawtypes",
"KotlinInternal",
"KotlinInternalInJava",
"cast"
})
public final class PlayerController_Factory implements Factory<PlayerController> {
private final Provider<Context> contextProvider;
public PlayerController_Factory(Provider<Context> contextProvider) {
this.contextProvider = contextProvider;
}
@Override
public PlayerController get() {
return newInstance(contextProvider.get());
}
public static PlayerController_Factory create(Provider<Context> contextProvider) {
return new PlayerController_Factory(contextProvider);
}
public static PlayerController newInstance(Context context) {
return new PlayerController(context);
}
}

View File

@@ -0,0 +1,17 @@
package com.radiola.service;
import dagger.hilt.InstallIn;
import dagger.hilt.android.components.ServiceComponent;
import dagger.hilt.codegen.OriginatingElement;
import dagger.hilt.internal.GeneratedEntryPoint;
import javax.annotation.processing.Generated;
@OriginatingElement(
topLevelClass = PlayerService.class
)
@GeneratedEntryPoint
@InstallIn(ServiceComponent.class)
@Generated("dagger.hilt.android.processor.internal.androidentrypoint.InjectorEntryPointGenerator")
public interface PlayerService_GeneratedInjector {
void injectPlayerService(PlayerService playerService);
}

View File

@@ -0,0 +1,45 @@
package com.radiola.service;
import dagger.MembersInjector;
import dagger.internal.DaggerGenerated;
import dagger.internal.InjectedFieldSignature;
import dagger.internal.QualifierMetadata;
import javax.annotation.processing.Generated;
import javax.inject.Provider;
@QualifierMetadata
@DaggerGenerated
@Generated(
value = "dagger.internal.codegen.ComponentProcessor",
comments = "https://dagger.dev"
)
@SuppressWarnings({
"unchecked",
"rawtypes",
"KotlinInternal",
"KotlinInternalInJava",
"cast"
})
public final class PlayerService_MembersInjector implements MembersInjector<PlayerService> {
private final Provider<PlayerController> playerControllerProvider;
public PlayerService_MembersInjector(Provider<PlayerController> playerControllerProvider) {
this.playerControllerProvider = playerControllerProvider;
}
public static MembersInjector<PlayerService> create(
Provider<PlayerController> playerControllerProvider) {
return new PlayerService_MembersInjector(playerControllerProvider);
}
@Override
public void injectMembers(PlayerService instance) {
injectPlayerController(instance, playerControllerProvider.get());
}
@InjectedFieldSignature("com.radiola.service.PlayerService.playerController")
public static void injectPlayerController(PlayerService instance,
PlayerController playerController) {
instance.playerController = playerController;
}
}