@pingux/astro 2.140.0-alpha.4 → 2.140.0-alpha.6

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 (27) hide show
  1. package/lib/cjs/components/Callout/Callout.stories.js +16 -6
  2. package/lib/cjs/components/Popover/Popover.d.ts +14 -0
  3. package/lib/cjs/components/Popover/Popover.js +67 -0
  4. package/lib/cjs/components/Popover/Popover.test.d.ts +1 -0
  5. package/lib/cjs/components/Popover/Popover.test.js +70 -0
  6. package/lib/cjs/components/Popover/index.d.ts +1 -0
  7. package/lib/cjs/components/Popover/index.js +14 -0
  8. package/lib/cjs/components/SelectFieldBase/SelectFieldBase.test.js +0 -3
  9. package/lib/cjs/components/Stepper/Step.js +11 -4
  10. package/lib/cjs/components/Stepper/Stepper.js +42 -8
  11. package/lib/cjs/components/Stepper/Stepper.stories.js +48 -2
  12. package/lib/cjs/components/Stepper/Stepper.styles.js +85 -30
  13. package/lib/cjs/components/Text/Text.styles.d.ts +840 -0
  14. package/lib/cjs/components/Text/Text.styles.js +10 -1
  15. package/lib/cjs/hooks/useSelectField/useSelectField.js +5 -9
  16. package/lib/components/Callout/Callout.stories.js +16 -6
  17. package/lib/components/Popover/Popover.js +55 -0
  18. package/lib/components/Popover/Popover.test.js +67 -0
  19. package/lib/components/Popover/index.js +1 -0
  20. package/lib/components/SelectFieldBase/SelectFieldBase.test.js +0 -3
  21. package/lib/components/Stepper/Step.js +11 -4
  22. package/lib/components/Stepper/Stepper.js +43 -9
  23. package/lib/components/Stepper/Stepper.stories.js +45 -0
  24. package/lib/components/Stepper/Stepper.styles.js +83 -29
  25. package/lib/components/Text/Text.styles.js +10 -1
  26. package/lib/hooks/useSelectField/useSelectField.js +5 -9
  27. package/package.json +2 -2
@@ -50,6 +50,14 @@ var tabLabel = _objectSpread(_objectSpread(_objectSpread({}, base), wordWrap), {
50
50
  color: 'neutral.80'
51
51
  }
52
52
  });
