@primer/components 0.0.0-20211030175634 → 0.0.0-2021103018568

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 (56) hide show
  1. package/CHANGELOG.md +15 -1
  2. package/dist/browser.esm.js +104 -108
  3. package/dist/browser.esm.js.map +1 -1
  4. package/dist/browser.umd.js +104 -108
  5. package/dist/browser.umd.js.map +1 -1
  6. package/lib/ActionList2/Divider.d.ts +3 -2
  7. package/lib/ActionList2/Divider.js +10 -5
  8. package/lib/ActionList2/Item.js +21 -5
  9. package/lib/ActionList2/List.js +11 -1
  10. package/lib/ActionList2/MenuContext.d.ts +10 -0
  11. package/lib/ActionList2/MenuContext.js +15 -0
  12. package/lib/ActionList2/Selection.js +11 -0
  13. package/lib/ActionList2/index.d.ts +1 -2
  14. package/lib/ActionMenu2.d.ts +310 -0
  15. package/lib/ActionMenu2.js +91 -0
  16. package/lib/Avatar.d.ts +1 -2
  17. package/lib/Avatar.js +1 -1
  18. package/lib/BranchName.d.ts +1 -2
  19. package/lib/BranchName.js +1 -1
  20. package/lib/Details.d.ts +1 -2
  21. package/lib/Details.js +1 -3
  22. package/lib/Dropdown.d.ts +2 -66
  23. package/lib/Heading.d.ts +1 -2
  24. package/lib/Heading.js +1 -6
  25. package/lib/ProgressBar.d.ts +16 -11
  26. package/lib/ProgressBar.js +6 -10
  27. package/lib/Spinner.d.ts +1 -2
  28. package/lib/Spinner.js +1 -3
  29. package/lib/drafts.d.ts +1 -0
  30. package/lib/drafts.js +13 -0
  31. package/lib-esm/ActionList2/Divider.d.ts +3 -2
  32. package/lib-esm/ActionList2/Divider.js +8 -5
  33. package/lib-esm/ActionList2/Item.js +19 -5
  34. package/lib-esm/ActionList2/List.js +9 -1
  35. package/lib-esm/ActionList2/MenuContext.d.ts +10 -0
  36. package/lib-esm/ActionList2/MenuContext.js +3 -0
  37. package/lib-esm/ActionList2/Selection.js +9 -0
  38. package/lib-esm/ActionList2/index.d.ts +1 -2
  39. package/lib-esm/ActionMenu2.d.ts +310 -0
  40. package/lib-esm/ActionMenu2.js +67 -0
  41. package/lib-esm/Avatar.d.ts +1 -2
  42. package/lib-esm/Avatar.js +2 -2
  43. package/lib-esm/BranchName.d.ts +1 -2
  44. package/lib-esm/BranchName.js +2 -2
  45. package/lib-esm/Details.d.ts +1 -2
  46. package/lib-esm/Details.js +1 -2
  47. package/lib-esm/Dropdown.d.ts +2 -66
  48. package/lib-esm/Heading.d.ts +1 -2
  49. package/lib-esm/Heading.js +2 -6
  50. package/lib-esm/ProgressBar.d.ts +16 -11
  51. package/lib-esm/ProgressBar.js +7 -11
  52. package/lib-esm/Spinner.d.ts +1 -2
  53. package/lib-esm/Spinner.js +1 -2
  54. package/lib-esm/drafts.d.ts +1 -0
  55. package/lib-esm/drafts.js +2 -1
  56. package/package.json +1 -1
package/lib/Avatar.d.ts CHANGED
@@ -1,4 +1,3 @@
1
- import { SystemCommonProps } from './constants';
2
1
  import { SxProp } from './sx';
3
2
  import { ComponentProps } from './utils/types';
4
3
  declare const Avatar: import("styled-components").StyledComponent<"img", any, {
@@ -10,6 +9,6 @@ declare const Avatar: import("styled-components").StyledComponent<"img", any, {
10
9
  src: string;
11
10
  /** Provide alt text when the Avatar is used without the user's name next to it. */
12
11
  alt?: string | undefined;
13
- } & SystemCommonProps & SxProp, never>;
12
+ } & SxProp, never>;
14
13
  export declare type AvatarProps = ComponentProps<typeof Avatar>;
15
14
  export default Avatar;
