VoucherRevealManager
@interface VoucherRevealManager : NSObject
VoucherRevealManager
is an object that encapsulates all dependencies necessary to facilitate
the reveal of a Voucher
.
-
The theme used in the
VoucherRevealViewController
.Default is
VouchrConfig.defaultTheme
Declaration
Objective-C
@property (readonly, nonatomic) VouchrTheme *_Nonnull revealViewControllerTheme;
Swift
var revealViewControllerTheme: VouchrTheme { get }
-
The theme used in any game view controller shown from the reveal screen. Defaults to
VouchrConfig.defaultTheme
.Declaration
Objective-C
@property (readonly, nonatomic) VouchrTheme *_Nonnull gameViewControllerTheme;
Swift
var gameViewControllerTheme: VouchrTheme { get }
-
Whether the
Voucher
should be claimed immediately after it is unwrapped during the reveal flow. Possible reasons to stop this:- The user must go to a specific location before it can be claimed.
- The user must accept a ToS before it can be claimed.
Defaults to YES.
Declaration
Objective-C
@property (readonly, nonatomic) BOOL shouldClaimVoucherAfterUnwrap;
Swift
var shouldClaimVoucherAfterUnwrap: Bool { get }
-
Whether the game (if picked) should be played before the reveal is shown.
Note
defaults to true.Declaration
Objective-C
@property (readonly, nonatomic) BOOL shouldPlayGameFirst;
Swift
var shouldPlayGameFirst: Bool { get }
-
VoucherManager
used to send unwrap and claim calls to the Vouchr Server.Default is
VouchrEngine.voucherManager
.Declaration
Objective-C
@property (readonly, nonatomic, nullable) id<VOVoucherManagerProtocol> voucherManager;
-
UserManager
used to get user information.Default is
VouchrEngine.userManager
.Declaration
Objective-C
@property (readonly, nonatomic) id<VOUserManagerProtocol> _Nonnull userManager;
-
Analytics manager used to track events throughout the reveal flow.
Note
Default is nil.Declaration
Objective-C
@property (readonly, nonatomic) id<VOAnalyticsManagerProtocol> _Nullable analyticsManager;
-
WrappingPaperManager
used to get a default wrapping paper.Default is
VouchrEngine.wrappingPaperManager
.Declaration
Objective-C
@property (readonly, nonatomic) id<VOWrappingPaperManagerProtocol> _Nonnull wrappingPaperManager;
-
A Fullscreen loading view that will be displayed when user interaction needs to be blocked during load time.
Note
Default is a UIActivityIndicator with a semi-transparent overlay.Declaration
Objective-C
@property (readonly, strong, nonatomic) UIView<VouchrLoadingViewProtocol> *_Nonnull fullScreenLoadingView;
-
The
VouchrTheme
for theVouchrDialogView
if it is used.Note
Default is nil.Declaration
Objective-C
@property (readonly, nonatomic) VouchrTheme *_Nonnull dialogViewTheme;
Swift
var dialogViewTheme: VouchrTheme { get }
-
Undocumented
Declaration
Objective-C
+ (instancetype)voucherRevealManagerWithBuilder:(void (^)(VoucherRevealManagerBuilder *builder))builderBlock;
Swift
convenience init(builder builderBlock: @escaping (VoucherRevealManagerBuilder) -> Void)