@pingux/astro 2.31.0 → 2.32.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/README.md +11 -4
  2. package/lib/README.md +11 -4
  3. package/lib/cjs/components/Breadcrumbs/BreadcrumbItem.js +3 -2
  4. package/lib/cjs/components/Button/Button.d.ts +4 -0
  5. package/lib/cjs/components/Button/Button.js +37 -24
  6. package/lib/cjs/components/Button/Button.stories.d.ts +46 -0
  7. package/lib/cjs/components/Button/Button.test.d.ts +1 -0
  8. package/lib/cjs/components/Button/Buttons.styles.d.ts +748 -0
  9. package/lib/cjs/components/Button/Buttons.styles.js +0 -2
  10. package/lib/cjs/components/Button/buttonAttributes.d.ts +1 -0
  11. package/lib/cjs/components/Button/buttonAttributes.js +9 -55
  12. package/lib/cjs/components/Button/constants.d.ts +4 -0
  13. package/lib/cjs/components/Button/index.d.ts +1 -0
  14. package/lib/cjs/hooks/index.d.ts +22 -0
  15. package/lib/cjs/hooks/index.js +7 -0
  16. package/lib/cjs/hooks/useDeprecationWarning/index.d.ts +1 -0
  17. package/lib/cjs/hooks/useDeprecationWarning/useDeprecationWarning.d.ts +21 -0
  18. package/lib/cjs/hooks/useDeprecationWarning/useDeprecationWarning.js +0 -10
  19. package/lib/cjs/hooks/useLocalOrForwardRef/index.d.ts +1 -0
  20. package/lib/cjs/hooks/useLocalOrForwardRef/index.js +14 -0
  21. package/lib/cjs/hooks/useLocalOrForwardRef/useLocalOrForwardRef.d.ts +7 -0
  22. package/lib/cjs/hooks/useLocalOrForwardRef/useLocalOrForwardRef.js +21 -0
  23. package/lib/cjs/hooks/useLocalOrForwardRef/useLocalOrForwardRef.test.d.ts +1 -0
  24. package/lib/cjs/hooks/useLocalOrForwardRef/useLocalOrForwardRef.test.js +70 -0
  25. package/lib/cjs/types/button.d.ts +7 -0
  26. package/lib/cjs/types/button.js +6 -0
  27. package/lib/cjs/types/index.d.ts +1 -0
  28. package/lib/cjs/types/index.js +19 -8
  29. package/lib/cjs/types/shared/dom.d.ts +2 -1
  30. package/lib/cjs/types/shared/events.d.ts +5 -0
  31. package/lib/cjs/types/shared/events.js +6 -0
  32. package/lib/cjs/types/shared/index.d.ts +1 -0
  33. package/lib/cjs/types/shared/index.js +14 -3
  34. package/lib/cjs/utils/docUtils/ariaAttributes.d.ts +105 -0
  35. package/lib/cjs/utils/docUtils/pressAttributes.d.ts +7 -0
  36. package/lib/cjs/utils/docUtils/pressAttributes.js +49 -0
  37. package/lib/components/Breadcrumbs/BreadcrumbItem.js +3 -2
  38. package/lib/components/Button/Button.js +39 -26
  39. package/lib/components/Button/Buttons.styles.js +0 -2
  40. package/lib/components/Button/buttonAttributes.js +9 -55
  41. package/lib/hooks/index.js +1 -0
  42. package/lib/hooks/useDeprecationWarning/useDeprecationWarning.js +0 -10
  43. package/lib/hooks/useLocalOrForwardRef/index.js +1 -0
  44. package/lib/hooks/useLocalOrForwardRef/useLocalOrForwardRef.js +14 -0
  45. package/lib/hooks/useLocalOrForwardRef/useLocalOrForwardRef.test.js +61 -0
  46. package/lib/types/button.js +1 -0
  47. package/lib/types/index.js +1 -0
  48. package/lib/types/shared/events.js +1 -0
  49. package/lib/types/shared/index.js +1 -0
  50. package/lib/utils/docUtils/pressAttributes.js +41 -0
  51. package/package.json +1 -1
