@phillips/seldon 1.169.2 → 1.170.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.
package/dist/index.js CHANGED
@@ -1,11 +1,11 @@
1
- import { PaddingTokens as a, SpacingTokens as f, defaultYear as s, emailValidation as l, encodeURLSearchParams as d, findChildrenExcludingTypes as m, findChildrenOfType as p, focusElementById as u, generatePaddingClassName as x, getCommonProps as i, noOp as n, px as g, useNormalizedInputProps as c } from "./utils/index.js";
1
+ import { PaddingTokens as a, SpacingTokens as f, defaultYear as s, emailValidation as l, encodeURLSearchParams as d, findChildrenExcludingTypes as m, findChildrenOfType as p, focusElementById as u, generatePaddingClassName as i, getCommonProps as x, noOp as n, px as g, useNormalizedInputProps as c } from "./utils/index.js";
2
2
  import { default as C } from "./pages/Page.js";
3
- import { SSRMediaQuery as P, ssrMediaQueryStyle as A } from "./providers/SeldonProvider/utils.js";
4
- import { usePendingState as L } from "./utils/hooks.js";
5
- import { AuctionStatus as V, LotStatus as b, SupportedLanguages as h } from "./types/commonTypes.js";
6
- import { default as w } from "./components/Button/Button.js";
7
- import { ButtonVariants as y } from "./components/Button/types.js";
8
- import { default as F } from "./components/IconButton/IconButton.js";
3
+ import { SSRMediaQuery as P, ssrMediaQueryStyle as B } from "./providers/SeldonProvider/utils.js";
4
+ import { usePendingState as I } from "./utils/hooks.js";
5
+ import { AuctionStatus as V, LotStatus as b, SupportedLanguages as y } from "./types/commonTypes.js";
6
+ import { default as k } from "./components/Button/Button.js";
7
+ import { ButtonVariants as F } from "./components/Button/types.js";
8
+ import { default as D } from "./components/IconButton/IconButton.js";
9
9
  import { default as M } from "./components/Accordion/Accordion.js";
10
10
  import { default as E } from "./components/Accordion/AccordionItem.js";
11
11
  import { AccordionItemVariant as U, AccordionVariants as O } from "./components/Accordion/types.js";
@@ -23,17 +23,17 @@ import { default as ae } from "./components/Collapsible/CollapsibleContent.js";
23
23
  import { default as se } from "./components/Collapsible/CollapsibleTrigger.js";
24
24
  import { default as de } from "./components/ContentPeek/ContentPeek.js";
25
25
  import { HeightUnits as pe } from "./components/ContentPeek/utils.js";
26
- import { default as xe } from "./components/Detail/Detail.js";
26
+ import { default as ie } from "./components/Detail/Detail.js";
27
27
  import { default as ne } from "./components/Drawer/Drawer.js";
28
28
  import { default as ce } from "./components/Dropdown/Dropdown.js";
29
29
  import { default as Ce } from "./components/ErrorBoundary/ErrorBoundary.js";
30
30
  import { Grid as Pe } from "./components/Grid/Grid.js";
31
- import { default as Be } from "./components/GridItem/GridItem.js";
32
- import { GridItemAlign as Ie } from "./components/GridItem/types.js";
31
+ import { default as Ae } from "./components/GridItem/GridItem.js";
32
+ import { GridItemAlign as Le } from "./components/GridItem/types.js";
33
33
  import { default as be } from "./components/Input/Input.js";
34
- import { default as ke } from "./components/Link/Link.js";
35
- import { LinkVariants as ve } from "./components/Link/types.js";
36
- import { default as De } from "./components/LinkBlock/LinkBlock.js";
34
+ import { default as he } from "./components/Link/Link.js";
35
+ import { LinkVariants as we } from "./components/Link/types.js";
36
+ import { default as ve } from "./components/LinkBlock/LinkBlock.js";
37
37
  import { default as He } from "./components/LinkList/LinkList.js";
38
38
  import { default as Ne } from "./components/Modal/Modal.js";
39
39
  import { default as Ge } from "./components/Navigation/Navigation.js";
@@ -50,16 +50,16 @@ import { SelectVariants as at } from "./components/Select/types.js";
50
50
  import { default as st } from "./components/SplitPanel/SplitPanel.js";
51
51
  import { default as dt } from "./components/Tabs/TabsContainer.js";
52
52
  import { default as pt } from "./components/Tabs/TabsContent.js";
