tntd 3.0.0-beta.13 → 3.0.0-beta.15
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/descriptions/descriptions.js +50 -71
- package/es/descriptions/descriptions.js.map +1 -1
- package/es/drawer/index.less +4 -11
- package/es/handle-icon/index.js +35 -17
- package/es/handle-icon/index.js.map +1 -1
- package/es/handle-icon/index.less +28 -15
- package/es/input/input.js +10 -6
- package/es/input/input.js.map +1 -1
- package/es/input/style/mixin.less +1 -1
- package/es/modal/style/confirm.less +0 -4
- package/es/query-form/Field/Composition/utils.js +7 -1
- package/es/query-form/Field/Composition/utils.js.map +1 -1
- package/es/select/select.js +5 -3
- package/es/select/select.js.map +1 -1
- package/es/select/select.less +0 -3
- package/es/select/style/index.less +4 -4
- package/es/tntd-select/index.js +6 -4
- package/es/tntd-select/index.js.map +1 -1
- package/es/tooltip/index.js +1 -0
- package/es/tooltip/index.js.map +1 -1
- package/es/tooltip/index.less +1 -2
- package/lib/descriptions/descriptions.d.ts.map +1 -1
- package/lib/descriptions/descriptions.js +46 -64
- package/lib/descriptions/descriptions.js.map +1 -1
- package/lib/drawer/index.less +4 -11
- package/lib/handle-icon/index.d.ts.map +1 -1
- package/lib/handle-icon/index.js +29 -10
- package/lib/handle-icon/index.js.map +1 -1
- package/lib/handle-icon/index.less +28 -15
- package/lib/input/input.js +8 -4
- package/lib/input/input.js.map +1 -1
- package/lib/input/style/mixin.less +1 -1
- package/lib/modal/style/confirm.less +0 -4
- package/lib/query-form/Field/Composition/utils.d.ts.map +1 -1
- package/lib/query-form/Field/Composition/utils.js +7 -1
- package/lib/query-form/Field/Composition/utils.js.map +1 -1
- package/lib/select/select.d.ts.map +1 -1
- package/lib/select/select.js +4 -2
- package/lib/select/select.js.map +1 -1
- package/lib/select/select.less +0 -3
- package/lib/select/style/index.less +4 -4
- package/lib/tntd-select/index.d.ts.map +1 -1
- package/lib/tntd-select/index.js +5 -3
- package/lib/tntd-select/index.js.map +1 -1
- package/lib/tooltip/index.d.ts +1 -0
- package/lib/tooltip/index.d.ts.map +1 -1
- package/lib/tooltip/index.js +1 -0
- package/lib/tooltip/index.js.map +1 -1
- package/lib/tooltip/index.less +1 -2
- package/package.json +1 -1
- package/themes/default/variables.less +1 -1
- package/themes/default/variablesVar.less +1 -1
|
@@ -16,6 +16,7 @@ var __rest = this && this.__rest || function (s, e) {
|
|
|
16
16
|
*/
|
|
17
17
|
import React, { forwardRef } from 'react';
|
|
18
18
|
import classNames from 'classnames';
|
|
19
|
+
import toArray from 'rc-util/es/Children/toArray';
|
|
19
20
|
import { ConfigConsumer } from 'antd/es/config-provider';
|
|
20
21
|
import { default as AntdDescriptions } from 'antd/es/descriptions';
|
|
21
22
|
import Ellipsis from '../ellipsis';
|
|
@@ -49,78 +50,19 @@ export const Descriptions = forwardRef((_a, ref) => {
|
|
|
49
50
|
// 非垂直 且 同盾
|
|
50
51
|
const tdDescriptions = layout !== 'vertical' && tdType;
|
|
51
52
|
const tntPrefixCls = 'tnt-descriptions';
|
|
52
|
-
const
|
|
53
|
-
if (
|
|
54
|
-
|
|
55
|
-
type,
|
|
56
|
-
props
|
|
57
|
-
} = element;
|
|
58
|
-
if ((type === null || type === void 0 ? void 0 : type.name) === 'DescriptionsItem') {
|
|
59
|
-
const {
|
|
60
|
-
label,
|
|
61
|
-
labelPrefix,
|
|
62
|
-
children: childContext
|
|
63
|
-
} = props || {};
|
|
64
|
-
return React.createElement("div", null, React.createElement(Ellipsis, {
|
|
65
|
-
lines: ellipsisLine,
|
|
66
|
-
className: "tnt-descriptions-item",
|
|
67
|
-
prefix: React.createElement("div", {
|
|
68
|
-
className: "tnt-descriptions-label-title"
|
|
69
|
-
}, React.createElement(Ellipsis, {
|
|
70
|
-
prefix: labelPrefix ? React.createElement("span", {
|
|
71
|
-
className: "tnt-descriptions-label-tag"
|
|
72
|
-
}, labelPrefix) : null,
|
|
73
|
-
lines: ellipsisLine,
|
|
74
|
-
title: label
|
|
75
|
-
})),
|
|
76
|
-
title: childContext
|
|
77
|
-
}));
|
|
78
|
-
}
|
|
79
|
-
if (props && props.children) {
|
|
80
|
-
const modifiedChildren = React.Children.map(props.children, child => {
|
|
81
|
-
return decorateNoBorderChild(child);
|
|
82
|
-
});
|
|
83
|
-
return React.cloneElement(element, props, modifiedChildren);
|
|
84
|
-
}
|
|
53
|
+
const flattenChildren = children => {
|
|
54
|
+
if (!children) {
|
|
55
|
+
return [];
|
|
85
56
|
}
|
|
86
|
-
return
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
if (React.isValidElement(element)) {
|
|
90
|
-
const {
|
|
91
|
-
type,
|
|
92
|
-
props
|
|
93
|
-
} = element;
|
|
94
|
-
if (type.name === 'DescriptionsItem') {
|
|
95
|
-
const childProps = props || {};
|
|
96
|
-
const {
|
|
97
|
-
label,
|
|
98
|
-
labelPrefix,
|
|
99
|
-
children: childContext
|
|
100
|
-
} = childProps;
|
|
101
|
-
return React.cloneElement(element, Object.assign(Object.assign({}, props), {
|
|
102
|
-
label: React.createElement(Ellipsis, {
|
|
103
|
-
prefix: labelPrefix ? React.createElement("span", {
|
|
104
|
-
className: "tnt-descriptions-label-tag"
|
|
105
|
-
}, labelPrefix) : null,
|
|
106
|
-
lines: ellipsisLine,
|
|
107
|
-
title: label
|
|
108
|
-
}),
|
|
109
|
-
children: React.createElement(Ellipsis, {
|
|
110
|
-
lines: ellipsisLine,
|
|
111
|
-
title: childContext
|
|
112
|
-
})
|
|
113
|
-
}));
|
|
114
|
-
}
|
|
115
|
-
if (props && props.children) {
|
|
116
|
-
const modifiedChildren = React.Children.map(props.children, child => {
|
|
117
|
-
return decorateBorderChild(child);
|
|
118
|
-
});
|
|
119
|
-
return React.cloneElement(element, props, modifiedChildren);
|
|
57
|
+
return toArray(children).reduce(function (flatChildren, child) {
|
|
58
|
+
if (child && child.type === React.Fragment) {
|
|
59
|
+
return flatChildren.concat(flattenChildren(child.props.children));
|
|
120
60
|
}
|
|
121
|
-
|
|
122
|
-
|
|
61
|
+
flatChildren.push(child);
|
|
62
|
+
return flatChildren;
|
|
63
|
+
}, []);
|
|
123
64
|
};
|
|
65
|
+
children = flattenChildren(children);
|
|
124
66
|
return React.createElement(AntdDescriptions, Object.assign({
|
|
125
67
|
className: classNames(`${prefixCls}-${getLanguage()}`, {
|
|
126
68
|
[tntPrefixCls]: tdDescriptions
|
|
@@ -135,11 +77,48 @@ export const Descriptions = forwardRef((_a, ref) => {
|
|
|
135
77
|
ref: ref
|
|
136
78
|
}), tdDescriptions && !bordered && !hideTooltip && React.Children.map(children, child => {
|
|
137
79
|
if (React.isValidElement(child)) {
|
|
138
|
-
|
|
80
|
+
const childProps = child.props || {};
|
|
81
|
+
const {
|
|
82
|
+
label,
|
|
83
|
+
labelPrefix,
|
|
84
|
+
children: childContext
|
|
85
|
+
} = childProps;
|
|
86
|
+
return React.createElement("div", null, React.createElement(Ellipsis, {
|
|
87
|
+
lines: ellipsisLine,
|
|
88
|
+
className: "tnt-descriptions-item",
|
|
89
|
+
prefix: React.createElement("div", {
|
|
90
|
+
className: "tnt-descriptions-label-title"
|
|
91
|
+
}, React.createElement(Ellipsis, {
|
|
92
|
+
prefix: labelPrefix ? React.createElement("span", {
|
|
93
|
+
className: "tnt-descriptions-label-tag"
|
|
94
|
+
}, labelPrefix) : null,
|
|
95
|
+
lines: ellipsisLine,
|
|
96
|
+
title: label
|
|
97
|
+
})),
|
|
98
|
+
title: childContext
|
|
99
|
+
}));
|
|
139
100
|
}
|
|
140
101
|
}), tdDescriptions && bordered && ellipsis && !hideTooltip && React.Children.map(children, child => {
|
|
141
102
|
if (React.isValidElement(child)) {
|
|
142
|
-
|
|
103
|
+
const childProps = child.props || {};
|
|
104
|
+
const {
|
|
105
|
+
label,
|
|
106
|
+
labelPrefix,
|
|
107
|
+
children: childContext
|
|
108
|
+
} = childProps;
|
|
109
|
+
return React.cloneElement(child, Object.assign(Object.assign({}, child.props), {
|
|
110
|
+
label: React.createElement(Ellipsis, {
|
|
111
|
+
prefix: labelPrefix ? React.createElement("span", {
|
|
112
|
+
className: "tnt-descriptions-label-tag"
|
|
113
|
+
}, labelPrefix) : null,
|
|
114
|
+
lines: ellipsisLine,
|
|
115
|
+
title: label
|
|
116
|
+
}),
|
|
117
|
+
children: React.createElement(Ellipsis, {
|
|
118
|
+
lines: ellipsisLine,
|
|
119
|
+
title: childContext
|
|
120
|
+
})
|
|
121
|
+
}));
|
|
143
122
|
}
|
|
144
123
|
}), (!tdDescriptions || bordered && !ellipsis || hideTooltip) && children);
|
|
145
124
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"descriptions.js","sourceRoot":"","sources":["../../src/descriptions/descriptions.tsx"],"names":[],"mappings":"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","sourcesContent":["/*\n * @Author: 周泽飞 zefei.zhou@tongdun.net\n * @Date: 2024-06-08 11:59:04\n * @LastEditors: 周泽飞 zefei.zhou@tongdun.net\n * @LastEditTime: 2024-06-08 13:39:25\n * @FilePath: /tntd/packages/tntd/src/descriptions/descriptions.tsx\n * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE\n */\nimport React, { forwardRef } from 'react'\nimport type { DescriptionsProps as AntdDescriptionsProps } from 'antd/es/descriptions'\nimport type { DescriptionsItemProps as AntdDescriptionsItemProps } from 'antd/es/descriptions'\nimport classNames from 'classnames'\nimport { ConfigConsumer } from 'antd/es/config-provider'\nimport { default as AntdDescriptions } from 'antd/es/descriptions'\n\nimport Ellipsis from '../ellipsis'\nimport { doUpperTitle } from '../utils'\nimport { getLanguage } from '../prev-locale'\n\nexport * from 'antd/es/descriptions'\n\nexport interface DescriptionsProps extends AntdDescriptionsProps {\n tdType?: boolean\n ellipsis?: boolean\n ellipsisLine?: number\n hideTooltip?: boolean\n undoUpper?: boolean\n upperCaseIgnore?: Array<string>\n titleType?: string\n titleWeight?: boolean\n}\n\nexport interface DescriptionsItemProps extends AntdDescriptionsItemProps {\n labelPrefix?: React.ReactNode\n}\n\ndeclare const DescriptionsItem: React.FC<DescriptionsItemProps>\ninterface DescriptionsComponent\n extends React.ForwardRefExoticComponent<\n DescriptionsProps & React.RefAttributes<AntdDescriptions>\n > {\n Item: typeof DescriptionsItem\n}\n\nexport const Descriptions = forwardRef<\n AntdDescriptions,\n DescriptionsProps & { capitalize?: boolean }\n>(\n (\n {\n className,\n tdType = true,\n titleWeight,\n titleType,\n colon,\n children,\n undoUpper = false,\n upperCaseIgnore = [],\n title,\n ...rest\n },\n ref\n ) => {\n return (\n <ConfigConsumer>\n {({ getPrefixCls }) => {\n const prefixCls = getPrefixCls('descriptions')\n const { layout, ellipsis, ellipsisLine = 1, hideTooltip = false, bordered } = rest || {}\n // 非垂直 且 同盾\n const tdDescriptions = layout !== 'vertical' && tdType\n\n const tntPrefixCls = 'tnt-descriptions'\n\n const decorateNoBorderChild = (element: React.ReactElement): React.ReactElement => {\n if (React.isValidElement(element)) {\n const { type, props } = element as React.ReactElement | any\n if (type?.name === 'DescriptionsItem') {\n const { label, labelPrefix, children: childContext } = props || {}\n return (\n <div>\n <Ellipsis\n lines={ellipsisLine}\n className=\"tnt-descriptions-item\"\n prefix={\n <div className=\"tnt-descriptions-label-title\">\n <Ellipsis\n prefix={\n labelPrefix ? (\n <span className=\"tnt-descriptions-label-tag\">{labelPrefix}</span>\n ) : null\n }\n lines={ellipsisLine}\n title={label}\n />\n </div>\n }\n title={childContext}\n />\n </div>\n )\n }\n if (props && props.children) {\n const modifiedChildren = React.Children.map(props.children, (child) => {\n return decorateNoBorderChild(child)\n })\n return React.cloneElement(element, props, modifiedChildren)\n }\n }\n return element\n }\n\n const decorateBorderChild = (element: React.ReactElement): React.ReactElement => {\n if (React.isValidElement(element)) {\n const { type, props } = element as React.ReactElement | any\n if (type.name === 'DescriptionsItem') {\n const childProps = (props || {}) as any\n const { label, labelPrefix, children: childContext } = childProps\n return React.cloneElement(element, {\n ...props,\n label: (\n <Ellipsis\n prefix={\n labelPrefix ? (\n <span className=\"tnt-descriptions-label-tag\">{labelPrefix}</span>\n ) : null\n }\n lines={ellipsisLine}\n title={label}\n />\n ),\n children: <Ellipsis lines={ellipsisLine} title={childContext} />,\n })\n }\n if (props && props.children) {\n const modifiedChildren = React.Children.map(props.children, (child) => {\n return decorateBorderChild(child)\n })\n return React.cloneElement(element, props, modifiedChildren)\n }\n }\n return element\n }\n\n return (\n <AntdDescriptions\n className={classNames(\n `${prefixCls}-${getLanguage()}`,\n {\n [tntPrefixCls]: tdDescriptions,\n },\n `${tntPrefixCls}-title-theme${titleType ? '-' + titleType : ''}`,\n {\n [tntPrefixCls + '-title-weight']: titleWeight,\n },\n {\n [tntPrefixCls + '-ellipsis']: ellipsis,\n },\n className\n )}\n title={undoUpper ? title : doUpperTitle(title, upperCaseIgnore)} // 默认转大写\n {...rest}\n colon={tdDescriptions ? false : colon}\n ref={ref}\n >\n {/*同盾描述框 非边框 开启默认tooltip */}\n {tdDescriptions &&\n !bordered &&\n !hideTooltip &&\n React.Children.map(children, (child) => {\n if (React.isValidElement(child)) {\n return decorateNoBorderChild(child)\n }\n })}\n\n {/*同盾描述框 有边框 不换行 开启默认tooltip */}\n {tdDescriptions &&\n bordered &&\n ellipsis &&\n !hideTooltip &&\n React.Children.map(children, (child) => {\n if (React.isValidElement(child)) {\n return decorateBorderChild(child)\n }\n })}\n\n {/* 非同盾模式下 或者 带边框但换行 或者 不开启默认tooltip 走默认逻辑 */}\n {(!tdDescriptions || (bordered && !ellipsis) || hideTooltip) && children}\n </AntdDescriptions>\n )\n }}\n </ConfigConsumer>\n )\n }\n) as DescriptionsComponent\n\nDescriptions.Item = AntdDescriptions.Item\n"]}
|
|
1
|
+
{"version":3,"file":"descriptions.js","sourceRoot":"","sources":["../../src/descriptions/descriptions.tsx"],"names":[],"mappings":"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","sourcesContent":["/*\n * @Author: 周泽飞 zefei.zhou@tongdun.net\n * @Date: 2024-06-08 11:59:04\n * @LastEditors: 周泽飞 zefei.zhou@tongdun.net\n * @LastEditTime: 2024-06-08 13:39:25\n * @FilePath: /tntd/packages/tntd/src/descriptions/descriptions.tsx\n * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE\n */\nimport React, { forwardRef } from 'react'\nimport type { DescriptionsProps as AntdDescriptionsProps } from 'antd/es/descriptions'\nimport type { DescriptionsItemProps as AntdDescriptionsItemProps } from 'antd/es/descriptions'\nimport classNames from 'classnames'\nimport toArray from 'rc-util/es/Children/toArray'\nimport { ConfigConsumer } from 'antd/es/config-provider'\nimport { default as AntdDescriptions } from 'antd/es/descriptions'\n\nimport Ellipsis from '../ellipsis'\nimport { doUpperTitle } from '../utils'\nimport { getLanguage } from '../prev-locale'\n\nexport * from 'antd/es/descriptions'\n\nexport interface DescriptionsProps extends AntdDescriptionsProps {\n tdType?: boolean\n ellipsis?: boolean\n ellipsisLine?: number\n hideTooltip?: boolean\n undoUpper?: boolean\n upperCaseIgnore?: Array<string>\n titleType?: string\n titleWeight?: boolean\n}\n\nexport interface DescriptionsItemProps extends AntdDescriptionsItemProps {\n labelPrefix?: React.ReactNode\n}\n\ndeclare const DescriptionsItem: React.FC<DescriptionsItemProps>\ninterface DescriptionsComponent\n extends React.ForwardRefExoticComponent<\n DescriptionsProps & React.RefAttributes<AntdDescriptions>\n > {\n Item: typeof DescriptionsItem\n}\n\nexport const Descriptions = forwardRef<\n AntdDescriptions,\n DescriptionsProps & { capitalize?: boolean }\n>(\n (\n {\n className,\n tdType = true,\n titleWeight,\n titleType,\n colon,\n children,\n undoUpper = false,\n upperCaseIgnore = [],\n title,\n ...rest\n },\n ref\n ) => {\n return (\n <ConfigConsumer>\n {({ getPrefixCls }) => {\n const prefixCls = getPrefixCls('descriptions')\n const { layout, ellipsis, ellipsisLine = 1, hideTooltip = false, bordered } = rest || {}\n // 非垂直 且 同盾\n const tdDescriptions = layout !== 'vertical' && tdType\n\n const tntPrefixCls = 'tnt-descriptions'\n\n const flattenChildren = (children: React.ReactNode): React.ReactNode[] => {\n if (!children) {\n return []\n }\n return toArray(children).reduce(function (\n flatChildren: React.ReactNode[],\n child: React.ReactNode\n ) {\n if (child && (child as any).type === React.Fragment) {\n return flatChildren.concat(flattenChildren((child as any).props.children))\n }\n\n flatChildren.push(child)\n return flatChildren\n },\n [])\n }\n\n children = flattenChildren(children)\n\n return (\n <AntdDescriptions\n className={classNames(\n `${prefixCls}-${getLanguage()}`,\n {\n [tntPrefixCls]: tdDescriptions,\n },\n `${tntPrefixCls}-title-theme${titleType ? '-' + titleType : ''}`,\n {\n [tntPrefixCls + '-title-weight']: titleWeight,\n },\n {\n [tntPrefixCls + '-ellipsis']: ellipsis,\n },\n className\n )}\n title={undoUpper ? title : doUpperTitle(title, upperCaseIgnore)} // 默认转大写\n {...rest}\n colon={tdDescriptions ? false : colon}\n ref={ref}\n >\n {/*同盾描述框 非边框 开启默认tooltip */}\n {tdDescriptions &&\n !bordered &&\n !hideTooltip &&\n React.Children.map(children, (child) => {\n if (React.isValidElement(child)) {\n const childProps = (child.props || {}) as any\n const { label, labelPrefix, children: childContext } = childProps\n return (\n <div>\n <Ellipsis\n lines={ellipsisLine}\n className=\"tnt-descriptions-item\"\n prefix={\n <div className=\"tnt-descriptions-label-title\">\n <Ellipsis\n prefix={\n labelPrefix ? (\n <span className=\"tnt-descriptions-label-tag\">\n {labelPrefix}\n </span>\n ) : null\n }\n lines={ellipsisLine}\n title={label}\n />\n </div>\n }\n title={childContext}\n />\n </div>\n )\n }\n })}\n\n {/*同盾描述框 有边框 不换行 开启默认tooltip */}\n {tdDescriptions &&\n bordered &&\n ellipsis &&\n !hideTooltip &&\n React.Children.map(children, (child) => {\n if (React.isValidElement(child)) {\n const childProps = (child.props || {}) as any\n const { label, labelPrefix, children: childContext } = childProps\n return React.cloneElement(child, {\n ...child.props,\n label: (\n <Ellipsis\n prefix={\n labelPrefix ? (\n <span className=\"tnt-descriptions-label-tag\">{labelPrefix}</span>\n ) : null\n }\n lines={ellipsisLine}\n title={label}\n />\n ),\n children: <Ellipsis lines={ellipsisLine} title={childContext} />,\n })\n }\n })}\n {/* 非同盾模式下 或者 带边框但换行 或者 不开启默认tooltip 走默认逻辑 */}\n {(!tdDescriptions || (bordered && !ellipsis) || hideTooltip) && children}\n </AntdDescriptions>\n )\n }}\n </ConfigConsumer>\n )\n }\n) as DescriptionsComponent\n\nDescriptions.Item = AntdDescriptions.Item\n"]}
|
package/es/drawer/index.less
CHANGED
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
|
|
21
21
|
.@{drawer-prefix-cls}-wrapper-body {
|
|
22
22
|
margin-top: 48px;
|
|
23
|
-
max-height: ~'calc(100vh -
|
|
23
|
+
max-height: ~'calc(100vh - 48px)';
|
|
24
24
|
}
|
|
25
25
|
|
|
26
26
|
&-footer {
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
}
|
|
35
35
|
|
|
36
36
|
.@{drawer-prefix-cls}-wrapper-body {
|
|
37
|
-
max-height: ~'calc(100vh -
|
|
37
|
+
max-height: ~'calc(100vh - 96px)' !important;
|
|
38
38
|
margin-top: 48px !important;
|
|
39
39
|
margin-bottom: 48px !important;
|
|
40
40
|
}
|
|
@@ -47,11 +47,6 @@
|
|
|
47
47
|
}
|
|
48
48
|
|
|
49
49
|
.@{drawer-prefix-cls}-close {
|
|
50
|
-
color: fade(@text-color, 50%);
|
|
51
|
-
width: 62px;
|
|
52
|
-
top: -4px;
|
|
53
|
-
|
|
54
|
-
|
|
55
50
|
position: absolute;
|
|
56
51
|
top: -2px;
|
|
57
52
|
right: 0;
|
|
@@ -133,11 +128,9 @@
|
|
|
133
128
|
}
|
|
134
129
|
|
|
135
130
|
.@{drawer-prefix-cls}-body {
|
|
136
|
-
padding:
|
|
137
|
-
|
|
131
|
+
padding: 24px !important;
|
|
138
132
|
}
|
|
139
133
|
|
|
140
|
-
|
|
141
134
|
.@{drawer-prefix-cls}-wrapper-body {
|
|
142
135
|
|
|
143
136
|
.@{drawer-prefix-cls}-footer-style {
|
|
@@ -149,7 +142,7 @@
|
|
|
149
142
|
background: #fff;
|
|
150
143
|
text-align: right;
|
|
151
144
|
.@{ant-prefix}-btn {
|
|
152
|
-
margin-left:
|
|
145
|
+
margin-left: 15px;
|
|
153
146
|
}
|
|
154
147
|
}
|
|
155
148
|
|
package/es/handle-icon/index.js
CHANGED
|
@@ -8,7 +8,9 @@ var __rest = this && this.__rest || function (s, e) {
|
|
|
8
8
|
};
|
|
9
9
|
import React from 'react';
|
|
10
10
|
import LocaleReceiver from 'antd/es/locale-provider/LocaleReceiver';
|
|
11
|
+
import toArray from "rc-util/es/Children/toArray";
|
|
11
12
|
import Icon from '../icon';
|
|
13
|
+
import PopConfirm from "../popconfirm";
|
|
12
14
|
import Divider from '../divider';
|
|
13
15
|
import Dropdown from '../dropdown';
|
|
14
16
|
import Tooltip from '../tooltip';
|
|
@@ -21,17 +23,32 @@ const HandleIcon = props => {
|
|
|
21
23
|
const _a = props || {},
|
|
22
24
|
{
|
|
23
25
|
children = [],
|
|
24
|
-
num =
|
|
26
|
+
num = 5,
|
|
25
27
|
divider = false,
|
|
26
|
-
stopPropagation = true
|
|
28
|
+
stopPropagation = true,
|
|
29
|
+
size = 'large'
|
|
27
30
|
} = _a,
|
|
28
|
-
rest = __rest(_a, ["children", "num", "divider", "stopPropagation"]);
|
|
31
|
+
rest = __rest(_a, ["children", "num", "divider", "stopPropagation", "size"]);
|
|
29
32
|
let newChildren = [];
|
|
30
33
|
if (Array.isArray(children)) {
|
|
31
34
|
newChildren = (children === null || children === void 0 ? void 0 : children.filter(item => !!item)) || [];
|
|
32
35
|
} else if (children) {
|
|
33
36
|
newChildren.push(children);
|
|
34
37
|
}
|
|
38
|
+
const flattenChildren = children => {
|
|
39
|
+
if (!children) {
|
|
40
|
+
return [];
|
|
41
|
+
}
|
|
42
|
+
return toArray(children).reduce(function (flatChildren, child) {
|
|
43
|
+
if (child && child.type === React.Fragment) {
|
|
44
|
+
return flatChildren.concat(flattenChildren(child.props.children));
|
|
45
|
+
}
|
|
46
|
+
flatChildren.push(child);
|
|
47
|
+
return flatChildren;
|
|
48
|
+
}, []);
|
|
49
|
+
};
|
|
50
|
+
// 解决需要Fragment包的场景
|
|
51
|
+
newChildren = flattenChildren(newChildren);
|
|
35
52
|
let [preChildPart, lastChildPart] = [newChildren, null];
|
|
36
53
|
// 只有1个时不适配
|
|
37
54
|
if (newChildren.length - num === 1) {
|
|
@@ -52,7 +69,7 @@ const HandleIcon = props => {
|
|
|
52
69
|
type,
|
|
53
70
|
props
|
|
54
71
|
} = element;
|
|
55
|
-
if (type
|
|
72
|
+
if (type === PopConfirm) {
|
|
56
73
|
const placement = {
|
|
57
74
|
placement: 'left'
|
|
58
75
|
};
|
|
@@ -96,7 +113,7 @@ const HandleIcon = props => {
|
|
|
96
113
|
});
|
|
97
114
|
}
|
|
98
115
|
const menu = childArr => React.createElement(Menu, {
|
|
99
|
-
className:
|
|
116
|
+
className: `menu-handle-icon-more tnt-handle-icon-${size}`
|
|
100
117
|
}, childArr === null || childArr === void 0 ? void 0 : childArr.map((child, i) => React.createElement(Menu.Item, {
|
|
101
118
|
key: i
|
|
102
119
|
}, child)));
|
|
@@ -107,7 +124,7 @@ const HandleIcon = props => {
|
|
|
107
124
|
}
|
|
108
125
|
}
|
|
109
126
|
}, rest, {
|
|
110
|
-
className: `tnt-handle-icon-wrap ${(rest === null || rest === void 0 ? void 0 : rest.className) || ''}`
|
|
127
|
+
className: `tnt-handle-icon-wrap tnt-handle-icon-${size} ${(rest === null || rest === void 0 ? void 0 : rest.className) || ''}`
|
|
111
128
|
}), preChildPart, !!(lastChildPart === null || lastChildPart === void 0 ? void 0 : lastChildPart.length) && React.createElement(Dropdown, {
|
|
112
129
|
overlay: menu(lastChildPart || []),
|
|
113
130
|
arrow: true,
|
|
@@ -122,13 +139,14 @@ const HandleIcon = props => {
|
|
|
122
139
|
};
|
|
123
140
|
HandleIcon.Item = props => {
|
|
124
141
|
const {
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
142
|
+
children,
|
|
143
|
+
title,
|
|
144
|
+
desc,
|
|
145
|
+
tooltip = true,
|
|
146
|
+
inMore,
|
|
147
|
+
disabled
|
|
148
|
+
} = props,
|
|
149
|
+
rest = __rest(props, ["children", "title", "desc", "tooltip", "inMore", "disabled"]);
|
|
132
150
|
const replaceIconWithText = element => {
|
|
133
151
|
if (React.isValidElement(element)) {
|
|
134
152
|
const {
|
|
@@ -144,12 +162,12 @@ HandleIcon.Item = props => {
|
|
|
144
162
|
};
|
|
145
163
|
}
|
|
146
164
|
// 如果是更多需要替换文字
|
|
147
|
-
if (type
|
|
165
|
+
if (type === Icon || type === 'img') {
|
|
148
166
|
if (inMore) {
|
|
149
167
|
return React.createElement("a", Object.assign({}, eleProps, disabledProps), title);
|
|
150
168
|
}
|
|
151
169
|
}
|
|
152
|
-
if (disabled && type
|
|
170
|
+
if (disabled && (type === Icon || ['img', 'a'].includes(type))) {
|
|
153
171
|
return React.cloneElement(element, Object.assign(Object.assign({}, (element === null || element === void 0 ? void 0 : element.props) || {}), disabledProps || {}));
|
|
154
172
|
}
|
|
155
173
|
if (eleProps && eleProps.children) {
|
|
@@ -168,9 +186,9 @@ HandleIcon.Item = props => {
|
|
|
168
186
|
newChildren = replaceIconWithText(children);
|
|
169
187
|
}
|
|
170
188
|
if ((inMore && desc || !inMore) && tooltip) {
|
|
171
|
-
return React.createElement(Tooltip, {
|
|
189
|
+
return React.createElement(Tooltip, Object.assign({
|
|
172
190
|
title: desc || title
|
|
173
|
-
}, newChildren);
|
|
191
|
+
}, rest || {}), newChildren);
|
|
174
192
|
}
|
|
175
193
|
return newChildren;
|
|
176
194
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/handle-icon/index.js"],"names":[],"mappings":"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","sourcesContent":["import React from 'react'\nimport LocaleReceiver from 'antd/es/locale-provider/LocaleReceiver'\nimport Icon from '../icon'\nimport Divider from '../divider'\nimport Dropdown from '../dropdown'\nimport Tooltip from '../tooltip'\nimport Menu from '../menu'\nimport './index.less'\n\nconst HandleIcon = (props) => {\n return (\n <LocaleReceiver componentName=\"HandleIcon\">\n {() => {\n const {\n children = [],\n num = 6,\n divider = false,\n stopPropagation=true,\n ...rest\n } = props || {}\n\n \n let newChildren = []\n if (Array.isArray(children)) {\n newChildren = children?.filter((item) => !!item) || []\n } else if (children) {\n newChildren.push(children)\n }\n\n let [preChildPart, lastChildPart] = [newChildren, null];\n \n // 只有1个时不适配\n if (newChildren.length - num === 1) {\n preChildPart = newChildren\n } else if (newChildren && num && !isNaN(num) && newChildren.length > num) {\n preChildPart = newChildren.slice(0, num)\n lastChildPart = newChildren.slice(num)\n }\n \n if (divider && preChildPart) {\n preChildPart = preChildPart?.map((dom, i) => (\n <>\n {dom}\n {!(\n (i === preChildPart?.length - 1 && !lastChildPart?.length) // 没有更多 且 是最后一个时 不显示 Divider\n ) && <Divider type=\"vertical\" />}\n </>\n ))\n }\n\n const decoratePopconfirm = (element, parentElement) => {\n if (React.isValidElement(element)) {\n const { type, props } = element;\n if (type.name === 'Popconfirm' ) {\n const placement = { placement: 'left' }\n const {disabled} = parentElement?.props||{}\n let disableProps={};\n if(disabled){\n disableProps={\n disabled,\n onConfirm:()=>{}\n };\n }\n return React.cloneElement(element, {\n overlayStyle: { width: 180 },\n ...(props || {}),\n onClick: (e) => e.stopPropagation(),\n ...placement,\n trigger: 'hover',\n getPopupContainer: (trigger) => trigger.parentNode,\n ...disableProps||{}\n })\n }\n if (props && props.children) {\n const modifiedChildren = React.Children.map(props.children, (child) => {\n return decoratePopconfirm(child,element);\n });\n return React.cloneElement(element, props, modifiedChildren);\n }\n }\n return element;\n };\n \n\n // 对更多的popConfirm\n if(lastChildPart?.length){\n lastChildPart?.forEach((v, i) => {\n v = decoratePopconfirm(v);\n lastChildPart[i] = React.cloneElement(v, {\n ...(v?.props || {}),\n inMore:true,\n })\n }) \n }\n \n const menu = (childArr)=>(\n <Menu className=\"menu-handle-icon-more\">\n {\n childArr?.map(\n (child,i) => (\n <Menu.Item key={i}>\n {child}\n </Menu.Item>\n )\n )\n }\n </Menu>\n );\n\n return (\n <div\n onClick={(e) => {\n if(stopPropagation){\n e.stopPropagation()\n }\n }}\n {...rest}\n className={`tnt-handle-icon-wrap ${rest?.className||''}`}\n >\n {preChildPart}\n {!!lastChildPart?.length && (\n <Dropdown \n overlay={menu(lastChildPart || [])} \n arrow \n onClick={(e)=>{\n stopPropagation && e.stopPropagation()\n }}\n >\n <Icon type=\"more\" className='tnt-handle-icon-more'/>\n </Dropdown>\n )}\n </div>\n )\n }}\n </LocaleReceiver>\n )\n}\n\nHandleIcon.Item = (props) => {\n const {children, title, desc, tooltip=true, inMore, disabled} = props\n const replaceIconWithText = (element) => {\n if (React.isValidElement(element)) {\n const { type, props:eleProps } = element;\n let disabledProps = {}\n if(disabled){\n disabledProps = {\n disabled,\n onClick:()=>{},\n className:(eleProps?.className || \"\")+ (disabled?' disabled':\"\")\n }\n }\n // 如果是更多需要替换文字\n if (type.name === 'Icon' || type ==='img') {\n if(inMore){\n return (\n <a \n {...eleProps}\n {...disabledProps}\n \n >{title}</a>\n );\n }\n }\n\n if(disabled && type.name==='Icon' || ['img','a'].includes(type)){\n return React.cloneElement(element, {\n ...element?.props || {} ,\n ...disabledProps||{}\n })\n }\n\n if (eleProps && eleProps.children) {\n const modifiedChildren = React.Children.map(eleProps.children, (child) => {\n return replaceIconWithText(child);\n });\n return React.cloneElement(element, eleProps, modifiedChildren);\n }\n }\n return element;\n };\n\n let newChildren = children;\n if(Array.isArray(newChildren)){\n newChildren= children?.map(child=> replaceIconWithText(child))\n }else{\n newChildren= replaceIconWithText(children)\n }\n\n if(((inMore && desc) || !inMore) && tooltip){\n return (\n <Tooltip title={desc||title}>\n {newChildren}\n </Tooltip>\n )\n }\n\n return newChildren\n \n}\nexport default HandleIcon"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/handle-icon/index.js"],"names":[],"mappings":"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","sourcesContent":["import React from 'react'\nimport LocaleReceiver from 'antd/es/locale-provider/LocaleReceiver'\nimport toArray from \"rc-util/es/Children/toArray\";\nimport Icon from '../icon'\nimport PopConfirm from \"../popconfirm\"\nimport Divider from '../divider'\nimport Dropdown from '../dropdown'\nimport Tooltip from '../tooltip'\nimport Menu from '../menu'\nimport './index.less'\n\nconst HandleIcon = (props) => {\n return (\n <LocaleReceiver componentName=\"HandleIcon\">\n {() => {\n const {\n children = [],\n num = 5,\n divider = false,\n stopPropagation=true,\n size= 'large',\n ...rest\n } = props || {}\n\n \n let newChildren = []\n if (Array.isArray(children)) {\n newChildren = children?.filter((item) => !!item) || []\n } else if (children) {\n newChildren.push(children)\n }\n\n const flattenChildren = (children) => {\n if (!children) {\n return [];\n }\n return toArray(children).reduce(function (flatChildren, child) {\n if (child && child.type === React.Fragment) {\n return flatChildren.concat(flattenChildren(child.props.children));\n }\n \n flatChildren.push(child);\n return flatChildren;\n }, []);\n }\n\n // 解决需要Fragment包的场景\n newChildren = flattenChildren(newChildren);\n\n let [preChildPart, lastChildPart] = [newChildren, null];\n \n // 只有1个时不适配\n if (newChildren.length - num === 1) {\n preChildPart = newChildren\n } else if (newChildren && num && !isNaN(num) && newChildren.length > num) {\n preChildPart = newChildren.slice(0, num)\n lastChildPart = newChildren.slice(num)\n }\n \n if (divider && preChildPart) {\n preChildPart = preChildPart?.map((dom, i) => (\n <>\n {dom}\n {!(\n (i === preChildPart?.length - 1 && !lastChildPart?.length) // 没有更多 且 是最后一个时 不显示 Divider\n ) && <Divider type=\"vertical\" />}\n </>\n ))\n }\n\n const decoratePopconfirm = (element, parentElement) => {\n if (React.isValidElement(element)) {\n const { type, props } = element;\n if (type === PopConfirm ) {\n const placement = { placement: 'left' }\n const {disabled} = parentElement?.props||{}\n let disableProps={};\n if(disabled){\n disableProps={\n disabled,\n onConfirm:()=>{}\n };\n }\n return React.cloneElement(element, {\n overlayStyle: { width: 180 },\n ...(props || {}),\n onClick: (e) => e.stopPropagation(),\n ...placement,\n trigger: 'hover',\n getPopupContainer: (trigger) => trigger.parentNode,\n ...disableProps||{}\n })\n }\n if (props && props.children) {\n const modifiedChildren = React.Children.map(props.children, (child) => {\n return decoratePopconfirm(child,element);\n });\n return React.cloneElement(element, props, modifiedChildren);\n }\n }\n return element;\n };\n \n\n // 对更多的popConfirm\n if(lastChildPart?.length){\n lastChildPart?.forEach((v, i) => {\n v = decoratePopconfirm(v);\n lastChildPart[i] = React.cloneElement(v, {\n ...(v?.props || {}),\n inMore:true,\n })\n }) \n }\n \n const menu = (childArr)=>(\n <Menu className={`menu-handle-icon-more tnt-handle-icon-${size}`}>\n {\n childArr?.map(\n (child,i) => (\n <Menu.Item key={i}>\n {child}\n </Menu.Item>\n )\n )\n }\n </Menu>\n );\n\n return (\n <div\n onClick={(e) => {\n if(stopPropagation){\n e.stopPropagation()\n }\n }}\n {...rest}\n className={`tnt-handle-icon-wrap tnt-handle-icon-${size} ${rest?.className||''}`}\n >\n {preChildPart}\n {!!lastChildPart?.length && (\n <Dropdown \n overlay={menu(lastChildPart || [])} \n arrow \n onClick={(e)=>{\n stopPropagation && e.stopPropagation()\n }}\n >\n <Icon type=\"more\" className='tnt-handle-icon-more'/>\n </Dropdown>\n )}\n </div>\n )\n }}\n </LocaleReceiver>\n )\n}\n\nHandleIcon.Item = (props) => {\n const {children, title, desc, tooltip=true, inMore, disabled,...rest} = props\n const replaceIconWithText = (element) => {\n if (React.isValidElement(element)) {\n const { type, props:eleProps } = element;\n let disabledProps = {}\n if(disabled){\n disabledProps = {\n disabled,\n onClick:()=>{},\n className:(eleProps?.className || \"\")+ (disabled?' disabled':\"\")\n }\n }\n // 如果是更多需要替换文字\n if (type === Icon || type ==='img') {\n if(inMore){\n return (\n <a \n {...eleProps}\n {...disabledProps}\n \n >{title}</a>\n );\n }\n }\n\n if(disabled && (type===Icon || ['img','a'].includes(type))){\n return React.cloneElement(element, {\n ...element?.props || {} ,\n ...disabledProps||{}\n })\n }\n\n if (eleProps && eleProps.children) {\n const modifiedChildren = React.Children.map(eleProps.children, (child) => {\n return replaceIconWithText(child);\n });\n return React.cloneElement(element, eleProps, modifiedChildren);\n }\n }\n return element;\n };\n\n let newChildren = children;\n if(Array.isArray(newChildren)){\n newChildren= children?.map(child=> replaceIconWithText(child))\n }else{\n newChildren= replaceIconWithText(children)\n }\n\n if(((inMore && desc) || !inMore) && tooltip){\n return (\n <Tooltip title={desc||title} {...(rest||{})}>\n {newChildren}\n </Tooltip>\n )\n }\n\n return newChildren\n \n}\nexport default HandleIcon"]}
|
|
@@ -1,35 +1,48 @@
|
|
|
1
|
+
@small-size: 16px;
|
|
2
|
+
@middle-size: 18px;
|
|
3
|
+
@large-size: 20px;
|
|
1
4
|
.tnt-handle-icon-wrap{
|
|
2
5
|
>*:not(:last-child){
|
|
3
6
|
margin-right: 8px;
|
|
4
7
|
}
|
|
5
|
-
>*.tntd-anticon{
|
|
6
|
-
font-size: 20px;
|
|
7
|
-
|
|
8
|
-
}
|
|
9
|
-
>*{
|
|
10
|
-
&.icon-disabled,&.disabled{
|
|
11
|
-
cursor: not-allowed;
|
|
12
|
-
pointer-events: auto;
|
|
13
|
-
color: @disabled-color;
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
.tnt-handle-icon-more{
|
|
18
|
-
font-size: 20px;
|
|
19
8
|
}
|
|
20
9
|
|
|
21
10
|
.menu-handle-icon-more{
|
|
22
11
|
min-width: 100px;
|
|
23
12
|
max-width: 300px;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
[class*=tnt-handle-icon]{
|
|
24
16
|
a{
|
|
25
17
|
display: block;
|
|
26
18
|
overflow: hidden;
|
|
27
19
|
white-space: nowrap;
|
|
28
20
|
text-overflow: ellipsis;
|
|
21
|
+
color:@text-color;
|
|
29
22
|
}
|
|
30
23
|
.icon-disabled,.disabled{
|
|
31
24
|
cursor: not-allowed;
|
|
32
25
|
pointer-events: auto;
|
|
33
26
|
color: @disabled-color;
|
|
34
27
|
}
|
|
35
|
-
|
|
28
|
+
|
|
29
|
+
}
|
|
30
|
+
.tnt-handle-icon-small{
|
|
31
|
+
.tntd-anticon{
|
|
32
|
+
font-size: @small-size;
|
|
33
|
+
}
|
|
34
|
+
font-size: @small-size;
|
|
35
|
+
}
|
|
36
|
+
.tnt-handle-icon-middle{
|
|
37
|
+
.tntd-anticon{
|
|
38
|
+
font-size: @middle-size;
|
|
39
|
+
}
|
|
40
|
+
font-size: @middle-size;
|
|
41
|
+
}
|
|
42
|
+
.tnt-handle-icon-large{
|
|
43
|
+
.tntd-anticon{
|
|
44
|
+
font-size: @large-size;
|
|
45
|
+
}
|
|
46
|
+
font-size: @large-size;
|
|
47
|
+
}
|
|
48
|
+
|
package/es/input/input.js
CHANGED
|
@@ -35,12 +35,14 @@ const Search = forwardRef((_a, ref) => {
|
|
|
35
35
|
var {
|
|
36
36
|
className,
|
|
37
37
|
borderStyle,
|
|
38
|
-
readonly
|
|
38
|
+
readonly,
|
|
39
|
+
placeholder,
|
|
40
|
+
capitalize
|
|
39
41
|
} = _a,
|
|
40
|
-
props = __rest(_a, ["className", "borderStyle", "readonly"]);
|
|
42
|
+
props = __rest(_a, ["className", "borderStyle", "readonly", "placeholder", "capitalize"]);
|
|
41
43
|
return readonly ? React.createElement(PreviewText.Input, Object.assign({}, props)) : React.createElement(ConfigConsumer, null, () => {
|
|
42
44
|
return React.createElement(AntdInput.Search, Object.assign({}, props, {
|
|
43
|
-
placeholder: capitalizeFirstLetter(
|
|
45
|
+
placeholder: capitalizeFirstLetter(placeholder, capitalize),
|
|
44
46
|
className: classNames(className, tntPrefixCls, {
|
|
45
47
|
[`${tntPrefixCls}-outline`]: borderStyle === 'outline',
|
|
46
48
|
[`${tntPrefixCls}-fill`]: borderStyle === 'fill'
|
|
@@ -90,12 +92,14 @@ const Password = forwardRef((_a, ref) => {
|
|
|
90
92
|
export const InternalInput = forwardRef((_a, ref) => {
|
|
91
93
|
var {
|
|
92
94
|
className,
|
|
93
|
-
borderStyle
|
|
95
|
+
borderStyle,
|
|
96
|
+
placeholder,
|
|
97
|
+
capitalize
|
|
94
98
|
} = _a,
|
|
95
|
-
props = __rest(_a, ["className", "borderStyle"]);
|
|
99
|
+
props = __rest(_a, ["className", "borderStyle", "placeholder", "capitalize"]);
|
|
96
100
|
return React.createElement(ConfigConsumer, null, () => {
|
|
97
101
|
return React.createElement(AntdInput, Object.assign({}, props, {
|
|
98
|
-
placeholder: capitalizeFirstLetter(
|
|
102
|
+
placeholder: capitalizeFirstLetter(placeholder, capitalize),
|
|
99
103
|
ref: ref,
|
|
100
104
|
className: classNames(className, tntPrefixCls, {
|
|
101
105
|
[`${tntPrefixCls}-outline`]: borderStyle === 'outline',
|
package/es/input/input.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"input.js","sourceRoot":"","sources":["../../src/input/input.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAYxD,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,eAAe,CAAA;AACpD,OAAO,UAAU,MAAM,YAAY,CAAA;AACnC,OAAO,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAA;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAA;AAChD,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AACzC,OAAO,WAAW,MAAM,iBAAiB,CAAA;AA+BzC,MAAM,YAAY,GAAG,WAAW,CAAA;AAEhC,MAAM,KAAK,GAAG,UAAU,CACtB,CAAC,EAAoC,EAAE,GAAG,EAAE,EAAE;QAA7C,EAAE,SAAS,EAAE,WAAW,OAAY,EAAP,KAAK,cAAlC,4BAAoC,CAAF;IAAY,OAAA,CAC7C,oBAAC,cAAc,QACZ,GAAG,EAAE;QACJ,OAAO,CACL,oBAAC,SAAS,CAAC,KAAK,oBACV,KAAK,IACT,SAAS,EAAE,UAAU,CAAC,SAAS,EAAE,YAAY,EAAE;gBAC7C,CAAC,GAAG,YAAY,UAAU,CAAC,EAAE,WAAW,KAAK,SAAS;gBACtD,CAAC,GAAG,YAAY,OAAO,CAAC,EAAE,WAAW,KAAK,MAAM;aACjD,CAAC;YACF,aAAa;YACb,GAAG,EAAE,GAAG,IACR,CACH,CAAA;IACH,CAAC,CACc,CAClB,CAAA;CAAA,CACF,CAAA;AAED,MAAM,MAAM,GAAG,UAAU,CACvB,CAAC,
|
|
1
|
+
{"version":3,"file":"input.js","sourceRoot":"","sources":["../../src/input/input.tsx"],"names":[],"mappings":"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","sourcesContent":["import { ConfigConsumer } from 'antd/es/config-provider'\nimport type {\n GroupProps as AntdGroupProps,\n InputProps as AntdInputProps,\n TextAreaProps as AntdTextAreaProps,\n PasswordProps as AntdPasswordProps,\n SearchProps as AntdSearchProps,\n} from 'antd/es/input'\nimport type { default as AntdPassword } from 'antd/es/input/Password'\nimport type { default as AntdTextArea } from 'antd/es/input/TextArea'\nimport type { default as AntdGroup } from 'antd/es/input/Group'\nimport type { default as AntdSearch } from 'antd/es/input/Search'\nimport { default as AntdInput } from 'antd/es/input'\nimport classNames from 'classnames'\nimport { connectReadonlyComponent } from '../connect'\nimport { capitalizeFirstLetter } from '../utils'\nimport React, { forwardRef } from 'react'\nimport PreviewText from '../preview-text'\n\nexport interface InputProps extends AntdInputProps {\n // 线框风格\n borderStyle?: 'outline' | 'fill'\n readonly?: boolean\n}\n\nexport interface GroupProps extends AntdGroupProps {\n // 线框风格\n borderStyle?: 'outline' | 'fill'\n}\n\nexport interface TextAreaProps extends AntdTextAreaProps {\n // 线框风格\n borderStyle?: 'outline' | 'fill'\n readonly?: boolean\n}\n\nexport interface PasswordProps extends AntdPasswordProps {\n // 线框风格\n borderStyle?: 'outline' | 'fill'\n readonly?: boolean\n}\n\nexport interface SearchProps extends AntdSearchProps {\n // 线框风格\n borderStyle?: 'outline' | 'fill'\n readonly?: boolean\n}\n\nconst tntPrefixCls = 'tnt-input'\n\nconst Group = forwardRef<typeof AntdGroup, GroupProps>(\n ({ className, borderStyle, ...props }, ref) => (\n <ConfigConsumer>\n {() => {\n return (\n <AntdInput.Group\n {...props}\n className={classNames(className, tntPrefixCls, {\n [`${tntPrefixCls}-outline`]: borderStyle === 'outline',\n [`${tntPrefixCls}-fill`]: borderStyle === 'fill',\n })}\n // @ts-ignore\n ref={ref}\n />\n )\n }}\n </ConfigConsumer>\n )\n)\n\nconst Search = forwardRef<AntdSearch, SearchProps & { capitalize?: boolean }>(\n ({ className, borderStyle, readonly, placeholder, capitalize, ...props }, ref) =>\n readonly ? (\n <PreviewText.Input {...props} />\n ) : (\n <ConfigConsumer>\n {() => {\n return (\n <AntdInput.Search\n {...props}\n placeholder={capitalizeFirstLetter(placeholder, capitalize)}\n className={classNames(className, tntPrefixCls, {\n [`${tntPrefixCls}-outline`]: borderStyle === 'outline',\n [`${tntPrefixCls}-fill`]: borderStyle === 'fill',\n })}\n ref={ref}\n />\n )\n }}\n </ConfigConsumer>\n )\n)\n\nconst TextArea = forwardRef<AntdTextArea, TextAreaProps & { capitalize?: boolean }>(\n ({ className, borderStyle, readonly, ...props }, ref) =>\n readonly ? (\n // @ts-ignore\n <PreviewText.Input {...props} />\n ) : (\n <ConfigConsumer>\n {() => {\n return (\n <AntdInput.TextArea\n {...props}\n placeholder={capitalizeFirstLetter(props?.placeholder, props?.capitalize)}\n className={classNames(className, tntPrefixCls, {\n [`${tntPrefixCls}-outline`]: borderStyle === 'outline',\n [`${tntPrefixCls}-fill`]: borderStyle === 'fill',\n })}\n ref={ref}\n />\n )\n }}\n </ConfigConsumer>\n )\n)\n\nconst Password = forwardRef<AntdPassword, PasswordProps & { capitalize?: boolean }>(\n ({ className, borderStyle, readonly, ...props }, ref) =>\n readonly ? (\n <PreviewText.Input {...props} />\n ) : (\n <ConfigConsumer>\n {() => {\n return (\n <AntdInput.Password\n {...props}\n placeholder={capitalizeFirstLetter(props?.placeholder, props?.capitalize)}\n ref={ref}\n className={classNames(className, tntPrefixCls, {\n [`${tntPrefixCls}-outline`]: borderStyle === 'outline',\n [`${tntPrefixCls}-fill`]: borderStyle === 'fill',\n })}\n />\n )\n }}\n </ConfigConsumer>\n )\n)\n\ninterface InputComponent\n extends React.ForwardRefExoticComponent<InputProps & React.RefAttributes<AntdInput>> {\n Group: typeof Group\n TextArea: typeof TextArea\n Password: typeof Password\n Search: typeof Search\n}\n\nexport const InternalInput = forwardRef<AntdInput, InputProps & { capitalize?: boolean }>(\n ({ className, borderStyle, placeholder, capitalize, ...props }, ref) => {\n return (\n <ConfigConsumer>\n {() => {\n return (\n <AntdInput\n {...props}\n placeholder={capitalizeFirstLetter(placeholder, capitalize)}\n ref={ref}\n className={classNames(className, tntPrefixCls, {\n [`${tntPrefixCls}-outline`]: borderStyle === 'outline',\n [`${tntPrefixCls}-fill`]: borderStyle === 'fill',\n })}\n />\n )\n }}\n </ConfigConsumer>\n )\n }\n) as InputComponent\n\nexport const Input = connectReadonlyComponent(InternalInput, PreviewText.Input) as InputComponent\n\nInput.displayName = 'Input'\n\nInput.Group = Group\nInput.TextArea = TextArea\nInput.Password = Password\nInput.Search = Search\n"]}
|
|
@@ -2,6 +2,7 @@ import _flatten from "lodash/flatten";
|
|
|
2
2
|
import _isString from "lodash/isString";
|
|
3
3
|
import _isArray from "lodash/isArray";
|
|
4
4
|
import React from 'react';
|
|
5
|
+
import moment from 'moment';
|
|
5
6
|
export function highlightSubstring(str, substring) {
|
|
6
7
|
const highlighted = `<span class="tnt-highlight">${substring}</span>`;
|
|
7
8
|
return str.replace(new RegExp(substring, 'g'), highlighted);
|
|
@@ -74,7 +75,8 @@ export function parseObjectToArray(value, data) {
|
|
|
74
75
|
} = dataItem || {};
|
|
75
76
|
const _propsTitle = propsTitle || title || name;
|
|
76
77
|
const {
|
|
77
|
-
options
|
|
78
|
+
options,
|
|
79
|
+
format
|
|
78
80
|
} = fieldProps || {};
|
|
79
81
|
const fieldNames = ((_a = dataItem === null || dataItem === void 0 ? void 0 : dataItem.props) === null || _a === void 0 ? void 0 : _a.fieldNames) || {
|
|
80
82
|
label: 'label',
|
|
@@ -109,6 +111,10 @@ export function parseObjectToArray(value, data) {
|
|
|
109
111
|
options,
|
|
110
112
|
fieldNames
|
|
111
113
|
});
|
|
114
|
+
} else if (type === 'dateRange' && format) {
|
|
115
|
+
labelValue = [moment(labelValue[0]).format(format), moment(labelValue[1]).format(format)].join('~');
|
|
116
|
+
} else if (type === 'date' && format) {
|
|
117
|
+
labelValue = moment(labelValue).format(format);
|
|
112
118
|
}
|
|
113
119
|
return {
|
|
114
120
|
key,
|