@pingux/astro 2.43.0 → 2.44.0-alpha.1

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 (32) hide show
  1. package/lib/cjs/components/Icon/Icon.stories.js +18 -14
  2. package/lib/cjs/components/IconButton/IconButton.d.ts +4 -0
  3. package/lib/cjs/components/IconButton/IconButton.js +36 -13
  4. package/lib/cjs/components/IconButton/IconButton.stories.d.ts +10 -0
  5. package/lib/cjs/components/IconButton/IconButton.stories.js +1 -2
  6. package/lib/cjs/components/IconButton/IconButton.styles.d.ts +417 -0
  7. package/lib/cjs/components/IconButton/IconButton.test.d.ts +1 -0
  8. package/lib/cjs/components/IconButton/IconButton.test.js +2 -1
  9. package/lib/cjs/components/IconButton/iconButtonAttributes.d.ts +48 -0
  10. package/lib/cjs/components/IconButton/iconButtonAttributes.js +1 -8
  11. package/lib/cjs/components/IconButton/index.d.ts +1 -0
  12. package/lib/cjs/components/Loader/Loader.stories.js +14 -6
  13. package/lib/cjs/context/BadgeContext/index.d.ts +5 -1
  14. package/lib/cjs/types/icon.d.ts +2 -6
  15. package/lib/cjs/types/iconButton.d.ts +21 -0
  16. package/lib/cjs/types/iconButton.js +6 -0
  17. package/lib/cjs/types/index.d.ts +1 -0
  18. package/lib/cjs/types/index.js +21 -10
  19. package/lib/cjs/types/loader.d.ts +2 -7
  20. package/lib/cjs/types/shared/style.d.ts +4 -0
  21. package/lib/cjs/utils/docUtils/iconSizeProps.d.ts +9 -0
  22. package/lib/cjs/utils/docUtils/iconSizeProps.js +22 -0
  23. package/lib/components/Icon/Icon.stories.js +18 -13
  24. package/lib/components/IconButton/IconButton.js +36 -13
  25. package/lib/components/IconButton/IconButton.stories.js +1 -2
  26. package/lib/components/IconButton/IconButton.test.js +2 -1
  27. package/lib/components/IconButton/iconButtonAttributes.js +1 -8
  28. package/lib/components/Loader/Loader.stories.js +15 -6
  29. package/lib/types/iconButton.js +1 -0
  30. package/lib/types/index.js +1 -0
  31. package/lib/utils/docUtils/iconSizeProps.js +12 -0
  32. package/package.json +1 -1
@@ -60,12 +60,6 @@ var iconButtonArgTypes = {
60
60
  },
61
61
  description: descriptions.variant
62
62
  },
63
- size: {
64
- control: {
65
- type: 'select',
66
- options: ['xs', 'sm', 'md']
67
- }
68
- },
69
63
  onPress: _objectSpread({
70
64
  description: descriptions.onPress
71
65
  }, _docArgTypes.funcArg),
@@ -85,8 +79,7 @@ var iconButtonArgTypes = {
85
79
  exports.iconButtonArgTypes = iconButtonArgTypes;
86
80
  var iconButtonArgs = {
87
81
  icon: _CreateIcon["default"],
88
- variant: 'base',
89
- size: 'sm'
82
+ variant: 'base'
90
83
  };
91
84
  exports.iconButtonArgs = iconButtonArgs;
92
85
  var iconButtonPropTypes = {
@@ -0,0 +1 @@
1
+ export { default } from './IconButton';
@@ -1,11 +1,19 @@
1
1
  "use strict";
2
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");
3
10
  var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
4
11
  var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
5
12
  _Object$defineProperty(exports, "__esModule", {
6
13
  value: true
7
14
  });
8
15
  exports["default"] = exports.Default = exports.CustomColor = void 0;
16
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
9
17
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/slicedToArray"));
10
18
  var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
11
19
  var _react = _interopRequireDefault(require("react"));
@@ -14,8 +22,11 @@ var _storybookDocsLayout = _interopRequireDefault(require("../../../.storybook/s
14
22
  var _index = require("../../index");
15
23
  var _colors = require("../../styles/colors");
16
24
  var _figmaLinks = require("../../utils/designUtils/figmaLinks.ts");
25
+ var _iconSizeProps = require("../../utils/docUtils/iconSizeProps");
17
26
  var _Loader = _interopRequireDefault(require("./Loader.mdx"));
18
27
  var _react2 = require("@emotion/react");
28
+ 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; }
29
+ 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; }
19
30
  var _default = {
20
31
  title: 'Components/Loader',
21
32
  component: _index.Loader,
@@ -38,12 +49,9 @@ var _default = {
38
49
  })
39
50
  }
40
51
  },