53
- import { Tag as xt, default as it } from "./components/Tags/Tags.js";
53
+ import { Tag as it, default as xt } from "./components/Tags/Tags.js";
54
54
  import { TextAlignments as gt, TextVariants as ct } from "./components/Text/types.js";
55
55
  import { default as Ct } from "./components/Text/Text.js";
56
56
  import { TextSymbolVariants as Pt } from "./components/TextSymbol/types.js";
57
- import { default as Bt } from "./components/TextSymbol/TextSymbol.js";
58
- import { default as It } from "./components/Video/Video.js";
57
+ import { default as At } from "./components/TextSymbol/TextSymbol.js";
58
+ import { default as Lt } from "./components/Video/Video.js";
59
59
  import { default as bt } from "./patterns/DetailList/DetailList.js";
60
- import { DetailListAlignment as kt } from "./patterns/DetailList/types.js";
61
- import { default as vt } from "./patterns/FavoritesCollectionTile/FavoritesCollectionTile.js";
62
- import { default as Dt } from "./patterns/HeroBanner/HeroBanner.js";
60
+ import { DetailListAlignment as ht } from "./patterns/DetailList/types.js";
61
+ import { default as wt } from "./patterns/FavoritesCollectionTile/FavoritesCollectionTile.js";
62
+ import { default as vt } from "./patterns/HeroBanner/HeroBanner.js";
63
63
  import { default as Ht } from "./patterns/LanguageSelector/LanguageSelector.js";
64
64
  import { default as Nt } from "./patterns/SaleHeaderBanner/SaleHeaderBanner.js";
65
65
  import { default as Gt } from "./patterns/SaleHeaderBanner/SaleHeaderBrowseAuctions.js";
@@ -76,51 +76,52 @@ import { default as ao } from "./components/ComposedModal/ComposedModal.js";
76
76
  import { default as so } from "./components/ExitGateCard/ExitGateCard.js";
77
77
  import { default as mo } from "./components/Loader/Loader.js";
78
78
  import { default as uo } from "./components/PageContentWrapper/PageContentWrapper.js";
79
- import { default as io } from "./components/PhoneNumberPicker/PhoneNumberPicker.js";
79
+ import { default as xo } from "./components/PhoneNumberPicker/PhoneNumberPicker.js";
80
80
  import { default as go } from "./patterns/FiltersInline/FiltersInline.js";
