outline.less 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185
  1. @outline-v-rhythm: 24px;
  2. @outline-h-rhythm: 24px;
  3. @outline-item-h-padding: @outline-h-rhythm * 0.25;
  4. .outline-container {
  5. width: 100%;
  6. max-height: 50%; // While we don't support resizing.
  7. background-color: @file-tree-bg;
  8. }
  9. .outline-pane {
  10. display: flex;
  11. flex-flow: column;
  12. height: 100%;
  13. font-size: @font-size-small;
  14. color: #fff;
  15. }
  16. .outline-pane-disabled {
  17. opacity: 0.5;
  18. }
  19. .outline-header {
  20. .toolbar-small-mixin;
  21. .toolbar-alt-mixin;
  22. display: flex;
  23. align-items: center;
  24. padding-right: @outline-h-rhythm * 0.25;
  25. flex-shrink: 0;
  26. }
  27. .outline-header-expand-collapse-btn {
  28. display: inline-block;
  29. background-color: transparent;
  30. border: 0;
  31. padding: 0;
  32. font-size: inherit;
  33. vertical-align: inherit;
  34. color: #fff;
  35. flex-grow: 1;
  36. text-align: left;
  37. white-space: nowrap;
  38. overflow: hidden;
  39. border-radius: @border-radius-base;
  40. text-overflow: ellipsis;
  41. &:hover,
  42. &:focus {
  43. outline: 0;
  44. background-color: @ol-blue-gray-5;
  45. }
  46. }
  47. .outline-header-name {
  48. display: inline-block;
  49. font-family: @font-family-sans-serif;
  50. font-size: @font-size-small;
  51. color: #fff;
  52. margin: 0;
  53. }
  54. .outline-header-beta-badge {
  55. display: inline-block;
  56. border-radius: @border-radius-base;
  57. background-color: @orange;
  58. width: @outline-h-rhythm * 0.75;
  59. height: @outline-v-rhythm * 0.75;
  60. line-height: @outline-v-rhythm * 0.75;
  61. text-align: center;
  62. cursor: pointer;
  63. color: #fff;
  64. &::before {
  65. content: 'β';
  66. }
  67. &:hover,
  68. &:focus {
  69. color: #fff;
  70. text-decoration: none;
  71. }
  72. }
  73. .outline-body {
  74. overflow-y: auto;
  75. background-color: @file-tree-bg;
  76. padding-right: @outline-h-rhythm * 0.25;
  77. }
  78. .outline-body-no-elements {
  79. color: @ol-blue-gray-2;
  80. text-align: center;
  81. padding: @outline-v-rhythm @outline-h-rhythm (@outline-v-rhythm * 2);
  82. margin-right: -(@outline-h-rhythm * 0.25);
  83. }
  84. .outline-body-link {
  85. display: block;
  86. color: #fff;
  87. text-decoration: underline;
  88. &:hover,
  89. &:focus {
  90. color: #fff;
  91. text-decoration: underline;
  92. }
  93. }
  94. .outline-item-list {
  95. position: relative;
  96. list-style: none;
  97. padding-left: @outline-h-rhythm;
  98. &::before {
  99. content: '';
  100. background-color: @ol-blue-gray-3;
  101. top: @outline-h-rhythm / 4;
  102. bottom: @outline-h-rhythm / 4;
  103. width: 1px;
  104. left: (@outline-h-rhythm * 1.5);
  105. position: absolute;
  106. }
  107. &.outline-item-list-root {
  108. padding-left: 0;
  109. &::before {
  110. left: (@outline-h-rhythm * 0.5);
  111. }
  112. }
  113. }
  114. .outline-item {
  115. }
  116. .outline-item-no-children {
  117. padding-left: @outline-h-rhythm - @outline-item-h-padding;
  118. }
  119. .outline-item-row {
  120. display: flex;
  121. overflow: hidden;
  122. white-space: nowrap;
  123. }
  124. .outline-item-expand-collapse-btn {
  125. display: inline;
  126. border: 0;
  127. padding: 0;
  128. font-size: inherit;
  129. vertical-align: inherit;
  130. position: relative;
  131. z-index: 1;
  132. background-color: @file-tree-bg;
  133. color: @ol-blue-gray-2;
  134. margin-right: -(@outline-item-h-padding);
  135. border-radius: @border-radius-base;
  136. &:hover,
  137. &:focus {
  138. outline: 0;
  139. background-color: @ol-blue-gray-5;
  140. }
  141. }
  142. .outline-item-link {
  143. display: inline;
  144. color: #fff;
  145. background-color: transparent;
  146. border: 0;
  147. position: relative;
  148. z-index: 1;
  149. padding: 0 @outline-item-h-padding;
  150. line-height: @outline-v-rhythm;
  151. border-radius: @border-radius-base;
  152. overflow: hidden;
  153. text-overflow: ellipsis;
  154. &:hover,
  155. &:focus {
  156. outline: 0;
  157. background-color: @ol-blue-gray-5;
  158. }
  159. }
  160. .outline-caret-icon {
  161. width: @outline-h-rhythm;
  162. font-size: 17px;
  163. text-align: center;
  164. }