From 56a9a1ccf764ff7a6af8f8a2292cb07443cb4aa7 Mon Sep 17 00:00:00 2001
From: Jake Vanderwerf <get@jakevanderwerf.ca>
Date: Thu, 28 May 2026 18:19:57 +0000
Subject: [PATCH] =New Gitbit setpu
---
src/feed/style.scss | 916 +++++++++++++++++++++++++++++++++++++++-----------------
1 files changed, 639 insertions(+), 277 deletions(-)
diff --git a/src/feed/style.scss b/src/feed/style.scss
index 38f7b0f..263a663 100644
--- a/src/feed/style.scss
+++ b/src/feed/style.scss
@@ -640,317 +640,679 @@
// }
//}
+//
+//.feed-block {
+// grid-column: full;
+// .filters {
+// padding: 1rem 0;
+// max-width:var(--wide);
+// margin: 0 auto;
+//
+// .remove-term.remove-term {
+// width: max-content;
+// height: max-content
+// }
+// }
+// .filter-group {
+// position: relative;
+// padding: 2rem 0;
+// .label {
+// position: absolute;
+// left: 0;
+// }
+// > .label {
+// top: 0;
+// }
+// .btn + label {
+// width: auto;
+// }
+// [type=radio] {
+// position:absolute;
+// left: var(--offScreen);
+// }
+// button, label {
+// position: relative;
+// padding: .5rem;
+// height: max-content;
+// &:hover {
+// color: var(--action-contrast);
+// }
+// }
+// button:hover .label,
+// :checked + label .label,
+// label:hover .label {
+// opacity: 1;
+// visibility: visible;
+// }
+// &:has(label:hover) :checked + label .label,
+// button .label,
+// label .label {
+// --height: max-content;
+// opacity: 0;
+// visibility: hidden;
+// bottom: -2rem;
+// width: max-content;
+// white-space: nowrap;
+// font-weight: var(--fw-b);
+// }
+//
+//
+// }
+// h3 {
+// margin: 0 0 .25rem;
+// font-size: var(--medium);
+// }
+//}
+///** PLACEHOLDERS **/
+//.placeholder {
+// aspect-ratio: 1;
+// background: rgb(var(--base));
+// border: 1rem solid rgb(var(--base-50));
+// border-radius: 1rem;
+// display: flex;
+// justify-content: center;
+// align-items: center;
+//
+// i.icon {
+// --w: 50%;
+// color: rgb(var(--base-200));
+// animation: dance 2.5s ease-in-out infinite;
+// }
+//}
+//
+//.item-grid {
+// padding: 0 var(--chip);
+// max-width: 100%;
+//}
+///** FEED ITEM **/
+//.feed.item {
+// position: relative;
+// border-radius: 0.5rem;
+// overflow: hidden;
+// background: rgb(var(--base-50));
+// box-shadow: 0 2px 4px rgba(0,0,0,0.1);
+// height: fit-content;
+// padding: 0;
+// details {
+// z-index: var(--z-2);
+// width: 100%;
+// position: relative;
+// padding: 0;
+// summary {
+// position:absolute;
+// top: -3rem;
+// left:0;
+// width: 100%;
+// background-color: rgba(var(--base),var(--op-2));
+// backdrop-filter: blur(5px);
+// &:hover {
+// background-color: rgba(var(--action-0),var(--op-45));
+// }
+// }
+// &[open] {
+// padding: .25rem .5rem;
+// summary .icon {
+// opacity: 0;
+// }
+// }
+//
+// }
+//
+// img {
+// object-fit: cover;
+// width: 100%;
+// height: 100%;
+// //opacity: .7;
+// //filter: grayscale(.5) sepia(.3);
+// &:hover {
+// opacity: .8;
+// }
+// }
+//
+// &[data-timeline] {
+// .images {
+// aspect-ratio: 3/2;
+// padding: 0 0 1rem;
+// span {
+// width: 50%;
+// position: absolute;
+// background-color: rgb(var(--action-0));
+// color: var(--action-contrast);
+// padding: .25rem .5rem;
+// &:first-of-type {
+// bottom: 0;
+// right: 50%;
+// text-align: right;
+// }
+// &:last-of-type {
+// top: 0;
+// left: 50%;
+// }
+// }
+// > a {
+// position: relative;
+// display: flex;
+// flex-wrap: nowrap;
+// width: 100%;
+// height: 100%;
+// }
+// }
+// img {
+// width: 50%;
+// object-fit: cover;
+// height: 100%;
+// &:first-of-type {
+// border-right: 1px solid rgb(var(--action-0));
+// }
+// }
+// }
+//
+//
+// a {
+// &::before,
+// &::after {
+// display: none;
+// }
+// }
+//
+// label {
+// font-weight: normal;
+// text-transform: none;
+// .icon {
+// --w: 1.5em;
+// }
+// }
+//}
+//
+//
+//.item-grid:has([data-timeline]) {
+// grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
+//}
+//
+//.items-wrap [type=radio],
+//.items-wrap [type=checkbox] {
+// position: absolute;
+// opacity: 0;
+// left: -200vw;
+//}
+//
+//.items-wrap [type=radio] + label,
+//.items-wrap [type=checkbox] + label {
+// position: relative;
+// cursor: pointer;
+//}
+//
+//.items-wrap [type=radio] + label:hover,
+//.items-wrap [type=checkbox] + label:hover {
+// color: rgb(var(--action-0));
+//}
+//
+//.items-wrap [type=radio] + label::before,
+//.items-wrap [type=checkbox] + label::before,
+//.items-wrap [type=radio] + label::after,
+//.items-wrap [type=checkbox] + label::after {
+// content: '';
+// position: absolute;
+// top: 50%;
+//}
+//
+//.items-wrap [type=radio] + label::after,
+//.items-wrap [type=checkbox] + label::after {
+// left: 5px;
+// transform: translateY(-70%) rotate(45deg);
+// width: 5px;
+// height: 10px;
+// border: solid var(--light-0);
+// border-width: 0 2px 2px 0;
+// display: none;
+//}
+//
+//.items-wrap [type=radio] + label::before,
+//.items-wrap [type=checkbox] + label::before {
+// left: 0;
+// transform: translateY(-50%);
+// width: 1rem;
+// height: 1rem;
+// border: 2px solid rgb(var(--contrast-200));
+// background-color: rgb(var(--base));
+// border-radius: var(--radius);
+//}
+//
+//.items-wrap [type=radio]:hover + label::before,
+//.items-wrap [type=checkbox]:hover + label::before {
+// border-color: rgb(var(--action-200));
+//}
+//
+//.items-wrap [type=radio]:checked + label::before,
+//.items-wrap [type=checkbox]:checked + label::before{
+// background-color: rgb(var(--action-0));
+// border-color: rgb(var(--action-100));
+//}
+//
+//.items-wrap [type=radio]:checked + label::before {
+// border-radius: 50%;
+//}
+//
+//.items-wrap [type=checkbox]:checked + label::after {
+// display: block;
+// left: 5px;
+// top: 50%;
+// transform: translateY(-70%) rotate(45deg);
+// width: .35rem;
+// height: .66rem;
+// border: solid var(--light-0);
+// border-width: 0 2px 2px 0;
+//}
+//
+//.items-wrap :disabled + label {
+// cursor: not-allowed;
+// background-color: rgb(var(--base-50));
+// color: rgb(var(--base-200));
+// border-color: rgb(var(--base-200));
+//}
+//
+//.items-wrap :disabled + label:hover {
+// background-color: rgb(var(--base-50));
+// color: rgb(var(--base-200));
+// border-color: rgb(var(--base-200));
+//}
+//
+//.items-wrap :disabled + label::before {
+// border-color: rgb(var(--base-200));
+//}
+//
+//#jvb-selector .items-wrap [type=radio] + label,
+//#jvb-selector .items-wrap [type=checkbox] + label{
+// flex: 1;
+// padding-left: 2rem!important;
+// transform-origin: top center;
+// will-change: transform;
+//}
+//
+//.feed-block + footer {
+// grid-column: full;
+// padding: 0!important;
+// margin: 0;
+// background-color: rgb(var(--base-50));
+// z-index: 0;
+// display: flex;
+// justify-content: flex-end;
+// button {
+// width: max-content;
+// margin-left: auto;
+// padding: .35rem .25rem;
+// --w: 1.3em!important;
+// flex-wrap: nowrap;
+// justify-content:flex-start;
+// transition: var(--trans-size);
+// font-size: var(--txt-x-small);
+// min-height: 0;
+// span {
+// display: none;
+// white-space: nowrap;
+// }
+// &:focus span,
+// &:hover span {
+// display: block;
+// }
+// }
+//}
+//
+//
+//
+//.search-container:not(.open) input[type=search],
+//.search-container:not(.open) .clear-search {
+// transform: scaleX(0);
+// transform-origin: left;
+// width: 0;
+// padding: 0;
+// transition: transform var(--trans-base), width var(--trans-base), padding var(--trans-base);
+//}
+//.search-container button {
+// padding: .5rem;
+//}
+//.search-container .icon {
+// --w: 1.5rem;
+//}
+//.search-container.open input[type=search],
+//.search-container.open .clear-search {
+// transform: scaleX(1);
+// transform-origin: left;
+// transition: transform var(--trans-base), width var(--trans-base), padding var(--trans-base);
+//}
+//.all-filters > .search,
+//input[type=search],
+//.search-container {
+// width: 100%;
+//}
+//
+//
+//.all-filters {
+// button .label,
+// .row:has(label:hover),
+// .btn:checked + label .label {
+// --height: max-content;
+// bottom: -2rem;
+// font-weight: var(--fw-b);
+// opacity: 0;
+// visibility: hidden;
+// white-space: nowrap;
+// width: -moz-max-content;
+// width: max-content;
+// }
+// summary {
+// width: 100%;
+// &:hover {
+// background-color: rgb(var(--action-0));
+// color: rgb(var(--action-contrast));
+// &::after {
+// background-color: rgb(var(--action-contrast));
+// }
+// }
+// }
+// > .row {
+// width: 100%;
+// margin: 0;
+// .label {
+// width: 20%;
+// }
+// }
+//}
+
+/***** START FRESH *****/
.feed-block {
grid-column: full;
- .filters {
- padding: 1rem 0;
- max-width:var(--wide);
- margin: 0 auto;
- .remove-term.remove-term {
- width: max-content;
- height: max-content
- }
- }
- .filter-group {
- position: relative;
- padding: 2rem 0;
- .label {
- position: absolute;
- left: 0;
- }
- > .label {
- top: 0;
- }
- [type=radio] {
- position:absolute;
- left: var(--offScreen);
- }
- button, label {
- position: relative;
- padding: .5rem;
- height: max-content;
- &:hover {
- color: var(--action-contrast);
- }
- }
- button:hover .label,
- :checked + label .label,
- label:hover .label {
- opacity: 1;
- visibility: visible;
- }
- &:has(label:hover) :checked + label .label,
- button .label,
- label .label {
- --height: max-content;
- opacity: 0;
- visibility: hidden;
- bottom: -2rem;
- width: max-content;
- white-space: nowrap;
- font-weight: var(--fw-b);
- }
-
-
- }
- h3 {
- margin: 0 0 .25rem;
- font-size: var(--medium);
- }
-}
-/** PLACEHOLDERS **/
-.placeholder {
- aspect-ratio: 1;
- background: rgb(var(--base));
- border: 1rem solid rgb(var(--base-50));
- border-radius: 1rem;
- display: flex;
- justify-content: center;
- align-items: center;
-
- i.icon {
+ .placeholder {
+ aspect-ratio: 1;
+ background: rgb(var(--base));
+ border: 1rem solid rgb(var(--base-50));
+ border-radius: 1rem;
+ display: flex;
+ justify-content: center;
+ align-items: center;
--w: 50%;
color: rgb(var(--base-200));
- animation: dance 2.5s ease-in-out infinite;
+ i.icon {
+ animation: dance 2.5s ease-in-out infinite;
+ }
}
-}
-.item-grid {
- padding: 0 var(--chip);
- max-width: 100%;
-}
-/** FEED ITEM **/
-.feed.item {
- position: relative;
- border-radius: 0.5rem;
- overflow: hidden;
- background: rgb(var(--base-50));
- box-shadow: 0 2px 4px rgba(0,0,0,0.1);
- height: fit-content;
- padding: 0;
- details {
- z-index: var(--z-2);
- width: 100%;
- position: relative;
+ .item-grid {
+ max-width: var(--full);
+
+ &:has([data-timeline]) {
+ grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
+ }
+ }
+
+ .item {
+ overflow: hidden;
+ background: rgb(var(--base-50));
+ box-shadow: rgba(var(--base), var(--op-2)) var(--shdw);
+ height: fit-content;
padding: 0;
- summary {
- position:absolute;
- top: -3rem;
- left:0;
+
+ h3 {
+ margin: 0;
+ font-size: var(--txt-medium);
+ }
+
+ details {
+ z-index: var(--z-2);
width: 100%;
- background-color: rgba(var(--base),var(--op-2));
- backdrop-filter: blur(5px);
- &:hover {
- background-color: rgba(var(--action-0),var(--op-45));
- }
- }
- &[open] {
- padding: .25rem .5rem;
- summary .icon {
- opacity: 0;
- }
- }
+ position: relative;
+ padding: 0;
- }
-
- img {
- object-fit: cover;
- width: 100%;
- height: 100%;
- //opacity: .7;
- //filter: grayscale(.5) sepia(.3);
- &:hover {
- opacity: .8;
- }
- }
-
- &[data-timeline] {
- .images {
- aspect-ratio: 3/2;
- padding: 0 0 1rem;
- span {
- width: 50%;
+ summary {
position: absolute;
- background-color: rgb(var(--action-0));
- color: var(--action-contrast);
- padding: .25rem .5rem;
- &:first-of-type {
- bottom: 0;
- right: 50%;
- text-align: right;
- }
- &:last-of-type {
- top: 0;
- left: 50%;
- }
- }
- > a {
- position: relative;
- display: flex;
- flex-wrap: nowrap;
+ top: calc(var(--chip_) * -1);
+ left: 0;
width: 100%;
- height: 100%;
+ background-color: rgba(var(--base), var(--op-2));
+ backdrop-filter: blur(5px);
+
+ &:hover {
+ background-color: rgba(var(--action-0), var(--op-45));
+ }
+ }
+
+ &[open] {
+ padding: .25rem .5rem;
}
}
+
img {
- width: 50%;
- object-fit: cover;
- height: 100%;
- &:first-of-type {
- border-right: 1px solid rgb(var(--action-0));
+ &:hover {
+ opacity: .8;
}
}
- }
+ &[data-timeline] {
+ .images {
+ aspect-ratio: 3/2;
+ padding: 0 0 1rem;
- a {
- &::before,
- &::after {
- display: none;
+ span {
+ width: 50%;
+ position: absolute;
+ background-color: rgb(var(--action-0));
+ color: rgb(var(--action-contrast));
+ padding: .25rem .5rem;
+
+ &:first-of-type {
+ bottom: 0;
+ right: 50%;
+ text-align: right;
+ }
+ &:last-of-type {
+ top: 0;
+ left: 50%;
+ }
+ }
+
+ //> a {
+ // position: relative;
+ // display: flex;
+ // flex-wrap: nowrap;
+ // width: 100%;
+ // height: 100%;
+ //}
+
+ img {
+ width: 50%;
+ &:first-of-type {
+ border-right: 2px solid rgb(var(--action-0));
+ }
+ }
+ }
}
- }
- label {
- font-weight: normal;
- text-transform: none;
- .icon {
+ a {
+ &::before,
+ &::after {
+ display: none;
+ }
+ }
+ label {
+ font-weight: normal;
+ text-transform: none;
--w: 1.5em;
}
}
}
+.all-filters {
+ font-size: var(--txt-x-small);
+ &[open] {
+ border: 2px solid rgb(var(--action-0));
+ padding: 0;
+ border-radius: 0 0 var(--radius-outer) var(--radius-outer);
+ }
-.item-grid:has([data-timeline]) {
- grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
-}
+ summary {
+ width: 100%;
+ }
-.items-wrap [type=radio],
-.items-wrap [type=checkbox] {
- position: absolute;
- opacity: 0;
- left: -200vw;
-}
+ &[open] summary,
+ summary:hover {
+ background-color: rgb(var(--action-0));
+ color: rgb(var(--action-contrast));
+ &::after {
+ background-color: rgb(var(--action-contrast));
+ }
+ }
-.items-wrap [type=radio] + label,
-.items-wrap [type=checkbox] + label {
- position: relative;
- cursor: pointer;
-}
+ >.row.row {
+ padding: 0 .75rem 2rem;
+ width: var(--content);
-.items-wrap [type=radio] + label:hover,
-.items-wrap [type=checkbox] + label:hover {
- color: rgb(var(--action-0));
-}
+ &.search {
+ padding-bottom: 0;
+ }
+ position: relative;
-.items-wrap [type=radio] + label::before,
-.items-wrap [type=checkbox] + label::before,
-.items-wrap [type=radio] + label::after,
-.items-wrap [type=checkbox] + label::after {
- content: '';
- position: absolute;
- top: 50%;
-}
-
-.items-wrap [type=radio] + label::after,
-.items-wrap [type=checkbox] + label::after {
- left: 5px;
- transform: translateY(-70%) rotate(45deg);
- width: 5px;
- height: 10px;
- border: solid var(--light-0);
- border-width: 0 2px 2px 0;
- display: none;
-}
-
-.items-wrap [type=radio] + label::before,
-.items-wrap [type=checkbox] + label::before {
- left: 0;
- transform: translateY(-50%);
- width: 1rem;
- height: 1rem;
- border: 2px solid rgb(var(--contrast-200));
- background-color: rgb(var(--base));
- border-radius: var(--radius);
-}
-
-.items-wrap [type=radio]:hover + label::before,
-.items-wrap [type=checkbox]:hover + label::before {
- border-color: rgb(var(--action-200));
-}
-
-.items-wrap [type=radio]:checked + label::before,
-.items-wrap [type=checkbox]:checked + label::before{
- background-color: rgb(var(--action-0));
- border-color: rgb(var(--action-100));
-}
-
-.items-wrap [type=radio]:checked + label::before {
- border-radius: 50%;
-}
-
-.items-wrap [type=checkbox]:checked + label::after {
- display: block;
- left: 5px;
- top: 50%;
- transform: translateY(-70%) rotate(45deg);
- width: .35rem;
- height: .66rem;
- border: solid var(--light-0);
- border-width: 0 2px 2px 0;
-}
-
-.items-wrap :disabled + label {
- cursor: not-allowed;
- background-color: rgb(var(--base-50));
- color: rgb(var(--base-200));
- border-color: rgb(var(--base-200));
-}
-
-.items-wrap :disabled + label:hover {
- background-color: rgb(var(--base-50));
- color: rgb(var(--base-200));
- border-color: rgb(var(--base-200));
-}
-
-.items-wrap :disabled + label::before {
- border-color: rgb(var(--base-200));
-}
-
-#jvb-selector .items-wrap [type=radio] + label,
-#jvb-selector .items-wrap [type=checkbox] + label{
- flex: 1;
- padding-left: 2rem!important;
- transform-origin: top center;
- will-change: transform;
-}
-
-.feed-block + footer {
- grid-column: full;
- padding: 0!important;
- margin: 0;
- background-color: rgb(var(--base-50));
- z-index: 0;
- display: flex;
- justify-content: flex-end;
- button {
- width: max-content;
- margin-left: auto;
- padding: .35rem .25rem;
- --w: 1.3em!important;
- flex-wrap: nowrap;
- justify-content:flex-start;
- transition: var(--trans-size);
- font-size: var(--txt-x-small);
- min-height: 0;
- span {
- display: none;
+ > .label,
+ > .row > .label {
+ font-family: var(--heading);
+ font-weight: var(--fw-h-bold);
+ text-transform: uppercase;
+ }
+ > .label {
+ width: 20%;
+ }
+ >.row > .label {
white-space: nowrap;
}
- &:focus span,
- &:hover span {
- display: block;
+ }
+
+ button,
+ .btn + label {
+ width: var(--chipchip);
+ min-height: var(--chipchip);
+ padding: 0;
+ }
+
+ button .label,
+ .row:has(> .btn:not(:checked) + label:hover) :checked + label .label,
+ .btn + label .label {
+ position: absolute;
+ bottom: -2rem;
+ width: max-content;
+ white-space: nowrap;
+ opacity: 0;
+ z-index: var(--z-4);
+ }
+
+ button:hover .label,
+ .btn:checked + label .label,
+ .btn + label:hover .label {
+ opacity: 1;
+ }
+
+ .search.row,
+ .view.row {
+ display: none;
+ }
+}
+
+
+.search-container:not(.open) input[type=search],
+.search-container:not(.open) .clear-search {
+ transform: scaleX(0);
+ transform-origin: left;
+ width: 0;
+ padding: 0;
+ transition: transform var(--trans-base), width var(--trans-base), padding var(--trans-base);
+}
+.search-container button {
+ padding: .5rem;
+}
+.search-container .icon {
+ --w: 1.5rem;
+}
+.search-container.open input[type=search],
+.search-container.open .clear-search {
+ transform: scaleX(1);
+ transform-origin: left;
+ transition: transform var(--trans-base), width var(--trans-base), padding var(--trans-base);
+}
+.all-filters > .search,
+input[type=search],
+.search-container {
+ width: 100%;
+}
+
+
+.toggle-text {
+ input {
+ + label {
+ font-weight: normal;
+ color: var(--contrast)!important;
+ text-transform: none;
+ cursor: pointer;
+ position: relative;
+ padding: .25rem .5rem;
+ -webkit-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+ border: 1px dashed transparent;
+
+ &::before,
+ &::after {
+ display: none!important;
+ }
+
+ .text {
+ position: relative;
+ margin: 0;
+ --gap: 0;
+ font-weight: bold;
+ width: fit-content;
+ padding: 2px 4px;
+ border: 1px solid rgb(var(--action-50));
+ border-radius: var(--radius);
+ color: rgb(var(--action-50));
+ }
+
+ .off {
+ --mid: -100%;
+ }
+ .on {
+ --mid: 100%;
+ }
+ .off,
+ .on {
+ transition: var(--trans-transform), opacity var(--trans-base);
+ }
+
+ }
+ + label .off,
+ &:checked + label .on {
+ opacity: 1;
+ max-width: 100%;
+ transform: translate3d(0,0,0);
+ }
+ + label .on,
+ &:checked + label .off {
+ opacity: 0;
+ max-width: 0;
+ transform: translate3d(0,var(--mid),0);
+ }
+ }
+
+
+ &:hover {
+ label {
+ border-color: rgb(var(--action-200));
+ }
+ .text {
+ background-color: rgb(var(--action-50));
+ color: rgb(var(--action-contrast));
+ border-color: rgb(var(--action-50));
}
}
}
+
--
Gitblit v1.10.0