@okjavis/nodebb-theme-javis 1.5.1 → 1.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/scss/_base.scss +1 -0
- package/scss/_feed.scss +20 -2
- package/scss/_sidebar.scss +138 -179
package/package.json
CHANGED
package/scss/_base.scss
CHANGED
package/scss/_feed.scss
CHANGED
|
@@ -3,6 +3,24 @@
|
|
|
3
3
|
// Styles for nodebb-plugin-feed (/feed route)
|
|
4
4
|
// ===========================================================
|
|
5
5
|
|
|
6
|
+
// ===========================================================
|
|
7
|
+
// HIDE NEW TOPIC BUTTON AND ALL CATEGORIES ROW
|
|
8
|
+
// ===========================================================
|
|
9
|
+
// Hide New Topic button
|
|
10
|
+
// #new_topic,
|
|
11
|
+
// .btn[href*="/compose"],
|
|
12
|
+
// button[data-action="newTopic"],
|
|
13
|
+
// a[href*="/compose"] {
|
|
14
|
+
// display: none !important;
|
|
15
|
+
// }
|
|
16
|
+
|
|
17
|
+
// // Hide All categories row
|
|
18
|
+
// .category-selector-container,
|
|
19
|
+
// [component="category/dropdown"],
|
|
20
|
+
// .d-flex.justify-content-between.py-2.mb-2 {
|
|
21
|
+
// display: none !important;
|
|
22
|
+
// }
|
|
23
|
+
|
|
6
24
|
// ===========================================================
|
|
7
25
|
// FEED CONTAINER
|
|
8
26
|
// ===========================================================
|
|
@@ -10,12 +28,12 @@
|
|
|
10
28
|
// No max-width - let Bootstrap grid handle width
|
|
11
29
|
// Already inside col-lg-9 which provides proper constraints
|
|
12
30
|
|
|
13
|
-
// Header controls row
|
|
31
|
+
// Header controls row (keeping for reference, but hidden above)
|
|
14
32
|
.d-flex.justify-content-between.py-2.mb-2 {
|
|
15
33
|
padding: $jv-space-4 0 !important;
|
|
16
34
|
margin-bottom: $jv-space-6 !important;
|
|
17
35
|
|
|
18
|
-
// New Topic button
|
|
36
|
+
// New Topic button (hidden above)
|
|
19
37
|
#new_topic,
|
|
20
38
|
.btn-primary {
|
|
21
39
|
font-weight: 600;
|
package/scss/_sidebar.scss
CHANGED
|
@@ -156,7 +156,6 @@
|
|
|
156
156
|
div[data-widget-area] {
|
|
157
157
|
display: flex;
|
|
158
158
|
flex-direction: column;
|
|
159
|
-
gap: $jv-space-6;
|
|
160
159
|
}
|
|
161
160
|
|
|
162
161
|
// Individual widget card
|
|
@@ -637,11 +636,35 @@ div[data-widget-area="right"] h8 {
|
|
|
637
636
|
// ===========================================================
|
|
638
637
|
// RIGHT SIDEBAR WIDGET AREA (Reddit-style)
|
|
639
638
|
// ===========================================================
|
|
640
|
-
div[data-widget-area="
|
|
641
|
-
.col-lg-3
|
|
639
|
+
div[data-widget-area="right"],
|
|
640
|
+
.col-lg-3.col-sm-12 {
|
|
642
641
|
display: flex;
|
|
643
642
|
flex-direction: column;
|
|
644
|
-
|
|
643
|
+
|
|
644
|
+
// Sticky positioning - stays visible when scrolling
|
|
645
|
+
position: sticky;
|
|
646
|
+
top: 80px; // Adjust based on your header height
|
|
647
|
+
align-self: flex-start;
|
|
648
|
+
max-height: calc(100vh - 100px); // Account for header + padding
|
|
649
|
+
overflow-y: auto; // Allow scrolling if content is too tall
|
|
650
|
+
|
|
651
|
+
// Smooth scrollbar styling (webkit browsers)
|
|
652
|
+
&::-webkit-scrollbar {
|
|
653
|
+
width: 6px;
|
|
654
|
+
}
|
|
655
|
+
|
|
656
|
+
&::-webkit-scrollbar-track {
|
|
657
|
+
background: transparent;
|
|
658
|
+
}
|
|
659
|
+
|
|
660
|
+
&::-webkit-scrollbar-thumb {
|
|
661
|
+
background: rgba(0, 0, 0, 0.15);
|
|
662
|
+
border-radius: 3px;
|
|
663
|
+
|
|
664
|
+
&:hover {
|
|
665
|
+
background: rgba(0, 0, 0, 0.25);
|
|
666
|
+
}
|
|
667
|
+
}
|
|
645
668
|
|
|
646
669
|
// Widget card container
|
|
647
670
|
> div {
|
|
@@ -651,219 +674,155 @@ div[data-widget-area="sidebar"],
|
|
|
651
674
|
overflow: hidden;
|
|
652
675
|
}
|
|
653
676
|
|
|
654
|
-
// Widget header/title
|
|
677
|
+
// Widget header/title - clean and simple
|
|
655
678
|
h5, h6, .widget-title {
|
|
656
|
-
font-size:
|
|
679
|
+
font-size: 11px !important;
|
|
657
680
|
font-weight: 700 !important;
|
|
658
681
|
text-transform: uppercase;
|
|
659
682
|
letter-spacing: 0.5px;
|
|
660
683
|
color: $jv-text-soft;
|
|
661
|
-
padding: $jv-space-
|
|
662
|
-
margin: 0 !important;
|
|
684
|
+
padding: $jv-space-4 $jv-space-4;
|
|
685
|
+
margin: 0 0 $jv-space-4 0 !important;
|
|
663
686
|
border-bottom: 1px solid $jv-border-subtle;
|
|
664
|
-
|
|
687
|
+
}
|
|
688
|
+
|
|
689
|
+
// Add spacing between widgets
|
|
690
|
+
> div + div {
|
|
691
|
+
margin-top: $jv-space-4;
|
|
665
692
|
}
|
|
666
693
|
}
|
|
667
694
|
|
|
668
695
|
// ===========================================================
|
|
669
|
-
// POPULAR TAGS WIDGET (Sidebar)
|
|
696
|
+
// POPULAR TAGS WIDGET (Sidebar) - Reddit-style vertical list
|
|
670
697
|
// ===========================================================
|
|
671
|
-
div[data-widget-area="
|
|
672
|
-
.popular-tags
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
// Tag items grid
|
|
677
|
-
.tag-list,
|
|
678
|
-
> div {
|
|
679
|
-
display: flex;
|
|
680
|
-
flex-direction: column;
|
|
681
|
-
gap: $jv-space-2;
|
|
698
|
+
div[data-widget-area="right"] {
|
|
699
|
+
.popular-tags {
|
|
700
|
+
width: 100% !important;
|
|
701
|
+
}
|
|
682
702
|
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
703
|
+
.tag-list {
|
|
704
|
+
padding: 0 !important;
|
|
705
|
+
margin: 0 !important;
|
|
706
|
+
width: 100% !important;
|
|
707
|
+
|
|
708
|
+
// Override Bootstrap grid classes to force vertical layout
|
|
709
|
+
display: flex !important;
|
|
710
|
+
flex-direction: column !important;
|
|
711
|
+
|
|
712
|
+
// Remove any grid/row styling
|
|
713
|
+
&.row {
|
|
714
|
+
--bs-gutter-x: 0 !important;
|
|
715
|
+
--bs-gutter-y: 0 !important;
|
|
716
|
+
margin: 0 !important;
|
|
717
|
+
}
|
|
718
|
+
|
|
719
|
+
// Force each tag to be full width (override col classes)
|
|
720
|
+
> * {
|
|
721
|
+
width: 100% !important;
|
|
722
|
+
max-width: 100% !important;
|
|
723
|
+
flex: 0 0 100% !important;
|
|
724
|
+
padding: 0 !important;
|
|
725
|
+
}
|
|
726
|
+
|
|
727
|
+
.btn-ghost,
|
|
728
|
+
a.btn-ghost {
|
|
729
|
+
display: flex !important;
|
|
730
|
+
flex-direction: column !important;
|
|
731
|
+
align-items: flex-start !important;
|
|
732
|
+
background: transparent !important;
|
|
733
|
+
border: none !important;
|
|
734
|
+
border-radius: 0 !important;
|
|
735
|
+
padding: $jv-space-3 $jv-space-4 !important;
|
|
736
|
+
transition: background-color $jv-transition-fast !important;
|
|
737
|
+
text-align: left !important;
|
|
738
|
+
width: 100% !important;
|
|
739
|
+
margin: 0 !important;
|
|
698
740
|
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
}
|
|
741
|
+
&:hover {
|
|
742
|
+
background: $jv-hover-bg !important;
|
|
743
|
+
}
|
|
703
744
|
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
745
|
+
.tag-item {
|
|
746
|
+
font-size: 14px !important;
|
|
747
|
+
font-weight: 600 !important;
|
|
748
|
+
color: $jv-text-main !important;
|
|
749
|
+
margin-bottom: $jv-space-1 !important;
|
|
750
|
+
}
|
|
709
751
|
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
font-size: 12px;
|
|
715
|
-
color: $jv-text-soft;
|
|
716
|
-
font-weight: 400;
|
|
717
|
-
}
|
|
752
|
+
.tag-topic-count {
|
|
753
|
+
font-size: 12px !important;
|
|
754
|
+
font-weight: 400 !important;
|
|
755
|
+
color: $jv-text-soft !important;
|
|
718
756
|
}
|
|
719
757
|
}
|
|
720
758
|
}
|
|
759
|
+
|
|
721
760
|
}
|
|
722
761
|
|
|
723
762
|
// ===========================================================
|
|
724
|
-
// RECENT/TRENDING POSTS WIDGET (Sidebar)
|
|
763
|
+
// RECENT/TRENDING POSTS WIDGET (Sidebar) - Widget Essentials Specific
|
|
725
764
|
// ===========================================================
|
|
726
|
-
div[data-widget-area="
|
|
765
|
+
div[data-widget-area="right"] {
|
|
766
|
+
// Recent posts container with scrolling
|
|
727
767
|
#recent_posts,
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
768
|
+
ul[id*="recent"] {
|
|
769
|
+
max-height: 400px;
|
|
770
|
+
overflow-y: auto;
|
|
731
771
|
padding: 0;
|
|
732
772
|
margin: 0;
|
|
733
773
|
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
&:last-child {
|
|
740
|
-
border-bottom: none;
|
|
741
|
-
}
|
|
742
|
-
|
|
743
|
-
&:hover {
|
|
744
|
-
background: $jv-hover-bg; // Consistent hover state
|
|
745
|
-
}
|
|
746
|
-
|
|
747
|
-
// Focus state for accessibility
|
|
748
|
-
&:focus-within {
|
|
749
|
-
outline: none;
|
|
750
|
-
background: $jv-hover-bg;
|
|
751
|
-
}
|
|
752
|
-
|
|
753
|
-
// Post header with avatar
|
|
754
|
-
.d-flex {
|
|
755
|
-
display: flex;
|
|
756
|
-
align-items: center;
|
|
757
|
-
gap: $jv-space-2;
|
|
758
|
-
margin-bottom: $jv-space-2;
|
|
759
|
-
|
|
760
|
-
// Avatar
|
|
761
|
-
.avatar,
|
|
762
|
-
img[class*="avatar"] {
|
|
763
|
-
width: 20px !important;
|
|
764
|
-
height: 20px !important;
|
|
765
|
-
border-radius: 50%;
|
|
766
|
-
flex-shrink: 0;
|
|
767
|
-
}
|
|
774
|
+
// Smooth scrollbar
|
|
775
|
+
&::-webkit-scrollbar {
|
|
776
|
+
width: 4px;
|
|
777
|
+
}
|
|
768
778
|
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
font-weight: 600;
|
|
773
|
-
color: $jv-text-main;
|
|
774
|
-
text-decoration: none;
|
|
779
|
+
&::-webkit-scrollbar-track {
|
|
780
|
+
background: transparent;
|
|
781
|
+
}
|
|
775
782
|
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
}
|
|
783
|
+
&::-webkit-scrollbar-thumb {
|
|
784
|
+
background: rgba(0, 0, 0, 0.15);
|
|
785
|
+
border-radius: 2px;
|
|
780
786
|
|
|
781
|
-
|
|
782
|
-
.
|
|
783
|
-
font-size: 11px;
|
|
784
|
-
color: $jv-text-soft;
|
|
785
|
-
}
|
|
787
|
+
&:hover {
|
|
788
|
+
background: rgba(0, 0, 0, 0.25);
|
|
786
789
|
}
|
|
790
|
+
}
|
|
791
|
+
}
|
|
787
792
|
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
font-size: 13px;
|
|
794
|
-
font-weight: 500;
|
|
795
|
-
color: $jv-text-main;
|
|
796
|
-
text-decoration: none;
|
|
797
|
-
line-height: 1.4;
|
|
798
|
-
margin-bottom: $jv-space-2;
|
|
799
|
-
|
|
800
|
-
// Line clamp
|
|
801
|
-
display: -webkit-box;
|
|
802
|
-
-webkit-line-clamp: 2;
|
|
803
|
-
-webkit-box-orient: vertical;
|
|
804
|
-
overflow: hidden;
|
|
793
|
+
// Style the actual widget-posts items
|
|
794
|
+
.widget-posts {
|
|
795
|
+
padding: $jv-space-3 $jv-space-4 !important;
|
|
796
|
+
transition: background-color $jv-transition-fast !important;
|
|
797
|
+
border-bottom: 1px solid $jv-border-subtle !important;
|
|
805
798
|
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
}
|
|
810
|
-
|
|
811
|
-
// Content preview text
|
|
812
|
-
.post-content,
|
|
813
|
-
.content,
|
|
814
|
-
.text-xs {
|
|
815
|
-
font-size: 12px;
|
|
816
|
-
color: $jv-text-muted;
|
|
817
|
-
line-height: 1.45;
|
|
818
|
-
display: -webkit-box;
|
|
819
|
-
-webkit-line-clamp: 2;
|
|
820
|
-
-webkit-box-orient: vertical;
|
|
821
|
-
overflow: hidden;
|
|
822
|
-
}
|
|
799
|
+
&:last-child {
|
|
800
|
+
border-bottom: none !important;
|
|
801
|
+
}
|
|
823
802
|
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
font-size: 12px;
|
|
828
|
-
font-weight: 600;
|
|
829
|
-
color: $jv-primary;
|
|
830
|
-
text-decoration: none;
|
|
831
|
-
margin-top: $jv-space-2;
|
|
832
|
-
display: inline-block;
|
|
803
|
+
&:hover {
|
|
804
|
+
background: $jv-hover-bg !important;
|
|
805
|
+
}
|
|
833
806
|
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
|
|
807
|
+
.post-author a {
|
|
808
|
+
font-size: 12px !important;
|
|
809
|
+
font-weight: 500 !important;
|
|
810
|
+
color: $jv-text-main !important;
|
|
838
811
|
}
|
|
839
|
-
}
|
|
840
|
-
}
|
|
841
812
|
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
align-items: center;
|
|
849
|
-
gap: $jv-space-2;
|
|
813
|
+
.line-clamp-6 {
|
|
814
|
+
font-size: 13px !important;
|
|
815
|
+
font-weight: 400 !important;
|
|
816
|
+
color: $jv-text-main !important;
|
|
817
|
+
line-height: 1.5 !important;
|
|
818
|
+
}
|
|
850
819
|
|
|
851
|
-
|
|
852
|
-
font-size:
|
|
853
|
-
|
|
820
|
+
.post-preview-footer a {
|
|
821
|
+
font-size: 12px !important;
|
|
822
|
+
font-weight: 500 !important;
|
|
823
|
+
color: $jv-primary !important;
|
|
824
|
+
text-decoration: none !important;
|
|
854
825
|
}
|
|
855
826
|
}
|
|
856
827
|
}
|
|
857
828
|
|
|
858
|
-
// ===========================================================
|
|
859
|
-
// EMPTY STATE
|
|
860
|
-
// ===========================================================
|
|
861
|
-
div[data-widget-area="sidebar"] {
|
|
862
|
-
.empty,
|
|
863
|
-
.no-content {
|
|
864
|
-
padding: $jv-space-8;
|
|
865
|
-
text-align: center;
|
|
866
|
-
color: $jv-text-soft;
|
|
867
|
-
font-size: $jv-font-size-sm;
|
|
868
|
-
}
|
|
869
|
-
}
|