This commit is contained in:
2026-05-25 17:08:18 +08:00
parent df501f6151
commit f1259b71b5
9178 changed files with 1626125 additions and 0 deletions
@@ -0,0 +1,11 @@
import * as React from 'react';
import type { CopyConfig } from '../Base';
declare const useCopyClick: ({ copyConfig, children, }: {
copyConfig: CopyConfig;
children?: React.ReactNode;
}) => {
copied: boolean;
copyLoading: boolean;
onClick: (e?: React.MouseEvent<HTMLButtonElement>) => Promise<void>;
};
export default useCopyClick;
+59
View File
@@ -0,0 +1,59 @@
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var React = _interopRequireWildcard(require("react"));
var _util = require("@rc-component/util");
var _copy = _interopRequireDefault(require("../../_util/copy"));
var _toList = _interopRequireDefault(require("../../_util/toList"));
const useCopyClick = ({
copyConfig,
children
}) => {
const [copied, setCopied] = React.useState(false);
const [copyLoading, setCopyLoading] = React.useState(false);
const copyIdRef = React.useRef(null);
const cleanCopyId = () => {
if (copyIdRef.current) {
clearTimeout(copyIdRef.current);
}
};
const copyOptions = {};
if (copyConfig.format) {
copyOptions.format = copyConfig.format;
}
React.useEffect(() => cleanCopyId, []);
// Keep copy action up to date
const onClick = (0, _util.useEvent)(async e => {
e?.preventDefault();
e?.stopPropagation();
setCopyLoading(true);
try {
const text = typeof copyConfig.text === 'function' ? await copyConfig.text() : copyConfig.text;
await (0, _copy.default)(text || (0, _toList.default)(children, {
skipEmpty: true
}).join('') || '', copyOptions);
setCopyLoading(false);
setCopied(true);
// Trigger tips update
cleanCopyId();
copyIdRef.current = setTimeout(() => {
setCopied(false);
}, 3000);
copyConfig.onCopy?.(e);
} catch (error) {
setCopyLoading(false);
throw error;
}
});
return {
copied,
copyLoading,
onClick
};
};
var _default = exports.default = useCopyClick;
@@ -0,0 +1 @@
export default function useMergedConfig<Target>(propConfig: any, templateConfig?: Target): readonly [boolean, Target];
@@ -0,0 +1,17 @@
"use strict";
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = useMergedConfig;
var React = _interopRequireWildcard(require("react"));
function useMergedConfig(propConfig, templateConfig) {
return React.useMemo(() => {
const support = !!propConfig;
return [support, {
...templateConfig,
...(support && typeof propConfig === 'object' ? propConfig : null)
}];
}, [propConfig]);
}
@@ -0,0 +1,2 @@
declare const usePrevious: <T>(value: T) => T | undefined;
export default usePrevious;
+15
View File
@@ -0,0 +1,15 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _react = require("react");
const usePrevious = value => {
const ref = (0, _react.useRef)(undefined);
(0, _react.useEffect)(() => {
ref.current = value;
});
return ref.current;
};
var _default = exports.default = usePrevious;
@@ -0,0 +1,57 @@
import type { TooltipProps } from '../../tooltip';
declare const useTooltipProps: (tooltip: React.ReactNode | TooltipProps, editConfigText: React.ReactNode, children: React.ReactNode) => {
[Symbol.iterator](): Iterator<import("react").ReactNode, any, any>;
title: import("react").ReactNode;
} | {
then<TResult1 = string | number | bigint | boolean | import("react").ReactPortal | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | Iterable<import("react").ReactNode> | null | undefined, TResult2 = never>(onfulfilled?: ((value: string | number | bigint | boolean | import("react").ReactPortal | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | Iterable<import("react").ReactNode> | null | undefined) => TResult1 | PromiseLike<TResult1>) | null | undefined, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | null | undefined): Promise<TResult1 | TResult2>;
catch<TResult = never>(onrejected?: ((reason: any) => TResult | PromiseLike<TResult>) | null | undefined): Promise<(string | number | bigint | boolean | import("react").ReactPortal | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | Iterable<import("react").ReactNode> | null | undefined) | TResult>;
finally(onfinally?: (() => void) | null | undefined): Promise<string | number | bigint | boolean | import("react").ReactPortal | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | Iterable<import("react").ReactNode> | null | undefined>;
[Symbol.toStringTag]: string;
title: import("react").ReactNode;
} | {
title: string | number | bigint | boolean | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | Iterable<import("react").ReactNode> | Promise<string | number | bigint | boolean | import("react").ReactPortal | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | Iterable<import("react").ReactNode> | null | undefined> | import("../../_util/getRenderPropValue").RenderFunction | null | undefined;
overlay?: React.ReactNode | import("../../_util/getRenderPropValue").RenderFunction;
classNames?: import("../../tooltip").TooltipClassNamesType;
styles?: import("../../tooltip").TooltipStylesType;
style?: React.CSSProperties;
className?: string;
rootClassName?: string;
color?: import("../../_util/type").LiteralUnion<import("../../_util/colors").PresetColorType>;
placement?: import("../../tooltip").TooltipPlacement;
builtinPlacements?: typeof import("@rc-component/tooltip/lib/placements").placements;
openClassName?: string;
arrow?: boolean | {
pointAtCenter?: boolean;
};
autoAdjustOverflow?: boolean | import("../../tooltip").AdjustOverflow;
getPopupContainer?: (triggerNode: HTMLElement) => HTMLElement;
children?: React.ReactNode;
destroyOnHidden?: boolean;
destroyTooltipOnHide?: boolean | {
keepParent?: boolean;
};
overlayStyle?: React.CSSProperties;
overlayInnerStyle?: React.CSSProperties;
overlayClassName?: string;
open?: import("@rc-component/tooltip/lib/Tooltip").TooltipProps["visible"];
defaultOpen?: import("@rc-component/tooltip/lib/Tooltip").TooltipProps["defaultVisible"];
onOpenChange?: import("@rc-component/tooltip/lib/Tooltip").TooltipProps["onVisibleChange"];
afterOpenChange?: import("@rc-component/tooltip/lib/Tooltip").TooltipProps["afterVisibleChange"];
align?: import("@rc-component/trigger").AlignType | undefined;
motion?: import("@rc-component/motion").CSSMotionProps | undefined;
prefixCls?: string | undefined;
zIndex?: number | undefined;
onPopupAlign?: ((element: HTMLElement, align: import("@rc-component/trigger").AlignType) => void) | undefined;
fresh?: boolean | undefined;
mouseLeaveDelay?: number | undefined;
mouseEnterDelay?: number | undefined;
forceRender?: boolean | undefined;
popupVisible?: boolean | undefined;
trigger?: (import("@rc-component/trigger").ActionType | import("@rc-component/trigger").ActionType[]) | undefined;
getTooltipContainer?: ((node: HTMLElement) => HTMLElement) | undefined;
showArrow?: (boolean | import("@rc-component/trigger").ArrowType) | undefined;
arrowContent?: import("react").ReactNode;
id?: string | undefined;
unique?: boolean | undefined;
};
export default useTooltipProps;
@@ -0,0 +1,30 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _react = require("react");
var _is = require("../../_util/is");
const useTooltipProps = (tooltip, editConfigText, children) => (0, _react.useMemo)(() => {
if (tooltip === true) {
return {
title: editConfigText ?? children
};
}
if (/*#__PURE__*/(0, _react.isValidElement)(tooltip)) {
return {
title: tooltip
};
}
if ((0, _is.isPlainObject)(tooltip)) {
return {
title: editConfigText ?? children,
...tooltip
};
}
return {
title: tooltip
};
}, [tooltip, editConfigText, children]);
var _default = exports.default = useTooltipProps;