1 min read

Customise

Last Updated - Platform 22.0 - SDK 17.0

From v22 onwards most features require no code as they are automatically set up by the Coordinators that construct them. This page highlights the key customisation points for this feature.

Overview

The Swipe to Like feature is made up of three key frameworks:

  • The PoqSwipeToLike framework for the Swipe to Like UI presentation layer.
  • The PoqCatalogue framework for the WishlistWidget.
  • The PoqCatalogueClient framework for the Product List domain and data layers.

These frameworks have the following relevant dependencies:

  • The PoqWishlistClient framework for the WishlistWidget domain and data layers.

Container Dependencies

Containers can be used to replace most feature dependencies with one line of code. For the Swipe to Like feature this should be done in the AppModule on didAddToPlatform in an organised function such as setUpSwipeToLike or setUpDependencies.

Customise the Coordinator

The Coordinator builds the SwipeToLikeViewController using the SwipeToLikeBuilder and can be easily replaced via Containers.

// You can omit the generic type to use the default 'ProductDetailsController'.
Container.shared.coordinators.swipeToLike.replace {
PoqSwipeToLikeCoordinator() {
// Customise the builder here with the default data source.
SwipeToLikeBuilder(source: .init(method: .search("dress")))
}
}
// Here is a more fully customised example.
Container.shared.coordinators.swipeToLike.replace {
PoqSwipeToLikeCoordinator<CustomSwipeToLikeViewController>() {
SwipeToLikeBuilder(source: .init(method: .custom(CustomSwipeToLikeSource())))
.withAnalyticsMiddleware(.customSwipeToLikeAnalytics())
.withMiddleware(.customFun())
}
}

Next steps