@pingux/astro 2.8.4-alpha.1 → 2.9.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/CHANGELOG.md CHANGED
@@ -3,6 +3,17 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [2.8.4](https://gitlab.corp.pingidentity.com/ux/pingux/compare/@pingux/astro@2.8.3...@pingux/astro@2.8.4) (2023-07-27)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * [UIP-6395] Add rule for react object props ([0cdec70](https://gitlab.corp.pingidentity.com/ux/pingux/commit/0cdec700074da7de4125c0beee35bb899f7166ff))
12
+
13
+
14
+
15
+
16
+
6
17
  ## [2.8.3](https://gitlab.corp.pingidentity.com/ux/pingux/compare/@pingux/astro@2.8.2...@pingux/astro@2.8.3) (2023-07-25)
7
18
 
8
19
 
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+
3
+ var _typeof = require("@babel/runtime-corejs3/helpers/typeof");
4
+ var _WeakMap = require("@babel/runtime-corejs3/core-js-stable/weak-map");
5
+ var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
6
+ var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor");
7
+ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
8
+ _Object$defineProperty(exports, "__esModule", {
9
+ value: true
10
+ });
11
+ exports["default"] = void 0;
12
+ var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
13
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/objectWithoutProperties"));
14
+ var _react = _interopRequireWildcard(require("react"));
15
+ var _PlusIcon = _interopRequireDefault(require("@pingux/mdi-react/PlusIcon"));
16
+ var _propTypes = _interopRequireDefault(require("prop-types"));
17
+ var _ = require("../..");
18
+ var _react2 = require("@emotion/react");
19
+ var _excluded = ["buttonProps", "children", "title"];
20
+ function _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== "function") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
21
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
22
+ var PageHeader = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
23
+ var _props$buttonProps = props.buttonProps,
24
+ buttonProps = _props$buttonProps === void 0 ? {} : _props$buttonProps,
25
+ children = props.children,
26
+ title = props.title,
27
+ other = (0, _objectWithoutProperties2["default"])(props, _excluded);
28
+ var sx = {
29
+ wrapper: {
30
+ align: 'center',
31
+ mb: 'xs'
32
+ },
33
+ titleText: {
34
+ fontSize: 'xx',
35
+ fontWeight: '3',
36
+ fontColor: 'text.primary'
37
+ },
38
+ description: {
39
+ fontSize: 'sm',
40
+ color: 'text.secondary',
41
+ fontWeight: '0',
42
+ width: '800px',
43
+ ' > a': {
44
+ fontSize: 'sm'
45
+ }
46
+ }
47
+ };
48
+ return (0, _react2.jsx)(_react["default"].Fragment, null, (0, _react2.jsx)(_.Box, (0, _extends2["default"])({
49
+ isRow: true,
50
+ sx: sx.wrapper,
51
+ role: "heading",
52
+ "aria-level": "1"
53
+ }, other, {
54
+ ref: ref
55
+ }), (0, _react2.jsx)(_.Text, {
56
+ sx: sx.titleText,
57
+ as: "h1"
58
+ }, title), (0, _react2.jsx)(_.IconButton, (0, _extends2["default"])({
59
+ "aria-label": "icon button",
60
+ ml: "sm",
61
+ variant: "inverted"
62
+ }, buttonProps), (0, _react2.jsx)(_.Icon, {
63
+ icon: _PlusIcon["default"],
64
+ size: "sm"
65
+ }))), (0, _react2.jsx)(_.Text, {
66
+ sx: sx.description
67
+ }, children));
68
+ });
69
+ PageHeader.propTypes = {
70
+ /** If present, this string will render at the top of the section */
71
+ title: _propTypes["default"].string,
72
+ /** Props object that is spread into the Button element. */
73
+ buttonProps: _propTypes["default"].shape({})
74
+ };
75
+ var _default = PageHeader;
76
+ exports["default"] = _default;
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+
3
+ var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
4
+ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
5
+ _Object$defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = exports.WithoutLink = exports.WithButtonProps = exports.Default = void 0;
9
+ var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
10
+ var _react = _interopRequireDefault(require("react"));
11
+ var _ = require("../..");
12
+ var _react2 = require("@emotion/react");
13
+ var _default = {
14
+ title: 'Experimental/PageHeader',
15
+ component: _.PageHeader,
16
+ parameters: {
17
+ docs: {
18
+ source: {
19
+ type: 'code'
20
+ }
21
+ }
22
+ },
23
+ argTypes: {
24
+ title: {
25
+ control: {
26
+ type: 'text'
27
+ },
28
+ defaultValue: 'Title of the Page'
29
+ }
30
+ }
31
+ };
32
+ exports["default"] = _default;
33
+ var description = "The description of the page. The description of the page. The description of the page. The\n description of the page.The description of the page. The description of the page. The\n description of the page. The description of the page. The description of the page. ";
34
+ var Default = function Default(args) {
35
+ return (0, _react2.jsx)(_.PageHeader, args, description, (0, _react2.jsx)(_.Link, {
36
+ href: "https://uilibrary.ping-eng.com/"
37
+ }, "Learn more"));
38
+ };
39
+ exports.Default = Default;
40
+ var WithoutLink = function WithoutLink(args) {
41
+ return (0, _react2.jsx)(_.PageHeader, args, description);
42
+ };
43
+ exports.WithoutLink = WithoutLink;
44
+ var WithButtonProps = function WithButtonProps(args) {
45
+ return (0, _react2.jsx)(_.PageHeader, (0, _extends2["default"])({}, args, {
46
+ buttonProps: {
47
+ bg: 'mistyrose'
48
+ }
49
+ }), description, (0, _react2.jsx)(_.Link, {
50
+ href: "https://uilibrary.ping-eng.com/"
51
+ }, "Learn more"));
52
+ };
53
+ exports.WithButtonProps = WithButtonProps;
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+
3
+ var _Object$keys = require("@babel/runtime-corejs3/core-js-stable/object/keys");
4
+ var _Object$getOwnPropertySymbols = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols");
5
+ var _filterInstanceProperty = require("@babel/runtime-corejs3/core-js-stable/instance/filter");
6
+ var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor");
7
+ var _forEachInstanceProperty = require("@babel/runtime-corejs3/core-js-stable/instance/for-each");
8
+ var _Object$getOwnPropertyDescriptors = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors");
9
+ var _Object$defineProperties = require("@babel/runtime-corejs3/core-js-stable/object/define-properties");
10
+ var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
11
+ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
12
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
13
+ var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
14
+ var _react = _interopRequireDefault(require("react"));
15
+ var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
16
+ var _index = require("../../index");
17
+ var _testAxe = _interopRequireDefault(require("../../utils/testUtils/testAxe"));
18
+ var _testWrapper = require("../../utils/testUtils/testWrapper");
19
+ var _react2 = require("@emotion/react");
20
+ 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; }
21
+ 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) { (0, _defineProperty2["default"])(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; }
22
+ var testId = 'test-header';
23
+ var defaultProps = {
24
+ title: 'test-title',
25
+ 'data-testid': testId
26
+ };
27
+ var getComponent = function getComponent() {
28
+ var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
29
+ return (0, _testWrapper.render)((0, _react2.jsx)(_index.PageHeader, (0, _extends2["default"])({}, defaultProps, props), "The description of the page. The description of the page. The description of the page. The description of the page.The description of the page. The description of the page. The description of the page. The description of the page. The description of the page.\xA0", (0, _react2.jsx)(_index.Link, {
30
+ href: "https://uilibrary.ping-eng.com/"
31
+ }, "Learn more")));
32
+ };
33
+ (0, _testAxe["default"])(getComponent);
34
+ test('renders default PageHeader', function () {
35
+ getComponent();
36
+ var wrapper = _testWrapper.screen.getByTestId(testId);
37
+ expect(wrapper).toBeInstanceOf(HTMLDivElement);
38
+ expect(wrapper).toBeInTheDocument();
39
+ var button = _testWrapper.screen.getByRole('button');
40
+ expect(button).toBeInstanceOf(HTMLButtonElement);
41
+ expect(button).toBeInTheDocument();
42
+ var link = _testWrapper.screen.getByRole('link');
43
+ expect(link).toBeInstanceOf(HTMLAnchorElement);
44
+ expect(link).toBeInTheDocument();
45
+ var title = _testWrapper.screen.getByText('test-title');
46
+ expect(title).toBeInstanceOf(HTMLHeadingElement);
47
+ expect(title).toBeInTheDocument();
48
+ expect(wrapper.children.length).toEqual(2);
49
+ });
50
+ test('button press uses callback', function () {
51
+ var onPress = jest.fn();
52
+ var customButtonProps = {
53
+ bg: '#000000'
54
+ };
55
+ getComponent({
56
+ buttonProps: _objectSpread(_objectSpread({}, customButtonProps), {}, {
57
+ onPress: onPress
58
+ })
59
+ });
60
+ var button = _testWrapper.screen.getByRole('button');
61
+ expect(button).toHaveStyle('background: #000000');
62
+ _userEvent["default"].click(button);
63
+ expect(onPress).toHaveBeenCalled();
64
+ });
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+
3
+ var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
4
+ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
5
+ _Object$defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ _Object$defineProperty(exports, "default", {
9
+ enumerable: true,
10
+ get: function get() {
11
+ return _PageHeader["default"];
12
+ }
13
+ });
14
+ var _PageHeader = _interopRequireDefault(require("./PageHeader"));
package/lib/cjs/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- var _context, _context2, _context3, _context4, _context5, _context6, _context7, _context8, _context9, _context10, _context11, _context12, _context13, _context14, _context15, _context16, _context17, _context18, _context19, _context20, _context21, _context22, _context23, _context24, _context25, _context26, _context27, _context28, _context29, _context30, _context31, _context32, _context33, _context34, _context35, _context36, _context37, _context38, _context39, _context40, _context41, _context42, _context43, _context44, _context45, _context46, _context47, _context48, _context49, _context50, _context51, _context52, _context53, _context54, _context55, _context56, _context57, _context58, _context59, _context60, _context61, _context62, _context63, _context64, _context65, _context66, _context67, _context68, _context69, _context70, _context71, _context72;
3
+ var _context, _context2, _context3, _context4, _context5, _context6, _context7, _context8, _context9, _context10, _context11, _context12, _context13, _context14, _context15, _context16, _context17, _context18, _context19, _context20, _context21, _context22, _context23, _context24, _context25, _context26, _context27, _context28, _context29, _context30, _context31, _context32, _context33, _context34, _context35, _context36, _context37, _context38, _context39, _context40, _context41, _context42, _context43, _context44, _context45, _context46, _context47, _context48, _context49, _context50, _context51, _context52, _context53, _context54, _context55, _context56, _context57, _context58, _context59, _context60, _context61, _context62, _context63, _context64, _context65, _context66, _context67, _context68, _context69, _context70, _context71, _context72, _context73;
4
4
  var _typeof = require("@babel/runtime-corejs3/helpers/typeof");
5
5
  var _WeakMap = require("@babel/runtime-corejs3/core-js-stable/weak-map");
6
6
  var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
@@ -97,6 +97,7 @@ var _exportNames = {
97
97
  TextField: true,
98
98
  TimeZonePicker: true,
99
99
  TooltipTrigger: true,
100
+ PageHeader: true,
100
101
  DataTable: true,
101
102
  OverlayProvider: true,
102
103
  useOverlayPosition: true,
@@ -511,6 +512,12 @@ _Object$defineProperty(exports, "OverlayProvider", {
511
512
  return _reactAria.OverlayProvider;
512
513
  }
513
514
  });
515
+ _Object$defineProperty(exports, "PageHeader", {
516
+ enumerable: true,
517
+ get: function get() {
518
+ return _PageHeader["default"];
519
+ }
520
+ });
514
521
  _Object$defineProperty(exports, "PasswordField", {
515
522
  enumerable: true,
516
523
  get: function get() {
@@ -1591,8 +1598,20 @@ _forEachInstanceProperty(_context71 = _Object$keys(_TooltipTrigger)).call(_conte
1591
1598
  }
1592
1599
  });
1593
1600
  });
