VoucherCreationManagerBuilder

@interface VoucherCreationManagerBuilder : NSObject

VoucherCreationManagerBuilder is used to construct the VOVoucherCreationManager and should not be initialized directly.

  • The VOVoucher currently being personalized. This VOVoucher will be modified throughout the create process via any personalizations. It will become a non-mutable VOVoucher once the process is complete.

    Note

    The default is a new, mutable, empty VOVoucher.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic)
        VOMutableVoucher *_Nonnull mutableVoucher;

    Swift

    var mutableVoucher: VOMutableVoucher { get set }
  • Used throughout the create flow to facilitate network calls.

    Note

    Default is nil.

    Declaration

    Objective-C

    @property (readwrite, nonatomic, nullable) id<VONetworkManagerProtocol>
        networkManager;
  • An instance of GiftManager used to create and activate the VOMutableVoucher.

    Note

    Default is nil.

    Declaration

    Objective-C

    @property (readwrite, nonatomic)
        id<VOVoucherManagerProtocol> _Nullable voucherManager;
  • Analytics manager used to track events throughout the create flow.

    Note

    Default is nil.

    Declaration

    Objective-C

    @property (readwrite, nonatomic)
        id<VOAnalyticsManagerProtocol> _Nullable analyticsManager;
  • VOUser manager used handle logged in state and retrieve VOUsers.

    Note

    Default is nil.

    Declaration

    Objective-C

    @property (readwrite, nonatomic, nullable) id<VOUserManagerProtocol> userManager;
  • Game manager used to fetch games and retain game score information.

    Note

    Default is nil.

    Declaration

    Objective-C

    @property (readwrite, nonatomic, nullable) id<VOGameManagerProtocol> gameManager;
  • Used to fetch WrappingPapers and VOVoucher that the user can use to personalize their voucher.

    Note

    Default is nil.

    Declaration

    Objective-C

    @property (readwrite, nonatomic, nullable) id<VOWrappingPaperManagerProtocol>
        wrappingPaperManager;
  • VOMerchantManager is used to retrieve Merchants from which VOUsers can select and personalize.

    Note

    Default is nil.

    Declaration

    Objective-C

    @property (readwrite, nonatomic, nullable) id<VOMerchantManagerProtocol>
        merchantManager;
  • VOYouTubeManager is used to retrieve videos from Youtube from which VOUsers can select and personalize.

    Note

    Default is nil.

    Declaration

    Objective-C

    @property (readwrite, nonatomic, nullable) id<VOYoutubeManagerProtocol>
        youtubeManager;
  • Used to manage anything related to canned sounds.

    Declaration

    Objective-C

    @property (readwrite, nonatomic, nullable) id<VOCannedSoundManagerProtocol>
        cannedSoundManager;
  • 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 (readwrite, strong, nonatomic, nullable)
        UIView<VOLoadingViewProtocol> *fullScreenLoadingView;
  • A loading view that will be displayed within a view.

    Note

    Default is a UIActivityIndicator.

    Declaration

    Objective-C

    @property (readwrite, strong, nonatomic, nullable)
        UIView<VOLoadingViewProtocol> *smallLoadingView;
  • A VODialogView is a customizable alert view that will be displayed to the user.

    Note

    Default is nil.

    Declaration

    Objective-C

    @property (readwrite, strong, nonatomic)
        UIView<VODialogViewProtocol> *_Nonnull vouchrDialogView;
  • Colours shown in the background of the create screen. Colors are cycled based on wrapping paper selection. After a wrapping paper is chosen, the color closest to the wrapping paper is set as the new background color.

    Note

    Default colors are: Red: #E86963, Orange: #FFAD76, Yellow: #FFDA67, Green: #77E097, Teal: #2FCCAD, Navy Blue: #509CDE, Purple: #9372FF Pass in an empty array for no color.

    Declaration

    Objective-C

    @property (readwrite, strong, nonatomic)
        NSArray<UIColor *> *_Nonnull voucherCreationBackgroundColors;

    Swift

    var voucherCreationBackgroundColors: [UIColor] { get set }
  • Array of colours that is shown in the background of the create screen. After a wrapping paper is chosen, the color with the closest average color in the wrapping paper will be chosen from the Array.

    Note

    Default list consists of a single color; white.

    Declaration

    Objective-C

    @property (readwrite, strong, nonatomic)
        NSArray<UIColor *> *_Nonnull creationItemBorderColors;

    Swift

    var creationItemBorderColors: [UIColor] { get set }
  • The size of the border shown on the items dropped into the envelope.

    Note

    Default is 7 px.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic) CGFloat creationItemBorderWidth;

    Swift

    var creationItemBorderWidth: CGFloat { get set }
  • The text shown if the create carousel is emptied (all personalizations completed by the user).

    Note

    Default text is localized ‘Your looks awesome!’.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic) NSString *_Nonnull carouselEmptiedText;

    Swift

    var carouselEmptiedText: String { get set }
  • Specifies whether recipient information is required to be entered before sending a VOVoucher.

    Note

    Default is YES.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic) BOOL recipientRequired;

    Swift

    var recipientRequired: Bool { get set }
  • Specifies whether a summary screen should be displayed when no monetary value is included in the voucher.

    Note

    The summary screen displays a breakdown of the price and payment

    Note

    Default is NO

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic) BOOL alwaysShowFullSummaryScreen;

    Swift

    var alwaysShowFullSummaryScreen: Bool { get set }
  • Minimum number of customizations required before allowing the voucher to be created

    Note

    Default is 1

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic) NSInteger minimumNumberOfCustomizations;

    Swift

    var minimumNumberOfCustomizations: Int { get set }
  • Specifies whether vouchers must include a monetary amount.

    Note

    Default is YES

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic) BOOL allowFreeGifts;

    Swift

    var allowFreeGifts: Bool { get set }
  • The VOTheme for the VOSummaryScreenViewController if it is used. If not set, the global VOConfig VOTheme will be used.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic)
        VOTheme *_Nonnull defaultSummaryScreenTheme;

    Swift

    var defaultSummaryScreenTheme: VOTheme { get set }
  • The VOTheme for the VODialogView if it is used.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic) VOTheme *_Nonnull dialogViewTheme;

    Swift

    var dialogViewTheme: VOTheme { get set }
  • Used to show the reveal screen as a preview during creation. If no preview should be shown, leave this as nil. If a different preview should be shown, instead implement previewViewControllerForVoucher: as part of the VOVoucherCreationFlowDelegate.

    Declaration

    Objective-C

    @property (assign, readwrite, nonatomic)
        VOVoucherRevealFlowCoordinator *_Nonnull revealFlowCoordinator;

    Swift

    var revealFlowCoordinator: VOVoucherRevealFlowCoordinator { get set }