Rebrand from Casera/MyCrib to honeyDue
Total rebrand across KMM project: - Kotlin package: com.example.casera -> com.tt.honeyDue (dirs + declarations) - Gradle: rootProject.name, namespace, applicationId - Android: manifest, strings.xml (all languages), widget resources - iOS: pbxproj bundle IDs, Info.plist, entitlements, xcconfig - iOS directories: Casera/ -> HoneyDue/, CaseraTests/ -> HoneyDueTests/, etc. - Swift source: all class/struct/enum renames - Deep links: casera:// -> honeydue://, .casera -> .honeydue - App icons replaced with honeyDue honeycomb icon - Domains: casera.treytartt.com -> honeyDue.treytartt.com - Bundle IDs: com.tt.casera -> com.tt.honeyDue - Database table names preserved Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,61 @@
|
||||
package com.tt.honeyDue.analytics
|
||||
|
||||
/**
|
||||
* Common analytics interface for cross-platform event tracking.
|
||||
* Platform-specific implementations use PostHog SDKs.
|
||||
*/
|
||||
expect object PostHogAnalytics {
|
||||
fun initialize()
|
||||
fun identify(userId: String, properties: Map<String, Any>? = null)
|
||||
fun capture(event: String, properties: Map<String, Any>? = null)
|
||||
fun screen(screenName: String, properties: Map<String, Any>? = null)
|
||||
fun reset()
|
||||
fun flush()
|
||||
}
|
||||
|
||||
/**
|
||||
* Analytics event names - use these constants for consistency across the app
|
||||
*/
|
||||
object AnalyticsEvents {
|
||||
// Authentication
|
||||
const val REGISTRATION_SCREEN_SHOWN = "registration_screen_shown"
|
||||
const val USER_REGISTERED = "user_registered"
|
||||
const val USER_SIGNED_IN = "user_signed_in"
|
||||
const val USER_SIGNED_IN_APPLE = "user_signed_in_apple"
|
||||
|
||||
// Residence
|
||||
const val RESIDENCE_SCREEN_SHOWN = "residence_screen_shown"
|
||||
const val NEW_RESIDENCE_SCREEN_SHOWN = "new_residence_screen_shown"
|
||||
const val RESIDENCE_CREATED = "residence_created"
|
||||
const val RESIDENCE_LIMIT_REACHED = "residence_limit_reached"
|
||||
|
||||
// Task
|
||||
const val TASK_SCREEN_SHOWN = "task_screen_shown"
|
||||
const val NEW_TASK_SCREEN_SHOWN = "new_task_screen_shown"
|
||||
const val TASK_CREATED = "task_created"
|
||||
|
||||
// Contractor
|
||||
const val CONTRACTOR_SCREEN_SHOWN = "contractor_screen_shown"
|
||||
const val NEW_CONTRACTOR_SCREEN_SHOWN = "new_contractor_screen_shown"
|
||||
const val CONTRACTOR_CREATED = "contractor_created"
|
||||
const val CONTRACTOR_PAYWALL_SHOWN = "contractor_paywall_shown"
|
||||
|
||||
// Documents
|
||||
const val DOCUMENTS_SCREEN_SHOWN = "documents_screen_shown"
|
||||
const val NEW_DOCUMENT_SCREEN_SHOWN = "new_document_screen_shown"
|
||||
const val DOCUMENT_CREATED = "document_created"
|
||||
const val DOCUMENTS_PAYWALL_SHOWN = "documents_paywall_shown"
|
||||
|
||||
// Sharing
|
||||
const val SHARE_RESIDENCE_SCREEN_SHOWN = "share_residence_screen_shown"
|
||||
const val RESIDENCE_SHARED = "residence_shared"
|
||||
const val SHARE_RESIDENCE_PAYWALL_SHOWN = "share_residence_paywall_shown"
|
||||
const val SHARE_CONTRACTOR_SCREEN_SHOWN = "share_contractor_screen_shown"
|
||||
const val CONTRACTOR_SHARED = "contractor_shared"
|
||||
const val SHARE_CONTRACTOR_PAYWALL_SHOWN = "share_contractor_paywall_shown"
|
||||
|
||||
// Settings
|
||||
const val NOTIFICATION_SETTINGS_SCREEN_SHOWN = "notification_settings_screen_shown"
|
||||
const val SETTINGS_SCREEN_SHOWN = "settings_screen_shown"
|
||||
const val THEME_CHANGED = "theme_changed"
|
||||
}
|
||||
Reference in New Issue
Block a user