Skip to content

chore(deps): update @atlaskit/tooltip to v22.2.0#2888

Merged
setchy merged 1 commit into
mainfrom
renovate/atlaskit-tooltip-22.x
May 17, 2026
Merged

chore(deps): update @atlaskit/tooltip to v22.2.0#2888
setchy merged 1 commit into
mainfrom
renovate/atlaskit-tooltip-22.x

Conversation

@renovate
Copy link
Copy Markdown
Contributor

@renovate renovate Bot commented May 17, 2026

This PR contains the following updates:

Package Change Age Confidence
@atlaskit/tooltip (source) 22.1.022.2.0 age confidence

Release Notes

atlassian/atlassian-frontend-mirror (@​atlaskit/tooltip)

v22.2.0

Minor Changes
  • 7250582895c0b -
    Top-layer adoption work behind the platform-dst-top-layer feature flag. Public adopter APIs are
    intentionally kept narrow while the top-layer API surface settles, with one exception called out
    below.

    Highlights:

    • Pass the full [along, away] legacy popper offset through to the new top-layer
      placement.offset API (via fromLegacyPlacement). Previously only the away axis was
      forwarded, which dropped the along offset for consumers of Popup, PopupSelect,
      Spotlight, and Tooltip when platform-dst-top-layer is enabled.
    • Fix broken import of dialogHeight and dialogWidth from the removed utils module in
      @atlaskit/modal-dialog.

    Public API:

    • @atlaskit/tooltip (minor): add an optional testId?: string field to TriggerProps.
      This is additive (no existing prop changes shape). Required because @atlaskit/button/new (and
      other Pressable-backed primitives) overwrite data-testid from spread, so the legacy
      (triggerProps as any)['data-testid'] workaround is silently absorbed by those consumers. A
      typed testId field flows through their own testId destructure instead, restoring
      data-testid propagation onto the rendered trigger element.
    • @atlaskit/popup, @atlaskit/dropdown-menu (patch): no public type changes. Wider
      aria-haspopup unions that the FF-on path produces are bridged at the package boundary into
      @atlaskit/top-layer with localised FUDGE(top-layer-api) casts, documented in
      packages/design-system/top-layer/notes/decisions/migration-roadmap.md ("Open API decisions
      deferred to a follow-up PR"). They will be widened in a follow-up minor PR once the top-layer
      API is committed.
    • @atlaskit/modal-dialog, @atlaskit/select, @atlaskit/spotlight
      (patch/minor): no public type changes; bug fixes only.

    Merge-readiness fixes (FF-on test wiring + adopter behavior):

    • @atlaskit/popup (minor): wire the compositional PopupContent to delegate to
      PopupContentTopLayer when platform-dst-top-layer is enabled. Previously only the legacy
      Popup component had the FF branch, leaving consumers of the compositional API on the legacy
      popper path.
    • @atlaskit/select (minor): add an onClick handler to the PopupSelect top-layer
      trigger so clicks open/close the menu (mirrors the legacy global click handler in
      popup-select.tsx). Add explicit Escape handling on the menu's onKeyDown so the menu closes
      and focus returns to the trigger.
    • @atlaskit/top-layer (patch): the <dialog> rendered by the Dialog primitive now sets
      aria-modal="true" explicitly. Modern browsers infer modal semantics from .showModal() but
      some assistive tech still keys off the explicit attribute.
    • @atlaskit/top-layer (patch): guard use-anchor-positioning against environments where
      ResizeObserver is not defined (e.g. jest's node environment, used by the post-office test
      suite). The observer is used to wait for the popover's first valid layout before measuring;
      consumers in non-DOM jest environments now get a no-op observer and the scroll/resize listeners
      still apply if the host environment polyfills showPopover. Real browsers always have
      ResizeObserver.
    • @atlaskit/modal-dialog (patch): on the FF-on path, drop the tabIndex={-1} (and unused
      :focus-visible outline) from the modal content wrapper. The native <dialog>.showModal()
      focus-delegate algorithm picks the first focusable descendant (including tabindex=-1), and the
      wrapper was hijacking initial focus from the close button. Also honor shouldReturnFocus={ref}
      on the FF-on path (an unmount-cleanup focuses the ref after dialog.close() so it overrides the
      browser's automatic return-to-trigger). Boolean shouldReturnFocus={false} is not yet honored
      on the FF-on path — see top-layer/notes/merge-blockers.md.
    • @atlaskit/datetime-picker (patch): on the FF-on path, set mode="manual" on the
      Popup.Content rendered by both internal/menu-top-layer.tsx (date-picker calendar) and
      internal/fixed-layer-menu-top-layer.tsx (time-picker menu). With the default mode="auto",
      the same click event that opens the menu (which targets the react-select combobox input —
      outside the popover element) bubbles to the browser's native popover light-dismiss handler and
      immediately closes the menu. react-select / DateTimePicker already own outside-click and Esc
      dismissal via their own state, so opting out of the native auto-dismiss is the correct
      integration. Also extend the existing Esc → trigger-focus restoration in
      components/date-picker.tsx to the FF-on path (manual mode disables the browser's built-in
      focus return, and the legacy code path was already handling this for itself behind an FF
      negation).
    • @atlaskit/popup (no public API change): no source changes — only FF-on Playwright
      spec/example fixes drove the suite from 21/3/2 to 27/0/0. Notable: the two test.fixme'd
      nested-popover cases were not browser limitations; popover="auto" chains correctly via DOM
      ancestry (the original fixmes had the wrong testId selector). Added testId props to two
      examples (16-popup-with-a11y-props, 18-should-fit-container) so default-shape tests can
      reach the trigger.
    • Test alignment for FF-on Playwright suites across popup, select, datetime-picker,
      inline-dialog, inline-message, and modal-dialog: selector updates to match the new
      top-layer testId convention (${testId}--content, [role="dialog"][aria-label="calendar"]),
      per-spec skipAxeCheck() for example-level color-contrast violations unrelated to the
      migration, and focus assertions adjusted to match native <dialog> / Popup.Content auto-focus
      semantics (focus lands on the first focusable child, not the dialog container itself).
    • @atlassian/capacity-planning-capacity-graph, @atlaskit/color-picker,
      @atlassian/timeline-table, @atlassian/global-side-navigation (patch): scope fg
      mocks in unit tests so platform-dst-top-layer returns false. JSDOM does not implement the
      native Popover API (showPopover/hidePopover/toggle events), so leaving the gate ON in unit
      tests caused popover content to remain in the DOM after close and broke close-behaviour
      assertions. Browser coverage for the FF-on path is provided by the Playwright suites listed
      above.
    • @atlaskit/dropdown-menu (no public API change): test/example-only fixes for the FF-on
      Playwright suite. Added role="menuitem" to the nested-trigger ButtonItem in
      examples/93-testing-nested-keyboard-navigation-top-layer.tsx to satisfy axe's
      aria-required-children rule on the parent menu. Added a test.beforeEach(skipAxeCheck) to
      dropdown-menu.spec.tsx (FF-on suite) for example-level color-contrast violations on the
      pre-existing color.text.selected/color.background.selected token pair (3.91:1). Replaced a
      deadlocking await expect(moveItem).not.toBeFocused() pre-open assertion (Playwright's
      auto-wait blocks 5s on the absent element) with await expect(moveItem).not.toBeVisible().
      Suite result: 22/22 passing.
Patch Changes
  • Updated dependencies

Configuration

📅 Schedule: (UTC)

  • Branch creation
    • Between 12:00 AM and 03:59 AM (* 0-3 * * *)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate Bot requested a review from setchy as a code owner May 17, 2026 00:29
@renovate renovate Bot added the dependency Dependency updates label May 17, 2026
@netlify
Copy link
Copy Markdown

netlify Bot commented May 17, 2026

Deploy Preview for atlassify canceled.

Name Link
🔨 Latest commit 8d8a3ce
🔍 Latest deploy log https://app.netlify.com/projects/atlassify/deploys/6a090be5bc9de5000894851b

@sonarqubecloud
Copy link
Copy Markdown

@setchy setchy merged commit 0bc47e6 into main May 17, 2026
24 checks passed
@setchy setchy deleted the renovate/atlaskit-tooltip-22.x branch May 17, 2026 12:09
@github-actions github-actions Bot added this to the Release 3.9.0 milestone May 17, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependency Dependency updates

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant