Update from Vibe Studio

This commit is contained in:
Vibe Studio
2026-01-16 01:51:36 +00:00
parent a4605e311a
commit 58905d02c2
28599 changed files with 2179074 additions and 0 deletions

View File

@@ -0,0 +1,12 @@
import React from 'react';
type LightFilterFooterRender = ((onConfirm?: (e?: React.MouseEvent) => void, onClear?: (e?: React.MouseEvent) => void) => JSX.Element | false) | false;
type OnClick = (e?: React.MouseEvent) => void;
export type DropdownFooterProps = {
onClear?: OnClick;
onConfirm?: OnClick;
disabled?: boolean;
footerRender?: LightFilterFooterRender;
children?: React.ReactNode;
};
declare const DropdownFooter: React.FC<DropdownFooterProps>;
export { DropdownFooter };

View File

@@ -0,0 +1,60 @@
"use strict";
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.DropdownFooter = void 0;
var _proProvider = require("@ant-design/pro-provider");
var _antd = require("antd");
var _classnames = _interopRequireDefault(require("classnames"));
var _react = _interopRequireWildcard(require("react"));
var _style = require("./style");
var _jsxRuntime = require("react/jsx-runtime");
var DropdownFooter = exports.DropdownFooter = function DropdownFooter(props) {
var intl = (0, _proProvider.useIntl)();
var onClear = props.onClear,
onConfirm = props.onConfirm,
disabled = props.disabled,
footerRender = props.footerRender;
var _useContext = (0, _react.useContext)(_antd.ConfigProvider.ConfigContext),
getPrefixCls = _useContext.getPrefixCls;
var prefixCls = getPrefixCls('pro-core-dropdown-footer');
var _useStyle = (0, _style.useStyle)(prefixCls),
wrapSSR = _useStyle.wrapSSR,
hashId = _useStyle.hashId;
var defaultFooter = [/*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Button, {
style: {
visibility: onClear ? 'visible' : 'hidden'
},
type: "link",
size: "small",
disabled: disabled,
onClick: function onClick(e) {
if (onClear) {
onClear(e);
}
e.stopPropagation();
},
children: intl.getMessage('form.lightFilter.clear', '清除')
}, "clear"), /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Button, {
"data-type": "confirm",
type: "primary",
size: "small",
onClick: onConfirm,
disabled: disabled,
children: intl.getMessage('form.lightFilter.confirm', '确认')
}, "confirm")];
if (footerRender === false || (footerRender === null || footerRender === void 0 ? void 0 : footerRender(onConfirm, onClear)) === false) {
return null;
}
var renderDom = (footerRender === null || footerRender === void 0 ? void 0 : footerRender(onConfirm, onClear)) || defaultFooter;
return wrapSSR( /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
className: (0, _classnames.default)(prefixCls, hashId),
onClick: function onClick(e) {
return e.target.getAttribute('data-type') !== 'confirm' && e.stopPropagation();
},
children: renderDom
}));
};

View File

@@ -0,0 +1,9 @@
/// <reference types="react" />
import type { ProAliasToken } from '@ant-design/pro-provider';
export interface ProToken extends ProAliasToken {
componentCls: string;
}
export declare function useStyle(prefixCls: string): {
wrapSSR: (node: import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>) => import("react").JSX.Element;
hashId: string;
};

View File

@@ -0,0 +1,28 @@
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.useStyle = useStyle;
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _proProvider = require("@ant-design/pro-provider");
var genProStyle = function genProStyle(token) {
return (0, _defineProperty2.default)({}, token.componentCls, {
display: 'flex',
justifyContent: 'space-between',
paddingBlock: 8,
paddingInlineStart: 8,
paddingInlineEnd: 8,
borderBlockStart: "1px solid ".concat(token.colorSplit)
});
};
function useStyle(prefixCls) {
return (0, _proProvider.useStyle)('DropdownFooter', function (token) {
var proToken = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, token), {}, {
componentCls: ".".concat(prefixCls)
});
return [genProStyle(proToken)];
});
}

View File

@@ -0,0 +1,20 @@
import type { ErrorInfo } from 'react';
import React from 'react';
declare class ErrorBoundary extends React.Component<{
children?: React.ReactNode;
}, {
hasError: boolean;
errorInfo: string;
}> {
state: {
hasError: boolean;
errorInfo: string;
};
static getDerivedStateFromError(error: Error): {
hasError: boolean;
errorInfo: string;
};
componentDidCatch(error: any, errorInfo: ErrorInfo): void;
render(): string | number | boolean | Iterable<React.ReactNode> | import("react/jsx-runtime").JSX.Element | null | undefined;
}
export { ErrorBoundary };

View File

@@ -0,0 +1,64 @@
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.ErrorBoundary = void 0;
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper"));
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _antd = require("antd");
var _react = _interopRequireDefault(require("react"));
var _jsxRuntime = require("react/jsx-runtime");
// eslint-disable-next-line @typescript-eslint/ban-types
var ErrorBoundary = exports.ErrorBoundary = /*#__PURE__*/function (_React$Component) {
(0, _inherits2.default)(ErrorBoundary, _React$Component);
var _super = (0, _createSuper2.default)(ErrorBoundary);
function ErrorBoundary() {
var _this;
(0, _classCallCheck2.default)(this, ErrorBoundary);
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
_this = _super.call.apply(_super, [this].concat(args));
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "state", {
hasError: false,
errorInfo: ''
});
return _this;
}
(0, _createClass2.default)(ErrorBoundary, [{
key: "componentDidCatch",
value: function componentDidCatch(error, errorInfo) {
// You can also log the error to an error reporting service
// eslint-disable-next-line no-console
console.log(error, errorInfo);
}
}, {
key: "render",
value: function render() {
if (this.state.hasError) {
// You can render any custom fallback UI
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Result, {
status: "error",
title: "Something went wrong.",
extra: this.state.errorInfo
});
}
return this.props.children;
}
}], [{
key: "getDerivedStateFromError",
value: function getDerivedStateFromError(error) {
return {
hasError: true,
errorInfo: error.message
};
}
}]);
return ErrorBoundary;
}(_react.default.Component);

