@phillips/seldon 1.161.0 → 1.163.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.
Files changed (25) hide show
  1. package/dist/components/ComposedModal/ComposedModal.d.ts +54 -0
  2. package/dist/components/ComposedModal/ComposedModal.stories.d.ts +38 -0
  3. package/dist/components/ComposedModal/ComposedModal.test.d.ts +1 -0
  4. package/dist/components/ComposedModal/index.d.ts +1 -0
  5. package/dist/components/ExitGateCard/ExitGateCard.d.ts +51 -0
  6. package/dist/components/ExitGateCard/ExitGateCard.js +50 -0
  7. package/dist/components/ExitGateCard/ExitGateCard.stories.d.ts +18 -0
  8. package/dist/components/ExitGateCard/ExitGateCard.test.d.ts +1 -0
  9. package/dist/components/ExitGateCard/index.d.ts +1 -0
  10. package/dist/components/SaleCard/SaleCard.js +21 -21
  11. package/dist/index.d.ts +1 -0
  12. package/dist/index.js +61 -59
  13. package/dist/patterns/ViewingDetails/ViewingDetails.d.ts +62 -0
  14. package/dist/patterns/ViewingDetails/ViewingDetails.stories.d.ts +40 -0
  15. package/dist/patterns/ViewingDetails/ViewingDetails.test.d.ts +1 -0
  16. package/dist/patterns/ViewingDetails/ViewingDetailsMock.d.ts +29 -0
  17. package/dist/patterns/ViewingDetails/index.d.ts +1 -0
  18. package/dist/scss/componentStyles.scss +3 -0
  19. package/dist/scss/components/ComposedModal/_composedModal.scss +53 -0
  20. package/dist/scss/components/ExitGateCard/_exitGateCard.scss +79 -0
  21. package/dist/scss/components/IconButton/_iconButton.scss +1 -0
  22. package/dist/scss/components/SaleCard/_saleCard.scss +4 -2
  23. package/dist/scss/patterns/ViewingDetails/_viewingDetails.scss +51 -0
  24. package/dist/scss/patterns/ViewingDetails/_viewingDetails.stories.scss +5 -0
  25. package/package.json +1 -1