41
- size: {
42
- control: {
43
- type: 'text'
44
- },
45
- description: 'The size of the loader. Sizes can either be a string such as xs, sm, md, etc or numeric size with unit such as 15px. Default size inherits the font size. ' + 'Numeric value paired with a unit. https://www.w3schools.com/cssref/css_units.asp'
46
- }
52
+ size: _objectSpread(_objectSpread({}, _iconSizeProps.sizeArgTypes.size), {}, {
53
+ description: 'The size of the loader. Sizes can either be a string such as xs, sm, md, etc or numeric size with unit such as 15px. Default size inherits the font size. Numeric value paired with a unit. https://www.w3schools.com/cssref/css_units.asp'
54
+ })
47
55
  },
48
56
  args: {
49
57
  color: 'active'
@@ -1,2 +1,6 @@
1
1
  /// <reference types="react" />
2
- export declare const BadgeContext: import("react").Context<string | object>;
2
+ import { StylePropertyValue } from 'theme-ui';
3
+ export interface BadgeContextProps {
4
+ bg?: StylePropertyValue<string | undefined>;
5
+ }
6
+ export declare const BadgeContext: import("react").Context<string | object | BadgeContextProps>;
@@ -1,6 +1,6 @@
1
1
  import { ReactNode } from 'react';
2
2
  import { TestingAttributes } from './shared/test';
3
- import { DOMAttributes, StyleProps } from './shared';
3
+ import { DOMAttributes, IconSize, StyleProps } from './shared';
4
4
  export type SVGComponentProps = {
5
5
  title?: string;
6
6
  };
@@ -24,11 +24,7 @@ export interface IconProps extends StyleProps, DOMAttributes, TestingAttributes
24
24
  };
25
25
  /** The icon to render. */
26
26
  icon: IconTypeExtended;
27
- /**
28
- * The size of the icon container. If given a number value, it will be converted to pixels.
29
- * Tshirt sizing is recommended and can be passed to the size prop as 'xs', 'sm' , 'md'
30
- * rendering 15, 20, and 25 pixel svg containers. */
31
- size?: number | string;
27
+ size?: IconSize;
32
28
  /** A theme-aware prop to set the icon's color. */
33
29
  color?: string;
34
30
  }
