Add task completion animations, subscription trials, and quiet debug console
- Completion animations: play user-selected animation on task card after completing, with DataManager guard to prevent race condition during animation playback. Works in both AllTasksView and ResidenceDetailView. Animation preference persisted via @AppStorage and configurable from Settings. - Subscription: add trial fields (trialStart, trialEnd, trialActive) and subscriptionSource to model, cross-platform purchase guard, trial banner in upgrade prompt, and platform-aware subscription management in profile. - Analytics: disable PostHog SDK debug logging and remove console print statements to reduce debug console noise. - Documents: remove redundant nested do-catch blocks in ViewModel wrapper. - Widgets: add debounced timeline reloads and thread-safe file I/O queue. - Onboarding: fix animation leak on disappear, remove unused state vars. - Remove unused files (ContentView, StateFlowExtensions, CustomView). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -137,8 +137,15 @@
|
||||
"4.9" : {
|
||||
|
||||
},
|
||||
"7-day free trial, then %@" : {
|
||||
|
||||
"7-day free trial, then %@%@" : {
|
||||
"localizations" : {
|
||||
"en" : {
|
||||
"stringUnit" : {
|
||||
"state" : "new",
|
||||
"value" : "7-day free trial, then %1$@%2$@"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"ABC123" : {
|
||||
|
||||
@@ -171,10 +178,6 @@
|
||||
"comment" : "A link that directs users to log in if they already have an account.",
|
||||
"isCommentAutoGenerated" : true
|
||||
},
|
||||
"Animation Testing" : {
|
||||
"comment" : "The title of a view that tests different animations.",
|
||||
"isCommentAutoGenerated" : true
|
||||
},
|
||||
"Animation Type" : {
|
||||
"comment" : "A label above the picker for selecting an animation type.",
|
||||
"isCommentAutoGenerated" : true
|
||||
@@ -5251,6 +5254,10 @@
|
||||
"comment" : "A button label that says \"Complete Task\".",
|
||||
"isCommentAutoGenerated" : true
|
||||
},
|
||||
"Completion Animation" : {
|
||||
"comment" : "The title of the view.",
|
||||
"isCommentAutoGenerated" : true
|
||||
},
|
||||
"Completion Photos" : {
|
||||
"comment" : "The title for the view that shows a user's photo submissions.",
|
||||
"isCommentAutoGenerated" : true
|
||||
@@ -17334,6 +17341,9 @@
|
||||
"Free" : {
|
||||
"comment" : "A label indicating a free feature.",
|
||||
"isCommentAutoGenerated" : true
|
||||
},
|
||||
"Free trial ends %@" : {
|
||||
|
||||
},
|
||||
"Generate Code" : {
|
||||
"comment" : "A button label that generates a new invitation code.",
|
||||
@@ -17430,6 +17440,16 @@
|
||||
},
|
||||
"Logging in..." : {
|
||||
|
||||
},
|
||||
"Manage at casera.app" : {
|
||||
|
||||
},
|
||||
"Manage your subscription at casera.app" : {
|
||||
"comment" : "A text instruction that directs them to manage their subscription on casera.app.",
|
||||
"isCommentAutoGenerated" : true
|
||||
},
|
||||
"Manage your subscription on your Android device" : {
|
||||
|
||||
},
|
||||
"Mark Task In Progress" : {
|
||||
"comment" : "A button label that says \"Mark Task In Progress\".",
|
||||
@@ -17490,6 +17510,10 @@
|
||||
"comment" : "A button that dismisses the success dialog.",
|
||||
"isCommentAutoGenerated" : true
|
||||
},
|
||||
"Open casera.app" : {
|
||||
"comment" : "A button label that opens the casera.app settings page.",
|
||||
"isCommentAutoGenerated" : true
|
||||
},
|
||||
"or" : {
|
||||
|
||||
},
|
||||
@@ -30112,6 +30136,10 @@
|
||||
},
|
||||
"You're all set up!" : {
|
||||
|
||||
},
|
||||
"You're already subscribed" : {
|
||||
"comment" : "A message displayed when a user is already subscribed to the app.",
|
||||
"isCommentAutoGenerated" : true
|
||||
},
|
||||
"Your data will be synced across devices" : {
|
||||
|
||||
@@ -30123,6 +30151,13 @@
|
||||
"Your home maintenance companion" : {
|
||||
"comment" : "The tagline for the app, describing its purpose.",
|
||||
"isCommentAutoGenerated" : true
|
||||
},
|
||||
"Your subscription is managed on another platform." : {
|
||||
"comment" : "A description of a user's subscription on an unspecified platform.",
|
||||
"isCommentAutoGenerated" : true
|
||||
},
|
||||
"Your subscription is managed through Google Play on your Android device." : {
|
||||
|
||||
}
|
||||
},
|
||||
"version" : "1.1"
|
||||
|
||||
Reference in New Issue
Block a user