Rebrand from MyCrib to Casera

- Rename Kotlin package from com.example.mycrib to com.example.casera
- Update Android app name, namespace, and application ID
- Update iOS bundle identifiers and project settings
- Rename iOS directories (MyCribTests -> CaseraTests, etc.)
- Update deep link schemes from mycrib:// to casera://
- Update app group identifiers
- Update subscription product IDs
- Update all UI strings and branding

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Trey t
2025-11-28 21:10:38 -06:00
parent 8dbc816a33
commit c6eef720ed
215 changed files with 767 additions and 767 deletions

View File

@@ -0,0 +1,37 @@
package com.example.casera.cache
import androidx.compose.runtime.mutableStateOf
import com.example.casera.models.FeatureBenefit
import com.example.casera.models.Promotion
import com.example.casera.models.SubscriptionStatus
import com.example.casera.models.UpgradeTriggerData
object SubscriptionCache {
val currentSubscription = mutableStateOf<SubscriptionStatus?>(null)
val upgradeTriggers = mutableStateOf<Map<String, UpgradeTriggerData>>(emptyMap())
val featureBenefits = mutableStateOf<List<FeatureBenefit>>(emptyList())
val promotions = mutableStateOf<List<Promotion>>(emptyList())
fun updateSubscriptionStatus(subscription: SubscriptionStatus) {
currentSubscription.value = subscription
}
fun updateUpgradeTriggers(triggers: Map<String, UpgradeTriggerData>) {
upgradeTriggers.value = triggers
}
fun updateFeatureBenefits(benefits: List<FeatureBenefit>) {
featureBenefits.value = benefits
}
fun updatePromotions(promos: List<Promotion>) {
promotions.value = promos
}
fun clear() {
currentSubscription.value = null
upgradeTriggers.value = emptyMap()
featureBenefits.value = emptyList()
promotions.value = emptyList()
}
}