diff --git a/README.md b/README.md index d20aa571..69a6c38b 100644 --- a/README.md +++ b/README.md @@ -29,13 +29,13 @@ Blowfish is designed to be a powerful, lightweight theme for [Hugo](https://gohu - Highly customisable configuration - Firebase integration to support dynamic data - Views count & like mechanism +- Related articles - Multiple homepage layouts -- Support for multiple authors -- Support for series of articles +- Multiple authors +- Series of articles - Flexible with any content types, taxonomies and menus -- Support for header and footer menus -- Support for nested menus -- Support for sub-navigation menu +- Header and footer menus +- Nested menus & sub-navigation menu - Multilingual content support inlcuding support for RTL languages - Ability to link to posts on third-party websites - Support for several shortcodes like Gallery, Timeline, GitHub cards, and Carousels diff --git a/assets/css/compiled/main.css b/assets/css/compiled/main.css index 13d567b4..522cab74 100644 --- a/assets/css/compiled/main.css +++ b/assets/css/compiled/main.css @@ -1,6 +1,6 @@ /*! Blowfish | MIT License | https://github.com/nunocoracao/blowfish */ -/*! tailwindcss v3.3.1 | MIT License | https://tailwindcss.com */ +/*! tailwindcss v3.3.2 | MIT License | https://tailwindcss.com */ /* 1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4) @@ -602,6 +602,9 @@ select { --tw-pan-y: ; --tw-pinch-zoom: ; --tw-scroll-snap-strictness: proximity; + --tw-gradient-from-position: ; + --tw-gradient-via-position: ; + --tw-gradient-to-position: ; --tw-ordinal: ; --tw-slashed-zero: ; --tw-numeric-figure: ; @@ -649,6 +652,9 @@ select { --tw-pan-y: ; --tw-pinch-zoom: ; --tw-scroll-snap-strictness: proximity; + --tw-gradient-from-position: ; + --tw-gradient-via-position: ; + --tw-gradient-to-position: ; --tw-ordinal: ; --tw-slashed-zero: ; --tw-numeric-figure: ; @@ -1353,16 +1359,24 @@ select { right: 0px; } -.right-2 { - right: 0.5rem; +.right-0\.5 { + right: 0.125rem; } -.right-2\.5 { - right: 0.625rem; +.right-1 { + right: 0.25rem; } -.right-7 { - right: 1.75rem; +.right-1\.5 { + right: 0.375rem; +} + +.right-3 { + right: 0.75rem; +} + +.right-9 { + right: 2.25rem; } .right-\[2px\] { @@ -1663,6 +1677,10 @@ select { margin-right: 1.5rem; } +.mr-\[8px\] { + margin-right: 8px; +} + .mr-auto { margin-right: auto; } @@ -1715,12 +1733,12 @@ select { margin-top: 2rem; } -.mt-\[0\.1rem\] { - margin-top: 0.1rem; +.mt-\[0\.15rem\] { + margin-top: 0.15rem; } -.mt-\[3px\] { - margin-top: 3px; +.mt-\[0\.1rem\] { + margin-top: 0.1rem; } .box-border { @@ -1843,6 +1861,10 @@ select { height: 2.25rem; } +.h-\[1\.125rem\] { + height: 1.125rem; +} + .h-\[1000px\] { height: 1000px; } @@ -1879,6 +1901,10 @@ select { height: 32px; } +.h-\[380px\] { + height: 380px; +} + .h-\[3px\] { height: 3px; } @@ -2027,6 +2053,10 @@ select { width: 2.25rem; } +.w-\[1\.125rem\] { + width: 1.125rem; +} + .w-\[15\%\] { width: 15%; } @@ -2524,6 +2554,10 @@ select { border-radius: 1rem; } +.rounded-\[0\.25rem\] { + border-radius: 0.25rem; +} + .rounded-\[0\.6rem\] { border-radius: 0.6rem; } @@ -2560,10 +2594,6 @@ select { border-radius: 0.375rem; } -.rounded-sm { - border-radius: 0.125rem; -} - .rounded-xl { border-radius: 0.75rem; } @@ -2617,6 +2647,10 @@ select { border-width: .125rem; } +.border-\[0\.125rem\] { + border-width: 0.125rem; +} + .border-\[14px\] { border-width: 14px; } @@ -2709,6 +2743,11 @@ select { border-top-color: transparent; } +.\!bg-\[\#858585\] { + --tw-bg-opacity: 1 !important; + background-color: rgb(133 133 133 / var(--tw-bg-opacity)) !important; +} + .\!bg-primary-100 { --tw-bg-opacity: 1 !important; background-color: rgba(var(--color-primary-100), var(--tw-bg-opacity)) !important; @@ -2811,56 +2850,36 @@ select { .from-neutral { --tw-gradient-from: rgba(var(--color-neutral), 1) var(--tw-gradient-from-position); - --tw-gradient-from-position: ; - --tw-gradient-to: rgba(var(--color-neutral), 0) var(--tw-gradient-from-position); - --tw-gradient-to-position: ; + --tw-gradient-to: rgba(var(--color-neutral), 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); } .from-primary-500 { --tw-gradient-from: rgba(var(--color-primary-500), 1) var(--tw-gradient-from-position); - --tw-gradient-from-position: ; - --tw-gradient-to: rgba(var(--color-primary-500), 0) var(--tw-gradient-from-position); - --tw-gradient-to-position: ; + --tw-gradient-to: rgba(var(--color-primary-500), 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); } .to-neutral { --tw-gradient-to: rgba(var(--color-neutral), 1) var(--tw-gradient-to-position); - --tw-gradient-to-position: ; } .to-neutral-100 { --tw-gradient-to: rgba(var(--color-neutral-100), 1) var(--tw-gradient-to-position); - --tw-gradient-to-position: ; } .to-secondary-700 { --tw-gradient-to: rgba(var(--color-secondary-700), 1) var(--tw-gradient-to-position); - --tw-gradient-to-position: ; } .to-transparent { --tw-gradient-to: transparent var(--tw-gradient-to-position); - --tw-gradient-to-position: ; -} - -.bg-contain { - background-size: contain; } .bg-clip-padding { background-clip: padding-box; } -.bg-center { - background-position: center; -} - -.bg-no-repeat { - background-repeat: no-repeat; -} - .fill-\[\#afafaf\] { fill: #afafaf; } @@ -2969,6 +2988,11 @@ select { padding-right: 1.5rem; } +.px-8 { + padding-left: 2rem; + padding-right: 2rem; +} + .px-\[0\.4rem\] { padding-left: 0.4rem; padding-right: 0.4rem; @@ -2989,6 +3013,11 @@ select { padding-right: 30px; } +.px-\[auto\] { + padding-left: auto; + padding-right: auto; +} + .py-0 { padding-top: 0px; padding-bottom: 0px; @@ -3469,6 +3498,10 @@ select { color: rgba(var(--color-primary-800), var(--tw-text-opacity)); } +.underline { + text-decoration-line: underline; +} + .\!no-underline { text-decoration-line: none !important; } @@ -3533,30 +3566,42 @@ select { mix-blend-mode: multiply; } +.shadow { + --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1); + --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color); + box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); +} + .shadow-2xl { --tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25); --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); } +.shadow-\[0_0px_3px_0_rgba\(0\2c 0\2c 0\2c 0\.07\)\2c 0_2px_2px_0_rgba\(0\2c 0\2c 0\2c 0\.04\)\] { + --tw-shadow: 0 0px 3px 0 rgba(0,0,0,0.07),0 2px 2px 0 rgba(0,0,0,0.04); + --tw-shadow-colored: 0 0px 3px 0 var(--tw-shadow-color), 0 2px 2px 0 var(--tw-shadow-color); + box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); +} + .shadow-\[0_10px_15px_-3px_rgba\(0\2c 0\2c 0\2c 0\.07\)\2c 0_4px_6px_-2px_rgba\(0\2c 0\2c 0\2c 0\.05\)\] { --tw-shadow: 0 10px 15px -3px rgba(0,0,0,0.07),0 4px 6px -2px rgba(0,0,0,0.05); --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -2px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); } -.shadow-\[0_10px_15px_-3px_rgba\(0\2c 0\2c 0\2c 0\.1\)\2c 0_4px_6px_-2px_rgba\(0\2c 0\2c 0\2c 0\.05\)\] { - --tw-shadow: 0 10px 15px -3px rgba(0,0,0,0.1),0 4px 6px -2px rgba(0,0,0,0.05); - --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -2px var(--tw-shadow-color); - box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); -} - .shadow-\[0_2px_5px_0_rgba\(0\2c 0\2c 0\2c 0\.16\)\2c _0_2px_10px_0_rgba\(0\2c 0\2c 0\2c 0\.12\)\] { --tw-shadow: 0 2px 5px 0 rgba(0,0,0,0.16), 0 2px 10px 0 rgba(0,0,0,0.12); --tw-shadow-colored: 0 2px 5px 0 var(--tw-shadow-color), 0 2px 10px 0 var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); } +.shadow-\[0px_2px_15px_-3px_rgba\(0\2c 0\2c 0\2c \.07\)\2c _0px_10px_20px_-2px_rgba\(0\2c 0\2c 0\2c \.04\)\] { + --tw-shadow: 0px 2px 15px -3px rgba(0,0,0,.07), 0px 10px 20px -2px rgba(0,0,0,.04); + --tw-shadow-colored: 0px 2px 15px -3px var(--tw-shadow-color), 0px 10px 20px -2px var(--tw-shadow-color); + box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); +} + .shadow-lg { --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1); --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color); @@ -4444,7 +4489,14 @@ body:has(#menu-controller:checked) { } .thumbnail_card { - height: 250px; + height: 200px; + background-repeat:no-repeat; + background-size:cover; + background-position:center; +} + +.thumbnail_card_related { + height: 150px; background-repeat:no-repeat; background-size:cover; background-position:center; @@ -5369,6 +5421,60 @@ body:has(#menu-controller:checked) { background-color: transparent; } +.before\:pointer-events-none::before { + content: var(--tw-content); + pointer-events: none; +} + +.before\:absolute::before { + content: var(--tw-content); + position: absolute; +} + +.before\:h-\[0\.875rem\]::before { + content: var(--tw-content); + height: 0.875rem; +} + +.before\:w-\[0\.875rem\]::before { + content: var(--tw-content); + width: 0.875rem; +} + +.before\:scale-0::before { + content: var(--tw-content); + --tw-scale-x: 0; + --tw-scale-y: 0; + transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); +} + +.before\:rounded-full::before { + content: var(--tw-content); + border-radius: 9999px; +} + +.before\:bg-transparent::before { + content: var(--tw-content); + background-color: transparent; +} + +.before\:opacity-0::before { + content: var(--tw-content); + opacity: 0; +} + +.before\:shadow-\[0px_0px_0px_13px_transparent\]::before { + content: var(--tw-content); + --tw-shadow: 0px 0px 0px 13px transparent; + --tw-shadow-colored: 0px 0px 0px 13px var(--tw-shadow-color); + box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); +} + +.before\:content-\[\'\'\]::before { + --tw-content: ''; + content: var(--tw-content); +} + .after\:clear-both::after { content: var(--tw-content); clear: both; @@ -5388,19 +5494,24 @@ body:has(#menu-controller:checked) { margin-top: 2rem; } +.checked\:before\:opacity-\[0\.16\]:checked::before { + content: var(--tw-content); + opacity: 0.16; +} + .checked\:after\:absolute:checked::after { content: var(--tw-content); position: absolute; } -.checked\:after\:ml-\[5px\]:checked::after { +.checked\:after\:-mt-px:checked::after { content: var(--tw-content); - margin-left: 5px; + margin-top: -1px; } -.checked\:after\:mt-px:checked::after { +.checked\:after\:ml-\[0\.25rem\]:checked::after { content: var(--tw-content); - margin-top: 1px; + margin-left: 0.25rem; } .checked\:after\:block:checked::after { @@ -5408,14 +5519,14 @@ body:has(#menu-controller:checked) { display: block; } -.checked\:after\:h-\[9px\]:checked::after { +.checked\:after\:h-\[0\.8125rem\]:checked::after { content: var(--tw-content); - height: 9px; + height: 0.8125rem; } -.checked\:after\:w-\[5px\]:checked::after { +.checked\:after\:w-\[0\.375rem\]:checked::after { content: var(--tw-content); - width: 5px; + width: 0.375rem; } .checked\:after\:rotate-45:checked::after { @@ -5424,9 +5535,9 @@ body:has(#menu-controller:checked) { transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); } -.checked\:after\:border-2:checked::after { +.checked\:after\:border-\[0\.125rem\]:checked::after { content: var(--tw-content); - border-width: 2px; + border-width: 0.125rem; } .checked\:after\:border-l-0:checked::after { @@ -5594,6 +5705,18 @@ body:has(#menu-controller:checked) { outline-offset: 2px; } +.hover\:before\:opacity-\[0\.04\]:hover::before { + content: var(--tw-content); + opacity: 0.04; +} + +.hover\:before\:shadow-\[0px_0px_0px_13px_rgba\(0\2c 0\2c 0\2c 0\.6\)\]:hover::before { + content: var(--tw-content); + --tw-shadow: 0px 0px 0px 13px rgba(0,0,0,0.6); + --tw-shadow-colored: 0px 0px 0px 13px var(--tw-shadow-color); + box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); +} + .focus\:translate-y-0:focus { --tw-translate-y: 0px; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); @@ -5643,6 +5766,12 @@ body:has(#menu-controller:checked) { opacity: 0.9; } +.focus\:shadow-none:focus { + --tw-shadow: 0 0 #0000; + --tw-shadow-colored: 0 0 #0000; + box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); +} + .focus\:outline-none:focus { outline: 2px solid transparent; outline-offset: 2px; @@ -5660,6 +5789,12 @@ body:has(#menu-controller:checked) { outline-color: transparent; } +.focus\:transition-\[border-color_0\.2s\]:focus { + transition-property: border-color 0.2s; + transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); + transition-duration: 150ms; +} + .focus\:placeholder\:opacity-100:focus::-moz-placeholder { opacity: 1; } @@ -5668,6 +5803,144 @@ body:has(#menu-controller:checked) { opacity: 1; } +.focus\:before\:scale-100:focus::before { + content: var(--tw-content); + --tw-scale-x: 1; + --tw-scale-y: 1; + transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); +} + +.focus\:before\:opacity-\[0\.12\]:focus::before { + content: var(--tw-content); + opacity: 0.12; +} + +.focus\:before\:shadow-\[0px_0px_0px_13px_rgba\(0\2c 0\2c 0\2c 0\.6\)\]:focus::before { + content: var(--tw-content); + --tw-shadow: 0px 0px 0px 13px rgba(0,0,0,0.6); + --tw-shadow-colored: 0px 0px 0px 13px var(--tw-shadow-color); + box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); +} + +.focus\:before\:transition-\[box-shadow_0\.2s\2c transform_0\.2s\]:focus::before { + content: var(--tw-content); + transition-property: box-shadow 0.2s,transform 0.2s; + transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); + transition-duration: 150ms; +} + +.focus\:after\:absolute:focus::after { + content: var(--tw-content); + position: absolute; +} + +.focus\:after\:z-\[1\]:focus::after { + content: var(--tw-content); + z-index: 1; +} + +.focus\:after\:block:focus::after { + content: var(--tw-content); + display: block; +} + +.focus\:after\:h-\[0\.875rem\]:focus::after { + content: var(--tw-content); + height: 0.875rem; +} + +.focus\:after\:w-\[0\.875rem\]:focus::after { + content: var(--tw-content); + width: 0.875rem; +} + +.focus\:after\:rounded-\[0\.125rem\]:focus::after { + content: var(--tw-content); + border-radius: 0.125rem; +} + +.focus\:after\:content-\[\'\'\]:focus::after { + --tw-content: ''; + content: var(--tw-content); +} + +.checked\:focus\:before\:scale-100:focus:checked::before { + content: var(--tw-content); + --tw-scale-x: 1; + --tw-scale-y: 1; + transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); +} + +.checked\:focus\:before\:shadow-\[0px_0px_0px_13px_\#3b71ca\]:focus:checked::before { + content: var(--tw-content); + --tw-shadow: 0px 0px 0px 13px #3b71ca; + --tw-shadow-colored: 0px 0px 0px 13px var(--tw-shadow-color); + box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); +} + +.checked\:focus\:before\:transition-\[box-shadow_0\.2s\2c transform_0\.2s\]:focus:checked::before { + content: var(--tw-content); + transition-property: box-shadow 0.2s,transform 0.2s; + transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); + transition-duration: 150ms; +} + +.checked\:focus\:after\:-mt-px:focus:checked::after { + content: var(--tw-content); + margin-top: -1px; +} + +.checked\:focus\:after\:ml-\[0\.25rem\]:focus:checked::after { + content: var(--tw-content); + margin-left: 0.25rem; +} + +.checked\:focus\:after\:h-\[0\.8125rem\]:focus:checked::after { + content: var(--tw-content); + height: 0.8125rem; +} + +.checked\:focus\:after\:w-\[0\.375rem\]:focus:checked::after { + content: var(--tw-content); + width: 0.375rem; +} + +.checked\:focus\:after\:rotate-45:focus:checked::after { + content: var(--tw-content); + --tw-rotate: 45deg; + transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); +} + +.checked\:focus\:after\:rounded-none:focus:checked::after { + content: var(--tw-content); + border-radius: 0px; +} + +.checked\:focus\:after\:border-\[0\.125rem\]:focus:checked::after { + content: var(--tw-content); + border-width: 0.125rem; +} + +.checked\:focus\:after\:border-l-0:focus:checked::after { + content: var(--tw-content); + border-left-width: 0px; +} + +.checked\:focus\:after\:border-t-0:focus:checked::after { + content: var(--tw-content); + border-top-width: 0px; +} + +.checked\:focus\:after\:border-solid:focus:checked::after { + content: var(--tw-content); + border-style: solid; +} + +.checked\:focus\:after\:bg-transparent:focus:checked::after { + content: var(--tw-content); + background-color: transparent; +} + .active\:bg-\[\#cacfd1\]:active { --tw-bg-opacity: 1; background-color: rgb(202 207 209 / var(--tw-bg-opacity)); @@ -5848,6 +6121,10 @@ body:has(#menu-controller:checked) { display: block; } +.data-\[popper-reference-hidden\]\:hidden[data-popper-reference-hidden] { + display: none; +} + .data-\[te-input-state-active\]\:-translate-y-\[0\.75rem\][data-te-input-state-active] { --tw-translate-y: -0.75rem; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); @@ -5933,10 +6210,6 @@ body:has(#menu-controller:checked) { cursor: default; } -.group[data-te-select-option-text-ref] .group-data-\[te-select-option-text-ref\]\:mr-2\.5 { - margin-right: 0.625rem; -} - .group\/validation[data-te-was-validated] .group-data-\[te-was-validated\]\/validation\:mb-4 { margin-bottom: 1rem; } @@ -6290,28 +6563,22 @@ body:has(#menu-controller:checked) { :is(.dark .dark\:from-neutral-800) { --tw-gradient-from: rgba(var(--color-neutral-800), 1) var(--tw-gradient-from-position); - --tw-gradient-from-position: ; - --tw-gradient-to: rgba(var(--color-neutral-800), 0) var(--tw-gradient-from-position); - --tw-gradient-to-position: ; + --tw-gradient-to: rgba(var(--color-neutral-800), 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); } :is(.dark .dark\:from-primary-600) { --tw-gradient-from: rgba(var(--color-primary-600), 1) var(--tw-gradient-from-position); - --tw-gradient-from-position: ; - --tw-gradient-to: rgba(var(--color-primary-600), 0) var(--tw-gradient-from-position); - --tw-gradient-to-position: ; + --tw-gradient-to: rgba(var(--color-primary-600), 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); } :is(.dark .dark\:to-neutral-800) { --tw-gradient-to: rgba(var(--color-neutral-800), 1) var(--tw-gradient-to-position); - --tw-gradient-to-position: ; } :is(.dark .dark\:to-secondary-800) { --tw-gradient-to: rgba(var(--color-secondary-800), 1) var(--tw-gradient-to-position); - --tw-gradient-to-position: ; } :is(.dark .dark\:\!text-primary-400) { @@ -6418,6 +6685,20 @@ body:has(#menu-controller:checked) { color: rgba(var(--color-primary-400), var(--tw-text-opacity)); } +:is(.dark .dark\:focus\:before\:shadow-\[0px_0px_0px_13px_rgba\(255\2c 255\2c 255\2c 0\.4\)\]:focus)::before { + content: var(--tw-content); + --tw-shadow: 0px 0px 0px 13px rgba(255,255,255,0.4); + --tw-shadow-colored: 0px 0px 0px 13px var(--tw-shadow-color); + box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); +} + +:is(.dark .dark\:checked\:focus\:before\:shadow-\[0px_0px_0px_13px_\#3b71ca\]:focus:checked)::before { + content: var(--tw-content); + --tw-shadow: 0px 0px 0px 13px #3b71ca; + --tw-shadow-colored: 0px 0px 0px 13px var(--tw-shadow-color); + box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); +} + :is(.dark .group:hover .dark\:group-hover\:text-neutral-700) { --tw-text-opacity: 1; color: rgba(var(--color-neutral-700), var(--tw-text-opacity)); @@ -6428,6 +6709,11 @@ body:has(#menu-controller:checked) { color: rgba(var(--color-primary-400), var(--tw-text-opacity)); } +:is(.dark .group[data-te-datepicker-cell-disabled] .dark\:group-\[\[data-te-datepicker-cell-disabled\]\]\:text-neutral-500) { + --tw-text-opacity: 1; + color: rgba(var(--color-neutral-500), var(--tw-text-opacity)); +} + @media print { .print\:hidden { display: none; @@ -6724,14 +7010,6 @@ body:has(#menu-controller:checked) { } } -@media not all and (min-width: 853px) { - @media (orientation: landscape) { - .max-md\:landscape\:h-8 { - height: 2rem; - } - } -} - @media (min-width: 320px) { @media (max-width: 825px) { @media (orientation: landscape) { diff --git a/assets/css/main.css b/assets/css/main.css index 5ac7bb23..bc69caeb 100644 --- a/assets/css/main.css +++ b/assets/css/main.css @@ -348,7 +348,14 @@ body:has(#menu-controller:checked) { } .thumbnail_card { - height: 250px; + height: 200px; + background-repeat:no-repeat; + background-size:cover; + background-position:center; +} + +.thumbnail_card_related { + height: 150px; background-repeat:no-repeat; background-size:cover; background-position:center; diff --git a/assets/icons/substack.svg b/assets/icons/substack.svg new file mode 100644 index 00000000..fa0a9541 --- /dev/null +++ b/assets/icons/substack.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/config/_default/config.toml b/config/_default/config.toml index 755fd4fe..632d7650 100644 --- a/config/_default/config.toml +++ b/config/_default/config.toml @@ -33,3 +33,33 @@ buildFuture = false [outputs] home = ["HTML", "RSS", "JSON"] + +[related] + threshold = 0 + toLower = false + + [[related.indices]] + name = "tags" + weight = 100 + + [[related.indices]] + name = "categories" + weight = 100 + + [[related.indices]] + name = "series" + weight = 50 + + [[related.indices]] + name = "authors" + weight = 20 + + [[related.indices]] + name = "date" + weight = 10 + + [[related.indices]] + applyFilter = false + name = 'fragmentrefs' + type = 'fragments' + weight = 10 diff --git a/config/_default/params.toml b/config/_default/params.toml index 852c18d8..fad98102 100644 --- a/config/_default/params.toml +++ b/config/_default/params.toml @@ -18,6 +18,7 @@ enableCodeCopy = false disableImageOptimization = false # defaultBackgroundImage = "IMAGE.jpg" # used as default for background images +# defaultFeaturedImage = "IMAGE.jpg" # used as default for featured images in all articles # highlightCurrentMenuArea = true # smartTOC = true @@ -65,6 +66,8 @@ disableImageOptimization = false invertPagination = false showReadingTime = true showTableOfContents = false + # showRelatedContent = false + # relatedContentLimit = 3 showTaxonomies = false showAuthorsBadges = false showWordCount = true diff --git a/exampleSite/assets/img/blowfish.jpg b/exampleSite/assets/img/blowfish.jpg new file mode 100644 index 00000000..ad842eab Binary files /dev/null and b/exampleSite/assets/img/blowfish.jpg differ diff --git a/exampleSite/assets/img/ocean.jpg b/exampleSite/assets/img/ocean.jpg new file mode 100644 index 00000000..9f1220a6 Binary files /dev/null and b/exampleSite/assets/img/ocean.jpg differ diff --git a/exampleSite/assets/js/home.js b/exampleSite/assets/js/home.js index a267286c..fc8e5583 100644 --- a/exampleSite/assets/js/home.js +++ b/exampleSite/assets/js/home.js @@ -35,8 +35,8 @@ window.addEventListener("DOMContentLoaded", (event) => { }); var list_config = [ - "CardViewScreenWidth", "CardViewProse", + "CardViewScreenWidth", "NormalView" ] diff --git a/exampleSite/config/_default/config.toml b/exampleSite/config/_default/config.toml index 668d0d88..2046ac89 100644 --- a/exampleSite/config/_default/config.toml +++ b/exampleSite/config/_default/config.toml @@ -33,3 +33,33 @@ googleAnalytics = "G-PEDMYR1V0K" [outputs] home = ["HTML", "RSS", "JSON"] + +[related] + threshold = 0 + toLower = false + + [[related.indices]] + name = "tags" + weight = 100 + + [[related.indices]] + name = "categories" + weight = 100 + + [[related.indices]] + name = "series" + weight = 50 + + [[related.indices]] + name = "authors" + weight = 20 + + [[related.indices]] + name = "date" + weight = 10 + + [[related.indices]] + applyFilter = false + name = 'fragmentrefs' + type = 'fragments' + weight = 10 diff --git a/exampleSite/config/_default/menus.en.toml b/exampleSite/config/_default/menus.en.toml index d1e317b9..c8df8eb0 100644 --- a/exampleSite/config/_default/menus.en.toml +++ b/exampleSite/config/_default/menus.en.toml @@ -15,37 +15,36 @@ pageRef = "docs" weight = 10 -[[main]] - name = "Examples" - weight = 20 +#[[main]] +# name = "Examples" +# weight = 20 + -[[main]] - name = "Recipes" - parent = "Examples" - pageRef = "guides" - weight = 10 [[main]] name = "Samples" - parent = "Examples" pageRef = "samples" weight = 20 [[main]] name = "Showcase" - parent = "Examples" pageRef = "examples" weight = 30 [[main]] - name = "Users" - pageRef = "users" + name = "Recipes" + pageRef = "guides" weight = 40 [[main]] - name = "Merch" - url = "http://tee.pub/lic/qwSlWVBL5zc" - weight = 50 + name = "Users" + pageRef = "users" + weight = 90 + +#[[main]] +# name = "Merch" +# url = "http://tee.pub/lic/qwSlWVBL5zc" +# weight = 100 #[[main]] # name = "Test" @@ -56,19 +55,19 @@ identifier = "twitter" pre = "twitter" url = "https://twitter.com/burufugu" - weight = 60 + weight = 200 [[main]] identifier = "mastodon" pre = "mastodon" url = "https://masto.ai/@blowfish" - weight = 70 + weight = 300 [[main]] identifier = "github" pre = "github" url = "https://github.com/nunocoracao/blowfish" - weight = 80 + weight = 400 # -- Footer Menu -- diff --git a/exampleSite/config/_default/params.toml b/exampleSite/config/_default/params.toml index 2f1f1a83..39d9072e 100644 --- a/exampleSite/config/_default/params.toml +++ b/exampleSite/config/_default/params.toml @@ -17,7 +17,8 @@ mainSections = ["docs"] disableImageOptimization = false -defaultBackgroundImage = "/img/bg.jpg" +defaultBackgroundImage = "/img/ocean.jpg" +defaultFeaturedImage = "/img/ocean.jpg" highlightCurrentMenuArea = true smartTOC = true @@ -37,7 +38,7 @@ smartTOCHideUnfocusedChildren = true layout = "custom" # valid options: page, profile, hero, card, background, custom # homepageImage = "/img/iceland.jpg" # used in: hero, and card showRecent = false - showRecentItems = 10 + showRecentItems = 6 showMoreLink = true showMoreLinkDest = "docs" cardView = false @@ -64,6 +65,8 @@ smartTOCHideUnfocusedChildren = true invertPagination = false showReadingTime = true showTableOfContents = true + showRelatedContent = true + relatedContentLimit = 6 showTaxonomies = true showAuthorsBadges = true showWordCount = false diff --git a/exampleSite/content/docs/configuration/index.md b/exampleSite/content/docs/configuration/index.md index da01b965..69066178 100644 --- a/exampleSite/content/docs/configuration/index.md +++ b/exampleSite/content/docs/configuration/index.md @@ -106,7 +106,7 @@ The default file can be used as a template to create additional languages, or re | `dateFormat` | `"2 January 2006"` | How dates are formatted in this language. Refer to the [Hugo docs](https://gohugo.io/functions/format/#gos-layout-string) for acceptable formats. | | `title` | `"Blowfish"` | The title of the website. This will be displayed in the site header and footer. | | `description` | _Not set_ | The website description. This will be used in the site metadata. | -| `copyright` | _Not set_ | A Markdown string for the site footer copyright message can include the placeholder { year } to dynamically insert the current year. If none is provided, Blowfish will automatically generate a copyright string using the site `title`. | +| `copyright` | _Not set_ | A Markdown string for the site footer copyright message can include the placeholder { year } to dynamically insert the current year. If none is provided, Blowfish will automatically generate a copyright string using the site `title`. | | `author.name` | _Not set_ | The author's name. This will be displayed in article footers, and on the homepage when the profile layout is used. | | `author.image` | _Not set_ | Path to the image file of the author. The image should be a 1:1 aspect ratio and placed in the site's `assets/` folder. | | `author.headline` | _Not set_ | A Markdown string containing the author's headline. It will be displayed on the profile homepage under the author's name. | @@ -147,14 +147,15 @@ Many of the article defaults here can be overridden on a per article basis by sp | `disableImageZoom` | `false` | Disables image zoom feature across all the images in the site. | | `disableImageOptimization` | `false` | Disables image resize and optimization features across all the images in the site. | | `defaultBackgroundImage` | _Not set_ | Default background image for both `background` homepage layout and `background` hero style | -| `defaultBackgrouclearndImage` | _Not set_ | Marks menu entries in the main manu when selected | +| `defaultFeaturedImage` | _Not set_ | Default background image for all `featured` images across articles, will be overriden by a local `featured` image. | +| `highlightCurrentMenuArea` | _Not set_ | Marks menu entries in the main manu when selected | | `smartTOC` | _Not set_ | Activate smart Table of Contents, items in view will be highlighted. | | `smartTOCHideUnfocusedChildren` | _Not set_ | When smart Table of Contents is turned on, this will hide deeper levels of the table when they are not in focus. | ### Header -| Name | Default | Description | -| --------------- | --------- | --------------------------------------------------------------------------------- | +| Name | Default | Description | +| --------------- | --------- | ------------------------------------------------------------------------------------------------------------------- | | `header.layout` | `"basic"` | Defines the header for the entire site, supported values are `basic`, `fixed`, `fixed-fill`, and `fixed-fill-blur`. | ### Footer @@ -180,34 +181,36 @@ Many of the article defaults here can be overridden on a per article basis by sp | `homepage.layoutBackgroundBlur` | `false` | Makes the background image in the homepage layout blur with the scroll | ### Article -| Name | Default | Description | -| ------------------------------------- | --------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `article.showDate` | `true` | Whether or not article dates are displayed. | -| `article.showViews` | `false` | Whether or not article views are displayed. This requires firebase integrations to be enabled, look below. | -| `article.showLikes` | `false` | Whether or not article likes are displayed. This requires firebase integrations to be enabled, look below. | -| `article.showDateUpdated` | `false` | Whether or not the dates articles were updated are displayed. | -| `article.showAuthor` | `true` | Whether or not the author box is displayed in the article footer. | -| `article.showHero` | `false` | Whether the thumbnail image will be shown as a hero image within each article page. | -| `article.heroStyle` | _Not set_ | Style to display the hero image, valid options are: `basic`, `big`, `background`, `thumbAndBackground`. | -| `article.layoutBackgroundBlur` | `true` | Makes the background image in the background article heroStyle blur with the scroll | -| `article.layoutBackgroundHeaderSpace` | `true` | Add space between the header and the body. | -| `article.showBreadcrumbs` | `false` | Whether or not breadcrumbs are displayed in the article header. | -| `article.showDraftLabel` | `true` | Whether or not the draft indicator is shown next to articles when site is built with `--buildDrafts`. | -| `article.showEdit` | `false` | Whether or not the link to edit the article content should be displayed. | -| `article.editURL` | _Not set_ | When `article.showEdit` is active, the URL for the edit link. | -| `article.editAppendPath` | `true` | When `article.showEdit` is active, whether or not the path to the current article should be appended to the URL set at `article.editURL`. | -| `article.seriesOpened` | `false` | Whether or not the series module will be displayed open by default or not. | -| `article.showHeadingAnchors` | `true` | Whether or not heading anchor links are displayed alongside headings within articles. | -| `article.showPagination` | `true` | Whether or not the next/previous article links are displayed in the article footer. | -| `article.invertPagination` | `false` | Whether or not to flip the direction of the next/previous article links. | -| `article.showReadingTime` | `true` | Whether or not article reading times are displayed. | -| `article.showTableOfContents` | `false` | Whether or not the table of contents is displayed on articles. | -| `article.showTaxonomies` | `false` | Whether or not the taxonomies related to this article are displayed. | -| `article.showAuthorsBadges` | `false` | Whether the `authors` taxonomies are are displayed in the article or list header. This requires the setup of `multiple authors` and the `authors` taxonomy. Check [this page]({{< ref "multi-author" >}}) for more details on how to configure that feature. | -| `article.showWordCount` | `false` | Whether or not article word counts are displayed. | -| `article.showComments` | `false` | Whether or not the [comments partial]({{< ref "partials#comments" >}}) is included after the article footer. | -| `article.showSummary` | `false` | Whether or not article summaries are displayed on list pages. If a summary is not provided in the [front matter]({{< ref "front-matter" >}}), one will be auto generated using the `summaryLength` parameter in the [site configuration](#site-configuration). | -| `article.sharingLinks` | _Not set_ | Which sharing links to display at the end of each article. When not provided, or set to `false` no links will be displayed. Available values are: "linkedin", "twitter", "reddit", "pinterest", "facebook", "email", "whatsapp", and "telegram" | +| Name | Default | Description | +| ------------------------------------- | --------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `article.showDate` | `true` | Whether or not article dates are displayed. | +| `article.showViews` | `false` | Whether or not article views are displayed. This requires firebase integrations to be enabled, look below. | +| `article.showLikes` | `false` | Whether or not article likes are displayed. This requires firebase integrations to be enabled, look below. | +| `article.showDateUpdated` | `false` | Whether or not the dates articles were updated are displayed. | +| `article.showAuthor` | `true` | Whether or not the author box is displayed in the article footer. | +| `article.showHero` | `false` | Whether the thumbnail image will be shown as a hero image within each article page. | +| `article.heroStyle` | _Not set_ | Style to display the hero image, valid options are: `basic`, `big`, `background`, `thumbAndBackground`. | +| `article.layoutBackgroundBlur` | `true` | Makes the background image in the background article heroStyle blur with the scroll | +| `article.layoutBackgroundHeaderSpace` | `true` | Add space between the header and the body. | +| `article.showBreadcrumbs` | `false` | Whether or not breadcrumbs are displayed in the article header. | +| `article.showDraftLabel` | `true` | Whether or not the draft indicator is shown next to articles when site is built with `--buildDrafts`. | +| `article.showEdit` | `false` | Whether or not the link to edit the article content should be displayed. | +| `article.editURL` | _Not set_ | When `article.showEdit` is active, the URL for the edit link. | +| `article.editAppendPath` | `true` | When `article.showEdit` is active, whether or not the path to the current article should be appended to the URL set at `article.editURL`. | +| `article.seriesOpened` | `false` | Whether or not the series module will be displayed open by default or not. | +| `article.showHeadingAnchors` | `true` | Whether or not heading anchor links are displayed alongside headings within articles. | +| `article.showPagination` | `true` | Whether or not the next/previous article links are displayed in the article footer. | +| `article.invertPagination` | `false` | Whether or not to flip the direction of the next/previous article links. | +| `article.showReadingTime` | `true` | Whether or not article reading times are displayed. | +| `article.showTableOfContents` | `false` | Whether or not the table of contents is displayed on articles. | +| `article.showRelatedContent` | `false` | Display related content for each post. Might required additional configuration to your `config.toml`. Please check the theme `config.toml` if you want to enable this feature and copy all the relevant *related* entries. Also check [Hugo's docs](https://gohugo.io/content-management/related/) on related content. | +| `article.relatedContentLimit` | `3` | Limit of related articles to display if ` showRelatedContent` is turned on. | +| `article.showTaxonomies` | `false` | Whether or not the taxonomies related to this article are displayed. | +| `article.showAuthorsBadges` | `false` | Whether the `authors` taxonomies are are displayed in the article or list header. This requires the setup of `multiple authors` and the `authors` taxonomy. Check [this page]({{< ref "multi-author" >}}) for more details on how to configure that feature. | +| `article.showWordCount` | `false` | Whether or not article word counts are displayed. | +| `article.showComments` | `false` | Whether or not the [comments partial]({{< ref "partials#comments" >}}) is included after the article footer. | +| `article.showSummary` | `false` | Whether or not article summaries are displayed on list pages. If a summary is not provided in the [front matter]({{< ref "front-matter" >}}), one will be auto generated using the `summaryLength` parameter in the [site configuration](#site-configuration). | +| `article.sharingLinks` | _Not set_ | Which sharing links to display at the end of each article. When not provided, or set to `false` no links will be displayed. Available values are: "linkedin", "twitter", "reddit", "pinterest", "facebook", "email", "whatsapp", and "telegram" | ### List diff --git a/exampleSite/content/docs/hosting-deployment/index.md b/exampleSite/content/docs/hosting-deployment/index.md index 0231c410..8caa2e27 100644 --- a/exampleSite/content/docs/hosting-deployment/index.md +++ b/exampleSite/content/docs/hosting-deployment/index.md @@ -4,7 +4,7 @@ date: 2020-08-07 draft: false description: "Learn how to deploy a Blowfish site." slug: "hosting-deployment" -tags: ["hosting", "deployment", "docs", "github", "netlify", "render"] +tags: ["docs", "hosting", "deployment", "github", "netlify", "render"] series: ["Documentation"] series_order: 14 --- diff --git a/exampleSite/content/samples/_index.md b/exampleSite/content/samples/_index.md index 0378f4b1..eea24692 100755 --- a/exampleSite/content/samples/_index.md +++ b/exampleSite/content/samples/_index.md @@ -5,6 +5,7 @@ description: "See what's possible with Blowfish." cascade: showEdit: false showSummary: false + hideFeatureImage: false --- {{< lead >}} diff --git a/exampleSite/content/samples/charts/featured.jpg b/exampleSite/content/samples/charts/featured.jpg new file mode 100644 index 00000000..66d78707 Binary files /dev/null and b/exampleSite/content/samples/charts/featured.jpg differ diff --git a/exampleSite/content/samples/charts.md b/exampleSite/content/samples/charts/index.md similarity index 100% rename from exampleSite/content/samples/charts.md rename to exampleSite/content/samples/charts/index.md diff --git a/exampleSite/content/samples/diagrams-flowcharts/featured.jpg b/exampleSite/content/samples/diagrams-flowcharts/featured.jpg new file mode 100644 index 00000000..a8e8206c Binary files /dev/null and b/exampleSite/content/samples/diagrams-flowcharts/featured.jpg differ diff --git a/exampleSite/content/samples/diagrams-flowcharts.md b/exampleSite/content/samples/diagrams-flowcharts/index.md similarity index 100% rename from exampleSite/content/samples/diagrams-flowcharts.md rename to exampleSite/content/samples/diagrams-flowcharts/index.md diff --git a/exampleSite/content/samples/emoji/featured.jpg b/exampleSite/content/samples/emoji/featured.jpg new file mode 100644 index 00000000..ead95a3e Binary files /dev/null and b/exampleSite/content/samples/emoji/featured.jpg differ diff --git a/exampleSite/content/samples/emoji.md b/exampleSite/content/samples/emoji/index.md similarity index 100% rename from exampleSite/content/samples/emoji.md rename to exampleSite/content/samples/emoji/index.md diff --git a/exampleSite/content/samples/external/featured.jpg b/exampleSite/content/samples/external/featured.jpg new file mode 100644 index 00000000..046dbeb2 Binary files /dev/null and b/exampleSite/content/samples/external/featured.jpg differ diff --git a/exampleSite/content/samples/external.md b/exampleSite/content/samples/external/index.md similarity index 100% rename from exampleSite/content/samples/external.md rename to exampleSite/content/samples/external/index.md diff --git a/exampleSite/content/samples/icons/featured.jpg b/exampleSite/content/samples/icons/featured.jpg new file mode 100644 index 00000000..0afbee29 Binary files /dev/null and b/exampleSite/content/samples/icons/featured.jpg differ diff --git a/exampleSite/content/samples/icons/index.md b/exampleSite/content/samples/icons/index.md index c651b825..3881f0b7 100644 --- a/exampleSite/content/samples/icons/index.md +++ b/exampleSite/content/samples/icons/index.md @@ -93,6 +93,7 @@ The full list of built-in icons and their corresponding names can referenced bel | star | {{< icon star >}} | | steam | {{< icon steam >}} | | stripe | {{< icon stripe >}} | +| substack | {{< icon substack >}} | | sun | {{< icon sun >}} | | tag | {{< icon tag >}} | | telegram | {{< icon telegram >}} | diff --git a/exampleSite/content/samples/markdown/featured.jpg b/exampleSite/content/samples/markdown/featured.jpg new file mode 100644 index 00000000..fe947062 Binary files /dev/null and b/exampleSite/content/samples/markdown/featured.jpg differ diff --git a/exampleSite/content/samples/markdown.md b/exampleSite/content/samples/markdown/index.md similarity index 100% rename from exampleSite/content/samples/markdown.md rename to exampleSite/content/samples/markdown/index.md diff --git a/exampleSite/content/samples/mathematical-notation/featured.jpg b/exampleSite/content/samples/mathematical-notation/featured.jpg new file mode 100644 index 00000000..01a75a7e Binary files /dev/null and b/exampleSite/content/samples/mathematical-notation/featured.jpg differ diff --git a/exampleSite/content/samples/mathematical-notation.md b/exampleSite/content/samples/mathematical-notation/index.md similarity index 100% rename from exampleSite/content/samples/mathematical-notation.md rename to exampleSite/content/samples/mathematical-notation/index.md diff --git a/exampleSite/content/samples/multiple-authors/featured.jpg b/exampleSite/content/samples/multiple-authors/featured.jpg new file mode 100644 index 00000000..35b66e15 Binary files /dev/null and b/exampleSite/content/samples/multiple-authors/featured.jpg differ diff --git a/exampleSite/content/samples/multiple-authors.md b/exampleSite/content/samples/multiple-authors/index.md similarity index 100% rename from exampleSite/content/samples/multiple-authors.md rename to exampleSite/content/samples/multiple-authors/index.md diff --git a/exampleSite/content/samples/placeholder-text.md b/exampleSite/content/samples/placeholder-text/index.md similarity index 100% rename from exampleSite/content/samples/placeholder-text.md rename to exampleSite/content/samples/placeholder-text/index.md diff --git a/exampleSite/content/samples/rich-content/featured.jpg b/exampleSite/content/samples/rich-content/featured.jpg new file mode 100644 index 00000000..e3bf88d2 Binary files /dev/null and b/exampleSite/content/samples/rich-content/featured.jpg differ diff --git a/exampleSite/content/samples/rich-content.md b/exampleSite/content/samples/rich-content/index.md similarity index 100% rename from exampleSite/content/samples/rich-content.md rename to exampleSite/content/samples/rich-content/index.md diff --git a/exampleSite/content/samples/thumbnail_sample/featured.jpg b/exampleSite/content/samples/thumbnail_sample/featured.jpg new file mode 100644 index 00000000..ab14a7f0 Binary files /dev/null and b/exampleSite/content/samples/thumbnail_sample/featured.jpg differ diff --git a/exampleSite/content/users/index.md b/exampleSite/content/users/index.md index 07856722..64e8bc26 100644 --- a/exampleSite/content/users/index.md +++ b/exampleSite/content/users/index.md @@ -72,6 +72,7 @@ Real websites that are built with Blowfish. | [ripplesding.github.io](https://ripplesding.github.io/) | Personal site | | [terraformbuch.de](https://terraformbuch.de/) | Book site | | [shenshu.fun](https://shenshu.fun/) | Personal site | +| [hellstabber.github.io](https://hellstabber.github.io/) | Personal site | {{< alert >}} diff --git a/exampleSite/layouts/partials/recent-articles-demo.html b/exampleSite/layouts/partials/recent-articles-demo.html index 495cf779..d3660166 100644 --- a/exampleSite/layouts/partials/recent-articles-demo.html +++ b/exampleSite/layouts/partials/recent-articles-demo.html @@ -9,7 +9,7 @@
This is a demo of theme's list configurations: card view with full width + id="config">card view
-
- {{ partial "recent-articles/cardview-fullwidth.html" . }} +
+ {{ partial "recent-articles/cardview.html" . }}
- -
+
{{ with .Site.Author.image }} {{ $authorImage := resources.Get . }} {{ if $authorImage }} diff --git a/layouts/partials/related.html b/layouts/partials/related.html new file mode 100644 index 00000000..f24f86ca --- /dev/null +++ b/layouts/partials/related.html @@ -0,0 +1,11 @@ +{{ if .Params.showRelatedContent | default (.Site.Params.article.showRelatedContent | default false)}} +{{ $related := .Site.RegularPages.Related . | first .Site.Params.article.relatedContentLimit }} +{{ with $related }} +

{{ i18n "article.related_articles" | emojify }}

+
+ {{ range . }} + {{ partial "article-link/card-related.html" . }} + {{ end }} +
+{{ end }} +{{ end }} \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 0209290e..073c2ce0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "hugo-blowfish-theme", - "version": "2.32.0", + "version": "2.32.1", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "hugo-blowfish-theme", - "version": "2.32.0", + "version": "2.32.1", "hasInstallScript": true, "license": "MIT", "dependencies": { @@ -22,16 +22,27 @@ "jquery": "^3.6.4", "katex": "^0.16.6", "packery": "^2.1.2", - "prettier": "^2.8.7", + "prettier": "^2.8.8", "prettier-plugin-go-template": "^0.0.13", "prettier-plugin-tailwindcss": "^0.2.7", "rimraf": "^5.0.0", - "tailwindcss": "^3.3.1", + "tailwindcss": "^3.3.2", "tw-elements": "1.0.0-beta2", "typeit": "^8.7.1", "vendor-copy": "^3.0.1" } }, + "node_modules/@alloc/quick-lru": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz", + "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/@headlessui/react": { "version": "1.7.14", "resolved": "https://registry.npmjs.org/@headlessui/react/-/react-1.7.14.tgz", @@ -55,6 +66,54 @@ "react": ">= 16" } }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", + "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.18", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz", + "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==", + "dependencies": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + } + }, + "node_modules/@jridgewell/trace-mapping/node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" + }, "node_modules/@kurkle/color": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/@kurkle/color/-/color-0.3.1.tgz", @@ -258,7 +317,8 @@ "node_modules/color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true }, "node_modules/commander": { "version": "10.0.1", @@ -488,9 +548,9 @@ } }, "node_modules/is-core-module": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.10.0.tgz", - "integrity": "sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==", + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.0.tgz", + "integrity": "sha512-RECHCBCd/viahWmwj6enj19sKbHfJrddi/6cBDsNTKbNq0f7VeaUkBo60BqzvPqo/W54ChS62Z5qyun7cfOMqQ==", "dependencies": { "has": "^1.0.3" }, @@ -571,9 +631,9 @@ } }, "node_modules/lilconfig": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.6.tgz", - "integrity": "sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", + "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", "engines": { "node": ">=10" } @@ -685,9 +745,15 @@ } }, "node_modules/nanoid": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", - "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", + "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], "bin": { "nanoid": "bin/nanoid.cjs" }, @@ -825,9 +891,9 @@ } }, "node_modules/postcss": { - "version": "8.4.18", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.18.tgz", - "integrity": "sha512-Wi8mWhncLJm11GATDaQKobXSNEYGUHeQLiQqDFG1qQ5UTDPTEvKw0Xt5NsTpktGTwLps3ByrWsBrG0rB8YQ9oA==", + "version": "8.4.23", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.23.tgz", + "integrity": "sha512-bQ3qMcpF6A/YjR55xtoTr0jGOlnPOKAIMdOWiv0EIT6HVPEaJiJB4NLljSbiHoC2RX7DN5Uvjtpbg1NPdwv1oA==", "funding": [ { "type": "opencollective", @@ -836,10 +902,14 @@ { "type": "tidelift", "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" } ], "dependencies": { - "nanoid": "^3.3.4", + "nanoid": "^3.3.6", "picocolors": "^1.0.0", "source-map-js": "^1.0.2" }, @@ -851,6 +921,7 @@ "version": "14.1.0", "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.1.0.tgz", "integrity": "sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==", + "dev": true, "dependencies": { "postcss-value-parser": "^4.0.0", "read-cache": "^1.0.0", @@ -864,9 +935,9 @@ } }, "node_modules/postcss-js": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.0.tgz", - "integrity": "sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.1.tgz", + "integrity": "sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==", "dependencies": { "camelcase-css": "^2.0.1" }, @@ -878,13 +949,14 @@ "url": "https://opencollective.com/postcss/" }, "peerDependencies": { - "postcss": "^8.3.3" + "postcss": "^8.4.21" } }, "node_modules/postcss-load-config": { "version": "3.1.4", "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.4.tgz", "integrity": "sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==", + "dev": true, "dependencies": { "lilconfig": "^2.0.5", "yaml": "^1.10.2" @@ -913,6 +985,7 @@ "version": "6.0.0", "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.0.0.tgz", "integrity": "sha512-0DkamqrPcmkBDsLn+vQDIrtkSbNkv5AD/M322ySo9kqFkCIYklym2xEmWkwo+Y3/qZo34tzEPNUw4y7yMCdv5w==", + "dev": true, "dependencies": { "postcss-selector-parser": "^6.0.10" }, @@ -931,6 +1004,7 @@ "version": "6.0.10", "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz", "integrity": "sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==", + "dev": true, "dependencies": { "cssesc": "^3.0.0", "util-deprecate": "^1.0.2" @@ -945,9 +1019,9 @@ "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" }, "node_modules/prettier": { - "version": "2.8.7", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.7.tgz", - "integrity": "sha512-yPngTo3aXUUmyuTjeTUT75txrf+aMh9FiD7q9ZE/i6r0bPb22g4FsE6Y338PQX1bmfy08i9QQCB7/rcUAVntfw==", + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", + "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", "dev": true, "bin": { "prettier": "bin-prettier.js" @@ -1071,6 +1145,7 @@ "version": "5.1.1", "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", + "dev": true, "engines": { "node": ">=10" }, @@ -1123,11 +1198,11 @@ } }, "node_modules/resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "version": "1.22.2", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", + "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", "dependencies": { - "is-core-module": "^2.9.0", + "is-core-module": "^2.11.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -1205,10 +1280,11 @@ } }, "node_modules/sucrase": { - "version": "3.31.0", - "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.31.0.tgz", - "integrity": "sha512-6QsHnkqyVEzYcaiHsOKkzOtOgdJcb8i54x6AV2hDwyZcY9ZyykGZVw6L/YN98xC0evwTP6utsWWrKRaa8QlfEQ==", + "version": "3.32.0", + "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.32.0.tgz", + "integrity": "sha512-ydQOU34rpSyj2TGyz4D2p8rbktIOZ8QY9s+DGLvFU1i5pWJE8vkpruCjGCMHsdXwnD7JDcS+noSwM/a7zyNFDQ==", "dependencies": { + "@jridgewell/gen-mapping": "^0.3.2", "commander": "^4.0.0", "glob": "7.1.6", "lines-and-columns": "^1.1.6", @@ -1283,44 +1359,102 @@ } }, "node_modules/tailwindcss": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.3.1.tgz", - "integrity": "sha512-Vkiouc41d4CEq0ujXl6oiGFQ7bA3WEhUZdTgXAhtKxSy49OmKs8rEfQmupsfF0IGW8fv2iQkp1EVUuapCFrZ9g==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.3.2.tgz", + "integrity": "sha512-9jPkMiIBXvPc2KywkraqsUfbfj+dHDb+JPWtSJa9MLFdrPyazI7q6WX2sUrm7R9eVR7qqv3Pas7EvQFzxKnI6w==", "dependencies": { + "@alloc/quick-lru": "^5.2.0", "arg": "^5.0.2", "chokidar": "^3.5.3", - "color-name": "^1.1.4", "didyoumean": "^1.2.2", "dlv": "^1.1.3", "fast-glob": "^3.2.12", "glob-parent": "^6.0.2", "is-glob": "^4.0.3", - "jiti": "^1.17.2", - "lilconfig": "^2.0.6", + "jiti": "^1.18.2", + "lilconfig": "^2.1.0", "micromatch": "^4.0.5", "normalize-path": "^3.0.0", "object-hash": "^3.0.0", "picocolors": "^1.0.0", - "postcss": "^8.0.9", - "postcss-import": "^14.1.0", - "postcss-js": "^4.0.0", - "postcss-load-config": "^3.1.4", - "postcss-nested": "6.0.0", + "postcss": "^8.4.23", + "postcss-import": "^15.1.0", + "postcss-js": "^4.0.1", + "postcss-load-config": "^4.0.1", + "postcss-nested": "^6.0.1", "postcss-selector-parser": "^6.0.11", "postcss-value-parser": "^4.2.0", - "quick-lru": "^5.1.1", - "resolve": "^1.22.1", - "sucrase": "^3.29.0" + "resolve": "^1.22.2", + "sucrase": "^3.32.0" }, "bin": { "tailwind": "lib/cli.js", "tailwindcss": "lib/cli.js" }, "engines": { - "node": ">=12.13.0" + "node": ">=14.0.0" + } + }, + "node_modules/tailwindcss/node_modules/postcss-import": { + "version": "15.1.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.1.0.tgz", + "integrity": "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==", + "dependencies": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + }, + "engines": { + "node": ">=14.0.0" }, "peerDependencies": { - "postcss": "^8.0.9" + "postcss": "^8.0.0" + } + }, + "node_modules/tailwindcss/node_modules/postcss-load-config": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.1.tgz", + "integrity": "sha512-vEJIc8RdiBRu3oRAI0ymerOn+7rPuMvRXslTvZUKZonDHFIczxztIyJ1urxM1x9JXEikvpWWTUUqal5j/8QgvA==", + "dependencies": { + "lilconfig": "^2.0.5", + "yaml": "^2.1.1" + }, + "engines": { + "node": ">= 14" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": ">=8.0.9", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "postcss": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/tailwindcss/node_modules/postcss-nested": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.0.1.tgz", + "integrity": "sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==", + "dependencies": { + "postcss-selector-parser": "^6.0.11" + }, + "engines": { + "node": ">=12.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": "^8.2.14" } }, "node_modules/tailwindcss/node_modules/postcss-selector-parser": { @@ -1335,6 +1469,14 @@ "node": ">=4" } }, + "node_modules/tailwindcss/node_modules/yaml": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.2.2.tgz", + "integrity": "sha512-CBKFWExMn46Foo4cldiChEzn7S7SRV+wqiluAb6xmueD/fGyRHIhX8m14vVGgeFWjN540nKCNVj6P21eQjgTuA==", + "engines": { + "node": ">= 14" + } + }, "node_modules/thenify": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", @@ -1491,12 +1633,18 @@ "version": "1.10.2", "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "dev": true, "engines": { "node": ">= 6" } } }, "dependencies": { + "@alloc/quick-lru": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz", + "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==" + }, "@headlessui/react": { "version": "1.7.14", "resolved": "https://registry.npmjs.org/@headlessui/react/-/react-1.7.14.tgz", @@ -1511,6 +1659,47 @@ "integrity": "sha512-90GMZktkA53YbNzHp6asVEDevUQCMtxWH+2UK2S8OpnLEu7qckTJPhNxNQG52xIR1WFTwFqtH6bt7a60ZNcLLA==", "requires": {} }, + "@jridgewell/gen-mapping": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", + "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "requires": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==" + }, + "@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==" + }, + "@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" + }, + "@jridgewell/trace-mapping": { + "version": "0.3.18", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz", + "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==", + "requires": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + }, + "dependencies": { + "@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" + } + } + }, "@kurkle/color": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/@kurkle/color/-/color-0.3.1.tgz", @@ -1666,7 +1855,8 @@ "color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true }, "commander": { "version": "10.0.1", @@ -1852,9 +2042,9 @@ } }, "is-core-module": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.10.0.tgz", - "integrity": "sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==", + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.0.tgz", + "integrity": "sha512-RECHCBCd/viahWmwj6enj19sKbHfJrddi/6cBDsNTKbNq0f7VeaUkBo60BqzvPqo/W54ChS62Z5qyun7cfOMqQ==", "requires": { "has": "^1.0.3" } @@ -1912,9 +2102,9 @@ } }, "lilconfig": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.6.tgz", - "integrity": "sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==" + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", + "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==" }, "lines-and-columns": { "version": "1.2.4", @@ -1999,9 +2189,9 @@ } }, "nanoid": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", - "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==" + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", + "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==" }, "ncp": { "version": "2.0.0", @@ -2100,11 +2290,11 @@ "integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==" }, "postcss": { - "version": "8.4.18", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.18.tgz", - "integrity": "sha512-Wi8mWhncLJm11GATDaQKobXSNEYGUHeQLiQqDFG1qQ5UTDPTEvKw0Xt5NsTpktGTwLps3ByrWsBrG0rB8YQ9oA==", + "version": "8.4.23", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.23.tgz", + "integrity": "sha512-bQ3qMcpF6A/YjR55xtoTr0jGOlnPOKAIMdOWiv0EIT6HVPEaJiJB4NLljSbiHoC2RX7DN5Uvjtpbg1NPdwv1oA==", "requires": { - "nanoid": "^3.3.4", + "nanoid": "^3.3.6", "picocolors": "^1.0.0", "source-map-js": "^1.0.2" } @@ -2113,6 +2303,7 @@ "version": "14.1.0", "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.1.0.tgz", "integrity": "sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==", + "dev": true, "requires": { "postcss-value-parser": "^4.0.0", "read-cache": "^1.0.0", @@ -2120,9 +2311,9 @@ } }, "postcss-js": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.0.tgz", - "integrity": "sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.1.tgz", + "integrity": "sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==", "requires": { "camelcase-css": "^2.0.1" } @@ -2131,6 +2322,7 @@ "version": "3.1.4", "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.4.tgz", "integrity": "sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==", + "dev": true, "requires": { "lilconfig": "^2.0.5", "yaml": "^1.10.2" @@ -2140,6 +2332,7 @@ "version": "6.0.0", "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.0.0.tgz", "integrity": "sha512-0DkamqrPcmkBDsLn+vQDIrtkSbNkv5AD/M322ySo9kqFkCIYklym2xEmWkwo+Y3/qZo34tzEPNUw4y7yMCdv5w==", + "dev": true, "requires": { "postcss-selector-parser": "^6.0.10" } @@ -2148,6 +2341,7 @@ "version": "6.0.10", "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz", "integrity": "sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==", + "dev": true, "requires": { "cssesc": "^3.0.0", "util-deprecate": "^1.0.2" @@ -2159,9 +2353,9 @@ "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" }, "prettier": { - "version": "2.8.7", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.7.tgz", - "integrity": "sha512-yPngTo3aXUUmyuTjeTUT75txrf+aMh9FiD7q9ZE/i6r0bPb22g4FsE6Y338PQX1bmfy08i9QQCB7/rcUAVntfw==", + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", + "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", "dev": true }, "prettier-plugin-go-template": { @@ -2188,7 +2382,8 @@ "quick-lru": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", - "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==" + "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", + "dev": true }, "react": { "version": "18.2.0", @@ -2226,11 +2421,11 @@ } }, "resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "version": "1.22.2", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", + "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", "requires": { - "is-core-module": "^2.9.0", + "is-core-module": "^2.11.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" } @@ -2272,10 +2467,11 @@ "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==" }, "sucrase": { - "version": "3.31.0", - "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.31.0.tgz", - "integrity": "sha512-6QsHnkqyVEzYcaiHsOKkzOtOgdJcb8i54x6AV2hDwyZcY9ZyykGZVw6L/YN98xC0evwTP6utsWWrKRaa8QlfEQ==", + "version": "3.32.0", + "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.32.0.tgz", + "integrity": "sha512-ydQOU34rpSyj2TGyz4D2p8rbktIOZ8QY9s+DGLvFU1i5pWJE8vkpruCjGCMHsdXwnD7JDcS+noSwM/a7zyNFDQ==", "requires": { + "@jridgewell/gen-mapping": "^0.3.2", "commander": "^4.0.0", "glob": "7.1.6", "lines-and-columns": "^1.1.6", @@ -2327,36 +2523,62 @@ "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" }, "tailwindcss": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.3.1.tgz", - "integrity": "sha512-Vkiouc41d4CEq0ujXl6oiGFQ7bA3WEhUZdTgXAhtKxSy49OmKs8rEfQmupsfF0IGW8fv2iQkp1EVUuapCFrZ9g==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.3.2.tgz", + "integrity": "sha512-9jPkMiIBXvPc2KywkraqsUfbfj+dHDb+JPWtSJa9MLFdrPyazI7q6WX2sUrm7R9eVR7qqv3Pas7EvQFzxKnI6w==", "requires": { + "@alloc/quick-lru": "^5.2.0", "arg": "^5.0.2", "chokidar": "^3.5.3", - "color-name": "^1.1.4", "didyoumean": "^1.2.2", "dlv": "^1.1.3", "fast-glob": "^3.2.12", "glob-parent": "^6.0.2", "is-glob": "^4.0.3", - "jiti": "^1.17.2", - "lilconfig": "^2.0.6", + "jiti": "^1.18.2", + "lilconfig": "^2.1.0", "micromatch": "^4.0.5", "normalize-path": "^3.0.0", "object-hash": "^3.0.0", "picocolors": "^1.0.0", - "postcss": "^8.0.9", - "postcss-import": "^14.1.0", - "postcss-js": "^4.0.0", - "postcss-load-config": "^3.1.4", - "postcss-nested": "6.0.0", + "postcss": "^8.4.23", + "postcss-import": "^15.1.0", + "postcss-js": "^4.0.1", + "postcss-load-config": "^4.0.1", + "postcss-nested": "^6.0.1", "postcss-selector-parser": "^6.0.11", "postcss-value-parser": "^4.2.0", - "quick-lru": "^5.1.1", - "resolve": "^1.22.1", - "sucrase": "^3.29.0" + "resolve": "^1.22.2", + "sucrase": "^3.32.0" }, "dependencies": { + "postcss-import": { + "version": "15.1.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.1.0.tgz", + "integrity": "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==", + "requires": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + } + }, + "postcss-load-config": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.1.tgz", + "integrity": "sha512-vEJIc8RdiBRu3oRAI0ymerOn+7rPuMvRXslTvZUKZonDHFIczxztIyJ1urxM1x9JXEikvpWWTUUqal5j/8QgvA==", + "requires": { + "lilconfig": "^2.0.5", + "yaml": "^2.1.1" + } + }, + "postcss-nested": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.0.1.tgz", + "integrity": "sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==", + "requires": { + "postcss-selector-parser": "^6.0.11" + } + }, "postcss-selector-parser": { "version": "6.0.11", "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", @@ -2365,6 +2587,11 @@ "cssesc": "^3.0.0", "util-deprecate": "^1.0.2" } + }, + "yaml": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.2.2.tgz", + "integrity": "sha512-CBKFWExMn46Foo4cldiChEzn7S7SRV+wqiluAb6xmueD/fGyRHIhX8m14vVGgeFWjN540nKCNVj6P21eQjgTuA==" } } }, @@ -2496,7 +2723,8 @@ "yaml": { "version": "1.10.2", "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==" + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "dev": true } } } diff --git a/package.json b/package.json index 7bccda0e..14c012df 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "hugo-blowfish-theme", - "version": "2.32.1", + "version": "2.33.0", "description": "Blowfish theme for Hugo", "scripts": { "fullinstall": "npm run preinstall && npm install && npm run postinstall", @@ -40,11 +40,11 @@ "jquery": "^3.6.4", "katex": "^0.16.6", "packery": "^2.1.2", - "prettier": "^2.8.7", + "prettier": "^2.8.8", "prettier-plugin-go-template": "^0.0.13", "prettier-plugin-tailwindcss": "^0.2.7", "rimraf": "^5.0.0", - "tailwindcss": "^3.3.1", + "tailwindcss": "^3.3.2", "tw-elements": "1.0.0-beta2", "typeit": "^8.7.1", "vendor-copy": "^3.0.1"