package/README.md CHANGED
@@ -17,10 +17,6 @@ Yarn:
17
17
  - Node: 18+
18
18
  - React: 16.8+
19
19
 
20
- ## Typescript
21
-
22
- Run `yarn dlx @yarnpkg/sdks vscode` and reload the window to configure vscode for TypeScript.
23
-
24
20
  ## Usage
25
21
 
26
22
  All apps should be wrapped in an `<AstroProvider>` for full functionality and styling.
@@ -48,6 +44,17 @@ For example, to view the disabled button styling, navigate to the Button story
48
44
  ## Yarn
49
45
  We use a modern version of [Yarn](https://yarnpkg.com/getting-started) for package management with the [Plug'n'Play](https://yarnpkg.com/features/pnp) feature enabled. This allows for a [Zero Install](https://yarnpkg.com/features/zero-installs) approach to be used.
50
46
 
47
+ ## Enabling TypeScript in VSCode
48
+
49
+ To run TypeScript properly, there are a couple of steps to run first:
50
+
51
+ 1. Run `yarn dlx @yarnpkg/sdks vscode` and reload the window to configure vscode for TypeScript.
52
+ 2. Open a TypeScript file in VSCode and open the command palette with `cmd + shift + p`.
53
+
54
+ a. Search for "TypeScript: Select TypeScript Version..."
55
+
56
+ b. Choose "Use Workspace Version"
57
+
51
58
  ## Browser Compatibility
52
59
 
53
60
  Astro fully supports the following browsers and versions:
package/lib/README.md CHANGED
@@ -17,10 +17,6 @@ Yarn:
17
17
  - Node: 18+
18
18
  - React: 16.8+
19
19
 
20
- ## Typescript
21
-
22
- Run `yarn dlx @yarnpkg/sdks vscode` and reload the window to configure vscode for TypeScript.
23
-
24
20
  ## Usage
25
21
 
26
22
  All apps should be wrapped in an `<AstroProvider>` for full functionality and styling.
@@ -48,6 +44,17 @@ For example, to view the disabled button styling, navigate to the Button story
48
44
  ## Yarn
49
45
  We use a modern version of [Yarn](https://yarnpkg.com/getting-started) for package management with the [Plug'n'Play](https://yarnpkg.com/features/pnp) feature enabled. This allows for a [Zero Install](https://yarnpkg.com/features/zero-installs) approach to be used.
50
46
 
47
+ ## Enabling TypeScript in VSCode
48
+
49
+ To run TypeScript properly, there are a couple of steps to run first:
50
+
51
+ 1. Run `yarn dlx @yarnpkg/sdks vscode` and reload the window to configure vscode for TypeScript.
52
+ 2. Open a TypeScript file in VSCode and open the command palette with `cmd + shift + p`.
53
+
54
+ a. Search for "TypeScript: Select TypeScript Version..."
55
+
56
+ b. Choose "Use Workspace Version"
57
+
51
58
  ## Browser Compatibility
52
59
 
53
60
  Astro fully supports the following browsers and versions:
@@ -15,6 +15,7 @@ _Object$defineProperty(exports, "__esModule", {
15
15
  value: true
16
16
  });
17
17
  exports["default"] = void 0;
18
+ var _includes = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/includes"));
18
19
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
19
20
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/objectWithoutProperties"));
20
21
  var _react = _interopRequireWildcard(require("react"));
@@ -65,10 +66,10 @@ var BreadcrumbItem = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
65
66
  onAction(actionKey);
66
67
  }
67
68
  }, [onAction, actionKey]);