View File

@@ -0,0 +1,24 @@
import type { SizeType } from 'antd/lib/config-provider/SizeContext';
import React from 'react';
export type FieldLabelProps = {
label?: React.ReactNode;
value?: any;
disabled?: boolean;
onClear?: () => void;
size?: SizeType;
ellipsis?: boolean;
placeholder?: React.ReactNode;
className?: string;
formatter?: (value: any) => React.ReactNode;
style?: React.CSSProperties;
bordered?: boolean;
allowClear?: boolean;
downIcon?: React.ReactNode | false;
onClick?: () => void;
valueMaxLength?: number;
/**
* 点击标签的事件,用来唤醒 down menu 状态
*/
onLabelClick?: () => void;
};
export declare const FieldLabel: React.ForwardRefExoticComponent<FieldLabelProps & React.RefAttributes<any>>;

View File

@@ -0,0 +1,148 @@
"use strict";
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.FieldLabel = void 0;
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _icons = require("@ant-design/icons");
var _proProvider = require("@ant-design/pro-provider");
var _antd = require("antd");
var _classnames = _interopRequireDefault(require("classnames"));
var _react = _interopRequireWildcard(require("react"));
var _style = require("./style");
var _jsxRuntime = require("react/jsx-runtime");
var FieldLabelFunction = function FieldLabelFunction(props, ref) {
var _ConfigProvider$useCo, _ref2, _props$size;
var label = props.label,
onClear = props.onClear,
value = props.value,
disabled = props.disabled,
onLabelClick = props.onLabelClick,
ellipsis = props.ellipsis,
placeholder = props.placeholder,
className = props.className,
formatter = props.formatter,
bordered = props.bordered,
style = props.style,
downIcon = props.downIcon,
_props$allowClear = props.allowClear,
allowClear = _props$allowClear === void 0 ? true : _props$allowClear,
_props$valueMaxLength = props.valueMaxLength,
valueMaxLength = _props$valueMaxLength === void 0 ? 41 : _props$valueMaxLength;
var _ref = (_antd.ConfigProvider === null || _antd.ConfigProvider === void 0 || (_ConfigProvider$useCo = _antd.ConfigProvider.useConfig) === null || _ConfigProvider$useCo === void 0 ? void 0 : _ConfigProvider$useCo.call(_antd.ConfigProvider)) || {
componentSize: 'middle'
},
componentSize = _ref.componentSize;
var size = componentSize;
var _useContext = (0, _react.useContext)(_antd.ConfigProvider.ConfigContext),
getPrefixCls = _useContext.getPrefixCls;
var prefixCls = getPrefixCls('pro-core-field-label');
var _useStyle = (0, _style.useStyle)(prefixCls),
wrapSSR = _useStyle.wrapSSR,
hashId = _useStyle.hashId;
var intl = (0, _proProvider.useIntl)();
var clearRef = (0, _react.useRef)(null);
var labelRef = (0, _react.useRef)(null);
(0, _react.useImperativeHandle)(ref, function () {
return {
labelRef: labelRef,
clearRef: clearRef
};
});
var wrapElements = function wrapElements(array) {
if (array.every(function (item) {
return typeof item === 'string';
})) return array.join(',');
return array.map(function (item, index) {
var comma = index === array.length - 1 ? '' : ',';
if (typeof item === 'string') {
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("span", {
children: [item, comma]
}, index);
}
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("span", {
style: {
display: 'flex'
},
children: [item, comma]
}, index);
});
};
var formatterText = function formatterText(aValue) {
if (formatter) {
return formatter(aValue);
}
return Array.isArray(aValue) ? wrapElements(aValue) : aValue;
};
var getTextByValue = function getTextByValue(aLabel, aValue) {
if (aValue !== undefined && aValue !== null && aValue !== '' && (!Array.isArray(aValue) || aValue.length)) {
var _str$toString, _str$toString$slice;
var prefix = aLabel ? /*#__PURE__*/(0, _jsxRuntime.jsxs)("span", {
onClick: function onClick() {
onLabelClick === null || onLabelClick === void 0 || onLabelClick();
},
className: "".concat(prefixCls, "-text"),
children: [aLabel, ': ']
}) : '';
var str = formatterText(aValue);
if (!ellipsis) {
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("span", {
style: {
display: 'inline-flex',
alignItems: 'center'
},
children: [prefix, formatterText(aValue)]
});
}
var getText = function getText() {
var isArrayValue = Array.isArray(aValue) && aValue.length > 1;
var unitText = intl.getMessage('form.lightFilter.itemUnit', '项');
if (typeof str === 'string' && str.length > valueMaxLength && isArrayValue) {
return "...".concat(aValue.length).concat(unitText);
}
return '';
};
var tail = getText();
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("span", {
title: typeof str === 'string' ? str : undefined,
style: {
display: 'inline-flex',
alignItems: 'center'
},
children: [prefix, /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
style: {
paddingInlineStart: 4,
display: 'flex'
},
children: typeof str === 'string' ? str === null || str === void 0 || (_str$toString = str.toString()) === null || _str$toString === void 0 || (_str$toString$slice = _str$toString.slice) === null || _str$toString$slice === void 0 ? void 0 : _str$toString$slice.call(_str$toString, 0, valueMaxLength) : str
}), tail]
});
}
return aLabel || placeholder;
};
return wrapSSR( /*#__PURE__*/(0, _jsxRuntime.jsxs)("span", {
className: (0, _classnames.default)(prefixCls, hashId, "".concat(prefixCls, "-").concat((_ref2 = (_props$size = props.size) !== null && _props$size !== void 0 ? _props$size : size) !== null && _ref2 !== void 0 ? _ref2 : 'middle'), (0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)({}, "".concat(prefixCls, "-active"), (Array.isArray(value) ? value.length > 0 : !!value) || value === 0), "".concat(prefixCls, "-disabled"), disabled), "".concat(prefixCls, "-bordered"), bordered), "".concat(prefixCls, "-allow-clear"), allowClear), className),
style: style,
ref: labelRef,
onClick: function onClick() {
var _props$onClick;
props === null || props === void 0 || (_props$onClick = props.onClick) === null || _props$onClick === void 0 || _props$onClick.call(props);
},
children: [getTextByValue(label, value), (value || value === 0) && allowClear && /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.CloseCircleFilled, {
role: "button",
title: intl.getMessage('form.lightFilter.clear', '清除'),
className: (0, _classnames.default)("".concat(prefixCls, "-icon"), hashId, "".concat(prefixCls, "-close")),
onClick: function onClick(e) {
if (!disabled) onClear === null || onClear === void 0 || onClear();
e.stopPropagation();
},
ref: clearRef
}), downIcon !== false ? downIcon !== null && downIcon !== void 0 ? downIcon : /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.DownOutlined, {
className: (0, _classnames.default)("".concat(prefixCls, "-icon"), hashId, "".concat(prefixCls, "-arrow"))
}) : null]
}));
};
var FieldLabel = exports.FieldLabel = /*#__PURE__*/_react.default.forwardRef(FieldLabelFunction);

