@lobehub/ui 4.6.6 → 4.7.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.
Files changed (125) hide show
  1. package/es/Accordion/Accordion.d.mts +2 -2
  2. package/es/Accordion/AccordionItem.d.mts +2 -2
  3. package/es/ActionIcon/ActionIcon.d.mts +2 -2
  4. package/es/ActionIconGroup/ActionIconGroup.mjs +17 -11
  5. package/es/ActionIconGroup/ActionIconGroup.mjs.map +1 -1
  6. package/es/ActionIconGroup/type.d.mts +3 -3
  7. package/es/Alert/Alert.d.mts +2 -2
  8. package/es/AutoComplete/Select.d.mts +2 -2
  9. package/es/Avatar/AvatarGroup/index.d.mts +2 -2
  10. package/es/Burger/Burger.d.mts +2 -2
  11. package/es/CodeEditor/CodeEditor.d.mts +2 -2
  12. package/es/Collapse/Collapse.d.mts +2 -2
  13. package/es/ConfigProvider/index.d.mts +2 -2
  14. package/es/ContextMenu/ContextMenuHost.d.mts +2 -2
  15. package/es/ContextMenu/ContextMenuHost.mjs +1 -1
  16. package/es/ContextMenu/ContextMenuTrigger.mjs +1 -1
  17. package/es/CopyButton/CopyButton.d.mts +2 -2
  18. package/es/DatePicker/DatePicker.d.mts +2 -2
  19. package/es/DraggablePanel/components/DraggablePanelBody.d.mts +2 -2
  20. package/es/DraggablePanel/components/DraggablePanelContainer.d.mts +2 -2
  21. package/es/DraggablePanel/components/DraggablePanelFooter.d.mts +2 -2
  22. package/es/DraggablePanel/components/DraggablePanelHeader.d.mts +2 -2
  23. package/es/DraggableSideNav/DraggableSideNav.d.mts +2 -2
  24. package/es/Drawer/Drawer.d.mts +2 -2
  25. package/es/Dropdown/Dropdown.d.mts +2 -2
  26. package/es/DropdownMenu/DropdownMenu.d.mts +2 -2
  27. package/es/DropdownMenu/DropdownMenu.mjs +3 -4
  28. package/es/DropdownMenu/DropdownMenu.mjs.map +1 -1
  29. package/es/EditableText/EditableText.d.mts +2 -2
  30. package/es/EmojiPicker/EmojiPicker.d.mts +2 -2
  31. package/es/Flex/FlexBasic.d.mts +2 -2
  32. package/es/FontLoader/index.d.mts +2 -2
  33. package/es/Footer/Footer.d.mts +2 -2
  34. package/es/Form/components/FormGroup.d.mts +2 -2
  35. package/es/Form/components/FormItem.d.mts +2 -2
  36. package/es/Form/components/FormSubmitFooter.d.mts +2 -2
  37. package/es/FormModal/FormModal.d.mts +2 -2
  38. package/es/Header/Header.d.mts +2 -2
  39. package/es/Highlighter/Highlighter.d.mts +2 -2
  40. package/es/Highlighter/SyntaxHighlighter/index.d.mts +2 -2
  41. package/es/Hotkey/Hotkey.d.mts +2 -2
  42. package/es/HotkeyInput/HotkeyInput.d.mts +2 -2
  43. package/es/Icon/Icon.d.mts +2 -2
  44. package/es/Icon/components/IconProvider.d.mts +3 -3
  45. package/es/Image/PreviewGroup.d.mts +2 -2
  46. package/es/Layout/components/LayoutFooter.d.mts +2 -2
  47. package/es/Layout/components/LayoutHeader.d.mts +2 -2
  48. package/es/Layout/components/LayoutMain.d.mts +2 -2
  49. package/es/Layout/components/LayoutSidebar.d.mts +2 -2
  50. package/es/Layout/components/LayoutSidebarInner.d.mts +2 -2
  51. package/es/Layout/components/LayoutToc.d.mts +2 -2
  52. package/es/List/ListItem/index.d.mts +2 -2
  53. package/es/Markdown/Markdown.d.mts +2 -2
  54. package/es/Markdown/Typography.d.mts +2 -2
  55. package/es/Markdown/components/SearchResultCards/index.d.mts +2 -2
  56. package/es/MaskShadow/MaskShadow.d.mts +2 -2
  57. package/es/Menu/Menu.d.mts +2 -2
  58. package/es/Mermaid/Mermaid.d.mts +2 -2
  59. package/es/Mermaid/SyntaxMermaid/index.d.mts +2 -2
  60. package/es/Modal/Modal.d.mts +2 -2
  61. package/es/Modal/ModalProvider.d.mts +2 -2
  62. package/es/MotionProvider/index.d.mts +2 -2
  63. package/es/SearchBar/SearchBar.d.mts +2 -2
  64. package/es/Segmented/Segmented.d.mts +2 -2
  65. package/es/Select/Select.d.mts +2 -2
  66. package/es/SideNav/SideNav.d.mts +2 -2
  67. package/es/SliderWithInput/SliderWithInput.d.mts +2 -2
  68. package/es/SortableList/components/DragHandle.d.mts +2 -2
  69. package/es/SortableList/components/SortableItem.d.mts +2 -2
  70. package/es/ThemeProvider/GlobalStyle/global.mjs +7 -0
  71. package/es/ThemeProvider/GlobalStyle/global.mjs.map +1 -1
  72. package/es/ThemeProvider/ThemeProvider.d.mts +2 -2
  73. package/es/Toc/Toc.d.mts +2 -2
  74. package/es/Video/index.d.mts +2 -2
  75. package/es/awesome/AuroraBackground/AuroraBackground.d.mts +2 -2
  76. package/es/awesome/BottomGradientButton/BottomGradientButton.d.mts +2 -2
  77. package/es/awesome/Features/Features.d.mts +2 -2
  78. package/es/awesome/Giscus/Giscus.d.mts +2 -2
  79. package/es/awesome/GradientButton/GradientButton.d.mts +2 -2
  80. package/es/awesome/GridBackground/GridBackground.d.mts +2 -2
  81. package/es/awesome/GridBackground/GridShowcase.d.mts +2 -2
  82. package/es/awesome/Hero/Hero.d.mts +2 -2
  83. package/es/awesome/Spline/Spine.d.mts +2 -2
  84. package/es/awesome/Spotlight/Spotlight.d.mts +2 -2
  85. package/es/awesome/SpotlightCard/SpotlightCard.d.mts +2 -2
  86. package/es/awesome/TypewriterEffect/TypewriterEffect.d.mts +2 -2
  87. package/es/brand/LobeChat/index.d.mts +2 -2
  88. package/es/brand/LobeHub/index.d.mts +2 -2
  89. package/es/brand/LogoThree/LogoSpline.d.mts +2 -2
  90. package/es/brand/LogoThree/index.d.mts +2 -2
  91. package/es/chat/BackBottom/BackBottom.d.mts +2 -2
  92. package/es/chat/ChatInputArea/components/ChatInputAreaInner.d.mts +2 -2
  93. package/es/chat/ChatItem/ChatItem.d.mts +2 -2
  94. package/es/chat/ChatItem/style.mjs +15 -0
  95. package/es/chat/ChatItem/style.mjs.map +1 -1
  96. package/es/chat/ChatList/ChatList.d.mts +2 -2
  97. package/es/chat/ChatList/components/ChatActionsBar.mjs +2 -2
  98. package/es/chat/ChatList/components/ChatActionsBar.mjs.map +1 -1
  99. package/es/chat/EditableMessage/EditableMessage.d.mts +2 -2
  100. package/es/chat/EditableMessageList/EditableMessageList.d.mts +2 -2
  101. package/es/chat/MessageInput/MessageInput.d.mts +2 -2
  102. package/es/chat/MessageModal/MessageModal.d.mts +2 -2
  103. package/es/color/ColorScales/index.d.mts +2 -2
  104. package/es/color/CssVar/index.d.mts +2 -2
  105. package/es/i18n/context.d.mts +2 -2
  106. package/es/icons/lucideExtra/BotPromptIcon.d.mts +3 -3
  107. package/es/icons/lucideExtra/CreateBotIcon.d.mts +3 -3
  108. package/es/icons/lucideExtra/DiscordIcon.d.mts +3 -3
  109. package/es/icons/lucideExtra/GlobeOffIcon.d.mts +3 -3
  110. package/es/icons/lucideExtra/GroupBotIcon.d.mts +3 -3
  111. package/es/icons/lucideExtra/GroupBotSquareIcon.d.mts +3 -3
  112. package/es/icons/lucideExtra/LeftClickIcon.d.mts +3 -3
  113. package/es/icons/lucideExtra/LeftDoubleClickIcon.d.mts +3 -3
  114. package/es/icons/lucideExtra/McpIcon.d.mts +3 -3
  115. package/es/icons/lucideExtra/RightClickIcon.d.mts +3 -3
  116. package/es/icons/lucideExtra/RightDoubleClickIcon.d.mts +3 -3
  117. package/es/icons/lucideExtra/TreeUpDownRightIcon.d.mts +3 -3
  118. package/es/index.d.mts +6 -6
  119. package/es/index.mjs +4 -4
  120. package/es/mdx/Mdx/index.d.mts +2 -2
  121. package/es/mobile/ChatHeader/ChatHeaderTitle.d.mts +2 -2
  122. package/es/mobile/ChatInputArea/components/ChatSendButton.d.mts +2 -2
  123. package/es/mobile/TabBar/TabBar.d.mts +2 -2
  124. package/es/storybook/StoryBook/index.d.mts +2 -2
  125. package/package.json +1 -1
