Skip to content

Commit

Permalink
Merge pull request #78 from qonversion/release/6.0.0
Browse files Browse the repository at this point in the history
Release/6.0.0
  • Loading branch information
suriksarkisyan committed Jul 9, 2024
2 parents aaa4237 + f024f05 commit dff09b8
Show file tree
Hide file tree
Showing 10 changed files with 53 additions and 29 deletions.
2 changes: 1 addition & 1 deletion plugin/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "cordova-plugin-qonversion",
"version": "5.5.0",
"version": "6.0.0",
"description": "Qonversion Cordova Plugin",
"cordova": {
"id": "cordova-plugin-qonversion",
Expand Down
4 changes: 2 additions & 2 deletions plugin/plugin.xml
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@
<param name="android-package" value="com.qonversion.android.sdk.QonversionPlugin"/>
</feature>
</config-file>
<framework src="io.qonversion.sandwich:sandwich:4.5.0" />
<framework src="io.qonversion.sandwich:sandwich:5.0.2" />
<source-file src="src/android/QonversionPlugin.java" target-dir="src/com/qonversion/android/sdk" />
<source-file src="src/android/EntitiesConverter.java" target-dir="src/com/qonversion/android/sdk" />
<source-file src="src/android/Utils.java" target-dir="src/com/qonversion/android/sdk" />
Expand All @@ -73,7 +73,7 @@
<source url="https://github.com/CocoaPods/Specs.git"/>
</config>
<pods use-frameworks="true">
<pod name="QonversionSandwich" spec="4.5.0" />
<pod name="QonversionSandwich" spec="5.0.2" />
</pods>
</podspec>
</platform>
Expand Down
5 changes: 5 additions & 0 deletions plugin/src/android/QonversionPlugin.java
Original file line number Diff line number Diff line change
Expand Up @@ -202,6 +202,11 @@ public void detachUserFromRemoteConfiguration(String remoteConfigurationId, Call
qonversionSandwich.detachUserFromRemoteConfiguration(remoteConfigurationId, Utils.getEmptyResultListener(callbackContext));
}

@PluginAction(thread = ExecutionThread.WORKER, actionName = "isFallbackFileAccessible", isAutofinish = false)
public void isFallbackFileAccessible(CallbackContext callbackContext) {
qonversionSandwich.isFallbackFileAccessible(Utils.getResultListener(callbackContext));
}

@PluginAction(thread = ExecutionThread.WORKER, actionName = "syncPurchases", isAutofinish = false)
public void syncPurchases(CallbackContext callbackContext) {
qonversionSandwich.syncPurchases();
Expand Down
1 change: 1 addition & 0 deletions plugin/src/ios/CDVQonversionPlugin.h
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@ NS_ASSUME_NONNULL_BEGIN
- (void)detachUserFromExperiment:(CDVInvokedUrlCommand *)command;
- (void)attachUserToRemoteConfiguration:(CDVInvokedUrlCommand *)command;
- (void)detachUserFromRemoteConfiguration:(CDVInvokedUrlCommand *)command;
- (void)isFallbackFileAccessible:(CDVInvokedUrlCommand *)command;

@end

Expand Down
11 changes: 11 additions & 0 deletions plugin/src/ios/CDVQonversionPlugin.m
Original file line number Diff line number Diff line change
Expand Up @@ -219,6 +219,17 @@ - (void)detachUserFromRemoteConfiguration:(CDVInvokedUrlCommand *)command {
}];
}

- (void)isFallbackFileAccessible:(CDVInvokedUrlCommand *)command {
__block __weak CDVQonversionPlugin *weakSelf = self;
[self.qonversionSandwich isFallbackFileAccessibleWithCompletion:^(NSDictionary<NSString *,id> * _Nullable result, SandwichError * _Nullable error) {
if (error) {
[weakSelf returnCordovaResult:nil error:error command:command];
} else {
[weakSelf returnCordovaResult:result error:nil command:command];
}
}];
}

