@pingux/astro 2.203.0-alpha.0 → 2.205.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.
- package/lib/cjs/components/LinkSelectField/LinkSelectField.js +29 -10
- package/lib/cjs/components/LinkSelectField/LinkSelectField.stories.js +55 -1
- package/lib/cjs/components/LinkSelectField/LinkSelectField.test.js +33 -8
- package/lib/cjs/components/Stepper/Line.d.ts +7 -0
- package/lib/cjs/components/Stepper/Line.js +0 -5
- package/lib/cjs/components/Stepper/Step.d.ts +10 -0
- package/lib/cjs/components/Stepper/Step.js +6 -14
- package/lib/cjs/components/Stepper/Stepper.constants.d.ts +6 -0
- package/lib/cjs/components/Stepper/Stepper.d.ts +4 -0
- package/lib/cjs/components/Stepper/Stepper.js +15 -29
- package/lib/cjs/components/Stepper/Stepper.stories.js +2 -2
- package/lib/cjs/components/Stepper/Stepper.styles.d.ts +257 -0
- package/lib/cjs/components/Stepper/Stepper.test.js +18 -20
- package/lib/cjs/components/Stepper/index.d.ts +2 -0
- package/lib/cjs/styles/themeOverrides/onyxDarkUiLibraryOverride.js +3 -1
- package/lib/cjs/types/Stepper.d.ts +33 -0
- package/lib/cjs/types/Stepper.js +6 -0
- package/lib/cjs/types/index.d.ts +1 -0
- package/lib/cjs/types/index.js +20 -9
- package/lib/cjs/types/tabs.d.ts +2 -2
- package/lib/cjs/utils/devUtils/props/isValidPositiveInt.d.ts +2 -0
- package/lib/cjs/utils/devUtils/props/isValidPositiveInt.js +2 -1
- package/lib/components/LinkSelectField/LinkSelectField.js +29 -10
- package/lib/components/LinkSelectField/LinkSelectField.stories.js +55 -1
- package/lib/components/LinkSelectField/LinkSelectField.test.js +33 -8
- package/lib/components/Stepper/Line.js +0 -5
- package/lib/components/Stepper/Step.js +6 -14
- package/lib/components/Stepper/Stepper.js +17 -31
- package/lib/components/Stepper/Stepper.stories.js +2 -2
- package/lib/components/Stepper/Stepper.test.js +18 -20
- package/lib/styles/themeOverrides/onyxDarkUiLibraryOverride.js +3 -1
- package/lib/types/Stepper.js +1 -0
- package/lib/types/index.js +1 -0
- package/lib/utils/devUtils/props/isValidPositiveInt.js +2 -1
- package/package.json +1 -1
|
@@ -15,6 +15,7 @@ _Object$defineProperty(exports, "__esModule", {
|
|
|
15
15
|
value: true
|
|
16
16
|
});
|
|
17
17
|
exports["default"] = void 0;
|
|
18
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/objectWithoutProperties"));
|
|
18
19
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
|
|
19
20
|
var _objectDestructuringEmpty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/objectDestructuringEmpty"));
|
|
20
21
|
var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
|
|
@@ -31,6 +32,7 @@ var _fieldAttributes = require("../../utils/docUtils/fieldAttributes");
|
|
|
31
32
|
var _statusProp = require("../../utils/docUtils/statusProp");
|
|
32
33
|
var _SelectFieldBase = _interopRequireDefault(require("../SelectFieldBase"));
|
|
33
34
|
var _react2 = require("@emotion/react");
|
|
35
|
+
var _excluded = ["sx"];
|
|
34
36
|
function _interopRequireWildcard(e, t) { if ("function" == typeof _WeakMap) var r = new _WeakMap(), n = new _WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = _Object$defineProperty) && _Object$getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
|
|
35
37
|
function ownKeys(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
36
38
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context = ownKeys(Object(t), !0)).call(_context, function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context2 = ownKeys(Object(t))).call(_context2, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
@@ -40,10 +42,11 @@ var LinkSelectField = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref)
|
|
|
40
42
|
isDisabled = props.isDisabled,
|
|
41
43
|
status = props.status,
|
|
42
44
|
helperText = props.helperText,
|
|
43
|
-
iconProps = props.iconProps,
|
|
44
45
|
hasInlineLoader = props.hasInlineLoader,
|
|
45
46
|
popoverWidth = props.popoverWidth,
|
|
46
|
-
|
|
47
|
+
iconProps = props.iconProps,
|
|
48
|
+
triggerProps = props.triggerProps,
|
|
49
|
+
triggerProp = props.trigger;
|
|
47
50
|
var _getAriaAttributeProp = (0, _ariaAttributes.getAriaAttributeProps)(props),
|
|
48
51
|
ariaProps = _getAriaAttributeProp.ariaProps;
|
|
49
52
|
var _useGetTheme = (0, _hooks.useGetTheme)(),
|
|
@@ -67,7 +70,10 @@ var LinkSelectField = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref)
|
|
|
67
70
|
state = selectFieldProps.state,
|
|
68
71
|
raTriggerProps = selectFieldProps.triggerProps,
|
|
69
72
|
triggerRef = selectFieldProps.triggerRef;
|
|
70
|
-
var
|
|
73
|
+
var _ref = iconProps || {},
|
|
74
|
+
iconPropsSx = _ref.sx,
|
|
75
|
+
restIconProps = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
|
|
76
|
+
var triggerNode = (0, _react2.jsx)(_.Button, (0, _extends2["default"])({
|
|
71
77
|
className: fieldControlInputProps.className,
|
|
72
78
|
ref: triggerRef,
|
|
73
79
|
variant: "selectLink",
|
|
@@ -87,23 +93,25 @@ var LinkSelectField = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref)
|
|
|
87
93
|
variant: "forms.select.arrow"
|
|
88
94
|
}, (0, _react2.jsx)(_.Icon, (0, _extends2["default"])({
|
|
89
95
|
icon: MenuDown,
|
|
96
|
+
title: {
|
|
97
|
+
name: 'Menu Down Icon'
|
|
98
|
+
},
|
|
99
|
+
sx: _objectSpread(_objectSpread({}, state.isOpen ? {
|
|
100
|
+
transform: 'rotate(180deg)'
|
|
101
|
+
} : null), iconPropsSx)
|
|
102
|
+
}, restIconProps, {
|
|
90
103
|
title: {
|
|
91
104
|
name: ''
|
|
92
105
|
},
|
|
93
106
|
color: isOnyx ? 'font.link' : 'active',
|
|
94
107
|
size: linkSelectFieldIcon,
|
|
95
108
|
"aria-hidden": "true"
|
|
96
|
-
}, iconProps, {
|
|
97
|
-
sx: _objectSpread({
|
|
98
|
-
transform: state.isOpen ? 'rotate(180deg)' : 'rotate(0deg)',
|
|
99
|
-
transition: 'transform 150ms ease'
|
|
100
|
-
}, iconProps === null || iconProps === void 0 ? void 0 : iconProps.sx)
|
|
101
109
|
})))), (0, _react2.jsx)(_reactAria.VisuallyHidden, {
|
|
102
110
|
"aria-live": "polite",
|
|
103
111
|
id: helperTextId
|
|
104
112
|
}, helperText));
|
|
105
113
|
return (0, _react2.jsx)(_SelectFieldBase["default"], (0, _extends2["default"])({}, props, selectFieldProps, {
|
|
106
|
-
trigger:
|
|
114
|
+
trigger: triggerProp || triggerNode
|
|
107
115
|
}));
|
|
108
116
|
});
|
|
109
117
|
LinkSelectField.propTypes = _objectSpread(_objectSpread(_objectSpread({
|
|
@@ -172,8 +180,19 @@ LinkSelectField.propTypes = _objectSpread(_objectSpread(_objectSpread({
|
|
|
172
180
|
onSelectionChange: _propTypes["default"].func,
|
|
173
181
|
/** Display an inline loader inside the select trigger while loading. */
|
|
174
182
|
hasInlineLoader: _propTypes["default"].bool,
|
|
183
|
+
/**
|
|
184
|
+
* Props object that is spread directly into the Icon inside the default trigger button.
|
|
185
|
+
* Supports all IconProps (icon, title, size, color, sx, etc.).
|
|
186
|
+
* The sx prop is merged with the rotation style.
|
|
187
|
+
*/
|
|
188
|
+
iconProps: _propTypes["default"].shape({}),
|
|
175
189
|
/** Width of the popover menu. Accepts any valid CSS unit. */
|
|
176
|
-
popoverWidth: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number])
|
|
190
|
+
popoverWidth: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number]),
|
|
191
|
+
/**
|
|
192
|
+
* A ReactNode that replaces the default Button trigger entirely.
|
|
193
|
+
* When provided, the local Button element is not rendered.
|
|
194
|
+
*/
|
|
195
|
+
trigger: _propTypes["default"].node
|
|
177
196
|
}, _statusProp.statusPropTypes), _fieldAttributes.inputFieldAttributesBasePropTypes), _ariaAttributes.ariaAttributesBasePropTypes);
|
|
178
197
|
LinkSelectField.defaultProps = _objectSpread({
|
|
179
198
|
placeholder: 'Select',
|
|
@@ -23,7 +23,7 @@ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequ
|
|
|
23
23
|
_Object$defineProperty(exports, "__esModule", {
|
|
24
24
|
value: true
|
|
25
25
|
});
|
|
26
|
-
exports["default"] = exports.WithPopoverWidth = exports.WithNoneOption = exports.NoOptionsAvailable = exports.LeftLabel = exports.HelperText = exports.DynamicItems = exports.DisabledOptions = exports.DisabledField = exports.Default = exports.Controlled = exports.AsyncLoading = void 0;
|
|
26
|
+
exports["default"] = exports.WithPopoverWidth = exports.WithNoneOption = exports.WithIconProps = exports.WithCustomTrigger = exports.NoOptionsAvailable = exports.LeftLabel = exports.HelperText = exports.DynamicItems = exports.DisabledOptions = exports.DisabledField = exports.Default = exports.Controlled = exports.AsyncLoading = void 0;
|
|
27
27
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/asyncToGenerator"));
|
|
28
28
|
var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
|
|
29
29
|
var _fill = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/fill"));
|
|
@@ -32,6 +32,7 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/e
|
|
|
32
32
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
|
|
33
33
|
var _react = _interopRequireWildcard(require("react"));
|
|
34
34
|
var _reactAria = require("react-aria");
|
|
35
|
+
var _EarthIcon = _interopRequireDefault(require("@pingux/mdi-react/EarthIcon"));
|
|
35
36
|
var _storybookDocsLayout = _interopRequireDefault(require("../../../.storybook/storybookDocsLayout"));
|
|
36
37
|
var _users = require("../../api/users");
|
|
37
38
|
var _index = require("../../index");
|
|
@@ -94,6 +95,14 @@ var _default = exports["default"] = {
|
|
|
94
95
|
isRequired: {},
|
|
95
96
|
selectedKey: {
|
|
96
97
|
control: false
|
|
98
|
+
},
|
|
99
|
+
iconProps: {
|
|
100
|
+
control: false,
|
|
101
|
+
description: 'Props object spread into the Icon inside the default trigger button. Supports icon, title, size, color, sx, and other IconProps. The sx prop is merged with the rotation style.'
|
|
102
|
+
},
|
|
103
|
+
trigger: {
|
|
104
|
+
control: false,
|
|
105
|
+
description: 'A ReactNode that replaces the default Button trigger entirely. When provided, the local Button element is not rendered.'
|
|
97
106
|
}
|
|
98
107
|
}, _statusProp.statusArgTypes), _ariaAttributes.ariaAttributeBaseArgTypes), _fieldAttributes.inputFieldAttributeBaseArgTypes),
|
|
99
108
|
args: {
|
|
@@ -352,4 +361,49 @@ WithPopoverWidth.parameters = {
|
|
|
352
361
|
story: 'The `popoverWidth` prop can be used to set a custom width for the dropdown/popover.'
|
|
353
362
|
}
|
|
354
363
|
}
|
|
364
|
+
};
|
|
365
|
+
var WithIconProps = exports.WithIconProps = function WithIconProps() {
|
|
366
|
+
return (0, _react2.jsx)(_reactAria.OverlayProvider, null, (0, _react2.jsx)(_index.LinkSelectField, {
|
|
367
|
+
label: "What's your favorite color?",
|
|
368
|
+
iconProps: {
|
|
369
|
+
icon: _EarthIcon["default"],
|
|
370
|
+
sx: {
|
|
371
|
+
color: 'accent.40'
|
|
372
|
+
}
|
|
373
|
+
}
|
|
374
|
+
}, (0, _react2.jsx)(_index.Item, {
|
|
375
|
+
key: "red"
|
|
376
|
+
}, "Red"), (0, _react2.jsx)(_index.Item, {
|
|
377
|
+
key: "blue"
|
|
378
|
+
}, "Blue"), (0, _react2.jsx)(_index.Item, {
|
|
379
|
+
key: "yellow"
|
|
380
|
+
}, "Yellow")));
|
|
381
|
+
};
|
|
382
|
+
WithIconProps.parameters = {
|
|
383
|
+
docs: {
|
|
384
|
+
description: {
|
|
385
|
+
story: 'Use the `iconProps` prop to customize the icon inside the default trigger button. Here a different icon and custom `sx` color are passed via `iconProps`.'
|
|
386
|
+
}
|
|
387
|
+
}
|
|
388
|
+
};
|
|
389
|
+
var WithCustomTrigger = exports.WithCustomTrigger = function WithCustomTrigger() {
|
|
390
|
+
return (0, _react2.jsx)(_reactAria.OverlayProvider, null, (0, _react2.jsx)(_index.LinkSelectField, {
|
|
391
|
+
label: "What's your favorite color?",
|
|
392
|
+
trigger: (0, _react2.jsx)(_index.Button, {
|
|
393
|
+
variant: "primary"
|
|
394
|
+
}, "Open menu")
|
|
395
|
+
}, (0, _react2.jsx)(_index.Item, {
|
|
396
|
+
key: "red"
|
|
397
|
+
}, "Red"), (0, _react2.jsx)(_index.Item, {
|
|
398
|
+
key: "blue"
|
|
399
|
+
}, "Blue"), (0, _react2.jsx)(_index.Item, {
|
|
400
|
+
key: "yellow"
|
|
401
|
+
}, "Yellow")));
|
|
402
|
+
};
|
|
403
|
+
WithCustomTrigger.parameters = {
|
|
404
|
+
docs: {
|
|
405
|
+
description: {
|
|
406
|
+
story: 'Use the `trigger` prop to supply a fully custom ReactNode trigger, replacing the default `Button` element entirely.'
|
|
407
|
+
}
|
|
408
|
+
}
|
|
355
409
|
};
|
|
@@ -15,6 +15,7 @@ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequ
|
|
|
15
15
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/asyncToGenerator"));
|
|
16
16
|
var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
|
|
17
17
|
var _react = _interopRequireDefault(require("react"));
|
|
18
|
+
var _EarthIcon = _interopRequireDefault(require("@pingux/mdi-react/EarthIcon"));
|
|
18
19
|
var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
|
|
19
20
|
var _index = require("../../index");
|
|
20
21
|
var _statuses = _interopRequireDefault(require("../../utils/devUtils/constants/statuses"));
|
|
@@ -231,23 +232,47 @@ test('passing helper text should display it and correct aria attributes on input
|
|
|
231
232
|
var helperTextID = helper.getAttribute('id');
|
|
232
233
|
expect(_testWrapper.screen.getByRole('button')).toHaveAttribute('aria-describedby', helperTextID);
|
|
233
234
|
});
|
|
234
|
-
test('iconProps
|
|
235
|
-
var iconTestId = 'custom-icon';
|
|
235
|
+
test('iconProps data-testid is applied to the inner Icon element', function () {
|
|
236
236
|
getComponent({
|
|
237
237
|
iconProps: {
|
|
238
|
-
'data-testid':
|
|
238
|
+
'data-testid': 'custom-icon',
|
|
239
|
+
sx: {
|
|
240
|
+
color: 'red'
|
|
241
|
+
}
|
|
239
242
|
}
|
|
240
243
|
});
|
|
241
|
-
|
|
244
|
+
var icon = _testWrapper.screen.getByTestId('custom-icon');
|
|
245
|
+
expect(icon).toBeInTheDocument();
|
|
246
|
+
expect(icon).toBeInstanceOf(SVGSVGElement);
|
|
242
247
|
});
|
|
243
|
-
test('
|
|
248
|
+
test('iconProps with a custom icon renders the substitute icon without throwing', function () {
|
|
244
249
|
getComponent({
|
|
245
|
-
|
|
246
|
-
|
|
250
|
+
iconProps: {
|
|
251
|
+
icon: _EarthIcon["default"]
|
|
247
252
|
}
|
|
248
253
|
});
|
|
254
|
+
// The default trigger button is still present when only iconProps is provided
|
|
255
|
+
var button = _testWrapper.screen.getByRole('button');
|
|
256
|
+
expect(button).toBeInTheDocument();
|
|
257
|
+
});
|
|
258
|
+
test('trigger prop replaces the default Button trigger', function () {
|
|
259
|
+
getComponent({
|
|
260
|
+
trigger: (0, _react2.jsx)("button", {
|
|
261
|
+
type: "button",
|
|
262
|
+
"data-testid": "custom-trigger"
|
|
263
|
+
}, "Custom")
|
|
264
|
+
});
|
|
265
|
+
expect(_testWrapper.screen.getByTestId('custom-trigger')).toBeInTheDocument();
|
|
266
|
+
// The default Button trigger (identified by its pendo data attribute) should not be rendered
|
|
267
|
+
expect(document.querySelector('[data-pendo-id="LinkSelectField"]')).not.toBeInTheDocument();
|
|
268
|
+
});
|
|
269
|
+
test('default render is unchanged when neither iconProps nor trigger is provided', function () {
|
|
270
|
+
getComponent();
|
|
271
|
+
// The default trigger button is present via getByRole
|
|
249
272
|
var button = _testWrapper.screen.getByRole('button');
|
|
250
|
-
expect(button).
|
|
273
|
+
expect(button).toBeInTheDocument();
|
|
274
|
+
// The default button has the pendo ID set by the component
|
|
275
|
+
expect(document.querySelector('[data-pendo-id="LinkSelectField"]')).toBeInTheDocument();
|
|
251
276
|
});
|
|
252
277
|
|
|
253
278
|
// Needs to be added to each components test file
|
|
@@ -6,9 +6,7 @@ _Object$defineProperty(exports, "__esModule", {
|
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
8
|
exports["default"] = void 0;
|
|
9
|
-
var _values = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/values"));
|
|
10
9
|
var _react = _interopRequireDefault(require("react"));
|
|
11
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
12
10
|
var _hooks = require("../../hooks");
|
|
13
11
|
var _Box = _interopRequireDefault(require("../Box"));
|
|
14
12
|
var _Stepper = require("./Stepper.constants");
|
|
@@ -29,7 +27,4 @@ var Line = function Line(_ref) {
|
|
|
29
27
|
className: classNames
|
|
30
28
|
});
|
|
31
29
|
};
|
|
32
|
-
Line.propTypes = {
|
|
33
|
-
status: _propTypes["default"].oneOf((0, _values["default"])(_Stepper.stepStatuses))
|
|
34
|
-
};
|
|
35
30
|
var _default = exports["default"] = Line;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { StepStatus } from './Stepper.constants';
|
|
3
|
+
interface StepProps {
|
|
4
|
+
status?: StepStatus;
|
|
5
|
+
value?: number;
|
|
6
|
+
className?: string;
|
|
7
|
+
orientation?: 'vertical' | 'horizontal';
|
|
8
|
+
}
|
|
9
|
+
declare const Step: React.ForwardRefExoticComponent<StepProps & React.RefAttributes<HTMLElement>>;
|
|
10
|
+
export default Step;
|
|
@@ -9,12 +9,10 @@ _Object$defineProperty(exports, "__esModule", {
|
|
|
9
9
|
value: true
|
|
10
10
|
});
|
|
11
11
|
exports["default"] = void 0;
|
|
12
|
-
var _values = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/values"));
|
|
13
12
|
var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
|
|
14
13
|
var _react = _interopRequireWildcard(require("react"));
|
|
15
14
|
var _CheckBoldIcon = _interopRequireDefault(require("@pingux/mdi-react/CheckBoldIcon"));
|
|
16
15
|
var _interactions = require("@react-aria/interactions");
|
|
17
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
18
16
|
var _index = require("../../index");
|
|
19
17
|
var _orientation = _interopRequireDefault(require("../../utils/devUtils/constants/orientation"));
|
|
20
18
|
var _Stepper = require("./Stepper.constants");
|
|
@@ -23,11 +21,13 @@ function _interopRequireWildcard(e, t) { if ("function" == typeof _WeakMap) var
|
|
|
23
21
|
var COMPLETED = _Stepper.stepStatuses.COMPLETED,
|
|
24
22
|
INACTIVE = _Stepper.stepStatuses.INACTIVE;
|
|
25
23
|
var Step = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
26
|
-
var status = props.status,
|
|
27
|
-
|
|
24
|
+
var _props$status = props.status,
|
|
25
|
+
status = _props$status === void 0 ? INACTIVE : _props$status,
|
|
26
|
+
_props$value = props.value,
|
|
27
|
+
value = _props$value === void 0 ? 0 : _props$value,
|
|
28
28
|
className = props.className,
|
|
29
29
|
orientation = props.orientation;
|
|
30
|
-
var _useHover = (0, _interactions.useHover)(
|
|
30
|
+
var _useHover = (0, _interactions.useHover)({}),
|
|
31
31
|
hoverProps = _useHover.hoverProps,
|
|
32
32
|
isHovered = _useHover.isHovered;
|
|
33
33
|
var stepValue = orientation !== _orientation["default"].VERTICAL && value;
|
|
@@ -45,13 +45,5 @@ var Step = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
45
45
|
}
|
|
46
46
|
}) : stepValue);
|
|
47
47
|
});
|
|
48
|
-
Step.
|
|
49
|
-
status: _propTypes["default"].oneOf((0, _values["default"])(_Stepper.stepStatuses)),
|
|
50
|
-
value: _propTypes["default"].number,
|
|
51
|
-
orientation: _propTypes["default"].oneOf([_orientation["default"].VERTICAL, _orientation["default"].HORIZONTAL])
|
|
52
|
-
};
|
|
53
|
-
Step.defaultProps = {
|
|
54
|
-
status: INACTIVE,
|
|
55
|
-
value: 0
|
|
56
|
-
};
|
|
48
|
+
Step.displayName = 'Step';
|
|
57
49
|
var _default = exports["default"] = Step;
|
|
@@ -23,11 +23,11 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/he
|
|
|
23
23
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/objectWithoutProperties"));
|
|
24
24
|
var _react = _interopRequireWildcard(require("react"));
|
|
25
25
|
var _list = require("@react-stately/list");
|
|
26
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
27
26
|
var _ = require("../..");
|
|
28
27
|
var _hooks = require("../../hooks");
|
|
29
28
|
var _orientation = _interopRequireDefault(require("../../utils/devUtils/constants/orientation"));
|
|
30
29
|
var _isValidPositiveInt = _interopRequireDefault(require("../../utils/devUtils/props/isValidPositiveInt"));
|
|
30
|
+
var _Tab = _interopRequireDefault(require("../Tab"));
|
|
31
31
|
var _Line = _interopRequireDefault(require("./Line"));
|
|
32
32
|
var _Stepper = require("./Stepper.constants");
|
|
33
33
|
var _Stepper2 = require("./Stepper.styles");
|
|
@@ -49,6 +49,15 @@ var Stepper = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
49
49
|
orientation = props.orientation,
|
|
50
50
|
className = props.className,
|
|
51
51
|
others = (0, _objectWithoutProperties2["default"])(props, _excluded);
|
|
52
|
+
var stepperRef = (0, _hooks.useLocalOrForwardRef)(ref);
|
|
53
|
+
if (process.env.NODE_ENV !== 'production' && props.activeStep !== undefined) {
|
|
54
|
+
var validationError = (0, _isValidPositiveInt["default"])({
|
|
55
|
+
activeStep: props.activeStep
|
|
56
|
+
}, 'activeStep', 'Stepper');
|
|
57
|
+
if (validationError) {
|
|
58
|
+
console.error(validationError.message);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
52
61
|
var state = (0, _list.useSingleSelectListState)(props);
|
|
53
62
|
var getStatus = function getStatus(i) {
|
|
54
63
|
if (i === activeStep) {
|
|
@@ -61,7 +70,7 @@ var Stepper = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
61
70
|
};
|
|
62
71
|
var onStepChangeHandler = function onStepChangeHandler(key) {
|
|
63
72
|
if (onStepChange) {
|
|
64
|
-
onStepChange(
|
|
73
|
+
onStepChange(Number(key));
|
|
65
74
|
}
|
|
66
75
|
};
|
|
67
76
|
var _useStatusClasses = (0, _hooks.useStatusClasses)(className, {
|
|
@@ -107,7 +116,8 @@ var Stepper = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
107
116
|
|
|
108
117
|
/* istanbul ignore next */
|
|
109
118
|
var textValue = item && item.value && item.value.label || item.textValue || stepIndex.toString();
|
|
110
|
-
var
|
|
119
|
+
var TabItem = _Tab["default"];
|
|
120
|
+
var container = (0, _react2.jsx)(TabItem, {
|
|
111
121
|
key: stepIndex,
|
|
112
122
|
variant: "stepper.tab",
|
|
113
123
|
tabLineProps: {
|
|
@@ -122,13 +132,13 @@ var Stepper = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
122
132
|
content: item.rendered,
|
|
123
133
|
separator: !isFirst && orientation === _orientation["default"].HORIZONTAL && !isFirst && line,
|
|
124
134
|
tooltipTriggerProps: tooltipProps,
|
|
125
|
-
sx: i !== steps.length - 1 && orientation === _orientation["default"].VERTICAL
|
|
135
|
+
sx: i !== steps.length - 1 && orientation === _orientation["default"].VERTICAL ? _Stepper2.verticalLine : undefined
|
|
126
136
|
});
|
|
127
137
|
isFirst = isFirst && !container;
|
|
128
138
|
return container;
|
|
129
139
|
});
|
|
130
140
|
return (0, _react2.jsx)(_.Tabs, (0, _extends2["default"])({
|
|
131
|
-
ref:
|
|
141
|
+
ref: stepperRef,
|
|
132
142
|
variant: "stepper.wrapper",
|
|
133
143
|
tabListProps: _objectSpread({
|
|
134
144
|
variant: 'stepper.tabs',
|
|
@@ -140,30 +150,6 @@ var Stepper = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
140
150
|
orientation: orientation
|
|
141
151
|
}, others), render);
|
|
142
152
|
});
|
|
143
|
-
Stepper.propTypes = {
|
|
144
|
-
/**
|
|
145
|
-
* *For performance reasons,
|
|
146
|
-
use this prop instead of Array.map when iteratively rendering Items*.
|
|
147
|
-
* For use with [dynamic collections](https://react-spectrum.adobe.com/react-stately/collections.html#dynamic-collections).
|
|
148
|
-
*/
|
|
149
|
-
items: _propTypes["default"].arrayOf(_propTypes["default"].shape({
|
|
150
|
-
/** The primary option for the tooltip label. */
|
|
151
|
-
label: _propTypes["default"].string,
|
|
152
|
-
children: _propTypes["default"].node,
|
|
153
|
-
name: _propTypes["default"].string
|
|
154
|
-
})),
|
|
155
|
-
/** The number of the current step (using one-based indexing) */
|
|
156
|
-
activeStep: _isValidPositiveInt["default"],
|
|
157
|
-
/**
|
|
158
|
-
* Handler that is called when the current step changes
|
|
159
|
-
* `(index: number) => void`
|
|
160
|
-
*/
|
|
161
|
-
onStepChange: _propTypes["default"].func,
|
|
162
|
-
/** A props object that is subsequently spread into the rendered tablist. */
|
|
163
|
-
tabListProps: _propTypes["default"].shape({}),
|
|
164
|
-
tooltipProps: _propTypes["default"].shape({}),
|
|
165
|
-
orientation: _propTypes["default"].oneOf(['vertical', 'horizontal'])
|
|
166
|
-
};
|
|
167
153
|
Stepper.displayName = 'Stepper';
|
|
168
154
|
Stepper.defaultProps = {
|
|
169
155
|
orientation: 'horizontal'
|
|
@@ -16,7 +16,7 @@ var _CreationOutlineIcon = _interopRequireDefault(require("@pingux/mdi-react/Cre
|
|
|
16
16
|
var _storybookDocsLayout = _interopRequireDefault(require("../../../.storybook/storybookDocsLayout"));
|
|
17
17
|
var _hooks = require("../../hooks");
|
|
18
18
|
var _index = require("../../index");
|
|
19
|
-
var _figmaLinks = require("../../utils/designUtils/figmaLinks
|
|
19
|
+
var _figmaLinks = require("../../utils/designUtils/figmaLinks");
|
|
20
20
|
var _Stepper = _interopRequireDefault(require("./Stepper.mdx"));
|
|
21
21
|
var _react2 = require("@emotion/react");
|
|
22
22
|
function _interopRequireWildcard(e, t) { if ("function" == typeof _WeakMap) var r = new _WeakMap(), n = new _WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = _Object$defineProperty) && _Object$getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
|
|
@@ -248,7 +248,7 @@ var Panel = exports.Panel = function Panel() {
|
|
|
248
248
|
var _useOverlayPanelState = (0, _hooks.useOverlayPanelState)(),
|
|
249
249
|
state = _useOverlayPanelState.state,
|
|
250
250
|
onClose = _useOverlayPanelState.onClose;
|
|
251
|
-
var triggerRef = _react.useRef
|
|
251
|
+
var triggerRef = (0, _react.useRef)(null);
|
|
252
252
|
var onCloseHandler = function onCloseHandler() {
|
|
253
253
|
return onClose(state, triggerRef);
|
|
254
254
|
};
|