53
+ var stepperLabel = _objectSpread(_objectSpread({}, base), {}, {
54
+ fontSize: '14px',
55
+ fontWeight: '500',
56
+ display: 'flex',
57
+ ml: '14px',
58
+ color: 'neutral.30',
59
+ cursor: 'pointer'
60
+ });
53
61
  var environmentBreadcrumb = _objectSpread(_objectSpread({}, base), {}, {
54
62
  fontSize: 'sm',
55
63
  fontWeight: 3,
@@ -249,6 +257,7 @@ var text = _objectSpread(_objectSpread(_objectSpread({
249
257
  title: title,
250
258
  copyRightText: copyRightText,
251
259
  attachmentTitle: attachmentTitle,
252
- messagesText: _objectSpread({}, base)
260
+ messagesText: _objectSpread({}, base),
261
+ stepperLabel: stepperLabel
253
262
  });
254
263
  exports.text = text;
@@ -25,7 +25,7 @@ var _select = require("@react-aria/select");
25
25
  var _utils = require("@react-aria/utils");
26
26
  var _select2 = require("@react-stately/select");
27
27
  var _ListBox = _interopRequireDefault(require("../../components/ListBox/ListBox"));
28
- var _PopoverContainer = _interopRequireDefault(require("../../components/PopoverContainer"));
28
+ var _Popover = _interopRequireDefault(require("../../components/Popover/Popover"));
29
29
  var _ScrollBox = _interopRequireDefault(require("../../components/ScrollBox"));
30
30
  var _labelModes = require("../../utils/devUtils/constants/labelModes");
31
31
  var _ = require("..");
@@ -204,15 +204,11 @@ var useSelectField = function useSelectField(props, ref) {
204
204
  return state.close();
205
205
  }
206
206
  }));
207
- var overlay = (0, _react2.jsx)(_PopoverContainer["default"], {
208
- hasNoArrow: true,
209
- isDismissable: true,
207
+ var overlay = (0, _react2.jsx)(_Popover["default"], {
210
208
  isNonModal: true,
211
- isOpen: state.isOpen,
212
- onClose: state.close,
213
- placement: placement,
214
- ref: popoverRef,
215
- style: style
209
+ triggerRef: triggerRef,
210
+ style: style,
211
+ state: state
216
212
  }, (0, _react2.jsx)(_ScrollBox["default"], scrollBoxProps, listbox));
217
213
  return {
218
214
  columnStyleProps: columnStyleProps,
@@ -116,15 +116,25 @@ Warning.parameters = {
116
116
  url: FIGMA_LINKS.callout.warning
117
117
  }
118
118
  };
119
+ var iconContainer = {
120
+ display: 'flex',
121
+ justifyContent: 'center',
122
+ alignItems: 'center',
123
+ width: 25,
124
+ height: 25,
125
+ minWidth: 25,
126
+ minHeight: 25,
127
+ borderStyle: 'solid',
128
+ borderRadius: '50%',
129
+ backgroundColor: 'active',
130
+ borderColor: 'active',
131
+ color: 'text.primaryLight',
132
+ mx: 'md'
133
+ };
119
134
  export var WithCustomIcon = function WithCustomIcon() {
120
135
  return ___EmotionJSX(Callout, {
121
136
  icon: ___EmotionJSX(Box, {
122
- variant: "stepper.step.completed",
123
- mx: "md",
124
- minHeight: 25,
125
- minWidth: 25,
126
- height: 25,
127
- width: 25
137
+ sx: iconContainer
128
138
  }, ___EmotionJSX(Icon, {
129
139
  icon: CheckBoldIcon,
130
140
  title: {
@@ -0,0 +1,55 @@
1
+ import _Object$keys from "@babel/runtime-corejs3/core-js-stable/object/keys";
2
+ import _Object$getOwnPropertySymbols from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols";
3
+ import _filterInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/filter";
4
+ import _Object$getOwnPropertyDescriptor from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor";
5
+ import _forEachInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/for-each";
6
+ import _Object$getOwnPropertyDescriptors from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors";
7
+ import _Object$defineProperties from "@babel/runtime-corejs3/core-js-stable/object/define-properties";
8
+ import _Object$defineProperty from "@babel/runtime-corejs3/core-js-stable/object/define-property";
9
+ import _extends from "@babel/runtime-corejs3/helpers/esm/extends";
10
+ import _defineProperty from "@babel/runtime-corejs3/helpers/esm/defineProperty";
11
+ import _objectWithoutProperties from "@babel/runtime-corejs3/helpers/esm/objectWithoutProperties";
12
+ var _excluded = ["popoverRef", "state", "children", "className", "isNonModal", "width"];
13
+ 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; }
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
+ import * as React from 'react';
16
+ import { DismissButton, Overlay, usePopover } from '@react-aria/overlays';
17
+ import { useStatusClasses } from '../../hooks';
18
+ import Box from '../Box';
19
+ import { jsx as ___EmotionJSX } from "@emotion/react";
20
+ var Popover = function Popover(props) {
21
+ var ref = React.useRef(null);
22
+ var _props$popoverRef = props.popoverRef,
23
+ popoverRef = _props$popoverRef === void 0 ? ref : _props$popoverRef,
24
+ state = props.state,
25
+ children = props.children,
26
+ className = props.className,
27
+ isNonModal = props.isNonModal,
28
+ width = props.width,
29
+ others = _objectWithoutProperties(props, _excluded);
30
+ var _usePopover = usePopover(_objectSpread(_objectSpread({}, props), {}, {
31
+ popoverRef: popoverRef
32
+ }), state),
33
+ popoverProps = _usePopover.popoverProps,
34
+ underlayProps = _usePopover.underlayProps;
35
+ var isOpen = state.isOpen;
36
+ var _useStatusClasses = useStatusClasses(className, {
37
+ isOpen: isOpen
38
+ }),
39
+ classNames = _useStatusClasses.classNames;
40
+ if (!isOpen) {
41
+ return null;
42
+ }
43
+ return ___EmotionJSX(Overlay, null, !isNonModal && ___EmotionJSX("div", underlayProps), ___EmotionJSX(Box, _extends({
44
+ ref: popoverRef,
45
+ variant: "popoverMenu.container",
46
+ className: classNames,
47
+ role: "presentation",
48
+ width: width
49
+ }, popoverProps, others), !isNonModal && ___EmotionJSX(DismissButton, {
50
+ onDismiss: state.close
51
+ }), children, ___EmotionJSX(DismissButton, {
52
+ onDismiss: state.close
53
+ })));
54
+ };
55
+ export default Popover;
@@ -0,0 +1,67 @@
1
+ import _extends from "@babel/runtime-corejs3/helpers/esm/extends";
2
+ import React from 'react';
3
+ import { render, screen } from '@testing-library/react';
4
+ import Box from '../Box';
5
+ import Popover from './Popover';
6
+ import { jsx as ___EmotionJSX } from "@emotion/react";
7
+ var mockState = function mockState(isOpen) {
8
+ return {
9
+ isOpen: isOpen,
10
+ close: jest.fn(),
11
+ open: jest.fn(),
12
+ toggle: jest.fn(),
13
+ setOpen: jest.fn()
14
+ };
15
+ };
16
+ var triggerRef = /*#__PURE__*/React.createRef();
17
+ var defaultProps = {
18
+ 'data-testid': 'popover',
19
+ state: mockState(true),
20
+ triggerRef: triggerRef
21
+ };
22
+ var getComponent = function getComponent() {
23
+ var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
24
+ return render(___EmotionJSX(Popover, _extends({}, defaultProps, props), ___EmotionJSX(Box, {
25
+ "data-testid": "popover-children"
26
+ }, "I am in a popover")));
27
+ };
28
+ describe('Popover', function () {
29
+ test('does not render when isOpen is false', function () {
30
+ getComponent({
31
+ state: mockState(false)
32
+ });
33
+ expect(screen.queryByTestId('popover')).not.toBeInTheDocument();
34
+ });
35
+ test('renders when isOpen is true', function () {
36
+ getComponent({
37
+ state: mockState(true)
38
+ });
39
+ expect(screen.getByTestId('popover')).toBeInTheDocument();
40
+ expect(screen.getByTestId('popover-children')).toBeInTheDocument();
41
+ });
42
+ test('applies custom className', function () {
43
+ getComponent({
44
+ state: mockState(true),
45
+ className: 'custom-class'
46
+ });
47
+ expect(screen.getByTestId('popover')).toHaveClass('custom-class');
48
+ });
49
+ test('applies custom width', function () {
50
+ getComponent({
51
+ state: mockState(true),
52
+ width: 300
53
+ });
54
+ expect(screen.getByTestId('popover')).toHaveStyle({
55
+ width: '300px'
56
+ });
57
+ });
58
+ test('renders underlay and DismissButton when isNonModal is false', function () {
59
+ var _screen$getByTestId$p;
60
+ getComponent({
61
+ state: mockState(true),
62
+ isNonModal: false
63
+ });
64
+ expect((_screen$getByTestId$p = screen.getByTestId('popover').parentElement) === null || _screen$getByTestId$p === void 0 ? void 0 : _screen$getByTestId$p.querySelector('div')).toBeTruthy();
65
+ expect(screen.getByTestId('popover')).toBeInTheDocument();
66
+ });
67
+ });
@@ -0,0 +1 @@
1
+ export { default } from './Popover';
@@ -291,9 +291,6 @@ test('two listbox can not be open at the same time', function () {
291
291
  name: 'Alpha'
292
292
  })).toBeInTheDocument();
293
293
  userEvent.click(button2);
294
- expect(screen.queryByRole('listbox')).not.toBeInTheDocument();
295
- expect(screen.queryByRole('option')).not.toBeInTheDocument();
296
- userEvent.click(button2);
297
294
  expect(screen.queryByRole('listbox')).toBeInTheDocument();
298
295
  expect(screen.queryAllByRole('option')).toHaveLength(3);
299
296
  expect(screen.queryByRole('option', {
@@ -5,31 +5,38 @@ import CheckBoldIcon from '@pingux/mdi-react/CheckBoldIcon';
5
5
  import { useHover } from '@react-aria/interactions';
6
6
  import PropTypes from 'prop-types';
7
7
  import { Box, Icon } from '../../index';
8
+ import ORIENTATION from '../../utils/devUtils/constants/orientation';
8
9
  import { stepStatuses } from './Stepper.constants';
9
10
  import { jsx as ___EmotionJSX } from "@emotion/react";
10
11
  var COMPLETED = stepStatuses.COMPLETED,
11
12
  INACTIVE = stepStatuses.INACTIVE;
12
13
  var Step = /*#__PURE__*/forwardRef(function (props, ref) {
13
14
  var status = props.status,
14
- value = props.value;
15
+ value = props.value,
16
+ className = props.className,
17
+ orientation = props.orientation;
15
18
  var _useHover = useHover(props),
16
19
  hoverProps = _useHover.hoverProps,
17
20
  isHovered = _useHover.isHovered;
21
+ var stepValue = orientation !== ORIENTATION.VERTICAL && value;
18
22
  return ___EmotionJSX(Box, _extends({
19
23
  variant: "stepper.step.".concat(status),
20
24
  ref: ref
21
- }, hoverProps), status === COMPLETED && !isHovered ? ___EmotionJSX(Icon, {
25
+ }, hoverProps, {
26
+ className: className
27
+ }), status === COMPLETED && !isHovered ? ___EmotionJSX(Icon, {
22
28
  icon: CheckBoldIcon,
23
29
  size: 23,
24
30
  color: "text.primaryLight",
25
31
  title: {
26
32
  name: 'Check Bold Icon'
27
33
  }
28
- }) : value);
34
+ }) : stepValue);
29
35
  });
30
36
  Step.propTypes = {
31
37
  status: PropTypes.oneOf(_Object$values(stepStatuses)),
32
- value: PropTypes.number
38
+ value: PropTypes.number,
39
+ orientation: PropTypes.oneOf([ORIENTATION.VERTICAL, ORIENTATION.HORIZONTAL])
33
40
  };
34
41
  Step.defaultProps = {
35
42
  status: INACTIVE,
@@ -1,7 +1,7 @@
1
1
  import _extends from "@babel/runtime-corejs3/helpers/esm/extends";
2
2
  import _defineProperty from "@babel/runtime-corejs3/helpers/esm/defineProperty";
3
3
  import _objectWithoutProperties from "@babel/runtime-corejs3/helpers/esm/objectWithoutProperties";
4
- var _excluded = ["activeStep", "onStepChange", "tabListProps", "tooltipProps"];
4
+ var _excluded = ["activeStep", "onStepChange", "tabListProps", "tooltipProps", "orientation", "className"];
5
5
  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; }
6
6
  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; }
7
7
  import _Array$from from "@babel/runtime-corejs3/core-js-stable/array/from";
@@ -19,10 +19,13 @@ import _Object$defineProperty from "@babel/runtime-corejs3/core-js-stable/object
19
19
  import React, { forwardRef } from 'react';
20
20
  import { useSingleSelectListState } from '@react-stately/list';
21
21
  import PropTypes from 'prop-types';
22
- import { Step, Tab, Tabs } from '../..';
22
+ import { Box, Step, Tab, Tabs, Text } from '../..';
23
+ import { useStatusClasses } from '../../hooks';
24
+ import ORIENTATION from '../../utils/devUtils/constants/orientation';
23
25
  import isValidPositiveInt from '../../utils/devUtils/props/isValidPositiveInt';
24
26
  import Line from './Line';
25
27
  import { stepStatuses } from './Stepper.constants';
28
+ import { verticalLine } from './Stepper.styles';
26
29
  import { jsx as ___EmotionJSX } from "@emotion/react";
27
30
  var ACTIVE = stepStatuses.ACTIVE,
28
31
  COMPLETED = stepStatuses.COMPLETED,
@@ -33,6 +36,8 @@ var Stepper = /*#__PURE__*/forwardRef(function (props, ref) {
33
36
  onStepChange = props.onStepChange,
34
37
  tabListProps = props.tabListProps,
35
38
  tooltipProps = props.tooltipProps,
39
+ orientation = props.orientation,
40
+ className = props.className,
36
41
  others = _objectWithoutProperties(props, _excluded);
37
42
  var state = useSingleSelectListState(props);
38
43
  var getStatus = function getStatus(i) {
@@ -49,23 +54,46 @@ var Stepper = /*#__PURE__*/forwardRef(function (props, ref) {
49
54
  onStepChange(+key);
50
55
  }
51
56
  };
57
+ var _useStatusClasses = useStatusClasses(className, {
58
+ 'is-vertical': orientation === ORIENTATION.VERTICAL,
59
+ 'is-horizontal': orientation === ORIENTATION.HORIZONTAL
60
+ }),
61
+ classNames = _useStatusClasses.classNames;
52
62
  var steps = _Array$from(state.collection);
53
63
  var lines = _mapInstanceProperty(steps).call(steps, function (_v, i) {
54
64
  return ___EmotionJSX(Line, {
65
+ className: classNames,
55
66
  status: getStatus(i + 2)
56
67
  });
57
68
  });
58
69
  var isFirst = true; // make sure not to insert until there's at least one non-null child
59
70
 
60
71
  var render = _mapInstanceProperty(steps).call(steps, function (item, i) {
72
+ var _item$props;
61
73
  var stepIndex = i + 1;
62
74
  var stepStatus = getStatus(stepIndex);
75
+ var line = _Array$isArray(lines) ? lines[i - 1] : lines;
76
+ var defaultIndicator = ___EmotionJSX(Box, {
77
+ variant: "forms.label.indicator"
78
+ }, "*");
63
79
  var step = ___EmotionJSX(Step, {
64
80
  key: item.key,
65
81
  value: stepIndex,
66
- status: stepStatus
82
+ status: stepStatus,
83
+ className: classNames,
84
+ orientation: orientation
67
85
  });
68
- var line = _Array$isArray(lines) ? lines[i - 1] : lines;
86
+ var verticalStep = ___EmotionJSX(Box, {
87
+ isRow: true
88
+ }, ___EmotionJSX(Step, {
89
+ key: item.key,
90
+ value: stepIndex,
91
+ status: stepStatus,
92
+ className: classNames,
93
+ orientation: orientation
94
+ }), ___EmotionJSX(Text, {
95
+ variant: "stepperLabel"
96
+ }, item.textValue, (item === null || item === void 0 || (_item$props = item.props) === null || _item$props === void 0 ? void 0 : _item$props.isRequired) && defaultIndicator));
69
97
 
70
98
  /* istanbul ignore next */
71
99
  var textValue = item && item.value && item.value.label || item.textValue || stepIndex.toString();
@@ -79,11 +107,12 @@ var Stepper = /*#__PURE__*/forwardRef(function (props, ref) {
79
107
  variant: 'stepper.tabLabel'
80
108
  },
81
109
  textValue: textValue,
82
- title: step,
110
+ title: orientation === ORIENTATION.VERTICAL ? verticalStep : step,
83
111
  "aria-label": textValue,
84
112
  content: item.rendered,
85
- separator: !isFirst && line,
86
- tooltipTriggerProps: tooltipProps
113
+ separator: !isFirst && orientation === ORIENTATION.HORIZONTAL && !isFirst && line,
114
+ tooltipTriggerProps: tooltipProps,
115
+ sx: i !== steps.length - 1 && orientation === ORIENTATION.VERTICAL && verticalLine
87
116
  });
88
117
  isFirst = isFirst && !container;
89
118
  return container;
@@ -97,7 +126,8 @@ var Stepper = /*#__PURE__*/forwardRef(function (props, ref) {
97
126
  }, tabListProps),
98
127
  onSelectionChange: onStepChangeHandler,
99
128
  selectedKey: activeStep === null || activeStep === void 0 ? void 0 : activeStep.toString(),
100
- mode: "tooltip"
129
+ mode: "tooltip",
130
+ orientation: orientation
101
131
  }, others), render);
102
132
  });
103
133
  Stepper.propTypes = {
@@ -121,7 +151,11 @@ Stepper.propTypes = {
121
151
  onStepChange: PropTypes.func,
122
152
  /** A props object that is subsequently spread into the rendered tablist. */
123
153
  tabListProps: PropTypes.shape({}),
124
- tooltipProps: PropTypes.shape({})
154
+ tooltipProps: PropTypes.shape({}),
155
+ orientation: PropTypes.oneOf(['vertical', 'horizontal'])
125
156
  };
126
157
  Stepper.displayName = 'Stepper';
158
+ Stepper.defaultProps = {
159
+ orientation: 'horizontal'
160
+ };
127
161
  export default Stepper;
@@ -70,6 +70,23 @@ var steps = [{
70
70
  title: 'Excepteur Sint',
71
71
  name: 'step3'
72
72
  }];
73
+ var customSteps = [{
74
+ label: 'Duis Aute',
75
+ children: 'Quis autem vel eum iure reprehenderit qui in ea voluptate',
76
+ title: 'Duis Aute',
77
+ name: 'step1',
78
+ isRequired: true
79
+ }, {
80
+ label: 'Lorem Ipsum',
81
+ children: 'Sed ut perspiciatis unde omnis',
82
+ title: 'Lorem Ipsum',
83
+ name: 'step2'
84
+ }, {
85
+ label: 'Excepteur Sint',
86
+ children: 'Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam',
87
+ title: 'Excepteur Sint',
88
+ name: 'step3'
89
+ }];
73
90
  var sx = {
74
91
  overlayPanel: {
75
92
  padding: '0px',
@@ -84,6 +101,11 @@ var sx = {
84
101
  },
85
102
  buttonStyle: {
86
103
  margin: '50px 0px'
104
+ },
105
+ verticalContentContainer: {
106
+ marginTop: 'lg',
107
+ ml: 'lg',
108
+ gap: 'sm'
87
109
  }
88
110
  };
89
111
  export var Default = function Default(args) {
@@ -274,4 +296,27 @@ export var Panel = function Panel() {
274
296
  }, item.children)));
275
297
  })))
276
298
  );
299
+ };
300
+ export var VerticalStepper = function VerticalStepper() {
301
+ var _useState5 = useState(2),
302
+ _useState6 = _slicedToArray(_useState5, 2),
303
+ activeStep = _useState6[0],
304
+ setActiveStep = _useState6[1];
305
+ return ___EmotionJSX(Stepper, {
306
+ items: customSteps,
307
+ activeStep: activeStep,
308
+ onStepChange: setActiveStep,
309
+ orientation: "vertical",
310
+ mode: "tooltipIsDisabled"
311
+ }, function (item) {
312
+ return ___EmotionJSX(Item, {
313
+ key: item.name,
314
+ textValue: item.title,
315
+ isRequired: item === null || item === void 0 ? void 0 : item.isRequired
316
+ }, ___EmotionJSX(Box, {
317
+ sx: sx.verticalContentContainer
318
+ }, ___EmotionJSX(Text, {
319
+ fontSize: "md"
320
+ }, item.children)));
321
+ });
277
322
  };
