@atlaskit/navigation-system 7.2.1 → 8.0.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 +24 -0
- package/constellation/layout/custom-theming.mdx +1 -1
- package/dist/cjs/context/skip-links/skip-links-context.js +2 -54
- package/dist/cjs/context/skip-links/use-skip-link-internal.js +45 -0
- package/dist/cjs/context/skip-links/use-skip-link.js +17 -0
- package/dist/cjs/context/top-nav-start/top-nav-start-attach-ref.js +10 -0
- package/dist/cjs/context/top-nav-start/top-nav-start-context-provider.js +4 -3
- package/dist/cjs/context/top-nav-start/top-nav-start-element.js +8 -0
- package/dist/cjs/entry-points/experimental/top-nav-button.js +8 -5
- package/dist/cjs/entry-points/layout/skip-links.js +4 -4
- package/dist/cjs/ui/page-layout/aside.js +6 -6
- package/dist/cjs/ui/page-layout/banner.js +8 -7
- package/dist/cjs/ui/page-layout/{hoist-utils.js → dangerously-hoist-css-var-to-document-root.js} +6 -25
- package/dist/cjs/ui/page-layout/hoist-css-var-to-local-grid.js +22 -0
- package/dist/cjs/ui/page-layout/main/main.js +4 -4
- package/dist/cjs/ui/page-layout/panel-splitter/get-pixel-width.js +13 -0
- package/dist/cjs/ui/page-layout/panel-splitter/{get-width.js → get-width-from-drag-location.js} +1 -12
- package/dist/cjs/ui/page-layout/panel-splitter/is-panel-splitter-drag-data.js +10 -0
- package/dist/cjs/ui/page-layout/panel-splitter/{context.js → on-double-click-context.js} +1 -9
- package/dist/cjs/ui/page-layout/panel-splitter/panel-splitter-context.js +14 -0
- package/dist/cjs/ui/page-layout/panel-splitter/panel-splitter-drag-symbol.js +7 -0
- package/dist/cjs/ui/page-layout/panel-splitter/panel-splitter.js +17 -19
- package/dist/cjs/ui/page-layout/panel-splitter/provider.js +2 -2
- package/dist/cjs/ui/page-layout/panel-splitter/side-nav-panel-splitter.js +4 -3
- package/dist/cjs/ui/page-layout/panel.js +8 -8
- package/dist/cjs/ui/page-layout/ribbon.js +4 -8
- package/dist/cjs/ui/page-layout/root.compiled.css +2 -2
- package/dist/cjs/ui/page-layout/root.js +5 -7
- package/dist/cjs/ui/page-layout/side-nav/is-side-nav-shortcut-enabled-context.js +3 -25
- package/dist/cjs/ui/page-layout/side-nav/is-side-nav-shortcut-enabled-provider.js +16 -0
- package/dist/cjs/ui/page-layout/side-nav/set-side-nav-visibility-state.js +10 -0
- package/dist/cjs/ui/page-layout/side-nav/{element-context.js → side-nav-element-provider.js} +2 -14
- package/dist/cjs/ui/page-layout/side-nav/side-nav-ref-context.js +10 -0
- package/dist/cjs/ui/page-layout/side-nav/side-nav-toggle-button-attach-ref.js +10 -0
- package/dist/cjs/ui/page-layout/side-nav/side-nav-toggle-button-element.js +12 -0
- package/dist/cjs/ui/page-layout/side-nav/side-nav-visibility-state.js +12 -0
- package/dist/cjs/ui/page-layout/side-nav/side-nav.js +19 -18
- package/dist/cjs/ui/page-layout/side-nav/toggle-button-provider.js +4 -3
- package/dist/cjs/ui/page-layout/side-nav/toggle-button.js +8 -8
- package/dist/cjs/ui/page-layout/side-nav/use-expand-side-nav.js +2 -2
- package/dist/cjs/ui/page-layout/side-nav/use-is-side-nav-shortcut-enabled.js +15 -0
- package/dist/cjs/ui/page-layout/side-nav/use-side-nav-ref.js +16 -0
- package/dist/cjs/ui/page-layout/side-nav/use-side-nav-toggle-keyboard-shortcut.js +2 -2
- package/dist/cjs/ui/page-layout/side-nav/use-side-nav-visibility.js +2 -2
- package/dist/cjs/ui/page-layout/side-nav/use-toggle-side-nav.js +2 -2
- package/dist/cjs/ui/page-layout/side-nav/visibility-provider.js +4 -3
- package/dist/cjs/ui/page-layout/top-nav/top-nav-end.js +2 -2
- package/dist/cjs/ui/page-layout/top-nav/top-nav-start.js +5 -5
- package/dist/cjs/ui/page-layout/top-nav/top-nav.js +17 -15
- package/dist/cjs/ui/page-layout/{id-utils.js → use-layout-id.js} +2 -14
- package/dist/cjs/ui/page-layout/use-resizing-width-css-var-on-root-element.js +2 -2
- package/dist/cjs/ui/page-layout/use-skip-link-id.js +17 -0
- package/dist/cjs/ui/top-nav-items/app-switcher.js +2 -2
- package/dist/cjs/ui/top-nav-items/chat-button.js +2 -2
- package/dist/cjs/ui/top-nav-items/create-button.js +2 -2
- package/dist/cjs/ui/top-nav-items/end-item.js +2 -2
- package/dist/cjs/ui/top-nav-items/log-in.js +2 -2
- package/dist/cjs/ui/top-nav-items/search.js +2 -2
- package/dist/cjs/ui/top-nav-items/themed/button.js +12 -358
- package/dist/cjs/ui/top-nav-items/themed/get-custom-theme-styles.js +10 -10
- package/dist/cjs/ui/top-nav-items/themed/get-primitives-spread-props.js +39 -0
- package/dist/cjs/ui/top-nav-items/themed/icon-button.js +21 -0
- package/dist/cjs/ui/top-nav-items/themed/link-button.js +21 -0
- package/dist/cjs/ui/top-nav-items/themed/link-icon-button.js +21 -0
- package/dist/cjs/ui/top-nav-items/themed/palette-rgba.js +20 -0
- package/dist/cjs/ui/top-nav-items/themed/palette.js +1 -21
- package/dist/cjs/ui/top-nav-items/themed/search.js +1 -2
- package/dist/cjs/ui/top-nav-items/themed/{button.compiled.css → themed-anchor.compiled.css} +0 -1
- package/dist/cjs/ui/top-nav-items/themed/themed-anchor.js +76 -0
- package/dist/cjs/ui/top-nav-items/themed/themed-button.compiled.css +2 -0
- package/dist/cjs/ui/top-nav-items/themed/themed-button.js +40 -0
- package/dist/cjs/ui/top-nav-items/themed/themed-icon-button.js +85 -0
- package/dist/cjs/ui/top-nav-items/themed/themed-link-button.compiled.css +2 -0
- package/dist/cjs/ui/top-nav-items/themed/themed-link-button.js +45 -0
- package/dist/cjs/ui/top-nav-items/themed/themed-link-icon-button.js +83 -0
- package/dist/{esm/ui/top-nav-items/themed/button.compiled.css → cjs/ui/top-nav-items/themed/themed-pressable.compiled.css} +0 -1
- package/dist/cjs/ui/top-nav-items/themed/themed-pressable.js +64 -0
- package/dist/cjs/ui/top-nav-items/themed/types.js +5 -0
- package/dist/cjs/ui/top-nav-items/themed/use-custom-theme-new.js +53 -0
- package/dist/cjs/ui/top-nav-items/themed/use-custom-theme.js +0 -41
- package/dist/es2019/context/skip-links/skip-links-context.js +2 -54
- package/dist/es2019/context/skip-links/use-skip-link-internal.js +41 -0
- package/dist/es2019/context/skip-links/use-skip-link.js +12 -0
- package/dist/es2019/context/top-nav-start/top-nav-start-attach-ref.js +3 -0
- package/dist/es2019/context/top-nav-start/top-nav-start-context-provider.js +2 -1
- package/dist/es2019/context/top-nav-start/top-nav-start-element.js +2 -0
- package/dist/es2019/entry-points/experimental/top-nav-button.js +4 -1
- package/dist/es2019/entry-points/layout/skip-links.js +2 -2
- package/dist/es2019/ui/page-layout/aside.js +3 -3
- package/dist/es2019/ui/page-layout/banner.js +4 -3
- package/dist/es2019/ui/page-layout/{hoist-utils.js → dangerously-hoist-css-var-to-document-root.js} +0 -19
- package/dist/es2019/ui/page-layout/hoist-css-var-to-local-grid.js +15 -0
- package/dist/es2019/ui/page-layout/main/main.js +2 -2
- package/dist/es2019/ui/page-layout/panel-splitter/get-pixel-width.js +7 -0
- package/dist/es2019/ui/page-layout/panel-splitter/{get-width.js → get-width-from-drag-location.js} +0 -11
- package/dist/es2019/ui/page-layout/panel-splitter/is-panel-splitter-drag-data.js +4 -0
- package/dist/es2019/ui/page-layout/panel-splitter/{context.js → on-double-click-context.js} +0 -8
- package/dist/es2019/ui/page-layout/panel-splitter/panel-splitter-context.js +9 -0
- package/dist/es2019/ui/page-layout/panel-splitter/panel-splitter-drag-symbol.js +1 -0
- package/dist/es2019/ui/page-layout/panel-splitter/panel-splitter.js +12 -13
- package/dist/es2019/ui/page-layout/panel-splitter/provider.js +1 -1
- package/dist/es2019/ui/page-layout/panel-splitter/side-nav-panel-splitter.js +2 -1
- package/dist/es2019/ui/page-layout/panel.js +4 -4
- package/dist/es2019/ui/page-layout/ribbon.js +2 -6
- package/dist/es2019/ui/page-layout/root.compiled.css +2 -2
- package/dist/es2019/ui/page-layout/root.js +4 -6
- package/dist/es2019/ui/page-layout/side-nav/is-side-nav-shortcut-enabled-context.js +2 -22
- package/dist/es2019/ui/page-layout/side-nav/is-side-nav-shortcut-enabled-provider.js +10 -0
- package/dist/es2019/ui/page-layout/side-nav/set-side-nav-visibility-state.js +3 -0
- package/dist/es2019/ui/page-layout/side-nav/side-nav-element-provider.js +10 -0
- package/dist/es2019/ui/page-layout/side-nav/side-nav-ref-context.js +4 -0
- package/dist/es2019/ui/page-layout/side-nav/side-nav-toggle-button-attach-ref.js +3 -0
- package/dist/es2019/ui/page-layout/side-nav/side-nav-toggle-button-element.js +7 -0
- package/dist/es2019/ui/page-layout/side-nav/{visibility-context.js → side-nav-visibility-state.js} +1 -7
- package/dist/es2019/ui/page-layout/side-nav/side-nav.js +9 -8
- package/dist/es2019/ui/page-layout/side-nav/toggle-button-provider.js +2 -1
- package/dist/es2019/ui/page-layout/side-nav/toggle-button.js +4 -4
- package/dist/es2019/ui/page-layout/side-nav/use-expand-side-nav.js +1 -1
- package/dist/es2019/ui/page-layout/side-nav/use-is-side-nav-shortcut-enabled.js +10 -0
- package/dist/es2019/ui/page-layout/side-nav/use-side-nav-ref.js +11 -0
- package/dist/es2019/ui/page-layout/side-nav/use-side-nav-toggle-keyboard-shortcut.js +1 -1
- package/dist/es2019/ui/page-layout/side-nav/use-side-nav-visibility.js +1 -1
- package/dist/es2019/ui/page-layout/side-nav/use-toggle-side-nav.js +1 -1
- package/dist/es2019/ui/page-layout/side-nav/visibility-provider.js +2 -2
- package/dist/es2019/ui/page-layout/top-nav/top-nav-end.js +1 -1
- package/dist/es2019/ui/page-layout/top-nav/top-nav-start.js +2 -2
- package/dist/es2019/ui/page-layout/top-nav/top-nav.js +11 -8
- package/dist/es2019/ui/page-layout/use-layout-id.js +15 -0
- package/dist/es2019/ui/page-layout/use-resizing-width-css-var-on-root-element.js +1 -1
- package/dist/es2019/ui/page-layout/{id-utils.js → use-skip-link-id.js} +0 -14
- package/dist/es2019/ui/top-nav-items/app-switcher.js +1 -1
- package/dist/es2019/ui/top-nav-items/chat-button.js +1 -1
- package/dist/es2019/ui/top-nav-items/create-button.js +1 -1
- package/dist/es2019/ui/top-nav-items/end-item.js +1 -1
- package/dist/es2019/ui/top-nav-items/log-in.js +1 -1
- package/dist/es2019/ui/top-nav-items/search.js +1 -1
- package/dist/es2019/ui/top-nav-items/themed/button.js +11 -347
- package/dist/es2019/ui/top-nav-items/themed/get-custom-theme-styles.js +28 -28
- package/dist/es2019/ui/top-nav-items/themed/get-primitives-spread-props.js +31 -0
- package/dist/es2019/ui/top-nav-items/themed/icon-button.js +12 -0
- package/dist/es2019/ui/top-nav-items/themed/link-button.js +12 -0
- package/dist/es2019/ui/top-nav-items/themed/link-icon-button.js +12 -0
- package/dist/es2019/ui/top-nav-items/themed/palette-rgba.js +14 -0
- package/dist/es2019/ui/top-nav-items/themed/palette.js +0 -20
- package/dist/es2019/ui/top-nav-items/themed/search.js +1 -2
- package/dist/es2019/ui/top-nav-items/themed/{button.compiled.css → themed-anchor.compiled.css} +0 -1
- package/dist/es2019/ui/top-nav-items/themed/themed-anchor.js +66 -0
- package/dist/es2019/ui/top-nav-items/themed/themed-button.compiled.css +2 -0
- package/dist/es2019/ui/top-nav-items/themed/themed-button.js +30 -0
- package/dist/es2019/ui/top-nav-items/themed/themed-icon-button.js +72 -0
- package/dist/es2019/ui/top-nav-items/themed/themed-link-button.compiled.css +2 -0
- package/dist/es2019/ui/top-nav-items/themed/themed-link-button.js +37 -0
- package/dist/es2019/ui/top-nav-items/themed/themed-link-icon-button.js +73 -0
- package/dist/es2019/ui/top-nav-items/themed/themed-pressable.compiled.css +68 -0
- package/dist/es2019/ui/top-nav-items/themed/themed-pressable.js +52 -0
- package/dist/es2019/ui/top-nav-items/themed/types.js +1 -0
- package/dist/es2019/ui/top-nav-items/themed/use-custom-theme-new.js +45 -0
- package/dist/es2019/ui/top-nav-items/themed/use-custom-theme.js +0 -38
- package/dist/esm/context/skip-links/skip-links-context.js +2 -54
- package/dist/esm/context/skip-links/use-skip-link-internal.js +39 -0
- package/dist/esm/context/skip-links/use-skip-link.js +12 -0
- package/dist/esm/context/top-nav-start/top-nav-start-attach-ref.js +3 -0
- package/dist/esm/context/top-nav-start/top-nav-start-context-provider.js +2 -1
- package/dist/esm/context/top-nav-start/top-nav-start-element.js +2 -0
- package/dist/esm/entry-points/experimental/top-nav-button.js +4 -1
- package/dist/esm/entry-points/layout/skip-links.js +2 -2
- package/dist/esm/ui/page-layout/aside.js +3 -3
- package/dist/esm/ui/page-layout/banner.js +4 -3
- package/dist/esm/ui/page-layout/dangerously-hoist-css-var-to-document-root.js +31 -0
- package/dist/esm/ui/page-layout/hoist-css-var-to-local-grid.js +16 -0
- package/dist/esm/ui/page-layout/main/main.js +2 -2
- package/dist/esm/ui/page-layout/panel-splitter/get-pixel-width.js +7 -0
- package/dist/esm/ui/page-layout/panel-splitter/{get-width.js → get-width-from-drag-location.js} +0 -11
- package/dist/esm/ui/page-layout/panel-splitter/is-panel-splitter-drag-data.js +4 -0
- package/dist/esm/ui/page-layout/panel-splitter/{context.js → on-double-click-context.js} +0 -8
- package/dist/esm/ui/page-layout/panel-splitter/panel-splitter-context.js +9 -0
- package/dist/esm/ui/page-layout/panel-splitter/panel-splitter-drag-symbol.js +1 -0
- package/dist/esm/ui/page-layout/panel-splitter/panel-splitter.js +9 -10
- package/dist/esm/ui/page-layout/panel-splitter/provider.js +1 -1
- package/dist/esm/ui/page-layout/panel-splitter/side-nav-panel-splitter.js +2 -1
- package/dist/esm/ui/page-layout/panel.js +4 -4
- package/dist/esm/ui/page-layout/ribbon.js +2 -6
- package/dist/esm/ui/page-layout/root.compiled.css +2 -2
- package/dist/esm/ui/page-layout/root.js +4 -6
- package/dist/esm/ui/page-layout/side-nav/is-side-nav-shortcut-enabled-context.js +2 -21
- package/dist/esm/ui/page-layout/side-nav/is-side-nav-shortcut-enabled-provider.js +9 -0
- package/dist/esm/ui/page-layout/side-nav/set-side-nav-visibility-state.js +3 -0
- package/dist/esm/ui/page-layout/side-nav/side-nav-element-provider.js +9 -0
- package/dist/esm/ui/page-layout/side-nav/side-nav-ref-context.js +4 -0
- package/dist/esm/ui/page-layout/side-nav/side-nav-toggle-button-attach-ref.js +3 -0
- package/dist/esm/ui/page-layout/side-nav/side-nav-toggle-button-element.js +7 -0
- package/dist/esm/ui/page-layout/side-nav/{visibility-context.js → side-nav-visibility-state.js} +1 -7
- package/dist/esm/ui/page-layout/side-nav/side-nav.js +9 -8
- package/dist/esm/ui/page-layout/side-nav/toggle-button-provider.js +2 -1
- package/dist/esm/ui/page-layout/side-nav/toggle-button.js +4 -4
- package/dist/esm/ui/page-layout/side-nav/use-expand-side-nav.js +1 -1
- package/dist/esm/ui/page-layout/side-nav/use-is-side-nav-shortcut-enabled.js +10 -0
- package/dist/esm/ui/page-layout/side-nav/use-side-nav-ref.js +11 -0
- package/dist/esm/ui/page-layout/side-nav/use-side-nav-toggle-keyboard-shortcut.js +1 -1
- package/dist/esm/ui/page-layout/side-nav/use-side-nav-visibility.js +1 -1
- package/dist/esm/ui/page-layout/side-nav/use-toggle-side-nav.js +1 -1
- package/dist/esm/ui/page-layout/side-nav/visibility-provider.js +2 -2
- package/dist/esm/ui/page-layout/top-nav/top-nav-end.js +1 -1
- package/dist/esm/ui/page-layout/top-nav/top-nav-start.js +2 -2
- package/dist/esm/ui/page-layout/top-nav/top-nav.js +11 -8
- package/dist/esm/ui/page-layout/{id-utils.js → use-layout-id.js} +1 -12
- package/dist/esm/ui/page-layout/use-resizing-width-css-var-on-root-element.js +1 -1
- package/dist/esm/ui/page-layout/use-skip-link-id.js +12 -0
- package/dist/esm/ui/top-nav-items/app-switcher.js +1 -1
- package/dist/esm/ui/top-nav-items/chat-button.js +1 -1
- package/dist/esm/ui/top-nav-items/create-button.js +1 -1
- package/dist/esm/ui/top-nav-items/end-item.js +1 -1
- package/dist/esm/ui/top-nav-items/log-in.js +1 -1
- package/dist/esm/ui/top-nav-items/search.js +1 -1
- package/dist/esm/ui/top-nav-items/themed/button.js +11 -358
- package/dist/esm/ui/top-nav-items/themed/get-custom-theme-styles.js +9 -9
- package/dist/esm/ui/top-nav-items/themed/get-primitives-spread-props.js +32 -0
- package/dist/esm/ui/top-nav-items/themed/icon-button.js +12 -0
- package/dist/esm/ui/top-nav-items/themed/link-button.js +12 -0
- package/dist/esm/ui/top-nav-items/themed/link-icon-button.js +12 -0
- package/dist/esm/ui/top-nav-items/themed/palette-rgba.js +14 -0
- package/dist/esm/ui/top-nav-items/themed/palette.js +0 -20
- package/dist/esm/ui/top-nav-items/themed/search.js +1 -2
- package/dist/esm/ui/top-nav-items/themed/themed-anchor.compiled.css +68 -0
- package/dist/esm/ui/top-nav-items/themed/themed-anchor.js +69 -0
- package/dist/esm/ui/top-nav-items/themed/themed-button.compiled.css +2 -0
- package/dist/esm/ui/top-nav-items/themed/themed-button.js +31 -0
- package/dist/esm/ui/top-nav-items/themed/themed-icon-button.js +76 -0
- package/dist/esm/ui/top-nav-items/themed/themed-link-button.compiled.css +2 -0
- package/dist/esm/ui/top-nav-items/themed/themed-link-button.js +38 -0
- package/dist/esm/ui/top-nav-items/themed/themed-link-icon-button.js +77 -0
- package/dist/esm/ui/top-nav-items/themed/themed-pressable.compiled.css +68 -0
- package/dist/esm/ui/top-nav-items/themed/themed-pressable.js +55 -0
- package/dist/esm/ui/top-nav-items/themed/types.js +1 -0
- package/dist/esm/ui/top-nav-items/themed/use-custom-theme-new.js +46 -0
- package/dist/esm/ui/top-nav-items/themed/use-custom-theme.js +0 -39
- package/dist/types/context/skip-links/skip-links-context.d.ts +0 -27
- package/dist/types/context/skip-links/use-skip-link-internal.d.ts +10 -0
- package/dist/types/context/skip-links/use-skip-link.d.ts +18 -0
- package/dist/types/context/top-nav-start/top-nav-start-attach-ref.d.ts +1 -0
- package/dist/types/context/top-nav-start/top-nav-start-element.d.ts +1 -0
- package/dist/types/entry-points/experimental/top-nav-button.d.ts +4 -1
- package/dist/types/entry-points/layout/skip-links.d.ts +2 -2
- package/dist/types/ui/page-layout/dangerously-hoist-css-var-to-document-root.d.ts +8 -0
- package/dist/{types-ts4.5/ui/page-layout/hoist-utils.d.ts → types/ui/page-layout/hoist-css-var-to-local-grid.d.ts} +0 -11
- package/dist/types/ui/page-layout/panel-splitter/get-pixel-width.d.ts +4 -0
- package/dist/types/ui/page-layout/panel-splitter/get-width-from-drag-location.d.ts +8 -0
- package/dist/types/ui/page-layout/panel-splitter/is-panel-splitter-drag-data.d.ts +9 -0
- package/dist/types/ui/page-layout/panel-splitter/on-double-click-context.d.ts +8 -0
- package/dist/{types-ts4.5/ui/page-layout/panel-splitter/context.d.ts → types/ui/page-layout/panel-splitter/panel-splitter-context.d.ts} +0 -8
- package/dist/types/ui/page-layout/panel-splitter/panel-splitter-drag-symbol.d.ts +1 -0
- package/dist/types/ui/page-layout/panel-splitter/panel-splitter.d.ts +1 -10
- package/dist/types/ui/page-layout/panel-splitter/provider.d.ts +1 -1
- package/dist/types/ui/page-layout/side-nav/is-side-nav-shortcut-enabled-context.d.ts +6 -11
- package/dist/types/ui/page-layout/side-nav/is-side-nav-shortcut-enabled-provider.d.ts +5 -0
- package/dist/types/ui/page-layout/side-nav/set-side-nav-visibility-state.d.ts +3 -0
- package/dist/types/ui/page-layout/side-nav/side-nav-element-provider.d.ts +4 -0
- package/dist/types/ui/page-layout/side-nav/side-nav-ref-context.d.ts +2 -0
- package/dist/types/ui/page-layout/side-nav/side-nav-toggle-button-attach-ref.d.ts +1 -0
- package/dist/types/ui/page-layout/side-nav/side-nav-toggle-button-element.d.ts +5 -0
- package/dist/{types-ts4.5/ui/page-layout/side-nav/visibility-context.d.ts → types/ui/page-layout/side-nav/side-nav-visibility-state.d.ts} +0 -5
- package/dist/types/ui/page-layout/side-nav/use-is-side-nav-shortcut-enabled.d.ts +5 -0
- package/dist/{types-ts4.5/ui/page-layout/side-nav/element-context.d.ts → types/ui/page-layout/side-nav/use-side-nav-ref.d.ts} +1 -4
- package/dist/types/ui/page-layout/top-nav/top-nav.d.ts +3 -4
- package/dist/{types-ts4.5/ui/page-layout/id-utils.d.ts → types/ui/page-layout/use-layout-id.d.ts} +0 -5
- package/dist/types/ui/page-layout/use-skip-link-id.d.ts +5 -0
- package/dist/types/ui/top-nav-items/themed/button.d.ts +5 -126
- package/dist/types/ui/top-nav-items/themed/get-primitives-spread-props.d.ts +16 -0
- package/dist/types/ui/top-nav-items/themed/icon-button.d.ts +7 -0
- package/dist/types/ui/top-nav-items/themed/link-button.d.ts +3 -0
- package/dist/types/ui/top-nav-items/themed/link-icon-button.d.ts +7 -0
- package/dist/types/ui/top-nav-items/themed/palette-rgba.d.ts +14 -0
- package/dist/types/ui/top-nav-items/themed/palette.d.ts +0 -20
- package/dist/types/ui/top-nav-items/themed/themed-anchor.d.ts +32 -0
- package/dist/types/ui/top-nav-items/themed/themed-button.d.ts +10 -0
- package/dist/types/ui/top-nav-items/themed/themed-icon-button.d.ts +10 -0
- package/dist/types/ui/top-nav-items/themed/themed-link-button.d.ts +16 -0
- package/dist/types/ui/top-nav-items/themed/themed-link-icon-button.d.ts +13 -0
- package/dist/types/ui/top-nav-items/themed/themed-pressable.d.ts +18 -0
- package/dist/types/ui/top-nav-items/themed/types.d.ts +54 -0
- package/dist/types/ui/top-nav-items/themed/use-custom-theme-new.d.ts +20 -0
- package/dist/types/ui/top-nav-items/themed/use-custom-theme.d.ts +0 -11
- package/dist/types-ts4.5/context/skip-links/skip-links-context.d.ts +0 -27
- package/dist/types-ts4.5/context/skip-links/use-skip-link-internal.d.ts +10 -0
- package/dist/types-ts4.5/context/skip-links/use-skip-link.d.ts +18 -0
- package/dist/types-ts4.5/context/top-nav-start/top-nav-start-attach-ref.d.ts +1 -0
- package/dist/types-ts4.5/context/top-nav-start/top-nav-start-element.d.ts +1 -0
- package/dist/types-ts4.5/entry-points/experimental/top-nav-button.d.ts +4 -1
- package/dist/types-ts4.5/entry-points/layout/skip-links.d.ts +2 -2
- package/dist/types-ts4.5/ui/page-layout/dangerously-hoist-css-var-to-document-root.d.ts +8 -0
- package/dist/{types/ui/page-layout/hoist-utils.d.ts → types-ts4.5/ui/page-layout/hoist-css-var-to-local-grid.d.ts} +0 -11
- package/dist/types-ts4.5/ui/page-layout/panel-splitter/get-pixel-width.d.ts +4 -0
- package/dist/types-ts4.5/ui/page-layout/panel-splitter/get-width-from-drag-location.d.ts +8 -0
- package/dist/types-ts4.5/ui/page-layout/panel-splitter/is-panel-splitter-drag-data.d.ts +9 -0
- package/dist/types-ts4.5/ui/page-layout/panel-splitter/on-double-click-context.d.ts +8 -0
- package/dist/{types/ui/page-layout/panel-splitter/context.d.ts → types-ts4.5/ui/page-layout/panel-splitter/panel-splitter-context.d.ts} +0 -8
- package/dist/types-ts4.5/ui/page-layout/panel-splitter/panel-splitter-drag-symbol.d.ts +1 -0
- package/dist/types-ts4.5/ui/page-layout/panel-splitter/panel-splitter.d.ts +1 -10
- package/dist/types-ts4.5/ui/page-layout/panel-splitter/provider.d.ts +1 -1
- package/dist/types-ts4.5/ui/page-layout/side-nav/is-side-nav-shortcut-enabled-context.d.ts +6 -11
- package/dist/types-ts4.5/ui/page-layout/side-nav/is-side-nav-shortcut-enabled-provider.d.ts +5 -0
- package/dist/types-ts4.5/ui/page-layout/side-nav/set-side-nav-visibility-state.d.ts +3 -0
- package/dist/types-ts4.5/ui/page-layout/side-nav/side-nav-element-provider.d.ts +4 -0
- package/dist/types-ts4.5/ui/page-layout/side-nav/side-nav-ref-context.d.ts +2 -0
- package/dist/types-ts4.5/ui/page-layout/side-nav/side-nav-toggle-button-attach-ref.d.ts +1 -0
- package/dist/types-ts4.5/ui/page-layout/side-nav/side-nav-toggle-button-element.d.ts +5 -0
- package/dist/{types/ui/page-layout/side-nav/visibility-context.d.ts → types-ts4.5/ui/page-layout/side-nav/side-nav-visibility-state.d.ts} +0 -5
- package/dist/types-ts4.5/ui/page-layout/side-nav/use-is-side-nav-shortcut-enabled.d.ts +5 -0
- package/dist/{types/ui/page-layout/side-nav/element-context.d.ts → types-ts4.5/ui/page-layout/side-nav/use-side-nav-ref.d.ts} +1 -4
- package/dist/types-ts4.5/ui/page-layout/top-nav/top-nav.d.ts +3 -4
- package/dist/{types/ui/page-layout/id-utils.d.ts → types-ts4.5/ui/page-layout/use-layout-id.d.ts} +0 -5
- package/dist/types-ts4.5/ui/page-layout/use-skip-link-id.d.ts +5 -0
- package/dist/types-ts4.5/ui/top-nav-items/themed/button.d.ts +5 -126
- package/dist/types-ts4.5/ui/top-nav-items/themed/get-primitives-spread-props.d.ts +16 -0
- package/dist/types-ts4.5/ui/top-nav-items/themed/icon-button.d.ts +7 -0
- package/dist/types-ts4.5/ui/top-nav-items/themed/link-button.d.ts +3 -0
- package/dist/types-ts4.5/ui/top-nav-items/themed/link-icon-button.d.ts +7 -0
- package/dist/types-ts4.5/ui/top-nav-items/themed/palette-rgba.d.ts +14 -0
- package/dist/types-ts4.5/ui/top-nav-items/themed/palette.d.ts +0 -20
- package/dist/types-ts4.5/ui/top-nav-items/themed/themed-anchor.d.ts +32 -0
- package/dist/types-ts4.5/ui/top-nav-items/themed/themed-button.d.ts +10 -0
- package/dist/types-ts4.5/ui/top-nav-items/themed/themed-icon-button.d.ts +10 -0
- package/dist/types-ts4.5/ui/top-nav-items/themed/themed-link-button.d.ts +16 -0
- package/dist/types-ts4.5/ui/top-nav-items/themed/themed-link-icon-button.d.ts +13 -0
- package/dist/types-ts4.5/ui/top-nav-items/themed/themed-pressable.d.ts +18 -0
- package/dist/types-ts4.5/ui/top-nav-items/themed/types.d.ts +54 -0
- package/dist/types-ts4.5/ui/top-nav-items/themed/use-custom-theme-new.d.ts +20 -0
- package/dist/types-ts4.5/ui/top-nav-items/themed/use-custom-theme.d.ts +0 -11
- package/package.json +13 -16
- package/dist/cjs/context/top-nav-start/top-nav-start-context.js +0 -26
- package/dist/cjs/ui/page-layout/side-nav/toggle-button-context.js +0 -26
- package/dist/cjs/ui/page-layout/side-nav/visibility-context.js +0 -19
- package/dist/cjs/ui/top-nav-items/themed/migration.js +0 -53
- package/dist/es2019/context/top-nav-start/top-nav-start-context.js +0 -20
- package/dist/es2019/ui/page-layout/side-nav/element-context.js +0 -21
- package/dist/es2019/ui/page-layout/side-nav/toggle-button-context.js +0 -19
- package/dist/es2019/ui/top-nav-items/themed/migration.js +0 -45
- package/dist/esm/context/top-nav-start/top-nav-start-context.js +0 -20
- package/dist/esm/ui/page-layout/hoist-utils.js +0 -51
- package/dist/esm/ui/page-layout/side-nav/element-context.js +0 -20
- package/dist/esm/ui/page-layout/side-nav/toggle-button-context.js +0 -19
- package/dist/esm/ui/top-nav-items/themed/migration.js +0 -45
- package/dist/types/context/top-nav-start/top-nav-start-context.d.ts +0 -16
- package/dist/types/ui/page-layout/panel-splitter/get-width.d.ts +0 -16
- package/dist/types/ui/page-layout/side-nav/toggle-button-context.d.ts +0 -16
- package/dist/types/ui/top-nav-items/themed/migration.d.ts +0 -10
- package/dist/types-ts4.5/context/top-nav-start/top-nav-start-context.d.ts +0 -16
- package/dist/types-ts4.5/ui/page-layout/panel-splitter/get-width.d.ts +0 -16
- package/dist/types-ts4.5/ui/page-layout/side-nav/toggle-button-context.d.ts +0 -16
- package/dist/types-ts4.5/ui/top-nav-items/themed/migration.d.ts +0 -10
|
@@ -5,16 +5,19 @@ import { ax, ix } from "@compiled/react/runtime";
|
|
|
5
5
|
import { useContext } from 'react';
|
|
6
6
|
import { fg } from '@atlaskit/platform-feature-flags';
|
|
7
7
|
import { componentWithFG } from '@atlaskit/platform-feature-flags-react';
|
|
8
|
-
import { useSkipLink } from '../../../context/skip-links/skip-
|
|
8
|
+
import { useSkipLink } from '../../../context/skip-links/use-skip-link';
|
|
9
9
|
import { useIsFhsEnabled } from '../../fhs-rollout/use-is-fhs-enabled';
|
|
10
10
|
import { HasCustomThemeContext } from '../../top-nav-items/themed/has-custom-theme-context';
|
|
11
11
|
import { HasDefaultBackgroundColorContext } from '../../top-nav-items/themed/has-default-background-color-context';
|
|
12
|
-
import { useCustomTheme
|
|
12
|
+
import { useCustomTheme } from '../../top-nav-items/themed/use-custom-theme';
|
|
13
|
+
import { useCustomThemeNew } from '../../top-nav-items/themed/use-custom-theme-new';
|
|
13
14
|
import { bannerMountedVar, localSlotLayers, sideNavLiveWidthVar, topNavMountedVar, UNSAFE_topNavVar } from '../constants';
|
|
15
|
+
import { DangerouslyHoistCssVarToDocumentRoot } from '../dangerously-hoist-css-var-to-document-root';
|
|
16
|
+
import { HoistCssVarToLocalGrid } from '../hoist-css-var-to-local-grid';
|
|
14
17
|
import { DangerouslyHoistSlotSizes } from '../hoist-slot-sizes-context';
|
|
15
|
-
import { DangerouslyHoistCssVarToDocumentRoot, HoistCssVarToLocalGrid } from '../hoist-utils';
|
|
16
|
-
import { useLayoutId } from '../id-utils';
|
|
17
18
|
import { useSideNavVisibility } from '../side-nav/use-side-nav-visibility';
|
|
19
|
+
import { useLayoutId } from '../use-layout-id';
|
|
20
|
+
|
|
18
21
|
/**
|
|
19
22
|
* Styles for the container for the top nav items.
|
|
20
23
|
*
|
|
@@ -39,7 +42,7 @@ function TopNavOld({
|
|
|
39
42
|
skipLinkLabel = 'Top Bar',
|
|
40
43
|
testId,
|
|
41
44
|
id: providedId,
|
|
42
|
-
|
|
45
|
+
customTheme: customThemeConfig
|
|
43
46
|
}) {
|
|
44
47
|
const isFhsEnabled = useIsFhsEnabled();
|
|
45
48
|
const dangerouslyHoistSlotSizes = useContext(DangerouslyHoistSlotSizes);
|
|
@@ -49,7 +52,7 @@ function TopNavOld({
|
|
|
49
52
|
useSkipLink(id, skipLinkLabel);
|
|
50
53
|
const hasIncreasedDefaultHeight = isFhsEnabled && fg('platform_dst_nav4_top_nav_increase_height');
|
|
51
54
|
const height = heightProp !== null && heightProp !== void 0 ? heightProp : hasIncreasedDefaultHeight ? 56 : 48;
|
|
52
|
-
const customTheme = useCustomTheme(
|
|
55
|
+
const customTheme = useCustomTheme(customThemeConfig);
|
|
53
56
|
const {
|
|
54
57
|
isExpandedOnDesktop
|
|
55
58
|
} = useSideNavVisibility();
|
|
@@ -89,7 +92,7 @@ function TopNavNew({
|
|
|
89
92
|
skipLinkLabel = 'Top Bar',
|
|
90
93
|
testId,
|
|
91
94
|
id: providedId,
|
|
92
|
-
|
|
95
|
+
customTheme: customThemeConfig
|
|
93
96
|
}) {
|
|
94
97
|
const isFhsEnabled = useIsFhsEnabled();
|
|
95
98
|
const dangerouslyHoistSlotSizes = useContext(DangerouslyHoistSlotSizes);
|
|
@@ -99,7 +102,7 @@ function TopNavNew({
|
|
|
99
102
|
useSkipLink(id, skipLinkLabel);
|
|
100
103
|
const hasIncreasedDefaultHeight = isFhsEnabled && fg('platform_dst_nav4_top_nav_increase_height');
|
|
101
104
|
const height = heightProp !== null && heightProp !== void 0 ? heightProp : hasIncreasedDefaultHeight ? 56 : 48;
|
|
102
|
-
const customTheme = useCustomThemeNew(
|
|
105
|
+
const customTheme = useCustomThemeNew(customThemeConfig);
|
|
103
106
|
const hasDefaultBackground = customTheme.isEnabled ? customTheme.hasDefaultBackground : true;
|
|
104
107
|
const {
|
|
105
108
|
isExpandedOnDesktop
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { useSkipLinkId } from './use-skip-link-id';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Returns an ID for use by the layout element and skip links.
|
|
5
|
+
*
|
|
6
|
+
* If the consumer has already provided an ID, it will be used instead.
|
|
7
|
+
* Otherwise, a unique ID will be returned.
|
|
8
|
+
*/
|
|
9
|
+
export function useLayoutId({
|
|
10
|
+
providedId
|
|
11
|
+
} = {}) {
|
|
12
|
+
const uniqueId = useSkipLinkId();
|
|
13
|
+
const id = providedId ? providedId : uniqueId;
|
|
14
|
+
return id;
|
|
15
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { useEffect } from 'react';
|
|
2
2
|
import { combine } from '@atlaskit/pragmatic-drag-and-drop/combine';
|
|
3
3
|
import { monitorForElements } from '@atlaskit/pragmatic-drag-and-drop/element/adapter';
|
|
4
|
-
import { isPanelSplitterDragData } from './panel-splitter/panel-splitter';
|
|
4
|
+
import { isPanelSplitterDragData } from './panel-splitter/is-panel-splitter-drag-data';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Monitors resizing on the panel splitter with the provided `panelId`
|
|
@@ -9,18 +9,4 @@ import { useId } from '@atlaskit/ds-lib/use-id';
|
|
|
9
9
|
export function useSkipLinkId() {
|
|
10
10
|
const uniqueId = useId();
|
|
11
11
|
return uniqueId;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
/**
|
|
15
|
-
* Returns an ID for use by the layout element and skip links.
|
|
16
|
-
*
|
|
17
|
-
* If the consumer has already provided an ID, it will be used instead.
|
|
18
|
-
* Otherwise, a unique ID will be returned.
|
|
19
|
-
*/
|
|
20
|
-
export function useLayoutId({
|
|
21
|
-
providedId
|
|
22
|
-
} = {}) {
|
|
23
|
-
const uniqueId = useSkipLinkId();
|
|
24
|
-
const id = providedId ? providedId : uniqueId;
|
|
25
|
-
return id;
|
|
26
12
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React, { forwardRef } from 'react';
|
|
2
2
|
import AppSwitcherIcon from '@atlaskit/icon/core/app-switcher';
|
|
3
|
-
import { IconButton } from './themed/
|
|
3
|
+
import { IconButton } from './themed/icon-button';
|
|
4
4
|
const toggleButtonTooltipOptions = {
|
|
5
5
|
// We're disabling pointer events on the tooltip to prevent it from blocking mouse events, so that the side nav flyout stays open
|
|
6
6
|
// when moving the mouse from the top bar to the side nav.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React, { forwardRef } from 'react';
|
|
2
2
|
import LogInIcon from '@atlaskit/icon/core/log-in';
|
|
3
3
|
import { ListItem } from '../../components/list-item';
|
|
4
|
-
import { LinkIconButton } from './themed/
|
|
4
|
+
import { LinkIconButton } from './themed/link-icon-button';
|
|
5
5
|
/**
|
|
6
6
|
* __Log in__
|
|
7
7
|
*
|
|
@@ -7,7 +7,7 @@ import SearchIcon from '@atlaskit/icon/core/search';
|
|
|
7
7
|
import { fg } from '@atlaskit/platform-feature-flags';
|
|
8
8
|
import { Pressable, Show, Text } from '@atlaskit/primitives/compiled';
|
|
9
9
|
import { useIsFhsEnabled } from '../fhs-rollout/use-is-fhs-enabled';
|
|
10
|
-
import { IconButton } from './themed/
|
|
10
|
+
import { IconButton } from './themed/icon-button';
|
|
11
11
|
const styles = {
|
|
12
12
|
root: "_2rko12b0 _1rjcze3t _18zr12x7 _yv0e1mfv _4cvr1h6o _bfhk1j9a _vchhusvi _80om1kdv _1e0cglyw _4t3izwfg _p12f1kvu _1bsb1osq _irr3l4ek _1di6r01l _114b11p5",
|
|
13
13
|
rootT26Shape: "_2rko1qi0",
|
|
@@ -1,350 +1,14 @@
|
|
|
1
|
-
/* button.tsx generated by @compiled/babel-plugin v0.39.1 */
|
|
2
1
|
import _extends from "@babel/runtime/helpers/extends";
|
|
3
|
-
import "./button.compiled.css";
|
|
4
|
-
import { ax, ix } from "@compiled/react/runtime";
|
|
5
2
|
import React, { forwardRef } from 'react';
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
/**
|
|
16
|
-
* Props from primitives that we explicitly ignore and remove from spread props,
|
|
17
|
-
* because they apply styles.
|
|
18
|
-
*
|
|
19
|
-
* `css` / `className` are not here because primitives don't support them.
|
|
20
|
-
*
|
|
21
|
-
* See `packages/design-system/primitives/src/components/anchor.tsx` and `packages/design-system/primitives/src/components/pressable.tsx`
|
|
22
|
-
* for where these are defined. These shouldn't change very often as the direction is `xcss` over individual props.
|
|
23
|
-
*/
|
|
24
|
-
|
|
25
|
-
/**
|
|
26
|
-
* Returns the spread props to pass through to underlying primitive components.
|
|
27
|
-
*
|
|
28
|
-
* It removes the props which apply styles.
|
|
29
|
-
*/
|
|
30
|
-
// eslint-disable no-unused-vars
|
|
31
|
-
function getPrimitiveSpreadProps({
|
|
32
|
-
style,
|
|
33
|
-
xcss,
|
|
34
|
-
backgroundColor,
|
|
35
|
-
padding,
|
|
36
|
-
paddingBlock,
|
|
37
|
-
paddingBlockStart,
|
|
38
|
-
paddingBlockEnd,
|
|
39
|
-
paddingInline,
|
|
40
|
-
paddingInlineStart,
|
|
41
|
-
paddingInlineEnd,
|
|
42
|
-
...props
|
|
43
|
-
}) {
|
|
44
|
-
return props;
|
|
45
|
-
}
|
|
46
|
-
// eslint-enable no-unused-vars
|
|
47
|
-
|
|
48
|
-
/**
|
|
49
|
-
* Props present in underlying primitives but we want to override,
|
|
50
|
-
* so we don't want to inherit their definitions
|
|
51
|
-
*/
|
|
52
|
-
|
|
53
|
-
/**
|
|
54
|
-
* Props that are common between link buttons.
|
|
55
|
-
*/
|
|
56
|
-
|
|
57
|
-
/**
|
|
58
|
-
* Props shared by `Button` and `IconButton`
|
|
59
|
-
*/
|
|
60
|
-
|
|
61
|
-
export const themedButtonBackground = '--ds-top-bar-button-background';
|
|
62
|
-
export const themedButtonBackgroundHovered = '--ds-top-bar-button-background-hovered';
|
|
63
|
-
export const themedButtonBackgroundPressed = '--ds-top-bar-button-background-pressed';
|
|
64
|
-
export const themedButtonBorder = '--ds-top-bar-button-border';
|
|
65
|
-
export const themedButtonPrimaryText = '--ds-top-bar-button-primary-text';
|
|
66
|
-
export const themedButtonPrimaryBackground = '--ds-top-bar-button-primary-background';
|
|
67
|
-
export const themedButtonPrimaryBackgroundHovered = '--ds-top-bar-button-primary-background-hovered';
|
|
68
|
-
export const themedButtonPrimaryBackgroundPressed = '--ds-top-bar-button-primary-background-pressed';
|
|
69
|
-
export const themedButtonSelectedText = '--ds-top-bar-button-selected-text';
|
|
70
|
-
export const themedButtonSelectedBackground = '--ds-top-bar-button-selected-background';
|
|
71
|
-
export const themedButtonSelectedBackgroundHovered = '--ds-top-bar-button-selected-background-hovered';
|
|
72
|
-
export const themedButtonSelectedBackgroundPressed = '--ds-top-bar-button-selected-background-pressed';
|
|
73
|
-
export const themedButtonSelectedBorder = '--ds-top-bar-button-selected-border';
|
|
74
|
-
export const themedButtonDisabledText = '--ds-top-bar-button-disabled-text';
|
|
75
|
-
export const themedButtonDisabledBackground = '--ds-top-bar-button-disabled-background';
|
|
76
|
-
const styles = {
|
|
77
|
-
root: "_zulp12x7 _11c8fhey _2rkofajl _v5649dqc _4bfu1r31 _1hmsglyw _ajmmnqa1 _1rjcze3t _1e0c1txw _4cvr1h6o _1bah1h6o _4t3i5r7u _kqswh2mm _1nrm1r31 _1a3b1r31 _9oik1r31 _c2waglyw _4fprglyw _1bnxglyw _1iohnqa1 _5goinqa1 _jf4cnqa1",
|
|
78
|
-
rootT26Shape: "_2rko1qi0",
|
|
79
|
-
border: "_14mj1kw7 _9v7aze3t _1tv3nqa1 _39yqe4h9 _aetrb3bt _18postnw",
|
|
80
|
-
selected: "_11q71qds _syazw5ct _8l3m15jn _f8pjw5ct _1053w5ct _19lcjrv1 _30l3w5ct _j6xtnh62 _9h8hw5ct",
|
|
81
|
-
disabled: "_11q71c9b _syaz1i3i _8l3m1j28 _f8pj1i3i _10531i3i _19lc1c9b _30l31i3i _j6xt1c9b _9h8h1i3i"
|
|
82
|
-
};
|
|
83
|
-
const shapeStyles = {
|
|
84
|
-
default: "_18zrutpp",
|
|
85
|
-
square: "_18zrze3t _1bsb5r7u _vwz4idpf"
|
|
86
|
-
};
|
|
87
|
-
const appearanceStyles = {
|
|
88
|
-
default: "_11q7pkxg _syaz1r31 _8l3maykr _f8pj1r31 _10531r31 _19lc1rps _30l31r31 _j6xtqtgh _9h8h1r31",
|
|
89
|
-
subtle: "_11q7pkxg _syaz1r31 _f8pj1r31 _10531r31 _19lc1rps _30l31r31 _j6xtqtgh _9h8h1r31",
|
|
90
|
-
primary: "_11q7esko _syaz15o7 _f8pj15o7 _105315o7 _19lcp6hf _30l315o7 _j6xt5sko _9h8h15o7"
|
|
91
|
-
};
|
|
92
|
-
|
|
93
|
-
/**
|
|
94
|
-
* Props shared by `ThemedPressable` and `ThemedAnchor`
|
|
95
|
-
*/
|
|
96
|
-
|
|
97
|
-
/**
|
|
98
|
-
* Intentionally an almost-duplicate of `ThemedAnchor` - make sure to update both.
|
|
99
|
-
*
|
|
100
|
-
* See `ThemedAnchor` for more context.
|
|
101
|
-
*/
|
|
102
|
-
const ThemedPressable = /*#__PURE__*/forwardRef(function ThemedPressable({
|
|
103
|
-
appearance = 'default',
|
|
104
|
-
shape = 'default',
|
|
105
|
-
isSelected,
|
|
106
|
-
isDisabled,
|
|
107
|
-
...props
|
|
108
|
-
}, ref) {
|
|
109
|
-
const hasBorder = appearance === 'default' || isSelected;
|
|
110
|
-
return /*#__PURE__*/React.createElement(Pressable, _extends({}, getPrimitiveSpreadProps(props), {
|
|
111
|
-
ref: ref,
|
|
112
|
-
type: "button"
|
|
113
|
-
/**
|
|
114
|
-
* We are using some style values that are outside of the strict
|
|
115
|
-
* `@atlaskit/css` types.
|
|
116
|
-
*/
|
|
117
|
-
// @ts-expect-error
|
|
118
|
-
// eslint-disable-next-line @compiled/no-suppress-xcss
|
|
119
|
-
,
|
|
120
|
-
xcss: cx(styles.root, fg('platform-dst-shape-theme-default') && styles.rootT26Shape, shapeStyles[shape], hasBorder && styles.border, appearanceStyles[appearance], isSelected && styles.selected, isDisabled && styles.disabled),
|
|
121
|
-
isDisabled: isDisabled
|
|
122
|
-
}));
|
|
123
|
-
});
|
|
124
|
-
function ThemedAnchorFn({
|
|
125
|
-
appearance = 'default',
|
|
126
|
-
shape = 'default',
|
|
127
|
-
isSelected,
|
|
128
|
-
isDisabled,
|
|
129
|
-
...props
|
|
130
|
-
}, ref) {
|
|
131
|
-
const hasBorder = appearance === 'default' || isSelected;
|
|
132
|
-
return /*#__PURE__*/React.createElement(Anchor, _extends({}, getPrimitiveSpreadProps(props), {
|
|
3
|
+
import AkButton from '@atlaskit/button/new';
|
|
4
|
+
import { useHasCustomTheme } from './has-custom-theme-context';
|
|
5
|
+
import { ThemedButton } from './themed-button';
|
|
6
|
+
// Explicitly typed to use only the themed button API,
|
|
7
|
+
// which is a subset of the normal button API
|
|
8
|
+
export const Button = /*#__PURE__*/forwardRef((props, ref) => {
|
|
9
|
+
const hasCustomTheme = useHasCustomTheme();
|
|
10
|
+
const Component = hasCustomTheme ? ThemedButton : AkButton;
|
|
11
|
+
return /*#__PURE__*/React.createElement(Component, _extends({
|
|
133
12
|
ref: ref
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
* `@atlaskit/css` types.
|
|
137
|
-
*/
|
|
138
|
-
// @ts-expect-error
|
|
139
|
-
// eslint-disable-next-line @compiled/no-suppress-xcss
|
|
140
|
-
,
|
|
141
|
-
xcss: cx(styles.root, fg('platform-dst-shape-theme-default') && styles.rootT26Shape, shapeStyles[shape], hasBorder && styles.border, appearanceStyles[appearance], isSelected && styles.selected, isDisabled && styles.disabled)
|
|
142
|
-
}));
|
|
143
|
-
}
|
|
144
|
-
/**
|
|
145
|
-
* Intentionally an almost-duplicate of `ThemedPressable` - make sure to update both.
|
|
146
|
-
*
|
|
147
|
-
* More 'clever' solutions were tried but I couldn't get them working in an acceptable state.
|
|
148
|
-
*
|
|
149
|
-
* Polymorphism had many typing issues and required sacrificing type safety.
|
|
150
|
-
*
|
|
151
|
-
* Render props had problems passing down styles through `xcss` to the `children` function.
|
|
152
|
-
*/
|
|
153
|
-
const ThemedAnchor = forwardRefWithGeneric(ThemedAnchorFn);
|
|
154
|
-
const textButtonStyles = {
|
|
155
|
-
iconBefore: "_vwz4idpf",
|
|
156
|
-
text: "_k48p1wq8"
|
|
157
|
-
};
|
|
158
|
-
|
|
159
|
-
/**
|
|
160
|
-
* Props shared by `Button` and `LinkButton`
|
|
161
|
-
*/
|
|
162
|
-
|
|
163
|
-
/**
|
|
164
|
-
* __Themed button__
|
|
165
|
-
*
|
|
166
|
-
* A themed button for the top bar.
|
|
167
|
-
*/
|
|
168
|
-
export const ThemedButton = /*#__PURE__*/forwardRef(function ThemedButton({
|
|
169
|
-
iconBefore: IconBefore,
|
|
170
|
-
children,
|
|
171
|
-
...props
|
|
172
|
-
}, ref) {
|
|
173
|
-
return /*#__PURE__*/React.createElement(ThemedPressable, _extends({}, props, {
|
|
174
|
-
ref: ref
|
|
175
|
-
}), IconBefore && /*#__PURE__*/React.createElement("span", {
|
|
176
|
-
className: ax([textButtonStyles.iconBefore])
|
|
177
|
-
}, fg('platform_themed_button_use_icon_renderer') ? /*#__PURE__*/React.createElement(IconRenderer, {
|
|
178
|
-
icon: IconBefore
|
|
179
|
-
}) : /*#__PURE__*/React.createElement(IconBefore, {
|
|
180
|
-
label: "",
|
|
181
|
-
color: "currentColor"
|
|
182
|
-
})), /*#__PURE__*/React.createElement("span", {
|
|
183
|
-
className: ax([textButtonStyles.text])
|
|
184
|
-
}, children));
|
|
185
|
-
});
|
|
186
|
-
function ThemedLinkButtonFn({
|
|
187
|
-
iconBefore: IconBefore,
|
|
188
|
-
children,
|
|
189
|
-
...props
|
|
190
|
-
}, ref) {
|
|
191
|
-
return (
|
|
192
|
-
/*#__PURE__*/
|
|
193
|
-
// eslint-disable-next-line @repo/internal/react/no-unsafe-spread-props
|
|
194
|
-
React.createElement(ThemedAnchor, _extends({}, props, {
|
|
195
|
-
ref: ref
|
|
196
|
-
}), IconBefore && /*#__PURE__*/React.createElement("span", {
|
|
197
|
-
className: ax([textButtonStyles.iconBefore])
|
|
198
|
-
}, /*#__PURE__*/React.createElement(IconBefore, {
|
|
199
|
-
label: "",
|
|
200
|
-
color: "currentColor"
|
|
201
|
-
})), /*#__PURE__*/React.createElement("span", {
|
|
202
|
-
className: ax([textButtonStyles.text])
|
|
203
|
-
}, children))
|
|
204
|
-
);
|
|
205
|
-
}
|
|
206
|
-
/**
|
|
207
|
-
* __Themed link button__
|
|
208
|
-
*
|
|
209
|
-
* A themed link button for the top bar.
|
|
210
|
-
*/
|
|
211
|
-
export const ThemedLinkButton = forwardRefWithGeneric(ThemedLinkButtonFn);
|
|
212
|
-
|
|
213
|
-
/**
|
|
214
|
-
* Props shared by `ThemedIconButtonProps` and `ThemedLinkIconButton`
|
|
215
|
-
*/
|
|
216
|
-
|
|
217
|
-
/**
|
|
218
|
-
* __Themed icon button__
|
|
219
|
-
*
|
|
220
|
-
* A themed icon button for the top bar.
|
|
221
|
-
*/
|
|
222
|
-
export const ThemedIconButton = /*#__PURE__*/forwardRef(function ThemedIconButton({
|
|
223
|
-
icon: Icon,
|
|
224
|
-
label,
|
|
225
|
-
tooltip,
|
|
226
|
-
...props
|
|
227
|
-
}, ref) {
|
|
228
|
-
var _tooltip$content;
|
|
229
|
-
return /*#__PURE__*/React.createElement(Tooltip, _extends({}, tooltip, {
|
|
230
|
-
content: (_tooltip$content = tooltip === null || tooltip === void 0 ? void 0 : tooltip.content) !== null && _tooltip$content !== void 0 ? _tooltip$content : label
|
|
231
|
-
}), triggerProps =>
|
|
232
|
-
/*#__PURE__*/
|
|
233
|
-
/**
|
|
234
|
-
* The `aria-describedby` from `triggerProps` is intentionally not passed down,
|
|
235
|
-
* because it would cause double announcements with the `VisuallyHidden` label.
|
|
236
|
-
*
|
|
237
|
-
* The `@atlaskit/button` IconButton uses the same approach.
|
|
238
|
-
*/
|
|
239
|
-
React.createElement(ThemedPressable, _extends({}, props, {
|
|
240
|
-
shape: "square",
|
|
241
|
-
ref: mergeRefs([ref, triggerProps.ref]),
|
|
242
|
-
onClick: (event, analyticsEvent) => {
|
|
243
|
-
var _props$onClick, _triggerProps$onClick;
|
|
244
|
-
(_props$onClick = props.onClick) === null || _props$onClick === void 0 ? void 0 : _props$onClick.call(props, event, analyticsEvent);
|
|
245
|
-
triggerProps === null || triggerProps === void 0 ? void 0 : (_triggerProps$onClick = triggerProps.onClick) === null || _triggerProps$onClick === void 0 ? void 0 : _triggerProps$onClick.call(triggerProps, event);
|
|
246
|
-
},
|
|
247
|
-
onMouseOver: e => {
|
|
248
|
-
var _triggerProps$onMouse, _props$onMouseOver;
|
|
249
|
-
(_triggerProps$onMouse = triggerProps.onMouseOver) === null || _triggerProps$onMouse === void 0 ? void 0 : _triggerProps$onMouse.call(triggerProps, e);
|
|
250
|
-
(_props$onMouseOver = props.onMouseOver) === null || _props$onMouseOver === void 0 ? void 0 : _props$onMouseOver.call(props, e);
|
|
251
|
-
},
|
|
252
|
-
onMouseOut: e => {
|
|
253
|
-
var _triggerProps$onMouse2, _props$onMouseOut;
|
|
254
|
-
(_triggerProps$onMouse2 = triggerProps.onMouseOut) === null || _triggerProps$onMouse2 === void 0 ? void 0 : _triggerProps$onMouse2.call(triggerProps, e);
|
|
255
|
-
(_props$onMouseOut = props.onMouseOut) === null || _props$onMouseOut === void 0 ? void 0 : _props$onMouseOut.call(props, e);
|
|
256
|
-
},
|
|
257
|
-
onMouseMove: e => {
|
|
258
|
-
var _triggerProps$onMouse3, _props$onMouseMove;
|
|
259
|
-
(_triggerProps$onMouse3 = triggerProps.onMouseMove) === null || _triggerProps$onMouse3 === void 0 ? void 0 : _triggerProps$onMouse3.call(triggerProps, e);
|
|
260
|
-
(_props$onMouseMove = props.onMouseMove) === null || _props$onMouseMove === void 0 ? void 0 : _props$onMouseMove.call(props, e);
|
|
261
|
-
},
|
|
262
|
-
onMouseDown: e => {
|
|
263
|
-
var _triggerProps$onMouse4, _props$onMouseDown;
|
|
264
|
-
(_triggerProps$onMouse4 = triggerProps.onMouseDown) === null || _triggerProps$onMouse4 === void 0 ? void 0 : _triggerProps$onMouse4.call(triggerProps, e);
|
|
265
|
-
(_props$onMouseDown = props.onMouseDown) === null || _props$onMouseDown === void 0 ? void 0 : _props$onMouseDown.call(props, e);
|
|
266
|
-
},
|
|
267
|
-
onFocus: e => {
|
|
268
|
-
var _triggerProps$onFocus, _props$onFocus;
|
|
269
|
-
(_triggerProps$onFocus = triggerProps.onFocus) === null || _triggerProps$onFocus === void 0 ? void 0 : _triggerProps$onFocus.call(triggerProps, e);
|
|
270
|
-
(_props$onFocus = props.onFocus) === null || _props$onFocus === void 0 ? void 0 : _props$onFocus.call(props, e);
|
|
271
|
-
},
|
|
272
|
-
onBlur: e => {
|
|
273
|
-
var _triggerProps$onBlur, _props$onBlur;
|
|
274
|
-
(_triggerProps$onBlur = triggerProps.onBlur) === null || _triggerProps$onBlur === void 0 ? void 0 : _triggerProps$onBlur.call(triggerProps, e);
|
|
275
|
-
(_props$onBlur = props.onBlur) === null || _props$onBlur === void 0 ? void 0 : _props$onBlur.call(props, e);
|
|
276
|
-
}
|
|
277
|
-
}), fg('platform_themed_button_use_icon_renderer') ? /*#__PURE__*/React.createElement(IconRenderer, {
|
|
278
|
-
icon: Icon
|
|
279
|
-
}) : /*#__PURE__*/React.createElement(Icon, {
|
|
280
|
-
label: "",
|
|
281
|
-
color: "currentColor"
|
|
282
|
-
}), /*#__PURE__*/React.createElement(VisuallyHidden, null, label)));
|
|
283
|
-
});
|
|
284
|
-
function ThemedLinkIconButtonFn({
|
|
285
|
-
icon: Icon,
|
|
286
|
-
label,
|
|
287
|
-
tooltip,
|
|
288
|
-
...props
|
|
289
|
-
}, ref) {
|
|
290
|
-
var _tooltip$content2;
|
|
291
|
-
return /*#__PURE__*/React.createElement(Tooltip, _extends({}, tooltip, {
|
|
292
|
-
content: (_tooltip$content2 = tooltip === null || tooltip === void 0 ? void 0 : tooltip.content) !== null && _tooltip$content2 !== void 0 ? _tooltip$content2 : label
|
|
293
|
-
}), triggerProps =>
|
|
294
|
-
/*#__PURE__*/
|
|
295
|
-
/**
|
|
296
|
-
* The `aria-describedby` from `triggerProps` is intentionally not passed down,
|
|
297
|
-
* because it would cause double announcements with the `VisuallyHidden` label.
|
|
298
|
-
*
|
|
299
|
-
* The `@atlaskit/button` IconButton uses the same approach.
|
|
300
|
-
*/
|
|
301
|
-
React.createElement(ThemedAnchor, _extends({}, props, {
|
|
302
|
-
shape: "square",
|
|
303
|
-
ref: mergeRefs([ref, triggerProps.ref]),
|
|
304
|
-
onClick: (event, analyticsEvent) => {
|
|
305
|
-
var _props$onClick2, _triggerProps$onClick2;
|
|
306
|
-
(_props$onClick2 = props.onClick) === null || _props$onClick2 === void 0 ? void 0 : _props$onClick2.call(props, event, analyticsEvent);
|
|
307
|
-
triggerProps === null || triggerProps === void 0 ? void 0 : (_triggerProps$onClick2 = triggerProps.onClick) === null || _triggerProps$onClick2 === void 0 ? void 0 : _triggerProps$onClick2.call(triggerProps, event);
|
|
308
|
-
},
|
|
309
|
-
onMouseOver: e => {
|
|
310
|
-
var _triggerProps$onMouse5, _props$onMouseOver2;
|
|
311
|
-
(_triggerProps$onMouse5 = triggerProps.onMouseOver) === null || _triggerProps$onMouse5 === void 0 ? void 0 : _triggerProps$onMouse5.call(triggerProps, e);
|
|
312
|
-
(_props$onMouseOver2 = props.onMouseOver) === null || _props$onMouseOver2 === void 0 ? void 0 : _props$onMouseOver2.call(props, e);
|
|
313
|
-
},
|
|
314
|
-
onMouseOut: e => {
|
|
315
|
-
var _triggerProps$onMouse6, _props$onMouseOut2;
|
|
316
|
-
(_triggerProps$onMouse6 = triggerProps.onMouseOut) === null || _triggerProps$onMouse6 === void 0 ? void 0 : _triggerProps$onMouse6.call(triggerProps, e);
|
|
317
|
-
(_props$onMouseOut2 = props.onMouseOut) === null || _props$onMouseOut2 === void 0 ? void 0 : _props$onMouseOut2.call(props, e);
|
|
318
|
-
},
|
|
319
|
-
onMouseMove: e => {
|
|
320
|
-
var _triggerProps$onMouse7, _props$onMouseMove2;
|
|
321
|
-
(_triggerProps$onMouse7 = triggerProps.onMouseMove) === null || _triggerProps$onMouse7 === void 0 ? void 0 : _triggerProps$onMouse7.call(triggerProps, e);
|
|
322
|
-
(_props$onMouseMove2 = props.onMouseMove) === null || _props$onMouseMove2 === void 0 ? void 0 : _props$onMouseMove2.call(props, e);
|
|
323
|
-
},
|
|
324
|
-
onMouseDown: e => {
|
|
325
|
-
var _triggerProps$onMouse8, _props$onMouseDown2;
|
|
326
|
-
(_triggerProps$onMouse8 = triggerProps.onMouseDown) === null || _triggerProps$onMouse8 === void 0 ? void 0 : _triggerProps$onMouse8.call(triggerProps, e);
|
|
327
|
-
(_props$onMouseDown2 = props.onMouseDown) === null || _props$onMouseDown2 === void 0 ? void 0 : _props$onMouseDown2.call(props, e);
|
|
328
|
-
},
|
|
329
|
-
onFocus: e => {
|
|
330
|
-
var _triggerProps$onFocus2, _props$onFocus2;
|
|
331
|
-
(_triggerProps$onFocus2 = triggerProps.onFocus) === null || _triggerProps$onFocus2 === void 0 ? void 0 : _triggerProps$onFocus2.call(triggerProps, e);
|
|
332
|
-
(_props$onFocus2 = props.onFocus) === null || _props$onFocus2 === void 0 ? void 0 : _props$onFocus2.call(props, e);
|
|
333
|
-
},
|
|
334
|
-
onBlur: e => {
|
|
335
|
-
var _triggerProps$onBlur2, _props$onBlur2;
|
|
336
|
-
(_triggerProps$onBlur2 = triggerProps.onBlur) === null || _triggerProps$onBlur2 === void 0 ? void 0 : _triggerProps$onBlur2.call(triggerProps, e);
|
|
337
|
-
(_props$onBlur2 = props.onBlur) === null || _props$onBlur2 === void 0 ? void 0 : _props$onBlur2.call(props, e);
|
|
338
|
-
}
|
|
339
|
-
}), /*#__PURE__*/React.createElement(Icon, {
|
|
340
|
-
label: "",
|
|
341
|
-
color: "currentColor"
|
|
342
|
-
}), /*#__PURE__*/React.createElement(VisuallyHidden, null, label)));
|
|
343
|
-
}
|
|
344
|
-
|
|
345
|
-
/**
|
|
346
|
-
* __Themed link icon button__
|
|
347
|
-
*
|
|
348
|
-
* A themed link icon button for the top bar.
|
|
349
|
-
*/
|
|
350
|
-
export const ThemedLinkIconButton = forwardRefWithGeneric(ThemedLinkIconButtonFn);
|
|
13
|
+
}, props));
|
|
14
|
+
});
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { themedLogoIcon, themedLogoText } from '../nav-logo/logo-renderer';
|
|
2
|
-
import { themedButtonBackground, themedButtonBackgroundHovered, themedButtonBackgroundPressed, themedButtonBorder, themedButtonDisabledBackground, themedButtonDisabledText, themedButtonPrimaryBackground, themedButtonPrimaryBackgroundHovered, themedButtonPrimaryBackgroundPressed, themedButtonPrimaryText, themedButtonSelectedBackground, themedButtonSelectedBackgroundHovered, themedButtonSelectedBackgroundPressed, themedButtonSelectedBorder, themedButtonSelectedText } from './button';
|
|
3
2
|
import { getColorMode, getTextColor, isLight, simpleAlphaComposite } from './color-utils';
|
|
4
3
|
import { parseHex } from './color-utils/formats/hex';
|
|
5
|
-
import { palette
|
|
4
|
+
import { palette } from './palette';
|
|
5
|
+
import { paletteRgba } from './palette-rgba';
|
|
6
6
|
import { themedSearchBorder, themedSearchBorderFocused } from './search';
|
|
7
7
|
|
|
8
8
|
/**
|
|
@@ -35,32 +35,32 @@ function toRGBAString({
|
|
|
35
35
|
// Values here are not final
|
|
36
36
|
const buttonStyles = {
|
|
37
37
|
light: {
|
|
38
|
-
[
|
|
39
|
-
[
|
|
40
|
-
[
|
|
41
|
-
[
|
|
42
|
-
[
|
|
43
|
-
[
|
|
44
|
-
[
|
|
45
|
-
[
|
|
46
|
-
[
|
|
38
|
+
['--ds-top-bar-button-background']: 'transparent',
|
|
39
|
+
['--ds-top-bar-button-background-hovered']: palette.Neutral200A,
|
|
40
|
+
['--ds-top-bar-button-background-pressed']: palette.Neutral300A,
|
|
41
|
+
['--ds-top-bar-button-border']: palette.Neutral300A,
|
|
42
|
+
['--ds-top-bar-button-selected-background']: palette.Neutral300A,
|
|
43
|
+
['--ds-top-bar-button-selected-background-hovered']: palette.Neutral400A,
|
|
44
|
+
['--ds-top-bar-button-selected-background-pressed']: palette.Neutral500A,
|
|
45
|
+
['--ds-top-bar-button-disabled-text']: palette.Neutral400A,
|
|
46
|
+
['--ds-top-bar-button-disabled-background']: palette.Neutral100A
|
|
47
47
|
},
|
|
48
48
|
dark: {
|
|
49
|
-
[
|
|
50
|
-
[
|
|
51
|
-
[
|
|
52
|
-
[
|
|
53
|
-
[
|
|
54
|
-
[
|
|
55
|
-
[
|
|
56
|
-
[
|
|
57
|
-
[
|
|
49
|
+
['--ds-top-bar-button-background']: 'transparent',
|
|
50
|
+
['--ds-top-bar-button-background-hovered']: palette.DarkNeutral200A,
|
|
51
|
+
['--ds-top-bar-button-background-pressed']: palette.DarkNeutral300A,
|
|
52
|
+
['--ds-top-bar-button-border']: palette.DarkNeutral300A,
|
|
53
|
+
['--ds-top-bar-button-selected-background']: palette.DarkNeutral300A,
|
|
54
|
+
['--ds-top-bar-button-selected-background-hovered']: palette.DarkNeutral400A,
|
|
55
|
+
['--ds-top-bar-button-selected-background-pressed']: palette.DarkNeutral500A,
|
|
56
|
+
['--ds-top-bar-button-disabled-text']: palette.DarkNeutral400A,
|
|
57
|
+
['--ds-top-bar-button-disabled-background']: palette.DarkNeutral100A
|
|
58
58
|
}
|
|
59
59
|
};
|
|
60
60
|
const logoStyles = {
|
|
61
61
|
light: {
|
|
62
|
-
[
|
|
63
|
-
[
|
|
62
|
+
['--ds-top-bar-logo-icon']: palette.DarkNeutral0,
|
|
63
|
+
['--ds-top-bar-logo-text']: palette.DarkNeutral0
|
|
64
64
|
},
|
|
65
65
|
dark: {
|
|
66
66
|
[themedLogoIcon]: palette.Neutral0,
|
|
@@ -111,16 +111,16 @@ export function getCustomThemeStyles({
|
|
|
111
111
|
* except the text color which can sometimes differ because we're
|
|
112
112
|
* now following WCAG
|
|
113
113
|
*/
|
|
114
|
-
[
|
|
115
|
-
[
|
|
114
|
+
['--ds-top-bar-button-primary-background']: toRGBString(highlightRgb),
|
|
115
|
+
['--ds-top-bar-button-primary-background-hovered']: toRGBAString({
|
|
116
116
|
...highlightRgb,
|
|
117
117
|
a: 0.8
|
|
118
118
|
}),
|
|
119
|
-
[
|
|
119
|
+
['--ds-top-bar-button-primary-background-pressed']: toRGBAString({
|
|
120
120
|
...highlightRgb,
|
|
121
121
|
a: 0.65
|
|
122
122
|
}),
|
|
123
|
-
[
|
|
123
|
+
['--ds-top-bar-button-primary-text']: highlightTextColor.hex
|
|
124
124
|
};
|
|
125
125
|
}
|
|
126
126
|
|
|
@@ -151,8 +151,8 @@ function getSelectedStyles({
|
|
|
151
151
|
foreground: foregroundColor
|
|
152
152
|
});
|
|
153
153
|
return {
|
|
154
|
-
[
|
|
154
|
+
['--ds-top-bar-button-selected-text']: getTextColor(blendedBackground).hex,
|
|
155
155
|
// Border colors are chosen to match the text, while remaining in the palette
|
|
156
|
-
[
|
|
156
|
+
['--ds-top-bar-button-selected-border']: isLight(blendedBackground) ? palette.Neutral1100 : palette.DarkNeutral1100
|
|
157
157
|
};
|
|
158
158
|
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Props from primitives that we explicitly ignore and remove from spread props,
|
|
3
|
+
* because they apply styles.
|
|
4
|
+
*
|
|
5
|
+
* `css` / `className` are not here because primitives don't support them.
|
|
6
|
+
*
|
|
7
|
+
* See `packages/design-system/primitives/src/components/anchor.tsx` and `packages/design-system/primitives/src/components/pressable.tsx`
|
|
8
|
+
* for where these are defined. These shouldn't change very often as the direction is `xcss` over individual props.
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Returns the spread props to pass through to underlying primitive components.
|
|
13
|
+
*
|
|
14
|
+
* It removes the props which apply styles.
|
|
15
|
+
*/
|
|
16
|
+
// eslint-disable no-unused-vars
|
|
17
|
+
export function getPrimitiveSpreadProps({
|
|
18
|
+
style,
|
|
19
|
+
xcss,
|
|
20
|
+
backgroundColor,
|
|
21
|
+
padding,
|
|
22
|
+
paddingBlock,
|
|
23
|
+
paddingBlockStart,
|
|
24
|
+
paddingBlockEnd,
|
|
25
|
+
paddingInline,
|
|
26
|
+
paddingInlineStart,
|
|
27
|
+
paddingInlineEnd,
|
|
28
|
+
...props
|
|
29
|
+
}) {
|
|
30
|
+
return props;
|
|
31
|
+
}
|