@@ -0,0 +1,21 @@
1
+ import { IconButtonProps as ThemeUIIconButtonProps, ThemeUICSSObject } from 'theme-ui';
2
+ import { TestingAttributes } from './shared/test';
3
+ import { IconTypeExtended } from './icon';
4
+ import { HoverProps, PressProps } from './shared';
5
+ export interface IconButtonProps extends ThemeUIIconButtonProps, TestingAttributes, PressProps, HoverProps {
6
+ /** The styling variation of the element. */
7
+ variant?: string | undefined;
8
+ /** The icon of the element. */
9
+ icon?: IconTypeExtended;
10
+ /**
11
+ * The title associated with the icon. It is recommended that icons always have an associated
12
+ * title in order to allow a better user experience for those using screen readers.
13
+ * It also what will be supplied to the **`aria-labelledby`** attribute in the SVG.
14
+ * */
15
+ title?: string | undefined;
16
+ 'aria-label'?: string | undefined;
17
+ /** Whether the icon button is disabled. */
18
+ isDisabled?: boolean;
19
+ /** Inline styling prop */
20
+ sx?: ThemeUICSSObject;
21
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
4
+ _Object$defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
@@ -6,6 +6,7 @@ export * from './card';
6
6
  export * from './fieldHelperText';
7
7
  export * from './icon';
8
8
  export * from './iconBadge';
9
+ export * from './iconButton';
9
10
  export * from './item';
10
11
  export * from './link';
11
12
  export * from './loader';
@@ -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;
3
+ var _context, _context2, _context3, _context4, _context5, _context6, _context7, _context8, _context9, _context10, _context11, _context12, _context13, _context14, _context15, _context16, _context17, _context18;
4
4
  var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
5
5
  var _forEachInstanceProperty = require("@babel/runtime-corejs3/core-js-stable/instance/for-each");
6
6
  var _Object$keys = require("@babel/runtime-corejs3/core-js-stable/object/keys");
@@ -95,8 +95,19 @@ _forEachInstanceProperty(_context8 = _Object$keys(_iconBadge)).call(_context8, f
95
95
  }
96
96
  });
97
97
  });
98
+ var _iconButton = require("./iconButton");
99
+ _forEachInstanceProperty(_context9 = _Object$keys(_iconButton)).call(_context9, function (key) {
100
+ if (key === "default" || key === "__esModule") return;
101
+ if (key in exports && exports[key] === _iconButton[key]) return;
102
+ _Object$defineProperty(exports, key, {
103
+ enumerable: true,
104
+ get: function get() {
105
+ return _iconButton[key];
106
+ }
107
+ });
108
+ });
98
109
  var _item = require("./item");
