@atlaskit/navigation-system 5.6.0 → 5.7.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # @atlassian/navigation-system
2
2
 
3
+ ## 5.7.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [`8b3783c70ef57`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/8b3783c70ef57) -
8
+ Clicking on the side nav toggle button will now close any open layers such as tooltips. This
9
+ ensures tooltips don't linger on the screen when the buttons inside `TopNavStart` are reordered.
10
+
11
+ This change is behind the feature flag `navx-full-height-sidebar`.
12
+
13
+ ### Patch Changes
14
+
15
+ - Updated dependencies
16
+
3
17
  ## 5.6.0
4
18
 
5
19
  ### Minor Changes
@@ -314,9 +314,9 @@ function SideNavInternal(_ref) {
314
314
  }
315
315
  if (action === 'ready-to-close') {
316
316
  // If there are no open layers, we can close the flyout.
317
- if (openLayerObserver.getCount({
317
+ if ((openLayerObserver === null || openLayerObserver === void 0 ? void 0 : openLayerObserver.getCount({
318
318
  namespace: openLayerObserverSideNavNamespace
319
- }) === 0) {
319
+ })) === 0) {
320
320
  close();
321
321
  return;
322
322
  }
@@ -672,7 +672,7 @@ function SideNavInternal(_ref) {
672
672
  // Close the flyout if there are no more layers open and the user is not mousing over the
673
673
  // flyout areas (side nav, TopNavStart element)
674
674
 
675
- return openLayerObserver.onChange(function (_ref6) {
675
+ return openLayerObserver === null || openLayerObserver === void 0 ? void 0 : openLayerObserver.onChange(function (_ref6) {
676
676
  var count = _ref6.count;
677
677
  if (flyoutStateRef.current.type === 'ready-to-close' && count === 0) {
678
678
  updateFlyoutState('force-close');
@@ -16,6 +16,7 @@ var _bindEventListener = require("bind-event-listener");
16
16
  var _analyticsNext = require("@atlaskit/analytics-next");
17
17
  var _sidebarCollapse = _interopRequireDefault(require("@atlaskit/icon/core/sidebar-collapse"));
18
18
  var _sidebarExpand = _interopRequireDefault(require("@atlaskit/icon/core/sidebar-expand"));
19
+ var _openLayerObserver = require("@atlaskit/layering/experimental/open-layer-observer");
19
20
  var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
20
21
  var _useIsFhsEnabled = require("../../fhs-rollout/use-is-fhs-enabled");
21
22
  var _migration = require("../../top-nav-items/themed/migration");
@@ -112,12 +113,16 @@ var SideNavToggleButton = exports.SideNavToggleButton = function SideNavToggleBu
112
113
  });
113
114
  var _useAnalyticsEvents = (0, _analyticsNext.useAnalyticsEvents)(),
114
115
  createAnalyticsEvent = _useAnalyticsEvents.createAnalyticsEvent;
116
+ var openLayerObserver = (0, _openLayerObserver.useOpenLayerObserver)();
115
117
  var handleClick = (0, _react.useCallback)(function (event, analyticsEvent) {
116
118
  onClick === null || onClick === void 0 || onClick(event, analyticsEvent, {
117
119
  isSideNavVisible: isSideNavExpanded
118
120
  });
119
121
  toggleVisibility();
120
- }, [onClick, isSideNavExpanded, toggleVisibility]);
122
+ if ((0, _platformFeatureFlags.fg)('navx-full-height-sidebar')) {
123
+ openLayerObserver === null || openLayerObserver === void 0 || openLayerObserver.closeLayers();
124
+ }
125
+ }, [onClick, isSideNavExpanded, toggleVisibility, openLayerObserver]);
121
126
  var handlePointerEnter = (0, _react.useCallback)(function () {
122
127
  if (!(0, _platformFeatureFlags.fg)('platform_dst_nav4_fhs_instrumentation_1')) {
123
128
  return;
@@ -47,7 +47,7 @@ function useSideNavToggleKeyboardShortcut(_ref) {
47
47
  // Ignore repeated keydown events from holding down the keys
48
48
  return;
49
49
  }
50
- if (openLayerObserver.getCount({
50
+ if (openLayerObserver && openLayerObserver.getCount({
51
51
  type: 'modal'
52
52
  }) > 0) {
53
53
  // Return early if there are any open modals
@@ -295,9 +295,9 @@ function SideNavInternal({
295
295
  }
296
296
  if (action === 'ready-to-close') {
297
297
  // If there are no open layers, we can close the flyout.
298
- if (openLayerObserver.getCount({
298
+ if ((openLayerObserver === null || openLayerObserver === void 0 ? void 0 : openLayerObserver.getCount({
299
299
  namespace: openLayerObserverSideNavNamespace
300
- }) === 0) {
300
+ })) === 0) {
301
301
  close();
302
302
  return;
303
303
  }
@@ -658,7 +658,7 @@ function SideNavInternal({
658
658
  // Close the flyout if there are no more layers open and the user is not mousing over the
659
659
  // flyout areas (side nav, TopNavStart element)
660
660
 
661
- return openLayerObserver.onChange(({
661
+ return openLayerObserver === null || openLayerObserver === void 0 ? void 0 : openLayerObserver.onChange(({
662
662
  count
663
663
  }) => {
664
664
  if (flyoutStateRef.current.type === 'ready-to-close' && count === 0) {
@@ -6,6 +6,7 @@ import { bind } from 'bind-event-listener';
6
6
  import { useAnalyticsEvents } from '@atlaskit/analytics-next';
7
7
  import SidebarCollapseIcon from '@atlaskit/icon/core/sidebar-collapse';
8
8
  import SidebarExpandIcon from '@atlaskit/icon/core/sidebar-expand';
9
+ import { useOpenLayerObserver } from '@atlaskit/layering/experimental/open-layer-observer';
9
10
  import { fg } from '@atlaskit/platform-feature-flags';
10
11
  import { useIsFhsEnabled } from '../../fhs-rollout/use-is-fhs-enabled';
11
12
  import { IconButton } from '../../top-nav-items/themed/migration';
@@ -96,12 +97,16 @@ export const SideNavToggleButton = ({
96
97
  const {
97
98
  createAnalyticsEvent
98
99
  } = useAnalyticsEvents();
100
+ const openLayerObserver = useOpenLayerObserver();
99
101
  const handleClick = useCallback((event, analyticsEvent) => {
100
102
  onClick === null || onClick === void 0 ? void 0 : onClick(event, analyticsEvent, {
101
103
  isSideNavVisible: isSideNavExpanded
102
104
  });
103
105
  toggleVisibility();
104
- }, [onClick, isSideNavExpanded, toggleVisibility]);
106
+ if (fg('navx-full-height-sidebar')) {
107
+ openLayerObserver === null || openLayerObserver === void 0 ? void 0 : openLayerObserver.closeLayers();
108
+ }
109
+ }, [onClick, isSideNavExpanded, toggleVisibility, openLayerObserver]);
105
110
  const handlePointerEnter = useCallback(() => {
106
111
  if (!fg('platform_dst_nav4_fhs_instrumentation_1')) {
107
112
  return;
@@ -42,7 +42,7 @@ export function useSideNavToggleKeyboardShortcut({
42
42
  // Ignore repeated keydown events from holding down the keys
43
43
  return;
44
44
  }
45
- if (openLayerObserver.getCount({
45
+ if (openLayerObserver && openLayerObserver.getCount({
46
46
  type: 'modal'
47
47
  }) > 0) {
48
48
  // Return early if there are any open modals
@@ -304,9 +304,9 @@ function SideNavInternal(_ref) {
304
304
  }
305
305
  if (action === 'ready-to-close') {
306
306
  // If there are no open layers, we can close the flyout.
307
- if (openLayerObserver.getCount({
307
+ if ((openLayerObserver === null || openLayerObserver === void 0 ? void 0 : openLayerObserver.getCount({
308
308
  namespace: openLayerObserverSideNavNamespace
309
- }) === 0) {
309
+ })) === 0) {
310
310
  close();
311
311
  return;
312
312
  }
@@ -662,7 +662,7 @@ function SideNavInternal(_ref) {
662
662
  // Close the flyout if there are no more layers open and the user is not mousing over the
663
663
  // flyout areas (side nav, TopNavStart element)
664
664
 
665
- return openLayerObserver.onChange(function (_ref6) {
665
+ return openLayerObserver === null || openLayerObserver === void 0 ? void 0 : openLayerObserver.onChange(function (_ref6) {
666
666
  var count = _ref6.count;
667
667
  if (flyoutStateRef.current.type === 'ready-to-close' && count === 0) {
668
668
  updateFlyoutState('force-close');
@@ -10,6 +10,7 @@ import { bind } from 'bind-event-listener';
10
10
  import { useAnalyticsEvents } from '@atlaskit/analytics-next';
11
11
  import SidebarCollapseIcon from '@atlaskit/icon/core/sidebar-collapse';
12
12
  import SidebarExpandIcon from '@atlaskit/icon/core/sidebar-expand';
13
+ import { useOpenLayerObserver } from '@atlaskit/layering/experimental/open-layer-observer';
13
14
  import { fg } from '@atlaskit/platform-feature-flags';
14
15
  import { useIsFhsEnabled } from '../../fhs-rollout/use-is-fhs-enabled';
15
16
  import { IconButton } from '../../top-nav-items/themed/migration';
@@ -103,12 +104,16 @@ export var SideNavToggleButton = function SideNavToggleButton(_ref) {
103
104
  });
104
105
  var _useAnalyticsEvents = useAnalyticsEvents(),
105
106
  createAnalyticsEvent = _useAnalyticsEvents.createAnalyticsEvent;
107
+ var openLayerObserver = useOpenLayerObserver();
106
108
  var handleClick = useCallback(function (event, analyticsEvent) {
107
109
  onClick === null || onClick === void 0 || onClick(event, analyticsEvent, {
108
110
  isSideNavVisible: isSideNavExpanded
109
111
  });
110
112
  toggleVisibility();
111
- }, [onClick, isSideNavExpanded, toggleVisibility]);
113
+ if (fg('navx-full-height-sidebar')) {
114
+ openLayerObserver === null || openLayerObserver === void 0 || openLayerObserver.closeLayers();
115
+ }
116
+ }, [onClick, isSideNavExpanded, toggleVisibility, openLayerObserver]);
112
117
  var handlePointerEnter = useCallback(function () {
113
118
  if (!fg('platform_dst_nav4_fhs_instrumentation_1')) {
114
119
  return;
@@ -41,7 +41,7 @@ export function useSideNavToggleKeyboardShortcut(_ref) {
41
41
  // Ignore repeated keydown events from holding down the keys
42
42
  return;
43
43
  }
44
- if (openLayerObserver.getCount({
44
+ if (openLayerObserver && openLayerObserver.getCount({
45
45
  type: 'modal'
46
46
  }) > 0) {
47
47
  // Return early if there are any open modals
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/navigation-system",
3
- "version": "5.6.0",
3
+ "version": "5.7.0",
4
4
  "description": "The latest navigation system for Atlassian apps.",
5
5
  "repository": "https://bitbucket.org/atlassian/atlassian-frontend-mirror",
6
6
  "author": "Atlassian Pty Ltd",
@@ -72,7 +72,7 @@
72
72
  "@atlaskit/css": "^0.15.0",
73
73
  "@atlaskit/ds-lib": "^5.2.0",
74
74
  "@atlaskit/icon": "^29.0.0",
75
- "@atlaskit/layering": "^3.3.0",
75
+ "@atlaskit/layering": "^3.4.0",
76
76
  "@atlaskit/logo": "^19.9.0",
77
77
  "@atlaskit/platform-feature-flags": "^1.1.0",
78
78
  "@atlaskit/popup": "^4.6.0",
@@ -116,7 +116,7 @@
116
116
  "@atlaskit/skeleton": "^2.1.0",
117
117
  "@atlaskit/textfield": "^8.1.0",
118
118
  "@atlassian/feature-flags-test-utils": "^1.0.0",
119
- "@atlassian/gemini": "^1.20.0",
119
+ "@atlassian/gemini": "^1.21.0",
120
120
  "@atlassian/search-dialog": "^9.9.0",
121
121
  "@atlassian/ssr-tests": "workspace:^",
122
122
  "@atlassian/test-utils": "^1.0.0",