@phillips/seldon 1.89.1 → 1.91.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.
@@ -1,90 +1,95 @@
1
- import { jsx as n } from "react/jsx-runtime";
2
- import { createContext as A, forwardRef as R, useEffect as u, useCallback as m } from "react";
3
- import { getCommonProps as b } from "../../utils/index.js";
4
- import d from "../../node_modules/classnames/index.js";
5
- import E from "../../node_modules/embla-carousel-react/esm/embla-carousel-react.esm.js";
6
- import { WheelGesturesPlugin as K } from "../../node_modules/embla-carousel-wheel-gestures/dist/embla-carousel-wheel-gestures.esm.js";
7
- const W = A(null), h = R(
1
+ import { jsx as a } from "react/jsx-runtime";
2
+ import { createContext as h, forwardRef as k, useEffect as m, useCallback as i } from "react";
3
+ import { getCommonProps as A } from "../../utils/index.js";
4
+ import R from "../../node_modules/classnames/index.js";
5
+ import b from "../../node_modules/embla-carousel-react/esm/embla-carousel-react.esm.js";
6
+ import { WheelGesturesPlugin as E } from "../../node_modules/embla-carousel-wheel-gestures/dist/embla-carousel-wheel-gestures.esm.js";
7
+ const K = h(null), W = k(
8
8
  ({
9
- loop: a = !1,
9
+ loop: w = !1,
10
10
  startIndex: x = 0,
11
- onSlideChange: o,
12
- className: N,
13
- children: P,
14
- columnGap: v,
15
- useWheelGestures: w = !1,
16
- disableDrag: s = !1,
11
+ onSlideChange: s,
12
+ className: d,
13
+ children: N,
14
+ columnGap: P,
15
+ useWheelGestures: v = !1,
16
+ disableDrag: o = !1,
17
17
  ...t
18
- }, y) => {
18
+ }, I) => {
19
19
  var c, f;
20
- const { className: C, ...D } = b(t, "Carousel"), [I, e] = E(
20
+ const { className: y, ...C } = A(t, "Carousel"), [D, e] = b(
21
21
  {
22
- loop: a,
23
- startIndex: x
22
+ loop: w,
23
+ startIndex: x,
24
+ inViewThreshold: 0.99
24
25
  },
25
26
  [
26
- ...w ? [
27
- K({
27
+ ...v ? [
28
+ E({
28
29
  forceWheelAxis: "x"
29
30
  })
30
31
  ] : []
31
32
  ]
32
33
  );
33
- u(() => {
34
- s ? e == null || e.reInit({
34
+ m(() => {
35
+ o ? e == null || e.reInit({
35
36
  watchDrag: () => !1
36
37
  }) : e == null || e.reInit({
37
38
  watchDrag: () => !0
38
39
  });
39
- }, [s, e]);
40
- const k = m(
40
+ }, [o, e]);
41
+ const V = i(
41
42
  (r) => {
42
43
  r.key === "ArrowLeft" ? (r.preventDefault(), e == null || e.scrollPrev()) : r.key === "ArrowRight" && (r.preventDefault(), e == null || e.scrollNext());
43
44
  },
44
45
  [e]
45
- ), l = m(
46
+ ), l = i(
46
47
  (r) => {
47
- r && (o == null || o(r.selectedScrollSnap()));
48
+ var u;
49
+ if (!r)
50
+ return;
51
+ const n = (u = r.slidesInView()) == null ? void 0 : u[0];
52
+ n !== void 0 && (s == null || s(n));
48
53
  },
49
- [o]
54
+ [s]
50
55
  );
51
- return u(() => {
56
+ return m(() => {
52
57
  if (e)
53
- return l(e), e.on("reInit", l), e.on("settle", l), () => {
54
- e == null || e.off("settle", l), e == null || e.off("reInit", l);
58
+ return e.on("slidesInView", l), () => {
59
+ e.off("slidesInView", l);
55
60
  };
56
- }, [e, l]), /* @__PURE__ */ n(
57
- W.Provider,
61
+ }, [e, l]), /* @__PURE__ */ a(
62
+ K.Provider,
58
63
  {
59
64
  value: {
60
- carouselRef: I,
65
+ carouselRef: D,
61
66
  api: e,
62
67
  scrollPrev: () => e == null ? void 0 : e.scrollPrev(),
63
68
  scrollNext: () => e == null ? void 0 : e.scrollNext(),
64
69
  canScrollPrev: (c = e == null ? void 0 : e.canScrollPrev()) != null ? c : !1,
65
70
  canScrollNext: (f = e == null ? void 0 : e.canScrollNext()) != null ? f : !1,
66
- columnGap: v,
67
- onSlideChange: o
71
+ columnGap: P,
72
+ onSlideChange: s
68
73
  },
69
- children: /* @__PURE__ */ n(
74
+ children: /* @__PURE__ */ a(
70
75
  "div",
71
76
  {
72
- ref: y,
73
- onKeyDownCapture: k,
74
- className: d(C, N),
77
+ ref: I,
78
+ onKeyDownCapture: V,
79
+ className: R(y, d),
75
80
  role: "region",
76
81
  "aria-roledescription": "carousel",
77
82
  ...t,
78
- ...D,
79
- children: P
83
+ ...C,
84
+ children: N
80
85
  }
81
86
  )
82
87
  }
83
88
  );
84
89
  }
85
90
  );
86
- h.displayName = "Carousel";
91
+ W.displayName = "Carousel";
87
92
  export {
88
- W as CarouselContext,
89
- h as default
93
+ K as CarouselContext,
94
+ W as default
90
95
  };
@@ -1,4 +1,5 @@
1
1
  import { default as React } from 'react';
2
+ import { HeightUnits } from './utils';
2
3
  export interface ContentPeekProps extends React.HTMLAttributes<HTMLDivElement> {
3
4
  /**
4
5
  * Unique id for component testing
@@ -20,6 +21,14 @@ export interface ContentPeekProps extends React.HTMLAttributes<HTMLDivElement> {
20
21
  * Maximum height of the content when collapsed
21
22
  */
22
23
  maxHeight?: number;
24
+ /**
25
+ * Used to set a minimum height for the content before enabling the Peek functionality. Defaults to the same value as maxHeight if not provided.
26
+ */
27
+ minHeightThreshold?: number;
28
+ /**
29
+ * The unit used for setting height values. Defaults to 'px'.
30
+ */
31
+ heightUnits?: HeightUnits;
23
32
  }
24
33
  /**
25
34
  * ## Overview
@@ -1,55 +1,61 @@
1
- import { jsxs as m, jsx as o } from "react/jsx-runtime";
2
- import { forwardRef as N, useState as i, useRef as x, useEffect as $, useCallback as P } from "react";
3
- import c from "../../node_modules/classnames/index.js";
4
- import { getCommonProps as b } from "../../utils/index.js";
5
- import k from "../Button/Button.js";
6
- import { ButtonVariants as R } from "../Button/types.js";
7
- import w from "../Collapsible/Collapsible.js";
8
- import E from "../Collapsible/CollapsibleContent.js";
9
- import M from "../Collapsible/CollapsibleTrigger.js";
10
- import O from "../../assets/plus.svg.js";
11
- import S from "../../assets/minus.svg.js";
12
- const j = N(
1
+ import { jsxs as f, jsx as o } from "react/jsx-runtime";
2
+ import { forwardRef as P, useState as i, useRef as b, useEffect as k, useCallback as R } from "react";
3
+ import d from "../../node_modules/classnames/index.js";
4
+ import { getCommonProps as w } from "../../utils/index.js";
5
+ import E from "../Button/Button.js";
6
+ import { ButtonVariants as M } from "../Button/types.js";
7
+ import O from "../Collapsible/Collapsible.js";
8
+ import S from "../Collapsible/CollapsibleContent.js";
9
+ import j from "../Collapsible/CollapsibleTrigger.js";
10
+ import B from "../../assets/plus.svg.js";
11
+ import I from "../../assets/minus.svg.js";
12
+ import { HeightUnits as L } from "./utils.js";
13
+ const U = P(
13
14
  ({
14
- className: f,
15
- children: n,
16
- contentExpandText: d = "Read More",
17
- contentCollapseText: u = "Read Less",
18
- maxHeight: a = 480,
19
- ...r
20
- }, p) => {
21
- const { className: e, ...g } = b(r, "ContentPeek"), [t, v] = i(!1), [l, C] = i(!1), s = x(null);
22
- $(() => {
23
- s.current && C(s.current.scrollHeight > a);
24
- }, [n, a]);
25
- const h = P(() => {
26
- v((y) => !y);
15
+ className: p,
16
+ children: m,
17
+ contentExpandText: u = "Read More",
18
+ contentCollapseText: v = "Read Less",
19
+ maxHeight: s = 480,
20
+ minHeightThreshold: a,
21
+ heightUnits: C = L.px,
22
+ ...t
23
+ }, g) => {
24
+ const { className: e, ...y } = w(t, "ContentPeek"), [r, N] = i(!1), [c, $] = i(!1), n = b(null);
25
+ k(() => {
26
+ if (n.current) {
27
+ const l = a != null ? a : s;
28
+ $(n.current.scrollHeight > l);
29
+ }
30
+ }, [m, s, a]);
31
+ const x = R(() => {
32
+ N((l) => !l);
27
33
  }, []);
28
- return /* @__PURE__ */ m(
29
- w,
34
+ return /* @__PURE__ */ f(
35
+ O,
30
36
  {
31
- id: r == null ? void 0 : r.id,
32
- open: t,
33
- onOpenChange: h,
34
- className: c(e, f),
37
+ id: t == null ? void 0 : t.id,
38
+ open: r,
39
+ onOpenChange: x,
40
+ className: d(e, p),
35
41
  style: {
36
- "--content-peek-max-height": `${a}px`
42
+ "--content-peek-max-height": `${s}${C}`
37
43
  },
38
- ref: p,
39
- ...g,
40
- ...r,
44
+ ref: g,
45
+ ...y,
46
+ ...t,
41
47
  children: [
42
- /* @__PURE__ */ o(E, { className: `${e}-content`, ref: s, forceMount: !0, children: n }),
43
- l ? /* @__PURE__ */ o(
48
+ /* @__PURE__ */ o(S, { className: `${e}-content`, ref: n, forceMount: !0, children: m }),
49
+ c ? /* @__PURE__ */ o(
44
50
  "div",
45
51
  {
46
- className: c(`${e}-overlay`, {
47
- [`${e}-overlay--expanded`]: t,
48
- [`${e}-overlay--gradient`]: l && !t
52
+ className: d(`${e}-overlay`, {
53
+ [`${e}-overlay--expanded`]: r,
54
+ [`${e}-overlay--gradient`]: c && !r
49
55
  }),
50
- children: /* @__PURE__ */ o("div", { className: `${e}-overlay-trigger-wrapper`, children: /* @__PURE__ */ o(M, { asChild: !0, className: `${e}-overlay-trigger`, children: /* @__PURE__ */ m(k, { variant: R.secondary, children: [
51
- t ? /* @__PURE__ */ o(S, {}) : /* @__PURE__ */ o(O, {}),
52
- t ? u : d
56
+ children: /* @__PURE__ */ o("div", { className: `${e}-overlay-trigger-wrapper`, children: /* @__PURE__ */ o(j, { asChild: !0, className: `${e}-overlay-trigger`, children: /* @__PURE__ */ f(E, { variant: M.secondary, children: [
57
+ r ? /* @__PURE__ */ o(I, {}) : /* @__PURE__ */ o(B, {}),
58
+ r ? v : u
53
59
  ] }) }) })
54
60
  }
55
61
  ) : null
@@ -58,7 +64,7 @@ const j = N(
58
64
  );
59
65
  }
60
66
  );
61
- j.displayName = "ContentPeek";
67
+ U.displayName = "ContentPeek";
62
68
  export {
63
- j as default
69
+ U as default
64
70
  };
@@ -12,6 +12,9 @@ declare const meta: {
12
12
  maxHeight: {
13
13
  control: "number";
14
14
  };
15
+ minHeightThreshold: {
16
+ control: "number";
17
+ };
15
18
  };
16
19
  };
17
20
  export default meta;
@@ -0,0 +1,4 @@
1
+ export declare enum HeightUnits {
2
+ px = "px",
3
+ rem = "rem"
4
+ }
@@ -0,0 +1,4 @@
1
+ var e = /* @__PURE__ */ ((r) => (r.px = "px", r.rem = "rem", r))(e || {});
2
+ export {
3
+ e as HeightUnits
4
+ };
@@ -1,14 +1,21 @@
1
- import { ComponentProps } from 'react';
1
+ import { default as React, ComponentProps } from 'react';
2
2
  export interface VideoProps extends ComponentProps<'div'> {
3
3
  /**
4
4
  * Aspect ratio of the video
5
- * Defaults to 1.777 (16/9)
6
5
  */
7
6
  aspectRatio?: number;
8
7
  /**
9
8
  * The url of the video source
10
9
  */
11
10
  videoSource: string;
11
+ /**
12
+ * The ref to the iframe
13
+ */
14
+ iframeRef?: React.Ref<HTMLIFrameElement>;
15
+ /**
16
+ * The class name for the iframe
17
+ */
18
+ iframeClassName?: string;
12
19
  }
13
20
  /**
14
21
  * ## Overview
@@ -19,5 +26,5 @@ export interface VideoProps extends ComponentProps<'div'> {
19
26
  *
20
27
  * [Storybook Link](https://phillips-seldon.netlify.app/?path=/docs/components-video--overview)
21
28
  */
22
- declare const Video: ({ aspectRatio, className, videoSource, ...props }: VideoProps) => import("react/jsx-runtime").JSX.Element;
29
+ declare const Video: React.ForwardRefExoticComponent<Omit<VideoProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
23
30
  export default Video;
@@ -1,26 +1,31 @@
1
- import { jsx as t } from "react/jsx-runtime";
2
- import { getCommonProps as d } from "../../utils/index.js";
3
- import l from "../../node_modules/classnames/index.js";
4
- const u = ({ aspectRatio: s = 16 / 9, className: o, videoSource: m, ...e }) => {
5
- const { className: a, "data-testid": r, ...i } = d(e, "Video"), c = {
6
- className: l(a, o),
7
- "data-testid": r,
8
- style: { "--aspect-ratio": s },
9
- ...i,
10
- ...e
11
- };
12
- return /* @__PURE__ */ t("div", { ...c, children: /* @__PURE__ */ t(
13
- "iframe",
14
- {
15
- "data-testid": `${r}-iframe`,
16
- className: `${a}__iframe`,
17
- src: m,
18
- allowFullScreen: !0,
19
- allow: "encrypted-media",
20
- referrerPolicy: "no-referrer"
21
- }
22
- ) });
23
- };
1
+ import { jsx as o } from "react/jsx-runtime";
2
+ import { forwardRef as p } from "react";
3
+ import { getCommonProps as N } from "../../utils/index.js";
4
+ import t from "../../node_modules/classnames/index.js";
5
+ const u = p(
6
+ ({ aspectRatio: s, className: m, videoSource: i, iframeRef: d, iframeClassName: l, ...e }, c) => {
7
+ const { className: r, "data-testid": a, ...f } = N(e, "Video"), n = {
8
+ className: t(r, m),
9
+ "data-testid": a,
10
+ style: { "--aspect-ratio": s },
11
+ ...f,
12
+ ...e
13
+ };
14
+ return /* @__PURE__ */ o("div", { ...n, ref: c, children: /* @__PURE__ */ o(
15
+ "iframe",
16
+ {
17
+ ref: d,
18
+ "data-testid": `${a}-iframe`,
19
+ className: t(`${r}__iframe`, l),
20
+ src: i,
21
+ allowFullScreen: !0,
22
+ allow: "encrypted-media",
23
+ referrerPolicy: "no-referrer"
24
+ }
25
+ ) });
26
+ }
27
+ );
28
+ u.displayName = "Video";
24
29
  export {
25
30
  u as default
26
31
  };
@@ -1,7 +1,7 @@
1
1
  import { VideoProps } from './Video';
2
2
  declare const meta: {
3
3
  title: string;
4
- component: ({ aspectRatio, className, videoSource, ...props }: VideoProps) => import("react/jsx-runtime").JSX.Element;
4
+ component: import('react').ForwardRefExoticComponent<Omit<VideoProps, "ref"> & import('react').RefAttributes<HTMLDivElement>>;
5
5
  };
6
6
  export default meta;
7
7
  export declare const Playground: {
@@ -1,4 +1,4 @@
1
- import { __module as t } from "../../_virtual/index6.js";
1
+ import { __module as t } from "../../_virtual/index5.js";
2
2
  /*!
3
3
  Copyright (c) 2015 Jed Watson.
4
4
  Based on code that is Copyright 2013-2015, Facebook, Inc.
@@ -1,4 +1,4 @@
1
- import { __module as e } from "../../../../_virtual/index5.js";
1
+ import { __module as e } from "../../../../_virtual/index6.js";
2
2
  import { __require as o } from "./cjs/react-is.production.min.js";
3
3
  import { __require as t } from "./cjs/react-is.development.js";
4
4
  var r;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@phillips/seldon",
3
- "version": "1.89.1",
3
+ "version": "1.91.0",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/PhillipsAuctionHouse/seldon"