- (void)identify:(CDVInvokedUrlCommand *)command {
__block __weak CDVQonversionPlugin *weakSelf = self;
NSString *identityId = [command argumentAtIndex:0];
Expand Down
4 changes: 4 additions & 0 deletions plugin/src/plugin/Mapper.ts
Original file line number Diff line number Diff line change
Expand Up @@ -246,6 +246,10 @@ type QAutomationsEvent = {
timestamp: number;
};

export type QEmptySuccessResult = {
success: boolean;
};

export type QUser = {
qonversionId: string;
identityId?: string | null;
Expand Down
6 changes: 6 additions & 0 deletions plugin/src/plugin/QonversionApi.ts
Original file line number Diff line number Diff line change
Expand Up @@ -188,6 +188,12 @@ export interface QonversionApi {
*/
detachUserFromRemoteConfiguration(remoteConfigurationId: string): Promise<void>

/**
* Call this function to check if the fallback file is accessible.
* @returns the promise with the flag that indicates whether Qonversion was able to read data from the fallback file or not.
*/
isFallbackFileAccessible(): Promise<Boolean>;

/**
* Sends your attribution {@link data} to the {@link provider}.
*
Expand Down
9 changes: 8 additions & 1 deletion plugin/src/plugin/QonversionInternal.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import {AttributionProvider, QonversionErrorCode, UserPropertyKey} from "./enums";
import {IntroEligibility} from "./IntroEligibility";
import Mapper, {
QEmptySuccessResult,
QEntitlement,
QOfferings,
QProduct,
Expand All @@ -25,7 +26,7 @@ import {UserProperties} from './UserProperties';
import {PurchaseModel} from './PurchaseModel';
import {PurchaseUpdateModel} from './PurchaseUpdateModel';

const sdkVersion = "5.5.0";
const sdkVersion = "6.0.0";

export default class QonversionInternal implements QonversionApi {

Expand Down Expand Up @@ -181,6 +182,12 @@ export default class QonversionInternal implements QonversionApi {
callNative('syncPurchases').then(noop);
}

async isFallbackFileAccessible(): Promise<Boolean> {
const isAccessibleResult = await callNative<QEmptySuccessResult>('isFallbackFileAccessible');

return isAccessibleResult.success;
}

async identify(userID: string): Promise<User> {
const info = await callNative<QUser>('identify', [userID]);

Expand Down
2 changes: 1 addition & 1 deletion sample/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
"cordova-android": "^11.0.0",
"cordova-annotated-plugin-android": "^1.0.4",
"cordova-ios": "^6.3.0",
"cordova-plugin-device": "^2.1.0",
"cordova-plugin-device": "^3.0.0",
"cordova-plugin-qonversion": "file:../plugin"
},
"cordova": {
Expand Down
38 changes: 14 additions & 24 deletions sample/yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -178,13 +178,13 @@ cordova-ios@^6.3.0:
xcode "^3.0.1"
xml-escape "^1.1.0"

cordova-plugin-device@^2.1.0:
version "2.1.0"
resolved "https://registry.npmjs.org/cordova-plugin-device/-/cordova-plugin-device-2.1.0.tgz"
integrity sha512-FU0Lw1jZpuKOgG4v80LrfMAOIMCGfAVPumn7AwaX9S1iU/X3OPZUyoKUgP09q4bxL35IeNPkqNWVKYduAXZ1sg==
cordova-plugin-device@^3.0.0:
version "3.0.0"
resolved "https://registry.npmjs.org/cordova-plugin-device/-/cordova-plugin-device-3.0.0.tgz"
integrity sha512-g8fFYOvleeYpklWvHwZ/T8/IzJe/3O0MGVDIUoqBru4v8SNDAbNVD3oOqoOQANBWGFQMg7GIkAAl8errCHZ7zQ==

"cordova-plugin-qonversion@file:../plugin":
version "5.2.0"
version "6.0.0"
resolved "file:../plugin"

cross-spawn@^7.0.1, cross-spawn@^7.0.3:
Expand Down Expand Up @@ -276,17 +276,7 @@ fs-extra@^10.1.0:
jsonfile "^6.0.1"
universalify "^2.0.0"

fs-extra@^9.0.0:
version "9.1.0"
resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz"
integrity sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==
dependencies:
at-least-node "^1.0.0"
graceful-fs "^4.2.0"
jsonfile "^6.0.1"
universalify "^2.0.0"

fs-extra@^9.1.0:
fs-extra@^9.0.0, fs-extra@^9.1.0:
version "9.1.0"
resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz"
integrity sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==
Expand Down Expand Up @@ -375,10 +365,10 @@ ios-sim@^8.0.2:
plist "^3.0.1"
simctl "^2"

is-core-module@^2.13.0:
version "2.13.0"
resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.0.tgz"
integrity sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==
is-core-module@^2.11.0:
version "2.12.1"
resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.1.tgz"
integrity sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==
dependencies:
has "^1.0.3"

Expand Down Expand Up @@ -581,11 +571,11 @@ rechoir@^0.6.2:
resolve "^1.1.6"

resolve@^1.1.6:
version "1.22.4"
resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz"
integrity sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==
version "1.22.2"
resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz"
integrity sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==
dependencies:
is-core-module "^2.13.0"
is-core-module "^2.11.0"
path-parse "^1.0.7"
supports-preserve-symlinks-flag "^1.0.0"

Expand Down

0 comments on commit dff09b8

Please sign in to comment.