@overmap-ai/blocks 1.0.28 → 1.0.29-alpha.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/README.md +3 -3
- package/dist/DialogMenu/components/DialogCommandMenu.d.ts +1 -1
- package/dist/DialogMenu/components/DialogMultiSelectMenu.d.ts +1 -1
- package/dist/DialogMenu/components/DialogSelectMenu.d.ts +1 -1
- package/dist/DialogMenu/root/Root.d.ts +1 -1
- package/dist/ItemStack/Group.d.ts +9 -0
- package/dist/ItemStack/Item.d.ts +4 -0
- package/dist/OvermapDropdownMenu/DropdownMenu.d.ts +8 -0
- package/dist/OvermapDropdownMenu/index.d.ts +1 -0
- package/dist/OvermapDropdownMultiSelect/DropdownMultiSelect.d.ts +8 -0
- package/dist/OvermapDropdownMultiSelect/index.d.ts +1 -0
- package/dist/OvermapDropdownSelect/DropdownSelect.d.ts +8 -0
- package/dist/OvermapDropdownSelect/index.d.ts +1 -0
- package/dist/OvermapMenu/ClickTrigger/ClickTrigger.d.ts +3 -0
- package/dist/OvermapMenu/ClickTrigger/index.d.ts +1 -0
- package/dist/OvermapMenu/Content/Content.d.ts +3 -0
- package/dist/OvermapMenu/Content/context.d.ts +14 -0
- package/dist/OvermapMenu/Content/index.d.ts +2 -0
- package/dist/OvermapMenu/ContextTrigger/ContextTrigger.d.ts +3 -0
- package/dist/OvermapMenu/ContextTrigger/index.d.ts +1 -0
- package/dist/OvermapMenu/Group/Group.d.ts +3 -0
- package/dist/OvermapMenu/Group/index.d.ts +1 -0
- package/dist/OvermapMenu/Input/Input.d.ts +3 -0
- package/dist/OvermapMenu/Input/index.d.ts +1 -0
- package/dist/OvermapMenu/Item/Item.d.ts +3 -0
- package/dist/OvermapMenu/Item/index.d.ts +1 -0
- package/dist/OvermapMenu/MultiSelectGroup/MultiSelectGroup.d.ts +3 -0
- package/dist/OvermapMenu/MultiSelectGroup/index.d.ts +1 -0
- package/dist/OvermapMenu/MultiSelectItem/MultiSelectItem.d.ts +3 -0
- package/dist/OvermapMenu/MultiSelectItem/index.d.ts +1 -0
- package/dist/OvermapMenu/PageContent/PageContent.d.ts +3 -0
- package/dist/OvermapMenu/PageContent/index.d.ts +1 -0
- package/dist/OvermapMenu/PageTrigger/PageTrigger.d.ts +3 -0
- package/dist/OvermapMenu/PageTrigger/index.d.ts +1 -0
- package/dist/OvermapMenu/Pages/Pages.d.ts +3 -0
- package/dist/OvermapMenu/Pages/context.d.ts +8 -0
- package/dist/OvermapMenu/Pages/index.d.ts +2 -0
- package/dist/OvermapMenu/Scroll/Scroll.d.ts +2 -0
- package/dist/OvermapMenu/Scroll/index.d.ts +1 -0
- package/dist/OvermapMenu/SelectGroup/SelectGroup.d.ts +3 -0
- package/dist/OvermapMenu/SelectGroup/index.d.ts +1 -0
- package/dist/OvermapMenu/SelectItem/SelectItem.d.ts +3 -0
- package/dist/OvermapMenu/SelectItem/index.d.ts +1 -0
- package/dist/OvermapMenu/SelectedIndicator/SelectedIndicator.d.ts +2 -0
- package/dist/OvermapMenu/SelectedIndicator/context.d.ts +7 -0
- package/dist/OvermapMenu/SelectedIndicator/index.d.ts +2 -0
- package/dist/OvermapMenu/Separator/Separator.d.ts +3 -0
- package/dist/OvermapMenu/Separator/index.d.ts +1 -0
- package/dist/OvermapMenu/Sub/Sub.d.ts +3 -0
- package/dist/OvermapMenu/Sub/context.d.ts +24 -0
- package/dist/OvermapMenu/Sub/index.d.ts +2 -0
- package/dist/OvermapMenu/SubContent/SubContent.d.ts +3 -0
- package/dist/OvermapMenu/SubContent/index.d.ts +1 -0
- package/dist/OvermapMenu/SubTrigger/SubTrigger.d.ts +3 -0
- package/dist/OvermapMenu/SubTrigger/index.d.ts +1 -0
- package/dist/OvermapMenu/VirtualTrigger/VirtualTrigger.d.ts +3 -0
- package/dist/OvermapMenu/VirtualTrigger/index.d.ts +1 -0
- package/dist/OvermapMenu/constants.d.ts +3 -0
- package/dist/OvermapMenu/index.d.ts +29 -0
- package/dist/OvermapMenu/root/Root.d.ts +3 -0
- package/dist/OvermapMenu/root/context.d.ts +27 -0
- package/dist/OvermapMenu/root/index.d.ts +2 -0
- package/dist/OvermapMenu/typings.d.ts +96 -0
- package/dist/OvermapMenu/utils.d.ts +5 -0
- package/dist/blocks.js +1222 -897
- package/dist/blocks.js.map +1 -1
- package/dist/blocks.umd.cjs +1129 -805
- package/dist/blocks.umd.cjs.map +1 -1
- package/dist/index.d.ts +5 -9
- package/dist/style.css +180 -45
- package/dist/utils.d.ts +7 -0
- package/package.json +111 -109
- package/dist/BaseMenuGroups/BaseItemGroup/BaseItemGroup.d.ts +0 -3
- package/dist/BaseMenuGroups/BaseItemGroup/index.d.ts +0 -2
- package/dist/BaseMenuGroups/BaseItemGroup/typings.d.ts +0 -12
- package/dist/BaseMenuGroups/BaseMenuComponents.d.ts +0 -12
- package/dist/BaseMenuGroups/BaseMultiSelectGroup/BaseMultiSelectGroup.d.ts +0 -3
- package/dist/BaseMenuGroups/BaseMultiSelectGroup/index.d.ts +0 -2
- package/dist/BaseMenuGroups/BaseMultiSelectGroup/typings.d.ts +0 -16
- package/dist/BaseMenuGroups/BaseSelectGroup/BaseSelectGroup.d.ts +0 -3
- package/dist/BaseMenuGroups/BaseSelectGroup/index.d.ts +0 -2
- package/dist/BaseMenuGroups/BaseSelectGroup/typings.d.ts +0 -16
- package/dist/BaseMenuGroups/BaseSubMenuGroup/BaseSubMenuGroup.d.ts +0 -3
- package/dist/BaseMenuGroups/BaseSubMenuGroup/index.d.ts +0 -2
- package/dist/BaseMenuGroups/BaseSubMenuGroup/typings.d.ts +0 -14
- package/dist/BaseMenuGroups/index.d.ts +0 -5
- package/dist/BaseMenuGroups/typings.d.ts +0 -32
- package/dist/BaseMenuGroups/utils.d.ts +0 -5
- package/dist/ContextActionMenu/ContextActionMenu.d.ts +0 -8
- package/dist/ContextActionMenu/index.d.ts +0 -1
- package/dist/ContextMenu/ContextMenuGroups.d.ts +0 -6
- package/dist/ContextMenu/Root.d.ts +0 -24
- package/dist/ContextMenu/index.d.ts +0 -9
- package/dist/ContextMultiSelectMenu/ContextMultiSelectMenu.d.ts +0 -9
- package/dist/ContextMultiSelectMenu/index.d.ts +0 -1
- package/dist/ContextSelectMenu/ContextSelectMenu.d.ts +0 -9
- package/dist/ContextSelectMenu/index.d.ts +0 -1
- package/dist/DropdownItemMenu/DropdownItemMenu.d.ts +0 -10
- package/dist/DropdownItemMenu/index.d.ts +0 -1
- package/dist/DropdownMenu/DropdownMenu.d.ts +0 -10
- package/dist/DropdownMenu/DropdownMenuGroups.d.ts +0 -18
- package/dist/DropdownMenu/index.d.ts +0 -2
- package/dist/DropdownMultiSelect/DropdownMultiSelect.d.ts +0 -7
- package/dist/DropdownMultiSelect/index.d.ts +0 -1
- package/dist/DropdownSelect/DropdownSelect.d.ts +0 -7
- package/dist/DropdownSelect/index.d.ts +0 -1
package/README.md
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
# overmap-ai blocks
|
|
2
|
-
|
|
3
|
-
Contains basic components used by overmap-ai libraries.
|
|
1
|
+
# overmap-ai blocks
|
|
2
|
+
|
|
3
|
+
Contains basic components used by overmap-ai libraries.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { DialogCommandMenuProps } from "../typings";
|
|
3
|
-
/** The Dialog Command
|
|
3
|
+
/** The Dialog Command OvermapMenu component is a flexible UI element designed to present a list of command options within a
|
|
4
4
|
* dialog overlay. This component enhances user interaction by providing a structured and accessible way to execute
|
|
5
5
|
* commands or actions from a centralized menu. */
|
|
6
6
|
export declare const DialogCommandMenu: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<DialogCommandMenuProps & import("react").RefAttributes<HTMLDivElement>>>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { DialogMultiSelectMenuProps } from "../typings";
|
|
3
|
-
/** The Dialog Multi Select
|
|
3
|
+
/** The Dialog Multi Select OvermapMenu component is a versatile UI element that enables users to select multiple options from
|
|
4
4
|
* a list within a dialog overlay. This component enhances user interaction by providing a clear and accessible way to
|
|
5
5
|
* make multiple selections in contexts such as forms, filters, and settings. */
|
|
6
6
|
export declare const DialogMultiSelectMenu: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<DialogMultiSelectMenuProps & import("react").RefAttributes<HTMLDivElement>>>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { DialogSelectMenuProps } from "../typings";
|
|
3
|
-
/** The Dialog Select
|
|
3
|
+
/** The Dialog Select OvermapMenu component is a user interface element that provides a dropdown single selection menu within a dialog
|
|
4
4
|
* overlay. It allows users to choose an option from a predefined list, offering an enhanced user experience through a
|
|
5
5
|
* modal dialog. This component is particularly useful in forms and settings where space is limited, and a clean,
|
|
6
6
|
* accessible selection method is needed. */
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { DialogMenuProps } from "../typings";
|
|
3
|
-
/** The Dialog
|
|
3
|
+
/** The Dialog OvermapMenu component is a flexible and customizable UI element that allows users to trigger a dialog containing
|
|
4
4
|
* a menu of items. This component is designed to enhance user interaction by providing a structured and accessible
|
|
5
5
|
* way to present multiple items/choices/options within a dialog overlay.*/
|
|
6
6
|
export declare const Root: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<DialogMenuProps & import("react").RefAttributes<HTMLDivElement>>>;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ComponentProps, PropsWithChildren } from "react";
|
|
2
|
+
import { Flex } from "@radix-ui/themes";
|
|
3
|
+
import { OvermapResponsive } from "../typings";
|
|
4
|
+
interface ItemStackGroupProps extends PropsWithChildren {
|
|
5
|
+
direction: Extract<ComponentProps<typeof Flex>["direction"], "row" | "column">;
|
|
6
|
+
offset: OvermapResponsive<string>;
|
|
7
|
+
}
|
|
8
|
+
export declare const Group: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<ItemStackGroupProps & import("react").RefAttributes<HTMLDivElement>>>;
|
|
9
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ReactElement } from "react";
|
|
2
|
+
import { MenuClickTriggerProps, MenuRootProps, MenuItemProps } from "../OvermapMenu";
|
|
3
|
+
interface DropdownMenuProps extends Omit<MenuRootProps, "children">, Omit<MenuClickTriggerProps, "children"> {
|
|
4
|
+
trigger: ReactElement;
|
|
5
|
+
items: MenuItemProps[];
|
|
6
|
+
}
|
|
7
|
+
export declare const DropdownMenu: import("react").MemoExoticComponent<(props: DropdownMenuProps) => import("react/jsx-runtime").JSX.Element>;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { DropdownMenu as OvermapDropdownMenu } from "./DropdownMenu";
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ReactElement } from "react";
|
|
2
|
+
import { MenuClickTriggerProps, MenuMultiSelectGroupProps, MenuRootProps, MenuSelectItemProps } from "../OvermapMenu";
|
|
3
|
+
interface DropdownMultiSelectProps extends Omit<MenuRootProps, "children">, Omit<MenuClickTriggerProps, "children">, MenuMultiSelectGroupProps {
|
|
4
|
+
trigger: ReactElement;
|
|
5
|
+
items: MenuSelectItemProps[];
|
|
6
|
+
}
|
|
7
|
+
export declare const DropdownMultiSelect: import("react").MemoExoticComponent<(props: DropdownMultiSelectProps) => import("react/jsx-runtime").JSX.Element>;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { DropdownMultiSelect as OvermapDropdownMultiSelect } from "./DropdownMultiSelect";
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ReactElement } from "react";
|
|
2
|
+
import { MenuClickTriggerProps, MenuRootProps, MenuSelectGroupProps, MenuSelectItemProps } from "../OvermapMenu";
|
|
3
|
+
interface DropdownSelectProps extends Omit<MenuRootProps, "children">, Omit<MenuClickTriggerProps, "children">, MenuSelectGroupProps {
|
|
4
|
+
trigger: ReactElement;
|
|
5
|
+
items: MenuSelectItemProps[];
|
|
6
|
+
}
|
|
7
|
+
export declare const DropdownSelect: import("react").MemoExoticComponent<(props: DropdownSelectProps) => import("react/jsx-runtime").JSX.Element>;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { DropdownSelect as OvermapDropdownSelect } from "./DropdownSelect";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./ClickTrigger.tsx";
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { MutableRefObject } from "react";
|
|
2
|
+
import { UseInteractionsReturn, UseFloatingData } from "@floating-ui/react";
|
|
3
|
+
interface IMenuContentContext {
|
|
4
|
+
activeIndex: number | null;
|
|
5
|
+
getItemProps: UseInteractionsReturn["getItemProps"];
|
|
6
|
+
elementsRef: MutableRefObject<HTMLDivElement[]>;
|
|
7
|
+
setActiveIndex: (index: number | null) => void;
|
|
8
|
+
refs: UseFloatingData["refs"];
|
|
9
|
+
open: boolean;
|
|
10
|
+
setOpen: (open: boolean) => void;
|
|
11
|
+
}
|
|
12
|
+
export declare const MenuContentContext: import("react").Context<IMenuContentContext>;
|
|
13
|
+
export declare const useMenuContentContext: () => IMenuContentContext;
|
|
14
|
+
export {};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { MenuContextTriggerProps } from "../typings";
|
|
3
|
+
export declare const ContextTrigger: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<MenuContextTriggerProps & import("react").RefAttributes<HTMLElement>>>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./ContextTrigger";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./Group";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./Input";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./Item";
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { MenuMultiSelectGroupProps } from "../typings";
|
|
3
|
+
export declare const MultiSelectGroup: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<MenuMultiSelectGroupProps & import("react").RefAttributes<HTMLDivElement>>>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./MultiSelectGroup";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./MultiSelectItem";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./PageContent";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./PageTrigger";
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
interface IPagesContext {
|
|
3
|
+
activePage: string;
|
|
4
|
+
setActivePage: (page: string) => void;
|
|
5
|
+
}
|
|
6
|
+
export declare const PagesContext: import("react").Context<IPagesContext>;
|
|
7
|
+
export declare const usePagesContext: () => IPagesContext;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./Scroll";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./SelectGroup";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./SelectItem";
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
interface ISelectedIndicatorContext {
|
|
3
|
+
selected: boolean;
|
|
4
|
+
}
|
|
5
|
+
export declare const SelectedIndicatorContext: import("react").Context<ISelectedIndicatorContext>;
|
|
6
|
+
export declare const useSelectedIndicatorContext: () => ISelectedIndicatorContext;
|
|
7
|
+
export {};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { MenuSeparatorProps } from "../typings";
|
|
3
|
+
export declare const Separator: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<Omit<MenuSeparatorProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./Separator";
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { CSSProperties, MutableRefObject } from "react";
|
|
2
|
+
import { UseFloatingData, UseInteractionsReturn } from "@floating-ui/react";
|
|
3
|
+
import { MenuSide } from "../typings";
|
|
4
|
+
interface ISubContext {
|
|
5
|
+
open: boolean;
|
|
6
|
+
setOpen: (open: boolean) => void;
|
|
7
|
+
disabled: boolean;
|
|
8
|
+
side: MenuSide;
|
|
9
|
+
closeRoot: boolean;
|
|
10
|
+
modal: boolean;
|
|
11
|
+
nodeId: string;
|
|
12
|
+
refs: UseFloatingData["refs"];
|
|
13
|
+
floatingStyles: CSSProperties;
|
|
14
|
+
context: UseFloatingData["context"];
|
|
15
|
+
elementsRef: MutableRefObject<HTMLDivElement[]>;
|
|
16
|
+
activeIndex: number | null;
|
|
17
|
+
setActiveIndex: (index: number | null) => void;
|
|
18
|
+
getItemProps: UseInteractionsReturn["getItemProps"];
|
|
19
|
+
getFloatingProps: UseInteractionsReturn["getFloatingProps"];
|
|
20
|
+
getReferenceProps: UseInteractionsReturn["getReferenceProps"];
|
|
21
|
+
}
|
|
22
|
+
export declare const SubContext: import("react").Context<ISubContext>;
|
|
23
|
+
export declare const useSubContext: () => ISubContext;
|
|
24
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./SubContent";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./SubTrigger.tsx";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./VirtualTrigger";
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
export declare const OvermapMenu: {
|
|
3
|
+
Root: import("react").MemoExoticComponent<(props: import("./typings").MenuRootProps) => import("react/jsx-runtime").JSX.Element>;
|
|
4
|
+
ClickTrigger: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<import("./typings").MenuClickTriggerProps & import("react").RefAttributes<HTMLElement>>>;
|
|
5
|
+
ContextTrigger: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<import("./typings").MenuContextTriggerProps & import("react").RefAttributes<HTMLElement>>>;
|
|
6
|
+
VirtualTrigger: import("react").MemoExoticComponent<(props: import("./typings").MenuVirtualTriggerProps) => null>;
|
|
7
|
+
Content: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<import("./typings").MenuContentProps & import("react").RefAttributes<HTMLDivElement>>>;
|
|
8
|
+
Item: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<import("./typings").MenuItemProps & import("react").RefAttributes<HTMLDivElement>>>;
|
|
9
|
+
Sub: import("react").MemoExoticComponent<(props: import("./typings").MenuSubProps) => import("react/jsx-runtime").JSX.Element>;
|
|
10
|
+
SubContent: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<import("./typings").SubMenuContentProps & import("react").RefAttributes<HTMLDivElement>>>;
|
|
11
|
+
SubTrigger: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<import("./typings").MenuSubTriggerProps & import("react").RefAttributes<HTMLDivElement>>>;
|
|
12
|
+
Group: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<import("./typings").MenuGroupProps & import("react").RefAttributes<HTMLDivElement>>>;
|
|
13
|
+
SelectGroup: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<import("./typings").MenuSelectGroupProps & import("react").RefAttributes<HTMLDivElement>>>;
|
|
14
|
+
MultiSelectGroup: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<import("./typings").MenuMultiSelectGroupProps & import("react").RefAttributes<HTMLDivElement>>>;
|
|
15
|
+
MultiSelectItem: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<import("./typings").MenuSelectItemProps & import("react").RefAttributes<HTMLDivElement>>>;
|
|
16
|
+
SelectItem: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<import("./typings").MenuSelectItemProps & import("react").RefAttributes<HTMLDivElement>>>;
|
|
17
|
+
SelectedIndicator: import("react").MemoExoticComponent<(props: {
|
|
18
|
+
children?: import("react").ReactNode;
|
|
19
|
+
}) => import("react/jsx-runtime").JSX.Element>;
|
|
20
|
+
PageContent: import("react").MemoExoticComponent<(props: import("./typings").PageContentProps) => import("react/jsx-runtime").JSX.Element>;
|
|
21
|
+
Pages: import("react").MemoExoticComponent<(props: import("./typings").PageProps) => import("react/jsx-runtime").JSX.Element>;
|
|
22
|
+
PageTrigger: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<import("./typings").PageTriggerProps & import("react").RefAttributes<HTMLDivElement>>>;
|
|
23
|
+
Separator: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<Omit<import("./typings").MenuSeparatorProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>>;
|
|
24
|
+
Input: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<import("./typings").MenuInputProps & import("react").RefAttributes<HTMLInputElement>>>;
|
|
25
|
+
Scroll: import("react").MemoExoticComponent<(props: {
|
|
26
|
+
children?: import("react").ReactNode;
|
|
27
|
+
}) => import("react/jsx-runtime").JSX.Element>;
|
|
28
|
+
};
|
|
29
|
+
export * from "./typings";
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { CSSProperties, MutableRefObject } from "react";
|
|
2
|
+
import { MiddlewareData, UseFloatingData, UseInteractionsReturn } from "@floating-ui/react";
|
|
3
|
+
import { OvermapItemGroupProps } from "../../OvermapItemGroup";
|
|
4
|
+
import { MenuSide, MenuTriggerType } from "../typings";
|
|
5
|
+
interface IMenuContext {
|
|
6
|
+
open: boolean;
|
|
7
|
+
setOpen: (open: boolean) => void;
|
|
8
|
+
size: OvermapItemGroupProps["size"];
|
|
9
|
+
side: MenuSide;
|
|
10
|
+
setTriggerType: (triggerType: MenuTriggerType) => void;
|
|
11
|
+
dialog: boolean;
|
|
12
|
+
modal: boolean;
|
|
13
|
+
nodeId: string;
|
|
14
|
+
refs: UseFloatingData["refs"];
|
|
15
|
+
floatingStyles: CSSProperties;
|
|
16
|
+
context: UseFloatingData["context"];
|
|
17
|
+
elementsRef: MutableRefObject<HTMLDivElement[]>;
|
|
18
|
+
activeIndex: number | null;
|
|
19
|
+
setActiveIndex: (index: number | null) => void;
|
|
20
|
+
getItemProps: UseInteractionsReturn["getItemProps"];
|
|
21
|
+
getFloatingProps: UseInteractionsReturn["getFloatingProps"];
|
|
22
|
+
getReferenceProps: UseInteractionsReturn["getReferenceProps"];
|
|
23
|
+
middlewareData: MiddlewareData;
|
|
24
|
+
}
|
|
25
|
+
export declare const MenuContext: import("react").Context<IMenuContext>;
|
|
26
|
+
export declare const useMenuContext: () => IMenuContext;
|
|
27
|
+
export {};
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import { PropsWithChildren, ReactElement } from "react";
|
|
2
|
+
import { VirtualElement } from "@floating-ui/react";
|
|
3
|
+
import { OvermapItemProps } from "../OvermapItem";
|
|
4
|
+
import { OvermapItemGroupProps } from "../OvermapItemGroup";
|
|
5
|
+
import { SeparatorProps } from "../Separator";
|
|
6
|
+
import { OvermapInputItemProps } from "../OvermapInputItem";
|
|
7
|
+
export type MenuTriggerType = "click" | "context" | "virtual";
|
|
8
|
+
export type MenuAlignment = "start" | "center" | "end";
|
|
9
|
+
export type MenuSide = "top" | "right" | "bottom" | "left";
|
|
10
|
+
export interface MenuRootProps extends PropsWithChildren, Pick<OvermapItemGroupProps, "size"> {
|
|
11
|
+
open?: boolean;
|
|
12
|
+
onOpenChange?: (open: boolean) => void;
|
|
13
|
+
defaultOpen?: boolean;
|
|
14
|
+
side?: MenuSide;
|
|
15
|
+
align?: MenuAlignment;
|
|
16
|
+
offset?: number;
|
|
17
|
+
loop?: boolean;
|
|
18
|
+
dialog?: boolean;
|
|
19
|
+
modal?: boolean;
|
|
20
|
+
}
|
|
21
|
+
export interface MenuContentProps extends PropsWithChildren {
|
|
22
|
+
disableScroll?: boolean;
|
|
23
|
+
}
|
|
24
|
+
export interface MenuClickTriggerProps {
|
|
25
|
+
children: ReactElement;
|
|
26
|
+
disabled?: boolean;
|
|
27
|
+
}
|
|
28
|
+
export interface MenuContextTriggerProps {
|
|
29
|
+
children: ReactElement;
|
|
30
|
+
disabled?: boolean;
|
|
31
|
+
}
|
|
32
|
+
export interface MenuVirtualTriggerProps {
|
|
33
|
+
virtualElement: VirtualElement | null;
|
|
34
|
+
disabled?: boolean;
|
|
35
|
+
}
|
|
36
|
+
export interface MenuGroupProps extends PropsWithChildren {
|
|
37
|
+
}
|
|
38
|
+
export interface MenuSelectGroupProps extends MenuGroupProps {
|
|
39
|
+
value: string | null;
|
|
40
|
+
onValueChange: (value: string | null) => void;
|
|
41
|
+
}
|
|
42
|
+
export interface MenuMultiSelectGroupProps extends MenuGroupProps {
|
|
43
|
+
values: string[];
|
|
44
|
+
onValuesChange: (values: string[]) => void;
|
|
45
|
+
}
|
|
46
|
+
export interface MenuItemMeta {
|
|
47
|
+
active: boolean;
|
|
48
|
+
selected: boolean;
|
|
49
|
+
}
|
|
50
|
+
type ActiveAndSelectedItemCallback<T> = (meta: MenuItemMeta) => T;
|
|
51
|
+
export interface MenuItemProps extends Omit<OvermapItemProps, "leftSlot" | "rightSlot" | "children"> {
|
|
52
|
+
leftSlot?: OvermapItemProps["leftSlot"] | ActiveAndSelectedItemCallback<OvermapItemProps["leftSlot"]>;
|
|
53
|
+
rightSlot?: OvermapItemProps["rightSlot"] | ActiveAndSelectedItemCallback<OvermapItemProps["rightSlot"]>;
|
|
54
|
+
children: OvermapItemProps["children"] | ActiveAndSelectedItemCallback<OvermapItemProps["children"]>;
|
|
55
|
+
closeOnSelect?: boolean;
|
|
56
|
+
onSelect?: () => void;
|
|
57
|
+
}
|
|
58
|
+
export interface MenuSelectItemProps extends MenuItemProps {
|
|
59
|
+
value: string;
|
|
60
|
+
}
|
|
61
|
+
export interface MenuSubProps extends PropsWithChildren {
|
|
62
|
+
disabled?: boolean;
|
|
63
|
+
open?: boolean;
|
|
64
|
+
onOpenChange?: (open: boolean) => void;
|
|
65
|
+
defaultOpen?: boolean;
|
|
66
|
+
side?: MenuSide;
|
|
67
|
+
align?: MenuAlignment;
|
|
68
|
+
closeRoot?: boolean;
|
|
69
|
+
loop?: boolean;
|
|
70
|
+
modal?: boolean;
|
|
71
|
+
}
|
|
72
|
+
export interface SubMenuContentProps extends PropsWithChildren {
|
|
73
|
+
disableScroll?: boolean;
|
|
74
|
+
}
|
|
75
|
+
export interface MenuSubTriggerProps extends Omit<MenuItemProps, "closeOnSelect" | "disabled"> {
|
|
76
|
+
}
|
|
77
|
+
export interface PageProps extends PropsWithChildren {
|
|
78
|
+
defaultPage?: string;
|
|
79
|
+
page?: string;
|
|
80
|
+
onPageChange?: (page: string) => void;
|
|
81
|
+
}
|
|
82
|
+
export interface PageContentProps extends PropsWithChildren {
|
|
83
|
+
page: string;
|
|
84
|
+
}
|
|
85
|
+
export interface PageTriggerProps extends Omit<MenuItemProps, "closeOnSelect"> {
|
|
86
|
+
page: string;
|
|
87
|
+
}
|
|
88
|
+
export interface MenuSeparatorProps extends SeparatorProps {
|
|
89
|
+
extend?: boolean;
|
|
90
|
+
spacingAbove?: boolean;
|
|
91
|
+
spacingBelow?: boolean;
|
|
92
|
+
}
|
|
93
|
+
export interface MenuInputProps extends Omit<OvermapInputItemProps, "ref" | "size"> {
|
|
94
|
+
onValueChange?: (value: string) => void;
|
|
95
|
+
}
|
|
96
|
+
export {};
|