فهرست منبع

Enhance post header (#100)

- show calendar icon for 'posted date'
- show 'reading time'
Khosrow Moossavi 7 سال پیش
والد
کامیت
11c0108323

+ 15 - 0
assets/scss/_content.scss

@@ -23,6 +23,21 @@
       margin-top: 4.0rem;
     }
   }
+  .post {
+    .post-title {
+      margin-bottom: .75em;
+    }
+    .post-meta {
+      .posted-on {
+        display: inline-block;
+        margin-left: 0;
+        margin-right: 1.5rem;
+      }
+      .reading-time {
+        display: inline-block;
+      }
+    }
+  }
 }
 
 .avatar img{

+ 10 - 0
assets/scss/_content_rtl.scss

@@ -1,4 +1,14 @@
 body.rtl {
+  .content {
+    .post {
+      .post-meta {
+        .posted-on {
+          margin-left: 1.5rem;
+          margin-right: 0;
+        }
+      }
+    }
+  }
   .list {
     ul {
       li {

+ 3 - 0
i18n/en.toml

@@ -0,0 +1,3 @@
+[readingTime]
+one = "One minute read"
+other = "{{ .Count }} minutes read"

+ 15 - 2
layouts/posts/single.html

@@ -5,8 +5,21 @@
   <section class="container post">
     <article>
       <header>
-        <h1 class="title">{{ .Title }}</h1>
-        <h2 class="date">{{ .Date.Format (.Site.Params.dateFormat | default "January 2, 2006" ) }}</h2>
+        <div class="post-title">
+          <h1 class="title">{{ .Title }}</h1>
+        </div>
+        <div class="post-meta">
+          <span class="posted-on">
+            <i class="far fa-calendar"></i>
+            <time datetime='{{ .Date.Format "2006-01-02T15:04:05Z07:00" }}'>
+              {{ .Date.Format (.Site.Params.dateFormat | default "January 2, 2006" ) }}
+            </time>
+          </span>
+          <span class="reading-time">
+            <i class="far fa-clock"></i>
+            {{ i18n "readingTime" .ReadingTime }}
+          </span>
+        </div>
       </header>
 
       <div>

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 0 - 0
resources/_gen/assets/scss/scss/coder.scss_5e1eb8e37c42cdfb6215b61e44dcfa5f.content


+ 1 - 1
resources/_gen/assets/scss/scss/coder.scss_5e1eb8e37c42cdfb6215b61e44dcfa5f.json

@@ -1 +1 @@
-{"Target":"css/coder.min.578f8fce262e4c448c239b69661084c57507b89d51b8d04de15cd1d8f8135600.css","MediaType":"text/css","Data":{"Integrity":"sha256-V4+PziYuTESMI5tpZhCExXUHuJ1RuNBN4VzR2PgTVgA="}}
+{"Target":"css/coder.min.da5204b40ef8cbcb52b75a8cac5656a9cebc00a15e25c865a4b84a3c06b3ed82.css","MediaType":"text/css","Data":{"Integrity":"sha256-2lIEtA74y8tSt1qMrFZWqc68AKFeJchlpLhKPAaz7YI="}}

+ 0 - 387
resources/_gen/assets/scss/scss/coder.scss_fd4b5b3f9a48bc0c7f005d2f7a4cc30f.content

@@ -1,387 +0,0 @@
-*,
-*:after,
-*:before {
-  box-sizing: inherit; }
-
-html {
-  box-sizing: border-box;
-  font-size: 62.5%; }
-
-body {
-  display: flex;
-  color: #212121;
-  background-color: #FAFAFA;
-  font-family: Merriweather, Georgia, serif;
-  font-size: 1.6em;
-  font-weight: 300;
-  line-height: 1.8em; }
-  @media only screen and (max-device-width: 768px) {
-    body {
-      font-size: 1.6em;
-      line-height: 1.6em; } }
-
-a {
-  font-weight: 300;
-  color: #1565c0;
-  text-decoration: none; }
-  a:focus, a:hover {
-    text-decoration: underline; }
-
-p {
-  margin: 2.0rem 0 2.0rem 0; }
-
-h1,
-h2,
-h3,
-h4,
-h5,
-h6 {
-  font-family: Lato, Helvetica, sans-serif;
-  font-weight: 700;
-  color: #000;
-  margin: 6.4rem 0 3.2rem 0; }
-
-h1 {
-  font-size: 3.2rem;
-  line-height: 3.6rem; }
-  @media only screen and (max-device-width: 768px) {
-    h1 {
-      font-size: 3.0rem;
-      line-height: 3.4rem; } }
-
-h2 {
-  font-size: 2.8rem;
-  line-height: 3.2rem; }
-  @media only screen and (max-device-width: 768px) {
-    h2 {
-      font-size: 2.6rem;
-      line-height: 3.0rem; } }
-
-h3 {
-  font-size: 2.4rem;
-  line-height: 2.8rem; }
-  @media only screen and (max-device-width: 768px) {
-    h3 {
-      font-size: 2.2rem;
-      line-height: 2.6rem; } }
-
-h4 {
-  font-size: 2.2rem;
-  line-height: 2.6rem; }
-  @media only screen and (max-device-width: 768px) {
-    h4 {
-      font-size: 2.0rem;
-      line-height: 2.4rem; } }
-
-h5 {
-  font-size: 2.0rem;
-  line-height: 2.4rem; }
-  @media only screen and (max-device-width: 768px) {
-    h5 {
-      font-size: 1.8rem;
-      line-height: 2.2rem; } }
-
-h6 {
-  font-size: 1.8rem;
-  line-height: 2.2rem; }
-  @media only screen and (max-device-width: 768px) {
-    h6 {
-      font-size: 1.6rem;
-      line-height: 2.0rem; } }
-
-b, strong {
-  font-weight: 700; }
-
-pre {
-  display: block;
-  font-family: "Source Code Pro", "Lucida Console", monospace;
-  font-size: 1.6rem;
-  font-weight: 400;
-  line-height: 2.6rem;
-  margin: 2.0rem 0 2.0rem 0;
-  padding: 2.0rem;
-  overflow-x: auto; }
-  pre code {
-    background-color: inherit;
-    color: inherit; }
-
-code {
-  font-family: "Source Code Pro", "Lucida Console", monospace;
-  font-size: 1.6rem;
-  font-weight: 400;
-  background-color: #E0E0E0;
-  color: #212121;
-  padding: 0.2rem 0.4rem 0.2rem 0.4rem; }
-
-blockquote {
-  border-left: 2px solid #E0E0E0;
-  padding-left: 2.0rem;
-  line-height: 2.2rem;
-  font-weight: 400;
-  font-style: italic; }
-
-th, td {
-  padding: 1.6rem; }
-
-table {
-  border-collapse: collapse; }
-
-table td, table th {
-  border: 2px solid #000; }
-
-table tr:first-child th {
-  border-top: 0; }
-
-table tr:last-child td {
-  border-bottom: 0; }
-
-table tr td:first-child,
-table tr th:first-child {
-  border-left: 0; }
-
-table tr td:last-child,
-table tr th:last-child {
-  border-right: 0; }
-
-img {
-  max-width: 100%; }
-
-.wrapper {
-  display: flex;
-  flex-direction: column;
-  min-height: 100vh;
-  width: 100%; }
-
-.container {
-  margin: 0 auto;
-  max-width: 90.0rem;
-  width: 100%;
-  padding-left: 2.0rem;
-  padding-right: 2.0rem; }
-
-.fab {
-  font-weight: 400; }
-
-.fas {
-  font-weight: 700; }
-
-.float-right {
-  float: right; }
-
-.float-left {
-  float: left; }
-
-.fab {
-  font-weight: 400; }
-
-.fas {
-  font-weight: 900; }
-
-.content {
-  flex: 1;
-  margin-top: 1.6rem;
-  margin-bottom: 3.2rem; }
-  .content article header {
-    margin-top: 6.4rem;
-    margin-bottom: 3.2rem; }
-    .content article header h1, .content article header h2 {
-      margin: 0; }
-    .content article header h2 {
-      font-size: 1.8rem;
-      line-height: 2.2rem;
-      color: #212121;
-      margin-top: 1.8rem; }
-      @media only screen and (max-device-width: 768px) {
-        .content article header h2 {
-          font-size: 1.6rem; } }
-  .content article footer {
-    margin-top: 1.0rem; }
-
-.avatar img {
-  width: 20rem;
-  height: auto;
-  border-radius: 50%; }
-  @media only screen and (max-device-width: 768px) {
-    .avatar img {
-      width: 10rem; } }
-
-.list ul {
-  margin: 3.2rem 0 3.2rem 0;
-  list-style: none;
-  padding: 0; }
-  .list ul li {
-    font-size: 1.8rem; }
-    @media only screen and (max-device-width: 768px) {
-      .list ul li {
-        margin: 1.6rem 0 1.6rem 0; } }
-    .list ul li span {
-      display: inline-block;
-      width: 20.0rem;
-      text-align: right;
-      margin-right: 3.0rem; }
-      @media only screen and (max-device-width: 768px) {
-        .list ul li span {
-          display: block;
-          text-align: left; } }
-    .list ul li a {
-      font-size: 1.8rem;
-      color: #212121;
-      font-family: Lato, Helvetica, sans-serif;
-      font-weight: 700; }
-      .list ul li a:hover, .list ul li a:focus {
-        color: #1565c0; }
-
-.centered {
-  display: flex;
-  height: 100%;
-  align-items: center;
-  justify-content: center; }
-  .centered .about {
-    text-align: center; }
-    .centered .about h1 {
-      margin-top: 2.0rem;
-      margin-bottom: 0.5rem; }
-    .centered .about h2 {
-      margin-top: 1.0rem;
-      margin-bottom: 0.5rem;
-      font-size: 2.4rem; }
-      @media only screen and (max-device-width: 768px) {
-        .centered .about h2 {
-          font-size: 2.0rem; } }
-    .centered .about ul {
-      list-style: none;
-      margin: 3.0rem 0 1.0rem 0;
-      padding: 0; }
-      .centered .about ul li {
-        display: inline-block;
-        position: relative; }
-        .centered .about ul li a {
-          color: #212121;
-          text-transform: uppercase;
-          margin-left: 1.0rem;
-          margin-right: 1.0rem;
-          font-size: 1.6rem; }
-          .centered .about ul li a:hover, .centered .about ul li a:focus {
-            color: #1565c0; }
-          @media only screen and (max-device-width: 768px) {
-            .centered .about ul li a {
-              font-size: 1.4rem; } }
-          .centered .about ul li a i {
-            font-size: 3.2rem; }
-  .centered .error {
-    text-align: center; }
-    .centered .error h1 {
-      margin-top: 2.0rem;
-      margin-bottom: 0.5rem;
-      font-size: 4.6rem; }
-      @media only screen and (max-device-width: 768px) {
-        .centered .error h1 {
-          font-size: 3.2rem; } }
-    .centered .error h2 {
-      margin-top: 2.0rem;
-      margin-bottom: 3.2rem;
-      font-size: 3.2rem; }
-      @media only screen and (max-device-width: 768px) {
-        .centered .error h2 {
-          font-size: 2.8rem; } }
-
-.navigation {
-  height: 6.0rem;
-  width: 100%; }
-  .navigation a, .navigation span {
-    display: inline;
-    font-size: 1.6rem;
-    font-family: Lato, Helvetica, sans-serif;
-    font-weight: 700;
-    line-height: 6.0rem;
-    color: #212121; }
-  .navigation a:hover, .navigation a:focus {
-    color: #1565c0; }
-  .navigation .navigation-title {
-    letter-spacing: 0.1rem;
-    text-transform: uppercase; }
-  .navigation .navigation-list {
-    float: right;
-    list-style: none;
-    margin-bottom: 0;
-    margin-top: 0; }
-    @media only screen and (max-device-width: 768px) {
-      .navigation .navigation-list {
-        position: absolute;
-        top: 6.0rem;
-        right: 0;
-        z-index: 5;
-        visibility: hidden;
-        opacity: 0;
-        padding: 0;
-        max-height: 0;
-        width: 100%;
-        background-color: #FAFAFA;
-        border-top: solid 2px #E0E0E0;
-        border-bottom: solid 2px #E0E0E0;
-        transition: opacity 0.25s, max-height 0.15s linear; } }
-    .navigation .navigation-list .navigation-item {
-      float: left;
-      margin: 0;
-      position: relative; }
-      @media only screen and (max-device-width: 768px) {
-        .navigation .navigation-list .navigation-item {
-          float: none !important;
-          text-align: center; }
-          .navigation .navigation-list .navigation-item a, .navigation .navigation-list .navigation-item span {
-            line-height: 5.0rem; } }
-      .navigation .navigation-list .navigation-item a, .navigation .navigation-list .navigation-item span {
-        margin-left: 1.0rem;
-        margin-right: 1.0rem; }
-    @media only screen and (max-device-width: 768px) {
-      .navigation .navigation-list .menu-separator {
-        border-top: 2px solid #212121;
-        margin: 0 8.0rem; }
-        .navigation .navigation-list .menu-separator span {
-          display: none; } }
-  .navigation #menu-toggle {
-    display: none; }
-    @media only screen and (max-device-width: 768px) {
-      .navigation #menu-toggle:checked + label {
-        color: #E0E0E0; }
-      .navigation #menu-toggle:checked + label + ul {
-        visibility: visible;
-        opacity: 1;
-        max-height: 100rem; } }
-  .navigation .menu-button {
-    display: none; }
-    @media only screen and (max-device-width: 768px) {
-      .navigation .menu-button {
-        display: block;
-        font-size: 2.4rem;
-        font-weight: 400;
-        line-height: 6.0rem;
-        color: #212121;
-        cursor: pointer; }
-        .navigation .menu-button:hover, .navigation .menu-button:focus {
-          color: #1565c0; } }
-
-.pagination {
-  margin-top: 6.0rem;
-  text-align: center; }
-  .pagination li {
-    display: inline;
-    text-align: center; }
-    .pagination li span {
-      margin: 0;
-      text-align: center;
-      width: 3.2rem; }
-    .pagination li a span {
-      margin: 0;
-      text-align: center;
-      width: 3.2rem; }
-
-.footer {
-  width: 100%;
-  text-align: center;
-  line-height: 2.0rem;
-  margin-bottom: 1.0rem; }
-  .footer a {
-    color: #1565c0; }
-
-/*# sourceMappingURL=coder.css.map */

+ 0 - 1
resources/_gen/assets/scss/scss/coder.scss_fd4b5b3f9a48bc0c7f005d2f7a4cc30f.json

@@ -1 +0,0 @@
-{"Target":"css/coder.css","MediaType":"text/css","Data":{}}

برخی فایل ها در این مقایسه diff نمایش داده نمی شوند زیرا تعداد فایل ها بسیار زیاد است