@@ -1,8 +1,8 @@
1
1
  import { AccordionProps } from "./type.mjs";
2
- import * as react47 from "react";
2
+ import * as react14 from "react";
3
3
 
4
4
  //#region src/Accordion/Accordion.d.ts
5
- declare const Accordion: react47.NamedExoticComponent<AccordionProps>;
5
+ declare const Accordion: react14.NamedExoticComponent<AccordionProps>;
6
6
  //#endregion
7
7
  export { Accordion };
8
8
  //# sourceMappingURL=Accordion.d.mts.map
@@ -1,8 +1,8 @@
1
1
  import { AccordionItemProps } from "./type.mjs";
2
- import * as react46 from "react";
2
+ import * as react15 from "react";
3
3
 
4
4
  //#region src/Accordion/AccordionItem.d.ts
5
- declare const AccordionItem: react46.NamedExoticComponent<AccordionItemProps>;
5
+ declare const AccordionItem: react15.NamedExoticComponent<AccordionItemProps>;
6
6
  //#endregion
7
7
  export { AccordionItem };
8
8
  //# sourceMappingURL=AccordionItem.d.mts.map
@@ -1,8 +1,8 @@
1
1
  import { ActionIconProps } from "./type.mjs";
2
- import * as react35 from "react";
2
+ import * as react13 from "react";
3
3
 
4
4
  //#region src/ActionIcon/ActionIcon.d.ts
5
- declare const ActionIcon: react35.NamedExoticComponent<ActionIconProps>;
5
+ declare const ActionIcon: react13.NamedExoticComponent<ActionIconProps>;
6
6
  //#endregion
7
7
  export { ActionIcon };
8
8
  //# sourceMappingURL=ActionIcon.d.mts.map
@@ -1,8 +1,9 @@
1
1
  'use client';
2
2
 
3
3
  import Center_default from "../Flex/Center.mjs";
4
+ import TooltipGroup_default from "../Tooltip/TooltipGroup.mjs";
4
5
  import ActionIcon_default from "../ActionIcon/ActionIcon.mjs";
5
- import Dropdown_default from "../Dropdown/Dropdown.mjs";
6
+ import DropdownMenu_default from "../DropdownMenu/DropdownMenu.mjs";
6
7
  import { variants } from "./style.mjs";
7
8
  import { useMemo } from "react";
8
9
  import { jsx, jsxs } from "react/jsx-runtime";
@@ -12,7 +13,18 @@ import { MoreHorizontal } from "lucide-react";
12
13
  //#region src/ActionIconGroup/ActionIconGroup.tsx
