Sync StoreKit config from App Store Connect, reset version to 1.0.0

- StoreKit config now syncs from ASC instead of local definitions
- Reset marketing version to 1.0.0 and build to 1
- Xcode reformatted Localizable.xcstrings (whitespace only)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Trey t
2026-02-26 17:19:02 -06:00
parent 0442eab1f8
commit 087d8c4cdd
3 changed files with 13664 additions and 13618 deletions

View File

@@ -9,7 +9,7 @@
}
]
},
"identifier" : "E4A24A40",
"identifier" : "943049EA",
"nonRenewingSubscriptions" : [
],
@@ -17,14 +17,14 @@
],
"settings" : {
"_applicationInternalID" : "6758580945",
"_applicationInternalID" : "6759737876",
"_askToBuyEnabled" : false,
"_billingGracePeriodEnabled" : false,
"_billingIssuesEnabled" : false,
"_developerTeamID" : "QND55P4443",
"_disableDialogs" : false,
"_failTransactionsEnabled" : false,
"_lastSynchronizedDate" : 792431418.15940905,
"_lastSynchronizedDate" : 793840466.77825403,
"_locale" : "en_US",
"_renewalBillingIssuesEnabled" : false,
"_storefront" : "USA",
@@ -35,7 +35,7 @@
},
"subscriptionGroups" : [
{
"id" : "21914363",
"id" : "21951685",
"localizations" : [
],
@@ -49,56 +49,51 @@
],
"displayPrice" : "0.99",
"familyShareable" : true,
"familyShareable" : false,
"groupNumber" : 1,
"internalID" : "6758582054",
"introductoryOffer" : {
"internalID" : "DDFEB050",
"numberOfPeriods" : 1,
"paymentMode" : "free",
"subscriptionPeriod" : "P2W"
},
"internalID" : "6759738151",
"introductoryOffer" : null,
"localizations" : [
{
"description" : "Cobrança mensal",
"displayName" : "Mensal",
"locale" : "pt_BR"
},
{
"description" : "毎月の請求",
"displayName" : "月額",
"locale" : "ja"
},
{
"description" : "Facturation mensuelle",
"displayName" : "Mensuel",
"locale" : "fr"
},
{
"description" : "Facturación mensual",
"displayName" : "Mensual",
"locale" : "es_ES"
},
{
"description" : "Flexible month-to-month billing",
"displayName" : "Monthly",
"description" : "Unlock all features with monthly access.",
"displayName" : " Reflect Monthly",
"locale" : "en_US"
},
{
"description" : "Monatliche Abrechnung",
"displayName" : "Monatlich",
"description" : "모든 기능을 월간 구독으로 이용하세요.",
"displayName" : "Reflect 월간 구독",
"locale" : "ko"
},
{
"description" : "Alle Funktionen mit monatlichem Zugang.",
"displayName" : "Reflect Monatsabo",
"locale" : "de"
},
{
"description" : "월간 결제",
"displayName" : "월간",
"locale" : "ko"
"description" : "Desbloquea todo con acceso mensual.",
"displayName" : "Reflect Mensual",
"locale" : "es_MX"
},
{
"description" : "Accédez à tout avec l'abonnement mensuel.",
"displayName" : "Reflect Mensuel",
"locale" : "fr"
},
{
"description" : "すべての機能を月額でご利用いただけます。",
"displayName" : "Reflect 月額プラン",
"locale" : "ja"
},
{
"description" : "Desbloqueie tudo com acesso mensal.",
"displayName" : "Reflect Mensal",
"locale" : "pt_BR"
}
],
"productID" : "com.88oakapps.reflect.IAP.subscriptions.monthly",
"recurringSubscriptionPeriod" : "P1M",
"referenceName" : "Monthly",
"subscriptionGroupID" : "21914363",
"subscriptionGroupID" : "21951685",
"type" : "RecurringSubscription",
"winbackOffers" : [
@@ -112,56 +107,51 @@
],
"displayPrice" : "9.99",
"familyShareable" : true,
"familyShareable" : false,
"groupNumber" : 2,
"internalID" : "6758581068",
"introductoryOffer" : {
"internalID" : "6E5324DA",
"numberOfPeriods" : 1,
"paymentMode" : "free",
"subscriptionPeriod" : "P2W"
},
"internalID" : "6759737003",
"introductoryOffer" : null,
"localizations" : [
{
"description" : "Spare über 15%",
"displayName" : "Jährlich",
"locale" : "de"
},
{
"description" : "Economize 15%",
"displayName" : "Anual",
"locale" : "pt_BR"
},
{
"description" : "Best value — save over 15%",
"displayName" : "Yearly",
"locale" : "en_US"
},
{
"description" : "15%以上お得",
"displayName" : "年額",
"locale" : "ja"
},
{
"description" : "Mejor precio — ahorra 15%",
"displayName" : "Anual",
"locale" : "es_ES"
},
{
"description" : "Économisez 15%",
"displayName" : "Annuel",
"description" : "Accédez à tout. Meilleure offre.",
"displayName" : "Reflect Annuel",
"locale" : "fr"
},
{
"description" : "15% 이상 절약",
"displayName" : "연간",
"description" : "Desbloquea todo. La mejor oferta.",
"displayName" : "Reflect Anual",
"locale" : "es_MX"
},
{
"description" : "모든 기능 이용. 최고의 가성비.",
"displayName" : "Reflect 연간 구독",
"locale" : "ko"
},
{
"description" : "Desbloqueie tudo. Melhor custo-benefício.",
"displayName" : "Reflect Anual",
"locale" : "pt_BR"
},
{
"description" : "すべての機能を年額でお得にご利用。",
"displayName" : "Reflect 年額プラン",
"locale" : "ja"
},
{
"description" : "Unlock all features. Best value — save more.",
"displayName" : "Reflect Yearly",
"locale" : "en_US"
},
{
"description" : "Alle Funktionen freischalten. Bester Preis.",
"displayName" : "Reflect Jahresabo",
"locale" : "de"
}
],
"productID" : "com.88oakapps.reflect.IAP.subscriptions.yearly",
"recurringSubscriptionPeriod" : "P1Y",
"referenceName" : "Yearly",
"subscriptionGroupID" : "21914363",
"subscriptionGroupID" : "21951685",
"type" : "RecurringSubscription",
"winbackOffers" : [

View File

@@ -13,6 +13,8 @@
1AB245144C89927264D16645 /* InsightsEmptyStateTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A6988985985DE9C29CFDFA96 /* InsightsEmptyStateTests.swift */; };
1C0DAB51279DB0FB003B1F21 /* Reflect/Localizable.xcstrings in Resources */ = {isa = PBXBuildFile; fileRef = 1C0DAB50279DB0FB003B1F21 /* Reflect/Localizable.xcstrings */; };
1C0DAB52279DB0FB003B1F22 /* Reflect/Localizable.xcstrings in Resources */ = {isa = PBXBuildFile; fileRef = 1C0DAB50279DB0FB003B1F21 /* Reflect/Localizable.xcstrings */; };
1C47D9582F510B4D00208BE4 /* Configuration.storekit in Resources */ = {isa = PBXBuildFile; fileRef = 1C47D9572F510B4D00208BE4 /* Configuration.storekit */; };
1C47D9592F510B4D00208BE4 /* Configuration.storekit in Resources */ = {isa = PBXBuildFile; fileRef = 1C47D9572F510B4D00208BE4 /* Configuration.storekit */; };
1C9566442EF8F5F70032E68F /* Algorithms in Frameworks */ = {isa = PBXBuildFile; productRef = 1C9566432EF8F5F70032E68F /* Algorithms */; };
1CB4D0A028787D8A00902A56 /* StoreKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1CB4D09F28787D8A00902A56 /* StoreKit.framework */; };
1CD90B07278C7DE0001C4FEA /* Tests_iOS.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1CD90B06278C7DE0001C4FEA /* Tests_iOS.swift */; };
@@ -25,8 +27,6 @@
1CD90B6C278C7F78001C4FEA /* CloudKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1CD90B6B278C7F78001C4FEA /* CloudKit.framework */; };
1CD90B6E278C7F8B001C4FEA /* CloudKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1CD90B6B278C7F78001C4FEA /* CloudKit.framework */; };
1CDE000F2F3BBD26006AE6A1 /* PostHog in Frameworks */ = {isa = PBXBuildFile; productRef = 1CA00002300000000000002A /* PostHog */; };
1CDEFBBF2F3B8736006AE6A1 /* Configuration.storekit in Resources */ = {isa = PBXBuildFile; fileRef = 1CDEFBBE2F3B8736006AE6A1 /* Configuration.storekit */; };
1CDEFBC02F3B8736006AE6A1 /* Configuration.storekit in Resources */ = {isa = PBXBuildFile; fileRef = 1CDEFBBE2F3B8736006AE6A1 /* Configuration.storekit */; };
2EE4D94530F6BF39B26FB4D4 /* DayScreen.swift in Sources */ = {isa = PBXBuildFile; fileRef = 427CD9C91D43AB6A0302B4DD /* DayScreen.swift */; };
343D472E5524E2E8ED59A7CC /* DateLocaleTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DF843FEBE18F8FF570CC4CCB /* DateLocaleTests.swift */; };
39C43652C41F5459788A604D /* SpanishLocalizationTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 31C2982F0B879A0C57273F0E /* SpanishLocalizationTests.swift */; };
@@ -140,6 +140,7 @@
0359E1D32D936859E5A0C9F3 /* AppResumeTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppResumeTests.swift; sourceTree = "<group>"; };
17DC4C498A1185DC831F4593 /* LocalizationTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LocalizationTests.swift; sourceTree = "<group>"; };
1C0DAB50279DB0FB003B1F21 /* Reflect/Localizable.xcstrings */ = {isa = PBXFileReference; lastKnownFileType = text.json.xcstrings; path = Reflect/Localizable.xcstrings; sourceTree = "<group>"; };
1C47D9572F510B4D00208BE4 /* Configuration.storekit */ = {isa = PBXFileReference; lastKnownFileType = text; path = Configuration.storekit; sourceTree = "<group>"; };
1CB4D09F28787D8A00902A56 /* StoreKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = StoreKit.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS15.5.sdk/System/Library/Frameworks/StoreKit.framework; sourceTree = DEVELOPER_DIR; };
1CD90AF5278C7DE0001C4FEA /* Reflect.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Reflect.app; sourceTree = BUILT_PRODUCTS_DIR; };
1CD90AFB278C7DE0001C4FEA /* Reflect.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Reflect.app; sourceTree = BUILT_PRODUCTS_DIR; };
@@ -159,7 +160,6 @@
1CD90B6D278C7F89001C4FEA /* ReflectWidgetExtension.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = ReflectWidgetExtension.entitlements; sourceTree = "<group>"; };
1CD90B6F278C8000001C4FEA /* ReflectWidgetExtensionDev.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = ReflectWidgetExtensionDev.entitlements; sourceTree = "<group>"; };
1CD90B70278C8000001C4FEA /* Reflect (iOS)Dev.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = "Reflect (iOS)Dev.entitlements"; sourceTree = "<group>"; };
1CDEFBBE2F3B8736006AE6A1 /* Configuration.storekit */ = {isa = PBXFileReference; lastKnownFileType = text; path = Configuration.storekit; sourceTree = "<group>"; };
1E594AEAB5F046E3B3ED7C47 /* Reflect Watch App.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Reflect Watch App.app"; sourceTree = BUILT_PRODUCTS_DIR; };
21CD463209E0909393545D62 /* TrialBannerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TrialBannerTests.swift; sourceTree = "<group>"; };
29CE4110A0D8FBBAD7F92BDF /* BaseUITestCase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BaseUITestCase.swift; sourceTree = "<group>"; };
@@ -344,10 +344,10 @@
1CD90AE5278C7DDF001C4FEA = {
isa = PBXGroup;
children = (
1C47D9572F510B4D00208BE4 /* Configuration.storekit */,
B8AB4CD73C2B4DC89C6FE84D /* Reflect Watch App/Reflect Watch App.entitlements */,
B60015D02A064FF582E232FD /* Reflect Watch App/Reflect Watch AppDebug.entitlements */,
1C0DAB50279DB0FB003B1F21 /* Reflect/Localizable.xcstrings */,
1CDEFBBE2F3B8736006AE6A1 /* Configuration.storekit */,
1CD90B6A278C7F75001C4FEA /* Reflect (iOS).entitlements */,
1CD90B70278C8000001C4FEA /* Reflect (iOS)Dev.entitlements */,
1CD90B6D278C7F89001C4FEA /* ReflectWidgetExtension.entitlements */,
@@ -733,8 +733,8 @@
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
1C47D9582F510B4D00208BE4 /* Configuration.storekit in Resources */,
1C0DAB51279DB0FB003B1F21 /* Reflect/Localizable.xcstrings in Resources */,
1CDEFBBF2F3B8736006AE6A1 /* Configuration.storekit in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -763,7 +763,7 @@
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
1CDEFBC02F3B8736006AE6A1 /* Configuration.storekit in Resources */,
1C47D9592F510B4D00208BE4 /* Configuration.storekit in Resources */,
1C0DAB52279DB0FB003B1F22 /* Reflect/Localizable.xcstrings in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
@@ -1084,7 +1084,7 @@
CODE_SIGN_ENTITLEMENTS = "Reflect (iOS)Dev.entitlements";
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 23;
CURRENT_PROJECT_VERSION = 1;
DEVELOPMENT_TEAM = QND55P4443;
ENABLE_PREVIEWS = YES;
GENERATE_INFOPLIST_FILE = YES;
@@ -1106,7 +1106,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 1.0.2;
MARKETING_VERSION = 1.0.0;
PRODUCT_BUNDLE_IDENTIFIER = com.88oakapps.reflect.debug;
PRODUCT_NAME = Reflect;
PROVISIONING_PROFILE_SPECIFIER = "";
@@ -1126,7 +1126,7 @@
CODE_SIGN_ENTITLEMENTS = "Reflect (iOS).entitlements";
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 23;
CURRENT_PROJECT_VERSION = 1;
DEVELOPMENT_TEAM = QND55P4443;
ENABLE_PREVIEWS = YES;
GENERATE_INFOPLIST_FILE = YES;
@@ -1148,7 +1148,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 1.0.2;
MARKETING_VERSION = 1.0.0;
PRODUCT_BUNDLE_IDENTIFIER = com.88oakapps.reflect;
PRODUCT_NAME = Reflect;
PROVISIONING_PROFILE_SPECIFIER = "";

File diff suppressed because it is too large Load Diff