@pingux/astro 1.0.0-alpha.6 → 1.1.0-alpha.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.
Files changed (113) hide show
  1. package/CHANGELOG.md +186 -0
  2. package/README.md +5 -0
  3. package/lib/cjs/components/AccordionGridGroup/AccordionGridGroup.stories.js +4 -11
  4. package/lib/cjs/components/AccordionItem/AccordionItem.js +3 -1
  5. package/lib/cjs/components/Button/Button.js +5 -24
  6. package/lib/cjs/components/Button/Button.stories.js +5 -11
  7. package/lib/cjs/components/Button/Button.test.js +0 -24
  8. package/lib/cjs/components/Chip/Chip.js +26 -10
  9. package/lib/cjs/components/Chip/Chip.stories.js +44 -5
  10. package/lib/cjs/components/Chip/Chip.test.js +9 -0
  11. package/lib/cjs/components/{Panel/index.js → Chip/ChipContext.js} +8 -7
  12. package/lib/cjs/components/CopyText/CopyText.js +3 -73
  13. package/lib/cjs/components/IconButton/IconButton.js +17 -7
  14. package/lib/cjs/components/IconButton/IconButton.test.js +0 -1
  15. package/lib/cjs/components/ListItem/ListItem.stories.js +0 -2
  16. package/lib/cjs/components/ListView/ListView.js +4 -3
  17. package/lib/cjs/components/ListViewItem/ListViewItem.js +3 -6
  18. package/lib/cjs/components/MultivaluesField/MultivaluesField.js +1 -1
  19. package/lib/cjs/components/Stepper/Stepper.js +1 -0
  20. package/lib/cjs/components/Tab/Tab.js +15 -6
  21. package/lib/cjs/components/Tabs/Tabs.js +7 -1
  22. package/lib/cjs/components/Tabs/Tabs.stories.js +60 -6
  23. package/lib/cjs/components/Tabs/Tabs.test.js +78 -15
  24. package/lib/cjs/components/TextAreaField/TextAreaField.test.js +10 -0
  25. package/lib/cjs/components/TooltipTrigger/TooltipTrigger.stories.js +45 -2
  26. package/lib/cjs/{components/DropdownField → hooks/useCopyToClipboard}/index.js +2 -2
  27. package/lib/cjs/hooks/useCopyToClipboard/useCopyToClipboard.js +83 -0
  28. package/lib/cjs/hooks/useCopyToClipboard/useCopyToClipboard.test.js +79 -0
  29. package/lib/cjs/index.js +48 -136
  30. package/lib/cjs/layouts/ListLayout.stories.js +2 -1
  31. package/lib/cjs/layouts/SchemaFormLayout.stories.js +2 -21
  32. package/lib/cjs/recipes/ArrayField.stories.js +3 -3
  33. package/lib/cjs/recipes/CopyToClipboard.stories.js +45 -0
  34. package/lib/cjs/recipes/RadioButtonsWithLinks.stories.js +146 -0
  35. package/lib/cjs/styles/forms/input.js +4 -0
  36. package/lib/cjs/styles/theme.js +0 -3
  37. package/lib/cjs/styles/variants/accordion.js +7 -9
  38. package/lib/cjs/styles/variants/boxes.js +22 -19
  39. package/lib/cjs/styles/variants/buttons.js +38 -29
  40. package/lib/cjs/styles/variants/tabs.js +1 -0
  41. package/lib/cjs/styles/variants/variants.js +0 -3
  42. package/lib/components/AccordionGridGroup/AccordionGridGroup.stories.js +4 -11
  43. package/lib/components/AccordionItem/AccordionItem.js +3 -1
  44. package/lib/components/Button/Button.js +7 -24
  45. package/lib/components/Button/Button.stories.js +5 -10
  46. package/lib/components/Button/Button.test.js +0 -20
  47. package/lib/components/Chip/Chip.js +25 -10
  48. package/lib/components/Chip/Chip.stories.js +41 -5
  49. package/lib/components/Chip/Chip.test.js +9 -0
  50. package/lib/components/Chip/ChipContext.js +3 -0
  51. package/lib/components/CopyText/CopyText.js +2 -71
  52. package/lib/components/IconButton/IconButton.js +17 -9
  53. package/lib/components/IconButton/IconButton.test.js +0 -1
  54. package/lib/components/ListItem/ListItem.stories.js +0 -2
  55. package/lib/components/ListView/ListView.js +4 -3
  56. package/lib/components/ListViewItem/ListViewItem.js +3 -5
  57. package/lib/components/MultivaluesField/MultivaluesField.js +1 -1
  58. package/lib/components/Stepper/Stepper.js +1 -0
  59. package/lib/components/Tab/Tab.js +15 -6
  60. package/lib/components/Tabs/Tabs.js +7 -1
  61. package/lib/components/Tabs/Tabs.stories.js +56 -4
  62. package/lib/components/Tabs/Tabs.test.js +78 -15
  63. package/lib/components/TextAreaField/TextAreaField.test.js +8 -0
  64. package/lib/components/TooltipTrigger/TooltipTrigger.stories.js +33 -1
  65. package/lib/hooks/useCopyToClipboard/index.js +1 -0
  66. package/lib/hooks/useCopyToClipboard/useCopyToClipboard.js +69 -0
  67. package/lib/hooks/useCopyToClipboard/useCopyToClipboard.test.js +64 -0
  68. package/lib/index.js +0 -8
  69. package/lib/layouts/ListLayout.stories.js +2 -1
  70. package/lib/layouts/SchemaFormLayout.stories.js +2 -19
  71. package/lib/recipes/ArrayField.stories.js +3 -3
  72. package/lib/recipes/CopyToClipboard.stories.js +25 -0
  73. package/lib/recipes/RadioButtonsWithLinks.stories.js +120 -0
  74. package/lib/styles/forms/input.js +4 -0
  75. package/lib/styles/theme.js +0 -3
  76. package/lib/styles/variants/accordion.js +7 -9
  77. package/lib/styles/variants/boxes.js +21 -19
  78. package/lib/styles/variants/buttons.js +37 -29
  79. package/lib/styles/variants/tabs.js +1 -0
  80. package/lib/styles/variants/variants.js +0 -2
  81. package/package.json +2 -2
  82. package/lib/cjs/components/Dropdown/Dropdown.js +0 -112
  83. package/lib/cjs/components/Dropdown/Dropdown.test.js +0 -80
  84. package/lib/cjs/components/Dropdown/index.js +0 -18
  85. package/lib/cjs/components/DropdownField/DropdownField.js +0 -187
  86. package/lib/cjs/components/DropdownField/DropdownField.stories.js +0 -278
  87. package/lib/cjs/components/DropdownField/DropdownField.test.js +0 -80
  88. package/lib/cjs/components/Panel/Panel.js +0 -101
  89. package/lib/cjs/components/Panel/Panel.stories.js +0 -57
  90. package/lib/cjs/components/Panel/Panel.test.js +0 -72
  91. package/lib/cjs/components/Popover/Popover.js +0 -87
  92. package/lib/cjs/components/Popover/Popover.stories.js +0 -80
  93. package/lib/cjs/components/Popover/Popover.test.js +0 -91
  94. package/lib/cjs/components/Popover/index.js +0 -18
  95. package/lib/cjs/recipes/InputBoxWithLinkedChip.stories.js +0 -67
  96. package/lib/cjs/styles/variants/popover.js +0 -86
  97. package/lib/components/Dropdown/Dropdown.js +0 -90
  98. package/lib/components/Dropdown/Dropdown.test.js +0 -62
  99. package/lib/components/Dropdown/index.js +0 -1
  100. package/lib/components/DropdownField/DropdownField.js +0 -155
  101. package/lib/components/DropdownField/DropdownField.stories.js +0 -222
  102. package/lib/components/DropdownField/DropdownField.test.js +0 -60
  103. package/lib/components/DropdownField/index.js +0 -1
  104. package/lib/components/Panel/Panel.js +0 -71
  105. package/lib/components/Panel/Panel.stories.js +0 -35
  106. package/lib/components/Panel/Panel.test.js +0 -52
  107. package/lib/components/Panel/index.js +0 -1
  108. package/lib/components/Popover/Popover.js +0 -65
  109. package/lib/components/Popover/Popover.stories.js +0 -52
  110. package/lib/components/Popover/Popover.test.js +0 -75
  111. package/lib/components/Popover/index.js +0 -2
  112. package/lib/recipes/InputBoxWithLinkedChip.stories.js +0 -43
  113. package/lib/styles/variants/popover.js +0 -76
