@wlloyalty/wll-react-sdk 1.6.19 → 1.7.0

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.
@@ -13,3 +13,9 @@ export declare const WithoutDescription: import("@storybook/csf").AnnotatedStory
13
13
  export declare const Locked: import("@storybook/csf").AnnotatedStoryFn<import("@storybook/react").ReactRenderer, Omit<{
14
14
  tile: import("../../..").Tile;
15
15
  }, "tile"> & import("../../hoc/withTileFetching").WithTileFetchingProps>;
16
+ export declare const NoMedia: import("@storybook/csf").AnnotatedStoryFn<import("@storybook/react").ReactRenderer, Omit<{
17
+ tile: import("../../..").Tile;
18
+ }, "tile"> & import("../../hoc/withTileFetching").WithTileFetchingProps>;
19
+ export declare const AllVersions: import("@storybook/csf").AnnotatedStoryFn<import("@storybook/react").ReactRenderer, Omit<{
20
+ tile: import("../../..").Tile;
21
+ }, "tile"> & import("../../hoc/withTileFetching").WithTileFetchingProps>;
@@ -7,9 +7,7 @@ type VenueTileProps = {
7
7
  * The VenueTile component with subcomponents attached.
8
8
  */
9
9
  export declare const VenueTile: (({ tile }: VenueTileProps) => React.ReactElement | null) & {
10
- Media: ({ isArtworkOnly, }: {
11
- isArtworkOnly?: boolean;
12
- }) => React.ReactElement | null;
10
+ Media: () => React.ReactElement | null;
13
11
  Title: () => React.ReactElement | null;
14
12
  Description: () => React.ReactElement | null;
15
13
  Chevron: () => React.ReactElement;
@@ -1,13 +1,7 @@
1
1
  import React from 'react';
2
- type VenueTileMediaProps = {
3
- isArtworkOnly?: boolean;
4
- };
5
2
  /**
6
3
  * Renders the media for a Venue Tile.
7
4
  *
8
- * @param props {VenueTileMediaProps} - Component props
9
- * @param props.isArtworkOnly {boolean} - Whether the media should be rendered as an artwork only component
10
5
  * @returns React.ReactElement or null if no artwork URL is present or artwork should not be shown
11
6
  */
12
- export declare const VenueTileMedia: ({ isArtworkOnly, }: VenueTileMediaProps) => React.ReactElement | null;
13
- export {};
7
+ export declare const VenueTileMedia: () => React.ReactElement | null;
package/dist/web.js CHANGED
@@ -20705,10 +20705,9 @@ var ContentTileRoot = function (_a) {
20705
20705
  isArtworkOnly: isArtworkOnly$1(configuration)
20706
20706
  }), !isArtworkOnly$1(configuration) && (/*#__PURE__*/React.createElement(Layout, {
20707
20707
  justify: hasArtwork ? 'start' : 'center',
20708
- style: {
20709
- paddingBottom: 0,
20710
- marginBottom: 0
20711
- }
20708
+ style: __assign({}, !hasArtwork && tile.tileHeight === exports.TileHeight.Full && {
20709
+ aspectRatio: 1
20710
+ })
20712
20711
  }, /*#__PURE__*/React.createElement(Row, {
20713
20712
  justify: "between",
20714
20713
  align: "center",
@@ -23047,6 +23046,8 @@ var useVenueTileStyles = function () {
23047
23046
  return StyleSheet$1.create({
23048
23047
  imageContainer: {
23049
23048
  width: '100%',
23049
+ minHeight: 130,
23050
+ overflow: 'hidden',
23050
23051
  marginBottom: useResponsiveValue(theme.sizes.sm, theme.sizes.xxs, isDesktop, isTablet)
23051
23052
  },
23052
23053
  image: {
@@ -23077,6 +23078,7 @@ var useVenueTileStyles = function () {
23077
23078
  },
23078
23079
  header: {
23079
23080
  width: '100%',
23081
+ paddingTop: theme.sizes.xxxs,
23080
23082
  marginBottom: useResponsiveValue(theme.sizes.xxs, theme.sizes.xxxs, isDesktop, isTablet)
23081
23083
  },
23082
23084
  tileTitle: __assign({
@@ -23093,6 +23095,12 @@ var useVenueTileStyles = function () {
23093
23095
  justifyContent: 'center',
23094
23096
  alignItems: 'center',
23095
23097
  zIndex: 10
23098
+ },
23099
+ pinOverlay: {
23100
+ position: 'absolute',
23101
+ top: 8,
23102
+ right: 8,
23103
+ zIndex: 20
23096
23104
  }
23097
23105
  });
23098
23106
  };
@@ -23100,45 +23108,54 @@ var useVenueTileStyles = function () {
23100
23108
  /**
23101
23109
  * Renders the media for a Venue Tile.
23102
23110
  *
23103
- * @param props {VenueTileMediaProps} - Component props
23104
- * @param props.isArtworkOnly {boolean} - Whether the media should be rendered as an artwork only component
23105
23111
  * @returns React.ReactElement or null if no artwork URL is present or artwork should not be shown
23106
23112
  */
23107
- var VenueTileMedia = function (_a) {
23108
- var _b = _a.isArtworkOnly,
23109
- isArtworkOnly = _b === void 0 ? false : _b;
23113
+ var VenueTileMedia = function () {
23110
23114
  var styles = useVenueTileStyles();
23111
23115
  var tileContext = useTileContext();
23112
23116
  if (!isContextValid(tileContext)) return null;
23113
- var _c = tileContext.configuration,
23114
- artworkUrl = _c.artworkUrl,
23115
- _d = _c.name,
23116
- name = _d === void 0 ? 'Venue' : _d,
23117
- _e = _c.isLocked,
23118
- isLocked = _e === void 0 ? false : _e;
23119
- if (!artworkUrl) return null;
23120
- var containerStyle = {
23121
- flexBasis: isArtworkOnly ? '100%' : '50%'
23122
- };
23117
+ var _a = tileContext.configuration,
23118
+ artworkUrl = _a.artworkUrl,
23119
+ _b = _a.name,
23120
+ name = _b === void 0 ? 'Venue' : _b,
23121
+ _c = _a.isLocked,
23122
+ isLocked = _c === void 0 ? false : _c;
23123
+ var containerStyle = __assign({
23124
+ flexBasis: '50%'
23125
+ }, tileContext.tileHeight === exports.TileHeight.Half && {
23126
+ minHeight: 0
23127
+ });
23128
+ var showCenteredPin = !artworkUrl && !isLocked;
23123
23129
  return /*#__PURE__*/React.createElement(View$2, {
23124
23130
  style: [styles.imageContainer, containerStyle],
23125
23131
  testID: "venue-tile-media",
23126
23132
  role: "img",
23127
23133
  accessibilityLabel: "Venue image for ".concat(name)
23128
- }, /*#__PURE__*/React.createElement(ProgressiveImage, {
23134
+ }, artworkUrl && (/*#__PURE__*/React.createElement(ProgressiveImage, {
23129
23135
  source: {
23130
23136
  uri: artworkUrl
23131
23137
  },
23132
23138
  style: styles.image,
23133
23139
  alt: "Venue image for ".concat(name)
23134
- }), isLocked && (/*#__PURE__*/React.createElement(View$2, {
23140
+ })), /*#__PURE__*/React.createElement(View$2, {
23135
23141
  style: styles.lockOverlay,
23136
23142
  testID: "lock-overlay"
23137
- }, /*#__PURE__*/React.createElement(Icon, {
23143
+ }, isLocked && /*#__PURE__*/React.createElement(Icon, {
23138
23144
  name: "LockKeyhole",
23139
23145
  size: 48,
23140
23146
  color: "white"
23141
- }))));
23147
+ }), showCenteredPin ? (/*#__PURE__*/React.createElement(Icon, {
23148
+ name: "MapPin",
23149
+ size: 48,
23150
+ color: "white"
23151
+ })) : (/*#__PURE__*/React.createElement(View$2, {
23152
+ style: styles.pinOverlay,
23153
+ testID: "pin-overlay"
23154
+ }, /*#__PURE__*/React.createElement(Icon, {
23155
+ name: "MapPin",
23156
+ size: 24,
23157
+ color: "white"
23158
+ })))));
23142
23159
  };
23143
23160
 
23144
23161
  /**
@@ -23189,11 +23206,10 @@ var VenueTileTitle = function () {
23189
23206
  };
23190
23207
 
23191
23208
  /**
23192
- * The VenueTile component renders a tile with media, title, summary, points, and a chevron.
23209
+ * The VenueTile component renders a tile with media, title, description, and a chevron.
23193
23210
  *
23194
23211
  * @param {VenueTileProps} props - Component props
23195
23212
  * @param {Tile} props.tile - The tile data to render
23196
- * @returns React.ReactElement or null if tile is inactive or not a full-height tile
23197
23213
  */
23198
23214
  var VenueTileRoot = function (_a) {
23199
23215
  var tile = _a.tile;