@revenuecat/purchases-capacitor 11.2.17 → 11.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/Package.swift ADDED
@@ -0,0 +1,26 @@
1
+ // swift-tools-version: 5.9
2
+ import PackageDescription
3
+
4
+ let package = Package(
5
+ name: "RevenuecatPurchasesCapacitor",
6
+ platforms: [.iOS(.v14)],
7
+ products: [
8
+ .library(
9
+ name: "RevenuecatPurchasesCapacitor",
10
+ targets: ["RevenuecatPurchasesCapacitor"])
11
+ ],
12
+ dependencies: [
13
+ .package(url: "https://github.com/ionic-team/capacitor-swift-pm.git", from: "7.0.0"),
14
+ .package(url: "https://github.com/RevenueCat/purchases-hybrid-common.git", exact: "17.21.0")
15
+ ],
16
+ targets: [
17
+ .target(
18
+ name: "RevenuecatPurchasesCapacitor",
19
+ dependencies: [
20
+ .product(name: "Capacitor", package: "capacitor-swift-pm"),
21
+ .product(name: "Cordova", package: "capacitor-swift-pm"),
22
+ .product(name: "PurchasesHybridCommon", package: "purchases-hybrid-common")
23
+ ],
24
+ path: "ios/Sources/RevenuecatPurchasesCapacitor")
25
+ ]
26
+ )
@@ -10,9 +10,9 @@ Pod::Spec.new do |s|
10
10
  s.homepage = package['repository']['url']
11
11
  s.author = package['author']
12
12
  s.source = { :git => package['repository']['url'], :tag => s.version.to_s }
13
- s.source_files = 'ios/Plugin/**/*.{swift,h,m,c,cc,mm,cpp}'
13
+ s.source_files = 'ios/Sources/**/*.{swift,h,m,c,cc,mm,cpp}'
14
14
  s.ios.deployment_target = '14.0'
15
15
  s.dependency 'Capacitor'
16
- s.dependency 'PurchasesHybridCommon', '17.21.2'
16
+ s.dependency 'PurchasesHybridCommon', '17.23.0'
17
17
  s.swift_version = '5.1'
18
18
  end
