InkSoul/themes/meme_cdn/assets/scss/main.scss

494 lines
11 KiB
SCSS
Raw Normal View History

2023-06-18 23:16:41 +08:00
{{ with .Site.Params.fontSize | default 16 }}
$fontSize: {{ . }}px;
{{ end }}
{{ with .Site.Params.tabSize | default 4 }}
$tabSize: {{ . }};
{{ end }}
{{ with .Site.Params.lineHeight | default 2 }}
$lineHeight: {{ . }};
{{ end }}
{{ with .Site.Params.postWidth | default 42 }}
$postWidth: {{ . }}em;
{{ end }}
{{ with .Site.Params.listWidth | default 42 }}
$listWidth: {{ . }}em;
{{ end }}
{{ with .Site.Params.duration | default 0.5 }}
$duration: {{ . }}s;
{{ end }}
{{ if eq .Site.Params.headerLayout "flex" }}
$headerLayoutFlex: true;
{{ else }}
$headerLayoutFlex: false;
{{ end }}
{{ if .Site.Params.enableHeaderAutoHide }}
$enableHeaderAutoHide: true;
{{ else }}
$enableHeaderAutoHide: false;
{{ end }}
{{ if .Site.Params.enableNavToggle }}
$enableNavToggle: true;
{{ with .Site.Params.navHeight | default "10em" }}
$navHeight: {{ . }};
{{ end }}
{{ else }}
$enableNavToggle: false;
{{ end }}
{{ if .Site.Params.displayBackToTopOnMobile }}
$displayBackToTopOnMobile: true;
{{ else }}
$displayBackToTopOnMobile: false;
{{ end }}
{{ if .Site.Params.enableOverflowY }}
$enableOverflowY: true;
{{ else }}
$enableOverflowY: false;
{{ end }}
{{ with .Site.Params.maxHeight | default 20 }}
$maxHeight: {{ . }}em;
{{ end }}
{{ if .Site.Params.enableCopy }}
$enableCopy: true;
{{ else }}
$enableCopy: false;
{{ end }}
{{ if .Site.Params.enableCopyAutoHide }}
$enableCopyAutoHide: true;
{{ else }}
$enableCopyAutoHide: false;
{{ end }}
{{ if .Site.Params.enableSmoothScroll }}
$enableSmoothScroll: true;
{{ else }}
$enableSmoothScroll: false;
{{ end }}
$baseRelURL: "{{ strings.TrimSuffix (.Site.BaseURL | relURL) "/" }}";
// Utilities
@import "utils/functions";
@import "utils/mixins";
// Base
@import "base/base";
{{ if .Site.Params.customizeScrollbar }}
@import "base/scrollbar";
{{ end }}
// Typography
// Font Family
{{ if .Site.Params.enableChinesePunctuationGlyphCorrection }}
{{ .Scratch.Set "glyph" "'glyph-correction', " }}
{{ else }}
{{ .Scratch.Set "glyph" "" }}
{{ end }}
{{ $glyph := .Scratch.Get "glyph" }}
{{ with .Site.Params.fontFamilySiteBrand }}
$fontFamilySiteBrand: {{ $glyph }}{{ . }};
{{ end }}
{{ with .Site.Params.fontFamilyMenu }}
$fontFamilyMenu: {{ $glyph }}{{ . }};
{{ end }}
{{ with .Site.Params.fontFamilyTitle }}
$fontFamilyTitle: {{ $glyph }}{{ . }};
{{ end }}
{{ with .Site.Params.fontFamilyHeadings }}
$fontFamilyHeadings: {{ $glyph }}{{ . }};
{{ end }}
{{ with .Site.Params.fontFamilyCode }}
$fontFamilyCode: {{ $glyph }}{{ . }};
{{ end }}
{{ with .Site.Params.fontFamilyQuote }}
$fontFamilyQuote: {{ $glyph }}{{ . }};
{{ end }}
{{ with .Site.Params.fontFamilyTOC }}
$fontFamilyTOC: {{ $glyph }}{{ . }};
{{ end }}
{{ with .Site.Params.fontFamilyCaption }}
$fontFamilyCaption: {{ $glyph }}{{ . }};
{{ end }}
{{ with .Site.Params.fontFamilyFooter }}
$fontFamilyFooter: {{ $glyph }}{{ . }};
{{ end }}
{{ with .Site.Params.fontFamilyBody }}
$fontFamilyBody: {{ $glyph }}{{ . }};
{{ end }}
@import "base/font-family";
// Chinese Punctuation Glyph Correction
{{ if .Site.Params.enableChinesePunctuationGlyphCorrection }}
@import "base/glyph-correction";
// Magic adjustment for zh-cn
.drop-cap {
margin-top: 1rem !important;
}
{{ end }}
// Emphasis Point
{{ if .Site.Params.enableEmphasisPoint }}
@import "base/emphasis-point";
{{ end }}
// Paragraph Indents
{{ if .Site.Params.enableParagraphIndent }}
@import "base/indent";
{{ end }}
// Themes
// Light
{{ with .Site.Params.primaryColorLight | default "220, 90%, 56%" }}
{{ $number := (split (replace . "%" "") ", ") }}
{{ range $index, $value := $number }}
{{ if eq $index 0 }}
$primaryColorLightH: {{ $value | int }};
{{ end }}
{{ if eq $index 1 }}
$primaryColorLightS: {{ $value | int }}%;
{{ end }}
{{ if eq $index 2 }}
$primaryColorLightL: {{ $value | int }}%;
{{ end }}
{{ end }}
{{ end }}
{{ if and .Site.Params.enableDarkMode (eq .Site.Params.defaultTheme "dark") }}
$defaultTheme: dark;
{{ else }}
$defaultTheme: light;
{{ end }}
{{ if .Site.Params.enableHighlight }}
$enableHighlight: true;
{{ else }}
$enableHighlight: false;
{{ end }}
@import "themes/light";
// Dark Mode
{{ if .Site.Params.enableDarkMode }}
{{ with .Site.Params.primaryColorDark | default "201, 65%, 62%" }}
{{ $number := (split (replace . "%" "") ", ") }}
{{ range $index, $value := $number }}
{{ if eq $index 0 }}
$primaryColorDarkH: {{ $value | int }};
{{ end }}
{{ if eq $index 1 }}
$primaryColorDarkS: {{ $value | int }}%;
{{ end }}
{{ if eq $index 2 }}
$primaryColorDarkL: {{ $value | int }}%;
{{ end }}
{{ end }}
{{ end }}
@import "themes/dark";
@import "components/theme-switcher";
{{ end }}
// Header
{{ if .Site.Params.enableHeader }}
{{ with .Site.Params.headerBackground }}
$headerBackground: {{ . }};
{{ end }}
{{ if .Site.Params.siteBrandSVG }}
$siteBrandSVG: true;
$siteBrandSVGWidth: {{ .Site.Params.siteBrandSVGWidth }}px;
$siteBrandSVGHeight: {{ .Site.Params.siteBrandSVGHeight }}px;
$siteBrandSVGFill: {{ .Site.Params.siteBrandSVGFill }};
{{ else }}
$siteBrandSVG: false;
$siteBrandFontSize: {{ .Site.Params.siteBrandFontSize }}em;
$siteBrandFontColor: {{ .Site.Params.siteBrandFontColor }};
{{ end }}
@import 'layout/header';
{{ if and (eq .Site.Params.headerLayout "flex") .Site.Params.enableNavToggle }}
@import 'components/nav-toggle';
{{ end }}
{{ end }}
// Menu Bar
{{ if or .Site.Params.enableMenu (eq .Site.Params.headerLayout "flex") }}
@import 'layout/menu';
{{ end }}
// List Page
{{ if eq .Site.Params.listDatePosition "right" }}
$listDatePosition: right;
{{ end }}
{{ if eq .Site.Params.listDatePosition "left" }}
$listDatePosition: left;
{{ end }}
@import "layout/list";
// Single Page
{{ if .Site.Params.enableAnchorAutoHide }}
$enableAnchorAutoHide: true;
{{ else }}
$enableAnchorAutoHide: false;
{{ end }}
{{ with .Site.Params.footnoteReturnLinkIcon }}
$footnoteReturnLinkIcon: true;
{{ else }}
$footnoteReturnLinkIcon: false;
{{ end }}
@import "layout/single";
// Footer
{{ if .Site.Params.enableFooter }}
{{ with .Site.Params.iconColor }}
$iconColor: {{ . }};
{{ end }}
{{ if .Site.Params.iconAnimation }}
$iconAnimation: true;
{{ else }}
$iconAnimation: false;
{{ end }}
@import "layout/footer";
{{ end }}
// Components
{{ if and .Site.IsMultiLingual .Site.Params.enableLangToggle }}
@import "components/multilingual";
{{ end }}
{{ if or .Site.Params.enablePostMeta .Site.Params.enablePostMetaInHome }}
@import "components/post-meta";
{{ end }}
{{ if .Site.Params.enablePostCopyright }}
@import "components/post-copyright";
{{ end }}
{{ if .Site.Params.enablePostUpdatedBadge }}
@import "components/updated-badge";
{{ end }}
{{ if .Site.Params.enablePostGitInfo }}
@import "components/post-gitinfo";
{{ end }}
{{ if .Site.Params.enablePostShare }}
{{ if and .Site.Params.displayShareOnText }}
$displayShareOnText: true;
{{ else }}
$displayShareOnText: false;
{{ end }}
{{ if and .Site.Params.shareViaQRCode }}
$shareViaQRCode: true;
{{ else }}
$shareViaQRCode: false;
{{ end }}
@import "components/post-share";
{{ end }}
{{ if .Site.Params.enableRelatedPosts }}
@import "components/related-posts";
{{ end }}
{{ if .Site.Params.enablePostTags }}
@import "components/post-tags";
{{ end }}
{{ if .Site.Params.enableMinimalFooter }}
@import "components/minimal-footer";
{{ end }}
{{ if .Site.Params.enableAboutPageMinimalFooter }}
@import "components/minimal-footer-about";
{{ end }}
{{ if .Site.Params.enablePostNav }}
@import "components/post-nav";
{{ end }}
{{ if .Site.Params.enableComments }}
@import "components/comments";
{{ end }}
{{ if .Site.Params.enableBackToTop }}
{{ if .Site.Params.enableBackToTopAutoHide }}
$enableBackToTopAutoHide: true;
{{ else }}
$enableBackToTopAutoHide: false;
{{ end }}
@import "components/back-to-top";
{{ end }}
{{ if .Site.Params.enableHighlight }}
@import "components/highlight";
{{ end }}
{{ if .Site.Params.enableSocials }}
@import "components/socials";
{{ end }}
// Homepage Layout
{{ if eq .Site.Params.homeLayout "poetry" }}
$homeLinksPadding: {{ .Site.Params.homeLinksPadding }}em;
@import "pages/home-poetry";
{{ end }}
{{ if eq .Site.Params.homeLayout "footage" }}
// https://github.com/reuixiy/hugo-theme-meme/issues/51
{{ if strings.HasPrefix .Site.Params.homePoster "." }}
{{ $homePoster := printf `.%s` .Site.Params.homePoster }}
{{ .Scratch.Set "homePoster" $homePoster }}
{{ else }}
{{ .Scratch.Set "homePoster" .Site.Params.homePoster }}
{{ end }}
{{ $homePoster := .Scratch.Get "homePoster" }}
$homePoster: url({{ $homePoster }});
@import "pages/home-footage";
{{ end }}
{{ if eq .Site.Params.homeLayout "posts" }}
@import "pages/home-posts";
{{ end }}
// Categories Page
{{ if .Site.Params.enableTree }}
@import "pages/tree-categories";
{{ end }}
// Tags Page
{{ if .Site.Params.enableTagCloud }}
@import "pages/tag-cloud";
{{ end }}
// 404 Page
// https://github.com/reuixiy/hugo-theme-meme/issues/51
{{ if strings.HasPrefix .Site.Params.fofPoster "." }}
{{ $fofPoster := printf `.%s` .Site.Params.fofPoster }}
{{ .Scratch.Set "fofPoster" $fofPoster }}
{{ else }}
{{ .Scratch.Set "fofPoster" .Site.Params.fofPoster }}
{{ end }}
{{ $fofPoster := .Scratch.Get "fofPoster" }}
$fofPoster: url({{ $fofPoster }});
@import "pages/404";
// Third Party
// Medium Zoom
{{ if .Site.Params.enableMediumZoom }}
@import "third-party/medium-zoom";
{{ end }}
// Busuanzi Site UV And PV
{{ if .Site.Params.enableFooter }}
{{ if and .Site.Params.displayBusuanziSiteUVAndPV (eq hugo.Environment "production") }}
@import "third-party/busuanzi";
{{ end }}
{{ end }}
// Lunr search
{{ if and (eq .Site.Params.headerLayout "flex") (or .Site.Params.enableLunrSearch .Site.Params.enableAlgoliaSearch) }}
$enableSearch: true;
@import "components/search";
{{ else }}
$enableSearch: false;
{{ end }}
// Responsive
$greaterWidth: null;
@if ($postWidth > $listWidth) {
$greaterWidth: $postWidth;
} @else {
$greaterWidth: $listWidth;
}
@import "base/max-width";
:root {
--max-width: #{$maxWidth};
}
@import "base/responsive";
// Data Attributes
@import "base/data-attributes";
// @supports()
@import "base/supports";
// Custom
@import "custom/custom";