99
- _forEachInstanceProperty(_context9 = _Object$keys(_item)).call(_context9, function (key) {
110
+ _forEachInstanceProperty(_context10 = _Object$keys(_item)).call(_context10, function (key) {
100
111
  if (key === "default" || key === "__esModule") return;
101
112
  if (key in exports && exports[key] === _item[key]) return;
102
113
  _Object$defineProperty(exports, key, {
@@ -107,7 +118,7 @@ _forEachInstanceProperty(_context9 = _Object$keys(_item)).call(_context9, functi
107
118
  });
108
119
  });
109
120
  var _link = require("./link");
110
- _forEachInstanceProperty(_context10 = _Object$keys(_link)).call(_context10, function (key) {
121
+ _forEachInstanceProperty(_context11 = _Object$keys(_link)).call(_context11, function (key) {
111
122
  if (key === "default" || key === "__esModule") return;
112
123
  if (key in exports && exports[key] === _link[key]) return;
113
124
  _Object$defineProperty(exports, key, {
@@ -118,7 +129,7 @@ _forEachInstanceProperty(_context10 = _Object$keys(_link)).call(_context10, func
118
129
  });
119
130
  });
120
131
  var _loader = require("./loader");
121
- _forEachInstanceProperty(_context11 = _Object$keys(_loader)).call(_context11, function (key) {
132
+ _forEachInstanceProperty(_context12 = _Object$keys(_loader)).call(_context12, function (key) {
122
133
  if (key === "default" || key === "__esModule") return;
123
134
  if (key in exports && exports[key] === _loader[key]) return;
124
135
  _Object$defineProperty(exports, key, {
@@ -129,7 +140,7 @@ _forEachInstanceProperty(_context11 = _Object$keys(_loader)).call(_context11, fu
129
140
  });
130
141
  });
131
142
  var _popoverContainer = require("./popoverContainer");
132
- _forEachInstanceProperty(_context12 = _Object$keys(_popoverContainer)).call(_context12, function (key) {
143
+ _forEachInstanceProperty(_context13 = _Object$keys(_popoverContainer)).call(_context13, function (key) {
133
144
  if (key === "default" || key === "__esModule") return;
134
145
  if (key in exports && exports[key] === _popoverContainer[key]) return;
135
146
  _Object$defineProperty(exports, key, {
@@ -140,7 +151,7 @@ _forEachInstanceProperty(_context12 = _Object$keys(_popoverContainer)).call(_con
140
151
  });
141
152
  });
142
153
  var _separator = require("./separator");
143
- _forEachInstanceProperty(_context13 = _Object$keys(_separator)).call(_context13, function (key) {
154
+ _forEachInstanceProperty(_context14 = _Object$keys(_separator)).call(_context14, function (key) {
144
155
  if (key === "default" || key === "__esModule") return;
145
156
  if (key in exports && exports[key] === _separator[key]) return;
146
157
  _Object$defineProperty(exports, key, {
@@ -151,7 +162,7 @@ _forEachInstanceProperty(_context13 = _Object$keys(_separator)).call(_context13,
151
162
  });
152
163
  });
153
164
  var _shared = require("./shared");
154
- _forEachInstanceProperty(_context14 = _Object$keys(_shared)).call(_context14, function (key) {
165
+ _forEachInstanceProperty(_context15 = _Object$keys(_shared)).call(_context15, function (key) {
155
166
  if (key === "default" || key === "__esModule") return;
156
167
  if (key in exports && exports[key] === _shared[key]) return;
157
168
  _Object$defineProperty(exports, key, {
@@ -162,7 +173,7 @@ _forEachInstanceProperty(_context14 = _Object$keys(_shared)).call(_context14, fu
162
173
  });
163
174
  });
164
175
  var _table = require("./table");
165
- _forEachInstanceProperty(_context15 = _Object$keys(_table)).call(_context15, function (key) {
176
+ _forEachInstanceProperty(_context16 = _Object$keys(_table)).call(_context16, function (key) {
166
177
  if (key === "default" || key === "__esModule") return;
167
178
  if (key in exports && exports[key] === _table[key]) return;
168
179
  _Object$defineProperty(exports, key, {
@@ -173,7 +184,7 @@ _forEachInstanceProperty(_context15 = _Object$keys(_table)).call(_context15, fun
173
184
  });
174
185
  });
175
186
  var _text = require("./text");
176
- _forEachInstanceProperty(_context16 = _Object$keys(_text)).call(_context16, function (key) {
187
+ _forEachInstanceProperty(_context17 = _Object$keys(_text)).call(_context17, function (key) {
177
188
  if (key === "default" || key === "__esModule") return;
178
189
  if (key in exports && exports[key] === _text[key]) return;
179
190
  _Object$defineProperty(exports, key, {
@@ -184,7 +195,7 @@ _forEachInstanceProperty(_context16 = _Object$keys(_text)).call(_context16, func
184
195
  });
185
196
  });
186
197
  var _tooltipTrigger = require("./tooltipTrigger");
187
- _forEachInstanceProperty(_context17 = _Object$keys(_tooltipTrigger)).call(_context17, function (key) {
198
+ _forEachInstanceProperty(_context18 = _Object$keys(_tooltipTrigger)).call(_context18, function (key) {
188
199
  if (key === "default" || key === "__esModule") return;
189
200
  if (key in exports && exports[key] === _tooltipTrigger[key]) return;
190
201
  _Object$defineProperty(exports, key, {
@@ -1,14 +1,9 @@
1
- import { StyleProps } from './shared';
1
+ import { IconSize, StyleProps } from './shared';
2
2
  export interface LoaderProps extends StyleProps {
3
3
  /**
4
4
  * Color key from theme or string value.
5
5
  * Default color inherits the font color.
6
6
  */
7
7
  color?: string;
8
- /**
9
- * Size as number or pixel / em / rem value.
10
- * Sizes can either be a string such as xs, sm, md, etc or numeric size with unit such as 15px.
11
- * Default size inherits the font size.
12
- */
13
- size?: number | string;
8
+ size?: IconSize;
14
9
  }
@@ -15,3 +15,7 @@ export type Placement = 'bottom' | 'bottom left' | 'bottom right' | 'bottom star
15
15
  export type Axis = 'top' | 'bottom' | 'left' | 'right';
16
16
  export type SizeAxis = 'width' | 'height';
17
17
  export type PlacementAxis = Axis | 'center';
18
+ type IconTShirtSize = 'xs' | 'sm' | 'md';
19
+ type pixelSize = 'em' | 'px' | 'rem';
20
+ export type IconSize = IconTShirtSize | number | `${number}${pixelSize}`;
21
+ export {};
@@ -0,0 +1,9 @@
1
+ export declare const sizeArgTypes: {
2
+ size: {
3
+ options: string[];
4
+ description: string;
5
+ };
6
+ };
7
+ export declare const sizePropTypes: {
8
+ size: any;
9
+ };
@@ -0,0 +1,22 @@
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.sizePropTypes = exports.sizeArgTypes = void 0;
9
+ var _keys = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/keys"));
10
+ var _propTypes = _interopRequireDefault(require("prop-types"));
11
+ var _tShirtSizes = require("../devUtils/constants/tShirtSizes");
12
+ var sizeArgTypes = {
13
+ size: {
14
+ options: (0, _keys["default"])(_tShirtSizes.tShirtSizes),
15
+ description: "The size of the icon container. If given a number value, it will be converted to pixels. \n Tshirt sizing is recommended and can be passed to the size prop as \"xs\", \"sm\" , \"md\" \n rendering 15, 20, and 25 pixel svg containers."
16
+ }
17
+ };
18
+ exports.sizeArgTypes = sizeArgTypes;
19
+ var sizePropTypes = {
20
+ size: _propTypes["default"].oneOf((0, _keys["default"])(_tShirtSizes.tShirtSizes))
21
+ };
22
+ exports.sizePropTypes = sizePropTypes;
@@ -1,7 +1,17 @@
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";
1
9
  import _extends from "@babel/runtime-corejs3/helpers/esm/extends";
2
10
  import _slicedToArray from "@babel/runtime-corejs3/helpers/esm/slicedToArray";
3
- import _Object$keys from "@babel/runtime-corejs3/core-js-stable/object/keys";
11
+ import _defineProperty from "@babel/runtime-corejs3/helpers/esm/defineProperty";
4
12
  import _mapInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/map";
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; }
5
15
  import React from 'react';
6
16
  import AccountGroupIcon from '@pingux/mdi-react/AccountGroupIcon';
7
17
  import AccountIcon from '@pingux/mdi-react/AccountIcon';
@@ -14,7 +24,7 @@ import DocsLayout from '../../../.storybook/storybookDocsLayout';
14
24
  import { Box, Icon, Table, TableBody, TableCell, TableHead, TableRow, Text } from '../../index';
15
25
  import { flatColorList } from '../../styles/colors';
16
26
  import { FIGMA_LINKS } from '../../utils/designUtils/figmaLinks';
17
- import { tShirtSizes } from '../../utils/devUtils/constants/tShirtSizes';
27
+ import { sizeArgTypes } from '../../utils/docUtils/iconSizeProps';
18
28
  import IconReadme from './Icon.mdx';
19
29
  import { jsx as ___EmotionJSX } from "@emotion/react";
20
30
  export default {
@@ -31,20 +41,14 @@ export default {
31
41
  }
32
42
  }
33
43
  },
34
- argTypes: {
44
+ argTypes: _objectSpread(_objectSpread({
35
45
  icon: {
36
46
  control: {
37
47
  type: 'none'
38
48
  },
39
49
  description: 'The icon to render. List of icons at https://materialdesignicons.com/'
40
- },
41
- size: {
42
- control: {
43
- type: 'select',
44
- options: _Object$keys(tShirtSizes)
45
- },
46
- description: 'The size of the icon container. If given a number value, it will be converted to pixels. ' + 'Tshirt sizing is recommended and can be passed to the size prop as "xs", "sm" , "md" ' + 'rendering 15, 20, and 25 pixel svg containers.'
47
- },
50
+ }
51
+ }, sizeArgTypes), {}, {
48
52
  color: {
49
53
  control: {
50
54
  type: 'select',
@@ -55,10 +59,11 @@ export default {
55
59
  })
56
60
  }
57
61
  }
58
- },
62
+ }),
59
63
  args: {
64
+ color: 'active',
60
65
  icon: SearchIcon,
61
- color: 'active'
66
+ size: 'sm'
62
67
  }
63
68
  };
64
69
  export var Default = function Default(args) {
@@ -9,7 +9,7 @@ import _Object$defineProperty from "@babel/runtime-corejs3/core-js-stable/object
9
9
  import _extends from "@babel/runtime-corejs3/helpers/esm/extends";
10
10
  import _defineProperty from "@babel/runtime-corejs3/helpers/esm/defineProperty";
11
11
  import _objectWithoutProperties from "@babel/runtime-corejs3/helpers/esm/objectWithoutProperties";
12
- var _excluded = ["children", "className", "title", "variant", "onPress", "onPressStart", "onPressEnd", "onPressChange", "onPressUp", "isDisabled"];
12
+ var _excluded = ["children", "className", "title", "variant", "onBlur", "onFocus", "onHoverChange", "onHoverEnd", "onHoverStart", "onKeyDown", "onKeyUp", "onPress", "onPressEnd", "onPressStart", "onPressChange", "onPressUp", "isDisabled"];
13
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
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
15
  import React, { forwardRef, useContext, useImperativeHandle, useRef } from 'react';
@@ -19,33 +19,57 @@ import { IconButton as ThemeUIIconButton } from 'theme-ui';
19
19
  import { BadgeContext } from '../../context/BadgeContext';
20
20
  import { useAriaLabelWarning, useStatusClasses } from '../../hooks';
21
21
  import TooltipTrigger, { Tooltip } from '../TooltipTrigger';
22
- import { iconButtonPropTypes } from './iconButtonAttributes';
23
22
  import { jsx as ___EmotionJSX } from "@emotion/react";
24
23
  var IconButton = /*#__PURE__*/forwardRef(function (props, ref) {
25
24
  var children = props.children,
26
25
  className = props.className,
27
26
  title = props.title,
28
27
  variant = props.variant,
28
+ onBlur = props.onBlur,
29
+ onFocus = props.onFocus,
30
+ onHoverChange = props.onHoverChange,
31
+ onHoverEnd = props.onHoverEnd,
32
+ onHoverStart = props.onHoverStart,
33
+ onKeyDown = props.onKeyDown,
34
+ onKeyUp = props.onKeyUp,
29
35
  onPress = props.onPress,
30
- onPressStart = props.onPressStart,
31
36
  onPressEnd = props.onPressEnd,
37
+ onPressStart = props.onPressStart,
32
38
  onPressChange = props.onPressChange,
33
39
  onPressUp = props.onPressUp,
34
40
  isDisabled = props.isDisabled,
35
41
  others = _objectWithoutProperties(props, _excluded);
36
- var buttonRef = useRef();
42
+ var buttonRef = useRef(null);
37
43
  /* istanbul ignore next */
38
44
  useImperativeHandle(ref, function () {
39
45
  return buttonRef.current;
40
46
  });
41
- var _usePress = usePress(buttonRef),
47
+ var _usePress = usePress({
48
+ ref: buttonRef
49
+ }),
42
50
  isPressedFromContext = _usePress.isPressed;
43
- var _useButton = useButton(_objectSpread({}, props), buttonRef),
51
+ var _useButton = useButton(_objectSpread({
52
+ elementType: 'button',
53
+ isDisabled: isDisabled,
54
+ onBlur: onBlur,
55
+ onFocus: onFocus,
56
+ onKeyDown: onKeyDown,
57
+ onKeyUp: onKeyUp,
58
+ onPress: onPress,
59
+ onPressChange: onPressChange,
60
+ onPressEnd: onPressEnd,
61
+ onPressStart: onPressStart,
62
+ onPressUp: onPressUp
63
+ }, others), buttonRef),
44
64
  buttonProps = _useButton.buttonProps,
45
65
  isPressed = _useButton.isPressed;
46
- var _useContext = useContext(BadgeContext),
47
- badgeBg = _useContext.bg;
48
- var _useHover = useHover(props),
66
+ var _ref = useContext(BadgeContext),
67
+ badgeBg = _ref.bg;
68
+ var _useHover = useHover({
69
+ onHoverChange: onHoverChange,
70
+ onHoverEnd: onHoverEnd,
71
+ onHoverStart: onHoverStart
72
+ }),
49
73
  hoverProps = _useHover.hoverProps,
50
74
  isHovered = _useHover.isHovered;
51
75
  var _useFocusRing = useFocusRing(),
@@ -66,11 +90,11 @@ var IconButton = /*#__PURE__*/forwardRef(function (props, ref) {
66
90
  tabIndex: 0,
67
91
  className: classNames,
68
92
  "aria-label": ariaLabel,
69
- sx: badgeBg && isHovered && {
93
+ sx: badgeBg && isHovered ? {
70
94
  'path': {
71
95
  fill: badgeBg
72
96
  }
73
- },
97
+ } : undefined,
74
98
  variant: "iconButtons.".concat(variant),
75
99
  onPointerOver: hoverProps.onPointerEnter
76
100
  }, children));
@@ -81,10 +105,9 @@ var IconButton = /*#__PURE__*/forwardRef(function (props, ref) {
81
105
  }
82
106
  return button;
83
107
  });
84
- IconButton.propTypes = iconButtonPropTypes;
85
108
  IconButton.defaultProps = {
86
109
  variant: 'base',
87
110
  isDisabled: false
88
111
  };
89
- IconButton.displayName = 'Icon Button';
112
+ IconButton.displayName = 'IconButton';
90
113
  export default IconButton;
@@ -8,7 +8,7 @@ import PlusIcon from '@pingux/mdi-react/PlusIcon';
8
8
  import { withDesign } from 'storybook-addon-designs';
9
9
  import DocsLayout from '../../../.storybook/storybookDocsLayout';
10
10
  import { Box, Icon, IconButton, Table, TableBody, TableCell, TableHead, TableRow, Text } from '../../index';
11
- import { FIGMA_LINKS } from '../../utils/designUtils/figmaLinks.ts';
11
+ import { FIGMA_LINKS } from '../../utils/designUtils/figmaLinks';
12
12
  import IconButtonReadme from './IconButton.mdx';
13
13
  import { iconButtonArgs, iconButtonArgTypes } from './iconButtonAttributes';
14
14
  import { jsx as ___EmotionJSX } from "@emotion/react";
@@ -34,7 +34,6 @@ export var Default = function Default(args) {
34
34
  "aria-label": "default icon button"
35
35
  }, args), ___EmotionJSX(Icon, {
36
36
  icon: CreateIcon,
37
- size: args.size,
38
37
  title: {
39
38
  name: 'Create Icon'
40
39
  }
@@ -125,7 +125,8 @@ test('tooltip is not shown on hover or focus when prop is not passed', function
125
125
  test('the button should be getting aria label attribute', function () {
126
126
  var testLabel = defaultProps['aria-label'];
127
127
  getComponent();
128
- expect(screen.getByLabelText(testLabel)).toBeInTheDocument();
128
+ var button = screen.getByRole('button');
129
+ expect(button).toHaveAttribute('aria-label', testLabel);
129
130
  });
130
131
  test('show button isDisabled status', function () {
131
132
  var onPress = jest.fn();
@@ -53,12 +53,6 @@ export var iconButtonArgTypes = {
53
53
  },
54
54
  description: descriptions.variant
55
55
  },
56
- size: {
57
- control: {
58
- type: 'select',
59
- options: ['xs', 'sm', 'md']
60
- }
61
- },
62
56
  onPress: _objectSpread({
63
57
  description: descriptions.onPress
64
58
  }, funcArg),
@@ -77,8 +71,7 @@ export var iconButtonArgTypes = {
77
71
  };
78
72
  export var iconButtonArgs = {
79
73
  icon: CreateIcon,
80
- variant: 'base',
81
- size: 'sm'
74
+ variant: 'base'
82
75
  };
83
76
  export var iconButtonPropTypes = {
84
77
  variant: PropTypes.string,
@@ -1,4 +1,15 @@
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";
1
10
  import _slicedToArray from "@babel/runtime-corejs3/helpers/esm/slicedToArray";
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; }
2
13
  import _mapInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/map";
3
14
  import React from 'react';
4
15
  import { withDesign } from 'storybook-addon-designs';
@@ -6,6 +17,7 @@ import DocsLayout from '../../../.storybook/storybookDocsLayout';
6
17
  import { Loader } from '../../index';
7
18
  import { flatColorList } from '../../styles/colors';
8
19
  import { FIGMA_LINKS } from '../../utils/designUtils/figmaLinks.ts';
20
+ import { sizeArgTypes } from '../../utils/docUtils/iconSizeProps';
9
21
  import LoaderReadme from './Loader.mdx';
10
22
  import { jsx as ___EmotionJSX } from "@emotion/react";
11
23
  export default {
@@ -30,12 +42,9 @@ export default {
30
42
  })
31
43
  }
32
44
  },
33
- size: {
34
- control: {
35
- type: 'text'
36
- },
37
- description: 'The size of the loader. Sizes can either be a string such as xs, sm, md, etc or numeric size with unit such as 15px. Default size inherits the font size. ' + 'Numeric value paired with a unit. https://www.w3schools.com/cssref/css_units.asp'
38
- }
45
+ size: _objectSpread(_objectSpread({}, sizeArgTypes.size), {}, {
46
+ description: 'The size of the loader. Sizes can either be a string such as xs, sm, md, etc or numeric size with unit such as 15px. Default size inherits the font size. Numeric value paired with a unit. https://www.w3schools.com/cssref/css_units.asp'
47
+ })
39
48
  },
40
49
  args: {
41
50
  color: 'active'
@@ -0,0 +1 @@
1
+ export {};
@@ -6,6 +6,7 @@ export * from './card';
6
6
  export * from './fieldHelperText';
7
7
  export * from './icon';
8
8
  export * from './iconBadge';
9
+ export * from './iconButton';
9
10
  export * from './item';
10
11
  export * from './link';
11
12
  export * from './loader';
@@ -0,0 +1,12 @@
1
+ import _Object$keys from "@babel/runtime-corejs3/core-js-stable/object/keys";
2
+ import PropTypes from 'prop-types';
3
+ import { tShirtSizes } from '../devUtils/constants/tShirtSizes';
4
+ export var sizeArgTypes = {
5
+ size: {
6
+ options: _Object$keys(tShirtSizes),
7
+ description: "The size of the icon container. If given a number value, it will be converted to pixels. \n Tshirt sizing is recommended and can be passed to the size prop as \"xs\", \"sm\" , \"md\" \n rendering 15, 20, and 25 pixel svg containers."
8
+ }
9
+ };
10
+ export var sizePropTypes = {
11
+ size: PropTypes.oneOf(_Object$keys(tShirtSizes))
12
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pingux/astro",
3
- "version": "2.43.0",
3
+ "version": "2.44.0-alpha.1",
4
4
  "description": "React component library for Ping Identity's design system",
5
5
  "repository": {
6
6
  "type": "git",