about summary refs log tree commit diff
path: root/app/javascript/styles/stream_entries.scss
diff options
context:
space:
mode:
Diffstat (limited to 'app/javascript/styles/stream_entries.scss')
-rw-r--r--app/javascript/styles/stream_entries.scss372
1 files changed, 372 insertions, 0 deletions
diff --git a/app/javascript/styles/stream_entries.scss b/app/javascript/styles/stream_entries.scss
new file mode 100644
index 000000000..fac4703b9
--- /dev/null
+++ b/app/javascript/styles/stream_entries.scss
@@ -0,0 +1,372 @@
+.activity-stream {
+  clear: both;
+  box-shadow: 0 0 15px rgba($color8, 0.2);
+
+  .entry {
+    background: $color5;
+
+    .detailed-status.light, .status.light {
+      border-bottom: 1px solid $color2;
+    }
+
+    &:last-child {
+      &, .detailed-status.light, .status.light {
+        border-bottom: 0;
+        border-radius: 0 0 4px 4px;
+      }
+    }
+
+    &:first-child {
+      &, .detailed-status.light, .status.light {
+        border-radius: 4px 4px 0 0;
+      }
+
+      &:last-child {
+        &, .detailed-status.light, .status.light {
+          border-radius: 4px;
+        }
+      }
+    }
+  }
+
+  .status.light {
+    padding: 14px 14px 14px (48px + 14px*2);
+    position: relative;
+    min-height: 48px;
+    cursor: default;
+
+    .status__header {
+      font-size: 15px;
+
+      .status__meta {
+        float: right;
+        font-size: 14px;
+
+        .status__relative-time {
+          color: $color4;
+        }
+      }
+    }
+
+    .status__display-name {
+      display: block;
+      max-width: 100%;
+      padding-right: 25px;
+      color: $color1;
+    }
+
+    .status__avatar {
+      position: absolute;
+      left: 14px;
+      top: 14px;
+      width: 48px;
+      height: 48px;
+
+      & > div {
+        width: 48px;
+        height: 48px;
+      }
+
+      img {
+        display: block;
+        border-radius: 4px;
+      }
+    }
+
+    .display-name {
+      display: block;
+      max-width: 100%;
+      overflow: hidden;
+      white-space: nowrap;
+      text-overflow: ellipsis;
+
+      strong {
+        font-weight: 500;
+        color: $color1;
+      }
+
+      span {
+        font-size: 14px;
+        color: $color4;
+      }
+    }
+
+    .status__content {
+      color: $color1;
+
+      a {
+        color: $color4;
+      }
+
+      a.status__content__spoiler-link {
+        color: $color5;
+        background: $color3;
+
+        &:hover {
+          background: lighten($color3, 8%);
+        }
+      }
+    }
+
+    .status__attachments {
+      margin-top: 8px;
+      overflow: hidden;
+      width: 100%;
+      box-sizing: border-box;
+      position: relative;
+
+      .status__attachments__inner {
+        display: flex;
+        height: 214px;
+      }
+    }
+  }
+
+  .detailed-status.light {
+    padding: 14px;
+    background: $color5;
+    cursor: default;
+
+    .detailed-status__display-name {
+      display: block;
+      overflow: hidden;
+      margin-bottom: 15px;
+
+      & > div {
+        float: left;
+        margin-right: 10px;
+      }
+
+      .display-name {
+        display: block;
+        max-width: 100%;
+        overflow: hidden;
+        white-space: nowrap;
+        text-overflow: ellipsis;
+
+        strong {
+          font-weight: 500;
+          color: $color1;
+        }
+
+        span {
+          font-size: 14px;
+          color: $color3;
+        }
+      }
+    }
+
+    .avatar {
+      width: 48px;
+      height: 48px;
+
+      img {
+        display: block;
+        border-radius: 4px;
+      }
+    }
+
+    .status__content {
+      color: $color1;
+
+      a {
+        color: $color4;
+      }
+
+      a.status__content__spoiler-link {
+        color: $color5;
+        background: $color3;
+
+        &:hover {
+          background: lighten($color3, 8%);
+        }
+      }
+    }
+
+    .detailed-status__meta {
+      margin-top: 15px;
+      color: $color3;
+      font-size: 14px;
+      line-height: 18px;
+
+      a {
+        color: inherit;
+      }
+
+      span > span {
+        font-weight: 500;
+        font-size: 12px;
+        margin-left: 6px;
+        display: inline-block;
+      }
+    }
+
+    .detailed-status__attachments {
+      margin-top: 8px;
+      overflow: hidden;
+      width: 100%;
+      box-sizing: border-box;
+      position: relative;
+
+      .status__attachments__inner {
+        display: flex;
+        height: 360px;
+      }
+    }
+
+    .video-player {
+      margin-top: 8px;
+      height: 300px;
+      overflow: hidden;
+      position: relative;
+
+      video {
+        position: relative;
+        z-index: 1;
+        width: 100%;
+        height: 100%;
+        object-fit: cover;
+        top: 50%;
+        transform: translateY(-50%);
+      }
+    }
+  }
+
+  .media-item, .video-item {
+    box-sizing: border-box;
+    position: relative;
+    left: auto;
+    top: auto;
+    right: auto;
+    bottom: auto;
+    float: left;
+    border: medium none;
+    display: block;
+    flex: 1 1 auto;
+    height: 100%;
+    margin-right: 2px;
+
+    &:last-child {
+      margin-right: 0;
+    }
+
+    a {
+      display: block;
+      width: 100%;
+      height: 100%;
+      background: no-repeat scroll center center / cover;
+      text-decoration: none;
+      cursor: zoom-in;
+    }
+
+    video {
+      position: relative;
+      z-index: 1;
+      width: 100%;
+      height: 100%;
+      object-fit: cover;
+      top: 50%;
+      transform: translateY(-50%);
+    }
+  }
+
+  .video-item {
+    a {
+      cursor: pointer;
+    }
+
+    .video-item__play {
+      position: absolute;
+      top: 50%;
+      left: 50%;
+      font-size: 36px;
+      transform: translate(-50%, -50%);
+      padding: 5px;
+      border-radius: 100px;
+      color: rgba($color5, 0.8);
+      z-index: 1;
+    }
+  }
+
+  .media-spoiler {
+    background: $color3;
+    width: 100%;
+    height: 100%;
+    cursor: pointer;
+    position: absolute;
+    top: 0;
+    left: 0;
+    display: flex;
+    align-items: center;
+    justify-content: center;
+    flex-direction: column;
+    text-align: center;
+    transition: all 100ms linear;
+    z-index: 2;
+
+    &:hover {
+      background: darken($color3, 5%);
+    }
+
+    span {
+      display: block;
+
+      &:first-child {
+        font-size: 14px;
+      }
+
+      &:last-child {
+        font-size: 11px;
+        font-weight: 500;
+      }
+    }
+  }
+
+  .pre-header {
+    padding: 14px 0px;
+    padding-left: (48px + 14px*2);
+    padding-bottom: 0;
+    margin-bottom: -4px;
+    color: $color3;
+    font-size: 14px;
+    position: relative;
+
+    .pre-header__icon {
+      position: absolute;
+      left: (48px + 14px*2 - 30px);
+    }
+
+    .status__display-name.muted strong {
+      color: $color3;
+    }
+  }
+
+  .open-in-web-link {
+    text-decoration: none;
+
+    &:hover {
+      text-decoration: underline;
+    }
+  }
+}
+
+.embed {
+  .activity-stream {
+    border-radius: 4px;
+    box-shadow: none;
+
+    .entry {
+      &:last-child {
+        border-radius: 0 0 4px 4px;
+      }
+
+      &:first-child {
+        border-radius: 4px 4px 0 0;
+
+        &:last-child {
+          border-radius: 4px;
+        }
+      }
+    }
+  }
+}