rsuite 5.46.1 → 5.47.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +11 -0
- package/CloseButton/styles/index.less +13 -7
- package/Message/styles/mixin.less +8 -0
- package/Notification/styles/index.less +8 -0
- package/Picker/styles/index.less +0 -9
- package/Tag/styles/index.less +2 -5
- package/Uploader/styles/index.less +1 -2
- package/cjs/Checkbox/Checkbox.d.ts +2 -0
- package/cjs/CloseButton/CloseButton.js +3 -5
- package/cjs/CustomProvider/CustomProvider.d.ts +3 -3
- package/cjs/InputPicker/InputPicker.d.ts +3 -22
- package/cjs/InputPicker/InputPicker.js +8 -8
- package/cjs/InputPicker/InputPickerContext.d.ts +26 -0
- package/cjs/InputPicker/InputPickerContext.js +13 -0
- package/cjs/Picker/DropdownMenu.d.ts +1 -0
- package/cjs/Picker/DropdownMenu.js +7 -3
- package/cjs/Picker/DropdownMenuCheckItem.d.ts +2 -0
- package/cjs/Picker/DropdownMenuCheckItem.js +18 -14
- package/cjs/Picker/PickerToggle.js +3 -1
- package/cjs/RadioTile/RadioTile.d.ts +5 -0
- package/cjs/RadioTile/RadioTile.js +5 -0
- package/cjs/Tag/Tag.js +7 -1
- package/cjs/TagInput/index.d.ts +3 -15
- package/cjs/TagInput/index.js +3 -2
- package/cjs/TagPicker/index.d.ts +12 -10
- package/cjs/TagPicker/index.js +12 -5
- package/cjs/Uploader/UploadFileItem.js +19 -5
- package/cjs/locales/ar_EG.d.ts +3 -0
- package/cjs/locales/ar_EG.js +5 -2
- package/cjs/locales/da_DK.d.ts +3 -0
- package/cjs/locales/da_DK.js +5 -2
- package/cjs/locales/de_DE.d.ts +3 -0
- package/cjs/locales/de_DE.js +5 -2
- package/cjs/locales/default.d.ts +3 -0
- package/cjs/locales/default.js +5 -2
- package/cjs/locales/en_US.d.ts +3 -0
- package/cjs/locales/en_US.js +5 -2
- package/cjs/locales/es_AR.d.ts +3 -0
- package/cjs/locales/es_AR.js +5 -2
- package/cjs/locales/es_ES.d.ts +3 -0
- package/cjs/locales/es_ES.js +5 -2
- package/cjs/locales/fa_IR.d.ts +3 -0
- package/cjs/locales/fa_IR.js +5 -2
- package/cjs/locales/fi_FI.d.ts +3 -0
- package/cjs/locales/fi_FI.js +5 -2
- package/cjs/locales/fr_FR.d.ts +3 -0
- package/cjs/locales/fr_FR.js +5 -2
- package/cjs/locales/hu_HU.d.ts +3 -0
- package/cjs/locales/hu_HU.js +5 -2
- package/cjs/locales/index.d.ts +1 -1
- package/cjs/locales/it_IT.d.ts +3 -0
- package/cjs/locales/it_IT.js +5 -2
- package/cjs/locales/ja_JP.d.ts +3 -0
- package/cjs/locales/ja_JP.js +5 -2
- package/cjs/locales/kk_KZ.d.ts +3 -0
- package/cjs/locales/kk_KZ.js +5 -2
- package/cjs/locales/ko_KR.d.ts +3 -0
- package/cjs/locales/ko_KR.js +5 -2
- package/cjs/locales/ne_NP.d.ts +3 -0
- package/cjs/locales/ne_NP.js +5 -2
- package/cjs/locales/nl_NL.d.ts +3 -0
- package/cjs/locales/nl_NL.js +5 -2
- package/cjs/locales/pt_BR.d.ts +3 -0
- package/cjs/locales/pt_BR.js +5 -2
- package/cjs/locales/ru_RU.d.ts +3 -0
- package/cjs/locales/ru_RU.js +6 -3
- package/cjs/locales/sv_SE.d.ts +3 -0
- package/cjs/locales/sv_SE.js +5 -2
- package/cjs/locales/tr_TR.d.ts +3 -0
- package/cjs/locales/tr_TR.js +5 -2
- package/cjs/locales/zh_CN.d.ts +3 -0
- package/cjs/locales/zh_CN.js +5 -2
- package/cjs/locales/zh_TW.d.ts +3 -0
- package/cjs/locales/zh_TW.js +5 -2
- package/dist/rsuite-no-reset-rtl.css +54 -25
- package/dist/rsuite-no-reset-rtl.min.css +1 -1
- package/dist/rsuite-no-reset-rtl.min.css.map +1 -1
- package/dist/rsuite-no-reset.css +54 -25
- package/dist/rsuite-no-reset.min.css +1 -1
- package/dist/rsuite-no-reset.min.css.map +1 -1
- package/dist/rsuite-rtl.css +54 -25
- package/dist/rsuite-rtl.min.css +1 -1
- package/dist/rsuite-rtl.min.css.map +1 -1
- package/dist/rsuite.css +54 -25
- package/dist/rsuite.js +23 -12
- package/dist/rsuite.js.map +1 -1
- package/dist/rsuite.min.css +1 -1
- package/dist/rsuite.min.css.map +1 -1
- package/dist/rsuite.min.js +1 -1
- package/dist/rsuite.min.js.map +1 -1
- package/esm/Checkbox/Checkbox.d.ts +2 -0
- package/esm/CloseButton/CloseButton.js +3 -5
- package/esm/CustomProvider/CustomProvider.d.ts +3 -3
- package/esm/InputPicker/InputPicker.d.ts +3 -22
- package/esm/InputPicker/InputPicker.js +6 -5
- package/esm/InputPicker/InputPickerContext.d.ts +26 -0
- package/esm/InputPicker/InputPickerContext.js +7 -0
- package/esm/Picker/DropdownMenu.d.ts +1 -0
- package/esm/Picker/DropdownMenu.js +7 -3
- package/esm/Picker/DropdownMenuCheckItem.d.ts +2 -0
- package/esm/Picker/DropdownMenuCheckItem.js +18 -14
- package/esm/Picker/PickerToggle.js +4 -2
- package/esm/RadioTile/RadioTile.d.ts +5 -0
- package/esm/RadioTile/RadioTile.js +5 -0
- package/esm/Tag/Tag.js +8 -2
- package/esm/TagInput/index.d.ts +3 -15
- package/esm/TagInput/index.js +2 -1
- package/esm/TagPicker/index.d.ts +12 -10
- package/esm/TagPicker/index.js +11 -4
- package/esm/Uploader/UploadFileItem.js +19 -5
- package/esm/locales/ar_EG.d.ts +3 -0
- package/esm/locales/ar_EG.js +5 -2
- package/esm/locales/da_DK.d.ts +3 -0
- package/esm/locales/da_DK.js +5 -2
- package/esm/locales/de_DE.d.ts +3 -0
- package/esm/locales/de_DE.js +5 -2
- package/esm/locales/default.d.ts +3 -0
- package/esm/locales/default.js +5 -2
- package/esm/locales/en_US.d.ts +3 -0
- package/esm/locales/en_US.js +5 -2
- package/esm/locales/es_AR.d.ts +3 -0
- package/esm/locales/es_AR.js +5 -2
- package/esm/locales/es_ES.d.ts +3 -0
- package/esm/locales/es_ES.js +5 -2
- package/esm/locales/fa_IR.d.ts +3 -0
- package/esm/locales/fa_IR.js +5 -2
- package/esm/locales/fi_FI.d.ts +3 -0
- package/esm/locales/fi_FI.js +5 -2
- package/esm/locales/fr_FR.d.ts +3 -0
- package/esm/locales/fr_FR.js +5 -2
- package/esm/locales/hu_HU.d.ts +3 -0
- package/esm/locales/hu_HU.js +5 -2
- package/esm/locales/index.d.ts +1 -1
- package/esm/locales/it_IT.d.ts +3 -0
- package/esm/locales/it_IT.js +5 -2
- package/esm/locales/ja_JP.d.ts +3 -0
- package/esm/locales/ja_JP.js +5 -2
- package/esm/locales/kk_KZ.d.ts +3 -0
- package/esm/locales/kk_KZ.js +5 -2
- package/esm/locales/ko_KR.d.ts +3 -0
- package/esm/locales/ko_KR.js +5 -2
- package/esm/locales/ne_NP.d.ts +3 -0
- package/esm/locales/ne_NP.js +5 -2
- package/esm/locales/nl_NL.d.ts +3 -0
- package/esm/locales/nl_NL.js +5 -2
- package/esm/locales/pt_BR.d.ts +3 -0
- package/esm/locales/pt_BR.js +5 -2
- package/esm/locales/ru_RU.d.ts +3 -0
- package/esm/locales/ru_RU.js +6 -3
- package/esm/locales/sv_SE.d.ts +3 -0
- package/esm/locales/sv_SE.js +5 -2
- package/esm/locales/tr_TR.d.ts +3 -0
- package/esm/locales/tr_TR.js +5 -2
- package/esm/locales/zh_CN.d.ts +3 -0
- package/esm/locales/zh_CN.js +5 -2
- package/esm/locales/zh_TW.d.ts +3 -0
- package/esm/locales/zh_TW.js +5 -2
- package/package.json +1 -1
- package/styles/color-modes/dark.less +3 -1
- package/styles/color-modes/high-contrast.less +3 -1
- package/styles/color-modes/light.less +3 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,14 @@
|
|
|
1
|
+
# [5.47.0](https://github.com/rsuite/rsuite/compare/v5.46.1...v5.47.0) (2023-12-08)
|
|
2
|
+
|
|
3
|
+
### Bug Fixes
|
|
4
|
+
|
|
5
|
+
- **CloseButton:** fix close label translation string ([#3483](https://github.com/rsuite/rsuite/issues/3483)) ([feedbde](https://github.com/rsuite/rsuite/commit/feedbde550d96d207d6be690b89c3d12247b87d9))
|
|
6
|
+
- **CloseButton:** improve CloseButton accessibility ([#3488](https://github.com/rsuite/rsuite/issues/3488)) ([92ed9a5](https://github.com/rsuite/rsuite/commit/92ed9a5080e241f7e4057cbbc6e971240fb464fe))
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
- **TagPicker:** add support for renderMenuItemCheckbox ([#3481](https://github.com/rsuite/rsuite/issues/3481)) ([6b044e9](https://github.com/rsuite/rsuite/commit/6b044e9621db421ea75dc549da27d63493a91261))
|
|
11
|
+
|
|
1
12
|
## [5.46.1](https://github.com/rsuite/rsuite/compare/v5.46.0...v5.46.1) (2023-12-01)
|
|
2
13
|
|
|
3
14
|
### Bug Fixes
|
|
@@ -2,18 +2,24 @@
|
|
|
2
2
|
|
|
3
3
|
// Close button
|
|
4
4
|
.rs-btn-close {
|
|
5
|
-
background: transparent;
|
|
6
|
-
position: absolute;
|
|
7
|
-
top: 0;
|
|
8
|
-
right: 0;
|
|
9
|
-
padding: @message-close-btn-padding;
|
|
10
|
-
font-size: @message-close-btn-size;
|
|
11
|
-
line-height: 1;
|
|
12
5
|
border: none;
|
|
13
6
|
outline: none !important;
|
|
7
|
+
background: transparent;
|
|
8
|
+
line-height: 1;
|
|
9
|
+
|
|
14
10
|
cursor: pointer;
|
|
15
11
|
|
|
16
12
|
.rs-icon {
|
|
17
13
|
vertical-align: bottom;
|
|
18
14
|
}
|
|
15
|
+
|
|
16
|
+
&:hover,
|
|
17
|
+
&:focus {
|
|
18
|
+
color: var(--rs-close-button-hover-color);
|
|
19
|
+
|
|
20
|
+
svg path {
|
|
21
|
+
stroke: var(--rs-close-button-hover-color);
|
|
22
|
+
stroke-width: 1;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
19
25
|
}
|
package/Picker/styles/index.less
CHANGED
|
@@ -245,15 +245,6 @@
|
|
|
245
245
|
padding: 4px 0;
|
|
246
246
|
}
|
|
247
247
|
|
|
248
|
-
&:hover {
|
|
249
|
-
color: var(--rs-state-error);
|
|
250
|
-
}
|
|
251
|
-
|
|
252
|
-
&:hover svg path {
|
|
253
|
-
stroke: var(--rs-state-error);
|
|
254
|
-
stroke-width: 1;
|
|
255
|
-
}
|
|
256
|
-
|
|
257
248
|
.rs-@{date-picker-prefix} &,
|
|
258
249
|
.rs-@{date-range-picker-prefix} & {
|
|
259
250
|
right: (@picker-toggle-clean-right + @picker-item-content-padding-vertical);
|
package/Tag/styles/index.less
CHANGED
|
@@ -36,6 +36,8 @@ export interface CheckboxProps<V = ValueType> extends WithAsProps {
|
|
|
36
36
|
onClick?: (event: React.SyntheticEvent) => void;
|
|
37
37
|
/** Called when the checkbox is clicked. */
|
|
38
38
|
onCheckboxClick?: (event: React.SyntheticEvent) => void;
|
|
39
|
+
/** Called when the user presses down a key. */
|
|
40
|
+
onKeyDown?: (event: React.KeyboardEvent) => void;
|
|
39
41
|
}
|
|
40
42
|
declare const Checkbox: RsRefForwardingComponent<'div', CheckboxProps>;
|
|
41
43
|
export default Checkbox;
|
|
@@ -14,7 +14,7 @@ var _utils = require("../utils");
|
|
|
14
14
|
*/
|
|
15
15
|
var CloseButton = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
16
16
|
var _props$as = props.as,
|
|
17
|
-
Component = _props$as === void 0 ? '
|
|
17
|
+
Component = _props$as === void 0 ? 'button' : _props$as,
|
|
18
18
|
_props$classPrefix = props.classPrefix,
|
|
19
19
|
classPrefix = _props$classPrefix === void 0 ? 'btn-close' : _props$classPrefix,
|
|
20
20
|
className = props.className,
|
|
@@ -27,13 +27,11 @@ var CloseButton = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
27
27
|
locale = _useCustom.locale;
|
|
28
28
|
var classes = merge(className, withClassPrefix());
|
|
29
29
|
return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({
|
|
30
|
-
|
|
31
|
-
}, rest, {
|
|
30
|
+
type: "button",
|
|
32
31
|
ref: ref,
|
|
33
32
|
className: classes,
|
|
34
|
-
title: locale === null || locale === void 0 ? void 0 : locale.closeLabel,
|
|
35
33
|
"aria-label": locale === null || locale === void 0 ? void 0 : locale.closeLabel
|
|
36
|
-
}), /*#__PURE__*/_react.default.createElement(_Close.default, null));
|
|
34
|
+
}, rest), /*#__PURE__*/_react.default.createElement(_Close.default, null));
|
|
37
35
|
});
|
|
38
36
|
CloseButton.displayName = 'CloseButton';
|
|
39
37
|
var _default = CloseButton;
|
|
@@ -55,6 +55,8 @@ declare const CustomContext: React.Context<CustomProviderProps<{
|
|
|
55
55
|
common?: {
|
|
56
56
|
loading: string;
|
|
57
57
|
emptyMessage: string;
|
|
58
|
+
remove: string;
|
|
59
|
+
clear: string;
|
|
58
60
|
} | undefined;
|
|
59
61
|
Plaintext?: {
|
|
60
62
|
unfilled: string;
|
|
@@ -134,9 +136,6 @@ declare const CustomContext: React.Context<CustomProviderProps<{
|
|
|
134
136
|
} | undefined;
|
|
135
137
|
InputPicker?: {
|
|
136
138
|
newItem: string;
|
|
137
|
-
/**
|
|
138
|
-
* A Map of toast containers
|
|
139
|
-
*/
|
|
140
139
|
createOption: string;
|
|
141
140
|
} | undefined;
|
|
142
141
|
Uploader?: {
|
|
@@ -146,6 +145,7 @@ declare const CustomContext: React.Context<CustomProviderProps<{
|
|
|
146
145
|
complete: string;
|
|
147
146
|
emptyFile: string;
|
|
148
147
|
upload: string;
|
|
148
|
+
removeFile: string;
|
|
149
149
|
} | undefined;
|
|
150
150
|
CloseButton?: {
|
|
151
151
|
closeLabel: string;
|
|
@@ -1,27 +1,8 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { InputPickerLocale } from '../locales';
|
|
3
2
|
import { PickerComponent, PickerToggleProps } from '../Picker';
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import { SelectProps } from '../SelectPicker';
|
|
7
|
-
export declare type TriggerType = 'Enter' | 'Space' | 'Comma';
|
|
8
|
-
export interface InputPickerContextProps {
|
|
9
|
-
/** Multiple selections are allowed */
|
|
10
|
-
multi?: boolean;
|
|
11
|
-
/** Tag related props. */
|
|
12
|
-
tagProps: TagProps;
|
|
13
|
-
/**
|
|
14
|
-
* Set the trigger for creating tags. only valid when creatable
|
|
15
|
-
*/
|
|
16
|
-
trigger: TriggerType | TriggerType[];
|
|
17
|
-
/**
|
|
18
|
-
* No overlay provides options
|
|
19
|
-
*/
|
|
20
|
-
disabledOptions?: boolean;
|
|
21
|
-
/** Callback fired when a tag is removed. */
|
|
22
|
-
onTagRemove?: (tag: string, event: React.MouseEvent) => void;
|
|
23
|
-
}
|
|
24
|
-
export declare const InputPickerContext: React.Context<InputPickerContextProps>;
|
|
3
|
+
import type { ItemDataType, FormControlPickerProps } from '../@types/common';
|
|
4
|
+
import type { InputPickerLocale } from '../locales';
|
|
5
|
+
import type { SelectProps } from '../SelectPicker';
|
|
25
6
|
interface InputItemDataType extends ItemDataType {
|
|
26
7
|
create?: boolean;
|
|
27
8
|
}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
5
5
|
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
|
|
6
6
|
exports.__esModule = true;
|
|
7
|
-
exports.default =
|
|
7
|
+
exports.default = void 0;
|
|
8
8
|
var _taggedTemplateLiteralLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteralLoose"));
|
|
9
9
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
10
10
|
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
|
|
@@ -28,12 +28,8 @@ var _Picker = require("../Picker");
|
|
|
28
28
|
var _Tag = _interopRequireDefault(require("../Tag"));
|
|
29
29
|
var _InputAutosize = _interopRequireDefault(require("./InputAutosize"));
|
|
30
30
|
var _InputSearch = _interopRequireDefault(require("./InputSearch"));
|
|
31
|
+
var _InputPickerContext = _interopRequireDefault(require("./InputPickerContext"));
|
|
31
32
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
|
|
32
|
-
var InputPickerContext = /*#__PURE__*/_react.default.createContext({
|
|
33
|
-
tagProps: {},
|
|
34
|
-
trigger: 'Enter'
|
|
35
|
-
});
|
|
36
|
-
exports.InputPickerContext = InputPickerContext;
|
|
37
33
|
var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
38
34
|
var _merge;
|
|
39
35
|
var _props$as = props.as,
|
|
@@ -104,12 +100,13 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
104
100
|
_props$placement = props.placement,
|
|
105
101
|
placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,
|
|
106
102
|
rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["as", "appearance", "cleanable", "cacheData", "classPrefix", "data", "disabled", "readOnly", "plaintext", "defaultValue", "defaultOpen", "disabledItemValues", "locale", "toggleAs", "style", "searchable", "open", "placeholder", "groupBy", "menuClassName", "menuStyle", "menuAutoWidth", "menuMaxHeight", "creatable", "shouldDisplayCreateOption", "value", "valueKey", "virtualized", "labelKey", "listProps", "id", "tabIndex", "sort", "renderMenu", "renderExtraFooter", "renderValue", "renderMenuItem", "renderMenuGroup", "onEnter", "onEntered", "onExit", "onExited", "onChange", "onClean", "onCreate", "onSearch", "onSelect", "onOpen", "onClose", "onBlur", "onFocus", "searchBy", "placement"]);
|
|
107
|
-
var _useContext = (0, _react.useContext)(
|
|
103
|
+
var _useContext = (0, _react.useContext)(_InputPickerContext.default),
|
|
108
104
|
multi = _useContext.multi,
|
|
109
105
|
tagProps = _useContext.tagProps,
|
|
110
106
|
trigger = _useContext.trigger,
|
|
111
107
|
disabledOptions = _useContext.disabledOptions,
|
|
112
|
-
onTagRemove = _useContext.onTagRemove
|
|
108
|
+
onTagRemove = _useContext.onTagRemove,
|
|
109
|
+
renderMenuItemCheckbox = _useContext.renderMenuItemCheckbox;
|
|
113
110
|
if (groupBy === valueKey || groupBy === labelKey) {
|
|
114
111
|
throw Error('`groupBy` can not be equal to `valueKey` and `labelKey`');
|
|
115
112
|
}
|
|
@@ -564,6 +561,9 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
564
561
|
classPrefix: menuClassPrefix,
|
|
565
562
|
dropdownMenuItemClassPrefix: multi ? undefined : menuClassPrefix + "-item",
|
|
566
563
|
dropdownMenuItemAs: multi ? _Picker.DropdownMenuCheckItem : _Picker.DropdownMenuItem,
|
|
564
|
+
dropdownMenuItemProps: {
|
|
565
|
+
renderMenuItemCheckbox: renderMenuItemCheckbox
|
|
566
|
+
},
|
|
567
567
|
activeItemValues: multi ? value : [value],
|
|
568
568
|
focusItemValue: focusItemValue,
|
|
569
569
|
maxHeight: menuMaxHeight,
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { TagProps } from '../Tag';
|
|
3
|
+
import type { CheckboxProps } from '../Checkbox';
|
|
4
|
+
export declare type TriggerType = 'Enter' | 'Space' | 'Comma';
|
|
5
|
+
export interface TagOnlyProps {
|
|
6
|
+
/** Tag related props. */
|
|
7
|
+
tagProps: TagProps;
|
|
8
|
+
/**
|
|
9
|
+
* Set the trigger for creating tags. only valid when creatable
|
|
10
|
+
*/
|
|
11
|
+
trigger: TriggerType | TriggerType[];
|
|
12
|
+
/** Callback fired when a tag is removed. */
|
|
13
|
+
onTagRemove?: (tag: string, event: React.MouseEvent) => void;
|
|
14
|
+
}
|
|
15
|
+
export interface InputPickerContextProps extends TagOnlyProps {
|
|
16
|
+
/** Multiple selections are allowed */
|
|
17
|
+
multi?: boolean;
|
|
18
|
+
/**
|
|
19
|
+
* No overlay provides options
|
|
20
|
+
*/
|
|
21
|
+
disabledOptions?: boolean;
|
|
22
|
+
/** Custom render checkbox on menu item */
|
|
23
|
+
renderMenuItemCheckbox?: (checkboxProps: CheckboxProps) => React.ReactNode;
|
|
24
|
+
}
|
|
25
|
+
declare const InputPickerContext: React.Context<InputPickerContextProps>;
|
|
26
|
+
export default InputPickerContext;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
"use strict";
|
|
3
|
+
|
|
4
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
5
|
+
exports.__esModule = true;
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _react = _interopRequireDefault(require("react"));
|
|
8
|
+
var InputPickerContext = /*#__PURE__*/_react.default.createContext({
|
|
9
|
+
tagProps: {},
|
|
10
|
+
trigger: 'Enter'
|
|
11
|
+
});
|
|
12
|
+
var _default = InputPickerContext;
|
|
13
|
+
exports.default = _default;
|
|
@@ -17,6 +17,7 @@ export interface DropdownMenuProps<Multiple = false> extends StandardProps, Omit
|
|
|
17
17
|
style?: React.CSSProperties;
|
|
18
18
|
dropdownMenuItemAs: React.ElementType | string;
|
|
19
19
|
dropdownMenuItemClassPrefix?: string;
|
|
20
|
+
dropdownMenuItemProps?: any;
|
|
20
21
|
rowHeight?: number;
|
|
21
22
|
rowGroupHeight?: number;
|
|
22
23
|
virtualized?: boolean;
|
|
@@ -14,6 +14,7 @@ var _isUndefined = _interopRequireDefault(require("lodash/isUndefined"));
|
|
|
14
14
|
var _isString = _interopRequireDefault(require("lodash/isString"));
|
|
15
15
|
var _isNumber = _interopRequireDefault(require("lodash/isNumber"));
|
|
16
16
|
var _findIndex = _interopRequireDefault(require("lodash/findIndex"));
|
|
17
|
+
var _pickBy = _interopRequireDefault(require("lodash/pickBy"));
|
|
17
18
|
var _getPosition = _interopRequireDefault(require("dom-lib/getPosition"));
|
|
18
19
|
var _scrollTop = _interopRequireDefault(require("dom-lib/scrollTop"));
|
|
19
20
|
var _getHeight = _interopRequireDefault(require("dom-lib/getHeight"));
|
|
@@ -49,6 +50,7 @@ var DropdownMenu = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
49
50
|
focusItemValue = props.focusItemValue,
|
|
50
51
|
dropdownMenuItemClassPrefix = props.dropdownMenuItemClassPrefix,
|
|
51
52
|
DropdownMenuItem = props.dropdownMenuItemAs,
|
|
53
|
+
dropdownMenuItemProps = props.dropdownMenuItemProps,
|
|
52
54
|
_props$rowHeight = props.rowHeight,
|
|
53
55
|
rowHeight = _props$rowHeight === void 0 ? 36 : _props$rowHeight,
|
|
54
56
|
_props$rowGroupHeight = props.rowGroupHeight,
|
|
@@ -57,7 +59,7 @@ var DropdownMenu = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
57
59
|
renderMenuItem = props.renderMenuItem,
|
|
58
60
|
onGroupTitleClick = props.onGroupTitleClick,
|
|
59
61
|
onSelect = props.onSelect,
|
|
60
|
-
rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["data", "group", "groupBy", "maxHeight", "activeItemValues", "disabledItemValues", "classPrefix", "valueKey", "labelKey", "virtualized", "listProps", "listRef", "className", "style", "focusItemValue", "dropdownMenuItemClassPrefix", "dropdownMenuItemAs", "rowHeight", "rowGroupHeight", "renderMenuGroup", "renderMenuItem", "onGroupTitleClick", "onSelect"]);
|
|
62
|
+
rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["data", "group", "groupBy", "maxHeight", "activeItemValues", "disabledItemValues", "classPrefix", "valueKey", "labelKey", "virtualized", "listProps", "listRef", "className", "style", "focusItemValue", "dropdownMenuItemClassPrefix", "dropdownMenuItemAs", "dropdownMenuItemProps", "rowHeight", "rowGroupHeight", "renderMenuGroup", "renderMenuItem", "onGroupTitleClick", "onSelect"]);
|
|
61
63
|
var _useClassNames = (0, _utils.useClassNames)(classPrefix),
|
|
62
64
|
withClassPrefix = _useClassNames.withClassPrefix,
|
|
63
65
|
prefix = _useClassNames.prefix,
|
|
@@ -155,7 +157,7 @@ var DropdownMenu = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
155
157
|
return (0, _shallowEqual.default)(v, value);
|
|
156
158
|
});
|
|
157
159
|
var focus = !(0, _isUndefined.default)(focusItemValue) && (0, _shallowEqual.default)(focusItemValue, value);
|
|
158
|
-
return /*#__PURE__*/_react.default.createElement(DropdownMenuItem, {
|
|
160
|
+
return /*#__PURE__*/_react.default.createElement(DropdownMenuItem, (0, _extends2.default)({
|
|
159
161
|
style: style,
|
|
160
162
|
key: itemKey,
|
|
161
163
|
disabled: disabled,
|
|
@@ -164,7 +166,9 @@ var DropdownMenu = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
164
166
|
value: value,
|
|
165
167
|
classPrefix: dropdownMenuItemClassPrefix,
|
|
166
168
|
onSelect: handleSelect.bind(null, item)
|
|
167
|
-
},
|
|
169
|
+
}, (0, _pickBy.default)(dropdownMenuItemProps, function (v) {
|
|
170
|
+
return v !== undefined;
|
|
171
|
+
})), renderMenuItem ? renderMenuItem(label, item) : label);
|
|
168
172
|
};
|
|
169
173
|
var filteredItems = group ? data.filter(function (item) {
|
|
170
174
|
var _item$parent;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
import { CheckboxProps } from '../Checkbox';
|
|
2
3
|
import { WithAsProps, RsRefForwardingComponent } from '../@types/common';
|
|
3
4
|
export interface DropdownMenuCheckItemProps extends WithAsProps {
|
|
4
5
|
active?: boolean;
|
|
@@ -16,6 +17,7 @@ export interface DropdownMenuCheckItemProps extends WithAsProps {
|
|
|
16
17
|
onCheck?: (value: any, event: React.SyntheticEvent, checked: boolean) => void;
|
|
17
18
|
onSelectItem?: (value: any, event: React.SyntheticEvent, checked: boolean) => void;
|
|
18
19
|
onKeyDown?: (event: React.KeyboardEvent) => void;
|
|
20
|
+
renderMenuItemCheckbox?: (checkboxProps: CheckboxProps) => React.ReactNode;
|
|
19
21
|
}
|
|
20
22
|
declare const DropdownMenuCheckItem: RsRefForwardingComponent<'div', DropdownMenuCheckItemProps>;
|
|
21
23
|
export default DropdownMenuCheckItem;
|
|
@@ -32,7 +32,8 @@ var DropdownMenuCheckItem = /*#__PURE__*/_react.default.forwardRef(function (pro
|
|
|
32
32
|
onSelect = props.onSelect,
|
|
33
33
|
onCheck = props.onCheck,
|
|
34
34
|
onSelectItem = props.onSelectItem,
|
|
35
|
-
|
|
35
|
+
renderMenuItemCheckbox = props.renderMenuItemCheckbox,
|
|
36
|
+
rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["active", "as", "checkboxAs", "classPrefix", "checkable", "disabled", "value", "focus", "children", "className", "indeterminate", "onKeyDown", "onSelect", "onCheck", "onSelectItem", "renderMenuItemCheckbox"]);
|
|
36
37
|
var handleChange = (0, _react.useCallback)(function (value, checked, event) {
|
|
37
38
|
onSelect === null || onSelect === void 0 ? void 0 : onSelect(value, event, checked);
|
|
38
39
|
}, [onSelect]);
|
|
@@ -51,6 +52,19 @@ var DropdownMenuCheckItem = /*#__PURE__*/_react.default.forwardRef(function (pro
|
|
|
51
52
|
var checkboxItemClasses = withClassPrefix({
|
|
52
53
|
focus: focus
|
|
53
54
|
});
|
|
55
|
+
var checkboxProps = {
|
|
56
|
+
value: value,
|
|
57
|
+
disabled: disabled,
|
|
58
|
+
indeterminate: indeterminate,
|
|
59
|
+
checkable: checkable,
|
|
60
|
+
children: children,
|
|
61
|
+
checked: active,
|
|
62
|
+
className: checkboxItemClasses,
|
|
63
|
+
onKeyDown: disabled ? undefined : onKeyDown,
|
|
64
|
+
onChange: handleChange,
|
|
65
|
+
onClick: handleSelectItem,
|
|
66
|
+
onCheckboxClick: handleCheck
|
|
67
|
+
};
|
|
54
68
|
return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({
|
|
55
69
|
role: "option",
|
|
56
70
|
"aria-selected": active,
|
|
@@ -60,19 +74,9 @@ var DropdownMenuCheckItem = /*#__PURE__*/_react.default.forwardRef(function (pro
|
|
|
60
74
|
ref: ref,
|
|
61
75
|
className: className,
|
|
62
76
|
tabIndex: -1
|
|
63
|
-
}), /*#__PURE__*/_react.default.createElement(CheckboxItem, {
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
disabled: disabled,
|
|
67
|
-
checked: active,
|
|
68
|
-
checkable: checkable,
|
|
69
|
-
indeterminate: indeterminate,
|
|
70
|
-
className: checkboxItemClasses,
|
|
71
|
-
onKeyDown: disabled ? null : onKeyDown,
|
|
72
|
-
onChange: handleChange,
|
|
73
|
-
onClick: handleSelectItem,
|
|
74
|
-
onCheckboxClick: handleCheck
|
|
75
|
-
}, children));
|
|
77
|
+
}), renderMenuItemCheckbox ? renderMenuItemCheckbox(checkboxProps) : /*#__PURE__*/_react.default.createElement(CheckboxItem, (0, _extends2.default)({
|
|
78
|
+
role: "checkbox"
|
|
79
|
+
}, checkboxProps)));
|
|
76
80
|
});
|
|
77
81
|
DropdownMenuCheckItem.displayName = 'DropdownMenuCheckItem';
|
|
78
82
|
DropdownMenuCheckItem.propTypes = {
|
|
@@ -64,6 +64,8 @@ var PickerToggle = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
64
64
|
label = props.label,
|
|
65
65
|
name = props.name,
|
|
66
66
|
rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["active", "as", "classPrefix", "children", "caret", "className", "disabled", "readOnly", "plaintext", "hasValue", "editable", "loading", "cleanable", "tabIndex", "id", "value", "inputPlaceholder", "inputValue", "inputMask", "onInputChange", "onInputPressEnter", "onInputBackspace", "onInputBlur", "onInputFocus", "onClean", "onFocus", "onBlur", "placement", "caretComponent", "caretAs", "label", "name"]);
|
|
67
|
+
var _useCustom = (0, _utils.useCustom)(),
|
|
68
|
+
locale = _useCustom.locale;
|
|
67
69
|
var inputRef = (0, _react.useRef)(null);
|
|
68
70
|
var comboboxRef = (0, _react.useRef)(null);
|
|
69
71
|
var _useState = (0, _react.useState)(false),
|
|
@@ -224,7 +226,7 @@ var PickerToggle = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
224
226
|
className: prefix(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)(["clean"]))),
|
|
225
227
|
tabIndex: -1,
|
|
226
228
|
locale: {
|
|
227
|
-
closeLabel:
|
|
229
|
+
closeLabel: locale === null || locale === void 0 ? void 0 : locale.clear
|
|
228
230
|
},
|
|
229
231
|
onClick: handleClean
|
|
230
232
|
}), caret && !showCleanButton && /*#__PURE__*/_react.default.createElement(Caret, {
|
|
@@ -21,5 +21,10 @@ export interface RadioTileProps<T = ValueType> extends WithAsProps, Omit<React.H
|
|
|
21
21
|
/** Callback function with value changed */
|
|
22
22
|
onChange?: (value?: T, event?: React.ChangeEvent<HTMLInputElement>) => void;
|
|
23
23
|
}
|
|
24
|
+
/**
|
|
25
|
+
* A series of selectable tile components that behave like Radio.
|
|
26
|
+
* @version 5.35.0
|
|
27
|
+
* @see https://rsuitejs.com/components/radio-tile/
|
|
28
|
+
*/
|
|
24
29
|
declare const RadioTile: React.ForwardRefExoticComponent<RadioTileProps<ValueType> & React.RefAttributes<unknown>>;
|
|
25
30
|
export default RadioTile;
|
|
@@ -14,6 +14,11 @@ var _Stack = _interopRequireDefault(require("../Stack"));
|
|
|
14
14
|
var _RadioTileGroup = require("../RadioTileGroup/RadioTileGroup");
|
|
15
15
|
var _utils = require("../utils");
|
|
16
16
|
var _useUniqueId = _interopRequireDefault(require("../utils/useUniqueId"));
|
|
17
|
+
/**
|
|
18
|
+
* A series of selectable tile components that behave like Radio.
|
|
19
|
+
* @version 5.35.0
|
|
20
|
+
* @see https://rsuitejs.com/components/radio-tile/
|
|
21
|
+
*/
|
|
17
22
|
var RadioTile = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
18
23
|
var _useContext = (0, _react.useContext)(_RadioTileGroup.RadioTileContext),
|
|
19
24
|
groupValue = _useContext.value,
|
package/cjs/Tag/Tag.js
CHANGED
|
@@ -33,6 +33,8 @@ var Tag = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
33
33
|
var classes = merge(className, withClassPrefix(size, color, {
|
|
34
34
|
closable: closable
|
|
35
35
|
}));
|
|
36
|
+
var _useCustom = (0, _utils.useCustom)(),
|
|
37
|
+
locale = _useCustom.locale;
|
|
36
38
|
return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({}, rest, {
|
|
37
39
|
ref: ref,
|
|
38
40
|
className: classes
|
|
@@ -40,7 +42,11 @@ var Tag = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
40
42
|
className: prefix(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)(["text"])))
|
|
41
43
|
}, children), closable && /*#__PURE__*/_react.default.createElement(_CloseButton.default, {
|
|
42
44
|
className: prefix(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteralLoose2.default)(["icon-close"]))),
|
|
43
|
-
onClick: onClose
|
|
45
|
+
onClick: onClose,
|
|
46
|
+
tabIndex: -1,
|
|
47
|
+
locale: {
|
|
48
|
+
closeLabel: locale === null || locale === void 0 ? void 0 : locale.remove
|
|
49
|
+
}
|
|
44
50
|
}));
|
|
45
51
|
});
|
|
46
52
|
Tag.displayName = 'Tag';
|
package/cjs/TagInput/index.d.ts
CHANGED
|
@@ -1,18 +1,6 @@
|
|
|
1
|
-
import
|
|
2
|
-
import {
|
|
1
|
+
import { InputPickerProps } from '../InputPicker/InputPicker';
|
|
2
|
+
import { TagOnlyProps } from '../InputPicker/InputPickerContext';
|
|
3
3
|
import type { PickerComponent } from '../Picker/types';
|
|
4
|
-
|
|
5
|
-
export interface TagInputProps extends Omit<InputPickerProps<readonly string[]>, 'data'> {
|
|
6
|
-
/** Tag related props. */
|
|
7
|
-
tagProps?: TagProps;
|
|
8
|
-
/**
|
|
9
|
-
* Set the trigger for creating tags. only valid when creatable
|
|
10
|
-
*
|
|
11
|
-
* @todo Declare as readonly array
|
|
12
|
-
*/
|
|
13
|
-
trigger?: TriggerType | TriggerType[];
|
|
14
|
-
/** Callback fired when a tag is removed. */
|
|
15
|
-
onTagRemove?: (tag: string, event: React.MouseEvent) => void;
|
|
16
|
-
}
|
|
4
|
+
export declare type TagInputProps = Omit<InputPickerProps<readonly string[]>, 'data'> & Partial<TagOnlyProps>;
|
|
17
5
|
declare const TagInput: PickerComponent<TagInputProps>;
|
|
18
6
|
export default TagInput;
|
package/cjs/TagInput/index.js
CHANGED
|
@@ -8,7 +8,8 @@ exports.default = void 0;
|
|
|
8
8
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
9
|
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
|
|
10
10
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
-
var _InputPicker =
|
|
11
|
+
var _InputPicker = _interopRequireDefault(require("../InputPicker/InputPicker"));
|
|
12
|
+
var _InputPickerContext = _interopRequireDefault(require("../InputPicker/InputPickerContext"));
|
|
12
13
|
var TagInput = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
13
14
|
var _props$tagProps = props.tagProps,
|
|
14
15
|
tagProps = _props$tagProps === void 0 ? {} : _props$tagProps,
|
|
@@ -35,7 +36,7 @@ var TagInput = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
35
36
|
};
|
|
36
37
|
});
|
|
37
38
|
}, [defaultValue, value]);
|
|
38
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
39
|
+
return /*#__PURE__*/_react.default.createElement(_InputPickerContext.default.Provider, {
|
|
39
40
|
value: contextValue
|
|
40
41
|
}, /*#__PURE__*/_react.default.createElement(_InputPicker.default, (0, _extends2.default)({}, rest, {
|
|
41
42
|
value: value,
|
package/cjs/TagPicker/index.d.ts
CHANGED
|
@@ -1,16 +1,18 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { InputPickerProps
|
|
2
|
+
import { InputPickerProps } from '../InputPicker/InputPicker';
|
|
3
|
+
import { TagOnlyProps } from '../InputPicker/InputPickerContext';
|
|
3
4
|
import type { PickerComponent } from '../Picker/types';
|
|
4
|
-
import type {
|
|
5
|
-
export interface TagPickerProps extends InputPickerProps {
|
|
6
|
-
/** Tag related props. */
|
|
7
|
-
tagProps?: TagProps;
|
|
5
|
+
import type { CheckboxProps } from '../Checkbox';
|
|
6
|
+
export interface TagPickerProps extends InputPickerProps, Partial<TagOnlyProps> {
|
|
8
7
|
/**
|
|
9
|
-
*
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
onTagRemove?: (tag: string, event: React.MouseEvent) => void;
|
|
8
|
+
* Custom render checkbox on menu item
|
|
9
|
+
* @version 5.47.0
|
|
10
|
+
**/
|
|
11
|
+
renderMenuItemCheckbox?: (checkboxProps: CheckboxProps) => React.ReactNode;
|
|
14
12
|
}
|
|
13
|
+
/**
|
|
14
|
+
* Multi-select by tag and support new options
|
|
15
|
+
* @see https://rsuitejs.com/components/tag-picker/
|
|
16
|
+
*/
|
|
15
17
|
declare const TagPicker: PickerComponent<TagPickerProps>;
|
|
16
18
|
export default TagPicker;
|
package/cjs/TagPicker/index.js
CHANGED
|
@@ -8,23 +8,30 @@ exports.default = void 0;
|
|
|
8
8
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
9
|
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
|
|
10
10
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
-
var _InputPicker =
|
|
11
|
+
var _InputPicker = _interopRequireDefault(require("../InputPicker/InputPicker"));
|
|
12
|
+
var _InputPickerContext = _interopRequireDefault(require("../InputPicker/InputPickerContext"));
|
|
13
|
+
/**
|
|
14
|
+
* Multi-select by tag and support new options
|
|
15
|
+
* @see https://rsuitejs.com/components/tag-picker/
|
|
16
|
+
*/
|
|
12
17
|
var TagPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
13
18
|
var _props$tagProps = props.tagProps,
|
|
14
19
|
tagProps = _props$tagProps === void 0 ? {} : _props$tagProps,
|
|
15
20
|
_props$trigger = props.trigger,
|
|
16
21
|
trigger = _props$trigger === void 0 ? 'Enter' : _props$trigger,
|
|
17
22
|
onTagRemove = props.onTagRemove,
|
|
18
|
-
|
|
23
|
+
renderMenuItemCheckbox = props.renderMenuItemCheckbox,
|
|
24
|
+
rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["tagProps", "trigger", "onTagRemove", "renderMenuItemCheckbox"]);
|
|
19
25
|
var contextValue = (0, _react.useMemo)(function () {
|
|
20
26
|
return {
|
|
21
27
|
multi: true,
|
|
22
28
|
trigger: trigger,
|
|
23
29
|
tagProps: tagProps,
|
|
24
|
-
onTagRemove: onTagRemove
|
|
30
|
+
onTagRemove: onTagRemove,
|
|
31
|
+
renderMenuItemCheckbox: renderMenuItemCheckbox
|
|
25
32
|
};
|
|
26
|
-
}, [onTagRemove, tagProps, trigger]);
|
|
27
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
33
|
+
}, [onTagRemove, renderMenuItemCheckbox, tagProps, trigger]);
|
|
34
|
+
return /*#__PURE__*/_react.default.createElement(_InputPickerContext.default.Provider, {
|
|
28
35
|
value: contextValue
|
|
29
36
|
}, /*#__PURE__*/_react.default.createElement(_InputPicker.default, (0, _extends2.default)({}, rest, {
|
|
30
37
|
ref: ref
|