@lobehub/ui 4.9.2 → 4.10.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.
- package/es/Accordion/Accordion.d.mts +2 -2
- package/es/Accordion/AccordionItem.d.mts +2 -2
- package/es/ActionIcon/ActionIcon.d.mts +2 -2
- package/es/Alert/Alert.d.mts +2 -2
- package/es/AutoComplete/Select.d.mts +2 -2
- package/es/Avatar/Avatar.mjs +41 -31
- package/es/Avatar/Avatar.mjs.map +1 -1
- package/es/Avatar/AvatarGroup/index.d.mts +2 -2
- package/es/Avatar/utils.mjs +50 -0
- package/es/Avatar/utils.mjs.map +1 -0
- package/es/Burger/Burger.d.mts +2 -2
- package/es/CodeEditor/CodeEditor.d.mts +2 -2
- package/es/Collapse/Collapse.d.mts +2 -2
- package/es/ColorSwatches/ColorSwatches.mjs +3 -2
- package/es/ColorSwatches/ColorSwatches.mjs.map +1 -1
- package/es/ConfigProvider/index.d.mts +2 -2
- package/es/ContextMenu/ContextMenuHost.d.mts +2 -2
- package/es/CopyButton/CopyButton.d.mts +2 -2
- package/es/DatePicker/DatePicker.d.mts +2 -2
- package/es/DraggablePanel/components/DraggablePanelBody.d.mts +2 -2
- package/es/DraggablePanel/components/DraggablePanelContainer.d.mts +2 -2
- package/es/DraggablePanel/components/DraggablePanelFooter.d.mts +2 -2
- package/es/DraggablePanel/components/DraggablePanelHeader.d.mts +2 -2
- package/es/DraggablePanel/style.mjs +1 -1
- package/es/DraggablePanel/style.mjs.map +1 -1
- package/es/DraggableSideNav/DraggableSideNav.d.mts +2 -2
- package/es/Drawer/Drawer.d.mts +2 -2
- package/es/Dropdown/Dropdown.d.mts +9 -2
- package/es/Dropdown/Dropdown.mjs +6 -0
- package/es/Dropdown/Dropdown.mjs.map +1 -1
- package/es/DropdownMenu/DropdownMenu.d.mts +2 -2
- package/es/DropdownMenu/DropdownMenu.mjs +20 -36
- package/es/DropdownMenu/DropdownMenu.mjs.map +1 -1
- package/es/DropdownMenu/type.d.mts +2 -1
- package/es/EditableText/EditableText.d.mts +2 -2
- package/es/EmojiPicker/EmojiPicker.d.mts +2 -2
- package/es/Flex/FlexBasic.d.mts +2 -2
- package/es/FontLoader/index.d.mts +2 -2
- package/es/Footer/Footer.d.mts +2 -2
- package/es/Form/components/FormGroup.d.mts +2 -2
- package/es/Form/components/FormItem.d.mts +2 -2
- package/es/Form/components/FormSubmitFooter.d.mts +2 -2
- package/es/FormModal/FormModal.d.mts +2 -2
- package/es/GuideCard/GuideCard.d.mts +2 -2
- package/es/Header/Header.d.mts +2 -2
- package/es/Highlighter/Highlighter.d.mts +2 -2
- package/es/Highlighter/SyntaxHighlighter/index.d.mts +2 -2
- package/es/Hotkey/Hotkey.d.mts +2 -2
- package/es/HotkeyInput/HotkeyInput.d.mts +2 -2
- package/es/Icon/Icon.d.mts +2 -2
- package/es/Icon/components/IconProvider.d.mts +3 -3
- package/es/Image/PreviewGroup.d.mts +2 -2
- package/es/ImageSelect/ImageSelect.d.mts +2 -2
- package/es/Input/Input.d.mts +2 -2
- package/es/Input/InputNumber.d.mts +2 -2
- package/es/Input/InputOPT.d.mts +2 -2
- package/es/Input/InputPassword.d.mts +2 -2
- package/es/Input/TextArea.d.mts +2 -2
- package/es/Layout/components/LayoutFooter.d.mts +2 -2
- package/es/Layout/components/LayoutHeader.d.mts +2 -2
- package/es/Layout/components/LayoutMain.d.mts +2 -2
- package/es/Layout/components/LayoutSidebar.d.mts +2 -2
- package/es/Layout/components/LayoutSidebarInner.d.mts +2 -2
- package/es/Layout/components/LayoutToc.d.mts +2 -2
- package/es/List/ListItem/index.d.mts +2 -2
- package/es/Markdown/Markdown.d.mts +2 -2
- package/es/Markdown/Typography.d.mts +2 -2
- package/es/Markdown/components/SearchResultCards/index.d.mts +2 -2
- package/es/MaskShadow/MaskShadow.d.mts +2 -2
- package/es/Menu/Menu.d.mts +2 -2
- package/es/Menu/sharedStyle.mjs +56 -10
- package/es/Menu/sharedStyle.mjs.map +1 -1
- package/es/Mermaid/Mermaid.d.mts +2 -2
- package/es/Mermaid/SyntaxMermaid/index.d.mts +2 -2
- package/es/Modal/Modal.d.mts +2 -2
- package/es/Modal/ModalProvider.d.mts +2 -2
- package/es/MotionProvider/index.d.mts +2 -2
- package/es/Popover/ArrowIcon.mjs +22 -0
- package/es/Popover/ArrowIcon.mjs.map +1 -0
- package/es/Popover/Popover.d.mts +9 -0
- package/es/Popover/Popover.mjs +20 -0
- package/es/Popover/Popover.mjs.map +1 -0
- package/es/Popover/PopoverGroup.d.mts +11 -0
- package/es/Popover/PopoverGroup.mjs +96 -0
- package/es/Popover/PopoverGroup.mjs.map +1 -0
- package/es/Popover/PopoverInGroup.mjs +55 -0
- package/es/Popover/PopoverInGroup.mjs.map +1 -0
- package/es/Popover/PopoverPortal.mjs +45 -0
- package/es/Popover/PopoverPortal.mjs.map +1 -0
- package/es/Popover/PopoverStandalone.mjs +166 -0
- package/es/Popover/PopoverStandalone.mjs.map +1 -0
- package/es/Popover/groupContext.d.mts +14 -0
- package/es/Popover/groupContext.mjs +11 -0
- package/es/Popover/groupContext.mjs.map +1 -0
- package/es/Popover/index.d.mts +5 -0
- package/es/Popover/index.d.ts +1 -0
- package/es/Popover/index.js +1 -0
- package/es/Popover/index.mjs +5 -0
- package/es/Popover/parseTrigger.d.mts +14 -0
- package/es/Popover/parseTrigger.mjs +18 -0
- package/es/Popover/parseTrigger.mjs.map +1 -0
- package/es/Popover/style.mjs +218 -0
- package/es/Popover/style.mjs.map +1 -0
- package/es/Popover/type.d.mts +112 -0
- package/es/Popover/useMergedPopoverProps.mjs +88 -0
- package/es/Popover/useMergedPopoverProps.mjs.map +1 -0
- package/es/SearchBar/SearchBar.d.mts +2 -2
- package/es/Segmented/Segmented.d.mts +2 -2
- package/es/Select/Select.d.mts +2 -2
- package/es/SideNav/SideNav.d.mts +2 -2
- package/es/SliderWithInput/SliderWithInput.d.mts +2 -2
- package/es/SortableList/components/DragHandle.d.mts +2 -2
- package/es/SortableList/components/SortableItem.d.mts +2 -2
- package/es/ThemeProvider/GlobalStyle/antdOverride.mjs +4 -3
- package/es/ThemeProvider/GlobalStyle/antdOverride.mjs.map +1 -1
- package/es/ThemeProvider/ThemeProvider.d.mts +2 -2
- package/es/Toc/Toc.d.mts +2 -2
- package/es/Tooltip/TooltipGroup.mjs +2 -2
- package/es/Tooltip/TooltipGroup.mjs.map +1 -1
- package/es/Tooltip/type.d.mts +2 -2
- package/es/Tooltip/useTooltipFloating.mjs +2 -2
- package/es/Tooltip/useTooltipFloating.mjs.map +1 -1
- package/es/Video/index.d.mts +2 -2
- package/es/awesome/AuroraBackground/AuroraBackground.d.mts +2 -2
- package/es/awesome/BottomGradientButton/BottomGradientButton.d.mts +2 -2
- package/es/awesome/Features/Features.d.mts +2 -2
- package/es/awesome/Giscus/style.mjs +4 -3
- package/es/awesome/Giscus/style.mjs.map +1 -1
- package/es/awesome/GradientButton/GradientButton.d.mts +2 -2
- package/es/awesome/GridBackground/GridBackground.d.mts +2 -2
- package/es/awesome/GridBackground/GridShowcase.d.mts +2 -2
- package/es/awesome/Hero/Hero.d.mts +2 -2
- package/es/awesome/Spotlight/Spotlight.d.mts +2 -2
- package/es/awesome/SpotlightCard/SpotlightCard.d.mts +2 -2
- package/es/awesome/TypewriterEffect/TypewriterEffect.d.mts +2 -2
- package/es/brand/LobeChat/index.d.mts +2 -2
- package/es/brand/LobeHub/index.d.mts +2 -2
- package/es/brand/LogoThree/LogoSpline.d.mts +2 -2
- package/es/brand/LogoThree/index.d.mts +2 -2
- package/es/chat/BackBottom/BackBottom.d.mts +2 -2
- package/es/chat/ChatInputArea/components/ChatInputAreaInner.d.mts +2 -2
- package/es/chat/ChatItem/ChatItem.d.mts +2 -2
- package/es/chat/ChatList/ChatList.d.mts +2 -2
- package/es/chat/EditableMessage/EditableMessage.d.mts +2 -2
- package/es/chat/EditableMessageList/EditableMessageList.d.mts +2 -2
- package/es/chat/MessageInput/MessageInput.d.mts +2 -2
- package/es/chat/MessageModal/MessageModal.d.mts +2 -2
- package/es/color/ColorScales/index.d.mts +2 -2
- package/es/color/CssVar/index.d.mts +2 -2
- package/es/i18n/context.d.mts +2 -2
- package/es/icons/lucideExtra/BotPromptIcon.d.mts +2 -2
- package/es/icons/lucideExtra/CreateBotIcon.d.mts +3 -3
- package/es/icons/lucideExtra/DiscordIcon.d.mts +3 -3
- package/es/icons/lucideExtra/GlobeOffIcon.d.mts +2 -2
- package/es/icons/lucideExtra/GroupBotIcon.d.mts +3 -3
- package/es/icons/lucideExtra/GroupBotSquareIcon.d.mts +3 -3
- package/es/icons/lucideExtra/LeftClickIcon.d.mts +3 -3
- package/es/icons/lucideExtra/LeftDoubleClickIcon.d.mts +3 -3
- package/es/icons/lucideExtra/McpIcon.d.mts +3 -3
- package/es/icons/lucideExtra/ProviderIcon.d.mts +3 -3
- package/es/icons/lucideExtra/RightClickIcon.d.mts +3 -3
- package/es/icons/lucideExtra/RightDoubleClickIcon.d.mts +3 -3
- package/es/icons/lucideExtra/ShapesUploadIcon.d.mts +3 -3
- package/es/icons/lucideExtra/TreeDownRightIcon.d.mts +3 -3
- package/es/icons/lucideExtra/TreeUpDownRightIcon.d.mts +3 -3
- package/es/index.d.mts +6 -1
- package/es/index.mjs +4 -1
- package/es/mdx/Mdx/index.d.mts +2 -2
- package/es/mobile/ChatHeader/ChatHeaderTitle.d.mts +2 -2
- package/es/mobile/ChatInputArea/components/ChatSendButton.d.mts +2 -2
- package/es/mobile/TabBar/TabBar.d.mts +2 -2
- package/es/storybook/StoryBook/index.d.mts +2 -2
- package/es/utils/placement.d.mts +31 -0
- package/es/utils/placement.mjs +100 -0
- package/es/utils/placement.mjs.map +1 -0
- package/es/utils/safeReadableColor.mjs +15 -0
- package/es/utils/safeReadableColor.mjs.map +1 -0
- package/package.json +1 -1
- package/es/Tooltip/antdPlacementToFloating.mjs +0 -27
- package/es/Tooltip/antdPlacementToFloating.mjs.map +0 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { AccordionProps } from "./type.mjs";
|
|
2
|
-
import * as
|
|
2
|
+
import * as react71 from "react";
|
|
3
3
|
|
|
4
4
|
//#region src/Accordion/Accordion.d.ts
|
|
5
|
-
declare const Accordion:
|
|
5
|
+
declare const Accordion: react71.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
|
|
2
|
+
import * as react72 from "react";
|
|
3
3
|
|
|
4
4
|
//#region src/Accordion/AccordionItem.d.ts
|
|
5
|
-
declare const AccordionItem:
|
|
5
|
+
declare const AccordionItem: react72.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
|
|
2
|
+
import * as react70 from "react";
|
|
3
3
|
|
|
4
4
|
//#region src/ActionIcon/ActionIcon.d.ts
|
|
5
|
-
declare const ActionIcon:
|
|
5
|
+
declare const ActionIcon: react70.NamedExoticComponent<ActionIconProps>;
|
|
6
6
|
//#endregion
|
|
7
7
|
export { ActionIcon };
|
|
8
8
|
//# sourceMappingURL=ActionIcon.d.mts.map
|
package/es/Alert/Alert.d.mts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { AlertProps } from "./type.mjs";
|
|
2
|
-
import * as
|
|
2
|
+
import * as react69 from "react";
|
|
3
3
|
|
|
4
4
|
//#region src/Alert/Alert.d.ts
|
|
5
|
-
declare const Alert:
|
|
5
|
+
declare const Alert: react69.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
|
|
2
|
+
import * as react73 from "react";
|
|
3
3
|
|
|
4
4
|
//#region src/AutoComplete/Select.d.ts
|
|
5
|
-
declare const AutoComplete:
|
|
5
|
+
declare const AutoComplete: react73.NamedExoticComponent<AutoCompleteProps>;
|
|
6
6
|
//#endregion
|
|
7
7
|
export { AutoComplete };
|
|
8
8
|
//# sourceMappingURL=Select.d.mts.map
|
package/es/Avatar/Avatar.mjs
CHANGED
|
@@ -2,14 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
import Center_default from "../Flex/Center.mjs";
|
|
4
4
|
import Icon_default from "../Icon/Icon.mjs";
|
|
5
|
+
import { safeReadableColor } from "../utils/safeReadableColor.mjs";
|
|
5
6
|
import Img_default from "../Img/index.mjs";
|
|
6
7
|
import FluentEmoji_default from "../FluentEmoji/FluentEmoji.mjs";
|
|
7
8
|
import { styles, variants } from "./style.mjs";
|
|
8
|
-
import {
|
|
9
|
+
import { calculateEmojiSize, formatAvatarText, getActualColorForReadable, hasValidBackground, isDefaultAntAvatar } from "./utils.mjs";
|
|
10
|
+
import { memo, useMemo } from "react";
|
|
9
11
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
10
12
|
import { Avatar } from "antd";
|
|
11
13
|
import { cssVar, cx, useTheme } from "antd-style";
|
|
12
|
-
import { readableColor } from "polished";
|
|
13
14
|
import { Loader2 } from "lucide-react";
|
|
14
15
|
import { getEmoji } from "@lobehub/fluent-emoji";
|
|
15
16
|
|
|
@@ -17,33 +18,34 @@ import { getEmoji } from "@lobehub/fluent-emoji";
|
|
|
17
18
|
const Avatar$1 = memo(({ bordered, className, avatar, title, animation, borderedColor, size = 48, shape = "square", background, style, unoptimized, alt, variant = "borderless", shadow, loading, sliceText = true, emojiScaleWithBackground = true, ref, ...rest }) => {
|
|
18
19
|
const theme = useTheme();
|
|
19
20
|
const isStringAvatar = typeof avatar === "string";
|
|
20
|
-
const isDefaultAntAvatar = useMemo(() =>
|
|
21
|
-
|
|
22
|
-
"http",
|
|
23
|
-
"data:"
|
|
24
|
-
].some((index) => isStringAvatar && avatar.startsWith(index)) || isValidElement(avatar))), [avatar, isStringAvatar]);
|
|
25
|
-
const emoji = useMemo(() => avatar && !isDefaultAntAvatar && isStringAvatar && getEmoji(avatar), [
|
|
21
|
+
const isDefaultAntAvatar$1 = useMemo(() => isDefaultAntAvatar(avatar), [avatar]);
|
|
22
|
+
const emoji = useMemo(() => avatar && !isDefaultAntAvatar$1 && isStringAvatar && getEmoji(avatar), [
|
|
26
23
|
avatar,
|
|
27
24
|
isStringAvatar,
|
|
28
|
-
isDefaultAntAvatar
|
|
25
|
+
isDefaultAntAvatar$1
|
|
29
26
|
]);
|
|
30
|
-
const text = String(isDefaultAntAvatar ? title : avatar);
|
|
27
|
+
const text = String(isDefaultAntAvatar$1 ? title : avatar);
|
|
31
28
|
const imgAlt = alt || title || "avatar";
|
|
32
|
-
const defualtAvatar = typeof avatar === "string" ? /* @__PURE__ */ jsx(Img_default, {
|
|
29
|
+
const defualtAvatar = useMemo(() => typeof avatar === "string" ? /* @__PURE__ */ jsx(Img_default, {
|
|
33
30
|
alt: imgAlt,
|
|
34
31
|
height: size,
|
|
35
32
|
loading: "lazy",
|
|
36
33
|
src: avatar,
|
|
37
34
|
unoptimized,
|
|
38
35
|
width: size
|
|
39
|
-
}) : avatar
|
|
40
|
-
|
|
36
|
+
}) : avatar, [
|
|
37
|
+
avatar,
|
|
38
|
+
imgAlt,
|
|
39
|
+
size,
|
|
40
|
+
unoptimized
|
|
41
|
+
]);
|
|
42
|
+
const hasBackground = hasValidBackground(background);
|
|
41
43
|
const customAvatar = useMemo(() => emoji ? /* @__PURE__ */ jsx(FluentEmoji_default, {
|
|
42
44
|
emoji,
|
|
43
|
-
size:
|
|
45
|
+
size: calculateEmojiSize(size, hasBackground, emojiScaleWithBackground),
|
|
44
46
|
type: animation ? "anim" : "3d",
|
|
45
47
|
unoptimized
|
|
46
|
-
}) :
|
|
48
|
+
}) : formatAvatarText(text || title, sliceText), [
|
|
47
49
|
animation,
|
|
48
50
|
emoji,
|
|
49
51
|
hasBackground,
|
|
@@ -54,11 +56,27 @@ const Avatar$1 = memo(({ bordered, className, avatar, title, animation, bordered
|
|
|
54
56
|
unoptimized,
|
|
55
57
|
emojiScaleWithBackground
|
|
56
58
|
]);
|
|
57
|
-
const actualColorForReadable = useMemo(() =>
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
59
|
+
const actualColorForReadable = useMemo(() => getActualColorForReadable(background, theme.colorBorder), [background, theme.colorBorder]);
|
|
60
|
+
const avatarStyle = useMemo(() => ({
|
|
61
|
+
backgroundColor: isDefaultAntAvatar$1 || !!emoji ? background : background || cssVar.colorBorder,
|
|
62
|
+
borderRadius: shape === "square" && size && size < 24 ? "33%" : void 0,
|
|
63
|
+
boxShadow: bordered ? `${cssVar.colorBgLayout} 0 0 0 2px, ${borderedColor || cssVar.colorTextTertiary} 0 0 0 4px` : void 0,
|
|
64
|
+
color: safeReadableColor(actualColorForReadable),
|
|
65
|
+
cursor: rest?.onClick ? "pointer" : void 0,
|
|
66
|
+
fontSize: size * (emoji ? .7 : .5),
|
|
67
|
+
...style
|
|
68
|
+
}), [
|
|
69
|
+
isDefaultAntAvatar$1,
|
|
70
|
+
emoji,
|
|
71
|
+
background,
|
|
72
|
+
shape,
|
|
73
|
+
size,
|
|
74
|
+
bordered,
|
|
75
|
+
borderedColor,
|
|
76
|
+
actualColorForReadable,
|
|
77
|
+
rest?.onClick,
|
|
78
|
+
style
|
|
79
|
+
]);
|
|
62
80
|
return /* @__PURE__ */ jsxs(Avatar, {
|
|
63
81
|
alt: imgAlt,
|
|
64
82
|
className: cx(variants({
|
|
@@ -69,16 +87,8 @@ const Avatar$1 = memo(({ bordered, className, avatar, title, animation, bordered
|
|
|
69
87
|
ref,
|
|
70
88
|
shape,
|
|
71
89
|
size,
|
|
72
|
-
src: isDefaultAntAvatar ? defualtAvatar : void 0,
|
|
73
|
-
style:
|
|
74
|
-
background: isDefaultAntAvatar || !!emoji ? background : background || cssVar.colorBorder,
|
|
75
|
-
borderRadius: shape === "square" && size && size < 24 ? "33%" : void 0,
|
|
76
|
-
boxShadow: bordered ? `${cssVar.colorBgLayout} 0 0 0 2px, ${borderedColor || cssVar.colorTextTertiary} 0 0 0 4px` : void 0,
|
|
77
|
-
color: readableColor(actualColorForReadable),
|
|
78
|
-
cursor: rest?.onClick ? "pointer" : void 0,
|
|
79
|
-
fontSize: size * (emoji ? .7 : .5),
|
|
80
|
-
...style
|
|
81
|
-
},
|
|
90
|
+
src: isDefaultAntAvatar$1 ? defualtAvatar : void 0,
|
|
91
|
+
style: avatarStyle,
|
|
82
92
|
...rest,
|
|
83
93
|
children: [loading && /* @__PURE__ */ jsx(Center_default, {
|
|
84
94
|
className: styles.loading,
|
|
@@ -88,7 +98,7 @@ const Avatar$1 = memo(({ bordered, className, avatar, title, animation, bordered
|
|
|
88
98
|
icon: Loader2,
|
|
89
99
|
spin: true
|
|
90
100
|
})
|
|
91
|
-
}), !isDefaultAntAvatar && customAvatar]
|
|
101
|
+
}), !isDefaultAntAvatar$1 && customAvatar]
|
|
92
102
|
});
|
|
93
103
|
});
|
|
94
104
|
Avatar$1.displayName = "Avatar";
|
package/es/Avatar/Avatar.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Avatar.mjs","names":["Avatar","Img","FluentEmoji","AntAvatar","Center","Icon"],"sources":["../../src/Avatar/Avatar.tsx"],"sourcesContent":["'use client';\n\nimport { getEmoji } from '@lobehub/fluent-emoji';\nimport { Avatar as AntAvatar } from 'antd';\nimport { cssVar, cx, useTheme } from 'antd-style';\nimport { Loader2 } from 'lucide-react';\nimport {
|
|
1
|
+
{"version":3,"file":"Avatar.mjs","names":["Avatar","isDefaultAntAvatar","checkIsDefaultAntAvatar","Img","FluentEmoji","AntAvatar","Center","Icon"],"sources":["../../src/Avatar/Avatar.tsx"],"sourcesContent":["'use client';\n\nimport { getEmoji } from '@lobehub/fluent-emoji';\nimport { Avatar as AntAvatar } from 'antd';\nimport { cssVar, cx, useTheme } from 'antd-style';\nimport { Loader2 } from 'lucide-react';\nimport { memo, useMemo } from 'react';\n\nimport { Center } from '@/Flex';\nimport FluentEmoji from '@/FluentEmoji';\nimport Icon from '@/Icon';\nimport Img from '@/Img';\nimport { safeReadableColor } from '@/utils/safeReadableColor';\n\nimport { styles, variants } from './style';\nimport type { AvatarProps } from './type';\nimport {\n calculateEmojiSize,\n isDefaultAntAvatar as checkIsDefaultAntAvatar,\n formatAvatarText,\n getActualColorForReadable,\n hasValidBackground,\n} from './utils';\n\nconst Avatar = memo<AvatarProps>(\n ({\n bordered,\n className,\n avatar,\n title,\n animation,\n borderedColor,\n size = 48,\n shape = 'square',\n background,\n style,\n unoptimized,\n alt,\n variant = 'borderless',\n shadow,\n loading,\n sliceText = true,\n emojiScaleWithBackground = true,\n ref,\n ...rest\n }) => {\n const theme = useTheme();\n const isStringAvatar = typeof avatar === 'string';\n\n const isDefaultAntAvatar = useMemo(() => checkIsDefaultAntAvatar(avatar), [avatar]);\n\n const emoji = useMemo(\n () => avatar && !isDefaultAntAvatar && isStringAvatar && getEmoji(avatar),\n [avatar, isStringAvatar, isDefaultAntAvatar],\n );\n\n const text = String(isDefaultAntAvatar ? title : avatar);\n\n const imgAlt = alt || title || 'avatar';\n\n const defualtAvatar = useMemo(\n () =>\n typeof avatar === 'string' ? (\n <Img\n alt={imgAlt}\n height={size}\n loading={'lazy'}\n src={avatar}\n unoptimized={unoptimized}\n width={size}\n />\n ) : (\n avatar\n ),\n [avatar, imgAlt, size, unoptimized],\n );\n\n const hasBackground = hasValidBackground(background);\n\n const customAvatar = useMemo(\n () =>\n emoji ? (\n <FluentEmoji\n emoji={emoji}\n size={calculateEmojiSize(size, hasBackground, emojiScaleWithBackground)}\n type={animation ? 'anim' : '3d'}\n unoptimized={unoptimized}\n />\n ) : (\n formatAvatarText(text || title, sliceText)\n ),\n [\n animation,\n emoji,\n hasBackground,\n size,\n sliceText,\n text,\n title,\n unoptimized,\n emojiScaleWithBackground,\n ],\n );\n\n // Get actual color value for readableColor (CSS variables can't be parsed)\n const actualColorForReadable = useMemo(\n () => getActualColorForReadable(background, theme.colorBorder),\n [background, theme.colorBorder],\n );\n\n const avatarStyle = useMemo(\n () => ({\n backgroundColor:\n isDefaultAntAvatar || !!emoji ? background : background || cssVar.colorBorder,\n borderRadius: shape === 'square' && size && size < 24 ? '33%' : undefined,\n boxShadow: bordered\n ? `${cssVar.colorBgLayout} 0 0 0 2px, ${borderedColor || cssVar.colorTextTertiary} 0 0 0 4px`\n : undefined,\n color: safeReadableColor(actualColorForReadable),\n cursor: rest?.onClick ? 'pointer' : undefined,\n fontSize: size * (emoji ? 0.7 : 0.5),\n ...style,\n }),\n [\n isDefaultAntAvatar,\n emoji,\n background,\n shape,\n size,\n bordered,\n borderedColor,\n actualColorForReadable,\n rest?.onClick,\n style,\n ],\n );\n\n return (\n <AntAvatar\n alt={imgAlt}\n className={cx(variants({ shadow, variant }), className)}\n draggable={false}\n ref={ref}\n shape={shape}\n size={size}\n src={isDefaultAntAvatar ? defualtAvatar : undefined}\n style={avatarStyle}\n {...rest}\n >\n {loading && (\n <Center className={styles.loading} height={'100%'} width={'100%'}>\n <Icon icon={Loader2} spin />\n </Center>\n )}\n {!isDefaultAntAvatar && customAvatar}\n </AntAvatar>\n );\n },\n);\n\nAvatar.displayName = 'Avatar';\n\nexport default Avatar;\n"],"mappings":";;;;;;;;;;;;;;;;;AAwBA,MAAMA,WAAS,MACZ,EACC,UACA,WACA,QACA,OACA,WACA,eACA,OAAO,IACP,QAAQ,UACR,YACA,OACA,aACA,KACA,UAAU,cACV,QACA,SACA,YAAY,MACZ,2BAA2B,MAC3B,KACA,GAAG,WACC;CACJ,MAAM,QAAQ,UAAU;CACxB,MAAM,iBAAiB,OAAO,WAAW;CAEzC,MAAMC,uBAAqB,cAAcC,mBAAwB,OAAO,EAAE,CAAC,OAAO,CAAC;CAEnF,MAAM,QAAQ,cACN,UAAU,CAACD,wBAAsB,kBAAkB,SAAS,OAAO,EACzE;EAAC;EAAQ;EAAgBA;EAAmB,CAC7C;CAED,MAAM,OAAO,OAAOA,uBAAqB,QAAQ,OAAO;CAExD,MAAM,SAAS,OAAO,SAAS;CAE/B,MAAM,gBAAgB,cAElB,OAAO,WAAW,WAChB,oBAACE;EACC,KAAK;EACL,QAAQ;EACR,SAAS;EACT,KAAK;EACQ;EACb,OAAO;GACP,GAEF,QAEJ;EAAC;EAAQ;EAAQ;EAAM;EAAY,CACpC;CAED,MAAM,gBAAgB,mBAAmB,WAAW;CAEpD,MAAM,eAAe,cAEjB,QACE,oBAACC;EACQ;EACP,MAAM,mBAAmB,MAAM,eAAe,yBAAyB;EACvE,MAAM,YAAY,SAAS;EACd;GACb,GAEF,iBAAiB,QAAQ,OAAO,UAAU,EAE9C;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CACF;CAGD,MAAM,yBAAyB,cACvB,0BAA0B,YAAY,MAAM,YAAY,EAC9D,CAAC,YAAY,MAAM,YAAY,CAChC;CAED,MAAM,cAAc,eACX;EACL,iBACEH,wBAAsB,CAAC,CAAC,QAAQ,aAAa,cAAc,OAAO;EACpE,cAAc,UAAU,YAAY,QAAQ,OAAO,KAAK,QAAQ;EAChE,WAAW,WACP,GAAG,OAAO,cAAc,cAAc,iBAAiB,OAAO,kBAAkB,cAChF;EACJ,OAAO,kBAAkB,uBAAuB;EAChD,QAAQ,MAAM,UAAU,YAAY;EACpC,UAAU,QAAQ,QAAQ,KAAM;EAChC,GAAG;EACJ,GACD;EACEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,MAAM;EACN;EACD,CACF;AAED,QACE,qBAACI;EACC,KAAK;EACL,WAAW,GAAG,SAAS;GAAE;GAAQ;GAAS,CAAC,EAAE,UAAU;EACvD,WAAW;EACN;EACE;EACD;EACN,KAAKJ,uBAAqB,gBAAgB;EAC1C,OAAO;EACP,GAAI;aAEH,WACC,oBAACK;GAAO,WAAW,OAAO;GAAS,QAAQ;GAAQ,OAAO;aACxD,oBAACC;IAAK,MAAM;IAAS;KAAO;IACrB,EAEV,CAACN,wBAAsB;GACd;EAGjB;AAED,SAAO,cAAc;AAErB,qBAAeD"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { AvatarGroupProps } from "../type.mjs";
|
|
2
|
-
import * as
|
|
2
|
+
import * as react67 from "react";
|
|
3
3
|
|
|
4
4
|
//#region src/Avatar/AvatarGroup/index.d.ts
|
|
5
|
-
declare const AvatarGroup:
|
|
5
|
+
declare const AvatarGroup: react67.NamedExoticComponent<AvatarGroupProps>;
|
|
6
6
|
//#endregion
|
|
7
7
|
export { AvatarGroup };
|
|
8
8
|
//# sourceMappingURL=index.d.mts.map
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { isValidElement } from "react";
|
|
2
|
+
|
|
3
|
+
//#region src/Avatar/utils.ts
|
|
4
|
+
/**
|
|
5
|
+
* 判断 avatar 是否是默认的 Ant Design Avatar 类型
|
|
6
|
+
* (URL 路径或 React 元素)
|
|
7
|
+
*/
|
|
8
|
+
const isDefaultAntAvatar = (avatar) => {
|
|
9
|
+
if (!avatar) return false;
|
|
10
|
+
const isUrlOrDataUri = typeof avatar === "string" && [
|
|
11
|
+
"/",
|
|
12
|
+
"http",
|
|
13
|
+
"data:"
|
|
14
|
+
].some((prefix) => avatar.startsWith(prefix));
|
|
15
|
+
return Boolean(isUrlOrDataUri || isValidElement(avatar));
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* 判断是否有有效的背景色
|
|
19
|
+
*/
|
|
20
|
+
const hasValidBackground = (background) => {
|
|
21
|
+
return Boolean(background && background !== "transparent" && background !== "rgba(0,0,0,0)" && background !== null);
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* 获取用于可读性计算的实际颜色值
|
|
25
|
+
* 如果是 CSS 变量,返回 fallback 值
|
|
26
|
+
*/
|
|
27
|
+
const getActualColorForReadable = (background, fallbackColor) => {
|
|
28
|
+
const bgColor = background || fallbackColor;
|
|
29
|
+
if (typeof bgColor === "string" && bgColor.startsWith("var(")) return fallbackColor;
|
|
30
|
+
return bgColor;
|
|
31
|
+
};
|
|
32
|
+
/**
|
|
33
|
+
* 格式化头像文本(转大写并可选切片)
|
|
34
|
+
*/
|
|
35
|
+
const formatAvatarText = (text, sliceText) => {
|
|
36
|
+
if (!text) return "";
|
|
37
|
+
const upperText = text.toUpperCase();
|
|
38
|
+
return sliceText ? upperText.slice(0, 2) : upperText;
|
|
39
|
+
};
|
|
40
|
+
/**
|
|
41
|
+
* 计算 emoji 大小
|
|
42
|
+
*/
|
|
43
|
+
const calculateEmojiSize = (size, hasBackground, emojiScaleWithBackground) => {
|
|
44
|
+
if (emojiScaleWithBackground) return hasBackground ? size * .85 : size;
|
|
45
|
+
return size * .85;
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
//#endregion
|
|
49
|
+
export { calculateEmojiSize, formatAvatarText, getActualColorForReadable, hasValidBackground, isDefaultAntAvatar };
|
|
50
|
+
//# sourceMappingURL=utils.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.mjs","names":[],"sources":["../../src/Avatar/utils.ts"],"sourcesContent":["import { type ReactNode, isValidElement } from 'react';\n\n/**\n * 判断 avatar 是否是默认的 Ant Design Avatar 类型\n * (URL 路径或 React 元素)\n */\nexport const isDefaultAntAvatar = (avatar: ReactNode): boolean => {\n if (!avatar) return false;\n\n const isStringAvatar = typeof avatar === 'string';\n const isUrlOrDataUri =\n isStringAvatar && ['/', 'http', 'data:'].some((prefix) => avatar.startsWith(prefix));\n\n return Boolean(isUrlOrDataUri || isValidElement(avatar));\n};\n\n/**\n * 判断是否有有效的背景色\n */\nexport const hasValidBackground = (background?: string | null): boolean => {\n return Boolean(\n background &&\n background !== 'transparent' &&\n background !== 'rgba(0,0,0,0)' &&\n background !== null,\n );\n};\n\n/**\n * 获取用于可读性计算的实际颜色值\n * 如果是 CSS 变量,返回 fallback 值\n */\nexport const getActualColorForReadable = (\n background: string | undefined,\n fallbackColor: string,\n): string => {\n const bgColor = background || fallbackColor;\n\n // 如果背景是 CSS 变量,使用 fallback 颜色\n if (typeof bgColor === 'string' && bgColor.startsWith('var(')) {\n return fallbackColor;\n }\n\n return bgColor;\n};\n\n/**\n * 格式化头像文本(转大写并可选切片)\n */\nexport const formatAvatarText = (text: string | undefined, sliceText: boolean): string => {\n if (!text) return '';\n\n const upperText = text.toUpperCase();\n return sliceText ? upperText.slice(0, 2) : upperText;\n};\n\n/**\n * 计算 emoji 大小\n */\nexport const calculateEmojiSize = (\n size: number,\n hasBackground: boolean,\n emojiScaleWithBackground: boolean,\n): number => {\n if (emojiScaleWithBackground) {\n return hasBackground ? size * 0.85 : size;\n }\n return size * 0.85;\n};\n"],"mappings":";;;;;;;AAMA,MAAa,sBAAsB,WAA+B;AAChE,KAAI,CAAC,OAAQ,QAAO;CAGpB,MAAM,iBADiB,OAAO,WAAW,YAErB;EAAC;EAAK;EAAQ;EAAQ,CAAC,MAAM,WAAW,OAAO,WAAW,OAAO,CAAC;AAEtF,QAAO,QAAQ,kBAAkB,eAAe,OAAO,CAAC;;;;;AAM1D,MAAa,sBAAsB,eAAwC;AACzE,QAAO,QACL,cACA,eAAe,iBACf,eAAe,mBACf,eAAe,KAChB;;;;;;AAOH,MAAa,6BACX,YACA,kBACW;CACX,MAAM,UAAU,cAAc;AAG9B,KAAI,OAAO,YAAY,YAAY,QAAQ,WAAW,OAAO,CAC3D,QAAO;AAGT,QAAO;;;;;AAMT,MAAa,oBAAoB,MAA0B,cAA+B;AACxF,KAAI,CAAC,KAAM,QAAO;CAElB,MAAM,YAAY,KAAK,aAAa;AACpC,QAAO,YAAY,UAAU,MAAM,GAAG,EAAE,GAAG;;;;;AAM7C,MAAa,sBACX,MACA,eACA,6BACW;AACX,KAAI,yBACF,QAAO,gBAAgB,OAAO,MAAO;AAEvC,QAAO,OAAO"}
|
package/es/Burger/Burger.d.mts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { BurgerProps } from "./type.mjs";
|
|
2
|
-
import * as
|
|
2
|
+
import * as react26 from "react";
|
|
3
3
|
|
|
4
4
|
//#region src/Burger/Burger.d.ts
|
|
5
|
-
declare const Burger:
|
|
5
|
+
declare const Burger: react26.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
|
|
2
|
+
import * as react25 from "react";
|
|
3
3
|
|
|
4
4
|
//#region src/CodeEditor/CodeEditor.d.ts
|
|
5
|
-
declare const CodeEditor:
|
|
5
|
+
declare const CodeEditor: react25.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
|
|
2
|
+
import * as react24 from "react";
|
|
3
3
|
|
|
4
4
|
//#region src/Collapse/Collapse.d.ts
|
|
5
|
-
declare const Collapse:
|
|
5
|
+
declare const Collapse: react24.NamedExoticComponent<CollapseProps>;
|
|
6
6
|
//#endregion
|
|
7
7
|
export { Collapse };
|
|
8
8
|
//# sourceMappingURL=Collapse.d.mts.map
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
import FlexBasic_default from "../Flex/FlexBasic.mjs";
|
|
4
4
|
import Center_default from "../Flex/Center.mjs";
|
|
5
5
|
import Icon_default from "../Icon/Icon.mjs";
|
|
6
|
+
import { safeReadableColor } from "../utils/safeReadableColor.mjs";
|
|
6
7
|
import Tooltip_default from "../Tooltip/Tooltip.mjs";
|
|
7
8
|
import { styles } from "./style.mjs";
|
|
8
9
|
import { useMemo } from "react";
|
|
@@ -10,7 +11,7 @@ import { jsx, jsxs } from "react/jsx-runtime";
|
|
|
10
11
|
import { ColorPicker } from "antd";
|
|
11
12
|
import { cssVar, cx, useTheme } from "antd-style";
|
|
12
13
|
import useMergeState from "use-merge-value";
|
|
13
|
-
import {
|
|
14
|
+
import { rgba } from "polished";
|
|
14
15
|
import { CheckIcon } from "lucide-react";
|
|
15
16
|
import chroma from "chroma-js";
|
|
16
17
|
|
|
@@ -55,7 +56,7 @@ const ColorSwatches = ({ enableColorPicker, enableColorSwatches = true, defaultV
|
|
|
55
56
|
borderRadius: shape === "circle" ? "50%" : cssVar.borderRadius
|
|
56
57
|
},
|
|
57
58
|
children: isActive && /* @__PURE__ */ jsx(Icon_default, {
|
|
58
|
-
color: rgba(
|
|
59
|
+
color: rgba(safeReadableColor(actualColorForReadable), .33),
|
|
59
60
|
icon: CheckIcon,
|
|
60
61
|
size: {
|
|
61
62
|
size: 14,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColorSwatches.mjs","names":["ColorSwatches: FC<ColorSwatchesProps>","Flexbox","Tooltip","Center","Icon"],"sources":["../../src/ColorSwatches/ColorSwatches.tsx"],"sourcesContent":["'use client';\n\nimport { ColorPicker } from 'antd';\nimport { cssVar, cx, useTheme } from 'antd-style';\nimport chroma from 'chroma-js';\nimport { CheckIcon } from 'lucide-react';\nimport {
|
|
1
|
+
{"version":3,"file":"ColorSwatches.mjs","names":["ColorSwatches: FC<ColorSwatchesProps>","Flexbox","Tooltip","Center","Icon"],"sources":["../../src/ColorSwatches/ColorSwatches.tsx"],"sourcesContent":["'use client';\n\nimport { ColorPicker } from 'antd';\nimport { cssVar, cx, useTheme } from 'antd-style';\nimport chroma from 'chroma-js';\nimport { CheckIcon } from 'lucide-react';\nimport { rgba } from 'polished';\nimport { type FC, useMemo } from 'react';\nimport useMergeState from 'use-merge-value';\n\nimport { Center, Flexbox } from '@/Flex';\nimport Icon from '@/Icon';\nimport Tooltip from '@/Tooltip';\nimport { safeReadableColor } from '@/utils/safeReadableColor';\n\nimport { styles } from './style';\nimport type { ColorSwatchesProps } from './type';\n\nconst ColorSwatches: FC<ColorSwatchesProps> = ({\n enableColorPicker,\n enableColorSwatches = true,\n defaultValue,\n value,\n style,\n colors,\n onChange,\n size = 24,\n shape = 'circle',\n texts,\n ref,\n ...rest\n}) => {\n const theme = useTheme();\n const [active, setActive] = useMergeState(defaultValue, {\n defaultValue,\n onChange,\n value,\n });\n\n // Convert size prop to CSS variable\n const cssVariables = useMemo<Record<string, string>>(\n () => ({\n '--color-swatches-size': `${size}px`,\n }),\n [size],\n );\n\n const isCustomActive = useMemo(\n () => active && active !== cssVar.colorPrimary && !colors.some((c) => c.color === active),\n [active, colors],\n );\n\n return (\n <Flexbox\n gap={6}\n horizontal\n ref={ref}\n style={{\n ...cssVariables,\n flexWrap: 'wrap',\n ...style,\n }}\n {...rest}\n >\n {enableColorSwatches &&\n colors.map((c, i) => {\n const color = c.color || theme.colorPrimary;\n const isActive = (!active && !c.color) || color === active;\n // Check if color is transparent or CSS variable (which chroma can't parse)\n const isTransparent =\n c.color === 'transparent' ||\n (c.color &&\n !c.color.startsWith('var(') &&\n (() => {\n try {\n return chroma(c.color).alpha() === 0;\n } catch {\n return false;\n }\n })());\n // Get actual color value for readableColor (CSS variables can't be parsed)\n const actualColorForReadable = c.color?.startsWith('var(') ? theme.colorPrimary : color;\n return (\n <Tooltip key={c?.key || i} title={c.title}>\n <Center\n className={cx(\n styles.container,\n isTransparent && styles.transparent,\n isActive && styles.active,\n )}\n onClick={() => setActive(c.color || undefined)}\n style={{\n background: isTransparent ? undefined : color,\n borderRadius: shape === 'circle' ? '50%' : cssVar.borderRadius,\n }}\n >\n {isActive && (\n <Icon\n color={rgba(safeReadableColor(actualColorForReadable), 0.33)}\n icon={CheckIcon}\n size={{ size: 14, strokeWidth: 4 }}\n style={{\n pointerEvents: 'none',\n }}\n />\n )}\n </Center>\n </Tooltip>\n );\n })}\n {enableColorPicker && (\n <Tooltip title={texts?.custom || 'Custom'}>\n <ColorPicker\n arrow={false}\n className={cx(\n styles.picker,\n enableColorSwatches && styles.conic,\n isCustomActive && styles.active,\n )}\n defaultValue={cssVar.colorPrimary}\n disabledAlpha\n format={'hex'}\n onChangeComplete={(c) => {\n if (c.toHexString() === cssVar.colorPrimary) {\n setActive('');\n } else {\n setActive(c.toHexString());\n }\n }}\n presets={\n enableColorSwatches\n ? undefined\n : [\n {\n colors: colors.map((c) => c.color),\n label: texts?.presets || 'Presets',\n },\n ]\n }\n style={{\n borderRadius: shape === 'circle' ? '50%' : cssVar.borderRadius,\n }}\n value={enableColorSwatches ? undefined : active}\n />\n </Tooltip>\n )}\n </Flexbox>\n );\n};\n\nColorSwatches.displayName = 'ColorSwatches';\n\nexport default ColorSwatches;\n"],"mappings":";;;;;;;;;;;;;;;;;;AAkBA,MAAMA,iBAAyC,EAC7C,mBACA,sBAAsB,MACtB,cACA,OACA,OACA,QACA,UACA,OAAO,IACP,QAAQ,UACR,OACA,KACA,GAAG,WACC;CACJ,MAAM,QAAQ,UAAU;CACxB,MAAM,CAAC,QAAQ,aAAa,cAAc,cAAc;EACtD;EACA;EACA;EACD,CAAC;CAGF,MAAM,eAAe,eACZ,EACL,yBAAyB,GAAG,KAAK,KAClC,GACD,CAAC,KAAK,CACP;CAED,MAAM,iBAAiB,cACf,UAAU,WAAW,OAAO,gBAAgB,CAAC,OAAO,MAAM,MAAM,EAAE,UAAU,OAAO,EACzF,CAAC,QAAQ,OAAO,CACjB;AAED,QACE,qBAACC;EACC,KAAK;EACL;EACK;EACL,OAAO;GACL,GAAG;GACH,UAAU;GACV,GAAG;GACJ;EACD,GAAI;aAEH,uBACC,OAAO,KAAK,GAAG,MAAM;GACnB,MAAM,QAAQ,EAAE,SAAS,MAAM;GAC/B,MAAM,WAAY,CAAC,UAAU,CAAC,EAAE,SAAU,UAAU;GAEpD,MAAM,gBACJ,EAAE,UAAU,iBACX,EAAE,SACD,CAAC,EAAE,MAAM,WAAW,OAAO,WACpB;AACL,QAAI;AACF,YAAO,OAAO,EAAE,MAAM,CAAC,OAAO,KAAK;YAC7B;AACN,YAAO;;OAEP;GAER,MAAM,yBAAyB,EAAE,OAAO,WAAW,OAAO,GAAG,MAAM,eAAe;AAClF,UACE,oBAACC;IAA0B,OAAO,EAAE;cAClC,oBAACC;KACC,WAAW,GACT,OAAO,WACP,iBAAiB,OAAO,aACxB,YAAY,OAAO,OACpB;KACD,eAAe,UAAU,EAAE,SAAS,OAAU;KAC9C,OAAO;MACL,YAAY,gBAAgB,SAAY;MACxC,cAAc,UAAU,WAAW,QAAQ,OAAO;MACnD;eAEA,YACC,oBAACC;MACC,OAAO,KAAK,kBAAkB,uBAAuB,EAAE,IAAK;MAC5D,MAAM;MACN,MAAM;OAAE,MAAM;OAAI,aAAa;OAAG;MAClC,OAAO,EACL,eAAe,QAChB;OACD;MAEG;MAvBG,GAAG,OAAO,EAwBd;IAEZ,EACH,qBACC,oBAACF;GAAQ,OAAO,OAAO,UAAU;aAC/B,oBAAC;IACC,OAAO;IACP,WAAW,GACT,OAAO,QACP,uBAAuB,OAAO,OAC9B,kBAAkB,OAAO,OAC1B;IACD,cAAc,OAAO;IACrB;IACA,QAAQ;IACR,mBAAmB,MAAM;AACvB,SAAI,EAAE,aAAa,KAAK,OAAO,aAC7B,WAAU,GAAG;SAEb,WAAU,EAAE,aAAa,CAAC;;IAG9B,SACE,sBACI,SACA,CACE;KACE,QAAQ,OAAO,KAAK,MAAM,EAAE,MAAM;KAClC,OAAO,OAAO,WAAW;KAC1B,CACF;IAEP,OAAO,EACL,cAAc,UAAU,WAAW,QAAQ,OAAO,cACnD;IACD,OAAO,sBAAsB,SAAY;KACzC;IACM;GAEJ;;AAId,cAAc,cAAc;AAE5B,4BAAe"}
|
|
@@ -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
|
|
4
|
+
import * as react0 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:
|
|
22
|
+
declare const ConfigProvider: react0.NamedExoticComponent<ConfigProviderProps>;
|
|
23
23
|
type CdnFn = ({
|
|
24
24
|
pkg,
|
|
25
25
|
version,
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as react76 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:
|
|
5
|
+
declare const ContextMenuHost: react76.MemoExoticComponent<() => react_jsx_runtime0.JSX.Element | null>;
|
|
6
6
|
//#endregion
|
|
7
7
|
export { ContextMenuHost };
|
|
8
8
|
//# sourceMappingURL=ContextMenuHost.d.mts.map
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { CopyButtonProps } from "./type.mjs";
|
|
2
|
-
import * as
|
|
2
|
+
import * as react23 from "react";
|
|
3
3
|
|
|
4
4
|
//#region src/CopyButton/CopyButton.d.ts
|
|
5
|
-
declare const CopyButton:
|
|
5
|
+
declare const CopyButton: react23.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
|
|
2
|
+
import * as react22 from "react";
|
|
3
3
|
|
|
4
4
|
//#region src/DatePicker/DatePicker.d.ts
|
|
5
|
-
declare const DatePicker:
|
|
5
|
+
declare const DatePicker: react22.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
|
|
2
|
+
import * as react17 from "react";
|
|
3
3
|
|
|
4
4
|
//#region src/DraggablePanel/components/DraggablePanelBody.d.ts
|
|
5
5
|
type DraggablePanelBodyProps = DivProps;
|
|
6
|
-
declare const DraggablePanelBody:
|
|
6
|
+
declare const DraggablePanelBody: react17.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
|
|
2
|
+
import * as react16 from "react";
|
|
3
3
|
|
|
4
4
|
//#region src/DraggablePanel/components/DraggablePanelContainer.d.ts
|
|
5
5
|
type DraggablePanelContainerProps = DivProps;
|
|
6
|
-
declare const DraggablePanelContainer:
|
|
6
|
+
declare const DraggablePanelContainer: react16.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
|
|
2
|
+
import * as react18 from "react";
|
|
3
3
|
|
|
4
4
|
//#region src/DraggablePanel/components/DraggablePanelFooter.d.ts
|
|
5
5
|
type DraggablePanelFooterProps = DivProps;
|
|
6
|
-
declare const DraggablePanelFooter:
|
|
6
|
+
declare const DraggablePanelFooter: react18.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
|
|
2
|
+
import * as react19 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:
|
|
12
|
+
declare const DraggablePanelHeader: react19.NamedExoticComponent<DraggablePanelHeaderProps>;
|
|
13
13
|
//#endregion
|
|
14
14
|
export { DraggablePanelHeader, DraggablePanelHeaderProps };
|
|
15
15
|
//# sourceMappingURL=DraggablePanelHeader.d.mts.map
|
|
@@ -73,7 +73,7 @@ const styles = createStaticStyles(({ css: css$1, cssVar: cssVar$1 }) => {
|
|
|
73
73
|
const handleHighlightStyle = css$1`
|
|
74
74
|
&:hover {
|
|
75
75
|
&::before {
|
|
76
|
-
background: ${cssVar$1.
|
|
76
|
+
background: ${cssVar$1.colorPrimaryBorder};
|
|
77
77
|
box-shadow: 0 0 8px color-mix(in srgb, ${cssVar$1.colorPrimary} 25%, transparent);
|
|
78
78
|
}
|
|
79
79
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"style.mjs","names":["cssVar"],"sources":["../../src/DraggablePanel/style.ts"],"sourcesContent":["import { createStaticStyles, cx } from 'antd-style';\nimport { cva } from 'class-variance-authority';\n\n// Layout constants\nconst LAYOUT = {\n offset: 16,\n toggleLength: 54,\n toggleShort: 16,\n};\n\nconst prefixCls = 'ant';\n\nconst prefix = `${prefixCls}-draggable-panel`;\n\nexport const styles = createStaticStyles(({ css, cssVar }) => {\n // Base styles - border styles split by showBorder\n const borderStyles = {\n borderBottom: css`\n border-block-end: 1px solid ${cssVar.colorBorderSecondary};\n `,\n borderBottomNone: css`\n border-block-end-width: 0;\n `,\n borderLeft: css`\n border-inline-start: 1px solid ${cssVar.colorBorderSecondary};\n `,\n borderLeftNone: css`\n border-inline-start-width: 0;\n `,\n borderRight: css`\n border-inline-end: 1px solid ${cssVar.colorBorderSecondary};\n `,\n borderRightNone: css`\n border-inline-end-width: 0;\n `,\n borderTop: css`\n border-block-start: 1px solid ${cssVar.colorBorderSecondary};\n `,\n borderTopNone: css`\n border-block-start-width: 0;\n `,\n };\n\n // Position styles\n const float = css`\n position: absolute;\n z-index: 200;\n `;\n\n const floatPositions = {\n bottomFloat: cx(\n float,\n css`\n inset-block-end: 0;\n inset-inline: 0 0;\n width: 100%;\n `,\n ),\n leftFloat: cx(\n float,\n css`\n inset-block: var(--draggable-panel-header-height, 0) 0;\n inset-inline-start: 0;\n height: calc(100% - var(--draggable-panel-header-height, 0px));\n `,\n ),\n rightFloat: cx(\n float,\n css`\n inset-block: var(--draggable-panel-header-height, 0) 0;\n inset-inline-end: 0;\n height: calc(100% - var(--draggable-panel-header-height, 0px));\n `,\n ),\n topFloat: cx(\n float,\n css`\n inset-block-start: var(--draggable-panel-header-height, 0);\n inset-inline: 0 0;\n width: 100%;\n `,\n ),\n };\n\n // Handle styles\n const handleBaseStyle = css`\n position: relative;\n\n &::before {\n content: '';\n position: absolute;\n transition: all 0.2s ${cssVar.motionEaseOut};\n }\n `;\n\n const handleHighlightStyle = css`\n &:hover {\n &::before {\n background: ${cssVar.colorPrimary};\n box-shadow: 0 0 8px color-mix(in srgb, ${cssVar.colorPrimary} 25%, transparent);\n }\n }\n\n &:active {\n &::before {\n background: ${cssVar.colorPrimary} !important;\n }\n }\n `;\n\n const handleStyles = {\n handleBottom: cx(\n `${prefix}-bottom-handle`,\n css`\n &::before {\n inset-block-end: 50%;\n width: 100%;\n height: 2px;\n }\n `,\n ),\n handleLeft: cx(\n `${prefix}-left-handle`,\n css`\n &::before {\n inset-inline-start: 50%;\n width: 2px;\n height: 100%;\n }\n `,\n ),\n handleRight: cx(\n `${prefix}-right-handle`,\n css`\n &::before {\n inset-inline-end: 50%;\n width: 2px;\n height: 100%;\n }\n `,\n ),\n handleRoot: handleBaseStyle,\n handleTop: cx(\n `${prefix}-top-handle`,\n css`\n &::before {\n inset-block-start: 50%;\n width: 100%;\n height: 2px;\n }\n `,\n ),\n };\n\n // Toggle styles - base class with variant for showHandleWideArea\n const toggleRoot = cx(\n `${prefix}-toggle`,\n css`\n position: absolute;\n z-index: 50;\n opacity: 0;\n transition: all 0.2s ${cssVar.motionEaseOut};\n\n &:hover,\n &:active {\n opacity: 1 !important;\n }\n\n > div {\n pointer-events: all;\n cursor: pointer;\n\n position: absolute;\n\n border: 1px solid ${cssVar.colorBorder};\n\n color: ${cssVar.colorTextTertiary};\n\n background: var(--draggable-panel-bg, ${cssVar.colorBgLayout});\n backdrop-filter: blur(8px);\n\n transition: all 0.2s ${cssVar.motionEaseOut};\n\n &:hover {\n color: ${cssVar.colorTextSecondary};\n }\n\n &:active {\n color: ${cssVar.colorText};\n }\n }\n `,\n );\n\n const toggleRootWithWideArea = css`\n pointer-events: all;\n `;\n\n const toggleRootWithoutWideArea = css`\n pointer-events: none;\n `;\n\n const toggleStyles = {\n toggleBottom: cx(\n `${prefix}-toggle-bottom`,\n css`\n inset-block-end: -${LAYOUT.offset}px;\n width: 100%;\n height: ${LAYOUT.toggleShort}px;\n\n > div {\n inset-inline-start: 50%;\n\n width: ${LAYOUT.toggleLength}px;\n height: ${LAYOUT.toggleShort}px;\n margin-inline-start: -27px;\n border-block-start-width: 0;\n border-radius: 0 0 ${cssVar.borderRadiusLG} ${cssVar.borderRadiusLG};\n }\n `,\n ),\n toggleLeft: cx(\n `${prefix}-toggle-left`,\n css`\n inset-inline-start: -${LAYOUT.offset}px;\n width: ${LAYOUT.toggleShort}px;\n height: 100%;\n\n > div {\n inset-block-start: 50%;\n\n width: ${LAYOUT.toggleShort}px;\n height: ${LAYOUT.toggleLength}px;\n margin-block-start: -27px;\n border-inline-end-width: 0;\n border-radius: ${cssVar.borderRadiusLG} 0 0 ${cssVar.borderRadiusLG};\n }\n `,\n ),\n toggleRight: cx(\n `${prefix}-toggle-right`,\n css`\n inset-inline-end: -${LAYOUT.offset}px;\n width: ${LAYOUT.toggleShort}px;\n height: 100%;\n\n > div {\n inset-block-start: 50%;\n\n width: ${LAYOUT.toggleShort}px;\n height: ${LAYOUT.toggleLength}px;\n margin-block-start: -27px;\n border-inline-start-width: 0;\n border-radius: 0 ${cssVar.borderRadiusLG} ${cssVar.borderRadiusLG} 0;\n }\n `,\n ),\n toggleRoot,\n toggleRootWithWideArea,\n toggleRootWithoutWideArea,\n toggleTop: cx(\n `${prefix}-toggle-top`,\n css`\n inset-block-start: -${LAYOUT.offset}px;\n width: 100%;\n height: ${LAYOUT.toggleShort}px;\n\n > div {\n inset-inline-start: 50%;\n\n width: ${LAYOUT.toggleLength}px;\n height: ${LAYOUT.toggleShort}px;\n margin-inline-start: -27px;\n border-block-end-width: 0;\n border-radius: ${cssVar.borderRadiusLG} ${cssVar.borderRadiusLG} 0 0;\n }\n `,\n ),\n };\n\n // Additional component styles\n const componentStyles = {\n fixed: css`\n position: relative;\n `,\n fullscreen: css`\n position: absolute;\n inset-block: var(--draggable-panel-header-height, 0) 0;\n inset-inline: 0;\n\n width: 100%;\n height: calc(100% - var(--draggable-panel-header-height, 0px));\n\n background: ${cssVar.colorBgContainer};\n `,\n handlerIcon: css`\n transition: all 0.2s ${cssVar.motionEaseOut};\n `,\n panel: cx(\n `${prefix}-fixed`,\n css`\n overflow: hidden;\n background: var(--draggable-panel-bg, ${cssVar.colorBgLayout});\n transition: all 0.2s ${cssVar.motionEaseOut};\n `,\n ),\n root: cx(\n prefix,\n css`\n flex-shrink: 0;\n\n &:hover {\n > .${prefix}-toggle {\n opacity: 1;\n }\n }\n `,\n ),\n };\n\n return {\n ...borderStyles,\n ...floatPositions,\n ...handleStyles,\n handleHighlight: handleHighlightStyle,\n ...toggleStyles,\n ...componentStyles,\n };\n});\n\nexport const handleVariants = cva(styles.handleRoot, {\n variants: {\n placement: {\n bottom: styles.handleBottom,\n left: styles.handleLeft,\n right: styles.handleRight,\n top: styles.handleTop,\n },\n },\n});\n\nexport const panelVariants = cva(styles.root, {\n compoundVariants: [\n {\n class: styles.bottomFloat,\n mode: 'float',\n placement: 'bottom',\n },\n {\n class: styles.topFloat,\n mode: 'float',\n placement: 'top',\n },\n {\n class: styles.leftFloat,\n mode: 'float',\n placement: 'left',\n },\n {\n class: styles.rightFloat,\n mode: 'float',\n placement: 'right',\n },\n // Border styles based on placement, isExpand, and showBorder\n // Note: border is on the opposite side of placement\n // placement 'top' -> borderBottom, placement 'right' -> borderLeft, etc.\n {\n class: styles.borderBottom,\n isExpand: true,\n placement: 'top',\n showBorder: true,\n },\n {\n class: styles.borderBottomNone,\n isExpand: true,\n placement: 'top',\n showBorder: false,\n },\n {\n class: styles.borderLeft,\n isExpand: true,\n placement: 'right',\n showBorder: true,\n },\n {\n class: styles.borderLeftNone,\n isExpand: true,\n placement: 'right',\n showBorder: false,\n },\n {\n class: styles.borderTop,\n isExpand: true,\n placement: 'bottom',\n showBorder: true,\n },\n {\n class: styles.borderTopNone,\n isExpand: true,\n placement: 'bottom',\n showBorder: false,\n },\n {\n class: styles.borderRight,\n isExpand: true,\n placement: 'left',\n showBorder: true,\n },\n {\n class: styles.borderRightNone,\n isExpand: true,\n placement: 'left',\n showBorder: false,\n },\n ],\n defaultVariants: {\n isExpand: false,\n mode: 'fixed',\n placement: 'right',\n showBorder: true,\n },\n /* eslint-disable sort-keys-fix/sort-keys-fix */\n variants: {\n isExpand: {\n false: null,\n true: null,\n },\n mode: {\n fixed: styles.fixed,\n float: null,\n },\n placement: {\n bottom: null,\n left: null,\n right: null,\n top: null,\n },\n showBorder: {\n false: null,\n true: null,\n },\n },\n /* eslint-enable sort-keys-fix/sort-keys-fix */\n});\n\nexport const toggleVariants = cva(styles.toggleRoot, {\n compoundVariants: [\n {\n class: styles.toggleRootWithWideArea,\n showHandleWideArea: true,\n },\n {\n class: styles.toggleRootWithoutWideArea,\n showHandleWideArea: false,\n },\n ],\n defaultVariants: {\n showHandleWideArea: false,\n },\n variants: {\n placement: {\n bottom: styles.toggleTop,\n left: styles.toggleRight,\n right: styles.toggleLeft,\n top: styles.toggleBottom,\n },\n showHandleWideArea: {\n false: null,\n true: null,\n },\n },\n});\n"],"mappings":"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W;GACZ;EACD;GACE,OAAO,OAAO;GACd,MAAM;GACN,WAAW;GACZ;EAID;GACE,OAAO,OAAO;GACd,UAAU;GACV,WAAW;GACX,YAAY;GACb;EACD;GACE,OAAO,OAAO;GACd,UAAU;GACV,WAAW;GACX,YAAY;GACb;EACD;GACE,OAAO,OAAO;GACd,UAAU;GACV,WAAW;GACX,YAAY;GACb;EACD;GACE,OAAO,OAAO;GACd,UAAU;GACV,WAAW;GACX,YAAY;GACb;EACD;GACE,OAAO,OAAO;GACd,UAAU;GACV,WAAW;GACX,YAAY;GACb;EACD;GACE,OAAO,OAAO;GACd,UAAU;GACV,WAAW;GACX,YAAY;GACb;EACD;GACE,OAAO,OAAO;GACd,UAAU;GACV,WAAW;GACX,YAAY;GACb;EACD;GACE,OAAO,OAAO;GACd,UAAU;GACV,WAAW;GACX,YAAY;GACb;EACF;CACD,iBAAiB;EACf,UAAU;EACV,MAAM;EACN,WAAW;EACX,YAAY;EACb;CAED,UAAU;EACR,UAAU;GACR,OAAO;GACP,MAAM;GACP;EACD,MAAM;GACJ,OAAO,OAAO;GACd,OAAO;GACR;EACD,WAAW;GACT,QAAQ;GACR,MAAM;GACN,OAAO;GACP,KAAK;GACN;EACD,YAAY;GACV,OAAO;GACP,MAAM;GACP;EACF;CAEF,CAAC;AAEF,MAAa,iBAAiB,IAAI,OAAO,YAAY;CACnD,kBAAkB,CAChB;EACE,OAAO,OAAO;EACd,oBAAoB;EACrB,EACD;EACE,OAAO,OAAO;EACd,oBAAoB;EACrB,CACF;CACD,iBAAiB,EACf,oBAAoB,OACrB;CACD,UAAU;EACR,WAAW;GACT,QAAQ,OAAO;GACf,MAAM,OAAO;GACb,OAAO,OAAO;GACd,KAAK,OAAO;GACb;EACD,oBAAoB;GAClB,OAAO;GACP,MAAM;GACP;EACF;CACF,CAAC"}
|
|
1
|
+
{"version":3,"file":"style.mjs","names":["cssVar"],"sources":["../../src/DraggablePanel/style.ts"],"sourcesContent":["import { createStaticStyles, cx } from 'antd-style';\nimport { cva } from 'class-variance-authority';\n\n// Layout constants\nconst LAYOUT = {\n offset: 16,\n toggleLength: 54,\n toggleShort: 16,\n};\n\nconst prefixCls = 'ant';\n\nconst prefix = `${prefixCls}-draggable-panel`;\n\nexport const styles = createStaticStyles(({ css, cssVar }) => {\n // Base styles - border styles split by showBorder\n const borderStyles = {\n borderBottom: css`\n border-block-end: 1px solid ${cssVar.colorBorderSecondary};\n `,\n borderBottomNone: css`\n border-block-end-width: 0;\n `,\n borderLeft: css`\n border-inline-start: 1px solid ${cssVar.colorBorderSecondary};\n `,\n borderLeftNone: css`\n border-inline-start-width: 0;\n `,\n borderRight: css`\n border-inline-end: 1px solid ${cssVar.colorBorderSecondary};\n `,\n borderRightNone: css`\n border-inline-end-width: 0;\n `,\n borderTop: css`\n border-block-start: 1px solid ${cssVar.colorBorderSecondary};\n `,\n borderTopNone: css`\n border-block-start-width: 0;\n `,\n };\n\n // Position styles\n const float = css`\n position: absolute;\n z-index: 200;\n `;\n\n const floatPositions = {\n bottomFloat: cx(\n float,\n css`\n inset-block-end: 0;\n inset-inline: 0 0;\n width: 100%;\n `,\n ),\n leftFloat: cx(\n float,\n css`\n inset-block: var(--draggable-panel-header-height, 0) 0;\n inset-inline-start: 0;\n height: calc(100% - var(--draggable-panel-header-height, 0px));\n `,\n ),\n rightFloat: cx(\n float,\n css`\n inset-block: var(--draggable-panel-header-height, 0) 0;\n inset-inline-end: 0;\n height: calc(100% - var(--draggable-panel-header-height, 0px));\n `,\n ),\n topFloat: cx(\n float,\n css`\n inset-block-start: var(--draggable-panel-header-height, 0);\n inset-inline: 0 0;\n width: 100%;\n `,\n ),\n };\n\n // Handle styles\n const handleBaseStyle = css`\n position: relative;\n\n &::before {\n content: '';\n position: absolute;\n transition: all 0.2s ${cssVar.motionEaseOut};\n }\n `;\n\n const handleHighlightStyle = css`\n &:hover {\n &::before {\n background: ${cssVar.colorPrimaryBorder};\n box-shadow: 0 0 8px color-mix(in srgb, ${cssVar.colorPrimary} 25%, transparent);\n }\n }\n\n &:active {\n &::before {\n background: ${cssVar.colorPrimary} !important;\n }\n }\n `;\n\n const handleStyles = {\n handleBottom: cx(\n `${prefix}-bottom-handle`,\n css`\n &::before {\n inset-block-end: 50%;\n width: 100%;\n height: 2px;\n }\n `,\n ),\n handleLeft: cx(\n `${prefix}-left-handle`,\n css`\n &::before {\n inset-inline-start: 50%;\n width: 2px;\n height: 100%;\n }\n `,\n ),\n handleRight: cx(\n `${prefix}-right-handle`,\n css`\n &::before {\n inset-inline-end: 50%;\n width: 2px;\n height: 100%;\n }\n `,\n ),\n handleRoot: handleBaseStyle,\n handleTop: cx(\n `${prefix}-top-handle`,\n css`\n &::before {\n inset-block-start: 50%;\n width: 100%;\n height: 2px;\n }\n `,\n ),\n };\n\n // Toggle styles - base class with variant for showHandleWideArea\n const toggleRoot = cx(\n `${prefix}-toggle`,\n css`\n position: absolute;\n z-index: 50;\n opacity: 0;\n transition: all 0.2s ${cssVar.motionEaseOut};\n\n &:hover,\n &:active {\n opacity: 1 !important;\n }\n\n > div {\n pointer-events: all;\n cursor: pointer;\n\n position: absolute;\n\n border: 1px solid ${cssVar.colorBorder};\n\n color: ${cssVar.colorTextTertiary};\n\n background: var(--draggable-panel-bg, ${cssVar.colorBgLayout});\n backdrop-filter: blur(8px);\n\n transition: all 0.2s ${cssVar.motionEaseOut};\n\n &:hover {\n color: ${cssVar.colorTextSecondary};\n }\n\n &:active {\n color: ${cssVar.colorText};\n }\n }\n `,\n );\n\n const toggleRootWithWideArea = css`\n pointer-events: all;\n `;\n\n const toggleRootWithoutWideArea = css`\n pointer-events: none;\n `;\n\n const toggleStyles = {\n toggleBottom: cx(\n `${prefix}-toggle-bottom`,\n css`\n inset-block-end: -${LAYOUT.offset}px;\n width: 100%;\n height: ${LAYOUT.toggleShort}px;\n\n > div {\n inset-inline-start: 50%;\n\n width: ${LAYOUT.toggleLength}px;\n height: ${LAYOUT.toggleShort}px;\n margin-inline-start: -27px;\n border-block-start-width: 0;\n border-radius: 0 0 ${cssVar.borderRadiusLG} ${cssVar.borderRadiusLG};\n }\n `,\n ),\n toggleLeft: cx(\n `${prefix}-toggle-left`,\n css`\n inset-inline-start: -${LAYOUT.offset}px;\n width: ${LAYOUT.toggleShort}px;\n height: 100%;\n\n > div {\n inset-block-start: 50%;\n\n width: ${LAYOUT.toggleShort}px;\n height: ${LAYOUT.toggleLength}px;\n margin-block-start: -27px;\n border-inline-end-width: 0;\n border-radius: ${cssVar.borderRadiusLG} 0 0 ${cssVar.borderRadiusLG};\n }\n `,\n ),\n toggleRight: cx(\n `${prefix}-toggle-right`,\n css`\n inset-inline-end: -${LAYOUT.offset}px;\n width: ${LAYOUT.toggleShort}px;\n height: 100%;\n\n > div {\n inset-block-start: 50%;\n\n width: ${LAYOUT.toggleShort}px;\n height: ${LAYOUT.toggleLength}px;\n margin-block-start: -27px;\n border-inline-start-width: 0;\n border-radius: 0 ${cssVar.borderRadiusLG} ${cssVar.borderRadiusLG} 0;\n }\n `,\n ),\n toggleRoot,\n toggleRootWithWideArea,\n toggleRootWithoutWideArea,\n toggleTop: cx(\n `${prefix}-toggle-top`,\n css`\n inset-block-start: -${LAYOUT.offset}px;\n width: 100%;\n height: ${LAYOUT.toggleShort}px;\n\n > div {\n inset-inline-start: 50%;\n\n width: ${LAYOUT.toggleLength}px;\n height: ${LAYOUT.toggleShort}px;\n margin-inline-start: -27px;\n border-block-end-width: 0;\n border-radius: ${cssVar.borderRadiusLG} ${cssVar.borderRadiusLG} 0 0;\n }\n `,\n ),\n };\n\n // Additional component styles\n const componentStyles = {\n fixed: css`\n position: relative;\n `,\n fullscreen: css`\n position: absolute;\n inset-block: var(--draggable-panel-header-height, 0) 0;\n inset-inline: 0;\n\n width: 100%;\n height: calc(100% - var(--draggable-panel-header-height, 0px));\n\n background: ${cssVar.colorBgContainer};\n `,\n handlerIcon: css`\n transition: all 0.2s ${cssVar.motionEaseOut};\n `,\n panel: cx(\n `${prefix}-fixed`,\n css`\n overflow: hidden;\n background: var(--draggable-panel-bg, ${cssVar.colorBgLayout});\n transition: all 0.2s ${cssVar.motionEaseOut};\n `,\n ),\n root: cx(\n prefix,\n css`\n flex-shrink: 0;\n\n &:hover {\n > .${prefix}-toggle {\n opacity: 1;\n }\n }\n `,\n ),\n };\n\n return {\n ...borderStyles,\n ...floatPositions,\n ...handleStyles,\n handleHighlight: handleHighlightStyle,\n ...toggleStyles,\n ...componentStyles,\n };\n});\n\nexport const handleVariants = cva(styles.handleRoot, {\n variants: {\n placement: {\n bottom: styles.handleBottom,\n left: styles.handleLeft,\n right: styles.handleRight,\n top: styles.handleTop,\n },\n },\n});\n\nexport const panelVariants = cva(styles.root, {\n compoundVariants: [\n {\n class: styles.bottomFloat,\n mode: 'float',\n placement: 'bottom',\n },\n {\n class: styles.topFloat,\n mode: 'float',\n placement: 'top',\n },\n {\n class: styles.leftFloat,\n mode: 'float',\n placement: 'left',\n },\n {\n class: styles.rightFloat,\n mode: 'float',\n placement: 'right',\n },\n // Border styles based on placement, isExpand, and showBorder\n // Note: border is on the opposite side of placement\n // placement 'top' -> borderBottom, placement 'right' -> borderLeft, etc.\n {\n class: styles.borderBottom,\n isExpand: true,\n placement: 'top',\n showBorder: true,\n },\n {\n class: styles.borderBottomNone,\n isExpand: true,\n placement: 'top',\n showBorder: false,\n },\n {\n class: styles.borderLeft,\n isExpand: true,\n placement: 'right',\n showBorder: true,\n },\n {\n class: styles.borderLeftNone,\n isExpand: true,\n placement: 'right',\n showBorder: false,\n },\n {\n class: styles.borderTop,\n isExpand: true,\n placement: 'bottom',\n showBorder: true,\n },\n {\n class: styles.borderTopNone,\n isExpand: true,\n placement: 'bottom',\n showBorder: false,\n },\n {\n class: styles.borderRight,\n isExpand: true,\n placement: 'left',\n showBorder: true,\n },\n {\n class: styles.borderRightNone,\n isExpand: true,\n placement: 'left',\n showBorder: false,\n },\n ],\n defaultVariants: {\n isExpand: false,\n mode: 'fixed',\n placement: 'right',\n showBorder: true,\n },\n /* eslint-disable sort-keys-fix/sort-keys-fix */\n variants: {\n isExpand: {\n false: null,\n true: null,\n },\n mode: {\n fixed: styles.fixed,\n float: null,\n },\n placement: {\n bottom: null,\n left: null,\n right: null,\n top: null,\n },\n showBorder: {\n false: null,\n true: null,\n },\n },\n /* eslint-enable sort-keys-fix/sort-keys-fix */\n});\n\nexport const toggleVariants = cva(styles.toggleRoot, {\n compoundVariants: [\n {\n class: styles.toggleRootWithWideArea,\n showHandleWideArea: true,\n },\n {\n class: styles.toggleRootWithoutWideArea,\n showHandleWideArea: false,\n },\n ],\n defaultVariants: {\n showHandleWideArea: false,\n },\n variants: {\n placement: {\n bottom: styles.toggleTop,\n left: styles.toggleRight,\n right: styles.toggleLeft,\n top: styles.toggleBottom,\n },\n showHandleWideArea: {\n false: null,\n true: null,\n },\n },\n});\n"],"mappings":"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AAW;GACZ;EACD;GACE,OAAO,OAAO;GACd,MAAM;GACN,WAAW;GACZ;EAID;GACE,OAAO,OAAO;GACd,UAAU;GACV,WAAW;GACX,YAAY;GACb;EACD;GACE,OAAO,OAAO;GACd,UAAU;GACV,WAAW;GACX,YAAY;GACb;EACD;GACE,OAAO,OAAO;GACd,UAAU;GACV,WAAW;GACX,YAAY;GACb;EACD;GACE,OAAO,OAAO;GACd,UAAU;GACV,WAAW;GACX,YAAY;GACb;EACD;GACE,OAAO,OAAO;GACd,UAAU;GACV,WAAW;GACX,YAAY;GACb;EACD;GACE,OAAO,OAAO;GACd,UAAU;GACV,WAAW;GACX,YAAY;GACb;EACD;GACE,OAAO,OAAO;GACd,UAAU;GACV,WAAW;GACX,YAAY;GACb;EACD;GACE,OAAO,OAAO;GACd,UAAU;GACV,WAAW;GACX,YAAY;GACb;EACF;CACD,iBAAiB;EACf,UAAU;EACV,MAAM;EACN,WAAW;EACX,YAAY;EACb;CAED,UAAU;EACR,UAAU;GACR,OAAO;GACP,MAAM;GACP;EACD,MAAM;GACJ,OAAO,OAAO;GACd,OAAO;GACR;EACD,WAAW;GACT,QAAQ;GACR,MAAM;GACN,OAAO;GACP,KAAK;GACN;EACD,YAAY;GACV,OAAO;GACP,MAAM;GACP;EACF;CAEF,CAAC;AAEF,MAAa,iBAAiB,IAAI,OAAO,YAAY;CACnD,kBAAkB,CAChB;EACE,OAAO,OAAO;EACd,oBAAoB;EACrB,EACD;EACE,OAAO,OAAO;EACd,oBAAoB;EACrB,CACF;CACD,iBAAiB,EACf,oBAAoB,OACrB;CACD,UAAU;EACR,WAAW;GACT,QAAQ,OAAO;GACf,MAAM,OAAO;GACb,OAAO,OAAO;GACd,KAAK,OAAO;GACb;EACD,oBAAoB;GAClB,OAAO;GACP,MAAM;GACP;EACF;CACF,CAAC"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { DraggableSideNavProps } from "./type.mjs";
|
|
2
|
-
import * as
|
|
2
|
+
import * as react21 from "react";
|
|
3
3
|
|
|
4
4
|
//#region src/DraggableSideNav/DraggableSideNav.d.ts
|
|
5
|
-
declare const DraggableSideNav:
|
|
5
|
+
declare const DraggableSideNav: react21.NamedExoticComponent<DraggableSideNavProps>;
|
|
6
6
|
//#endregion
|
|
7
7
|
export { DraggableSideNav };
|
|
8
8
|
//# sourceMappingURL=DraggableSideNav.d.mts.map
|
package/es/Drawer/Drawer.d.mts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { DrawerProps } from "./type.mjs";
|
|
2
|
-
import * as
|
|
2
|
+
import * as react20 from "react";
|
|
3
3
|
|
|
4
4
|
//#region src/Drawer/Drawer.d.ts
|
|
5
|
-
declare const Drawer:
|
|
5
|
+
declare const Drawer: react20.NamedExoticComponent<DrawerProps>;
|
|
6
6
|
//#endregion
|
|
7
7
|
export { Drawer };
|
|
8
8
|
//# sourceMappingURL=Drawer.d.mts.map
|