@shopgate/engage 7.31.1-alpha.2 → 7.31.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/ScrollHeader/index.d.ts.map +1 -1
- package/components/ScrollHeader/index.js +9 -2
- package/development/components/ClientInformation/ClientInformation.js +2 -1
- package/package.json +7 -7
- package/product/components/ProductGrid/components/Item/components/ItemName/index.js +3 -3
- package/product/components/ProductGrid/components/Item/components/ItemName/spec.js +2 -1
- package/product/components/{RatingStars/RatingStars.d.ts → ProductRatingStars/ProductRatingStars.d.ts} +1 -1
- package/product/components/ProductRatingStars/ProductRatingStars.d.ts.map +1 -0
- package/product/components/{RatingStars/RatingStars.js → ProductRatingStars/ProductRatingStars.js} +1 -1
- package/product/components/ProductRatingStars/index.d.ts +2 -0
- package/product/components/ProductRatingStars/index.d.ts.map +1 -0
- package/product/components/ProductRatingStars/index.js +1 -0
- package/product/components/Rating/index.js +1 -1
- package/product/components/index.js +1 -1
- package/product/components/RatingStars/RatingStars.d.ts.map +0 -1
- package/product/components/RatingStars/index.d.ts +0 -2
- package/product/components/RatingStars/index.d.ts.map +0 -1
- package/product/components/RatingStars/index.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../components/ScrollHeader/index.jsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../components/ScrollHeader/index.jsx"],"names":[],"mappings":";AA6GA;;;;;;;;;;;cA5DW,KAAK,CAAC,SAAS;yCA4DwB;kBA7GK,OAAO"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React, { useState, forwardRef, useEffect } from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import { makeStyles, responsiveMediaQuery } from '@shopgate/engage/styles';
|
|
4
|
-
import { useScrollDirectionChange } from '@shopgate/engage/core/hooks';
|
|
4
|
+
import { useScrollDirectionChange, useRoute } from '@shopgate/engage/core/hooks';
|
|
5
5
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
6
6
|
const useStyles = makeStyles()({
|
|
7
7
|
root: {
|
|
@@ -68,8 +68,15 @@ function ScrollHeaderBase({
|
|
|
68
68
|
cx
|
|
69
69
|
} = useStyles();
|
|
70
70
|
const [shouldHideHeader, setShouldHideHeader] = useState(false);
|
|
71
|
+
|
|
72
|
+
// The `viewScroll$` stream is shared across all mounted views. Cached routes (e.g. a product
|
|
73
|
+
// list) stay mounted in the background while another route is active, so without this guard the
|
|
74
|
+
// header would react to scroll events emitted by a different, currently visible view and end up
|
|
75
|
+
// hidden when the user navigates back. `visible` is true only for the active route.
|
|
76
|
+
const route = useRoute();
|
|
77
|
+
const visible = route ? route.visible !== false : true;
|
|
71
78
|
useScrollDirectionChange({
|
|
72
|
-
enabled: hideOnScroll,
|
|
79
|
+
enabled: hideOnScroll && visible,
|
|
73
80
|
offset: scrollOffset,
|
|
74
81
|
onlyFireOnScrollUpAtTop: onlyShowAtTop,
|
|
75
82
|
onlyFireOnScrollUpAtTopOffset: onlyShowAtTopOffset,
|
|
@@ -3,6 +3,7 @@ import { useSelector } from 'react-redux';
|
|
|
3
3
|
import { makeStyles } from '@shopgate/engage/styles';
|
|
4
4
|
import { useLongPress } from '@shopgate/engage/core/hooks';
|
|
5
5
|
import { getClientInformation } from '@shopgate/engage/core/selectors';
|
|
6
|
+
import { pckVersion } from '@shopgate/pwa-common/helpers/config';
|
|
6
7
|
import DevelopmentSettings from "../DevelopmentSettings";
|
|
7
8
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
8
9
|
const useStyles = makeStyles()(theme => ({
|
|
@@ -62,7 +63,7 @@ const ClientInformation = () => {
|
|
|
62
63
|
"aria-hidden": true,
|
|
63
64
|
children: [/*#__PURE__*/_jsxs("p", {
|
|
64
65
|
className: classes.unselectable,
|
|
65
|
-
children: [`App Version: ${appVersion} (${codebaseVersion})`, /*#__PURE__*/_jsx("br", {}), `Lib Version: ${libVersion}`]
|
|
66
|
+
children: [`App Version: ${appVersion} (${codebaseVersion})`, /*#__PURE__*/_jsx("br", {}), `PWA Version: ${pckVersion}`, /*#__PURE__*/_jsx("br", {}), `Lib Version: ${libVersion}`]
|
|
66
67
|
}), deviceIdVisible && /*#__PURE__*/_jsxs(_Fragment, {
|
|
67
68
|
children: [/*#__PURE__*/_jsx("p", {
|
|
68
69
|
className: classes.deviceId,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@shopgate/engage",
|
|
3
|
-
"version": "7.31.1
|
|
3
|
+
"version": "7.31.1",
|
|
4
4
|
"description": "Shopgate's ENGAGE library.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"author": "Shopgate <support@shopgate.com>",
|
|
@@ -18,12 +18,12 @@
|
|
|
18
18
|
"dependencies": {
|
|
19
19
|
"@emotion/react": "^11.14.0",
|
|
20
20
|
"@shopgate/native-modules": "1.0.0-beta.25",
|
|
21
|
-
"@shopgate/pwa-common": "7.31.1
|
|
22
|
-
"@shopgate/pwa-common-commerce": "7.31.1
|
|
23
|
-
"@shopgate/pwa-core": "7.31.1
|
|
24
|
-
"@shopgate/pwa-ui-ios": "7.31.1
|
|
25
|
-
"@shopgate/pwa-ui-material": "7.31.1
|
|
26
|
-
"@shopgate/pwa-ui-shared": "7.31.1
|
|
21
|
+
"@shopgate/pwa-common": "7.31.1",
|
|
22
|
+
"@shopgate/pwa-common-commerce": "7.31.1",
|
|
23
|
+
"@shopgate/pwa-core": "7.31.1",
|
|
24
|
+
"@shopgate/pwa-ui-ios": "7.31.1",
|
|
25
|
+
"@shopgate/pwa-ui-material": "7.31.1",
|
|
26
|
+
"@shopgate/pwa-ui-shared": "7.31.1",
|
|
27
27
|
"@stripe/react-stripe-js": "^1.16.5",
|
|
28
28
|
"@stripe/stripe-js": "^1.44.1",
|
|
29
29
|
"@virtuous/conductor": "~2.5.0",
|
|
@@ -2,7 +2,7 @@ import React, { memo, useMemo } from 'react';
|
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import { PRODUCT_ITEM_NAME, PRODUCT_ITEM_NAME_BEFORE, PRODUCT_ITEM_NAME_AFTER } from '@shopgate/engage/category/constants';
|
|
4
4
|
import { Portal } from '@shopgate/engage/components';
|
|
5
|
-
import { ProductName,
|
|
5
|
+
import { ProductName, ProductRatingStars } from '@shopgate/engage/product';
|
|
6
6
|
import { makeStyles } from '@shopgate/engage/styles';
|
|
7
7
|
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
8
8
|
const useStyles = makeStyles()({
|
|
@@ -38,7 +38,7 @@ const ItemName = ({
|
|
|
38
38
|
children: [/*#__PURE__*/_jsx(Portal, {
|
|
39
39
|
name: PRODUCT_ITEM_NAME_BEFORE,
|
|
40
40
|
props: portalProps
|
|
41
|
-
}), /*#__PURE__*/_jsx(
|
|
41
|
+
}), /*#__PURE__*/_jsx(ProductRatingStars, {
|
|
42
42
|
productId: productId
|
|
43
43
|
}), /*#__PURE__*/_jsx(Portal, {
|
|
44
44
|
name: PRODUCT_ITEM_NAME_AFTER,
|
|
@@ -47,7 +47,7 @@ const ItemName = ({
|
|
|
47
47
|
});
|
|
48
48
|
}
|
|
49
49
|
return /*#__PURE__*/_jsxs(_Fragment, {
|
|
50
|
-
children: [/*#__PURE__*/_jsx(
|
|
50
|
+
children: [/*#__PURE__*/_jsx(ProductRatingStars, {
|
|
51
51
|
productId: productId
|
|
52
52
|
}), /*#__PURE__*/_jsx(ProductName, {
|
|
53
53
|
name: name,
|
|
@@ -3,7 +3,8 @@ import { shallow } from 'enzyme';
|
|
|
3
3
|
import ItemName from "./index";
|
|
4
4
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
5
5
|
jest.mock('@shopgate/engage/product', () => ({
|
|
6
|
-
ProductName: () => null
|
|
6
|
+
ProductName: () => null,
|
|
7
|
+
ProductRatingStars: () => null
|
|
7
8
|
}));
|
|
8
9
|
jest.mock('@shopgate/engage/components');
|
|
9
10
|
const props = {
|
|
@@ -11,4 +11,4 @@ interface RatingProps {
|
|
|
11
11
|
}
|
|
12
12
|
declare const _default: import("react").MemoExoticComponent<({ productId, size, }: RatingProps) => import("react/jsx-runtime").JSX.Element | null>;
|
|
13
13
|
export default _default;
|
|
14
|
-
//# sourceMappingURL=
|
|
14
|
+
//# sourceMappingURL=ProductRatingStars.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProductRatingStars.d.ts","sourceRoot":"","sources":["../../../../product/components/ProductRatingStars/ProductRatingStars.tsx"],"names":[],"mappings":"AAiBA,UAAU,WAAW;IACnB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,IAAI,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,OAAO,CAAC;CAClC;mFAQE,WAAW;AA4Bd,wBAAwC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../product/components/ProductRatingStars/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as ProductRatingStars } from "./ProductRatingStars";
|
|
@@ -46,7 +46,7 @@ const Rating = ({
|
|
|
46
46
|
showEmptyRatingStars = false
|
|
47
47
|
} = useWidgetSettings('@shopgate/engage/rating');
|
|
48
48
|
const showRatings = useMemo(() => {
|
|
49
|
-
if (hasReviews && rating?.average > 0) {
|
|
49
|
+
if (hasReviews && (rating?.average ?? 0) > 0) {
|
|
50
50
|
return true;
|
|
51
51
|
}
|
|
52
52
|
if (hasReviews && showEmptyRatingStars && rating) {
|
|
@@ -24,7 +24,7 @@ export { default as ProductSlider } from "./ProductSlider";
|
|
|
24
24
|
export * from "./ProductVariants";
|
|
25
25
|
export { default as QuantityPicker } from "./QuantityPicker";
|
|
26
26
|
export { default as Rating } from "./Rating";
|
|
27
|
-
export {
|
|
27
|
+
export { ProductRatingStars } from "./ProductRatingStars";
|
|
28
28
|
export * from "./RelationsSlider";
|
|
29
29
|
export * from "./Swatch";
|
|
30
30
|
export * from "./Swatches";
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RatingStars.d.ts","sourceRoot":"","sources":["../../../../product/components/RatingStars/RatingStars.tsx"],"names":[],"mappings":"AAiBA,UAAU,WAAW;IACnB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,IAAI,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,OAAO,CAAC;CAClC;mFAQE,WAAW;AA4Bd,wBAAwC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../product/components/RatingStars/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { default as RatingStars } from "./RatingStars";
|