Skip to content
This repository has been archived by the owner on Jul 1, 2024. It is now read-only.

Commit

Permalink
Revert "Revert "Merge pull request #176 from Synerise/v4.14.0""
Browse files Browse the repository at this point in the history
This reverts commit c160394.
  • Loading branch information
awoczek committed Jul 26, 2023
1 parent c160394 commit c0180a7
Show file tree
Hide file tree
Showing 44 changed files with 1,960 additions and 1,339 deletions.
11 changes: 11 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,17 @@ All notable changes to this project will be documented in this file.

Note that Objective-C class names are prefixed by `SNR`. In the changelog below, these are names used in Swift, without the prefix.

## [4.14.0] - 2023-07-12

### Added
- New authentication mechanism - Simple Authentication. It allows identification of customers without implementing more complicated processes such as RaaS, OAuth, or authenticating by third party services, for example Facebook or Apple. Simple Authentication needs only two methods - `Client.simpleAuthentication(data:authID:success:failure:)` to recognize a customer and `Client.isSignedInViaSimpleAuthentication()` to check if the customer is signed in and uses the Simple Authentication feature. The `Client.signOut()` method and similar methods are a common way to sign out and clear the user context.
- We added a new `Client.registerForPush(registrationToken:success:failure:)` method. It is analogous to `Client.registerForPush(registrationToken:mobilePushAgreement:success:failure:)`, but doesn't require the`mobilePushAgreement` parameter and thanks to that, it doesn't update the customer in the database.

### Changed
- We changed the behavior when a customer context changes. Now, events that were queued before the context change are force-sent to the previous client profile.
- Improvements to stability.


## [4.13.1] - 2023-05-29

### Fixed
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
# Synerise iOS SDK (v4.13.1) - User documentation
# Synerise iOS SDK (v4.14.0) - User documentation

