deepsea-components 3.1.0 → 3.1.1
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/cjs/components/HlsPlayer.d.ts +1 -2
- package/dist/cjs/components/HlsPlayer.js +5 -2
- package/dist/cjs/components/HlsPlayer.js.map +2 -2
- package/dist/cjs/components/Skeleton.d.ts +4 -2
- package/dist/cjs/components/Skeleton.js +18 -12
- package/dist/cjs/components/Skeleton.js.map +2 -2
- package/dist/esm/components/HlsPlayer.d.ts +1 -2
- package/dist/esm/components/HlsPlayer.js +1 -2
- package/dist/esm/components/HlsPlayer.js.map +1 -1
- package/dist/esm/components/Skeleton.d.ts +4 -2
- package/dist/esm/components/Skeleton.js +16 -13
- package/dist/esm/components/Skeleton.js.map +1 -1
- package/package.json +1 -1
- package/src/components/HlsPlayer.tsx +1 -3
- package/src/components/Skeleton.tsx +21 -14
|
@@ -2,5 +2,4 @@ import { MediaHTMLAttributes } from "react";
|
|
|
2
2
|
export interface HlsPlayerProps extends Omit<MediaHTMLAttributes<HTMLVideoElement>, "src"> {
|
|
3
3
|
src: string;
|
|
4
4
|
}
|
|
5
|
-
declare const HlsPlayer: import("react").ForwardRefExoticComponent<HlsPlayerProps & import("react").RefAttributes<HTMLVideoElement>>;
|
|
6
|
-
export default HlsPlayer;
|
|
5
|
+
export declare const HlsPlayer: import("react").ForwardRefExoticComponent<HlsPlayerProps & import("react").RefAttributes<HTMLVideoElement>>;
|
|
@@ -30,7 +30,7 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
30
30
|
// src/components/HlsPlayer.tsx
|
|
31
31
|
var HlsPlayer_exports = {};
|
|
32
32
|
__export(HlsPlayer_exports, {
|
|
33
|
-
|
|
33
|
+
HlsPlayer: () => HlsPlayer
|
|
34
34
|
});
|
|
35
35
|
module.exports = __toCommonJS(HlsPlayer_exports);
|
|
36
36
|
var import_hls = __toESM(require("hls.js"));
|
|
@@ -58,5 +58,8 @@ var HlsPlayer = (0, import_react.forwardRef)((props, ref) => {
|
|
|
58
58
|
}, [src]);
|
|
59
59
|
return /* @__PURE__ */ React.createElement("video", { ref: video, ...rest });
|
|
60
60
|
});
|
|
61
|
-
|
|
61
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
62
|
+
0 && (module.exports = {
|
|
63
|
+
HlsPlayer
|
|
64
|
+
});
|
|
62
65
|
//# sourceMappingURL=HlsPlayer.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/components/HlsPlayer.tsx"],
|
|
4
|
-
"sourcesContent": ["\"use client\"\r\n\r\nimport Hls from \"hls.js\"\r\nimport { MediaHTMLAttributes, forwardRef, useEffect, useImperativeHandle, useRef } from \"react\"\r\n\r\nexport interface HlsPlayerProps extends Omit<MediaHTMLAttributes<HTMLVideoElement>, \"src\"> {\r\n src: string\r\n}\r\n\r\
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,iBAAgB;AAChB,mBAAwF;
|
|
4
|
+
"sourcesContent": ["\"use client\"\r\n\r\nimport Hls from \"hls.js\"\r\nimport { MediaHTMLAttributes, forwardRef, useEffect, useImperativeHandle, useRef } from \"react\"\r\n\r\nexport interface HlsPlayerProps extends Omit<MediaHTMLAttributes<HTMLVideoElement>, \"src\"> {\r\n src: string\r\n}\r\n\r\nexport const HlsPlayer = forwardRef<HTMLVideoElement, HlsPlayerProps>((props, ref) => {\r\n const { src, ...rest } = props\r\n const video = useRef<HTMLVideoElement>(null)\r\n\r\n useImperativeHandle(ref, () => video.current!, [])\r\n\r\n useEffect(() => {\r\n const { current: player } = video\r\n if (!player || !src) return\r\n if (player.canPlayType(\"application/vnd.apple.mpegurl\")) {\r\n player.src = src\r\n return\r\n }\r\n if (Hls.isSupported()) {\r\n const hls = new Hls()\r\n hls.loadSource(src)\r\n hls.attachMedia(player)\r\n return () => {\r\n hls.destroy()\r\n }\r\n }\r\n }, [src])\r\n\r\n return <video ref={video} {...rest} />\r\n})\r\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,iBAAgB;AAChB,mBAAwF;AAMjF,IAAM,gBAAY,yBAA6C,CAAC,OAAO,QAAQ;AAClF,QAAM,EAAE,KAAK,GAAG,KAAK,IAAI;AACzB,QAAM,YAAQ,qBAAyB,IAAI;AAE3C,wCAAoB,KAAK,MAAM,MAAM,SAAU,CAAC,CAAC;AAEjD,8BAAU,MAAM;AACZ,UAAM,EAAE,SAAS,OAAO,IAAI;AAC5B,QAAI,CAAC,UAAU,CAAC;AAAK;AACrB,QAAI,OAAO,YAAY,+BAA+B,GAAG;AACrD,aAAO,MAAM;AACb;AAAA,IACJ;AACA,QAAI,WAAAA,QAAI,YAAY,GAAG;AACnB,YAAM,MAAM,IAAI,WAAAA,QAAI;AACpB,UAAI,WAAW,GAAG;AAClB,UAAI,YAAY,MAAM;AACtB,aAAO,MAAM;AACT,YAAI,QAAQ;AAAA,MAChB;AAAA,IACJ;AAAA,EACJ,GAAG,CAAC,GAAG,CAAC;AAER,SAAO,oCAAC,WAAM,KAAK,OAAQ,GAAG,MAAM;AACxC,CAAC;",
|
|
6
6
|
"names": ["Hls"]
|
|
7
7
|
}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
import { HTMLAttributes } from "react";
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
export interface SkeletonProps extends HTMLAttributes<HTMLDivElement> {
|
|
3
|
+
loading?: boolean;
|
|
4
|
+
}
|
|
5
|
+
export declare const Skeleton: import("react").ForwardRefExoticComponent<SkeletonProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -20,14 +20,15 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
20
20
|
// src/components/Skeleton.tsx
|
|
21
21
|
var Skeleton_exports = {};
|
|
22
22
|
__export(Skeleton_exports, {
|
|
23
|
-
|
|
23
|
+
Skeleton: () => Skeleton
|
|
24
24
|
});
|
|
25
25
|
module.exports = __toCommonJS(Skeleton_exports);
|
|
26
26
|
var import_css = require("@emotion/css");
|
|
27
27
|
var import_deepsea_tools = require("deepsea-tools");
|
|
28
28
|
var import_react = require("react");
|
|
29
29
|
var Skeleton = (0, import_react.forwardRef)((props, ref) => {
|
|
30
|
-
|
|
30
|
+
let { className, loading, children, ...rest } = props;
|
|
31
|
+
loading ??= children === void 0 || children === null;
|
|
31
32
|
return /* @__PURE__ */ React.createElement(
|
|
32
33
|
"div",
|
|
33
34
|
{
|
|
@@ -42,20 +43,25 @@ var Skeleton = (0, import_react.forwardRef)((props, ref) => {
|
|
|
42
43
|
background-position: 400px 0px;
|
|
43
44
|
}
|
|
44
45
|
}
|
|
45
|
-
|
|
46
|
-
background-image: linear-gradient(to right, rgba(0, 0, 0, 0.067) 8%, rgba(0, 0, 0, 0.133) 18%, rgba(0, 0, 0, 0.067) 33%);
|
|
47
|
-
animation-duration: 1s;
|
|
48
|
-
animation-fill-mode: forwards;
|
|
49
|
-
animation-iteration-count: infinite;
|
|
50
|
-
animation-name: shimmer;
|
|
51
|
-
animation-timing-function: linear;
|
|
52
|
-
background-size: 800px 104px;
|
|
53
46
|
`,
|
|
47
|
+
loading && import_css.css`
|
|
48
|
+
background-image: linear-gradient(to right, rgba(0, 0, 0, 0.067) 8%, rgba(0, 0, 0, 0.133) 18%, rgba(0, 0, 0, 0.067) 33%);
|
|
49
|
+
animation-duration: 1s;
|
|
50
|
+
animation-fill-mode: forwards;
|
|
51
|
+
animation-iteration-count: infinite;
|
|
52
|
+
animation-name: shimmer;
|
|
53
|
+
animation-timing-function: linear;
|
|
54
|
+
background-size: 800px 104px;
|
|
55
|
+
`,
|
|
54
56
|
className
|
|
55
57
|
),
|
|
56
58
|
...rest
|
|
57
|
-
}
|
|
59
|
+
},
|
|
60
|
+
children
|
|
58
61
|
);
|
|
59
62
|
});
|
|
60
|
-
|
|
63
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
64
|
+
0 && (module.exports = {
|
|
65
|
+
Skeleton
|
|
66
|
+
});
|
|
61
67
|
//# sourceMappingURL=Skeleton.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/components/Skeleton.tsx"],
|
|
4
|
-
"sourcesContent": ["\"use client\"\r\n\r\nimport { css } from \"@emotion/css\"\r\nimport { clsx } from \"deepsea-tools\"\r\nimport { forwardRef, HTMLAttributes } from \"react\"\r\n\r\
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,iBAAoB;AACpB,2BAAqB;AACrB,mBAA2C;
|
|
4
|
+
"sourcesContent": ["\"use client\"\r\n\r\nimport { css } from \"@emotion/css\"\r\nimport { clsx } from \"deepsea-tools\"\r\nimport { forwardRef, HTMLAttributes } from \"react\"\r\n\r\nexport interface SkeletonProps extends HTMLAttributes<HTMLDivElement> {\r\n loading?: boolean\r\n}\r\n\r\nexport const Skeleton = forwardRef<HTMLDivElement, SkeletonProps>((props, ref) => {\r\n let { className, loading, children, ...rest } = props\r\n\r\n loading ??= children === undefined || children === null\r\n\r\n return (\r\n <div\r\n ref={ref}\r\n className={clsx(\r\n css`\r\n @keyframes shimmer {\r\n 0% {\r\n background-position: -400px 0px;\r\n }\r\n 100% {\r\n background-position: 400px 0px;\r\n }\r\n }\r\n `,\r\n loading &&\r\n css`\r\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.067) 8%, rgba(0, 0, 0, 0.133) 18%, rgba(0, 0, 0, 0.067) 33%);\r\n animation-duration: 1s;\r\n animation-fill-mode: forwards;\r\n animation-iteration-count: infinite;\r\n animation-name: shimmer;\r\n animation-timing-function: linear;\r\n background-size: 800px 104px;\r\n `,\r\n className\r\n )}\r\n {...rest}>\r\n {children}\r\n </div>\r\n )\r\n})\r\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,iBAAoB;AACpB,2BAAqB;AACrB,mBAA2C;AAMpC,IAAM,eAAW,yBAA0C,CAAC,OAAO,QAAQ;AAC9E,MAAI,EAAE,WAAW,SAAS,UAAU,GAAG,KAAK,IAAI;AAEhD,cAAY,aAAa,UAAa,aAAa;AAEnD,SACI;AAAA,IAAC;AAAA;AAAA,MACG;AAAA,MACA,eAAW;AAAA,QACP;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAUA,WACI;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QASJ;AAAA,MACJ;AAAA,MACC,GAAG;AAAA;AAAA,IACH;AAAA,EACL;AAER,CAAC;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -2,5 +2,4 @@ import { MediaHTMLAttributes } from "react";
|
|
|
2
2
|
export interface HlsPlayerProps extends Omit<MediaHTMLAttributes<HTMLVideoElement>, "src"> {
|
|
3
3
|
src: string;
|
|
4
4
|
}
|
|
5
|
-
declare const HlsPlayer: import("react").ForwardRefExoticComponent<HlsPlayerProps & import("react").RefAttributes<HTMLVideoElement>>;
|
|
6
|
-
export default HlsPlayer;
|
|
5
|
+
export declare const HlsPlayer: import("react").ForwardRefExoticComponent<HlsPlayerProps & import("react").RefAttributes<HTMLVideoElement>>;
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
import Hls from "hls.js";
|
|
4
4
|
import { forwardRef, useEffect, useImperativeHandle, useRef } from "react";
|
|
5
5
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
6
|
-
const HlsPlayer = /*#__PURE__*/forwardRef((props, ref) => {
|
|
6
|
+
export const HlsPlayer = /*#__PURE__*/forwardRef((props, ref) => {
|
|
7
7
|
const {
|
|
8
8
|
src,
|
|
9
9
|
...rest
|
|
@@ -33,5 +33,4 @@ const HlsPlayer = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
33
33
|
...rest
|
|
34
34
|
});
|
|
35
35
|
});
|
|
36
|
-
export default HlsPlayer;
|
|
37
36
|
//# sourceMappingURL=HlsPlayer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Hls","forwardRef","useEffect","useImperativeHandle","useRef","jsx","_jsx","HlsPlayer","props","ref","src","rest","video","current","player","canPlayType","isSupported","hls","loadSource","attachMedia","destroy"],"sources":["../../../src/components/HlsPlayer.tsx"],"sourcesContent":["\"use client\"\r\n\r\nimport Hls from \"hls.js\"\r\nimport { MediaHTMLAttributes, forwardRef, useEffect, useImperativeHandle, useRef } from \"react\"\r\n\r\nexport interface HlsPlayerProps extends Omit<MediaHTMLAttributes<HTMLVideoElement>, \"src\"> {\r\n src: string\r\n}\r\n\r\
|
|
1
|
+
{"version":3,"names":["Hls","forwardRef","useEffect","useImperativeHandle","useRef","jsx","_jsx","HlsPlayer","props","ref","src","rest","video","current","player","canPlayType","isSupported","hls","loadSource","attachMedia","destroy"],"sources":["../../../src/components/HlsPlayer.tsx"],"sourcesContent":["\"use client\"\r\n\r\nimport Hls from \"hls.js\"\r\nimport { MediaHTMLAttributes, forwardRef, useEffect, useImperativeHandle, useRef } from \"react\"\r\n\r\nexport interface HlsPlayerProps extends Omit<MediaHTMLAttributes<HTMLVideoElement>, \"src\"> {\r\n src: string\r\n}\r\n\r\nexport const HlsPlayer = forwardRef<HTMLVideoElement, HlsPlayerProps>((props, ref) => {\r\n const { src, ...rest } = props\r\n const video = useRef<HTMLVideoElement>(null)\r\n\r\n useImperativeHandle(ref, () => video.current!, [])\r\n\r\n useEffect(() => {\r\n const { current: player } = video\r\n if (!player || !src) return\r\n if (player.canPlayType(\"application/vnd.apple.mpegurl\")) {\r\n player.src = src\r\n return\r\n }\r\n if (Hls.isSupported()) {\r\n const hls = new Hls()\r\n hls.loadSource(src)\r\n hls.attachMedia(player)\r\n return () => {\r\n hls.destroy()\r\n }\r\n }\r\n }, [src])\r\n\r\n return <video ref={video} {...rest} />\r\n})\r\n"],"mappings":"AAAA,YAAY;;AAEZ,OAAOA,GAAG,MAAM,QAAQ;AACxB,SAA8BC,UAAU,EAAEC,SAAS,EAAEC,mBAAmB,EAAEC,MAAM,QAAQ,OAAO;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAM/F,OAAO,MAAMC,SAAS,gBAAGN,UAAU,CAAmC,CAACO,KAAK,EAAEC,GAAG,KAAK;EAClF,MAAM;IAAEC,GAAG;IAAE,GAAGC;EAAK,CAAC,GAAGH,KAAK;EAC9B,MAAMI,KAAK,GAAGR,MAAM,CAAmB,IAAI,CAAC;EAE5CD,mBAAmB,CAACM,GAAG,EAAE,MAAMG,KAAK,CAACC,OAAQ,EAAE,EAAE,CAAC;EAElDX,SAAS,CAAC,MAAM;IACZ,MAAM;MAAEW,OAAO,EAAEC;IAAO,CAAC,GAAGF,KAAK;IACjC,IAAI,CAACE,MAAM,IAAI,CAACJ,GAAG,EAAE;IACrB,IAAII,MAAM,CAACC,WAAW,CAAC,+BAA+B,CAAC,EAAE;MACrDD,MAAM,CAACJ,GAAG,GAAGA,GAAG;MAChB;IACJ;IACA,IAAIV,GAAG,CAACgB,WAAW,CAAC,CAAC,EAAE;MACnB,MAAMC,GAAG,GAAG,IAAIjB,GAAG,CAAC,CAAC;MACrBiB,GAAG,CAACC,UAAU,CAACR,GAAG,CAAC;MACnBO,GAAG,CAACE,WAAW,CAACL,MAAM,CAAC;MACvB,OAAO,MAAM;QACTG,GAAG,CAACG,OAAO,CAAC,CAAC;MACjB,CAAC;IACL;EACJ,CAAC,EAAE,CAACV,GAAG,CAAC,CAAC;EAET,oBAAOJ,IAAA;IAAOG,GAAG,EAAEG,KAAM;IAAA,GAAKD;EAAI,CAAG,CAAC;AAC1C,CAAC,CAAC"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
import { HTMLAttributes } from "react";
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
export interface SkeletonProps extends HTMLAttributes<HTMLDivElement> {
|
|
3
|
+
loading?: boolean;
|
|
4
|
+
}
|
|
5
|
+
export declare const Skeleton: import("react").ForwardRefExoticComponent<SkeletonProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -4,11 +4,14 @@ import { css } from "@emotion/css";
|
|
|
4
4
|
import { clsx } from "deepsea-tools";
|
|
5
5
|
import { forwardRef } from "react";
|
|
6
6
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
7
|
-
const Skeleton = /*#__PURE__*/forwardRef((props, ref) => {
|
|
8
|
-
|
|
7
|
+
export const Skeleton = /*#__PURE__*/forwardRef((props, ref) => {
|
|
8
|
+
let {
|
|
9
9
|
className,
|
|
10
|
+
loading,
|
|
11
|
+
children,
|
|
10
12
|
...rest
|
|
11
13
|
} = props;
|
|
14
|
+
loading ??= children === undefined || children === null;
|
|
12
15
|
return /*#__PURE__*/_jsx("div", {
|
|
13
16
|
ref: ref,
|
|
14
17
|
className: clsx(css`
|
|
@@ -20,17 +23,17 @@ const Skeleton = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
20
23
|
background-position: 400px 0px;
|
|
21
24
|
}
|
|
22
25
|
}
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
...rest
|
|
26
|
+
`, loading && css`
|
|
27
|
+
background-image: linear-gradient(to right, rgba(0, 0, 0, 0.067) 8%, rgba(0, 0, 0, 0.133) 18%, rgba(0, 0, 0, 0.067) 33%);
|
|
28
|
+
animation-duration: 1s;
|
|
29
|
+
animation-fill-mode: forwards;
|
|
30
|
+
animation-iteration-count: infinite;
|
|
31
|
+
animation-name: shimmer;
|
|
32
|
+
animation-timing-function: linear;
|
|
33
|
+
background-size: 800px 104px;
|
|
34
|
+
`, className),
|
|
35
|
+
...rest,
|
|
36
|
+
children: children
|
|
33
37
|
});
|
|
34
38
|
});
|
|
35
|
-
export default Skeleton;
|
|
36
39
|
//# sourceMappingURL=Skeleton.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["css","clsx","forwardRef","jsx","_jsx","Skeleton","props","ref","className","rest"],"sources":["../../../src/components/Skeleton.tsx"],"sourcesContent":["\"use client\"\r\n\r\nimport { css } from \"@emotion/css\"\r\nimport { clsx } from \"deepsea-tools\"\r\nimport { forwardRef, HTMLAttributes } from \"react\"\r\n\r\
|
|
1
|
+
{"version":3,"names":["css","clsx","forwardRef","jsx","_jsx","Skeleton","props","ref","className","loading","children","rest","undefined"],"sources":["../../../src/components/Skeleton.tsx"],"sourcesContent":["\"use client\"\r\n\r\nimport { css } from \"@emotion/css\"\r\nimport { clsx } from \"deepsea-tools\"\r\nimport { forwardRef, HTMLAttributes } from \"react\"\r\n\r\nexport interface SkeletonProps extends HTMLAttributes<HTMLDivElement> {\r\n loading?: boolean\r\n}\r\n\r\nexport const Skeleton = forwardRef<HTMLDivElement, SkeletonProps>((props, ref) => {\r\n let { className, loading, children, ...rest } = props\r\n\r\n loading ??= children === undefined || children === null\r\n\r\n return (\r\n <div\r\n ref={ref}\r\n className={clsx(\r\n css`\r\n @keyframes shimmer {\r\n 0% {\r\n background-position: -400px 0px;\r\n }\r\n 100% {\r\n background-position: 400px 0px;\r\n }\r\n }\r\n `,\r\n loading &&\r\n css`\r\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.067) 8%, rgba(0, 0, 0, 0.133) 18%, rgba(0, 0, 0, 0.067) 33%);\r\n animation-duration: 1s;\r\n animation-fill-mode: forwards;\r\n animation-iteration-count: infinite;\r\n animation-name: shimmer;\r\n animation-timing-function: linear;\r\n background-size: 800px 104px;\r\n `,\r\n className\r\n )}\r\n {...rest}>\r\n {children}\r\n </div>\r\n )\r\n})\r\n"],"mappings":"AAAA,YAAY;;AAEZ,SAASA,GAAG,QAAQ,cAAc;AAClC,SAASC,IAAI,QAAQ,eAAe;AACpC,SAASC,UAAU,QAAwB,OAAO;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAMlD,OAAO,MAAMC,QAAQ,gBAAGH,UAAU,CAAgC,CAACI,KAAK,EAAEC,GAAG,KAAK;EAC9E,IAAI;IAAEC,SAAS;IAAEC,OAAO;IAAEC,QAAQ;IAAE,GAAGC;EAAK,CAAC,GAAGL,KAAK;EAErDG,OAAO,KAAKC,QAAQ,KAAKE,SAAS,IAAIF,QAAQ,KAAK,IAAI;EAEvD,oBACIN,IAAA;IACIG,GAAG,EAAEA,GAAI;IACTC,SAAS,EAAEP,IAAI,CACXD,GAAI;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,EACDS,OAAO,IACHT,GAAI;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,EACLQ,SACJ,CAAE;IAAA,GACEG,IAAI;IAAAD,QAAA,EACPA;EAAQ,CACR,CAAC;AAEd,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -7,7 +7,7 @@ export interface HlsPlayerProps extends Omit<MediaHTMLAttributes<HTMLVideoElemen
|
|
|
7
7
|
src: string
|
|
8
8
|
}
|
|
9
9
|
|
|
10
|
-
const HlsPlayer = forwardRef<HTMLVideoElement, HlsPlayerProps>((props, ref) => {
|
|
10
|
+
export const HlsPlayer = forwardRef<HTMLVideoElement, HlsPlayerProps>((props, ref) => {
|
|
11
11
|
const { src, ...rest } = props
|
|
12
12
|
const video = useRef<HTMLVideoElement>(null)
|
|
13
13
|
|
|
@@ -32,5 +32,3 @@ const HlsPlayer = forwardRef<HTMLVideoElement, HlsPlayerProps>((props, ref) => {
|
|
|
32
32
|
|
|
33
33
|
return <video ref={video} {...rest} />
|
|
34
34
|
})
|
|
35
|
-
|
|
36
|
-
export default HlsPlayer
|
|
@@ -4,8 +4,14 @@ import { css } from "@emotion/css"
|
|
|
4
4
|
import { clsx } from "deepsea-tools"
|
|
5
5
|
import { forwardRef, HTMLAttributes } from "react"
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
export interface SkeletonProps extends HTMLAttributes<HTMLDivElement> {
|
|
8
|
+
loading?: boolean
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export const Skeleton = forwardRef<HTMLDivElement, SkeletonProps>((props, ref) => {
|
|
12
|
+
let { className, loading, children, ...rest } = props
|
|
13
|
+
|
|
14
|
+
loading ??= children === undefined || children === null
|
|
9
15
|
|
|
10
16
|
return (
|
|
11
17
|
<div
|
|
@@ -20,20 +26,21 @@ const Skeleton = forwardRef<HTMLDivElement, HTMLAttributes<HTMLDivElement>>((pro
|
|
|
20
26
|
background-position: 400px 0px;
|
|
21
27
|
}
|
|
22
28
|
}
|
|
23
|
-
|
|
24
|
-
background-image: linear-gradient(to right, rgba(0, 0, 0, 0.067) 8%, rgba(0, 0, 0, 0.133) 18%, rgba(0, 0, 0, 0.067) 33%);
|
|
25
|
-
animation-duration: 1s;
|
|
26
|
-
animation-fill-mode: forwards;
|
|
27
|
-
animation-iteration-count: infinite;
|
|
28
|
-
animation-name: shimmer;
|
|
29
|
-
animation-timing-function: linear;
|
|
30
|
-
background-size: 800px 104px;
|
|
31
29
|
`,
|
|
30
|
+
loading &&
|
|
31
|
+
css`
|
|
32
|
+
background-image: linear-gradient(to right, rgba(0, 0, 0, 0.067) 8%, rgba(0, 0, 0, 0.133) 18%, rgba(0, 0, 0, 0.067) 33%);
|
|
33
|
+
animation-duration: 1s;
|
|
34
|
+
animation-fill-mode: forwards;
|
|
35
|
+
animation-iteration-count: infinite;
|
|
36
|
+
animation-name: shimmer;
|
|
37
|
+
animation-timing-function: linear;
|
|
38
|
+
background-size: 800px 104px;
|
|
39
|
+
`,
|
|
32
40
|
className
|
|
33
41
|
)}
|
|
34
|
-
{...rest}
|
|
35
|
-
|
|
42
|
+
{...rest}>
|
|
43
|
+
{children}
|
|
44
|
+
</div>
|
|
36
45
|
)
|
|
37
46
|
})
|
|
38
|
-
|
|
39
|
-
export default Skeleton
|