package/lib/Avatar.js CHANGED
@@ -30,7 +30,7 @@ const Avatar = _styledComponents.default.img.attrs(props => ({
30
30
  })).withConfig({
31
31
  displayName: "Avatar",
32
32
  componentId: "sc-1waaaky-0"
33
- })(["display:inline-block;overflow:hidden;line-height:", ";vertical-align:middle;border-radius:", ";", ";", ""], (0, _constants.get)('lineHeights.condensedUltra'), props => getBorderRadius(props), _constants.COMMON, _sx.default);
33
+ })(["display:inline-block;overflow:hidden;line-height:", ";vertical-align:middle;border-radius:", ";", ""], (0, _constants.get)('lineHeights.condensedUltra'), props => getBorderRadius(props), _sx.default);
34
34
 
35
35
  Avatar.defaultProps = {
36
36
  size: 20,
@@ -1,6 +1,5 @@
1
- import { SystemCommonProps } from './constants';
2
1
  import { SxProp } from './sx';
3
2
  import { ComponentProps } from './utils/types';
4
- declare const BranchName: import("styled-components").StyledComponent<"a", any, SystemCommonProps & SxProp, never>;
3
+ declare const BranchName: import("styled-components").StyledComponent<"a", any, SxProp, never>;
5
4
  export declare type BranchNameProps = ComponentProps<typeof BranchName>;
6
5
  export default BranchName;
package/lib/BranchName.js CHANGED
@@ -16,7 +16,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
16
16
  const BranchName = _styledComponents.default.a.withConfig({
17
17
  displayName: "BranchName",
18
18
  componentId: "sc-167ouzm-0"
19
- })(["display:inline-block;padding:2px 6px;font-size:", ";font-family:", ";color:", ";background-color:", ";border-radius:", ";", ";", ";"], (0, _constants.get)('fontSizes.0'), (0, _constants.get)('fonts.mono'), (0, _constants.get)('colors.fg.muted'), (0, _constants.get)('colors.accent.subtle'), (0, _constants.get)('radii.2'), _constants.COMMON, _sx.default);
19
+ })(["display:inline-block;padding:2px 6px;font-size:", ";font-family:", ";color:", ";background-color:", ";border-radius:", ";", ";"], (0, _constants.get)('fontSizes.0'), (0, _constants.get)('fonts.mono'), (0, _constants.get)('colors.fg.muted'), (0, _constants.get)('colors.accent.subtle'), (0, _constants.get)('radii.2'), _sx.default);
20
20
 
21
21
  var _default = BranchName;
22
22
  exports.default = _default;
package/lib/Details.d.ts CHANGED
@@ -1,6 +1,5 @@
1
- import { SystemCommonProps } from './constants';
2
1
  import { SxProp } from './sx';
3
2
  import { ComponentProps } from './utils/types';
4
- declare const Details: import("styled-components").StyledComponent<"details", any, SystemCommonProps & SxProp, never>;
3
+ declare const Details: import("styled-components").StyledComponent<"details", any, SxProp, never>;
5
4
  export declare type DetailsProps = ComponentProps<typeof Details>;
6
5
  export default Details;
package/lib/Details.js CHANGED
@@ -7,8 +7,6 @@ exports.default = void 0;
7
7
 
8
8
  var _styledComponents = _interopRequireDefault(require("styled-components"));
9
9
 
10
- var _constants = require("./constants");
11
-
12
10
  var _sx = _interopRequireDefault(require("./sx"));
13
11
 
14
12
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -16,7 +14,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
16
14
  const Details = _styledComponents.default.details.withConfig({
17
15
  displayName: "Details",
18
16
  componentId: "ssy9qz-0"
19
- })(["& > summary{list-style:none;}& > summary::-webkit-details-marker{display:none;}", " ", ";"], _constants.COMMON, _sx.default);
17
+ })(["& > summary{list-style:none;}& > summary::-webkit-details-marker{display:none;}", ";"], _sx.default);
20
18
 
21
19
  Details.displayName = 'Details';
22
20
  var _default = Details;
package/lib/Dropdown.d.ts CHANGED
@@ -15,46 +15,14 @@ export declare type DropdownMenuProps = ComponentProps<typeof DropdownMenu>;
15
15
  export declare type DropdownItemProps = ComponentProps<typeof DropdownItem>;