View File

@@ -0,0 +1,9 @@
/// <reference types="react" />
import type { ProAliasToken } from '@ant-design/pro-provider';
export interface ProToken extends ProAliasToken {
componentCls: string;
}
export declare function useStyle(prefixCls: string): {
wrapSSR: (node: import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>) => import("react").JSX.Element;
hashId: string;
};

View File

@@ -0,0 +1,96 @@
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.useStyle = useStyle;
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _proProvider = require("@ant-design/pro-provider");
var genProStyle = function genProStyle(token) {
return (0, _defineProperty2.default)({}, token.componentCls, (0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)({
display: 'inline-flex',
gap: token.marginXXS,
alignItems: 'center',
height: '30px',
paddingBlock: 0,
paddingInline: 8,
fontSize: token.fontSize,
lineHeight: '30px',
borderRadius: '2px',
cursor: 'pointer',
'&:hover': {
backgroundColor: token.colorBgTextHover
},
'&-active': (0, _defineProperty2.default)({
paddingBlock: 0,
paddingInline: 8,
backgroundColor: token.colorBgTextHover
}, "&".concat(token.componentCls, "-allow-clear:hover:not(").concat(token.componentCls, "-disabled)"), (0, _defineProperty2.default)((0, _defineProperty2.default)({}, "".concat(token.componentCls, "-arrow"), {
display: 'none'
}), "".concat(token.componentCls, "-close"), {
display: 'inline-flex'
}))
}, "".concat(token.antCls, "-select"), (0, _defineProperty2.default)({}, "".concat(token.antCls, "-select-clear"), {
borderRadius: '50%'
})), "".concat(token.antCls, "-picker"), (0, _defineProperty2.default)({}, "".concat(token.antCls, "-picker-clear"), {
borderRadius: '50%'
})), '&-icon', (0, _defineProperty2.default)((0, _defineProperty2.default)({
color: token.colorIcon,
transition: 'color 0.3s',
fontSize: 12,
verticalAlign: 'middle'
}, "&".concat(token.componentCls, "-close"), {
display: 'none',
fontSize: 12,
alignItems: 'center',
justifyContent: 'center',
color: token.colorTextPlaceholder,
borderRadius: '50%'
}), '&:hover', {
color: token.colorIconHover
})), '&-disabled', (0, _defineProperty2.default)({
color: token.colorTextPlaceholder,
cursor: 'not-allowed'
}, "".concat(token.componentCls, "-icon"), {
color: token.colorTextPlaceholder
})), '&-small', (0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)({
height: '24px',
paddingBlock: 0,
paddingInline: 4,
fontSize: token.fontSizeSM,
lineHeight: '24px'
}, "&".concat(token.componentCls, "-active"), {
paddingBlock: 0,
paddingInline: 8
}), "".concat(token.componentCls, "-icon"), {
paddingBlock: 0,
paddingInline: 0
}), "".concat(token.componentCls, "-close"), {
marginBlockStart: '-2px',
paddingBlock: 4,
paddingInline: 4,
fontSize: '6px'
})), '&-bordered', {
height: '32px',
paddingBlock: 0,
paddingInline: 8,
border: "".concat(token.lineWidth, "px solid ").concat(token.colorBorder),
borderRadius: '@border-radius-base'
}), '&-bordered&-small', {
height: '24px',
paddingBlock: 0,
paddingInline: 8
}), '&-bordered&-active', {
backgroundColor: token.colorBgContainer
}));
};
function useStyle(prefixCls) {
return (0, _proProvider.useStyle)('FieldLabel', function (token) {
var proToken = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, token), {}, {
componentCls: ".".concat(prefixCls)
});
return [genProStyle(proToken)];
});
}

