@plesk/ui-library 3.44.0 → 3.45.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/cjs/components/Action/Action.js +0 -6
- package/cjs/components/Alert/Alert.js +5 -1
- package/cjs/components/Button/Button.js +2 -0
- package/cjs/components/Carousel/Carousel.js +9 -4
- package/cjs/components/ComboBox/ComboBox.js +3 -0
- package/cjs/components/ComboBoxDropdown/ComboBoxDropdown.js +6 -2
- package/cjs/components/ComboBoxDropdown/index.js +6 -0
- package/cjs/components/Dialog/Dialog.js +3 -0
- package/cjs/components/Drawer/Header.js +5 -0
- package/cjs/components/Dropdown/Dropdown.js +3 -0
- package/cjs/components/Form/Form.js +3 -1
- package/cjs/components/FormField/FormField.js +9 -5
- package/cjs/components/FormFieldPassword/FormFieldPassword.js +9 -11
- package/cjs/components/InPlaceEdit/Editor.js +6 -7
- package/cjs/components/InPlaceEdit/InPlaceEdit.js +4 -4
- package/cjs/components/InputFile/InputFile.js +4 -4
- package/cjs/components/InputNumber/InputNumber.js +4 -0
- package/cjs/components/Layout/Layout.js +8 -0
- package/cjs/components/List/List.js +11 -6
- package/cjs/components/List/ListActions.js +5 -0
- package/cjs/components/LocaleProvider/LocaleProvider.js +13 -3
- package/cjs/components/Menu/MenuItem.js +4 -0
- package/cjs/components/Overlay/Overlay.js +1 -0
- package/cjs/components/Panel/Panel.js +3 -0
- package/cjs/components/Popover/Popover.js +3 -0
- package/cjs/components/Section/Section.js +4 -0
- package/cjs/components/Select/Select.js +12 -1
- package/cjs/components/Select/SelectControl.js +24 -7
- package/cjs/components/Spinner/Spinner.js +1 -0
- package/cjs/components/SwitchesPanelItem/SwitchesPanelItem.js +3 -0
- package/cjs/components/Tabs/SearchBar.js +7 -0
- package/cjs/components/Tabs/TabClose.js +3 -0
- package/cjs/components/Toast/Toast.js +3 -0
- package/cjs/components/Tooltip/Tooltip.js +92 -202
- package/cjs/components/Tooltip/TooltipContent.js +83 -0
- package/cjs/components/Tooltip/getA11yAttributes.js +30 -0
- package/cjs/components/Tooltip/useVirtualElement.js +35 -0
- package/cjs/components/utils.js +42 -2
- package/cjs/hooks/useEscapeKeydown.js +25 -0
- package/cjs/index.js +1 -1
- package/cjs/locales/ar.js +66 -4
- package/cjs/locales/ca-ES.js +66 -4
- package/cjs/locales/cs-CZ.js +66 -4
- package/cjs/locales/da-DK.js +66 -4
- package/cjs/locales/de-DE.js +66 -4
- package/cjs/locales/el-GR.js +66 -4
- package/cjs/locales/en-US.js +66 -4
- package/cjs/locales/es-ES.js +66 -4
- package/cjs/locales/fi-FI.js +66 -4
- package/cjs/locales/fr-FR.js +66 -4
- package/cjs/locales/he-IL.js +66 -4
- package/cjs/locales/hu-HU.js +66 -4
- package/cjs/locales/id-ID.js +66 -4
- package/cjs/locales/it-IT.js +66 -4
- package/cjs/locales/ja-JP.js +66 -4
- package/cjs/locales/ko-KR.js +66 -4
- package/cjs/locales/ms-MY.js +66 -4
- package/cjs/locales/nb-NO.js +66 -4
- package/cjs/locales/nl-NL.js +66 -4
- package/cjs/locales/pl-PL.js +66 -4
- package/cjs/locales/pt-BR.js +66 -4
- package/cjs/locales/pt-PT.js +66 -4
- package/cjs/locales/ro-RO.js +66 -4
- package/cjs/locales/ru-RU.js +66 -4
- package/cjs/locales/sv-SE.js +66 -4
- package/cjs/locales/th-TH.js +66 -4
- package/cjs/locales/tl-PH.js +66 -4
- package/cjs/locales/tr-TR.js +66 -4
- package/cjs/locales/uk-UA.js +66 -4
- package/cjs/locales/vi-VN.js +66 -4
- package/cjs/locales/zh-CN.js +66 -4
- package/cjs/locales/zh-TW.js +66 -4
- package/cjs/utils.js +2 -17
- package/dist/plesk-ui-library-rtl.css +1 -1
- package/dist/plesk-ui-library-rtl.css.map +1 -1
- package/dist/plesk-ui-library.css +1 -1
- package/dist/plesk-ui-library.css.map +1 -1
- package/dist/plesk-ui-library.js +7632 -3008
- package/dist/plesk-ui-library.js.map +1 -1
- package/dist/plesk-ui-library.min.js +6 -6
- package/dist/plesk-ui-library.min.js.map +1 -1
- package/esm/components/Action/Action.js +0 -6
- package/esm/components/Alert/Alert.js +5 -1
- package/esm/components/Button/Button.js +2 -0
- package/esm/components/Carousel/Carousel.js +9 -4
- package/esm/components/ComboBox/ComboBox.js +3 -0
- package/esm/components/ComboBoxDropdown/ComboBoxDropdown.js +4 -1
- package/esm/components/ComboBoxDropdown/index.js +1 -1
- package/esm/components/Dialog/Dialog.js +3 -0
- package/esm/components/Drawer/Header.js +5 -0
- package/esm/components/Dropdown/Dropdown.js +3 -0
- package/esm/components/Form/Form.js +3 -1
- package/esm/components/FormField/FormField.js +9 -5
- package/esm/components/FormFieldPassword/FormFieldPassword.js +9 -11
- package/esm/components/InPlaceEdit/Editor.js +6 -7
- package/esm/components/InPlaceEdit/InPlaceEdit.js +4 -4
- package/esm/components/InputFile/InputFile.js +4 -4
- package/esm/components/InputNumber/InputNumber.js +4 -0
- package/esm/components/Layout/Layout.js +8 -0
- package/esm/components/List/List.js +11 -6
- package/esm/components/List/ListActions.js +5 -0
- package/esm/components/LocaleProvider/LocaleProvider.js +11 -2
- package/esm/components/Menu/MenuItem.js +5 -1
- package/esm/components/Overlay/Overlay.js +2 -1
- package/esm/components/Panel/Panel.js +3 -0
- package/esm/components/Popover/Popover.js +3 -0
- package/esm/components/Section/Section.js +4 -0
- package/esm/components/Select/Select.js +13 -2
- package/esm/components/Select/SelectControl.js +24 -7
- package/esm/components/Spinner/Spinner.js +1 -0
- package/esm/components/SwitchesPanelItem/SwitchesPanelItem.js +3 -0
- package/esm/components/Tabs/SearchBar.js +7 -0
- package/esm/components/Tabs/TabClose.js +3 -0
- package/esm/components/Toast/Toast.js +3 -0
- package/esm/components/Tooltip/Tooltip.js +94 -204
- package/esm/components/Tooltip/TooltipContent.js +75 -0
- package/esm/components/Tooltip/getA11yAttributes.js +23 -0
- package/esm/components/Tooltip/useVirtualElement.js +28 -0
- package/esm/components/utils.js +37 -1
- package/esm/hooks/useEscapeKeydown.js +18 -0
- package/esm/index.js +1 -1
- package/esm/locales/ar.js +66 -4
- package/esm/locales/ca-ES.js +66 -4
- package/esm/locales/cs-CZ.js +66 -4
- package/esm/locales/da-DK.js +66 -4
- package/esm/locales/de-DE.js +66 -4
- package/esm/locales/el-GR.js +66 -4
- package/esm/locales/en-US.js +66 -4
- package/esm/locales/es-ES.js +66 -4
- package/esm/locales/fi-FI.js +66 -4
- package/esm/locales/fr-FR.js +66 -4
- package/esm/locales/he-IL.js +66 -4
- package/esm/locales/hu-HU.js +66 -4
- package/esm/locales/id-ID.js +66 -4
- package/esm/locales/it-IT.js +66 -4
- package/esm/locales/ja-JP.js +66 -4
- package/esm/locales/ko-KR.js +66 -4
- package/esm/locales/ms-MY.js +66 -4
- package/esm/locales/nb-NO.js +66 -4
- package/esm/locales/nl-NL.js +66 -4
- package/esm/locales/pl-PL.js +66 -4
- package/esm/locales/pt-BR.js +66 -4
- package/esm/locales/pt-PT.js +66 -4
- package/esm/locales/ro-RO.js +66 -4
- package/esm/locales/ru-RU.js +66 -4
- package/esm/locales/sv-SE.js +66 -4
- package/esm/locales/th-TH.js +66 -4
- package/esm/locales/tl-PH.js +66 -4
- package/esm/locales/tr-TR.js +66 -4
- package/esm/locales/uk-UA.js +66 -4
- package/esm/locales/vi-VN.js +66 -4
- package/esm/locales/zh-CN.js +66 -4
- package/esm/locales/zh-TW.js +66 -4
- package/esm/utils.js +0 -14
- package/package.json +7 -6
- package/styleguide/build/bundle.1771d6b7.js +2 -0
- package/styleguide/index.html +2 -2
- package/types/components/Button/Button.d.ts +6 -0
- package/types/components/ComboBoxDropdown/ComboBoxDropdown.d.ts +1 -0
- package/types/components/ComboBoxDropdown/index.d.ts +1 -1
- package/types/components/Dropdown/Dropdown.d.ts +5 -0
- package/types/components/Layout/Layout.d.ts +1 -0
- package/types/components/List/ListActions.d.ts +6 -1
- package/types/components/LocaleProvider/LocaleProvider.d.ts +3 -0
- package/types/components/Select/Select.d.ts +4 -0
- package/types/components/Select/SelectControl.d.ts +4 -0
- package/types/components/Tooltip/Tooltip.d.ts +15 -26
- package/types/components/Tooltip/TooltipContent.d.ts +11 -0
- package/types/components/Tooltip/getA11yAttributes.d.ts +19 -0
- package/types/components/Tooltip/useVirtualElement.d.ts +3 -0
- package/types/components/utils.d.ts +8 -1
- package/types/hooks/useEscapeKeydown.d.ts +1 -0
- package/types/utils.d.ts +0 -3
- package/styleguide/build/bundle.cf3363eb.js +0 -2
- /package/styleguide/build/{bundle.cf3363eb.js.LICENSE.txt → bundle.1771d6b7.js.LICENSE.txt} +0 -0
|
@@ -13,6 +13,7 @@ var _Dropdown = _interopRequireDefault(require("../Dropdown"));
|
|
|
13
13
|
var _Menu = _interopRequireDefault(require("../Menu"));
|
|
14
14
|
var _ListAction = _interopRequireDefault(require("./ListAction"));
|
|
15
15
|
var _VerticalContext = _interopRequireDefault(require("../VerticalContext"));
|
|
16
|
+
var _LocaleProvider = require("../LocaleProvider");
|
|
16
17
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
17
18
|
// Copyright 1999-2025. WebPros International GmbH. All rights reserved.
|
|
18
19
|
|
|
@@ -26,8 +27,10 @@ const ListActions = _ref => {
|
|
|
26
27
|
className,
|
|
27
28
|
children,
|
|
28
29
|
locale,
|
|
30
|
+
onMenuToggle,
|
|
29
31
|
...props
|
|
30
32
|
} = _ref;
|
|
33
|
+
const translate = (0, _LocaleProvider.useInternalTranslate)('ListActions');
|
|
31
34
|
const [overlay, setOverlay] = (0, _react.useState)(false);
|
|
32
35
|
const vertical = (0, _react.useContext)(_VerticalContext.default);
|
|
33
36
|
(0, _react.useEffect)(() => {
|
|
@@ -82,7 +85,9 @@ const ListActions = _ref => {
|
|
|
82
85
|
menuPlacement: "bottom-end",
|
|
83
86
|
overlay: overlay,
|
|
84
87
|
locale: locale,
|
|
88
|
+
onToggle: onMenuToggle,
|
|
85
89
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {
|
|
90
|
+
"aria-label": translate('menuButton'),
|
|
86
91
|
ghost: true,
|
|
87
92
|
icon: "kebab"
|
|
88
93
|
})
|
|
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
|
-
exports.useTranslate = exports.useInternalTranslate = exports.default = exports.LocaleContext = exports.LocaleBetaProvider = void 0;
|
|
7
|
+
exports.useTranslate = exports.useInternalTranslate = exports.getInternalTranslate = exports.default = exports.LocaleContext = exports.LocaleBetaProvider = void 0;
|
|
8
8
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
9
9
|
var _react = require("react");
|
|
10
10
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
@@ -105,11 +105,21 @@ const useTranslate = namespace => {
|
|
|
105
105
|
return (0, _react.useCallback)(
|
|
106
106
|
// eslint-disable-next-line max-params
|
|
107
107
|
(key, params, fallback, defaultMessages) => {
|
|
108
|
-
|
|
109
|
-
|
|
108
|
+
if (context || defaultMessages) {
|
|
109
|
+
const lmsg = context?.locale.lmsg ?? createTranslate({});
|
|
110
|
+
return lmsg(namespace ? `${namespace}.${key}` : key, params, fallback, defaultMessages);
|
|
111
|
+
}
|
|
112
|
+
return typeof fallback === 'string' ? applyParams(fallback, params) : `[${key}]`;
|
|
110
113
|
}, [context, namespace]);
|
|
111
114
|
};
|
|
112
115
|
exports.useTranslate = useTranslate;
|
|
116
|
+
/** Internal function to support legacy class components */
|
|
117
|
+
const getInternalTranslate = namespace => {
|
|
118
|
+
const defaultMessages = (0, _Translate.getLocaleMessages)();
|
|
119
|
+
const lmsg = createTranslate(defaultMessages ?? {});
|
|
120
|
+
return (key, params) => lmsg(namespace ? `${namespace}.${key}` : key, params);
|
|
121
|
+
};
|
|
122
|
+
exports.getInternalTranslate = getInternalTranslate;
|
|
113
123
|
const useInternalTranslate = namespace => {
|
|
114
124
|
const translate = useTranslate(namespace);
|
|
115
125
|
const defaultMessages = (0, _Translate.getLocaleMessages)();
|
|
@@ -154,6 +154,7 @@ const Overlay = _ref2 => {
|
|
|
154
154
|
if (!isOpenRef.current) return;
|
|
155
155
|
isOpenRef.current = false;
|
|
156
156
|
if (--overlaysCount === 0) (0, _utils.enableDocumentScroll)();
|
|
157
|
+
(0, _utils2.setFocusReturned)(prevFocusElementRef.current, 300);
|
|
157
158
|
prevFocusElementRef.current?.focus();
|
|
158
159
|
}, []);
|
|
159
160
|
(0, _react.useEffect)(() => {
|
|
@@ -13,6 +13,7 @@ var _Translate = require("../Translate");
|
|
|
13
13
|
var _Heading = _interopRequireDefault(require("../Heading"));
|
|
14
14
|
var _Button = _interopRequireDefault(require("../Button"));
|
|
15
15
|
var _utils = require("../utils");
|
|
16
|
+
var _LocaleProvider = require("../LocaleProvider");
|
|
16
17
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
17
18
|
// Copyright 1999-2025. WebPros International GmbH. All rights reserved.
|
|
18
19
|
|
|
@@ -32,6 +33,7 @@ const Panel = _ref => {
|
|
|
32
33
|
extra,
|
|
33
34
|
...props
|
|
34
35
|
} = _ref;
|
|
36
|
+
const translate = (0, _LocaleProvider.useInternalTranslate)('Panel');
|
|
35
37
|
const rootRef = (0, _react.useRef)(null);
|
|
36
38
|
const isControlled = externalCollapsed !== undefined;
|
|
37
39
|
const [internalCollapsed, setInternalCollapsed] = (0, _react.useState)(false);
|
|
@@ -68,6 +70,7 @@ const Panel = _ref => {
|
|
|
68
70
|
className: `${baseClassName}__extra`,
|
|
69
71
|
children: [extra, collapsible && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {
|
|
70
72
|
ghost: true,
|
|
73
|
+
"aria-label": translate(collapsed ? 'expand' : 'collapse'),
|
|
71
74
|
className: `${baseClassName}__control-button`,
|
|
72
75
|
icon: {
|
|
73
76
|
name: 'chevron-up',
|
|
@@ -19,9 +19,11 @@ var _utils = require("../utils");
|
|
|
19
19
|
var _OnDarkContext = _interopRequireDefault(require("../OnDarkContext"));
|
|
20
20
|
var _FocusTrap = _interopRequireDefault(require("../FocusTrap"));
|
|
21
21
|
var _react = require("react");
|
|
22
|
+
var _LocaleProvider = require("../LocaleProvider");
|
|
22
23
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
23
24
|
// Copyright 1999-2025. WebPros International GmbH. All rights reserved.
|
|
24
25
|
|
|
26
|
+
const translate = (0, _LocaleProvider.getInternalTranslate)('Popover');
|
|
25
27
|
const PLACEMENT_MAP = {
|
|
26
28
|
'top-left': 'top-end',
|
|
27
29
|
'top-right': 'top-start',
|
|
@@ -220,6 +222,7 @@ class Popover extends _react.Component {
|
|
|
220
222
|
}
|
|
221
223
|
}
|
|
222
224
|
const close = /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {
|
|
225
|
+
"aria-label": translate('closeButton'),
|
|
223
226
|
className: (0, _classnames.default)(`${baseClassName}__close`, title && `${baseClassName}__close--heading`),
|
|
224
227
|
onClick: this.handleClose,
|
|
225
228
|
ghost: true,
|
|
@@ -15,6 +15,7 @@ var _VerticalContext = _interopRequireDefault(require("../VerticalContext"));
|
|
|
15
15
|
var _SectionContext = _interopRequireDefault(require("./SectionContext"));
|
|
16
16
|
var _useCollapsed = require("./useCollapsed");
|
|
17
17
|
var _useVertical = require("./useVertical");
|
|
18
|
+
var _LocaleProvider = require("../LocaleProvider");
|
|
18
19
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
19
20
|
// Copyright 1999-2025. WebPros International GmbH. All rights reserved.
|
|
20
21
|
|
|
@@ -41,6 +42,7 @@ const Section = _ref => {
|
|
|
41
42
|
children,
|
|
42
43
|
...props
|
|
43
44
|
} = _ref;
|
|
45
|
+
const translate = (0, _LocaleProvider.useInternalTranslate)('Section');
|
|
44
46
|
const containerRef = (0, _react.useRef)(null);
|
|
45
47
|
const collapseButtonRef = (0, _react.useRef)(null);
|
|
46
48
|
const vertical = (0, _useVertical.useVertical)(externalVertical, containerRef);
|
|
@@ -74,6 +76,7 @@ const Section = _ref => {
|
|
|
74
76
|
children: [title && /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
75
77
|
className: `${baseClassName}__header`,
|
|
76
78
|
children: [collapsible && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {
|
|
79
|
+
"aria-label": translate(collapsed ? 'expand' : 'collapse'),
|
|
77
80
|
ref: collapseButtonRef,
|
|
78
81
|
ghost: true,
|
|
79
82
|
className: (0, _classnames.default)(`${baseClassName}__control-button`, `${baseClassName}__control-button--collapse`),
|
|
@@ -97,6 +100,7 @@ const Section = _ref => {
|
|
|
97
100
|
className: `${baseClassName}__header-buttons`,
|
|
98
101
|
children: [buttons, onClose && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {
|
|
99
102
|
ghost: true,
|
|
103
|
+
"aria-label": translate('closeButton'),
|
|
100
104
|
className: (0, _classnames.default)(`${baseClassName}__control-button`, `${baseClassName}__control-button--close`),
|
|
101
105
|
onClick: onClose,
|
|
102
106
|
icon: "cross-mark"
|
|
@@ -93,6 +93,10 @@ const getNextValue = (value, prevValue) => {
|
|
|
93
93
|
}
|
|
94
94
|
return value;
|
|
95
95
|
};
|
|
96
|
+
const getActiveDescendant = (options, listboxId, highlightedIndex) => {
|
|
97
|
+
const option = options[highlightedIndex];
|
|
98
|
+
return option?.props?.id ?? (0, _ComboBoxDropdown.getOptionId)(listboxId, highlightedIndex);
|
|
99
|
+
};
|
|
96
100
|
/**
|
|
97
101
|
* `Select` component is used for making a choice among a set of related options.
|
|
98
102
|
* @since 2.3.0
|
|
@@ -113,13 +117,16 @@ const Select = _ref => {
|
|
|
113
117
|
clearable = false,
|
|
114
118
|
multiple = false,
|
|
115
119
|
placeholder,
|
|
120
|
+
'aria-label': ariaLabel,
|
|
121
|
+
'aria-labelledby': ariaLabelledBy,
|
|
116
122
|
...props
|
|
117
123
|
} = _ref;
|
|
118
124
|
const [opened, setOpened] = (0, _react.useState)(false);
|
|
119
125
|
const controlRef = (0, _react.useRef)(null);
|
|
120
126
|
const emitterRef = (0, _react.useRef)(new _utils.EventEmitter());
|
|
121
127
|
const uid = (0, _react.useId)();
|
|
122
|
-
const
|
|
128
|
+
const ariaId = id || uid;
|
|
129
|
+
const listboxId = `${baseClassName}-listbox-${ariaId}`;
|
|
123
130
|
let [value, setValue] = (0, _react.useState)(() => {
|
|
124
131
|
if (typeof defaultValue === 'undefined') {
|
|
125
132
|
return multiple ? [] : undefined;
|
|
@@ -297,7 +304,11 @@ const Select = _ref => {
|
|
|
297
304
|
onValueRemove: handleValueRemove,
|
|
298
305
|
placeholder: placeholder,
|
|
299
306
|
opened: opened,
|
|
307
|
+
ariaId: ariaId,
|
|
300
308
|
listboxId: listboxId,
|
|
309
|
+
"aria-label": ariaLabel,
|
|
310
|
+
"aria-labelledby": ariaLabelledBy,
|
|
311
|
+
"aria-activedescendant": opened ? getActiveDescendant(options, listboxId, highlightedIndex) : undefined,
|
|
301
312
|
ref: controlRef
|
|
302
313
|
});
|
|
303
314
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_ComboBoxDropdown.default, {
|
|
@@ -58,7 +58,11 @@ const SelectControl = /*#__PURE__*/(0, _react.forwardRef)(function SelectControl
|
|
|
58
58
|
onValueRemove,
|
|
59
59
|
placeholder,
|
|
60
60
|
opened = false,
|
|
61
|
+
ariaId,
|
|
61
62
|
listboxId,
|
|
63
|
+
'aria-label': ariaLabel,
|
|
64
|
+
'aria-labelledby': ariaLabelledBy,
|
|
65
|
+
'aria-activedescendant': ariaActiveDescendant,
|
|
62
66
|
...props
|
|
63
67
|
} = _ref;
|
|
64
68
|
const inputRef = (0, _react.useRef)(null);
|
|
@@ -82,6 +86,7 @@ const SelectControl = /*#__PURE__*/(0, _react.forwardRef)(function SelectControl
|
|
|
82
86
|
values = [current.value];
|
|
83
87
|
}
|
|
84
88
|
const hasValue = values.length > 0;
|
|
89
|
+
const valueId = `${ariaId}-value`;
|
|
85
90
|
(0, _react.useLayoutEffect)(() => {
|
|
86
91
|
if (filterValue === '') {
|
|
87
92
|
setInputWidth(DEFAULT_INPUT_WIDTH);
|
|
@@ -109,6 +114,15 @@ const SelectControl = /*#__PURE__*/(0, _react.forwardRef)(function SelectControl
|
|
|
109
114
|
};
|
|
110
115
|
const handleKeyDown = e => {
|
|
111
116
|
switch (e.key) {
|
|
117
|
+
case ' ':
|
|
118
|
+
if (searchable) break;
|
|
119
|
+
e.preventDefault();
|
|
120
|
+
if (opened) {
|
|
121
|
+
onHighlightConfirm();
|
|
122
|
+
} else {
|
|
123
|
+
onHighlightChange(0);
|
|
124
|
+
}
|
|
125
|
+
break;
|
|
112
126
|
case 'ArrowUp':
|
|
113
127
|
e.preventDefault();
|
|
114
128
|
onHighlightChange(-1);
|
|
@@ -171,6 +185,7 @@ const SelectControl = /*#__PURE__*/(0, _react.forwardRef)(function SelectControl
|
|
|
171
185
|
onClick: handleClick,
|
|
172
186
|
ref: ref,
|
|
173
187
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("span", {
|
|
188
|
+
id: valueId,
|
|
174
189
|
className: `${baseClassName}__value-container`,
|
|
175
190
|
children: [Array.isArray(current) && current.map(_ref3 => {
|
|
176
191
|
let {
|
|
@@ -200,12 +215,15 @@ const SelectControl = /*#__PURE__*/(0, _react.forwardRef)(function SelectControl
|
|
|
200
215
|
style: {
|
|
201
216
|
width: inputWidth
|
|
202
217
|
},
|
|
203
|
-
role:
|
|
204
|
-
"aria-
|
|
205
|
-
"aria-haspopup": searchable ? 'listbox' : 'listbox',
|
|
218
|
+
role: "combobox",
|
|
219
|
+
"aria-haspopup": "listbox",
|
|
206
220
|
"aria-expanded": opened,
|
|
207
221
|
"aria-controls": listboxId,
|
|
208
|
-
|
|
222
|
+
"aria-autocomplete": searchable ? 'list' : undefined,
|
|
223
|
+
"aria-activedescendant": ariaActiveDescendant,
|
|
224
|
+
"aria-label": ariaLabel,
|
|
225
|
+
"aria-labelledby": ariaLabelledBy,
|
|
226
|
+
"aria-describedby": hasValue ? valueId : undefined
|
|
209
227
|
}), !filterValue && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_react.Fragment, {
|
|
210
228
|
children: [!Array.isArray(current) && current && /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
|
211
229
|
className: `${baseClassName}__value`,
|
|
@@ -218,6 +236,7 @@ const SelectControl = /*#__PURE__*/(0, _react.forwardRef)(function SelectControl
|
|
|
218
236
|
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)("span", {
|
|
219
237
|
className: `${baseClassName}__indicators`,
|
|
220
238
|
children: [clearable && hasValue && /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
|
|
239
|
+
"aria-label": translate('clearButton'),
|
|
221
240
|
type: "button",
|
|
222
241
|
className: (0, _classnames.default)(`${baseClassName}__indicator`, `${baseClassName}__indicator--clear`),
|
|
223
242
|
tabIndex: -1,
|
|
@@ -242,14 +261,12 @@ const SelectControl = /*#__PURE__*/(0, _react.forwardRef)(function SelectControl
|
|
|
242
261
|
type: "button",
|
|
243
262
|
className: (0, _classnames.default)(`${baseClassName}__indicator`, `${baseClassName}__indicator--dropdown`),
|
|
244
263
|
tabIndex: -1,
|
|
245
|
-
"aria-
|
|
246
|
-
"aria-expanded": opened,
|
|
264
|
+
"aria-hidden": "true",
|
|
247
265
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Icon.default, {
|
|
248
266
|
className: `${baseClassName}__indicator-icon`,
|
|
249
267
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)("svg", {
|
|
250
268
|
xmlns: "http://www.w3.org/2000/svg",
|
|
251
269
|
viewBox: "-4 -5 16 16",
|
|
252
|
-
"aria-hidden": "true",
|
|
253
270
|
focusable: "false",
|
|
254
271
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)("path", {
|
|
255
272
|
d: "M4 4.048L.847.895a.496.496 0 1 0-.702.702l3.452 3.451a.5.5 0 0 0 .806 0l3.452-3.451a.496.496 0 0 0-.702-.702L4 4.048z"
|
|
@@ -10,6 +10,7 @@ var _constants = require("../../constants");
|
|
|
10
10
|
var _Switch = _interopRequireDefault(require("../Switch"));
|
|
11
11
|
var _Action = _interopRequireDefault(require("../Action"));
|
|
12
12
|
var _Popover = _interopRequireDefault(require("../Popover"));
|
|
13
|
+
var _LocaleProvider = require("../LocaleProvider");
|
|
13
14
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
14
15
|
// Copyright 1999-2025. WebPros International GmbH. All rights reserved.
|
|
15
16
|
|
|
@@ -32,6 +33,7 @@ const SwitchesPanelItem = _ref => {
|
|
|
32
33
|
baseClassName = `${_constants.CLS_PREFIX}switches-panel-item`,
|
|
33
34
|
...props
|
|
34
35
|
} = _ref;
|
|
36
|
+
const translate = (0, _LocaleProvider.useInternalTranslate)('SwitchesPanelItem');
|
|
35
37
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
36
38
|
className: (0, _classnames.default)(baseClassName, {
|
|
37
39
|
[`${baseClassName}--${intent}`]: intent
|
|
@@ -56,6 +58,7 @@ const SwitchesPanelItem = _ref => {
|
|
|
56
58
|
children: [children, fullDescription && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Popover.default, {
|
|
57
59
|
intent: "info",
|
|
58
60
|
target: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Action.default, {
|
|
61
|
+
"aria-label": translate('showDescription'),
|
|
59
62
|
icon: "question-mark-circle",
|
|
60
63
|
outerProps: {
|
|
61
64
|
className: `${baseClassName}__full-description-toggle`
|
|
@@ -17,10 +17,13 @@ var _Input = _interopRequireDefault(require("../Input"));
|
|
|
17
17
|
var _Menu = _interopRequireWildcard(require("../Menu"));
|
|
18
18
|
var _ResponsiveContext = _interopRequireDefault(require("../ResponsiveContext"));
|
|
19
19
|
var _utils2 = require("../utils");
|
|
20
|
+
var _LocaleProvider = require("../LocaleProvider");
|
|
20
21
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
21
22
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
22
23
|
// Copyright 1999-2025. WebPros International GmbH. All rights reserved.
|
|
23
24
|
|
|
25
|
+
const translate = (0, _LocaleProvider.getInternalTranslate)('SearchBar');
|
|
26
|
+
|
|
24
27
|
/**
|
|
25
28
|
* `SearchBar` component is used for providing type-as-you-go search.
|
|
26
29
|
* @since 0.0.58
|
|
@@ -359,6 +362,7 @@ class SearchBar extends _react.Component {
|
|
|
359
362
|
intent: "info",
|
|
360
363
|
hidden: !value,
|
|
361
364
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {
|
|
365
|
+
"aria-label": translate('expandSearch'),
|
|
362
366
|
icon: "search",
|
|
363
367
|
onClick: this.handleExpand
|
|
364
368
|
})
|
|
@@ -375,6 +379,7 @@ class SearchBar extends _react.Component {
|
|
|
375
379
|
...inputProps,
|
|
376
380
|
value: value,
|
|
377
381
|
prefix: (collapsable && !isCollapsed || distractionFreeModeEnabled) && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {
|
|
382
|
+
"aria-label": translate('collapseSearch'),
|
|
378
383
|
icon: {
|
|
379
384
|
name: 'chevron-right',
|
|
380
385
|
flipHorizontal: (0, _utils.isRtl)()
|
|
@@ -384,10 +389,12 @@ class SearchBar extends _react.Component {
|
|
|
384
389
|
}),
|
|
385
390
|
suffix: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
386
391
|
children: [value && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {
|
|
392
|
+
"aria-label": translate('clearButton'),
|
|
387
393
|
icon: "remove",
|
|
388
394
|
onClick: this.handleReset,
|
|
389
395
|
ghost: true
|
|
390
396
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {
|
|
397
|
+
"aria-label": translate('searchButton'),
|
|
391
398
|
icon: "search",
|
|
392
399
|
onClick: this.handleSearch,
|
|
393
400
|
state: loading ? 'loading' : undefined,
|
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.default = void 0;
|
|
8
8
|
var _Icon = _interopRequireDefault(require("../Icon"));
|
|
9
|
+
var _LocaleProvider = require("../LocaleProvider");
|
|
9
10
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
10
11
|
// Copyright 1999-2025. WebPros International GmbH. All rights reserved.
|
|
11
12
|
|
|
@@ -15,10 +16,12 @@ const TabClose = _ref => {
|
|
|
15
16
|
onClose,
|
|
16
17
|
baseClassName
|
|
17
18
|
} = _ref;
|
|
19
|
+
const translate = (0, _LocaleProvider.useInternalTranslate)('Tabs');
|
|
18
20
|
if (typeof onClose !== 'function') {
|
|
19
21
|
return null;
|
|
20
22
|
}
|
|
21
23
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
|
|
24
|
+
"aria-label": translate('closeButton'),
|
|
22
25
|
className: `${baseClassName}__${tabMode}-close`,
|
|
23
26
|
type: "button",
|
|
24
27
|
onClick: e => {
|
|
@@ -12,6 +12,7 @@ var _Button = _interopRequireDefault(require("../Button"));
|
|
|
12
12
|
var _intentIconMap = require("../intentIconMap");
|
|
13
13
|
var _OnDarkContext = _interopRequireDefault(require("../OnDarkContext"));
|
|
14
14
|
var _useAutoClose = require("./useAutoClose");
|
|
15
|
+
var _LocaleProvider = require("../LocaleProvider");
|
|
15
16
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
16
17
|
// Copyright 1999-2025. WebPros International GmbH. All rights reserved.
|
|
17
18
|
|
|
@@ -33,6 +34,7 @@ const Toast = _ref => {
|
|
|
33
34
|
groupKey,
|
|
34
35
|
...props
|
|
35
36
|
} = _ref;
|
|
37
|
+
const translate = (0, _LocaleProvider.useInternalTranslate)('Toast');
|
|
36
38
|
(0, _useAutoClose.useAutoClose)({
|
|
37
39
|
autoClosable,
|
|
38
40
|
autoCloseTimeout,
|
|
@@ -56,6 +58,7 @@ const Toast = _ref => {
|
|
|
56
58
|
className: `${baseClassName}__action`,
|
|
57
59
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {
|
|
58
60
|
ghost: true,
|
|
61
|
+
"aria-label": translate('closeButton'),
|
|
59
62
|
icon: {
|
|
60
63
|
name: 'cross-mark',
|
|
61
64
|
size: '12'
|