16
16
  declare const _default: {
17
17
  ({ children, className, ...rest }: {
18
- backgroundColor?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
19
- color?: (string & import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>>) | undefined;
20
- display?: import("styled-system").ResponsiveValue<import("csstype").Property.Display, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
21
- marginBottom?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
22
- marginLeft?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
23
- marginRight?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
24
- marginTop?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
25
- opacity?: import("styled-system").ResponsiveValue<import("csstype").Property.Opacity, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
26
- paddingBottom?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
27
- paddingLeft?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
28
- paddingRight?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
29
- paddingTop?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
18
+ color?: string | undefined;
30
19
  translate?: "yes" | "no" | undefined;
31
- margin?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
32
- padding?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
33
20
  hidden?: boolean | undefined;
34
21
  children?: React.ReactNode;
35
22
  ref?: ((instance: HTMLElement | null) => void) | React.RefObject<HTMLElement> | null | undefined;
36
- p?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
37
23
  slot?: string | undefined;
38
24
  style?: React.CSSProperties | undefined;
39
25
  title?: string | undefined;
40
- bg?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
41
- m?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
42
- mt?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
43
- mr?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
44
- mb?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
45
- ml?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
46
- mx?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
47
- marginX?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
48
- my?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
49
- marginY?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
50
- pt?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
51
- pr?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
52
- pb?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
53
- pl?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
54
- px?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
55
- paddingX?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
56
- py?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
57
- paddingY?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
58
26
  open?: boolean | undefined;
59
27
  role?: React.AriaRole | undefined;
60
28
  sx?: import("./sx").BetterSystemStyleObject | undefined;
@@ -313,46 +281,14 @@ declare const _default: {
313
281
  theme?: any;
314
282
  }): JSX.Element;
315
283
  defaultProps: Partial<{
316
- backgroundColor?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
317
- color?: (string & import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>>) | undefined;
318
- display?: import("styled-system").ResponsiveValue<import("csstype").Property.Display, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
319
- marginBottom?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
320
- marginLeft?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
321
- marginRight?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
322
- marginTop?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
323
- opacity?: import("styled-system").ResponsiveValue<import("csstype").Property.Opacity, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
324
- paddingBottom?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
325
- paddingLeft?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
326
- paddingRight?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
327
- paddingTop?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
284
+ color?: string | undefined;
328
285
  translate?: "yes" | "no" | undefined;
329
- margin?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
330
- padding?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
331
286
  hidden?: boolean | undefined;
332
287
  children?: React.ReactNode;
333
288
  ref?: ((instance: HTMLElement | null) => void) | React.RefObject<HTMLElement> | null | undefined;
334
- p?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
335
289
  slot?: string | undefined;
336
290
  style?: React.CSSProperties | undefined;
337
291
  title?: string | undefined;
338
- bg?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
339
- m?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
340
- mt?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
341
- mr?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
342
- mb?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
343
- ml?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
344
- mx?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
345
- marginX?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
346
- my?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
347
- marginY?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
348
- pt?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
349
- pr?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
350
- pb?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
351
- pl?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
352
- px?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
353
- paddingX?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
354
- py?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
355
- paddingY?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
356
292
  open?: boolean | undefined;
357
293
  role?: React.AriaRole | undefined;
358
294
  sx?: import("./sx").BetterSystemStyleObject | undefined;
package/lib/Heading.d.ts CHANGED
@@ -1,6 +1,5 @@
1
- import { SystemCommonProps, SystemTypographyProps } from './constants';
2
1
  import { SxProp } from './sx';
3
2
  import { ComponentProps } from './utils/types';
4
- declare const Heading: import("styled-components").StyledComponent<"h2", any, SystemTypographyProps & SystemCommonProps & SxProp, never>;
3
+ declare const Heading: import("styled-components").StyledComponent<"h2", any, SxProp, never>;
5
4
  export declare type HeadingProps = ComponentProps<typeof Heading>;
6
5
  export default Heading;
package/lib/Heading.js CHANGED
@@ -11,17 +11,12 @@ var _constants = require("./constants");
11
11
 
12
12
  var _sx = _interopRequireDefault(require("./sx"));
13
13
 
14
- var _theme = _interopRequireDefault(require("./theme"));
15
-
16
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
15
 
18
16
  const Heading = _styledComponents.default.h2.withConfig({
19
17
  displayName: "Heading",
20
18
  componentId: "sc-1cjoo9h-0"
21
- })(["font-weight:", ";font-size:", ";margin:0;", ";", ";", ";"], (0, _constants.get)('fontWeights.bold'), (0, _constants.get)('fontSizes.5'), _constants.TYPOGRAPHY, _constants.COMMON, _sx.default);
19
+ })(["font-weight:", ";font-size:", ";margin:0;", ";"], (0, _constants.get)('fontWeights.bold'), (0, _constants.get)('fontSizes.5'), _sx.default);
22
20
 
23
- Heading.defaultProps = {
24
- theme: _theme.default
25
- };
26
21
  var _default = Heading;
27
22
  exports.default = _default;
@@ -1,17 +1,22 @@
1
1
  /// <reference types="react" />
2
2
  import { WidthProps } from 'styled-system';
3
- import { SystemCommonProps } from './constants';
4
3
  import { SxProp } from './sx';
5
- import { ComponentProps } from './utils/types';
6
- declare const Bar: import("styled-components").StyledComponent<"span", any, {
7
- progress?: string | number | undefined;
8
- } & SystemCommonProps, never>;
9
- declare const ProgressContainer: import("styled-components").StyledComponent<"span", any, {
10
- inline?: boolean | undefined;
11
- barSize?: "small" | "default" | "large" | undefined;
12
- } & WidthProps<Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>, import("csstype").Property.Width<import("styled-system").TLengthStyledSystem>> & SystemCommonProps & SxProp, never>;
13
- export declare type ProgressBarProps = ComponentProps<typeof ProgressContainer> & ComponentProps<typeof Bar>;
14
- declare function ProgressBar({ progress, bg, theme, ...rest }: ProgressBarProps): JSX.Element;
4
+ declare type ProgressProp = {
5
+ progress?: string | number;
6
+ };
7
+ declare const sizeMap: {
8
+ small: string;
9
+ large: string;
10
+ default: string;
11
+ };
12
+ declare type StyledProgressContainerProps = {
13
+ inline?: boolean;
14
+ barSize?: keyof typeof sizeMap;
15
+ } & WidthProps & SxProp;
16
+ export declare type ProgressBarProps = {
17
+ bg: string;
18
+ } & StyledProgressContainerProps & ProgressProp;
19
+ declare function ProgressBar({ progress, bg, ...rest }: ProgressBarProps): JSX.Element;
15
20
  declare namespace ProgressBar {
16
21
  var defaultProps: {
17
22
  bg: string;
@@ -17,12 +17,10 @@ var _sx = _interopRequireDefault(require("./sx"));
17
17
 
18
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
19
 
20
- function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
21
-
22
20
  const Bar = _styledComponents.default.span.withConfig({
23
21
  displayName: "ProgressBar__Bar",
24
22
  componentId: "sc-1tiva13-0"
25
- })(["width:", ";", ""], props => props.progress ? `${props.progress}%` : 0, _constants.COMMON);
23
+ })(["width:", ";", ";"], props => props.progress ? `${props.progress}%` : 0, _sx.default);
26
24
 
27
25
  const sizeMap = {
28
26
  small: '5px',
@@ -33,20 +31,18 @@ const sizeMap = {
33
31
  const ProgressContainer = _styledComponents.default.span.withConfig({
34
32
  displayName: "ProgressBar__ProgressContainer",
35
33
  componentId: "sc-1tiva13-1"
36
- })(["display:", ";overflow:hidden;background-color:", ";border-radius:", ";height:", ";", " ", " ", ";"], props => props.inline ? 'inline-flex' : 'flex', (0, _constants.get)('colors.border.default'), (0, _constants.get)('radii.1'), props => sizeMap[props.barSize || 'default'], _constants.COMMON, _styledSystem.width, _sx.default);
34
+ })(["display:", ";overflow:hidden;background-color:", ";border-radius:", ";height:", ";", " ", ";"], props => props.inline ? 'inline-flex' : 'flex', (0, _constants.get)('colors.border.default'), (0, _constants.get)('radii.1'), props => sizeMap[props.barSize || 'default'], _styledSystem.width, _sx.default);
37
35
 
38
36
  function ProgressBar({
39
37
  progress,
40
38
  bg,
41
- theme,
42
39
  ...rest
43
40
  }) {
44
- return /*#__PURE__*/_react.default.createElement(ProgressContainer, _extends({
45
- theme: theme
46
- }, rest), /*#__PURE__*/_react.default.createElement(Bar, {
41
+ return /*#__PURE__*/_react.default.createElement(ProgressContainer, rest, /*#__PURE__*/_react.default.createElement(Bar, {
47
42
  progress: progress,
48
- bg: bg,
49
- theme: theme
43
+ sx: {
44
+ bg
45
+ }
50
46
  }));
51
47
  }
52
48
 
package/lib/Spinner.d.ts CHANGED
@@ -1,5 +1,4 @@
1
1
  /// <reference types="react" />
2
- import { SystemCommonProps } from './constants';
3
2
  import { SxProp } from './sx';
4
3
  import { ComponentProps } from './utils/types';
5
4
  declare const sizeMap: {
@@ -12,6 +11,6 @@ export interface SpinnerInternalProps {
12
11
  size?: keyof typeof sizeMap;
13
12
  }
14
13
  declare function Spinner({ size: sizeKey, ...props }: SpinnerInternalProps): JSX.Element;
15
- declare const StyledSpinner: import("styled-components").StyledComponent<typeof Spinner, any, SystemCommonProps & SxProp, never>;
14
+ declare const StyledSpinner: import("styled-components").StyledComponent<typeof Spinner, any, SxProp, never>;
16
15
  export declare type SpinnerProps = ComponentProps<typeof StyledSpinner>;
17
16
  export default StyledSpinner;
package/lib/Spinner.js CHANGED
@@ -9,8 +9,6 @@ var _react = _interopRequireDefault(require("react"));
9
9
 
10
10
  var _styledComponents = _interopRequireDefault(require("styled-components"));
11
11
 
12
- var _constants = require("./constants");
13
-
14
12
  var _sx = _interopRequireDefault(require("./sx"));
15
13
 
16
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -54,7 +52,7 @@ Spinner.displayName = "Spinner";
54
52
  const StyledSpinner = (0, _styledComponents.default)(Spinner).withConfig({
55
53
  displayName: "Spinner__StyledSpinner",
56
54
  componentId: "sc-14tspit-0"
57
- })(["@keyframes rotate-keyframes{100%{transform:rotate(360deg);}}animation:rotate-keyframes 1s linear infinite;", " ", ""], _constants.COMMON, _sx.default);
55
+ })(["@keyframes rotate-keyframes{100%{transform:rotate(360deg);}}animation:rotate-keyframes 1s linear infinite;", ""], _sx.default);
58
56
  StyledSpinner.displayName = 'Spinner';
59
57
  var _default = StyledSpinner;
60
58
  exports.default = _default;
package/lib/drafts.d.ts CHANGED
@@ -6,3 +6,4 @@
6
6
  */
7
7
  export * from './ActionList2';
8
8
  export * from './NewButton';
9
+ export * from './ActionMenu2';
package/lib/drafts.js CHANGED
@@ -28,4 +28,17 @@ Object.keys(_NewButton).forEach(function (key) {
28
28
  return _NewButton[key];
29
29
  }
30
30
  });
31
+ });
32
+
33
+ var _ActionMenu = require("./ActionMenu2");
34
+
35
+ Object.keys(_ActionMenu).forEach(function (key) {
36
+ if (key === "default" || key === "__esModule") return;
37
+ if (key in exports && exports[key] === _ActionMenu[key]) return;
38
+ Object.defineProperty(exports, key, {
39
+ enumerable: true,
40
+ get: function () {
41
+ return _ActionMenu[key];
42
+ }
43
+ });
31
44
  });