View File

@@ -0,0 +1,26 @@
import React from 'react';
import type { DropdownFooterProps } from '../DropdownFooter';
import 'antd/lib/dropdown/style';
import type { TooltipPlacement } from 'antd/lib/tooltip';
export type FooterRender = ((onConfirm?: (e?: React.MouseEvent) => void, onClear?: (e?: React.MouseEvent) => void) => JSX.Element | false) | false;
export type DropdownProps = {
label?: React.ReactNode;
footer?: DropdownFooterProps;
footerRender?: FooterRender;
padding?: number;
disabled?: boolean;
/**
* @deprecated use onOpenChange replace
*/
onVisibleChange?: (visible: boolean) => void;
/**
* @deprecated use open replace
*/
visible?: boolean;
onOpenChange?: (visible: boolean) => void;
open?: boolean;
placement?: TooltipPlacement;
children?: React.ReactNode;
};
declare const FilterDropdown: React.FC<DropdownProps>;
export { FilterDropdown };

View File

@@ -0,0 +1,68 @@
"use strict";
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.FilterDropdown = void 0;
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _antd = require("antd");
var _react = _interopRequireWildcard(require("react"));
var _DropdownFooter = require("../DropdownFooter");
require("antd/lib/dropdown/style");
var _classnames = _interopRequireDefault(require("classnames"));
var _openVisibleCompatible = require("../../compareVersions/openVisibleCompatible");
var _style2 = require("./style");
var _jsxRuntime = require("react/jsx-runtime");
var FilterDropdown = exports.FilterDropdown = function FilterDropdown(props) {
var children = props.children,
label = props.label,
footer = props.footer,
open = props.open,
onOpenChange = props.onOpenChange,
disabled = props.disabled,
onVisibleChange = props.onVisibleChange,
visible = props.visible,
footerRender = props.footerRender,
placement = props.placement;
var _useContext = (0, _react.useContext)(_antd.ConfigProvider.ConfigContext),
getPrefixCls = _useContext.getPrefixCls;
var prefixCls = getPrefixCls('pro-core-field-dropdown');
var _useStyle = (0, _style2.useStyle)(prefixCls),
wrapSSR = _useStyle.wrapSSR,
hashId = _useStyle.hashId;
var dropdownOpenProps = (0, _openVisibleCompatible.openVisibleCompatible)(open || visible || false, onOpenChange || onVisibleChange);
var htmlRef = (0, _react.useRef)(null);
return wrapSSR( /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Popover, (0, _objectSpread2.default)((0, _objectSpread2.default)({
placement: placement,
trigger: ['click']
}, dropdownOpenProps), {}, {
styles: {
body: {
padding: 0
}
},
content: /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
ref: htmlRef,
className: (0, _classnames.default)("".concat(prefixCls, "-overlay"), (0, _defineProperty2.default)((0, _defineProperty2.default)({}, "".concat(prefixCls, "-overlay-").concat(placement), placement), "hashId", hashId)),
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.ConfigProvider, {
getPopupContainer: function getPopupContainer() {
return htmlRef.current || document.body;
},
children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
className: "".concat(prefixCls, "-content ").concat(hashId).trim(),
children: children
})
}), footer && /*#__PURE__*/(0, _jsxRuntime.jsx)(_DropdownFooter.DropdownFooter, (0, _objectSpread2.default)({
disabled: disabled,
footerRender: footerRender
}, footer))]
}),
children: /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
className: "".concat(prefixCls, "-label ").concat(hashId).trim(),
children: label
})
})));
};

