@pingux/astro 1.27.0-alpha.1 → 1.27.0-alpha.11
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/EnvironmentBreadcrumb/EnvironmentBreadcrumb.js +8 -2
- package/lib/cjs/components/EnvironmentBreadcrumb/EnvironmentBreadcrumb.test.js +35 -0
- package/lib/cjs/components/PageHeader/PageHeader.js +7 -1
- package/lib/cjs/recipes/CountryPicker.stories.js +25 -12
- package/lib/cjs/recipes/EditableInput.stories.js +55 -46
- package/lib/cjs/recipes/ListAndPanel.stories.js +102 -87
- package/lib/cjs/recipes/PageHeader.stories.js +73 -0
- package/lib/cjs/recipes/SelectedFieldOverlay.story.js +25 -21
- package/lib/cjs/recipes/TrialExperienceStatusBar.stories.js +81 -72
- package/lib/components/EnvironmentBreadcrumb/EnvironmentBreadcrumb.js +7 -2
- package/lib/components/EnvironmentBreadcrumb/EnvironmentBreadcrumb.test.js +25 -0
- package/lib/components/PageHeader/PageHeader.js +8 -1
- package/lib/recipes/CountryPicker.stories.js +24 -12
- package/lib/recipes/EditableInput.stories.js +55 -46
- package/lib/recipes/ListAndPanel.stories.js +102 -87
- package/lib/recipes/PageHeader.stories.js +53 -0
- package/lib/recipes/SelectedFieldOverlay.story.js +25 -21
- package/lib/recipes/TrialExperienceStatusBar.stories.js +81 -72
- package/package.json +2 -1
@@ -26,36 +26,40 @@ var _default = {
|
|
26
26
|
title: 'Recipes/Selected Field Overlay'
|
27
27
|
};
|
28
28
|
exports["default"] = _default;
|
29
|
+
var sx = {
|
30
|
+
container: {
|
31
|
+
padding: 'md',
|
32
|
+
position: 'relative',
|
33
|
+
borderWidth: 2,
|
34
|
+
borderStyle: 'solid',
|
35
|
+
borderColor: 'active',
|
36
|
+
borderRadius: 4,
|
37
|
+
cursor: 'pointer'
|
38
|
+
},
|
39
|
+
overlay: {
|
40
|
+
position: 'absolute',
|
41
|
+
width: '100%',
|
42
|
+
height: '100%',
|
43
|
+
top: 0,
|
44
|
+
left: 0,
|
45
|
+
alignItems: 'center',
|
46
|
+
justifyContent: 'center',
|
47
|
+
'&:focus': {
|
48
|
+
outline: 'none'
|
49
|
+
}
|
50
|
+
}
|
51
|
+
};
|
29
52
|
|
30
53
|
var Default = function Default() {
|
31
54
|
return (0, _react2.jsx)(_Box["default"], {
|
32
|
-
|
33
|
-
sx: {
|
34
|
-
position: 'relative',
|
35
|
-
borderWidth: 2,
|
36
|
-
borderStyle: 'solid',
|
37
|
-
borderColor: 'active',
|
38
|
-
borderRadius: 4,
|
39
|
-
cursor: 'pointer'
|
40
|
-
}
|
55
|
+
sx: sx.container
|
41
56
|
}, (0, _react2.jsx)(_TextField["default"], {
|
42
57
|
label: "Name",
|
43
58
|
controlProps: {
|
44
59
|
tabIndex: '-1'
|
45
60
|
}
|
46
61
|
}), (0, _react2.jsx)(_Box["default"], {
|
47
|
-
sx:
|
48
|
-
position: 'absolute',
|
49
|
-
width: '100%',
|
50
|
-
height: '100%',
|
51
|
-
top: 0,
|
52
|
-
left: 0,
|
53
|
-
alignItems: 'center',
|
54
|
-
justifyContent: 'center',
|
55
|
-
'&:focus': {
|
56
|
-
outline: 'none'
|
57
|
-
}
|
58
|
-
},
|
62
|
+
sx: sx.overlay,
|
59
63
|
tabIndex: "0"
|
60
64
|
}, (0, _react2.jsx)(_Icon["default"], {
|
61
65
|
icon: _VisibilityOffOutlineIcon["default"],
|
@@ -137,6 +137,79 @@ var data = [{
|
|
137
137
|
title: 'View a workflow'
|
138
138
|
}]
|
139
139
|
}];
|
140
|
+
var sx = {
|
141
|
+
iconContainer: {
|
142
|
+
backgroundColor: 'accent.80',
|
143
|
+
alignItems: 'center',
|
144
|
+
justifyContent: 'center',
|
145
|
+
mr: 'sm',
|
146
|
+
borderRadius: '50%',
|
147
|
+
zIndex: 3
|
148
|
+
},
|
149
|
+
headingSeparator: {
|
150
|
+
flexGrow: 1,
|
151
|
+
backgroundColor: 'accent.80',
|
152
|
+
maxHeight: '100%',
|
153
|
+
width: '6px !important',
|
154
|
+
zIndex: 2,
|
155
|
+
m: '0px 5px 0px 17px !important'
|
156
|
+
},
|
157
|
+
title: {
|
158
|
+
fontSize: 'md',
|
159
|
+
color: 'accent.30',
|
160
|
+
lineHeight: '18px',
|
161
|
+
fontWeight: '3',
|
162
|
+
m: '12px 0px 28px 5px',
|
163
|
+
maxWidth: '195px'
|
164
|
+
},
|
165
|
+
linkRowIconButton: {
|
166
|
+
'&.is-pressed': {
|
167
|
+
backgroundColor: 'transparent'
|
168
|
+
},
|
169
|
+
'&.is-pressed > svg > path': {
|
170
|
+
fill: 'accent.30'
|
171
|
+
},
|
172
|
+
'&.is-hovered': {
|
173
|
+
backgroundColor: 'transparent'
|
174
|
+
}
|
175
|
+
},
|
176
|
+
linkRowIconSelected: {
|
177
|
+
zIndex: 3,
|
178
|
+
'path': {
|
179
|
+
fill: 'accent.30'
|
180
|
+
}
|
181
|
+
},
|
182
|
+
linkRowIconNotSelected: {
|
183
|
+
zIndex: 3,
|
184
|
+
'path': {
|
185
|
+
fill: 'accent.80'
|
186
|
+
}
|
187
|
+
},
|
188
|
+
linkRowSeparator: {
|
189
|
+
flexGrow: 1,
|
190
|
+
backgroundColor: 'accent.30',
|
191
|
+
maxHeight: '100%',
|
192
|
+
width: '1px !important',
|
193
|
+
zIndex: 2,
|
194
|
+
m: '-5px 5px -5px 11.5px !important'
|
195
|
+
},
|
196
|
+
linkRowText: {
|
197
|
+
fontSize: 'md',
|
198
|
+
color: '#163CE3',
|
199
|
+
lineHeight: '18px',
|
200
|
+
fontWeight: '0',
|
201
|
+
m: '3px 0px 20px 10px',
|
202
|
+
maxWidth: '140px'
|
203
|
+
},
|
204
|
+
container: {
|
205
|
+
p: '15px 15px 0px 15px',
|
206
|
+
width: '280px',
|
207
|
+
backgroundColor: 'accent.95',
|
208
|
+
borderRadius: '8px',
|
209
|
+
zIndex: 1,
|
210
|
+
boxShadow: '3px 8px 4px rgba(202, 206, 211, 0.36)'
|
211
|
+
}
|
212
|
+
};
|
140
213
|
|
141
214
|
var Stage = function Stage(props) {
|
142
215
|
var title = props.title,
|
@@ -172,14 +245,7 @@ var Stage = function Stage(props) {
|
|
172
245
|
}, (0, _react2.jsx)(_index.Box, null, (0, _react2.jsx)(_index.Box, {
|
173
246
|
minWidth: "39.5px",
|
174
247
|
minHeight: "39.5px",
|
175
|
-
sx:
|
176
|
-
backgroundColor: 'accent.80',
|
177
|
-
alignItems: 'center',
|
178
|
-
justifyContent: 'center',
|
179
|
-
mr: '10px',
|
180
|
-
borderRadius: '50%',
|
181
|
-
zIndex: 3
|
182
|
-
}
|
248
|
+
sx: sx.iconContainer
|
183
249
|
}, (0, _react2.jsx)(_index.Icon, {
|
184
250
|
icon: icon,
|
185
251
|
color: "accent.40",
|
@@ -188,24 +254,10 @@ var Stage = function Stage(props) {
|
|
188
254
|
zIndex: 3
|
189
255
|
}
|
190
256
|
})), !isLastStage && (0, _react2.jsx)(_index.Separator, {
|
191
|
-
sx:
|
192
|
-
flexGrow: 1,
|
193
|
-
backgroundColor: 'accent.80',
|
194
|
-
maxHeight: '100%',
|
195
|
-
width: '6px !important',
|
196
|
-
zIndex: 2,
|
197
|
-
m: '0px 5px 0px 17px !important'
|
198
|
-
},
|
257
|
+
sx: sx.headingSeparator,
|
199
258
|
orientation: "vertical"
|
200
259
|
})), (0, _react2.jsx)(_index.Box, null, (0, _react2.jsx)(_index.Text, {
|
201
|
-
sx:
|
202
|
-
fontSize: '15px',
|
203
|
-
color: 'accent.30',
|
204
|
-
lineHeight: '18px',
|
205
|
-
fontWeight: '3',
|
206
|
-
m: '12px 0px 28px 5px',
|
207
|
-
maxWidth: '195px'
|
208
|
-
}
|
260
|
+
sx: sx.title
|
209
261
|
}, title), (0, _react2.jsx)(_index.Box, {
|
210
262
|
pl: "0px",
|
211
263
|
mb: "25px"
|
@@ -246,53 +298,19 @@ var LinkRow = function LinkRow(props) {
|
|
246
298
|
}
|
247
299
|
}, (0, _react2.jsx)(_index.IconButton, {
|
248
300
|
onPress: onIconPress,
|
249
|
-
sx:
|
250
|
-
'&.is-pressed': {
|
251
|
-
backgroundColor: 'transparent'
|
252
|
-
},
|
253
|
-
'&.is-pressed > svg > path': {
|
254
|
-
fill: 'accent.30'
|
255
|
-
},
|
256
|
-
'&.is-hovered': {
|
257
|
-
backgroundColor: 'transparent'
|
258
|
-
}
|
259
|
-
},
|
301
|
+
sx: sx.linkRowIconButton,
|
260
302
|
"aria-label": "completed step icon indicator"
|
261
303
|
}, (0, _react2.jsx)(_index.Icon, {
|
262
304
|
icon: isSelected ? _CheckCircleIcon["default"] : RadioButtonIcon,
|
263
305
|
size: isSelected ? '20px' : '18px',
|
264
|
-
sx: isSelected ?
|
265
|
-
zIndex: 3,
|
266
|
-
'path': {
|
267
|
-
fill: 'accent.30'
|
268
|
-
}
|
269
|
-
} : {
|
270
|
-
zIndex: 3,
|
271
|
-
'path': {
|
272
|
-
fill: 'accent.80'
|
273
|
-
}
|
274
|
-
}
|
306
|
+
sx: isSelected ? sx.linkRowIconButton : sx.linkRowIconNotSelected
|
275
307
|
}))), !isLastLink && isLinkSelected && (0, _react2.jsx)(_index.Separator, {
|
276
|
-
sx:
|
277
|
-
flexGrow: 1,
|
278
|
-
backgroundColor: 'accent.30',
|
279
|
-
maxHeight: '100%',
|
280
|
-
width: '1px !important',
|
281
|
-
zIndex: 2,
|
282
|
-
m: '-5px 5px -5px 11.5px !important'
|
283
|
-
},
|
308
|
+
sx: sx.linkRowSeparator,
|
284
309
|
orientation: "vertical"
|
285
310
|
})), (0, _react2.jsx)(_index.Box, null, (0, _react2.jsx)(_index.Link, {
|
286
311
|
href: "https://www.pingidentity.com",
|
287
312
|
target: "_blank",
|
288
|
-
sx:
|
289
|
-
fontSize: '15px',
|
290
|
-
color: '#163CE3',
|
291
|
-
lineHeight: '18px',
|
292
|
-
fontWeight: '0',
|
293
|
-
m: '3px 0px 20px 10px',
|
294
|
-
maxWidth: '140px'
|
295
|
-
}
|
313
|
+
sx: sx.linkRowText
|
296
314
|
}, title)));
|
297
315
|
};
|
298
316
|
|
@@ -300,16 +318,7 @@ var Default = function Default() {
|
|
300
318
|
// Open the `Story` addons tab to view the source code for full context.
|
301
319
|
return (0, _react2.jsx)(_index.Box, {
|
302
320
|
as: "nav",
|
303
|
-
|
304
|
-
width: "280px",
|
305
|
-
sx: {
|
306
|
-
p: '15px 15px 0px 15px',
|
307
|
-
width: '280px',
|
308
|
-
backgroundColor: 'accent.95',
|
309
|
-
borderRadius: '8px',
|
310
|
-
zIndex: 1,
|
311
|
-
boxShadow: '3px 8px 4px rgba(202, 206, 211, 0.36)'
|
312
|
-
}
|
321
|
+
sx: sx.container
|
313
322
|
}, (0, _react2.jsx)(_index.Box, {
|
314
323
|
paddingLeft: "0px"
|
315
324
|
}, (0, _map["default"])(data).call(data, function (stage, index) {
|
@@ -12,7 +12,7 @@ import _mapInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance
|
|
12
12
|
import _Array$from from "@babel/runtime-corejs3/core-js-stable/array/from";
|
13
13
|
import _slicedToArray from "@babel/runtime-corejs3/helpers/esm/slicedToArray";
|
14
14
|
import _objectWithoutProperties from "@babel/runtime-corejs3/helpers/esm/objectWithoutProperties";
|
15
|
-
var _excluded = ["children", "disabledKeys", "emptySearchText", "isDefaultOpen", "isOpen", "items", "itemsFilter", "onOpenChange", "onNamePress", "onPopoverClose", "onPopoverOpen", "onSelectionChange", "name", "searchProps", "selectedItem"];
|
15
|
+
var _excluded = ["children", "disabledKeys", "emptySearchText", "isDefaultOpen", "isOpen", "items", "itemsFilter", "onOpenChange", "onNamePress", "onPopoverClose", "onPopoverOpen", "onSelectionChange", "name", "searchProps", "selectedItem", "popoverProps"];
|
16
16
|
|
17
17
|
function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
18
18
|
|
@@ -25,6 +25,7 @@ import HomeIcon from 'mdi-react/HomeIcon';
|
|
25
25
|
import PropTypes from 'prop-types';
|
26
26
|
import { useOverlayTriggerState } from '@react-stately/overlays';
|
27
27
|
import { useOverlayPosition, useOverlayTrigger } from '@react-aria/overlays';
|
28
|
+
import { mergeProps } from '@react-aria/utils';
|
28
29
|
import ArrowDropUpIcon from 'mdi-react/ArrowDropUpIcon';
|
29
30
|
import ArrowDropDownIcon from 'mdi-react/ArrowDropDownIcon';
|
30
31
|
import { FocusScope } from '@react-aria/focus';
|
@@ -51,6 +52,7 @@ var EnvironmentBreadcrumb = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
51
52
|
name = props.name,
|
52
53
|
searchProps = props.searchProps,
|
53
54
|
selectedItem = props.selectedItem,
|
55
|
+
popoverProps = props.popoverProps,
|
54
56
|
others = _objectWithoutProperties(props, _excluded);
|
55
57
|
|
56
58
|
var _useState = useState(''),
|
@@ -215,7 +217,7 @@ var EnvironmentBreadcrumb = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
215
217
|
"aria-label": "".concat((typeof selectedItem === 'string' ? selectedItem : selectedValue) || 'Selected Item')
|
216
218
|
}), selectedItem, ___EmotionJSX(Icon, {
|
217
219
|
icon: popoverState.isOpen ? ArrowDropUpIcon : ArrowDropDownIcon
|
218
|
-
})), ___EmotionJSX(PopoverContainer, _extends({}, overlayProps, positionProps, {
|
220
|
+
})), ___EmotionJSX(PopoverContainer, _extends({}, overlayProps, positionProps, mergeProps(overlayProps, positionProps, popoverProps), {
|
219
221
|
ref: overlayRef,
|
220
222
|
isOpen: popoverState.isOpen,
|
221
223
|
scrollRef: scrollBoxRef,
|
@@ -303,6 +305,9 @@ EnvironmentBreadcrumb.propTypes = {
|
|
303
305
|
/** Callback function that fires when the dropdown is closed. */
|
304
306
|
onPopoverClose: PropTypes.func,
|
305
307
|
|
308
|
+
/** Props object that is spread directly into the popover container component. */
|
309
|
+
popoverProps: PropTypes.shape({}),
|
310
|
+
|
306
311
|
/** Props object that is spread directly into the SearchField element. */
|
307
312
|
searchProps: PropTypes.shape({}),
|
308
313
|
|
@@ -1,6 +1,20 @@
|
|
1
|
+
import _Object$defineProperty from "@babel/runtime-corejs3/core-js-stable/object/define-property";
|
2
|
+
import _Object$defineProperties from "@babel/runtime-corejs3/core-js-stable/object/define-properties";
|
3
|
+
import _Object$getOwnPropertyDescriptors from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors";
|
4
|
+
import _forEachInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/for-each";
|
5
|
+
import _Object$getOwnPropertyDescriptor from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor";
|
6
|
+
import _filterInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/filter";
|
7
|
+
import _Object$getOwnPropertySymbols from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols";
|
8
|
+
import _Object$keys from "@babel/runtime-corejs3/core-js-stable/object/keys";
|
1
9
|
import _regeneratorRuntime from "@babel/runtime-corejs3/regenerator";
|
2
10
|
import _asyncToGenerator from "@babel/runtime-corejs3/helpers/esm/asyncToGenerator";
|
11
|
+
import _defineProperty from "@babel/runtime-corejs3/helpers/esm/defineProperty";
|
3
12
|
import _extends from "@babel/runtime-corejs3/helpers/esm/extends";
|
13
|
+
|
14
|
+
function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
15
|
+
|
16
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context3, _context4; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty(_context3 = ownKeys(Object(source), !0)).call(_context3, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : _forEachInstanceProperty(_context4 = ownKeys(Object(source))).call(_context4, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
|
17
|
+
|
4
18
|
import React from 'react';
|
5
19
|
import userEvent from '@testing-library/user-event';
|
6
20
|
import { Section } from '@react-stately/collections';
|
@@ -38,6 +52,10 @@ var defaultProps = {
|
|
38
52
|
},
|
39
53
|
items: items
|
40
54
|
};
|
55
|
+
var popoverProps = {
|
56
|
+
maxWidth: '100px',
|
57
|
+
'data-testid': 'popover-container'
|
58
|
+
};
|
41
59
|
var defaultWithSectionsProps = {
|
42
60
|
'data-testid': testEnvBreadcrumb,
|
43
61
|
name: testName,
|
@@ -115,6 +133,13 @@ test('should display name', function () {
|
|
115
133
|
getComponent();
|
116
134
|
expect(screen.getByText(testName)).toBeInTheDocument();
|
117
135
|
});
|
136
|
+
test('should spread props into popover container', function () {
|
137
|
+
getComponent(_objectSpread(_objectSpread({}, popoverProps), {}, {
|
138
|
+
isDefaultOpen: true
|
139
|
+
}));
|
140
|
+
userEvent.click(screen.getByText(testSelectedItem));
|
141
|
+
expect(screen.queryByTestId('popover-container')).toHaveStyle('max-width: 100px');
|
142
|
+
});
|
118
143
|
test('should display selectedItem', function () {
|
119
144
|
getComponent();
|
120
145
|
expect(screen.getByText(testSelectedItem)).toBeInTheDocument();
|
@@ -6,13 +6,20 @@ import PropTypes from 'prop-types';
|
|
6
6
|
import Text from '../Text/Text';
|
7
7
|
import Box from '../Box/Box';
|
8
8
|
import { useDeprecationWarning } from '../../hooks';
|
9
|
+
/**
|
10
|
+
* A `Page Header` is a composed component using text and icon button.
|
11
|
+
* The component is separated from the body and appears at the top.
|
12
|
+
* For customization,
|
13
|
+
* please see [Page Header](./?path=/story/recipes-page-header--default) recipe docs.
|
14
|
+
*/
|
15
|
+
|
9
16
|
import { jsx as ___EmotionJSX } from "@emotion/react";
|
10
17
|
var PageHeader = /*#__PURE__*/forwardRef(function (props, ref) {
|
11
18
|
var title = props.title,
|
12
19
|
children = props.children,
|
13
20
|
others = _objectWithoutProperties(props, _excluded);
|
14
21
|
|
15
|
-
useDeprecationWarning('The Page Header component will be deprecated in Astro-UI 2.0.0.');
|
22
|
+
useDeprecationWarning('The Page Header component will be deprecated in Astro-UI 2.0.0. Use Page Header recipe instead.');
|
16
23
|
return ___EmotionJSX(Box, _extends({
|
17
24
|
isRow: true,
|
18
25
|
justifyContent: "space-between",
|
@@ -17,6 +17,27 @@ var validatePhoneNumber = function validatePhoneNumber(str) {
|
|
17
17
|
return reg.test(str);
|
18
18
|
};
|
19
19
|
|
20
|
+
var sx = {
|
21
|
+
wrapperBox: {
|
22
|
+
width: '100%',
|
23
|
+
maxWidth: 500,
|
24
|
+
position: 'relative'
|
25
|
+
},
|
26
|
+
comboBoxFieldWrapperOpen: {
|
27
|
+
position: 'absolute',
|
28
|
+
transition: '0.2s width ease',
|
29
|
+
width: '100%'
|
30
|
+
},
|
31
|
+
comboBoxFieldWrapperClose: {
|
32
|
+
position: 'absolute',
|
33
|
+
transition: '0.2s width ease',
|
34
|
+
width: '110px'
|
35
|
+
},
|
36
|
+
inputWrapper: {
|
37
|
+
width: '100%',
|
38
|
+
marginLeft: '110px'
|
39
|
+
}
|
40
|
+
};
|
20
41
|
export var Default = function Default() {
|
21
42
|
var _useState = useState(false),
|
22
43
|
_useState2 = _slicedToArray(_useState, 2),
|
@@ -84,22 +105,14 @@ export var Default = function Default() {
|
|
84
105
|
|
85
106
|
return ___EmotionJSX(Box, {
|
86
107
|
isRow: true,
|
87
|
-
sx:
|
88
|
-
width: '100%',
|
89
|
-
maxWidth: 500,
|
90
|
-
position: 'relative'
|
91
|
-
}
|
108
|
+
sx: sx.wrapperBox
|
92
109
|
}, ___EmotionJSX(ComboBoxField, {
|
93
110
|
mt: -5,
|
94
111
|
width: "100%",
|
95
112
|
isOpen: isOpen,
|
96
113
|
onOpenChange: setIsOpen,
|
97
114
|
wrapperProps: {
|
98
|
-
sx:
|
99
|
-
position: 'absolute',
|
100
|
-
transition: '0.2s width ease',
|
101
|
-
width: isOpen ? '100%' : 110
|
102
|
-
}
|
115
|
+
sx: isOpen ? sx.comboBoxFieldWrapperOpen : sx.comboBoxFieldWrapperClose
|
103
116
|
},
|
104
117
|
controlProps: {
|
105
118
|
'aria-label': 'Country Picker'
|
@@ -118,8 +131,7 @@ export var Default = function Default() {
|
|
118
131
|
key: item[0]
|
119
132
|
}, _concatInstanceProperty(_context = _concatInstanceProperty(_context2 = "".concat(item[1].name)).call(_context2, item[1].name !== item[1]["native"] ? " (".concat(item[1]["native"], ")") : '', " +")).call(_context, item[1].phone.split(',')[0]));
|
120
133
|
}), ___EmotionJSX(Box, {
|
121
|
-
|
122
|
-
ml: 110
|
134
|
+
sx: sx.inputWrapper
|
123
135
|
}, ___EmotionJSX(Input, {
|
124
136
|
placeholder: "Phone number...",
|
125
137
|
onChange: onPhoneNumberValueChange,
|
@@ -37,6 +37,48 @@ var inputProps = {
|
|
37
37
|
label: 'Example label',
|
38
38
|
ariaLabel: 'Example aria label'
|
39
39
|
};
|
40
|
+
var sx = {
|
41
|
+
editablePreview: {
|
42
|
+
whiteSpace: 'pre-line',
|
43
|
+
width: '100%',
|
44
|
+
overflowWrap: 'break-word',
|
45
|
+
minHeight: '45px',
|
46
|
+
paddingLeft: 'xs',
|
47
|
+
justifyContent: 'flex-end',
|
48
|
+
paddingBottom: 'xs',
|
49
|
+
borderBottomColor: 'active',
|
50
|
+
color: 'neutral.10',
|
51
|
+
fontSize: 'md',
|
52
|
+
fontWeight: 1,
|
53
|
+
lineHeight: '18px',
|
54
|
+
'&:focus': {
|
55
|
+
outline: 'none',
|
56
|
+
boxShadow: 'focus',
|
57
|
+
borderColor: 'active',
|
58
|
+
borderWidth: '1px',
|
59
|
+
borderStyle: 'solid'
|
60
|
+
}
|
61
|
+
},
|
62
|
+
editableInputWrapper: {
|
63
|
+
marginRight: '30px',
|
64
|
+
flexGrow: 1
|
65
|
+
},
|
66
|
+
editableInpuTextArea: {
|
67
|
+
maxHeight: '150px'
|
68
|
+
},
|
69
|
+
editableControlWrapper: {
|
70
|
+
position: 'absolute',
|
71
|
+
right: '0',
|
72
|
+
top: '27.5%',
|
73
|
+
alignItems: 'center',
|
74
|
+
justifyContent: 'space-between'
|
75
|
+
},
|
76
|
+
editableControlIconButton: {
|
77
|
+
marginRight: 'md',
|
78
|
+
width: '20px',
|
79
|
+
height: '20px'
|
80
|
+
}
|
81
|
+
};
|
40
82
|
export var Default = function Default() {
|
41
83
|
return ___EmotionJSX(Editable, {
|
42
84
|
value: "Some value..."
|
@@ -90,6 +132,13 @@ var EditablePreview = function EditablePreview() {
|
|
90
132
|
hasFocus = _useState4[0],
|
91
133
|
setFocus = _useState4[1];
|
92
134
|
|
135
|
+
var editablePreviewDynamicSx = {
|
136
|
+
backgroundColor: hasFocus ? 'accent.95' : 'white',
|
137
|
+
borderBottom: editableContext.isEditing ? '0px' : '1px dashed',
|
138
|
+
'&:hover': {
|
139
|
+
background: editableContext.isEditing ? 'white' : 'accent.95'
|
140
|
+
}
|
141
|
+
};
|
93
142
|
useEffect(function () {
|
94
143
|
if (hasFocus && editableContext.isEditing) {
|
95
144
|
setFocus(false);
|
@@ -116,8 +165,8 @@ var EditablePreview = function EditablePreview() {
|
|
116
165
|
"aria-hidden": editableContext.isEditing,
|
117
166
|
onClick: handleClick,
|
118
167
|
onKeyDown: handleKeyDown,
|
119
|
-
"aria-readonly": "false",
|
120
168
|
"aria-label": "Inline editable text field",
|
169
|
+
role: "textbox",
|
121
170
|
onFocus: function onFocus() {
|
122
171
|
return setFocus(true);
|
123
172
|
},
|
@@ -125,32 +174,7 @@ var EditablePreview = function EditablePreview() {
|
|
125
174
|
return setFocus(false);
|
126
175
|
},
|
127
176
|
placeholder: "Click or press enter to edit text",
|
128
|
-
sx: {
|
129
|
-
whiteSpace: 'pre-line',
|
130
|
-
backgroundColor: hasFocus ? 'accent.95' : 'white',
|
131
|
-
width: '100%',
|
132
|
-
overflowWrap: 'break-word',
|
133
|
-
minHeight: '45px',
|
134
|
-
paddingLeft: 'xs',
|
135
|
-
justifyContent: 'flex-end',
|
136
|
-
paddingBottom: 'xs',
|
137
|
-
borderBottom: editableContext.isEditing ? '0px' : '1px dashed',
|
138
|
-
borderBottomColor: 'active',
|
139
|
-
color: 'neutral.10',
|
140
|
-
fontSize: 'md',
|
141
|
-
fontWeight: 1,
|
142
|
-
lineHeight: '18px',
|
143
|
-
'&:hover': {
|
144
|
-
background: editableContext.isEditing ? 'white' : 'accent.95'
|
145
|
-
},
|
146
|
-
'&:focus': {
|
147
|
-
outline: 'none',
|
148
|
-
boxShadow: 'focus',
|
149
|
-
borderColor: 'active',
|
150
|
-
borderWidth: '1px',
|
151
|
-
borderStyle: 'solid'
|
152
|
-
}
|
153
|
-
}
|
177
|
+
sx: _objectSpread(_objectSpread({}, editablePreviewDynamicSx), sx.editablePreview)
|
154
178
|
}, editableContext.value);
|
155
179
|
};
|
156
180
|
/**
|
@@ -219,10 +243,7 @@ var EditableInput = function EditableInput(props) {
|
|
219
243
|
return ___EmotionJSX(Box, {
|
220
244
|
display: editableContext.isEditing ? 'flex' : 'none',
|
221
245
|
"aria-hidden": !editableContext.isEditing,
|
222
|
-
sx:
|
223
|
-
marginRight: '30px',
|
224
|
-
flexGrow: 1
|
225
|
-
}
|
246
|
+
sx: sx.editableInputWrapper
|
226
247
|
}, ___EmotionJSX(TextAreaField, {
|
227
248
|
rows: 1,
|
228
249
|
ref: editableInput,
|
@@ -233,9 +254,7 @@ var EditableInput = function EditableInput(props) {
|
|
233
254
|
onKeyDown: handleKeyDown,
|
234
255
|
value: editingValue,
|
235
256
|
"aria-label": ariaLabel,
|
236
|
-
sx:
|
237
|
-
maxHeight: '150px'
|
238
|
-
},
|
257
|
+
sx: sx.editableInpuTextArea,
|
239
258
|
isUnresizable: true
|
240
259
|
}));
|
241
260
|
};
|
@@ -286,22 +305,12 @@ var EditableControl = function EditableControl(props) {
|
|
286
305
|
display: editableContext.isEditing ? 'flex' : 'none',
|
287
306
|
"aria-hidden": !editableContext.isEditing,
|
288
307
|
isRow: true,
|
289
|
-
sx:
|
290
|
-
position: 'absolute',
|
291
|
-
right: '0',
|
292
|
-
top: '27.5%',
|
293
|
-
alignItems: 'center',
|
294
|
-
justifyContent: 'space-between'
|
295
|
-
}
|
308
|
+
sx: sx.editableControlWrapper
|
296
309
|
}, ___EmotionJSX(IconButton, {
|
297
310
|
onPress: handleSubmit,
|
298
311
|
"aria-label": confirmBtn.ariaLabel,
|
299
312
|
variant: confirmBtn.variant,
|
300
|
-
|
301
|
-
sx: {
|
302
|
-
width: '20px',
|
303
|
-
height: '20px'
|
304
|
-
}
|
313
|
+
sx: sx.editableControlIconButton
|
305
314
|
}, ___EmotionJSX(Icon, {
|
306
315
|
icon: CheckIcon
|
307
316
|
})), ___EmotionJSX(IconButton, {
|