@aic-kits/react 0.21.0 → 0.22.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.
@@ -1,15 +1,11 @@
1
1
  import { default as React } from 'react';
2
- import { Color, BorderWidth } from '../../theme';
3
- import { NavItemProps } from './types';
4
- interface NavDropdownMenuProps {
5
- items: NavItemProps[];
6
- onClick?: (item: NavItemProps, index: number) => void;
7
- }
2
+ import { Color } from '../../theme';
3
+ import { NavItemContainerProps } from './NavItem';
8
4
  export interface StyledDropdownMenuContainerProps {
9
5
  $themeBackgroundColor: Color;
10
6
  $themeRadius: number;
11
- $themeBorderColor: Color;
12
- $themeBorderWidth: BorderWidth;
7
+ $themeMaxHeight: number;
8
+ $themeZIndex: number;
9
+ $isOpen: boolean;
13
10
  }
14
- export declare const NavDropdownMenu: React.FC<NavDropdownMenuProps>;
15
- export {};
11
+ export declare const NavDropdownMenu: React.FC<NavItemContainerProps>;
@@ -1,4 +1,8 @@
1
1
  import { NavItemProps } from './types';
2
- export declare const NavItem: ({ label, isActive, isLoading, onClick, size, }: NavItemProps & {
2
+ export interface NavItemContainerProps extends NavItemProps {
3
+ isDropdownOpen?: boolean;
4
+ onMouseEnter?: () => void;
5
+ }
6
+ export declare const NavItem: ({ label, isActive, isLoading, dropdownItems, onClick, size, isDropdownOpen, onMouseEnter, }: NavItemContainerProps & {
3
7
  size?: "large" | "medium";
4
8
  }) => import("react/jsx-runtime").JSX.Element;
@@ -21,6 +21,10 @@ export interface NavItemProps {
21
21
  * Dropdown items
22
22
  */
23
23
  dropdownItems?: NavItemProps[];
24
+ /**
25
+ * Maximum height of the dropdown
26
+ */
27
+ dropdownMaxHeight?: number | Size;
24
28
  }
25
29
  export interface HeaderProps extends BoxProps {
26
30
  /**
@@ -0,0 +1,13 @@
1
+ import { VimeoCallbacks, VimeoConfig } from './types';
2
+ /**
3
+ * Hook to merge theme config with component config
4
+ */
5
+ export declare const useMergedConfig: (config?: VimeoConfig) => VimeoConfig;
6
+ /**
7
+ * Hook to manage Vimeo player initialization and cleanup
8
+ */
9
+ export declare const useVimeoPlayer: (containerRef: React.RefObject<HTMLDivElement | null>, videoId: string, width: string | number, height: string | number, config: VimeoConfig) => import('react').RefObject<any>;
10
+ /**
11
+ * Hook to manage Vimeo player event listeners
12
+ */
13
+ export declare const useVimeoEventListeners: (playerRef: React.RefObject<any>, callbacks?: VimeoCallbacks) => void;
@@ -1,17 +1,45 @@
1
1
  import { VimeoConfig } from './types';
2
2
  /**
3
- * Builds the Vimeo embed URL with all necessary parameters
4
- *
5
- * @param videoId - The Vimeo video ID
6
- * @param config - Configuration for the Vimeo player
7
- * @returns A string containing the complete Vimeo embed URL
3
+ * Generate a unique player ID
8
4
  */
9
- export declare function buildVimeoEmbedUrl(videoId: string, config?: VimeoConfig): string;
5
+ export declare const generatePlayerId: () => string;
10
6
  /**
11
- * Creates an event handler for Vimeo player iframe messages
12
- *
13
- * @param iframe - The iframe element
14
- * @param onMessageCallback - Callback function for handling Vimeo player messages
15
- * @returns A function to remove the event listener
7
+ * Build player options for Vimeo Player constructor
16
8
  */
17
- export declare function createVimeoMessageHandler(iframe: HTMLIFrameElement | null, onMessageCallback: (event: MessageEvent) => void): () => void;
9
+ export declare const buildPlayerOptions: (videoId: string, width: string | number, height: string | number, config: VimeoConfig) => {
10
+ autoplay?: boolean;
11
+ muted?: boolean;
12
+ loop?: boolean;
13
+ title?: boolean;
14
+ byline?: boolean;
15
+ portrait?: boolean;
16
+ dnt?: boolean;
17
+ color?: string;
18
+ playsinline?: boolean;
19
+ background?: boolean;
20
+ controls?: boolean;
21
+ pip?: boolean;
22
+ responsive?: boolean;
23
+ id: number;
24
+ width: number | undefined;
25
+ height: number | undefined;
26
+ };
27
+ /**
28
+ * Enforce config settings after player creation
29
+ * (video-level settings can override embed parameters)
30
+ */
31
+ export declare const enforcePlayerConfig: (player: any, config: VimeoConfig) => Promise<void>;
32
+ /**
33
+ * Create event handlers mapping for Vimeo player events
34
+ */
35
+ export declare const createEventHandlers: (callbacks: any) => {
36
+ ready: any;
37
+ play: any;
38
+ pause: any;
39
+ ended: any;
40
+ timeupdate: ((data: any) => void) | undefined;
41
+ progress: ((data: any) => void) | undefined;
42
+ seeking: any;
43
+ seeked: any;
44
+ error: any;
45
+ };