@phillips/seldon 1.89.1 → 1.90.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,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: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@phillips/seldon",
3
- "version": "1.89.1",
3
+ "version": "1.90.0",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/PhillipsAuctionHouse/seldon"