@atlaskit/menu 2.3.0 → 2.4.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 (38) hide show
  1. package/CHANGELOG.md +613 -600
  2. package/__perf__/custom.tsx +1 -1
  3. package/__perf__/utils/interaction-tasks.tsx +2 -2
  4. package/codemods/0.7.0-change-css-fn-prop.tsx +3 -2
  5. package/codemods/2.1.0-invalid-link-item-to-button-item.tsx +2 -1
  6. package/codemods/helpers/generic.tsx +4 -3
  7. package/dist/cjs/internal/components/menu-item-primitive.js +8 -8
  8. package/dist/cjs/menu-item/button-item.js +4 -1
  9. package/dist/cjs/menu-item/custom-item.js +4 -1
  10. package/dist/cjs/menu-item/heading-item.js +6 -4
  11. package/dist/cjs/menu-item/link-item.js +2 -0
  12. package/dist/cjs/menu-item/skeleton-heading-item.js +4 -1
  13. package/dist/cjs/menu-item/skeleton-item.js +4 -1
  14. package/dist/cjs/menu-section/menu-group.js +3 -1
  15. package/dist/cjs/menu-section/section.js +7 -1
  16. package/dist/es2019/internal/components/menu-item-primitive.js +8 -8
  17. package/dist/es2019/menu-item/button-item.js +4 -1
  18. package/dist/es2019/menu-item/custom-item.js +4 -1
  19. package/dist/es2019/menu-item/heading-item.js +6 -4
  20. package/dist/es2019/menu-item/link-item.js +2 -0
  21. package/dist/es2019/menu-item/skeleton-heading-item.js +4 -1
  22. package/dist/es2019/menu-item/skeleton-item.js +4 -1
  23. package/dist/es2019/menu-section/menu-group.js +3 -1
  24. package/dist/es2019/menu-section/section.js +6 -0
  25. package/dist/esm/internal/components/menu-item-primitive.js +8 -8
  26. package/dist/esm/menu-item/button-item.js +4 -1
  27. package/dist/esm/menu-item/custom-item.js +4 -1
  28. package/dist/esm/menu-item/heading-item.js +6 -4
  29. package/dist/esm/menu-item/link-item.js +2 -0
  30. package/dist/esm/menu-item/skeleton-heading-item.js +4 -1
  31. package/dist/esm/menu-item/skeleton-item.js +4 -1
  32. package/dist/esm/menu-section/menu-group.js +3 -1
  33. package/dist/esm/menu-section/section.js +7 -1
  34. package/dist/types/internal/components/skeleton-shimmer.d.ts +1 -1
  35. package/dist/types/types.d.ts +7 -2
  36. package/dist/types-ts4.5/internal/components/skeleton-shimmer.d.ts +1 -1
  37. package/dist/types-ts4.5/types.d.ts +7 -2
  38. package/package.json +4 -6
@@ -1,4 +1,4 @@
1
- import React, { Ref } from 'react';
1
+ import React, { type Ref } from 'react';
2
2
 
3
3
  import CustomItem from '../src/menu-item/custom-item';
4
4
  import type { CustomItemComponentProps, CustomItemProps } from '../src/types';
@@ -1,7 +1,7 @@
1
1
  import { fireEvent } from '@testing-library/dom';
2
2
  import {
3
- InteractionTaskArgs,
4
- PublicInteractionTask,
3
+ type InteractionTaskArgs,
4
+ type PublicInteractionTask,
5
5
  } from 'storybook-addon-performance';
6
6
 
