From 35da578082bb38847aa6473fe842cdba09a80efa Mon Sep 17 00:00:00 2001 From: Will Taylor Date: Tue, 3 Dec 2024 09:05:22 -0600 Subject: [PATCH 1/2] add flutter code blocks --- ...offers-fetch-eligible-winback-offers-flutter.dart | 3 +++ ...ers-fetch-eligible-winback-offers-react-native.ts | 6 +++--- ...inback-offers-fetch-eligible-winback-offers.swift | 4 ++-- ...inback-offers-purchase-winback-offer-flutter.dart | 7 +++++++ .../subscription-offers/ios-subscription-offers.mdx | 12 ++++++++++++ 5 files changed, 27 insertions(+), 5 deletions(-) create mode 100644 code_blocks/subscription-guidance/subscription-offers/ios-winback-offers-fetch-eligible-winback-offers-flutter.dart create mode 100644 code_blocks/subscription-guidance/subscription-offers/ios-winback-offers-purchase-winback-offer-flutter.dart diff --git a/code_blocks/subscription-guidance/subscription-offers/ios-winback-offers-fetch-eligible-winback-offers-flutter.dart b/code_blocks/subscription-guidance/subscription-offers/ios-winback-offers-fetch-eligible-winback-offers-flutter.dart new file mode 100644 index 00000000..1bab4ee8 --- /dev/null +++ b/code_blocks/subscription-guidance/subscription-offers/ios-winback-offers-fetch-eligible-winback-offers-flutter.dart @@ -0,0 +1,3 @@ +List? offers = await Purchases.getEligibleWinBackOffersForPackage(package); + +// TODO: display eligible win-back offers in your UI \ No newline at end of file diff --git a/code_blocks/subscription-guidance/subscription-offers/ios-winback-offers-fetch-eligible-winback-offers-react-native.ts b/code_blocks/subscription-guidance/subscription-offers/ios-winback-offers-fetch-eligible-winback-offers-react-native.ts index 019fb5a9..58d1e3c7 100644 --- a/code_blocks/subscription-guidance/subscription-offers/ios-winback-offers-fetch-eligible-winback-offers-react-native.ts +++ b/code_blocks/subscription-guidance/subscription-offers/ios-winback-offers-fetch-eligible-winback-offers-react-native.ts @@ -1,5 +1,5 @@ -const winBackOffers = await Purchases.getEligibleWinBackOffersForProduct( - selectedProduct, +const winBackOffers = await Purchases.getEligibleWinBackOffersForPackage( + selectedPackage ); -// TODO: display eligible win-back offers in your UI \ No newline at end of file +// TODO: display eligible win-back offers in your UI diff --git a/code_blocks/subscription-guidance/subscription-offers/ios-winback-offers-fetch-eligible-winback-offers.swift b/code_blocks/subscription-guidance/subscription-offers/ios-winback-offers-fetch-eligible-winback-offers.swift index 2f74ef0f..f4b2420d 100644 --- a/code_blocks/subscription-guidance/subscription-offers/ios-winback-offers-fetch-eligible-winback-offers.swift +++ b/code_blocks/subscription-guidance/subscription-offers/ios-winback-offers-fetch-eligible-winback-offers.swift @@ -1,5 +1,5 @@ let eligibleWinBackOffers: [WinBackOffer] = try await Purchases.shared.eligibleWinBackOffers( - forProduct: product + forPackage: package ) -// Now, display these eligible win-back offers on your paywall \ No newline at end of file +// TODO: display eligible win-back offers in your UI \ No newline at end of file diff --git a/code_blocks/subscription-guidance/subscription-offers/ios-winback-offers-purchase-winback-offer-flutter.dart b/code_blocks/subscription-guidance/subscription-offers/ios-winback-offers-purchase-winback-offer-flutter.dart new file mode 100644 index 00000000..781071e2 --- /dev/null +++ b/code_blocks/subscription-guidance/subscription-offers/ios-winback-offers-purchase-winback-offer-flutter.dart @@ -0,0 +1,7 @@ +try { + final customerInfo = await Purchases.purchasePackageWithWinBackOffer(package, selectedWinBackOffer); + // TODO: Handle successful purchase in your UI +} catch (e) { + print('Win-Back offer purchase failed: $e'); + // TODO: Handle failed purchase in your UI +} \ No newline at end of file diff --git a/docs/subscription-guidance/subscription-offers/ios-subscription-offers.mdx b/docs/subscription-guidance/subscription-offers/ios-subscription-offers.mdx index a4185117..f87a5a8a 100644 --- a/docs/subscription-guidance/subscription-offers/ios-subscription-offers.mdx +++ b/docs/subscription-guidance/subscription-offers/ios-subscription-offers.mdx @@ -327,6 +327,7 @@ You can display win-back offers to subscribers on your paywall for users to rede import fetchEligibleWinbacks from "!!raw-loader!@site/code_blocks/subscription-guidance/subscription-offers/ios-winback-offers-fetch-eligible-winback-offers.swift"; import fetchEligibleWinbacksReactNative from "!!raw-loader!@site/code_blocks/subscription-guidance/subscription-offers/ios-winback-offers-fetch-eligible-winback-offers-react-native.ts"; +import fetchEligibleWinbacksFlutter from "!!raw-loader!@site/code_blocks/subscription-guidance/subscription-offers/ios-winback-offers-fetch-eligible-winback-offers-flutter.dart"; @@ -349,6 +355,7 @@ Once the user has selected a win-back offer that they'd like to redeem, you can import purchaseWinbackOffer from "!!raw-loader!@site/code_blocks/subscription-guidance/subscription-offers/ios-winback-offers-purchase-winback-offer.swift"; import purchaseWinbackOfferReactNative from "!!raw-loader!@site/code_blocks/subscription-guidance/subscription-offers/ios-winback-offers-purchase-winback-offer-react-native.ts"; +import purchaseWinbackOfferFlutter from "!!raw-loader!@site/code_blocks/subscription-guidance/subscription-offers/ios-winback-offers-purchase-winback-offer-flutter.dart"; From 2783d5dffbefda7390ccd64b0a8e30572a8ce6b9 Mon Sep 17 00:00:00 2001 From: Will Taylor Date: Tue, 3 Dec 2024 09:14:29 -0600 Subject: [PATCH 2/2] flutter type for syntax highlighting --- .../subscription-offers/ios-subscription-offers.mdx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/subscription-guidance/subscription-offers/ios-subscription-offers.mdx b/docs/subscription-guidance/subscription-offers/ios-subscription-offers.mdx index f87a5a8a..53e2562f 100644 --- a/docs/subscription-guidance/subscription-offers/ios-subscription-offers.mdx +++ b/docs/subscription-guidance/subscription-offers/ios-subscription-offers.mdx @@ -341,7 +341,7 @@ import fetchEligibleWinbacksFlutter from "!!raw-loader!@site/code_blocks/subscri content: fetchEligibleWinbacksReactNative, }, { - type: 'dart', + type: 'flutter', title: "Flutter", content: fetchEligibleWinbacksFlutter, } @@ -369,7 +369,7 @@ import purchaseWinbackOfferFlutter from "!!raw-loader!@site/code_blocks/subscrip content: purchaseWinbackOfferReactNative, }, { - type: 'dart', + type: 'flutter', title: "Flutter", content: purchaseWinbackOfferFlutter, }