@@ -0,0 +1,54 @@
1
+ import { ReactNode } from 'react';
2
+ import { ModalProps } from '../Modal/Modal';
3
+ export interface ModalButtonProps {
4
+ /**
5
+ * Callback click function for button
6
+ */
7
+ onClick?: () => void | unknown;
8
+ /**
9
+ * Button label text
10
+ */
11
+ buttonLabel?: string;
12
+ }
13
+ export interface ComposedModalProps extends Omit<ModalProps, 'onClose' | 'role' | 'style'> {
14
+ /**
15
+ * Title for Composed Modal
16
+ */
17
+ title: string;
18
+ /**
19
+ * The content of the modal.
20
+ */
21
+ children: React.ReactNode;
22
+ /**
23
+ * onClose handler for the modal
24
+ */
25
+ onClose?: () => void;
26
+ /**
27
+ * Maximum height value for the modal body
28
+ */
29
+ maxHeightValue?: string;
30
+ /**
31
+ * Left Button Props
32
+ */
33
+ secondaryButton?: ModalButtonProps;
34
+ /**
35
+ * Right Button Props
36
+ */
37
+ primaryButton?: ModalButtonProps;
38
+ /**
39
+ * Footer content for bottom of Viewings Details
40
+ */
41
+ footerContent?: ReactNode;
42
+ }
43
+ /**
44
+ * ## Overview
45
+ *
46
+ * A component for ComposedModal that extends the base Modal component.
47
+ *
48
+ * [Figma Link](https://www.figma.com/design/hMu9IWH5N3KamJy8tLFdyV/Design-System--Responsive-Web?node-id=25578-15048&p=f&m=dev)
49
+ *
50
+ * [Storybook Link](https://phillips-seldon.netlify.app/?path=/docs/components-composedmodal--overview)
51
+ *
52
+ */
53
+ declare const ComposedModal: import('react').ForwardRefExoticComponent<ComposedModalProps & import('react').RefAttributes<HTMLDivElement>>;
54
+ export default ComposedModal;
@@ -0,0 +1,38 @@
1
+ import { ComposedModalProps } from './ComposedModal';
2
+ declare const _default: {
3
+ title: string;
4
+ component: import('react').ForwardRefExoticComponent<ComposedModalProps & import('react').RefAttributes<HTMLDivElement>>;
5
+ };
6
+ export default _default;
7
+ export declare const Playground: {
8
+ (props: ComposedModalProps): import("react/jsx-runtime").JSX.Element;
9
+ args: {
10
+ id: string;
11
+ title: string;
12
+ viewingDetailsProps: {
13
+ label: string;
14
+ sessionTimesLabel: string;
15
+ sessionTimes: {
16
+ sessionLabel: string;
17
+ sessionTime: string;
18
+ }[];
19
+ viewingTimes: string[];
20
+ location: string;
21
+ mapLink: string;
22
+ };
23
+ };
24
+ };
25
+ export declare const ComposedModalScroll: {
26
+ (props: ComposedModalProps): import("react/jsx-runtime").JSX.Element;
27
+ args: {
28
+ id: string;
29
+ title: string;
30
+ };
31
+ };
32
+ export declare const ComposedModalSingleButton: {
33
+ (props: ComposedModalProps): import("react/jsx-runtime").JSX.Element;
34
+ args: {
35
+ id: string;
36
+ title: string;
37
+ };
38
+ };
@@ -0,0 +1 @@
1
+ export { default as ComposedModal, type ComposedModalProps } from './ComposedModal';
@@ -0,0 +1,51 @@
1
+ import { ComponentProps, ElementType, ReactNode } from 'react';
2
+ import { ButtonVariants } from '../Button/types';
3
+ export interface ExitGateCardProps extends ComponentProps<'div'> {
4
+ /**
5
+ * Image src to display at the right side of the article.
6
+ */
7
+ imageSrc?: string;
8
+ /**
9
+ * Top label for the article.
10
+ */
11
+ label?: ReactNode;
12
+ /**
13
+ * Header for the article.
14
+ */
15
+ header?: ReactNode;
16
+ /**
17
+ * Description for the article.
18
+ */
19
+ description?: ReactNode;
20
+ /**
21
+ * Custom link element to use for the link. Defaults to the `Link` component.
22
+ */
23
+ linkElement?: ElementType<ComponentProps<'a'>>;
24
+ /**
25
+ * Label for the link.
26
+ */
27
+ linkLabel?: ReactNode;
28
+ /**
29
+ * Href for the link.
30
+ */
31
+ linkHref?: string;
32
+ /**
33
+ * imageSrc alt text for accessibility.
34
+ */
35
+ altText?: string;
36
+ /**
37
+ * LinkVariants for the ExitGateCard.
38
+ */
39
+ variant?: ButtonVariants;
40
+ }
41
+ /**
42
+ * ## Overview
43
+ *
44
+ * Overview of this widget
45
+ *
46
+ * [Figma Link](https://www.figma.com/design/hMu9IWH5N3KamJy8tLFdyV/Design-System--Foundations--RW-to-be-depreciated-?node-id=24825-524&p=f&m=dev)
47
+ *
48
+ * [Storybook Link](https://phillips-seldon.netlify.app/?path=/docs/components-ExitGateCard-overview)
49
+ */
50
+ declare const ExitGateCard: import('react').ForwardRefExoticComponent<Omit<ExitGateCardProps, "ref"> & import('react').RefAttributes<HTMLDivElement>>;
51
+ export default ExitGateCard;
@@ -0,0 +1,50 @@
1
+ import { jsxs as p, jsx as a } from "react/jsx-runtime";
2
+ import h from "../../node_modules/classnames/index.js";
3
+ import { forwardRef as $ } from "react";
4
+ import { getCommonProps as v } from "../../utils/index.js";
5
+ import C from "../Button/Button.js";
6
+ import { ButtonVariants as E } from "../Button/types.js";
7
+ import "../Link/types.js";
8
+ import g from "../Link/Link.js";
9
+ import y from "../SeldonImage/SeldonImage.js";
10
+ import { TextVariants as e } from "../Text/types.js";
11
+ import r from "../Text/Text.js";
12
+ const G = $(
13
+ ({
14
+ className: f,
15
+ imageSrc: n,
16
+ label: o,
17
+ header: m,
18
+ description: s,
19
+ linkLabel: l,
20
+ linkHref: i,
21
+ linkElement: c = g,
22
+ variant: _ = E.secondary,
23
+ altText: N = "Exit Gate Card Image",
24
+ ...d
25
+ }, u) => {
26
+ const { className: t, ...x } = v(d, "ExitGateCard");
27
+ return /* @__PURE__ */ p("article", { ...x, className: h(t, f), ...d, ref: u, children: [
28
+ n ? /* @__PURE__ */ a(
29
+ y,
30
+ {
31
+ objectFit: "cover",
32
+ aspectRatio: "16/9",
33
+ src: n,
34
+ alt: N,
35
+ className: `${t}__desktop_image`
36
+ }
37
+ ) : null,
38
+ /* @__PURE__ */ p("div", { className: `${t}__content`, children: [
39
+ o ? /* @__PURE__ */ a(r, { variant: e.body2, element: "span", className: `${t}__content-label`, children: o }) : null,
40
+ m ? /* @__PURE__ */ a(r, { variant: e.heading1, element: "span", className: `${t}__content-title`, children: m }) : null,
41
+ s ? /* @__PURE__ */ a(r, { variant: e.body2, element: "span", className: `${t}__content-description`, children: s }) : null,
42
+ (l || c) && i ? /* @__PURE__ */ a(c, { href: i, children: /* @__PURE__ */ a(C, { variant: _, className: `${t}__content-link`, children: l }) }) : null
43
+ ] })
44
+ ] });
45
+ }
46
+ );
47
+ G.displayName = "ExitGateCard";
48
+ export {
49
+ G as default
50
+ };
@@ -0,0 +1,18 @@
1
+ import { ExitGateCardProps } from './ExitGateCard';
2
+ declare const meta: {
3
+ title: string;
4
+ component: import('react').ForwardRefExoticComponent<Omit<ExitGateCardProps, "ref"> & import('react').RefAttributes<HTMLDivElement>>;
5
+ };
6
+ export default meta;
7
+ export declare const Playground: {
8
+ (props: ExitGateCardProps): import("react/jsx-runtime").JSX.Element;
9
+ args: {
10
+ imageSrc: string;
11
+ label: string;
12
+ header: string;
13
+ description: string;
14
+ linkLabel: string;
15
+ linkHref: string;
16
+ variant: string;
17
+ };
18
+ };
@@ -0,0 +1 @@
1
+ export { default as ExitGateCard, type ExitGateCardProps } from './ExitGateCard';
@@ -1,48 +1,48 @@
1
- import { jsxs as l, jsx as r } from "react/jsx-runtime";
1
+ import { jsxs as s, jsx as r } from "react/jsx-runtime";
2
2
  import { forwardRef as R } from "react";