7
7
  export const interactionTasks: PublicInteractionTask[] = [
@@ -1,7 +1,8 @@
1
- import { NodePath } from 'ast-types/lib/node-path';
2
- import core, {
1
+ import { type NodePath } from 'ast-types/lib/node-path';
2
+ import type {
3
3
  API,
4
4
  ASTPath,
5
+ default as core,
5
6
  FileInfo,
6
7
  ImportDeclaration,
7
8
  ImportSpecifier,
@@ -1,6 +1,7 @@
1
- import core, {
1
+ import type {
2
2
  API,
3
3
  ASTPath,
4
+ default as core,
4
5
  FileInfo,
5
6
  ImportDeclaration,
6
7
  ImportSpecifier,
@@ -1,6 +1,7 @@
1
- import { NodePath } from 'ast-types/lib/node-path';
2
- import core, {
1
+ import { type NodePath } from 'ast-types/lib/node-path';
2
+ import type {
3
3
  ASTPath,
4
+ default as core,
4
5
  ImportDeclaration,
5
6
  ImportDefaultSpecifier,
6
7
  ImportSpecifier,
@@ -9,7 +10,7 @@ import core, {
9
10
  Node,
10
11
  Program,
11
12
  } from 'jscodeshift';
12
- import { Collection } from 'jscodeshift/src/Collection';
13
+ import { type Collection } from 'jscodeshift/src/Collection';
13
14
 
14
15
  export type Nullable<T> = T | null;
15
16
 
@@ -74,10 +74,10 @@ var primitiveStyles = (0, _react2.css)({
74
74
  outline: 0,
75
75
  textDecoration: 'none',
76
76
  userSelect: 'none',
77
- '::-moz-focus-inner': {
77
+ '&::-moz-focus-inner': {
78
78
  border: 0
79
79
  },
80
- ':hover': {
80
+ '&:hover': {
81
81
  textDecoration: 'none'
82
82
  }
83
83
  });
@@ -103,14 +103,14 @@ var interactiveStyles = (0, _react2.css)({
103
103
  var unselectedStyles = (0, _react2.css)({
104
104
  backgroundColor: "var(--ds-background-neutral-subtle, transparent)",
105
105
  color: 'currentColor',
106
- ':visited': {
106
+ '&:visited': {
107
107
  color: 'currentColor'
108
108
  },
109
- ':hover': {
109
+ '&:hover': {
110
110
  backgroundColor: "var(--ds-background-neutral-subtle-hovered, ".concat(_colors.N20, ")"),
111
111
  color: 'currentColor'
112
112
  },
113
- ':active': {
113
+ '&:active': {
114
114
  backgroundColor: "var(--ds-background-neutral-subtle-pressed, ".concat(_colors.N30, ")"),
115
115
  boxShadow: 'none',
116
116
  color: 'currentColor'
@@ -150,14 +150,14 @@ var selectedStyles = (0, _react2.css)({
150
150
  backgroundColor: "var(--ds-background-selected, ".concat(_colors.N20, ")"),
151
151
  // Fallback set as babel plugin inserts one otherwise
152
152
  color: "var(--ds-text-selected, currentColor)",
153
- ':visited': {
153
+ '&:visited': {
154
154
  color: "var(--ds-text-selected, currentColor)"
155
155
  },
156
- ':hover': {
156
+ '&:hover': {
157
157
  backgroundColor: "var(--ds-background-selected-hovered, ".concat(_colors.N20, ")"),
158
158
  color: "var(--ds-text-selected, currentColor)"
159
159
  },
160
- ':active': {
160
+ '&:active': {
161
161
  backgroundColor: "var(--ds-background-selected-pressed, ".concat(_colors.N30, ")"),
162
162
  color: "var(--ds-text-selected, currentColor)"
163
163
  }
@@ -50,7 +50,9 @@ function (props, ref) {
50
50
  }
51
51
  (0, _deprecationWarning.propDeprecationWarning)("@atlaskit/menu" || '', 'cssFn', cssFn !== _noop.default, '' // TODO: Create DAC post when primitives/xcss are available as alternatives
52
52
  );
53
- return (0, _react2.jsx)(_menuItemPrimitive.default, (0, _extends2.default)({
53
+ return (0, _react2.jsx)(_menuItemPrimitive.default
54
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
55
+ , (0, _extends2.default)({
54
56
  className: (0, _platformFeatureFlags.getBooleanFF)('platform.design-system-team.unsafe-overrides-killswitch_c8j9m') ? undefined : UNSAFE_className
55
57
  }, rest, {
56
58
  // eslint-disable-next-line @repo/internal/react/no-unsafe-overrides
@@ -76,6 +78,7 @@ function (props, ref) {
76
78
  return (0, _react2.jsx)("button", (0, _extends2.default)({
77
79
  "data-testid": testId
78
80
  }, rest, {
81
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
79
82
  className: className,
80
83
  ref: ref,
81
84
  disabled: isDisabled,
@@ -55,7 +55,9 @@ var CustomItem = /*#__PURE__*/(0, _react.memo)( /*#__PURE__*/(0, _react.forwardR
55
55
  }
56
56
  (0, _deprecationWarning.propDeprecationWarning)("@atlaskit/menu" || '', 'cssFn', cssFn !== _noop.default, '' // TODO: Create DAC post when primitives/xcss are available as alternatives
57
57
  );
58
- return (0, _react2.jsx)(_menuItemPrimitive.default, (0, _extends2.default)({
58
+ return (0, _react2.jsx)(_menuItemPrimitive.default
59
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
60
+ , (0, _extends2.default)({
59
61
  className: (0, _platformFeatureFlags.getBooleanFF)('platform.design-system-team.unsafe-overrides-killswitch_c8j9m') ? undefined : UNSAFE_className
60
62
  }, rest, {
61
63
  // eslint-disable-next-line @repo/internal/react/no-unsafe-overrides
@@ -81,6 +83,7 @@ var CustomItem = /*#__PURE__*/(0, _react.memo)( /*#__PURE__*/(0, _react.forwardR
81
83
  return (0, _react2.jsx)(Component, (0, _extends2.default)({
82
84
  "data-testid": testId
83
85
  }, rest, {
86
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
84
87
  className: className,
85
88
  ref: ref,
86
89
  draggable: false,
@@ -21,13 +21,13 @@ var itemHeadingFontSize = _typography.headingSizes.h100.size;
21
21
  var headingStyles = (0, _react2.css)({
22
22
  color: "var(--ds-text-subtle, ".concat(_colors.N300, ")"),
23
23
  paddingBlock: "var(--ds-space-0, 0px)",
24
- paddingInline: "var(--ds-space-200, 16px)"
24
+ paddingInline: "var(--ds-space-200, 16px)",
25
+ textTransform: 'uppercase'
25
26
  });
26
27
  var baseHeadingStyles = (0, _react2.css)({
27
28
  fontSize: itemHeadingFontSize,
28
29
  fontWeight: "var(--ds-font-weight-bold, 700)",
29
- lineHeight: itemHeadingContentHeight / itemHeadingFontSize,
30
- textTransform: 'uppercase'
30
+ lineHeight: itemHeadingContentHeight / itemHeadingFontSize
31
31
  });
32
32
  var tokenizedHeadingStyles = (0, _react2.css)({
33
33
  font: "var(--ds-font-heading-xxsmall, normal 600 12px/16px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, system-ui, \"Helvetica Neue\", sans-serif)"
@@ -62,7 +62,9 @@ var HeadingItem = /*#__PURE__*/(0, _react.memo)(function (_ref) {
62
62
  "aria-level": headingLevel,
63
63
  "data-testid": testId,
64
64
  "data-ds--menu--heading-item": true,
65
- id: id,
65
+ id: id
66
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
67
+ ,
66
68
  className: (0, _platformFeatureFlags.getBooleanFF)('platform.design-system-team.unsafe-overrides-killswitch_c8j9m') ? undefined : UNSAFE_className
67
69
  }, rest), children);
68
70
  });
@@ -56,6 +56,7 @@ function (props, ref) {
56
56
  (0, _deprecationWarning.propDeprecationWarning)("@atlaskit/menu" || '', 'cssFn', cssFn !== _noop.default, '' // TODO: Create DAC post when primitives/xcss are available as alternatives
57
57
  );
58
58
  return (0, _react2.jsx)(_menuItemPrimitive.default, (0, _extends2.default)({}, rest, {
59
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
59
60
  className: (0, _platformFeatureFlags.getBooleanFF)('platform.design-system-team.unsafe-overrides-killswitch_c8j9m') ? undefined : UNSAFE_className
60
61
  // eslint-disable-next-line @repo/internal/react/no-unsafe-overrides
61
62
  ,
@@ -81,6 +82,7 @@ function (props, ref) {
81
82
  return (0, _react2.jsx)("a", (0, _extends2.default)({
82
83
  "data-testid": testId
83
84
  }, rest, {
85
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
84
86
  className: className,
85
87
  href: isDisabled ? undefined : href,
86
88
  draggable: false
@@ -59,7 +59,10 @@ var SkeletonHeadingItem = function SkeletonHeadingItem(_ref) {
59
59
  }, function (_ref2) {
60
60
  var className = _ref2.className;
61
61
  return (0, _react.jsx)("div", {
62
- className: className,
62
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
63
+ className: className
64
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
65
+ ,
63
66
  style: {
64
67
  '--width': width
65
68
  },
@@ -113,7 +113,10 @@ var SkeletonItem = function SkeletonItem(_ref) {
113
113
  }, function (_ref2) {
114
114
  var className = _ref2.className;
115
115
  return (0, _react.jsx)("div", {
116
- className: className,
116
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
117
+ className: className
118
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
119
+ ,
117
120
  style: {
118
121
  '--width': width
119
122
  },
@@ -53,7 +53,9 @@ var MenuGroup = function MenuGroup(_ref) {
53
53
  },
54
54
  css: baseStyles,
55
55
  "data-testid": testId,
56
- role: role,
56
+ role: role
57
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
58
+ ,
57
59
  className: (0, _platformFeatureFlags.getBooleanFF)('platform.design-system-team.unsafe-overrides-killswitch_c8j9m') ? undefined : UNSAFE_className
58
60
  // eslint-disable-next-line @repo/internal/react/no-unsafe-spread-props
59
61
  }, rest))));
@@ -15,7 +15,7 @@ var _colors = require("@atlaskit/theme/colors");
15
15
  var _constants = require("@atlaskit/theme/constants");
16
16
  var _typography = require("@atlaskit/theme/typography");
17
17
  var _headingItem = _interopRequireDefault(require("../menu-item/heading-item"));
18
- var _excluded = ["children", "overrides", "title", "testId", "isScrollable", "hasSeparator", "id", "isList", "className"];
18
+ var _excluded = ["children", "overrides", "title", "titleId", "testId", "isScrollable", "hasSeparator", "id", "isList", "className"];
19
19
  /* eslint-disable @atlaskit/design-system/ensure-design-token-usage, @atlaskit/design-system/ensure-design-token-usage/preview */
20
20
  /** @jsx jsx */
21
21
  // eslint-disable-next-line @atlaskit/design-system/no-deprecated-imports
@@ -96,6 +96,7 @@ var Section = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
96
96
  var children = _ref.children,
97
97
  overrides = _ref.overrides,
98
98
  title = _ref.title,
99
+ titleId = _ref.titleId,
99
100
  testId = _ref.testId,
100
101
  isScrollable = _ref.isScrollable,
101
102
  hasSeparator = _ref.hasSeparator,
@@ -109,11 +110,14 @@ var Section = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
109
110
  var UNSAFE_headingOverrides = (0, _platformFeatureFlags.getBooleanFF)('platform.design-system-team.unsafe-overrides-killswitch_c8j9m') ? undefined : overrides && overrides.HeadingItem && overrides.HeadingItem.cssFn;
110
111
  var content = isList ? (0, _react2.jsx)("ul", {
111
112
  style: {
113
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
112
114
  margin: 0,
115
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
113
116
  padding: 0
114
117
  }
115
118
  }, _react.Children.map(_react.Children.toArray(children), function (child, index) {
116
119
  return (0, _react2.jsx)("li", {
120
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
117
121
  style: {
118
122
  listStyleType: 'none',
119
123
  margin: 0,
@@ -130,6 +134,7 @@ var Section = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
130
134
  "aria-hidden": true
131
135
  }, title), content) : (0, _react2.jsx)(_react.Fragment, null, content);
132
136
  return (0, _react2.jsx)("div", (0, _extends2.default)({}, rest, {
137
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
133
138
  className: (0, _platformFeatureFlags.getBooleanFF)('platform.design-system-team.unsafe-overrides-killswitch_c8j9m') ? undefined : UNSAFE_className,
134
139
  id: id
135
140
  // NOTE: Firefox allows elements that have "overflow: auto" to gain focus (as if it had tab-index="0")
@@ -137,6 +142,7 @@ var Section = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
137
142
  ,
138
143
  css: [sectionStyles, isScrollable ? scrollableStyles : unscrollableStyles, hasSeparator ? (0, _platformFeatureFlags.getBooleanFF)('platform.design-system-team.section-1px-seperator-borders') ? thinSeparatorStyles : thickSeparatorStyles : noSeparatorStyles],
139
144
  "aria-label": title,
145
+ "aria-labelledby": titleId,
140
146
  "data-testid": testId,
141
147
  role: "group",
142
148
  "data-section": true,
@@ -63,10 +63,10 @@ const primitiveStyles = css({
63
63
  outline: 0,
64
64
  textDecoration: 'none',
65
65
  userSelect: 'none',
66
- '::-moz-focus-inner': {
66
+ '&::-moz-focus-inner': {
67
67
  border: 0
68
68
  },
69
- ':hover': {
69
+ '&:hover': {
70
70
  textDecoration: 'none'
71
71
  }
72
72
  });
@@ -92,14 +92,14 @@ const interactiveStyles = css({
92
92
  const unselectedStyles = css({
93
93
  backgroundColor: "var(--ds-background-neutral-subtle, transparent)",
94
94
  color: 'currentColor',
95
- ':visited': {
95
+ '&:visited': {
96
96
  color: 'currentColor'
97
97
  },
98
- ':hover': {
98
+ '&:hover': {
99
99
  backgroundColor: `var(--ds-background-neutral-subtle-hovered, ${N20})`,
100
100
  color: 'currentColor'
101
101
  },
102
- ':active': {
102
+ '&:active': {
103
103
  backgroundColor: `var(--ds-background-neutral-subtle-pressed, ${N30})`,
104
104
  boxShadow: 'none',
105
105
  color: 'currentColor'
@@ -139,14 +139,14 @@ const selectedStyles = css({
139
139
  backgroundColor: `var(--ds-background-selected, ${N20})`,
140
140
  // Fallback set as babel plugin inserts one otherwise
141
141
  color: "var(--ds-text-selected, currentColor)",
142
- ':visited': {
142
+ '&:visited': {
143
143
  color: "var(--ds-text-selected, currentColor)"
144
144
  },
145
- ':hover': {
145
+ '&:hover': {
146
146
  backgroundColor: `var(--ds-background-selected-hovered, ${N20})`,
147
147
  color: "var(--ds-text-selected, currentColor)"
148
148
  },
149
- ':active': {
149
+ '&:active': {
150
150
  backgroundColor: `var(--ds-background-selected-pressed, ${N30})`,
151
151
  color: "var(--ds-text-selected, currentColor)"
152
152
  }
@@ -44,7 +44,9 @@ const ButtonItem = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(
44
44
  }
45
45
  propDeprecationWarning("@atlaskit/menu" || '', 'cssFn', cssFn !== noop, '' // TODO: Create DAC post when primitives/xcss are available as alternatives
46
46
  );
47
- return jsx(MenuItemPrimitive, _extends({
47
+ return jsx(MenuItemPrimitive
48
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
49
+ , _extends({
48
50
  className: getBooleanFF('platform.design-system-team.unsafe-overrides-killswitch_c8j9m') ? undefined : UNSAFE_className
49
51
  }, rest, {
50
52
  // eslint-disable-next-line @repo/internal/react/no-unsafe-overrides
@@ -70,6 +72,7 @@ const ButtonItem = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(
70
72
  }) => jsx("button", _extends({
71
73
  "data-testid": testId
72
74
  }, rest, {
75
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
73
76
  className: className,
74
77
  ref: ref,
75
78
  disabled: isDisabled,
@@ -49,7 +49,9 @@ const CustomItem = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(({
49
49
  }
50
50
  propDeprecationWarning("@atlaskit/menu" || '', 'cssFn', cssFn !== noop, '' // TODO: Create DAC post when primitives/xcss are available as alternatives
51
51
  );
52
- return jsx(MenuItemPrimitive, _extends({
52
+ return jsx(MenuItemPrimitive
53
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
54
+ , _extends({
53
55
  className: getBooleanFF('platform.design-system-team.unsafe-overrides-killswitch_c8j9m') ? undefined : UNSAFE_className
54
56
  }, rest, {
55
57
  // eslint-disable-next-line @repo/internal/react/no-unsafe-overrides
@@ -75,6 +77,7 @@ const CustomItem = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(({
75
77
  }) => jsx(Component, _extends({
76
78
  "data-testid": testId
77
79
  }, rest, {
80
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
78
81
  className: className,
79
82
  ref: ref,
80
83
  draggable: false,
@@ -12,13 +12,13 @@ const itemHeadingFontSize = headingSizes.h100.size;
12
12
  const headingStyles = css({
13
13
  color: `var(--ds-text-subtle, ${N300})`,
14
14
  paddingBlock: "var(--ds-space-0, 0px)",
15
- paddingInline: "var(--ds-space-200, 16px)"
15
+ paddingInline: "var(--ds-space-200, 16px)",
16
+ textTransform: 'uppercase'
16
17
  });
17
18
  const baseHeadingStyles = css({
18
19
  fontSize: itemHeadingFontSize,
19
20
  fontWeight: "var(--ds-font-weight-bold, 700)",
20
- lineHeight: itemHeadingContentHeight / itemHeadingFontSize,
21
- textTransform: 'uppercase'
21
+ lineHeight: itemHeadingContentHeight / itemHeadingFontSize
22
22
  });
23
23
  const tokenizedHeadingStyles = css({
24
24
  font: "var(--ds-font-heading-xxsmall, normal 600 12px/16px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, system-ui, \"Helvetica Neue\", sans-serif)"
@@ -56,7 +56,9 @@ const HeadingItem = /*#__PURE__*/memo(({
56
56
  "aria-level": headingLevel,
57
57
  "data-testid": testId,
58
58
  "data-ds--menu--heading-item": true,
59
- id: id,
59
+ id: id
60
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
61
+ ,
60
62
  className: getBooleanFF('platform.design-system-team.unsafe-overrides-killswitch_c8j9m') ? undefined : UNSAFE_className
61
63
  }, rest), children);
62
64
  });
@@ -50,6 +50,7 @@ const LinkItem = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(
50
50
  propDeprecationWarning("@atlaskit/menu" || '', 'cssFn', cssFn !== noop, '' // TODO: Create DAC post when primitives/xcss are available as alternatives
51
51
  );
52
52
  return jsx(MenuItemPrimitive, _extends({}, rest, {
53
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
53
54
  className: getBooleanFF('platform.design-system-team.unsafe-overrides-killswitch_c8j9m') ? undefined : UNSAFE_className
54
55
  // eslint-disable-next-line @repo/internal/react/no-unsafe-overrides
55
56
  ,
@@ -75,6 +76,7 @@ const LinkItem = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(
75
76
  }) => jsx("a", _extends({
76
77
  "data-testid": testId
77
78
  }, rest, {
79
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
78
80
  className: className,
79
81
  href: isDisabled ? undefined : href,
80
82
  draggable: false
@@ -51,7 +51,10 @@ const SkeletonHeadingItem = ({
51
51
  }, ({
52
52
  className
53
53
  }) => jsx("div", {
54
- className: className,
54
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
55
+ className: className
56
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
57
+ ,
55
58
  style: {
56
59
  '--width': width
57
60
  },
@@ -107,7 +107,10 @@ const SkeletonItem = ({
107
107
  }, ({
108
108
  className
109
109
  }) => jsx("div", {
110
- className: className,
110
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
111
+ className: className
112
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
113
+ ,
111
114
  style: {
112
115
  '--width': width
113
116
  },
@@ -47,7 +47,9 @@ const MenuGroup = ({
47
47
  },
48
48
  css: baseStyles,
49
49
  "data-testid": testId,
50
- role: role,
50
+ role: role
51
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
52
+ ,
51
53
  className: getBooleanFF('platform.design-system-team.unsafe-overrides-killswitch_c8j9m') ? undefined : UNSAFE_className
52
54
  // eslint-disable-next-line @repo/internal/react/no-unsafe-spread-props
53
55
  }, rest))));
@@ -87,6 +87,7 @@ const Section = /*#__PURE__*/forwardRef(({
87
87
  children,
88
88
  overrides,
89
89
  title,
90
+ titleId,
90
91
  testId,
91
92
  isScrollable,
92
93
  hasSeparator,
@@ -104,10 +105,13 @@ const Section = /*#__PURE__*/forwardRef(({
104
105
  const UNSAFE_headingOverrides = getBooleanFF('platform.design-system-team.unsafe-overrides-killswitch_c8j9m') ? undefined : overrides && overrides.HeadingItem && overrides.HeadingItem.cssFn;
105
106
  const content = isList ? jsx("ul", {
106
107
  style: {
108
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
107
109
  margin: 0,
110
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
108
111
  padding: 0
109
112
  }
110
113
  }, Children.map(Children.toArray(children), (child, index) => jsx("li", {
114
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
111
115
  style: {
112
116
  listStyleType: 'none',
113
117
  margin: 0,
@@ -123,6 +127,7 @@ const Section = /*#__PURE__*/forwardRef(({
123
127
  "aria-hidden": true
124
128
  }, title), content) : jsx(Fragment, null, content);
125
129
  return jsx("div", _extends({}, rest, {
130
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
126
131
  className: getBooleanFF('platform.design-system-team.unsafe-overrides-killswitch_c8j9m') ? undefined : UNSAFE_className,
127
132
  id: id
128
133
  // NOTE: Firefox allows elements that have "overflow: auto" to gain focus (as if it had tab-index="0")
@@ -130,6 +135,7 @@ const Section = /*#__PURE__*/forwardRef(({
130
135
  ,
131
136
  css: [sectionStyles, isScrollable ? scrollableStyles : unscrollableStyles, hasSeparator ? getBooleanFF('platform.design-system-team.section-1px-seperator-borders') ? thinSeparatorStyles : thickSeparatorStyles : noSeparatorStyles],
132
137
  "aria-label": title,
138
+ "aria-labelledby": titleId,
133
139
  "data-testid": testId,
134
140
  role: "group",
135
141
  "data-section": true,
@@ -66,10 +66,10 @@ var primitiveStyles = css({
66
66
  outline: 0,
67
67
  textDecoration: 'none',
68
68
  userSelect: 'none',
69
- '::-moz-focus-inner': {
69
+ '&::-moz-focus-inner': {
70
70
  border: 0
71
71
  },
72
- ':hover': {
72
+ '&:hover': {
73
73
  textDecoration: 'none'
74
74
  }
75
75
  });
@@ -95,14 +95,14 @@ var interactiveStyles = css({
95
95
  var unselectedStyles = css({
96
96
  backgroundColor: "var(--ds-background-neutral-subtle, transparent)",
97
97
  color: 'currentColor',
98
- ':visited': {
98
+ '&:visited': {
99
99
  color: 'currentColor'
100
100
  },
101
- ':hover': {
101
+ '&:hover': {
102
102
  backgroundColor: "var(--ds-background-neutral-subtle-hovered, ".concat(N20, ")"),
103
103
  color: 'currentColor'
104
104
  },
105
- ':active': {
105
+ '&:active': {
106
106
  backgroundColor: "var(--ds-background-neutral-subtle-pressed, ".concat(N30, ")"),
107
107
  boxShadow: 'none',
108
108
  color: 'currentColor'
@@ -142,14 +142,14 @@ var selectedStyles = css({
142
142
  backgroundColor: "var(--ds-background-selected, ".concat(N20, ")"),
143
143
  // Fallback set as babel plugin inserts one otherwise
144
144
  color: "var(--ds-text-selected, currentColor)",
145
- ':visited': {
145
+ '&:visited': {
146
146
  color: "var(--ds-text-selected, currentColor)"
147
147
  },
148
- ':hover': {
148
+ '&:hover': {
149
149
  backgroundColor: "var(--ds-background-selected-hovered, ".concat(N20, ")"),
150
150
  color: "var(--ds-text-selected, currentColor)"
151
151
  },
152
- ':active': {
152
+ '&:active': {
153
153
  backgroundColor: "var(--ds-background-selected-pressed, ".concat(N30, ")"),
154
154
  color: "var(--ds-text-selected, currentColor)"
155
155
  }
@@ -43,7 +43,9 @@ function (props, ref) {
43
43
  }
44
44
  propDeprecationWarning("@atlaskit/menu" || '', 'cssFn', cssFn !== noop, '' // TODO: Create DAC post when primitives/xcss are available as alternatives
45
45
  );
46
- return jsx(MenuItemPrimitive, _extends({
46
+ return jsx(MenuItemPrimitive
47
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
48
+ , _extends({
47
49
  className: getBooleanFF('platform.design-system-team.unsafe-overrides-killswitch_c8j9m') ? undefined : UNSAFE_className
48
50
  }, rest, {
49
51
  // eslint-disable-next-line @repo/internal/react/no-unsafe-overrides
@@ -69,6 +71,7 @@ function (props, ref) {
69
71
  return jsx("button", _extends({
70
72
  "data-testid": testId
71
73
  }, rest, {
74
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
72
75
  className: className,
73
76
  ref: ref,
74
77
  disabled: isDisabled,
@@ -49,7 +49,9 @@ var CustomItem = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function (_ref, ref)
49
49
  }
50
50
  propDeprecationWarning("@atlaskit/menu" || '', 'cssFn', cssFn !== noop, '' // TODO: Create DAC post when primitives/xcss are available as alternatives
51
51
  );
52
- return jsx(MenuItemPrimitive, _extends({
52
+ return jsx(MenuItemPrimitive
53
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
54
+ , _extends({
53
55
  className: getBooleanFF('platform.design-system-team.unsafe-overrides-killswitch_c8j9m') ? undefined : UNSAFE_className
54
56
  }, rest, {
55
57
  // eslint-disable-next-line @repo/internal/react/no-unsafe-overrides
@@ -75,6 +77,7 @@ var CustomItem = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function (_ref, ref)
75
77
  return jsx(Component, _extends({
76
78
  "data-testid": testId
77
79
  }, rest, {
80
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
78
81
  className: className,
79
82
  ref: ref,
80
83
  draggable: false,
@@ -14,13 +14,13 @@ var itemHeadingFontSize = headingSizes.h100.size;
14
14
  var headingStyles = css({
15
15
  color: "var(--ds-text-subtle, ".concat(N300, ")"),
16
16
  paddingBlock: "var(--ds-space-0, 0px)",
17
- paddingInline: "var(--ds-space-200, 16px)"
17
+ paddingInline: "var(--ds-space-200, 16px)",
18
+ textTransform: 'uppercase'
18
19
  });
19
20
  var baseHeadingStyles = css({
20
21
  fontSize: itemHeadingFontSize,
21
22
  fontWeight: "var(--ds-font-weight-bold, 700)",
22
- lineHeight: itemHeadingContentHeight / itemHeadingFontSize,
23
- textTransform: 'uppercase'
23
+ lineHeight: itemHeadingContentHeight / itemHeadingFontSize
24
24
  });
25
25
  var tokenizedHeadingStyles = css({
26
26
  font: "var(--ds-font-heading-xxsmall, normal 600 12px/16px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, system-ui, \"Helvetica Neue\", sans-serif)"
@@ -55,7 +55,9 @@ var HeadingItem = /*#__PURE__*/memo(function (_ref) {
55
55
  "aria-level": headingLevel,
56
56
  "data-testid": testId,
57
57
  "data-ds--menu--heading-item": true,
58
- id: id,
58
+ id: id
59
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
60
+ ,
59
61
  className: getBooleanFF('platform.design-system-team.unsafe-overrides-killswitch_c8j9m') ? undefined : UNSAFE_className
60
62
  }, rest), children);
61
63
  });
@@ -49,6 +49,7 @@ function (props, ref) {
49
49
  propDeprecationWarning("@atlaskit/menu" || '', 'cssFn', cssFn !== noop, '' // TODO: Create DAC post when primitives/xcss are available as alternatives
50
50
  );
51
51
  return jsx(MenuItemPrimitive, _extends({}, rest, {
52
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
52
53
  className: getBooleanFF('platform.design-system-team.unsafe-overrides-killswitch_c8j9m') ? undefined : UNSAFE_className
53
54
  // eslint-disable-next-line @repo/internal/react/no-unsafe-overrides
54
55
  ,
@@ -74,6 +75,7 @@ function (props, ref) {
74
75
  return jsx("a", _extends({
75
76
  "data-testid": testId
76
77
  }, rest, {
78
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
77
79
  className: className,
78
80
  href: isDisabled ? undefined : href,
79
81
  draggable: false
@@ -52,7 +52,10 @@ var SkeletonHeadingItem = function SkeletonHeadingItem(_ref) {
52
52
  }, function (_ref2) {
53
53
  var className = _ref2.className;
54
54
  return jsx("div", {
55
- className: className,
55
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
56
+ className: className
57
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
58
+ ,
56
59
  style: {
57
60
  '--width': width
58
61
  },