Build and deploy e-commerce progressive web apps in record time.
Full Guides, API Documentation, and Examples
All rights reserved.
- Added
anchorProps
to Link - Added analytics support for IE9+ via the addition of proxy-polyfill
- Added onSuccess prop to
Track
- Prefetching now automatically resumes once page navigation is complete.
- Added
ProductModelBase.basePrice
ProductModelBase.price
is now a view that returns theprice
of the selected size or, if not present, thebasePrice
.ButtonSelector
can now display a CSS color code instead of an image via the newcolor
field onOptionModelBase
ButtonSelector
can now be configured to display a strike through when disabled by settingstrikeThroughDisabled
. The angle can be controlled viastrikeThroughAngle
.
- Renamed to react-storefront and published on npmjs.org
- Routes now automatically fire pageView analytics events. The
track
handler module has been removed - The new
<Track>
component let's you track interactions with analytics declaratively. - CommerceAnalyticsTarget and all subclasses have been moved to a separate package called 'moov-pwa-analytics'
- Many methods of CommerceAnalyticsTarget have a new signature. All event methods now take a single options object. Please check your calls to methods on
react-storefront/analytics
to make sure they match the updated signatures. - Built in models in
react-storefront/model
no longer fire analytics events. Analytics events are only fired front components. - AMP analytics are now supported.
- You can now return state objects from
proxyUpstream
handlers to render the PWA. Return null or undefined to render the proxied page.
- Skeletons are no longer fullscreen. Pages remain hidden while
app.loading
istrue
, instead of being covered by the LoadMask/Skeleton.
- Pages now keeps one page of each type hidden in the DOM to make navigating back and forward much faster.
- AppModelBase.applyState has been optimized to minimize rerendering of observer components.
- ResponsiveTiles has been optimized to render faster.
-
Renamed Breadcrumbs component to BackNav. It no longer tags an array of breadcrumbs, it now takes a single url and text.
-
Created a new Breadcrumbs component for displaying multiple breadcrumbs.
- The request parameter passed to fromServer handlers has been refactored. The "path" property has been deprecated in favor of separate "pathname" and "search" properties.
- Added a new
UpdateNotification
component that notifies the user when a new version of the app is available. - The service worker will now only load HTML from the cache when coming from AMP or when launching from the homescreen.
- Adds the ability to reuse product thumbnails as the main product image in the PDP skeleton when navigating from PLP to PDP.
- Fixed
Link
bug which formatted URL's incorrectly - Fixed issue where prefetched results are deleted when new SW is installed
- Added
SearchDrawer
, which replacesSearchPopup
.
- You can now perfect proxy and transform pages from the upstream site using the new
proxyUpstream
handler. As a result, support forrequestHeaderTransform({ fallbackToAdapt: true })
has been removed. Instead, simple add afallback(proxyUpstream())
handler to your router.
- Improved error handling with react-redbox and sourcemapped stacktraces for server-side errors
- Added react error boundary to catch errors while rendering and display a component stack trace.
- Automatically relay
set-cookie
headers fromfetch
calls to upstream APIs when not caching on the server. - Added
fetchWithCookies
to automatically forward all cookies when calling upstream APIs.
- Support for moovsdk
- Refactored handler signature to
handler(params, request, response)
- Renamed
ShowMoreButton
toShowMore
and addedinfiniteScroll
prop - Functionality for moov_edge_request_transform, moov_edge_response_transform, moov_request_header_transform, index, and moov_response_header transform are not standardized in
platform/*
modules. moov-react-dev-server
is no longer needed- new
ButtonSelector
component for color and size selections - App state is automatically recorded in
window.history.state
so back and forward transitions are instantaneous. - AMP Form POST is now supported and multipart encoded request bodies are parsed automatically.
- Added
Skeleton
components for creating custom loading skeletons
To use your local copy of react-storefront when developing Moov PWA projects, in your clone of this repo, run:
yarn install
cd packages/react-storefront
yarn link
Then, in your project run:
yarn link react-storefront