@@ -56,7 +56,7 @@ dependencies {
56
56
  implementation fileTree(dir: 'libs', include: ['*.jar'])
57
57
  implementation project(':capacitor-android')
58
58
  implementation "androidx.appcompat:appcompat:$androidxAppCompatVersion"
59
- implementation 'com.revenuecat.purchases:purchases-hybrid-common:17.21.2'
59
+ implementation 'com.revenuecat.purchases:purchases-hybrid-common:17.23.0'
60
60
  testImplementation "junit:junit:$junitVersion"
61
61
  androidTestImplementation "androidx.test.ext:junit:$androidxJunitVersion"
62
62
  androidTestImplementation "androidx.test.espresso:espresso-core:$androidxEspressoCoreVersion"
@@ -83,7 +83,7 @@ class PurchasesPlugin : Plugin() {
83
83
 
84
84
  companion object {
85
85
  private const val PLATFORM_NAME = "capacitor"
86
- private const val PLUGIN_VERSION = "11.2.17"
86
+ private const val PLUGIN_VERSION = "11.3.0"
87
87
 
88
88
  private const val CUSTOMER_INFO_KEY = "customerInfo"
89
89
  }
@@ -10,9 +10,85 @@ import RevenueCat
10
10
  * here: https://capacitorjs.com/docs/plugins/ios
11
11
  */
12
12
  @objc(PurchasesPlugin)
13
- public class PurchasesPlugin: CAPPlugin, PurchasesDelegate {
13
+ public class PurchasesPlugin: CAPPlugin, PurchasesDelegate, CAPBridgedPlugin {
14
+ public let identifier = "PurchasesPlugin"
15
+ public let jsName = "Purchases"
16
+ public let pluginMethods: [CAPPluginMethod] = [
17
+ CAPPluginMethod(name: "configure", returnType: CAPPluginReturnNone),
18
+ CAPPluginMethod(name: "getVirtualCurrencies", returnType: CAPPluginReturnPromise),
19
+ CAPPluginMethod(name: "invalidateVirtualCurrenciesCache", returnType: CAPPluginReturnNone),
20
+ CAPPluginMethod(name: "getCachedVirtualCurrencies", returnType: CAPPluginReturnPromise),
21
+ CAPPluginMethod(name: "parseAsWebPurchaseRedemption", returnType: CAPPluginReturnPromise),
22
+ CAPPluginMethod(name: "redeemWebPurchase", returnType: CAPPluginReturnPromise),
23
+ CAPPluginMethod(name: "setMockWebResults", returnType: CAPPluginReturnNone),
24
+ CAPPluginMethod(name: "setFinishTransactions", returnType: CAPPluginReturnNone),
25
+ CAPPluginMethod(name: "setSimulatesAskToBuyInSandbox", returnType: CAPPluginReturnNone),
26
+ CAPPluginMethod(name: "getOfferings", returnType: CAPPluginReturnPromise),
27
+ CAPPluginMethod(name: "getCurrentOfferingForPlacement", returnType: CAPPluginReturnPromise),
28
+ CAPPluginMethod(name: "syncAttributesAndOfferingsIfNeeded", returnType: CAPPluginReturnPromise),
29
+ CAPPluginMethod(name: "getProducts", returnType: CAPPluginReturnPromise),
30
+ CAPPluginMethod(name: "purchaseStoreProduct", returnType: CAPPluginReturnPromise),
31
+ CAPPluginMethod(name: "purchaseDiscountedProduct", returnType: CAPPluginReturnPromise),
32
+ CAPPluginMethod(name: "purchasePackage", returnType: CAPPluginReturnPromise),
33
+ CAPPluginMethod(name: "purchaseSubscriptionOption", returnType: CAPPluginReturnPromise),
34
+ CAPPluginMethod(name: "purchaseDiscountedPackage", returnType: CAPPluginReturnPromise),
35
+ CAPPluginMethod(name: "restorePurchases", returnType: CAPPluginReturnPromise),
36
+ CAPPluginMethod(name: "recordPurchase", returnType: CAPPluginReturnPromise),
37
+ CAPPluginMethod(name: "getAppUserID", returnType: CAPPluginReturnPromise),
38
+ CAPPluginMethod(name: "getStorefront", returnType: CAPPluginReturnPromise),
39
+ CAPPluginMethod(name: "logIn", returnType: CAPPluginReturnPromise),
40
+ CAPPluginMethod(name: "logOut", returnType: CAPPluginReturnPromise),
41
+ CAPPluginMethod(name: "setLogLevel", returnType: CAPPluginReturnNone),
42
+ CAPPluginMethod(name: "getCustomerInfo", returnType: CAPPluginReturnPromise),
43
+ CAPPluginMethod(name: "syncPurchases", returnType: CAPPluginReturnPromise),
44
+ CAPPluginMethod(name: "syncObserverModeAmazonPurchase", returnType: CAPPluginReturnNone),
45
+ CAPPluginMethod(name: "enableAdServicesAttributionTokenCollection", returnType: CAPPluginReturnNone),
46
+ CAPPluginMethod(name: "isAnonymous", returnType: CAPPluginReturnPromise),
47
+ CAPPluginMethod(name: "checkTrialOrIntroductoryPriceEligibility", returnType: CAPPluginReturnPromise),
48
+ CAPPluginMethod(name: "getPromotionalOffer", returnType: CAPPluginReturnPromise),
49
+ CAPPluginMethod(name: "getEligibleWinBackOffersForProduct", returnType: CAPPluginReturnPromise),
50
+ CAPPluginMethod(name: "getEligibleWinBackOffersForPackage", returnType: CAPPluginReturnPromise),
51
+ CAPPluginMethod(name: "purchaseProductWithWinBackOffer", returnType: CAPPluginReturnPromise),
52
+ CAPPluginMethod(name: "purchasePackageWithWinBackOffer", returnType: CAPPluginReturnPromise),
53
+ CAPPluginMethod(name: "invalidateCustomerInfoCache", returnType: CAPPluginReturnNone),
54
+ CAPPluginMethod(name: "presentCodeRedemptionSheet", returnType: CAPPluginReturnNone),
55
+ CAPPluginMethod(name: "setAttributes", returnType: CAPPluginReturnNone),
56
+ CAPPluginMethod(name: "setEmail", returnType: CAPPluginReturnNone),
57
+ CAPPluginMethod(name: "setPhoneNumber", returnType: CAPPluginReturnNone),
58
+ CAPPluginMethod(name: "setDisplayName", returnType: CAPPluginReturnNone),
59
+ CAPPluginMethod(name: "setPushToken", returnType: CAPPluginReturnNone),
60
+ CAPPluginMethod(name: "setProxyURL", returnType: CAPPluginReturnNone),
61
+ CAPPluginMethod(name: "collectDeviceIdentifiers", returnType: CAPPluginReturnNone),
62
+ CAPPluginMethod(name: "setAdjustID", returnType: CAPPluginReturnNone),
63
+ CAPPluginMethod(name: "setAppsflyerID", returnType: CAPPluginReturnNone),
64
+ CAPPluginMethod(name: "setFBAnonymousID", returnType: CAPPluginReturnNone),
65
+ CAPPluginMethod(name: "setMparticleID", returnType: CAPPluginReturnNone),
66
+ CAPPluginMethod(name: "setCleverTapID", returnType: CAPPluginReturnNone),
67
+ CAPPluginMethod(name: "setMixpanelDistinctID", returnType: CAPPluginReturnNone),
68
+ CAPPluginMethod(name: "setFirebaseAppInstanceID", returnType: CAPPluginReturnNone),
69
+ CAPPluginMethod(name: "setOnesignalID", returnType: CAPPluginReturnNone),
70
+ CAPPluginMethod(name: "setOnesignalUserID", returnType: CAPPluginReturnNone),
71
+ CAPPluginMethod(name: "setAirshipChannelID", returnType: CAPPluginReturnNone),
72
+ CAPPluginMethod(name: "setMediaSource", returnType: CAPPluginReturnNone),
73
+ CAPPluginMethod(name: "setCampaign", returnType: CAPPluginReturnNone),
74
+ CAPPluginMethod(name: "setAdGroup", returnType: CAPPluginReturnNone),
75
+ CAPPluginMethod(name: "setAd", returnType: CAPPluginReturnNone),
76
+ CAPPluginMethod(name: "setKeyword", returnType: CAPPluginReturnNone),
77
+ CAPPluginMethod(name: "setCreative", returnType: CAPPluginReturnNone),
78
+ CAPPluginMethod(name: "canMakePayments", returnType: CAPPluginReturnPromise),
79
+ CAPPluginMethod(name: "beginRefundRequestForActiveEntitlement", returnType: CAPPluginReturnPromise),
80
+ CAPPluginMethod(name: "beginRefundRequestForEntitlement", returnType: CAPPluginReturnPromise),
81
+ CAPPluginMethod(name: "beginRefundRequestForProduct", returnType: CAPPluginReturnPromise),
82
+ CAPPluginMethod(name: "showInAppMessages", returnType: CAPPluginReturnNone),
83
+ CAPPluginMethod(name: "isConfigured", returnType: CAPPluginReturnPromise),
84
+ CAPPluginMethod(name: "setLogHandler", returnType: CAPPluginReturnCallback),
85
+ CAPPluginMethod(name: "addCustomerInfoUpdateListener", returnType: CAPPluginReturnCallback),
86
+ CAPPluginMethod(name: "removeCustomerInfoUpdateListener", returnType: CAPPluginReturnPromise),
87
+ CAPPluginMethod(name: "addShouldPurchasePromoProductListener", returnType: CAPPluginReturnCallback),
88
+ CAPPluginMethod(name: "removeShouldPurchasePromoProductListener", returnType: CAPPluginReturnPromise),
89
+ ]
14
90
  private let platformFlavor = "capacitor"
15
- private let platformVersion = "11.2.17"
91
+ private let platformVersion = "11.3.0"
16
92
 
17
93
  private let customerInfoKey = "customerInfo"
18
94
  private let transactionKey = "transaction"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@revenuecat/purchases-capacitor",
3
- "version": "11.2.17",
3
+ "version": "11.3.0",
4
4
  "description": "Capacitor in-app purchases and subscriptions made easy. Support for iOS and Android.",
5
5
  "main": "dist/esm/index.js",
6
6
  "module": "dist/esm/index.js",
@@ -10,8 +10,9 @@
10
10
  "android/src/main/",
11
11
  "android/build.gradle",
12
12
  "dist/",
13
- "ios/Plugin/",
14
- "RevenuecatPurchasesCapacitor.podspec"
13
+ "RevenuecatPurchasesCapacitor.podspec",
14
+ "ios/Sources",
15
+ "Package.swift"
15
16
  ],
16
17
  "author": "RevenueCat, Inc.",
17
18
  "license": "MIT",
@@ -29,7 +30,8 @@
29
30
  ],
30
31
  "scripts": {
31
32
  "verify": "npm run verify:ios && npm run verify:android && npm run verify:web",
32
- "verify:ios": "cd ios && pod install && xcodebuild -workspace Plugin.xcworkspace -scheme Plugin -destination generic/platform=iOS && cd ..",
33
+ "verify:ios": "xcodebuild -scheme RevenuecatPurchasesCapacitor -destination generic/platform=iOS && npm run verify:ios:cocoapods",
34
+ "verify:ios:cocoapods": "cd ios/CocoapodsInstallationTest && pod install && xcodebuild -workspace CocoapodsInstallationTest.xcworkspace -scheme CocoapodsInstallationTest -destination 'generic/platform=iOS' CODE_SIGNING_ALLOWED=NO CODE_SIGNING_REQUIRED=NO CODE_SIGN_IDENTITY=\"\" build",
33
35
  "verify:android": "cd android && ./gradlew clean build test && cd ..",
34
36
  "verify:web": "npm run build",
35
37
  "lint": "npm run eslint && npm run prettier -- --check",
@@ -74,6 +76,6 @@
74
76
  }
75
77
  },
76
78
  "dependencies": {
77
- "@revenuecat/purchases-typescript-internal-esm": "17.21.2"
79
+ "@revenuecat/purchases-typescript-internal-esm": "17.23.0"
78
80
  }
79
- }
81
+ }
@@ -1,24 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3
- <plist version="1.0">
4
- <dict>
5
- <key>CFBundleDevelopmentRegion</key>
6
- <string>$(DEVELOPMENT_LANGUAGE)</string>
7
- <key>CFBundleExecutable</key>
8
- <string>$(EXECUTABLE_NAME)</string>
9
- <key>CFBundleIdentifier</key>
10
- <string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
11
- <key>CFBundleInfoDictionaryVersion</key>
12
- <string>6.0</string>
13
- <key>CFBundleName</key>
14
- <string>$(PRODUCT_NAME)</string>
15
- <key>CFBundlePackageType</key>
16
- <string>FMWK</string>
17
- <key>CFBundleShortVersionString</key>
18
- <string>1.0</string>
19
- <key>CFBundleVersion</key>
20
- <string>$(CURRENT_PROJECT_VERSION)</string>
21
- <key>NSPrincipalClass</key>
22
- <string></string>
23
- </dict>
24
- </plist>
@@ -1,10 +0,0 @@
1
- #import <UIKit/UIKit.h>
2
-
3
- //! Project version number for Plugin.
4
- FOUNDATION_EXPORT double PluginVersionNumber;
5
-
6
- //! Project version string for Plugin.
7
- FOUNDATION_EXPORT const unsigned char PluginVersionString[];
8
-
9
- // In this header, you should import all the public headers of your framework using statements like #import <Plugin/PublicHeader.h>
10
-
@@ -1,79 +0,0 @@
1
- #import <Foundation/Foundation.h>
2
- #import <Capacitor/Capacitor.h>
3
-
4
- // Define the plugin using the CAP_PLUGIN Macro, and
5
- // each method the plugin supports using the CAP_PLUGIN_METHOD macro.
6
- CAP_PLUGIN(PurchasesPlugin, "Purchases",
7
- CAP_PLUGIN_METHOD(configure, CAPPluginReturnNone);
8
- CAP_PLUGIN_METHOD(getVirtualCurrencies, CAPPluginReturnPromise);
9
- CAP_PLUGIN_METHOD(invalidateVirtualCurrenciesCache, CAPPluginReturnNone);
10
- CAP_PLUGIN_METHOD(getCachedVirtualCurrencies, CAPPluginReturnPromise);
11
- CAP_PLUGIN_METHOD(parseAsWebPurchaseRedemption, CAPPluginReturnPromise);
12
- CAP_PLUGIN_METHOD(redeemWebPurchase, CAPPluginReturnPromise);
13
- CAP_PLUGIN_METHOD(setMockWebResults, CAPPluginReturnNone);
14
- CAP_PLUGIN_METHOD(setFinishTransactions, CAPPluginReturnNone);
15
- CAP_PLUGIN_METHOD(setSimulatesAskToBuyInSandbox, CAPPluginReturnNone);
16
- CAP_PLUGIN_METHOD(getOfferings, CAPPluginReturnPromise);
17
- CAP_PLUGIN_METHOD(getCurrentOfferingForPlacement, CAPPluginReturnPromise);
18
- CAP_PLUGIN_METHOD(syncAttributesAndOfferingsIfNeeded, CAPPluginReturnPromise);
19
- CAP_PLUGIN_METHOD(getProducts, CAPPluginReturnPromise);
20
- CAP_PLUGIN_METHOD(purchaseStoreProduct, CAPPluginReturnPromise);
21
- CAP_PLUGIN_METHOD(purchaseDiscountedProduct, CAPPluginReturnPromise);
22
- CAP_PLUGIN_METHOD(purchasePackage, CAPPluginReturnPromise);
23
- CAP_PLUGIN_METHOD(purchaseSubscriptionOption, CAPPluginReturnPromise);
24
- CAP_PLUGIN_METHOD(purchaseDiscountedPackage, CAPPluginReturnPromise);
25
- CAP_PLUGIN_METHOD(restorePurchases, CAPPluginReturnPromise);
26
- CAP_PLUGIN_METHOD(recordPurchase, CAPPluginReturnPromise);
27
- CAP_PLUGIN_METHOD(getAppUserID, CAPPluginReturnPromise);
28
- CAP_PLUGIN_METHOD(getStorefront, CAPPluginReturnPromise);
29
- CAP_PLUGIN_METHOD(logIn, CAPPluginReturnPromise);
30
- CAP_PLUGIN_METHOD(logOut, CAPPluginReturnPromise);
31
- CAP_PLUGIN_METHOD(setLogLevel, CAPPluginReturnNone);
32
- CAP_PLUGIN_METHOD(getCustomerInfo, CAPPluginReturnPromise);
33
- CAP_PLUGIN_METHOD(syncPurchases, CAPPluginReturnPromise);
34
- CAP_PLUGIN_METHOD(syncObserverModeAmazonPurchase, CAPPluginReturnNone);
35
- CAP_PLUGIN_METHOD(enableAdServicesAttributionTokenCollection, CAPPluginReturnNone);
36
- CAP_PLUGIN_METHOD(isAnonymous, CAPPluginReturnPromise);
37
- CAP_PLUGIN_METHOD(checkTrialOrIntroductoryPriceEligibility, CAPPluginReturnPromise);
38
- CAP_PLUGIN_METHOD(getPromotionalOffer, CAPPluginReturnPromise);
39
- CAP_PLUGIN_METHOD(getEligibleWinBackOffersForProduct, CAPPluginReturnPromise);
40
- CAP_PLUGIN_METHOD(getEligibleWinBackOffersForPackage, CAPPluginReturnPromise);
41
- CAP_PLUGIN_METHOD(purchaseProductWithWinBackOffer, CAPPluginReturnPromise);
42
- CAP_PLUGIN_METHOD(purchasePackageWithWinBackOffer, CAPPluginReturnPromise);
43
- CAP_PLUGIN_METHOD(invalidateCustomerInfoCache, CAPPluginReturnNone);
44
- CAP_PLUGIN_METHOD(presentCodeRedemptionSheet, CAPPluginReturnNone);
45
- CAP_PLUGIN_METHOD(setAttributes, CAPPluginReturnNone);
46
- CAP_PLUGIN_METHOD(setEmail, CAPPluginReturnNone);
47
- CAP_PLUGIN_METHOD(setPhoneNumber, CAPPluginReturnNone);
48
- CAP_PLUGIN_METHOD(setDisplayName, CAPPluginReturnNone);
49
- CAP_PLUGIN_METHOD(setPushToken, CAPPluginReturnNone);
50
- CAP_PLUGIN_METHOD(setProxyURL, CAPPluginReturnNone);
51
- CAP_PLUGIN_METHOD(collectDeviceIdentifiers, CAPPluginReturnNone);
52
- CAP_PLUGIN_METHOD(setAdjustID, CAPPluginReturnNone);
53
- CAP_PLUGIN_METHOD(setAppsflyerID, CAPPluginReturnNone);
54
- CAP_PLUGIN_METHOD(setFBAnonymousID, CAPPluginReturnNone);
55
- CAP_PLUGIN_METHOD(setMparticleID, CAPPluginReturnNone);
56
- CAP_PLUGIN_METHOD(setCleverTapID, CAPPluginReturnNone);
57
- CAP_PLUGIN_METHOD(setMixpanelDistinctID, CAPPluginReturnNone);
58
- CAP_PLUGIN_METHOD(setFirebaseAppInstanceID, CAPPluginReturnNone);
59
- CAP_PLUGIN_METHOD(setOnesignalID, CAPPluginReturnNone);
60
- CAP_PLUGIN_METHOD(setOnesignalUserID, CAPPluginReturnNone);
61
- CAP_PLUGIN_METHOD(setAirshipChannelID, CAPPluginReturnNone);
62
- CAP_PLUGIN_METHOD(setMediaSource, CAPPluginReturnNone);
63
- CAP_PLUGIN_METHOD(setCampaign, CAPPluginReturnNone);
64
- CAP_PLUGIN_METHOD(setAdGroup, CAPPluginReturnNone);
65
- CAP_PLUGIN_METHOD(setAd, CAPPluginReturnNone);
66
- CAP_PLUGIN_METHOD(setKeyword, CAPPluginReturnNone);
67
- CAP_PLUGIN_METHOD(setCreative, CAPPluginReturnNone);
68
- CAP_PLUGIN_METHOD(canMakePayments, CAPPluginReturnPromise);
69
- CAP_PLUGIN_METHOD(beginRefundRequestForActiveEntitlement, CAPPluginReturnPromise);
70
- CAP_PLUGIN_METHOD(beginRefundRequestForEntitlement, CAPPluginReturnPromise);
71
- CAP_PLUGIN_METHOD(beginRefundRequestForProduct, CAPPluginReturnPromise);
72
- CAP_PLUGIN_METHOD(showInAppMessages, CAPPluginReturnNone);
73
- CAP_PLUGIN_METHOD(isConfigured, CAPPluginReturnPromise);
74
- CAP_PLUGIN_METHOD(setLogHandler, CAPPluginReturnCallback);
75
- CAP_PLUGIN_METHOD(addCustomerInfoUpdateListener, CAPPluginReturnCallback);
76
- CAP_PLUGIN_METHOD(removeCustomerInfoUpdateListener, CAPPluginReturnPromise);
77
- CAP_PLUGIN_METHOD(addShouldPurchasePromoProductListener, CAPPluginReturnCallback);
78
- CAP_PLUGIN_METHOD(removeShouldPurchasePromoProductListener, CAPPluginReturnPromise);
79
- )