69
+ var elementsWithOnPressProp = ['Button', 'IconButton', 'Link'];
68
70
  var elementProps = (0, _react.useMemo)(function () {
69
- var _ElementType$propType;
70
71
  var elementTypeProps = _objectSpread({}, (0, _reactAria.mergeProps)(itemProps, others));
71
- if ((_ElementType$propType = ElementType.propTypes) !== null && _ElementType$propType !== void 0 && _ElementType$propType.onPress) {
72
+ if ((0, _includes["default"])(elementsWithOnPressProp).call(elementsWithOnPressProp, elementType)) {
72
73
  elementTypeProps.onPress = onPressHandler;
73
74
  }
74
75
  if (isCurrent) {
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { ButtonProps } from '../../types';
3
+ declare const Button: React.ForwardRefExoticComponent<Omit<ButtonProps, "ref"> & React.RefAttributes<HTMLButtonElement>>;
4
+ export default Button;
@@ -24,53 +24,68 @@ var _interactions = require("@react-aria/interactions");
24
24
  var _themeUi = require("theme-ui");
25
25
  var _hooks = require("../../hooks");
26
26
  var _Loader = _interopRequireDefault(require("../Loader"));
27
- var _buttonAttributes = require("./buttonAttributes");
28
27
  var _react2 = require("@emotion/react");
29
- var _excluded = ["className", "isDisabled", "isLoading", "onHoverStart", "onHoverChange", "onHoverEnd", "onPress", "onPressStart", "onPressEnd", "onPressChange", "onPressUp", "children", "variant", "tabIndex"];
28
+ var _excluded = ["children", "className", "isDisabled", "isLoading", "onBlur", "onFocus", "onHoverChange", "onHoverEnd", "onHoverStart", "onKeyDown", "onKeyUp", "onPress", "onPressChange", "onPressEnd", "onPressStart", "onPressUp", "tabIndex", "variant"];
30
29
  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); }
31
30
  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; }
32
31
  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; }
33
32
  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; }
34
33
  var Button = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
35
- var className = props.className,
34
+ var children = props.children,
35
+ className = props.className,
36
36
  isDisabled = props.isDisabled,
37
37
  isLoading = props.isLoading,
38
- onHoverStart = props.onHoverStart,
38
+ onBlur = props.onBlur,
39
+ onFocus = props.onFocus,
39
40
  onHoverChange = props.onHoverChange,
40
41
  onHoverEnd = props.onHoverEnd,
42
+ onHoverStart = props.onHoverStart,
43
+ onKeyDown = props.onKeyDown,
44
+ onKeyUp = props.onKeyUp,
41
45
  onPress = props.onPress,
42
- onPressStart = props.onPressStart,
43
- onPressEnd = props.onPressEnd,
44
46
  onPressChange = props.onPressChange,
47
+ onPressEnd = props.onPressEnd,
48
+ onPressStart = props.onPressStart,
45
49
  onPressUp = props.onPressUp,
46
- children = props.children,
47
- variant = props.variant,
48
50
  tabIndex = props.tabIndex,
51
+ variant = props.variant,
49
52
  others = (0, _objectWithoutProperties2["default"])(props, _excluded);
50
- var buttonRef = (0, _react.useRef)();
53
+ var buttonRef = (0, _hooks.useLocalOrForwardRef)(ref);
51
54
  (0, _hooks.usePropWarning)(props, 'disabled', 'isDisabled');
52
- /* istanbul ignore next */
53
- (0, _react.useImperativeHandle)(ref, function () {
54
- return buttonRef.current;
55
- });
56
55
  var _useFocusRing = (0, _reactAria.useFocusRing)(),
57
56
  isFocusVisible = _useFocusRing.isFocusVisible,
58
57
  focusProps = _useFocusRing.focusProps;
59
- var _usePress = (0, _interactions.usePress)(buttonRef),
58
+ var _usePress = (0, _interactions.usePress)({
59
+ ref: buttonRef
60
+ }),
60
61
  isPressedFromContext = _usePress.isPressed;