@@ -1,5 +1,6 @@
1
- /// <reference types="react" />
1
+ import React from 'react';
2
+ import { SxProp } from '../sx';
2
3
  /**
3
4
  * Visually separates `Item`s or `Group`s in an `ActionList`.
4
5
  */
5
- export declare function Divider(): JSX.Element;
6
+ export declare const Divider: React.FC<SxProp>;
@@ -1,23 +1,26 @@
1
1
  import React from 'react';
2
2
  import Box from '../Box';
3
3
  import { get } from '../constants';
4
-
4
+ import { merge } from '../sx';
5
5
  /**
6
6
  * Visually separates `Item`s or `Group`s in an `ActionList`.
7
7
  */
8
- export function Divider() {
8
+
9
+ export const Divider = ({
10
+ sx = {}
11
+ }) => {
9
12
  return /*#__PURE__*/React.createElement(Box, {
10
13
  as: "li",
11
14
  role: "separator",
12
- sx: {
15
+ sx: merge({
13
16
  height: 1,
14
17
  backgroundColor: 'actionListItem.inlineDivider',
15
18
  marginTop: theme => `calc(${get('space.2')(theme)} - 1px)`,
16
19
  marginBottom: 2,
17
20
  listStyle: 'none' // hide the ::marker inserted by browser's stylesheet
18
21
 
19
- },
22
+ }, sx),
20
23
  "data-component": "ActionList.Divider"
21
24
  });
22
- }
25
+ };
23
26
  Divider.displayName = "Divider";
