@pingux/astro 2.0.0-beta.0 → 2.0.0-rc.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 +60 -0
- package/README.md +5 -5
- package/lib/MIGRATION.md +100 -0
- package/lib/README.md +92 -0
- package/lib/cjs/components/Bracket/Bracket.stories.js +0 -1
- package/lib/cjs/components/Button/Button.js +3 -1
- package/lib/cjs/components/CollapsiblePanel/CollapsiblePanel.stories.js +8 -4
- package/lib/cjs/components/ComboBox/ComboBoxInput.js +12 -11
- package/lib/cjs/components/DataTable/DataTable.styles.js +2 -2
- package/lib/cjs/components/IconButton/IconButton.js +3 -1
- package/lib/cjs/components/ListItem/ListItem.stories.js +8 -3
- package/lib/cjs/components/ListViewItem/ListViewItem.styles.js +4 -4
- package/lib/cjs/components/MultivaluesField/MultivaluesField.js +1 -1
- package/lib/cjs/components/NumberField/NumberField.js +2 -2
- package/lib/cjs/components/NumberField/NumberField.test.js +3 -3
- package/lib/cjs/components/OverlayPanel/OverlayPanel.stories.js +23 -7
- package/lib/cjs/components/OverlayPanel/OverlayPanel.styles.js +1 -0
- package/lib/cjs/components/PasswordField/PasswordField.js +7 -4
- package/lib/cjs/components/PasswordField/PasswordField.test.js +12 -0
- package/lib/cjs/components/PopoverMenu/PopoverMenu.test.js +10 -0
- package/lib/cjs/components/SearchField/Search.styles.js +3 -0
- package/lib/cjs/{styles/theme-ui → docs/theme}/ThemeView.js +1 -1
- package/lib/cjs/hooks/index.js +7 -0
- package/lib/cjs/patterns/AttributeMappingDisplayViewPattern.stories.hidden.js +2 -2
- package/lib/cjs/patterns/AttributeMappingEditViewPattern.stories.hidden.js +3 -3
- package/lib/cjs/recipes/CountryPicker.stories.js +2 -2
- package/lib/cjs/recipes/LinkedListView.stories.js +2 -2
- package/lib/cjs/recipes/PageHeader.stories.js +16 -32
- package/lib/cjs/recipes/RadioButtonsWithLinks.stories.js +1 -1
- package/lib/cjs/styles/themeOverrides/uiLibraryOverride.js +18 -2
- package/lib/cjs/styles/themeOverrides/withUiLibraryCss.js +5 -3
- package/lib/cjs/styles/themes/end-user/end-user.js +15 -14
- package/lib/components/Bracket/Bracket.stories.js +0 -1
- package/lib/components/Button/Button.js +4 -2
- package/lib/components/CollapsiblePanel/CollapsiblePanel.stories.js +8 -4
- package/lib/components/ComboBox/ComboBoxInput.js +12 -11
- package/lib/components/DataTable/DataTable.styles.js +2 -2
- package/lib/components/IconButton/IconButton.js +4 -2
- package/lib/components/ListItem/ListItem.stories.js +8 -3
- package/lib/components/ListViewItem/ListViewItem.styles.js +4 -4
- package/lib/components/MultivaluesField/MultivaluesField.js +1 -1
- package/lib/components/NumberField/NumberField.js +2 -2
- package/lib/components/NumberField/NumberField.test.js +3 -3
- package/lib/components/OverlayPanel/OverlayPanel.stories.js +20 -4
- package/lib/components/OverlayPanel/OverlayPanel.styles.js +1 -0
- package/lib/components/PasswordField/PasswordField.js +7 -4
- package/lib/components/PasswordField/PasswordField.test.js +12 -0
- package/lib/components/PopoverMenu/PopoverMenu.test.js +10 -0
- package/lib/components/SearchField/Search.styles.js +3 -0
- package/lib/{styles/theme-ui → docs/theme}/ThemeView.js +1 -1
- package/lib/hooks/index.js +1 -0
- package/lib/patterns/AttributeMappingDisplayViewPattern.stories.hidden.js +2 -2
- package/lib/patterns/AttributeMappingEditViewPattern.stories.hidden.js +3 -3
- package/lib/recipes/CountryPicker.stories.js +2 -2
- package/lib/recipes/LinkedListView.stories.js +2 -2
- package/lib/recipes/PageHeader.stories.js +17 -33
- package/lib/recipes/RadioButtonsWithLinks.stories.js +1 -1
- package/lib/styles/themeOverrides/uiLibraryOverride.js +18 -2
- package/lib/styles/themeOverrides/withUiLibraryCss.js +5 -2
- package/lib/styles/themes/end-user/end-user.js +15 -14
- package/package.json +4 -5
- package/lib/cjs/docs/theme/ThemeDocumentation.js +0 -16
- package/lib/docs/theme/ThemeDocumentation.js +0 -7
@@ -35,7 +35,7 @@ var _statuses = _interopRequireDefault(require("../../utils/devUtils/constants/s
|
|
35
35
|
var _ariaAttributes = require("../../utils/devUtils/props/ariaAttributes");
|
36
36
|
var _fieldAttributes = require("../../utils/devUtils/props/fieldAttributes");
|
37
37
|
var _react2 = require("@emotion/react");
|
38
|
-
var _excluded = ["helperText", "isVisible", "onVisibleChange", "requirements", "slots", "status", "viewHiddenIconTestId", "viewIconTestId"];
|
38
|
+
var _excluded = ["helperText", "isVisible", "onVisibleChange", "requirements", "requirementsListProps", "slots", "status", "viewHiddenIconTestId", "viewIconTestId"];
|
39
39
|
function _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== "function") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
40
40
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
41
41
|
function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty2(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
@@ -53,6 +53,7 @@ var PasswordField = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
53
53
|
isVisibleProp = props.isVisible,
|
54
54
|
onVisibleChangeProp = props.onVisibleChange,
|
55
55
|
requirements = props.requirements,
|
56
|
+
requirementsListProps = props.requirementsListProps,
|
56
57
|
slots = props.slots,
|
57
58
|
status = props.status,
|
58
59
|
viewHiddenIconTestId = props.viewHiddenIconTestId,
|
@@ -169,9 +170,9 @@ var PasswordField = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
169
170
|
placement: placement,
|
170
171
|
ref: popoverRef,
|
171
172
|
style: style
|
172
|
-
}, (0, _react2.jsx)(_.RequirementsList, {
|
173
|
+
}, (0, _react2.jsx)(_.RequirementsList, (0, _extends2["default"])({
|
173
174
|
requirements: requirements
|
174
|
-
})));
|
175
|
+
}, requirementsListProps))));
|
175
176
|
});
|
176
177
|
PasswordField.propTypes = _objectSpread(_objectSpread({
|
177
178
|
/** The rendered label for the field. */
|
@@ -240,7 +241,9 @@ PasswordField.propTypes = _objectSpread(_objectSpread({
|
|
240
241
|
requirements: _propTypes["default"].arrayOf(_propTypes["default"].shape({
|
241
242
|
name: _propTypes["default"].string.isRequired,
|
242
243
|
status: _propTypes["default"].oneOf(['default', 'success', 'warning', 'error'])
|
243
|
-
}))
|
244
|
+
})),
|
245
|
+
/** Props object that is spread to the requirements list. */
|
246
|
+
requirementsListProps: _propTypes["default"].shape({})
|
244
247
|
}, _ariaAttributes.ariaAttributesBasePropTypes), _fieldAttributes.inputFieldAttributesBasePropTypes);
|
245
248
|
PasswordField.defaultProps = {
|
246
249
|
hasAutoFocus: false,
|
@@ -192,6 +192,18 @@ test('if all requirements are successful, do not render popover', function () {
|
|
192
192
|
_userEvent["default"].click(input);
|
193
193
|
expect(_react3.screen.queryByRole('presentation')).not.toBeInTheDocument();
|
194
194
|
});
|
195
|
+
test('passing in props to the requirements list works', function () {
|
196
|
+
var requirementsListProps = {
|
197
|
+
'data-testid': 'my-custom-id'
|
198
|
+
};
|
199
|
+
getComponent({
|
200
|
+
requirements: defaultRequirements,
|
201
|
+
requirementsListProps: requirementsListProps
|
202
|
+
});
|
203
|
+
expect(_react3.screen.queryByTestId(requirementsListProps['data-testid'])).not.toBeInTheDocument();
|
204
|
+
_userEvent["default"].click(_react3.screen.getByRole('textbox'));
|
205
|
+
expect(_react3.screen.queryByTestId(requirementsListProps['data-testid'])).toBeInTheDocument();
|
206
|
+
});
|
195
207
|
test('password field with helper text', function () {
|
196
208
|
var helperText = 'helper text';
|
197
209
|
getComponent({
|
@@ -156,4 +156,14 @@ test('two menus can not be open at the same time', function () {
|
|
156
156
|
expect(_testWrapper.screen.queryByRole('menuitem', {
|
157
157
|
name: 'C'
|
158
158
|
})).toBeInTheDocument();
|
159
|
+
});
|
160
|
+
test('holds a pressed state for menu trigger when isOpen is true', function () {
|
161
|
+
getComponent();
|
162
|
+
var button = _testWrapper.screen.getByRole('button');
|
163
|
+
expect(_testWrapper.screen.queryByRole('presentation')).not.toBeInTheDocument();
|
164
|
+
expect(_testWrapper.screen.queryByRole('menu')).not.toBeInTheDocument();
|
165
|
+
expect(button).not.toHaveClass('is-pressed');
|
166
|
+
_userEvent["default"].click(button);
|
167
|
+
expect(_testWrapper.screen.queryByRole('menu')).toBeInTheDocument();
|
168
|
+
expect(button).toHaveClass('is-pressed');
|
159
169
|
});
|
@@ -8,7 +8,7 @@ _Object$defineProperty(exports, "__esModule", {
|
|
8
8
|
exports["default"] = void 0;
|
9
9
|
var _react = _interopRequireDefault(require("react"));
|
10
10
|
var _reactJsonTree = require("react-json-tree");
|
11
|
-
var _theme = _interopRequireDefault(require("
|
11
|
+
var _theme = _interopRequireDefault(require("../../styles/theme"));
|
12
12
|
var _react2 = require("@emotion/react");
|
13
13
|
var _default = function _default() {
|
14
14
|
return (0, _react2.jsx)(_reactJsonTree.JSONTree, {
|
package/lib/cjs/hooks/index.js
CHANGED
@@ -23,6 +23,12 @@ _Object$defineProperty(exports, "useComponentToggle", {
|
|
23
23
|
return _useComponentToggle["default"];
|
24
24
|
}
|
25
25
|
});
|
26
|
+
_Object$defineProperty(exports, "useCopyToClipboard", {
|
27
|
+
enumerable: true,
|
28
|
+
get: function get() {
|
29
|
+
return _useCopyToClipboard["default"];
|
30
|
+
}
|
31
|
+
});
|
26
32
|
_Object$defineProperty(exports, "useDebounce", {
|
27
33
|
enumerable: true,
|
28
34
|
get: function get() {
|
@@ -110,6 +116,7 @@ _Object$defineProperty(exports, "useTShirtSize", {
|
|
110
116
|
var _useAriaLabelWarning = _interopRequireDefault(require("./useAriaLabelWarning"));
|
111
117
|
var _useColumnStyles = _interopRequireDefault(require("./useColumnStyles"));
|
112
118
|
var _useComponentToggle = _interopRequireDefault(require("./useComponentToggle"));
|
119
|
+
var _useCopyToClipboard = _interopRequireDefault(require("./useCopyToClipboard"));
|
113
120
|
var _useDebounce = _interopRequireDefault(require("./useDebounce"));
|
114
121
|
var _useDeprecationWarning = _interopRequireDefault(require("./useDeprecationWarning"));
|
115
122
|
var _useFallbackImage = _interopRequireDefault(require("./useFallbackImage"));
|
@@ -77,7 +77,7 @@ var sx = {
|
|
77
77
|
mb: 'auto',
|
78
78
|
width: '21px'
|
79
79
|
},
|
80
|
-
|
80
|
+
badgeStyle: {
|
81
81
|
width: '65px',
|
82
82
|
height: '22px',
|
83
83
|
minWidth: 'fit-content',
|
@@ -141,7 +141,7 @@ var Default = function Default() {
|
|
141
141
|
}), hasBadge && (0, _react2.jsx)(_index.Badge, {
|
142
142
|
label: "Required",
|
143
143
|
textColor: "#253746",
|
144
|
-
sx: sx.
|
144
|
+
sx: sx.badgeStyle
|
145
145
|
}));
|
146
146
|
})));
|
147
147
|
};
|
@@ -23,17 +23,17 @@ var editFieldValues = [{
|
|
23
23
|
}, {
|
24
24
|
field1: 'firstName',
|
25
25
|
field2: 'Given Name',
|
26
|
-
|
26
|
+
hasChip: false,
|
27
27
|
key: 2
|
28
28
|
}, {
|
29
29
|
field1: 'lastName',
|
30
30
|
field2: 'Family Name',
|
31
|
-
|
31
|
+
hasChip: false,
|
32
32
|
key: 3
|
33
33
|
}, {
|
34
34
|
field1: 'population',
|
35
35
|
field2: 'Population',
|
36
|
-
|
36
|
+
hasChip: false,
|
37
37
|
key: 4
|
38
38
|
}];
|
39
39
|
var sx = {
|
@@ -40,7 +40,7 @@ var sx = {
|
|
40
40
|
comboBoxFieldWrapperClose: {
|
41
41
|
position: 'absolute',
|
42
42
|
transition: '0.2s width ease',
|
43
|
-
|
43
|
+
width: '110px'
|
44
44
|
},
|
45
45
|
inputWrapper: {
|
46
46
|
width: '100%',
|
@@ -106,7 +106,7 @@ var Default = function Default() {
|
|
106
106
|
width: "100%",
|
107
107
|
isOpen: isOpen,
|
108
108
|
onOpenChange: setIsOpen,
|
109
|
-
|
109
|
+
wrapperProps: {
|
110
110
|
sx: isOpen ? sx.comboBoxFieldWrapperOpen : sx.comboBoxFieldWrapperClose
|
111
111
|
},
|
112
112
|
controlProps: {
|
@@ -127,7 +127,7 @@ var Default = function Default(_ref) {
|
|
127
127
|
var color = '#CACED3';
|
128
128
|
return (0, _react2.jsx)(_index.Box, {
|
129
129
|
sx: {
|
130
|
-
width: '
|
130
|
+
width: '15px',
|
131
131
|
position: 'relative'
|
132
132
|
}
|
133
133
|
}, (0, _react2.jsx)(_index.Box, {
|
@@ -185,7 +185,7 @@ var Default = function Default(_ref) {
|
|
185
185
|
position: 'absolute',
|
186
186
|
bottom: 0,
|
187
187
|
left: 12,
|
188
|
-
top:
|
188
|
+
top: 50
|
189
189
|
}
|
190
190
|
}, (0, _react2.jsx)("svg", {
|
191
191
|
xmlns: "http://www.w3.org/2000/svg",
|
@@ -15,49 +15,33 @@ var _default = {
|
|
15
15
|
};
|
16
16
|
exports["default"] = _default;
|
17
17
|
var Default = function Default() {
|
18
|
-
|
19
|
-
var description = 'The description of the page. The description of the page. The description of the page. The description of the page. The description of the page. The description of the page. The description of the page. The description of the page. The description of the page.';
|
20
|
-
return (0, _react2.jsx)(_index.Box, null, (0, _react2.jsx)(_index.Box, null, (0, _react2.jsx)(_index.Box, {
|
18
|
+
return (0, _react2.jsx)(_react["default"].Fragment, null, (0, _react2.jsx)(_index.Box, {
|
21
19
|
align: "center",
|
22
20
|
isRow: true,
|
23
21
|
mb: "xs",
|
24
22
|
role: "heading",
|
25
23
|
"aria-level": "1"
|
26
24
|
}, (0, _react2.jsx)(_index.Text, {
|
27
|
-
|
28
|
-
fontWeight: 3
|
29
|
-
|
30
|
-
|
31
|
-
ml: "sm"
|
32
|
-
}, (0, _react2.jsx)(_index.Icon, {
|
33
|
-
icon: _PlusIcon["default"],
|
34
|
-
color: "white",
|
35
|
-
size: 13,
|
36
|
-
mr: "4px"
|
37
|
-
}), "\xA0", "Add")), (0, _react2.jsx)(_index.Text, {
|
38
|
-
variant: "bodyWeak"
|
39
|
-
}, description)), (0, _react2.jsx)(_index.Box, {
|
40
|
-
mt: "xl"
|
41
|
-
}, (0, _react2.jsx)(_index.Box, {
|
42
|
-
align: "center",
|
43
|
-
isRow: true,
|
44
|
-
mb: "xs",
|
45
|
-
role: "heading",
|
46
|
-
"aria-level": "1"
|
47
|
-
}, (0, _react2.jsx)(_index.Text, {
|
48
|
-
variant: "title",
|
49
|
-
fontWeight: 3
|
50
|
-
}, heading), (0, _react2.jsx)(_index.IconButton, {
|
25
|
+
fontSize: "xx",
|
26
|
+
fontWeight: "3",
|
27
|
+
fontColor: "text.primary"
|
28
|
+
}, "Title of the Page"), (0, _react2.jsx)(_index.IconButton, {
|
51
29
|
"aria-label": "icon button",
|
52
30
|
ml: "sm",
|
53
|
-
mt: "3px",
|
54
31
|
variant: "inverted"
|
55
32
|
}, (0, _react2.jsx)(_index.Icon, {
|
56
33
|
icon: _PlusIcon["default"],
|
57
|
-
|
58
|
-
size: "xs"
|
34
|
+
size: "sm"
|
59
35
|
}))), (0, _react2.jsx)(_index.Text, {
|
60
|
-
|
61
|
-
|
36
|
+
fontSize: "sm",
|
37
|
+
color: "text.secondary",
|
38
|
+
fontWeight: "0",
|
39
|
+
width: "800px"
|
40
|
+
}, "The description of the page. The description of the page. The description of the page. The description of the page.The description of the page. The description of the page. The description of the page. The description of the page. The description of the page.\xA0", (0, _react2.jsx)(_index.Link, {
|
41
|
+
href: "https://uilibrary.ping-eng.com/",
|
42
|
+
sx: {
|
43
|
+
fontSize: 'sm'
|
44
|
+
}
|
45
|
+
}, "Learn more")));
|
62
46
|
};
|
63
47
|
exports.Default = Default;
|
@@ -87,7 +87,7 @@ var Default = function Default() {
|
|
87
87
|
}
|
88
88
|
}, "Permissions"), (0, _react2.jsx)(_index.IconButton, {
|
89
89
|
onPress: onPress,
|
90
|
-
"aria-label": "close
|
90
|
+
"aria-label": "close"
|
91
91
|
}, (0, _react2.jsx)(_index.Icon, {
|
92
92
|
icon: _CloseIcon["default"],
|
93
93
|
size: "sm"
|
@@ -34,6 +34,17 @@ var buttons = {
|
|
34
34
|
inline: {
|
35
35
|
'&:not(.disabled):hover': _objectSpread(_objectSpread({}, _theme["default"].buttons.inline), _theme["default"].buttons.defaultHover)
|
36
36
|
},
|
37
|
+
inlinePrimary: {
|
38
|
+
'&:not(.disabled):hover': _objectSpread(_objectSpread({}, _theme["default"].buttons.inlinePrimary), _theme["default"].buttons.defaultHover)
|
39
|
+
},
|
40
|
+
text: {
|
41
|
+
'&:not(.disabled):hover': _objectSpread(_objectSpread({}, _theme["default"].buttons.text), _theme["default"].buttons.defaultHover)
|
42
|
+
},
|
43
|
+
inverted: _objectSpread(_objectSpread({}, _theme["default"].buttons.inverted), {}, {
|
44
|
+
':focus': {
|
45
|
+
border: 'none'
|
46
|
+
}
|
47
|
+
}),
|
37
48
|
primary: {
|
38
49
|
'&:hover': _objectSpread({}, _theme["default"].buttons.primary)
|
39
50
|
},
|
@@ -79,11 +90,16 @@ var forms = {
|
|
79
90
|
wrapper: {
|
80
91
|
'& input[type=search]': _objectSpread(_objectSpread({}, _theme["default"].text.inputValue), {}, {
|
81
92
|
borderColor: 'neutral.80',
|
93
|
+
fontSize: '15px',
|
82
94
|
bg: 'white',
|
83
95
|
'::placeholder': _objectSpread(_objectSpread({}, _theme["default"].text.placeholder), {}, {
|
84
|
-
fontStyle: 'unset'
|
96
|
+
fontStyle: 'unset',
|
97
|
+
fontSize: '15px'
|
85
98
|
})
|
86
|
-
})
|
99
|
+
}),
|
100
|
+
'& input[type=search]:focus': {
|
101
|
+
borderColor: 'neutral.80'
|
102
|
+
}
|
87
103
|
}
|
88
104
|
},
|
89
105
|
label: {
|
@@ -11,9 +11,10 @@ _Object$defineProperty(exports, "__esModule", {
|
|
11
11
|
exports["default"] = void 0;
|
12
12
|
var _forEach = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/for-each"));
|
13
13
|
var _react = _interopRequireWildcard(require("react"));
|
14
|
+
var _react2 = require("@emotion/react");
|
14
15
|
var _themeUi = require("theme-ui");
|
16
|
+
var _theme = _interopRequireDefault(require("../theme"));
|
15
17
|
var _uiLibraryOverride = _interopRequireDefault(require("./uiLibraryOverride"));
|
16
|
-
var _react2 = require("@emotion/react");
|
17
18
|
function _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== "function") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
18
19
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
19
20
|
var UI_LIBRARY_CSS_LINK = 'https://assets.pingone.com/ux/ui-library/5.0.2/css/ui-library.css';
|
@@ -31,8 +32,9 @@ var WithUiLibraryCss = function WithUiLibraryCss(Story) {
|
|
31
32
|
});
|
32
33
|
};
|
33
34
|
}, []);
|
34
|
-
|
35
|
-
|
35
|
+
var theme = (0, _themeUi.merge)(_theme["default"], _uiLibraryOverride["default"]);
|
36
|
+
return (0, _react2.jsx)(_react2.ThemeProvider, {
|
37
|
+
theme: theme
|
36
38
|
}, (0, _react2.jsx)(Story, null));
|
37
39
|
};
|
38
40
|
var _default = WithUiLibraryCss;
|
@@ -107,7 +107,7 @@ var buttonBase = _objectSpread(_objectSpread({}, buttonText), {}, {
|
|
107
107
|
},
|
108
108
|
'&.is-focused': _objectSpread({}, buttonFocus)
|
109
109
|
});
|
110
|
-
var
|
110
|
+
var cards = {
|
111
111
|
bg: 'cardBg',
|
112
112
|
boxShadow: 'overlay',
|
113
113
|
boxSizing: 'border-box',
|
@@ -152,16 +152,17 @@ var wordWrap = {
|
|
152
152
|
wordWrap: 'break-word',
|
153
153
|
wordBreak: 'break-word'
|
154
154
|
};
|
155
|
-
var fieldHelperText =
|
156
|
-
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
|
161
|
-
|
162
|
-
|
163
|
-
|
164
|
-
})
|
155
|
+
var fieldHelperText = {
|
156
|
+
title: _objectSpread(_objectSpread(_objectSpread({}, base), wordWrap), {}, {
|
157
|
+
fontSize: 'sm',
|
158
|
+
'&.is-default': {
|
159
|
+
color: 'text.secondary'
|
160
|
+
},
|
161
|
+
'&.is-error': {
|
162
|
+
color: 'critical.dark'
|
163
|
+
}
|
164
|
+
})
|
165
|
+
};
|
165
166
|
var text = {
|
166
167
|
base: {
|
167
168
|
color: 'neutral.20',
|
@@ -188,8 +189,7 @@ var text = {
|
|
188
189
|
fontSize: 15,
|
189
190
|
fontWeight: 500,
|
190
191
|
fontFamily: 'proxima-nova, sans-serif'
|
191
|
-
}
|
192
|
-
fieldHelperText: fieldHelperText
|
192
|
+
}
|
193
193
|
};
|
194
194
|
var activeFloatLabel = {
|
195
195
|
fontWeight: 0,
|
@@ -250,8 +250,9 @@ var _default = {
|
|
250
250
|
input: input,
|
251
251
|
label: label
|
252
252
|
},
|
253
|
+
cards: cards,
|
253
254
|
variants: {
|
254
|
-
|
255
|
+
fieldHelperText: fieldHelperText
|
255
256
|
}
|
256
257
|
};
|
257
258
|
exports["default"] = _default;
|
@@ -14,7 +14,7 @@ function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (
|
|
14
14
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty(_context = ownKeys(Object(source), !0)).call(_context, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : _forEachInstanceProperty(_context2 = ownKeys(Object(source))).call(_context2, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
|
15
15
|
import React, { forwardRef, useImperativeHandle, useRef } from 'react';
|
16
16
|
import { mergeProps, useButton, useFocusRing } from 'react-aria';
|
17
|
-
import { Pressable, useHover } from '@react-aria/interactions';
|
17
|
+
import { Pressable, useHover, usePress } from '@react-aria/interactions';
|
18
18
|
import PropTypes from 'prop-types';
|
19
19
|
import { Button as ThemeUIButton } from 'theme-ui';
|
20
20
|
import { useAriaLabelWarning, usePropWarning, useStatusClasses } from '../../hooks';
|
@@ -45,6 +45,8 @@ var Button = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
45
45
|
var _useFocusRing = useFocusRing(),
|
46
46
|
isFocusVisible = _useFocusRing.isFocusVisible,
|
47
47
|
focusProps = _useFocusRing.focusProps;
|
48
|
+
var _usePress = usePress(buttonRef),
|
49
|
+
isPressedFromContext = _usePress.isPressed;
|
48
50
|
var _useButton = useButton(_objectSpread({
|
49
51
|
elementType: 'button'
|
50
52
|
}, props), buttonRef),
|
@@ -55,7 +57,7 @@ var Button = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
55
57
|
isHovered = _useHover.isHovered;
|
56
58
|
var _useStatusClasses = useStatusClasses(className, {
|
57
59
|
isHovered: isHovered,
|
58
|
-
isPressed: isPressed,
|
60
|
+
isPressed: isPressed || isPressedFromContext,
|
59
61
|
isFocused: isFocusVisible,
|
60
62
|
isDisabled: isDisabled
|
61
63
|
}),
|
@@ -194,13 +194,17 @@ export var CollapsiblePanelWithBadge = function CollapsiblePanelWithBadge(args)
|
|
194
194
|
}), ___EmotionJSX(Breadcrumbs, {
|
195
195
|
icon: ChevronRightIcon
|
196
196
|
}, ___EmotionJSX(Item, {
|
197
|
+
"aria-label": "Ed Nepomuceno",
|
198
|
+
"data-id": "home",
|
199
|
+
href: "https://www.pingidentity.com",
|
197
200
|
key: "home",
|
198
|
-
variant: "link"
|
199
|
-
"data-id": "home"
|
201
|
+
variant: "buttons.link"
|
200
202
|
}, "Ed Nepomuceno"), ___EmotionJSX(Item, {
|
203
|
+
"aria-label": "edit groups",
|
204
|
+
"data-id": "editGroups",
|
205
|
+
href: "https://www.pingidentity.com",
|
201
206
|
key: "editGroups",
|
202
|
-
variant: "
|
203
|
-
"data-id": "editGroups"
|
207
|
+
variant: "buttons.link"
|
204
208
|
}, "Edit Groups"))), ___EmotionJSX(Box, {
|
205
209
|
isRow: true
|
206
210
|
}, ___EmotionJSX(IconButton, {
|
@@ -47,22 +47,19 @@ var ComboBoxInput = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
47
47
|
onSelectionChange = props.onSelectionChange,
|
48
48
|
wrapperProps = props.wrapperProps,
|
49
49
|
others = _objectWithoutProperties(props, _excluded);
|
50
|
-
var _useHover = useHover({}),
|
51
|
-
hoverProps = _useHover.hoverProps,
|
52
|
-
isHovered = _useHover.isHovered;
|
53
50
|
var textFieldProps = _objectSpread({
|
54
51
|
isDisabled: isDisabled,
|
55
52
|
isReadOnly: isReadOnly,
|
56
|
-
containerProps:
|
57
|
-
sx: style,
|
58
|
-
variant: 'forms.comboBox.container'
|
59
|
-
}, hoverProps), containerProps)
|
53
|
+
containerProps: containerProps
|
60
54
|
}, mergeProps(inputProps, others));
|
61
55
|
|
62
56
|
// istanbul ignore next
|
63
57
|
useImperativeHandle(ref, function () {
|
64
58
|
return inputRef.current;
|
65
59
|
});
|
60
|
+
var _useHover = useHover({}),
|
61
|
+
hoverProps = _useHover.hoverProps,
|
62
|
+
isHovered = _useHover.isHovered;
|
66
63
|
|
67
64
|
// START - minimum delay time for loading indicator = 500ms
|
68
65
|
var _useState = useState(false),
|
@@ -127,10 +124,14 @@ var ComboBoxInput = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
127
124
|
focusClass: "is-focused",
|
128
125
|
focusRingClass: "focus-ring",
|
129
126
|
autoFocus: hasAutoFocus
|
130
|
-
}, ___EmotionJSX(
|
131
|
-
|
127
|
+
}, ___EmotionJSX(Box, _extends({
|
128
|
+
isRow: true,
|
129
|
+
style: style,
|
130
|
+
variant: "forms.comboBox.container"
|
131
|
+
}, hoverProps, wrapperProps), ___EmotionJSX(TextField, _extends({}, textFieldProps, {
|
132
|
+
wrapperProps: {
|
132
133
|
ref: inputWrapperRef
|
133
|
-
},
|
134
|
+
},
|
134
135
|
controlProps: _objectSpread({
|
135
136
|
variant: 'forms.comboBox.input'
|
136
137
|
}, controlProps),
|
@@ -141,7 +142,7 @@ var ComboBoxInput = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
141
142
|
slots: {
|
142
143
|
inContainer: button
|
143
144
|
}
|
144
|
-
})));
|
145
|
+
}))));
|
145
146
|
});
|
146
147
|
ComboBoxInput.propTypes = _objectSpread({
|
147
148
|
containerProps: PropTypes.shape({}),
|
@@ -35,12 +35,12 @@ var tableCell = _objectSpread(_objectSpread({}, text.tableData), {}, {
|
|
35
35
|
});
|
36
36
|
var tableCellContents = {
|
37
37
|
flex: '1 1 0%',
|
38
|
-
minWidth: '0px',
|
39
38
|
overflow: 'hidden',
|
40
39
|
whiteSpace: 'nowrap',
|
41
40
|
textOverflow: 'ellipsis',
|
42
41
|
fontWeight: '400',
|
43
|
-
justifyContent: 'center'
|
42
|
+
justifyContent: 'center',
|
43
|
+
maxWidth: '100%'
|
44
44
|
};
|
45
45
|
var tableRow = {
|
46
46
|
position: 'relative',
|
@@ -14,7 +14,7 @@ function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (
|
|
14
14
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty(_context = ownKeys(Object(source), !0)).call(_context, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : _forEachInstanceProperty(_context2 = ownKeys(Object(source))).call(_context2, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
|
15
15
|
import React, { forwardRef, useContext, useImperativeHandle, useRef } from 'react';
|
16
16
|
import { mergeProps, useButton, useFocusRing } from 'react-aria';
|
17
|
-
import { Pressable, useHover } from '@react-aria/interactions';
|
17
|
+
import { Pressable, useHover, usePress } from '@react-aria/interactions';
|
18
18
|
import PropTypes from 'prop-types';
|
19
19
|
import { IconButton as ThemeUIIconButton } from 'theme-ui';
|
20
20
|
import { BadgeContext } from '../../context/BadgeContext';
|
@@ -47,6 +47,8 @@ var IconButton = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
47
47
|
useImperativeHandle(ref, function () {
|
48
48
|
return buttonRef.current;
|
49
49
|
});
|
50
|
+
var _usePress = usePress(buttonRef),
|
51
|
+
isPressedFromContext = _usePress.isPressed;
|
50
52
|
var _useButton = useButton(_objectSpread({}, props), buttonRef),
|
51
53
|
buttonProps = _useButton.buttonProps,
|
52
54
|
isPressed = _useButton.isPressed;
|
@@ -60,7 +62,7 @@ var IconButton = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
60
62
|
focusProps = _useFocusRing.focusProps;
|
61
63
|
var _useStatusClasses = useStatusClasses(className, {
|
62
64
|
isHovered: isHovered,
|
63
|
-
isPressed: isPressed,
|
65
|
+
isPressed: isPressed || isPressedFromContext,
|
64
66
|
isFocused: isFocusVisible,
|
65
67
|
isDisabled: isDisabled
|
66
68
|
}),
|
@@ -48,7 +48,9 @@ export var Default = function Default(args) {
|
|
48
48
|
}, "Fons Vernall")), ___EmotionJSX(Box, {
|
49
49
|
isRow: true,
|
50
50
|
alignSelf: "center"
|
51
|
-
}, ___EmotionJSX(IconButton,
|
51
|
+
}, ___EmotionJSX(IconButton, {
|
52
|
+
"aria-label": "filter"
|
53
|
+
}, ___EmotionJSX(Icon, {
|
52
54
|
icon: MoreVertIcon,
|
53
55
|
size: "sm",
|
54
56
|
color: "neutral.20"
|
@@ -77,7 +79,9 @@ export var WithSubtitle = function WithSubtitle(args) {
|
|
77
79
|
}, "fvernall0@google.it"))), ___EmotionJSX(Box, {
|
78
80
|
isRow: true,
|
79
81
|
alignSelf: "center"
|
80
|
-
}, ___EmotionJSX(IconButton,
|
82
|
+
}, ___EmotionJSX(IconButton, {
|
83
|
+
"aria-label": "filter"
|
84
|
+
}, ___EmotionJSX(Icon, {
|
81
85
|
icon: MoreVertIcon,
|
82
86
|
size: "sm",
|
83
87
|
color: "neutral.20"
|
@@ -126,7 +130,8 @@ export var WithHoverHandlers = function WithHoverHandlers(args) {
|
|
126
130
|
isRow: true,
|
127
131
|
alignSelf: "center"
|
128
132
|
}, ___EmotionJSX(IconButton, {
|
129
|
-
size: 26
|
133
|
+
size: 26,
|
134
|
+
"aria-label": "filter"
|
130
135
|
}, ___EmotionJSX(Icon, {
|
131
136
|
icon: MoreVertIcon,
|
132
137
|
size: 20,
|
@@ -17,11 +17,11 @@ var container = {
|
|
17
17
|
justifyContent: 'center',
|
18
18
|
bg: 'accent.99',
|
19
19
|
outline: 'none',
|
20
|
-
'& li': {
|
21
|
-
bg: 'white'
|
22
|
-
},
|
23
20
|
'&.is-selected': {
|
24
|
-
bg: 'white'
|
21
|
+
bg: 'white',
|
22
|
+
'& li': {
|
23
|
+
bg: 'white'
|
24
|
+
}
|
25
25
|
},
|
26
26
|
'&.is-hovered': {
|
27
27
|
bg: 'white',
|
@@ -324,7 +324,7 @@ var MultivaluesField = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
324
324
|
label: item.name,
|
325
325
|
slots: item.slots
|
326
326
|
}, item.badgeProps), ___EmotionJSX(IconButton, _extends({
|
327
|
-
"aria-label": "delete",
|
327
|
+
"aria-label": "delete ".concat(item.name),
|
328
328
|
onPress: function onPress() {
|
329
329
|
return deleteItem(item.key);
|
330
330
|
},
|
@@ -67,14 +67,14 @@ var NumberField = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
67
67
|
variant: "forms.numberField.arrows"
|
68
68
|
}, ___EmotionJSX(IconButton, _extends({}, incrementButtonProps, {
|
69
69
|
ref: decRef,
|
70
|
-
tabIndex: "
|
70
|
+
tabIndex: "0",
|
71
71
|
p: 0
|
72
72
|
}), ___EmotionJSX(Icon, {
|
73
73
|
icon: MenuUp,
|
74
74
|
size: 18
|
75
75
|
})), ___EmotionJSX(IconButton, _extends({}, decrementButtonProps, {
|
76
76
|
ref: incrRef,
|
77
|
-
tabIndex: "
|
77
|
+
tabIndex: "0",
|
78
78
|
p: 0
|
79
79
|
}), ___EmotionJSX(Icon, {
|
80
80
|
icon: MenuDown,
|
@@ -119,14 +119,14 @@ test('should show hintText text if prop is passed', function () {
|
|
119
119
|
fireEvent.mouseEnter(helpHintButton);
|
120
120
|
expect(screen.getByText(hintText)).toBeInTheDocument();
|
121
121
|
});
|
122
|
-
test('increment and decrement buttons
|
122
|
+
test('increment and decrement buttons should be able to be focused via keyboard', function () {
|
123
123
|
getComponent();
|
124
124
|
userEvent.tab();
|
125
125
|
expect(screen.getByLabelText(testLabel)).toHaveFocus();
|
126
126
|
userEvent.tab();
|
127
|
-
expect(screen.getByLabelText('arrow-up')).
|
127
|
+
expect(screen.getByLabelText('arrow-up')).toHaveFocus();
|
128
128
|
userEvent.tab();
|
129
|
-
expect(screen.getByLabelText('arrow-down')).
|
129
|
+
expect(screen.getByLabelText('arrow-down')).toHaveFocus();
|
130
130
|
});
|
131
131
|
test('number field input receiving name attribute', function () {
|
132
132
|
var testName = 'testName';
|