@pingux/astro 1.2.0-alpha.0 → 1.2.0-alpha.12
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/lib/cjs/components/Breadcrumbs/BreadcrumbItem.js +3 -0
- package/lib/cjs/components/Breadcrumbs/Breadcrumbs.js +24 -14
- package/lib/cjs/components/Breadcrumbs/Breadcrumbs.test.js +9 -0
- package/lib/cjs/components/Button/Button.js +5 -2
- package/lib/cjs/components/Button/Button.stories.js +71 -17
- package/lib/cjs/components/Button/Button.test.js +26 -0
- package/lib/cjs/components/CopyText/CopyButton.js +9 -2
- package/lib/cjs/components/EnvironmentBreadcrumb/EnvironmentBreadcrumb.js +338 -0
- package/lib/cjs/components/EnvironmentBreadcrumb/EnvironmentBreadcrumb.stories.js +295 -0
- package/lib/cjs/components/EnvironmentBreadcrumb/EnvironmentBreadcrumb.test.js +287 -0
- package/lib/cjs/components/EnvironmentBreadcrumb/index.js +18 -0
- package/lib/cjs/components/HelpHint/HelpHint.js +24 -6
- package/lib/cjs/components/HelpHint/HelpHint.stories.js +57 -0
- package/lib/cjs/components/HelpHint/HelpHint.test.js +80 -0
- package/lib/cjs/components/Messages/Messages.reducer.js +2 -1
- package/lib/cjs/components/Messages/Messages.stories.js +10 -10
- package/lib/cjs/components/Messages/Messages.test.js +15 -1
- package/lib/cjs/components/Messages/index.js +21 -2
- package/lib/cjs/components/MultivaluesField/MultivaluesField.js +3 -1
- package/lib/cjs/components/NumberField/NumberField.js +3 -1
- package/lib/cjs/components/NumberField/NumberField.test.js +7 -0
- package/lib/cjs/components/OverlayPanel/OverlayPanel.js +2 -16
- package/lib/cjs/components/OverlayPanel/OverlayPanel.test.js +44 -0
- package/lib/cjs/components/SearchField/SearchField.stories.js +1 -15
- package/lib/cjs/components/TextAreaField/TextAreaField.js +1 -1
- package/lib/cjs/components/TextAreaField/TextAreaField.stories.js +1 -54
- package/lib/cjs/components/TextField/TextField.stories.js +79 -2
- package/lib/cjs/hooks/useAriaLabelWarning/useAriaLabelWarning.js +2 -1
- package/lib/cjs/index.js +10 -0
- package/lib/cjs/styles/variants/boxes.js +13 -0
- package/lib/cjs/styles/variants/buttons.js +101 -2
- package/lib/cjs/styles/variants/text.js +23 -0
- package/lib/components/Breadcrumbs/BreadcrumbItem.js +4 -1
- package/lib/components/Breadcrumbs/Breadcrumbs.js +24 -15
- package/lib/components/Breadcrumbs/Breadcrumbs.test.js +9 -0
- package/lib/components/Button/Button.js +6 -3
- package/lib/components/Button/Button.stories.js +53 -5
- package/lib/components/Button/Button.test.js +20 -0
- package/lib/components/CopyText/CopyButton.js +7 -2
- package/lib/components/EnvironmentBreadcrumb/EnvironmentBreadcrumb.js +296 -0
- package/lib/components/EnvironmentBreadcrumb/EnvironmentBreadcrumb.stories.js +256 -0
- package/lib/components/EnvironmentBreadcrumb/EnvironmentBreadcrumb.test.js +246 -0
- package/lib/components/EnvironmentBreadcrumb/index.js +1 -0
- package/lib/components/HelpHint/HelpHint.js +25 -5
- package/lib/components/HelpHint/HelpHint.stories.js +34 -0
- package/lib/components/HelpHint/HelpHint.test.js +58 -0
- package/lib/components/Messages/Messages.reducer.js +1 -1
- package/lib/components/Messages/Messages.stories.js +1 -1
- package/lib/components/Messages/Messages.test.js +11 -1
- package/lib/components/Messages/index.js +2 -1
- package/lib/components/MultivaluesField/MultivaluesField.js +3 -1
- package/lib/components/NumberField/NumberField.js +2 -1
- package/lib/components/NumberField/NumberField.test.js +7 -0
- package/lib/components/OverlayPanel/OverlayPanel.js +3 -16
- package/lib/components/OverlayPanel/OverlayPanel.test.js +38 -0
- package/lib/components/SearchField/SearchField.stories.js +0 -11
- package/lib/components/TextAreaField/TextAreaField.js +1 -1
- package/lib/components/TextAreaField/TextAreaField.stories.js +0 -43
- package/lib/components/TextField/TextField.stories.js +72 -0
- package/lib/hooks/useAriaLabelWarning/useAriaLabelWarning.js +2 -1
- package/lib/index.js +1 -0
- package/lib/styles/variants/boxes.js +13 -0
- package/lib/styles/variants/buttons.js +101 -2
- package/lib/styles/variants/text.js +23 -0
- package/package.json +2 -2
@@ -0,0 +1,57 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
4
|
+
|
5
|
+
var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
|
6
|
+
|
7
|
+
_Object$defineProperty(exports, "__esModule", {
|
8
|
+
value: true
|
9
|
+
});
|
10
|
+
|
11
|
+
exports.WithTooltipAndIconButtonProps = exports.Default = exports["default"] = void 0;
|
12
|
+
|
13
|
+
var _react = _interopRequireDefault(require("react"));
|
14
|
+
|
15
|
+
var _ = _interopRequireDefault(require("."));
|
16
|
+
|
17
|
+
var _Box = _interopRequireDefault(require("../Box"));
|
18
|
+
|
19
|
+
var _react2 = require("@emotion/react");
|
20
|
+
|
21
|
+
var _default = {
|
22
|
+
title: 'HelpHint',
|
23
|
+
component: _["default"],
|
24
|
+
argTypes: {
|
25
|
+
children: {
|
26
|
+
description: 'Tooltip content',
|
27
|
+
defaultValue: 'Text of the tooltip right here...',
|
28
|
+
control: {
|
29
|
+
type: 'text'
|
30
|
+
}
|
31
|
+
}
|
32
|
+
}
|
33
|
+
};
|
34
|
+
exports["default"] = _default;
|
35
|
+
|
36
|
+
var Default = function Default(args) {
|
37
|
+
return (0, _react2.jsx)(_Box["default"], {
|
38
|
+
p: 50
|
39
|
+
}, (0, _react2.jsx)(_["default"], args));
|
40
|
+
};
|
41
|
+
|
42
|
+
exports.Default = Default;
|
43
|
+
|
44
|
+
var WithTooltipAndIconButtonProps = function WithTooltipAndIconButtonProps() {
|
45
|
+
return (0, _react2.jsx)(_Box["default"], {
|
46
|
+
p: 50
|
47
|
+
}, (0, _react2.jsx)(_["default"], {
|
48
|
+
tooltipProps: {
|
49
|
+
direction: 'bottom'
|
50
|
+
},
|
51
|
+
iconButtonProps: {
|
52
|
+
'aria-label': 'Help hint'
|
53
|
+
}
|
54
|
+
}, "Text of the tooltip right here..."));
|
55
|
+
};
|
56
|
+
|
57
|
+
exports.WithTooltipAndIconButtonProps = WithTooltipAndIconButtonProps;
|
@@ -0,0 +1,80 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
4
|
+
|
5
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
|
6
|
+
|
7
|
+
var _react = _interopRequireDefault(require("react"));
|
8
|
+
|
9
|
+
var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
|
10
|
+
|
11
|
+
var _testWrapper = require("../../utils/testUtils/testWrapper");
|
12
|
+
|
13
|
+
var _testAxe = _interopRequireDefault(require("../../utils/testUtils/testAxe"));
|
14
|
+
|
15
|
+
var _HelpHint = _interopRequireDefault(require("./HelpHint"));
|
16
|
+
|
17
|
+
var _react2 = require("@emotion/react");
|
18
|
+
|
19
|
+
var testId = 'help-hint__button';
|
20
|
+
var tooltipValue = 'Some text';
|
21
|
+
var defaultProps = {
|
22
|
+
children: tooltipValue
|
23
|
+
};
|
24
|
+
|
25
|
+
var getComponent = function getComponent() {
|
26
|
+
var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
27
|
+
return (0, _testWrapper.render)((0, _react2.jsx)(_HelpHint["default"], (0, _extends2["default"])({}, defaultProps, props)));
|
28
|
+
}; // Need to be added to each test file to test accessibility using axe.
|
29
|
+
|
30
|
+
|
31
|
+
(0, _testAxe["default"])(getComponent);
|
32
|
+
test('renders HelpHint component', function () {
|
33
|
+
getComponent();
|
34
|
+
|
35
|
+
var helpHintButton = _testWrapper.screen.getByTestId(testId);
|
36
|
+
|
37
|
+
expect(helpHintButton).toBeInTheDocument();
|
38
|
+
});
|
39
|
+
test('shows tooltip on hover', function () {
|
40
|
+
getComponent();
|
41
|
+
|
42
|
+
var helpHintButton = _testWrapper.screen.getByTestId(testId);
|
43
|
+
|
44
|
+
expect(_testWrapper.screen.queryByText(tooltipValue)).not.toBeInTheDocument();
|
45
|
+
|
46
|
+
_testWrapper.fireEvent.mouseMove(helpHintButton);
|
47
|
+
|
48
|
+
_testWrapper.fireEvent.mouseEnter(helpHintButton);
|
49
|
+
|
50
|
+
expect(_testWrapper.screen.getByText(tooltipValue)).toBeInTheDocument();
|
51
|
+
});
|
52
|
+
test('shows tooltip on focus', function () {
|
53
|
+
getComponent();
|
54
|
+
|
55
|
+
var helpHintButton = _testWrapper.screen.getByTestId(testId);
|
56
|
+
|
57
|
+
expect(_testWrapper.screen.queryByText(tooltipValue)).not.toBeInTheDocument();
|
58
|
+
|
59
|
+
_userEvent["default"].tab();
|
60
|
+
|
61
|
+
expect(helpHintButton).toHaveFocus();
|
62
|
+
expect(_testWrapper.screen.queryByText(tooltipValue)).toBeInTheDocument();
|
63
|
+
});
|
64
|
+
test('applies tooltipProps', function () {
|
65
|
+
getComponent({
|
66
|
+
tooltipProps: {
|
67
|
+
isOpen: true
|
68
|
+
}
|
69
|
+
});
|
70
|
+
expect(_testWrapper.screen.getByText(tooltipValue)).toBeInTheDocument();
|
71
|
+
});
|
72
|
+
test('applies iconButtonProps', function () {
|
73
|
+
var newLabel = 'New label';
|
74
|
+
getComponent({
|
75
|
+
iconButtonProps: {
|
76
|
+
'aria-label': newLabel
|
77
|
+
}
|
78
|
+
});
|
79
|
+
expect(_testWrapper.screen.getByLabelText(newLabel)).toBeInTheDocument();
|
80
|
+
});
|
@@ -8,7 +8,7 @@ _Object$defineProperty2(exports, "__esModule", {
|
|
8
8
|
value: true
|
9
9
|
});
|
10
10
|
|
11
|
-
exports["default"] = exports.multiMessagesReducer = void 0;
|
11
|
+
exports["default"] = exports.multiMessagesReducer = exports.messagesReducer = void 0;
|
12
12
|
|
13
13
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/define-property"));
|
14
14
|
|
@@ -35,6 +35,7 @@ function ownKeys(object, enumerableOnly) { var keys = (0, _keys["default"])(obje
|
|
35
35
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { var _context; (0, _forEach["default"])(_context = ownKeys(Object(source), true)).call(_context, function (key) { (0, _defineProperty3["default"])(target, key, source[key]); }); } else if (_getOwnPropertyDescriptors["default"]) { (0, _defineProperties["default"])(target, (0, _getOwnPropertyDescriptors["default"])(source)); } else { var _context2; (0, _forEach["default"])(_context2 = ownKeys(Object(source))).call(_context2, function (key) { (0, _defineProperty2["default"])(target, key, (0, _getOwnPropertyDescriptor["default"])(source, key)); }); } } return target; }
|
36
36
|
|
37
37
|
var messagesReducer = _utils.messagesReducer;
|
38
|
+
exports.messagesReducer = messagesReducer;
|
38
39
|
var multiMessagesReducer = _utils.multiMessagesReducer;
|
39
40
|
exports.multiMessagesReducer = multiMessagesReducer;
|
40
41
|
|
@@ -52,7 +52,7 @@ var _statuses = _interopRequireDefault(require("../../utils/devUtils/constants/s
|
|
52
52
|
|
53
53
|
var _ = require("../..");
|
54
54
|
|
55
|
-
var
|
55
|
+
var _index = require("./index");
|
56
56
|
|
57
57
|
var _react2 = require("@emotion/react");
|
58
58
|
|
@@ -233,21 +233,21 @@ var UseReducer = function UseReducer() {
|
|
233
233
|
// showErrorMessage: makeShowMessage('error', -1),
|
234
234
|
// showWarningMessage: makeShowMessage('warning', -1),
|
235
235
|
// };
|
236
|
-
var _useReducer = (0, _react.useReducer)(
|
236
|
+
var _useReducer = (0, _react.useReducer)(_index.messagesReducerStory),
|
237
237
|
_useReducer2 = (0, _slicedToArray2["default"])(_useReducer, 2),
|
238
238
|
items = _useReducer2[0],
|
239
239
|
dispatch = _useReducer2[1];
|
240
240
|
|
241
241
|
var showAMessage = function showAMessage() {
|
242
|
-
var actionFn = [
|
242
|
+
var actionFn = [_index.messagesReducerStory.actions.showSuccessMessage, _index.messagesReducerStory.actions.showErrorMessage, _index.messagesReducerStory.actions.showWarningMessage][Math.floor(Math.random() * 3)];
|
243
243
|
var message = messageText[Math.floor(Math.random() * 6)];
|
244
244
|
actionFn(message)(dispatch);
|
245
245
|
};
|
246
246
|
|
247
247
|
var removeMessage = function removeMessage(key) {
|
248
|
-
dispatch(
|
248
|
+
dispatch(_index.messagesReducerStory.actions.hideMessage(key));
|
249
249
|
(0, _setTimeout2["default"])(function () {
|
250
|
-
return dispatch(
|
250
|
+
return dispatch(_index.messagesReducerStory.actions.removeMessage(key));
|
251
251
|
}, 200);
|
252
252
|
};
|
253
253
|
|
@@ -256,7 +256,7 @@ var UseReducer = function UseReducer() {
|
|
256
256
|
}, "Add Message"), (items === null || items === void 0 ? void 0 : items.length) > 0 && (0, _react2.jsx)(_.Button, {
|
257
257
|
mt: "md",
|
258
258
|
onPress: function onPress() {
|
259
|
-
return dispatch(
|
259
|
+
return dispatch(_index.messagesReducerStory.actions.clearMessages());
|
260
260
|
}
|
261
261
|
}, "Clear messages"), (0, _react2.jsx)(_.Messages, {
|
262
262
|
items: items,
|
@@ -269,7 +269,7 @@ var UseReducer = function UseReducer() {
|
|
269
269
|
exports.UseReducer = UseReducer;
|
270
270
|
|
271
271
|
var UseReducerWithMultipleContainers = function UseReducerWithMultipleContainers() {
|
272
|
-
var _useReducer3 = (0, _react.useReducer)(
|
272
|
+
var _useReducer3 = (0, _react.useReducer)(_index.multiMessagesReducerStory, {
|
273
273
|
'container-one': [],
|
274
274
|
'container-two': []
|
275
275
|
}),
|
@@ -278,15 +278,15 @@ var UseReducerWithMultipleContainers = function UseReducerWithMultipleContainers
|
|
278
278
|
dispatch = _useReducer4[1];
|
279
279
|
|
280
280
|
var showAMessage = function showAMessage(container) {
|
281
|
-
var actionFn = [
|
281
|
+
var actionFn = [_index.multiMessagesReducerStory.actions.showSuccessMessage, _index.multiMessagesReducerStory.actions.showCriticalMessage, _index.multiMessagesReducerStory.actions.showWarningMessage][Math.floor(Math.random() * 3)];
|
282
282
|
var message = messageText[Math.floor(Math.random() * 6)];
|
283
283
|
actionFn(container, message)(dispatch);
|
284
284
|
};
|
285
285
|
|
286
286
|
var removeMessage = function removeMessage(key, container) {
|
287
|
-
dispatch(
|
287
|
+
dispatch(_index.multiMessagesReducerStory.actions.hideMessage(container, key));
|
288
288
|
(0, _setTimeout2["default"])(function () {
|
289
|
-
return dispatch(
|
289
|
+
return dispatch(_index.multiMessagesReducerStory.actions.removeMessage(container, key));
|
290
290
|
}, 200);
|
291
291
|
};
|
292
292
|
|
@@ -26,7 +26,7 @@ var _testAxe = _interopRequireDefault(require("../../utils/testUtils/testAxe"));
|
|
26
26
|
|
27
27
|
var _testWrapper = require("../../utils/testUtils/testWrapper");
|
28
28
|
|
29
|
-
var _ =
|
29
|
+
var _ = _interopRequireWildcard(require("."));
|
30
30
|
|
31
31
|
var _Button = _interopRequireDefault(require("../Button"));
|
32
32
|
|
@@ -211,4 +211,18 @@ describe('announcements', function () {
|
|
211
211
|
expect(messages.childElementCount).toBe(1);
|
212
212
|
expect(_liveAnnouncer.announce).toHaveBeenCalledWith('New message 1', 'polite');
|
213
213
|
});
|
214
|
+
});
|
215
|
+
test('should render messages with messagesReducerStory', function () {
|
216
|
+
getComponent();
|
217
|
+
|
218
|
+
_.messagesReducerStory.actions.showSuccessMessage();
|
219
|
+
|
220
|
+
expect(_testWrapper.screen.getByTestId(testId)).toBeInTheDocument();
|
221
|
+
});
|
222
|
+
test('should render messages with multiMessagesReducerStory', function () {
|
223
|
+
getComponent();
|
224
|
+
|
225
|
+
_.multiMessagesReducerStory.actions.showSuccessMessage();
|
226
|
+
|
227
|
+
expect(_testWrapper.screen.getByTestId(testId)).toBeInTheDocument();
|
214
228
|
});
|
@@ -14,7 +14,10 @@ _Object$defineProperty(exports, "__esModule", {
|
|
14
14
|
value: true
|
15
15
|
});
|
16
16
|
|
17
|
-
var _exportNames = {
|
17
|
+
var _exportNames = {
|
18
|
+
messagesReducerStory: true,
|
19
|
+
multiMessagesReducerStory: true
|
20
|
+
};
|
18
21
|
|
19
22
|
_Object$defineProperty(exports, "default", {
|
20
23
|
enumerable: true,
|
@@ -23,6 +26,20 @@ _Object$defineProperty(exports, "default", {
|
|
23
26
|
}
|
24
27
|
});
|
25
28
|
|
29
|
+
_Object$defineProperty(exports, "messagesReducerStory", {
|
30
|
+
enumerable: true,
|
31
|
+
get: function get() {
|
32
|
+
return _Messages2.messagesReducer;
|
33
|
+
}
|
34
|
+
});
|
35
|
+
|
36
|
+
_Object$defineProperty(exports, "multiMessagesReducerStory", {
|
37
|
+
enumerable: true,
|
38
|
+
get: function get() {
|
39
|
+
return _Messages2.multiMessagesReducer;
|
40
|
+
}
|
41
|
+
});
|
42
|
+
|
26
43
|
var _Messages = _interopRequireDefault(require("./Messages"));
|
27
44
|
|
28
45
|
var _utils = require("./utils");
|
@@ -37,4 +54,6 @@ _forEachInstanceProperty(_context = _Object$keys(_utils)).call(_context, functio
|
|
37
54
|
return _utils[key];
|
38
55
|
}
|
39
56
|
});
|
40
|
-
});
|
57
|
+
});
|
58
|
+
|
59
|
+
var _Messages2 = require("./Messages.reducer");
|
@@ -50,6 +50,8 @@ var _i18n = require("@react-aria/i18n");
|
|
50
50
|
|
51
51
|
var _utils = require("@react-aria/utils");
|
52
52
|
|
53
|
+
var _omit = _interopRequireDefault(require("lodash/omit"));
|
54
|
+
|
53
55
|
var _statuses = _interopRequireDefault(require("../../utils/devUtils/constants/statuses"));
|
54
56
|
|
55
57
|
var _index = require("../../index");
|
@@ -130,7 +132,7 @@ var NumberField = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
130
132
|
ref: inputRef // we don't want to merge this props, we want to
|
131
133
|
// overwrite them like defaultValue, value, ect.
|
132
134
|
|
133
|
-
}, fieldControlProps, inputProps)), ControlArrows), helperText && (0, _react2.jsx)(_index.FieldHelperText, {
|
135
|
+
}, fieldControlProps, (0, _omit["default"])(inputProps, 'name'))), ControlArrows), helperText && (0, _react2.jsx)(_index.FieldHelperText, {
|
134
136
|
status: status
|
135
137
|
}, helperText)));
|
136
138
|
});
|
@@ -169,4 +169,11 @@ test('increment and decrement buttons shouldn\'t be able to be focused via keybo
|
|
169
169
|
_userEvent["default"].tab();
|
170
170
|
|
171
171
|
expect(_testWrapper.screen.getByLabelText('arrow-down')).not.toHaveFocus();
|
172
|
+
});
|
173
|
+
test('number field input receiving name attribute', function () {
|
174
|
+
var testName = 'testName';
|
175
|
+
getComponent({
|
176
|
+
name: testName
|
177
|
+
});
|
178
|
+
expect(_testWrapper.screen.getByLabelText(testLabel)).toHaveAttribute('name', testName);
|
172
179
|
});
|
@@ -18,8 +18,6 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/e
|
|
18
18
|
|
19
19
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
|
20
20
|
|
21
|
-
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/slicedToArray"));
|
22
|
-
|
23
21
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/objectWithoutProperties"));
|
24
22
|
|
25
23
|
var _react = _interopRequireWildcard(require("react"));
|
@@ -52,14 +50,8 @@ var OverlayPanel = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
52
50
|
onClose = _useOverlayPanelState.onClose;
|
53
51
|
|
54
52
|
var overlayPanelRef = (0, _react.useRef)();
|
55
|
-
|
56
|
-
var _useState = (0, _react.useState)(true),
|
57
|
-
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
58
|
-
contain = _useState2[0],
|
59
|
-
setIsContained = _useState2[1];
|
60
53
|
/* istanbul ignore next */
|
61
54
|
|
62
|
-
|
63
55
|
(0, _react.useImperativeHandle)(ref, function () {
|
64
56
|
return overlayPanelRef.current;
|
65
57
|
});
|
@@ -73,18 +65,12 @@ var OverlayPanel = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
73
65
|
e.stopPropagation();
|
74
66
|
|
75
67
|
if (e.key === 'Escape') {
|
76
|
-
|
68
|
+
onClose(state, triggerRef, onCloseProp);
|
77
69
|
}
|
78
70
|
};
|
79
71
|
|
80
|
-
(0, _react.useEffect)(function () {
|
81
|
-
if (!contain && onClose) {
|
82
|
-
onClose(state, triggerRef, onCloseProp);
|
83
|
-
}
|
84
|
-
}, [contain]);
|
85
72
|
return (0, _react2.jsx)(_focus.FocusScope, {
|
86
|
-
autoFocus: true
|
87
|
-
contain: contain
|
73
|
+
autoFocus: true
|
88
74
|
}, (0, _react2.jsx)(_Box["default"], (0, _extends2["default"])({
|
89
75
|
variant: "overlayPanel.overlayPanel",
|
90
76
|
ref: overlayPanelRef
|
@@ -79,6 +79,15 @@ test('onClose callback fires when provided', function () {
|
|
79
79
|
|
80
80
|
expect(onClose).toHaveBeenCalled();
|
81
81
|
});
|
82
|
+
test('custom classname can be passed', function () {
|
83
|
+
getComponent({
|
84
|
+
className: 'testing-class'
|
85
|
+
});
|
86
|
+
|
87
|
+
var overlayPanel = _testWrapper.screen.getByTestId(testId);
|
88
|
+
|
89
|
+
expect(overlayPanel).toHaveClass('testing-class');
|
90
|
+
});
|
82
91
|
test('neither callback fires when not provided', function () {
|
83
92
|
var onClose = jest.fn();
|
84
93
|
getComponent({
|
@@ -137,4 +146,39 @@ test('triggerRef.current.focus() fires when provided', function () {
|
|
137
146
|
});
|
138
147
|
|
139
148
|
expect(focusFunction).toHaveBeenCalled();
|
149
|
+
});
|
150
|
+
test('triggerRef.current.focus() does not fire when key other than esc is pressed', function () {
|
151
|
+
var onClose = jest.fn();
|
152
|
+
var focusFunction = jest.fn();
|
153
|
+
var state = {
|
154
|
+
close: onClose
|
155
|
+
};
|
156
|
+
var triggerRef = {
|
157
|
+
current: {
|
158
|
+
focus: focusFunction
|
159
|
+
}
|
160
|
+
};
|
161
|
+
getComponent({
|
162
|
+
state: state,
|
163
|
+
children: (0, _react2.jsx)("div", null, "Test"),
|
164
|
+
triggerRef: triggerRef
|
165
|
+
});
|
166
|
+
|
167
|
+
var overlayPanel = _testWrapper.screen.getByTestId(testId);
|
168
|
+
|
169
|
+
_testWrapper.fireEvent.keyDown(overlayPanel, {
|
170
|
+
key: 'KeyA',
|
171
|
+
code: 'KeyA',
|
172
|
+
keyCode: 65,
|
173
|
+
charCode: 65
|
174
|
+
});
|
175
|
+
|
176
|
+
_testWrapper.fireEvent.keyUp(overlayPanel, {
|
177
|
+
key: 'KeyA',
|
178
|
+
code: 'KeyA',
|
179
|
+
keyCode: 65,
|
180
|
+
charCode: 65
|
181
|
+
});
|
182
|
+
|
183
|
+
expect(focusFunction).not.toHaveBeenCalled();
|
140
184
|
});
|
@@ -10,7 +10,7 @@ _Object$defineProperty(exports, "__esModule", {
|
|
10
10
|
value: true
|
11
11
|
});
|
12
12
|
|
13
|
-
exports.ControlledWithDebouncedInput = exports.
|
13
|
+
exports.ControlledWithDebouncedInput = exports.NoClearButton = exports.CustomIcon = exports.Controlled = exports.Default = exports["default"] = void 0;
|
14
14
|
|
15
15
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/slicedToArray"));
|
16
16
|
|
@@ -137,20 +137,6 @@ var NoClearButton = function NoClearButton() {
|
|
137
137
|
|
138
138
|
exports.NoClearButton = NoClearButton;
|
139
139
|
|
140
|
-
var MaxLength = function MaxLength(args) {
|
141
|
-
return (0, _react2.jsx)(_index.SearchField, (0, _extends2["default"])({}, args, {
|
142
|
-
icon: _SearchIcon["default"],
|
143
|
-
"aria-label": "Search Groups",
|
144
|
-
onSubmit: function onSubmit(text) {
|
145
|
-
return alert(text);
|
146
|
-
} // eslint-disable-line no-alert
|
147
|
-
,
|
148
|
-
maxLength: 9
|
149
|
-
}));
|
150
|
-
};
|
151
|
-
|
152
|
-
exports.MaxLength = MaxLength;
|
153
|
-
|
154
140
|
var ControlledWithDebouncedInput = function ControlledWithDebouncedInput() {
|
155
141
|
var _useState3 = (0, _react.useState)(''),
|
156
142
|
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
@@ -10,7 +10,7 @@ _Object$defineProperty(exports, "__esModule", {
|
|
10
10
|
value: true
|
11
11
|
});
|
12
12
|
|
13
|
-
exports.MaxLength = exports.WithoutStatusIndicator = exports.
|
13
|
+
exports.MaxLength = exports.WithoutStatusIndicator = exports.Error = exports.Unresizable = exports.Rows = exports.Required = exports.ReadOnly = exports.Disabled = exports.Controlled = exports.FloatLabel = exports.Default = exports["default"] = void 0;
|
14
14
|
|
15
15
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/slicedToArray"));
|
16
16
|
|
@@ -20,8 +20,6 @@ var _react = _interopRequireWildcard(require("react"));
|
|
20
20
|
|
21
21
|
var _ = _interopRequireDefault(require("."));
|
22
22
|
|
23
|
-
var _Box = _interopRequireDefault(require("../Box"));
|
24
|
-
|
25
23
|
var _statuses = _interopRequireDefault(require("../../utils/devUtils/constants/statuses"));
|
26
24
|
|
27
25
|
var _constants = require("../Label/constants");
|
@@ -101,37 +99,6 @@ var FloatLabel = function FloatLabel() {
|
|
101
99
|
|
102
100
|
exports.FloatLabel = FloatLabel;
|
103
101
|
|
104
|
-
var LeftLabel = function LeftLabel() {
|
105
|
-
return (0, _react2.jsx)(_Box["default"], {
|
106
|
-
gap: "xl",
|
107
|
-
width: "fit-content"
|
108
|
-
}, (0, _react2.jsx)(_["default"], {
|
109
|
-
label: "Example label",
|
110
|
-
labelMode: "left"
|
111
|
-
}), (0, _react2.jsx)(_["default"], {
|
112
|
-
label: "Example label that is much longer than the previous one",
|
113
|
-
labelMode: "left",
|
114
|
-
status: "error"
|
115
|
-
}), (0, _react2.jsx)(_["default"], {
|
116
|
-
label: "Example label with set width",
|
117
|
-
labelMode: "left",
|
118
|
-
containerProps: {
|
119
|
-
sx: {
|
120
|
-
gridTemplateColumns: '120px auto'
|
121
|
-
}
|
122
|
-
}
|
123
|
-
}));
|
124
|
-
};
|
125
|
-
|
126
|
-
exports.LeftLabel = LeftLabel;
|
127
|
-
LeftLabel.parameters = {
|
128
|
-
docs: {
|
129
|
-
description: {
|
130
|
-
story: 'Users are able to override the default 40% column width when using left label by providing a new gridTemplatesColumn value, as shown in the example below.'
|
131
|
-
}
|
132
|
-
}
|
133
|
-
};
|
134
|
-
|
135
102
|
var Controlled = function Controlled() {
|
136
103
|
var _useState = (0, _react.useState)(),
|
137
104
|
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
@@ -206,26 +173,6 @@ var Error = function Error() {
|
|
206
173
|
|
207
174
|
exports.Error = Error;
|
208
175
|
|
209
|
-
var Success = function Success() {
|
210
|
-
return (0, _react2.jsx)(_["default"], {
|
211
|
-
helperText: "Here is some helpful text...",
|
212
|
-
label: "Example Label",
|
213
|
-
status: "success"
|
214
|
-
});
|
215
|
-
};
|
216
|
-
|
217
|
-
exports.Success = Success;
|
218
|
-
|
219
|
-
var Warning = function Warning() {
|
220
|
-
return (0, _react2.jsx)(_["default"], {
|
221
|
-
helperText: "Here is some helpful text...",
|
222
|
-
label: "Example Label",
|
223
|
-
status: "warning"
|
224
|
-
});
|
225
|
-
};
|
226
|
-
|
227
|
-
exports.Warning = Warning;
|
228
|
-
|
229
176
|
var WithoutStatusIndicator = function WithoutStatusIndicator() {
|
230
177
|
return (0, _react2.jsx)(_["default"], {
|
231
178
|
label: "Example Label",
|
@@ -10,7 +10,7 @@ _Object$defineProperty(exports, "__esModule", {
|
|
10
10
|
value: true
|
11
11
|
});
|
12
12
|
|
13
|
-
exports.MaxLength = exports.WithoutStatusIndicator = exports.WithHelpHint = exports.Warning = exports.Success = exports.Error = exports.DynamicRequired = exports.Required = exports.ReadOnly = exports.Disabled = exports.Password = exports.Controlled = exports.LeftLabel = exports.FloatLabel = exports.SmallVariant = exports.Default = exports["default"] = void 0;
|
13
|
+
exports.WithSlots = exports.MaxLength = exports.WithoutStatusIndicator = exports.WithHelpHint = exports.Warning = exports.Success = exports.Error = exports.DynamicRequired = exports.Required = exports.ReadOnly = exports.Disabled = exports.Password = exports.Controlled = exports.LeftLabel = exports.FloatLabel = exports.SmallVariant = exports.Default = exports["default"] = void 0;
|
14
14
|
|
15
15
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/slicedToArray"));
|
16
16
|
|
@@ -32,6 +32,10 @@ var _statuses = _interopRequireDefault(require("../../utils/devUtils/constants/s
|
|
32
32
|
|
33
33
|
var _Box = _interopRequireDefault(require("../Box"));
|
34
34
|
|
35
|
+
var _useCopyToClipboard = _interopRequireDefault(require("../../hooks/useCopyToClipboard"));
|
36
|
+
|
37
|
+
var _CopyButton = _interopRequireDefault(require("../CopyText/CopyButton"));
|
38
|
+
|
35
39
|
var _react2 = require("@emotion/react");
|
36
40
|
|
37
41
|
var _default = {
|
@@ -259,4 +263,77 @@ var MaxLength = function MaxLength() {
|
|
259
263
|
});
|
260
264
|
};
|
261
265
|
|
262
|
-
exports.MaxLength = MaxLength;
|
266
|
+
exports.MaxLength = MaxLength;
|
267
|
+
|
268
|
+
var WithSlots = function WithSlots() {
|
269
|
+
var _useState5 = (0, _react.useState)("[{ 'type': 'work', 'streetAddress': 'San Antonio MI 47096' },{ 'type': 'home', 'streetAddress': 'Santa Rosa MN 98804' }]"),
|
270
|
+
_useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
|
271
|
+
addressesValue = _useState6[0],
|
272
|
+
setAddressesValue = _useState6[1];
|
273
|
+
|
274
|
+
var _useState7 = (0, _react.useState)("[{ 'status': 'inactive', 'subject': 'example@pingidentity.com' },{ 'status': 'active', 'subject': 'john@pingidentity.com' }]"),
|
275
|
+
_useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
|
276
|
+
jsonValue = _useState8[0],
|
277
|
+
setJsonValue = _useState8[1];
|
278
|
+
|
279
|
+
var copyAddressesToClipboard = (0, _useCopyToClipboard["default"])(addressesValue);
|
280
|
+
var copyJsonToClipboard = (0, _useCopyToClipboard["default"])(jsonValue);
|
281
|
+
var buttonSx = {
|
282
|
+
position: 'absolute',
|
283
|
+
right: 0,
|
284
|
+
top: '5px'
|
285
|
+
};
|
286
|
+
var containerSx = {
|
287
|
+
sx: {
|
288
|
+
'& input': {
|
289
|
+
paddingRight: '40px'
|
290
|
+
}
|
291
|
+
}
|
292
|
+
};
|
293
|
+
return (0, _react2.jsx)(_react["default"].Fragment, null, (0, _react2.jsx)(_["default"], {
|
294
|
+
label: "Multiple Addresses",
|
295
|
+
labelMode: "float",
|
296
|
+
onChange: function onChange(e) {
|
297
|
+
return setAddressesValue(e.target.value);
|
298
|
+
},
|
299
|
+
value: addressesValue,
|
300
|
+
containerProps: containerSx,
|
301
|
+
slots: {
|
302
|
+
inContainer: (0, _react2.jsx)(_CopyButton["default"], {
|
303
|
+
onPress: copyAddressesToClipboard,
|
304
|
+
sx: buttonSx,
|
305
|
+
iconProps: {
|
306
|
+
sx: {
|
307
|
+
path: {
|
308
|
+
fill: 'active'
|
309
|
+
}
|
310
|
+
}
|
311
|
+
}
|
312
|
+
})
|
313
|
+
},
|
314
|
+
mb: 30
|
315
|
+
}), (0, _react2.jsx)(_["default"], {
|
316
|
+
label: "Example JSON",
|
317
|
+
labelMode: "float",
|
318
|
+
onChange: function onChange(e) {
|
319
|
+
return setJsonValue(e.target.value);
|
320
|
+
},
|
321
|
+
value: jsonValue,
|
322
|
+
containerProps: containerSx,
|
323
|
+
slots: {
|
324
|
+
inContainer: (0, _react2.jsx)(_CopyButton["default"], {
|
325
|
+
onPress: copyJsonToClipboard,
|
326
|
+
sx: buttonSx,
|
327
|
+
iconProps: {
|
328
|
+
sx: {
|
329
|
+
path: {
|
330
|
+
fill: 'active'
|
331
|
+
}
|
332
|
+
}
|
333
|
+
}
|
334
|
+
})
|
335
|
+
}
|
336
|
+
}));
|
337
|
+
};
|
338
|
+
|
339
|
+
exports.WithSlots = WithSlots;
|
@@ -17,8 +17,9 @@ var _react = require("react");
|
|
17
17
|
* e.g. "\`Component\` requires an aria-label."
|
18
18
|
*/
|
19
19
|
var useAriaLabelWarning = function useAriaLabelWarning(component, ariaLabel) {
|
20
|
+
var condition = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
|
20
21
|
(0, _react.useEffect)(function () {
|
21
|
-
if (process.env.NODE_ENV === 'development' && !ariaLabel) {
|
22
|
+
if (process.env.NODE_ENV === 'development' && condition && !ariaLabel) {
|
22
23
|
// eslint-disable-next-line no-console
|
23
24
|
console.warn("".concat(component, " requires an aria-label"), '\n', '\n', 'NOTE: This is a development-only warning and will not display in production.');
|
24
25
|
}
|