61
62
  var _useButton = (0, _reactAria.useButton)(_objectSpread({
62
- elementType: 'button'
63
- }, props), buttonRef),
63
+ elementType: 'button',
64
+ isDisabled: isDisabled,
65
+ onBlur: onBlur,
66
+ onFocus: onFocus,
67
+ onKeyDown: onKeyDown,
68
+ onKeyUp: onKeyUp,
69
+ onPress: onPress,
70
+ onPressChange: onPressChange,
71
+ onPressEnd: onPressEnd,
72
+ onPressStart: onPressStart,
73
+ onPressUp: onPressUp
74
+ }, others), buttonRef),
64
75
  buttonProps = _useButton.buttonProps,
65
76
  isPressed = _useButton.isPressed;
66
- var _useHover = (0, _interactions.useHover)(props),
77
+ var _useHover = (0, _interactions.useHover)({
78
+ onHoverChange: onHoverChange,
79
+ onHoverEnd: onHoverEnd,
80
+ onHoverStart: onHoverStart
81
+ }),
67
82
  hoverProps = _useHover.hoverProps,
68
83
  isHovered = _useHover.isHovered;
69
84
  var _useStatusClasses = (0, _hooks.useStatusClasses)(className, {
70
- isHovered: isHovered,
71
- isPressed: isPressed || isPressedFromContext,
85
+ isDisabled: isDisabled,
72
86
  isFocused: isFocusVisible,
73
- isDisabled: isDisabled
87
+ isHovered: isHovered,
88
+ isPressed: isPressed || isPressedFromContext
74
89
  }),
75
90
  classNames = _useStatusClasses.classNames;
76
91
  var ariaLabel = props['aria-label'];
@@ -81,12 +96,11 @@ var Button = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
81
96
  "aria-label": ariaLabel,
82
97
  className: classNames,
83
98
  role: "button",
84
- tx: "buttons",
85
- sx: isLoading && {
99
+ sx: isLoading ? {
86
100
  display: 'flex',
87
101
  justifyContent: 'center',
88
102
  alignItems: 'center'
89
- },
103
+ } : {},
90
104
  variant: variant
91
105
  }, others, (0, _reactAria.mergeProps)(_objectSpread(_objectSpread({}, buttonProps), {}, {
92
106
  tabIndex: tabIndex
@@ -101,7 +115,6 @@ var Button = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
101
115
  }
102
116
  })));
103
117
  });
104
- Button.propTypes = _buttonAttributes.buttonPropTypes;
105
118
  Button.defaultProps = {
106
119
  isDisabled: false,
107
120
  variant: 'default'
@@ -0,0 +1,46 @@
1
+ import React from 'react';
2
+ import { ButtonProps } from '../../types';
3
+ declare const _default: {
4
+ title: string;
5
+ component: React.ForwardRefExoticComponent<Omit<ButtonProps, "ref"> & React.RefAttributes<HTMLButtonElement>>;
6
+ decorators: ((...args: any) => any)[];
7
+ argTypes: any;
8
+ args: {
9
+ variant: string;
10
+ children: string;
11
+ };
12
+ parameters: {
13
+ docs: {
14
+ source: {
15
+ type: string;
16
+ };
17
+ page: () => React.JSX.Element;
18
+ };
19
+ };
20
+ };
21
+ export default _default;
22
+ export declare const Default: {
23
+ (args: ButtonProps): React.JSX.Element;
24
+ parameters: {
25
+ design: {
26
+ type: string;
27
+ url: any;
28
+ };
29
+ };
30
+ };
31
+ export declare const Disabled: () => React.JSX.Element;
32
+ export declare const TextIconButton: () => React.JSX.Element;
33
+ export declare const InlineButton: () => React.JSX.Element;
34
+ export declare const ColorBlockButton: {
35
+ (args: any): React.JSX.Element;
36
+ argTypes: {
37
+ isConfigured: {
38
+ control: {
39
+ type: string;
40
+ };
41
+ defaultValue: boolean;
42
+ };
43
+ };
44
+ };
45
+ export declare const Critical: () => React.JSX.Element;
46
+ export declare const Primary: () => React.JSX.Element;
@@ -0,0 +1 @@
1
+ export {};