@atlaskit/navigation-system 7.3.0 → 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 +11 -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 -4
- package/dist/cjs/ui/page-layout/root.js +3 -3
- 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 -2
- package/dist/es2019/ui/page-layout/root.js +2 -2
- 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 -2
- package/dist/esm/ui/page-layout/root.js +2 -2
- 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 -13
- 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
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
|
2
|
+
import React, { forwardRef } from 'react';
|
|
3
|
+
import { IconButton as AkIconButton } from '@atlaskit/button/new';
|
|
4
|
+
import { useHasCustomTheme } from './has-custom-theme-context';
|
|
5
|
+
import { ThemedIconButton } from './themed-icon-button';
|
|
6
|
+
export const IconButton = /*#__PURE__*/forwardRef((props, ref) => {
|
|
7
|
+
const hasCustomTheme = useHasCustomTheme();
|
|
8
|
+
const Component = hasCustomTheme ? ThemedIconButton : AkIconButton;
|
|
9
|
+
return /*#__PURE__*/React.createElement(Component, _extends({
|
|
10
|
+
ref: ref
|
|
11
|
+
}, props));
|
|
12
|
+
});
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
|
2
|
+
import React, { forwardRef } from 'react';
|
|
3
|
+
import { LinkButton as AkLinkButton } from '@atlaskit/button/new';
|
|
4
|
+
import { useHasCustomTheme } from './has-custom-theme-context';
|
|
5
|
+
import { ThemedLinkButton } from './themed-link-button';
|
|
6
|
+
export const LinkButton = /*#__PURE__*/forwardRef((props, ref) => {
|
|
7
|
+
const hasCustomTheme = useHasCustomTheme();
|
|
8
|
+
const Component = hasCustomTheme ? ThemedLinkButton : AkLinkButton;
|
|
9
|
+
return /*#__PURE__*/React.createElement(Component, _extends({
|
|
10
|
+
ref: ref
|
|
11
|
+
}, props));
|
|
12
|
+
});
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
|
2
|
+
import React, { forwardRef } from 'react';
|
|
3
|
+
import { LinkIconButton as AkLinkIconButton } from '@atlaskit/button/new';
|
|
4
|
+
import { useHasCustomTheme } from './has-custom-theme-context';
|
|
5
|
+
import { ThemedLinkIconButton } from './themed-link-icon-button';
|
|
6
|
+
export const LinkIconButton = /*#__PURE__*/forwardRef((props, ref) => {
|
|
7
|
+
const hasCustomTheme = useHasCustomTheme();
|
|
8
|
+
const Component = hasCustomTheme ? ThemedLinkIconButton : AkLinkIconButton;
|
|
9
|
+
return /*#__PURE__*/React.createElement(Component, _extends({
|
|
10
|
+
ref: ref
|
|
11
|
+
}, props));
|
|
12
|
+
});
|
|
@@ -1,9 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copied from the brand refresh palette.
|
|
3
|
-
*
|
|
4
|
-
* Ideally we'd codegen this but the brand refresh palette isn't exposed
|
|
5
|
-
* through public API and we shouldn't use the private API of another package.
|
|
6
|
-
*/
|
|
7
1
|
export const palette = {
|
|
8
2
|
'DarkNeutral-100': '#111213',
|
|
9
3
|
'DarkNeutral-100A': '#01040475',
|
|
@@ -45,18 +39,4 @@ export const palette = {
|
|
|
45
39
|
Neutral900: '#3B3D42',
|
|
46
40
|
Neutral1000: '#292A2E',
|
|
47
41
|
Neutral1100: '#1E1F21'
|
|
48
|
-
};
|
|
49
|
-
export const paletteRgba = {
|
|
50
|
-
DarkNeutral300A: {
|
|
51
|
-
r: 0xe3,
|
|
52
|
-
g: 0xe4,
|
|
53
|
-
b: 0xf2,
|
|
54
|
-
a: 0x1f / 255
|
|
55
|
-
},
|
|
56
|
-
Neutral300A: {
|
|
57
|
-
r: 0x0b,
|
|
58
|
-
g: 0x12,
|
|
59
|
-
b: 0x0e,
|
|
60
|
-
a: 0x24 / 255
|
|
61
|
-
}
|
|
62
42
|
};
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { themedButtonBackgroundHovered } from './button';
|
|
2
1
|
import { useHasCustomTheme } from './has-custom-theme-context';
|
|
3
2
|
export const themedSearchBorder = '--ds-top-bar-search-border';
|
|
4
3
|
export const themedSearchBorderFocused = '--ds-top-bar-search-border-focused';
|
|
@@ -33,7 +32,7 @@ const legacySearchTheme = {
|
|
|
33
32
|
*
|
|
34
33
|
* Instead it's used as the hover background color for a close button when on mobile.
|
|
35
34
|
*/
|
|
36
|
-
backgroundColor: `var(
|
|
35
|
+
backgroundColor: `var(--ds-top-bar-button-background-hovered)`
|
|
37
36
|
}
|
|
38
37
|
};
|
|
39
38
|
|
package/dist/es2019/ui/top-nav-items/themed/{button.compiled.css → themed-anchor.compiled.css}
RENAMED
|
@@ -28,7 +28,6 @@
|
|
|
28
28
|
._4t3i5r7u{height:2.2857142857142856em}
|
|
29
29
|
._aetrb3bt:after{content:""}
|
|
30
30
|
._ajmmnqa1{text-decoration-style:solid}
|
|
31
|
-
._k48p1wq8{font-weight:var(--ds-font-weight-medium,500)}
|
|
32
31
|
._kqswh2mm{position:relative}
|
|
33
32
|
._syaz15o7{color:var(--ds-top-bar-button-primary-text)}
|
|
34
33
|
._syaz1i3i{color:var(--ds-top-bar-button-disabled-text)}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/* themed-anchor.tsx generated by @compiled/babel-plugin v0.39.1 */
|
|
2
|
+
import _extends from "@babel/runtime/helpers/extends";
|
|
3
|
+
import "./themed-anchor.compiled.css";
|
|
4
|
+
import { ax, ix } from "@compiled/react/runtime";
|
|
5
|
+
import React from 'react';
|
|
6
|
+
import { cx } from '@compiled/react';
|
|
7
|
+
import forwardRefWithGeneric from '@atlaskit/ds-lib/forward-ref-with-generic';
|
|
8
|
+
import { fg } from '@atlaskit/platform-feature-flags';
|
|
9
|
+
import { Anchor } from '@atlaskit/primitives/compiled';
|
|
10
|
+
import { getPrimitiveSpreadProps } from './get-primitives-spread-props';
|
|
11
|
+
const styles = {
|
|
12
|
+
root: "_zulp12x7 _11c8fhey _2rkofajl _v5649dqc _4bfu1r31 _1hmsglyw _ajmmnqa1 _1rjcze3t _1e0c1txw _4cvr1h6o _1bah1h6o _4t3i5r7u _kqswh2mm _1nrm1r31 _1a3b1r31 _9oik1r31 _c2waglyw _4fprglyw _1bnxglyw _1iohnqa1 _5goinqa1 _jf4cnqa1",
|
|
13
|
+
rootT26Shape: "_2rko1qi0",
|
|
14
|
+
border: "_14mj1kw7 _9v7aze3t _1tv3nqa1 _39yqe4h9 _aetrb3bt _18postnw",
|
|
15
|
+
selected: "_11q71qds _syazw5ct _8l3m15jn _f8pjw5ct _1053w5ct _19lcjrv1 _30l3w5ct _j6xtnh62 _9h8hw5ct",
|
|
16
|
+
disabled: "_11q71c9b _syaz1i3i _8l3m1j28 _f8pj1i3i _10531i3i _19lc1c9b _30l31i3i _j6xt1c9b _9h8h1i3i"
|
|
17
|
+
};
|
|
18
|
+
const appearanceStyles = {
|
|
19
|
+
default: "_11q7pkxg _syaz1r31 _8l3maykr _f8pj1r31 _10531r31 _19lc1rps _30l31r31 _j6xtqtgh _9h8h1r31",
|
|
20
|
+
subtle: "_11q7pkxg _syaz1r31 _f8pj1r31 _10531r31 _19lc1rps _30l31r31 _j6xtqtgh _9h8h1r31",
|
|
21
|
+
primary: "_11q7esko _syaz15o7 _f8pj15o7 _105315o7 _19lcp6hf _30l315o7 _j6xt5sko _9h8h15o7"
|
|
22
|
+
};
|
|
23
|
+
const shapeStyles = {
|
|
24
|
+
default: "_18zrutpp",
|
|
25
|
+
square: "_18zrze3t _1bsb5r7u _vwz4idpf"
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Props that are common between link buttons.
|
|
30
|
+
*/
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Props shared by `ThemedPressable` and `ThemedAnchor`
|
|
34
|
+
*/
|
|
35
|
+
|
|
36
|
+
function ThemedAnchorFn({
|
|
37
|
+
appearance = 'default',
|
|
38
|
+
shape = 'default',
|
|
39
|
+
isSelected,
|
|
40
|
+
isDisabled,
|
|
41
|
+
...props
|
|
42
|
+
}, ref) {
|
|
43
|
+
const hasBorder = appearance === 'default' || isSelected;
|
|
44
|
+
return /*#__PURE__*/React.createElement(Anchor, _extends({}, getPrimitiveSpreadProps(props), {
|
|
45
|
+
ref: ref
|
|
46
|
+
/**
|
|
47
|
+
* We are using some style values that are outside of the strict
|
|
48
|
+
* `@atlaskit/css` types.
|
|
49
|
+
*/
|
|
50
|
+
// @ts-expect-error
|
|
51
|
+
// eslint-disable-next-line @compiled/no-suppress-xcss
|
|
52
|
+
,
|
|
53
|
+
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)
|
|
54
|
+
}));
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* Intentionally an almost-duplicate of `ThemedPressable` - make sure to update both.
|
|
59
|
+
*
|
|
60
|
+
* More 'clever' solutions were tried but I couldn't get them working in an acceptable state.
|
|
61
|
+
*
|
|
62
|
+
* Polymorphism had many typing issues and required sacrificing type safety.
|
|
63
|
+
*
|
|
64
|
+
* Render props had problems passing down styles through `xcss` to the `children` function.
|
|
65
|
+
*/
|
|
66
|
+
export const ThemedAnchor = forwardRefWithGeneric(ThemedAnchorFn);
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/* themed-button.tsx generated by @compiled/babel-plugin v0.39.1 */
|
|
2
|
+
import _extends from "@babel/runtime/helpers/extends";
|
|
3
|
+
import "./themed-button.compiled.css";
|
|
4
|
+
import { ax, ix } from "@compiled/react/runtime";
|
|
5
|
+
import React, { forwardRef } from 'react';
|
|
6
|
+
import { fg } from '@atlaskit/platform-feature-flags';
|
|
7
|
+
import IconRenderer from '../icon-renderer';
|
|
8
|
+
import { ThemedPressable } from './themed-pressable';
|
|
9
|
+
const textButtonStyles = {
|
|
10
|
+
iconBefore: "_vwz4idpf",
|
|
11
|
+
text: "_k48p1wq8"
|
|
12
|
+
};
|
|
13
|
+
export const ThemedButton = /*#__PURE__*/forwardRef(function ThemedButton({
|
|
14
|
+
iconBefore: IconBefore,
|
|
15
|
+
children,
|
|
16
|
+
...props
|
|
17
|
+
}, ref) {
|
|
18
|
+
return /*#__PURE__*/React.createElement(ThemedPressable, _extends({}, props, {
|
|
19
|
+
ref: ref
|
|
20
|
+
}), IconBefore && /*#__PURE__*/React.createElement("span", {
|
|
21
|
+
className: ax([textButtonStyles.iconBefore])
|
|
22
|
+
}, fg('platform_themed_button_use_icon_renderer') ? /*#__PURE__*/React.createElement(IconRenderer, {
|
|
23
|
+
icon: IconBefore
|
|
24
|
+
}) : /*#__PURE__*/React.createElement(IconBefore, {
|
|
25
|
+
label: "",
|
|
26
|
+
color: "currentColor"
|
|
27
|
+
})), /*#__PURE__*/React.createElement("span", {
|
|
28
|
+
className: ax([textButtonStyles.text])
|
|
29
|
+
}, children));
|
|
30
|
+
});
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/* themed-icon-button.tsx generated by @compiled/babel-plugin v0.39.1 */
|
|
2
|
+
import _extends from "@babel/runtime/helpers/extends";
|
|
3
|
+
import { ax, ix } from "@compiled/react/runtime";
|
|
4
|
+
import React, { forwardRef } from 'react';
|
|
5
|
+
import mergeRefs from '@atlaskit/ds-lib/merge-refs';
|
|
6
|
+
import { fg } from '@atlaskit/platform-feature-flags';
|
|
7
|
+
import Tooltip from '@atlaskit/tooltip';
|
|
8
|
+
import VisuallyHidden from '@atlaskit/visually-hidden';
|
|
9
|
+
import IconRenderer from '../icon-renderer';
|
|
10
|
+
import { ThemedPressable } from './themed-pressable';
|
|
11
|
+
export const ThemedIconButton = /*#__PURE__*/forwardRef(function ThemedIconButton({
|
|
12
|
+
icon: Icon,
|
|
13
|
+
label,
|
|
14
|
+
tooltip,
|
|
15
|
+
...props
|
|
16
|
+
}, ref) {
|
|
17
|
+
var _tooltip$content;
|
|
18
|
+
return /*#__PURE__*/React.createElement(Tooltip, _extends({}, tooltip, {
|
|
19
|
+
content: (_tooltip$content = tooltip === null || tooltip === void 0 ? void 0 : tooltip.content) !== null && _tooltip$content !== void 0 ? _tooltip$content : label
|
|
20
|
+
}), triggerProps =>
|
|
21
|
+
/*#__PURE__*/
|
|
22
|
+
/**
|
|
23
|
+
* The `aria-describedby` from `triggerProps` is intentionally not passed down,
|
|
24
|
+
* because it would cause double announcements with the `VisuallyHidden` label.
|
|
25
|
+
*
|
|
26
|
+
* The `@atlaskit/button` IconButton uses the same approach.
|
|
27
|
+
*/
|
|
28
|
+
React.createElement(ThemedPressable, _extends({}, props, {
|
|
29
|
+
shape: "square",
|
|
30
|
+
ref: mergeRefs([ref, triggerProps.ref]),
|
|
31
|
+
onClick: (event, analyticsEvent) => {
|
|
32
|
+
var _props$onClick, _triggerProps$onClick;
|
|
33
|
+
(_props$onClick = props.onClick) === null || _props$onClick === void 0 ? void 0 : _props$onClick.call(props, event, analyticsEvent);
|
|
34
|
+
triggerProps === null || triggerProps === void 0 ? void 0 : (_triggerProps$onClick = triggerProps.onClick) === null || _triggerProps$onClick === void 0 ? void 0 : _triggerProps$onClick.call(triggerProps, event);
|
|
35
|
+
},
|
|
36
|
+
onMouseOver: e => {
|
|
37
|
+
var _triggerProps$onMouse, _props$onMouseOver;
|
|
38
|
+
(_triggerProps$onMouse = triggerProps.onMouseOver) === null || _triggerProps$onMouse === void 0 ? void 0 : _triggerProps$onMouse.call(triggerProps, e);
|
|
39
|
+
(_props$onMouseOver = props.onMouseOver) === null || _props$onMouseOver === void 0 ? void 0 : _props$onMouseOver.call(props, e);
|
|
40
|
+
},
|
|
41
|
+
onMouseOut: e => {
|
|
42
|
+
var _triggerProps$onMouse2, _props$onMouseOut;
|
|
43
|
+
(_triggerProps$onMouse2 = triggerProps.onMouseOut) === null || _triggerProps$onMouse2 === void 0 ? void 0 : _triggerProps$onMouse2.call(triggerProps, e);
|
|
44
|
+
(_props$onMouseOut = props.onMouseOut) === null || _props$onMouseOut === void 0 ? void 0 : _props$onMouseOut.call(props, e);
|
|
45
|
+
},
|
|
46
|
+
onMouseMove: e => {
|
|
47
|
+
var _triggerProps$onMouse3, _props$onMouseMove;
|
|
48
|
+
(_triggerProps$onMouse3 = triggerProps.onMouseMove) === null || _triggerProps$onMouse3 === void 0 ? void 0 : _triggerProps$onMouse3.call(triggerProps, e);
|
|
49
|
+
(_props$onMouseMove = props.onMouseMove) === null || _props$onMouseMove === void 0 ? void 0 : _props$onMouseMove.call(props, e);
|
|
50
|
+
},
|
|
51
|
+
onMouseDown: e => {
|
|
52
|
+
var _triggerProps$onMouse4, _props$onMouseDown;
|
|
53
|
+
(_triggerProps$onMouse4 = triggerProps.onMouseDown) === null || _triggerProps$onMouse4 === void 0 ? void 0 : _triggerProps$onMouse4.call(triggerProps, e);
|
|
54
|
+
(_props$onMouseDown = props.onMouseDown) === null || _props$onMouseDown === void 0 ? void 0 : _props$onMouseDown.call(props, e);
|
|
55
|
+
},
|
|
56
|
+
onFocus: e => {
|
|
57
|
+
var _triggerProps$onFocus, _props$onFocus;
|
|
58
|
+
(_triggerProps$onFocus = triggerProps.onFocus) === null || _triggerProps$onFocus === void 0 ? void 0 : _triggerProps$onFocus.call(triggerProps, e);
|
|
59
|
+
(_props$onFocus = props.onFocus) === null || _props$onFocus === void 0 ? void 0 : _props$onFocus.call(props, e);
|
|
60
|
+
},
|
|
61
|
+
onBlur: e => {
|
|
62
|
+
var _triggerProps$onBlur, _props$onBlur;
|
|
63
|
+
(_triggerProps$onBlur = triggerProps.onBlur) === null || _triggerProps$onBlur === void 0 ? void 0 : _triggerProps$onBlur.call(triggerProps, e);
|
|
64
|
+
(_props$onBlur = props.onBlur) === null || _props$onBlur === void 0 ? void 0 : _props$onBlur.call(props, e);
|
|
65
|
+
}
|
|
66
|
+
}), fg('platform_themed_button_use_icon_renderer') ? /*#__PURE__*/React.createElement(IconRenderer, {
|
|
67
|
+
icon: Icon
|
|
68
|
+
}) : /*#__PURE__*/React.createElement(Icon, {
|
|
69
|
+
label: "",
|
|
70
|
+
color: "currentColor"
|
|
71
|
+
}), /*#__PURE__*/React.createElement(VisuallyHidden, null, label)));
|
|
72
|
+
});
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/* themed-link-button.tsx generated by @compiled/babel-plugin v0.39.1 */
|
|
2
|
+
import _extends from "@babel/runtime/helpers/extends";
|
|
3
|
+
import "./themed-link-button.compiled.css";
|
|
4
|
+
import { ax, ix } from "@compiled/react/runtime";
|
|
5
|
+
import React from 'react';
|
|
6
|
+
import forwardRefWithGeneric from '@atlaskit/ds-lib/forward-ref-with-generic';
|
|
7
|
+
import { ThemedAnchor } from './themed-anchor';
|
|
8
|
+
const textButtonStyles = {
|
|
9
|
+
iconBefore: "_vwz4idpf",
|
|
10
|
+
text: "_k48p1wq8"
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Props that are common between link buttons.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
function ThemedLinkButtonFn({
|
|
18
|
+
iconBefore: IconBefore,
|
|
19
|
+
children,
|
|
20
|
+
...props
|
|
21
|
+
}, ref) {
|
|
22
|
+
return (
|
|
23
|
+
/*#__PURE__*/
|
|
24
|
+
// eslint-disable-next-line @repo/internal/react/no-unsafe-spread-props
|
|
25
|
+
React.createElement(ThemedAnchor, _extends({}, props, {
|
|
26
|
+
ref: ref
|
|
27
|
+
}), IconBefore && /*#__PURE__*/React.createElement("span", {
|
|
28
|
+
className: ax([textButtonStyles.iconBefore])
|
|
29
|
+
}, /*#__PURE__*/React.createElement(IconBefore, {
|
|
30
|
+
label: "",
|
|
31
|
+
color: "currentColor"
|
|
32
|
+
})), /*#__PURE__*/React.createElement("span", {
|
|
33
|
+
className: ax([textButtonStyles.text])
|
|
34
|
+
}, children))
|
|
35
|
+
);
|
|
36
|
+
}
|
|
37
|
+
export const ThemedLinkButton = forwardRefWithGeneric(ThemedLinkButtonFn);
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import forwardRefWithGeneric from '@atlaskit/ds-lib/forward-ref-with-generic';
|
|
4
|
+
import mergeRefs from '@atlaskit/ds-lib/merge-refs';
|
|
5
|
+
import Tooltip from '@atlaskit/tooltip';
|
|
6
|
+
import VisuallyHidden from '@atlaskit/visually-hidden';
|
|
7
|
+
import { ThemedAnchor } from './themed-anchor';
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Props that are common between link buttons.
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
function ThemedLinkIconButtonFn({
|
|
14
|
+
icon: Icon,
|
|
15
|
+
label,
|
|
16
|
+
tooltip,
|
|
17
|
+
...props
|
|
18
|
+
}, ref) {
|
|
19
|
+
var _tooltip$content;
|
|
20
|
+
return /*#__PURE__*/React.createElement(Tooltip, _extends({}, tooltip, {
|
|
21
|
+
content: (_tooltip$content = tooltip === null || tooltip === void 0 ? void 0 : tooltip.content) !== null && _tooltip$content !== void 0 ? _tooltip$content : label
|
|
22
|
+
}), triggerProps =>
|
|
23
|
+
/*#__PURE__*/
|
|
24
|
+
/**
|
|
25
|
+
* The `aria-describedby` from `triggerProps` is intentionally not passed down,
|
|
26
|
+
* because it would cause double announcements with the `VisuallyHidden` label.
|
|
27
|
+
*
|
|
28
|
+
* The `@atlaskit/button` IconButton uses the same approach.
|
|
29
|
+
*/
|
|
30
|
+
React.createElement(ThemedAnchor, _extends({}, props, {
|
|
31
|
+
shape: "square",
|
|
32
|
+
ref: mergeRefs([ref, triggerProps.ref]),
|
|
33
|
+
onClick: (event, analyticsEvent) => {
|
|
34
|
+
var _props$onClick, _triggerProps$onClick;
|
|
35
|
+
(_props$onClick = props.onClick) === null || _props$onClick === void 0 ? void 0 : _props$onClick.call(props, event, analyticsEvent);
|
|
36
|
+
triggerProps === null || triggerProps === void 0 ? void 0 : (_triggerProps$onClick = triggerProps.onClick) === null || _triggerProps$onClick === void 0 ? void 0 : _triggerProps$onClick.call(triggerProps, event);
|
|
37
|
+
},
|
|
38
|
+
onMouseOver: e => {
|
|
39
|
+
var _triggerProps$onMouse, _props$onMouseOver;
|
|
40
|
+
(_triggerProps$onMouse = triggerProps.onMouseOver) === null || _triggerProps$onMouse === void 0 ? void 0 : _triggerProps$onMouse.call(triggerProps, e);
|
|
41
|
+
(_props$onMouseOver = props.onMouseOver) === null || _props$onMouseOver === void 0 ? void 0 : _props$onMouseOver.call(props, e);
|
|
42
|
+
},
|
|
43
|
+
onMouseOut: e => {
|
|
44
|
+
var _triggerProps$onMouse2, _props$onMouseOut;
|
|
45
|
+
(_triggerProps$onMouse2 = triggerProps.onMouseOut) === null || _triggerProps$onMouse2 === void 0 ? void 0 : _triggerProps$onMouse2.call(triggerProps, e);
|
|
46
|
+
(_props$onMouseOut = props.onMouseOut) === null || _props$onMouseOut === void 0 ? void 0 : _props$onMouseOut.call(props, e);
|
|
47
|
+
},
|
|
48
|
+
onMouseMove: e => {
|
|
49
|
+
var _triggerProps$onMouse3, _props$onMouseMove;
|
|
50
|
+
(_triggerProps$onMouse3 = triggerProps.onMouseMove) === null || _triggerProps$onMouse3 === void 0 ? void 0 : _triggerProps$onMouse3.call(triggerProps, e);
|
|
51
|
+
(_props$onMouseMove = props.onMouseMove) === null || _props$onMouseMove === void 0 ? void 0 : _props$onMouseMove.call(props, e);
|
|
52
|
+
},
|
|
53
|
+
onMouseDown: e => {
|
|
54
|
+
var _triggerProps$onMouse4, _props$onMouseDown;
|
|
55
|
+
(_triggerProps$onMouse4 = triggerProps.onMouseDown) === null || _triggerProps$onMouse4 === void 0 ? void 0 : _triggerProps$onMouse4.call(triggerProps, e);
|
|
56
|
+
(_props$onMouseDown = props.onMouseDown) === null || _props$onMouseDown === void 0 ? void 0 : _props$onMouseDown.call(props, e);
|
|
57
|
+
},
|
|
58
|
+
onFocus: e => {
|
|
59
|
+
var _triggerProps$onFocus, _props$onFocus;
|
|
60
|
+
(_triggerProps$onFocus = triggerProps.onFocus) === null || _triggerProps$onFocus === void 0 ? void 0 : _triggerProps$onFocus.call(triggerProps, e);
|
|
61
|
+
(_props$onFocus = props.onFocus) === null || _props$onFocus === void 0 ? void 0 : _props$onFocus.call(props, e);
|
|
62
|
+
},
|
|
63
|
+
onBlur: e => {
|
|
64
|
+
var _triggerProps$onBlur, _props$onBlur;
|
|
65
|
+
(_triggerProps$onBlur = triggerProps.onBlur) === null || _triggerProps$onBlur === void 0 ? void 0 : _triggerProps$onBlur.call(triggerProps, e);
|
|
66
|
+
(_props$onBlur = props.onBlur) === null || _props$onBlur === void 0 ? void 0 : _props$onBlur.call(props, e);
|
|
67
|
+
}
|
|
68
|
+
}), /*#__PURE__*/React.createElement(Icon, {
|
|
69
|
+
label: "",
|
|
70
|
+
color: "currentColor"
|
|
71
|
+
}), /*#__PURE__*/React.createElement(VisuallyHidden, null, label)));
|
|
72
|
+
}
|
|
73
|
+
export const ThemedLinkIconButton = forwardRefWithGeneric(ThemedLinkIconButtonFn);
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
|
|
2
|
+
._11c8fhey{font:var(--ds-font-body,normal 400 14px/20px "Atlassian Sans",ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Ubuntu,"Helvetica Neue",sans-serif)}
|
|
3
|
+
._11q71c9b{background:var(--ds-top-bar-button-disabled-background)}
|
|
4
|
+
._11q71qds{background:var(--ds-top-bar-button-selected-background)}
|
|
5
|
+
._11q7esko{background:var(--ds-top-bar-button-primary-background)}
|
|
6
|
+
._11q7pkxg{background:var(--ds-top-bar-button-background)}
|
|
7
|
+
._14mj1kw7:after{border-radius:inherit}
|
|
8
|
+
._2rko1qi0{border-radius:var(--ds-radius-medium,6px)}
|
|
9
|
+
._2rkofajl{border-radius:var(--ds-radius-small,3px)}
|
|
10
|
+
._9v7aze3t:after{inset:var(--ds-space-0,0)}
|
|
11
|
+
._v5649dqc{transition:background .1s ease-out}
|
|
12
|
+
._zulp12x7{gap:var(--ds-space-075,6px)}
|
|
13
|
+
._18zrutpp{padding-inline:var(--ds-space-150,9pt)}
|
|
14
|
+
._18zrze3t{padding-inline:var(--ds-space-0,0)}
|
|
15
|
+
._1rjcze3t{padding-block:var(--ds-space-0,0)}
|
|
16
|
+
._1tv3nqa1:after{border-style:solid}
|
|
17
|
+
._39yqe4h9:after{border-width:var(--ds-border-width,1px)}
|
|
18
|
+
._8l3m15jn:after{border-color:var(--ds-top-bar-button-selected-border)}
|
|
19
|
+
._8l3m1j28:after{border-color:transparent}
|
|
20
|
+
._8l3maykr:after{border-color:var(--ds-top-bar-button-border)}
|
|
21
|
+
._18postnw:after{position:absolute}
|
|
22
|
+
._1bah1h6o{justify-content:center}
|
|
23
|
+
._1bsb5r7u{width:2.2857142857142856em}
|
|
24
|
+
._1e0c1txw{display:flex}
|
|
25
|
+
._1hmsglyw{text-decoration-line:none}
|
|
26
|
+
._4bfu1r31{text-decoration-color:currentColor}
|
|
27
|
+
._4cvr1h6o{align-items:center}
|
|
28
|
+
._4t3i5r7u{height:2.2857142857142856em}
|
|
29
|
+
._aetrb3bt:after{content:""}
|
|
30
|
+
._ajmmnqa1{text-decoration-style:solid}
|
|
31
|
+
._kqswh2mm{position:relative}
|
|
32
|
+
._syaz15o7{color:var(--ds-top-bar-button-primary-text)}
|
|
33
|
+
._syaz1i3i{color:var(--ds-top-bar-button-disabled-text)}
|
|
34
|
+
._syaz1r31{color:currentColor}
|
|
35
|
+
._syazw5ct{color:var(--ds-top-bar-button-selected-text)}
|
|
36
|
+
._vwz4idpf{line-height:0}._105315o7:visited{color:var(--ds-top-bar-button-primary-text)}
|
|
37
|
+
._10531i3i:visited{color:var(--ds-top-bar-button-disabled-text)}
|
|
38
|
+
._10531r31:visited{color:currentColor}
|
|
39
|
+
._1053w5ct:visited{color:var(--ds-top-bar-button-selected-text)}
|
|
40
|
+
._1a3b1r31:focus{text-decoration-color:currentColor}
|
|
41
|
+
._4fprglyw:focus{text-decoration-line:none}
|
|
42
|
+
._5goinqa1:focus{text-decoration-style:solid}
|
|
43
|
+
._f8pj15o7:focus{color:var(--ds-top-bar-button-primary-text)}
|
|
44
|
+
._f8pj1i3i:focus{color:var(--ds-top-bar-button-disabled-text)}
|
|
45
|
+
._f8pj1r31:focus{color:currentColor}
|
|
46
|
+
._f8pjw5ct:focus{color:var(--ds-top-bar-button-selected-text)}
|
|
47
|
+
._19lc1c9b:hover{background:var(--ds-top-bar-button-disabled-background)}
|
|
48
|
+
._19lc1rps:hover{background:var(--ds-top-bar-button-background-hovered)}
|
|
49
|
+
._19lcjrv1:hover{background:var(--ds-top-bar-button-selected-background-hovered)}
|
|
50
|
+
._19lcp6hf:hover{background:var(--ds-top-bar-button-primary-background-hovered)}
|
|
51
|
+
._1bnxglyw:hover{text-decoration-line:none}
|
|
52
|
+
._30l315o7:hover{color:var(--ds-top-bar-button-primary-text)}
|
|
53
|
+
._30l31i3i:hover{color:var(--ds-top-bar-button-disabled-text)}
|
|
54
|
+
._30l31r31:hover{color:currentColor}
|
|
55
|
+
._30l3w5ct:hover{color:var(--ds-top-bar-button-selected-text)}
|
|
56
|
+
._9oik1r31:hover{text-decoration-color:currentColor}
|
|
57
|
+
._jf4cnqa1:hover{text-decoration-style:solid}
|
|
58
|
+
._j6xt1c9b:active{background:var(--ds-top-bar-button-disabled-background)}
|
|
59
|
+
._j6xt5sko:active{background:var(--ds-top-bar-button-primary-background-pressed)}
|
|
60
|
+
._j6xtnh62:active{background:var(--ds-top-bar-button-selected-background-pressed)}
|
|
61
|
+
._j6xtqtgh:active{background:var(--ds-top-bar-button-background-pressed)}
|
|
62
|
+
._1iohnqa1:active{text-decoration-style:solid}
|
|
63
|
+
._1nrm1r31:active{text-decoration-color:currentColor}
|
|
64
|
+
._9h8h15o7:active{color:var(--ds-top-bar-button-primary-text)}
|
|
65
|
+
._9h8h1i3i:active{color:var(--ds-top-bar-button-disabled-text)}
|
|
66
|
+
._9h8h1r31:active{color:currentColor}
|
|
67
|
+
._9h8hw5ct:active{color:var(--ds-top-bar-button-selected-text)}
|
|
68
|
+
._c2waglyw:active{text-decoration-line:none}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/* themed-pressable.tsx generated by @compiled/babel-plugin v0.39.1 */
|
|
2
|
+
import _extends from "@babel/runtime/helpers/extends";
|
|
3
|
+
import "./themed-pressable.compiled.css";
|
|
4
|
+
import { ax, ix } from "@compiled/react/runtime";
|
|
5
|
+
import React, { forwardRef } from 'react';
|
|
6
|
+
import { cx } from '@compiled/react';
|
|
7
|
+
import { fg } from '@atlaskit/platform-feature-flags';
|
|
8
|
+
import { Pressable } from '@atlaskit/primitives/compiled';
|
|
9
|
+
import { getPrimitiveSpreadProps } from './get-primitives-spread-props';
|
|
10
|
+
const styles = {
|
|
11
|
+
root: "_zulp12x7 _11c8fhey _2rkofajl _v5649dqc _4bfu1r31 _1hmsglyw _ajmmnqa1 _1rjcze3t _1e0c1txw _4cvr1h6o _1bah1h6o _4t3i5r7u _kqswh2mm _1nrm1r31 _1a3b1r31 _9oik1r31 _c2waglyw _4fprglyw _1bnxglyw _1iohnqa1 _5goinqa1 _jf4cnqa1",
|
|
12
|
+
rootT26Shape: "_2rko1qi0",
|
|
13
|
+
border: "_14mj1kw7 _9v7aze3t _1tv3nqa1 _39yqe4h9 _aetrb3bt _18postnw",
|
|
14
|
+
selected: "_11q71qds _syazw5ct _8l3m15jn _f8pjw5ct _1053w5ct _19lcjrv1 _30l3w5ct _j6xtnh62 _9h8hw5ct",
|
|
15
|
+
disabled: "_11q71c9b _syaz1i3i _8l3m1j28 _f8pj1i3i _10531i3i _19lc1c9b _30l31i3i _j6xt1c9b _9h8h1i3i"
|
|
16
|
+
};
|
|
17
|
+
const shapeStyles = {
|
|
18
|
+
default: "_18zrutpp",
|
|
19
|
+
square: "_18zrze3t _1bsb5r7u _vwz4idpf"
|
|
20
|
+
};
|
|
21
|
+
const appearanceStyles = {
|
|
22
|
+
default: "_11q7pkxg _syaz1r31 _8l3maykr _f8pj1r31 _10531r31 _19lc1rps _30l31r31 _j6xtqtgh _9h8h1r31",
|
|
23
|
+
subtle: "_11q7pkxg _syaz1r31 _f8pj1r31 _10531r31 _19lc1rps _30l31r31 _j6xtqtgh _9h8h1r31",
|
|
24
|
+
primary: "_11q7esko _syaz15o7 _f8pj15o7 _105315o7 _19lcp6hf _30l315o7 _j6xt5sko _9h8h15o7"
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* Props shared by `ThemedPressable` and `ThemedAnchor`
|
|
29
|
+
*/
|
|
30
|
+
|
|
31
|
+
export const ThemedPressable = /*#__PURE__*/forwardRef(function ThemedPressable({
|
|
32
|
+
appearance = 'default',
|
|
33
|
+
shape = 'default',
|
|
34
|
+
isSelected,
|
|
35
|
+
isDisabled,
|
|
36
|
+
...props
|
|
37
|
+
}, ref) {
|
|
38
|
+
const hasBorder = appearance === 'default' || isSelected;
|
|
39
|
+
return /*#__PURE__*/React.createElement(Pressable, _extends({}, getPrimitiveSpreadProps(props), {
|
|
40
|
+
ref: ref,
|
|
41
|
+
type: "button"
|
|
42
|
+
/**
|
|
43
|
+
* We are using some style values that are outside of the strict
|
|
44
|
+
* `@atlaskit/css` types.
|
|
45
|
+
*/
|
|
46
|
+
// @ts-expect-error
|
|
47
|
+
// eslint-disable-next-line @compiled/no-suppress-xcss
|
|
48
|
+
,
|
|
49
|
+
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),
|
|
50
|
+
isDisabled: isDisabled
|
|
51
|
+
}));
|
|
52
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { useMemo } from 'react';
|
|
2
|
+
import { useColorMode } from '@atlaskit/app-provider';
|
|
3
|
+
import { getTokenValue } from '@atlaskit/tokens';
|
|
4
|
+
import { parseHex } from './color-utils/formats/hex';
|
|
5
|
+
import { useCustomTheme } from './use-custom-theme';
|
|
6
|
+
function toRGBString({
|
|
7
|
+
r,
|
|
8
|
+
g,
|
|
9
|
+
b
|
|
10
|
+
}) {
|
|
11
|
+
return `rgb(${r}, ${g}, ${b})`;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* React hook that computes the custom theme style for the top navigation bar.
|
|
15
|
+
*
|
|
16
|
+
* Determines whether a custom theme is enabled, computes the resulting style,
|
|
17
|
+
* and checks if the background color matches the default for the current color mode.
|
|
18
|
+
*
|
|
19
|
+
* @param theme Optional custom theme configuration object.
|
|
20
|
+
* @returns An object indicating if the custom theme is enabled, the computed style,
|
|
21
|
+
* and a flag specifying if the default background color is used.
|
|
22
|
+
*/
|
|
23
|
+
export function useCustomThemeNew(theme) {
|
|
24
|
+
const value = useCustomTheme(theme);
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* We use the color mode to determine the default background color for the top nav.
|
|
28
|
+
* We need to use the hook because the user could change their color mode preference.
|
|
29
|
+
*/
|
|
30
|
+
const colorMode = useColorMode();
|
|
31
|
+
const hasDefaultBackground = useMemo(() => {
|
|
32
|
+
if (!value.isEnabled) {
|
|
33
|
+
return true;
|
|
34
|
+
}
|
|
35
|
+
const defaultBackground = parseHex(getTokenValue('elevation.surface', colorMode === 'light' ? '#FFFFFF' : '#1F1F21'));
|
|
36
|
+
return defaultBackground ? value.style.backgroundColor === toRGBString(defaultBackground) : true;
|
|
37
|
+
}, [value, colorMode]);
|
|
38
|
+
if (value.isEnabled) {
|
|
39
|
+
return {
|
|
40
|
+
...value,
|
|
41
|
+
hasDefaultBackground
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
return value;
|
|
45
|
+
}
|
|
@@ -1,43 +1,5 @@
|
|
|
1
1
|
import { useMemo } from 'react';
|
|
2
|
-
import { useColorMode } from '@atlaskit/app-provider';
|
|
3
|
-
import { getTokenValue } from '@atlaskit/tokens';
|
|
4
|
-
import { parseHex } from './color-utils/formats/hex';
|
|
5
2
|
import { getCustomThemeStyles } from './get-custom-theme-styles';
|
|
6
|
-
function toRGBString({
|
|
7
|
-
r,
|
|
8
|
-
g,
|
|
9
|
-
b
|
|
10
|
-
}) {
|
|
11
|
-
return `rgb(${r}, ${g}, ${b})`;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
// TODO: Fill in the hook {description}.
|
|
15
|
-
/**
|
|
16
|
-
* {description}.
|
|
17
|
-
*/
|
|
18
|
-
export function useCustomThemeNew(theme) {
|
|
19
|
-
const value = useCustomTheme(theme);
|
|
20
|
-
|
|
21
|
-
/**
|
|
22
|
-
* We use the color mode to determine the default background color for the top nav.
|
|
23
|
-
* We need to use the hook because the user could change their color mode preference.
|
|
24
|
-
*/
|
|
25
|
-
const colorMode = useColorMode();
|
|
26
|
-
const hasDefaultBackground = useMemo(() => {
|
|
27
|
-
if (!value.isEnabled) {
|
|
28
|
-
return true;
|
|
29
|
-
}
|
|
30
|
-
const defaultBackground = parseHex(getTokenValue('elevation.surface', colorMode === 'light' ? '#FFFFFF' : '#1F1F21'));
|
|
31
|
-
return defaultBackground ? value.style.backgroundColor === toRGBString(defaultBackground) : true;
|
|
32
|
-
}, [value, colorMode]);
|
|
33
|
-
if (value.isEnabled) {
|
|
34
|
-
return {
|
|
35
|
-
...value,
|
|
36
|
-
hasDefaultBackground
|
|
37
|
-
};
|
|
38
|
-
}
|
|
39
|
-
return value;
|
|
40
|
-
}
|
|
41
3
|
/**
|
|
42
4
|
* Processes the provided theme and returns theme styles if possible.
|
|
43
5
|
*/
|