highsoft-ui 1.0.144 → 1.0.146
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/CLAUDE.md +50 -0
- package/dist/{Button-awCDIEXQ.js → Button-DIGyNR41.js} +1 -1
- package/dist/{ButtonGroup-Cwn0djAz.js → ButtonGroup-BSQzx-sZ.js} +1 -1
- package/dist/{Checkbox-CrF45NBl.js → Checkbox-wlH6EGWW.js} +1 -1
- package/dist/{CodeBlock-BIdeK3gz.js → CodeBlock-DtTAC5ru.js} +5 -5
- package/dist/{CookiePolicyModal-CTA02JGV.js → CookiePolicyModal-CGRXL0wR.js} +2 -2
- package/dist/{CopyCode-QiPNPCQN.js → CopyCode-_MHQorJS.js} +3 -3
- package/dist/{Dropdown-0Vn7yro7.js → Dropdown-CVyrHJiC.js} +1 -1
- package/dist/{Footer-BlCmsIDd.js → Footer-DW2asf8g.js} +7 -7
- package/dist/{FooterBottom-CF5ctutk.js → FooterBottom-CP0f9kYj.js} +1 -1
- package/dist/{FooterHelp-BthIJ2ye.js → FooterHelp-BxDXmtHK.js} +1 -1
- package/dist/{FooterLinks-BBOOTdRf.js → FooterLinks-BZwAVSm4.js} +2 -2
- package/dist/{Header-DY4mJxHm.js → Header-DQ1xi25C.js} +32 -32
- package/dist/{InputGrouped-DyxraUpb.js → InputGrouped-BE3zLov9.js} +13 -13
- package/dist/{Label-DdXaM1Bo.js → Label-C_KZM-FN.js} +1 -1
- package/dist/{NewsletterSignup-BMRnrbw8.js → NewsletterSignup-CJAI81M3.js} +2 -2
- package/dist/{Notification-DM31Uzfz.js → Notification-C2kN_ceR.js} +3 -3
- package/dist/{PrefPanel-DDD8R_-o.js → PrefPanel-BZUX1nfw.js} +11 -11
- package/dist/{RoadmapDetails-DsLtsnqg.js → RoadmapDetails-CfayA5CZ.js} +3 -3
- package/dist/{Search-CDOpNByw.js → Search-Cw_e1PyF.js} +10 -10
- package/dist/{SearchDropdown-D65lySm_.js → SearchDropdown-ECOTZ1Uf.js} +1 -1
- package/dist/VideoCover-BN8wnHpf.js +92 -0
- package/dist/VideoPlayer-CKjq7IRq.js +324 -0
- package/dist/VideoPlayerModal-DbP3OjSF.js +55 -0
- package/dist/YoutubeModal-D_ZHayEn.js +35 -0
- package/dist/components/Button/index.js +1 -1
- package/dist/components/ButtonGroup/index.js +1 -1
- package/dist/components/Checkbox/index.js +1 -1
- package/dist/components/CodeBlock/index.js +1 -1
- package/dist/components/CopyCode/index.js +1 -1
- package/dist/components/Dropdown/index.js +1 -1
- package/dist/components/Footer/CookiePolicyModal.js +1 -1
- package/dist/components/Footer/FooterBottom.js +1 -1
- package/dist/components/Footer/FooterHelp.js +1 -1
- package/dist/components/Footer/FooterLinks.js +1 -1
- package/dist/components/Footer/YoutubeModal.js +1 -1
- package/dist/components/Footer/index.js +1 -1
- package/dist/components/Header/index.js +1 -1
- package/dist/components/InputGrouped/index.js +1 -1
- package/dist/components/Label/index.js +1 -1
- package/dist/components/Modal/ModalContactFooter.js +2 -2
- package/dist/components/Modal/index.js +2 -2
- package/dist/components/NewsletterSignup/index.js +1 -1
- package/dist/components/Notification/index.js +1 -1
- package/dist/components/PrefPanel/index.js +1 -1
- package/dist/components/RoadmapDetails/index.js +1 -1
- package/dist/components/Search/index.js +1 -1
- package/dist/components/SearchDropdown/index.js +1 -1
- package/dist/components/Sidebar/Sidebar.js +1 -1
- package/dist/components/VideoCover/index.js +2 -0
- package/dist/components/VideoPlayer/VideoPlayerModal.js +2 -0
- package/dist/components/VideoPlayer/index.js +2 -0
- package/dist/components/VideoPlayer/useMediaEngine.js +275 -0
- package/dist/{create-element-CWTzyETe.js → create-element-WbENDceu.js} +1 -1
- package/dist/{esm-VMwHsplm.js → esm-B0YmMAXt.js} +90 -20
- package/dist/highsoft-ui.css +1 -1
- package/dist/lib/components/VideoCover/index.d.ts +75 -0
- package/dist/lib/components/VideoPlayer/VideoPlayerModal.d.ts +27 -0
- package/dist/lib/components/VideoPlayer/index.d.ts +43 -0
- package/dist/lib/components/VideoPlayer/useMediaEngine.d.ts +44 -0
- package/dist/lib/main.d.ts +6 -0
- package/dist/main.js +32 -29
- package/dist/{prism-light-B3yrtgki.js → prism-light-C4xXs3Qn.js} +1 -1
- package/dist/scss/variables.scss +21 -20
- package/package.json +1 -1
- package/dist/YoutubeModal-CZgbaRB6.js +0 -92
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { CSSProperties, ReactNode } from 'react';
|
|
2
|
+
/** A single `<source>` entry for the underlying `<video>`. */
|
|
3
|
+
export interface VideoCoverSource {
|
|
4
|
+
src: string;
|
|
5
|
+
/** MIME type, e.g. `video/webm`. */
|
|
6
|
+
type?: string;
|
|
7
|
+
}
|
|
8
|
+
export interface VideoCoverProps {
|
|
9
|
+
/** Video URL. Use `sources` for multiple self-hosted encodings instead. */
|
|
10
|
+
src?: string;
|
|
11
|
+
/** Multiple `<source>` encodings; the browser picks the first it supports. */
|
|
12
|
+
sources?: VideoCoverSource[];
|
|
13
|
+
/** Poster image shown before the video loads / fades in. */
|
|
14
|
+
poster?: string;
|
|
15
|
+
/**
|
|
16
|
+
* How the video fills the box, like CSS `object-fit`. `'cover'` (default)
|
|
17
|
+
* stretches to fill and crops overflow; `'contain'` letterboxes.
|
|
18
|
+
*/
|
|
19
|
+
fit?: 'cover' | 'contain' | 'fill';
|
|
20
|
+
/** Autoplay on mount. Default `true`. */
|
|
21
|
+
autoPlay?: boolean;
|
|
22
|
+
/** Loop when the video ends. Default `true`. */
|
|
23
|
+
loop?: boolean;
|
|
24
|
+
/** Start muted — required for autoplay. Default `true`. */
|
|
25
|
+
muted?: boolean;
|
|
26
|
+
/** Play inline on iOS. Default `true`. */
|
|
27
|
+
playsInline?: boolean;
|
|
28
|
+
/** How much to preload once loading starts. Default `auto`. */
|
|
29
|
+
preload?: 'none' | 'metadata' | 'auto';
|
|
30
|
+
/**
|
|
31
|
+
* Defer loading the video until it scrolls near the viewport (via
|
|
32
|
+
* `IntersectionObserver`), then fade it in. Default `true`. Set `false` to
|
|
33
|
+
* load eagerly.
|
|
34
|
+
*/
|
|
35
|
+
lazy?: boolean;
|
|
36
|
+
/** Zoom the video slightly when the cover is hovered (preview-tile affordance). */
|
|
37
|
+
hoverZoom?: boolean;
|
|
38
|
+
/**
|
|
39
|
+
* Reduced-motion behavior. Defaults to the user's `prefers-reduced-motion`
|
|
40
|
+
* setting — when they've asked for reduced motion the video doesn't autoplay
|
|
41
|
+
* and all transitions are disabled; it shows a single static frame instead.
|
|
42
|
+
* Pass a value to override the OS setting: `false` forces normal playback,
|
|
43
|
+
* and `true` / `'no-animation'` / `'skip-to-end'` force the reduced treatment
|
|
44
|
+
* with a chosen frame:
|
|
45
|
+
* - `'no-animation'` (or `true`) — the first frame.
|
|
46
|
+
* - `'skip-to-end'` — the last frame.
|
|
47
|
+
*/
|
|
48
|
+
reducedMotion?: boolean | 'no-animation' | 'skip-to-end';
|
|
49
|
+
/**
|
|
50
|
+
* Fixed aspect ratio, e.g. `'16 / 9'`. Omit to fill the parent's height
|
|
51
|
+
* instead (size the parent to shape the cover).
|
|
52
|
+
*/
|
|
53
|
+
aspectRatio?: string;
|
|
54
|
+
/** Corner radius in px. Default `0`. */
|
|
55
|
+
radius?: number;
|
|
56
|
+
/**
|
|
57
|
+
* Overlay content rendered on top of the video (icons, captions, a play
|
|
58
|
+
* badge, …). Interactive by default; pointer events pass through the video.
|
|
59
|
+
*/
|
|
60
|
+
children?: ReactNode;
|
|
61
|
+
/**
|
|
62
|
+
* Accessible label. When set, the element is exposed as an image with this
|
|
63
|
+
* label; when omitted, it's treated as decorative (`aria-hidden`).
|
|
64
|
+
*/
|
|
65
|
+
'aria-label'?: string;
|
|
66
|
+
className?: string;
|
|
67
|
+
style?: CSSProperties;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* A chrome-less background/cover video — autoplays muted, loops, and stretches
|
|
71
|
+
* to fill its box like `object-fit: cover` on an image. No controls, no
|
|
72
|
+
* playback engine, no provider SDKs; just a self-hosted `<video>` with built-in
|
|
73
|
+
* lazy loading and an optional overlay for arbitrary `children`.
|
|
74
|
+
*/
|
|
75
|
+
export declare const VideoCover: import('react').ForwardRefExoticComponent<VideoCoverProps & import('react').RefAttributes<HTMLVideoElement>>;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
import { VideoPlayerProps } from './index';
|
|
3
|
+
export interface VideoPlayerModalProps extends VideoPlayerProps {
|
|
4
|
+
/** Element that opens the modal (rendered as the dialog trigger). */
|
|
5
|
+
trigger?: ReactNode;
|
|
6
|
+
/** Controlled open state. */
|
|
7
|
+
open?: boolean;
|
|
8
|
+
/** Uncontrolled initial open state. */
|
|
9
|
+
defaultOpen?: boolean;
|
|
10
|
+
/** Fires when the open state changes. */
|
|
11
|
+
onOpenChange?: (open: boolean) => void;
|
|
12
|
+
/** Accessible dialog title (visually hidden). */
|
|
13
|
+
title?: string;
|
|
14
|
+
/** Max width of the video frame in the modal. Default `900`. */
|
|
15
|
+
maxWidth?: number | string;
|
|
16
|
+
/** Close-button label. Default `'Close'`. */
|
|
17
|
+
closeLabel?: string;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Lightbox wrapper around `VideoPlayer` — opens the player in a centered,
|
|
21
|
+
* dimmed Radix dialog. The player mounts on open (so autoplay + provider SDKs
|
|
22
|
+
* only kick in then) and unmounts on close (stopping playback).
|
|
23
|
+
*/
|
|
24
|
+
export declare function VideoPlayerModal({ trigger, open, defaultOpen, onOpenChange, title, maxWidth, closeLabel, autoPlay, ...playerProps }: VideoPlayerModalProps): import("react").JSX.Element;
|
|
25
|
+
export declare namespace VideoPlayerModal {
|
|
26
|
+
var displayName: string;
|
|
27
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { CSSProperties } from 'react';
|
|
2
|
+
/** A single `<source>` entry for the underlying `<video>`. */
|
|
3
|
+
export interface VideoPlayerSource {
|
|
4
|
+
src: string;
|
|
5
|
+
/** MIME type, e.g. `video/mp4`. */
|
|
6
|
+
type?: string;
|
|
7
|
+
}
|
|
8
|
+
export interface VideoPlayerProps {
|
|
9
|
+
/**
|
|
10
|
+
* Video URL. A YouTube or Vimeo link is auto-detected and driven through the
|
|
11
|
+
* same custom chrome via their player SDKs. Use `sources` for multiple
|
|
12
|
+
* self-hosted encodings instead.
|
|
13
|
+
*/
|
|
14
|
+
src?: string;
|
|
15
|
+
/** Multiple `<source>` encodings; the browser picks the first it supports. */
|
|
16
|
+
sources?: VideoPlayerSource[];
|
|
17
|
+
/** Poster image shown before playback (self-hosted video only). */
|
|
18
|
+
poster?: string;
|
|
19
|
+
/** Start muted (required by most browsers for `autoPlay`). */
|
|
20
|
+
muted?: boolean;
|
|
21
|
+
/** Autoplay on mount. Pair with `muted` for it to actually start. */
|
|
22
|
+
autoPlay?: boolean;
|
|
23
|
+
/** Loop when the video ends. */
|
|
24
|
+
loop?: boolean;
|
|
25
|
+
/** Play inline on iOS rather than going fullscreen. Defaults to `true`. */
|
|
26
|
+
playsInline?: boolean;
|
|
27
|
+
/** How much to preload (self-hosted video only). Defaults to `metadata`. */
|
|
28
|
+
preload?: 'none' | 'metadata' | 'auto';
|
|
29
|
+
/** Frame aspect ratio, e.g. `'16 / 9'` (default) or `'4 / 3'`. */
|
|
30
|
+
aspectRatio?: string;
|
|
31
|
+
/** Corner radius of the frame in px. Default `16`. */
|
|
32
|
+
radius?: number;
|
|
33
|
+
/**
|
|
34
|
+
* Accent used for the progress + volume fill. Defaults to the Highsoft brand
|
|
35
|
+
* color; accepts any CSS color or `<image>` value (e.g. a `linear-gradient`).
|
|
36
|
+
*/
|
|
37
|
+
accentGradient?: string;
|
|
38
|
+
/** Accessible label for the player region. */
|
|
39
|
+
'aria-label'?: string;
|
|
40
|
+
className?: string;
|
|
41
|
+
style?: CSSProperties;
|
|
42
|
+
}
|
|
43
|
+
export declare const VideoPlayer: import('react').ForwardRefExoticComponent<VideoPlayerProps & import('react').RefAttributes<HTMLVideoElement>>;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/** Which backend drives playback. Auto-detected from the `src`. */
|
|
2
|
+
export type MediaProvider = 'file' | 'youtube' | 'vimeo';
|
|
3
|
+
export interface MediaState {
|
|
4
|
+
ready: boolean;
|
|
5
|
+
playing: boolean;
|
|
6
|
+
ended: boolean;
|
|
7
|
+
duration: number;
|
|
8
|
+
currentTime: number;
|
|
9
|
+
/** Buffered fraction, 0–1. */
|
|
10
|
+
buffered: number;
|
|
11
|
+
/** Volume, 0–1. */
|
|
12
|
+
volume: number;
|
|
13
|
+
muted: boolean;
|
|
14
|
+
}
|
|
15
|
+
export declare function detectProvider(src?: string, hasSources?: boolean): MediaProvider;
|
|
16
|
+
/**
|
|
17
|
+
* An unbranded still frame for a provider's start screen, used to mask the
|
|
18
|
+
* embed's own (branded) poster before playback begins. YouTube exposes a
|
|
19
|
+
* thumbnail image; Vimeo's needs an async SDK call, so it's covered with a
|
|
20
|
+
* solid backdrop instead.
|
|
21
|
+
*/
|
|
22
|
+
export declare function providerPosterUrl(provider: MediaProvider, src?: string): string | undefined;
|
|
23
|
+
export interface MediaEngineOptions {
|
|
24
|
+
provider: MediaProvider;
|
|
25
|
+
src?: string;
|
|
26
|
+
muted: boolean;
|
|
27
|
+
autoPlay: boolean;
|
|
28
|
+
loop: boolean;
|
|
29
|
+
}
|
|
30
|
+
export interface MediaEngine {
|
|
31
|
+
state: MediaState;
|
|
32
|
+
/** Attach to the native `<video>` when provider is `file`. */
|
|
33
|
+
videoRef: (node: HTMLVideoElement | null) => void;
|
|
34
|
+
/** Attach to the embed container when provider is `youtube` / `vimeo`. */
|
|
35
|
+
mountRef: (node: HTMLDivElement | null) => void;
|
|
36
|
+
toggle(): void;
|
|
37
|
+
seekFraction(fraction: number): void;
|
|
38
|
+
seekBy(deltaSeconds: number): void;
|
|
39
|
+
setVolume(volume: number): void;
|
|
40
|
+
toggleMute(): void;
|
|
41
|
+
beginSeek(): void;
|
|
42
|
+
endSeek(): void;
|
|
43
|
+
}
|
|
44
|
+
export declare function useMediaEngine({ provider, src, muted, autoPlay, loop }: MediaEngineOptions): MediaEngine;
|
package/dist/lib/main.d.ts
CHANGED
|
@@ -58,5 +58,11 @@ export { Notification } from './components/Notification';
|
|
|
58
58
|
export { SidebarLayout, SidebarMain, Sidebar, SidebarHeader, SidebarBody, SidebarSection, SidebarResizer, NavItem, NavGroup, NavDisclosure, useSidebarLayout, useOptionalSidebarLayout } from './components/Sidebar';
|
|
59
59
|
export type { SidebarLayoutProps, SidebarProps, SidebarSectionProps, NavItemProps, NavGroupProps, NavDisclosureProps, SidebarLayoutContextValue } from './components/Sidebar';
|
|
60
60
|
export { PrefPanel } from './components/PrefPanel';
|
|
61
|
+
export { VideoPlayer } from './components/VideoPlayer';
|
|
62
|
+
export type { VideoPlayerProps, VideoPlayerSource } from './components/VideoPlayer';
|
|
63
|
+
export { VideoPlayerModal } from './components/VideoPlayer/VideoPlayerModal';
|
|
64
|
+
export type { VideoPlayerModalProps } from './components/VideoPlayer/VideoPlayerModal';
|
|
65
|
+
export { VideoCover } from './components/VideoCover';
|
|
66
|
+
export type { VideoCoverProps, VideoCoverSource } from './components/VideoCover';
|
|
61
67
|
export { ThemeLoader, themeLoaderScript } from './components/ThemeLoader';
|
|
62
68
|
export { useTheme, useClipboard, useSuccessFlash } from './utils';
|
package/dist/main.js
CHANGED
|
@@ -1,42 +1,45 @@
|
|
|
1
1
|
import { c as e, d as t, r as n, s as r, u as i } from "./utils-K9S_6_Eq.js";
|
|
2
2
|
import { t as a } from "./Box-BZgeSeCV.js";
|
|
3
|
-
import { t as o } from "./Button-
|
|
4
|
-
import { t as s } from "./CopyCode-
|
|
3
|
+
import { t as o } from "./Button-DIGyNR41.js";
|
|
4
|
+
import { t as s } from "./CopyCode-_MHQorJS.js";
|
|
5
5
|
import { t as c } from "./FrameworkIcon-Ds6WrxO0.js";
|
|
6
|
-
import { t as l } from "./CodeBlock-
|
|
6
|
+
import { t as l } from "./CodeBlock-DtTAC5ru.js";
|
|
7
7
|
import { t as u } from "./Icon-VeXJMj8Q.js";
|
|
8
8
|
import { t as d } from "./Link-CYR92_U0.js";
|
|
9
9
|
import { t as f } from "./ProductIcon-DFLAYWbu.js";
|
|
10
|
-
import { t as p } from "./ButtonGroup-
|
|
10
|
+
import { t as p } from "./ButtonGroup-BSQzx-sZ.js";
|
|
11
11
|
import { t as m } from "./InputSolo-DUdKtZjX.js";
|
|
12
|
-
import { t as h } from "./SearchDropdown-
|
|
13
|
-
import { i as g, n as _, r as v, t as y } from "./InputGrouped-
|
|
12
|
+
import { t as h } from "./SearchDropdown-ECOTZ1Uf.js";
|
|
13
|
+
import { i as g, n as _, r as v, t as y } from "./InputGrouped-BE3zLov9.js";
|
|
14
14
|
import { t as b } from "./Container-BDssaLig.js";
|
|
15
15
|
import { t as x } from "./DiscordInvite-CLYxexdH.js";
|
|
16
16
|
import { t as S } from "./Heading-DNDHqYWO.js";
|
|
17
17
|
import { t as C } from "./Typography-AvvBRu-u.js";
|
|
18
18
|
import { t as w } from "./Logo-Bz0G2G-k.js";
|
|
19
|
-
import { t as T } from "./NewsletterSignup-
|
|
20
|
-
import { n as E, r as D, t as O } from "./Dropdown-
|
|
21
|
-
import { t as k } from "./PrefPanel-
|
|
22
|
-
import { n as A, t as j } from "./Label-
|
|
23
|
-
import { t as M } from "./
|
|
24
|
-
import {
|
|
25
|
-
import { t as P } from "./
|
|
26
|
-
import {
|
|
27
|
-
import {
|
|
28
|
-
import {
|
|
29
|
-
import { n as
|
|
30
|
-
import {
|
|
31
|
-
import { t as
|
|
32
|
-
import {
|
|
33
|
-
import {
|
|
34
|
-
import {
|
|
35
|
-
import {
|
|
36
|
-
import {
|
|
37
|
-
import {
|
|
38
|
-
import {
|
|
39
|
-
import {
|
|
19
|
+
import { t as T } from "./NewsletterSignup-CJAI81M3.js";
|
|
20
|
+
import { n as E, r as D, t as O } from "./Dropdown-CVyrHJiC.js";
|
|
21
|
+
import { t as k } from "./PrefPanel-BZUX1nfw.js";
|
|
22
|
+
import { n as A, t as j } from "./Label-C_KZM-FN.js";
|
|
23
|
+
import { t as M } from "./VideoCover-BN8wnHpf.js";
|
|
24
|
+
import { t as N } from "./VideoPlayer-CKjq7IRq.js";
|
|
25
|
+
import { t as P } from "./VideoPlayerModal-DbP3OjSF.js";
|
|
26
|
+
import { t as F } from "./Footer-DW2asf8g.js";
|
|
27
|
+
import { n as I } from "./GPTInput-C0YG1990.js";
|
|
28
|
+
import { t as L } from "./Notification-C2kN_ceR.js";
|
|
29
|
+
import { n as R, t as z } from "./Header-DQ1xi25C.js";
|
|
30
|
+
import { t as B } from "./Tabs-BuDaPqdN.js";
|
|
31
|
+
import { n as V, t as H } from "./RadioBox-o1Ssyj0s.js";
|
|
32
|
+
import { n as U, t as W } from "./Checkbox-wlH6EGWW.js";
|
|
33
|
+
import { Modal as G } from "./components/Modal/index.js";
|
|
34
|
+
import { t as K } from "./RoadmapDetails-CfayA5CZ.js";
|
|
35
|
+
import { ModalContactFooter as q } from "./components/Modal/ModalContactFooter.js";
|
|
36
|
+
import { useOptionalSidebarLayout as J, useSidebarLayout as Y } from "./components/Sidebar/context.js";
|
|
37
|
+
import { SidebarLayout as X, SidebarMain as Z } from "./components/Sidebar/SidebarLayout.js";
|
|
38
|
+
import { SidebarResizer as Q } from "./components/Sidebar/SidebarResizer.js";
|
|
39
|
+
import { Sidebar as $, SidebarBody as ee, SidebarHeader as te, SidebarSection as ne } from "./components/Sidebar/Sidebar.js";
|
|
40
|
+
import { NavItem as re } from "./components/Sidebar/NavItem.js";
|
|
41
|
+
import { NavGroup as ie } from "./components/Sidebar/NavGroup.js";
|
|
42
|
+
import { NavDisclosure as ae } from "./components/Sidebar/NavDisclosure.js";
|
|
40
43
|
import "./components/Sidebar/index.js";
|
|
41
|
-
import { ThemeLoader as
|
|
42
|
-
export { a as Box, o as Button, p as ButtonGroup,
|
|
44
|
+
import { ThemeLoader as oe, themeLoaderScript as se } from "./components/ThemeLoader/index.js";
|
|
45
|
+
export { a as Box, o as Button, p as ButtonGroup, W as Checkbox, U as CheckboxGroup, l as CodeBlock, b as Container, s as CopyCode, x as DiscordInvite, O as Dropdown, E as DropdownItem, D as DropdownSeparator, F as Footer, y as FormGroup, _ as FormRow, c as FrameworkIcon, I as GPTInput, z as Header, S as Heading, u as Icon, v as InputGrouped, m as InputSolo, j as Label, d as Link, w as Logo, G as Modal, q as ModalContactFooter, ae as NavDisclosure, ie as NavGroup, re as NavItem, A as NewTag, T as NewsletterSignup, L as Notification, k as PrefPanel, f as ProductIcon, H as RadioBox, V as RadioBoxGroup, K as RoadmapDetails, h as SearchDropdown, g as SelectGrouped, $ as Sidebar, ee as SidebarBody, te as SidebarHeader, X as SidebarLayout, Z as SidebarMain, Q as SidebarResizer, ne as SidebarSection, R as SubHeader, B as Tabs, oe as ThemeLoader, i as ThemeProvider, C as Typography, M as VideoCover, N as VideoPlayer, P as VideoPlayerModal, se as themeLoaderScript, n as useClipboard, t as useNextTheme, J as useOptionalSidebarLayout, Y as useSidebarLayout, r as useSuccessFlash, e as useTheme };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { r as e } from "./chunk-jwUa06l-.js";
|
|
2
|
-
import { r as t, t as n } from "./create-element-
|
|
2
|
+
import { r as t, t as n } from "./create-element-WbENDceu.js";
|
|
3
3
|
import r from "react";
|
|
4
4
|
//#region node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js
|
|
5
5
|
function i(e, t) {
|
package/dist/scss/variables.scss
CHANGED
|
@@ -300,7 +300,7 @@ $body-1000: var(--typography-size-1000);
|
|
|
300
300
|
--button-colors-plain-stroke-inner-default: rgba(0, 0, 0, 0.12);
|
|
301
301
|
--button-colors-plain-stroke-outer-default: transparent;
|
|
302
302
|
--button-colors-plain-stroke-outer-hover: var(--primitives-neutral-200);
|
|
303
|
-
--button-colors-plain-stroke-outer-disabled:
|
|
303
|
+
--button-colors-plain-stroke-outer-disabled: transparent;
|
|
304
304
|
--button-colors-plain-stroke-outer-pressed: var(--primitives-neutral-200);
|
|
305
305
|
|
|
306
306
|
--button-colors-transparent-background-default: rgba(255, 255, 255, 0);
|
|
@@ -496,21 +496,22 @@ $body-1000: var(--typography-size-1000);
|
|
|
496
496
|
--button-transparent-border-hover: #00000060;
|
|
497
497
|
|
|
498
498
|
--button-colors-neutral-background-default: var(--primitives-neutral-50);
|
|
499
|
-
--button-colors-neutral-background-disabled: var(--primitives-neutral-
|
|
499
|
+
--button-colors-neutral-background-disabled: var(--primitives-neutral-750);
|
|
500
500
|
--button-colors-neutral-background-focus: var(--primitives-neutral-0);
|
|
501
501
|
--button-colors-neutral-background-hover: var(--primitives-neutral-0);
|
|
502
502
|
--button-colors-neutral-background-pressed: var(--primitives-neutral-0);
|
|
503
503
|
--button-colors-neutral-stroke-inner: #ffffff0a;
|
|
504
504
|
--button-colors-neutral-stroke-outer-default: var(--primitives-neutral-1000);
|
|
505
|
+
--button-colors-neutral-stroke-outer-disabled: var(--primitives-neutral-1000);
|
|
505
506
|
--button-colors-neutral-stroke-outer-hover: var(--primitives-neutral-1000);
|
|
506
507
|
--button-colors-neutral-text-default: var(--primitives-neutral-1000);
|
|
507
|
-
--button-colors-neutral-text-disabled: var(--primitives-neutral-
|
|
508
|
+
--button-colors-neutral-text-disabled: var(--primitives-neutral-400);
|
|
508
509
|
--button-colors-neutral-text-focus: var(--primitives-neutral-1000);
|
|
509
510
|
--button-colors-neutral-text-hover: var(--primitives-neutral-1000);
|
|
510
511
|
--button-colors-neutral-text-pressed: var(--primitives-neutral-1000);
|
|
511
512
|
|
|
512
513
|
--button-colors-soft-background-default: var(--primitives-neutral-800);
|
|
513
|
-
--button-colors-soft-background-disabled: var(--primitives-neutral-
|
|
514
|
+
--button-colors-soft-background-disabled: var(--primitives-neutral-750);
|
|
514
515
|
--button-colors-soft-background-focus: var(--primitives-neutral-700);
|
|
515
516
|
--button-colors-soft-background-hover: var(--primitives-neutral-700);
|
|
516
517
|
--button-colors-soft-background-pressed: var(--primitives-neutral-700);
|
|
@@ -518,7 +519,7 @@ $body-1000: var(--typography-size-1000);
|
|
|
518
519
|
--button-colors-soft-stroke-inner-inner-dark: 2px;
|
|
519
520
|
--button-colors-soft-stroke-inner-inner-white: 0px;
|
|
520
521
|
--button-colors-soft-stroke-outer-default: var(--primitives-neutral-950);
|
|
521
|
-
--button-colors-soft-stroke-outer-disabled: var(--primitives-neutral-
|
|
522
|
+
--button-colors-soft-stroke-outer-disabled: var(--primitives-neutral-1000);
|
|
522
523
|
--button-colors-soft-stroke-outer-hover: var(--primitives-neutral-950);
|
|
523
524
|
--button-colors-soft-stroke-outer-pressed: var(--primitives-neutral-950);
|
|
524
525
|
--button-colors-soft-text-default: var(--primitives-neutral-0);
|
|
@@ -536,11 +537,11 @@ $body-1000: var(--typography-size-1000);
|
|
|
536
537
|
--button-colors-plain-text-hover: var(--primitives-neutral-0);
|
|
537
538
|
--button-colors-plain-text-pressed: var(--primitives-neutral-0);
|
|
538
539
|
--button-colors-plain-text-focus: var(--primitives-neutral-0);
|
|
539
|
-
--button-colors-plain-text-disabled: var(--primitives-neutral-
|
|
540
|
+
--button-colors-plain-text-disabled: var(--primitives-neutral-400);
|
|
540
541
|
--button-colors-plain-stroke-inner-default: rgba(0, 0, 0, 0.87);
|
|
541
542
|
--button-colors-plain-stroke-outer-default: transparent;
|
|
542
543
|
--button-colors-plain-stroke-outer-hover: var(--primitives-neutral-700);
|
|
543
|
-
--button-colors-plain-stroke-outer-disabled:
|
|
544
|
+
--button-colors-plain-stroke-outer-disabled: transparent;
|
|
544
545
|
--button-colors-plain-stroke-outer-pressed: var(--primitives-neutral-800);
|
|
545
546
|
|
|
546
547
|
--button-colors-transparent-background-default: rgba(255, 255, 255, 0.02);
|
|
@@ -554,7 +555,7 @@ $body-1000: var(--typography-size-1000);
|
|
|
554
555
|
--button-colors-transparent-text-hover: var(--primitives-neutral-0);
|
|
555
556
|
--button-colors-transparent-text-pressed: var(--primitives-neutral-0);
|
|
556
557
|
--button-colors-transparent-text-focus: var(--primitives-neutral-0);
|
|
557
|
-
--button-colors-transparent-text-disabled: var(--primitives-neutral-
|
|
558
|
+
--button-colors-transparent-text-disabled: var(--primitives-neutral-400);
|
|
558
559
|
--button-colors-transparent-stroke-inner-default: rgba(255, 255, 255, 0.08);
|
|
559
560
|
--button-colors-transparent-stroke-inner-hover: rgba(255, 255, 255, 0.08);
|
|
560
561
|
--button-colors-transparent-stroke-outer-default: rgba(0, 0, 0, 0.5);
|
|
@@ -570,39 +571,39 @@ $body-1000: var(--typography-size-1000);
|
|
|
570
571
|
--button-colors-brand-background-hover: var(--primitives-brand-500);
|
|
571
572
|
--button-colors-brand-background-pressed: var(--primitives-brand-700);
|
|
572
573
|
--button-colors-brand-background-focus: var(--primitives-brand-600);
|
|
573
|
-
--button-colors-brand-background-disabled: var(--primitives-neutral-
|
|
574
|
+
--button-colors-brand-background-disabled: var(--primitives-neutral-750);
|
|
574
575
|
--button-colors-brand-text-default: var(--primitives-neutral-0);
|
|
575
576
|
--button-colors-brand-stroke-inner-default: rgba(255, 255, 255, 0.2);
|
|
576
577
|
--button-colors-brand-stroke-outer-default: var(--primitives-brand-900);
|
|
577
578
|
--button-colors-brand-stroke-outer-hover: var(--primitives-brand-1000);
|
|
578
|
-
--button-colors-brand-stroke-outer-disabled: var(--primitives-neutral-
|
|
579
|
+
--button-colors-brand-stroke-outer-disabled: var(--primitives-neutral-1000);
|
|
579
580
|
--button-colors-brand-stroke-outer-pressed: var(--primitives-neutral-0);
|
|
580
581
|
--button-colors-brand-text-hover: var(--primitives-neutral-0);
|
|
581
582
|
--button-colors-brand-text-pressed: var(--primitives-neutral-0);
|
|
582
583
|
--button-colors-brand-text-focus: var(--primitives-neutral-0);
|
|
583
|
-
--button-colors-brand-text-disabled: var(--primitives-neutral-
|
|
584
|
+
--button-colors-brand-text-disabled: var(--primitives-neutral-400);
|
|
584
585
|
|
|
585
586
|
--button-colors-success-background-default: var(--primitives-success-600);
|
|
586
587
|
--button-colors-success-background-hover: var(--primitives-success-500);
|
|
587
588
|
--button-colors-success-background-pressed: var(--primitives-success-700);
|
|
588
589
|
--button-colors-success-background-focus: var(--primitives-success-600);
|
|
589
|
-
--button-colors-success-background-disabled: var(--primitives-neutral-
|
|
590
|
+
--button-colors-success-background-disabled: var(--primitives-neutral-750);
|
|
590
591
|
--button-colors-success-text-default: var(--primitives-neutral-0);
|
|
591
592
|
--button-colors-success-stroke-inner-default: rgba(255, 255, 255, 0.12);
|
|
592
593
|
--button-colors-success-stroke-outer-default: var(--primitives-success-1000);
|
|
593
594
|
--button-colors-success-stroke-outer-hover: var(--primitives-success-700);
|
|
594
|
-
--button-colors-success-stroke-outer-disabled: var(--primitives-neutral-
|
|
595
|
+
--button-colors-success-stroke-outer-disabled: var(--primitives-neutral-1000);
|
|
595
596
|
--button-colors-success-stroke-outer-pressed: var(--primitives-neutral-200);
|
|
596
597
|
--button-colors-success-text-hover: var(--primitives-neutral-0);
|
|
597
598
|
--button-colors-success-text-pressed: var(--primitives-neutral-0);
|
|
598
599
|
--button-colors-success-text-focus: var(--primitives-neutral-0);
|
|
599
|
-
--button-colors-success-text-disabled: var(--primitives-neutral-
|
|
600
|
+
--button-colors-success-text-disabled: var(--primitives-neutral-400);
|
|
600
601
|
|
|
601
602
|
--button-colors-attention-background-default: var(--primitives-attention-600);
|
|
602
603
|
--button-colors-attention-background-hover: var(--primitives-attention-500);
|
|
603
604
|
--button-colors-attention-background-pressed: var(--primitives-attention-600);
|
|
604
605
|
--button-colors-attention-background-focus: var(--primitives-attention-600);
|
|
605
|
-
--button-colors-attention-background-disabled: var(--primitives-neutral-
|
|
606
|
+
--button-colors-attention-background-disabled: var(--primitives-neutral-750);
|
|
606
607
|
--button-colors-attention-text-default: var(--primitives-neutral-0);
|
|
607
608
|
--button-colors-attention-stroke-inner-default: rgba(255, 255, 255, 0.12);
|
|
608
609
|
--button-colors-attention-stroke-outer-default: var(
|
|
@@ -610,28 +611,28 @@ $body-1000: var(--typography-size-1000);
|
|
|
610
611
|
);
|
|
611
612
|
--button-colors-attention-stroke-outer-hover: var(--primitives-attention-600);
|
|
612
613
|
--button-colors-attention-stroke-outer-disabled: var(
|
|
613
|
-
--primitives-neutral-
|
|
614
|
+
--primitives-neutral-1000
|
|
614
615
|
);
|
|
615
616
|
--button-colors-attention-stroke-outer-pressed: var(--primitives-neutral-200);
|
|
616
617
|
--button-colors-attention-text-hover: var(--primitives-neutral-0);
|
|
617
618
|
--button-colors-attention-text-pressed: var(--primitives-neutral-0);
|
|
618
619
|
--button-colors-attention-text-focus: var(--primitives-neutral-0);
|
|
619
|
-
--button-colors-attention-text-disabled: var(--primitives-neutral-
|
|
620
|
+
--button-colors-attention-text-disabled: var(--primitives-neutral-400);
|
|
620
621
|
|
|
621
622
|
--button-colors-danger-background-default: var(--primitives-danger-600);
|
|
622
623
|
--button-colors-danger-background-hover: var(--primitives-danger-500);
|
|
623
624
|
--button-colors-danger-background-pressed: var(--primitives-danger-700);
|
|
624
625
|
--button-colors-danger-background-focus: var(--primitives-danger-600);
|
|
625
|
-
--button-colors-danger-background-disabled: var(--primitives-neutral-
|
|
626
|
+
--button-colors-danger-background-disabled: var(--primitives-neutral-750);
|
|
626
627
|
--button-colors-danger-text-default: var(--primitives-neutral-0);
|
|
627
628
|
--button-colors-danger-text-hover: var(--primitives-neutral-0);
|
|
628
629
|
--button-colors-danger-text-pressed: var(--primitives-neutral-0);
|
|
629
630
|
--button-colors-danger-text-focus: var(--primitives-neutral-0);
|
|
630
|
-
--button-colors-danger-text-disabled: var(--primitives-neutral-
|
|
631
|
+
--button-colors-danger-text-disabled: var(--primitives-neutral-400);
|
|
631
632
|
--button-colors-danger-stroke-inner-default: rgba(255, 255, 255, 0.12);
|
|
632
633
|
--button-colors-danger-stroke-outer-default: var(--primitives-danger-700);
|
|
633
634
|
--button-colors-danger-stroke-outer-hover: var(--primitives-danger-600);
|
|
634
|
-
--button-colors-danger-stroke-outer-disabled: var(--primitives-neutral-
|
|
635
|
+
--button-colors-danger-stroke-outer-disabled: var(--primitives-neutral-1000);
|
|
635
636
|
--button-colors-danger-stroke-outer-pressed: var(--primitives-neutral-200);
|
|
636
637
|
|
|
637
638
|
--tags-neutral-background: var(--primitives-neutral-600);
|
package/package.json
CHANGED
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
import { n as e } from "./esm-VMwHsplm.js";
|
|
2
|
-
import { s as t } from "./fa-B95RwBpz.js";
|
|
3
|
-
import { t as n } from "./dist-J9cXmrDi.js";
|
|
4
|
-
import { a as r, i, n as a, o, r as s, s as c, t as l } from "./dist-f0z6DapB.js";
|
|
5
|
-
import { useEffect as u, useRef as d, useState as f } from "react";
|
|
6
|
-
import { jsx as p, jsxs as m } from "react/jsx-runtime";
|
|
7
|
-
var h = {
|
|
8
|
-
dialogClose: "elwCNG_dialogClose",
|
|
9
|
-
dialogOverlay: "elwCNG_dialogOverlay",
|
|
10
|
-
show: "elwCNG_show",
|
|
11
|
-
youtube: "elwCNG_youtube",
|
|
12
|
-
youtubeContent: "elwCNG_youtubeContent",
|
|
13
|
-
youtubeCopy: "elwCNG_youtubeCopy",
|
|
14
|
-
youtubeMedia: "elwCNG_youtubeMedia",
|
|
15
|
-
youtubePreview: "elwCNG_youtubePreview",
|
|
16
|
-
youtubePreviewVisible: "elwCNG_youtubePreviewVisible"
|
|
17
|
-
}, g = "Meet the team behind the charts", _ = "Video: Meet the team behind the charts", v = "https://player.vimeo.com/video/955924808?autoplay=1", y = "https://shop.highcharts.com/footer.webm", b = "200px";
|
|
18
|
-
function x() {
|
|
19
|
-
let x = d(null), [S, C] = f(!1), [w, T] = f(!1);
|
|
20
|
-
return u(() => {
|
|
21
|
-
let e = x.current;
|
|
22
|
-
if (S || !e) return;
|
|
23
|
-
if (typeof IntersectionObserver > "u") {
|
|
24
|
-
C(!0);
|
|
25
|
-
return;
|
|
26
|
-
}
|
|
27
|
-
let t = new IntersectionObserver(([e]) => {
|
|
28
|
-
e?.isIntersecting && (C(!0), t.disconnect());
|
|
29
|
-
}, { rootMargin: b });
|
|
30
|
-
return t.observe(e), () => t.disconnect();
|
|
31
|
-
}, [S]), /* @__PURE__ */ m(l, {
|
|
32
|
-
onOpenChange: (e) => e && C(!0),
|
|
33
|
-
children: [/* @__PURE__ */ p(c, {
|
|
34
|
-
asChild: !0,
|
|
35
|
-
children: /* @__PURE__ */ m("button", {
|
|
36
|
-
ref: x,
|
|
37
|
-
type: "button",
|
|
38
|
-
className: h.youtube,
|
|
39
|
-
"aria-label": g,
|
|
40
|
-
onPointerEnter: () => C(!0),
|
|
41
|
-
onFocus: () => C(!0),
|
|
42
|
-
children: [/* @__PURE__ */ p("span", {
|
|
43
|
-
className: h.youtubeMedia,
|
|
44
|
-
"aria-hidden": "true",
|
|
45
|
-
children: S && /* @__PURE__ */ p("video", {
|
|
46
|
-
className: `${h.youtubePreview} ${w ? h.youtubePreviewVisible : ""}`,
|
|
47
|
-
autoPlay: !0,
|
|
48
|
-
loop: !0,
|
|
49
|
-
muted: !0,
|
|
50
|
-
playsInline: !0,
|
|
51
|
-
preload: "metadata",
|
|
52
|
-
onCanPlay: () => T(!0),
|
|
53
|
-
children: /* @__PURE__ */ p("source", {
|
|
54
|
-
src: y,
|
|
55
|
-
type: "video/webm"
|
|
56
|
-
})
|
|
57
|
-
})
|
|
58
|
-
}), /* @__PURE__ */ m("span", {
|
|
59
|
-
className: h.youtubeCopy,
|
|
60
|
-
children: [/* @__PURE__ */ p(t, {}), /* @__PURE__ */ p("p", { children: g })]
|
|
61
|
-
})]
|
|
62
|
-
})
|
|
63
|
-
}), /* @__PURE__ */ m(r, { children: [/* @__PURE__ */ p(i, { className: h.dialogOverlay }), /* @__PURE__ */ m(s, {
|
|
64
|
-
className: h.youtubeContent,
|
|
65
|
-
"aria-describedby": void 0,
|
|
66
|
-
children: [
|
|
67
|
-
/* @__PURE__ */ p(n, {
|
|
68
|
-
asChild: !0,
|
|
69
|
-
children: /* @__PURE__ */ p(o, { children: _ })
|
|
70
|
-
}),
|
|
71
|
-
/* @__PURE__ */ p(a, {
|
|
72
|
-
className: h.dialogClose,
|
|
73
|
-
"aria-label": "Close",
|
|
74
|
-
children: /* @__PURE__ */ p(e, {
|
|
75
|
-
width: 20,
|
|
76
|
-
height: 20
|
|
77
|
-
})
|
|
78
|
-
}),
|
|
79
|
-
/* @__PURE__ */ p("iframe", {
|
|
80
|
-
width: "100%",
|
|
81
|
-
height: "100%",
|
|
82
|
-
src: v,
|
|
83
|
-
title: _,
|
|
84
|
-
allow: "autoplay",
|
|
85
|
-
allowFullScreen: !0
|
|
86
|
-
})
|
|
87
|
-
]
|
|
88
|
-
})] })]
|
|
89
|
-
});
|
|
90
|
-
}
|
|
91
|
-
//#endregion
|
|
92
|
-
export { x as t };
|