@pingux/astro 2.31.0 → 2.32.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.
- package/README.md +11 -4
- package/lib/README.md +11 -4
- package/lib/cjs/components/Breadcrumbs/BreadcrumbItem.js +3 -2
- package/lib/cjs/components/Button/Button.d.ts +4 -0
- package/lib/cjs/components/Button/Button.js +37 -24
- package/lib/cjs/components/Button/Button.stories.d.ts +46 -0
- package/lib/cjs/components/Button/Button.test.d.ts +1 -0
- package/lib/cjs/components/Button/Buttons.styles.d.ts +748 -0
- package/lib/cjs/components/Button/Buttons.styles.js +0 -2
- package/lib/cjs/components/Button/buttonAttributes.d.ts +1 -0
- package/lib/cjs/components/Button/buttonAttributes.js +9 -55
- package/lib/cjs/components/Button/constants.d.ts +4 -0
- package/lib/cjs/components/Button/index.d.ts +1 -0
- package/lib/cjs/hooks/index.d.ts +22 -0
- package/lib/cjs/hooks/index.js +7 -0
- package/lib/cjs/hooks/useDebounce/index.d.ts +1 -0
- package/lib/cjs/hooks/useDebounce/useDebounce.d.ts +6 -0
- package/lib/cjs/hooks/useDebounce/useDebounce.js +1 -1
- package/lib/cjs/hooks/useDeprecationWarning/index.d.ts +1 -0
- package/lib/cjs/hooks/useDeprecationWarning/useDeprecationWarning.d.ts +21 -0
- package/lib/cjs/hooks/useDeprecationWarning/useDeprecationWarning.js +0 -10
- package/lib/cjs/hooks/useLocalOrForwardRef/index.d.ts +1 -0
- package/lib/cjs/hooks/useLocalOrForwardRef/index.js +14 -0
- package/lib/cjs/hooks/useLocalOrForwardRef/useLocalOrForwardRef.d.ts +7 -0
- package/lib/cjs/hooks/useLocalOrForwardRef/useLocalOrForwardRef.js +21 -0
- package/lib/cjs/hooks/useLocalOrForwardRef/useLocalOrForwardRef.test.d.ts +1 -0
- package/lib/cjs/hooks/useLocalOrForwardRef/useLocalOrForwardRef.test.js +70 -0
- package/lib/cjs/types/button.d.ts +7 -0
- package/lib/cjs/types/button.js +6 -0
- package/lib/cjs/types/index.d.ts +1 -0
- package/lib/cjs/types/index.js +19 -8
- package/lib/cjs/types/shared/dom.d.ts +2 -1
- package/lib/cjs/types/shared/events.d.ts +5 -0
- package/lib/cjs/types/shared/events.js +6 -0
- package/lib/cjs/types/shared/index.d.ts +1 -0
- package/lib/cjs/types/shared/index.js +14 -3
- package/lib/cjs/utils/docUtils/ariaAttributes.d.ts +105 -0
- package/lib/cjs/utils/docUtils/pressAttributes.d.ts +7 -0
- package/lib/cjs/utils/docUtils/pressAttributes.js +49 -0
- package/lib/components/Breadcrumbs/BreadcrumbItem.js +3 -2
- package/lib/components/Button/Button.js +39 -26
- package/lib/components/Button/Buttons.styles.js +0 -2
- package/lib/components/Button/buttonAttributes.js +9 -55
- package/lib/hooks/index.js +1 -0
- package/lib/hooks/useDebounce/useDebounce.js +1 -1
- package/lib/hooks/useDeprecationWarning/useDeprecationWarning.js +0 -10
- package/lib/hooks/useLocalOrForwardRef/index.js +1 -0
- package/lib/hooks/useLocalOrForwardRef/useLocalOrForwardRef.js +14 -0
- package/lib/hooks/useLocalOrForwardRef/useLocalOrForwardRef.test.js +61 -0
- package/lib/types/button.js +1 -0
- package/lib/types/index.js +1 -0
- package/lib/types/shared/events.js +1 -0
- package/lib/types/shared/index.js +1 -0
- package/lib/utils/docUtils/pressAttributes.js +41 -0
- package/package.json +1 -1
@@ -24,12 +24,10 @@ var base = _objectSpread({
|
|
24
24
|
minWidth: 'min-content',
|
25
25
|
padding: '10px 15px',
|
26
26
|
outline: 'none',
|
27
|
-
display: 'inline-flex',
|
28
27
|
alignItems: 'center',
|
29
28
|
justifyContent: 'center',
|
30
29
|
borderRadius: '2px',
|
31
30
|
flexShrink: 0,
|
32
|
-
wordBreak: 'inherit',
|
33
31
|
whiteSpace: 'nowrap'
|
34
32
|
}, _Text.text.buttonLabel);
|
35
33
|
exports.base = base;
|
@@ -0,0 +1 @@
|
|
1
|
+
export declare const buttonArgTypes: any;
|
@@ -12,36 +12,28 @@ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequ
|
|
12
12
|
_Object$defineProperty(exports, "__esModule", {
|
13
13
|
value: true
|
14
14
|
});
|
15
|
-
exports.
|
15
|
+
exports.buttonArgTypes = void 0;
|
16
16
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
|
17
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
18
17
|
var _ariaAttributes = require("../../utils/docUtils/ariaAttributes");
|
19
18
|
var _docArgTypes = require("../../utils/docUtils/docArgTypes");
|
20
19
|
var _hoverProps = require("../../utils/docUtils/hoverProps");
|
20
|
+
var _pressAttributes = require("../../utils/docUtils/pressAttributes");
|
21
21
|
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; }
|
22
22
|
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; }
|
23
23
|
// add designer approved variants for devs to use here
|
24
24
|
var variantOptions = ['critical', 'default', 'inline', 'inlinePrimary', 'link', 'primary'];
|
25
25
|
var descriptions = {
|
26
|
+
children: 'Button text.',
|
26
27
|
isDisabled: 'Whether the button is disabled.',
|
27
28
|
isLoading: 'Shows loader instead of children',
|
28
|
-
onHoverStart: 'Handler that is called when a hover interaction starts. (e: HoverEvent) => void',
|
29
|
-
onHoverEnd: 'Handler that is called when the hover state changes. (isHovering: boolean) => void',
|
30
|
-
onHoverChange: 'Handler that is called when the press is released over the target. (e: PressEvent) => void',
|
31
|
-
onPress: 'Handler that is called when the press is released over the target. (e: PressEvent) => void',
|
32
|
-
onPressChange: 'Handler that is called when the press state changes. (isPressed: boolean) => void',
|
33
|
-
onPressEnd: 'Handler that is called when a press interaction ends, either over the target or when the pointer leaves the target. (e: PressEvent) => void',
|
34
|
-
onPressStart: 'Handler that is called when a press interaction starts. (e: PressEvent) => void',
|
35
|
-
onPressUp: 'Handler that is called when a press is released over the target, regardless of whether it started on the target or not. (e: PressEvent) => void',
|
36
|
-
variant: 'The styling variation of the button.',
|
37
29
|
tabIndex: 'The focus variation of button',
|
38
|
-
|
30
|
+
variant: 'The styling variation of the button.'
|
39
31
|
};
|
40
|
-
var buttonArgTypes = _objectSpread(_objectSpread({
|
32
|
+
var buttonArgTypes = _objectSpread(_objectSpread(_objectSpread({
|
41
33
|
variant: {
|
34
|
+
options: variantOptions,
|
42
35
|
control: {
|
43
|
-
type: 'select'
|
44
|
-
options: variantOptions
|
36
|
+
type: 'select'
|
45
37
|
},
|
46
38
|
description: descriptions.variant
|
47
39
|
},
|
@@ -56,22 +48,6 @@ var buttonArgTypes = _objectSpread(_objectSpread({
|
|
56
48
|
},
|
57
49
|
description: descriptions.children
|
58
50
|
},
|
59
|
-
onPress: _objectSpread({
|
60
|
-
description: descriptions.onPress
|
61
|
-
}, _docArgTypes.funcArg),
|
62
|
-
onPressStart: _objectSpread({
|
63
|
-
description: descriptions.onPressStart
|
64
|
-
}, _docArgTypes.funcArg),
|
65
|
-
onPressEnd: _objectSpread({
|
66
|
-
description: descriptions.onPressEnd
|
67
|
-
}, _docArgTypes.funcArg),
|
68
|
-
onPressChange: _objectSpread({
|
69
|
-
description: descriptions.onPressChange
|
70
|
-
}, _docArgTypes.funcArg),
|
71
|
-
onPressUp: _objectSpread({
|
72
|
-
description: descriptions.onPressUp
|
73
|
-
}, _docArgTypes.funcArg)
|
74
|
-
}, _hoverProps.onHoverArgTypes), {}, {
|
75
51
|
isLoading: _objectSpread(_objectSpread({}, _docArgTypes.booleanArg), {}, {
|
76
52
|
description: descriptions.isLoading
|
77
53
|
}),
|
@@ -80,28 +56,6 @@ var buttonArgTypes = _objectSpread(_objectSpread({
|
|
80
56
|
}),
|
81
57
|
tabIndex: {
|
82
58
|
description: descriptions.tabIndex
|
83
|
-
},
|
84
|
-
'aria-label': {
|
85
|
-
control: {
|
86
|
-
type: 'text'
|
87
|
-
},
|
88
|
-
description: _ariaAttributes.descriptions.ariaLabel
|
89
59
|
}
|
90
|
-
});
|
91
|
-
exports.buttonArgTypes = buttonArgTypes;
|
92
|
-
var buttonPropTypes = {
|
93
|
-
'aria-label': _propTypes["default"].string,
|
94
|
-
isDisabled: _propTypes["default"].bool,
|
95
|
-
isLoading: _propTypes["default"].bool,
|
96
|
-
onHoverStart: _propTypes["default"].func,
|
97
|
-
onHoverEnd: _propTypes["default"].func,
|
98
|
-
onHoverChange: _propTypes["default"].func,
|
99
|
-
onPress: _propTypes["default"].func,
|
100
|
-
onPressStart: _propTypes["default"].func,
|
101
|
-
onPressEnd: _propTypes["default"].func,
|
102
|
-
onPressChange: _propTypes["default"].func,
|
103
|
-
onPressUp: _propTypes["default"].func,
|
104
|
-
variant: _propTypes["default"].string,
|
105
|
-
tabIndex: _propTypes["default"].number
|
106
|
-
};
|
107
|
-
exports.buttonPropTypes = buttonPropTypes;
|
60
|
+
}, _pressAttributes.onPressArgTypes), _hoverProps.onHoverArgTypes), _ariaAttributes.ariaAttributeBaseArgTypes);
|
61
|
+
exports.buttonArgTypes = buttonArgTypes;
|
@@ -0,0 +1 @@
|
|
1
|
+
export { default } from './Button';
|
@@ -0,0 +1,22 @@
|
|
1
|
+
export { default as useAriaLabelWarning } from './useAriaLabelWarning';
|
2
|
+
export { default as useColumnStyles } from './useColumnStyles';
|
3
|
+
export { default as useComponentToggle } from './useComponentToggle';
|
4
|
+
export { default as useCopyToClipboard } from './useCopyToClipboard';
|
5
|
+
export { default as useDebounce } from './useDebounce';
|
6
|
+
export { default as useDeprecationWarning } from './useDeprecationWarning';
|
7
|
+
export { default as useDevelopmentWarning } from './useDevelopmentWarning';
|
8
|
+
export { default as useFallbackImage } from './useFallbackImage';
|
9
|
+
export { default as useField } from './useField';
|
10
|
+
export { default as useLabelHeight } from './useLabelHeight';
|
11
|
+
export { default as useLocalOrForwardRef } from './useLocalOrForwardRef';
|
12
|
+
export { default as useModalState } from './useModalState';
|
13
|
+
export { default as useMountTransition } from './useMountTransition';
|
14
|
+
export { default as useNavBarPress } from './useNavBarPress';
|
15
|
+
export { default as useOverlappingMenuHoverState } from './useOverlappingMenuHoverState';
|
16
|
+
export { default as useOverlayPanelState } from './useOverlayPanelState';
|
17
|
+
export { default as useProgressiveState } from './useProgressiveState';
|
18
|
+
export { default as usePropWarning } from './usePropWarning';
|
19
|
+
export { default as useRockerButton } from './useRockerButton';
|
20
|
+
export { default as useSelectField } from './useSelectField';
|
21
|
+
export { default as useStatusClasses } from './useStatusClasses';
|
22
|
+
export { default as useTShirtSize } from './useTShirtSize';
|
package/lib/cjs/hooks/index.js
CHANGED
@@ -65,6 +65,12 @@ _Object$defineProperty(exports, "useLabelHeight", {
|
|
65
65
|
return _useLabelHeight["default"];
|
66
66
|
}
|
67
67
|
});
|
68
|
+
_Object$defineProperty(exports, "useLocalOrForwardRef", {
|
69
|
+
enumerable: true,
|
70
|
+
get: function get() {
|
71
|
+
return _useLocalOrForwardRef["default"];
|
72
|
+
}
|
73
|
+
});
|
68
74
|
_Object$defineProperty(exports, "useModalState", {
|
69
75
|
enumerable: true,
|
70
76
|
get: function get() {
|
@@ -141,6 +147,7 @@ var _useDevelopmentWarning = _interopRequireDefault(require("./useDevelopmentWar
|
|
141
147
|
var _useFallbackImage = _interopRequireDefault(require("./useFallbackImage"));
|
142
148
|
var _useField = _interopRequireDefault(require("./useField"));
|
143
149
|
var _useLabelHeight = _interopRequireDefault(require("./useLabelHeight"));
|
150
|
+
var _useLocalOrForwardRef = _interopRequireDefault(require("./useLocalOrForwardRef"));
|
144
151
|
var _useModalState = _interopRequireDefault(require("./useModalState"));
|
145
152
|
var _useMountTransition = _interopRequireDefault(require("./useMountTransition"));
|
146
153
|
var _useNavBarPress = _interopRequireDefault(require("./useNavBarPress"));
|
@@ -0,0 +1 @@
|
|
1
|
+
export { default } from './useDebounce';
|
@@ -19,7 +19,7 @@ var useDebounce = function useDebounce(props) {
|
|
19
19
|
(0, _react.useEffect)(function () {
|
20
20
|
var handler = (0, _setTimeout2["default"])(function () {
|
21
21
|
setDebouncedValue(value);
|
22
|
-
},
|
22
|
+
}, delay);
|
23
23
|
return function () {
|
24
24
|
clearTimeout(handler);
|
25
25
|
};
|
@@ -0,0 +1 @@
|
|
1
|
+
export { default } from './useDeprecationWarning';
|
@@ -0,0 +1,21 @@
|
|
1
|
+
interface Options {
|
2
|
+
onlyOnce?: boolean;
|
3
|
+
isActive?: boolean;
|
4
|
+
}
|
5
|
+
interface UseDeprecationWarning {
|
6
|
+
/**
|
7
|
+
* Provides a development-only console warning on component mount.
|
8
|
+
*
|
9
|
+
* `text:`The deprecation warning text. It should describe what is being deprecated,
|
10
|
+
* when it is being deprecated (what lib version usually), and what to use instead.
|
11
|
+
*
|
12
|
+
* `options: { onlyOnce?: boolean, isActive?: boolean }`
|
13
|
+
* - `onlyOnce`: whether the warning will be shown just once
|
14
|
+
* - `isActive`: whether the warning should be shown
|
15
|
+
*
|
16
|
+
* e.g. "\`MyField\` will be deprecated in Astro-UI 1.0.0, use \`MyOtherField\` instead."
|
17
|
+
*/
|
18
|
+
(text: string, options?: Options): void;
|
19
|
+
}
|
20
|
+
declare const useDeprecationWarning: UseDeprecationWarning;
|
21
|
+
export default useDeprecationWarning;
|
@@ -9,16 +9,6 @@ exports["default"] = void 0;
|
|
9
9
|
var _set = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/set"));
|
10
10
|
var _react = require("react");
|
11
11
|
var alreadyShown = new _set["default"]();
|
12
|
-
|
13
|
-
/**
|
14
|
-
* Provides a development-only console warning on component mount.
|
15
|
-
* @param {String} text - The deprecation warning text. It should describe what is being deprecated,
|
16
|
-
* when it is being deprecated (what lib version usually), and what to use instead.
|
17
|
-
* @param {object} options
|
18
|
-
* @param {boolean} options.isActive - whether warning should be shown
|
19
|
-
* @param {boolean} options.onlyOnce - if true then warning will be globally shown just once
|
20
|
-
* e.g. "\`MyField\` will be deprecated in Astro-UI 1.0.0, use \`MyOtherField\` instead."
|
21
|
-
*/
|
22
12
|
var useDeprecationWarning = function useDeprecationWarning() {
|
23
13
|
var text = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
|
24
14
|
var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
|
@@ -0,0 +1 @@
|
|
1
|
+
export { default } from './useLocalOrForwardRef';
|
@@ -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 _useLocalOrForwardRef["default"];
|
12
|
+
}
|
13
|
+
});
|
14
|
+
var _useLocalOrForwardRef = _interopRequireDefault(require("./useLocalOrForwardRef"));
|
@@ -0,0 +1,7 @@
|
|
1
|
+
/// <reference types="react" />
|
2
|
+
/**
|
3
|
+
* Accepts a forwardRef as a parameter and combines it with a
|
4
|
+
* local ref, incase the forwarded wasn't provided
|
5
|
+
*/
|
6
|
+
declare const useLocalOrForwardRef: <T>(forwardRef: import("react").Ref<T>) => import("react").MutableRefObject<T>;
|
7
|
+
export default useLocalOrForwardRef;
|
@@ -0,0 +1,21 @@
|
|
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
|
+
});
|
7
|
+
exports["default"] = void 0;
|
8
|
+
var _react = require("react");
|
9
|
+
/**
|
10
|
+
* Accepts a forwardRef as a parameter and combines it with a
|
11
|
+
* local ref, incase the forwarded wasn't provided
|
12
|
+
*/
|
13
|
+
var useLocalOrForwardRef = function useLocalOrForwardRef(forwardRef) {
|
14
|
+
var localRef = (0, _react.useRef)({});
|
15
|
+
(0, _react.useImperativeHandle)(forwardRef, function () {
|
16
|
+
return localRef.current;
|
17
|
+
});
|
18
|
+
return localRef;
|
19
|
+
};
|
20
|
+
var _default = useLocalOrForwardRef;
|
21
|
+
exports["default"] = _default;
|
@@ -0,0 +1 @@
|
|
1
|
+
export {};
|
@@ -0,0 +1,70 @@
|
|
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
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
|
9
|
+
var _react = _interopRequireWildcard(require("react"));
|
10
|
+
var _reactAria = require("react-aria");
|
11
|
+
var _react2 = require("@testing-library/react");
|
12
|
+
var _index = require("../index");
|
13
|
+
var _useLocalOrForwardRef = _interopRequireDefault(require("./useLocalOrForwardRef"));
|
14
|
+
var _react3 = require("@emotion/react");
|
15
|
+
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); }
|
16
|
+
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; }
|
17
|
+
var HAS_REF = 'hasRef';
|
18
|
+
var ForwardRefComponent = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
19
|
+
var localOrForwardRef = (0, _useLocalOrForwardRef["default"])(ref);
|
20
|
+
var _useFocusRing = (0, _reactAria.useFocusRing)(),
|
21
|
+
isFocusVisible = _useFocusRing.isFocusVisible,
|
22
|
+
focusProps = _useFocusRing.focusProps;
|
23
|
+
var _useStatusClasses = (0, _index.useStatusClasses)('className', {
|
24
|
+
isFocused: isFocusVisible
|
25
|
+
}),
|
26
|
+
classNames = _useStatusClasses.classNames;
|
27
|
+
return (0, _react3.jsx)("button", (0, _extends2["default"])({
|
28
|
+
className: classNames,
|
29
|
+
ref: localOrForwardRef,
|
30
|
+
type: "button"
|
31
|
+
}, focusProps, props), localOrForwardRef && HAS_REF);
|
32
|
+
});
|
33
|
+
var TestComponentWithRef = function TestComponentWithRef() {
|
34
|
+
var parentRef = (0, _react.useRef)({});
|
35
|
+
(0, _react.useEffect)(function () {
|
36
|
+
if (!parentRef.current) return;
|
37
|
+
parentRef.current.focus();
|
38
|
+
}, []);
|
39
|
+
return (0, _react3.jsx)(ForwardRefComponent, {
|
40
|
+
ref: parentRef
|
41
|
+
});
|
42
|
+
};
|
43
|
+
var getComponentWithRef = function getComponentWithRef() {
|
44
|
+
return (0, _react2.render)((0, _react3.jsx)(TestComponentWithRef, null));
|
45
|
+
};
|
46
|
+
var TestComponentWithoutRef = function TestComponentWithoutRef() {
|
47
|
+
return (0, _react3.jsx)(ForwardRefComponent, null);
|
48
|
+
};
|
49
|
+
var getComponentWithoutRef = function getComponentWithoutRef() {
|
50
|
+
return (0, _react2.render)((0, _react3.jsx)(TestComponentWithoutRef, null));
|
51
|
+
};
|
52
|
+
describe('localOrForwardRef', function () {
|
53
|
+
describe('When the test component has been provided a forward ref', function () {
|
54
|
+
test('it has a valid ref', function () {
|
55
|
+
getComponentWithRef();
|
56
|
+
_react2.screen.getByText(HAS_REF);
|
57
|
+
});
|
58
|
+
test('the test component can access the refs properties', function () {
|
59
|
+
getComponentWithRef();
|
60
|
+
var button = _react2.screen.getByRole('button');
|
61
|
+
expect(button).toHaveClass('is-focused');
|
62
|
+
});
|
63
|
+
});
|
64
|
+
describe('When the test component has not been provided a forward ref', function () {
|
65
|
+
test('it has a valid ref', function () {
|
66
|
+
getComponentWithoutRef();
|
67
|
+
_react2.screen.getByText(HAS_REF);
|
68
|
+
});
|
69
|
+
});
|
70
|
+
});
|
@@ -0,0 +1,7 @@
|
|
1
|
+
import { ButtonProps as ThemeUIButtonProps } from 'theme-ui';
|
2
|
+
import { HoverProps, PressProps } from './shared';
|
3
|
+
export interface ButtonProps extends HoverProps, PressProps, ThemeUIButtonProps {
|
4
|
+
isDisabled?: boolean;
|
5
|
+
isLoading?: boolean;
|
6
|
+
tabIndex?: number;
|
7
|
+
}
|
package/lib/cjs/types/index.d.ts
CHANGED
package/lib/cjs/types/index.js
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
|
-
var _context, _context2, _context3, _context4, _context5, _context6, _context7, _context8;
|
3
|
+
var _context, _context2, _context3, _context4, _context5, _context6, _context7, _context8, _context9;
|
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");
|
@@ -18,8 +18,19 @@ _forEachInstanceProperty(_context = _Object$keys(_box)).call(_context, function
|
|
18
18
|
}
|
19
19
|
});
|
20
20
|
});
|
21
|
+
var _button = require("./button");
|
22
|
+
_forEachInstanceProperty(_context2 = _Object$keys(_button)).call(_context2, function (key) {
|
23
|
+
if (key === "default" || key === "__esModule") return;
|
24
|
+
if (key in exports && exports[key] === _button[key]) return;
|
25
|
+
_Object$defineProperty(exports, key, {
|
26
|
+
enumerable: true,
|
27
|
+
get: function get() {
|
28
|
+
return _button[key];
|
29
|
+
}
|
30
|
+
});
|
31
|
+
});
|
21
32
|
var _icon = require("./icon");
|
22
|
-
_forEachInstanceProperty(
|
33
|
+
_forEachInstanceProperty(_context3 = _Object$keys(_icon)).call(_context3, function (key) {
|
23
34
|
if (key === "default" || key === "__esModule") return;
|
24
35
|
if (key in exports && exports[key] === _icon[key]) return;
|
25
36
|
_Object$defineProperty(exports, key, {
|
@@ -30,7 +41,7 @@ _forEachInstanceProperty(_context2 = _Object$keys(_icon)).call(_context2, functi
|
|
30
41
|
});
|
31
42
|
});
|
32
43
|
var _item = require("./item");
|
33
|
-
_forEachInstanceProperty(
|
44
|
+
_forEachInstanceProperty(_context4 = _Object$keys(_item)).call(_context4, function (key) {
|
34
45
|
if (key === "default" || key === "__esModule") return;
|
35
46
|
if (key in exports && exports[key] === _item[key]) return;
|
36
47
|
_Object$defineProperty(exports, key, {
|
@@ -41,7 +52,7 @@ _forEachInstanceProperty(_context3 = _Object$keys(_item)).call(_context3, functi
|
|
41
52
|
});
|
42
53
|
});
|
43
54
|
var _loader = require("./loader");
|
44
|
-
_forEachInstanceProperty(
|
55
|
+
_forEachInstanceProperty(_context5 = _Object$keys(_loader)).call(_context5, function (key) {
|
45
56
|
if (key === "default" || key === "__esModule") return;
|
46
57
|
if (key in exports && exports[key] === _loader[key]) return;
|
47
58
|
_Object$defineProperty(exports, key, {
|
@@ -52,7 +63,7 @@ _forEachInstanceProperty(_context4 = _Object$keys(_loader)).call(_context4, func
|
|
52
63
|
});
|
53
64
|
});
|
54
65
|
var _popoverContainer = require("./popoverContainer");
|
55
|
-
_forEachInstanceProperty(
|
66
|
+
_forEachInstanceProperty(_context6 = _Object$keys(_popoverContainer)).call(_context6, function (key) {
|
56
67
|
if (key === "default" || key === "__esModule") return;
|
57
68
|
if (key in exports && exports[key] === _popoverContainer[key]) return;
|
58
69
|
_Object$defineProperty(exports, key, {
|
@@ -63,7 +74,7 @@ _forEachInstanceProperty(_context5 = _Object$keys(_popoverContainer)).call(_cont
|
|
63
74
|
});
|
64
75
|
});
|
65
76
|
var _shared = require("./shared");
|
66
|
-
_forEachInstanceProperty(
|
77
|
+
_forEachInstanceProperty(_context7 = _Object$keys(_shared)).call(_context7, function (key) {
|
67
78
|
if (key === "default" || key === "__esModule") return;
|
68
79
|
if (key in exports && exports[key] === _shared[key]) return;
|
69
80
|
_Object$defineProperty(exports, key, {
|
@@ -74,7 +85,7 @@ _forEachInstanceProperty(_context6 = _Object$keys(_shared)).call(_context6, func
|
|
74
85
|
});
|
75
86
|
});
|
76
87
|
var _tableCell = require("./tableCell");
|
77
|
-
_forEachInstanceProperty(
|
88
|
+
_forEachInstanceProperty(_context8 = _Object$keys(_tableCell)).call(_context8, function (key) {
|
78
89
|
if (key === "default" || key === "__esModule") return;
|
79
90
|
if (key in exports && exports[key] === _tableCell[key]) return;
|
80
91
|
_Object$defineProperty(exports, key, {
|
@@ -85,7 +96,7 @@ _forEachInstanceProperty(_context7 = _Object$keys(_tableCell)).call(_context7, f
|
|
85
96
|
});
|
86
97
|
});
|
87
98
|
var _text = require("./text");
|
88
|
-
_forEachInstanceProperty(
|
99
|
+
_forEachInstanceProperty(_context9 = _Object$keys(_text)).call(_context9, function (key) {
|
89
100
|
if (key === "default" || key === "__esModule") return;
|
90
101
|
if (key in exports && exports[key] === _text[key]) return;
|
91
102
|
_Object$defineProperty(exports, key, {
|
@@ -1,7 +1,8 @@
|
|
1
|
-
import React, { AriaAttributes, DOMAttributes as ReactDOMAttributes } from 'react';
|
1
|
+
import React, { AriaAttributes, DOMAttributes as ReactDOMAttributes, FocusEvent } from 'react';
|
2
2
|
export type AriaRole = 'alert' | 'alertdialog' | 'application' | 'article' | 'banner' | 'button' | 'cell' | 'checkbox' | 'columnheader' | 'combobox' | 'complementary' | 'contentinfo' | 'definition' | 'dialog' | 'directory' | 'document' | 'feed' | 'figure' | 'form' | 'grid' | 'gridcell' | 'group' | 'heading' | 'img' | 'link' | 'list' | 'listbox' | 'listitem' | 'log' | 'main' | 'marquee' | 'math' | 'menu' | 'menubar' | 'menuitem' | 'menuitemcheckbox' | 'menuitemradio' | 'navigation' | 'none' | 'note' | 'option' | 'presentation' | 'progressbar' | 'radio' | 'radiogroup' | 'region' | 'row' | 'rowgroup' | 'rowheader' | 'scrollbar' | 'search' | 'searchbox' | 'separator' | 'slider' | 'spinbutton' | 'status' | 'switch' | 'tab' | 'table' | 'tablist' | 'tabpanel' | 'term' | 'textbox' | 'timer' | 'toolbar' | 'tooltip' | 'tree' | 'treegrid' | 'treeitem' | (string & Record<string, unknown>);
|
3
3
|
export interface FocusableElement extends Element, HTMLOrSVGElement {
|
4
4
|
}
|
5
|
+
export type FocusEventHandler = (e: FocusEvent<Element>) => void;
|
5
6
|
export interface DOMAttributes<T = FocusableElement> extends AriaAttributes, ReactDOMAttributes<T> {
|
6
7
|
role?: AriaRole | undefined;
|
7
8
|
className?: string | undefined;
|
@@ -1,6 +1,6 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
|
-
var _context, _context2, _context3;
|
3
|
+
var _context, _context2, _context3, _context4;
|
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");
|
@@ -18,8 +18,19 @@ _forEachInstanceProperty(_context = _Object$keys(_dom)).call(_context, function
|
|
18
18
|
}
|
19
19
|
});
|
20
20
|
});
|
21
|
+
var _events = require("./events");
|
22
|
+
_forEachInstanceProperty(_context2 = _Object$keys(_events)).call(_context2, function (key) {
|
23
|
+
if (key === "default" || key === "__esModule") return;
|
24
|
+
if (key in exports && exports[key] === _events[key]) return;
|
25
|
+
_Object$defineProperty(exports, key, {
|
26
|
+
enumerable: true,
|
27
|
+
get: function get() {
|
28
|
+
return _events[key];
|
29
|
+
}
|
30
|
+
});
|
31
|
+
});
|
21
32
|
var _style = require("./style");
|
22
|
-
_forEachInstanceProperty(
|
33
|
+
_forEachInstanceProperty(_context3 = _Object$keys(_style)).call(_context3, function (key) {
|
23
34
|
if (key === "default" || key === "__esModule") return;
|
24
35
|
if (key in exports && exports[key] === _style[key]) return;
|
25
36
|
_Object$defineProperty(exports, key, {
|
@@ -30,7 +41,7 @@ _forEachInstanceProperty(_context2 = _Object$keys(_style)).call(_context2, funct
|
|
30
41
|
});
|
31
42
|
});
|
32
43
|
var _utils = require("./utils");
|
33
|
-
_forEachInstanceProperty(
|
44
|
+
_forEachInstanceProperty(_context4 = _Object$keys(_utils)).call(_context4, function (key) {
|
34
45
|
if (key === "default" || key === "__esModule") return;
|
35
46
|
if (key in exports && exports[key] === _utils[key]) return;
|
36
47
|
_Object$defineProperty(exports, key, {
|
@@ -0,0 +1,105 @@
|
|
1
|
+
export declare const descriptions: {
|
2
|
+
ariaControls: string;
|
3
|
+
ariaDescribedby: string;
|
4
|
+
ariaDetails: string;
|
5
|
+
ariaErrormessage: string;
|
6
|
+
ariaLabel: string;
|
7
|
+
ariaLabelledby: string;
|
8
|
+
};
|
9
|
+
export declare const ariaAttributeBaseDocSettings: {
|
10
|
+
type: {
|
11
|
+
summary: string;
|
12
|
+
};
|
13
|
+
control: {
|
14
|
+
type: string;
|
15
|
+
};
|
16
|
+
table: {
|
17
|
+
category: string;
|
18
|
+
};
|
19
|
+
};
|
20
|
+
export declare const ariaAttributeBaseArgTypes: {
|
21
|
+
'aria-controls': {
|
22
|
+
type: {
|
23
|
+
summary: string;
|
24
|
+
};
|
25
|
+
control: {
|
26
|
+
type: string;
|
27
|
+
};
|
28
|
+
table: {
|
29
|
+
category: string;
|
30
|
+
};
|
31
|
+
description: string;
|
32
|
+
};
|
33
|
+
'aria-describedby': {
|
34
|
+
type: {
|
35
|
+
summary: string;
|
36
|
+
};
|
37
|
+
control: {
|
38
|
+
type: string;
|
39
|
+
};
|
40
|
+
table: {
|
41
|
+
category: string;
|
42
|
+
};
|
43
|
+
description: string;
|
44
|
+
};
|
45
|
+
'aria-details': {
|
46
|
+
type: {
|
47
|
+
summary: string;
|
48
|
+
};
|
49
|
+
control: {
|
50
|
+
type: string;
|
51
|
+
};
|
52
|
+
table: {
|
53
|
+
category: string;
|
54
|
+
};
|
55
|
+
description: string;
|
56
|
+
};
|
57
|
+
'aria-errormessage': {
|
58
|
+
type: {
|
59
|
+
summary: string;
|
60
|
+
};
|
61
|
+
control: {
|
62
|
+
type: string;
|
63
|
+
};
|
64
|
+
table: {
|
65
|
+
category: string;
|
66
|
+
};
|
67
|
+
description: string;
|
68
|
+
};
|
69
|
+
'aria-label': {
|
70
|
+
type: {
|
71
|
+
summary: string;
|
72
|
+
};
|
73
|
+
control: {
|
74
|
+
type: string;
|
75
|
+
};
|
76
|
+
table: {
|
77
|
+
category: string;
|
78
|
+
};
|
79
|
+
description: string;
|
80
|
+
};
|
81
|
+
'aria-labelledby': {
|
82
|
+
type: {
|
83
|
+
summary: string;
|
84
|
+
};
|
85
|
+
control: {
|
86
|
+
type: string;
|
87
|
+
};
|
88
|
+
table: {
|
89
|
+
category: string;
|
90
|
+
};
|
91
|
+
description: string;
|
92
|
+
};
|
93
|
+
};
|
94
|
+
export declare const ariaAttributesBasePropTypes: {
|
95
|
+
'aria-controls': any;
|
96
|
+
'aria-describedby': any;
|
97
|
+
'aria-details': any;
|
98
|
+
'aria-errormessage': any;
|
99
|
+
'aria-label': any;
|
100
|
+
'aria-labelledby': any;
|
101
|
+
};
|
102
|
+
export declare const getAriaAttributeProps: (props: any) => {
|
103
|
+
ariaProps: {};
|
104
|
+
nonAriaProps: any;
|
105
|
+
};
|