13
14
  const ActionIconGroup = ({ variant = "filled", disabled, shadow, glass, actionIconProps, items = [], horizontal = true, menu, onActionClick, className, size = "small", ref, ...rest }) => {
14
15
  const tooltipPlacement = useMemo(() => actionIconProps?.tooltipProps?.placement || horizontal ? "top" : "right", [actionIconProps, horizontal]);
15
- return /* @__PURE__ */ jsxs(Center_default, {
16
+ const menuItems = useMemo(() => {
17
+ const rawItems = typeof menu === "function" ? menu() : menu;
18
+ if (!rawItems) return [];
19
+ return rawItems.map((item) => ({
20
+ ...item,
21
+ onClick: (info) => {
22
+ item?.onClick?.(info);
23
+ onActionClick?.(info);
24
+ }
25
+ }));
26
+ }, [menu, onActionClick]);
27
+ return /* @__PURE__ */ jsx(TooltipGroup_default, { children: /* @__PURE__ */ jsxs(Center_default, {
16
28
  className: cx(variants({
17
29
  disabled,
18
30
  glass,
@@ -43,14 +55,8 @@ const ActionIconGroup = ({ variant = "filled", disabled, shadow, glass, actionIc
43
55
  ...actionIconProps,
44
56
  disabled: disabled || loading || itemRest?.disabled
45
57
  }, key);
46
- }), menu && /* @__PURE__ */ jsx(Dropdown_default, {
47
- menu: {
48
- ...menu,
49
- onClick: (item) => {
50
- onActionClick?.(item);
51
- }
52
- },
53
- trigger: ["click"],
58
+ }), menu && /* @__PURE__ */ jsx(DropdownMenu_default, {
59
+ items: menuItems,
54
60
  children: /* @__PURE__ */ jsx(ActionIcon_default, {
55
61
  disabled,
56
62
  icon: MoreHorizontal,
@@ -62,7 +68,7 @@ const ActionIconGroup = ({ variant = "filled", disabled, shadow, glass, actionIc
62
68
  }
63
69
  }, "more")
64
70
  })]
65
- });
71
+ }) });
66
72
  };
67
73
  ActionIconGroup.displayName = "ActionIconGroup";
68
74
  var ActionIconGroup_default = ActionIconGroup;
@@ -1 +1 @@
1
- {"version":3,"file":"ActionIconGroup.mjs","names":["ActionIconGroup: FC<ActionIconGroupProps>","Center","ActionIcon","Dropdown"],"sources":["../../src/ActionIconGroup/ActionIconGroup.tsx"],"sourcesContent":["'use client';\n\nimport { cx } from 'antd-style';\nimport { MoreHorizontal } from 'lucide-react';\nimport { type FC, useMemo } from 'react';\n\nimport ActionIcon from '@/ActionIcon';\nimport Dropdown from '@/Dropdown';\nimport { Center } from '@/Flex';\n\nimport { variants } from './style';\nimport type { ActionIconGroupProps } from './type';\n\nconst ActionIconGroup: FC<ActionIconGroupProps> = ({\n variant = 'filled',\n disabled,\n shadow,\n glass,\n actionIconProps,\n items = [],\n horizontal = true,\n menu,\n onActionClick,\n className,\n size = 'small',\n ref,\n ...rest\n}) => {\n const tooltipPlacement = useMemo(\n () => (actionIconProps?.tooltipProps?.placement || horizontal ? 'top' : 'right'),\n [actionIconProps, horizontal],\n );\n\n return (\n <Center\n className={cx(variants({ disabled, glass, shadow, variant }), className)}\n horizontal={horizontal}\n padding={2}\n ref={ref}\n {...rest}\n >\n {items?.length > 0 &&\n items.map((item) => {\n const { icon, key, label, onClick, danger, loading, ...itemRest } = item;\n return (\n <ActionIcon\n danger={danger}\n icon={icon}\n key={key}\n loading={loading}\n onClick={(e) => {\n onActionClick?.({\n domEvent: e,\n key: String(key),\n keyPath: [String(key)],\n });\n onClick?.(e as any);\n }}\n size={size}\n title={label}\n tooltipProps={{\n placement: tooltipPlacement,\n }}\n {...actionIconProps}\n disabled={disabled || loading || itemRest?.disabled}\n />\n );\n })}\n {menu && (\n <Dropdown\n menu={{\n ...menu,\n onClick: (item) => {\n onActionClick?.(item);\n },\n }}\n trigger={['click']}\n >\n <ActionIcon\n disabled={disabled}\n icon={MoreHorizontal}\n key=\"more\"\n size={size}\n {...actionIconProps}\n tooltipProps={{\n placement: tooltipPlacement,\n ...actionIconProps?.tooltipProps,\n }}\n />\n </Dropdown>\n )}\n </Center>\n );\n};\n\nActionIconGroup.displayName = 'ActionIconGroup';\n\nexport default ActionIconGroup;\n"],"mappings":";;;;;;;;;;;;AAaA,MAAMA,mBAA6C,EACjD,UAAU,UACV,UACA,QACA,OACA,iBACA,QAAQ,EAAE,EACV,aAAa,MACb,MACA,eACA,WACA,OAAO,SACP,KACA,GAAG,WACC;CACJ,MAAM,mBAAmB,cAChB,iBAAiB,cAAc,aAAa,aAAa,QAAQ,SACxE,CAAC,iBAAiB,WAAW,CAC9B;AAED,QACE,qBAACC;EACC,WAAW,GAAG,SAAS;GAAE;GAAU;GAAO;GAAQ;GAAS,CAAC,EAAE,UAAU;EAC5D;EACZ,SAAS;EACJ;EACL,GAAI;aAEH,OAAO,SAAS,KACf,MAAM,KAAK,SAAS;GAClB,MAAM,EAAE,MAAM,KAAK,OAAO,SAAS,QAAQ,SAAS,GAAG,aAAa;AACpE,UACE,oBAACC;IACS;IACF;IAEG;IACT,UAAU,MAAM;AACd,qBAAgB;MACd,UAAU;MACV,KAAK,OAAO,IAAI;MAChB,SAAS,CAAC,OAAO,IAAI,CAAC;MACvB,CAAC;AACF,eAAU,EAAS;;IAEf;IACN,OAAO;IACP,cAAc,EACZ,WAAW,kBACZ;IACD,GAAI;IACJ,UAAU,YAAY,WAAW,UAAU;MAhBtC,IAiBL;IAEJ,EACH,QACC,oBAACC;GACC,MAAM;IACJ,GAAG;IACH,UAAU,SAAS;AACjB,qBAAgB,KAAK;;IAExB;GACD,SAAS,CAAC,QAAQ;aAElB,oBAACD;IACW;IACV,MAAM;IAEA;IACN,GAAI;IACJ,cAAc;KACZ,WAAW;KACX,GAAG,iBAAiB;KACrB;MANG,OAOJ;IACO;GAEN;;AAIb,gBAAgB,cAAc;AAE9B,8BAAe"}
1
+ {"version":3,"file":"ActionIconGroup.mjs","names":["ActionIconGroup: FC<ActionIconGroupProps>","TooltipGroup","Center","ActionIcon","DropdownMenu"],"sources":["../../src/ActionIconGroup/ActionIconGroup.tsx"],"sourcesContent":["'use client';\n\nimport { cx } from 'antd-style';\nimport { MoreHorizontal } from 'lucide-react';\nimport { type FC, useMemo } from 'react';\n\nimport ActionIcon from '@/ActionIcon';\nimport DropdownMenu from '@/DropdownMenu';\nimport { Center } from '@/Flex';\nimport { TooltipGroup } from '@/Tooltip';\n\nimport { variants } from './style';\nimport type { ActionIconGroupProps } from './type';\n\nconst ActionIconGroup: FC<ActionIconGroupProps> = ({\n variant = 'filled',\n disabled,\n shadow,\n glass,\n actionIconProps,\n items = [],\n horizontal = true,\n menu,\n onActionClick,\n className,\n size = 'small',\n ref,\n ...rest\n}) => {\n const tooltipPlacement = useMemo(\n () => (actionIconProps?.tooltipProps?.placement || horizontal ? 'top' : 'right'),\n [actionIconProps, horizontal],\n );\n\n const menuItems = useMemo(() => {\n const rawItems = typeof menu === 'function' ? menu() : menu;\n if (!rawItems) return [];\n return rawItems.map((item) => ({\n ...(item as any),\n onClick: (info: any) => {\n (item as any)?.onClick?.(info);\n onActionClick?.(info);\n },\n }));\n }, [menu, onActionClick]);\n\n return (\n <TooltipGroup>\n <Center\n className={cx(variants({ disabled, glass, shadow, variant }), className)}\n horizontal={horizontal}\n padding={2}\n ref={ref}\n {...rest}\n >\n {items?.length > 0 &&\n items.map((item) => {\n const { icon, key, label, onClick, danger, loading, ...itemRest } = item;\n return (\n <ActionIcon\n danger={danger}\n icon={icon}\n key={key}\n loading={loading}\n onClick={(e) => {\n onActionClick?.({\n domEvent: e,\n key: String(key),\n keyPath: [String(key)],\n });\n onClick?.(e as any);\n }}\n size={size}\n title={label}\n tooltipProps={{\n placement: tooltipPlacement,\n }}\n {...actionIconProps}\n disabled={disabled || loading || itemRest?.disabled}\n />\n );\n })}\n {menu && (\n <DropdownMenu items={menuItems}>\n <ActionIcon\n disabled={disabled}\n icon={MoreHorizontal}\n key=\"more\"\n size={size}\n {...actionIconProps}\n tooltipProps={{\n placement: tooltipPlacement,\n ...actionIconProps?.tooltipProps,\n }}\n />\n </DropdownMenu>\n )}\n </Center>\n </TooltipGroup>\n );\n};\n\nActionIconGroup.displayName = 'ActionIconGroup';\n\nexport default ActionIconGroup;\n"],"mappings":";;;;;;;;;;;;;AAcA,MAAMA,mBAA6C,EACjD,UAAU,UACV,UACA,QACA,OACA,iBACA,QAAQ,EAAE,EACV,aAAa,MACb,MACA,eACA,WACA,OAAO,SACP,KACA,GAAG,WACC;CACJ,MAAM,mBAAmB,cAChB,iBAAiB,cAAc,aAAa,aAAa,QAAQ,SACxE,CAAC,iBAAiB,WAAW,CAC9B;CAED,MAAM,YAAY,cAAc;EAC9B,MAAM,WAAW,OAAO,SAAS,aAAa,MAAM,GAAG;AACvD,MAAI,CAAC,SAAU,QAAO,EAAE;AACxB,SAAO,SAAS,KAAK,UAAU;GAC7B,GAAI;GACJ,UAAU,SAAc;AACtB,IAAC,MAAc,UAAU,KAAK;AAC9B,oBAAgB,KAAK;;GAExB,EAAE;IACF,CAAC,MAAM,cAAc,CAAC;AAEzB,QACE,oBAACC,kCACC,qBAACC;EACC,WAAW,GAAG,SAAS;GAAE;GAAU;GAAO;GAAQ;GAAS,CAAC,EAAE,UAAU;EAC5D;EACZ,SAAS;EACJ;EACL,GAAI;aAEH,OAAO,SAAS,KACf,MAAM,KAAK,SAAS;GAClB,MAAM,EAAE,MAAM,KAAK,OAAO,SAAS,QAAQ,SAAS,GAAG,aAAa;AACpE,UACE,oBAACC;IACS;IACF;IAEG;IACT,UAAU,MAAM;AACd,qBAAgB;MACd,UAAU;MACV,KAAK,OAAO,IAAI;MAChB,SAAS,CAAC,OAAO,IAAI,CAAC;MACvB,CAAC;AACF,eAAU,EAAS;;IAEf;IACN,OAAO;IACP,cAAc,EACZ,WAAW,kBACZ;IACD,GAAI;IACJ,UAAU,YAAY,WAAW,UAAU;MAhBtC,IAiBL;IAEJ,EACH,QACC,oBAACC;GAAa,OAAO;aACnB,oBAACD;IACW;IACV,MAAM;IAEA;IACN,GAAI;IACJ,cAAc;KACZ,WAAW;KACX,GAAG,iBAAiB;KACrB;MANG,OAOJ;IACW;GAEV,GACI;;AAInB,gBAAgB,cAAc;AAE9B,8BAAe"}
@@ -4,8 +4,8 @@ import { ActionIconProps } from "../ActionIcon/type.mjs";
4
4
  import "../ActionIcon/index.mjs";
5
5
  import { MenuInfo, MenuItemType } from "../Menu/type.mjs";
6
6
  import "../Menu/index.mjs";
7
- import { DropdownProps } from "../Dropdown/type.mjs";
8
- import "../Dropdown/index.mjs";
7
+ import { DropdownMenuProps } from "../DropdownMenu/type.mjs";
8
+ import "../DropdownMenu/index.mjs";
9
9
  import { Ref } from "react";
10
10
 
11
11
  //#region src/ActionIconGroup/type.d.ts
@@ -15,7 +15,7 @@ interface ActionIconGroupProps extends Omit<CenterProps, 'children'> {
15
15
  disabled?: boolean;
16
16
  glass?: boolean;
17
17
  items?: MenuItemType[];
18
- menu?: DropdownProps['menu'];
18
+ menu?: DropdownMenuProps['items'];
19
19
  onActionClick?: (action: ActionIconGroupEvent) => void;
20
20
  ref?: Ref<HTMLDivElement>;
21
21
  shadow?: boolean;
@@ -1,8 +1,8 @@
1
1
  import { AlertProps } from "./type.mjs";
2
- import * as react45 from "react";
2
+ import * as react8 from "react";
3
3
 
4
4
  //#region src/Alert/Alert.d.ts
5
- declare const Alert: react45.NamedExoticComponent<AlertProps>;
5
+ declare const Alert: react8.NamedExoticComponent<AlertProps>;
6
6
  //#endregion
7
7
  export { Alert };
8
8
  //# sourceMappingURL=Alert.d.mts.map
@@ -1,8 +1,8 @@
1
1
  import { AutoCompleteProps } from "./type.mjs";
2
- import * as react44 from "react";
2
+ import * as react73 from "react";
3
3
 
4
4
  //#region src/AutoComplete/Select.d.ts
5
- declare const AutoComplete: react44.NamedExoticComponent<AutoCompleteProps>;
5
+ declare const AutoComplete: react73.NamedExoticComponent<AutoCompleteProps>;
6
6
  //#endregion
7
7
  export { AutoComplete };
8
8
  //# sourceMappingURL=Select.d.mts.map
@@ -1,8 +1,8 @@
1
1
  import { AvatarGroupProps } from "../type.mjs";
2
- import * as react41 from "react";
2
+ import * as react12 from "react";
3
3
 
4
4
  //#region src/Avatar/AvatarGroup/index.d.ts
5
- declare const AvatarGroup: react41.NamedExoticComponent<AvatarGroupProps>;
5
+ declare const AvatarGroup: react12.NamedExoticComponent<AvatarGroupProps>;
6
6
  //#endregion
7
7
  export { AvatarGroup };
8
8
  //# sourceMappingURL=index.d.mts.map
@@ -1,8 +1,8 @@
1
1
  import { BurgerProps } from "./type.mjs";
2
- import * as react42 from "react";
2
+ import * as react11 from "react";
3
3
 
4
4
  //#region src/Burger/Burger.d.ts
5
- declare const Burger: react42.NamedExoticComponent<BurgerProps>;
5
+ declare const Burger: react11.NamedExoticComponent<BurgerProps>;
6
6
  //#endregion
7
7
  export { Burger };
8
8
  //# sourceMappingURL=Burger.d.mts.map
@@ -1,8 +1,8 @@
1
1
  import { CodeEditorProps } from "./type.mjs";
2
- import * as react40 from "react";
2
+ import * as react9 from "react";
3
3
 
4
4
  //#region src/CodeEditor/CodeEditor.d.ts
5
- declare const CodeEditor: react40.NamedExoticComponent<CodeEditorProps>;
5
+ declare const CodeEditor: react9.NamedExoticComponent<CodeEditorProps>;
6
6
  //#endregion
7
7
  export { CodeEditor };
8
8
  //# sourceMappingURL=CodeEditor.d.mts.map
@@ -1,8 +1,8 @@
1
1
  import { CollapseProps } from "./type.mjs";
2
- import * as react39 from "react";
2
+ import * as react10 from "react";
3
3
 
4
4
  //#region src/Collapse/Collapse.d.ts
5
- declare const Collapse: react39.NamedExoticComponent<CollapseProps>;
5
+ declare const Collapse: react10.NamedExoticComponent<CollapseProps>;
6
6
  //#endregion
7
7
  export { Collapse };
8
8
  //# sourceMappingURL=Collapse.d.mts.map
@@ -1,7 +1,7 @@
1
1
  import { MotionComponentType } from "../MotionProvider/index.mjs";
2
2
  import { TranslationResourcesInput } from "../i18n/types.mjs";
3
3
  import { CDN, CdnApi } from "../utils/genCdnUrl.mjs";
4
- import * as react54 from "react";
4
+ import * as react62 from "react";
5
5
  import { ElementType, ReactNode } from "react";
6
6
 
7
7
  //#region src/ConfigProvider/index.d.ts
@@ -19,7 +19,7 @@ interface ConfigProviderProps {
19
19
  motion: MotionComponentType;
20
20
  resources?: TranslationResourcesInput;
21
21
  }
22
- declare const ConfigProvider: react54.NamedExoticComponent<ConfigProviderProps>;
22
+ declare const ConfigProvider: react62.NamedExoticComponent<ConfigProviderProps>;
23
23
  type CdnFn = ({
24
24
  pkg,
25
25
  version,
@@ -1,8 +1,8 @@
1
- import * as react109 from "react";
1
+ import * as react107 from "react";
2
2
  import * as react_jsx_runtime0 from "react/jsx-runtime";
3
3
 
4
4
  //#region src/ContextMenu/ContextMenuHost.d.ts
5
- declare const ContextMenuHost: react109.MemoExoticComponent<() => react_jsx_runtime0.JSX.Element | null>;
5
+ declare const ContextMenuHost: react107.MemoExoticComponent<() => react_jsx_runtime0.JSX.Element | null>;
6
6
  //#endregion
7
7
  export { ContextMenuHost };
8
8
  //# sourceMappingURL=ContextMenuHost.d.mts.map
@@ -3,8 +3,8 @@
3
3
  import { LOBE_THEME_APP_ID } from "../ThemeProvider/constants.mjs";
4
4
  import { TOOLTIP_CONTAINER_ATTR } from "../Tooltip/TooltipPortal.mjs";
5
5
  import { preventDefaultAndStopPropagation } from "../utils/dom.mjs";
6
- import { useIsClient } from "../hooks/useIsClient.mjs";
7
6
  import { styles } from "../Menu/sharedStyle.mjs";
7
+ import { useIsClient } from "../hooks/useIsClient.mjs";
8
8
  import { renderContextMenuItems } from "./renderItems.mjs";
9
9
  import { closeContextMenu, getServerSnapshot, getSnapshot, setContextMenuState, subscribe, updateLastPointer } from "./store.mjs";
10
10
  import { memo, useEffect, useMemo, useSyncExternalStore } from "react";
@@ -1,7 +1,7 @@
1
1
  'use client';
2
2
 
3
- import { getServerSnapshot, getSnapshot, showContextMenu, subscribe } from "./store.mjs";
4
3
  import { CLASSNAMES } from "../styles/classNames.mjs";
4
+ import { getServerSnapshot, getSnapshot, showContextMenu, subscribe } from "./store.mjs";
5
5
  import React, { cloneElement, isValidElement, memo, useCallback, useId, useSyncExternalStore } from "react";
6
6
  import { jsx } from "react/jsx-runtime";
7
7
  import { mergeProps } from "@base-ui/react/merge-props";
@@ -1,8 +1,8 @@
1
1
  import { CopyButtonProps } from "./type.mjs";
2
- import * as react38 from "react";
2
+ import * as react4 from "react";
3
3
 
4
4
  //#region src/CopyButton/CopyButton.d.ts
5
- declare const CopyButton: react38.NamedExoticComponent<CopyButtonProps>;
5
+ declare const CopyButton: react4.NamedExoticComponent<CopyButtonProps>;
6
6
  //#endregion
7
7
  export { CopyButton };
8
8
  //# sourceMappingURL=CopyButton.d.mts.map
@@ -1,8 +1,8 @@
1
1
  import { DatePickerProps } from "./type.mjs";
2
- import * as react37 from "react";
2
+ import * as react6 from "react";
3
3
 
4
4
  //#region src/DatePicker/DatePicker.d.ts
5
- declare const DatePicker: react37.NamedExoticComponent<DatePickerProps>;
5
+ declare const DatePicker: react6.NamedExoticComponent<DatePickerProps>;
6
6
  //#endregion
7
7
  export { DatePicker };
8
8
  //# sourceMappingURL=DatePicker.d.mts.map
@@ -1,9 +1,9 @@
1
1
  import { DivProps } from "../../types/index.mjs";
2
- import * as react70 from "react";
2
+ import * as react57 from "react";
3
3
 
4
4
  //#region src/DraggablePanel/components/DraggablePanelBody.d.ts
5
5
  type DraggablePanelBodyProps = DivProps;
6
- declare const DraggablePanelBody: react70.NamedExoticComponent<DivProps>;
6
+ declare const DraggablePanelBody: react57.NamedExoticComponent<DivProps>;
7
7
  //#endregion
8
8
  export { DraggablePanelBody, DraggablePanelBodyProps };
9
9
  //# sourceMappingURL=DraggablePanelBody.d.mts.map
@@ -1,9 +1,9 @@
1
1
  import { DivProps } from "../../types/index.mjs";
2
- import * as react71 from "react";
2
+ import * as react58 from "react";
3
3
 
4
4
  //#region src/DraggablePanel/components/DraggablePanelContainer.d.ts
5
5
  type DraggablePanelContainerProps = DivProps;
6
- declare const DraggablePanelContainer: react71.NamedExoticComponent<DivProps>;
6
+ declare const DraggablePanelContainer: react58.NamedExoticComponent<DivProps>;
7
7
  //#endregion
8
8
  export { DraggablePanelContainer, DraggablePanelContainerProps };
9
9
  //# sourceMappingURL=DraggablePanelContainer.d.mts.map
@@ -1,9 +1,9 @@
1
1
  import { DivProps } from "../../types/index.mjs";
2
- import * as react68 from "react";
2
+ import * as react59 from "react";
3
3
 
4
4
  //#region src/DraggablePanel/components/DraggablePanelFooter.d.ts
5
5
  type DraggablePanelFooterProps = DivProps;
6
- declare const DraggablePanelFooter: react68.NamedExoticComponent<DivProps>;
6
+ declare const DraggablePanelFooter: react59.NamedExoticComponent<DivProps>;
7
7
  //#endregion
8
8
  export { DraggablePanelFooter, DraggablePanelFooterProps };
9
9
  //# sourceMappingURL=DraggablePanelFooter.d.mts.map
@@ -1,5 +1,5 @@
1
1
  import { DivProps } from "../../types/index.mjs";
2
- import * as react72 from "react";
2
+ import * as react60 from "react";
3
3
 
4
4
  //#region src/DraggablePanel/components/DraggablePanelHeader.d.ts
5
5
  interface DraggablePanelHeaderProps extends Omit<DivProps, 'children'> {
@@ -9,7 +9,7 @@ interface DraggablePanelHeaderProps extends Omit<DivProps, 'children'> {
9
9
  setPin?: (pin: boolean) => void;
10
10
  title?: string;
11
11
  }
12
- declare const DraggablePanelHeader: react72.NamedExoticComponent<DraggablePanelHeaderProps>;
12
+ declare const DraggablePanelHeader: react60.NamedExoticComponent<DraggablePanelHeaderProps>;
13
13
  //#endregion
14
14
  export { DraggablePanelHeader, DraggablePanelHeaderProps };
15
15
  //# sourceMappingURL=DraggablePanelHeader.d.mts.map
@@ -1,8 +1,8 @@
1
1
  import { DraggableSideNavProps } from "./type.mjs";
2
- import * as react36 from "react";
2
+ import * as react61 from "react";
3
3
 
4
4
  //#region src/DraggableSideNav/DraggableSideNav.d.ts
5
- declare const DraggableSideNav: react36.NamedExoticComponent<DraggableSideNavProps>;
5
+ declare const DraggableSideNav: react61.NamedExoticComponent<DraggableSideNavProps>;
6
6
  //#endregion
7
7
  export { DraggableSideNav };
8
8
  //# sourceMappingURL=DraggableSideNav.d.mts.map
@@ -1,8 +1,8 @@
1
1
  import { DrawerProps } from "./type.mjs";
2
- import * as react33 from "react";
2
+ import * as react54 from "react";
3
3
 
4
4
  //#region src/Drawer/Drawer.d.ts
5
- declare const Drawer: react33.NamedExoticComponent<DrawerProps>;
5
+ declare const Drawer: react54.NamedExoticComponent<DrawerProps>;
6
6
  //#endregion
7
7
  export { Drawer };
8
8
  //# sourceMappingURL=Drawer.d.mts.map
@@ -1,8 +1,8 @@
1
1
  import { DropdownProps } from "./type.mjs";
2
- import * as react22 from "react";
2
+ import * as react7 from "react";
3
3
 
4
4
  //#region src/Dropdown/Dropdown.d.ts
5
- declare const Dropdown: react22.NamedExoticComponent<DropdownProps>;
5
+ declare const Dropdown: react7.NamedExoticComponent<DropdownProps>;
6
6
  //#endregion
7
7
  export { Dropdown };
8
8
  //# sourceMappingURL=Dropdown.d.mts.map
@@ -1,8 +1,8 @@
1
1
  import { DropdownMenuProps } from "./type.mjs";
2
- import * as react26 from "react";
2
+ import * as react55 from "react";
3
3
 
4
4
  //#region src/DropdownMenu/DropdownMenu.d.ts
5
- declare const DropdownMenu: react26.NamedExoticComponent<DropdownMenuProps<unknown>>;
5
+ declare const DropdownMenu: react55.NamedExoticComponent<DropdownMenuProps<unknown>>;
6
6
  //#endregion
7
7
  export { DropdownMenu };
8
8
  //# sourceMappingURL=DropdownMenu.d.mts.map
@@ -1,17 +1,17 @@
1
1
  'use client';
2
2
 
3
3
  import { LOBE_THEME_APP_ID } from "../ThemeProvider/constants.mjs";
4
+ import { CLASSNAMES } from "../styles/classNames.mjs";
4
5
  import { TOOLTIP_CONTAINER_ATTR } from "../Tooltip/TooltipPortal.mjs";
5
- import { useIsClient } from "../hooks/useIsClient.mjs";
6
6
  import { styles } from "../Menu/sharedStyle.mjs";
7
- import { CLASSNAMES } from "../styles/classNames.mjs";
7
+ import { useIsClient } from "../hooks/useIsClient.mjs";
8
8
  import { renderDropdownMenuItems } from "./renderItems.mjs";
9
9
  import { cloneElement, isValidElement, memo, useCallback, useEffect, useMemo, useState } from "react";
10
10
  import { jsx, jsxs } from "react/jsx-runtime";
11
11
  import { cx } from "antd-style";
12
+ import { Menu } from "@base-ui/react/menu";
12
13
  import { mergeProps } from "@base-ui/react/merge-props";
13
14
  import clsx from "clsx";
14
- import { Menu } from "@base-ui/react/menu";
15
15
 
16
16
  //#region src/DropdownMenu/DropdownMenu.tsx
17
17
  const placementMap = {
@@ -65,7 +65,6 @@ const DropdownMenu = memo(({ children, defaultOpen, items, onOpenChange, open, p
65
65
  return document.body;
66
66
  }, [isClient]);
67
67
  const placementConfig = placementMap[placement];
68
- console.log("children", children);
69
68
  const renderer = useCallback((props) => {
70
69
  const { type, ...restProps } = props;
71
70
  return cloneElement(children, mergeProps(children.props, restProps));
@@ -1 +1 @@
1
- {"version":3,"file":"DropdownMenu.mjs","names":["placementMap: Record<\n DropdownMenuPlacement,\n { align: 'start' | 'center' | 'end'; side: 'top' | 'bottom' }\n>","renderer: ComponentRenderFn<HTMLProps<any>, MenuTriggerState>"],"sources":["../../src/DropdownMenu/DropdownMenu.tsx"],"sourcesContent":["'use client';\n\nimport { Menu, type MenuTriggerState } from '@base-ui/react/menu';\nimport { mergeProps } from '@base-ui/react/merge-props';\nimport type { ComponentRenderFn, HTMLProps } from '@base-ui/react/utils/types';\nimport { cx } from 'antd-style';\nimport clsx from 'clsx';\nimport {\n cloneElement,\n isValidElement,\n memo,\n useCallback,\n useEffect,\n useMemo,\n useState,\n} from 'react';\n\nimport { styles } from '@/Menu/sharedStyle';\nimport { LOBE_THEME_APP_ID } from '@/ThemeProvider';\nimport { TOOLTIP_CONTAINER_ATTR } from '@/Tooltip/TooltipPortal';\nimport { useIsClient } from '@/hooks/useIsClient';\nimport { CLASSNAMES } from '@/styles/classNames';\n\nimport { renderDropdownMenuItems } from './renderItems';\nimport type { DropdownMenuPlacement, DropdownMenuProps } from './type';\n\nconst placementMap: Record<\n DropdownMenuPlacement,\n { align: 'start' | 'center' | 'end'; side: 'top' | 'bottom' }\n> = {\n bottomCenter: { align: 'center', side: 'bottom' },\n bottomLeft: { align: 'start', side: 'bottom' },\n bottomRight: { align: 'end', side: 'bottom' },\n topCenter: { align: 'center', side: 'top' },\n topLeft: { align: 'start', side: 'top' },\n topRight: { align: 'end', side: 'top' },\n};\n\nconst DropdownMenu = memo<DropdownMenuProps>(\n ({\n children,\n defaultOpen,\n\n items,\n onOpenChange,\n open,\n placement = 'bottomLeft',\n popupProps,\n portalProps,\n positionerProps,\n triggerProps,\n ...rest\n }) => {\n const isClient = useIsClient();\n const [uncontrolledOpen, setUncontrolledOpen] = useState(Boolean(defaultOpen));\n\n useEffect(() => {\n if (open === undefined) return;\n setUncontrolledOpen(open);\n }, [open]);\n\n const handleOpenChange = useCallback(\n (nextOpen: boolean, details: Parameters<NonNullable<typeof onOpenChange>>[1]) => {\n onOpenChange?.(nextOpen, details);\n if (open === undefined) {\n setUncontrolledOpen(nextOpen);\n }\n },\n [onOpenChange, open],\n );\n\n const shouldRenderItems = open ?? uncontrolledOpen;\n const menuItems = useMemo(() => {\n if (!shouldRenderItems) return null;\n const resolvedItems = typeof items === 'function' ? items() : items;\n return renderDropdownMenuItems(resolvedItems);\n }, [items, shouldRenderItems]);\n const portalContainer = useMemo(() => {\n if (!isClient) return null;\n\n const themeApp = document.querySelector<HTMLElement>(`#${LOBE_THEME_APP_ID}`);\n if (themeApp) return themeApp;\n\n const tooltipContainer = document.querySelector<HTMLElement>(\n `[${TOOLTIP_CONTAINER_ATTR}=\"true\"]`,\n );\n if (tooltipContainer) return tooltipContainer;\n\n return document.body;\n }, [isClient]);\n const placementConfig = placementMap[placement];\n console.log('children', children);\n const renderer: ComponentRenderFn<HTMLProps<any>, MenuTriggerState> = useCallback(\n (props) => {\n // FIXEE: Omit type: 'button' pass to and button\n // eslint-disable-next-line unused-imports/no-unused-vars, @typescript-eslint/no-unused-vars\n const { type, ...restProps } = props as any;\n return cloneElement(children as any, mergeProps((children as any).props, restProps));\n },\n [children],\n );\n const trigger = isValidElement(children) ? (\n <Menu.Trigger\n {...triggerProps}\n className={clsx(CLASSNAMES.DropdownMenuTrigger, triggerProps?.className)}\n render={renderer}\n />\n ) : (\n <Menu.Trigger\n {...triggerProps}\n className={clsx(CLASSNAMES.DropdownMenuTrigger, triggerProps?.className)}\n >\n {children}\n </Menu.Trigger>\n );\n\n return (\n <Menu.Root {...rest} defaultOpen={defaultOpen} onOpenChange={handleOpenChange} open={open}>\n {trigger}\n <Menu.Portal container={portalProps?.container ?? portalContainer} {...portalProps}>\n <Menu.Positioner\n {...positionerProps}\n align={positionerProps?.align ?? placementConfig.align}\n className={(state) =>\n cx(\n styles.positioner,\n typeof positionerProps?.className === 'function'\n ? positionerProps.className(state)\n : positionerProps?.className,\n )\n }\n side={positionerProps?.side ?? placementConfig.side}\n sideOffset={positionerProps?.sideOffset ?? 6}\n >\n <Menu.Popup\n {...popupProps}\n className={(state) =>\n cx(\n styles.popup,\n typeof popupProps?.className === 'function'\n ? popupProps.className(state)\n : popupProps?.className,\n )\n }\n >\n {menuItems}\n </Menu.Popup>\n </Menu.Positioner>\n </Menu.Portal>\n </Menu.Root>\n );\n },\n);\n\nDropdownMenu.displayName = 'DropdownMenuV2';\n\nexport default DropdownMenu;\n"],"mappings":";;;;;;;;;;;;;;;;AA0BA,MAAMA,eAGF;CACF,cAAc;EAAE,OAAO;EAAU,MAAM;EAAU;CACjD,YAAY;EAAE,OAAO;EAAS,MAAM;EAAU;CAC9C,aAAa;EAAE,OAAO;EAAO,MAAM;EAAU;CAC7C,WAAW;EAAE,OAAO;EAAU,MAAM;EAAO;CAC3C,SAAS;EAAE,OAAO;EAAS,MAAM;EAAO;CACxC,UAAU;EAAE,OAAO;EAAO,MAAM;EAAO;CACxC;AAED,MAAM,eAAe,MAClB,EACC,UACA,aAEA,OACA,cACA,MACA,YAAY,cACZ,YACA,aACA,iBACA,cACA,GAAG,WACC;CACJ,MAAM,WAAW,aAAa;CAC9B,MAAM,CAAC,kBAAkB,uBAAuB,SAAS,QAAQ,YAAY,CAAC;AAE9E,iBAAgB;AACd,MAAI,SAAS,OAAW;AACxB,sBAAoB,KAAK;IACxB,CAAC,KAAK,CAAC;CAEV,MAAM,mBAAmB,aACtB,UAAmB,YAA6D;AAC/E,iBAAe,UAAU,QAAQ;AACjC,MAAI,SAAS,OACX,qBAAoB,SAAS;IAGjC,CAAC,cAAc,KAAK,CACrB;CAED,MAAM,oBAAoB,QAAQ;CAClC,MAAM,YAAY,cAAc;AAC9B,MAAI,CAAC,kBAAmB,QAAO;AAE/B,SAAO,wBADe,OAAO,UAAU,aAAa,OAAO,GAAG,MACjB;IAC5C,CAAC,OAAO,kBAAkB,CAAC;CAC9B,MAAM,kBAAkB,cAAc;AACpC,MAAI,CAAC,SAAU,QAAO;EAEtB,MAAM,WAAW,SAAS,cAA2B,IAAI,oBAAoB;AAC7E,MAAI,SAAU,QAAO;EAErB,MAAM,mBAAmB,SAAS,cAChC,IAAI,uBAAuB,UAC5B;AACD,MAAI,iBAAkB,QAAO;AAE7B,SAAO,SAAS;IACf,CAAC,SAAS,CAAC;CACd,MAAM,kBAAkB,aAAa;AACrC,SAAQ,IAAI,YAAY,SAAS;CACjC,MAAMC,WAAgE,aACnE,UAAU;EAGT,MAAM,EAAE,MAAM,GAAG,cAAc;AAC/B,SAAO,aAAa,UAAiB,WAAY,SAAiB,OAAO,UAAU,CAAC;IAEtF,CAAC,SAAS,CACX;CACD,MAAM,UAAU,eAAe,SAAS,GACtC,oBAAC,KAAK;EACJ,GAAI;EACJ,WAAW,KAAK,WAAW,qBAAqB,cAAc,UAAU;EACxE,QAAQ;GACR,GAEF,oBAAC,KAAK;EACJ,GAAI;EACJ,WAAW,KAAK,WAAW,qBAAqB,cAAc,UAAU;EAEvE;GACY;AAGjB,QACE,qBAAC,KAAK;EAAK,GAAI;EAAmB;EAAa,cAAc;EAAwB;aAClF,SACD,oBAAC,KAAK;GAAO,WAAW,aAAa,aAAa;GAAiB,GAAI;aACrE,oBAAC,KAAK;IACJ,GAAI;IACJ,OAAO,iBAAiB,SAAS,gBAAgB;IACjD,YAAY,UACV,GACE,OAAO,YACP,OAAO,iBAAiB,cAAc,aAClC,gBAAgB,UAAU,MAAM,GAChC,iBAAiB,UACtB;IAEH,MAAM,iBAAiB,QAAQ,gBAAgB;IAC/C,YAAY,iBAAiB,cAAc;cAE3C,oBAAC,KAAK;KACJ,GAAI;KACJ,YAAY,UACV,GACE,OAAO,OACP,OAAO,YAAY,cAAc,aAC7B,WAAW,UAAU,MAAM,GAC3B,YAAY,UACjB;eAGF;MACU;KACG;IACN;GACJ;EAGjB;AAED,aAAa,cAAc;AAE3B,2BAAe"}
1
+ {"version":3,"file":"DropdownMenu.mjs","names":["placementMap: Record<\n DropdownMenuPlacement,\n { align: 'start' | 'center' | 'end'; side: 'top' | 'bottom' }\n>","renderer: ComponentRenderFn<HTMLProps<any>, MenuTriggerState>"],"sources":["../../src/DropdownMenu/DropdownMenu.tsx"],"sourcesContent":["'use client';\n\nimport { Menu, type MenuTriggerState } from '@base-ui/react/menu';\nimport { mergeProps } from '@base-ui/react/merge-props';\nimport type { ComponentRenderFn, HTMLProps } from '@base-ui/react/utils/types';\nimport { cx } from 'antd-style';\nimport clsx from 'clsx';\nimport {\n cloneElement,\n isValidElement,\n memo,\n useCallback,\n useEffect,\n useMemo,\n useState,\n} from 'react';\n\nimport { styles } from '@/Menu/sharedStyle';\nimport { LOBE_THEME_APP_ID } from '@/ThemeProvider';\nimport { TOOLTIP_CONTAINER_ATTR } from '@/Tooltip/TooltipPortal';\nimport { useIsClient } from '@/hooks/useIsClient';\nimport { CLASSNAMES } from '@/styles/classNames';\n\nimport { renderDropdownMenuItems } from './renderItems';\nimport type { DropdownMenuPlacement, DropdownMenuProps } from './type';\n\nconst placementMap: Record<\n DropdownMenuPlacement,\n { align: 'start' | 'center' | 'end'; side: 'top' | 'bottom' }\n> = {\n bottomCenter: { align: 'center', side: 'bottom' },\n bottomLeft: { align: 'start', side: 'bottom' },\n bottomRight: { align: 'end', side: 'bottom' },\n topCenter: { align: 'center', side: 'top' },\n topLeft: { align: 'start', side: 'top' },\n topRight: { align: 'end', side: 'top' },\n};\n\nconst DropdownMenu = memo<DropdownMenuProps>(\n ({\n children,\n defaultOpen,\n\n items,\n onOpenChange,\n open,\n placement = 'bottomLeft',\n popupProps,\n portalProps,\n positionerProps,\n triggerProps,\n ...rest\n }) => {\n const isClient = useIsClient();\n const [uncontrolledOpen, setUncontrolledOpen] = useState(Boolean(defaultOpen));\n\n useEffect(() => {\n if (open === undefined) return;\n setUncontrolledOpen(open);\n }, [open]);\n\n const handleOpenChange = useCallback(\n (nextOpen: boolean, details: Parameters<NonNullable<typeof onOpenChange>>[1]) => {\n onOpenChange?.(nextOpen, details);\n if (open === undefined) {\n setUncontrolledOpen(nextOpen);\n }\n },\n [onOpenChange, open],\n );\n\n const shouldRenderItems = open ?? uncontrolledOpen;\n const menuItems = useMemo(() => {\n if (!shouldRenderItems) return null;\n const resolvedItems = typeof items === 'function' ? items() : items;\n return renderDropdownMenuItems(resolvedItems);\n }, [items, shouldRenderItems]);\n const portalContainer = useMemo(() => {\n if (!isClient) return null;\n\n const themeApp = document.querySelector<HTMLElement>(`#${LOBE_THEME_APP_ID}`);\n if (themeApp) return themeApp;\n\n const tooltipContainer = document.querySelector<HTMLElement>(\n `[${TOOLTIP_CONTAINER_ATTR}=\"true\"]`,\n );\n if (tooltipContainer) return tooltipContainer;\n\n return document.body;\n }, [isClient]);\n const placementConfig = placementMap[placement];\n\n const renderer: ComponentRenderFn<HTMLProps<any>, MenuTriggerState> = useCallback(\n (props) => {\n // FIXEE: Omit type: 'button' pass to and button\n // eslint-disable-next-line unused-imports/no-unused-vars, @typescript-eslint/no-unused-vars\n const { type, ...restProps } = props as any;\n return cloneElement(children as any, mergeProps((children as any).props, restProps));\n },\n [children],\n );\n const trigger = isValidElement(children) ? (\n <Menu.Trigger\n {...triggerProps}\n className={clsx(CLASSNAMES.DropdownMenuTrigger, triggerProps?.className)}\n render={renderer}\n />\n ) : (\n <Menu.Trigger\n {...triggerProps}\n className={clsx(CLASSNAMES.DropdownMenuTrigger, triggerProps?.className)}\n >\n {children}\n </Menu.Trigger>\n );\n\n return (\n <Menu.Root {...rest} defaultOpen={defaultOpen} onOpenChange={handleOpenChange} open={open}>\n {trigger}\n <Menu.Portal container={portalProps?.container ?? portalContainer} {...portalProps}>\n <Menu.Positioner\n {...positionerProps}\n align={positionerProps?.align ?? placementConfig.align}\n className={(state) =>\n cx(\n styles.positioner,\n typeof positionerProps?.className === 'function'\n ? positionerProps.className(state)\n : positionerProps?.className,\n )\n }\n side={positionerProps?.side ?? placementConfig.side}\n sideOffset={positionerProps?.sideOffset ?? 6}\n >\n <Menu.Popup\n {...popupProps}\n className={(state) =>\n cx(\n styles.popup,\n typeof popupProps?.className === 'function'\n ? popupProps.className(state)\n : popupProps?.className,\n )\n }\n >\n {menuItems}\n </Menu.Popup>\n </Menu.Positioner>\n </Menu.Portal>\n </Menu.Root>\n );\n },\n);\n\nDropdownMenu.displayName = 'DropdownMenuV2';\n\nexport default DropdownMenu;\n"],"mappings":";;;;;;;;;;;;;;;;AA0BA,MAAMA,eAGF;CACF,cAAc;EAAE,OAAO;EAAU,MAAM;EAAU;CACjD,YAAY;EAAE,OAAO;EAAS,MAAM;EAAU;CAC9C,aAAa;EAAE,OAAO;EAAO,MAAM;EAAU;CAC7C,WAAW;EAAE,OAAO;EAAU,MAAM;EAAO;CAC3C,SAAS;EAAE,OAAO;EAAS,MAAM;EAAO;CACxC,UAAU;EAAE,OAAO;EAAO,MAAM;EAAO;CACxC;AAED,MAAM,eAAe,MAClB,EACC,UACA,aAEA,OACA,cACA,MACA,YAAY,cACZ,YACA,aACA,iBACA,cACA,GAAG,WACC;CACJ,MAAM,WAAW,aAAa;CAC9B,MAAM,CAAC,kBAAkB,uBAAuB,SAAS,QAAQ,YAAY,CAAC;AAE9E,iBAAgB;AACd,MAAI,SAAS,OAAW;AACxB,sBAAoB,KAAK;IACxB,CAAC,KAAK,CAAC;CAEV,MAAM,mBAAmB,aACtB,UAAmB,YAA6D;AAC/E,iBAAe,UAAU,QAAQ;AACjC,MAAI,SAAS,OACX,qBAAoB,SAAS;IAGjC,CAAC,cAAc,KAAK,CACrB;CAED,MAAM,oBAAoB,QAAQ;CAClC,MAAM,YAAY,cAAc;AAC9B,MAAI,CAAC,kBAAmB,QAAO;AAE/B,SAAO,wBADe,OAAO,UAAU,aAAa,OAAO,GAAG,MACjB;IAC5C,CAAC,OAAO,kBAAkB,CAAC;CAC9B,MAAM,kBAAkB,cAAc;AACpC,MAAI,CAAC,SAAU,QAAO;EAEtB,MAAM,WAAW,SAAS,cAA2B,IAAI,oBAAoB;AAC7E,MAAI,SAAU,QAAO;EAErB,MAAM,mBAAmB,SAAS,cAChC,IAAI,uBAAuB,UAC5B;AACD,MAAI,iBAAkB,QAAO;AAE7B,SAAO,SAAS;IACf,CAAC,SAAS,CAAC;CACd,MAAM,kBAAkB,aAAa;CAErC,MAAMC,WAAgE,aACnE,UAAU;EAGT,MAAM,EAAE,MAAM,GAAG,cAAc;AAC/B,SAAO,aAAa,UAAiB,WAAY,SAAiB,OAAO,UAAU,CAAC;IAEtF,CAAC,SAAS,CACX;CACD,MAAM,UAAU,eAAe,SAAS,GACtC,oBAAC,KAAK;EACJ,GAAI;EACJ,WAAW,KAAK,WAAW,qBAAqB,cAAc,UAAU;EACxE,QAAQ;GACR,GAEF,oBAAC,KAAK;EACJ,GAAI;EACJ,WAAW,KAAK,WAAW,qBAAqB,cAAc,UAAU;EAEvE;GACY;AAGjB,QACE,qBAAC,KAAK;EAAK,GAAI;EAAmB;EAAa,cAAc;EAAwB;aAClF,SACD,oBAAC,KAAK;GAAO,WAAW,aAAa,aAAa;GAAiB,GAAI;aACrE,oBAAC,KAAK;IACJ,GAAI;IACJ,OAAO,iBAAiB,SAAS,gBAAgB;IACjD,YAAY,UACV,GACE,OAAO,YACP,OAAO,iBAAiB,cAAc,aAClC,gBAAgB,UAAU,MAAM,GAChC,iBAAiB,UACtB;IAEH,MAAM,iBAAiB,QAAQ,gBAAgB;IAC/C,YAAY,iBAAiB,cAAc;cAE3C,oBAAC,KAAK;KACJ,GAAI;KACJ,YAAY,UACV,GACE,OAAO,OACP,OAAO,YAAY,cAAc,aAC7B,WAAW,UAAU,MAAM,GAC3B,YAAY,UACjB;eAGF;MACU;KACG;IACN;GACJ;EAGjB;AAED,aAAa,cAAc;AAE3B,2BAAe"}
@@ -1,8 +1,8 @@
1
1
  import { EditableTextProps } from "./type.mjs";
2
- import * as react21 from "react";
2
+ import * as react69 from "react";
3
3
 
4
4
  //#region src/EditableText/EditableText.d.ts
5
- declare const EditableText: react21.NamedExoticComponent<EditableTextProps>;
5
+ declare const EditableText: react69.NamedExoticComponent<EditableTextProps>;
6
6
  //#endregion
7
7
  export { EditableText };
8
8
  //# sourceMappingURL=EditableText.d.mts.map
@@ -1,8 +1,8 @@
1
1
  import { EmojiPickerProps } from "./type.mjs";
2
- import * as react19 from "react";
2
+ import * as react3 from "react";
3
3
 
4
4
  //#region src/EmojiPicker/EmojiPicker.d.ts
5
- declare const EmojiPicker: react19.NamedExoticComponent<EmojiPickerProps>;
5
+ declare const EmojiPicker: react3.NamedExoticComponent<EmojiPickerProps>;
6
6
  //#endregion
7
7
  export { EmojiPicker };
8
8
  //# sourceMappingURL=EmojiPicker.d.mts.map
@@ -1,8 +1,8 @@
1
1
  import { FlexBasicProps } from "./type.mjs";
2
- import * as react34 from "react";
2
+ import * as react5 from "react";
3
3
 
4
4
  //#region src/Flex/FlexBasic.d.ts
5
- declare const _default: react34.NamedExoticComponent<FlexBasicProps>;
5
+ declare const _default: react5.NamedExoticComponent<FlexBasicProps>;
6
6
  //#endregion
7
7
  export { _default };
8
8
  //# sourceMappingURL=FlexBasic.d.mts.map
@@ -1,10 +1,10 @@
1
- import * as react58 from "react";
1
+ import * as react65 from "react";
2
2
 
3
3
  //#region src/FontLoader/index.d.ts
4
4
  interface FontLoaderProps {
5
5
  url: string;
6
6
  }
7
- declare const FontLoader: react58.NamedExoticComponent<FontLoaderProps>;
7
+ declare const FontLoader: react65.NamedExoticComponent<FontLoaderProps>;
8
8
  //#endregion
9
9
  export { FontLoader, FontLoaderProps };
10
10
  //# sourceMappingURL=index.d.mts.map
@@ -1,8 +1,8 @@
1
1
  import { FooterProps } from "./type.mjs";
2
- import * as react31 from "react";
2
+ import * as react38 from "react";
3
3
 
4
4
  //#region src/Footer/Footer.d.ts
5
- declare const Footer: react31.NamedExoticComponent<FooterProps>;
5
+ declare const Footer: react38.NamedExoticComponent<FooterProps>;
6
6
  //#endregion
7
7
  export { Footer };
8
8
  //# sourceMappingURL=Footer.d.mts.map
@@ -1,8 +1,8 @@
1
1
  import { FormGroupProps } from "../type.mjs";
2
- import * as react28 from "react";
2
+ import * as react70 from "react";
3
3
 
4
4
  //#region src/Form/components/FormGroup.d.ts
5
- declare const FormGroup: react28.NamedExoticComponent<FormGroupProps>;
5
+ declare const FormGroup: react70.NamedExoticComponent<FormGroupProps>;
6
6
  //#endregion
7
7
  export { FormGroup };
8
8
  //# sourceMappingURL=FormGroup.d.mts.map
@@ -1,8 +1,8 @@
1
1
  import { FormItemProps } from "../type.mjs";
2
- import * as react29 from "react";
2
+ import * as react71 from "react";
3
3
 
4
4
  //#region src/Form/components/FormItem.d.ts
5
- declare const FormItem: react29.NamedExoticComponent<FormItemProps>;
5
+ declare const FormItem: react71.NamedExoticComponent<FormItemProps>;
6
6
  //#endregion
7
7
  export { FormItem };
8
8
  //# sourceMappingURL=FormItem.d.mts.map
@@ -1,8 +1,8 @@
1
1
  import { FormSubmitFooterProps } from "../type.mjs";
2
- import * as react30 from "react";
2
+ import * as react72 from "react";
3
3
 
4
4
  //#region src/Form/components/FormSubmitFooter.d.ts
5
- declare const FormSubmitFooter: react30.NamedExoticComponent<FormSubmitFooterProps>;
5
+ declare const FormSubmitFooter: react72.NamedExoticComponent<FormSubmitFooterProps>;
6
6
  //#endregion
7
7
  export { FormSubmitFooter };
8
8
  //# sourceMappingURL=FormSubmitFooter.d.mts.map
@@ -1,8 +1,8 @@
1
1
  import { FormModalProps } from "./type.mjs";
2
- import * as react32 from "react";
2
+ import * as react0 from "react";
3
3
 
4
4
  //#region src/FormModal/FormModal.d.ts
5
- declare const FormModal: react32.NamedExoticComponent<FormModalProps>;
5
+ declare const FormModal: react0.NamedExoticComponent<FormModalProps>;
6
6
  //#endregion
7
7
  export { FormModal };
8
8
  //# sourceMappingURL=FormModal.d.mts.map
@@ -1,8 +1,8 @@
1
1
  import { HeaderProps } from "./type.mjs";
2
- import * as react27 from "react";
2
+ import * as react46 from "react";
3
3
 
4
4
  //#region src/Header/Header.d.ts
5
- declare const Header: react27.NamedExoticComponent<HeaderProps>;
5
+ declare const Header: react46.NamedExoticComponent<HeaderProps>;
6
6
  //#endregion
7
7
  export { Header };
8
8
  //# sourceMappingURL=Header.d.mts.map
@@ -1,8 +1,8 @@
1
1
  import { HighlighterProps } from "./type.mjs";
2
- import * as react24 from "react";
2
+ import * as react44 from "react";
3
3
 
4
4
  //#region src/Highlighter/Highlighter.d.ts
5
- declare const Highlighter: react24.NamedExoticComponent<HighlighterProps>;
5
+ declare const Highlighter: react44.NamedExoticComponent<HighlighterProps>;
6
6
  //#endregion
7
7
  export { Highlighter };
8
8
  //# sourceMappingURL=Highlighter.d.mts.map
@@ -1,8 +1,8 @@
1
1
  import { SyntaxHighlighterProps } from "../type.mjs";
2
- import * as react25 from "react";
2
+ import * as react45 from "react";
3
3
 
4
4
  //#region src/Highlighter/SyntaxHighlighter/index.d.ts
5
- declare const SyntaxHighlighter: react25.NamedExoticComponent<SyntaxHighlighterProps>;
5
+ declare const SyntaxHighlighter: react45.NamedExoticComponent<SyntaxHighlighterProps>;
6
6
  //#endregion
7
7
  export { SyntaxHighlighter };
8
8
  //# sourceMappingURL=index.d.mts.map
@@ -1,8 +1,8 @@
1
1
  import { HotkeyProps } from "./type.mjs";
2
- import * as react23 from "react";
2
+ import * as react41 from "react";
3
3
 
4
4
  //#region src/Hotkey/Hotkey.d.ts
5
- declare const Hotkey: react23.NamedExoticComponent<HotkeyProps>;
5
+ declare const Hotkey: react41.NamedExoticComponent<HotkeyProps>;
6
6
  //#endregion
7
7
  export { Hotkey };
8
8
  //# sourceMappingURL=Hotkey.d.mts.map