81
- import { default as So } from "./patterns/SaleCard/SaleCard.js";
82
- import { SaleCardActions as To } from "./patterns/SaleCard/SaleCardActions.js";
83
- import { SaleCardVariants as Ao } from "./patterns/SaleCard/types.js";
84
- import { default as Lo } from "./patterns/ViewingDetails/ViewingDetails.js";
85
- import { default as Vo } from "./site-furniture/Footer/Footer.js";
86
- import { default as ho } from "./site-furniture/Header/Header.js";
87
- import { default as wo } from "./components/AddToCalendar/AddToCalendar.js";
88
- import { default as yo } from "./components/Article/Article.js";
89
- import { default as Fo } from "./components/Countdown/Countdown.js";
90
- import { CountdownVariants as Mo } from "./components/Countdown/types.js";
91
- import { default as Eo } from "./components/Divider/Divider.js";
92
- import { default as Uo } from "./components/FavoritingTileButton/FavoritingTileButton.js";
93
- import { default as Ro } from "./components/Filter/Filter.js";
94
- import { default as jo } from "./components/Filter/FilterInput.js";
95
- import { default as Wo } from "./components/Filter/FilterHeader.js";
96
- import { default as Zo } from "./components/Pictogram/Pictogram.js";
97
- import { default as Jo } from "./components/TextArea/TextArea.js";
98
- import { default as Xo } from "./components/Toast/Toast.js";
99
- import { ToastProvider as $o } from "./components/Toast/ToastContextProvider.js";
100
- import { useToast as tr } from "./components/Toast/useToast.js";
101
- import { default as rr } from "./patterns/AccountPageHeader/AccountPageHeader.js";
102
- import { default as fr } from "./patterns/BidSnapshot/BidSnapshot.js";
103
- import { default as lr } from "./patterns/BidSnapshot/BidMessage.js";
104
- import { BidMessageVariants as mr, BidStatusEnum as pr } from "./patterns/BidSnapshot/types.js";
105
- import { default as xr } from "./patterns/FilterMenu/FilterMenu.js";
106
- import { default as nr } from "./patterns/ObjectTile/ObjectTile.js";
81
+ import { FilterButtonIconType as So, FilterButtonType as Co } from "./patterns/FiltersInline/types.js";
82
+ import { default as Po } from "./patterns/SaleCard/SaleCard.js";
83
+ import { SaleCardActions as Ao } from "./patterns/SaleCard/SaleCardActions.js";
84
+ import { SaleCardVariants as Lo } from "./patterns/SaleCard/types.js";
85
+ import { default as bo } from "./patterns/ViewingDetails/ViewingDetails.js";
86
+ import { default as ho } from "./site-furniture/Footer/Footer.js";
87
+ import { default as wo } from "./site-furniture/Header/Header.js";
88
+ import { default as vo } from "./components/AddToCalendar/AddToCalendar.js";
89
+ import { default as Ho } from "./components/Article/Article.js";
90
+ import { default as No } from "./components/Countdown/Countdown.js";
91
+ import { CountdownVariants as Go } from "./components/Countdown/types.js";
92
+ import { default as Oo } from "./components/Divider/Divider.js";
93
+ import { default as Qo } from "./components/FavoritingTileButton/FavoritingTileButton.js";
94
+ import { default as zo } from "./components/Filter/Filter.js";
95
+ import { default as Yo } from "./components/Filter/FilterInput.js";
96
+ import { default as qo } from "./components/Filter/FilterHeader.js";
97
+ import { default as Ko } from "./components/Pictogram/Pictogram.js";
98
+ import { default as _o } from "./components/TextArea/TextArea.js";
99
+ import { default as er } from "./components/Toast/Toast.js";
100
+ import { ToastProvider as or } from "./components/Toast/ToastContextProvider.js";
101
+ import { useToast as ar } from "./components/Toast/useToast.js";
102
+ import { default as sr } from "./patterns/AccountPageHeader/AccountPageHeader.js";
103
+ import { default as dr } from "./patterns/BidSnapshot/BidSnapshot.js";
104
+ import { default as pr } from "./patterns/BidSnapshot/BidMessage.js";
105
+ import { BidMessageVariants as ir, BidStatusEnum as xr } from "./patterns/BidSnapshot/types.js";
106
+ import { default as gr } from "./patterns/FilterMenu/FilterMenu.js";
107
+ import { default as Sr } from "./patterns/ObjectTile/ObjectTile.js";
107
108
  export {
108
109
  M as Accordion,
109
110
  E as AccordionItem,
110
111
  U as AccordionItemVariant,
111
112
  O as AccordionVariants,
112
- rr as AccountPageHeader,
113
- wo as AddToCalendar,
114
- yo as Article,
113
+ sr as AccountPageHeader,
114
+ vo as AddToCalendar,
115
+ Ho as Article,
115
116
  V as AuctionStatus,
116
117
  Yt as AuthState,
117
- lr as BidMessage,
118
- mr as BidMessageVariants,
119
- fr as BidSnapshot,
120
- pr as BidStatusEnum,
118
+ pr as BidMessage,
119
+ ir as BidMessageVariants,
120
+ dr as BidSnapshot,
121
+ xr as BidStatusEnum,
121
122
  Q as Breadcrumb,
122
- w as Button,
123
- y as ButtonVariants,
123
+ k as Button,
124
+ F as ButtonVariants,
124
125
  Y as Carousel,
125
126
  q as CarouselArrows,
126
127
  K as CarouselContent,
@@ -133,37 +134,39 @@ export {
133
134
  ao as ComposedModal,
134
135
  de as ContentPeek,
135
136
  pe as ContentPeekHeightUnits,
136
- Fo as Countdown,
137
- Mo as CountdownVariants,
138
- xe as Detail,
137
+ No as Countdown,
138
+ Go as CountdownVariants,
139
+ ie as Detail,
139
140
  bt as DetailList,
140
- kt as DetailListAlignment,
141
- Eo as Divider,
141
+ ht as DetailListAlignment,
142
+ Oo as Divider,
142
143
  ne as Drawer,
143
144
  ce as Dropdown,
144
145
  Ce as ErrorBoundary,
145
146
  so as ExitGateCard,
146
- vt as FavoritesCollectionTile,
147
- Uo as FavoritingTileButton,
148
- Ro as Filter,
149
- Wo as FilterHeader,
150
- jo as FilterInput,
151
- xr as FilterMenu,
147
+ wt as FavoritesCollectionTile,
148
+ Qo as FavoritingTileButton,
149
+ zo as Filter,
150
+ So as FilterButtonIconType,
151
+ Co as FilterButtonType,
152
+ qo as FilterHeader,
153
+ Yo as FilterInput,
154
+ gr as FilterMenu,
152
155
  go as FiltersInline,
153
- Vo as Footer,
156
+ ho as Footer,
154
157
  Pe as Grid,
155
- Be as GridItem,
156
- Ie as GridItemAlign,
157
- ho as Header,
158
- Dt as HeroBanner,
158
+ Ae as GridItem,
159
+ Le as GridItemAlign,
160
+ wo as Header,
161
+ vt as HeroBanner,
159
162
  z as Icon,
160
- F as IconButton,
163
+ D as IconButton,
161
164
  be as Input,
162
165
  Ht as LanguageSelector,
163
- ke as Link,
164
- De as LinkBlock,
166
+ he as Link,
167
+ ve as LinkBlock,
165
168
  He as LinkList,
166
- ve as LinkVariants,
169
+ we as LinkVariants,
167
170
  mo as Loader,
168
171
  b as LotStatus,
169
172
  Ne as Modal,
@@ -171,19 +174,19 @@ export {
171
174
  Oe as NavigationItem,
172
175
  Qe as NavigationItemTrigger,
173
176
  ze as NavigationList,
174
- nr as ObjectTile,
177
+ Sr as ObjectTile,
175
178
  a as PaddingTokens,
176
179
  C as Page,
177
180
  uo as PageContentWrapper,
178
181
  Ye as Pagination,
179
- io as PhoneNumberPicker,
180
- Zo as Pictogram,
182
+ xo as PhoneNumberPicker,
183
+ Ko as Pictogram,
181
184
  qe as PinchZoom,
182
185
  Ke as Row,
183
186
  P as SSRMediaQuery,
184
- So as SaleCard,
185
- To as SaleCardActions,
186
- Ao as SaleCardVariants,
187
+ Po as SaleCard,
188
+ Ao as SaleCardActions,
189
+ Lo as SaleCardVariants,
187
190
  Nt as SaleHeaderBanner,
188
191
  Gt as SaleHeaderBrowseAuctions,
189
192
  _e as Search,
@@ -197,22 +200,22 @@ export {
197
200
  Kt as StatefulViewingsList,
198
201
  Qt as Subscribe,
199
202
  zt as SubscriptionState,
200
- h as SupportedLanguages,
203
+ y as SupportedLanguages,
201
204
  dt as TabsContainer,
202
205
  pt as TabsContent,
203
- xt as Tag,
204
- it as TagsList,
206
+ it as Tag,
207
+ xt as TagsList,
205
208
  Ct as Text,
206
209
  gt as TextAlignments,
207
- Jo as TextArea,
210
+ _o as TextArea,
208
211
  Pt as TextSymbolVariants,
209
- Bt as TextSymbols,
212
+ At as TextSymbols,
210
213
  ct as TextVariants,
211
- Xo as Toast,
212
- $o as ToastProvider,
214
+ er as Toast,
215
+ or as ToastProvider,
213
216
  qt as UserManagement,
214
- It as Video,
215
- Lo as ViewingDetails,
217
+ Lt as Video,
218
+ bo as ViewingDetails,
216
219
  _t as ViewingsList,
217
220
  s as defaultYear,
218
221
  l as emailValidation,
@@ -220,12 +223,12 @@ export {
220
223
  m as findChildrenExcludingTypes,
221
224
  p as findChildrenOfType,
222
225
  u as focusElementById,
223
- x as generatePaddingClassName,
224
- i as getCommonProps,
226
+ i as generatePaddingClassName,
227
+ x as getCommonProps,
225
228
  n as noOp,
226
229
  g as px,
227
- A as ssrMediaQueryStyle,
230
+ B as ssrMediaQueryStyle,
228
231
  c as useNormalizedInputProps,
229
- L as usePendingState,
230
- tr as useToast
232
+ I as usePendingState,
233
+ ar as useToast
231
234
  };
@@ -69,15 +69,22 @@ export interface FavoritesCollectionTileProps extends ComponentProps<'div'> {
69
69
  * Custom icon size for the icon in the tile
70
70
  */
71
71
  iconSize?: number;
72
+ /**
73
+ * ARIA label for the popover menu trigger
74
+ */
75
+ menuAriaLabel?: string;
76
+ /**
77
+ * ARIA label for the create variant container
78
+ */
79
+ favoritesAriaLabel?: string;
80
+ /**
81
+ * ARIA label for the lists empty state
82
+ */
83
+ emptyListAriaLabel?: string;
84
+ /**
85
+ * ARIA label for list
86
+ */
87
+ listAriaLabel?: string;
72
88
  }
73
- /**
74
- * ## Overview
75
- *
76
- * Overview of this widget
77
- *
78
- * [Figma Link](https://www.figma.com/design/rIefa3bRPyZbZmtyV9PSQv/My-Account?node-id=61-14355&m=dev)
79
- *
80
- * [Storybook Link](https://phillips-seldon.netlify.app/?path=/docs/patterns-FavoritesCollectionTile--overview)
81
- */
82
89
  declare const FavoritesCollectionTile: import('react').MemoExoticComponent<import('react').ForwardRefExoticComponent<Omit<FavoritesCollectionTileProps, "ref"> & import('react').RefAttributes<HTMLDivElement>>>;
83
90
  export default FavoritesCollectionTile;
@@ -1,90 +1,214 @@
1
- import { jsx as t, jsxs as a, Fragment as f } from "react/jsx-runtime";
2
- import { Root as O, Trigger as V, Portal as A, Content as Y } from "../../node_modules/@radix-ui/react-popover/dist/index.js";
1
+ import { jsx as t, jsxs as c } from "react/jsx-runtime";
2
+ import { Root as q, Trigger as B, Portal as G, Content as H } from "../../node_modules/@radix-ui/react-popover/dist/index.js";
3
3
  import l from "../../node_modules/classnames/index.js";
4
- import { memo as H, forwardRef as K, useRef as q } from "react";
4
+ import { memo as J, forwardRef as Q, useRef as U } from "react";
5
5
  import $ from "../../components/Icon/Icon.js";
6
- import B from "../../components/Link/Link.js";
7
- import G from "../../components/SeldonImage/SeldonImage.js";
8
- import { TextVariants as y } from "../../components/Text/types.js";
9
- import g from "../../components/Text/Text.js";
10
- import { getCommonProps as J } from "../../utils/index.js";
11
- const ae = H(
12
- K(
6
+ import W from "../../components/Link/Link.js";
7
+ import X from "../../components/SeldonImage/SeldonImage.js";
8
+ import { TextVariants as g } from "../../components/Text/types.js";
9
+ import v from "../../components/Text/Text.js";
10
+ import { getCommonProps as Z } from "../../utils/index.js";
11
+ const S = ({
12
+ baseClassName: e,
13
+ iconSize: o,
14
+ createFirstListText: a,
15
+ onClick: r
16
+ }) => /* @__PURE__ */ t(
17
+ "button",
18
+ {
19
+ type: "button",
20
+ className: `${e}__create-variant`,
21
+ "data-testid": "create-list",
22
+ "aria-label": a,
23
+ onClick: (n) => {
24
+ n.stopPropagation(), r?.(n);
25
+ },
26
+ children: /* @__PURE__ */ t("span", { className: l(`${e}__empty`, `${e}__empty--create-list`), children: /* @__PURE__ */ c("span", { className: `${e}__empty__content`, children: [
27
+ /* @__PURE__ */ t(
28
+ $,
29
+ {
30
+ icon: "Add",
31
+ width: o,
32
+ height: o,
33
+ color: "$dark-gray",
34
+ className: l(`${e}__icon`, `${e}__icon-circle`),
35
+ "aria-hidden": "true"
36
+ }
37
+ ),
38
+ /* @__PURE__ */ t("span", { className: `${e}__text`, children: a })
39
+ ] }) })
40
+ }
41
+ ), N = ({
42
+ baseClassName: e,
43
+ iconSize: o,
44
+ text: a,
45
+ ariaLabel: r,
46
+ dataTestId: n
47
+ }) => /* @__PURE__ */ t("div", { className: `${e}__media-container`, "data-testid": n, "aria-label": r, role: "region", children: /* @__PURE__ */ t("div", { className: l(`${e}__empty`, `${e}__empty--bg`), children: /* @__PURE__ */ c("div", { className: `${e}__empty__content`, children: [
48
+ /* @__PURE__ */ t(
49
+ $,
50
+ {
51
+ icon: "Favorite",
52
+ width: o,
53
+ height: o,
54
+ color: "$dark-gray",
55
+ className: l(`${e}__icon`),
56
+ "aria-hidden": "true"
57
+ }
58
+ ),
59
+ /* @__PURE__ */ t("div", { className: `${e}__text`, children: a })
60
+ ] }) }) }), z = ({
61
+ baseClassName: e,
62
+ imageRef: o,
63
+ listAriaLabel: a,
64
+ name: r,
65
+ imageSrc: n
66
+ }) => /* @__PURE__ */ t(
67
+ "div",
68
+ {
69
+ className: `${e}__media-container`,
70
+ ref: o,
71
+ "aria-label": a,
72
+ "data-testid": "list",
73
+ role: "region",
74
+ children: /* @__PURE__ */ t(
75
+ X,
76
+ {
77
+ alt: r,
78
+ aspectRatio: "1/1",
79
+ className: `${e}__media`,
80
+ objectFit: "contain",
81
+ src: n,
82
+ style: {
83
+ cursor: "pointer"
84
+ }
85
+ }
86
+ )
87
+ }
88
+ ), lt = J(
89
+ Q(
13
90
  ({
14
- id: c,
15
- className: u,
16
- count: d,
17
- name: _,
18
- imageSrc: b,
19
- variant: h,
20
- element: C = B,
21
- href: L,
22
- emptyFavoritesText: k = "You have not added any objects to your Favorites yet.",
23
- emptyListsText: w = "You have not added any objects to your List yet.",
91
+ id: e,
92
+ className: o,
93
+ count: a,
94
+ name: r,
95
+ imageSrc: n,
96
+ variant: _,
97
+ element: L = W,
98
+ href: k,
99
+ emptyFavoritesText: w = "You have not added any objects to your Favorites yet.",
100
+ emptyListsText: b = "You have not added any objects to your List yet.",
24
101
  createFirstListText: x = "Create your first List.",
25
- editListText: F = "Edit List",
102
+ editListText: I = "Edit List",
26
103
  deleteListText: T = "Delete List",
27
- onEdit: R,
28
- onDelete: j,
29
- formatlotStr: v = (e, p = e === 1 ? "LOT" : "LOTS") => `${e} ${p}`,
30
- linkClassName: I,
31
- iconSize: o = 22,
32
- ...P
33
- }, D) => {
34
- const { className: e, ...p } = J({ id: c, ...P }, "FavoritesCollectionTile"), E = q(null), i = _ && d !== null && d !== void 0, r = d === 0, m = h === "lists", n = h === "create", N = i && r;
35
- return /* @__PURE__ */ t("div", { ...p, className: l(e, u), ref: D, id: c, children: /* @__PURE__ */ a("div", { className: `${e}__content`, children: [
36
- /* @__PURE__ */ a("div", { className: `${e}__header`, children: [
37
- /* @__PURE__ */ a("div", { className: `${e}__info`, children: [
38
- i && /* @__PURE__ */ t(g, { element: "span", className: `${e}__count`, variant: y.body3, children: v && i && v(d) }),
39
- /* @__PURE__ */ t(g, { element: "h3", className: `${e}__title`, variant: y.heading5, children: _ })
104
+ onEdit: E,
105
+ onDelete: F,
106
+ formatlotStr: u = (i, p = i === 1 ? "LOT" : "LOTS") => `${i} ${p}`,
107
+ linkClassName: P,
108
+ iconSize: d = 22,
109
+ menuAriaLabel: R = "Manage List",
110
+ favoritesAriaLabel: V = "Favorites",
111
+ emptyListAriaLabel: j = "Empty List",
112
+ listAriaLabel: C = "List",
113
+ ...y
114
+ }, O) => {
115
+ const { className: i, ...p } = Z({ id: e, ...y }, "FavoritesCollectionTile"), D = U(null), m = r && a !== null && a !== void 0, h = a === 0, f = _ === "lists", A = _ === "create", M = _ === "favorites" && h, Y = m && h && f, K = () => A ? /* @__PURE__ */ t(
116
+ S,
117
+ {
118
+ baseClassName: i,
119
+ iconSize: d,
120
+ createFirstListText: x,
121
+ onClick: y.onClick
122
+ }
123
+ ) : /* @__PURE__ */ c(L, { href: k, className: l(`${i}__media-link`, P), tabIndex: 0, children: [
124
+ M && /* @__PURE__ */ t(
125
+ N,
126
+ {
127
+ baseClassName: i,
128
+ iconSize: d,
129
+ text: w,
130
+ ariaLabel: V,
131
+ dataTestId: "favorites"
132
+ }
133
+ ),
134
+ Y && /* @__PURE__ */ t(
135
+ N,
136
+ {
137
+ baseClassName: i,
138
+ iconSize: d,
139
+ text: b,
140
+ ariaLabel: j,
141
+ dataTestId: "empty-list"
142
+ }
143
+ ),
144
+ !h && m && /* @__PURE__ */ t(
145
+ z,
146
+ {
147
+ baseClassName: i,
148
+ imageRef: D,
149
+ listAriaLabel: C,
150
+ name: r,
151
+ imageSrc: n,
152
+ iconSize: d
153
+ }
154
+ )
155
+ ] });
156
+ return /* @__PURE__ */ t("div", { ...p, className: l(i, o), ref: O, id: e, children: /* @__PURE__ */ c("div", { className: `${i}__content`, children: [
157
+ /* @__PURE__ */ c("div", { className: `${i}__header`, children: [
158
+ /* @__PURE__ */ c("div", { className: `${i}__info`, children: [
159
+ m && /* @__PURE__ */ t(v, { element: "span", className: `${i}__count`, variant: g.body3, children: u && m && u(a) }),
160
+ r && /* @__PURE__ */ t(v, { element: "h3", className: `${i}__title`, variant: g.heading5, children: r })
40
161
  ] }),
41
- /* @__PURE__ */ t(f, { children: i && m && /* @__PURE__ */ a(O, { children: [
42
- /* @__PURE__ */ t(V, { asChild: !0, children: /* @__PURE__ */ t(
162
+ m && f && /* @__PURE__ */ c(q, { children: [
163
+ /* @__PURE__ */ t(B, { asChild: !0, children: /* @__PURE__ */ t(
43
164
  "div",
44
165
  {
45
- className: `${e}__actions`,
166
+ className: `${i}__actions`,
46
167
  "data-testid": "menu-trigger",
47
168
  tabIndex: 0,
48
169
  role: "button",
170
+ "aria-label": R,
171
+ "aria-haspopup": "menu",
49
172
  onKeyDown: (s) => {
50
173
  s.key === "Enter" && (s.preventDefault(), s.stopPropagation(), s.target.click());
51
174
  },
52
- children: /* @__PURE__ */ t("div", { className: `${e}__icon-rotate`, children: /* @__PURE__ */ t(
175
+ children: /* @__PURE__ */ t("div", { className: `${i}__icon-rotate`, children: /* @__PURE__ */ t(
53
176
  $,
54
177
  {
55
178
  icon: "Icon",
56
- width: o,
57
- height: o,
179
+ width: d,
180
+ height: d,
58
181
  color: "$dark-gray",
59
- className: `${e}__icon-button`
182
+ className: `${i}__icon-button`,
183
+ "aria-hidden": "true"
60
184
  }
61
185
  ) })
62
186
  }
63
187
  ) }),
64
- /* @__PURE__ */ t(A, { children: /* @__PURE__ */ t(
65
- Y,
188
+ /* @__PURE__ */ t(G, { children: /* @__PURE__ */ t(
189
+ H,
66
190
  {
67
191
  avoidCollisions: !0,
68
192
  collisionPadding: 10,
69
193
  sideOffset: 5,
70
194
  align: "start",
71
195
  alignOffset: 5,
72
- className: `${e}__popover-content`,
73
- children: /* @__PURE__ */ a("div", { className: `${e}__dropdown`, "data-testid": "dropdown-menu", children: [
196
+ className: `${i}__popover-content`,
197
+ children: /* @__PURE__ */ c("div", { className: `${i}__dropdown`, "data-testid": "dropdown-menu", children: [
74
198
  /* @__PURE__ */ t(
75
199
  "button",
76
200
  {
77
- className: `${e}__dropdown--item`,
78
- onClick: (s) => R?.(c, s),
201
+ className: `${i}__dropdown--item`,
202
+ onClick: (s) => E?.(e, s),
79
203
  type: "button",
80
- children: F
204
+ children: I
81
205
  }
82
206
  ),
83
207
  /* @__PURE__ */ t(
84
208
  "button",
85
209
  {
86
- className: `${e}__dropdown--item`,
87
- onClick: (s) => j?.(c, s),
210
+ className: `${i}__dropdown--item`,
211
+ onClick: (s) => F?.(e, s),
88
212
  type: "button",
89
213
  children: T
90
214
  }
@@ -92,67 +216,13 @@ const ae = H(
92
216
  ] })
93
217
  }
94
218
  ) })
95
- ] }) })
219
+ ] })
96
220
  ] }),
97
- /* @__PURE__ */ a(C, { href: L, className: l(`${e}__media-link`, I), tabIndex: 0, children: [
98
- r && h === "favorites" && /* @__PURE__ */ t("div", { className: `${e}__media-container`, "data-testid": "favorites", "aria-label": "Favorites", children: /* @__PURE__ */ t("div", { className: l(`${e}__empty`, `${e}__empty--bg`), children: /* @__PURE__ */ a("div", { className: `${e}__empty__content`, children: [
99
- /* @__PURE__ */ t(
100
- $,
101
- {
102
- icon: "Favorite",
103
- width: o,
104
- height: o,
105
- color: "$dark-gray",
106
- className: `${e}__icon`
107
- }
108
- ),
109
- /* @__PURE__ */ t("div", { className: `${e}__text`, children: k })
110
- ] }) }) }),
111
- (r || !i) && (m || n) && /* @__PURE__ */ a(f, { children: [
112
- n && /* @__PURE__ */ t("div", { className: `${e}__create-spacing` }),
113
- /* @__PURE__ */ t("div", { className: `${e}__media-container`, "data-testid": "list", "aria-label": "Lists", children: /* @__PURE__ */ t(
114
- "div",
115
- {
116
- className: l(`${e}__empty`, {
117
- [`${e}__empty--create-list`]: !i && (m || n),
118
- [`${e}__empty--bg`]: r && !n
119
- }),
120
- children: /* @__PURE__ */ a("div", { className: `${e}__empty__content`, children: [
121
- /* @__PURE__ */ t(
122
- $,
123
- {
124
- icon: N ? "Favorite" : "Add",
125
- width: o,
126
- height: o,
127
- color: "$dark-gray",
128
- className: l(`${e}__icon`, {
129
- [`${e}__icon-circle`]: !i && (m || n)
130
- })
131
- }
132
- ),
133
- /* @__PURE__ */ t("div", { className: `${e}__text`, children: N ? w : x })
134
- ] })
135
- }
136
- ) })
137
- ] }),
138
- !r && i && /* @__PURE__ */ t("div", { className: `${e}__media-container`, ref: E, children: /* @__PURE__ */ t(
139
- G,
140
- {
141
- alt: _,
142
- aspectRatio: "1/1",
143
- className: `${e}__media`,
144
- objectFit: "cover",
145
- src: b,
146
- style: {
147
- cursor: "pointer"
148
- }
149
- }
150
- ) })
151
- ] })
221
+ K()
152
222
  ] }) });
153
223
  }
154
224
  )
155
225
  );
156
226
  export {
157
- ae as default
227
+ lt as default
158
228
  };
@@ -55,6 +55,7 @@ export declare const CreateList: {
55
55
  variant: string;
56
56
  element: string;
57
57
  linkClassName: string;
58
+ onClick: () => void;
58
59
  };
59
60
  };
60
61
  export declare const EmptyList: {
@@ -1 +1,3 @@
1
- export { default as FiltersInline } from './FiltersInline';
1
+ export { type FilterButton } from './FilterButton';
2
+ export { default as FiltersInline, type FiltersInlineProps } from './FiltersInline';
3
+ export * from './types';
@@ -109,6 +109,7 @@
109
109
  }
110
110
 
111
111
  &__media-container {
112
+ background-color: $soft-gray;
112
113
  position: relative;
113
114
  width: 100%;
114
115
  }
@@ -132,6 +133,7 @@
132
133
  }
133
134
 
134
135
  &--create-list {
136
+ background-color: $white;
135
137
  border: 1px solid #0000001f;
136
138
  border-radius: 0;
137
139
  }
@@ -145,8 +147,7 @@
145
147
  }
146
148
 
147
149
  &__icon {
148
- grid-column: 1;
149
- justify-self: start;
150
+ justify-content: flex-start;
150
151
  pointer-events: none;
151
152
 
152
153
  &-rotate {
@@ -156,7 +157,9 @@
156
157
  &-circle {
157
158
  border: 2px solid $dark-gray;
158
159
  border-radius: 50%;
159
- transform: scale(0.846);
160
+ height: 1.5rem;
161
+ justify-content: flex-start;
162
+ width: 1.5rem;
160
163
  }
161
164
  }
162
165
 
@@ -173,11 +176,19 @@
173
176
  text-transform: none;
174
177
  }
175
178
 
176
- &__create-spacing {
177
- height: calc($spacing-xsm + var(--body-line-height-size3) + var(--heading-line-height-size5));
179
+ [data-radix-popper-content-wrapper] > * {
180
+ all: unset;
178
181
  }
179
182
 
180
- [data-radix-popper-content-wrapper] > * {
183
+ &__create-variant {
181
184
  all: unset;
185
+ background: none;
186
+ height: 100%;
187
+ margin-top: calc($spacing-xsm + var(--body-line-height-size3) + var(--heading-line-height-size5));
188
+ width: 100%;
189
+
190
+ &:focus-visible {
191
+ outline: 1px solid $pure-black;
192
+ }
182
193
  }
183
194
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@phillips/seldon",
3
- "version": "1.169.2",
3
+ "version": "1.170.0",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/PhillipsAuctionHouse/seldon"