Product List View
Last Updated - Platform 19.0.0 - SDK 14.0.0The ProductListView
is the main view of a ProductListViewController
to present product listings. It also presents the loading, empty, and error states.
The PoqProductListView
(default) variation of this view:
- Presents a
collectionView
of product listings using aProductListViewDataSource
. - Presents the
ProductListToolbarView
toolbar for sorting and filtering. - Supports
Skeletonable
whilst loading; where the data source is responsible for skeleton cells. - Presents an
EmptyView
when there are no product listings. - Presents an
ErrorView
when fetching the product listings fails. - Uses a
TransitioningContainerView
to transition with a fade between default (or loading), error and empty states.
Container.shared.views.productListView = { PoqProductListView()}
Data Source
The ProductListViewDataSource
for a PoqProductListView
to present the product listings. This data source:
- Presents
ProductListingView
cells forProductListingViewData
. - Supports
Skeletonable
and presents skeletonisedProductListingView
cells whilst loading. - Presents the
ProductListHeaderView
if the number of items is mapped to the view data. - Presents the
PagingView
based on the mappedPagingViewData
.
Container.shared.dataSources.productListViewDataSource = { ProductListViewDataSource()}
View Data Mapper
The ProductListViewDataMapper
to map from the ProductListState
to the ProductListViewData
to present.
Container.shared.mappers.productListViewDataMapper = { PoqProductListViewDataMapper()}