32 lines
1.1 KiB
Kotlin
32 lines
1.1 KiB
Kotlin
package de.waypointaudio.license
|
|
|
|
/**
|
|
* v2.5.20 — Erweitertes Lizenzstatus-Datenmodell.
|
|
*
|
|
* v2.5.17 hat ein bewusst minimales String-only-Modell eingeführt, das die
|
|
* About-Card direkt rendern konnte. v2.5.20 ergänzt strukturierte Felder,
|
|
* damit die echte Offline-Lizenzprüfung Lizenztyp, Lizenznehmer, Gültigkeit,
|
|
* Permissions, Bindung und Lizenz-ID anzeigen kann.
|
|
*
|
|
* Bewusst unverändert bleiben die alten Felder ([stateText], [holderText],
|
|
* [validityText], [featuresText], [isPro]), damit die bisherige UI ohne
|
|
* Anpassung weiterläuft und der Card-Aufbau in [de.waypointaudio.ui.AboutDialog]
|
|
* stabil bleibt.
|
|
*/
|
|
data class LicenseStatus(
|
|
val stateText: String,
|
|
val holderText: String,
|
|
val validityText: String,
|
|
val featuresText: String,
|
|
val isPro: Boolean,
|
|
val state: State = State.NONE,
|
|
val licenseId: String? = null,
|
|
val licenseTypeRaw: String? = null,
|
|
val licenseTypeLabel: String? = null,
|
|
val bindingText: String? = null,
|
|
val permissions: Map<String, Boolean> = emptyMap(),
|
|
val errorMessage: String? = null,
|
|
) {
|
|
enum class State { NONE, VALID, INVALID, EXPIRED }
|
|
}
|