@atlaskit/page-layout 3.3.0 → 3.3.2
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/CHANGELOG.md +525 -512
- package/__perf__/examples.tsx +3 -2
- package/__perf__/utils/product-integration/atlassian-navigation.tsx +1 -1
- package/__perf__/utils/product-integration/create.tsx +1 -0
- package/__perf__/utils/product-integration/profile-popup.tsx +1 -0
- package/__perf__/utils/product-integration/sample-footer.tsx +2 -3
- package/__perf__/utils/product-integration/sample-header.tsx +1 -1
- package/dist/cjs/components/resize-control/grab-area.js +2 -2
- package/dist/cjs/components/resize-control/resize-button.js +3 -1
- package/dist/cjs/components/skip-links/skip-link-components.js +13 -21
- package/dist/cjs/components/slots/banner-slot.js +3 -1
- package/dist/cjs/components/slots/internal/left-sidebar-outer.js +3 -1
- package/dist/cjs/components/slots/left-panel.js +3 -1
- package/dist/cjs/components/slots/main.js +3 -1
- package/dist/cjs/components/slots/right-panel.js +3 -1
- package/dist/cjs/components/slots/right-sidebar.js +3 -1
- package/dist/cjs/components/slots/top-navigation.js +3 -1
- package/dist/es2019/components/resize-control/grab-area.js +2 -2
- package/dist/es2019/components/resize-control/resize-button.js +3 -1
- package/dist/es2019/components/skip-links/skip-link-components.js +13 -21
- package/dist/es2019/components/slots/banner-slot.js +3 -1
- package/dist/es2019/components/slots/internal/left-sidebar-outer.js +3 -1
- package/dist/es2019/components/slots/left-panel.js +3 -1
- package/dist/es2019/components/slots/main.js +3 -1
- package/dist/es2019/components/slots/right-panel.js +3 -1
- package/dist/es2019/components/slots/right-sidebar.js +3 -1
- package/dist/es2019/components/slots/top-navigation.js +3 -1
- package/dist/esm/components/resize-control/grab-area.js +2 -2
- package/dist/esm/components/resize-control/resize-button.js +3 -1
- package/dist/esm/components/skip-links/skip-link-components.js +13 -21
- package/dist/esm/components/slots/banner-slot.js +3 -1
- package/dist/esm/components/slots/internal/left-sidebar-outer.js +3 -1
- package/dist/esm/components/slots/left-panel.js +3 -1
- package/dist/esm/components/slots/main.js +3 -1
- package/dist/esm/components/slots/right-panel.js +3 -1
- package/dist/esm/components/slots/right-sidebar.js +3 -1
- package/dist/esm/components/slots/top-navigation.js +3 -1
- package/dist/types/common/types.d.ts +3 -3
- package/dist/types/common/utils.d.ts +1 -1
- package/dist/types/components/resize-control/grab-area.d.ts +2 -2
- package/dist/types/components/resize-control/index.d.ts +1 -1
- package/dist/types/components/resize-control/resize-button.d.ts +1 -1
- package/dist/types/components/resize-control/types.d.ts +2 -2
- package/dist/types/components/skip-links/skip-link-components.d.ts +3 -4
- package/dist/types/components/skip-links/use-custom-skip-link.d.ts +1 -1
- package/dist/types/components/slots/banner-slot.d.ts +1 -1
- package/dist/types/components/slots/content.d.ts +1 -1
- package/dist/types/components/slots/internal/left-sidebar-outer.d.ts +1 -1
- package/dist/types/components/slots/left-panel.d.ts +1 -1
- package/dist/types/components/slots/left-sidebar-without-resize.d.ts +1 -1
- package/dist/types/components/slots/left-sidebar.d.ts +1 -1
- package/dist/types/components/slots/page-layout.d.ts +1 -1
- package/dist/types/components/slots/right-panel.d.ts +1 -1
- package/dist/types/components/slots/right-sidebar.d.ts +1 -1
- package/dist/types/components/slots/top-navigation.d.ts +1 -1
- package/dist/types/controllers/sidebar-resize-context.d.ts +1 -1
- package/dist/types/controllers/sidebar-resize-controller.d.ts +2 -2
- package/dist/types/controllers/skip-link-context.d.ts +1 -1
- package/dist/types/controllers/skip-link-controller.d.ts +1 -1
- package/dist/types/controllers/use-page-layout-grid.d.ts +1 -1
- package/dist/types-ts4.5/common/types.d.ts +3 -3
- package/dist/types-ts4.5/common/utils.d.ts +1 -1
- package/dist/types-ts4.5/components/resize-control/grab-area.d.ts +2 -2
- package/dist/types-ts4.5/components/resize-control/index.d.ts +1 -1
- package/dist/types-ts4.5/components/resize-control/resize-button.d.ts +1 -1
- package/dist/types-ts4.5/components/resize-control/types.d.ts +2 -2
- package/dist/types-ts4.5/components/skip-links/skip-link-components.d.ts +3 -4
- package/dist/types-ts4.5/components/skip-links/use-custom-skip-link.d.ts +1 -1
- package/dist/types-ts4.5/components/slots/banner-slot.d.ts +1 -1
- package/dist/types-ts4.5/components/slots/content.d.ts +1 -1
- package/dist/types-ts4.5/components/slots/internal/left-sidebar-outer.d.ts +1 -1
- package/dist/types-ts4.5/components/slots/left-panel.d.ts +1 -1
- package/dist/types-ts4.5/components/slots/left-sidebar-without-resize.d.ts +1 -1
- package/dist/types-ts4.5/components/slots/left-sidebar.d.ts +1 -1
- package/dist/types-ts4.5/components/slots/page-layout.d.ts +1 -1
- package/dist/types-ts4.5/components/slots/right-panel.d.ts +1 -1
- package/dist/types-ts4.5/components/slots/right-sidebar.d.ts +1 -1
- package/dist/types-ts4.5/components/slots/top-navigation.d.ts +1 -1
- package/dist/types-ts4.5/controllers/sidebar-resize-context.d.ts +1 -1
- package/dist/types-ts4.5/controllers/sidebar-resize-controller.d.ts +2 -2
- package/dist/types-ts4.5/controllers/skip-link-context.d.ts +1 -1
- package/dist/types-ts4.5/controllers/skip-link-controller.d.ts +1 -1
- package/dist/types-ts4.5/controllers/use-page-layout-grid.d.ts +1 -1
- package/package.json +11 -12
package/__perf__/examples.tsx
CHANGED
|
@@ -8,8 +8,8 @@ import {
|
|
|
8
8
|
} from '@testing-library/dom'; // eslint-disable-line import/no-extraneous-dependencies
|
|
9
9
|
// eslint-disable-next-line import/no-extraneous-dependencies
|
|
10
10
|
import {
|
|
11
|
-
InteractionTaskArgs,
|
|
12
|
-
PublicInteractionTask,
|
|
11
|
+
type InteractionTaskArgs,
|
|
12
|
+
type PublicInteractionTask,
|
|
13
13
|
} from 'storybook-addon-performance'; // eslint-disable-line import/no-extraneous-dependencies
|
|
14
14
|
|
|
15
15
|
import ProductExample from './utils/perf-example';
|
|
@@ -69,6 +69,7 @@ const interactionTasks: PublicInteractionTask[] = [
|
|
|
69
69
|
|
|
70
70
|
const performance = () => {
|
|
71
71
|
return (
|
|
72
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
|
|
72
73
|
<div style={{ margin: '-1rem 0 0 -1rem', height: '100vh' }}>
|
|
73
74
|
<ProductExample />
|
|
74
75
|
</div>
|
|
@@ -7,6 +7,7 @@ import { token } from '@atlaskit/tokens';
|
|
|
7
7
|
const StyledTooltip = () => (
|
|
8
8
|
<span>
|
|
9
9
|
Create
|
|
10
|
+
{/* eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766 */}
|
|
10
11
|
<span style={{ color: token('color.text.accent.orange', 'orange') }}>
|
|
11
12
|
{' '}
|
|
12
13
|
[c]
|
|
@@ -3,7 +3,7 @@ import { Fragment } from 'react';
|
|
|
3
3
|
|
|
4
4
|
import { css, jsx } from '@emotion/react';
|
|
5
5
|
|
|
6
|
-
import { CustomItemComponentProps } from '@atlaskit/menu';
|
|
6
|
+
import { type CustomItemComponentProps } from '@atlaskit/menu';
|
|
7
7
|
import { Footer } from '@atlaskit/side-navigation';
|
|
8
8
|
import { B400, N200 } from '@atlaskit/theme/colors';
|
|
9
9
|
import { token } from '@atlaskit/tokens';
|
|
@@ -15,8 +15,7 @@ const Container = (props: CustomItemComponentProps) => {
|
|
|
15
15
|
|
|
16
16
|
const linkStyles = css({
|
|
17
17
|
color: token('color.text.subtle', N200),
|
|
18
|
-
|
|
19
|
-
':hover': {
|
|
18
|
+
'&:hover': {
|
|
20
19
|
color: token('color.link', B400),
|
|
21
20
|
cursor: 'pointer',
|
|
22
21
|
textDecoration: 'none',
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { jsx } from '@emotion/react';
|
|
3
3
|
|
|
4
4
|
import Icon from '@atlaskit/icon';
|
|
5
|
-
import { CustomItemComponentProps } from '@atlaskit/menu';
|
|
5
|
+
import { type CustomItemComponentProps } from '@atlaskit/menu';
|
|
6
6
|
import { Header } from '@atlaskit/side-navigation';
|
|
7
7
|
|
|
8
8
|
const Container = (props: CustomItemComponentProps) => {
|
|
@@ -31,10 +31,10 @@ var grabAreaStyles = (0, _react.css)({
|
|
|
31
31
|
'&::-moz-focus-inner': {
|
|
32
32
|
border: 0
|
|
33
33
|
},
|
|
34
|
-
'
|
|
34
|
+
'&:focus': {
|
|
35
35
|
outline: 0
|
|
36
36
|
},
|
|
37
|
-
'
|
|
37
|
+
'&:enabled:hover, &:enabled:focus, &:enabled:active': (0, _defineProperty2.default)({}, varLineColor, "var(--ds-border-selected, ".concat(_colors.B200, ")"))
|
|
38
38
|
});
|
|
39
39
|
var grabAreaReducedHeightStyles = (0, _react.css)({
|
|
40
40
|
height: "calc(100% - ".concat("var(--ds-space-600, 3rem)", " * 2)"),
|
|
@@ -82,7 +82,9 @@ var ResizeButton = function ResizeButton(_ref) {
|
|
|
82
82
|
// DO NOT remove. used as a CSS selector.
|
|
83
83
|
"aria-expanded": !isLeftSidebarCollapsed,
|
|
84
84
|
"aria-label": label,
|
|
85
|
-
type: "button"
|
|
85
|
+
type: "button"
|
|
86
|
+
// The error goes away when we remove the spread ...props
|
|
87
|
+
,
|
|
86
88
|
css: [resizeIconButtonStyles, mobileStyles, !isLeftSidebarCollapsed && resizeIconButtonExpandedStyles],
|
|
87
89
|
"data-testid": testId
|
|
88
90
|
// Prevents focus staying attached to the button when pressed
|
|
@@ -8,6 +8,7 @@ exports.SkipLinkWrapper = exports.SkipLink = void 0;
|
|
|
8
8
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
9
9
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
10
10
|
var _react = require("@emotion/react");
|
|
11
|
+
var _link = _interopRequireDefault(require("@atlaskit/link"));
|
|
11
12
|
var _motion = require("@atlaskit/motion");
|
|
12
13
|
var _colors = require("@atlaskit/theme/colors");
|
|
13
14
|
var _constants = require("../../common/constants");
|
|
@@ -17,27 +18,21 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
|
17
18
|
// eslint-disable-next-line @atlaskit/design-system/consistent-css-prop-usage
|
|
18
19
|
var prefersReducedMotionStyles = (0, _react.css)((0, _motion.prefersReducedMotion)());
|
|
19
20
|
var skipLinkStyles = (0, _react.css)({
|
|
20
|
-
|
|
21
|
-
margin: 10,
|
|
21
|
+
margin: "var(--ds-space-250, 10px)",
|
|
22
22
|
padding: '0.8rem 1rem',
|
|
23
23
|
position: 'fixed',
|
|
24
24
|
zIndex: -1,
|
|
25
|
-
left: -999999,
|
|
26
25
|
background: "var(--ds-surface-overlay, white)",
|
|
27
26
|
border: 'none',
|
|
28
27
|
borderRadius: "var(--ds-border-radius, 3px)",
|
|
29
28
|
boxShadow: "var(--ds-shadow-overlay, ".concat("0 0 0 1px ".concat(_colors.N30A, ", 0 2px 10px ").concat(_colors.N30A, ", 0 0 20px -4px ").concat(_colors.N60A), ")"),
|
|
29
|
+
insetInlineStart: -999999,
|
|
30
30
|
opacity: 0,
|
|
31
|
-
/* Do the transform when focused */
|
|
32
31
|
transform: 'translateY(-50%)',
|
|
33
32
|
transition: "transform 0.3s ".concat(_motion.easeOut),
|
|
34
|
-
'
|
|
35
|
-
/**
|
|
36
|
-
* Max z-index is 2147483647. Skip links always be on top,
|
|
37
|
-
* but giving a few digits extra space just in case there's a future need.
|
|
38
|
-
*/
|
|
33
|
+
'&:focus-within': {
|
|
39
34
|
zIndex: 2147483640,
|
|
40
|
-
|
|
35
|
+
insetInlineStart: 0,
|
|
41
36
|
opacity: 1,
|
|
42
37
|
transform: 'translateY(0%)'
|
|
43
38
|
}
|
|
@@ -46,13 +41,13 @@ var skipLinkHeadingStyles = (0, _react.css)({
|
|
|
46
41
|
fontWeight: 600
|
|
47
42
|
});
|
|
48
43
|
var skipLinkListStyles = (0, _react.css)({
|
|
49
|
-
marginTop: "var(--ds-space-050, 4px)",
|
|
50
|
-
paddingLeft: 0,
|
|
51
44
|
listStylePosition: 'outside',
|
|
52
|
-
listStyleType: 'none'
|
|
45
|
+
listStyleType: 'none',
|
|
46
|
+
marginBlockStart: "var(--ds-space-050, 4px)",
|
|
47
|
+
paddingInlineStart: 0
|
|
53
48
|
});
|
|
54
49
|
var skipLinkListItemStyles = (0, _react.css)({
|
|
55
|
-
|
|
50
|
+
marginBlockStart: 0
|
|
56
51
|
});
|
|
57
52
|
var assignIndex = function assignIndex(num, arr) {
|
|
58
53
|
if (!arr.includes(num)) {
|
|
@@ -129,8 +124,7 @@ var SkipLinkWrapper = exports.SkipLinkWrapper = function SkipLinkWrapper(_ref) {
|
|
|
129
124
|
return (0, _react.jsx)(SkipLink, {
|
|
130
125
|
key: id,
|
|
131
126
|
href: "#".concat(id),
|
|
132
|
-
isFocusable: true
|
|
133
|
-
title: emptyLabelOverride ? "".concat(_constants.DEFAULT_I18N_PROPS_SKIP_LINKS, " ").concat(skipLinkTitle) : "".concat(label, " ").concat(skipLinkTitle)
|
|
127
|
+
isFocusable: true
|
|
134
128
|
}, skipLinkTitle);
|
|
135
129
|
})));
|
|
136
130
|
};
|
|
@@ -171,14 +165,12 @@ var focusTargetRef = function focusTargetRef(href) {
|
|
|
171
165
|
var SkipLink = exports.SkipLink = function SkipLink(_ref3) {
|
|
172
166
|
var href = _ref3.href,
|
|
173
167
|
children = _ref3.children,
|
|
174
|
-
isFocusable = _ref3.isFocusable
|
|
175
|
-
title = _ref3.title;
|
|
168
|
+
isFocusable = _ref3.isFocusable;
|
|
176
169
|
return (0, _react.jsx)("li", {
|
|
177
170
|
css: skipLinkListItemStyles
|
|
178
|
-
}, (0, _react.jsx)(
|
|
171
|
+
}, (0, _react.jsx)(_link.default, {
|
|
179
172
|
tabIndex: isFocusable ? 0 : -1,
|
|
180
173
|
href: href,
|
|
181
|
-
onClick: focusTargetRef(href)
|
|
182
|
-
title: title
|
|
174
|
+
onClick: focusTargetRef(href)
|
|
183
175
|
}, children));
|
|
184
176
|
};
|
|
@@ -59,7 +59,9 @@ var Banner = function Banner(props) {
|
|
|
59
59
|
return (0, _react2.jsx)(_slotFocusRing.default, null, function (_ref) {
|
|
60
60
|
var className = _ref.className;
|
|
61
61
|
return (0, _react2.jsx)("div", (0, _extends2.default)({
|
|
62
|
-
css: [bannerStyles, isFixed && bannerFixedStyles]
|
|
62
|
+
css: [bannerStyles, isFixed && bannerFixedStyles]
|
|
63
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
64
|
+
,
|
|
63
65
|
className: className,
|
|
64
66
|
"data-testid": testId,
|
|
65
67
|
id: id
|
|
@@ -99,7 +99,9 @@ var LeftSidebarOuter = function LeftSidebarOuter(_ref, ref) {
|
|
|
99
99
|
// mobile viewport styles
|
|
100
100
|
mobileStyles, isFlyoutOpen && mobileFlyoutStyles,
|
|
101
101
|
// generic styles
|
|
102
|
-
outerStyles, isFixed && fixedStyles, isFlyoutOpen && flyoutStyles, isFlyoutOpen && isFixed && flyoutFixedStyles, isDragging && draggingStyles, prefersReducedMotionStyles]
|
|
102
|
+
outerStyles, isFixed && fixedStyles, isFlyoutOpen && flyoutStyles, isFlyoutOpen && isFixed && flyoutFixedStyles, isDragging && draggingStyles, prefersReducedMotionStyles]
|
|
103
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
104
|
+
,
|
|
103
105
|
className: className,
|
|
104
106
|
"data-testid": testId,
|
|
105
107
|
id: id
|
|
@@ -55,7 +55,9 @@ var LeftPanel = function LeftPanel(props) {
|
|
|
55
55
|
return (0, _react2.jsx)(_slotFocusRing.default, null, function (_ref) {
|
|
56
56
|
var className = _ref.className;
|
|
57
57
|
return (0, _react2.jsx)("div", (0, _extends2.default)({
|
|
58
|
-
css: [leftPanelStyles, isFixed && leftPanelFixedStyles]
|
|
58
|
+
css: [leftPanelStyles, isFixed && leftPanelFixedStyles]
|
|
59
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
60
|
+
,
|
|
59
61
|
className: className,
|
|
60
62
|
"data-testid": testId,
|
|
61
63
|
id: id
|
|
@@ -64,7 +64,9 @@ var Main = function Main(props) {
|
|
|
64
64
|
var className = _ref.className;
|
|
65
65
|
return (0, _react2.jsx)("main", (0, _extends2.default)({
|
|
66
66
|
"data-testid": testId,
|
|
67
|
-
css: [mainStyles, isDragging && draggingStyles, isFlyoutOpen && !isFixed && flyoutStyles, prefersReducedMotionStyles]
|
|
67
|
+
css: [mainStyles, isDragging && draggingStyles, isFlyoutOpen && !isFixed && flyoutStyles, prefersReducedMotionStyles]
|
|
68
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
69
|
+
,
|
|
68
70
|
className: className,
|
|
69
71
|
id: id
|
|
70
72
|
}, (0, _utils.getPageLayoutSlotSelector)('main')), children);
|
|
@@ -55,7 +55,9 @@ var RightPanel = function RightPanel(props) {
|
|
|
55
55
|
return (0, _react2.jsx)(_slotFocusRing.default, null, function (_ref) {
|
|
56
56
|
var className = _ref.className;
|
|
57
57
|
return (0, _react2.jsx)("div", (0, _extends2.default)({
|
|
58
|
-
css: [baseStyles, isFixed && fixedStyles]
|
|
58
|
+
css: [baseStyles, isFixed && fixedStyles]
|
|
59
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
60
|
+
,
|
|
59
61
|
className: className,
|
|
60
62
|
"data-testid": testId,
|
|
61
63
|
id: id
|
|
@@ -86,7 +86,9 @@ var RightSidebar = function RightSidebar(props) {
|
|
|
86
86
|
var className = _ref.className;
|
|
87
87
|
return (0, _react2.jsx)("div", (0, _extends2.default)({
|
|
88
88
|
"data-testid": testId,
|
|
89
|
-
css: [outerStyles, isFixed && fixedOuterStyles]
|
|
89
|
+
css: [outerStyles, isFixed && fixedOuterStyles]
|
|
90
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
91
|
+
,
|
|
90
92
|
className: className,
|
|
91
93
|
id: id
|
|
92
94
|
}, (0, _utils.getPageLayoutSlotSelector)('right-sidebar')), (0, _react2.jsx)(_slotDimensions.default, {
|
|
@@ -60,7 +60,9 @@ var TopNavigation = function TopNavigation(props) {
|
|
|
60
60
|
return (0, _react2.jsx)(_slotFocusRing.default, null, function (_ref) {
|
|
61
61
|
var className = _ref.className;
|
|
62
62
|
return (0, _react2.jsx)("div", (0, _extends2.default)({
|
|
63
|
-
css: [topNavigationStyles, isFixed && fixedStyles]
|
|
63
|
+
css: [topNavigationStyles, isFixed && fixedStyles]
|
|
64
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
65
|
+
,
|
|
64
66
|
className: className,
|
|
65
67
|
"data-testid": testId,
|
|
66
68
|
id: id
|
|
@@ -22,10 +22,10 @@ const grabAreaStyles = css({
|
|
|
22
22
|
'&::-moz-focus-inner': {
|
|
23
23
|
border: 0
|
|
24
24
|
},
|
|
25
|
-
'
|
|
25
|
+
'&:focus': {
|
|
26
26
|
outline: 0
|
|
27
27
|
},
|
|
28
|
-
'
|
|
28
|
+
'&:enabled:hover, &:enabled:focus, &:enabled:active': {
|
|
29
29
|
[varLineColor]: `var(--ds-border-selected, ${B200})`
|
|
30
30
|
}
|
|
31
31
|
});
|
|
@@ -80,7 +80,9 @@ const ResizeButton = ({
|
|
|
80
80
|
// DO NOT remove. used as a CSS selector.
|
|
81
81
|
"aria-expanded": !isLeftSidebarCollapsed,
|
|
82
82
|
"aria-label": label,
|
|
83
|
-
type: "button"
|
|
83
|
+
type: "button"
|
|
84
|
+
// The error goes away when we remove the spread ...props
|
|
85
|
+
,
|
|
84
86
|
css: [resizeIconButtonStyles, mobileStyles, !isLeftSidebarCollapsed && resizeIconButtonExpandedStyles],
|
|
85
87
|
"data-testid": testId
|
|
86
88
|
// Prevents focus staying attached to the button when pressed
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
/** @jsx jsx */
|
|
3
3
|
|
|
4
4
|
import { css, jsx } from '@emotion/react';
|
|
5
|
+
import Link from '@atlaskit/link';
|
|
5
6
|
import { easeOut, prefersReducedMotion } from '@atlaskit/motion';
|
|
6
7
|
import { N30A, N60A } from '@atlaskit/theme/colors';
|
|
7
8
|
import { DEFAULT_I18N_PROPS_SKIP_LINKS, PAGE_LAYOUT_CONTAINER_SELECTOR } from '../../common/constants';
|
|
@@ -9,27 +10,21 @@ import { useSkipLinks } from '../../controllers';
|
|
|
9
10
|
// eslint-disable-next-line @atlaskit/design-system/consistent-css-prop-usage
|
|
10
11
|
const prefersReducedMotionStyles = css(prefersReducedMotion());
|
|
11
12
|
const skipLinkStyles = css({
|
|
12
|
-
|
|
13
|
-
margin: 10,
|
|
13
|
+
margin: "var(--ds-space-250, 10px)",
|
|
14
14
|
padding: '0.8rem 1rem',
|
|
15
15
|
position: 'fixed',
|
|
16
16
|
zIndex: -1,
|
|
17
|
-
left: -999999,
|
|
18
17
|
background: "var(--ds-surface-overlay, white)",
|
|
19
18
|
border: 'none',
|
|
20
19
|
borderRadius: "var(--ds-border-radius, 3px)",
|
|
21
20
|
boxShadow: `var(--ds-shadow-overlay, ${`0 0 0 1px ${N30A}, 0 2px 10px ${N30A}, 0 0 20px -4px ${N60A}`})`,
|
|
21
|
+
insetInlineStart: -999999,
|
|
22
22
|
opacity: 0,
|
|
23
|
-
/* Do the transform when focused */
|
|
24
23
|
transform: 'translateY(-50%)',
|
|
25
24
|
transition: `transform 0.3s ${easeOut}`,
|
|
26
|
-
'
|
|
27
|
-
/**
|
|
28
|
-
* Max z-index is 2147483647. Skip links always be on top,
|
|
29
|
-
* but giving a few digits extra space just in case there's a future need.
|
|
30
|
-
*/
|
|
25
|
+
'&:focus-within': {
|
|
31
26
|
zIndex: 2147483640,
|
|
32
|
-
|
|
27
|
+
insetInlineStart: 0,
|
|
33
28
|
opacity: 1,
|
|
34
29
|
transform: 'translateY(0%)'
|
|
35
30
|
}
|
|
@@ -38,13 +33,13 @@ const skipLinkHeadingStyles = css({
|
|
|
38
33
|
fontWeight: 600
|
|
39
34
|
});
|
|
40
35
|
const skipLinkListStyles = css({
|
|
41
|
-
marginTop: "var(--ds-space-050, 4px)",
|
|
42
|
-
paddingLeft: 0,
|
|
43
36
|
listStylePosition: 'outside',
|
|
44
|
-
listStyleType: 'none'
|
|
37
|
+
listStyleType: 'none',
|
|
38
|
+
marginBlockStart: "var(--ds-space-050, 4px)",
|
|
39
|
+
paddingInlineStart: 0
|
|
45
40
|
});
|
|
46
41
|
const skipLinkListItemStyles = css({
|
|
47
|
-
|
|
42
|
+
marginBlockStart: 0
|
|
48
43
|
});
|
|
49
44
|
const assignIndex = (num, arr) => {
|
|
50
45
|
if (!arr.includes(num)) {
|
|
@@ -112,8 +107,7 @@ export const SkipLinkWrapper = ({
|
|
|
112
107
|
}) => jsx(SkipLink, {
|
|
113
108
|
key: id,
|
|
114
109
|
href: `#${id}`,
|
|
115
|
-
isFocusable: true
|
|
116
|
-
title: emptyLabelOverride ? `${DEFAULT_I18N_PROPS_SKIP_LINKS} ${skipLinkTitle}` : `${label} ${skipLinkTitle}`
|
|
110
|
+
isFocusable: true
|
|
117
111
|
}, skipLinkTitle))));
|
|
118
112
|
};
|
|
119
113
|
const handleBlur = event => {
|
|
@@ -151,15 +145,13 @@ const focusTargetRef = href => event => {
|
|
|
151
145
|
export const SkipLink = ({
|
|
152
146
|
href,
|
|
153
147
|
children,
|
|
154
|
-
isFocusable
|
|
155
|
-
title
|
|
148
|
+
isFocusable
|
|
156
149
|
}) => {
|
|
157
150
|
return jsx("li", {
|
|
158
151
|
css: skipLinkListItemStyles
|
|
159
|
-
}, jsx(
|
|
152
|
+
}, jsx(Link, {
|
|
160
153
|
tabIndex: isFocusable ? 0 : -1,
|
|
161
154
|
href: href,
|
|
162
|
-
onClick: focusTargetRef(href)
|
|
163
|
-
title: title
|
|
155
|
+
onClick: focusTargetRef(href)
|
|
164
156
|
}, children));
|
|
165
157
|
};
|
|
@@ -54,7 +54,9 @@ const Banner = props => {
|
|
|
54
54
|
return jsx(SlotFocusRing, null, ({
|
|
55
55
|
className
|
|
56
56
|
}) => jsx("div", _extends({
|
|
57
|
-
css: [bannerStyles, isFixed && bannerFixedStyles]
|
|
57
|
+
css: [bannerStyles, isFixed && bannerFixedStyles]
|
|
58
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
59
|
+
,
|
|
58
60
|
className: className,
|
|
59
61
|
"data-testid": testId,
|
|
60
62
|
id: id
|
|
@@ -100,7 +100,9 @@ const LeftSidebarOuter = ({
|
|
|
100
100
|
// mobile viewport styles
|
|
101
101
|
mobileStyles, isFlyoutOpen && mobileFlyoutStyles,
|
|
102
102
|
// generic styles
|
|
103
|
-
outerStyles, isFixed && fixedStyles, isFlyoutOpen && flyoutStyles, isFlyoutOpen && isFixed && flyoutFixedStyles, isDragging && draggingStyles, prefersReducedMotionStyles]
|
|
103
|
+
outerStyles, isFixed && fixedStyles, isFlyoutOpen && flyoutStyles, isFlyoutOpen && isFixed && flyoutFixedStyles, isDragging && draggingStyles, prefersReducedMotionStyles]
|
|
104
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
105
|
+
,
|
|
104
106
|
className: className,
|
|
105
107
|
"data-testid": testId,
|
|
106
108
|
id: id
|
|
@@ -51,7 +51,9 @@ const LeftPanel = props => {
|
|
|
51
51
|
return jsx(SlotFocusRing, null, ({
|
|
52
52
|
className
|
|
53
53
|
}) => jsx("div", _extends({
|
|
54
|
-
css: [leftPanelStyles, isFixed && leftPanelFixedStyles]
|
|
54
|
+
css: [leftPanelStyles, isFixed && leftPanelFixedStyles]
|
|
55
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
56
|
+
,
|
|
55
57
|
className: className,
|
|
56
58
|
"data-testid": testId,
|
|
57
59
|
id: id
|
|
@@ -61,7 +61,9 @@ const Main = props => {
|
|
|
61
61
|
className
|
|
62
62
|
}) => jsx("main", _extends({
|
|
63
63
|
"data-testid": testId,
|
|
64
|
-
css: [mainStyles, isDragging && draggingStyles, isFlyoutOpen && !isFixed && flyoutStyles, prefersReducedMotionStyles]
|
|
64
|
+
css: [mainStyles, isDragging && draggingStyles, isFlyoutOpen && !isFixed && flyoutStyles, prefersReducedMotionStyles]
|
|
65
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
66
|
+
,
|
|
65
67
|
className: className,
|
|
66
68
|
id: id
|
|
67
69
|
}, getPageLayoutSlotSelector('main')), children));
|
|
@@ -51,7 +51,9 @@ const RightPanel = props => {
|
|
|
51
51
|
return jsx(SlotFocusRing, null, ({
|
|
52
52
|
className
|
|
53
53
|
}) => jsx("div", _extends({
|
|
54
|
-
css: [baseStyles, isFixed && fixedStyles]
|
|
54
|
+
css: [baseStyles, isFixed && fixedStyles]
|
|
55
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
56
|
+
,
|
|
55
57
|
className: className,
|
|
56
58
|
"data-testid": testId,
|
|
57
59
|
id: id
|
|
@@ -83,7 +83,9 @@ const RightSidebar = props => {
|
|
|
83
83
|
className
|
|
84
84
|
}) => jsx("div", _extends({
|
|
85
85
|
"data-testid": testId,
|
|
86
|
-
css: [outerStyles, isFixed && fixedOuterStyles]
|
|
86
|
+
css: [outerStyles, isFixed && fixedOuterStyles]
|
|
87
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
88
|
+
,
|
|
87
89
|
className: className,
|
|
88
90
|
id: id
|
|
89
91
|
}, getPageLayoutSlotSelector('right-sidebar')), jsx(SlotDimensions, {
|
|
@@ -55,7 +55,9 @@ const TopNavigation = props => {
|
|
|
55
55
|
return jsx(SlotFocusRing, null, ({
|
|
56
56
|
className
|
|
57
57
|
}) => jsx("div", _extends({
|
|
58
|
-
css: [topNavigationStyles, isFixed && fixedStyles]
|
|
58
|
+
css: [topNavigationStyles, isFixed && fixedStyles]
|
|
59
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
60
|
+
,
|
|
59
61
|
className: className,
|
|
60
62
|
"data-testid": testId,
|
|
61
63
|
id: id
|
|
@@ -25,10 +25,10 @@ var grabAreaStyles = css({
|
|
|
25
25
|
'&::-moz-focus-inner': {
|
|
26
26
|
border: 0
|
|
27
27
|
},
|
|
28
|
-
'
|
|
28
|
+
'&:focus': {
|
|
29
29
|
outline: 0
|
|
30
30
|
},
|
|
31
|
-
'
|
|
31
|
+
'&:enabled:hover, &:enabled:focus, &:enabled:active': _defineProperty({}, varLineColor, "var(--ds-border-selected, ".concat(B200, ")"))
|
|
32
32
|
});
|
|
33
33
|
var grabAreaReducedHeightStyles = css({
|
|
34
34
|
height: "calc(100% - ".concat("var(--ds-space-600, 3rem)", " * 2)"),
|
|
@@ -76,7 +76,9 @@ var ResizeButton = function ResizeButton(_ref) {
|
|
|
76
76
|
// DO NOT remove. used as a CSS selector.
|
|
77
77
|
"aria-expanded": !isLeftSidebarCollapsed,
|
|
78
78
|
"aria-label": label,
|
|
79
|
-
type: "button"
|
|
79
|
+
type: "button"
|
|
80
|
+
// The error goes away when we remove the spread ...props
|
|
81
|
+
,
|
|
80
82
|
css: [resizeIconButtonStyles, mobileStyles, !isLeftSidebarCollapsed && resizeIconButtonExpandedStyles],
|
|
81
83
|
"data-testid": testId
|
|
82
84
|
// Prevents focus staying attached to the button when pressed
|
|
@@ -6,6 +6,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
|
6
6
|
/** @jsx jsx */
|
|
7
7
|
|
|
8
8
|
import { css, jsx } from '@emotion/react';
|
|
9
|
+
import Link from '@atlaskit/link';
|
|
9
10
|
import { easeOut, prefersReducedMotion } from '@atlaskit/motion';
|
|
10
11
|
import { N30A, N60A } from '@atlaskit/theme/colors';
|
|
11
12
|
import { DEFAULT_I18N_PROPS_SKIP_LINKS, PAGE_LAYOUT_CONTAINER_SELECTOR } from '../../common/constants';
|
|
@@ -13,27 +14,21 @@ import { useSkipLinks } from '../../controllers';
|
|
|
13
14
|
// eslint-disable-next-line @atlaskit/design-system/consistent-css-prop-usage
|
|
14
15
|
var prefersReducedMotionStyles = css(prefersReducedMotion());
|
|
15
16
|
var skipLinkStyles = css({
|
|
16
|
-
|
|
17
|
-
margin: 10,
|
|
17
|
+
margin: "var(--ds-space-250, 10px)",
|
|
18
18
|
padding: '0.8rem 1rem',
|
|
19
19
|
position: 'fixed',
|
|
20
20
|
zIndex: -1,
|
|
21
|
-
left: -999999,
|
|
22
21
|
background: "var(--ds-surface-overlay, white)",
|
|
23
22
|
border: 'none',
|
|
24
23
|
borderRadius: "var(--ds-border-radius, 3px)",
|
|
25
24
|
boxShadow: "var(--ds-shadow-overlay, ".concat("0 0 0 1px ".concat(N30A, ", 0 2px 10px ").concat(N30A, ", 0 0 20px -4px ").concat(N60A), ")"),
|
|
25
|
+
insetInlineStart: -999999,
|
|
26
26
|
opacity: 0,
|
|
27
|
-
/* Do the transform when focused */
|
|
28
27
|
transform: 'translateY(-50%)',
|
|
29
28
|
transition: "transform 0.3s ".concat(easeOut),
|
|
30
|
-
'
|
|
31
|
-
/**
|
|
32
|
-
* Max z-index is 2147483647. Skip links always be on top,
|
|
33
|
-
* but giving a few digits extra space just in case there's a future need.
|
|
34
|
-
*/
|
|
29
|
+
'&:focus-within': {
|
|
35
30
|
zIndex: 2147483640,
|
|
36
|
-
|
|
31
|
+
insetInlineStart: 0,
|
|
37
32
|
opacity: 1,
|
|
38
33
|
transform: 'translateY(0%)'
|
|
39
34
|
}
|
|
@@ -42,13 +37,13 @@ var skipLinkHeadingStyles = css({
|
|
|
42
37
|
fontWeight: 600
|
|
43
38
|
});
|
|
44
39
|
var skipLinkListStyles = css({
|
|
45
|
-
marginTop: "var(--ds-space-050, 4px)",
|
|
46
|
-
paddingLeft: 0,
|
|
47
40
|
listStylePosition: 'outside',
|
|
48
|
-
listStyleType: 'none'
|
|
41
|
+
listStyleType: 'none',
|
|
42
|
+
marginBlockStart: "var(--ds-space-050, 4px)",
|
|
43
|
+
paddingInlineStart: 0
|
|
49
44
|
});
|
|
50
45
|
var skipLinkListItemStyles = css({
|
|
51
|
-
|
|
46
|
+
marginBlockStart: 0
|
|
52
47
|
});
|
|
53
48
|
var assignIndex = function assignIndex(num, arr) {
|
|
54
49
|
if (!arr.includes(num)) {
|
|
@@ -125,8 +120,7 @@ export var SkipLinkWrapper = function SkipLinkWrapper(_ref) {
|
|
|
125
120
|
return jsx(SkipLink, {
|
|
126
121
|
key: id,
|
|
127
122
|
href: "#".concat(id),
|
|
128
|
-
isFocusable: true
|
|
129
|
-
title: emptyLabelOverride ? "".concat(DEFAULT_I18N_PROPS_SKIP_LINKS, " ").concat(skipLinkTitle) : "".concat(label, " ").concat(skipLinkTitle)
|
|
123
|
+
isFocusable: true
|
|
130
124
|
}, skipLinkTitle);
|
|
131
125
|
})));
|
|
132
126
|
};
|
|
@@ -167,14 +161,12 @@ var focusTargetRef = function focusTargetRef(href) {
|
|
|
167
161
|
export var SkipLink = function SkipLink(_ref3) {
|
|
168
162
|
var href = _ref3.href,
|
|
169
163
|
children = _ref3.children,
|
|
170
|
-
isFocusable = _ref3.isFocusable
|
|
171
|
-
title = _ref3.title;
|
|
164
|
+
isFocusable = _ref3.isFocusable;
|
|
172
165
|
return jsx("li", {
|
|
173
166
|
css: skipLinkListItemStyles
|
|
174
|
-
}, jsx(
|
|
167
|
+
}, jsx(Link, {
|
|
175
168
|
tabIndex: isFocusable ? 0 : -1,
|
|
176
169
|
href: href,
|
|
177
|
-
onClick: focusTargetRef(href)
|
|
178
|
-
title: title
|
|
170
|
+
onClick: focusTargetRef(href)
|
|
179
171
|
}, children));
|
|
180
172
|
};
|
|
@@ -51,7 +51,9 @@ var Banner = function Banner(props) {
|
|
|
51
51
|
return jsx(SlotFocusRing, null, function (_ref) {
|
|
52
52
|
var className = _ref.className;
|
|
53
53
|
return jsx("div", _extends({
|
|
54
|
-
css: [bannerStyles, isFixed && bannerFixedStyles]
|
|
54
|
+
css: [bannerStyles, isFixed && bannerFixedStyles]
|
|
55
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
56
|
+
,
|
|
55
57
|
className: className,
|
|
56
58
|
"data-testid": testId,
|
|
57
59
|
id: id
|
|
@@ -91,7 +91,9 @@ var LeftSidebarOuter = function LeftSidebarOuter(_ref, ref) {
|
|
|
91
91
|
// mobile viewport styles
|
|
92
92
|
mobileStyles, isFlyoutOpen && mobileFlyoutStyles,
|
|
93
93
|
// generic styles
|
|
94
|
-
outerStyles, isFixed && fixedStyles, isFlyoutOpen && flyoutStyles, isFlyoutOpen && isFixed && flyoutFixedStyles, isDragging && draggingStyles, prefersReducedMotionStyles]
|
|
94
|
+
outerStyles, isFixed && fixedStyles, isFlyoutOpen && flyoutStyles, isFlyoutOpen && isFixed && flyoutFixedStyles, isDragging && draggingStyles, prefersReducedMotionStyles]
|
|
95
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
96
|
+
,
|
|
95
97
|
className: className,
|
|
96
98
|
"data-testid": testId,
|
|
97
99
|
id: id
|
|
@@ -47,7 +47,9 @@ var LeftPanel = function LeftPanel(props) {
|
|
|
47
47
|
return jsx(SlotFocusRing, null, function (_ref) {
|
|
48
48
|
var className = _ref.className;
|
|
49
49
|
return jsx("div", _extends({
|
|
50
|
-
css: [leftPanelStyles, isFixed && leftPanelFixedStyles]
|
|
50
|
+
css: [leftPanelStyles, isFixed && leftPanelFixedStyles]
|
|
51
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
52
|
+
,
|
|
51
53
|
className: className,
|
|
52
54
|
"data-testid": testId,
|
|
53
55
|
id: id
|
|
@@ -57,7 +57,9 @@ var Main = function Main(props) {
|
|
|
57
57
|
var className = _ref.className;
|
|
58
58
|
return jsx("main", _extends({
|
|
59
59
|
"data-testid": testId,
|
|
60
|
-
css: [mainStyles, isDragging && draggingStyles, isFlyoutOpen && !isFixed && flyoutStyles, prefersReducedMotionStyles]
|
|
60
|
+
css: [mainStyles, isDragging && draggingStyles, isFlyoutOpen && !isFixed && flyoutStyles, prefersReducedMotionStyles]
|
|
61
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
62
|
+
,
|
|
61
63
|
className: className,
|
|
62
64
|
id: id
|
|
63
65
|
}, getPageLayoutSlotSelector('main')), children);
|
|
@@ -47,7 +47,9 @@ var RightPanel = function RightPanel(props) {
|
|
|
47
47
|
return jsx(SlotFocusRing, null, function (_ref) {
|
|
48
48
|
var className = _ref.className;
|
|
49
49
|
return jsx("div", _extends({
|
|
50
|
-
css: [baseStyles, isFixed && fixedStyles]
|
|
50
|
+
css: [baseStyles, isFixed && fixedStyles]
|
|
51
|
+
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
52
|
+
,
|
|
51
53
|
className: className,
|
|
52
54
|
"data-testid": testId,
|
|
53
55
|
id: id
|