3
3
  import { getCommonProps as V } from "../../utils/index.js";
4
4
  import $ from "../../node_modules/classnames/index.js";
5
5
  import { TextVariants as i } from "../Text/types.js";
6
6
  import e from "../Text/Text.js";
7
7
  import j from "../SeldonImage/SeldonImage.js";
8
- import t from "../Button/Button.js";
8
+ import n from "../Button/Button.js";
9
9
  import { ButtonVariants as m } from "../Button/types.js";
10
10
  import { SSRMediaQuery as D } from "../../providers/SeldonProvider/utils.js";
11
11
  import { SaleCardVariants as v } from "./types.js";
12
12
  const M = R(
13
13
  ({
14
14
  className: g,
15
- imageSrc: o,
15
+ imageSrc: c,
16
16
  imageAlt: b = "Auction Image",
17
17
  auctionType: C,
18
18
  titleText: S,
19
19
  date: E,
20
20
  location: k,
21
- primaryButtonText: c,
21
+ primaryButtonText: o,
22
22
  primaryButtonOnClick: d,
23
23
  secondaryButtonText: _,
24
- secondaryButtonHref: s,
24
+ secondaryButtonHref: l,
25
25
  secondaryButtonOnClick: u,
26
26
  badgeText: h,
27
27
  modalButtonOnClick: p,
28
28
  modalButtonText: f,
29
- variant: n = v.DEFAULT,
29
+ variant: t = v.DEFAULT,
30
30
  ...N
31
31
  }, A) => {
32
32
  const { className: a, ...L } = V(N, "SaleCard"), I = $(a, g, {
33
- [`${a}--${n}`]: n
33
+ [`${a}--${t}`]: t
34
34
  }), P = { ...L, ...N };
35
- return /* @__PURE__ */ l("div", { ...P, className: I, ref: A, children: [
36
- o ? /* @__PURE__ */ r(j, { src: o, alt: b, className: `${a}__image` }) : null,
37
- /* @__PURE__ */ l("div", { className: `${a}__details`, children: [
35
+ return /* @__PURE__ */ s("article", { ...P, className: I, ref: A, children: [
36
+ c ? /* @__PURE__ */ r(j, { src: c, alt: b, className: `${a}__image` }) : null,
37
+ /* @__PURE__ */ s("div", { className: `${a}__details`, children: [
38
38
  /* @__PURE__ */ r(e, { variant: i.badge, className: `${a}__auction-type`, children: C }),
39
39
  /* @__PURE__ */ r(e, { variant: i.title3, children: S }),
40
40
  h && /* @__PURE__ */ r(e, { variant: i.badge, className: `${a}__badge`, children: h }),
41
- /* @__PURE__ */ l("div", { className: `${a}__info`, children: [
41
+ /* @__PURE__ */ s("div", { className: `${a}__info`, children: [
42
42
  /* @__PURE__ */ r(e, { variant: i.string2, children: k }),
43
43
  /* @__PURE__ */ r(e, { variant: i.string2, children: E }),
44
44
  f && p && /* @__PURE__ */ r("div", { className: `${a}__modal-link`, children: /* @__PURE__ */ r(
45
- t,
45
+ n,
46
46
  {
47
47
  onClick: p,
48
48
  variant: m.tertiary,
@@ -52,25 +52,25 @@ const M = R(
52
52
  ) })
53
53
  ] })
54
54
  ] }),
55
- n !== v.RELATED_SALE_TILE && /* @__PURE__ */ r(D.Media, { greaterThanOrEqual: "md", children: /* @__PURE__ */ l("div", { className: `${a}__cta`, children: [
56
- c && d && /* @__PURE__ */ r(
57
- t,
55
+ t !== v.RELATED_SALE_TILE && /* @__PURE__ */ r(D.Media, { greaterThanOrEqual: "md", children: /* @__PURE__ */ s("div", { className: `${a}__cta`, children: [
56
+ o && d && /* @__PURE__ */ r(
57
+ n,
58
58
  {
59
59
  variant: m.primary,
60
60
  onClick: d,
61
61
  className: `${a}__cta-button`,
62
- children: c
62
+ children: o
63
63
  }
64
64
  ),
65
65
  _ && /* @__PURE__ */ r(
66
- t,
66
+ n,
67
67
  {
68
- variant: s ? m.tertiary : m.secondary,
69
- href: s,
70
- target: s ? "_blank" : void 0,
68
+ variant: l ? m.tertiary : m.secondary,
69
+ href: l,
70
+ target: l ? "_blank" : void 0,
71
71
  onClick: u,
72
72
  className: $(`${a}__cta-button`, {
73
- [`${a}__pdf-link`]: s
73
+ [`${a}__pdf-link`]: l
74
74
  }),
75
75
  children: _
76
76
  }
package/dist/index.d.ts CHANGED
@@ -58,6 +58,7 @@ export * from './components/Carousel';
58
58
  export * from './components/ComboBox';
59
59
  export * from './components/PhoneNumberPicker';
60
60
  export * from './components/Detail';
61
+ export * from './components/ExitGateCard';
61
62
  export * from './components/Loader';
62
63
  export { default as PageContentWrapper } from './components/PageContentWrapper/PageContentWrapper';
63
64
  export * from './components/PinchZoom';
package/dist/index.js CHANGED
@@ -8,7 +8,7 @@ import { ButtonVariants as y } from "./components/Button/types.js";
8
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
- import { AccordionItemVariant as G, AccordionVariants as O } from "./components/Accordion/types.js";
11
+ import { AccordionItemVariant as U, AccordionVariants as O } from "./components/Accordion/types.js";
12
12
  import { default as Q } from "./components/Breadcrumb/Breadcrumb.js";
13
13
  import "react/jsx-runtime";
14
14
  import "./node_modules/classnames/index.js";
@@ -36,7 +36,7 @@ import { LinkVariants as we } from "./components/Link/types.js";
36
36
  import { default as He } from "./components/LinkBlock/LinkBlock.js";
37
37
  import { default as Fe } from "./components/LinkList/LinkList.js";
38
38
  import { default as Ne } from "./components/Modal/Modal.js";
39
- import { default as Ue } from "./components/Navigation/Navigation.js";
39
+ import { default as Ge } from "./components/Navigation/Navigation.js";
40
40
  import { default as Oe } from "./components/Navigation/NavigationItem/NavigationItem.js";
41
41
  import { default as Qe } from "./components/Navigation/NavigationItemTrigger/NavigationItemTrigger.js";
42
42
  import { default as ze } from "./components/Navigation/NavigationList/NavigationList.js";
@@ -62,7 +62,7 @@ import { default as wt } from "./patterns/FavoritesCollectionTile/FavoritesColle
62
62
  import { default as Ht } from "./patterns/HeroBanner/HeroBanner.js";
63
63
  import { default as Ft } from "./patterns/LanguageSelector/LanguageSelector.js";
64
64
  import { default as Nt } from "./patterns/SaleHeaderBanner/SaleHeaderBanner.js";
65
- import { default as Ut } from "./patterns/SaleHeaderBanner/SaleHeaderBrowseAuctions.js";
65
+ import { default as Gt } from "./patterns/SaleHeaderBanner/SaleHeaderBrowseAuctions.js";
66
66
  import { default as Ot } from "./patterns/Social/Social.js";
67
67
  import { default as Qt } from "./patterns/Subscribe/Subscribe.js";
68
68
  import { SubscriptionState as zt } from "./patterns/Subscribe/types.js";
@@ -73,46 +73,47 @@ import { default as _t } from "./patterns/ViewingsList/ViewingsList.js";
73
73
  import { SeldonProvider as eo } from "./providers/SeldonProvider/SeldonProvider.js";
74
74
  import { default as oo } from "./components/ComboBox/ComboBox.js";
75
75
  import { default as ao } from "./components/PhoneNumberPicker/PhoneNumberPicker.js";
76
- import { default as so } from "./components/Loader/Loader.js";
77
- import { default as mo } from "./components/PageContentWrapper/PageContentWrapper.js";
78
- import { default as uo } from "./site-furniture/Footer/Footer.js";
79
- import { default as io } from "./site-furniture/Header/Header.js";
80
- import { default as go } from "./components/AddToCalendar/AddToCalendar.js";
81
- import { default as So } from "./components/Article/Article.js";
82
- import { default as To } from "./components/SaleCard/SaleCard.js";
83
- import { SaleCardVariants as Bo } from "./components/SaleCard/types.js";
84
- import { default as Ao } from "./components/Countdown/Countdown.js";
85
- import { CountdownVariants as Io } from "./components/Countdown/types.js";
86
- import { default as ho } from "./components/Divider/Divider.js";
87
- import { default as vo } from "./components/FavoritingTileButton/FavoritingTileButton.js";
88
- import { default as yo } from "./components/Filter/Filter.js";
89
- import { default as Do } from "./components/Filter/FilterInput.js";
90
- import { default as Mo } from "./components/Filter/FilterHeader.js";
91
- import { default as Eo } from "./components/Pictogram/Pictogram.js";
92
- import { default as Go } from "./components/TextArea/TextArea.js";
93
- import { default as Ro } from "./components/Toast/Toast.js";
94
- import { ToastProvider as jo } from "./components/Toast/ToastContextProvider.js";
95
- import { useToast as Wo } from "./components/Toast/useToast.js";
96
- import { default as Zo } from "./patterns/AccountPageHeader/AccountPageHeader.js";
97
- import { default as Jo } from "./patterns/BidSnapshot/BidSnapshot.js";
98
- import { default as Xo } from "./patterns/BidSnapshot/BidMessage.js";
99
- import { BidMessageVariants as $o, BidStatusEnum as er } from "./patterns/BidSnapshot/types.js";
100
- import { default as or } from "./patterns/FilterMenu/FilterMenu.js";
101
- import { default as ar } from "./patterns/ObjectTile/ObjectTile.js";
76
+ import { default as so } from "./components/ExitGateCard/ExitGateCard.js";
77
+ import { default as mo } from "./components/Loader/Loader.js";
78
+ import { default as uo } from "./components/PageContentWrapper/PageContentWrapper.js";
79
+ import { default as io } from "./site-furniture/Footer/Footer.js";
80
+ import { default as go } from "./site-furniture/Header/Header.js";
81
+ import { default as So } from "./components/AddToCalendar/AddToCalendar.js";
82
+ import { default as To } from "./components/Article/Article.js";
83
+ import { default as Bo } from "./components/SaleCard/SaleCard.js";
84
+ import { SaleCardVariants as Ao } from "./components/SaleCard/types.js";
85
+ import { default as Io } from "./components/Countdown/Countdown.js";
86
+ import { CountdownVariants as ho } from "./components/Countdown/types.js";
87
+ import { default as vo } from "./components/Divider/Divider.js";
88
+ import { default as yo } from "./components/FavoritingTileButton/FavoritingTileButton.js";
89
+ import { default as Do } from "./components/Filter/Filter.js";
90
+ import { default as Mo } from "./components/Filter/FilterInput.js";
91
+ import { default as Eo } from "./components/Filter/FilterHeader.js";
92
+ import { default as Uo } from "./components/Pictogram/Pictogram.js";
93
+ import { default as Ro } from "./components/TextArea/TextArea.js";
94
+ import { default as jo } from "./components/Toast/Toast.js";
95
+ import { ToastProvider as Wo } from "./components/Toast/ToastContextProvider.js";
96
+ import { useToast as Zo } from "./components/Toast/useToast.js";
97
+ import { default as Jo } from "./patterns/AccountPageHeader/AccountPageHeader.js";
98
+ import { default as Xo } from "./patterns/BidSnapshot/BidSnapshot.js";
99
+ import { default as $o } from "./patterns/BidSnapshot/BidMessage.js";
100
+ import { BidMessageVariants as tr, BidStatusEnum as or } from "./patterns/BidSnapshot/types.js";
101
+ import { default as ar } from "./patterns/FilterMenu/FilterMenu.js";
102
+ import { default as sr } from "./patterns/ObjectTile/ObjectTile.js";
102
103
  export {
103
104
  M as Accordion,
104
105
  E as AccordionItem,
105
- G as AccordionItemVariant,
106
+ U as AccordionItemVariant,
106
107
  O as AccordionVariants,
107
- Zo as AccountPageHeader,
108
- go as AddToCalendar,
109
- So as Article,
108
+ Jo as AccountPageHeader,
109
+ So as AddToCalendar,
110
+ To as Article,
110
111
  I as AuctionStatus,
111
112
  Yt as AuthState,
112
- Xo as BidMessage,
113
- $o as BidMessageVariants,
114
- Jo as BidSnapshot,
115
- er as BidStatusEnum,
113
+ $o as BidMessage,
114
+ tr as BidMessageVariants,
115
+ Xo as BidSnapshot,
116
+ or as BidStatusEnum,
116
117
  Q as Breadcrumb,
117
118
  v as Button,
118
119
  y as ButtonVariants,
@@ -127,26 +128,27 @@ export {
127
128
  oo as ComboBox,
128
129
  de as ContentPeek,
129
130
  pe as ContentPeekHeightUnits,
130
- Ao as Countdown,
131
- Io as CountdownVariants,
131
+ Io as Countdown,
132
+ ho as CountdownVariants,
132
133
  xe as Detail,
133
134
  Vt as DetailList,
134
135
  kt as DetailListAlignment,
135
- ho as Divider,
136
+ vo as Divider,
136
137
  ne as Drawer,
137
138
  ce as Dropdown,
138
139
  Ce as ErrorBoundary,
140
+ so as ExitGateCard,
139
141
  wt as FavoritesCollectionTile,
140
- vo as FavoritingTileButton,
141
- yo as Filter,
142
- Mo as FilterHeader,
143
- Do as FilterInput,
144
- or as FilterMenu,
145
- uo as Footer,
142
+ yo as FavoritingTileButton,
143
+ Do as Filter,
144
+ Eo as FilterHeader,
145
+ Mo as FilterInput,
146
+ ar as FilterMenu,
147
+ io as Footer,
146
148
  Pe as Grid,
147
149
  Le as GridItem,
148
150
  be as GridItemAlign,
149
- io as Header,
151
+ go as Header,
150
152
  Ht as HeroBanner,
151
153
  z as Icon,
152
154
  D as IconButton,
@@ -156,27 +158,27 @@ export {
156
158
  He as LinkBlock,
157
159
  Fe as LinkList,
158
160
  we as LinkVariants,
159
- so as Loader,
161
+ mo as Loader,
160
162
  V as LotStatus,
161
163
  Ne as Modal,
162
- Ue as Navigation,
164
+ Ge as Navigation,
163
165
  Oe as NavigationItem,
164
166
  Qe as NavigationItemTrigger,
165
167
  ze as NavigationList,
166
- ar as ObjectTile,
168
+ sr as ObjectTile,
167
169
  a as PaddingTokens,
168
170
  C as Page,
169
- mo as PageContentWrapper,
171
+ uo as PageContentWrapper,
170
172
  Ye as Pagination,
171
173
  ao as PhoneNumberPicker,
172
- Eo as Pictogram,
174
+ Uo as Pictogram,
173
175
  qe as PinchZoom,
174
176
  Ke as Row,
175
177
  P as SSRMediaQuery,
176
- To as SaleCard,
177
- Bo as SaleCardVariants,
178
+ Bo as SaleCard,
179
+ Ao as SaleCardVariants,
178
180
  Nt as SaleHeaderBanner,
179
- Ut as SaleHeaderBrowseAuctions,
181
+ Gt as SaleHeaderBrowseAuctions,
180
182
  _e as Search,
181
183
  et as SeldonImage,
182
184
  eo as SeldonProvider,
@@ -195,12 +197,12 @@ export {
195
197
  it as TagsList,
196
198
  Ct as Text,
197
199
  gt as TextAlignments,
198
- Go as TextArea,
200
+ Ro as TextArea,
199
201
  Pt as TextSymbolVariants,
200
202
  Lt as TextSymbols,
201
203
  ct as TextVariants,
202
- Ro as Toast,
203
- jo as ToastProvider,
204
+ jo as Toast,
205
+ Wo as ToastProvider,
204
206
  qt as UserManagement,
205
207
  bt as Video,
206
208
  _t as ViewingsList,
@@ -217,5 +219,5 @@ export {
217
219
  B as ssrMediaQueryStyle,
218
220
  c as useNormalizedInputProps,
219
221
  A as usePendingState,
220
- Wo as useToast
222
+ Zo as useToast
221
223
  };
@@ -0,0 +1,62 @@
1
+ import { ComponentProps, ElementType } from 'react';
2
+ import { LinkProps } from '../../components/Link';
3
+ export interface ViewingSessionProps {
4
+ /**
5
+ * Session label for viewing session text
6
+ */
7
+ sessionLabel?: string;
8
+ /**
9
+ * Session time for viewing session text
10
+ */
11
+ sessionTime?: string;
12
+ }
13
+ export interface ViewingDetailsProps extends ComponentProps<'div'> {
14
+ /**
15
+ * Unique id for component
16
+ */
17
+ id?: string;
18
+ /**
19
+ * Label for Viewings Details
20
+ */
21
+ label?: string;
22
+ /**
23
+ * Session Times label text for Viewings Details
24
+ */
25
+ sessionTimesLabel?: string;
26
+ /**
27
+ * Session Times data array
28
+ */
29
+ sessionTimes?: ViewingSessionProps[];
30
+ /**
31
+ * Viewing Times string array
32
+ */
33
+ viewingTimes?: string[];
34
+ /**
35
+ * Location of Viewings Details
36
+ */
37
+ location?: string;
38
+ /**
39
+ * Custom link element to use for the link. Defaults to the `Link` component.
40
+ */
41
+ linkElement?: ElementType<LinkProps>;
42
+ /**
43
+ * Google maps link for Viewings Details
44
+ */
45
+ mapLink?: string;
46
+ /**
47
+ * Callback for onClose function
48
+ */
49
+ onClose?: () => void | unknown;
50
+ }
51
+ /**
52
+ * ## Overview
53
+ *
54
+ * A simple component for displaying viewing details such as session times, viewing times, location, and a map link.
55
+ *
56
+ * [Figma Link](https://www.figma.com/design/H1kCh6MXU8jasYbQuCbyBt/Calendar?node-id=6-17&p=f&m=dev)
57
+ *
58
+ * [Storybook Link](https://phillips-seldon.netlify.app/?path=/docs/components-viewingdetails--overview)
59
+ *
60
+ */
61
+ declare const ViewingDetails: import('react').ForwardRefExoticComponent<Omit<ViewingDetailsProps, "ref"> & import('react').RefAttributes<HTMLDivElement>>;
62
+ export default ViewingDetails;
@@ -0,0 +1,40 @@
1
+ import { ViewingDetailsProps } from './ViewingDetails';
2
+ declare const _default: {
3
+ title: string;
4
+ component: import('react').ForwardRefExoticComponent<Omit<ViewingDetailsProps, "ref"> & import('react').RefAttributes<HTMLDivElement>>;
5
+ };
6
+ export default _default;
7
+ export declare const Playground: {
8
+ (props: ViewingDetailsProps): import("react/jsx-runtime").JSX.Element;
9
+ args: {
10
+ label: string;
11
+ sessionTimesLabel: string;
12
+ sessionTimes: {
13
+ sessionLabel: string;
14
+ sessionTime: string;
15
+ }[];
16
+ viewingTimes: string[];
17
+ location: string;
18
+ mapLink: string;
19
+ };
20
+ };
21
+ export declare const CenterAlignText: {
22
+ (props: ViewingDetailsProps): import("react/jsx-runtime").JSX.Element;
23
+ args: {
24
+ id: string;
25
+ title: string;
26
+ label: string;
27
+ sessionTimesLabel: string;
28
+ children: import('react').ReactElement<{
29
+ src: string;
30
+ alt: string;
31
+ }, string | import('react').JSXElementConstructor<any>>;
32
+ sessionTimes: {
33
+ sessionLabel: string;
34
+ sessionTime: string;
35
+ }[];
36
+ viewingTimes: string[];
37
+ location: string;
38
+ mapLink: string;
39
+ };
40
+ };
@@ -0,0 +1,29 @@
1
+ import { default as React } from 'react';
2
+ export declare const viewingDetailsProps: {
3
+ label: string;
4
+ sessionTimesLabel: string;
5
+ sessionTimes: {
6
+ sessionLabel: string;
7
+ sessionTime: string;
8
+ }[];
9
+ viewingTimes: string[];
10
+ location: string;
11
+ mapLink: string;
12
+ };
13
+ export declare const viewingDetailsWithChildrenProps: {
14
+ id: string;
15
+ title: string;
16
+ label: string;
17
+ sessionTimesLabel: string;
18
+ children: React.ReactElement<{
19
+ src: string;
20
+ alt: string;
21
+ }, string | React.JSXElementConstructor<any>>;
22
+ sessionTimes: {
23
+ sessionLabel: string;
24
+ sessionTime: string;
25
+ }[];
26
+ viewingTimes: string[];
27
+ location: string;
28
+ mapLink: string;
29
+ };
@@ -0,0 +1 @@
1
+ export { default as ViewingDetails, type ViewingDetailsProps } from './ViewingDetails';
@@ -50,12 +50,15 @@
50
50
  @use 'components/Filter/filter';
51
51
  @use 'components/FavoritingTileButton/favoritingTileButton';
52
52
  @use 'components/Toast/toast';
53
+ @use 'components/ExitGateCard/exitGateCard';
54
+ @use 'components/ComposedModal/composedModal';
53
55
 
54
56
  // Patterns
55
57
  @use 'patterns/HeroBanner/heroBanner';
56
58
  @use 'patterns/LanguageSelector/languageSelector';
57
59
  @use 'patterns/UserManagement/userManagement';
58
60
  @use 'patterns/ViewingsList/viewingsList';
61
+ @use 'patterns/ViewingDetails/viewingDetails';
59
62
  @use 'patterns/Subscribe/subscribe';
60
63
  @use 'patterns/Social/social';
61
64
  @use 'patterns/SaleHeaderBanner/saleHeaderBanner';
@@ -0,0 +1,53 @@
1
+ @use '../../allPartials' as *;
2
+
3
+ .#{$px}-composed-modal {
4
+ border-radius: 1rem;
5
+ max-width: 95vw;
6
+ min-width: 0;
7
+ padding: $spacing-sm 0;
8
+ width: 95vw;
9
+
10
+ &__title {
11
+ margin-top: $spacing-md;
12
+ padding: 0 $spacing-md;
13
+ }
14
+
15
+ &__body {
16
+ max-height: var('--max-modal-body-height');
17
+ overflow-y: auto;
18
+ }
19
+
20
+ &__divider {
21
+ margin: 0;
22
+ }
23
+
24
+ &__btns-group {
25
+ display: flex;
26
+ gap: $spacing-sm;
27
+ justify-content: center;
28
+ padding: $spacing-sm $spacing-md;
29
+ }
30
+
31
+ &__btns-group > * {
32
+ flex: 1 1 50%;
33
+ max-width: 50%;
34
+ }
35
+
36
+ &__btns {
37
+ padding: 0 $spacing-md $spacing-sm;
38
+ }
39
+
40
+ &__disclaimer {
41
+ margin-top: $spacing-sm;
42
+ padding: 0 $spacing-md;
43
+ }
44
+
45
+ @media (min-width: $breakpoint-md) {
46
+ width: auto;
47
+ }
48
+ }
49
+
50
+ .#{$px}-composed-modal__body {
51
+ max-height: var(--max-modal-body-height);
52
+ overflow-y: auto;
53
+ }
@@ -0,0 +1,79 @@
1
+ @use '../../allPartials' as *;
2
+
3
+ .#{$px}-exit-gate-card {
4
+ display: flex;
5
+ flex-direction: row-reverse;
6
+ justify-content: space-between;
7
+ padding-left: $spacing-md;
8
+
9
+ @media (max-width: $breakpoint-md) {
10
+ flex-direction: column;
11
+
12
+ &__desktop_image {
13
+ max-width: unset;
14
+ overflow: visible;
15
+ }
16
+ }
17
+
18
+ @media (min-width: $breakpoint-md) {
19
+ flex-direction: row;
20
+ padding-left: $spacing-lg;
21
+
22
+ &__desktop_image {
23
+ max-width: 405px;
24
+ }
25
+ }
26
+
27
+ &__content {
28
+ align-items: flex-start;
29
+ color: $pure-black;
30
+ display: flex;
31
+ flex-direction: column;
32
+ gap: $spacing-sm;
33
+ margin: auto 0;
34
+
35
+ &-label {
36
+ @media (max-width: $breakpoint-md) {
37
+ font-variation-settings: 'wght' 500;
38
+ }
39
+ }
40
+
41
+ &-title {
42
+ margin: 0;
43
+ }
44
+
45
+ &-description {
46
+ @media (max-width: $breakpoint-md) {
47
+ font-size: $body-size1;
48
+ text-align: center;
49
+ }
50
+ }
51
+
52
+ &-link {
53
+ font-size: $body-size3;
54
+ padding: $padding-xsm $padding-xxl;
55
+
56
+ @media (max-width: $breakpoint-md) {
57
+ font-size: $body-size2;
58
+ }
59
+ }
60
+ }
61
+ }
62
+
63
+ .#{$px}-exit-gate-card {
64
+ display: flex;
65
+ flex-direction: row-reverse;
66
+
67
+ @media (max-width: $breakpoint-md) {
68
+ flex-direction: column;
69
+ padding: 0;
70
+ }
71
+
72
+ &__content {
73
+ @media (max-width: $breakpoint-md) {
74
+ align-items: center;
75
+ margin-top: $spacing-md;
76
+ padding: 0 $spacing-md;
77
+ }
78
+ }
79
+ }
@@ -98,6 +98,7 @@
98
98
  background-color: $button-hover;
99
99
 
100
100
  & svg {
101
+ color: $pure-white;
101
102
  fill: $pure-white;
102
103
  margin-inline-end: unset;
103
104
 
@@ -4,11 +4,10 @@
4
4
  align-items: center;
5
5
  display: flex;
6
6
  flex-direction: column;
7
- gap: $spacing-sm;
7
+ gap: $spacing-md;
8
8
 
9
9
  @include media($breakpoint-md) {
10
10
  flex-direction: row;
11
- gap: $spacing-md;
12
11
  }
13
12
 
14
13
  &__image {
@@ -122,5 +121,8 @@
122
121
  max-width: calc($spacing-xxxl * 1.25);
123
122
  }
124
123
  }
124
+ .#{$px}-sale-card__auction-type {
125
+ font-size: 0.5rem;
126
+ }
125
127
  }
126
128
  }
@@ -0,0 +1,51 @@
1
+ @use '../../allPartials' as *;
2
+
3
+ .#{$px}-viewing-details {
4
+ &__content {
5
+ padding: 0 $spacing-md;
6
+ position: relative;
7
+ }
8
+
9
+ &__children {
10
+ margin-bottom: $spacing-md;
11
+ }
12
+
13
+ &__center-align {
14
+ text-align: center;
15
+ }
16
+
17
+ &__label {
18
+ margin-bottom: 0;
19
+ }
20
+
21
+ &__close-icon {
22
+ cursor: pointer;
23
+ position: absolute;
24
+ right: $spacing-sm;
25
+ top: $spacing-sm;
26
+ }
27
+
28
+ &__text {
29
+ margin-bottom: $spacing-sm;
30
+ }
31
+
32
+ &__location {
33
+ margin-bottom: $spacing-xsm;
34
+ margin-top: $spacing-md;
35
+ }
36
+
37
+ &__map-link {
38
+ margin-bottom: $spacing-md;
39
+ }
40
+ }
41
+
42
+ .#{$px}-viewing-details__content .#{$px}-viewing-details__label {
43
+ margin-bottom: 0;
44
+ }
45
+ .#{$px}-viewing-details__content .#{$px}-viewing-details__text {
46
+ margin-bottom: $spacing-sm;
47
+ }
48
+ .#{$px}-viewing-details__content .#{$px}-viewing-details__location {
49
+ margin-bottom: $spacing-xsm;
50
+ margin-top: $spacing-md;
51
+ }
@@ -0,0 +1,5 @@
1
+ @import '../../allPartials';
2
+
3
+ .story-center-align {
4
+ text-align: center;
5
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@phillips/seldon",
3
- "version": "1.161.0",
3
+ "version": "1.163.0",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/PhillipsAuctionHouse/seldon"