View File

@@ -0,0 +1,9 @@
/// <reference types="react" />
import type { ProAliasToken } from '@ant-design/pro-provider';
export interface ProToken extends ProAliasToken {
componentCls: string;
}
export declare function useStyle(prefixCls: string): {
wrapSSR: (node: import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>) => import("react").JSX.Element;
hashId: string;
};

View File

@@ -0,0 +1,29 @@
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.useStyle = useStyle;
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _proProvider = require("@ant-design/pro-provider");
var genProStyle = function genProStyle(token) {
return (0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)({}, "".concat(token.componentCls, "-label"), {
cursor: 'pointer'
}), "".concat(token.componentCls, "-overlay"), {
minWidth: '200px',
marginBlockStart: '4px'
}), "".concat(token.componentCls, "-content"), {
paddingBlock: 16,
paddingInline: 16
});
};
function useStyle(prefixCls) {
return (0, _proProvider.useStyle)('FilterDropdown', function (token) {
var proToken = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, token), {}, {
componentCls: ".".concat(prefixCls)
});
return [genProStyle(proToken)];
});
}

View File

@@ -0,0 +1,8 @@
import type { FormItemProps, PopoverProps } from 'antd';
interface InlineErrorFormItemProps extends FormItemProps {
errorType?: 'popover' | 'default';
popoverProps?: PopoverProps;
children: any;
}
export declare const InlineErrorFormItem: (props: InlineErrorFormItemProps) => import("react/jsx-runtime").JSX.Element;
export {};

View File

