PrimaryItems.module.scss 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. @use '@growi/core/scss/bootstrap/init' as bs;
  2. @use '../button-styles';
  3. @use '../variables' as var;
  4. @use './variables' as sidebarNavVar;
  5. .grw-primary-items :global {
  6. .btn {
  7. @extend %btn-primary-basis;
  8. height: sidebarNavVar.$grw-sidebar-primary-button-height;
  9. i {
  10. opacity: 0.7;
  11. &:hover,
  12. &:focus {
  13. opacity: 0.8;
  14. }
  15. }
  16. }
  17. }
  18. // Add indicator
  19. .grw-primary-items :global {
  20. $btn-height: sidebarNavVar.$grw-sidebar-primary-button-height;
  21. $btn-active-indicator-height: 34px;
  22. .btn {
  23. &.active {
  24. position: relative;
  25. // indicator
  26. &:after {
  27. position: absolute;
  28. top: 0;
  29. left: 0;
  30. display: block;
  31. width: 3px;
  32. height: $btn-active-indicator-height;
  33. content: '';
  34. background-color: var(--bs-primary);
  35. transform: translateY(#{($btn-height - $btn-active-indicator-height) / 2});
  36. }
  37. }
  38. }
  39. }
  40. // == Colors
  41. .grw-primary-items :global {
  42. .btn.btn-primary {
  43. @extend %btn-primary-color-vars;
  44. }
  45. }
  46. @include bs.color-mode(light) {
  47. .grw-primary-items :global {
  48. .btn-primary {
  49. --bs-btn-color: var(--grw-sidebar-nav-btn-color, var(--grw-primary-600));
  50. --bs-btn-hover-bg: var(--grw-sidebar-nav-btn-hover-bg, var(--grw-highlight-300));
  51. }
  52. }
  53. }
  54. @include bs.color-mode(dark) {
  55. .grw-primary-items :global {
  56. .btn-primary {
  57. --bs-btn-color: var(--grw-sidebar-nav-btn-color, var(--grw-primary-300));
  58. --bs-btn-hover-bg: var(--grw-sidebar-nav-btn-hover-bg, var(--grw-highlight-700));
  59. }
  60. }
  61. }