@@ -8,6 +8,7 @@ import Box from '../Box';
8
8
  import sx, { merge } from '../sx';
9
9
  import createSlots from '../utils/create-slots';
10
10
  import { ListContext } from './List';
11
+ import { MenuContext } from './MenuContext';
11
12
  import { Selection } from './Selection';
12
13
  export const getVariantStyles = (variant, disabled) => {
13
14
  if (disabled) {
@@ -54,6 +55,7 @@ export const Item = /*#__PURE__*/React.forwardRef(({
54
55
  onSelect,
55
56
  sx: sxProp = {},
56
57
  id,
58
+ role,
57
59
  _PrivateItemWrapper,
58
60
  ...props
59
61
  }, forwardedRef) => {
@@ -61,6 +63,10 @@ export const Item = /*#__PURE__*/React.forwardRef(({
61
63
  variant: listVariant,
62
64
  showDividers
63
65
  } = React.useContext(ListContext);
66
+ const {
67
+ itemRole,
68
+ afterSelect
69
+ } = React.useContext(MenuContext);
64
70
  const {
65
71
  theme
66
72
  } = useTheme();
@@ -135,16 +141,23 @@ export const Item = /*#__PURE__*/React.forwardRef(({
135
141
  const clickHandler = React.useCallback(event => {
136
142
  if (typeof onSelect !== 'function') return;
137
143
  if (disabled) return;
138
- if (!event.defaultPrevented) onSelect(event);
139
- }, [onSelect, disabled]);
144
+
145
+ if (!event.defaultPrevented) {
146
+ onSelect(event); // if this Item is inside a Menu, close the Menu
147
+
148
+ if (typeof afterSelect === 'function') afterSelect();
149
+ }
150
+ }, [onSelect, disabled, afterSelect]);
140
151
  const keyPressHandler = React.useCallback(event => {
141
152
  if (typeof onSelect !== 'function') return;
142
153
  if (disabled) return;
143
154
 
144
155
  if (!event.defaultPrevented && [' ', 'Enter'].includes(event.key)) {
145
- onSelect(event);
156
+ onSelect(event); // if this Item is inside a Menu, close the Menu
157
+
158
+ if (typeof afterSelect === 'function') afterSelect();
146
159
  }
147
- }, [onSelect, disabled]); // use props.id if provided, otherwise generate one.
160
+ }, [onSelect, disabled, afterSelect]); // use props.id if provided, otherwise generate one.
148
161
 
149
162
  const labelId = useSSRSafeId(id);
150
163
  const inlineDescriptionId = useSSRSafeId(id && `${id}--inline-description`);
@@ -166,7 +179,8 @@ export const Item = /*#__PURE__*/React.forwardRef(({
166
179
  "aria-disabled": disabled ? true : undefined,
167
180
  tabIndex: disabled || _PrivateItemWrapper ? undefined : 0,
168
181
  "aria-labelledby": `${labelId} ${slots.InlineDescription ? inlineDescriptionId : ''}`,
169
- "aria-describedby": slots.BlockDescription ? blockDescriptionId : undefined
182
+ "aria-describedby": slots.BlockDescription ? blockDescriptionId : undefined,
183
+ role: role || itemRole
170
184
  }, props), /*#__PURE__*/React.createElement(ItemWrapper, null, /*#__PURE__*/React.createElement(Selection, {
171
185
  selected: selected
172
186
  }), slots.LeadingVisual, /*#__PURE__*/React.createElement(Box, {
@@ -3,6 +3,7 @@ function _extends() { _extends = Object.assign || function (target) { for (var i
3
3
  import React from 'react';
4
4
  import styled from 'styled-components';
5
5
  import sx, { merge } from '../sx';
6
+ import { MenuContext } from './MenuContext';
6
7
  export const ListContext = /*#__PURE__*/React.createContext({});
7
8
  const ListBox = styled.ul.withConfig({
8
9
  displayName: "List__ListBox",
@@ -12,6 +13,7 @@ export const List = /*#__PURE__*/React.forwardRef(({
12
13
  variant = 'inset',
13
14
  selectionVariant,
14
15
  showDividers = false,
16
+ role,
15
17
  sx: sxProp = {},
16
18
  ...props
17
19
  }, forwardedRef) => {
@@ -21,8 +23,14 @@ export const List = /*#__PURE__*/React.forwardRef(({
21
23
  // reset ul styles
22
24
  paddingY: variant === 'inset' ? 2 : 0
23
25
  };
26
+ /** if list is inside a Menu, it will get a role from the Menu */
27
+
28
+ const {
29
+ listRole
30
+ } = React.useContext(MenuContext);
24
31
  return /*#__PURE__*/React.createElement(ListBox, _extends({
25
- sx: merge(styles, sxProp)
32
+ sx: merge(styles, sxProp),
33
+ role: role || listRole
26
34
  }, props, {
27
35
  ref: forwardedRef
28
36
  }), /*#__PURE__*/React.createElement(ListContext.Provider, {
@@ -0,0 +1,10 @@
1
+ /** This context can be used by components that compose ActionList inside a Menu */
2
+ import React from 'react';
3
+ declare type ContextProps = {
4
+ parent?: string;
5
+ listRole?: string;
6
+ itemRole?: string;
7
+ afterSelect?: () => void;
8
+ };
9
+ export declare const MenuContext: React.Context<ContextProps>;
10
+ export {};
@@ -0,0 +1,3 @@
1
+ /** This context can be used by components that compose ActionList inside a Menu */
2
+ import React from 'react';
3
+ export const MenuContext = /*#__PURE__*/React.createContext({});
@@ -2,6 +2,7 @@ import React from 'react';
2
2
  import { CheckIcon } from '@primer/octicons-react';
3
3
  import { ListContext } from './List';
4
4
  import { GroupContext } from './Group';
5
+ import { MenuContext } from './MenuContext';
5
6
  import { LeadingVisualContainer } from './Visuals';
6
7
  export const Selection = ({
7
8
  selected
@@ -12,6 +13,9 @@ export const Selection = ({
12
13
  const {
13
14
  selectionVariant: groupSelectionVariant
14
15
  } = React.useContext(GroupContext);
16
+ const {
17
+ parent
18
+ } = React.useContext(MenuContext);
15
19
  /** selectionVariant in Group can override the selectionVariant in List root */
16
20
 
17
21
  const selectionVariant = typeof groupSelectionVariant !== 'undefined' ? groupSelectionVariant : listSelectionVariant; // if selectionVariant is not set on List, don't show selection
@@ -22,6 +26,11 @@ export const Selection = ({
22
26
  return null;
23
27
  }
24
28
 
29
+ if (parent === 'ActionMenu') {
30
+ throw new Error('ActionList cannot have a selectionVariant inside ActionMenu, please use DropdownMenu or SelectPanel instead. More information: https://primer.style/design/components/action-list#application');
31
+ return null;
32
+ }
33
+
25
34
  if (selectionVariant === 'single') {
26
35
  return /*#__PURE__*/React.createElement(LeadingVisualContainer, null, selected && /*#__PURE__*/React.createElement(CheckIcon, null));
27
36
  }
@@ -1,5 +1,4 @@
1
1
  /// <reference types="react" />
2
- import { Divider } from './Divider';
3
2
  export type { ListProps as ActionListProps } from './List';
4
3
  export type { GroupProps } from './Group';
5
4
  export type { ItemProps } from './Item';
@@ -26,7 +25,7 @@ export declare const ActionList: import("@radix-ui/react-polymorphic").ForwardRe
26
25
  referrerPolicy?: import("react").HTMLAttributeReferrerPolicy | undefined;
27
26
  }>;
28
27
  /** Visually separates `Item`s or `Group`s in an `ActionList`. */
29
- Divider: typeof Divider;
28
+ Divider: import("react").FC<import("../sx").SxProp>;
30
29
  /** Secondary text which provides additional information about an `Item`. */
31
30
  Description: import("react").FC<import("./Description").DescriptionProps>;
32
31
  /** Icon (or similar) positioned before `Item` text. */