mirror of
https://github.com/tiennm99/HugoBlox-kit.git
synced 2026-10-13 22:15:11 +00:00
feat(navbar): port logo, submenus, button
add `header.navbar.fixed_to_top` bool option make biography blox compatible with dark section class center views in Collections and List tpl add features and feature_icon options to cta-image-paragraph view
This commit is contained in:
1 parent
d31adfedd4
commit
5a4b7ec721
22 files changed
+3910
-1654
No files matched your search
@@ -103,11 +103,11 @@ body:
|
||||
- Microsoft Edge
|
||||
- Other
|
||||
- type: input
|
||||
id: wowchemy-tpl
|
||||
id: hb-tpl
|
||||
attributes:
|
||||
label: Which Wowchemy template are you using?
|
||||
description: 'For example, a template from https://hugoblox.com/hugo-themes/'
|
||||
placeholder: 'e.g., Academic Resume'
|
||||
label: Which Hugo Blox template are you using?
|
||||
description: 'For example, a template from https://hugoblox.com/templates/'
|
||||
placeholder: 'e.g., Academic CV'
|
||||
validations:
|
||||
required: true
|
||||
- type: input
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
**/vendor/
|
||||
**/_vendor/
|
||||
**/libs/
|
||||
**/dist/
|
||||
public/
|
||||
|
||||
blox-bootstrap/assets/scss/main.scss
|
||||
|
||||
@@ -3,17 +3,17 @@
|
||||
**************************************************/
|
||||
|
||||
/* MOVED TO HTML */
|
||||
/*.skill-group-title {*/
|
||||
/* display: inline-block;*/
|
||||
/* margin-bottom: 15px;*/
|
||||
/* padding-bottom: 5px;*/
|
||||
/* border-bottom: 2px solid #c7c7c7;*/
|
||||
/* font-size: 1rem;*/
|
||||
/* line-height: 30px;*/
|
||||
/* font-weight: 600;*/
|
||||
/* text-transform: uppercase;*/
|
||||
/* letter-spacing: 1px;*/
|
||||
/*}*/
|
||||
/* .skill-group-title { */
|
||||
/* display: inline-block; */
|
||||
/* margin-bottom: 15px; */
|
||||
/* padding-bottom: 5px; */
|
||||
/* border-bottom: 2px solid #c7c7c7; */
|
||||
/* font-size: 1rem; */
|
||||
/* line-height: 30px; */
|
||||
/* font-weight: 600; */
|
||||
/* text-transform: uppercase; */
|
||||
/* letter-spacing: 1px; */
|
||||
/* } */
|
||||
|
||||
.skills-content {
|
||||
margin-bottom: 15px;
|
||||
@@ -21,15 +21,15 @@
|
||||
|
||||
.skills-name {
|
||||
margin-bottom: 6px;
|
||||
/*color: #888;*/ /* Inaccessible */
|
||||
/* color: #888; */ /* Inaccessible */
|
||||
font-size: 1rem;
|
||||
letter-spacing: 1px;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
/*.dark .skills-name {*/
|
||||
/* color: #eee;*/
|
||||
/*}*/
|
||||
/* .dark .skills-name { */
|
||||
/* color: #eee; */
|
||||
/* } */
|
||||
|
||||
.skills-description {
|
||||
margin-bottom: 6px;
|
||||
|
||||
@@ -0,0 +1,71 @@
|
||||
/* Navigation Styles */
|
||||
|
||||
.navbar {
|
||||
@apply relative flex flex-wrap items-center justify-between;
|
||||
}
|
||||
|
||||
.navbar-brand {
|
||||
@apply text-black dark:text-white text-xl font-semibold;
|
||||
}
|
||||
|
||||
.navbar-brand svg {
|
||||
@apply max-h-full max-w-full h-[1em] w-auto inline-block;
|
||||
}
|
||||
|
||||
.navbar-brand img {
|
||||
/* To shrink to line height, add: h-[1em] */
|
||||
@apply max-h-full w-auto inline-block;
|
||||
}
|
||||
|
||||
/* navbar toggler */
|
||||
input#nav-toggle:checked + label #show-button {
|
||||
@apply hidden;
|
||||
}
|
||||
|
||||
input#nav-toggle:checked + label #hide-button {
|
||||
@apply block;
|
||||
}
|
||||
|
||||
input#nav-toggle:checked ~ #nav-menu {
|
||||
@apply block;
|
||||
}
|
||||
|
||||
#site-header.header {
|
||||
@apply bg-white dark:bg-slate-900 py-3 shadow;
|
||||
}
|
||||
|
||||
/* navbar items */
|
||||
|
||||
.navbar-nav {
|
||||
@apply text-center lg:text-left;
|
||||
}
|
||||
|
||||
.nav-link {
|
||||
@apply hover:text-primary-700 dark:hover:text-primary-300 dark:text-white block p-3 font-semibold transition lg:px-2 lg:py-3;
|
||||
}
|
||||
|
||||
.nav-dropdown {
|
||||
@apply mr-0;
|
||||
|
||||
& > svg {
|
||||
@apply pointer-events-none;
|
||||
}
|
||||
|
||||
&.active {
|
||||
.nav-dropdown-list {
|
||||
@apply block;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.nav-dropdown-list {
|
||||
@apply bg-white dark:bg-slate-900 z-10 min-w-[180px] rounded py-4 shadow hidden lg:invisible lg:absolute lg:block lg:opacity-0;
|
||||
}
|
||||
|
||||
.nav-dropdown-item {
|
||||
@apply px-4 [&:not(:last-child)]:mb-2 dark:hover:bg-primary-500;
|
||||
}
|
||||
|
||||
.nav-dropdown-link {
|
||||
@apply hover:text-primary-700 dark:text-white dark:hover:text-white block py-1 font-semibold transition;
|
||||
}
|
||||
@@ -3,5 +3,6 @@
|
||||
|
||||
/*! Hugo Blox Components | https://hugoblox.com */
|
||||
@import "main.css";
|
||||
@import "nav.css";
|
||||
@import "./components/all.css";
|
||||
@import "./blox/all.css";
|
||||
+2
-2
@@ -1,2 +1,2 @@
|
||||
/*! tailwindcss v3.3.5 | MIT License | https://tailwindcss.com*/*,:after,:before{-webkit-box-sizing:border-box;box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter var,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;-webkit-font-feature-settings:normal;font-feature-settings:normal;font-variation-settings:normal}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;-webkit-font-feature-settings:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;background-color:initial;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:initial}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{opacity:1;color:#9ca3af}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input:-ms-input-placeholder,textarea:-ms-input-placeholder{opacity:1;color:#9ca3af}input::-ms-input-placeholder,textarea::-ms-input-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--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: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::-ms-backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--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: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;Line truncated
|
||||
/*! Hugo Blox Components | https://hugoblox.com */:root{--color-neutral-50:250 250 250;--color-neutral-100:245 245 245;--color-neutral-200:229 229 229;--color-neutral-300:212 212 212;--color-neutral-400:163 163 163;--color-neutral-500:115 115 115;--color-neutral-600:82 82 82;--color-neutral-700:64 64 64;--color-neutral-800:38 38 38;--color-neutral-900:23 23 23;--color-neutral-950:10 10 10;--color-secondary-50:250 250 250;--color-secondary-100:244 244 245;--color-secondary-200:228 228 231;--color-secondary-300:212 212 216;--color-secondary-400:161 161 170;--color-secondary-500:113 113 122;--color-secondary-600:82 82 91;--color-secondary-700:63 63 70;--color-secondary-800:39 39 42;--color-secondary-900:24 24 27;--color-secondary-950:9 9 11}.hbb-section{margin-bottom:2.5rem}.hbb-section:last-child{margin-bottom:0}.home-section-bg{position:absolute;top:0;left:0;height:100%;width:100%;z-index:-1}.home-section-bg.bg-image{background-position:50%;background-repeat:no-repeat;background-size:cover}.bg-video{position:absolute;top:0;max-height:none}.bg-video.flip{-webkit-transform:rotateY(180deg);transform:rotateY(180deg)}.parallax{background-attachment:fixed}.page-wrapper{min-height:100vh;display:grid;grid-template-rows:auto 1fr auto;grid-template-columns:100%}.page-footer,.page-header{-ms-flex-negative:0;flex-shrink:0}.page-body{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.article-header{position:relative;clear:both}.article-banner{width:100%;height:260px;-o-object-fit:cover;object-fit:cover}.featured-image-wrapper{position:relative;padding-left:0;padding-right:0}.featured-image{position:relative;width:100%;display:block;margin:0 auto}.article-header-caption{position:absolute;bottom:0;right:0;margin:0 auto;padding:2px 5px;color:#fff;font-size:.7em;background:#000;text-align:right;z-index:5;opacity:.65;border-radius:5px 0 0}@media (min-width:64em){.article-header-caption{padding:5px 10px}}.article-header-caption a{color:#fff;text-decoration:none}#page-bg{position:fixed;left:0;right:0;height:100%;width:100%;z-index:-1;display:block}ul.task-list{list-style:none}ul.task-list li input[type=checkbox]{margin-right:.5rem}ul.task-list input[type=checkbox]:checked{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:1em;height:1em;border:none;background:initial;position:relative}ul.task-list input[type=checkbox]:not(:checked){width:.9em;height:.9em}ul.task-list input[type=checkbox]:checked:after{content:"✅"}.highlight{position:relative;z-index:0}.highlight:hover>.copy-button{visibility:visible}.copy-button{visibility:hidden;position:absolute;right:0;top:0;z-index:10;width:5rem;cursor:pointer;white-space:nowrap;border-bottom-left-radius:.375rem;border-top-right-radius:.375rem;--tw-bg-opacity:1;background-color:rgb(var(--color-neutral-200)/var(--tw-bg-opacity));padding-top:.25rem;padding-bottom:.25rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(var(--color-neutral-700)/var(--tw-text-opacity));opacity:.9}:is(.dark .copy-button){--tw-bg-opacity:1;background-color:rgb(var(--color-neutral-600)/var(--tw-bg-opacity));--tw-text-opacity:1;color:rgb(var(--color-neutral-200)/var(--tw-text-opacity))}.copy-button:active,.copy-button:active:hover,.copy-button:focus,.copy-button:hover{--tw-bg-opacity:1;background-color:rgb(var(--color-primary-100)/var(--tw-bg-opacity))}:is(.dark .copy-button:active),:is(.dark .copy-button:active:hover),:is(.dark .copy-button:focus),:is(.dark .copy-button:hover){--tw-bg-opacity:1;background-color:rgb(var(--color-primary-600)/var(--tw-bg-opacity))}.blox-biography{#profile{text-align:center;padding:30px 10px;position:relative}.avatar{width:auto;height:auto;max-width:225px;max-height:225px;-o-object-fit:cover;object-fit:cover}.network-icon{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;list-style:none;padding:0;margin:0}#profile .network-icon{margin-top:.5rem}.network-icon li{margin-right:10px;@media (max-width:640px){margin-right:12px}}.network-icon li:last-of-type{margin-right:0}.network-icon li:hover{-webkit-transform:scale(1.2);transform:scale(1.2)}.big-icon{font-size:2rem}.ul-interests li{font-size:.9rem}.ul-edu{list-style:none}.ul-edu li{position:relative;padding:0 15px 4px 3px}.ul-edu li .description p{margin:0}.ul-edu li .description p.course{font-size:.9rem}.ul-edu li .description p.institution{font-size:.75rem}.network-icon .big-icon{font-size:1.5rem}.dark .portrait-title h3{color:#ffffffe6;font-weight:700}.dark .portrait-title h2{color:#fff;font-weight:700}.bio-text{max-width:680px}}.avatar-wrapper{position:relative;width:150px;height:150px;margin-left:auto;margin-right:auto}.avatar-emoji{position:absolute;width:40px;height:40px;lLine truncated
|
||||
/*! tailwindcss v3.3.5 | MIT License | https://tailwindcss.com*/*,:after,:before{-webkit-box-sizing:border-box;box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter var,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;-webkit-font-feature-settings:normal;font-feature-settings:normal;font-variation-settings:normal}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;-webkit-font-feature-settings:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;background-color:initial;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:initial}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{opacity:1;color:#9ca3af}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input:-ms-input-placeholder,textarea:-ms-input-placeholder{opacity:1;color:#9ca3af}input::-ms-input-placeholder,textarea::-ms-input-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--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: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::-ms-backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--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: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;Line truncated
|
||||
/*! Hugo Blox Components | https://hugoblox.com */:root{--color-neutral-50:250 250 250;--color-neutral-100:245 245 245;--color-neutral-200:229 229 229;--color-neutral-300:212 212 212;--color-neutral-400:163 163 163;--color-neutral-500:115 115 115;--color-neutral-600:82 82 82;--color-neutral-700:64 64 64;--color-neutral-800:38 38 38;--color-neutral-900:23 23 23;--color-neutral-950:10 10 10;--color-secondary-50:250 250 250;--color-secondary-100:244 244 245;--color-secondary-200:228 228 231;--color-secondary-300:212 212 216;--color-secondary-400:161 161 170;--color-secondary-500:113 113 122;--color-secondary-600:82 82 91;--color-secondary-700:63 63 70;--color-secondary-800:39 39 42;--color-secondary-900:24 24 27;--color-secondary-950:9 9 11}.hbb-section{margin-bottom:2.5rem}.hbb-section:last-child{margin-bottom:0}.home-section-bg{position:absolute;top:0;left:0;height:100%;width:100%;z-index:-1}.home-section-bg.bg-image{background-position:50%;background-repeat:no-repeat;background-size:cover}.bg-video{position:absolute;top:0;max-height:none}.bg-video.flip{-webkit-transform:rotateY(180deg);transform:rotateY(180deg)}.parallax{background-attachment:fixed}.navbar{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.navbar-brand{font-size:1.25rem;line-height:1.75rem;font-weight:600;--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity))}:is(.dark .navbar-brand){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.navbar-brand svg{height:1em;max-width:100%}.navbar-brand img,.navbar-brand svg{display:inline-block;max-height:100%;width:auto}input#nav-toggle:checked+label #show-button{display:none}input#nav-toggle:checked+label #hide-button,input#nav-toggle:checked~#nav-menu{display:block}#site-header.header{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity));padding-top:.75rem;padding-bottom:.75rem;--tw-shadow:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);-webkit-box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}:is(.dark #site-header.header){--tw-bg-opacity:1;background-color:rgb(15 23 42/var(--tw-bg-opacity))}.navbar-nav{text-align:center}@media (min-width:1024px){.navbar-nav{text-align:left}}.nav-link{display:block;padding:.75rem;font-weight:600;-webkit-transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,-webkit-box-shadow,-webkit-transform,-webkit-filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,-webkit-box-shadow,-webkit-transform,-webkit-filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-box-shadow,-webkit-transform,-webkit-filter,-webkit-backdrop-filter;-webkit-transition-timing-function:cubic-bezier(.4,0,.2,1);transition-timing-function:cubic-bezier(.4,0,.2,1);-webkit-transition-duration:.15s;transition-duration:.15s}.nav-link:hover{--tw-text-opacity:1;color:rgb(var(--color-primary-700)/var(--tw-text-opacity))}:is(.dark .nav-link){--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}:is(.dark .nav-link:hover){--tw-text-opacity:1;color:rgb(var(--color-primary-300)/var(--tw-text-opacity))}@media (min-width:1024px){.nav-link{padding:.75rem .5rem}}.nav-dropdown{margin-right:0;&>svg{pointer-events:none}&.active{.nav-dropdown-list{display:block}}}.nav-dropdown-list{z-index:10;display:none;min-width:180px;border-radius:.25rem;--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity));padding-top:1rem;padding-bottom:1rem;--tw-shadow:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);-webkit-box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}:is(.dark .nav-dropdown-list){--tw-bg-opacity:1;background-color:rgb(15 23 42/var(--tw-bg-opacity))}@media (min-width:1024px){.nav-dropdown-list{visibility:hidden;position:absolute;display:block;opacity:0}}.nav-dropdown-item{padding-left:1rem;padding-right:1rem}:is(.dark .nav-dropdown-item:hover){--tw-bg-opacity:1;background-color:rgb(var(--color-primary-500)/var(--tw-bg-opacity))}.nav-dropdown-item:not(:last-child){margin-bottom:.5rem}.nav-dropdown-link{display:blLine truncated
|
||||
@@ -0,0 +1,21 @@
|
||||
// Navigation
|
||||
|
||||
const applyScrollPadding = () => {
|
||||
const header = document.querySelector('.page-header');
|
||||
let position = header.getBoundingClientRect();
|
||||
document.documentElement.style.scrollPaddingTop = position.height.toString() + 'px';
|
||||
};
|
||||
|
||||
window.addEventListener("DOMContentLoaded", () => {
|
||||
const dropdownMenus = document.querySelectorAll(
|
||||
".nav-dropdown > .nav-link",
|
||||
);
|
||||
|
||||
dropdownMenus.forEach((toggler) => {
|
||||
toggler?.addEventListener("click", (e) => {
|
||||
e.target.parentElement.classList.toggle("active");
|
||||
});
|
||||
});
|
||||
|
||||
applyScrollPadding()
|
||||
});
|
||||
@@ -1,3 +0,0 @@
|
||||
# Wowchemy metadata
|
||||
|
||||
version = "0.1.0"
|
||||
@@ -0,0 +1,3 @@
|
||||
# Hugo Blox metadata
|
||||
|
||||
version: "0.1.0"
|
||||
+3302
-1339
File diff suppressed because it is too large.
Load diff
@@ -1,82 +0,0 @@
|
||||
# Page Sharer
|
||||
# Documentation: https://docs.hugoblox.com/reference/page-sharer/
|
||||
|
||||
[[buttons]]
|
||||
id = "twitter"
|
||||
url = "https://twitter.com/intent/tweet?url={url}&text={title}"
|
||||
title = "Twitter"
|
||||
icon_pack = "fab"
|
||||
icon = "twitter"
|
||||
enable = true
|
||||
|
||||
[[buttons]]
|
||||
id = "facebook"
|
||||
url = "https://www.facebook.com/sharer.php?u={url}&t={title}"
|
||||
title = "Facebook"
|
||||
icon_pack = "fab"
|
||||
icon = "facebook"
|
||||
enable = true
|
||||
|
||||
[[buttons]]
|
||||
id = "email"
|
||||
url = "mailto:?subject={title}&body={url}"
|
||||
title = "Email"
|
||||
icon_pack = "fas"
|
||||
icon = "envelope"
|
||||
enable = true
|
||||
|
||||
[[buttons]]
|
||||
id = "linkedin"
|
||||
url = "https://www.linkedin.com/shareArticle?url={url}&title={title}"
|
||||
title = "LinkedIn"
|
||||
icon_pack = "fab"
|
||||
icon = "linkedin-in"
|
||||
enable = true
|
||||
|
||||
[[buttons]]
|
||||
id = "whatsapp"
|
||||
url = "whatsapp://send?text={title}%20{url}"
|
||||
title = "WhatsApp"
|
||||
icon_pack = "fab"
|
||||
icon = "whatsapp"
|
||||
enable = true
|
||||
|
||||
[[buttons]]
|
||||
id = "weibo"
|
||||
url = "https://service.weibo.com/share/share.php?url={url}&title={title}"
|
||||
title = "Weibo"
|
||||
icon_pack = "fab"
|
||||
icon = "weibo"
|
||||
enable = true
|
||||
|
||||
[[buttons]]
|
||||
id = "reddit"
|
||||
url = "https://reddit.com/submit?url={url}&title={title}"
|
||||
title = "Reddit"
|
||||
icon_pack = "fab"
|
||||
icon = "reddit-alien"
|
||||
enable = false
|
||||
|
||||
[[buttons]]
|
||||
id = "pinterest"
|
||||
url = "https://pinterest.com/pin/create/link/?url={url}&description={title}"
|
||||
title = "Pinterest"
|
||||
icon_pack = "fab"
|
||||
icon = "pinterest"
|
||||
enable = false
|
||||
|
||||
[[buttons]]
|
||||
id = "xing"
|
||||
url = "https://www.xing.com/spi/shares/new?url={url}&title={title}"
|
||||
title = "Xing"
|
||||
icon_pack = "fab"
|
||||
icon = "xing"
|
||||
enable = false
|
||||
|
||||
[[buttons]]
|
||||
id = "tumblr"
|
||||
url = "https://www.tumblr.com/widgets/share/tool?canonicalUrl={url}&title={title}"
|
||||
title = "Tumblr"
|
||||
icon_pack = "fab"
|
||||
icon = "tumblr"
|
||||
enable = false
|
||||
@@ -0,0 +1,65 @@
|
||||
# Hugo Blox
|
||||
# Social sharing buttons
|
||||
# Docs: https://docs.hugoblox.com/reference/page-sharer/
|
||||
|
||||
buttons:
|
||||
- id: twitter
|
||||
url: 'https://twitter.com/intent/tweet?url={url}&text={title}'
|
||||
title: Twitter
|
||||
icon_pack: fab
|
||||
icon: twitter
|
||||
enable: true
|
||||
- id: facebook
|
||||
url: 'https://www.facebook.com/sharer.php?u={url}&t={title}'
|
||||
title: Facebook
|
||||
icon_pack: fab
|
||||
icon: facebook
|
||||
enable: true
|
||||
- id: email
|
||||
url: 'mailto:?subject={title}&body={url}'
|
||||
title: Email
|
||||
icon_pack: fas
|
||||
icon: envelope
|
||||
enable: true
|
||||
- id: linkedin
|
||||
url: 'https://www.linkedin.com/shareArticle?url={url}&title={title}'
|
||||
title: LinkedIn
|
||||
icon_pack: fab
|
||||
icon: linkedin-in
|
||||
enable: true
|
||||
- id: whatsapp
|
||||
url: 'whatsapp://send?text={title}%20{url}'
|
||||
title: WhatsApp
|
||||
icon_pack: fab
|
||||
icon: whatsapp
|
||||
enable: true
|
||||
- id: weibo
|
||||
url: 'https://service.weibo.com/share/share.php?url={url}&title={title}'
|
||||
title: Weibo
|
||||
icon_pack: fab
|
||||
icon: weibo
|
||||
enable: true
|
||||
- id: reddit
|
||||
url: 'https://reddit.com/submit?url={url}&title={title}'
|
||||
title: Reddit
|
||||
icon_pack: fab
|
||||
icon: reddit-alien
|
||||
enable: false
|
||||
- id: pinterest
|
||||
url: 'https://pinterest.com/pin/create/link/?url={url}&description={title}'
|
||||
title: Pinterest
|
||||
icon_pack: fab
|
||||
icon: pinterest
|
||||
enable: false
|
||||
- id: xing
|
||||
url: 'https://www.xing.com/spi/shares/new?url={url}&title={title}'
|
||||
title: Xing
|
||||
icon_pack: fab
|
||||
icon: xing
|
||||
enable: false
|
||||
- id: tumblr
|
||||
url: 'https://www.tumblr.com/widgets/share/tool?canonicalUrl={url}&title={title}'
|
||||
title: Tumblr
|
||||
icon_pack: fab
|
||||
icon: tumblr
|
||||
enable: false
|
||||
@@ -5,9 +5,9 @@
|
||||
<html lang="{{$language_code}}" {{ if in site.Data.i18n.rtl.rtl $language_code }}dir="rtl"{{else}}dir="ltr"{{end}}
|
||||
data-wc-theme-default="{{ (lower site.Params.appearance.mode) | default "system" }}">
|
||||
{{ partial "site_head" . }}
|
||||
<body class="dark:bg-gray-800 dark:text-white-800 page-wrapper">
|
||||
<body class="dark:bg-gray-800 dark:text-white-800 page-wrapper" id="top">
|
||||
<div id="page-bg"></div>
|
||||
<div class="page-header">
|
||||
<div class="page-header {{ if site.Params.header.navbar.fixed_to_top }}sticky top-0 z-30{{ end }}">
|
||||
{{/* Load header block */}}
|
||||
{{ $show_navbar := ((site.Params.header.navbar.enable | default true) | and (ne .Params.header.navbar.enable false)) | or .Params.header.navbar.enable }}
|
||||
{{ if $show_navbar }}
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
{{ $view := .Params.view | default "card" }}
|
||||
{{ $block := . }}
|
||||
|
||||
<div class="flex flex-col justify-center">
|
||||
<div class="flex flex-col items-center">
|
||||
|
||||
{{ partial "functions/render_view" (dict "fragment" "start" "page" $block "item" . "view" $view) }}
|
||||
|
||||
|
||||
@@ -46,7 +46,7 @@
|
||||
</div>
|
||||
{{ end }}
|
||||
|
||||
<div class="portrait-title">
|
||||
<div class="portrait-title dark:text-white">
|
||||
|
||||
<div class="text-3xl font-bold mb-2 mt-6">
|
||||
{{- if $person.name_pronunciation -}}
|
||||
@@ -70,7 +70,7 @@
|
||||
{{ end }}
|
||||
</div>
|
||||
|
||||
<ul class="network-icon">
|
||||
<ul class="network-icon dark:text-zinc-100">
|
||||
{{ range $person.profiles }}
|
||||
{{ $pack := or .icon_pack "fas" }}
|
||||
{{ $pack_prefix := $pack }}
|
||||
|
||||
@@ -89,6 +89,8 @@
|
||||
</div>
|
||||
{{ end }}
|
||||
|
||||
<div class="flex flex-col items-center">
|
||||
|
||||
{{ partial "functions/render_view" (dict "fragment" "start" "page" $block "item" . "view" $view) }}
|
||||
|
||||
{{ range $index, $item := $query }}
|
||||
@@ -97,40 +99,42 @@
|
||||
|
||||
{{ partial "functions/render_view" (dict "fragment" "end" "page" $block "item" . "view" $view) }}
|
||||
|
||||
{{/* Archive link */}}
|
||||
{{ $show_archive_link := $block.content.archive.enable | default (gt $count $items_count) }}
|
||||
{{ if $show_archive_link | and $archive_page }}
|
||||
|
||||
{{ $archive_link := "" }}
|
||||
{{ if $block.content.archive.link }}
|
||||
{{ $archive_link = $block.content.archive.link | relLangURL }}
|
||||
{{ else }}
|
||||
{{ $archive_link = $archive_page.RelPermalink }}
|
||||
{{ end }}
|
||||
|
||||
{{/* Localisation */}}
|
||||
{{ $items_type := $archive_page.Type }}
|
||||
{{ $i18n := "" }}
|
||||
{{ if eq $items_type "post" }}
|
||||
{{ $i18n = "more_posts" }}
|
||||
{{ else if eq $items_type "event" }}
|
||||
{{ $i18n = "more_talks" }}
|
||||
{{ else if eq $items_type "publication" }}
|
||||
{{ $i18n = "more_publications" }}
|
||||
{{ else }}
|
||||
{{ $i18n = "more_pages" }}
|
||||
{{ end }}
|
||||
|
||||
{{ $archive_text := $block.content.archive.text | default (i18n $i18n) | default "See all" }}
|
||||
|
||||
<div class="container mx-auto max-w-screen-lg px-8 xl:px-5 pb-5 lg:pb-8">
|
||||
<div class="mt-10 flex justify-center">
|
||||
<a
|
||||
class="relative inline-flex items-center gap-1 rounded-md border border-gray-300 bg-white px-3 py-2 pl-4 text-sm font-medium text-gray-500 hover:bg-gray-50 focus:z-20 dark:border-gray-500 dark:bg-gray-800 dark:text-gray-300"
|
||||
href="{{ $archive_link }}">
|
||||
<span>{{ $archive_text | emojify }}</span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{{/* Archive link */}}
|
||||
{{ $show_archive_link := $block.content.archive.enable | default (gt $count $items_count) }}
|
||||
{{ if $show_archive_link | and $archive_page }}
|
||||
|
||||
{{ $archive_link := "" }}
|
||||
{{ if $block.content.archive.link }}
|
||||
{{ $archive_link = $block.content.archive.link | relLangURL }}
|
||||
{{ else }}
|
||||
{{ $archive_link = $archive_page.RelPermalink }}
|
||||
{{ end }}
|
||||
|
||||
{{/* Localisation */}}
|
||||
{{ $items_type := $archive_page.Type }}
|
||||
{{ $i18n := "" }}
|
||||
{{ if eq $items_type "post" }}
|
||||
{{ $i18n = "more_posts" }}
|
||||
{{ else if eq $items_type "event" }}
|
||||
{{ $i18n = "more_talks" }}
|
||||
{{ else if eq $items_type "publication" }}
|
||||
{{ $i18n = "more_publications" }}
|
||||
{{ else }}
|
||||
{{ $i18n = "more_pages" }}
|
||||
{{ end }}
|
||||
|
||||
{{ $archive_text := $block.content.archive.text | default (i18n $i18n) | default "See all" }}
|
||||
|
||||
<div class="container mx-auto max-w-screen-lg px-8 xl:px-5 pb-5 lg:pb-8">
|
||||
<div class="mt-10 flex justify-center">
|
||||
<a
|
||||
class="relative inline-flex items-center gap-1 rounded-md border border-gray-300 bg-white px-3 py-2 pl-4 text-sm font-medium text-gray-500 hover:bg-gray-50 focus:z-20 dark:border-gray-500 dark:bg-gray-800 dark:text-gray-300"
|
||||
href="{{ $archive_link }}">
|
||||
<span>{{ $archive_text | emojify }}</span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{{ end }}
|
||||
@@ -17,8 +17,19 @@
|
||||
<div class="mt-4 md:mt-0">
|
||||
<h2 class="mb-4 text-4xl tracking-tight font-extrabold text-gray-900 dark:text-white">{{$title}}</h2>
|
||||
<p class="mb-6 font-light text-gray-500 md:text-lg dark:text-gray-400">{{$text}}</p>
|
||||
{{ $icon := .feature_icon | default "check" }}
|
||||
{{ if .features }}
|
||||
<ul>
|
||||
{{ range .features }}
|
||||
<li class="relative mb-4 pl-6">
|
||||
{{ partial "functions/get_icon" (dict "name" $icon "attributes" `class="inline-block pr-3" style="height: 1em;"`) }}
|
||||
{{ . | markdownify }}
|
||||
</li>
|
||||
{{ end }}
|
||||
</ul>
|
||||
{{ end }}
|
||||
{{ with .button }}
|
||||
<a href="{{.url}}" class="inline-flex items-center text-white bg-primary-700 hover:bg-primary-800 focus:ring-4 focus:ring-primary-300 font-medium rounded-lg text-sm px-5 py-2.5 text-center dark:focus:ring-primary-900">
|
||||
<a href="{{.url}}" class="mt-3 inline-flex items-center text-white bg-primary-700 hover:bg-primary-800 focus:ring-4 focus:ring-primary-300 font-medium rounded-lg text-sm px-5 py-2.5 text-center dark:focus:ring-primary-900">
|
||||
{{.text}}
|
||||
<svg class="ml-2 -mr-1 w-5 h-5" fill="currentColor" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10.293 3.293a1 1 0 011.414 0l6 6a1 1 0 010 1.414l-6 6a1 1 0 01-1.414-1.414L14.586 11H3a1 1 0 110-2h11.586l-4.293-4.293a1 1 0 010-1.414z" clip-rule="evenodd"></path></svg>
|
||||
</a>
|
||||
|
||||
@@ -0,0 +1,122 @@
|
||||
<!-- Main navigation container -->
|
||||
|
||||
{{/* Show site search? */}}
|
||||
{{ $show_search := site.Params.header.navbar.show_search | default false }}
|
||||
|
||||
<nav
|
||||
class="relative flex w-full flex-nowrap items-center justify-between bg-white py-2 text-neutral-500 shadow-lg hover:text-neutral-700 focus:text-neutral-700 dark:bg-slate-900 lg:flex-wrap lg:justify-start lg:py-4"
|
||||
data-te-navbar-ref>
|
||||
<div class="flex w-full flex-wrap items-center justify-between px-3">
|
||||
<!-- Hamburger button for mobile view -->
|
||||
<button
|
||||
class="block border-0 bg-transparent px-2 text-neutral-500 hover:no-underline hover:shadow-none focus:no-underline focus:shadow-none focus:outline-none focus:ring-0 dark:text-neutral-200 lg:hidden"
|
||||
type="button"
|
||||
data-te-collapse-init
|
||||
data-te-target="#collapse-main-navbar"
|
||||
aria-controls="collapse-main-navbar"
|
||||
aria-expanded="false"
|
||||
aria-label="Toggle navigation" onclick="toggleNavbar('collapse-main-navbar')">
|
||||
<!-- Hamburger icon -->
|
||||
<span class="[&>svg]:w-7">
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
viewBox="0 0 24 24"
|
||||
fill="currentColor"
|
||||
class="h-7 w-7">
|
||||
<path
|
||||
fill-rule="evenodd"
|
||||
d="M3 6.75A.75.75 0 013.75 6h16.5a.75.75 0 010 1.5H3.75A.75.75 0 013 6.75zM3 12a.75.75 0 01.75-.75h16.5a.75.75 0 010 1.5H3.75A.75.75 0 013 12zm0 5.25a.75.75 0 01.75-.75h16.5a.75.75 0 010 1.5H3.75a.75.75 0 01-.75-.75z"
|
||||
clip-rule="evenodd" />
|
||||
</svg>
|
||||
</span>
|
||||
</button>
|
||||
|
||||
<!-- Collapsible navbar container -->
|
||||
<div
|
||||
class="!visible mt-2 hidden flex-grow basis-[100%] items-center justify-center lg:mt-0 lg:!flex lg:basis-auto"
|
||||
id="collapse-main-navbar"
|
||||
data-te-collapse-item>
|
||||
<!-- Main links -->
|
||||
{{- $currentPage := . }}
|
||||
<ul
|
||||
class="list-style-none flex flex-col pl-0 lg:mt-1 lg:flex-row items-center"
|
||||
data-te-navbar-nav-ref>
|
||||
{{- range site.Menus.main }}
|
||||
{{- $menu_item_url := (cond (strings.HasSuffix .URL "/") .URL (printf "%s/" .URL) ) | absLangURL }}
|
||||
{{- $page_url:= $currentPage.Permalink | absLangURL }}
|
||||
{{- $active := eq $menu_item_url $page_url -}}
|
||||
{{- $activeClass := cond $active "active" "" -}}
|
||||
<!-- Home link [&.active]:text-bold [&.active]:text-black/90 dark:[&.active]:text-neutral-300-->
|
||||
<li
|
||||
class="my-4 pl-2 lg:my-0 lg:pl-2 lg:pr-1"
|
||||
data-te-nav-item-ref>
|
||||
<a
|
||||
class="lg:px-2 text-gray-600 hover:text-gray-800 dark:text-gray-400 dark:hover:text-gray-200
|
||||
[&.active]:font-bold [&.active]:text-black/90 dark:[&.active]:text-white {{ $activeClass }}"
|
||||
aria-current="page"
|
||||
href="{{ .URL | relLangURL }}"
|
||||
data-te-nav-link-ref
|
||||
>{{- .Name -}}</a
|
||||
>
|
||||
</li>
|
||||
{{ end }}
|
||||
{{ if $show_search }}
|
||||
<li class="my-4 pl-2 lg:my-0 lg:pl-2 lg:pr-1">
|
||||
<a
|
||||
class="lg:px-2 text-gray-600 hover:text-gray-800 dark:text-gray-400 dark:hover:text-gray-200
|
||||
[&.active]:font-bold [&.active]:text-black/90 dark:[&.active]:text-white"
|
||||
aria-current="page"
|
||||
href="#"
|
||||
id="search_toggle"
|
||||
>{{- i18n "search" -}}</a
|
||||
>
|
||||
</li>
|
||||
{{ end }}
|
||||
{{ $show_theme_chooser := site.Params.header.navbar.show_theme_chooser | default true }}
|
||||
{{ if $show_theme_chooser }}
|
||||
<li class="lg:px-2 text-gray-600 hover:text-gray-800 dark:text-gray-400 dark:hover:text-gray-200
|
||||
[&.active]:font-bold [&.active]:text-black/90 dark:[&.active]:text-white">
|
||||
<button class="theme-toggle mt-1" accesskey="t" title="">
|
||||
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||
stroke-linejoin="round" class="dark:hidden">
|
||||
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
|
||||
</svg>
|
||||
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||
stroke-linejoin="round" class=" dark:block [&:not(dark)]:hidden">
|
||||
<circle cx="12" cy="12" r="5"></circle>
|
||||
<line x1="12" y1="1" x2="12" y2="3"></line>
|
||||
<line x1="12" y1="21" x2="12" y2="23"></line>
|
||||
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
|
||||
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
|
||||
<line x1="1" y1="12" x2="3" y2="12"></line>
|
||||
<line x1="21" y1="12" x2="23" y2="12"></line>
|
||||
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
|
||||
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
|
||||
</svg>
|
||||
</button>
|
||||
</li>
|
||||
{{ end }}
|
||||
{{ $show_translations := site.Params.header.navbar.show_translations | default true }}
|
||||
{{ if .IsTranslated | and $show_translations }}
|
||||
<li class="lg:px-2 text-gray-600 hover:text-gray-800 dark:text-gray-400 dark:hover:text-gray-200
|
||||
[&.active]:font-bold [&.active]:text-black/90 dark:[&.active]:text-white">
|
||||
{{- partial "components/language-chooser.html" (dict "page" .) -}}
|
||||
</li>
|
||||
{{ end }}
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
{{ if $show_search }}
|
||||
<div id="search" class="hidden p-3"></div>
|
||||
{{ end }}
|
||||
|
||||
<script>
|
||||
function toggleNavbar(collapseID){
|
||||
document.getElementById(collapseID).classList.toggle("hidden");
|
||||
document.getElementById(collapseID).classList.toggle("flex");
|
||||
}
|
||||
</script>
|
||||
@@ -1,171 +1,197 @@
|
||||
<!-- Main navigation container -->
|
||||
|
||||
{{/* Show site search? */}}
|
||||
{{ $show_search := site.Params.header.navbar.show_search | default false }}
|
||||
{{ if $show_search }}
|
||||
{{ $pf_css := resources.Get "dist/pagefind/pagefind-ui.css" }}
|
||||
{{ $pf_css = $pf_css | resources.Fingerprint "sha256" }}
|
||||
<link type="text/css" rel="stylesheet" href="{{ $pf_css.RelPermalink }}" integrity="{{ $pf_css.Data.Integrity }}" />
|
||||
{{ $pf_js := resources.Get "dist/pagefind/pagefind-ui.js" }}
|
||||
{{ $pf_js = $pf_js | resources.Fingerprint "sha256" }}
|
||||
<script src="{{ $pf_js.RelPermalink }}" integrity="{{ $pf_js.Data.Integrity }}"></script>
|
||||
|
||||
<style>
|
||||
html.dark {
|
||||
--pagefind-ui-primary: #eeeeee;
|
||||
--pagefind-ui-text: #eeeeee;
|
||||
--pagefind-ui-background: #152028;
|
||||
--pagefind-ui-border: #152028;
|
||||
--pagefind-ui-tag: #152028;
|
||||
}
|
||||
</style>
|
||||
|
||||
<script>
|
||||
window.addEventListener('DOMContentLoaded', (event) => {
|
||||
new PagefindUI({ element: "#search", showSubResults: true });
|
||||
});
|
||||
document.addEventListener('DOMContentLoaded', () => {
|
||||
let element = document.getElementById('search');
|
||||
let trigger = document.getElementById('search_toggle');
|
||||
|
||||
if (trigger) {
|
||||
trigger.addEventListener('click', () => {
|
||||
element.classList.toggle('hidden');
|
||||
element.querySelector("input").value = ""
|
||||
element.querySelector("input").focus()
|
||||
|
||||
if (!element.classList.contains('hidden')) {
|
||||
let clear_trigger = document.querySelector('.pagefind-ui__search-clear');
|
||||
|
||||
if (clear_trigger && !clear_trigger.hasAttribute('listenerOnClick')) {
|
||||
clear_trigger.setAttribute('listenerOnClick', 'true');
|
||||
|
||||
clear_trigger.addEventListener('click', () => {
|
||||
element.classList.toggle('hidden');
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
});
|
||||
}
|
||||
});
|
||||
</script>
|
||||
{{ end }}
|
||||
|
||||
<nav
|
||||
class="relative flex w-full flex-nowrap items-center justify-between bg-white py-2 text-neutral-500 shadow-lg hover:text-neutral-700 focus:text-neutral-700 dark:bg-slate-900 lg:flex-wrap lg:justify-start lg:py-4"
|
||||
data-te-navbar-ref>
|
||||
<div class="flex w-full flex-wrap items-center justify-between px-3">
|
||||
<!-- Hamburger button for mobile view -->
|
||||
<button
|
||||
class="block border-0 bg-transparent px-2 text-neutral-500 hover:no-underline hover:shadow-none focus:no-underline focus:shadow-none focus:outline-none focus:ring-0 dark:text-neutral-200 lg:hidden"
|
||||
type="button"
|
||||
data-te-collapse-init
|
||||
data-te-target="#collapse-main-navbar"
|
||||
aria-controls="collapse-main-navbar"
|
||||
aria-expanded="false"
|
||||
aria-label="Toggle navigation" onclick="toggleNavbar('collapse-main-navbar')">
|
||||
<!-- Hamburger icon -->
|
||||
<span class="[&>svg]:w-7">
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
viewBox="0 0 24 24"
|
||||
fill="currentColor"
|
||||
class="h-7 w-7">
|
||||
<path
|
||||
fill-rule="evenodd"
|
||||
d="M3 6.75A.75.75 0 013.75 6h16.5a.75.75 0 010 1.5H3.75A.75.75 0 013 6.75zM3 12a.75.75 0 01.75-.75h16.5a.75.75 0 010 1.5H3.75A.75.75 0 013 12zm0 5.25a.75.75 0 01.75-.75h16.5a.75.75 0 010 1.5H3.75a.75.75 0 01-.75-.75z"
|
||||
clip-rule="evenodd" />
|
||||
</svg>
|
||||
</span>
|
||||
</button>
|
||||
|
||||
<!-- Collapsible navbar container -->
|
||||
<div
|
||||
class="!visible mt-2 hidden flex-grow basis-[100%] items-center justify-center lg:mt-0 lg:!flex lg:basis-auto"
|
||||
id="collapse-main-navbar"
|
||||
data-te-collapse-item>
|
||||
<!-- Main links -->
|
||||
{{- $currentPage := . }}
|
||||
<ul
|
||||
class="list-style-none flex flex-col pl-0 lg:mt-1 lg:flex-row items-center"
|
||||
data-te-navbar-nav-ref>
|
||||
{{- range site.Menus.main }}
|
||||
{{- $menu_item_url := (cond (strings.HasSuffix .URL "/") .URL (printf "%s/" .URL) ) | absLangURL }}
|
||||
{{- $page_url:= $currentPage.Permalink | absLangURL }}
|
||||
{{- $active := eq $menu_item_url $page_url -}}
|
||||
{{- $activeClass := cond $active "active" "" -}}
|
||||
<!-- Home link [&.active]:text-bold [&.active]:text-black/90 dark:[&.active]:text-neutral-300-->
|
||||
<li
|
||||
class="my-4 pl-2 lg:my-0 lg:pl-2 lg:pr-1"
|
||||
data-te-nav-item-ref>
|
||||
<a
|
||||
class="lg:px-2 text-gray-600 hover:text-gray-800 dark:text-gray-400 dark:hover:text-gray-200
|
||||
[&.active]:font-bold [&.active]:text-black/90 dark:[&.active]:text-white {{ $activeClass }}"
|
||||
aria-current="page"
|
||||
href="{{ .URL | relLangURL }}"
|
||||
data-te-nav-link-ref
|
||||
>{{- .Name -}}</a
|
||||
>
|
||||
</li>
|
||||
<header id="site-header" class="header">
|
||||
<nav class="navbar px-3 flex justify-left">
|
||||
<div class="order-0 h-100">
|
||||
<!-- Brand -->
|
||||
<a class="navbar-brand" href="{{ site.Home.RelPermalink }}">
|
||||
{{- $logo_filename := site.Params.header.navbar.logo.filename -}}
|
||||
{{ with $logo_filename }}
|
||||
{{- $logo:= resources.Get (path.Join "media" $logo_filename) -}}
|
||||
{{ with $logo }}
|
||||
{{ $logoExt := path.Ext . }}
|
||||
{{ if eq $logoExt `.svg` }}
|
||||
{{- $logo.Content | safeHTML -}}
|
||||
{{else}}
|
||||
{{ $logo_img := ($logo.Process "Resize x36 webp") }}
|
||||
<img
|
||||
fetchpriority="high"
|
||||
decoding="async"
|
||||
class=""
|
||||
width="{{ $logo_img.Width }}"
|
||||
height="{{ $logo_img.Height }}"
|
||||
src="{{ $logo_img.RelPermalink }}"
|
||||
alt="{{ site.Title }}" />
|
||||
{{end}}
|
||||
{{ else }}
|
||||
{{ warnf "Logo `%s` not found in `assets/media/` folder" $logo_filename }}
|
||||
{{end}}
|
||||
{{ end }}
|
||||
{{ if $show_search }}
|
||||
<li class="my-4 pl-2 lg:my-0 lg:pl-2 lg:pr-1">
|
||||
<a
|
||||
class="lg:px-2 text-gray-600 hover:text-gray-800 dark:text-gray-400 dark:hover:text-gray-200
|
||||
[&.active]:font-bold [&.active]:text-black/90 dark:[&.active]:text-white"
|
||||
aria-current="page"
|
||||
href="#"
|
||||
id="search_toggle"
|
||||
>{{- i18n "search" -}}</a
|
||||
>
|
||||
</li>
|
||||
{{ end }}
|
||||
{{ $show_theme_chooser := site.Params.header.navbar.show_theme_chooser | default true }}
|
||||
{{ if $show_theme_chooser }}
|
||||
<li class="lg:px-2 text-gray-600 hover:text-gray-800 dark:text-gray-400 dark:hover:text-gray-200
|
||||
[&.active]:font-bold [&.active]:text-black/90 dark:[&.active]:text-white">
|
||||
<button class="theme-toggle mt-1" accesskey="t" title="">
|
||||
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||
stroke-linejoin="round" class="dark:hidden">
|
||||
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
|
||||
</svg>
|
||||
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||
stroke-linejoin="round" class=" dark:block [&:not(dark)]:hidden">
|
||||
<circle cx="12" cy="12" r="5"></circle>
|
||||
<line x1="12" y1="1" x2="12" y2="3"></line>
|
||||
<line x1="12" y1="21" x2="12" y2="23"></line>
|
||||
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
|
||||
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
|
||||
<line x1="1" y1="12" x2="3" y2="12"></line>
|
||||
<line x1="21" y1="12" x2="23" y2="12"></line>
|
||||
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
|
||||
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
|
||||
</svg>
|
||||
</button>
|
||||
</li>
|
||||
{{ end }}
|
||||
{{ $show_translations := site.Params.header.navbar.show_translations | default true }}
|
||||
{{ if .IsTranslated | and $show_translations }}
|
||||
<li class="lg:px-2 text-gray-600 hover:text-gray-800 dark:text-gray-400 dark:hover:text-gray-200
|
||||
[&.active]:font-bold [&.active]:text-black/90 dark:[&.active]:text-white">
|
||||
{{- partial "components/language-chooser.html" (dict "page" .) -}}
|
||||
</li>
|
||||
{{ end }}
|
||||
</ul>
|
||||
{{ with site.Params.header.navbar.logo.text }}{{.}}{{end}}
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
<!-- Mobile menu -->
|
||||
<input id="nav-toggle" type="checkbox" class="hidden" />
|
||||
<label
|
||||
for="nav-toggle"
|
||||
class="order-3 cursor-pointer flex items-center lg:hidden text-dark dark:text-white lg:order-1">
|
||||
<svg id="show-button" class="h-6 fill-current block" viewBox="0 0 20 20">
|
||||
<title>Open Menu</title>
|
||||
<path d="M0 3h20v2H0V3z m0 6h20v2H0V9z m0 6h20v2H0V0z"></path>
|
||||
</svg>
|
||||
<svg id="hide-button" class="h-6 fill-current hidden" viewBox="0 0 20 20">
|
||||
<title>Close Menu</title>
|
||||
<polygon
|
||||
points="11 9 22 9 22 11 11 11 11 22 9 22 9 11 -2 11 -2 9 9 9 9 -2 11 -2"
|
||||
transform="rotate(45 10 10)"></polygon>
|
||||
</svg>
|
||||
</label>
|
||||
<!-- /Mobile menu -->
|
||||
|
||||
<!-- Main menu -->
|
||||
<ul
|
||||
id="nav-menu"
|
||||
class="navbar-nav order-3 hidden lg:flex w-full pb-6 lg:order-1 lg:w-auto lg:space-x-2 lg:pb-0 xl:space-x-8 justify-left">
|
||||
{{ $currentPage := . }}
|
||||
{{ range site.Menus.main }}
|
||||
{{ $menuURL := .URL | absLangURL }}
|
||||
{{ $pageURL:= $currentPage.Permalink | absLangURL }}
|
||||
{{ $active := eq $menuURL $pageURL }}
|
||||
{{ if .HasChildren }}
|
||||
<li class="nav-item nav-dropdown group relative">
|
||||
<span
|
||||
class="nav-link {{ range .Children }}
|
||||
{{ $childURL := .URL | absLangURL }}
|
||||
{{ $active := eq $childURL $pageURL }}
|
||||
{{ if $active }}active{{ end }}
|
||||
{{ end }} inline-flex items-center">
|
||||
{{ .Name }}
|
||||
<svg class="h-4 w-4 fill-current inline-block" viewBox="0 0 20 20">
|
||||
<path
|
||||
d="M9.293 12.95l.707.707L15.657 8l-1.414-1.414L10 10.828 5.757 6.586 4.343 8z" />
|
||||
</svg>
|
||||
</span>
|
||||
<ul
|
||||
class="nav-dropdown-list lg:group-hover:visible lg:group-hover:opacity-100">
|
||||
{{ range .Children }}
|
||||
{{ $childURL := .URL | absLangURL }}
|
||||
{{ $active := eq $childURL $pageURL }}
|
||||
{{ $url := "" }}
|
||||
{{- if findRE `^#` .URL -}}
|
||||
{{- if not $.IsHome -}}
|
||||
{{- $url = site.Home.RelPermalink -}}
|
||||
{{- end }}
|
||||
{{- $url = .URL -}}
|
||||
{{- else -}}
|
||||
{{- $url = .URL | relLangURL -}}
|
||||
{{- end -}}
|
||||
<li class="nav-dropdown-item">
|
||||
<a
|
||||
class="nav-dropdown-link {{ if $active }}active{{- end -}}"
|
||||
{{ if findRE `^http` .URL }}
|
||||
target="_blank" rel="noopener"
|
||||
{{ end }}
|
||||
href="{{$url}}">
|
||||
{{ .Name }}
|
||||
</a>
|
||||
</li>
|
||||
{{ end }}
|
||||
</ul>
|
||||
</li>
|
||||
{{ else }}
|
||||
{{ $url := "" }}
|
||||
{{- if findRE `^#` .URL -}}
|
||||
{{- if not $.IsHome -}}
|
||||
{{- $url = site.Home.RelPermalink -}}
|
||||
{{- end }}
|
||||
{{- $url = .URL -}}
|
||||
{{- else -}}
|
||||
{{- $url = .URL | relLangURL -}}
|
||||
{{- end -}}
|
||||
<li class="nav-item">
|
||||
<a
|
||||
class="nav-link {{ if $active }}active{{- end -}}"
|
||||
{{ if findRE `^http` .URL }}
|
||||
target="_blank" rel="noopener"
|
||||
{{ end }}
|
||||
href="{{$url}}"
|
||||
>{{ .Name }}</a
|
||||
>
|
||||
</li>
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ if site.Params.header.navbar.button.enable }}
|
||||
<li class="mt-4 inline-block lg:hidden">
|
||||
<a
|
||||
class=""
|
||||
href="{{ site.Params.header.navbar.button.url | relLangURL }}">
|
||||
{{ site.Params.header.navbar.button.text }}
|
||||
</a>
|
||||
</li>
|
||||
{{ end }}
|
||||
</ul>
|
||||
|
||||
<div class="order-1 ml-auto flex items-center md:order-2 lg:ml-0">
|
||||
|
||||
{{/* Show site search? */}}
|
||||
{{ $show_search := site.Params.header.navbar.show_search | default false }}
|
||||
{{ with $show_search }}
|
||||
<button
|
||||
aria-label="search"
|
||||
class="text-black hover:text-primary inline-block px-3 text-xl dark:text-white"
|
||||
id="search_toggle">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" height="16" width="16" viewBox="0 0 512 512" fill="currentColor"><path d="M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z"/></svg>
|
||||
</button>
|
||||
{{ end }}
|
||||
|
||||
{{ $show_theme_chooser := site.Params.header.navbar.show_theme_chooser | default true }}
|
||||
{{ if $show_theme_chooser }}
|
||||
<div class="px-3 text-black hover:text-primary-700 dark:text-white dark:hover:text-primary-300
|
||||
[&.active]:font-bold [&.active]:text-black/90 dark:[&.active]:text-white">
|
||||
<button class="theme-toggle mt-1" accesskey="t" title="">
|
||||
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||
stroke-linejoin="round" class="dark:hidden">
|
||||
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
|
||||
</svg>
|
||||
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||
stroke-linejoin="round" class=" dark:block [&:not(dark)]:hidden">
|
||||
<circle cx="12" cy="12" r="5"></circle>
|
||||
<line x1="12" y1="1" x2="12" y2="3"></line>
|
||||
<line x1="12" y1="21" x2="12" y2="23"></line>
|
||||
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
|
||||
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
|
||||
<line x1="1" y1="12" x2="3" y2="12"></line>
|
||||
<line x1="21" y1="12" x2="23" y2="12"></line>
|
||||
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
|
||||
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
|
||||
</svg>
|
||||
</button>
|
||||
</div>
|
||||
{{ end }}
|
||||
|
||||
{{ $show_translations := site.Params.header.navbar.show_translations | default true }}
|
||||
{{ if .IsTranslated | and $show_translations }}
|
||||
<div class="pl-1 mr-5 text-gray-600 hover:text-gray-800 dark:text-gray-400 dark:hover:text-gray-200
|
||||
[&.active]:font-bold [&.active]:text-black/90 dark:[&.active]:text-white">
|
||||
{{- partial "components/language-chooser.html" (dict "page" .) -}}
|
||||
</div>
|
||||
{{ end }}
|
||||
|
||||
<!-- CTA button -->
|
||||
{{ if site.Params.header.navbar.button.enable }}
|
||||
<a
|
||||
href="{{ site.Params.header.navbar.button.url | relLangURL }}"
|
||||
class="inline-block rounded border px-5 py-2 font-semibold transition
|
||||
md:ml-4 px-4 py-1.5 text-sm
|
||||
border-black hover:bg-black dark:hover:bg-white dark:hover:text-black hover:text-white dark:border-white dark:text-white dark:hover:bg-white
|
||||
hidden lg:inline-block">
|
||||
{{ site.Params.header.navbar.button.text }}
|
||||
</a>
|
||||
{{ end }}
|
||||
</div>
|
||||
</nav>
|
||||
</header>
|
||||
|
||||
{{ if $show_search }}
|
||||
<div id="search" class="hidden p-3"></div>
|
||||
<div id="search" class="hidden p-3"></div>
|
||||
{{ end }}
|
||||
|
||||
<script>
|
||||
function toggleNavbar(collapseID){
|
||||
document.getElementById(collapseID).classList.toggle("hidden");
|
||||
document.getElementById(collapseID).classList.toggle("flex");
|
||||
}
|
||||
</script>
|
||||
@@ -1,3 +1,55 @@
|
||||
{{/* Show site search? */}}
|
||||
{{ $show_search := site.Params.header.navbar.show_search | default false }}
|
||||
{{ if $show_search }}
|
||||
{{ $pf_css := resources.Get "dist/pagefind/pagefind-ui.css" }}
|
||||
{{ $pf_css = $pf_css | resources.Fingerprint "sha256" }}
|
||||
<link type="text/css" rel="stylesheet" href="{{ $pf_css.RelPermalink }}" integrity="{{ $pf_css.Data.Integrity }}" />
|
||||
{{ $pf_js := resources.Get "dist/pagefind/pagefind-ui.js" }}
|
||||
{{ $pf_js = $pf_js | resources.Fingerprint "sha256" }}
|
||||
<script src="{{ $pf_js.RelPermalink }}" integrity="{{ $pf_js.Data.Integrity }}"></script>
|
||||
|
||||
<style>
|
||||
html.dark {
|
||||
--pagefind-ui-primary: #eeeeee;
|
||||
--pagefind-ui-text: #eeeeee;
|
||||
--pagefind-ui-background: #152028;
|
||||
--pagefind-ui-border: #152028;
|
||||
--pagefind-ui-tag: #152028;
|
||||
}
|
||||
</style>
|
||||
|
||||
<script>
|
||||
window.addEventListener('DOMContentLoaded', (event) => {
|
||||
new PagefindUI({ element: "#search", showSubResults: true });
|
||||
});
|
||||
document.addEventListener('DOMContentLoaded', () => {
|
||||
let element = document.getElementById('search');
|
||||
let trigger = document.getElementById('search_toggle');
|
||||
|
||||
if (trigger) {
|
||||
trigger.addEventListener('click', () => {
|
||||
element.classList.toggle('hidden');
|
||||
element.querySelector("input").value = ""
|
||||
element.querySelector("input").focus()
|
||||
|
||||
if (!element.classList.contains('hidden')) {
|
||||
let clear_trigger = document.querySelector('.pagefind-ui__search-clear');
|
||||
|
||||
if (clear_trigger && !clear_trigger.hasAttribute('listenerOnClick')) {
|
||||
clear_trigger.setAttribute('listenerOnClick', 'true');
|
||||
|
||||
clear_trigger.addEventListener('click', () => {
|
||||
element.classList.toggle('hidden');
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
});
|
||||
}
|
||||
});
|
||||
</script>
|
||||
{{ end }}
|
||||
|
||||
{{/* Mermaid */}}
|
||||
{{ if (.Page.Store.Get "has_mermaid") }}
|
||||
{{ $mermaid_js := resources.Get "dist/lib/mermaid/mermaid.min.js" }}
|
||||
|
||||
@@ -262,7 +262,8 @@
|
||||
{{ $js_academic := $js_academic | resources.Minify }}
|
||||
{{- $js_theme := resources.Get "js/wowchemy-theme.js" | resources.Minify -}}
|
||||
{{- $js_lang := resources.Get "js/hb-i18n.js" | resources.Minify -}}
|
||||
{{ $js_bundle := slice $js_bundle_head $js_academic $js_theme $js_lang | resources.Concat (printf "js/wowchemy-%s.min.js" .Lang) }}
|
||||
{{- $js_nav := resources.Get "js/hb-nav.js" | resources.Minify -}}
|
||||
{{ $js_bundle := slice $js_bundle_head $js_academic $js_theme $js_lang $js_nav | resources.Concat (printf "js/hugo-blox-%s.min.js" .Lang) }}
|
||||
{{- if hugo.IsProduction -}}
|
||||
{{ $js_bundle = $js_bundle | fingerprint "sha256" }}
|
||||
{{- end -}}
|
||||
|
||||
@@ -1,2 +1,2 @@
|
||||
<div class="mt-16 sm:mt-20">
|
||||
<div class="flex max-w-3xl flex-col space-y-16">
|
||||
<div class="mt-16 sm:mt-20 w-fit">
|
||||
<div class="flex max-w-3xl flex-col space-y-16">
|
||||
Reference in new issue
Block a user