@@ -18,19 +18,48 @@ var tabs = {
18
18
  outline: 'none',
19
19
  borderBottom: 'none',
20
20
  mb: 0,
21
- width: '100%',
22
- justifyContent: 'center'
21
+ justifyContent: 'center',
22
+ '&.is-horizontal': {
23
+ width: '100%'
24
+ },
25
+ '&.is-vertical': {
26
+ minWidth: '217px',
27
+ borderRight: '1px solid #e4e6e9'
28
+ }
29
+ };
30
+ export var verticalLine = {
31
+ '&:before': {
32
+ position: 'absolute',
33
+ content: '""',
34
+ borderLeft: '2px solid',
35
+ borderLeftColor: 'neutral.80',
36
+ left: '27px',
37
+ top: '28px',
38
+ height: '26px'
39
+ }
23
40
  };
24
41
  var tab = {
25
- mb: 0,
26
- mr: 0,
27
- outline: 'none',
28
- '&.is-focused': _objectSpread({
29
- borderRadius: '50%'
30
- }, defaultFocus),
31
- '&:not(:first-of-type)': {
32
- flex: 1,
33
- maxWidth: 122
42
+ '&.is-horizontal': {
43
+ mb: 0,
44
+ mr: 0,
45
+ outline: 'none',
46
+ '&.is-focused': _objectSpread({
47
+ borderRadius: '50%'
48
+ }, defaultFocus),
49
+ '&:not(:first-of-type)': {
50
+ flex: 1,
51
+ maxWidth: 122
52
+ }
53
+ },
54
+ '&.is-vertical': {
55
+ position: 'relative',
56
+ height: '42px',
57
+ width: '100%',
58
+ py: '12px',
59
+ px: '20px',
60
+ ':focus-visible:not(.is-focused)': {
61
+ outline: 'none'
62
+ }
34
63
  }
35
64
  };
36
65
  var tabLabel = {
@@ -42,13 +71,13 @@ var outerWrapper = {
42
71
 
43
72
  /** Step styles */
44
73
  var stepBase = {
74
+ display: 'flex',
75
+ justifyContent: 'center',
76
+ alignItems: 'center',
45
77
  width: 32,
46
78
  height: 32,
47
79
  minWidth: 32,
48
80
  minHeight: 32,
49
- display: 'flex',
50
- justifyContent: 'center',
51
- alignItems: 'center',
52
81
  borderWidth: 1,
53
82
  borderStyle: 'solid',
54
83
  borderRadius: '50%',
@@ -61,22 +90,47 @@ var stepBase = {
61
90
  color: 'text.primaryLight'
62
91
  }
63
92
  };
93
+ var stepBaseVertical = _objectSpread(_objectSpread({}, stepBase), {}, {
94
+ width: 16,
95
+ height: 16,
96
+ minWidth: 16,
97
+ minHeight: 16
98
+ });
64
99
  var step = {
65
- active: _objectSpread({
66
- backgroundColor: 'accent.99',
67
- borderColor: 'active',
68
- color: 'active'
69
- }, stepBase),
70
- completed: _objectSpread({
71
- backgroundColor: 'active',
72
- borderColor: 'active',
73
- color: 'text.primaryLight'
74
- }, stepBase),
75
- inactive: _objectSpread({
76
- backgroundColor: 'white',
77
- borderColor: 'neutral.80',
78
- color: 'neutral.40'
79
- }, stepBase)
100
+ active: {
101
+ '&.is-horizontal': _objectSpread({
102
+ backgroundColor: 'accent.99',
103
+ borderColor: 'active',
104
+ color: 'active'
105
+ }, stepBase),
106
+ '&.is-vertical': _objectSpread(_objectSpread({}, stepBaseVertical), {}, {
107
+ backgroundColor: '#fff',
108
+ border: '4px solid',
109
+ borderColor: 'active'
110
+ })
111
+ },
112
+ completed: {
113
+ '&.is-horizontal': _objectSpread({
114
+ backgroundColor: 'active',
115
+ borderColor: 'active',
116
+ color: 'text.primaryLight'
117
+ }, stepBase),
118
+ '&.is-vertical': _objectSpread({
119
+ backgroundColor: 'active',
120
+ borderColor: 'transparent'
121
+ }, stepBaseVertical)
122
+ },
123
+ inactive: {
124
+ '&.is-horizontal': _objectSpread({
125
+ backgroundColor: 'white',
126
+ borderColor: 'neutral.80',
127
+ color: 'neutral.40'
128
+ }, stepBase),
129
+ '&.is-vertical': _objectSpread(_objectSpread({}, stepBaseVertical), {}, {
130
+ backgroundColor: '#caced3',
131
+ border: '4px solid #fff'
132
+ })
133
+ }
80
134
  };
81
135
 
82
136
  /** Line styles */
@@ -41,6 +41,14 @@ var tabLabel = _objectSpread(_objectSpread(_objectSpread({}, base), wordWrap), {
41
41
  color: 'neutral.80'
42
42
  }
43
43
  });
44
+ var stepperLabel = _objectSpread(_objectSpread({}, base), {}, {
45
+ fontSize: '14px',
46
+ fontWeight: '500',
47
+ display: 'flex',
48
+ ml: '14px',
49
+ color: 'neutral.30',
50
+ cursor: 'pointer'
51
+ });
44
52
  var environmentBreadcrumb = _objectSpread(_objectSpread({}, base), {}, {
45
53
  fontSize: 'sm',
46
54
  fontWeight: 3,
@@ -240,5 +248,6 @@ export var text = _objectSpread(_objectSpread(_objectSpread({
240
248
  title: title,
241
249
  copyRightText: copyRightText,
242
250
  attachmentTitle: attachmentTitle,
243
- messagesText: _objectSpread({}, base)
251
+ messagesText: _objectSpread({}, base),
252
+ stepperLabel: stepperLabel
244
253
  });
@@ -18,7 +18,7 @@ import { useSelect } from '@react-aria/select';
18
18
  import { useResizeObserver } from '@react-aria/utils';
19
19
  import { useSelectState } from '@react-stately/select';
20
20
  import ListBox from '../../components/ListBox/ListBox';
21
- import PopoverContainer from '../../components/PopoverContainer';
21
+ import Popover from '../../components/Popover/Popover';
22
22
  import ScrollBox from '../../components/ScrollBox';
23
23
  import { modes } from '../../utils/devUtils/constants/labelModes';
24
24
  import { useColumnStyles, useDeprecationWarning, useField } from '..';
@@ -193,15 +193,11 @@ var useSelectField = function useSelectField(props, ref) {
193
193
  return state.close();
194
194
  }
195
195
  }));
196
- var overlay = ___EmotionJSX(PopoverContainer, {
197
- hasNoArrow: true,
198
- isDismissable: true,
196
+ var overlay = ___EmotionJSX(Popover, {
199
197
  isNonModal: true,
200
- isOpen: state.isOpen,
201
- onClose: state.close,
202
- placement: placement,
203
- ref: popoverRef,
204
- style: style
198
+ triggerRef: triggerRef,
199
+ style: style,
200
+ state: state
205
201
  }, ___EmotionJSX(ScrollBox, scrollBoxProps, listbox));
206
202
  return {
207
203
  columnStyleProps: columnStyleProps,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pingux/astro",
3
- "version": "2.140.0-alpha.4",
3
+ "version": "2.140.0-alpha.6",
4
4
  "description": "React component library for Ping Identity's design system",
5
5
  "repository": {
6
6
  "type": "git",
@@ -71,7 +71,7 @@
71
71
  "@react-aria/list": "^3.0.0-beta.0",
72
72
  "@react-aria/listbox": "~3.10.2",
73
73
  "@react-aria/live-announcer": "~3.1.1",
74
- "@react-aria/overlays": "^3.7.0",
74
+ "@react-aria/overlays": "^3.28.0",
75
75
  "@react-aria/progress": "^3.4.9",
76
76
  "@react-aria/select": "^3.14.5",
77
77
  "@react-aria/selection": "~3.10.1",