Mention in paywall that all purchases support "Family Sharing" (#1138)

Fixes #1130
This commit is contained in:
Davide 2025-02-03 10:27:18 +01:00 committed by GitHub
parent e799ae9ae3
commit 59ac302eb3
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
15 changed files with 30 additions and 7 deletions

View File

@ -771,6 +771,10 @@ public enum Strings {
/// Full version /// Full version
public static let header = Strings.tr("Localizable", "views.paywall.sections.full_products.header", fallback: "Full version") public static let header = Strings.tr("Localizable", "views.paywall.sections.full_products.header", fallback: "Full version")
} }
public enum Products {
/// All purchases support Family Sharing.
public static let footer = Strings.tr("Localizable", "views.paywall.sections.products.footer", fallback: "All purchases support Family Sharing.")
}
public enum RequiredFeatures { public enum RequiredFeatures {
/// Required features /// Required features
public static let header = Strings.tr("Localizable", "views.paywall.sections.required_features.header", fallback: "Required features") public static let header = Strings.tr("Localizable", "views.paywall.sections.required_features.header", fallback: "Required features")

View File

@ -253,6 +253,7 @@
"views.paywall.rows.restore_purchases" = "Käufe wiederherstellen"; "views.paywall.rows.restore_purchases" = "Käufe wiederherstellen";
"views.paywall.sections.all_features.header" = "Die Vollversion enthält"; "views.paywall.sections.all_features.header" = "Die Vollversion enthält";
"views.paywall.sections.full_products.header" = "Vollversion"; "views.paywall.sections.full_products.header" = "Vollversion";
"views.paywall.sections.products.footer" = "Alle Käufe unterstützen die Familienfreigabe.";
"views.paywall.sections.required_features.header" = "Erforderliche Funktionen"; "views.paywall.sections.required_features.header" = "Erforderliche Funktionen";
"views.paywall.sections.restore.footer" = "Wenn du diese App oder Funktion in der Vergangenheit gekauft hast, kannst du deine Käufe wiederherstellen."; "views.paywall.sections.restore.footer" = "Wenn du diese App oder Funktion in der Vergangenheit gekauft hast, kannst du deine Käufe wiederherstellen.";
"views.paywall.sections.restore.header" = "Wiederherstellen"; "views.paywall.sections.restore.header" = "Wiederherstellen";

View File

@ -253,6 +253,7 @@
"views.paywall.rows.restore_purchases" = "Επαναφορά αγορών"; "views.paywall.rows.restore_purchases" = "Επαναφορά αγορών";
"views.paywall.sections.all_features.header" = "Η πλήρης έκδοση περιλαμβάνει"; "views.paywall.sections.all_features.header" = "Η πλήρης έκδοση περιλαμβάνει";
"views.paywall.sections.full_products.header" = "Πλήρης έκδοση"; "views.paywall.sections.full_products.header" = "Πλήρης έκδοση";
"views.paywall.sections.products.footer" = "Όλες οι αγορές υποστηρίζουν την Οικογενειακή Κοινή Χρήση.";
"views.paywall.sections.required_features.header" = "Απαιτούμενες λειτουργίες"; "views.paywall.sections.required_features.header" = "Απαιτούμενες λειτουργίες";
"views.paywall.sections.restore.footer" = "Εάν αγοράσατε αυτήν την εφαρμογή ή λειτουργία στο παρελθόν, μπορείτε να επαναφέρετε τις αγορές σας."; "views.paywall.sections.restore.footer" = "Εάν αγοράσατε αυτήν την εφαρμογή ή λειτουργία στο παρελθόν, μπορείτε να επαναφέρετε τις αγορές σας.";
"views.paywall.sections.restore.header" = "Επαναφορά"; "views.paywall.sections.restore.header" = "Επαναφορά";

View File

@ -81,6 +81,7 @@
"views.paywall.sections.required_features.header" = "Required features"; "views.paywall.sections.required_features.header" = "Required features";
"views.paywall.sections.full_products.header" = "Full version"; "views.paywall.sections.full_products.header" = "Full version";
"views.paywall.sections.all_features.header" = "Full version includes"; "views.paywall.sections.all_features.header" = "Full version includes";
"views.paywall.sections.products.footer" = "All purchases support Family Sharing.";
"views.paywall.sections.restore.header" = "Restore"; "views.paywall.sections.restore.header" = "Restore";
"views.paywall.sections.restore.footer" = "If you bought this app or feature in the past, you can restore your purchases."; "views.paywall.sections.restore.footer" = "If you bought this app or feature in the past, you can restore your purchases.";
"views.paywall.rows.restore_purchases" = "Restore purchases"; "views.paywall.rows.restore_purchases" = "Restore purchases";

View File

@ -253,6 +253,7 @@
"views.paywall.rows.restore_purchases" = "Restaurar compras"; "views.paywall.rows.restore_purchases" = "Restaurar compras";
"views.paywall.sections.all_features.header" = "La versión completa incluye"; "views.paywall.sections.all_features.header" = "La versión completa incluye";
"views.paywall.sections.full_products.header" = "Versión completa"; "views.paywall.sections.full_products.header" = "Versión completa";
"views.paywall.sections.products.footer" = "Todas las compras admiten En Familia.";
"views.paywall.sections.required_features.header" = "Características requeridas"; "views.paywall.sections.required_features.header" = "Características requeridas";
"views.paywall.sections.restore.footer" = "Si compraste esta app o característica en el pasado, puedes restaurar tus compras."; "views.paywall.sections.restore.footer" = "Si compraste esta app o característica en el pasado, puedes restaurar tus compras.";
"views.paywall.sections.restore.header" = "Restaurar"; "views.paywall.sections.restore.header" = "Restaurar";

View File

@ -253,6 +253,7 @@
"views.paywall.rows.restore_purchases" = "Restaurer les achats"; "views.paywall.rows.restore_purchases" = "Restaurer les achats";
"views.paywall.sections.all_features.header" = "La version complète inclut"; "views.paywall.sections.all_features.header" = "La version complète inclut";
"views.paywall.sections.full_products.header" = "Version complète"; "views.paywall.sections.full_products.header" = "Version complète";
"views.paywall.sections.products.footer" = "Tous les achats prennent en charge le Partage familial.";
"views.paywall.sections.required_features.header" = "Fonctionnalités requises"; "views.paywall.sections.required_features.header" = "Fonctionnalités requises";
"views.paywall.sections.restore.footer" = "Si vous avez acheté cette application ou cette fonctionnalité dans le passé, vous pouvez restaurer vos achats."; "views.paywall.sections.restore.footer" = "Si vous avez acheté cette application ou cette fonctionnalité dans le passé, vous pouvez restaurer vos achats.";
"views.paywall.sections.restore.header" = "Restaurer"; "views.paywall.sections.restore.header" = "Restaurer";

View File

@ -253,6 +253,7 @@
"views.paywall.rows.restore_purchases" = "Ripristina acquisti"; "views.paywall.rows.restore_purchases" = "Ripristina acquisti";
"views.paywall.sections.all_features.header" = "La versione completa include"; "views.paywall.sections.all_features.header" = "La versione completa include";
"views.paywall.sections.full_products.header" = "Versione completa"; "views.paywall.sections.full_products.header" = "Versione completa";
"views.paywall.sections.products.footer" = "Tutti gli acquisti supportano “In famiglia”.";
"views.paywall.sections.required_features.header" = "Funzionalità richieste"; "views.paywall.sections.required_features.header" = "Funzionalità richieste";
"views.paywall.sections.restore.footer" = "Se hai acquistato questa app o funzionalità in passato, puoi ripristinare i tuoi acquisti."; "views.paywall.sections.restore.footer" = "Se hai acquistato questa app o funzionalità in passato, puoi ripristinare i tuoi acquisti.";
"views.paywall.sections.restore.header" = "Ripristina"; "views.paywall.sections.restore.header" = "Ripristina";

View File

@ -253,6 +253,7 @@
"views.paywall.rows.restore_purchases" = "Aankopen herstellen"; "views.paywall.rows.restore_purchases" = "Aankopen herstellen";
"views.paywall.sections.all_features.header" = "De volledige versie bevat"; "views.paywall.sections.all_features.header" = "De volledige versie bevat";
"views.paywall.sections.full_products.header" = "Volledige versie"; "views.paywall.sections.full_products.header" = "Volledige versie";
"views.paywall.sections.products.footer" = "Alle aankopen ondersteunen Delen met gezin.";
"views.paywall.sections.required_features.header" = "Vereiste functies"; "views.paywall.sections.required_features.header" = "Vereiste functies";
"views.paywall.sections.restore.footer" = "Als je deze app of functie eerder hebt gekocht, kun je je aankopen herstellen."; "views.paywall.sections.restore.footer" = "Als je deze app of functie eerder hebt gekocht, kun je je aankopen herstellen.";
"views.paywall.sections.restore.header" = "Herstellen"; "views.paywall.sections.restore.header" = "Herstellen";

View File

@ -253,6 +253,7 @@
"views.paywall.rows.restore_purchases" = "Przywróć zakupy"; "views.paywall.rows.restore_purchases" = "Przywróć zakupy";
"views.paywall.sections.all_features.header" = "Pełna wersja zawiera"; "views.paywall.sections.all_features.header" = "Pełna wersja zawiera";
"views.paywall.sections.full_products.header" = "Pełna wersja"; "views.paywall.sections.full_products.header" = "Pełna wersja";
"views.paywall.sections.products.footer" = "Wszystkie zakupy obsługują Chmurę rodzinną.";
"views.paywall.sections.required_features.header" = "Wymagane funkcje"; "views.paywall.sections.required_features.header" = "Wymagane funkcje";
"views.paywall.sections.restore.footer" = "Jeśli wcześniej kupiłeś tę aplikację lub funkcję, możesz przywrócić swoje zakupy."; "views.paywall.sections.restore.footer" = "Jeśli wcześniej kupiłeś tę aplikację lub funkcję, możesz przywrócić swoje zakupy.";
"views.paywall.sections.restore.header" = "Przywróć"; "views.paywall.sections.restore.header" = "Przywróć";

View File

@ -253,6 +253,7 @@
"views.paywall.rows.restore_purchases" = "Restaurar compras"; "views.paywall.rows.restore_purchases" = "Restaurar compras";
"views.paywall.sections.all_features.header" = "A versão completa inclui"; "views.paywall.sections.all_features.header" = "A versão completa inclui";
"views.paywall.sections.full_products.header" = "Versão completa"; "views.paywall.sections.full_products.header" = "Versão completa";
"views.paywall.sections.products.footer" = "Todas as compras são compatíveis com Compartilhamento Familiar.";
"views.paywall.sections.required_features.header" = "Recursos necessários"; "views.paywall.sections.required_features.header" = "Recursos necessários";
"views.paywall.sections.restore.footer" = "Se você comprou este app ou recurso no passado, pode restaurar suas compras."; "views.paywall.sections.restore.footer" = "Se você comprou este app ou recurso no passado, pode restaurar suas compras.";
"views.paywall.sections.restore.header" = "Restaurar"; "views.paywall.sections.restore.header" = "Restaurar";

View File

@ -253,6 +253,7 @@
"views.paywall.rows.restore_purchases" = "Восстановить покупки"; "views.paywall.rows.restore_purchases" = "Восстановить покупки";
"views.paywall.sections.all_features.header" = "Полная версия включает"; "views.paywall.sections.all_features.header" = "Полная версия включает";
"views.paywall.sections.full_products.header" = "Полная версия"; "views.paywall.sections.full_products.header" = "Полная версия";
"views.paywall.sections.products.footer" = "Все покупки поддерживают Семейный доступ.";
"views.paywall.sections.required_features.header" = "Необходимые функции"; "views.paywall.sections.required_features.header" = "Необходимые функции";
"views.paywall.sections.restore.footer" = "Если вы уже купили это приложение или функцию в прошлом, вы можете восстановить свои покупки."; "views.paywall.sections.restore.footer" = "Если вы уже купили это приложение или функцию в прошлом, вы можете восстановить свои покупки.";
"views.paywall.sections.restore.header" = "Восстановить"; "views.paywall.sections.restore.header" = "Восстановить";

View File

@ -253,6 +253,7 @@
"views.paywall.rows.restore_purchases" = "Återställ köp"; "views.paywall.rows.restore_purchases" = "Återställ köp";
"views.paywall.sections.all_features.header" = "Den fullständiga versionen innehåller"; "views.paywall.sections.all_features.header" = "Den fullständiga versionen innehåller";
"views.paywall.sections.full_products.header" = "Fullständig version"; "views.paywall.sections.full_products.header" = "Fullständig version";
"views.paywall.sections.products.footer" = "Alla köp stöder Familjedelning.";
"views.paywall.sections.required_features.header" = "Krävda funktioner"; "views.paywall.sections.required_features.header" = "Krävda funktioner";
"views.paywall.sections.restore.footer" = "Om du har köpt denna app eller funktion tidigare kan du återställa dina köp."; "views.paywall.sections.restore.footer" = "Om du har köpt denna app eller funktion tidigare kan du återställa dina köp.";
"views.paywall.sections.restore.header" = "Återställ"; "views.paywall.sections.restore.header" = "Återställ";

View File

@ -253,6 +253,7 @@
"views.paywall.rows.restore_purchases" = "Відновити покупки"; "views.paywall.rows.restore_purchases" = "Відновити покупки";
"views.paywall.sections.all_features.header" = "Повна версія включає"; "views.paywall.sections.all_features.header" = "Повна версія включає";
"views.paywall.sections.full_products.header" = "Повна версія"; "views.paywall.sections.full_products.header" = "Повна версія";
"views.paywall.sections.products.footer" = "Усі покупки підтримують “Сімейний доступ”.";
"views.paywall.sections.required_features.header" = "Необхідні функції"; "views.paywall.sections.required_features.header" = "Необхідні функції";
"views.paywall.sections.restore.footer" = "Якщо ви раніше купували цей додаток або функцію, ви можете відновити свої покупки."; "views.paywall.sections.restore.footer" = "Якщо ви раніше купували цей додаток або функцію, ви можете відновити свої покупки.";
"views.paywall.sections.restore.header" = "Відновлення"; "views.paywall.sections.restore.header" = "Відновлення";

View File

@ -253,6 +253,7 @@
"views.paywall.rows.restore_purchases" = "恢复购买"; "views.paywall.rows.restore_purchases" = "恢复购买";
"views.paywall.sections.all_features.header" = "完整版本包括"; "views.paywall.sections.all_features.header" = "完整版本包括";
"views.paywall.sections.full_products.header" = "完整版本"; "views.paywall.sections.full_products.header" = "完整版本";
"views.paywall.sections.products.footer" = "所有购买均支持“家人共享”。";
"views.paywall.sections.required_features.header" = "必需功能"; "views.paywall.sections.required_features.header" = "必需功能";
"views.paywall.sections.restore.footer" = "如果您过去购买过此应用或功能,可以恢复您的购买记录。"; "views.paywall.sections.restore.footer" = "如果您过去购买过此应用或功能,可以恢复您的购买记录。";
"views.paywall.sections.restore.header" = "恢复"; "views.paywall.sections.restore.header" = "恢复";

View File

@ -125,7 +125,11 @@ private extension PaywallView {
onError: onError onError: onError
) )
} }
.themeSection(header: Strings.Global.Nouns.products) .themeSection(
header: Strings.Global.Nouns.products,
footer: Strings.Views.Paywall.Sections.Products.footer,
forcesFooter: true
)
} }
} }
@ -143,16 +147,18 @@ private extension PaywallView {
) )
} }
} }
.themeSection(header: Strings.Views.Paywall.Sections.FullProducts.header) .themeSection(
header: Strings.Views.Paywall.Sections.FullProducts.header,
footer: Strings.Views.Paywall.Sections.Products.footer,
forcesFooter: true
)
} }
} }
var linksView: some View { var linksView: some View {
fullIAPs.nilIfEmpty.map { _ in Section {
Section { Link(Strings.Unlocalized.eula, destination: Constants.shared.websites.eula)
Link(Strings.Unlocalized.eula, destination: Constants.shared.websites.eula) Link(Strings.Views.About.Links.Rows.privacyPolicy, destination: Constants.shared.websites.privacyPolicy)
Link(Strings.Views.About.Links.Rows.privacyPolicy, destination: Constants.shared.websites.privacyPolicy)
}
} }
} }