@@ -16,20 +16,6 @@ import { text } from './text';
16
16
  var base = {
17
17
  display: 'flex'
18
18
  };
19
- var panel = {
20
- outline: 'none',
21
- position: 'relative',
22
- bg: 'white',
23
- borderLeft: 'separator',
24
- transition: 'margin 0.25s ease-in',
25
- visibility: 'hidden',
26
- '&.is-focused': {
27
- boxShadow: 'focus'
28
- },
29
- '&.is-visible': {
30
- visibility: 'visible'
31
- }
32
- };
33
19
  var card = {
34
20
  boxShadow: 'standard',
35
21
  p: 'lg',
@@ -85,6 +71,10 @@ var listViewItem = _objectSpread(_objectSpread({}, base), {}, {
85
71
  },
86
72
  '&.is-focused': {
87
73
  boxShadow: 'inset 0 0 5px #5873bdbf'
74
+ },
75
+ '&.has-separator': {
76
+ borderBottom: '1px solid',
77
+ borderBottomColor: 'line.hairline'
88
78
  }
89
79
  });
90
80
 
@@ -96,16 +86,29 @@ var listBoxSectionTitle = {
96
86
  ml: 'sm',
97
87
  justifyContent: 'center'
98
88
  };
99
- var chip = {
89
+ export var chip = {
100
90
  cursor: 'pointer',
101
- height: '15px',
102
- p: '10px',
91
+ p: '3px 5px 4px 5px',
103
92
  alignItems: 'center',
104
93
  justifyContent: 'center',
105
94
  minWidth: '50px',
106
95
  alignSelf: 'flex-start',
107
96
  display: 'inline-flex !important',
108
- borderRadius: '5px'
97
+ borderRadius: '5px',
98
+ fontWeight: 1,
99
+ '& button': {
100
+ backgroundColor: 'transparent',
101
+ marginLeft: 'xs',
102
+ marginTop: '1px',
103
+ padding: '0',
104
+ '&.is-hovered': {
105
+ backgroundColor: 'white'
106
+ },
107
+ '& .mdi-icon': {
108
+ marginLeft: '0',
109
+ padding: '2px'
110
+ }
111
+ }
109
112
  };
110
113
  var inputInContainerSlot = {
111
114
  position: 'absolute',
@@ -263,7 +266,6 @@ export default {
263
266
  listItem: listItem,
264
267
  listBoxSectionTitle: listBoxSectionTitle,
265
268
  listViewItem: listViewItem,
266
- panel: panel,
267
269
  radioCheckedContent: radioCheckedContent,
268
270
  radioContainer: radioContainer,
269
271
  scrollbox: scrollbox,
@@ -14,6 +14,7 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
14
14
 
15
15
  import { text as textVariants } from './text';
16
16
  import { neutral } from '../colors';
17
+ import { chip } from './boxes';
17
18
 
18
19
  var base = _objectSpread({
19
20
  cursor: 'pointer',
@@ -158,32 +159,7 @@ var accordionHeader = _objectSpread(_objectSpread({}, base), {}, {
158
159
  color: 'accent.20'
159
160
  },
160
161
  '&.is-focused': _objectSpread({}, defaultFocus)
161
- }); // TODO: Remove this variant in Astro-UI 1.0.0
162
-
163
-
164
- var icon = {
165
- p: '3px',
166
- alignSelf: 'flex-start',
167
- flexGrow: 0,
168
- borderRadius: '100%',
169
- cursor: 'pointer',
170
- bg: 'transparent',
171
- 'path': {
172
- fill: 'text.secondary'
173
- },
174
- outline: 'none',
175
- color: 'white',
176
- '&.is-hovered': {
177
- bg: 'accent.90'
178
- },
179
- '&.is-pressed': {
180
- 'path': {
181
- fill: 'white'
182
- },
183
- bg: 'active'
184
- },
185
- '&.is-focused': _objectSpread({}, defaultFocus)
186
- };
162
+ });
187
163
 
188
164
  var primary = _objectSpread(_objectSpread({}, base), {}, {
189
165
  display: 'inline-flex',
@@ -309,7 +285,7 @@ var inline = _objectSpread(_objectSpread({}, base), {}, {
309
285
  bg: 'white',
310
286
  height: '22px',
311
287
  lineHeight: 1,
312
- fontSize: '14px',
288
+ fontSize: 'sm',
313
289
  borderRadius: '15px',
314
290
  border: '1px solid',
315
291
  borderColor: 'active',
@@ -471,6 +447,36 @@ var fileInputField = {
471
447
  boxShadow: 'focus'
472
448
  }
473
449
  };
450
+
451
+ var tooltipChip = _objectSpread(_objectSpread({}, chip), {}, {
452
+ cursor: 'default',
453
+ '&.is-hovered, &.is-pressed': {
454
+ cursor: 'default',
455
+ outline: 'none'
456
+ }
457
+ });
458
+
459
+ var tooltipIconButton = _objectSpread(_objectSpread({}, iconButton), {}, {
460
+ cursor: 'default',
461
+ '&.is-hovered, &.is-pressed': {
462
+ backgroundColor: 'inherit',
463
+ cursor: 'default',
464
+ path: {
465
+ fill: 'neutral.20'
466
+ }
467
+ }
468
+ });
469
+
470
+ var tooltipInline = _objectSpread(_objectSpread({}, text), {}, {
471
+ cursor: 'default',
472
+ alignSelf: 'flex-start',
473
+ '&.is-hovered, &.is-pressed': {
474
+ backgroundColor: 'inherit',
475
+ cursor: 'default',
476
+ textDecoration: 'inherit'
477
+ }
478
+ });
479
+
474
480
  export default {
475
481
  accordionHeader: accordionHeader,
476
482
  chipDeleteButton: chipDeleteButton,
@@ -491,7 +497,6 @@ export default {
491
497
  expandableRow: expandableRow,
492
498
  fileInputField: fileInputField,
493
499
  iconButton: iconButton,
494
- icon: icon,
495
500
  imageUpload: imageUpload,
496
501
  inline: inline,
497
502
  inverted: inverted,
@@ -504,5 +509,8 @@ export default {
504
509
  helpHint: helpHint,
505
510
  modalCloseButton: modalCloseButton,
506
511
  applicationPortalPinned: applicationPortalPinned,
507
- applicationPortal: applicationPortal
512
+ applicationPortal: applicationPortal,
513
+ tooltipChip: tooltipChip,
514
+ tooltipIconButton: tooltipIconButton,
515
+ tooltipInline: tooltipInline
508
516
  };
@@ -5,6 +5,7 @@ export var tab = {
5
5
  display: 'inline-flex',
6
6
  outline: 'none',
7
7
  transform: 'translateY(1px)',
8
+ width: '100%',
8
9
  '&.is-focused': {
9
10
  boxShadow: 'focus'
10
11
  },
@@ -24,7 +24,6 @@ import menu from './menu';
24
24
  import menuItem from './menuItem';
25
25
  import messages from './messages';
26
26
  import numberField from './numberField';
27
- import popover from './popover';
28
27
  import overlayPanel from './overlayPanel';
29
28
  import popoverMenu from './popoverMenu';
30
29
  import rockerbutton from './rockerbutton';
@@ -47,7 +46,6 @@ export default _objectSpread(_objectSpread({
47
46
  modal: modal,
48
47
  numberField: numberField,
49
48
  overlayPanel: overlayPanel,
50
- popover: popover,
51
49
  popoverMenu: popoverMenu,
52
50
  rockerbutton: rockerbutton,
53
51
  separator: separator,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pingux/astro",
3
- "version": "1.0.0-alpha.6",
3
+ "version": "1.1.0-alpha.0",
4
4
  "description": "PingUX themeable React component library",
5
5
  "author": "uxdev@pingidentity.com",
6
6
  "license": "Apache-2.0",
@@ -129,7 +129,7 @@
129
129
  "chroma-js": "^2.1.0",
130
130
  "classnames": "^2.2.6",
131
131
  "emotion-normalize": "^11.0.1",
132
- "lodash": "^4.17.20",
132
+ "lodash": "^4.17.21",
133
133
  "mdi-react": "^7.4.0",
134
134
  "moment": "^2.29.1",
135
135
  "prop-types": "^15.7.2",
@@ -1,112 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireWildcard = require("@babel/runtime-corejs3/helpers/interopRequireWildcard");
4
-
5
- var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
6
-
7
- var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
8
-
9
- _Object$defineProperty(exports, "__esModule", {
10
- value: true
11
- });
12
-
13
- exports["default"] = void 0;
14
-
15
- var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
16
-
17
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/objectWithoutProperties"));
18
-
19
- var _react = _interopRequireWildcard(require("react"));
20
-
21
- var _propTypes = _interopRequireDefault(require("prop-types"));
22
-
23
- var _forms = require("@rebass/forms");
24
-
25
- var _focus = require("@react-aria/focus");
26
-
27
- var _hooks = require("../../hooks");
28
-
29
- var _react2 = require("@emotion/react");
30
-
31
- /**
32
- * Basic dropdown menu input.
33
- * Accepts most styling props from [styled-system](https://styled-system.com/table).
34
- * Built on top of the [Select component from Rebass Forms](https://rebassjs.org/forms/select).
35
- */
36
- var Dropdown = /*#__PURE__*/_react["default"].forwardRef(function (props, ref) {
37
- var className = props.className,
38
- children = props.children,
39
- hasNoneOption = props.hasNoneOption,
40
- hasDisabledFirstOption = props.hasDisabledFirstOption,
41
- firstLabel = props.firstLabel,
42
- noneLabel = props.noneLabel,
43
- defaultValue = props.defaultValue,
44
- value = props.value,
45
- others = (0, _objectWithoutProperties2["default"])(props, ["className", "children", "hasNoneOption", "hasDisabledFirstOption", "firstLabel", "noneLabel", "defaultValue", "value"]);
46
- var dropdownRef = (0, _react.useRef)();
47
- /* istanbul ignore next */
48
-
49
- (0, _react.useImperativeHandle)(ref, function () {
50
- return dropdownRef.current;
51
- });
52
-
53
- var _useFocusRing = (0, _focus.useFocusRing)(),
54
- isFocusVisible = _useFocusRing.isFocusVisible,
55
- focusProps = _useFocusRing.focusProps;
56
-
57
- var _useStatusClasses = (0, _hooks.useStatusClasses)(className, {
58
- isFocused: isFocusVisible
59
- }),
60
- classNames = _useStatusClasses.classNames;
61
-
62
- return (0, _react2.jsx)(_forms.Select, (0, _extends2["default"])({
63
- ref: dropdownRef,
64
- className: classNames,
65
- defaultValue: value ? undefined : defaultValue || '',
66
- value: value
67
- }, others, focusProps), !hasNoneOption && (0, _react2.jsx)("option", {
68
- key: "__empty",
69
- value: "",
70
- disabled: hasDisabledFirstOption
71
- }, firstLabel), hasNoneOption && (0, _react2.jsx)(_react["default"].Fragment, null, (0, _react2.jsx)("option", {
72
- key: "__empty",
73
- value: "",
74
- disabled: hasDisabledFirstOption
75
- }, noneLabel || firstLabel), (0, _react2.jsx)("option", {
76
- key: "__spacer",
77
- disabled: true
78
- }, "--------")), children);
79
- });
80
-
81
- Dropdown.propTypes = {
82
- /** Displays a none option within the dropdown options */
83
- hasNoneOption: _propTypes["default"].bool,
84
-
85
- /** Whether the first option is disabled. Useful to prevent reselection of the first option. */
86
- hasDisabledFirstOption: _propTypes["default"].bool,
87
-
88
- /** Id of the selected element */
89
- id: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number]),
90
-
91
- /** Label for first option. */
92
- firstLabel: _propTypes["default"].string,
93
-
94
- /** Label for none option. `firstLabel` prop can also be used. */
95
- noneLabel: _propTypes["default"].string,
96
-
97
- /** Value of the select (controlled). */
98
- value: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number]),
99
-
100
- /** Default value of the select (uncontrolled). */
101
- defaultValue: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number]),
102
-
103
- /** Handler that is called when the element's selection state changes. */
104
- onChange: _propTypes["default"].func
105
- };
106
- Dropdown.defaultProps = {
107
- hasNoneOption: false,
108
- firstLabel: 'Select an option'
109
- };
110
- Dropdown.displayName = 'Dropdown';
111
- var _default = Dropdown;
112
- exports["default"] = _default;
@@ -1,80 +0,0 @@
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 _testAxe = _interopRequireDefault(require("../../utils/testUtils/testAxe"));
10
-
11
- var _testWrapper = require("../../utils/testUtils/testWrapper");
12
-
13
- var _ = _interopRequireDefault(require("."));
14
-
15
- var _react2 = require("@emotion/react");
16
-
17
- var testId = 'test-box';
18
- var defaultProps = {
19
- 'data-testid': testId
20
- };
21
-
22
- var getComponent = function getComponent() {
23
- var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
24
- var children = props.children;
25
- return (0, _testWrapper.render)((0, _react2.jsx)(_["default"], (0, _extends2["default"])({}, defaultProps, props), children));
26
- }; // Need to be added to each test file to test accessibility using axe.
27
-
28
-
29
- (0, _testAxe["default"])(getComponent, {
30
- // Dropdown with label provided by DropdownField
31
- rules: {
32
- 'select-name': {
33
- enabled: false
34
- }
35
- }
36
- });
37
- test('dropdown renders', function () {
38
- getComponent();
39
-
40
- var dropdown = _testWrapper.screen.getByTestId(testId);
41
-
42
- expect(dropdown).toBeInstanceOf(HTMLSelectElement);
43
- expect(dropdown).toBeInTheDocument();
44
- });
45
- test('hasNoneOption prop renders none option', function () {
46
- getComponent({
47
- hasNoneOption: true,
48
- noneLabel: 'None'
49
- });
50
- expect((0, _testWrapper.within)(document).getByText('None')).toBeInTheDocument();
51
- });
52
- test('default option is first one', function () {
53
- getComponent();
54
-
55
- var firstOption = _testWrapper.screen.getByRole('option');
56
-
57
- expect(firstOption.value).toEqual('');
58
- expect(firstOption).toHaveAttribute('selected', '');
59
- expect(firstOption).toBeEnabled();
60
- });
61
- test('default option is disabled when hasDisabledFirstOption is passed in', function () {
62
- getComponent({
63
- hasDisabledFirstOption: true
64
- });
65
-
66
- var firstOption = _testWrapper.screen.getByRole('option');
67
-
68
- expect(firstOption.value).toEqual('');
69
- expect(firstOption).toHaveAttribute('selected', '');
70
- expect(firstOption).toBeDisabled();
71
- });
72
- test('default option is not first one when custom defaultValue is passed in', function () {
73
- getComponent({
74
- defaultValue: '1'
75
- });
76
-
77
- var firstOption = _testWrapper.screen.getByRole('option');
78
-
79
- expect(firstOption).not.toHaveAttribute('selected', '');
80
- });
@@ -1,18 +0,0 @@
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
- _Object$defineProperty(exports, "default", {
12
- enumerable: true,
13
- get: function get() {
14
- return _Dropdown["default"];
15
- }
16
- });
17
-
18
- var _Dropdown = _interopRequireDefault(require("./Dropdown"));
@@ -1,187 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireWildcard = require("@babel/runtime-corejs3/helpers/interopRequireWildcard");
4
-
5
- var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
6
-
7
- var _Object$defineProperty2 = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
8
-
9
- _Object$defineProperty2(exports, "__esModule", {
10
- value: true
11
- });
12
-
13
- exports["default"] = void 0;
14
-
15
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/define-property"));
16
-
17
- var _defineProperties = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/define-properties"));
18
-
19
- var _getOwnPropertyDescriptors = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors"));
20
-
21
- var _forEach = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/for-each"));
22
-
23
- var _getOwnPropertyDescriptor = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor"));
24
-
25
- var _filter = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/filter"));
26
-
27
- var _getOwnPropertySymbols = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols"));
28
-
29
- var _keys = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/keys"));
30
-
31
- var _values = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/values"));
32
-
33
- var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
34
-
35
- var _defineProperty3 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
36
-
37
- var _react = _interopRequireWildcard(require("react"));
38
-
39
- var _propTypes = _interopRequireDefault(require("prop-types"));
40
-
41
- var _hooks = require("../../hooks");
42
-
43
- var _statuses = _interopRequireDefault(require("../../utils/devUtils/constants/statuses"));
44
-
45
- var _Box = _interopRequireDefault(require("../Box"));
46
-
47
- var _Dropdown = _interopRequireDefault(require("../Dropdown"));
48
-
49
- var _FieldHelperText = _interopRequireDefault(require("../FieldHelperText"));
50
-
51
- var _Label = _interopRequireDefault(require("../Label"));
52
-
53
- var _react2 = require("@emotion/react");
54
-
55
- function ownKeys(object, enumerableOnly) { var keys = (0, _keys["default"])(object); if (_getOwnPropertySymbols["default"]) { var symbols = (0, _getOwnPropertySymbols["default"])(object); if (enumerableOnly) symbols = (0, _filter["default"])(symbols).call(symbols, function (sym) { return (0, _getOwnPropertyDescriptor["default"])(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
56
-
57
- 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; }
58
-
59
- /**
60
- * **WARNING: Will be deprecated in Astro 1.0.0, use `SelectField` instead.**
61
- *
62
- * Combines a dropdown, label, and helper text for a complete, form-ready solution.
63
- */
64
- var DropdownField = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
65
- var children = props.children,
66
- controlProps = props.controlProps,
67
- firstLabel = props.firstLabel,
68
- hasAutoFocus = props.hasAutoFocus,
69
- hasDisabledFirstOption = props.hasDisabledFirstOption,
70
- hasNoneOption = props.hasNoneOption,
71
- helperText = props.helperText,
72
- noneLabel = props.noneLabel,
73
- status = props.status;
74
-
75
- var _useField = (0, _hooks.useField)(_objectSpread({
76
- autoFocus: hasAutoFocus,
77
- controlProps: _objectSpread({
78
- firstLabel: firstLabel,
79
- hasDisabledFirstOption: hasDisabledFirstOption,
80
- hasNoneOption: hasNoneOption,
81
- noneLabel: noneLabel
82
- }, controlProps)
83
- }, props)),
84
- fieldContainerProps = _useField.fieldContainerProps,
85
- fieldControlProps = _useField.fieldControlProps,
86
- fieldLabelProps = _useField.fieldLabelProps;
87
-
88
- var dropdownRef = (0, _react.useRef)();
89
- /* istanbul ignore next */
90
-
91
- (0, _react.useImperativeHandle)(ref, function () {
92
- return dropdownRef.current;
93
- });
94
- (0, _hooks.useDeprecationWarning)('`DropdownField` will be deprecated in Astro-UI 1.0.0, use `SelectField` instead.');
95
- return (0, _react2.jsx)(_Box["default"], fieldContainerProps, (0, _react2.jsx)(_Label["default"], fieldLabelProps), (0, _react2.jsx)(_Box["default"], {
96
- variant: "forms.input.container",
97
- className: fieldControlProps.className
98
- }, (0, _react2.jsx)(_Dropdown["default"], (0, _extends2["default"])({
99
- ref: dropdownRef
100
- }, fieldControlProps), children)), helperText && (0, _react2.jsx)(_FieldHelperText["default"], {
101
- status: status
102
- }, helperText));
103
- });
104
- DropdownField.propTypes = {
105
- /** The default value of the select field (uncontrolled). */
106
- defaultValue: _propTypes["default"].string,
107
-
108
- /** The value of the select field (controlled). */
109
- value: _propTypes["default"].string,
110
-
111
- /** Displays a none option within the dropdown options */
112
- hasNoneOption: _propTypes["default"].bool,
113
-
114
- /** Whether the first option is disabled. Useful to prevent reselection of the first option. */
115
- hasDisabledFirstOption: _propTypes["default"].bool,
116
-
117
- /** Label for first option. */
118
- firstLabel: _propTypes["default"].string,
119
-
120
- /** Label for none option. `firstLabel` prop can also be used. */
121
- noneLabel: _propTypes["default"].string,
122
-
123
- /** The element's unique identifier. See [MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/id). */
124
- id: _propTypes["default"].string,
125
-
126
- /** Whether the Dropdown is required. See [MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/required). */
127
- isRequired: _propTypes["default"].bool,
128
-
129
- /** @ignore Whether the Dropdown can be interacted
130
- * with but cannot have its selection state changed. */
131
- isReadOnly: _propTypes["default"].bool,
132
-
133
- /** Whether the element should receive focus on render. */
134
- hasAutoFocus: _propTypes["default"].bool,
135
-
136
- /** Whether the field has a status indicator. */
137
- hasNoStatusIndicator: _propTypes["default"].bool,
138
-
139
- /** Text to display after the radio group label. Useful for errors or other info. */
140
- helperText: _propTypes["default"].node,
141
-
142
- /** If present this prop will cause a help hint to render in the label of the field. */
143
- hintText: _propTypes["default"].string,
144
-
145
- /** Determines the helper text styling. */
146
- status: _propTypes["default"].oneOf((0, _values["default"])(_statuses["default"])),
147
-
148
- /** Handler that is called when the element receives focus. */
149
- onFocus: _propTypes["default"].func,
150
-
151
- /** Handler that is called when the element loses focus. */
152
- onBlur: _propTypes["default"].func,
153
-
154
- /** Handler that is called when the element's focus status changes. */
155
- onFocusChange: _propTypes["default"].func,
156
-
157
- /** Handler that is called when a key is pressed. */
158
- onKeyDown: _propTypes["default"].func,
159
-
160
- /** Handler that is called when a key is released. */
161
- onKeyUp: _propTypes["default"].func,
162
-
163
- /** Defines a string value that labels the current element. */
164
- 'aria-label': _propTypes["default"].string,
165
-
166
- /** Identifies the element (or elements) that labels the current element. */
167
- 'aria-labelledby': _propTypes["default"].string,
168
-
169
- /** Identifies the element (or elements) that describes the object. */
170
- 'aria-describedby': _propTypes["default"].string,
171
-
172
- /**
173
- * Identifies the element (or elements) that provide a detailed, extended description for the
174
- * object.
175
- */
176
- 'aria-details': _propTypes["default"].string,
177
-
178
- /** Props object that is spread directly into the select element. */
179
- controlProps: _propTypes["default"].shape({})
180
- };
181
- DropdownField.defaultProps = {
182
- hasNoneOption: false,
183
- firstLabel: 'Select an option'
184
- };
185
- DropdownField.displayName = 'DropdownField';
186
- var _default = DropdownField;
187
- exports["default"] = _default;