@@ -0,0 +1,155 @@
"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.InlineErrorFormItem = void 0;
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
var _icons = require("@ant-design/icons");
var _proProvider = require("@ant-design/pro-provider");
var _antd = require("antd");
var _get = _interopRequireDefault(require("rc-util/lib/utils/get"));
var _react = _interopRequireWildcard(require("react"));
var _openVisibleCompatible = require("../../compareVersions/openVisibleCompatible");
var _style = require("./style");
var _jsxRuntime = require("react/jsx-runtime");
var _excluded = ["rules", "name", "children", "popoverProps"],
_excluded2 = ["errorType", "rules", "name", "popoverProps", "children"];
var FIX_INLINE_STYLE = {
marginBlockStart: -5,
marginBlockEnd: -5,
marginInlineStart: 0,
marginInlineEnd: 0
};
var InlineErrorFormItemPopover = function InlineErrorFormItemPopover(_ref) {
var inputProps = _ref.inputProps,
input = _ref.input,
extra = _ref.extra,
errorList = _ref.errorList,
popoverProps = _ref.popoverProps;
var _useState = (0, _react.useState)(false),
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
open = _useState2[0],
setOpen = _useState2[1];
var _useState3 = (0, _react.useState)([]),
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
errorStringList = _useState4[0],
setErrorList = _useState4[1];
var _useContext = (0, _react.useContext)(_antd.ConfigProvider.ConfigContext),
getPrefixCls = _useContext.getPrefixCls;
var prefixCls = getPrefixCls();
var token = (0, _proProvider.useToken)();
var _useStyle = (0, _style.useStyle)("".concat(prefixCls, "-form-item-with-help")),
wrapSSR = _useStyle.wrapSSR,
hashId = _useStyle.hashId;
(0, _react.useEffect)(function () {
if (inputProps.validateStatus !== 'validating') {
setErrorList(inputProps.errors);
}
}, [inputProps.errors, inputProps.validateStatus]);
var popoverOpenProps = (0, _openVisibleCompatible.openVisibleCompatible)(errorStringList.length < 1 ? false : open, function (changeOpen) {
if (changeOpen === open) return;
setOpen(changeOpen);
});
var loading = inputProps.validateStatus === 'validating';
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Popover, (0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)({
trigger: (popoverProps === null || popoverProps === void 0 ? void 0 : popoverProps.trigger) || ['click'],
placement: (popoverProps === null || popoverProps === void 0 ? void 0 : popoverProps.placement) || 'topLeft'
}, popoverOpenProps), {}, {
getPopupContainer: popoverProps === null || popoverProps === void 0 ? void 0 : popoverProps.getPopupContainer,
getTooltipContainer: popoverProps === null || popoverProps === void 0 ? void 0 : popoverProps.getTooltipContainer,
content: wrapSSR( /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
className: "".concat(prefixCls, "-form-item ").concat(hashId, " ").concat(token.hashId).trim(),
style: {
margin: 0,
padding: 0
},
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
className: "".concat(prefixCls, "-form-item-with-help ").concat(hashId, " ").concat(token.hashId).trim(),
children: [loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.LoadingOutlined, {}) : null, errorList]
})
}))
}, popoverProps), {}, {
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
children: [input, extra]
})
}), "popover");
};
var InternalFormItemFunction = function InternalFormItemFunction(_ref2) {
var rules = _ref2.rules,
name = _ref2.name,
children = _ref2.children,
popoverProps = _ref2.popoverProps,
rest = (0, _objectWithoutProperties2.default)(_ref2, _excluded);
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Form.Item, (0, _objectSpread2.default)((0, _objectSpread2.default)({
name: name,
rules: rules,
hasFeedback: false,
shouldUpdate: function shouldUpdate(prev, next) {
if (prev === next) return false;
var shouldName = [name].flat(1);
if (shouldName.length > 1) {
shouldName.pop();
}
try {
return JSON.stringify((0, _get.default)(prev, shouldName)) !== JSON.stringify((0, _get.default)(next, shouldName));
} catch (error) {
return true;
}
}
// @ts-ignore
,
_internalItemRender: {
mark: 'pro_table_render',
render: function render(inputProps, doms) {
return /*#__PURE__*/(0, _jsxRuntime.jsx)(InlineErrorFormItemPopover, (0, _objectSpread2.default)({
inputProps: inputProps,
popoverProps: popoverProps
}, doms));
}
}
}, rest), {}, {
style: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, FIX_INLINE_STYLE), rest === null || rest === void 0 ? void 0 : rest.style),
children: children
}));
};
var InlineErrorFormItem = exports.InlineErrorFormItem = function InlineErrorFormItem(props) {
var errorType = props.errorType,
rules = props.rules,
name = props.name,
popoverProps = props.popoverProps,
children = props.children,
rest = (0, _objectWithoutProperties2.default)(props, _excluded2);
if (name && rules !== null && rules !== void 0 && rules.length && errorType === 'popover') {
return /*#__PURE__*/(0, _jsxRuntime.jsx)(InternalFormItemFunction, (0, _objectSpread2.default)((0, _objectSpread2.default)({
name: name,
rules: rules,
popoverProps: popoverProps
}, rest), {}, {
children: children
}));
}
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Form.Item, (0, _objectSpread2.default)((0, _objectSpread2.default)({
rules: rules,
shouldUpdate: name ? function (prev, next) {
if (prev === next) return false;
var shouldName = [name].flat(1);
if (shouldName.length > 1) {
shouldName.pop();
}
try {
return JSON.stringify((0, _get.default)(prev, shouldName)) !== JSON.stringify((0, _get.default)(next, shouldName));
} catch (error) {
return true;
}
} : undefined
}, rest), {}, {
style: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, FIX_INLINE_STYLE), rest.style),
name: name,
children: children
}));
};

