@okam/stack-ui 1.12.1 → 1.13.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,5 +1,6 @@
1
1
  import React from 'react';
2
- import type { TButtonProps } from './interface';
2
+ import type { TAnchorPropsProps, TButtonProps } from './interface';
3
+ export declare const Anchor: React.ForwardRefExoticComponent<TAnchorPropsProps & React.RefAttributes<HTMLButtonElement & HTMLAnchorElement>>;
3
4
  export declare const ButtonWithForwardRef: React.ForwardRefExoticComponent<TButtonProps & React.RefAttributes<HTMLButtonElement & HTMLAnchorElement>>;
4
5
  declare const _default: React.MemoExoticComponent<(props: TButtonProps) => import("react/jsx-runtime").JSX.Element>;
5
6
  export default _default;
@@ -1,4 +1,5 @@
1
1
  import type { PressEvent } from '@react-types/shared';
2
+ import type { LinkProps } from 'next/link';
2
3
  import type React from 'react';
3
4
  import type { TDefaultComponent } from '../../types/components';
4
5
  export interface TButtonProps extends TDefaultComponent {
@@ -14,3 +15,6 @@ export interface TButtonProps extends TDefaultComponent {
14
15
  role?: string;
15
16
  isDisabled?: boolean;
16
17
  }
18
+ export interface TAnchorPropsProps extends TButtonProps {
19
+ nextLinkProps?: LinkProps;
20
+ }
@@ -0,0 +1,3 @@
1
+ import type { TMenuItemsProps } from '../interface';
2
+ declare const MenuItems: (props: TMenuItemsProps) => import("react/jsx-runtime").JSX.Element;
3
+ export default MenuItems;
@@ -0,0 +1,3 @@
1
+ import type { TDefaultComponent } from 'libs/stack-ui/src/types/components';
2
+ declare const TabContainer: (props: TDefaultComponent) => import("react/jsx-runtime").JSX.Element;
3
+ export default TabContainer;
@@ -0,0 +1,3 @@
1
+ import type TMenuProps from './interface';
2
+ declare const Menu: ({ id, children, beforeTabContent, TransitonAnimation, themeName, tokens, customTheme, }: TMenuProps) => import("react/jsx-runtime").JSX.Element;
3
+ export default Menu;
@@ -0,0 +1,27 @@
1
+ import type { AriaTabListProps } from '@react-types/tabs';
2
+ import type { LinkProps } from 'next/link';
3
+ import type React from 'react';
4
+ import type { Maybe, TDefaultComponent } from '../../types/components';
5
+ export type MenuProps = {
6
+ id: string;
7
+ children: React.ReactNode;
8
+ beforeTabContent?: React.ReactNode;
9
+ TransitonAnimation: (props: never) => JSX.Element;
10
+ };
11
+ export type TMenuProps = AriaTabListProps<MenuProps> & MenuProps & TDefaultComponent;
12
+ export type PartialHtmlBaseElement = Omit<Partial<HTMLBaseElement>, 'id' | 'onClick' | 'target' | 'role' | 'children'>;
13
+ export interface IMenuItemProp {
14
+ childItems?: Maybe<TMenuItemProps[] | null>;
15
+ id?: string;
16
+ target?: string | null;
17
+ path?: string;
18
+ label?: string;
19
+ nextLinkProps?: LinkProps;
20
+ onClick?: () => void;
21
+ }
22
+ export type TMenuItemProps = IMenuItemProp & TDefaultComponent & PartialHtmlBaseElement;
23
+ export interface TMenuItemsProps extends TDefaultComponent {
24
+ menuItems?: TMenuItemProps[] | null;
25
+ children?: React.ReactNode;
26
+ }
27
+ export default TMenuProps;
@@ -4,10 +4,10 @@ import type { Placement } from 'react-aria';
4
4
  import type { TDefaultComponent } from '../../types/components';
5
5
  import type { TButtonProps } from '../Button/interface';
6
6
  export interface IPopoverProps extends TDefaultComponent {
7
- isOpen: boolean;
8
- onClose: () => void;
7
+ isOpen?: boolean;
8
+ onClose?: () => void;
9
9
  children: React.ReactElement | React.ReactElement[];
10
- positionProps: DOMAttributes;
10
+ positionProps?: DOMAttributes;
11
11
  isDismissable?: boolean;
12
12
  shouldCloseOnBlur?: boolean;
13
13
  }
@@ -5,5 +5,7 @@ export interface ISidePanelProps extends HTMLAttributes<HTMLElement> {
5
5
  id: string;
6
6
  children?: React.ReactNode;
7
7
  closeBtnRender?: () => React.ReactNode;
8
+ TransitionAnimation?: (props: unknown) => JSX.Element;
9
+ onCloseCallBack?: () => void;
8
10
  }
9
11
  export type TSidePanelProps = ISidePanelProps & TDefaultComponent;
@@ -0,0 +1,4 @@
1
+ import type { TDefaultComponent } from 'libs/stack-ui/src/types/components';
2
+ import type { TTabPanel } from '../../interface';
3
+ declare function TabPanel({ state, customTheme, themeName, tokens, ...props }: TTabPanel & TDefaultComponent): import("react/jsx-runtime").JSX.Element;
4
+ export default TabPanel;
@@ -0,0 +1,18 @@
1
+ import type { TabListState } from '@react-stately/tabs';
2
+ import type { Node } from '@react-types/shared';
3
+ import type { AriaTabListProps, AriaTabPanelProps } from '@react-types/tabs';
4
+ import type React from 'react';
5
+ export interface TTab {
6
+ item: Node<object>;
7
+ state: TabListState<object>;
8
+ }
9
+ export interface TTabPanel extends AriaTabPanelProps {
10
+ state: TabListState<object>;
11
+ }
12
+ export interface TTabList extends AriaTabListProps<object> {
13
+ label?: React.ReactNode | string;
14
+ }
15
+ export interface TPreviousTabState {
16
+ previousSelectedHash: string;
17
+ previousSelectedKey: string;
18
+ }
package/index.d.ts CHANGED
@@ -19,6 +19,10 @@ export { default as Calendar } from './components/Calendar';
19
19
  export { default as Modal } from './components/Modal';
20
20
  export { default as Radio, ReactHookFormRadio } from './components/fields/Radio';
21
21
  export { default as RadioGroup } from './components/fields/RadioGroup';
22
+ export { default as RenderWithSlide } from './transitions/RenderWithSlide';
23
+ export { default as Menu } from './components/Menu';
24
+ export { default as MenuItems } from './components/Menu/components/MenuItems';
25
+ export { default as TabContainer } from './components/Menu/components/TabContainer';
22
26
  export { default as DirectusImg } from './components/DirectusImg';
23
27
  export { default as Img } from './components/Img';
24
28
  export * from './components/icons';
@@ -26,10 +30,12 @@ export { makeTheme, createThemeProvider, useTheme, ThemeContextProvider } from '
26
30
  export { default as useThemeContext } from './providers/Theme/hooks';
27
31
  export { useIsClient, IsClientContextProvider } from './providers/Client';
28
32
  export { useSidePanel, SidePanelContextProvider } from './providers/SidePanel';
33
+ export { MenuContextProvider, useMenu } from './providers/Menu';
29
34
  export { RadioGroupProvider, useRadioGroupCtx } from './providers/RadioGroup/RadioGroup';
30
35
  export type { TButtonProps } from './components/Button/interface';
31
36
  export type { TTypographyProps } from './components/Typography/interface';
32
37
  export type { TTheme, TToken, TCustomTheme, TStyle, TDefaultTheme, TStyleCollection, TStyleValue, } from './providers/Theme/interface';
38
+ export type { TMenuProps, TMenuItemProps } from './components/Menu/interface';
33
39
  export { default as generateUtmTags } from './components/ShareButton/utils/generateUtmTags';
34
40
  export { default as useWindow } from './components/ShareButton/utils/useWindow';
35
41
  export { default as useFacebookShareUrl } from './components/ShareButton/utils/useFacebookShareUrl';