[![Platform](https://img.shields.io/badge/platform-iOS-orange.svg)](https://github.com/synerise/ios-sdk)
[![Languages](https://img.shields.io/badge/language-Objective--C%20%7C%20Swift-orange.svg)](https://github.com/synerise/ios-sdk)
[![GitHub release](https://img.shields.io/github/release/Synerise/ios-sdk.svg?style=flat-square)](https://github.com/Synerise/ios-sdk/releases)
[![CocoaPods](https://img.shields.io/badge/pod-v4.13.1-green.svg)](https://cocoapods.org/pods/SyneriseSDK)
[![CocoaPods](https://img.shields.io/badge/pod-v4.14.0-green.svg)](https://cocoapods.org/pods/SyneriseSDK)
[![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage)
[![Documentation](https://img.shields.io/badge/docs-latest-brightgreen.svg?style=flat-square)](https://help.synerise.com/)

Expand Down

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleShortVersionString</key>
<string>4.13.1</string>
<string>4.14.0</string>
<key>CFBundleVersion</key>
<string>1</string>
</dict>
Expand Down
Binary file not shown.
11 changes: 11 additions & 0 deletions SDK/Framework/SyneriseSDK.framework/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,17 @@ All notable changes to this project will be documented in this file.

Note that Objective-C class names are prefixed by `SNR`. In the changelog below, these are names used in Swift, without the prefix.

## [4.14.0] - 2023-07-12

### Added
- New authentication mechanism - Simple Authentication. It allows identification of customers without implementing more complicated processes such as RaaS, OAuth, or authenticating by third party services, for example Facebook or Apple. Simple Authentication needs only two methods - `Client.simpleAuthentication(data:authID:success:failure:)` to recognize a customer and `Client.isSignedInViaSimpleAuthentication()` to check if the customer is signed in and uses the Simple Authentication feature. The `Client.signOut()` method and similar methods are a common way to sign out and clear the user context.
- We added a new `Client.registerForPush(registrationToken:success:failure:)` method. It is analogous to `Client.registerForPush(registrationToken:mobilePushAgreement:success:failure:)`, but doesn't require the`mobilePushAgreement` parameter and thanks to that, it doesn't update the customer in the database.

### Changed
- We changed the behavior when a customer context changes. Now, events that were queued before the context change are force-sent to the previous client profile.
- Improvements to stability.


## [4.13.1] - 2023-05-29

### Fixed
Expand Down
35 changes: 34 additions & 1 deletion SDK/Framework/SyneriseSDK.framework/Headers/SNRClient.h
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
@class SNRClientFacebookAuthenticationContext;
@class SNRClientAppleSignInAuthenticationContext;
@class SNRClientConditionalAuthResult;
@class SNRClientSimpleAuthenticationData;
@class SNRClientAccountInformation;
@class SNRClientEventData;
@class SNRClientUpdateAccountContext;
Expand Down Expand Up @@ -294,17 +295,38 @@ NS_SWIFT_NAME(Client)
failure:(void (^)(SNRApiError *error))failure NS_SWIFT_NAME(authenticateByAppleSignInIfRegistered(identityToken:authID:success:failure:)) DEPRECATED_MSG_ATTRIBUTE("Use `Client.authenticateConditionally(token:clientIdentityProvider:authID:context:success:failure:)` instead.");

/**
* Checks if a customer is signed in (if client's token not expired).
* Signs in a customer with Simple Authentication.
* Note, that to use this method you have to set request validation salt by `Synerise.setRequestValidationSalt(_:)` method.
*
* @param data `SNRClientSimpleAuthenticationData` object with client's data information to be modified. Fields that are not provided are not modified.
* @param success A block object to be executed when the operation finishes successfully.
* @param failure A block object to be executed when the operation finishes unsuccessfully.
*/
+ (void)simpleAuthentication:(SNRClientSimpleAuthenticationData *)data
authID:(NSString *)authID
success:(void (^)(void))success
failure:(void (^)(SNRApiError *error))failure NS_SWIFT_NAME(simpleAuthentication(data:authID:success:failure:));

/**
* Checks if a customer is signed in via Synerise, External Provider or OAuth (if client's token is not expired).
*/
+ (BOOL)isSignedIn;

/**
* Checks if a customer is signed in via Simple Authentication (if anonymous's token is not expired and its origin is .simpleAuth).
*/
+ (BOOL)isSignedInViaSimpleAuthentication;

/**
* Signs out the customer.
* Note that this operation signs out a customer of any type authentication (via Synerise, External Provider, OAuth or Simple Authentication).
*
*/
+ (void)signOut NS_SWIFT_NAME(signOut());

/**
* Signs out the customer.
* Note that this operation signs out a customer of any type authentication (via Synerise, External Provider, OAuth or Simple Authentication).
*
* @param mode Logout mode.
*
Expand All @@ -314,6 +336,7 @@ NS_SWIFT_NAME(Client)

/**
* Signs out the customer.
* Note that this operation signs out a customer of any type authentication (via Synerise, External Provider, OAuth or Simple Authentication).
*
* @param mode Logout mode.
* @param fromAllDevices Determines whether it should sign out all devices.
Expand Down Expand Up @@ -593,6 +616,16 @@ clientIdentityProvider:(SNRClientIdentityProvider)clientIdentityProvider
customIdentify:(nullable NSString *)customIdentify
parameters:(nullable NSDictionary *)parameters NS_SWIFT_NAME(recognizeAnonymous(email:customIdentify:parameters:));

/**
* Registers user for Push Notifications.
*
* @param registrationToken Firebase FCM Token returned after successful push notifications registration from Firebase.
* @param success A block object to be executed when the operation finishes successfully.
* @param failure A block object to be executed when the operation finishes unsuccessfully.
*/
+ (void)registerForPush:(NSString *)registrationToken
success:(void (^)(BOOL isSuccess))success
failure:(void (^)(SNRApiError *error))failure NS_SWIFT_NAME(registerForPush(registrationToken:success:failure:));

/**
* Registers user for Push Notifications.
Expand Down
2 changes: 1 addition & 1 deletion SDK/Framework/SyneriseSDK.framework/Headers/SNRClientSex.h
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ typedef NS_ENUM(NSUInteger, SNRClientSex) {
SNRClientSexOther,
} NS_SWIFT_NAME(ClientSex);

NSString * SNR_ClientSexToString(SNRClientSex type);
NSString * SNR_ClientSexToString(SNRClientSex clientSex);
SNRClientSex SNR_StringToClientSex(NSString * _Nullable string);

NS_ASSUME_NONNULL_END
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
//
// SNRClientSubmitDataContext.h
// SyneriseSDK
//
// Created by Synerise
// Copyright (c) 2023 Synerise. All rights reserved.
//

#import <SyneriseSDK/SNRBaseModel.h>
#import <SyneriseSDK/SNRClientSex.h>
#import <SyneriseSDK/SNRClientAgreements.h>

NS_ASSUME_NONNULL_BEGIN

/**
* @class SNRClientSimpleAuthenticationData
*/

NS_SWIFT_NAME(ClientSimpleAuthenticationData)
@interface SNRClientSimpleAuthenticationData : SNRBaseModel

@property (copy, nonatomic, nullable, readwrite) NSString *email;
@property (copy, nonatomic, nullable, readwrite) NSString *phone;
@property (copy, nonatomic, nullable, readwrite) NSString *customId;
@property (copy, nonatomic, nullable, readwrite) NSString *uuid;

@property (copy, nonatomic, nullable, readwrite) NSString *firstName;
@property (copy, nonatomic, nullable, readwrite) NSString *lastName;
@property (copy, nonatomic, nullable, readwrite) NSString *displayName;
@property (assign, nonatomic, readwrite) SNRClientSex sex;
@property (copy, nonatomic, nullable, readwrite) NSString *company;
@property (copy, nonatomic, nullable, readwrite) NSString *address;
@property (copy, nonatomic, nullable, readwrite) NSString *city;
@property (copy, nonatomic, nullable, readwrite) NSString *province;
@property (copy, nonatomic, nullable, readwrite) NSString *zipCode;
@property (copy, nonatomic, nullable, readwrite) NSString *countryCode;
@property (copy, nonatomic, nullable, readwrite) NSString *birthDate;
@property (copy, nonatomic, nullable, readwrite) NSString *avatarUrl;

@property (copy, nonatomic, nullable, readwrite) SNRClientAgreements *agreements;

@property (copy, nonatomic, nullable, readwrite) NSDictionary *attributes;

@end

NS_ASSUME_NONNULL_END
8 changes: 4 additions & 4 deletions SDK/Framework/SyneriseSDK.framework/Headers/SNRSettings.h
Original file line number Diff line number Diff line change
Expand Up @@ -33,14 +33,14 @@ NS_SWIFT_NAME(Settings)
@property (strong, nonatomic, nonnull, readonly) SNRNotificationsSettings *notifications;

/**
* In-App Messaging settings of the SDK
* Settings for the Tracker module
*/
@property (strong, nonatomic, nonnull, readonly) SNRInAppMessagingSettings *inAppMessaging;
@property (strong, nonatomic, nonnull, readonly) SNRTrackerSettings *tracker;

/**
* Settings for the Tracker module
* In-App Messaging settings of the SDK
*/
@property (strong, nonatomic, nonnull, readonly) SNRTrackerSettings *tracker;
@property (strong, nonatomic, nonnull, readonly) SNRInAppMessagingSettings *inAppMessaging;

/**
* Settings for the Injector module
Expand Down
7 changes: 7 additions & 0 deletions SDK/Framework/SyneriseSDK.framework/Headers/SNRSynerise.h
Original file line number Diff line number Diff line change
Expand Up @@ -170,6 +170,13 @@ NS_SWIFT_NAME(Synerise)
*/
+ (void)changeClientApiKey:(NSString *)clientApiKey;

/**
* Sets salt string for request validation.
*
* @param string Synerise Profile salt string for request validation.
*/
+ (void)setRequestValidationSalt:(NSString *)string;

/**
* Enables/Disables console logs from Synerise SDK.
*
Expand Down
3 changes: 2 additions & 1 deletion SDK/Framework/SyneriseSDK.framework/Headers/SNRTokenOrigin.h
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,9 @@ NS_ASSUME_NONNULL_BEGIN
typedef NS_ENUM(NSUInteger, SNRTokenOrigin) {
SNRTokenOriginUnknown,
SNRTokenOriginSynerise,
SNRTokenOriginFacebook,
SNRTokenOriginSimpleAuth,
SNRTokenOriginOauth,
SNRTokenOriginFacebook,
SNRTokenOriginApple
} NS_SWIFT_NAME(TokenOrigin);

Expand Down
1 change: 1 addition & 0 deletions SDK/Framework/SyneriseSDK.framework/Headers/SyneriseSDK.h
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,7 @@
#import <SyneriseSDK/SNRClientPasswordResetRequestContext.h>
#import <SyneriseSDK/SNRClientPasswordResetConfirmationContext.h>
#import <SyneriseSDK/SNRClientUpdateAccountContext.h>
#import <SyneriseSDK/SNRClientSimpleAuthenticationData.h>
#import <SyneriseSDK/SNRClientAccountInformation.h>
#import <SyneriseSDK/SNRClientEventData.h>
#import <SyneriseSDK/SNRTokenOrigin.h>
Expand Down
Binary file modified SDK/Framework/SyneriseSDK.framework/Info.plist
Binary file not shown.
4 changes: 2 additions & 2 deletions SDK/Framework/SyneriseSDK.framework/README.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
# Synerise iOS SDK (v4.13.1) - User documentation
# Synerise iOS SDK (v4.14.0) - User documentation

[![Platform](https://img.shields.io/badge/platform-iOS-orange.svg)](https://github.com/synerise/ios-sdk)
[![Languages](https://img.shields.io/badge/language-Objective--C%20%7C%20Swift-orange.svg)](https://github.com/synerise/ios-sdk)
[![GitHub release](https://img.shields.io/github/release/Synerise/ios-sdk.svg?style=flat-square)](https://github.com/Synerise/ios-sdk/releases)
[![CocoaPods](https://img.shields.io/badge/pod-v4.13.1-green.svg)](https://cocoapods.org/pods/SyneriseSDK)
[![CocoaPods](https://img.shields.io/badge/pod-v4.14.0-green.svg)](https://cocoapods.org/pods/SyneriseSDK)
[![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage)
[![Documentation](https://img.shields.io/badge/docs-latest-brightgreen.svg?style=flat-square)](https://help.synerise.com/)

Expand Down
Binary file modified SDK/Framework/SyneriseSDK.framework/SyneriseSDK
Binary file not shown.
18 changes: 9 additions & 9 deletions SDK/XCFramework/SyneriseSDK.xcframework/Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -5,35 +5,35 @@
<key>AvailableLibraries</key>
<array>
<dict>
<key>BitcodeSymbolMapsPath</key>
<string>BCSymbolMaps</string>
<key>DebugSymbolsPath</key>
<string>dSYMs</string>
<key>LibraryIdentifier</key>
<string>ios-arm64_x86_64-simulator</string>
<string>ios-arm64</string>
<key>LibraryPath</key>
<string>SyneriseSDK.framework</string>
<key>SupportedArchitectures</key>
<array>
<string>arm64</string>
<string>x86_64</string>
</array>
<key>SupportedPlatform</key>
<string>ios</string>
<key>SupportedPlatformVariant</key>
<string>simulator</string>
</dict>
<dict>
<key>BitcodeSymbolMapsPath</key>
<string>BCSymbolMaps</string>
<key>DebugSymbolsPath</key>
<string>dSYMs</string>
<key>LibraryIdentifier</key>
<string>ios-arm64</string>
<string>ios-arm64_x86_64-simulator</string>
<key>LibraryPath</key>
<string>SyneriseSDK.framework</string>
<key>SupportedArchitectures</key>
<array>
<string>arm64</string>
<string>x86_64</string>
</array>
<key>SupportedPlatform</key>
<string>ios</string>
<key>SupportedPlatformVariant</key>
<string>simulator</string>
</dict>
</array>
<key>CFBundlePackageType</key>
Expand Down
Loading

0 comments on commit c0180a7

Please sign in to comment.