@wlloyalty/wll-react-sdk 1.5.1 → 1.6.9-alpha.20251218052322.cca85de
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/dist/native.js +58 -56
- package/dist/native.js.map +1 -1
- package/dist/types/components/atoms/BaseTile/styles.d.ts +14 -2
- package/dist/types/components/organisms/ContentTile/index.d.ts +1 -1
- package/dist/types/components/organisms/RewardTile/RewardTile.stories.d.ts +3 -0
- package/dist/types/components/organisms/RewardTile/index.d.ts +1 -1
- package/dist/types/components/organisms/TierTileUpdated/styles.d.ts +0 -1
- package/dist/types/utils/storybookHelpers.d.ts +3 -1
- package/dist/web.js +92 -82
- package/dist/web.js.map +1 -1
- package/package.json +4 -1
package/dist/native.js
CHANGED
|
@@ -2401,6 +2401,7 @@ var styles$7 = reactNative.StyleSheet.create({
|
|
|
2401
2401
|
justifyContent: 'center',
|
|
2402
2402
|
width: '100%',
|
|
2403
2403
|
height: '100%',
|
|
2404
|
+
minHeight: 130,
|
|
2404
2405
|
},
|
|
2405
2406
|
});
|
|
2406
2407
|
|
|
@@ -2420,7 +2421,7 @@ var Text = function (_a) {
|
|
|
2420
2421
|
case 'body':
|
|
2421
2422
|
return {
|
|
2422
2423
|
color: theme.derivedSurfaceText[20],
|
|
2423
|
-
fontSize: useResponsiveValue(theme.sizes.md, theme.sizes.
|
|
2424
|
+
fontSize: useResponsiveValue(theme.sizes.md, theme.sizes.sm, isDesktop, isTablet),
|
|
2424
2425
|
};
|
|
2425
2426
|
case 'caption':
|
|
2426
2427
|
return __assign(__assign({}, baseStyle), { fontWeight: 'bold', fontSize: useResponsiveValue(theme.sizes.xxl, theme.sizes.xl, isDesktop, isTablet), color: theme.primary });
|
|
@@ -2699,17 +2700,12 @@ var BaseBanner = function (_a) {
|
|
|
2699
2700
|
borderRadius: theme.sizes.borderRadiusLg,
|
|
2700
2701
|
},
|
|
2701
2702
|
];
|
|
2702
|
-
|
|
2703
|
-
|
|
2704
|
-
|
|
2705
|
-
|
|
2706
|
-
|
|
2707
|
-
|
|
2708
|
-
}, onPress: handlePress, accessible: true, role: "button", accessibilityLabel: accessibilityLabel || "".concat(title, " - Click to open"), children: children }) }));
|
|
2709
|
-
}
|
|
2710
|
-
else {
|
|
2711
|
-
return (jsxRuntimeExports.jsx(BannerContext.Provider, { value: tile, children: jsxRuntimeExports.jsx(reactNative.View, { testID: testID || 'banner-tile', style: commonStyles, accessible: true, role: "article", accessibilityLabel: accessibilityLabel || title || 'Banner', children: children }) }));
|
|
2712
|
-
}
|
|
2703
|
+
return jsxRuntimeExports.jsx(BannerContext.Provider, { value: tile, children: isInteractive ? (jsxRuntimeExports.jsx(reactNative.Pressable, { testID: testID || 'banner-tile', style: function (_a) {
|
|
2704
|
+
var pressed = _a.pressed;
|
|
2705
|
+
return __spreadArray(__spreadArray([], commonStyles, true), [
|
|
2706
|
+
{ opacity: pressed ? 0.7 : 1 },
|
|
2707
|
+
], false);
|
|
2708
|
+
}, onPress: handlePress, accessible: true, role: "button", accessibilityLabel: accessibilityLabel || "".concat(title, " - Click to open"), children: children })) : (jsxRuntimeExports.jsx(reactNative.View, { testID: testID || 'banner-tile', style: commonStyles, accessible: true, role: "article", accessibilityLabel: accessibilityLabel || title || 'Banner', children: children })) });
|
|
2713
2709
|
};
|
|
2714
2710
|
var styles$6 = reactNative.StyleSheet.create({
|
|
2715
2711
|
container: {
|
|
@@ -2788,6 +2784,7 @@ var baseStyles = reactNative.StyleSheet.create({
|
|
|
2788
2784
|
position: 'relative',
|
|
2789
2785
|
},
|
|
2790
2786
|
container: {
|
|
2787
|
+
flex: 1,
|
|
2791
2788
|
width: '100%',
|
|
2792
2789
|
height: '100%',
|
|
2793
2790
|
overflow: 'hidden',
|
|
@@ -2839,8 +2836,19 @@ var useBaseTileStyles = function () {
|
|
|
2839
2836
|
var sizeInfo = useTileSize(tileContext);
|
|
2840
2837
|
var isHalfSize = (sizeInfo === null || sizeInfo === void 0 ? void 0 : sizeInfo.isHalfSize) || false;
|
|
2841
2838
|
var _b = tileContext.configuration, artworkUrl = _b.artworkUrl, title = _b.title, body = _b.body;
|
|
2839
|
+
// Access showDetails safely only for Reward tiles to avoid type errors on ContentTileConfig
|
|
2840
|
+
var rewardShowDetails = tileContext.type === 'REWARD'
|
|
2841
|
+
? tileContext.configuration
|
|
2842
|
+
.showDetails
|
|
2843
|
+
: undefined;
|
|
2844
|
+
// In Reward tiles that show details (title, summary, points), the content height
|
|
2845
|
+
// can exceed a square aspect ratio. To prevent clipping (e.g., points cut off in
|
|
2846
|
+
// TwoPerRow), allow the container to naturally size and do not enforce aspectRatio.
|
|
2847
|
+
var isRewardWithDetails = tileContext.type === 'REWARD' && rewardShowDetails !== false;
|
|
2842
2848
|
return reactNative.StyleSheet.create({
|
|
2843
|
-
container: __assign(__assign({}, baseStyles.container), { backgroundColor: theme.surface
|
|
2849
|
+
container: __assign(__assign(__assign(__assign({}, baseStyles.container), { backgroundColor: theme.surface }), (isRewardWithDetails
|
|
2850
|
+
? { height: undefined }
|
|
2851
|
+
: { height: '100%' })), { borderRadius: useResponsiveValue(theme.sizes.borderRadiusLg, theme.sizes.borderRadiusSm, isDesktop, isTablet), justifyContent: 'center', alignItems: 'center' }),
|
|
2844
2852
|
content: __assign(__assign({}, baseStyles.content), { justifyContent: 'center', height: !artworkUrl ? '100%' : undefined }),
|
|
2845
2853
|
header: {
|
|
2846
2854
|
marginBottom: useResponsiveValue(theme.sizes.xxs, theme.sizes.xxxs, isDesktop, isTablet),
|
|
@@ -2986,7 +2994,10 @@ var BaseTileContainer = function (_a) {
|
|
|
2986
2994
|
var _b = tile.configuration, _c = _b.ctaLink, ctaLink = _c === void 0 ? '' : _c, ctaLinkTarget = _b.ctaLinkTarget, _d = _b.title, title = _d === void 0 ? 'Tile' : _d;
|
|
2987
2995
|
var theme = (sdk === null || sdk === void 0 ? void 0 : sdk.theme) || { surface: '#ffffff' };
|
|
2988
2996
|
var handlePress = useHandleTilePress(tile, ctaLink, ctaLinkTarget);
|
|
2989
|
-
var isInteractive = Boolean(ctaLink ||
|
|
2997
|
+
var isInteractive = Boolean(ctaLink ||
|
|
2998
|
+
tile.type === 'REWARD' ||
|
|
2999
|
+
tile.type === 'REWARD_CATEGORY' ||
|
|
3000
|
+
tile.type === 'VENUE');
|
|
2990
3001
|
var layout = {
|
|
2991
3002
|
flexDirection: 'column',
|
|
2992
3003
|
justifyContent: isHalfSize ? 'center' : 'flex-start',
|
|
@@ -3120,7 +3131,6 @@ var SkeletonTile = function (_a) {
|
|
|
3120
3131
|
};
|
|
3121
3132
|
var styles$4 = reactNative.StyleSheet.create({
|
|
3122
3133
|
container: {
|
|
3123
|
-
aspectRatio: 1,
|
|
3124
3134
|
overflow: 'hidden',
|
|
3125
3135
|
},
|
|
3126
3136
|
});
|
|
@@ -3189,10 +3199,6 @@ var styles$3 = reactNative.StyleSheet.create({
|
|
|
3189
3199
|
skeleton: {
|
|
3190
3200
|
overflow: 'hidden',
|
|
3191
3201
|
},
|
|
3192
|
-
square: {
|
|
3193
|
-
width: 1000 / 4,
|
|
3194
|
-
aspectRatio: 1,
|
|
3195
|
-
},
|
|
3196
3202
|
});
|
|
3197
3203
|
|
|
3198
3204
|
function withTileFetching(WrappedComponent) {
|
|
@@ -3315,8 +3321,9 @@ var handleLastEarnedDate = function (date, userLocale) {
|
|
|
3315
3321
|
*/
|
|
3316
3322
|
var BadgeTileDateEarned = function () {
|
|
3317
3323
|
var tileContext = useTileContext();
|
|
3318
|
-
if (!isContextValid(tileContext))
|
|
3324
|
+
if (!isContextValid(tileContext)) {
|
|
3319
3325
|
return null;
|
|
3326
|
+
}
|
|
3320
3327
|
var _a = tileContext.configuration, count = _a.count, awardedDatePrefix = _a.awardedDatePrefix, lastEarnedAt = _a.lastEarnedAt, badgeNotEarnedMessage = _a.badgeNotEarnedMessage, type = _a.type, locale = _a.locale;
|
|
3321
3328
|
// Don't show for Latest type with count=0
|
|
3322
3329
|
if (type === exports.BadgeTileType.Latest && count === 0) {
|
|
@@ -3398,7 +3405,6 @@ var useBadgeTileStyles = function () {
|
|
|
3398
3405
|
fontWeight: 'bold',
|
|
3399
3406
|
},
|
|
3400
3407
|
header: {
|
|
3401
|
-
flexBasis: '50%',
|
|
3402
3408
|
alignItems: 'center',
|
|
3403
3409
|
justifyContent: 'center',
|
|
3404
3410
|
position: 'relative',
|
|
@@ -3450,8 +3456,9 @@ var BadgeTileMedia = function (_a) {
|
|
|
3450
3456
|
var BadgeTileStatus = function () {
|
|
3451
3457
|
var styles = useBadgeTileStyles();
|
|
3452
3458
|
var tileContext = useTileContext();
|
|
3453
|
-
if (!isContextValid(tileContext))
|
|
3459
|
+
if (!isContextValid(tileContext)) {
|
|
3454
3460
|
return null;
|
|
3461
|
+
}
|
|
3455
3462
|
var _a = tileContext.configuration, count = _a.count, type = _a.type;
|
|
3456
3463
|
if (type !== exports.BadgeTileType.Specific || count === 1) {
|
|
3457
3464
|
return null;
|
|
@@ -3680,13 +3687,6 @@ var useContentTileStyles = function (hasArtwork) {
|
|
|
3680
3687
|
overflow: 'hidden',
|
|
3681
3688
|
},
|
|
3682
3689
|
image: {
|
|
3683
|
-
position: 'absolute',
|
|
3684
|
-
top: -1,
|
|
3685
|
-
left: -1,
|
|
3686
|
-
bottom: -1,
|
|
3687
|
-
right: -1,
|
|
3688
|
-
width: '102%',
|
|
3689
|
-
height: '102%',
|
|
3690
3690
|
resizeMode: 'cover',
|
|
3691
3691
|
},
|
|
3692
3692
|
content: {
|
|
@@ -3800,7 +3800,7 @@ var ContentTileRoot = function (_a) {
|
|
|
3800
3800
|
var configuration = tile.configuration;
|
|
3801
3801
|
var hasArtwork = Boolean(configuration.artworkUrl);
|
|
3802
3802
|
var styles = useContentTileStyles(hasArtwork);
|
|
3803
|
-
return (jsxRuntimeExports.jsxs(BaseTile, { tile: tile, children: [jsxRuntimeExports.jsx(ContentTile.Media, { isArtworkOnly: isArtworkOnly$1(configuration) }), jsxRuntimeExports.jsxs(Layout, { justify: hasArtwork ? 'start' : 'center', style: { paddingBottom: 0, marginBottom: 0 }, children: [jsxRuntimeExports.jsxs(Row, { justify: "between", align: "center", style: styles.header, children: [jsxRuntimeExports.jsx(ContentTile.Title, {}), jsxRuntimeExports.jsx(ContentTile.Chevron, {})] }), jsxRuntimeExports.jsx(ContentTile.Summary, {})] })] }));
|
|
3803
|
+
return (jsxRuntimeExports.jsxs(BaseTile, { tile: tile, children: [jsxRuntimeExports.jsx(ContentTile.Media, { isArtworkOnly: isArtworkOnly$1(configuration) }), !isArtworkOnly$1(configuration) && (jsxRuntimeExports.jsxs(Layout, { justify: hasArtwork ? 'start' : 'center', style: { paddingBottom: 0, marginBottom: 0 }, children: [jsxRuntimeExports.jsxs(Row, { justify: "between", align: "center", style: styles.header, children: [jsxRuntimeExports.jsx(ContentTile.Title, {}), jsxRuntimeExports.jsx(ContentTile.Chevron, {})] }), jsxRuntimeExports.jsx(ContentTile.Summary, {})] }))] }));
|
|
3804
3804
|
};
|
|
3805
3805
|
/**
|
|
3806
3806
|
* The ContentTile component with subcomponents attached.
|
|
@@ -4210,7 +4210,7 @@ var Carousel = function (_a) {
|
|
|
4210
4210
|
marginTop: useResponsiveValue(theme.sizes.xxl, theme.sizes.sm, isDesktop, isTablet),
|
|
4211
4211
|
},
|
|
4212
4212
|
});
|
|
4213
|
-
return (jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [jsxRuntimeExports.jsx(SectionHeader, { title: section.title, description: section.description }), jsxRuntimeExports.jsxs(reactNative.View, { ref: containerRef, style: styles.container, onLayout: function (event) {
|
|
4213
|
+
return (jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [jsxRuntimeExports.jsx(SectionHeader, { title: section.title, description: section.description }), jsxRuntimeExports.jsxs(reactNative.View, { ref: containerRef, style: [styles.container, { direction: 'ltr' }], onLayout: function (event) {
|
|
4214
4214
|
var width = event.nativeEvent.layout.width;
|
|
4215
4215
|
dispatch({ type: 'SET_CONTAINER_WIDTH', payload: width });
|
|
4216
4216
|
}, children: [jsxRuntimeExports.jsxs(reactNative.View, { style: styles.carouselContainer, children: [showPrevButton && (jsxRuntimeExports.jsx(CarouselNavButton, { direction: "left", onPress: handlePrev })), jsxRuntimeExports.jsx(reactNative.ScrollView, { ref: scrollViewRef, horizontal: true, pagingEnabled: true, showsHorizontalScrollIndicator: false, onScroll: handleScroll, onMomentumScrollEnd: handleScrollEnd, scrollEventThrottle: 16, style: styles.carouselContent, contentContainerStyle: {
|
|
@@ -4288,8 +4288,6 @@ var Grid = function (_a) {
|
|
|
4288
4288
|
return {
|
|
4289
4289
|
width: "calc(".concat(100 / columns, "% - ").concat(((columns - 1) * GRID_GAP) / columns, "px)"),
|
|
4290
4290
|
marginBottom: GRID_GAP,
|
|
4291
|
-
height: 'auto',
|
|
4292
|
-
aspectRatio: 1,
|
|
4293
4291
|
};
|
|
4294
4292
|
}
|
|
4295
4293
|
else {
|
|
@@ -4299,7 +4297,6 @@ var Grid = function (_a) {
|
|
|
4299
4297
|
return {
|
|
4300
4298
|
width: tileWidth,
|
|
4301
4299
|
marginBottom: GRID_GAP,
|
|
4302
|
-
aspectRatio: 1,
|
|
4303
4300
|
};
|
|
4304
4301
|
}
|
|
4305
4302
|
}, []);
|
|
@@ -4722,7 +4719,7 @@ var Column = function (_a) {
|
|
|
4722
4719
|
*/
|
|
4723
4720
|
var FullFlex = function (_a) {
|
|
4724
4721
|
var children = _a.children, style = _a.style, rest = __rest(_a, ["children", "style"]);
|
|
4725
|
-
return (jsxRuntimeExports.jsx(reactNative.View, __assign({ style: [{ flex: 1 }, style] }, rest, { children: children })));
|
|
4722
|
+
return (jsxRuntimeExports.jsx(reactNative.View, __assign({ style: [{ flex: 1, direction: 'inherit' }, style] }, rest, { children: children })));
|
|
4726
4723
|
};
|
|
4727
4724
|
|
|
4728
4725
|
/**
|
|
@@ -4740,7 +4737,7 @@ var Layout = function (_a) {
|
|
|
4740
4737
|
var _f = useResponsive$1(), isDesktop = _f.isDesktop, isTablet = _f.isTablet;
|
|
4741
4738
|
var dynamicStyles = reactNative.StyleSheet.create({
|
|
4742
4739
|
container: {
|
|
4743
|
-
|
|
4740
|
+
flexGrow: 1,
|
|
4744
4741
|
paddingHorizontal: useResponsiveValue(theme.sizes.sm, theme.sizes.xxs, isDesktop, isTablet),
|
|
4745
4742
|
paddingBottom: useResponsiveValue(theme.sizes.sm, theme.sizes.xxs, isDesktop, isTablet),
|
|
4746
4743
|
justifyContent: justifyMap[justify],
|
|
@@ -5017,7 +5014,7 @@ var RewardCategoryTileRoot = function (_a) {
|
|
|
5017
5014
|
var tile = _a.tile;
|
|
5018
5015
|
if (!tile || !tile.active || !tile.configuration)
|
|
5019
5016
|
return null;
|
|
5020
|
-
return (jsxRuntimeExports.
|
|
5017
|
+
return (jsxRuntimeExports.jsx(BaseTile, { tile: tile, children: jsxRuntimeExports.jsxs(reactNative.View, { style: { aspectRatio: 1 }, children: [jsxRuntimeExports.jsx(RewardCategoryTile.Header, {}), jsxRuntimeExports.jsx(RewardCategoryTile.Media, {})] }) }));
|
|
5021
5018
|
};
|
|
5022
5019
|
/**
|
|
5023
5020
|
* The RewardCategoryTile component with subcomponents attached.
|
|
@@ -5051,17 +5048,13 @@ var useRewardTileStyles = function () {
|
|
|
5051
5048
|
return reactNative.StyleSheet.create({
|
|
5052
5049
|
imageContainer: {
|
|
5053
5050
|
width: '100%',
|
|
5051
|
+
minHeight: 130,
|
|
5054
5052
|
marginBottom: useResponsiveValue(theme.sizes.sm, theme.sizes.xxs, isDesktop, isTablet),
|
|
5055
5053
|
},
|
|
5056
5054
|
image: {
|
|
5057
|
-
position: 'absolute',
|
|
5058
|
-
top: 0,
|
|
5059
|
-
left: 0,
|
|
5060
|
-
bottom: 0,
|
|
5061
|
-
right: 0,
|
|
5062
5055
|
width: '100%',
|
|
5063
5056
|
height: '100%',
|
|
5064
|
-
|
|
5057
|
+
objectFit: 'cover',
|
|
5065
5058
|
},
|
|
5066
5059
|
lockIcon: {
|
|
5067
5060
|
position: 'absolute',
|
|
@@ -5074,7 +5067,6 @@ var useRewardTileStyles = function () {
|
|
|
5074
5067
|
},
|
|
5075
5068
|
content: {
|
|
5076
5069
|
paddingHorizontal: useResponsiveValue(theme.sizes.sm, theme.sizes.xxs, isDesktop, isTablet),
|
|
5077
|
-
flex: 1,
|
|
5078
5070
|
},
|
|
5079
5071
|
footer: {
|
|
5080
5072
|
marginTop: 8,
|
|
@@ -5123,9 +5115,22 @@ var RewardTileMedia = function (_a) {
|
|
|
5123
5115
|
var _b = tileContext.configuration, artworkUrl = _b.artworkUrl, _c = _b.showArtwork, showArtwork = _c === void 0 ? true : _c, _d = _b.name, name = _d === void 0 ? 'Reward' : _d, _e = _b.isLocked, isLocked = _e === void 0 ? false : _e;
|
|
5124
5116
|
if (!artworkUrl || !showArtwork)
|
|
5125
5117
|
return null;
|
|
5126
|
-
|
|
5127
|
-
|
|
5128
|
-
|
|
5118
|
+
// When artwork-only, the media should occupy the full tile height and compensate
|
|
5119
|
+
// for any content layout that might be hidden. We therefore force the media
|
|
5120
|
+
// container to flex and take the entire available height, removing default
|
|
5121
|
+
// bottom margins and min-heights coming from styles.
|
|
5122
|
+
var containerStyle = isArtworkOnly
|
|
5123
|
+
? {
|
|
5124
|
+
flexBasis: '100%',
|
|
5125
|
+
flex: 1,
|
|
5126
|
+
height: '100%',
|
|
5127
|
+
marginBottom: 0,
|
|
5128
|
+
minHeight: 0,
|
|
5129
|
+
aspectRatio: 1,
|
|
5130
|
+
}
|
|
5131
|
+
: {
|
|
5132
|
+
flexBasis: '50%',
|
|
5133
|
+
};
|
|
5129
5134
|
return (jsxRuntimeExports.jsxs(reactNative.View, { style: [styles.imageContainer, containerStyle], testID: "reward-tile-media", role: "img", accessibilityLabel: "Reward image for ".concat(name), children: [jsxRuntimeExports.jsx(ProgressiveImage, { source: { uri: artworkUrl }, style: styles.image, alt: "Reward image for ".concat(name) }), isLocked && (jsxRuntimeExports.jsx(reactNative.View, { style: styles.lockOverlay, testID: "lock-overlay", children: jsxRuntimeExports.jsx(Icon, { name: "LockKeyhole", size: 48, color: "white" }) }))] }));
|
|
5130
5135
|
};
|
|
5131
5136
|
|
|
@@ -5144,7 +5149,7 @@ var RewardTilePoints = function () {
|
|
|
5144
5149
|
return null;
|
|
5145
5150
|
var calculatedPoints = applyMultiplier(price, pointsMultiplier);
|
|
5146
5151
|
var accessibilityLabel = getPointsLabel('Reward points:', calculatedPoints, pointsPrefix, pointsSuffix);
|
|
5147
|
-
return (jsxRuntimeExports.jsx(reactNative.View, { testID: "reward-tile-points", role: "article", accessibilityLabel: accessibilityLabel, children: jsxRuntimeExports.jsxs(Row, { align: "center", justify: "start",
|
|
5152
|
+
return (jsxRuntimeExports.jsx(reactNative.View, { style: { marginTop: 'auto' }, testID: "reward-tile-points", role: "article", accessibilityLabel: accessibilityLabel, children: jsxRuntimeExports.jsxs(Row, { align: "center", justify: "start", children: [pointsPrefix ? jsxRuntimeExports.jsx(Text, { variant: "caption", children: pointsPrefix }) : null, jsxRuntimeExports.jsx(Text, { variant: "caption", testID: "reward-tile-points-value", children: calculatedPoints }), pointsSuffix ? (jsxRuntimeExports.jsx(Text, { variant: "caption", style: styles.suffix, children: pointsSuffix })) : null] }) }));
|
|
5148
5153
|
};
|
|
5149
5154
|
|
|
5150
5155
|
/**
|
|
@@ -5158,7 +5163,7 @@ var RewardTileSummary = function () {
|
|
|
5158
5163
|
return null;
|
|
5159
5164
|
var _a = tileContext.configuration, summary = _a.summary, _b = _a.showPrice, showPrice = _b === void 0 ? true : _b, price = _a.price;
|
|
5160
5165
|
var shouldShowPrice = showPrice && price !== undefined && price !== null && price !== 0;
|
|
5161
|
-
var numberOfLines = shouldShowPrice ?
|
|
5166
|
+
var numberOfLines = shouldShowPrice ? 2 : 3;
|
|
5162
5167
|
if (!summary)
|
|
5163
5168
|
return null;
|
|
5164
5169
|
return (jsxRuntimeExports.jsx(Text, { variant: "body", role: "article", accessibilityLabel: summary, testID: "reward-tile-summary", numberOfLines: numberOfLines, ellipsizeMode: "tail", children: summary }));
|
|
@@ -5212,7 +5217,8 @@ var RewardTileRoot = function (_a) {
|
|
|
5212
5217
|
!tile.configuration)
|
|
5213
5218
|
return null;
|
|
5214
5219
|
var configuration = tile.configuration;
|
|
5215
|
-
|
|
5220
|
+
var artworkOnly = isArtworkOnly(configuration);
|
|
5221
|
+
return (jsxRuntimeExports.jsxs(BaseTile, { tile: tile, children: [jsxRuntimeExports.jsx(RewardTile.Media, { isArtworkOnly: artworkOnly }), !artworkOnly && (jsxRuntimeExports.jsxs(Layout, { children: [jsxRuntimeExports.jsxs(Row, { justify: "between", align: "center", style: styles.header, children: [jsxRuntimeExports.jsx(RewardTile.Title, {}), jsxRuntimeExports.jsx(RewardTile.Chevron, {})] }), jsxRuntimeExports.jsx(reactNative.View, { style: { width: '100%', maxWidth: '100%', minWidth: 0 }, children: jsxRuntimeExports.jsx(RewardTile.Summary, {}) }), jsxRuntimeExports.jsx(RewardTile.Points, {})] }))] }));
|
|
5216
5222
|
};
|
|
5217
5223
|
/**
|
|
5218
5224
|
* The RewardTile component with subcomponents attached.
|
|
@@ -5231,7 +5237,6 @@ var useTierTileStyles = function () {
|
|
|
5231
5237
|
var theme = useWllSdk().theme;
|
|
5232
5238
|
return reactNative.StyleSheet.create({
|
|
5233
5239
|
header: {
|
|
5234
|
-
flexBasis: '50%',
|
|
5235
5240
|
width: '100%',
|
|
5236
5241
|
overflow: 'hidden',
|
|
5237
5242
|
marginBottom: useResponsiveValue(theme.sizes.sm, theme.sizes.xxs, isDesktop, isTablet),
|
|
@@ -5643,7 +5648,7 @@ var TileContainer = function (_a) {
|
|
|
5643
5648
|
var allHalfHeight = tiles.length > 0 &&
|
|
5644
5649
|
tiles.every(function (tile) { return tile.tileHeight === exports.TileHeight.Half; });
|
|
5645
5650
|
var halfHeightGap = allHalfHeight ? GRID_GAP / 2 : GRID_GAP;
|
|
5646
|
-
return (jsxRuntimeExports.jsx(reactNative.View, { style:
|
|
5651
|
+
return (jsxRuntimeExports.jsx(reactNative.View, { style: styles.container, testID: "tile-container", children: tiles.map(function (tile, index) {
|
|
5647
5652
|
var TileComponent = TILE_COMPONENTS[tile.type];
|
|
5648
5653
|
var isHalfHeight = tile.tileHeight === exports.TileHeight.Half;
|
|
5649
5654
|
return (jsxRuntimeExports.jsx(reactNative.View, { style: [
|
|
@@ -5660,9 +5665,6 @@ var styles = reactNative.StyleSheet.create({
|
|
|
5660
5665
|
flex: 1,
|
|
5661
5666
|
width: '100%',
|
|
5662
5667
|
},
|
|
5663
|
-
aspectContainer: {
|
|
5664
|
-
aspectRatio: 1,
|
|
5665
|
-
},
|
|
5666
5668
|
tileWrapper: {
|
|
5667
5669
|
flex: 1,
|
|
5668
5670
|
width: '100%',
|
|
@@ -5714,7 +5716,7 @@ var mapLiveRegion = function (ariaLive) {
|
|
|
5714
5716
|
}
|
|
5715
5717
|
};
|
|
5716
5718
|
var Chip = function (_a) {
|
|
5717
|
-
var label = _a.label, _b = _a.variant, variant = _b === void 0 ? exports.StatusVariant.PRIMARY : _b, _c = _a.role, role = _c === void 0 ? '
|
|
5719
|
+
var label = _a.label, _b = _a.variant, variant = _b === void 0 ? exports.StatusVariant.PRIMARY : _b, _c = _a.role, role = _c === void 0 ? 'text' : _c, _d = _a.ariaLive, ariaLive = _d === void 0 ? 'polite' : _d, accessibilityLabel = _a.accessibilityLabel, testID = _a.testID, style = _a.style, labelStyle = _a.labelStyle;
|
|
5718
5720
|
var styles = useChipStyles();
|
|
5719
5721
|
var theme = useWllSdk().theme;
|
|
5720
5722
|
var variantStyles = React.useMemo(function () {
|