View File

@@ -0,0 +1,9 @@
/// <reference types="react" />
import type { ProAliasToken } from '@ant-design/pro-provider';
export interface ProToken extends ProAliasToken {
componentCls: string;
}
export declare function useStyle(prefixCls: string): {
wrapSSR: (node: import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>) => import("react").JSX.Element;
hashId: string;
};

View File

@@ -0,0 +1,70 @@
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.useStyle = useStyle;
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _proProvider = require("@ant-design/pro-provider");
var genProStyle = function genProStyle(token) {
var progressBgCls = "".concat(token.antCls, "-progress-bg");
return (0, _defineProperty2.default)({}, token.componentCls, {
'&-multiple': {
paddingBlockStart: 6,
paddingBlockEnd: 12,
paddingInline: 8
},
'&-progress': {
'&-success': (0, _defineProperty2.default)({}, progressBgCls, {
backgroundColor: token.colorSuccess
}),
'&-error': (0, _defineProperty2.default)({}, progressBgCls, {
backgroundColor: token.colorError
}),
'&-warning': (0, _defineProperty2.default)({}, progressBgCls, {
backgroundColor: token.colorWarning
})
},
'&-rule': {
display: 'flex',
alignItems: 'center',
'&-icon': {
'&-default': {
display: 'flex',
alignItems: 'center',
justifyContent: 'center',
width: '14px',
height: '22px',
'&-circle': {
width: '6px',
height: '6px',
backgroundColor: token.colorTextSecondary,
borderRadius: '4px'
}
},
'&-loading': {
color: token.colorPrimary
},
'&-error': {
color: token.colorError
},
'&-success': {
color: token.colorSuccess
}
},
'&-text': {
color: token.colorText
}
}
});
};
function useStyle(prefixCls) {
return (0, _proProvider.useStyle)('InlineErrorFormItem', function (token) {
var proToken = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, token), {}, {
componentCls: ".".concat(prefixCls)
});
return [genProStyle(proToken)];
});
}

View File

@@ -0,0 +1,15 @@
import type { LabelTooltipType } from 'antd/lib/form/FormItemLabel';
import React from 'react';
/**
* 在 form 的 label 后面增加一个 tips 来展示一些说明文案
*
* @param props
*/
export declare const LabelIconTip: React.FC<{
label: React.ReactNode;
subTitle?: React.ReactNode;
tooltip?: string | LabelTooltipType;
ellipsis?: boolean | {
showTitle?: boolean;
};
}>;

View File

@@ -0,0 +1,66 @@
"use strict";
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.LabelIconTip = void 0;
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _icons = require("@ant-design/icons");
var _antd = require("antd");
var _classnames = _interopRequireDefault(require("classnames"));
var _react = _interopRequireWildcard(require("react"));
var _style = require("./style");
var _jsxRuntime = require("react/jsx-runtime");
/**
* 在 form 的 label 后面增加一个 tips 来展示一些说明文案
*
* @param props
*/
var LabelIconTip = exports.LabelIconTip = /*#__PURE__*/_react.default.memo(function (props) {
var label = props.label,
tooltip = props.tooltip,
ellipsis = props.ellipsis,
subTitle = props.subTitle;
var _useContext = (0, _react.useContext)(_antd.ConfigProvider.ConfigContext),
getPrefixCls = _useContext.getPrefixCls;
var className = getPrefixCls('pro-core-label-tip');
var _useStyle = (0, _style.useStyle)(className),
wrapSSR = _useStyle.wrapSSR,
hashId = _useStyle.hashId;
if (!tooltip && !subTitle) {
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
children: label
});
}
var tooltipProps = typeof tooltip === 'string' || /*#__PURE__*/_react.default.isValidElement(tooltip) ? {
title: tooltip
} : tooltip;
var icon = (tooltipProps === null || tooltipProps === void 0 ? void 0 : tooltipProps.icon) || /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.InfoCircleOutlined, {});
return wrapSSR( /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
className: (0, _classnames.default)(className, hashId),
onMouseDown: function onMouseDown(e) {
return e.stopPropagation();
},
onMouseLeave: function onMouseLeave(e) {
return e.stopPropagation();
},
onMouseMove: function onMouseMove(e) {
return e.stopPropagation();
},
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
className: (0, _classnames.default)("".concat(className, "-title"), hashId, (0, _defineProperty2.default)({}, "".concat(className, "-title-ellipsis"), ellipsis)),
children: label
}), subTitle && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
className: "".concat(className, "-subtitle ").concat(hashId).trim(),
children: subTitle
}), tooltip && /*#__PURE__*/(0, _jsxRuntime.jsx)(_antd.Tooltip, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, tooltipProps), {}, {
children: /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
className: "".concat(className, "-icon ").concat(hashId).trim(),
children: icon
})
}))]
}));
});

