@wlloyalty/wll-react-sdk 1.6.20 → 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
@@ -23046,6 +23046,8 @@ var useVenueTileStyles = function () {
23046
23046
  return StyleSheet$1.create({
23047
23047
  imageContainer: {
23048
23048
  width: '100%',
23049
+ minHeight: 130,
23050
+ overflow: 'hidden',
23049
23051
  marginBottom: useResponsiveValue(theme.sizes.sm, theme.sizes.xxs, isDesktop, isTablet)
23050
23052
  },
23051
23053
  image: {
@@ -23076,6 +23078,7 @@ var useVenueTileStyles = function () {
23076
23078
  },
23077
23079
  header: {
23078
23080
  width: '100%',
23081
+ paddingTop: theme.sizes.xxxs,
23079
23082
  marginBottom: useResponsiveValue(theme.sizes.xxs, theme.sizes.xxxs, isDesktop, isTablet)
23080
23083
  },
23081
23084
  tileTitle: __assign({
@@ -23092,6 +23095,12 @@ var useVenueTileStyles = function () {
23092
23095
  justifyContent: 'center',
23093
23096
  alignItems: 'center',
23094
23097
  zIndex: 10
23098
+ },
23099
+ pinOverlay: {
23100
+ position: 'absolute',
23101
+ top: 8,
23102
+ right: 8,
23103
+ zIndex: 20
23095
23104
  }
23096
23105
  });
23097
23106
  };
@@ -23099,45 +23108,54 @@ var useVenueTileStyles = function () {
23099
23108
  /**
23100
23109
  * Renders the media for a Venue Tile.
23101
23110
  *
23102
- * @param props {VenueTileMediaProps} - Component props
23103
- * @param props.isArtworkOnly {boolean} - Whether the media should be rendered as an artwork only component
23104
23111
  * @returns React.ReactElement or null if no artwork URL is present or artwork should not be shown
23105
23112
  */
23106
- var VenueTileMedia = function (_a) {
23107
- var _b = _a.isArtworkOnly,
23108
- isArtworkOnly = _b === void 0 ? false : _b;
23113
+ var VenueTileMedia = function () {
23109
23114
  var styles = useVenueTileStyles();
23110
23115
  var tileContext = useTileContext();
23111
23116
  if (!isContextValid(tileContext)) return null;
23112
- var _c = tileContext.configuration,
23113
- artworkUrl = _c.artworkUrl,
23114
- _d = _c.name,
23115
- name = _d === void 0 ? 'Venue' : _d,
23116
- _e = _c.isLocked,
23117
- isLocked = _e === void 0 ? false : _e;
23118
- if (!artworkUrl) return null;
23119
- var containerStyle = {
23120
- flexBasis: isArtworkOnly ? '100%' : '50%'
23121
- };
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;
23122
23129
  return /*#__PURE__*/React.createElement(View$2, {
23123
23130
  style: [styles.imageContainer, containerStyle],
23124
23131
  testID: "venue-tile-media",
23125
23132
  role: "img",
23126
23133
  accessibilityLabel: "Venue image for ".concat(name)
23127
- }, /*#__PURE__*/React.createElement(ProgressiveImage, {
23134
+ }, artworkUrl && (/*#__PURE__*/React.createElement(ProgressiveImage, {
23128
23135
  source: {
23129
23136
  uri: artworkUrl
23130
23137
  },
23131
23138
  style: styles.image,
23132
23139
  alt: "Venue image for ".concat(name)
23133
- }), isLocked && (/*#__PURE__*/React.createElement(View$2, {
23140
+ })), /*#__PURE__*/React.createElement(View$2, {
23134
23141
  style: styles.lockOverlay,
23135
23142
  testID: "lock-overlay"
23136
- }, /*#__PURE__*/React.createElement(Icon, {
23143
+ }, isLocked && /*#__PURE__*/React.createElement(Icon, {
23137
23144
  name: "LockKeyhole",
23138
23145
  size: 48,
23139
23146
  color: "white"
23140
- }))));
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
+ })))));
23141
23159
  };
23142
23160
 
23143
23161
  /**
@@ -23188,11 +23206,10 @@ var VenueTileTitle = function () {
23188
23206
  };
23189
23207
 
23190
23208
  /**
23191
- * 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.
23192
23210
  *
23193
23211
  * @param {VenueTileProps} props - Component props
23194
23212
  * @param {Tile} props.tile - The tile data to render
23195
- * @returns React.ReactElement or null if tile is inactive or not a full-height tile
23196
23213
  */
23197
23214
  var VenueTileRoot = function (_a) {
23198
23215
  var tile = _a.tile;