1601
+ var _PageHeader = _interopRequireWildcard(require("./experimental/PageHeader"));
1602
+ _forEachInstanceProperty(_context72 = _Object$keys(_PageHeader)).call(_context72, function (key) {
1603
+ if (key === "default" || key === "__esModule") return;
1604
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
1605
+ if (key in exports && exports[key] === _PageHeader[key]) return;
1606
+ _Object$defineProperty(exports, key, {
1607
+ enumerable: true,
1608
+ get: function get() {
1609
+ return _PageHeader[key];
1610
+ }
1611
+ });
1612
+ });
1594
1613
  var _DataTable = _interopRequireWildcard(require("./components/DataTable"));
1595
- _forEachInstanceProperty(_context72 = _Object$keys(_DataTable)).call(_context72, function (key) {
1614
+ _forEachInstanceProperty(_context73 = _Object$keys(_DataTable)).call(_context73, function (key) {
1596
1615
  if (key === "default" || key === "__esModule") return;
1597
1616
  if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
1598
1617
  if (key in exports && exports[key] === _DataTable[key]) return;
@@ -0,0 +1,62 @@
1
+ import _extends from "@babel/runtime-corejs3/helpers/esm/extends";
2
+ import _objectWithoutProperties from "@babel/runtime-corejs3/helpers/esm/objectWithoutProperties";
3
+ var _excluded = ["buttonProps", "children", "title"];
4
+ import React, { forwardRef } from 'react';
5
+ import PlusIcon from '@pingux/mdi-react/PlusIcon';
6
+ import PropTypes from 'prop-types';
7
+ import { Box, Icon, IconButton, Text } from '../..';
8
+ import { jsx as ___EmotionJSX } from "@emotion/react";
9
+ var PageHeader = /*#__PURE__*/forwardRef(function (props, ref) {
10
+ var _props$buttonProps = props.buttonProps,
11
+ buttonProps = _props$buttonProps === void 0 ? {} : _props$buttonProps,
12
+ children = props.children,
13
+ title = props.title,
14
+ other = _objectWithoutProperties(props, _excluded);
15
+ var sx = {
16
+ wrapper: {
17
+ align: 'center',
18
+ mb: 'xs'
19
+ },
20
+ titleText: {
21
+ fontSize: 'xx',
22
+ fontWeight: '3',
23
+ fontColor: 'text.primary'
24
+ },
25
+ description: {
26
+ fontSize: 'sm',
27
+ color: 'text.secondary',
28
+ fontWeight: '0',
29
+ width: '800px',
30
+ ' > a': {
31
+ fontSize: 'sm'
32
+ }
33
+ }
34
+ };
35
+ return ___EmotionJSX(React.Fragment, null, ___EmotionJSX(Box, _extends({
36
+ isRow: true,
37
+ sx: sx.wrapper,
38
+ role: "heading",
39
+ "aria-level": "1"
40
+ }, other, {
41
+ ref: ref
42
+ }), ___EmotionJSX(Text, {
43
+ sx: sx.titleText,
44
+ as: "h1"
45
+ }, title), ___EmotionJSX(IconButton, _extends({
46
+ "aria-label": "icon button",
47
+ ml: "sm",
48
+ variant: "inverted"
49
+ }, buttonProps), ___EmotionJSX(Icon, {
50
+ icon: PlusIcon,
51
+ size: "sm"
52
+ }))), ___EmotionJSX(Text, {
53
+ sx: sx.description
54
+ }, children));
55
+ });
56
+ PageHeader.propTypes = {
57
+ /** If present, this string will render at the top of the section */
58
+ title: PropTypes.string,
59
+ /** Props object that is spread into the Button element. */
60
+ buttonProps: PropTypes.shape({})
61
+ };
62
+ export default PageHeader;
@@ -0,0 +1,41 @@
1
+ import _extends from "@babel/runtime-corejs3/helpers/esm/extends";
2
+ import React from 'react';
3
+ import { Link, PageHeader } from '../..';
4
+ import { jsx as ___EmotionJSX } from "@emotion/react";
5
+ export default {
6
+ title: 'Experimental/PageHeader',
7
+ component: PageHeader,
8
+ parameters: {
9
+ docs: {
10
+ source: {
11
+ type: 'code'
12
+ }
13
+ }
14
+ },
15
+ argTypes: {
16
+ title: {
17
+ control: {
18
+ type: 'text'
19
+ },
20
+ defaultValue: 'Title of the Page'
21
+ }
22
+ }
23
+ };
24
+ var description = "The description of the page. The description of the page. The description of the page. The\n description of the page.The description of the page. The description of the page. The\n description of the page. The description of the page. The description of the page. ";
25
+ export var Default = function Default(args) {
26
+ return ___EmotionJSX(PageHeader, args, description, ___EmotionJSX(Link, {
27
+ href: "https://uilibrary.ping-eng.com/"
28
+ }, "Learn more"));
29
+ };
30
+ export var WithoutLink = function WithoutLink(args) {
31
+ return ___EmotionJSX(PageHeader, args, description);
32
+ };
33
+ export var WithButtonProps = function WithButtonProps(args) {
34
+ return ___EmotionJSX(PageHeader, _extends({}, args, {
35
+ buttonProps: {
36
+ bg: 'mistyrose'
37
+ }
38
+ }), description, ___EmotionJSX(Link, {
39
+ href: "https://uilibrary.ping-eng.com/"
40
+ }, "Learn more"));
41
+ };
@@ -0,0 +1,61 @@
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 _defineProperty from "@babel/runtime-corejs3/helpers/esm/defineProperty";
10
+ import _extends from "@babel/runtime-corejs3/helpers/esm/extends";
11
+ 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; }
12
+ 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; }
13
+ import React from 'react';
14
+ import userEvent from '@testing-library/user-event';
15
+ import { Link, PageHeader } from '../../index';
16
+ import axeTest from '../../utils/testUtils/testAxe';
17
+ import { render, screen } from '../../utils/testUtils/testWrapper';
18
+ import { jsx as ___EmotionJSX } from "@emotion/react";
19
+ var testId = 'test-header';
20
+ var defaultProps = {
21
+ title: 'test-title',
22
+ 'data-testid': testId
23
+ };
24
+ var getComponent = function getComponent() {
25
+ var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
26
+ return render(___EmotionJSX(PageHeader, _extends({}, defaultProps, props), "The description of the page. The description of the page. The description of the page. The description of the page.The description of the page. The description of the page. The description of the page. The description of the page. The description of the page.\xA0", ___EmotionJSX(Link, {
27
+ href: "https://uilibrary.ping-eng.com/"
28
+ }, "Learn more")));
29
+ };
30
+ axeTest(getComponent);
31
+ test('renders default PageHeader', function () {
32
+ getComponent();
33
+ var wrapper = screen.getByTestId(testId);
34
+ expect(wrapper).toBeInstanceOf(HTMLDivElement);
35
+ expect(wrapper).toBeInTheDocument();
36
+ var button = screen.getByRole('button');
37
+ expect(button).toBeInstanceOf(HTMLButtonElement);
38
+ expect(button).toBeInTheDocument();
39
+ var link = screen.getByRole('link');
40
+ expect(link).toBeInstanceOf(HTMLAnchorElement);
41
+ expect(link).toBeInTheDocument();
42
+ var title = screen.getByText('test-title');
43
+ expect(title).toBeInstanceOf(HTMLHeadingElement);
44
+ expect(title).toBeInTheDocument();
45
+ expect(wrapper.children.length).toEqual(2);
46
+ });
47
+ test('button press uses callback', function () {
48
+ var onPress = jest.fn();
49
+ var customButtonProps = {
50
+ bg: '#000000'
51
+ };
52
+ getComponent({
53
+ buttonProps: _objectSpread(_objectSpread({}, customButtonProps), {}, {
54
+ onPress: onPress
55
+ })
56
+ });
57
+ var button = screen.getByRole('button');
58
+ expect(button).toHaveStyle('background: #000000');
59
+ userEvent.click(button);
60
+ expect(onPress).toHaveBeenCalled();
61
+ });
@@ -0,0 +1 @@
1
+ export { default } from './PageHeader';
package/lib/index.js CHANGED
@@ -157,6 +157,8 @@ export * from './components/TextField';
157
157
  export { default as TimeZonePicker } from './components/TimeZonePicker';
158
158
  export { default as TooltipTrigger } from './components/TooltipTrigger';
159
159
  export * from './components/TooltipTrigger';
160
+ export { default as PageHeader } from './experimental/PageHeader';
161
+ export * from './experimental/PageHeader';
160
162
 
161
163
  /* eslint-enable import/export */
162
164
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pingux/astro",
3
- "version": "2.8.4-alpha.1",
3
+ "version": "2.9.0-alpha.0",
4
4
  "description": "PingUX themeable React component library",
5
5
  "repository": {
6
6
  "type": "git",