View File

@@ -0,0 +1,9 @@
/// <reference types="react" />
import type { ProAliasToken } from '@ant-design/pro-provider';
export interface ProToken extends ProAliasToken {
componentCls: string;
}
export declare function useStyle(prefixCls: string): {
wrapSSR: (node: import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>) => import("react").JSX.Element;
hashId: string;
};

View File

@@ -0,0 +1,50 @@
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.useStyle = useStyle;
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _proProvider = require("@ant-design/pro-provider");
var genProStyle = function genProStyle(token) {
return (0, _defineProperty2.default)({}, token.componentCls, {
display: 'inline-flex',
alignItems: 'center',
maxWidth: '100%',
'&-icon': {
display: 'block',
marginInlineStart: '4px',
cursor: 'pointer',
'&:hover': {
color: token.colorPrimary
}
},
'&-title': {
display: 'inline-flex',
flex: '1'
},
'&-subtitle ': {
marginInlineStart: 8,
color: token.colorTextSecondary,
fontWeight: 'normal',
fontSize: token.fontSize,
whiteSpace: 'nowrap'
},
'&-title-ellipsis': {
overflow: 'hidden',
whiteSpace: 'nowrap',
textOverflow: 'ellipsis',
wordBreak: 'keep-all'
}
});
};
function useStyle(prefixCls) {
return (0, _proProvider.useStyle)('LabelIconTip', function (token) {
var proToken = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, token), {}, {
componentCls: ".".concat(prefixCls)
});
return [genProStyle(proToken)];
});
}

View File

@@ -0,0 +1,41 @@
import type { FormInstance } from 'antd';
import type { NamePath } from 'antd/lib/form/interface';
import React from 'react';
export type ProFormInstanceType<T> = {
/**
* 获取被 ProForm 格式化后的所有数据
* @param nameList boolean
* @returns T
*
* @example getFieldsFormatValue() ->返回所有数据
* @example getFieldsFormatValue(true) ->返回所有数据,即使没有被 form 托管的
*/
getFieldsFormatValue?: (nameList?: true, omitNil?: boolean) => T;
/**
* 获取被 ProForm 格式化后的单个数据
* @param nameList (string|number)[]
* @returns T
*
* @example {a:{b:value}} -> getFieldFormatValue(['a', 'b']) -> value
*/
getFieldFormatValue?: (nameList?: NamePath) => T;
/**
* 获取被 ProForm 格式化后的单个数据, 包含他的 name
* @param nameList (string|number)[]
* @returns T
*
* @example {a:{b:value}}->getFieldFormatValueObject(['a','b'])->{a:{b:value}}
*/
getFieldFormatValueObject?: (nameList?: NamePath) => T;
/**
*验字段后返回格式化之后的所有数据
* @param nameList (string|number)[]
* @returns T
*
* @example validateFieldsReturnFormatValue -> {a:{b:value}}
*/
validateFieldsReturnFormatValue?: (nameList?: NamePath[]) => Promise<T>;
};
export declare const ProFormContext: React.Context<ProFormInstanceType<any> & {
formRef?: React.MutableRefObject<FormInstance<any>> | undefined;
}>;

View File

@@ -0,0 +1,9 @@
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.ProFormContext = void 0;
var _react = _interopRequireDefault(require("react"));
var ProFormContext = exports.ProFormContext = /*#__PURE__*/_react.default.createContext({});