]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - client/src/sass/primeng-custom.scss
modify user-quota to match account settings style
[github/Chocobozzz/PeerTube.git] / client / src / sass / primeng-custom.scss
index 753fdf5c97298a7670f9b9a2ed51878c51c8f7ff..bf49639f56dc9ff98064acbc393ac9b808e680fa 100644 (file)
@@ -7,7 +7,7 @@
 @mixin glyphicon-light {
   font-family: 'Glyphicons Halflings';
   text-decoration: none !important;
-  color: var(--mainForegroundColor) !important;
+  color: pvar(--mainForegroundColor) !important;
   font-display: swap;
 }
 
@@ -17,28 +17,38 @@ my-button {
   height: max-content;
 }
 
+// focus box-shadow for primeng
+.ui-inputtext:enabled:focus:not(.ui-state-error) {
+  box-shadow: #{$focus-box-shadow-form} pvar(--mainColorLightest) !important;
+}
+
 // data table customizations
 p-table {
   .ui-table-caption {
     border: none !important;
-    background-color: var(--mainBackgroundColor) !important;
+    background-color: pvar(--mainBackgroundColor) !important;
 
     .caption {
       height: 40px;
-      display: flex;
+      width: 100%;
+      display: inline-flex;
       align-items: center;
+
+      .input-group-text {
+        background-color: transparent;
+      }
     }
   }
 
   th {
-    background-color: var(--mainBackgroundColor) !important;
+    background-color: pvar(--mainBackgroundColor) !important;
     outline: 0;
   }
 
   td, th {
     font-family: $main-fonts;
     font-size: 15px !important;
-    color: var(--mainForegroundColor) !important;
+    color: pvar(--mainForegroundColor) !important;
   }
 
   td {
@@ -53,14 +63,14 @@ p-table {
 
   tr {
     outline: 0;
-    background-color: var(--mainBackgroundColor) !important;
+    background-color: pvar(--mainBackgroundColor) !important;
     height: 46px;
 
     &.ui-state-highlight {
-      background-color: var(--submenuColor) !important;
+      background-color: pvar(--submenuColor) !important;
 
       td, td > a {
-        color: var(--mainForegroundColor) !important;
+        color: pvar(--mainForegroundColor) !important;
       }
     }
   }
@@ -68,16 +78,7 @@ p-table {
   .ui-table-tbody {
     tr {
       &:hover {
-        background-color: var(--submenuColor) !important;
-
-        .action-cell {
-          .dropdown-root,
-          my-edit-button,
-          my-delete-button,
-          my-button {
-            display: block !important;
-          }
-        }
+        background-color: pvar(--submenuColor) !important;
       }
 
       td {
@@ -91,6 +92,11 @@ p-table {
       &:last-child td {
         border-bottom: none !important;
       }
+
+      &:focus + tr > td,
+      &:focus > td {
+        box-shadow: none !important;
+      }
     }
 
     .expander {
@@ -103,16 +109,16 @@ p-table {
   th {
     border: none !important;
     border-bottom: 1px solid !important;
-    border-color: var(--submenuColor) !important;
+    border-color: pvar(--submenuColor) !important;
     text-align: left !important;
     padding: 5px 0 5px 15px !important;
     font-weight: $font-semibold !important;
-    color: var(--mainForegroundColor) !important;
+    color: pvar(--mainForegroundColor) !important;
 
     &.ui-sortable-column:hover {
-      background-color: var(--submenuColor) !important;
+      background-color: pvar(--submenuColor) !important;
       border: 1px solid !important;
-      border-color: var(--submenuColor) !important;
+      border-color: pvar(--submenuColor) !important;
       border-width: 0 1px !important;
 
       &:first-child {
@@ -121,7 +127,7 @@ p-table {
     }
 
     &.ui-state-highlight {
-      background-color: var(--submenuColor) !important;
+      background-color: pvar(--submenuColor) !important;
 
       .pi {
         @extend .glyphicon;
@@ -130,16 +136,16 @@ p-table {
         font-size: 11px !important;
         top: 0 !important;
 
-        &.pi-sort-up {
+        &.pi-sort-amount-up-alt {
           @extend .glyphicon-triangle-top;
 
-          color: var(--mainForegroundColor) !important;
+          color: pvar(--mainForegroundColor) !important;
         }
 
-        &.pi-sort-down {
+        &.pi-sort-amount-down {
           @extend .glyphicon-triangle-bottom;
 
-          color: var(--mainForegroundColor) !important;
+          color: pvar(--mainForegroundColor) !important;
         }
       }
     }
@@ -154,30 +160,47 @@ p-table {
     my-edit-button,
     my-delete-button,
     my-button {
-      display: none !important;
+      display: inline-block !important;
+      margin-left: 5px;
 
-      &.show {
-        display: block !important;
+      :first-child {
+        margin-left: 0
       }
     }
-
-    my-edit-button + my-delete-button {
-      margin-left: 5px;
-    }
   }
 
   p-paginator {
     .ui-paginator-bottom {
-      background-color: var(--mainBackgroundColor) !important;
+      background-color: pvar(--mainBackgroundColor) !important;
       position: relative;
       border: none;
       border-top: 1px solid !important;
-      border-color: var(--submenuColor) !important;
+      border-color: pvar(--submenuColor) !important;
       height: 40px;
       display: flex;
       justify-content: center;
       align-items: center;
 
+      .ui-dropdown {
+        position: absolute;
+        top: 3px;
+        left: 0;
+
+        &.ui-state-focus {
+          box-shadow: #{$focus-box-shadow-form} pvar(--mainColorLightest);
+        }
+
+        .ui-dropdown-label {
+          color: pvar(--inputPlaceholderColor);
+        }
+      }
+
+      .ui-paginator-current {
+        position: absolute;
+        right: 0;
+        color: pvar(--inputPlaceholderColor);
+      }
+
       .ui-paginator-first,
       .ui-paginator-prev,
       .ui-paginator-next,
@@ -189,6 +212,11 @@ p-table {
         font-size: 13px;
         top: -1px;
 
+        &.focus-within,
+        &:focus {
+          box-shadow: #{$focus-box-shadow-form} pvar(--mainColorLightest);
+        }
+
         &.ui-state-disabled:hover {
           background-color: #fff !important;
         }
@@ -217,8 +245,15 @@ p-table {
       .ui-paginator-pages {
         height: auto !important;
 
+        .ui-paginator-page {
+          &.focus-within,
+          &:focus {
+            box-shadow: #{$focus-box-shadow-form} pvar(--mainColorLightest) !important;
+          }
+        }
+
         a {
-          color: var(--mainForegroundColor) !important;
+          color: pvar(--mainForegroundColor) !important;
           font-weight: $font-semibold !important;
           margin: 0 5px !important;
           outline: 0 !important;
@@ -230,7 +265,7 @@ p-table {
           &.ui-state-active {
             &, &:hover, &:active, &:focus {
               color: #fff !important;
-              background-color: var(--mainColor) !important;
+              background-color: pvar(--mainColor) !important;
             }
           }
         }
@@ -239,8 +274,52 @@ p-table {
   }
 }
 
+// overflow data table
+@mixin overflow-datatable ($table-min-width, $horizontal-margins, $mobile-paginator: true) {
+  p-table {
+    .ui-table-wrapper {
+      overflow-x: auto;
+      max-width: calc(100vw - #{$horizontal-margins * 2});
+
+      table {
+        min-width: $table-min-width;
+      }
+    }
+
+    @if $mobile-paginator {
+      p-paginator .ui-paginator-bottom {
+        display: block;
+
+        .ui-paginator-current {
+          position: relative;
+          display: block;
+        }
+
+        a, .ui-paginator-pages {
+          vertical-align: middle;
+        }
+      }
+    }
+  }
+}
+
 // multiselect customizations
 p-multiselect {
+  .ui-multiselect {
+    border-color: #C6C6C6;
+
+    &:not(.ui-state-disabled) {
+      &:hover {
+        border-color: #C6C6C6;
+      }
+
+      &:focus,
+      &.ui-state-focus {
+        box-shadow: #{$focus-box-shadow-form} pvar(--mainColorLightest);
+      }
+    }
+  }
+
   .ui-multiselect-label {
     font-size: 15px !important;
     padding: 4px 30px 4px 12px !important;
@@ -253,7 +332,7 @@ p-multiselect {
     }
   }
 
-  .pi.pi-chevron-down{
+  .pi.pi-chevron-down {
     margin-left: 0 !important;
 
     &::after {
@@ -274,6 +353,15 @@ p-multiselect {
     //  left: -2px !important;
     //}
   }
+
+  .ui-multiselect-panel .ui-multiselect-items .ui-multiselect-item.ui-state-highlight {
+    background-color: pvar(--mainColorLighter);
+  }
+
+  .ui-inputtext:enabled:focus:not(.ui-state-error) {
+    border-color: pvar(--mainColorLighter) !important;
+    box-shadow: none;
+  }
 }
 
 // PrimeNG calendar tweaks
@@ -344,8 +432,8 @@ p-tablecheckbox:hover div .ui-chkbox-box {
 
   .ui-chkbox-box {
     &.ui-state-active {
-      border-color: var(--mainColor) !important;
-      background-color: var(--mainColor) !important;
+      border-color: pvar(--mainColor) !important;
+      background-color: pvar(--mainColor) !important;
     }
 
     .ui-chkbox-icon {
@@ -361,8 +449,8 @@ p-tablecheckbox:hover div .ui-chkbox-box {
         height: 12px;
         opacity: 0;
         transform: rotate(45deg) scale(0);
-        border-right: 2px solid var(--mainBackgroundColor);
-        border-bottom: 2px solid var(--mainBackgroundColor);
+        border-right: 2px solid pvar(--mainBackgroundColor);
+        border-bottom: 2px solid pvar(--mainBackgroundColor);
       }
 
       &.pi-check:after {
@@ -377,19 +465,50 @@ p-inputswitch {
   height: 26px;
 
   .ui-inputswitch-checked .ui-inputswitch-slider {
-    background-color: var(--mainColor) !important;
+    background-color: pvar(--mainColor) !important;
+  }
+
+  &.small {
+    height: 20px;
+
+    .ui-inputswitch {
+      width: 2.5em !important;
+      height: 1.45em !important;
+
+      .ui-inputswitch-slider::before {
+        height: 1em !important;
+        width: 1em !important;
+      }
+    }
+
+    .ui-inputswitch-checked .ui-inputswitch-slider::before {
+      transform: translateX(1em) !important;
+    }
   }
 }
 
 p-toast {
   .ui-toast {
-    // Modal is 10005
-    z-index: 10010 !important;
+    z-index: z(notification) !important;
+
+    .ui-toast-close-icon {
+      font-family: "Glyphicons Halflings";
+      opacity: 0;
+
+      &:after {
+        content: "\e014";
+      }
+    }
+
+    &:hover .ui-toast-close-icon {
+      opacity: .3;
+    }
   }
 
   .ui-toast-message {
     font-family: $main-fonts;
-    background-color: var(--mainBackgroundColor) !important;
+    background-color: pvar(--mainBackgroundColor) !important;
+    color: pvar(--mainForegroundColor) !important;
     border-radius: 5px;
     box-sizing: border-box;
     border: 1px solid #EBEEF5 !important;