From dfb6e1f80754c1c8f2d4d332c5292319f008a67b Mon Sep 17 00:00:00 2001 From: amzrk2 Date: Wed, 27 May 2020 22:53:13 +0800 Subject: v2 original port --- assets/_custom.scss | 1 + assets/_fuji-style/_components.scss | 37 ++ assets/_fuji-style/_content.scss | 157 ++++++++ assets/_fuji-style/_footer.scss | 6 + assets/_fuji-style/_header.scss | 25 ++ assets/_fuji-style/_sidebar.scss | 69 ++++ assets/_fuji-theme/_dark.scss | 234 ++++++++++++ assets/_fuji-theme/_light.scss | 198 ++++++++++ assets/_global.scss | 21 + assets/_primer/base/base.scss | 86 +++++ assets/_primer/base/index.scss | 6 + assets/_primer/base/kbd.scss | 21 + assets/_primer/base/normalize.scss | 421 +++++++++++++++++++++ assets/_primer/base/typography-base.scss | 88 +++++ assets/_primer/layout/container.scss | 30 ++ assets/_primer/layout/grid.scss | 64 ++++ assets/_primer/markdown/blob-csv.scss | 29 ++ assets/_primer/markdown/code.scss | 69 ++++ assets/_primer/markdown/headings.scss | 72 ++++ assets/_primer/markdown/images.scss | 131 +++++++ assets/_primer/markdown/index.scss | 8 + assets/_primer/markdown/lists.scss | 77 ++++ assets/_primer/markdown/markdown-body.scss | 99 +++++ assets/_primer/markdown/tables.scss | 36 ++ assets/_primer/support/index.scss | 11 + assets/_primer/support/mixins/buttons.scss | 167 ++++++++ assets/_primer/support/mixins/layout.scss | 58 +++ assets/_primer/support/mixins/misc.scss | 29 ++ assets/_primer/support/mixins/typography.scss | 84 ++++ assets/_primer/support/variables/color-system.scss | 243 ++++++++++++ assets/_primer/support/variables/colors.scss | 63 +++ assets/_primer/support/variables/layout.scss | 129 +++++++ assets/_primer/support/variables/misc.scss | 26 ++ assets/_primer/support/variables/typography.scss | 42 ++ assets/_primer/utilities/layout.scss | 87 +++++ assets/_var.scss | 36 ++ assets/css/APlayer.min.css | 3 - assets/css/fontawsome.min.css | 5 - assets/fuji.scss | 24 ++ assets/js/APlayer.min.js | 2 - assets/js/jquery.min.js | 2 - assets/js/lazysizes.min.js | 2 - assets/js/medium-zoom.min.js | 2 - assets/sass/@primer/css/base/README.md | 25 -- assets/sass/@primer/css/base/base.scss | 86 ----- assets/sass/@primer/css/base/index.scss | 6 - assets/sass/@primer/css/base/kbd.scss | 21 - assets/sass/@primer/css/base/normalize.scss | 421 --------------------- assets/sass/@primer/css/base/typography-base.scss | 88 ----- assets/sass/@primer/css/layout/README.md | 25 -- assets/sass/@primer/css/layout/container.scss | 30 -- assets/sass/@primer/css/layout/grid-offset.scss | 19 - assets/sass/@primer/css/layout/grid.scss | 64 ---- assets/sass/@primer/css/layout/index.scss | 4 - assets/sass/@primer/css/markdown/README.md | 25 -- assets/sass/@primer/css/markdown/blob-csv.scss | 29 -- assets/sass/@primer/css/markdown/code.scss | 69 ---- assets/sass/@primer/css/markdown/headings.scss | 72 ---- assets/sass/@primer/css/markdown/images.scss | 131 ------- assets/sass/@primer/css/markdown/index.scss | 8 - assets/sass/@primer/css/markdown/lists.scss | 77 ---- .../sass/@primer/css/markdown/markdown-body.scss | 99 ----- assets/sass/@primer/css/markdown/tables.scss | 36 -- assets/sass/@primer/css/support/README.md | 25 -- assets/sass/@primer/css/support/index.scss | 11 - .../sass/@primer/css/support/mixins/buttons.scss | 167 -------- assets/sass/@primer/css/support/mixins/layout.scss | 58 --- assets/sass/@primer/css/support/mixins/misc.scss | 29 -- .../@primer/css/support/mixins/typography.scss | 84 ---- .../css/support/variables/color-system.scss | 243 ------------ .../sass/@primer/css/support/variables/colors.scss | 63 --- .../sass/@primer/css/support/variables/layout.scss | 129 ------- .../sass/@primer/css/support/variables/misc.scss | 26 -- .../@primer/css/support/variables/typography.scss | 42 -- assets/sass/@primer/css/utilities/README.md | 25 -- assets/sass/@primer/css/utilities/animations.scss | 183 --------- assets/sass/@primer/css/utilities/borders.scss | 116 ------ assets/sass/@primer/css/utilities/box-shadow.scss | 25 -- assets/sass/@primer/css/utilities/colors.scss | 115 ------ assets/sass/@primer/css/utilities/details.scss | 28 -- assets/sass/@primer/css/utilities/flexbox.scss | 51 --- assets/sass/@primer/css/utilities/index.scss | 14 - assets/sass/@primer/css/utilities/layout.scss | 87 ----- assets/sass/@primer/css/utilities/margin.scss | 50 --- assets/sass/@primer/css/utilities/padding.scss | 49 --- assets/sass/@primer/css/utilities/typography.scss | 255 ------------- .../@primer/css/utilities/visibility-display.scss | 74 ---- assets/sass/_class.scss | 88 ----- assets/sass/_primer.scss | 13 - assets/sass/_var.scss | 36 -- assets/sass/custom.scss | 1 - assets/sass/main.scss | 24 -- assets/sass/modules/_archive.scss | 39 -- assets/sass/modules/_component.scss | 28 -- assets/sass/modules/_content.scss | 95 ----- assets/sass/modules/_footer.scss | 8 - assets/sass/modules/_header.scss | 18 - assets/sass/modules/_pagination.scss | 28 -- assets/sass/modules/_sidebar.scss | 42 -- 99 files changed, 2984 insertions(+), 3720 deletions(-) create mode 100644 assets/_custom.scss create mode 100644 assets/_fuji-style/_components.scss create mode 100644 assets/_fuji-style/_content.scss create mode 100644 assets/_fuji-style/_footer.scss create mode 100644 assets/_fuji-style/_header.scss create mode 100644 assets/_fuji-style/_sidebar.scss create mode 100644 assets/_fuji-theme/_dark.scss create mode 100644 assets/_fuji-theme/_light.scss create mode 100644 assets/_global.scss create mode 100644 assets/_primer/base/base.scss create mode 100644 assets/_primer/base/index.scss create mode 100644 assets/_primer/base/kbd.scss create mode 100644 assets/_primer/base/normalize.scss create mode 100644 assets/_primer/base/typography-base.scss create mode 100644 assets/_primer/layout/container.scss create mode 100644 assets/_primer/layout/grid.scss create mode 100644 assets/_primer/markdown/blob-csv.scss create mode 100644 assets/_primer/markdown/code.scss create mode 100644 assets/_primer/markdown/headings.scss create mode 100644 assets/_primer/markdown/images.scss create mode 100644 assets/_primer/markdown/index.scss create mode 100644 assets/_primer/markdown/lists.scss create mode 100644 assets/_primer/markdown/markdown-body.scss create mode 100644 assets/_primer/markdown/tables.scss create mode 100644 assets/_primer/support/index.scss create mode 100644 assets/_primer/support/mixins/buttons.scss create mode 100644 assets/_primer/support/mixins/layout.scss create mode 100644 assets/_primer/support/mixins/misc.scss create mode 100644 assets/_primer/support/mixins/typography.scss create mode 100644 assets/_primer/support/variables/color-system.scss create mode 100644 assets/_primer/support/variables/colors.scss create mode 100644 assets/_primer/support/variables/layout.scss create mode 100644 assets/_primer/support/variables/misc.scss create mode 100644 assets/_primer/support/variables/typography.scss create mode 100644 assets/_primer/utilities/layout.scss create mode 100644 assets/_var.scss delete mode 100644 assets/css/APlayer.min.css delete mode 100644 assets/css/fontawsome.min.css create mode 100644 assets/fuji.scss delete mode 100644 assets/js/APlayer.min.js delete mode 100644 assets/js/jquery.min.js delete mode 100644 assets/js/lazysizes.min.js delete mode 100644 assets/js/medium-zoom.min.js delete mode 100644 assets/sass/@primer/css/base/README.md delete mode 100644 assets/sass/@primer/css/base/base.scss delete mode 100644 assets/sass/@primer/css/base/index.scss delete mode 100644 assets/sass/@primer/css/base/kbd.scss delete mode 100644 assets/sass/@primer/css/base/normalize.scss delete mode 100644 assets/sass/@primer/css/base/typography-base.scss delete mode 100644 assets/sass/@primer/css/layout/README.md delete mode 100644 assets/sass/@primer/css/layout/container.scss delete mode 100644 assets/sass/@primer/css/layout/grid-offset.scss delete mode 100644 assets/sass/@primer/css/layout/grid.scss delete mode 100644 assets/sass/@primer/css/layout/index.scss delete mode 100644 assets/sass/@primer/css/markdown/README.md delete mode 100644 assets/sass/@primer/css/markdown/blob-csv.scss delete mode 100644 assets/sass/@primer/css/markdown/code.scss delete mode 100644 assets/sass/@primer/css/markdown/headings.scss delete mode 100644 assets/sass/@primer/css/markdown/images.scss delete mode 100644 assets/sass/@primer/css/markdown/index.scss delete mode 100644 assets/sass/@primer/css/markdown/lists.scss delete mode 100644 assets/sass/@primer/css/markdown/markdown-body.scss delete mode 100644 assets/sass/@primer/css/markdown/tables.scss delete mode 100644 assets/sass/@primer/css/support/README.md delete mode 100644 assets/sass/@primer/css/support/index.scss delete mode 100644 assets/sass/@primer/css/support/mixins/buttons.scss delete mode 100644 assets/sass/@primer/css/support/mixins/layout.scss delete mode 100644 assets/sass/@primer/css/support/mixins/misc.scss delete mode 100644 assets/sass/@primer/css/support/mixins/typography.scss delete mode 100644 assets/sass/@primer/css/support/variables/color-system.scss delete mode 100644 assets/sass/@primer/css/support/variables/colors.scss delete mode 100644 assets/sass/@primer/css/support/variables/layout.scss delete mode 100644 assets/sass/@primer/css/support/variables/misc.scss delete mode 100644 assets/sass/@primer/css/support/variables/typography.scss delete mode 100644 assets/sass/@primer/css/utilities/README.md delete mode 100644 assets/sass/@primer/css/utilities/animations.scss delete mode 100644 assets/sass/@primer/css/utilities/borders.scss delete mode 100644 assets/sass/@primer/css/utilities/box-shadow.scss delete mode 100644 assets/sass/@primer/css/utilities/colors.scss delete mode 100644 assets/sass/@primer/css/utilities/details.scss delete mode 100644 assets/sass/@primer/css/utilities/flexbox.scss delete mode 100644 assets/sass/@primer/css/utilities/index.scss delete mode 100644 assets/sass/@primer/css/utilities/layout.scss delete mode 100644 assets/sass/@primer/css/utilities/margin.scss delete mode 100644 assets/sass/@primer/css/utilities/padding.scss delete mode 100644 assets/sass/@primer/css/utilities/typography.scss delete mode 100644 assets/sass/@primer/css/utilities/visibility-display.scss delete mode 100644 assets/sass/_class.scss delete mode 100644 assets/sass/_primer.scss delete mode 100644 assets/sass/_var.scss delete mode 100644 assets/sass/custom.scss delete mode 100644 assets/sass/main.scss delete mode 100644 assets/sass/modules/_archive.scss delete mode 100644 assets/sass/modules/_component.scss delete mode 100644 assets/sass/modules/_content.scss delete mode 100644 assets/sass/modules/_footer.scss delete mode 100644 assets/sass/modules/_header.scss delete mode 100644 assets/sass/modules/_pagination.scss delete mode 100644 assets/sass/modules/_sidebar.scss (limited to 'assets') diff --git a/assets/_custom.scss b/assets/_custom.scss new file mode 100644 index 0000000..ca09079 --- /dev/null +++ b/assets/_custom.scss @@ -0,0 +1 @@ +// wtb covered diff --git a/assets/_fuji-style/_components.scss b/assets/_fuji-style/_components.scss new file mode 100644 index 0000000..724e4cf --- /dev/null +++ b/assets/_fuji-style/_components.scss @@ -0,0 +1,37 @@ +.btn { + position: fixed; + right: 1.5rem; + bottom: 1.5rem; + width: 2.5rem; + height: 5rem; + display: flex; + justify-content: space-between; + flex-direction: column; + + div { + flex: 0 1 auto; + width: 2.5rem; + height: 2.5rem; + display: flex; + align-items: center; + justify-content: center; + cursor: pointer; + + &:first-child { + border-radius: 0.25rem 0.25rem 0 0; + } + + &:last-child { + border-radius: 0 0 0.25rem 0.25rem; + } + } + + i { + font-size: 1.25rem; + } +} + +#post-aplayer { + margin: 0 0.125rem 1.25rem 0.125rem; + font-family: inherit; +} diff --git a/assets/_fuji-style/_content.scss b/assets/_fuji-style/_content.scss new file mode 100644 index 0000000..7489ec9 --- /dev/null +++ b/assets/_fuji-style/_content.scss @@ -0,0 +1,157 @@ +.content { + padding: 1.5rem 1.5rem 0 1.5rem; // same as sidebar +} + +.post { + // paddings between posts + &:not(:first-child) { + padding: 1.5rem 0; + } + + &:first-child { + padding: 0 0 1.5rem 0; + } +} + +.post-title { + font-size: $font-size-1; +} + +.post-meta { + margin: 0.5rem 0.25rem 1rem 0.25rem; // little space + white-space: nowrap; + overflow-x: scroll; + + time, + span:not(:last-child) { + padding-right: 1.5rem; + } + + &::-webkit-scrollbar { + display: none; // WebKit + } + + scrollbar-width: none; // Firefox + -ms-overflow-style: none; // Microsoft +} + +.post-summary { + margin: 0 0.1rem; // little space + + p:last-child { + margin-bottom: 0; // remove margin-bottom of last para in summary + } + + h1, + h2, + h3, + h4, + h5, + h6 { + display: none; // hide h1-h6 in post summary + } +} + +.post-meta-archive { + margin: 0.5rem 0.25rem 0 0.25rem; // little space + white-space: nowrap; + overflow-x: scroll; + + time, + span:not(:last-child) { + padding-right: 1.5rem; + } + + &::-webkit-scrollbar { + display: none; // WebKit + } + + scrollbar-width: none; // Firefox + -ms-overflow-style: none; // Microsoft +} + +.pagination { + text-align: center; + padding: 1rem 0; + font-size: 1.25rem; + + & > div { + display: inline-block; + width: 2rem; + height: 2rem; + + &.pag-item { + padding: 0 0.25rem; + + a { + vertical-align: middle; + } + } + } + + i { + padding: 0 0.25rem; + vertical-align: middle; + } +} + +.page-info { + padding: 0 0.1rem 1.5rem 0.1rem; +} + +// single page part +article { + padding-bottom: 1.5rem; + + .post-content { + margin: 1.25rem 0.1rem 0 0.1rem; + } +} + +.license { + margin-bottom: 1.5rem; +} + +.post-loading { + margin: 0 0 1.5rem 0; + padding-top: 1.5rem; + text-align: center; + + i { + font-size: 1.25rem; + } + + p { + margin: 0.5rem 0 0 0; + } +} + +.markdown-body { + h1 { + font-size: $font-size-1; + margin-top: 1.5rem; + } + + h2 { + font-size: $font-size-2; + margin-top: 1.375rem; + } + + h3 { + font-size: $font-size-3; + margin-top: 1.25rem; + } + + h4 { + margin-top: 1.25rem; + } + + ul { + list-style-type: circle; + } + + img { + max-width: 98%; + margin: 0 0.25rem 0.5rem 0.25rem; + } +} diff --git a/assets/_fuji-style/_footer.scss b/assets/_fuji-style/_footer.scss new file mode 100644 index 0000000..ac4ed47 --- /dev/null +++ b/assets/_fuji-style/_footer.scss @@ -0,0 +1,6 @@ +footer { + .footer { + padding: 2rem 1.5rem; + text-align: center; + } +} diff --git a/assets/_fuji-style/_header.scss b/assets/_fuji-style/_header.scss new file mode 100644 index 0000000..29afe07 --- /dev/null +++ b/assets/_fuji-style/_header.scss @@ -0,0 +1,25 @@ +header { + .header { + padding: 1.75rem 1.5rem 2rem 1.5rem; + } + + .title-main { + font-size: 2.5rem; + font-family: 'Product Sans', -apple-system, BlinkMacSystemFont, monospace; + font-weight: 700; + white-space: nowrap; + } + + .title-sub { + margin: 0 0.1rem; + display: block; + white-space: nowrap; + + &::-webkit-scrollbar { + display: none; // WebKit + } + + scrollbar-width: none; // Firefox + -ms-overflow-style: none; // Microsoft + } +} diff --git a/assets/_fuji-style/_sidebar.scss b/assets/_fuji-style/_sidebar.scss new file mode 100644 index 0000000..132a22f --- /dev/null +++ b/assets/_fuji-style/_sidebar.scss @@ -0,0 +1,69 @@ +.sidebar { + padding: 1.5rem 1.5rem 1.5rem 0; // no left padding on big screen +} + +.sidebar-item { + &:not(:last-child) { + margin-bottom: 1rem; // space betreen sidebar items + } + + h3 { + margin-bottom: 0.25rem; // space betreen head3 & lists + } + + ul { + list-style-type: none; + margin: 0 0.1rem; // little space + } + + & > div, + & > nav { + margin: 0 0.1rem; // little space + } + + & > img { + margin: 0.5rem 0.25rem 0 0.25rem; + width: 100%; + border-radius: 2px; + } +} + +@media screen and (max-width: $width-md) { + .sidebar { + padding: 1.5rem; + display: flex; + flex-direction: row; + flex-wrap: wrap; + justify-content: space-around; + } + + .sidebar-item { + width: 40%; // max 2 modules per line + + // space only at first 2 modules + .sidebar-pages, + .sidebar-tags { + margin-bottom: 1rem; + } + + .sidebar-links, + .sidebar-bgm { + margin-bottom: 0; + } + + & > img { + margin: 0.5rem 0.25rem 0 0.25rem; + width: 75%; + border-radius: 0.25rem; + } + } +} + +// single page part +.sidebar-toc { + ul ul { + font-size: 0.875rem; + padding-left: 0.5rem; + margin-bottom: 0.25rem; + } +} diff --git a/assets/_fuji-theme/_dark.scss b/assets/_fuji-theme/_dark.scss new file mode 100644 index 0000000..122f3f1 --- /dev/null +++ b/assets/_fuji-theme/_dark.scss @@ -0,0 +1,234 @@ +$color-primary-dark: #8aa2d3; // https://irocore.com/aofuji/ +$color-primary-dark-dark: #e6e6e6; // https://irocore.com/shironezumi/ +$color-secondary-dark: #bab1df; // https://irocore.com/fujimurasaki/ +$color-mute-dark: #9ea1a3; // https://irocore.com/suzu-iro/ +$color-font-dark: #c0c0c0; // https://irocore.com/gin-iro/ +$color-divider-dark: #4d5158; // discord +$color-bg-dark: #2f3136; // discord + +$divider-dark: 2px solid $color-divider-dark; + +@mixin link-1 { + a { + color: $color-primary-dark; + } + + a:hover { + color: $color-secondary-dark; + } +} + +@mixin link-2 { + a { + color: $color-secondary-dark; + } + + a:hover { + color: $color-primary-dark-dark; + } +} + +body[data-theme='dark'] { + background-color: $color-bg-dark; + color: $color-font-dark; + + @include link-1(); + + .post-summary, + .post-meta { + @include link-2(); + } + + .pag-current a, + .pag-current a:hover { + color: $color-primary-dark-dark; + } + + .title-sub, + .post-meta { + color: $color-mute-dark; + } + + header, + .page-info { + border-bottom: $divider-dark; + } + + .post + .post, + .pagination, + footer { + border-top: $divider-dark; + } + + .post-meta-archive { + @include link-2(); + + color: $color-mute-dark; + } + + @media screen and (max-width: $width-md) { + .sidebar { + border-top: $divider-dark; + } + } + + // single page part + .post-content { + @include link-2(); + } + + .markdown-body { + h1, + h2, + h3, + h4, + h5, + h6 { + color: $color-primary-dark; + } + + h1, + h2 { + border-bottom: $divider-dark; + } + + blockquote { + color: $color-mute; + } + + img { + border-radius: 2px; + background-color: inherit; // fix white pixels under border-radius + } + + hr { + height: 2px; + } + + pre, + code { + background-color: $color-divider-dark; + } + } + + .post-loading, + .post-comment .utterances-frame, + .post-comment #disqus_thread { + border-top: $divider-dark; + } + + // components + .btn { + div { + background-color: $color-divider-dark; + color: $color-primary-dark; + } + + div:hover { + background-color: $color-primary-dark; + color: $color-divider-dark; + } + + div + div { + border-top: 2px solid $color-bg-dark; + } + } + + // highlight.js theme [solarized-dark] + .hljs { + display: block; + overflow-x: auto; + } + .hljs-comment, + .hljs-quote { + color: #85aab6; + } + .hljs-addition, + .hljs-keyword, + .hljs-selector-tag { + color: #bad601; + } + .hljs-doctag, + .hljs-literal, + .hljs-meta .hljs-meta-string, + .hljs-number, + .hljs-regexp, + .hljs-string { + color: #38cfc3; + } + .hljs-name, + .hljs-section, + .hljs-selector-class, + .hljs-selector-id, + .hljs-title { + color: #479fdf; + } + .hljs-attr, + .hljs-attribute, + .hljs-class .hljs-title, + .hljs-template-variable, + .hljs-type, + .hljs-variable { + color: #c9ac56; + } + .hljs-bullet, + .hljs-link, + .hljs-meta, + .hljs-meta .hljs-keyword, + .hljs-selector-attr, + .hljs-selector-pseudo, + .hljs-subst, + .hljs-symbol { + color: #db835d; + } + .hljs-built_in, + .hljs-deletion { + color: #e27876; + } + .hljs-formula { + background: #24849c; + } + .hljs-emphasis { + font-style: italic; + } + .hljs-strong { + font-weight: 600; + } + + // diff from light + img { + filter: brightness(60%); + } + + table { + th, + td { + border-color: $color-font-dark; + } + + tr { + background-color: $color-bg-dark; + border-color: $color-font-dark; + + &:nth-child(2n) { + background-color: $color-divider-dark; + } + } + } + + #post-aplayer { + background-color: $color-divider-dark; + } + + .aplayer .aplayer-info .aplayer-music .aplayer-author { + color: $color-font-dark !important; + } + + .aplayer .aplayer-info .aplayer-controller .aplayer-time .aplayer-icon path { + fill: $color-font-dark !important; + } + + .aplayer .aplayer-info .aplayer-controller .aplayer-time .aplayer-icon:hover path { + fill: $color-primary-dark-dark !important; + } +} diff --git a/assets/_fuji-theme/_light.scss b/assets/_fuji-theme/_light.scss new file mode 100644 index 0000000..58687ac --- /dev/null +++ b/assets/_fuji-theme/_light.scss @@ -0,0 +1,198 @@ +$color-primary: #8aa2d3; // https://irocore.com/aofuji/ +$color-primary-dark: #3b469b; // https://irocore.com/aomurasaki/ +$color-secondary: #8f82bc; // https://irocore.com/fujimurasaki/ +$color-mute: #9ea1a3; // https://irocore.com/suzu-iro/ +$color-font: #3f4551; // https://irocore.com/konnezu/ +$color-divider: #e5e2e4; // https://irocore.com/komachinezu/ +$color-bg: #fffffd; // https://irocore.com/shiro/ + +$divider: 2px solid $color-divider; + +@mixin link-1 { + a { + color: $color-primary; + } + + a:hover { + color: $color-secondary; + } +} + +@mixin link-2 { + a { + color: $color-secondary; + } + + a:hover { + color: $color-primary-dark; + } +} + +body[data-theme='light'] { + background-color: $color-bg; + color: $color-font; + + @include link-1(); + + .post-summary, + .post-meta { + @include link-2(); + } + + .pag-current a, + .pag-current a:hover { + color: $color-primary-dark; + } + + .title-sub, + .post-meta { + color: $color-mute; + } + + header, + .page-info { + border-bottom: $divider; + } + + .post + .post, + .pagination, + footer { + border-top: $divider; + } + + .post-meta-archive { + @include link-2(); + + color: $color-mute; + } + + @media screen and (max-width: $width-md) { + .sidebar { + border-top: $divider; + } + } + + // single page part + .post-content { + @include link-2(); + } + + .markdown-body { + h1, + h2, + h3, + h4, + h5, + h6 { + color: $color-primary; + } + + h1, + h2 { + border-bottom: $divider; + } + + blockquote { + color: $color-mute; + } + + img { + border-radius: 2px; + background-color: inherit; // fix white pixels under border-radius + } + + hr { + height: 2px; + } + + pre, + code { + background-color: #f2f2f2; + } + } + + .post-loading, + .post-comment .utterances-frame, + .post-comment #disqus_thread { + border-top: $divider; + } + + // components + .btn { + div { + background-color: $color-divider; + + color: $color-primary; + } + + div:hover { + background-color: $color-primary; + color: $color-divider; + } + + div + div { + border-top: 2px solid $color-bg; + } + } + + // highlight.js theme [solarized-light] + .hljs { + display: block; + overflow-x: auto; + } + .hljs-comment, + .hljs-quote { + color: #93a1a1; + } + .hljs-addition, + .hljs-keyword, + .hljs-selector-tag { + color: #859900; + } + .hljs-doctag, + .hljs-literal, + .hljs-meta .hljs-meta-string, + .hljs-number, + .hljs-regexp, + .hljs-string { + color: #2aa198; + } + .hljs-name, + .hljs-section, + .hljs-selector-class, + .hljs-selector-id, + .hljs-title { + color: #268bd2; + } + .hljs-attr, + .hljs-attribute, + .hljs-class .hljs-title, + .hljs-template-variable, + .hljs-type, + .hljs-variable { + color: #b58900; + } + .hljs-bullet, + .hljs-link, + .hljs-meta, + .hljs-meta .hljs-keyword, + .hljs-selector-attr, + .hljs-selector-pseudo, + .hljs-subst, + .hljs-symbol { + color: #ca5624; + } + .hljs-built_in, + .hljs-deletion { + color: #da4a47; + } + .hljs-formula { + background: #eee8d5; + } + .hljs-emphasis { + font-style: italic; + } + .hljs-strong { + font-weight: 600; + } +} diff --git a/assets/_global.scss b/assets/_global.scss new file mode 100644 index 0000000..fb2c3f9 --- /dev/null +++ b/assets/_global.scss @@ -0,0 +1,21 @@ +* { + box-sizing: border-box; +} + +// sticky footer +html { + height: 100%; +} +body { + display: flex; + flex-direction: column; + height: 100%; +} +main { + flex: 1 1 auto; +} + +// remove text decoration +a:hover { + text-decoration: none !important; +} diff --git a/assets/_primer/base/base.scss b/assets/_primer/base/base.scss new file mode 100644 index 0000000..381fa89 --- /dev/null +++ b/assets/_primer/base/base.scss @@ -0,0 +1,86 @@ +// stylelint-disable selector-max-type +* { + box-sizing: border-box; +} + +input, +select, +textarea, +button { + font-family: inherit; + font-size: inherit; + line-height: inherit; +} + +body { + font-family: $body-font; + font-size: $body-font-size; + line-height: $body-line-height; + color: $text-gray-dark; + background-color: $bg-white; +} + +a { + color: $text-blue; + text-decoration: none; + + &:hover { + text-decoration: underline; + } +} + +b, +strong { + font-weight: $font-weight-bold; +} + +// Horizontal lines +// +// TODO-MDO: Remove `.rule` from everywhere and replace with `
s) + > code { + padding: 0; + margin: 0; + // stylelint-disable-next-line primer/typography + font-size: 100%; + word-break: normal; + white-space: pre; + background: transparent; + border: 0; + } + } + + .highlight { + margin-bottom: $spacer-3; + + pre { + margin-bottom: 0; + word-break: normal; + } + } + + .highlight pre, + pre { + padding: $spacer-3; + overflow: auto; + // stylelint-disable-next-line primer/typography + font-size: 85%; + // stylelint-disable-next-line primer/typography + line-height: 1.45; + background-color: $bg-gray; + border-radius: $border-radius; + } + + pre code, + pre tt { + display: inline; + max-width: auto; + padding: 0; + margin: 0; + overflow: visible; + line-height: inherit; + word-wrap: normal; + background-color: transparent; + border: 0; + } +} diff --git a/assets/_primer/markdown/headings.scss b/assets/_primer/markdown/headings.scss new file mode 100644 index 0000000..26347bb --- /dev/null +++ b/assets/_primer/markdown/headings.scss @@ -0,0 +1,72 @@ +// Needs refactoring +// stylelint-disable selector-max-compound-selectors, selector-max-specificity +// stylelint-disable selector-max-type +.markdown-body { + // Headings + h1, + h2, + h3, + h4, + h5, + h6 { + margin-top: $spacer-4; + margin-bottom: $spacer-3; + font-weight: $font-weight-bold; + line-height: $lh-condensed; + + .octicon-link { + color: $text-black; + vertical-align: middle; + visibility: hidden; + } + + &:hover .anchor { + text-decoration: none; + + .octicon-link { + visibility: visible; + } + } + + tt, + code { + font-size: inherit; + } + } + + h1 { + // stylelint-disable-next-line primer/spacing + padding-bottom: 0.3em; + // stylelint-disable-next-line primer/typography + font-size: 2em; + border-bottom: $border-width $border-style $border-gray-light; + } + + h2 { + // stylelint-disable-next-line primer/spacing + padding-bottom: 0.3em; + // stylelint-disable-next-line primer/typography + font-size: 1.5em; + border-bottom: $border-width $border-style $border-gray-light; + } + + h3 { + // stylelint-disable-next-line primer/typography + font-size: 1.25em; + } + + h4 { + font-size: 1em; + } + + h5 { + // stylelint-disable-next-line primer/typography + font-size: 0.875em; + } + + h6 { + // stylelint-disable-next-line primer/typography + font-size: 0.85em; + color: $text-gray-light; + } +} diff --git a/assets/_primer/markdown/images.scss b/assets/_primer/markdown/images.scss new file mode 100644 index 0000000..caea502 --- /dev/null +++ b/assets/_primer/markdown/images.scss @@ -0,0 +1,131 @@ +// Need to target base styles +// stylelint-disable selector-max-compound-selectors, selector-no-qualifying-type +// stylelint-disable selector-max-type +.markdown-body { + // Images & Stuff + img { + max-width: 100%; + // because we put padding on the images to hide header lines, and some people + // specify the width of their images in their markdown. + box-sizing: content-box; + background-color: $bg-white; + + &[align=right] { + // stylelint-disable-next-line primer/spacing + padding-left: 20px; + } + + &[align=left] { + // stylelint-disable-next-line primer/spacing + padding-right: 20px; + } + } + + .emoji { + max-width: none; + vertical-align: text-top; + // Override `` styles so Emjois don't clash with zebra striping in our tables + background-color: transparent; + } + + // Gollum Image Tags + + // Framed + span.frame { + display: block; + overflow: hidden; + + > span { + display: block; + float: left; + width: auto; + // stylelint-disable-next-line primer/spacing + padding: 7px; + // stylelint-disable-next-line primer/spacing + margin: 13px 0 0; + overflow: hidden; + // stylelint-disable-next-line primer/borders + border: $border-width $border-style lighten($gray-300, 5%); + } + + span img { + display: block; + float: left; + } + + span span { + display: block; + // stylelint-disable-next-line primer/spacing + padding: 5px 0 0; + clear: both; + color: $text-gray-dark; + } + } + + span.align-center { + display: block; + overflow: hidden; + clear: both; + + > span { + display: block; + // stylelint-disable-next-line primer/spacing + margin: 13px auto 0; + overflow: hidden; + text-align: center; + } + + span img { + margin: 0 auto; + text-align: center; + } + } + + span.align-right { + display: block; + overflow: hidden; + clear: both; + + > span { + display: block; + // stylelint-disable-next-line primer/spacing + margin: 13px 0 0; + overflow: hidden; + text-align: right; + } + + span img { + margin: 0; + text-align: right; + } + } + + span.float-left { + display: block; + float: left; + // stylelint-disable-next-line primer/spacing + margin-right: 13px; + overflow: hidden; + + span { + // stylelint-disable-next-line primer/spacing + margin: 13px 0 0; + } + } + + span.float-right { + display: block; + float: right; + // stylelint-disable-next-line primer/spacing + margin-left: 13px; + overflow: hidden; + + > span { + display: block; + // stylelint-disable-next-line primer/spacing + margin: 13px auto 0; + overflow: hidden; + text-align: right; + } + } +} diff --git a/assets/_primer/markdown/index.scss b/assets/_primer/markdown/index.scss new file mode 100644 index 0000000..b2e8d3d --- /dev/null +++ b/assets/_primer/markdown/index.scss @@ -0,0 +1,8 @@ +@import "../support/index.scss"; +@import "./markdown-body.scss"; +@import "./headings.scss"; +@import "./lists.scss"; +@import "./tables.scss"; +@import "./images.scss"; +@import "./code.scss"; +@import "./blob-csv.scss"; diff --git a/assets/_primer/markdown/lists.scss b/assets/_primer/markdown/lists.scss new file mode 100644 index 0000000..b680faf --- /dev/null +++ b/assets/_primer/markdown/lists.scss @@ -0,0 +1,77 @@ +// Base styles +// stylelint-disable selector-no-qualifying-type +// stylelint-disable selector-max-type +.markdown-body { + + // Lists, Blockquotes & Such + ul, + ol { + // stylelint-disable-next-line primer/spacing + padding-left: 2em; + + &.no-list { + padding: 0; + list-style-type: none; + } + } + + // Did someone complain about list spacing? Encourage them + // to create the spacing with their markdown formatting. + // List behavior should be controled by the markup, not the css. + // + // For lists with padding between items, use blank + // lines between items. This will generate paragraphs with + // padding to space things out. + // + // - item + // + // - item + // + // - item + // + // For list without padding, don't use blank lines. + // + // - item + // - item + // - item + // + // Modifying the css to emulate these behaviors merely brakes + // one case in the process of solving another. Don't change + // this unless it's really really a bug. + ul ul, + ul ol, + ol ol, + ol ul { + margin-top: 0; + margin-bottom: 0; + } + + li { + word-wrap: break-all; + } + + li > p { + margin-top: $spacer-3; + } + + li + li { + margin-top: $em-spacer-3; + } + + dl { + padding: 0; + + dt { + padding: 0; + margin-top: $spacer-3; + font-size: 1em; + font-style: italic; + font-weight: $font-weight-bold; + } + + dd { + padding: 0 $spacer-3; + margin-bottom: $spacer-3; + } + } +} diff --git a/assets/_primer/markdown/markdown-body.scss b/assets/_primer/markdown/markdown-body.scss new file mode 100644 index 0000000..6581f19 --- /dev/null +++ b/assets/_primer/markdown/markdown-body.scss @@ -0,0 +1,99 @@ +// All of our block level items should have the same margin +// stylelint-disable selector-max-type + +// This is styling for generic markdownized text. Anything you put in a +// container with .markdown-body on it should render generally well. It also +// includes some GitHub Flavored Markdown specific styling (like @mentions) +.markdown-body { + font-family: $body-font; + font-size: $h4-size; + line-height: $body-line-height; + word-wrap: break-word; + + @import "../base/kbd.scss"; // adds support for keyboard shortcuts + + // Clearfix on the markdown body + &::before { + display: table; + content: ""; + } + + &::after { + display: table; + clear: both; + content: ""; + } + + > *:first-child { + margin-top: 0 !important; + } + + > *:last-child { + margin-bottom: 0 !important; + } + + // Anchors like . These sometimes end up wrapped around + // text when users mistakenly forget to close the tag or use self-closing tag + // syntax. We don't want them to appear like links. + // FIXME: a:not(:link):not(:visited) would be a little clearer here (and + // possibly faster to match), but it breaks styling of elements due + // to https://bugs.webkit.org/show_bug.cgi?id=142737. + a:not([href]) { + color: inherit; + text-decoration: none; + } + + // Link Colors + .absent { + color: $text-red; + } + + .anchor { + float: left; + padding-right: $spacer-1; + // stylelint-disable-next-line primer/spacing + margin-left: -20px; + line-height: $lh-condensed-ultra; + + &:focus { + outline: none; + } + } + + p, + blockquote, + ul, + ol, + dl, + table, + pre, + details { + margin-top: 0; + margin-bottom: $spacer-3; + } + + hr { + height: $em-spacer-3; + padding: 0; + margin: $spacer-4 0; + // stylelint-disable-next-line primer/colors + background-color: $gray-200; + border: 0; + } + + blockquote { + // stylelint-disable-next-line primer/spacing + padding: 0 1em; + color: $text-gray-light; + // stylelint-disable-next-line primer/borders + border-left: 0.25em $border-style lighten($gray-300, 5%); + + > :first-child { + margin-top: 0; + } + + > :last-child { + margin-bottom: 0; + } + } +} diff --git a/assets/_primer/markdown/tables.scss b/assets/_primer/markdown/tables.scss new file mode 100644 index 0000000..9d73d17 --- /dev/null +++ b/assets/_primer/markdown/tables.scss @@ -0,0 +1,36 @@ +// Needs refactoring +// stylelint-disable selector-max-type +.markdown-body { + // Tables + table { + display: block; + width: 100%; + overflow: auto; + + th { + font-weight: $font-weight-bold; + } + + th, + td { + // stylelint-disable-next-line primer/spacing + padding: 6px 13px; + // stylelint-disable-next-line primer/borders + border: $border-width $border-style lighten($gray-300, 5%); + } + + tr { + background-color: $bg-white; + // stylelint-disable-next-line primer/borders + border-top: $border-width $border-style darken($gray-300, 4%); + + &:nth-child(2n) { + background-color: $bg-gray; + } + } + + img { + background-color: transparent; + } + } +} diff --git a/assets/_primer/support/index.scss b/assets/_primer/support/index.scss new file mode 100644 index 0000000..93f9449 --- /dev/null +++ b/assets/_primer/support/index.scss @@ -0,0 +1,11 @@ +// variables +@import "./variables/typography.scss"; +@import "./variables/colors.scss"; +@import "./variables/layout.scss"; +@import "./variables/misc.scss"; + +// mixins +@import "./mixins/typography.scss"; +@import "./mixins/layout.scss"; +@import "./mixins/buttons.scss"; +@import "./mixins/misc.scss"; diff --git a/assets/_primer/support/mixins/buttons.scss b/assets/_primer/support/mixins/buttons.scss new file mode 100644 index 0000000..4b6cbb3 --- /dev/null +++ b/assets/_primer/support/mixins/buttons.scss @@ -0,0 +1,167 @@ +// Button color generator for primary and themed buttons + +// New button hotness +@mixin btn-solid($color, $bg, $bg2) { + color: $color; + background-color: $bg2; + background-image: linear-gradient(-180deg, $bg 0%, $bg2 90%); + + @if $bg == $gray-000 { + &:focus, + &.focus { + box-shadow: $btn-input-focus-shadow; + } + + &:hover, + &.hover { + background-color: darken($bg2, 3%); + background-image: linear-gradient(-180deg, darken($bg, 3%) 0%, darken($bg2, 3%) 90%); + background-position: 0 -$em-spacer-5; + border-color: rgba($black, 0.35); + } + + &:active, + &.selected, + &[aria-selected=true], + [open] > & { + background-color: darken(desaturate($bg, 10%), 6%); + background-image: none; + border-color: rgba($black, 0.35); // repeat to avoid shift on click-drag off of button + box-shadow: $btn-active-shadow; + } + + &:disabled, + &.disabled, + &[aria-disabled=true] { + color: rgba($color, 0.4); + background-color: $bg2; + background-image: none; + border-color: $border-color-button; + box-shadow: none; + } + + } + @else { + &:focus, + &.focus { + box-shadow: 0 0 0 0.2em rgba($bg, 0.4); + } + + &:hover, + &.hover { + background-color: darken($bg2, 2%); + background-image: linear-gradient(-180deg, darken($bg, 2%) 0%, darken($bg2, 2%) 90%); + background-position: 0 -$em-spacer-5; + border-color: $black-fade-50; + } + + &:active, + &.selected, + &[aria-selected=true], + [open] > & { + background-color: darken(mix($bg, $bg2, 50%), 7%); + background-image: none; + border-color: $black-fade-50; // repeat to avoid shift on click-drag off of button + box-shadow: $btn-active-shadow; + } + + &:disabled, + &.disabled, + &[aria-disabled=true] { + color: rgba($color, 0.75); + background-color: mix($bg2, $white, 50%); + background-image: none; + border-color: $border-color-button; + box-shadow: none; + } + + .Counter { + color: darken($bg, 8%); + background-color: $white; + } + } +} + +// Inverse button hover style +@mixin btn-inverse($color, $bg, $bg2) { + color: $color; + background-color: $bg; + background-image: linear-gradient(-180deg, $bg 0%, $bg2 90%); + + &:focus { + box-shadow: 0 0 0 0.2em rgba($color, 0.4); + } + + &:hover { + color: $text-white; + background-color: $color; + background-image: linear-gradient(-180deg, lighten($color, 10%) 0%, $color 90%); + border-color: $black-fade-50; + + .Counter { + color: $text-white; + } + } + + &:active, + &.selected, + &[aria-selected=true], + [open] > & { + color: $text-white; + background-color: darken($color, 5%); + background-image: none; + border-color: $black-fade-50; + box-shadow: $btn-active-shadow; + } + + &:disabled, + &.disabled, + &[aria-disabled=true] { + color: rgba($color, 0.4); + background-color: $bg2; + background-image: none; + border-color: $border-color-button; + box-shadow: none; + } +} + +// Outline color generator for btn-outline to make the hover state inverse the text and bg colors. +@mixin btn-outline($text-color: $text-blue, $bg-color: $bg-white) { + color: $text-color; + background-color: $bg-color; + background-image: none; + + .Counter { + background-color: rgba($black, 0.07); + } + + &:hover, + &:active, + &.selected, + &[aria-selected=true], + [open] > & { + color: $bg-color; + background-color: $text-color; + background-image: none; + border-color: $text-color; + + .Counter { + color: $text-color; + background-color: $bg-color; + } + } + + &:focus { + border-color: $text-color; + box-shadow: 0 0 0 0.2em rgba($text-color, 0.4); + } + + &:disabled, + &.disabled, + &[aria-disabled=true] { + color: $black-fade-30; + background-color: $bg-white; + border-color: $black-fade-15; + box-shadow: none; + } +} diff --git a/assets/_primer/support/mixins/layout.scss b/assets/_primer/support/mixins/layout.scss new file mode 100644 index 0000000..a6d30cf --- /dev/null +++ b/assets/_primer/support/mixins/layout.scss @@ -0,0 +1,58 @@ +// Responsive media queries + +@mixin breakpoint($breakpoint) { + @if $breakpoint == "" { + @content; + } + + @else { + // Retrieves the value from the key + $value: map-get($breakpoints, $breakpoint); + + // If the key exists in the map + @if $value != null { + // Prints a media query based on the value + @media (min-width: $value) { + @content; + } + } + + // If the key doesn't exist in the map + @else { + @warn "Unfortunately, no value could be retrieved from `#{$breakpoint}`. " + + "Please make sure it is defined in `$breakpoints` map."; + } + } +} + +// Retina media query + +@mixin retina-media-query { + @media + only screen and (-webkit-min-device-pixel-ratio: 2), + only screen and (min--moz-device-pixel-ratio: 2), + only screen and (-moz-min-device-pixel-ratio: 2), + only screen and (-o-min-device-pixel-ratio: 2/1), + only screen and (min-device-pixel-ratio: 2), + only screen and (min-resolution: 192dpi), + only screen and (min-resolution: 2dppx) { + @content; + } +} + +// Clearfix +// +// Clears floats via mixin. + +@mixin clearfix { + &::before { + display: table; + content: ""; + } + + &::after { + display: table; + clear: both; + content: ""; + } +} diff --git a/assets/_primer/support/mixins/misc.scss b/assets/_primer/support/mixins/misc.scss new file mode 100644 index 0000000..ebdd32d --- /dev/null +++ b/assets/_primer/support/mixins/misc.scss @@ -0,0 +1,29 @@ +// Generate a two-color caret for any element. +@mixin double-caret($foreground: $text-white, $background: lighten($gray-300, 5%)) { + &::after, + &::before { + position: absolute; + top: 11px; + right: 100%; + left: -16px; + display: block; + width: 0; + height: 0; + pointer-events: none; + content: " "; + border-color: transparent; + border-style: solid solid outset; + } + + &::after { + margin-top: 1px; + margin-left: 2px; + border-width: 7px; + border-right-color: $foreground; + } + + &::before { + border-width: 8px; + border-right-color: $background; + } +} diff --git a/assets/_primer/support/mixins/typography.scss b/assets/_primer/support/mixins/typography.scss new file mode 100644 index 0000000..23ec0e3 --- /dev/null +++ b/assets/_primer/support/mixins/typography.scss @@ -0,0 +1,84 @@ +// Text hiding for image based text replacement. +// Higher performance than -9999px because it only renders +// the size of the actual text, not a full 9999px box. +@mixin hide-text() { + overflow: hidden; + text-indent: 100%; + white-space: nowrap; +} + +// Heading mixins for use within components +// These match heading utilities in utilities/typography +@mixin h1 { + font-size: $h1-size; + font-weight: $font-weight-bold; +} + +@mixin h2 { + font-size: $h2-size; + font-weight: $font-weight-bold; +} + +@mixin h3 { + font-size: $h3-size; + font-weight: $font-weight-bold; +} + +@mixin h4 { + font-size: $h4-size; + font-weight: $font-weight-bold; +} + +@mixin h5 { + font-size: $h5-size; + font-weight: $font-weight-bold; +} + +@mixin h6 { + font-size: $h6-size; + font-weight: $font-weight-bold; +} + +// Responsive heading mixins +// There are no responsive mixins for h4-h6 because they are small +// and don't need to be smaller on mobile. +@mixin f1-responsive { + font-size: $h1-size-mobile; + + // 32px on desktop + @include breakpoint(md) { font-size: $h1-size; } + +} + +@mixin f2-responsive { + font-size: $h2-size-mobile; + + // 24px on desktop + @include breakpoint(md) { font-size: $h2-size; } +} + +@mixin f3-responsive { + font-size: $h3-size-mobile; + + // 20px on desktop + @include breakpoint(md) { font-size: $h3-size; } + +} + +// These use the mixins from above for responsive heading sizes. +// The following mixins can be used where it's convenient or necessary to +// couple the responsive font-size with the font-weight. +@mixin h1-responsive { + @include f1-responsive; + font-weight: $font-weight-bold; +} + +@mixin h2-responsive { + @include f2-responsive; + font-weight: $font-weight-bold; +} + +@mixin h3-responsive { + @include f3-responsive; + font-weight: $font-weight-bold; +} diff --git a/assets/_primer/support/variables/color-system.scss b/assets/_primer/support/variables/color-system.scss new file mode 100644 index 0000000..febc58b --- /dev/null +++ b/assets/_primer/support/variables/color-system.scss @@ -0,0 +1,243 @@ +// Black based on same hue as $gray-900 +$black: #1b1f23 !default; +$white: #fff !default; + +// +// +// -------- Grays -------- +$gray-000: #fafbfc !default; +$gray-100: #f6f8fa !default; +$gray-200: #e1e4e8 !default; +$gray-300: #d1d5da !default; +$gray-400: #959da5 !default; +$gray-500: #6a737d !default; +$gray-600: #586069 !default; +$gray-700: #444d56 !default; +$gray-800: #2f363d !default; +$gray-900: #24292e !default; // body font color + +// -------- Blue -------- +$blue-000: #f1f8ff !default; +$blue-100: #dbedff !default; +$blue-200: #c8e1ff !default; +$blue-300: #79b8ff !default; +$blue-400: #2188ff !default; +$blue-500: #0366d6 !default; // Default: Passes AA with #fff +$blue-600: #005cc5 !default; +$blue-700: #044289 !default; +$blue-800: #032f62 !default; +$blue-900: #05264c !default; // Passes with 1/2/300 blues + +// -------- Green -------- +$green-000: #f0fff4 !default; +$green-100: #dcffe4 !default; +$green-200: #bef5cb !default; +$green-300: #85e89d !default; +$green-400: #34d058 !default; +$green-500: #28a745 !default; // Default. passes AA Large +$green-600: #22863a !default; // Text green, passes AA on #fff +$green-700: #176f2c !default; +$green-800: #165c26 !default; +$green-900: #144620 !default; + +// -------- Yellow -------- +$yellow-000: #fffdef !default; +$yellow-100: #fffbdd !default; +$yellow-200: #fff5b1 !default; +$yellow-300: #ffea7f !default; +$yellow-400: #ffdf5d !default; +$yellow-500: #ffd33d !default; +$yellow-600: #f9c513 !default; +$yellow-700: #dbab09 !default; +$yellow-800: #b08800 !default; +$yellow-900: #735c0f !default; + +// -------- Orange -------- +$orange-000: #fff8f2 !default; +$orange-100: #ffebda !default; +$orange-200: #ffd1ac !default; +$orange-300: #ffab70 !default; +$orange-400: #fb8532 !default; +$orange-500: #f66a0a !default; // Default. passes AA Large with #fff +$orange-600: #e36209 !default; +$orange-700: #d15704 !default; +$orange-800: #c24e00 !default; +$orange-900: #a04100 !default; + +// -------- Red -------- +$red-000: #ffeef0 !default; +$red-100: #ffdce0 !default; +$red-200: #fdaeb7 !default; +$red-300: #f97583 !default; +$red-400: #ea4a5a !default; +$red-500: #d73a49 !default; // Default. passes AA +$red-600: #cb2431 !default; +$red-700: #b31d28 !default; +$red-800: #9e1c23 !default; +$red-900: #86181d !default; + +// -------- Purple -------- +$purple-000: #f5f0ff !default; +$purple-100: #e6dcfd !default; +$purple-200: #d1bcf9 !default; +$purple-300: #b392f0 !default; +$purple-400: #8a63d2 !default; +$purple-500: #6f42c1 !default; // passes AA with #fff +$purple-600: #5a32a3 !default; +$purple-700: #4c2889 !default; +$purple-800: #3a1d6e !default; +$purple-900: #29134e !default; + +// -------- Pink -------- +$pink-000: #ffeef8 !default; +$pink-100: #fedbf0 !default; +$pink-200: #f9b3dd !default; +$pink-300: #f692ce !default; +$pink-400: #ec6cb9 !default; +$pink-500: #ea4aaa !default; +$pink-600: #d03592 !default; +$pink-700: #b93a86 !default; +$pink-800: #99306f !default; +$pink-900: #6d224f !default; + +// -------- Fades -------- +$black-fade-15: rgba($black, 0.15) !default; +$black-fade-30: rgba($black, 0.3) !default; +$black-fade-50: rgba($black, 0.5) !default; +$black-fade-70: rgba($black, 0.7) !default; +$black-fade-85: rgba($black, 0.85) !default; + +$white-fade-15: rgba($white, 0.15) !default; +$white-fade-30: rgba($white, 0.3) !default; +$white-fade-50: rgba($white, 0.5) !default; +$white-fade-70: rgba($white, 0.7) !default; +$white-fade-85: rgba($white, 0.85) !default; + +// -------- Color defaults -------- +$red: $red-500 !default; +$purple: $purple-500 !default; +$blue: $blue-500 !default; +$green: $green-500 !default; +$yellow: $yellow-500 !default; +$orange: $orange-500 !default; + +$gray-dark: $gray-900 !default; +$gray-light: $gray-400 !default; +$gray: $gray-500 !default; + +// -------- Color gradient maps -------- + +$grays: ( + 0: $gray-000, + 1: $gray-100, + 2: $gray-200, + 3: $gray-300, + 4: $gray-400, + 5: $gray-500, + 6: $gray-600, + 7: $gray-700, + 8: $gray-800, + 9: $gray-900, +) !default; + +$blues: ( + 0: $blue-000, + 1: $blue-100, + 2: $blue-200, + 3: $blue-300, + 4: $blue-400, + 5: $blue-500, + 6: $blue-600, + 7: $blue-700, + 8: $blue-800, + 9: $blue-900, +) !default; + +$greens: ( + 0: $green-000, + 1: $green-100, + 2: $green-200, + 3: $green-300, + 4: $green-400, + 5: $green-500, + 6: $green-600, + 7: $green-700, + 8: $green-800, + 9: $green-900, +) !default; + +$yellows: ( + 0: $yellow-000, + 1: $yellow-100, + 2: $yellow-200, + 3: $yellow-300, + 4: $yellow-400, + 5: $yellow-500, + 6: $yellow-600, + 7: $yellow-700, + 8: $yellow-800, + 9: $yellow-900, +) !default; + +$oranges: ( + 0: $orange-000, + 1: $orange-100, + 2: $orange-200, + 3: $orange-300, + 4: $orange-400, + 5: $orange-500, + 6: $orange-600, + 7: $orange-700, + 8: $orange-800, + 9: $orange-900, +) !default; + +$reds: ( + 0: $red-000, + 1: $red-100, + 2: $red-200, + 3: $red-300, + 4: $red-400, + 5: $red-500, + 6: $red-600, + 7: $red-700, + 8: $red-800, + 9: $red-900, +) !default; + +$purples: ( + 0: $purple-000, + 1: $purple-100, + 2: $purple-200, + 3: $purple-300, + 4: $purple-400, + 5: $purple-500, + 6: $purple-600, + 7: $purple-700, + 8: $purple-800, + 9: $purple-900, +) !default; + +$pinks: ( + 0: $pink-000, + 1: $pink-100, + 2: $pink-200, + 3: $pink-300, + 4: $pink-400, + 5: $pink-500, + 6: $pink-600, + 7: $pink-700, + 8: $pink-800, + 9: $pink-900, +) !default; + +$hue-maps: ( + "gray": $grays, + "blue": $blues, + "green": $greens, + "yellow": $yellows, + "orange": $oranges, + "red": $reds, + "purple": $purples, + "pink": $pinks, +) !default; diff --git a/assets/_primer/support/variables/colors.scss b/assets/_primer/support/variables/colors.scss new file mode 100644 index 0000000..ffbf018 --- /dev/null +++ b/assets/_primer/support/variables/colors.scss @@ -0,0 +1,63 @@ +@import "color-system.scss"; +// Color variables + +// Border colors +$border-white: $white !default; +$border-black-fade: $black-fade-15 !default; +$border-white-fade: $white-fade-15 !default; +$border-gray-dark: $gray-300 !default; +$border-gray-darker: $gray-700 !default; +$border-gray-light: lighten($gray-200, 3%) !default; +$border-gray: $gray-200 !default; +$border-blue: $blue-500 !default; +$border-blue-light: $blue-200 !default; +$border-green: $green-400 !default; +$border-green-light: desaturate($green-300, 40%) !default; +$border-purple: $purple !default; +$border-red: $red !default; +$border-red-light: desaturate($red-300, 60%) !default; +$border-yellow: desaturate($yellow-300, 60%) !default; + +// Buttons have a slightly more opaque border than $border-black-fade (15% alpha) +$border-color-button: rgba($black, 0.2) !default; + +// Background colors +$bg-white: $white !default; +$bg-black: $black !default; +$bg-black-fade: $black-fade-50 !default; +$bg-blue-light: $blue-000 !default; +$bg-blue: $blue-500 !default; +$bg-gray-dark: $gray-900 !default; +$bg-gray-light: $gray-000 !default; +$bg-gray: $gray-100 !default; +$bg-green: $green-500 !default; +$bg-green-light: $green-100 !default; +$bg-orange: $orange-700 !default; +$bg-purple: $purple-500 !default; +$bg-purple-light: $purple-000 !default; +$bg-pink: $pink-500 !default; +$bg-red: $red-500 !default; +$bg-red-light: $red-100 !default; +$bg-yellow: $yellow-500 !default; +$bg-yellow-light: $yellow-200 !default; +$bg-yellow-dark: $yellow-700 !default; + +// diffstat background colors +$bg-diffstat-added: darken($green-400, 5%) !default; +$bg-diffstat-deleted: $red-600 !default; +$bg-diffstat-neutral: $gray-300 !default; + +// Text colors +$text-black: $black !default; +$text-white: $white !default; +$text-blue: $blue-500 !default; +$text-gray-dark: $gray-900 !default; +$text-gray-light: $gray-500 !default; +$text-gray: $gray-600 !default; +$text-green: $green-500 !default; +$text-orange: $orange-900 !default; +$text-orange-light: $orange-600 !default; +$text-purple: $purple !default; +$text-pink: $pink-500 !default; +$text-red: $red-600 !default; +$text-yellow: $yellow-800 !default; diff --git a/assets/_primer/support/variables/layout.scss b/assets/_primer/support/variables/layout.scss new file mode 100644 index 0000000..cec508c --- /dev/null +++ b/assets/_primer/support/variables/layout.scss @@ -0,0 +1,129 @@ +// Layout variables + +// these are values for the display CSS property +$display-values: ( + block, + flex, + inline, + inline-block, + inline-flex, + none, + table, + table-cell +) !default; + +// maps edges to respective corners for border-radius +$edges: ( + top: (top-left, top-right), + right: (top-right, bottom-right), + bottom: (bottom-right, bottom-left), + left: (bottom-left, top-left) +) !default; + +// These are our margin and padding utility spacers. The default step size we +// use is 8px. This gives us a key of: +// 0 => 0px +// 1 => 4px +// 2 => 8px +// 3 => 16px +// 4 => 24px +// 5 => 32px +// 6 => 40px +$spacer: 8px !default; + +// Our spacing scale +$spacer-0: 0 !default; // 0 +$spacer-1: round($spacer / 2) !default; // 4px +$spacer-2: $spacer !default; // 8px +$spacer-3: $spacer * 2 !default; // 16px +$spacer-4: $spacer * 3 !default; // 24px +$spacer-5: $spacer * 4 !default; // 32px +$spacer-6: $spacer * 5 !default; // 40px + +// The list of spacer values +$spacers: ( + $spacer-0, + $spacer-1, + $spacer-2, + $spacer-3, + $spacer-4, + $spacer-5, + $spacer-6, +) !default; + +// And the map of spacers, for easier looping: +// @each $scale, $length in $spacer-map { ... } +$spacer-map: ( + 0: $spacer-0, + 1: $spacer-1, + 2: $spacer-2, + 3: $spacer-3, + 4: $spacer-4, + 5: $spacer-5, + 6: $spacer-6, +) !default; + +// Em spacer variables +$em-spacer-1: 0.0625em !default; // 1/16 +$em-spacer-2: 0.125em !default; // 1/8 +$em-spacer-3: 0.25em !default; // 1/4 +$em-spacer-4: 0.375em !default; // 3/8 +$em-spacer-5: 0.5em !default; // 1/2 +$em-spacer-6: 0.75em !default; // 3/4 + +// Fixed-width container variables +$container-width: 980px !default; +$grid-gutter: 10px !default; + +// Breakpoint widths +$width-xs: 0 !default; +// Small screen / phone +$width-sm: 544px !default; +// Medium screen / tablet +$width-md: 768px !default; +// Large screen / desktop (980 + (16 * 2)) <= container + gutters +$width-lg: 1012px !default; +// Extra large screen / wide desktop +$width-xl: 1280px !default; + +// Responsive container widths +$container-sm: $width-sm !default; +$container-md: $width-md !default; +$container-lg: $width-lg !default; +$container-xl: $width-xl !default; + +// Breakpoints in the form (name: length) +$breakpoints: ( + sm: $width-sm, + md: $width-md, + lg: $width-lg, + xl: $width-xl +) !default; + +// This map in the form (breakpoint: variant) is used to iterate over +// breakpoints and create both responsive and non-responsive classes in one +// loop: +// +// ```scss +// @each $breakpoint, $variant of $responsive-variants { +// @include breakpoint($breakpoint) { +// .foo#{$variant}-bar { foo: bar !important; } +// } +// } +// ``` +$responsive-variants: ( + "": "", + sm: "-sm", + md: "-md", + lg: "-lg", + xl: "-xl", +) !default; + +// responive utility position values +$responsive-positions: ( + static, + relative, + absolute, + fixed, + sticky +) !default; diff --git a/assets/_primer/support/variables/misc.scss b/assets/_primer/support/variables/misc.scss new file mode 100644 index 0000000..30a8363 --- /dev/null +++ b/assets/_primer/support/variables/misc.scss @@ -0,0 +1,26 @@ +// Miscellaneous variables + +// Border size +$border-width: 1px !default; +$border-color: $border-gray !default; +$border-style: solid !default; +$border: $border-width $border-color $border-style !default; +$border-radius: 3px !default; + +// Box shadow +$box-shadow: 0 1px 1px rgba($black, 0.1) !default; +$box-shadow-medium: 0 1px 5px $black-fade-15 !default; +$box-shadow-large: 0 1px 15px $black-fade-15 !default; +$box-shadow-extra-large: 0 10px 50px rgba($black, 0.07) !default; + +// Button and form variables +$form-control-shadow: inset 0 1px 2px rgba($black, 0.075) !default; +$btn-input-focus-shadow: 0 0 0 0.2em rgba($blue, 0.3) !default; +$btn-active-shadow: inset 0 0.15em 0.3em $black-fade-15 !default; + +// Tooltips +$tooltip-max-width: 250px !default; +$tooltip-background-color: $black !default; +$tooltip-text-color: $white !default; +$tooltip-delay: 0.4s !default; +$tooltip-duration: 0.1s !default; diff --git a/assets/_primer/support/variables/typography.scss b/assets/_primer/support/variables/typography.scss new file mode 100644 index 0000000..dcb57a7 --- /dev/null +++ b/assets/_primer/support/variables/typography.scss @@ -0,0 +1,42 @@ +// Typography variables + +// Heading sizes - mobile +// h4-h6 remain the same size on both mobile & desktop +$h00-size-mobile: 40px !default; +$h0-size-mobile: 32px !default; +$h1-size-mobile: 26px !default; +$h2-size-mobile: 22px !default; +$h3-size-mobile: 18px !default; + +// Heading sizes - desktop +$h00-size: 48px !default; +$h0-size: 40px !default; +$h1-size: 32px !default; +$h2-size: 24px !default; +$h3-size: 20px !default; +$h4-size: 16px !default; +$h5-size: 14px !default; +$h6-size: 12px !default; + +$font-size-small: 12px !default; + +// Font weights +$font-weight-bold: 600 !default; +$font-weight-semibold: 500 !default; +$font-weight-normal: 400 !default; +$font-weight-light: 300 !default; + +// Line heights +$lh-condensed-ultra: 1 !default; +$lh-condensed: 1.25 !default; +$lh-default: 1.5 !default; + +// Font stacks +$body-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji" !default; + +// Monospace font stack +$mono-font: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace !default; + +// The base body size +$body-font-size: 14px !default; +$body-line-height: $lh-default !default; diff --git a/assets/_primer/utilities/layout.scss b/assets/_primer/utilities/layout.scss new file mode 100644 index 0000000..1b4da95 --- /dev/null +++ b/assets/_primer/utilities/layout.scss @@ -0,0 +1,87 @@ +// Layout +// stylelint-disable block-opening-brace-space-after, block-opening-brace-space-before, comment-empty-line-before + +// Loop through the breakpoint values +@each $breakpoint, $variant in $responsive-variants { + @include breakpoint($breakpoint) { + @each $position in $responsive-positions { + .position#{$variant}-#{$position} { + position: $position !important; + } + } + } +} + +/* Set top 0 */ +.top-0 { top: 0 !important; } +/* Set right 0 */ +.right-0 { right: 0 !important; } +/* Set bottom 0 */ +.bottom-0 { bottom: 0 !important; } +/* Set left 0 */ +.left-0 { left: 0 !important; } + +/* Vertical align middle */ +.v-align-middle { vertical-align: middle !important; } +/* Vertical align top */ +.v-align-top { vertical-align: top !important; } +/* Vertical align bottom */ +.v-align-bottom { vertical-align: bottom !important; } +/* Vertical align to the top of the text */ +.v-align-text-top { vertical-align: text-top !important; } +/* Vertical align to the bottom of the text */ +.v-align-text-bottom { vertical-align: text-bottom !important; } +/* Vertical align to the parent's baseline */ +.v-align-baseline { vertical-align: baseline !important; } + +// Overflow utilities +@each $overflow in (visible, hidden, auto, scroll) { + .overflow-#{$overflow} { overflow: $overflow !important; } + .overflow-x-#{$overflow} { overflow-x: $overflow !important; } + .overflow-y-#{$overflow} { overflow-y: $overflow !important; } +} + +// Clear floats +/* Clear floats around the element */ +.clearfix { + @include clearfix; +} + +// Floats +@each $breakpoint, $variant in $responsive-variants { + @include breakpoint($breakpoint) { + /* Float to the left */ + .float#{$variant}-left { float: left !important; } + /* Float to the right */ + .float#{$variant}-right { float: right !important; } + /* No float */ + .float#{$variant}-none { float: none !important; } + } +} + +// Width and height utilities, helpful in combination +// with display-table utilities and images +/* Max width 100% */ +.width-fit { max-width: 100% !important; } +/* Set the width to 100% */ +.width-full { width: 100% !important; } +/* Max height 100% */ +.height-fit { max-height: 100% !important; } +/* Set the height to 100% */ +.height-full { height: 100% !important; } + +/* Remove min-width from element */ +.min-width-0 { min-width: 0 !important; } + +@each $breakpoint, $variant in $responsive-variants { + @include breakpoint($breakpoint) { + + // Auto varients + .width#{$variant}-auto { width: auto !important; } + + /* Set the direction to rtl */ + .direction#{$variant}-rtl { direction: rtl !important; } + /* Set the direction to ltr */ + .direction#{$variant}-ltr { direction: ltr !important; } + } +} diff --git a/assets/_var.scss b/assets/_var.scss new file mode 100644 index 0000000..05cc8d8 --- /dev/null +++ b/assets/_var.scss @@ -0,0 +1,36 @@ +$font-size-0: 2rem !default; // 16px->32px +$font-size-1: 1.75rem !default; // 16px->28px # +$font-size-2: 1.5rem !default; // 16px->24px ## +$font-size-3: 1.25rem !default; // 16px->20px ### +$font-size-4: 1rem !default; // 16px->16px #### + +// used primer variables +// @primer/css/support/variables/misc.scss +$font-weight-bold: 600; +$font-weight-semibold: 600; +$font-weight-normal: 400; +$font-weight-light: 400; +$body-font: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Helvetica Neue', 'Helvetica', 'Arial', 'PingFang SC', + 'Hiragino Sans GB', 'Source Han Sans CN', 'Source Han Sans SC', 'Microsoft YaHei', 'WenQuanYi Micro Hei', sans-serif !default; +$mono-font: 'Cascadia Code', 'SF Mono', 'Fira Code', 'Consolas', $body-font !default; +$body-font-size: 16px !default; + +@font-face { + font-family: 'Product Sans'; + font-style: normal; + font-weight: 700; + font-display: swap; + src: local('Product Sans Bold'), local('ProductSans-Bold'), + url('https://cdn.jsdelivr.net/gh/amzrk2/web-font-archive@1.3.1/product-sans/product-sans-bold.woff2') format('woff2'); + unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, + U+2193, U+2212, U+2215, U+FEFF, U+FFFD; +} + +@font-face { + font-family: 'Cascadia Code'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: local('Cascadia Code Regular'), local('Cascadia Mono Regular'), + url('https://cdn.jsdelivr.net/gh/amzrk2/web-font-archive@1.3.1/cascadia-code/cascadia.woff2') format('woff2'); +} diff --git a/assets/css/APlayer.min.css b/assets/css/APlayer.min.css deleted file mode 100644 index 12b5583..0000000 --- a/assets/css/APlayer.min.css +++ /dev/null @@ -1,3 +0,0 @@ -.aplayer{background:#fff;font-family:Arial,Helvetica,sans-serif;margin:5px;box-shadow:0 2px 2px 0 rgba(0,0,0,.07),0 1px 5px 0 rgba(0,0,0,.1);border-radius:2px;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;line-height:normal;position:relative}.aplayer *{box-sizing:content-box}.aplayer svg{width:100%;height:100%}.aplayer svg circle,.aplayer svg path{fill:#fff}.aplayer.aplayer-withlist .aplayer-info{border-bottom:1px solid #e9e9e9}.aplayer.aplayer-withlist .aplayer-list{display:block}.aplayer.aplayer-withlist .aplayer-icon-order,.aplayer.aplayer-withlist .aplayer-info .aplayer-controller .aplayer-time .aplayer-icon.aplayer-icon-menu{display:inline}.aplayer.aplayer-withlrc .aplayer-pic{height:90px;width:90px}.aplayer.aplayer-withlrc .aplayer-info{margin-left:90px;height:90px;padding:10px 7px 0}.aplayer.aplayer-withlrc .aplayer-lrc{display:block}.aplayer.aplayer-narrow{width:66px}.aplayer.aplayer-narrow .aplayer-info,.aplayer.aplayer-narrow .aplayer-list{display:none}.aplayer.aplayer-narrow .aplayer-body,.aplayer.aplayer-narrow .aplayer-pic{height:66px;width:66px}.aplayer.aplayer-fixed{position:fixed;bottom:0;left:0;right:0;margin:0;z-index:99;overflow:visible;max-width:400px;box-shadow:none}.aplayer.aplayer-fixed .aplayer-list{margin-bottom:65px;border:1px solid #eee;border-bottom:none}.aplayer.aplayer-fixed .aplayer-body{position:fixed;bottom:0;left:0;right:0;margin:0;z-index:99;background:#fff;padding-right:18px;transition:all .3s ease;max-width:400px}.aplayer.aplayer-fixed .aplayer-lrc{display:block;position:fixed;bottom:10px;left:0;right:0;margin:0;z-index:98;pointer-events:none;text-shadow:-1px -1px 0 #fff}.aplayer.aplayer-fixed .aplayer-lrc:after,.aplayer.aplayer-fixed .aplayer-lrc:before{display:none}.aplayer.aplayer-fixed .aplayer-info{-webkit-transform:scaleX(1);transform:scaleX(1);-webkit-transform-origin:0 0;transform-origin:0 0;transition:all .3s ease;border-bottom:none;border-top:1px solid #e9e9e9}.aplayer.aplayer-fixed .aplayer-info .aplayer-music{width:calc(100% - 105px)}.aplayer.aplayer-fixed .aplayer-miniswitcher{display:block}.aplayer.aplayer-fixed.aplayer-narrow .aplayer-info{display:block;-webkit-transform:scaleX(0);transform:scaleX(0)}.aplayer.aplayer-fixed.aplayer-narrow .aplayer-body{width:66px!important}.aplayer.aplayer-fixed.aplayer-narrow .aplayer-miniswitcher .aplayer-icon{-webkit-transform:rotateY(0);transform:rotateY(0)}.aplayer.aplayer-fixed .aplayer-icon-back,.aplayer.aplayer-fixed .aplayer-icon-forward,.aplayer.aplayer-fixed .aplayer-icon-lrc,.aplayer.aplayer-fixed .aplayer-icon-play{display:inline-block}.aplayer.aplayer-fixed .aplayer-icon-back,.aplayer.aplayer-fixed .aplayer-icon-forward,.aplayer.aplayer-fixed .aplayer-icon-menu,.aplayer.aplayer-fixed .aplayer-icon-play{position:absolute;bottom:27px;width:20px;height:20px}.aplayer.aplayer-fixed .aplayer-icon-back{right:75px}.aplayer.aplayer-fixed .aplayer-icon-play{right:50px}.aplayer.aplayer-fixed .aplayer-icon-forward{right:25px}.aplayer.aplayer-fixed .aplayer-icon-menu{right:0}.aplayer.aplayer-arrow .aplayer-icon-loop,.aplayer.aplayer-arrow .aplayer-icon-order,.aplayer.aplayer-mobile .aplayer-icon-volume-down{display:none}.aplayer.aplayer-loading .aplayer-info .aplayer-controller .aplayer-loading-icon{display:block}.aplayer.aplayer-loading .aplayer-info .aplayer-controller .aplayer-bar-wrap .aplayer-bar .aplayer-played .aplayer-thumb{-webkit-transform:scale(1);transform:scale(1)}.aplayer .aplayer-body{position:relative}.aplayer .aplayer-icon{width:15px;height:15px;border:none;background-color:transparent;outline:none;cursor:pointer;opacity:.8;vertical-align:middle;padding:0;font-size:12px;margin:0;display:inline-block}.aplayer .aplayer-icon path{transition:all .2s ease-in-out}.aplayer .aplayer-icon-back,.aplayer .aplayer-icon-forward,.aplayer .aplayer-icon-lrc,.aplayer .aplayer-icon-order,.aplayer .aplayer-icon-play{display:none}.aplayer .aplayer-icon-lrc-inactivity svg{opacity:.4}.aplayer .aplayer-icon-forward{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.aplayer .aplayer-lrc-content{display:none}.aplayer .aplayer-pic{position:relative;float:left;height:66px;width:66px;background-size:cover;background-position:50%;transition:all .3s ease;cursor:pointer}.aplayer .aplayer-pic:hover .aplayer-button{opacity:1}.aplayer .aplayer-pic .aplayer-button{position:absolute;border-radius:50%;opacity:.8;text-shadow:0 1px 1px rgba(0,0,0,.2);box-shadow:0 1px 1px rgba(0,0,0,.2);background:rgba(0,0,0,.2);transition:all .1s ease}.aplayer .aplayer-pic .aplayer-button path{fill:#fff}.aplayer .aplayer-pic .aplayer-hide{display:none}.aplayer .aplayer-pic .aplayer-play{width:26px;height:26px;border:2px solid #fff;bottom:50%;right:50%;margin:0 -15px -15px 0}.aplayer .aplayer-pic .aplayer-play svg{position:absolute;top:3px;left:4px;height:20px;width:20px}.aplayer .aplayer-pic .aplayer-pause{width:16px;height:16px;border:2px solid #fff;bottom:4px;right:4px}.aplayer .aplayer-pic .aplayer-pause svg{position:absolute;top:2px;left:2px;height:12px;width:12px}.aplayer .aplayer-info{margin-left:66px;padding:14px 7px 0 10px;height:66px;box-sizing:border-box}.aplayer .aplayer-info .aplayer-music{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin:0 0 13px 5px;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;cursor:default;padding-bottom:2px;height:20px}.aplayer .aplayer-info .aplayer-music .aplayer-title{font-size:14px}.aplayer .aplayer-info .aplayer-music .aplayer-author{font-size:12px;color:#666}.aplayer .aplayer-info .aplayer-controller{position:relative;display:flex}.aplayer .aplayer-info .aplayer-controller .aplayer-bar-wrap{margin:0 0 0 5px;padding:4px 0;cursor:pointer!important;flex:1}.aplayer .aplayer-info .aplayer-controller .aplayer-bar-wrap:hover .aplayer-bar .aplayer-played .aplayer-thumb{-webkit-transform:scale(1);transform:scale(1)}.aplayer .aplayer-info .aplayer-controller .aplayer-bar-wrap .aplayer-bar{position:relative;height:2px;width:100%;background:#cdcdcd}.aplayer .aplayer-info .aplayer-controller .aplayer-bar-wrap .aplayer-bar .aplayer-loaded{position:absolute;left:0;top:0;bottom:0;background:#aaa;height:2px;transition:all .5s ease}.aplayer .aplayer-info .aplayer-controller .aplayer-bar-wrap .aplayer-bar .aplayer-played{position:absolute;left:0;top:0;bottom:0;height:2px}.aplayer .aplayer-info .aplayer-controller .aplayer-bar-wrap .aplayer-bar .aplayer-played .aplayer-thumb{position:absolute;top:0;right:5px;margin-top:-4px;margin-right:-10px;height:10px;width:10px;border-radius:50%;cursor:pointer;transition:all .3s ease-in-out;-webkit-transform:scale(0);transform:scale(0)}.aplayer .aplayer-info .aplayer-controller .aplayer-time{position:relative;right:0;bottom:4px;height:17px;color:#999;font-size:11px;padding-left:7px}.aplayer .aplayer-info .aplayer-controller .aplayer-time .aplayer-time-inner{vertical-align:middle}.aplayer .aplayer-info .aplayer-controller .aplayer-time .aplayer-icon{cursor:pointer;transition:all .2s ease}.aplayer .aplayer-info .aplayer-controller .aplayer-time .aplayer-icon path{fill:#666}.aplayer .aplayer-info .aplayer-controller .aplayer-time .aplayer-icon.aplayer-icon-loop{margin-right:2px}.aplayer .aplayer-info .aplayer-controller .aplayer-time .aplayer-icon:hover path{fill:#000}.aplayer .aplayer-info .aplayer-controller .aplayer-time .aplayer-icon.aplayer-icon-menu,.aplayer .aplayer-info .aplayer-controller .aplayer-time.aplayer-time-narrow .aplayer-icon-menu,.aplayer .aplayer-info .aplayer-controller .aplayer-time.aplayer-time-narrow .aplayer-icon-mode{display:none}.aplayer .aplayer-info .aplayer-controller .aplayer-volume-wrap{position:relative;display:inline-block;margin-left:3px;cursor:pointer!important}.aplayer .aplayer-info .aplayer-controller .aplayer-volume-wrap:hover .aplayer-volume-bar-wrap{height:40px}.aplayer .aplayer-info .aplayer-controller .aplayer-volume-wrap .aplayer-volume-bar-wrap{position:absolute;bottom:15px;right:-3px;width:25px;height:0;z-index:99;overflow:hidden;transition:all .2s ease-in-out}.aplayer .aplayer-info .aplayer-controller .aplayer-volume-wrap .aplayer-volume-bar-wrap.aplayer-volume-bar-wrap-active{height:40px}.aplayer .aplayer-info .aplayer-controller .aplayer-volume-wrap .aplayer-volume-bar-wrap .aplayer-volume-bar{position:absolute;bottom:0;right:10px;width:5px;height:35px;background:#aaa;border-radius:2.5px;overflow:hidden}.aplayer .aplayer-info .aplayer-controller .aplayer-volume-wrap .aplayer-volume-bar-wrap .aplayer-volume-bar .aplayer-volume{position:absolute;bottom:0;right:0;width:5px;transition:all .1s ease}.aplayer .aplayer-info .aplayer-controller .aplayer-loading-icon{display:none}.aplayer .aplayer-info .aplayer-controller .aplayer-loading-icon svg{position:absolute;-webkit-animation:rotate 1s linear infinite;animation:rotate 1s linear infinite}.aplayer .aplayer-lrc{display:none;position:relative;height:30px;text-align:center;overflow:hidden;margin:-10px 0 7px}.aplayer .aplayer-lrc:before{top:0;height:10%;background:linear-gradient(180deg,#fff 0,hsla(0,0%,100%,0));filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#00ffffff",GradientType=0)}.aplayer .aplayer-lrc:after,.aplayer .aplayer-lrc:before{position:absolute;z-index:1;display:block;overflow:hidden;width:100%;content:" "}.aplayer .aplayer-lrc:after{bottom:0;height:33%;background:linear-gradient(180deg,hsla(0,0%,100%,0) 0,hsla(0,0%,100%,.8));filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#00ffffff",endColorstr="#ccffffff",GradientType=0)}.aplayer .aplayer-lrc p{font-size:12px;color:#666;line-height:16px!important;height:16px!important;padding:0!important;margin:0!important;transition:all .5s ease-out;opacity:.4;overflow:hidden}.aplayer .aplayer-lrc p.aplayer-lrc-current{opacity:1;overflow:visible;height:auto!important;min-height:16px}.aplayer .aplayer-lrc.aplayer-lrc-hide{display:none}.aplayer .aplayer-lrc .aplayer-lrc-contents{width:100%;transition:all .5s ease-out;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;cursor:default}.aplayer .aplayer-list{overflow:auto;transition:all .5s ease;will-change:height;display:none;overflow:hidden}.aplayer .aplayer-list.aplayer-list-hide{max-height:0!important}.aplayer .aplayer-list ol{list-style-type:none;margin:0;padding:0;overflow-y:auto}.aplayer .aplayer-list ol::-webkit-scrollbar{width:5px}.aplayer .aplayer-list ol::-webkit-scrollbar-thumb{border-radius:3px;background-color:#eee}.aplayer .aplayer-list ol::-webkit-scrollbar-thumb:hover{background-color:#ccc}.aplayer .aplayer-list ol li{position:relative;height:32px;line-height:32px;padding:0 15px;font-size:12px;border-top:1px solid #e9e9e9;cursor:pointer;transition:all .2s ease;overflow:hidden;margin:0}.aplayer .aplayer-list ol li:first-child{border-top:none}.aplayer .aplayer-list ol li:hover{background:#efefef}.aplayer .aplayer-list ol li.aplayer-list-light{background:#e9e9e9}.aplayer .aplayer-list ol li.aplayer-list-light .aplayer-list-cur{display:inline-block}.aplayer .aplayer-list ol li .aplayer-list-cur{display:none;width:3px;height:22px;position:absolute;left:0;top:5px;cursor:pointer}.aplayer .aplayer-list ol li .aplayer-list-index{color:#666;margin-right:12px;cursor:pointer}.aplayer .aplayer-list ol li .aplayer-list-author{color:#666;float:right;cursor:pointer}.aplayer .aplayer-notice{opacity:0;position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);font-size:12px;border-radius:4px;padding:5px 10px;transition:all .3s ease-in-out;overflow:hidden;color:#fff;pointer-events:none;background-color:#f4f4f5;color:#909399}.aplayer .aplayer-miniswitcher{display:none;position:absolute;top:0;right:0;bottom:0;height:100%;background:#e6e6e6;width:18px;border-radius:0 2px 2px 0}.aplayer .aplayer-miniswitcher .aplayer-icon{height:100%;width:100%;-webkit-transform:rotateY(180deg);transform:rotateY(180deg);transition:all .3s ease}.aplayer .aplayer-miniswitcher .aplayer-icon path{fill:#666}.aplayer .aplayer-miniswitcher .aplayer-icon:hover path{fill:#000}@-webkit-keyframes aplayer-roll{0%{left:0}to{left:-100%}}@keyframes aplayer-roll{0%{left:0}to{left:-100%}}@-webkit-keyframes rotate{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes rotate{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}} - -/*# sourceMappingURL=APlayer.min.css.map*/ \ No newline at end of file diff --git a/assets/css/fontawsome.min.css b/assets/css/fontawsome.min.css deleted file mode 100644 index 3d28ab2..0000000 --- a/assets/css/fontawsome.min.css +++ /dev/null @@ -1,5 +0,0 @@ -/*! - * Font Awesome Free 5.13.0 by @fontawesome - https://fontawesome.com - * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) - */ -.fa,.fab,.fad,.fal,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.fa-pulse{-webkit-animation:fa-spin 1s steps(8) infinite;animation:fa-spin 1s steps(8) infinite}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical,.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}:root .fa-flip-both,:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{-webkit-filter:none;filter:none}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-500px:before{content:"\f26e"}.fa-accessible-icon:before{content:"\f368"}.fa-accusoft:before{content:"\f369"}.fa-acquisitions-incorporated:before{content:"\f6af"}.fa-ad:before{content:"\f641"}.fa-address-book:before{content:"\f2b9"}.fa-address-card:before{content:"\f2bb"}.fa-adjust:before{content:"\f042"}.fa-adn:before{content:"\f170"}.fa-adobe:before{content:"\f778"}.fa-adversal:before{content:"\f36a"}.fa-affiliatetheme:before{content:"\f36b"}.fa-air-freshener:before{content:"\f5d0"}.fa-airbnb:before{content:"\f834"}.fa-algolia:before{content:"\f36c"}.fa-align-center:before{content:"\f037"}.fa-align-justify:before{content:"\f039"}.fa-align-left:before{content:"\f036"}.fa-align-right:before{content:"\f038"}.fa-alipay:before{content:"\f642"}.fa-allergies:before{content:"\f461"}.fa-amazon:before{content:"\f270"}.fa-amazon-pay:before{content:"\f42c"}.fa-ambulance:before{content:"\f0f9"}.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-amilia:before{content:"\f36d"}.fa-anchor:before{content:"\f13d"}.fa-android:before{content:"\f17b"}.fa-angellist:before{content:"\f209"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-down:before{content:"\f107"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angry:before{content:"\f556"}.fa-angrycreative:before{content:"\f36e"}.fa-angular:before{content:"\f420"}.fa-ankh:before{content:"\f644"}.fa-app-store:before{content:"\f36f"}.fa-app-store-ios:before{content:"\f370"}.fa-apper:before{content:"\f371"}.fa-apple:before{content:"\f179"}.fa-apple-alt:before{content:"\f5d1"}.fa-apple-pay:before{content:"\f415"}.fa-archive:before{content:"\f187"}.fa-archway:before{content:"\f557"}.fa-arrow-alt-circle-down:before{content:"\f358"}.fa-arrow-alt-circle-left:before{content:"\f359"}.fa-arrow-alt-circle-right:before{content:"\f35a"}.fa-arrow-alt-circle-up:before{content:"\f35b"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-down:before{content:"\f063"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrows-alt:before{content:"\f0b2"}.fa-arrows-alt-h:before{content:"\f337"}.fa-arrows-alt-v:before{content:"\f338"}.fa-artstation:before{content:"\f77a"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asterisk:before{content:"\f069"}.fa-asymmetrik:before{content:"\f372"}.fa-at:before{content:"\f1fa"}.fa-atlas:before{content:"\f558"}.fa-atlassian:before{content:"\f77b"}.fa-atom:before{content:"\f5d2"}.fa-audible:before{content:"\f373"}.fa-audio-description:before{content:"\f29e"}.fa-autoprefixer:before{content:"\f41c"}.fa-avianex:before{content:"\f374"}.fa-aviato:before{content:"\f421"}.fa-award:before{content:"\f559"}.fa-aws:before{content:"\f375"}.fa-baby:before{content:"\f77c"}.fa-baby-carriage:before{content:"\f77d"}.fa-backspace:before{content:"\f55a"}.fa-backward:before{content:"\f04a"}.fa-bacon:before{content:"\f7e5"}.fa-bahai:before{content:"\f666"}.fa-balance-scale:before{content:"\f24e"}.fa-balance-scale-left:before{content:"\f515"}.fa-balance-scale-right:before{content:"\f516"}.fa-ban:before{content:"\f05e"}.fa-band-aid:before{content:"\f462"}.fa-bandcamp:before{content:"\f2d5"}.fa-barcode:before{content:"\f02a"}.fa-bars:before{content:"\f0c9"}.fa-baseball-ball:before{content:"\f433"}.fa-basketball-ball:before{content:"\f434"}.fa-bath:before{content:"\f2cd"}.fa-battery-empty:before{content:"\f244"}.fa-battery-full:before{content:"\f240"}.fa-battery-half:before{content:"\f242"}.fa-battery-quarter:before{content:"\f243"}.fa-battery-three-quarters:before{content:"\f241"}.fa-battle-net:before{content:"\f835"}.fa-bed:before{content:"\f236"}.fa-beer:before{content:"\f0fc"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-bell:before{content:"\f0f3"}.fa-bell-slash:before{content:"\f1f6"}.fa-bezier-curve:before{content:"\f55b"}.fa-bible:before{content:"\f647"}.fa-bicycle:before{content:"\f206"}.fa-biking:before{content:"\f84a"}.fa-bimobject:before{content:"\f378"}.fa-binoculars:before{content:"\f1e5"}.fa-biohazard:before{content:"\f780"}.fa-birthday-cake:before{content:"\f1fd"}.fa-bitbucket:before{content:"\f171"}.fa-bitcoin:before{content:"\f379"}.fa-bity:before{content:"\f37a"}.fa-black-tie:before{content:"\f27e"}.fa-blackberry:before{content:"\f37b"}.fa-blender:before{content:"\f517"}.fa-blender-phone:before{content:"\f6b6"}.fa-blind:before{content:"\f29d"}.fa-blog:before{content:"\f781"}.fa-blogger:before{content:"\f37c"}.fa-blogger-b:before{content:"\f37d"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-bold:before{content:"\f032"}.fa-bolt:before{content:"\f0e7"}.fa-bomb:before{content:"\f1e2"}.fa-bone:before{content:"\f5d7"}.fa-bong:before{content:"\f55c"}.fa-book:before{content:"\f02d"}.fa-book-dead:before{content:"\f6b7"}.fa-book-medical:before{content:"\f7e6"}.fa-book-open:before{content:"\f518"}.fa-book-reader:before{content:"\f5da"}.fa-bookmark:before{content:"\f02e"}.fa-bootstrap:before{content:"\f836"}.fa-border-all:before{content:"\f84c"}.fa-border-none:before{content:"\f850"}.fa-border-style:before{content:"\f853"}.fa-bowling-ball:before{content:"\f436"}.fa-box:before{content:"\f466"}.fa-box-open:before{content:"\f49e"}.fa-box-tissue:before{content:"\f95b"}.fa-boxes:before{content:"\f468"}.fa-braille:before{content:"\f2a1"}.fa-brain:before{content:"\f5dc"}.fa-bread-slice:before{content:"\f7ec"}.fa-briefcase:before{content:"\f0b1"}.fa-briefcase-medical:before{content:"\f469"}.fa-broadcast-tower:before{content:"\f519"}.fa-broom:before{content:"\f51a"}.fa-brush:before{content:"\f55d"}.fa-btc:before{content:"\f15a"}.fa-buffer:before{content:"\f837"}.fa-bug:before{content:"\f188"}.fa-building:before{content:"\f1ad"}.fa-bullhorn:before{content:"\f0a1"}.fa-bullseye:before{content:"\f140"}.fa-burn:before{content:"\f46a"}.fa-buromobelexperte:before{content:"\f37f"}.fa-bus:before{content:"\f207"}.fa-bus-alt:before{content:"\f55e"}.fa-business-time:before{content:"\f64a"}.fa-buy-n-large:before{content:"\f8a6"}.fa-buysellads:before{content:"\f20d"}.fa-calculator:before{content:"\f1ec"}.fa-calendar:before{content:"\f133"}.fa-calendar-alt:before{content:"\f073"}.fa-calendar-check:before{content:"\f274"}.fa-calendar-day:before{content:"\f783"}.fa-calendar-minus:before{content:"\f272"}.fa-calendar-plus:before{content:"\f271"}.fa-calendar-times:before{content:"\f273"}.fa-calendar-week:before{content:"\f784"}.fa-camera:before{content:"\f030"}.fa-camera-retro:before{content:"\f083"}.fa-campground:before{content:"\f6bb"}.fa-canadian-maple-leaf:before{content:"\f785"}.fa-candy-cane:before{content:"\f786"}.fa-cannabis:before{content:"\f55f"}.fa-capsules:before{content:"\f46b"}.fa-car:before{content:"\f1b9"}.fa-car-alt:before{content:"\f5de"}.fa-car-battery:before{content:"\f5df"}.fa-car-crash:before{content:"\f5e1"}.fa-car-side:before{content:"\f5e4"}.fa-caravan:before{content:"\f8ff"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-caret-square-down:before{content:"\f150"}.fa-caret-square-left:before{content:"\f191"}.fa-caret-square-right:before{content:"\f152"}.fa-caret-square-up:before{content:"\f151"}.fa-caret-up:before{content:"\f0d8"}.fa-carrot:before{content:"\f787"}.fa-cart-arrow-down:before{content:"\f218"}.fa-cart-plus:before{content:"\f217"}.fa-cash-register:before{content:"\f788"}.fa-cat:before{content:"\f6be"}.fa-cc-amazon-pay:before{content:"\f42d"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-apple-pay:before{content:"\f416"}.fa-cc-diners-club:before{content:"\f24c"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-cc-visa:before{content:"\f1f0"}.fa-centercode:before{content:"\f380"}.fa-centos:before{content:"\f789"}.fa-certificate:before{content:"\f0a3"}.fa-chair:before{content:"\f6c0"}.fa-chalkboard:before{content:"\f51b"}.fa-chalkboard-teacher:before{content:"\f51c"}.fa-charging-station:before{content:"\f5e7"}.fa-chart-area:before{content:"\f1fe"}.fa-chart-bar:before{content:"\f080"}.fa-chart-line:before{content:"\f201"}.fa-chart-pie:before{content:"\f200"}.fa-check:before{content:"\f00c"}.fa-check-circle:before{content:"\f058"}.fa-check-double:before{content:"\f560"}.fa-check-square:before{content:"\f14a"}.fa-cheese:before{content:"\f7ef"}.fa-chess:before{content:"\f439"}.fa-chess-bishop:before{content:"\f43a"}.fa-chess-board:before{content:"\f43c"}.fa-chess-king:before{content:"\f43f"}.fa-chess-knight:before{content:"\f441"}.fa-chess-pawn:before{content:"\f443"}.fa-chess-queen:before{content:"\f445"}.fa-chess-rook:before{content:"\f447"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-down:before{content:"\f078"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-chevron-up:before{content:"\f077"}.fa-child:before{content:"\f1ae"}.fa-chrome:before{content:"\f268"}.fa-chromecast:before{content:"\f838"}.fa-church:before{content:"\f51d"}.fa-circle:before{content:"\f111"}.fa-circle-notch:before{content:"\f1ce"}.fa-city:before{content:"\f64f"}.fa-clinic-medical:before{content:"\f7f2"}.fa-clipboard:before{content:"\f328"}.fa-clipboard-check:before{content:"\f46c"}.fa-clipboard-list:before{content:"\f46d"}.fa-clock:before{content:"\f017"}.fa-clone:before{content:"\f24d"}.fa-closed-captioning:before{content:"\f20a"}.fa-cloud:before{content:"\f0c2"}.fa-cloud-download-alt:before{content:"\f381"}.fa-cloud-meatball:before{content:"\f73b"}.fa-cloud-moon:before{content:"\f6c3"}.fa-cloud-moon-rain:before{content:"\f73c"}.fa-cloud-rain:before{content:"\f73d"}.fa-cloud-showers-heavy:before{content:"\f740"}.fa-cloud-sun:before{content:"\f6c4"}.fa-cloud-sun-rain:before{content:"\f743"}.fa-cloud-upload-alt:before{content:"\f382"}.fa-cloudscale:before{content:"\f383"}.fa-cloudsmith:before{content:"\f384"}.fa-cloudversify:before{content:"\f385"}.fa-cocktail:before{content:"\f561"}.fa-code:before{content:"\f121"}.fa-code-branch:before{content:"\f126"}.fa-codepen:before{content:"\f1cb"}.fa-codiepie:before{content:"\f284"}.fa-coffee:before{content:"\f0f4"}.fa-cog:before{content:"\f013"}.fa-cogs:before{content:"\f085"}.fa-coins:before{content:"\f51e"}.fa-columns:before{content:"\f0db"}.fa-comment:before{content:"\f075"}.fa-comment-alt:before{content:"\f27a"}.fa-comment-dollar:before{content:"\f651"}.fa-comment-dots:before{content:"\f4ad"}.fa-comment-medical:before{content:"\f7f5"}.fa-comment-slash:before{content:"\f4b3"}.fa-comments:before{content:"\f086"}.fa-comments-dollar:before{content:"\f653"}.fa-compact-disc:before{content:"\f51f"}.fa-compass:before{content:"\f14e"}.fa-compress:before{content:"\f066"}.fa-compress-alt:before{content:"\f422"}.fa-compress-arrows-alt:before{content:"\f78c"}.fa-concierge-bell:before{content:"\f562"}.fa-confluence:before{content:"\f78d"}.fa-connectdevelop:before{content:"\f20e"}.fa-contao:before{content:"\f26d"}.fa-cookie:before{content:"\f563"}.fa-cookie-bite:before{content:"\f564"}.fa-copy:before{content:"\f0c5"}.fa-copyright:before{content:"\f1f9"}.fa-cotton-bureau:before{content:"\f89e"}.fa-couch:before{content:"\f4b8"}.fa-cpanel:before{content:"\f388"}.fa-creative-commons:before{content:"\f25e"}.fa-creative-commons-by:before{content:"\f4e7"}.fa-creative-commons-nc:before{content:"\f4e8"}.fa-creative-commons-nc-eu:before{content:"\f4e9"}.fa-creative-commons-nc-jp:before{content:"\f4ea"}.fa-creative-commons-nd:before{content:"\f4eb"}.fa-creative-commons-pd:before{content:"\f4ec"}.fa-creative-commons-pd-alt:before{content:"\f4ed"}.fa-creative-commons-remix:before{content:"\f4ee"}.fa-creative-commons-sa:before{content:"\f4ef"}.fa-creative-commons-sampling:before{content:"\f4f0"}.fa-creative-commons-sampling-plus:before{content:"\f4f1"}.fa-creative-commons-share:before{content:"\f4f2"}.fa-creative-commons-zero:before{content:"\f4f3"}.fa-credit-card:before{content:"\f09d"}.fa-critical-role:before{content:"\f6c9"}.fa-crop:before{content:"\f125"}.fa-crop-alt:before{content:"\f565"}.fa-cross:before{content:"\f654"}.fa-crosshairs:before{content:"\f05b"}.fa-crow:before{content:"\f520"}.fa-crown:before{content:"\f521"}.fa-crutch:before{content:"\f7f7"}.fa-css3:before{content:"\f13c"}.fa-css3-alt:before{content:"\f38b"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-cut:before{content:"\f0c4"}.fa-cuttlefish:before{content:"\f38c"}.fa-d-and-d:before{content:"\f38d"}.fa-d-and-d-beyond:before{content:"\f6ca"}.fa-dailymotion:before{content:"\f952"}.fa-dashcube:before{content:"\f210"}.fa-database:before{content:"\f1c0"}.fa-deaf:before{content:"\f2a4"}.fa-delicious:before{content:"\f1a5"}.fa-democrat:before{content:"\f747"}.fa-deploydog:before{content:"\f38e"}.fa-deskpro:before{content:"\f38f"}.fa-desktop:before{content:"\f108"}.fa-dev:before{content:"\f6cc"}.fa-deviantart:before{content:"\f1bd"}.fa-dharmachakra:before{content:"\f655"}.fa-dhl:before{content:"\f790"}.fa-diagnoses:before{content:"\f470"}.fa-diaspora:before{content:"\f791"}.fa-dice:before{content:"\f522"}.fa-dice-d20:before{content:"\f6cf"}.fa-dice-d6:before{content:"\f6d1"}.fa-dice-five:before{content:"\f523"}.fa-dice-four:before{content:"\f524"}.fa-dice-one:before{content:"\f525"}.fa-dice-six:before{content:"\f526"}.fa-dice-three:before{content:"\f527"}.fa-dice-two:before{content:"\f528"}.fa-digg:before{content:"\f1a6"}.fa-digital-ocean:before{content:"\f391"}.fa-digital-tachograph:before{content:"\f566"}.fa-directions:before{content:"\f5eb"}.fa-discord:before{content:"\f392"}.fa-discourse:before{content:"\f393"}.fa-disease:before{content:"\f7fa"}.fa-divide:before{content:"\f529"}.fa-dizzy:before{content:"\f567"}.fa-dna:before{content:"\f471"}.fa-dochub:before{content:"\f394"}.fa-docker:before{content:"\f395"}.fa-dog:before{content:"\f6d3"}.fa-dollar-sign:before{content:"\f155"}.fa-dolly:before{content:"\f472"}.fa-dolly-flatbed:before{content:"\f474"}.fa-donate:before{content:"\f4b9"}.fa-door-closed:before{content:"\f52a"}.fa-door-open:before{content:"\f52b"}.fa-dot-circle:before{content:"\f192"}.fa-dove:before{content:"\f4ba"}.fa-download:before{content:"\f019"}.fa-draft2digital:before{content:"\f396"}.fa-drafting-compass:before{content:"\f568"}.fa-dragon:before{content:"\f6d5"}.fa-draw-polygon:before{content:"\f5ee"}.fa-dribbble:before{content:"\f17d"}.fa-dribbble-square:before{content:"\f397"}.fa-dropbox:before{content:"\f16b"}.fa-drum:before{content:"\f569"}.fa-drum-steelpan:before{content:"\f56a"}.fa-drumstick-bite:before{content:"\f6d7"}.fa-drupal:before{content:"\f1a9"}.fa-dumbbell:before{content:"\f44b"}.fa-dumpster:before{content:"\f793"}.fa-dumpster-fire:before{content:"\f794"}.fa-dungeon:before{content:"\f6d9"}.fa-dyalog:before{content:"\f399"}.fa-earlybirds:before{content:"\f39a"}.fa-ebay:before{content:"\f4f4"}.fa-edge:before{content:"\f282"}.fa-edit:before{content:"\f044"}.fa-egg:before{content:"\f7fb"}.fa-eject:before{content:"\f052"}.fa-elementor:before{content:"\f430"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-ello:before{content:"\f5f1"}.fa-ember:before{content:"\f423"}.fa-empire:before{content:"\f1d1"}.fa-envelope:before{content:"\f0e0"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-text:before{content:"\f658"}.fa-envelope-square:before{content:"\f199"}.fa-envira:before{content:"\f299"}.fa-equals:before{content:"\f52c"}.fa-eraser:before{content:"\f12d"}.fa-erlang:before{content:"\f39d"}.fa-ethereum:before{content:"\f42e"}.fa-ethernet:before{content:"\f796"}.fa-etsy:before{content:"\f2d7"}.fa-euro-sign:before{content:"\f153"}.fa-evernote:before{content:"\f839"}.fa-exchange-alt:before{content:"\f362"}.fa-exclamation:before{content:"\f12a"}.fa-exclamation-circle:before{content:"\f06a"}.fa-exclamation-triangle:before{content:"\f071"}.fa-expand:before{content:"\f065"}.fa-expand-alt:before{content:"\f424"}.fa-expand-arrows-alt:before{content:"\f31e"}.fa-expeditedssl:before{content:"\f23e"}.fa-external-link-alt:before{content:"\f35d"}.fa-external-link-square-alt:before{content:"\f360"}.fa-eye:before{content:"\f06e"}.fa-eye-dropper:before{content:"\f1fb"}.fa-eye-slash:before{content:"\f070"}.fa-facebook:before{content:"\f09a"}.fa-facebook-f:before{content:"\f39e"}.fa-facebook-messenger:before{content:"\f39f"}.fa-facebook-square:before{content:"\f082"}.fa-fan:before{content:"\f863"}.fa-fantasy-flight-games:before{content:"\f6dc"}.fa-fast-backward:before{content:"\f049"}.fa-fast-forward:before{content:"\f050"}.fa-faucet:before{content:"\f905"}.fa-fax:before{content:"\f1ac"}.fa-feather:before{content:"\f52d"}.fa-feather-alt:before{content:"\f56b"}.fa-fedex:before{content:"\f797"}.fa-fedora:before{content:"\f798"}.fa-female:before{content:"\f182"}.fa-fighter-jet:before{content:"\f0fb"}.fa-figma:before{content:"\f799"}.fa-file:before{content:"\f15b"}.fa-file-alt:before{content:"\f15c"}.fa-file-archive:before{content:"\f1c6"}.fa-file-audio:before{content:"\f1c7"}.fa-file-code:before{content:"\f1c9"}.fa-file-contract:before{content:"\f56c"}.fa-file-csv:before{content:"\f6dd"}.fa-file-download:before{content:"\f56d"}.fa-file-excel:before{content:"\f1c3"}.fa-file-export:before{content:"\f56e"}.fa-file-image:before{content:"\f1c5"}.fa-file-import:before{content:"\f56f"}.fa-file-invoice:before{content:"\f570"}.fa-file-invoice-dollar:before{content:"\f571"}.fa-file-medical:before{content:"\f477"}.fa-file-medical-alt:before{content:"\f478"}.fa-file-pdf:before{content:"\f1c1"}.fa-file-powerpoint:before{content:"\f1c4"}.fa-file-prescription:before{content:"\f572"}.fa-file-signature:before{content:"\f573"}.fa-file-upload:before{content:"\f574"}.fa-file-video:before{content:"\f1c8"}.fa-file-word:before{content:"\f1c2"}.fa-fill:before{content:"\f575"}.fa-fill-drip:before{content:"\f576"}.fa-film:before{content:"\f008"}.fa-filter:before{content:"\f0b0"}.fa-fingerprint:before{content:"\f577"}.fa-fire:before{content:"\f06d"}.fa-fire-alt:before{content:"\f7e4"}.fa-fire-extinguisher:before{content:"\f134"}.fa-firefox:before{content:"\f269"}.fa-firefox-browser:before{content:"\f907"}.fa-first-aid:before{content:"\f479"}.fa-first-order:before{content:"\f2b0"}.fa-first-order-alt:before{content:"\f50a"}.fa-firstdraft:before{content:"\f3a1"}.fa-fish:before{content:"\f578"}.fa-fist-raised:before{content:"\f6de"}.fa-flag:before{content:"\f024"}.fa-flag-checkered:before{content:"\f11e"}.fa-flag-usa:before{content:"\f74d"}.fa-flask:before{content:"\f0c3"}.fa-flickr:before{content:"\f16e"}.fa-flipboard:before{content:"\f44d"}.fa-flushed:before{content:"\f579"}.fa-fly:before{content:"\f417"}.fa-folder:before{content:"\f07b"}.fa-folder-minus:before{content:"\f65d"}.fa-folder-open:before{content:"\f07c"}.fa-folder-plus:before{content:"\f65e"}.fa-font:before{content:"\f031"}.fa-font-awesome:before{content:"\f2b4"}.fa-font-awesome-alt:before{content:"\f35c"}.fa-font-awesome-flag:before{content:"\f425"}.fa-font-awesome-logo-full:before{content:"\f4e6"}.fa-fonticons:before{content:"\f280"}.fa-fonticons-fi:before{content:"\f3a2"}.fa-football-ball:before{content:"\f44e"}.fa-fort-awesome:before{content:"\f286"}.fa-fort-awesome-alt:before{content:"\f3a3"}.fa-forumbee:before{content:"\f211"}.fa-forward:before{content:"\f04e"}.fa-foursquare:before{content:"\f180"}.fa-free-code-camp:before{content:"\f2c5"}.fa-freebsd:before{content:"\f3a4"}.fa-frog:before{content:"\f52e"}.fa-frown:before{content:"\f119"}.fa-frown-open:before{content:"\f57a"}.fa-fulcrum:before{content:"\f50b"}.fa-funnel-dollar:before{content:"\f662"}.fa-futbol:before{content:"\f1e3"}.fa-galactic-republic:before{content:"\f50c"}.fa-galactic-senate:before{content:"\f50d"}.fa-gamepad:before{content:"\f11b"}.fa-gas-pump:before{content:"\f52f"}.fa-gavel:before{content:"\f0e3"}.fa-gem:before{content:"\f3a5"}.fa-genderless:before{content:"\f22d"}.fa-get-pocket:before{content:"\f265"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-ghost:before{content:"\f6e2"}.fa-gift:before{content:"\f06b"}.fa-gifts:before{content:"\f79c"}.fa-git:before{content:"\f1d3"}.fa-git-alt:before{content:"\f841"}.fa-git-square:before{content:"\f1d2"}.fa-github:before{content:"\f09b"}.fa-github-alt:before{content:"\f113"}.fa-github-square:before{content:"\f092"}.fa-gitkraken:before{content:"\f3a6"}.fa-gitlab:before{content:"\f296"}.fa-gitter:before{content:"\f426"}.fa-glass-cheers:before{content:"\f79f"}.fa-glass-martini:before{content:"\f000"}.fa-glass-martini-alt:before{content:"\f57b"}.fa-glass-whiskey:before{content:"\f7a0"}.fa-glasses:before{content:"\f530"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-globe:before{content:"\f0ac"}.fa-globe-africa:before{content:"\f57c"}.fa-globe-americas:before{content:"\f57d"}.fa-globe-asia:before{content:"\f57e"}.fa-globe-europe:before{content:"\f7a2"}.fa-gofore:before{content:"\f3a7"}.fa-golf-ball:before{content:"\f450"}.fa-goodreads:before{content:"\f3a8"}.fa-goodreads-g:before{content:"\f3a9"}.fa-google:before{content:"\f1a0"}.fa-google-drive:before{content:"\f3aa"}.fa-google-play:before{content:"\f3ab"}.fa-google-plus:before{content:"\f2b3"}.fa-google-plus-g:before{content:"\f0d5"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-wallet:before{content:"\f1ee"}.fa-gopuram:before{content:"\f664"}.fa-graduation-cap:before{content:"\f19d"}.fa-gratipay:before{content:"\f184"}.fa-grav:before{content:"\f2d6"}.fa-greater-than:before{content:"\f531"}.fa-greater-than-equal:before{content:"\f532"}.fa-grimace:before{content:"\f57f"}.fa-grin:before{content:"\f580"}.fa-grin-alt:before{content:"\f581"}.fa-grin-beam:before{content:"\f582"}.fa-grin-beam-sweat:before{content:"\f583"}.fa-grin-hearts:before{content:"\f584"}.fa-grin-squint:before{content:"\f585"}.fa-grin-squint-tears:before{content:"\f586"}.fa-grin-stars:before{content:"\f587"}.fa-grin-tears:before{content:"\f588"}.fa-grin-tongue:before{content:"\f589"}.fa-grin-tongue-squint:before{content:"\f58a"}.fa-grin-tongue-wink:before{content:"\f58b"}.fa-grin-wink:before{content:"\f58c"}.fa-grip-horizontal:before{content:"\f58d"}.fa-grip-lines:before{content:"\f7a4"}.fa-grip-lines-vertical:before{content:"\f7a5"}.fa-grip-vertical:before{content:"\f58e"}.fa-gripfire:before{content:"\f3ac"}.fa-grunt:before{content:"\f3ad"}.fa-guitar:before{content:"\f7a6"}.fa-gulp:before{content:"\f3ae"}.fa-h-square:before{content:"\f0fd"}.fa-hacker-news:before{content:"\f1d4"}.fa-hacker-news-square:before{content:"\f3af"}.fa-hackerrank:before{content:"\f5f7"}.fa-hamburger:before{content:"\f805"}.fa-hammer:before{content:"\f6e3"}.fa-hamsa:before{content:"\f665"}.fa-hand-holding:before{content:"\f4bd"}.fa-hand-holding-heart:before{content:"\f4be"}.fa-hand-holding-medical:before{content:"\f95c"}.fa-hand-holding-usd:before{content:"\f4c0"}.fa-hand-holding-water:before{content:"\f4c1"}.fa-hand-lizard:before{content:"\f258"}.fa-hand-middle-finger:before{content:"\f806"}.fa-hand-paper:before{content:"\f256"}.fa-hand-peace:before{content:"\f25b"}.fa-hand-point-down:before{content:"\f0a7"}.fa-hand-point-left:before{content:"\f0a5"}.fa-hand-point-right:before{content:"\f0a4"}.fa-hand-point-up:before{content:"\f0a6"}.fa-hand-pointer:before{content:"\f25a"}.fa-hand-rock:before{content:"\f255"}.fa-hand-scissors:before{content:"\f257"}.fa-hand-sparkles:before{content:"\f95d"}.fa-hand-spock:before{content:"\f259"}.fa-hands:before{content:"\f4c2"}.fa-hands-helping:before{content:"\f4c4"}.fa-hands-wash:before{content:"\f95e"}.fa-handshake:before{content:"\f2b5"}.fa-handshake-alt-slash:before{content:"\f95f"}.fa-handshake-slash:before{content:"\f960"}.fa-hanukiah:before{content:"\f6e6"}.fa-hard-hat:before{content:"\f807"}.fa-hashtag:before{content:"\f292"}.fa-hat-cowboy:before{content:"\f8c0"}.fa-hat-cowboy-side:before{content:"\f8c1"}.fa-hat-wizard:before{content:"\f6e8"}.fa-hdd:before{content:"\f0a0"}.fa-head-side-cough:before{content:"\f961"}.fa-head-side-cough-slash:before{content:"\f962"}.fa-head-side-mask:before{content:"\f963"}.fa-head-side-virus:before{content:"\f964"}.fa-heading:before{content:"\f1dc"}.fa-headphones:before{content:"\f025"}.fa-headphones-alt:before{content:"\f58f"}.fa-headset:before{content:"\f590"}.fa-heart:before{content:"\f004"}.fa-heart-broken:before{content:"\f7a9"}.fa-heartbeat:before{content:"\f21e"}.fa-helicopter:before{content:"\f533"}.fa-highlighter:before{content:"\f591"}.fa-hiking:before{content:"\f6ec"}.fa-hippo:before{content:"\f6ed"}.fa-hips:before{content:"\f452"}.fa-hire-a-helper:before{content:"\f3b0"}.fa-history:before{content:"\f1da"}.fa-hockey-puck:before{content:"\f453"}.fa-holly-berry:before{content:"\f7aa"}.fa-home:before{content:"\f015"}.fa-hooli:before{content:"\f427"}.fa-hornbill:before{content:"\f592"}.fa-horse:before{content:"\f6f0"}.fa-horse-head:before{content:"\f7ab"}.fa-hospital:before{content:"\f0f8"}.fa-hospital-alt:before{content:"\f47d"}.fa-hospital-symbol:before{content:"\f47e"}.fa-hospital-user:before{content:"\f80d"}.fa-hot-tub:before{content:"\f593"}.fa-hotdog:before{content:"\f80f"}.fa-hotel:before{content:"\f594"}.fa-hotjar:before{content:"\f3b1"}.fa-hourglass:before{content:"\f254"}.fa-hourglass-end:before{content:"\f253"}.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-start:before{content:"\f251"}.fa-house-damage:before{content:"\f6f1"}.fa-house-user:before{content:"\f965"}.fa-houzz:before{content:"\f27c"}.fa-hryvnia:before{content:"\f6f2"}.fa-html5:before{content:"\f13b"}.fa-hubspot:before{content:"\f3b2"}.fa-i-cursor:before{content:"\f246"}.fa-ice-cream:before{content:"\f810"}.fa-icicles:before{content:"\f7ad"}.fa-icons:before{content:"\f86d"}.fa-id-badge:before{content:"\f2c1"}.fa-id-card:before{content:"\f2c2"}.fa-id-card-alt:before{content:"\f47f"}.fa-ideal:before{content:"\f913"}.fa-igloo:before{content:"\f7ae"}.fa-image:before{content:"\f03e"}.fa-images:before{content:"\f302"}.fa-imdb:before{content:"\f2d8"}.fa-inbox:before{content:"\f01c"}.fa-indent:before{content:"\f03c"}.fa-industry:before{content:"\f275"}.fa-infinity:before{content:"\f534"}.fa-info:before{content:"\f129"}.fa-info-circle:before{content:"\f05a"}.fa-instagram:before{content:"\f16d"}.fa-instagram-square:before{content:"\f955"}.fa-intercom:before{content:"\f7af"}.fa-internet-explorer:before{content:"\f26b"}.fa-invision:before{content:"\f7b0"}.fa-ioxhost:before{content:"\f208"}.fa-italic:before{content:"\f033"}.fa-itch-io:before{content:"\f83a"}.fa-itunes:before{content:"\f3b4"}.fa-itunes-note:before{content:"\f3b5"}.fa-java:before{content:"\f4e4"}.fa-jedi:before{content:"\f669"}.fa-jedi-order:before{content:"\f50e"}.fa-jenkins:before{content:"\f3b6"}.fa-jira:before{content:"\f7b1"}.fa-joget:before{content:"\f3b7"}.fa-joint:before{content:"\f595"}.fa-joomla:before{content:"\f1aa"}.fa-journal-whills:before{content:"\f66a"}.fa-js:before{content:"\f3b8"}.fa-js-square:before{content:"\f3b9"}.fa-jsfiddle:before{content:"\f1cc"}.fa-kaaba:before{content:"\f66b"}.fa-kaggle:before{content:"\f5fa"}.fa-key:before{content:"\f084"}.fa-keybase:before{content:"\f4f5"}.fa-keyboard:before{content:"\f11c"}.fa-keycdn:before{content:"\f3ba"}.fa-khanda:before{content:"\f66d"}.fa-kickstarter:before{content:"\f3bb"}.fa-kickstarter-k:before{content:"\f3bc"}.fa-kiss:before{content:"\f596"}.fa-kiss-beam:before{content:"\f597"}.fa-kiss-wink-heart:before{content:"\f598"}.fa-kiwi-bird:before{content:"\f535"}.fa-korvue:before{content:"\f42f"}.fa-landmark:before{content:"\f66f"}.fa-language:before{content:"\f1ab"}.fa-laptop:before{content:"\f109"}.fa-laptop-code:before{content:"\f5fc"}.fa-laptop-house:before{content:"\f966"}.fa-laptop-medical:before{content:"\f812"}.fa-laravel:before{content:"\f3bd"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-laugh:before{content:"\f599"}.fa-laugh-beam:before{content:"\f59a"}.fa-laugh-squint:before{content:"\f59b"}.fa-laugh-wink:before{content:"\f59c"}.fa-layer-group:before{content:"\f5fd"}.fa-leaf:before{content:"\f06c"}.fa-leanpub:before{content:"\f212"}.fa-lemon:before{content:"\f094"}.fa-less:before{content:"\f41d"}.fa-less-than:before{content:"\f536"}.fa-less-than-equal:before{content:"\f537"}.fa-level-down-alt:before{content:"\f3be"}.fa-level-up-alt:before{content:"\f3bf"}.fa-life-ring:before{content:"\f1cd"}.fa-lightbulb:before{content:"\f0eb"}.fa-line:before{content:"\f3c0"}.fa-link:before{content:"\f0c1"}.fa-linkedin:before{content:"\f08c"}.fa-linkedin-in:before{content:"\f0e1"}.fa-linode:before{content:"\f2b8"}.fa-linux:before{content:"\f17c"}.fa-lira-sign:before{content:"\f195"}.fa-list:before{content:"\f03a"}.fa-list-alt:before{content:"\f022"}.fa-list-ol:before{content:"\f0cb"}.fa-list-ul:before{content:"\f0ca"}.fa-location-arrow:before{content:"\f124"}.fa-lock:before{content:"\f023"}.fa-lock-open:before{content:"\f3c1"}.fa-long-arrow-alt-down:before{content:"\f309"}.fa-long-arrow-alt-left:before{content:"\f30a"}.fa-long-arrow-alt-right:before{content:"\f30b"}.fa-long-arrow-alt-up:before{content:"\f30c"}.fa-low-vision:before{content:"\f2a8"}.fa-luggage-cart:before{content:"\f59d"}.fa-lungs:before{content:"\f604"}.fa-lungs-virus:before{content:"\f967"}.fa-lyft:before{content:"\f3c3"}.fa-magento:before{content:"\f3c4"}.fa-magic:before{content:"\f0d0"}.fa-magnet:before{content:"\f076"}.fa-mail-bulk:before{content:"\f674"}.fa-mailchimp:before{content:"\f59e"}.fa-male:before{content:"\f183"}.fa-mandalorian:before{content:"\f50f"}.fa-map:before{content:"\f279"}.fa-map-marked:before{content:"\f59f"}.fa-map-marked-alt:before{content:"\f5a0"}.fa-map-marker:before{content:"\f041"}.fa-map-marker-alt:before{content:"\f3c5"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-markdown:before{content:"\f60f"}.fa-marker:before{content:"\f5a1"}.fa-mars:before{content:"\f222"}.fa-mars-double:before{content:"\f227"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mask:before{content:"\f6fa"}.fa-mastodon:before{content:"\f4f6"}.fa-maxcdn:before{content:"\f136"}.fa-mdb:before{content:"\f8ca"}.fa-medal:before{content:"\f5a2"}.fa-medapps:before{content:"\f3c6"}.fa-medium:before{content:"\f23a"}.fa-medium-m:before{content:"\f3c7"}.fa-medkit:before{content:"\f0fa"}.fa-medrt:before{content:"\f3c8"}.fa-meetup:before{content:"\f2e0"}.fa-megaport:before{content:"\f5a3"}.fa-meh:before{content:"\f11a"}.fa-meh-blank:before{content:"\f5a4"}.fa-meh-rolling-eyes:before{content:"\f5a5"}.fa-memory:before{content:"\f538"}.fa-mendeley:before{content:"\f7b3"}.fa-menorah:before{content:"\f676"}.fa-mercury:before{content:"\f223"}.fa-meteor:before{content:"\f753"}.fa-microblog:before{content:"\f91a"}.fa-microchip:before{content:"\f2db"}.fa-microphone:before{content:"\f130"}.fa-microphone-alt:before{content:"\f3c9"}.fa-microphone-alt-slash:before{content:"\f539"}.fa-microphone-slash:before{content:"\f131"}.fa-microscope:before{content:"\f610"}.fa-microsoft:before{content:"\f3ca"}.fa-minus:before{content:"\f068"}.fa-minus-circle:before{content:"\f056"}.fa-minus-square:before{content:"\f146"}.fa-mitten:before{content:"\f7b5"}.fa-mix:before{content:"\f3cb"}.fa-mixcloud:before{content:"\f289"}.fa-mixer:before{content:"\f956"}.fa-mizuni:before{content:"\f3cc"}.fa-mobile:before{content:"\f10b"}.fa-mobile-alt:before{content:"\f3cd"}.fa-modx:before{content:"\f285"}.fa-monero:before{content:"\f3d0"}.fa-money-bill:before{content:"\f0d6"}.fa-money-bill-alt:before{content:"\f3d1"}.fa-money-bill-wave:before{content:"\f53a"}.fa-money-bill-wave-alt:before{content:"\f53b"}.fa-money-check:before{content:"\f53c"}.fa-money-check-alt:before{content:"\f53d"}.fa-monument:before{content:"\f5a6"}.fa-moon:before{content:"\f186"}.fa-mortar-pestle:before{content:"\f5a7"}.fa-mosque:before{content:"\f678"}.fa-motorcycle:before{content:"\f21c"}.fa-mountain:before{content:"\f6fc"}.fa-mouse:before{content:"\f8cc"}.fa-mouse-pointer:before{content:"\f245"}.fa-mug-hot:before{content:"\f7b6"}.fa-music:before{content:"\f001"}.fa-napster:before{content:"\f3d2"}.fa-neos:before{content:"\f612"}.fa-network-wired:before{content:"\f6ff"}.fa-neuter:before{content:"\f22c"}.fa-newspaper:before{content:"\f1ea"}.fa-nimblr:before{content:"\f5a8"}.fa-node:before{content:"\f419"}.fa-node-js:before{content:"\f3d3"}.fa-not-equal:before{content:"\f53e"}.fa-notes-medical:before{content:"\f481"}.fa-npm:before{content:"\f3d4"}.fa-ns8:before{content:"\f3d5"}.fa-nutritionix:before{content:"\f3d6"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-oil-can:before{content:"\f613"}.fa-old-republic:before{content:"\f510"}.fa-om:before{content:"\f679"}.fa-opencart:before{content:"\f23d"}.fa-openid:before{content:"\f19b"}.fa-opera:before{content:"\f26a"}.fa-optin-monster:before{content:"\f23c"}.fa-orcid:before{content:"\f8d2"}.fa-osi:before{content:"\f41a"}.fa-otter:before{content:"\f700"}.fa-outdent:before{content:"\f03b"}.fa-page4:before{content:"\f3d7"}.fa-pagelines:before{content:"\f18c"}.fa-pager:before{content:"\f815"}.fa-paint-brush:before{content:"\f1fc"}.fa-paint-roller:before{content:"\f5aa"}.fa-palette:before{content:"\f53f"}.fa-palfed:before{content:"\f3d8"}.fa-pallet:before{content:"\f482"}.fa-paper-plane:before{content:"\f1d8"}.fa-paperclip:before{content:"\f0c6"}.fa-parachute-box:before{content:"\f4cd"}.fa-paragraph:before{content:"\f1dd"}.fa-parking:before{content:"\f540"}.fa-passport:before{content:"\f5ab"}.fa-pastafarianism:before{content:"\f67b"}.fa-paste:before{content:"\f0ea"}.fa-patreon:before{content:"\f3d9"}.fa-pause:before{content:"\f04c"}.fa-pause-circle:before{content:"\f28b"}.fa-paw:before{content:"\f1b0"}.fa-paypal:before{content:"\f1ed"}.fa-peace:before{content:"\f67c"}.fa-pen:before{content:"\f304"}.fa-pen-alt:before{content:"\f305"}.fa-pen-fancy:before{content:"\f5ac"}.fa-pen-nib:before{content:"\f5ad"}.fa-pen-square:before{content:"\f14b"}.fa-pencil-alt:before{content:"\f303"}.fa-pencil-ruler:before{content:"\f5ae"}.fa-penny-arcade:before{content:"\f704"}.fa-people-arrows:before{content:"\f968"}.fa-people-carry:before{content:"\f4ce"}.fa-pepper-hot:before{content:"\f816"}.fa-percent:before{content:"\f295"}.fa-percentage:before{content:"\f541"}.fa-periscope:before{content:"\f3da"}.fa-person-booth:before{content:"\f756"}.fa-phabricator:before{content:"\f3db"}.fa-phoenix-framework:before{content:"\f3dc"}.fa-phoenix-squadron:before{content:"\f511"}.fa-phone:before{content:"\f095"}.fa-phone-alt:before{content:"\f879"}.fa-phone-slash:before{content:"\f3dd"}.fa-phone-square:before{content:"\f098"}.fa-phone-square-alt:before{content:"\f87b"}.fa-phone-volume:before{content:"\f2a0"}.fa-photo-video:before{content:"\f87c"}.fa-php:before{content:"\f457"}.fa-pied-piper:before{content:"\f2ae"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-pied-piper-hat:before{content:"\f4e5"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pied-piper-square:before{content:"\f91e"}.fa-piggy-bank:before{content:"\f4d3"}.fa-pills:before{content:"\f484"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-p:before{content:"\f231"}.fa-pinterest-square:before{content:"\f0d3"}.fa-pizza-slice:before{content:"\f818"}.fa-place-of-worship:before{content:"\f67f"}.fa-plane:before{content:"\f072"}.fa-plane-arrival:before{content:"\f5af"}.fa-plane-departure:before{content:"\f5b0"}.fa-plane-slash:before{content:"\f969"}.fa-play:before{content:"\f04b"}.fa-play-circle:before{content:"\f144"}.fa-playstation:before{content:"\f3df"}.fa-plug:before{content:"\f1e6"}.fa-plus:before{content:"\f067"}.fa-plus-circle:before{content:"\f055"}.fa-plus-square:before{content:"\f0fe"}.fa-podcast:before{content:"\f2ce"}.fa-poll:before{content:"\f681"}.fa-poll-h:before{content:"\f682"}.fa-poo:before{content:"\f2fe"}.fa-poo-storm:before{content:"\f75a"}.fa-poop:before{content:"\f619"}.fa-portrait:before{content:"\f3e0"}.fa-pound-sign:before{content:"\f154"}.fa-power-off:before{content:"\f011"}.fa-pray:before{content:"\f683"}.fa-praying-hands:before{content:"\f684"}.fa-prescription:before{content:"\f5b1"}.fa-prescription-bottle:before{content:"\f485"}.fa-prescription-bottle-alt:before{content:"\f486"}.fa-print:before{content:"\f02f"}.fa-procedures:before{content:"\f487"}.fa-product-hunt:before{content:"\f288"}.fa-project-diagram:before{content:"\f542"}.fa-pump-medical:before{content:"\f96a"}.fa-pump-soap:before{content:"\f96b"}.fa-pushed:before{content:"\f3e1"}.fa-puzzle-piece:before{content:"\f12e"}.fa-python:before{content:"\f3e2"}.fa-qq:before{content:"\f1d6"}.fa-qrcode:before{content:"\f029"}.fa-question:before{content:"\f128"}.fa-question-circle:before{content:"\f059"}.fa-quidditch:before{content:"\f458"}.fa-quinscape:before{content:"\f459"}.fa-quora:before{content:"\f2c4"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-quran:before{content:"\f687"}.fa-r-project:before{content:"\f4f7"}.fa-radiation:before{content:"\f7b9"}.fa-radiation-alt:before{content:"\f7ba"}.fa-rainbow:before{content:"\f75b"}.fa-random:before{content:"\f074"}.fa-raspberry-pi:before{content:"\f7bb"}.fa-ravelry:before{content:"\f2d9"}.fa-react:before{content:"\f41b"}.fa-reacteurope:before{content:"\f75d"}.fa-readme:before{content:"\f4d5"}.fa-rebel:before{content:"\f1d0"}.fa-receipt:before{content:"\f543"}.fa-record-vinyl:before{content:"\f8d9"}.fa-recycle:before{content:"\f1b8"}.fa-red-river:before{content:"\f3e3"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-alien:before{content:"\f281"}.fa-reddit-square:before{content:"\f1a2"}.fa-redhat:before{content:"\f7bc"}.fa-redo:before{content:"\f01e"}.fa-redo-alt:before{content:"\f2f9"}.fa-registered:before{content:"\f25d"}.fa-remove-format:before{content:"\f87d"}.fa-renren:before{content:"\f18b"}.fa-reply:before{content:"\f3e5"}.fa-reply-all:before{content:"\f122"}.fa-replyd:before{content:"\f3e6"}.fa-republican:before{content:"\f75e"}.fa-researchgate:before{content:"\f4f8"}.fa-resolving:before{content:"\f3e7"}.fa-restroom:before{content:"\f7bd"}.fa-retweet:before{content:"\f079"}.fa-rev:before{content:"\f5b2"}.fa-ribbon:before{content:"\f4d6"}.fa-ring:before{content:"\f70b"}.fa-road:before{content:"\f018"}.fa-robot:before{content:"\f544"}.fa-rocket:before{content:"\f135"}.fa-rocketchat:before{content:"\f3e8"}.fa-rockrms:before{content:"\f3e9"}.fa-route:before{content:"\f4d7"}.fa-rss:before{content:"\f09e"}.fa-rss-square:before{content:"\f143"}.fa-ruble-sign:before{content:"\f158"}.fa-ruler:before{content:"\f545"}.fa-ruler-combined:before{content:"\f546"}.fa-ruler-horizontal:before{content:"\f547"}.fa-ruler-vertical:before{content:"\f548"}.fa-running:before{content:"\f70c"}.fa-rupee-sign:before{content:"\f156"}.fa-sad-cry:before{content:"\f5b3"}.fa-sad-tear:before{content:"\f5b4"}.fa-safari:before{content:"\f267"}.fa-salesforce:before{content:"\f83b"}.fa-sass:before{content:"\f41e"}.fa-satellite:before{content:"\f7bf"}.fa-satellite-dish:before{content:"\f7c0"}.fa-save:before{content:"\f0c7"}.fa-schlix:before{content:"\f3ea"}.fa-school:before{content:"\f549"}.fa-screwdriver:before{content:"\f54a"}.fa-scribd:before{content:"\f28a"}.fa-scroll:before{content:"\f70e"}.fa-sd-card:before{content:"\f7c2"}.fa-search:before{content:"\f002"}.fa-search-dollar:before{content:"\f688"}.fa-search-location:before{content:"\f689"}.fa-search-minus:before{content:"\f010"}.fa-search-plus:before{content:"\f00e"}.fa-searchengin:before{content:"\f3eb"}.fa-seedling:before{content:"\f4d8"}.fa-sellcast:before{content:"\f2da"}.fa-sellsy:before{content:"\f213"}.fa-server:before{content:"\f233"}.fa-servicestack:before{content:"\f3ec"}.fa-shapes:before{content:"\f61f"}.fa-share:before{content:"\f064"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-share-square:before{content:"\f14d"}.fa-shekel-sign:before{content:"\f20b"}.fa-shield-alt:before{content:"\f3ed"}.fa-shield-virus:before{content:"\f96c"}.fa-ship:before{content:"\f21a"}.fa-shipping-fast:before{content:"\f48b"}.fa-shirtsinbulk:before{content:"\f214"}.fa-shoe-prints:before{content:"\f54b"}.fa-shopify:before{content:"\f957"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-shopping-cart:before{content:"\f07a"}.fa-shopware:before{content:"\f5b5"}.fa-shower:before{content:"\f2cc"}.fa-shuttle-van:before{content:"\f5b6"}.fa-sign:before{content:"\f4d9"}.fa-sign-in-alt:before{content:"\f2f6"}.fa-sign-language:before{content:"\f2a7"}.fa-sign-out-alt:before{content:"\f2f5"}.fa-signal:before{content:"\f012"}.fa-signature:before{content:"\f5b7"}.fa-sim-card:before{content:"\f7c4"}.fa-simplybuilt:before{content:"\f215"}.fa-sistrix:before{content:"\f3ee"}.fa-sitemap:before{content:"\f0e8"}.fa-sith:before{content:"\f512"}.fa-skating:before{content:"\f7c5"}.fa-sketch:before{content:"\f7c6"}.fa-skiing:before{content:"\f7c9"}.fa-skiing-nordic:before{content:"\f7ca"}.fa-skull:before{content:"\f54c"}.fa-skull-crossbones:before{content:"\f714"}.fa-skyatlas:before{content:"\f216"}.fa-skype:before{content:"\f17e"}.fa-slack:before{content:"\f198"}.fa-slack-hash:before{content:"\f3ef"}.fa-slash:before{content:"\f715"}.fa-sleigh:before{content:"\f7cc"}.fa-sliders-h:before{content:"\f1de"}.fa-slideshare:before{content:"\f1e7"}.fa-smile:before{content:"\f118"}.fa-smile-beam:before{content:"\f5b8"}.fa-smile-wink:before{content:"\f4da"}.fa-smog:before{content:"\f75f"}.fa-smoking:before{content:"\f48d"}.fa-smoking-ban:before{content:"\f54d"}.fa-sms:before{content:"\f7cd"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-snowboarding:before{content:"\f7ce"}.fa-snowflake:before{content:"\f2dc"}.fa-snowman:before{content:"\f7d0"}.fa-snowplow:before{content:"\f7d2"}.fa-soap:before{content:"\f96e"}.fa-socks:before{content:"\f696"}.fa-solar-panel:before{content:"\f5ba"}.fa-sort:before{content:"\f0dc"}.fa-sort-alpha-down:before{content:"\f15d"}.fa-sort-alpha-down-alt:before{content:"\f881"}.fa-sort-alpha-up:before{content:"\f15e"}.fa-sort-alpha-up-alt:before{content:"\f882"}.fa-sort-amount-down:before{content:"\f160"}.fa-sort-amount-down-alt:before{content:"\f884"}.fa-sort-amount-up:before{content:"\f161"}.fa-sort-amount-up-alt:before{content:"\f885"}.fa-sort-down:before{content:"\f0dd"}.fa-sort-numeric-down:before{content:"\f162"}.fa-sort-numeric-down-alt:before{content:"\f886"}.fa-sort-numeric-up:before{content:"\f163"}.fa-sort-numeric-up-alt:before{content:"\f887"}.fa-sort-up:before{content:"\f0de"}.fa-soundcloud:before{content:"\f1be"}.fa-sourcetree:before{content:"\f7d3"}.fa-spa:before{content:"\f5bb"}.fa-space-shuttle:before{content:"\f197"}.fa-speakap:before{content:"\f3f3"}.fa-speaker-deck:before{content:"\f83c"}.fa-spell-check:before{content:"\f891"}.fa-spider:before{content:"\f717"}.fa-spinner:before{content:"\f110"}.fa-splotch:before{content:"\f5bc"}.fa-spotify:before{content:"\f1bc"}.fa-spray-can:before{content:"\f5bd"}.fa-square:before{content:"\f0c8"}.fa-square-full:before{content:"\f45c"}.fa-square-root-alt:before{content:"\f698"}.fa-squarespace:before{content:"\f5be"}.fa-stack-exchange:before{content:"\f18d"}.fa-stack-overflow:before{content:"\f16c"}.fa-stackpath:before{content:"\f842"}.fa-stamp:before{content:"\f5bf"}.fa-star:before{content:"\f005"}.fa-star-and-crescent:before{content:"\f699"}.fa-star-half:before{content:"\f089"}.fa-star-half-alt:before{content:"\f5c0"}.fa-star-of-david:before{content:"\f69a"}.fa-star-of-life:before{content:"\f621"}.fa-staylinked:before{content:"\f3f5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-steam-symbol:before{content:"\f3f6"}.fa-step-backward:before{content:"\f048"}.fa-step-forward:before{content:"\f051"}.fa-stethoscope:before{content:"\f0f1"}.fa-sticker-mule:before{content:"\f3f7"}.fa-sticky-note:before{content:"\f249"}.fa-stop:before{content:"\f04d"}.fa-stop-circle:before{content:"\f28d"}.fa-stopwatch:before{content:"\f2f2"}.fa-stopwatch-20:before{content:"\f96f"}.fa-store:before{content:"\f54e"}.fa-store-alt:before{content:"\f54f"}.fa-store-alt-slash:before{content:"\f970"}.fa-store-slash:before{content:"\f971"}.fa-strava:before{content:"\f428"}.fa-stream:before{content:"\f550"}.fa-street-view:before{content:"\f21d"}.fa-strikethrough:before{content:"\f0cc"}.fa-stripe:before{content:"\f429"}.fa-stripe-s:before{content:"\f42a"}.fa-stroopwafel:before{content:"\f551"}.fa-studiovinari:before{content:"\f3f8"}.fa-stumbleupon:before{content:"\f1a4"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-subscript:before{content:"\f12c"}.fa-subway:before{content:"\f239"}.fa-suitcase:before{content:"\f0f2"}.fa-suitcase-rolling:before{content:"\f5c1"}.fa-sun:before{content:"\f185"}.fa-superpowers:before{content:"\f2dd"}.fa-superscript:before{content:"\f12b"}.fa-supple:before{content:"\f3f9"}.fa-surprise:before{content:"\f5c2"}.fa-suse:before{content:"\f7d6"}.fa-swatchbook:before{content:"\f5c3"}.fa-swift:before{content:"\f8e1"}.fa-swimmer:before{content:"\f5c4"}.fa-swimming-pool:before{content:"\f5c5"}.fa-symfony:before{content:"\f83d"}.fa-synagogue:before{content:"\f69b"}.fa-sync:before{content:"\f021"}.fa-sync-alt:before{content:"\f2f1"}.fa-syringe:before{content:"\f48e"}.fa-table:before{content:"\f0ce"}.fa-table-tennis:before{content:"\f45d"}.fa-tablet:before{content:"\f10a"}.fa-tablet-alt:before{content:"\f3fa"}.fa-tablets:before{content:"\f490"}.fa-tachometer-alt:before{content:"\f3fd"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-tape:before{content:"\f4db"}.fa-tasks:before{content:"\f0ae"}.fa-taxi:before{content:"\f1ba"}.fa-teamspeak:before{content:"\f4f9"}.fa-teeth:before{content:"\f62e"}.fa-teeth-open:before{content:"\f62f"}.fa-telegram:before{content:"\f2c6"}.fa-telegram-plane:before{content:"\f3fe"}.fa-temperature-high:before{content:"\f769"}.fa-temperature-low:before{content:"\f76b"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-tenge:before{content:"\f7d7"}.fa-terminal:before{content:"\f120"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-th:before{content:"\f00a"}.fa-th-large:before{content:"\f009"}.fa-th-list:before{content:"\f00b"}.fa-the-red-yeti:before{content:"\f69d"}.fa-theater-masks:before{content:"\f630"}.fa-themeco:before{content:"\f5c6"}.fa-themeisle:before{content:"\f2b2"}.fa-thermometer:before{content:"\f491"}.fa-thermometer-empty:before{content:"\f2cb"}.fa-thermometer-full:before{content:"\f2c7"}.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-think-peaks:before{content:"\f731"}.fa-thumbs-down:before{content:"\f165"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbtack:before{content:"\f08d"}.fa-ticket-alt:before{content:"\f3ff"}.fa-times:before{content:"\f00d"}.fa-times-circle:before{content:"\f057"}.fa-tint:before{content:"\f043"}.fa-tint-slash:before{content:"\f5c7"}.fa-tired:before{content:"\f5c8"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-toilet:before{content:"\f7d8"}.fa-toilet-paper:before{content:"\f71e"}.fa-toilet-paper-slash:before{content:"\f972"}.fa-toolbox:before{content:"\f552"}.fa-tools:before{content:"\f7d9"}.fa-tooth:before{content:"\f5c9"}.fa-torah:before{content:"\f6a0"}.fa-torii-gate:before{content:"\f6a1"}.fa-tractor:before{content:"\f722"}.fa-trade-federation:before{content:"\f513"}.fa-trademark:before{content:"\f25c"}.fa-traffic-light:before{content:"\f637"}.fa-trailer:before{content:"\f941"}.fa-train:before{content:"\f238"}.fa-tram:before{content:"\f7da"}.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-trash:before{content:"\f1f8"}.fa-trash-alt:before{content:"\f2ed"}.fa-trash-restore:before{content:"\f829"}.fa-trash-restore-alt:before{content:"\f82a"}.fa-tree:before{content:"\f1bb"}.fa-trello:before{content:"\f181"}.fa-tripadvisor:before{content:"\f262"}.fa-trophy:before{content:"\f091"}.fa-truck:before{content:"\f0d1"}.fa-truck-loading:before{content:"\f4de"}.fa-truck-monster:before{content:"\f63b"}.fa-truck-moving:before{content:"\f4df"}.fa-truck-pickup:before{content:"\f63c"}.fa-tshirt:before{content:"\f553"}.fa-tty:before{content:"\f1e4"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-tv:before{content:"\f26c"}.fa-twitch:before{content:"\f1e8"}.fa-twitter:before{content:"\f099"}.fa-twitter-square:before{content:"\f081"}.fa-typo3:before{content:"\f42b"}.fa-uber:before{content:"\f402"}.fa-ubuntu:before{content:"\f7df"}.fa-uikit:before{content:"\f403"}.fa-umbraco:before{content:"\f8e8"}.fa-umbrella:before{content:"\f0e9"}.fa-umbrella-beach:before{content:"\f5ca"}.fa-underline:before{content:"\f0cd"}.fa-undo:before{content:"\f0e2"}.fa-undo-alt:before{content:"\f2ea"}.fa-uniregistry:before{content:"\f404"}.fa-unity:before{content:"\f949"}.fa-universal-access:before{content:"\f29a"}.fa-university:before{content:"\f19c"}.fa-unlink:before{content:"\f127"}.fa-unlock:before{content:"\f09c"}.fa-unlock-alt:before{content:"\f13e"}.fa-untappd:before{content:"\f405"}.fa-upload:before{content:"\f093"}.fa-ups:before{content:"\f7e0"}.fa-usb:before{content:"\f287"}.fa-user:before{content:"\f007"}.fa-user-alt:before{content:"\f406"}.fa-user-alt-slash:before{content:"\f4fa"}.fa-user-astronaut:before{content:"\f4fb"}.fa-user-check:before{content:"\f4fc"}.fa-user-circle:before{content:"\f2bd"}.fa-user-clock:before{content:"\f4fd"}.fa-user-cog:before{content:"\f4fe"}.fa-user-edit:before{content:"\f4ff"}.fa-user-friends:before{content:"\f500"}.fa-user-graduate:before{content:"\f501"}.fa-user-injured:before{content:"\f728"}.fa-user-lock:before{content:"\f502"}.fa-user-md:before{content:"\f0f0"}.fa-user-minus:before{content:"\f503"}.fa-user-ninja:before{content:"\f504"}.fa-user-nurse:before{content:"\f82f"}.fa-user-plus:before{content:"\f234"}.fa-user-secret:before{content:"\f21b"}.fa-user-shield:before{content:"\f505"}.fa-user-slash:before{content:"\f506"}.fa-user-tag:before{content:"\f507"}.fa-user-tie:before{content:"\f508"}.fa-user-times:before{content:"\f235"}.fa-users:before{content:"\f0c0"}.fa-users-cog:before{content:"\f509"}.fa-usps:before{content:"\f7e1"}.fa-ussunnah:before{content:"\f407"}.fa-utensil-spoon:before{content:"\f2e5"}.fa-utensils:before{content:"\f2e7"}.fa-vaadin:before{content:"\f408"}.fa-vector-square:before{content:"\f5cb"}.fa-venus:before{content:"\f221"}.fa-venus-double:before{content:"\f226"}.fa-venus-mars:before{content:"\f228"}.fa-viacoin:before{content:"\f237"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-vial:before{content:"\f492"}.fa-vials:before{content:"\f493"}.fa-viber:before{content:"\f409"}.fa-video:before{content:"\f03d"}.fa-video-slash:before{content:"\f4e2"}.fa-vihara:before{content:"\f6a7"}.fa-vimeo:before{content:"\f40a"}.fa-vimeo-square:before{content:"\f194"}.fa-vimeo-v:before{content:"\f27d"}.fa-vine:before{content:"\f1ca"}.fa-virus:before{content:"\f974"}.fa-virus-slash:before{content:"\f975"}.fa-viruses:before{content:"\f976"}.fa-vk:before{content:"\f189"}.fa-vnv:before{content:"\f40b"}.fa-voicemail:before{content:"\f897"}.fa-volleyball-ball:before{content:"\f45f"}.fa-volume-down:before{content:"\f027"}.fa-volume-mute:before{content:"\f6a9"}.fa-volume-off:before{content:"\f026"}.fa-volume-up:before{content:"\f028"}.fa-vote-yea:before{content:"\f772"}.fa-vr-cardboard:before{content:"\f729"}.fa-vuejs:before{content:"\f41f"}.fa-walking:before{content:"\f554"}.fa-wallet:before{content:"\f555"}.fa-warehouse:before{content:"\f494"}.fa-water:before{content:"\f773"}.fa-wave-square:before{content:"\f83e"}.fa-waze:before{content:"\f83f"}.fa-weebly:before{content:"\f5cc"}.fa-weibo:before{content:"\f18a"}.fa-weight:before{content:"\f496"}.fa-weight-hanging:before{content:"\f5cd"}.fa-weixin:before{content:"\f1d7"}.fa-whatsapp:before{content:"\f232"}.fa-whatsapp-square:before{content:"\f40c"}.fa-wheelchair:before{content:"\f193"}.fa-whmcs:before{content:"\f40d"}.fa-wifi:before{content:"\f1eb"}.fa-wikipedia-w:before{content:"\f266"}.fa-wind:before{content:"\f72e"}.fa-window-close:before{content:"\f410"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-windows:before{content:"\f17a"}.fa-wine-bottle:before{content:"\f72f"}.fa-wine-glass:before{content:"\f4e3"}.fa-wine-glass-alt:before{content:"\f5ce"}.fa-wix:before{content:"\f5cf"}.fa-wizards-of-the-coast:before{content:"\f730"}.fa-wolf-pack-battalion:before{content:"\f514"}.fa-won-sign:before{content:"\f159"}.fa-wordpress:before{content:"\f19a"}.fa-wordpress-simple:before{content:"\f411"}.fa-wpbeginner:before{content:"\f297"}.fa-wpexplorer:before{content:"\f2de"}.fa-wpforms:before{content:"\f298"}.fa-wpressr:before{content:"\f3e4"}.fa-wrench:before{content:"\f0ad"}.fa-x-ray:before{content:"\f497"}.fa-xbox:before{content:"\f412"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-y-combinator:before{content:"\f23b"}.fa-yahoo:before{content:"\f19e"}.fa-yammer:before{content:"\f840"}.fa-yandex:before{content:"\f413"}.fa-yandex-international:before{content:"\f414"}.fa-yarn:before{content:"\f7e3"}.fa-yelp:before{content:"\f1e9"}.fa-yen-sign:before{content:"\f157"}.fa-yin-yang:before{content:"\f6ad"}.fa-yoast:before{content:"\f2b1"}.fa-youtube:before{content:"\f167"}.fa-youtube-square:before{content:"\f431"}.fa-zhihu:before{content:"\f63f"}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}@font-face{font-family:"Font Awesome 5 Brands";font-style:normal;font-weight:400;font-display:block;src:url(../webfonts/fa-brands-400.eot);src:url(../webfonts/fa-brands-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.woff) format("woff"),url(../webfonts/fa-brands-400.ttf) format("truetype"),url(../webfonts/fa-brands-400.svg#fontawesome) format("svg")}.fab{font-family:"Font Awesome 5 Brands"}@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:400;font-display:block;src:url(../webfonts/fa-regular-400.eot);src:url(../webfonts/fa-regular-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.woff) format("woff"),url(../webfonts/fa-regular-400.ttf) format("truetype"),url(../webfonts/fa-regular-400.svg#fontawesome) format("svg")}.fab,.far{font-weight:400}@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:900;font-display:block;src:url(../webfonts/fa-solid-900.eot);src:url(../webfonts/fa-solid-900.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.woff) format("woff"),url(../webfonts/fa-solid-900.ttf) format("truetype"),url(../webfonts/fa-solid-900.svg#fontawesome) format("svg")}.fa,.far,.fas{font-family:"Font Awesome 5 Free"}.fa,.fas{font-weight:900} \ No newline at end of file diff --git a/assets/fuji.scss b/assets/fuji.scss new file mode 100644 index 0000000..b9982c5 --- /dev/null +++ b/assets/fuji.scss @@ -0,0 +1,24 @@ +@import '_custom'; + +// var & global +@import '_var'; +@import '_global'; + +// primer +@import '_primer/support/index.scss'; // support +@import '_primer/base/index.scss'; // base +@import '_primer/layout/container.scss'; // containers +@import '_primer/layout/grid.scss'; // grid system +@import '_primer/markdown/index.scss'; // markdown parsing system +@import '_primer/utilities/layout.scss'; // float and clearfix + +// style +@import '_fuji-style/_header'; +@import '_fuji-style/_content'; +@import '_fuji-style/_sidebar'; +@import '_fuji-style/_footer'; +@import '_fuji-style/_components'; + +// theme +@import '_fuji-theme/_light'; +@import '_fuji-theme/_dark'; diff --git a/assets/js/APlayer.min.js b/assets/js/APlayer.min.js deleted file mode 100644 index 6ba17e3..0000000 --- a/assets/js/APlayer.min.js +++ /dev/null @@ -1,2 +0,0 @@ -!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("APlayer",[],t):"object"==typeof exports?exports.APlayer=t():e.APlayer=t()}(window,function(){return function(e){var t={};function n(i){if(t[i])return t[i].exports;var a=t[i]={i:i,l:!1,exports:{}};return e[i].call(a.exports,a,a.exports,n),a.l=!0,a.exports}return n.m=e,n.c=t,n.d=function(e,t,i){n.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:i})},n.r=function(e){Object.defineProperty(e,"__esModule",{value:!0})},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="/",n(n.s=41)}([function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=/mobile/i.test(window.navigator.userAgent),a={secondToTime:function(e){var t=Math.floor(e/3600),n=Math.floor((e-3600*t)/60),i=Math.floor(e-3600*t-60*n);return(t>0?[t,n,i]:[n,i]).map(function(e){return e<10?"0"+e:""+e}).join(":")},getElementViewLeft:function(e){var t=e.offsetLeft,n=e.offsetParent,i=document.body.scrollLeft+document.documentElement.scrollLeft;if(document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement)for(;null!==n&&n!==e;)t+=n.offsetLeft,n=n.offsetParent;else for(;null!==n;)t+=n.offsetLeft,n=n.offsetParent;return t-i},getElementViewTop:function(e,t){for(var n,i=e.offsetTop,a=e.offsetParent;null!==a;)i+=a.offsetTop,a=a.offsetParent;return n=document.body.scrollTop+document.documentElement.scrollTop,t?i:i-n},isMobile:i,storage:{set:function(e,t){localStorage.setItem(e,t)},get:function(e){return localStorage.getItem(e)}},nameMap:{dragStart:i?"touchstart":"mousedown",dragMove:i?"touchmove":"mousemove",dragEnd:i?"touchend":"mouseup"},randomOrder:function(e){return function(e){for(var t=e.length-1;t>=0;t--){var n=Math.floor(Math.random()*(t+1)),i=e[n];e[n]=e[t],e[t]=i}return e}([].concat(function(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t
\n \n ',t+=r(n+s),t+='\n ',t+=r(e.name),t+='\n \n\n"}),t}},function(e,t,n){"use strict";e.exports=n(15)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=g(n(33)),a=g(n(32)),r=g(n(31)),o=g(n(30)),s=g(n(29)),l=g(n(28)),u=g(n(27)),c=g(n(26)),p=g(n(25)),d=g(n(24)),h=g(n(23)),y=g(n(22)),f=g(n(21)),v=g(n(20)),m=g(n(19));function g(e){return e&&e.__esModule?e:{default:e}}var w={play:i.default,pause:a.default,volumeUp:r.default,volumeDown:o.default,volumeOff:s.default,orderRandom:l.default,orderList:u.default,menu:c.default,loopAll:p.default,loopOne:d.default,loopNone:h.default,loading:y.default,right:f.default,skip:v.default,lrc:m.default};t.default=w},function(e,t,n){"use strict";var i,a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};i=function(){return this}();try{i=i||Function("return this")()||(0,eval)("this")}catch(e){"object"===("undefined"==typeof window?"undefined":a(window))&&(i=window)}e.exports=i},function(e,t,n){"use strict";var i,a,r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};void 0===(a="function"==typeof(i=function(){if("object"===("undefined"==typeof window?"undefined":r(window))&&void 0!==document.querySelectorAll&&void 0!==window.pageYOffset&&void 0!==history.pushState){var e=function(e,t,n,i){return n>i?t:e+(t-e)*((a=n/i)<.5?4*a*a*a:(a-1)*(2*a-2)*(2*a-2)+1);var a},t=function(t,n,i,a){n=n||500;var r=(a=a||window).scrollTop||window.pageYOffset;if("number"==typeof t)var o=parseInt(t);else var o=function(e,t){return"HTML"===e.nodeName?-t:e.getBoundingClientRect().top+t}(t,r);var s=Date.now(),l=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||function(e){window.setTimeout(e,15)};!function u(){var c=Date.now()-s;a!==window?a.scrollTop=e(r,o,c,n):window.scroll(0,e(r,o,c,n)),c>n?"function"==typeof i&&i(t):l(u)}()},n=function(e){if(!e.defaultPrevented){e.preventDefault(),location.hash!==this.hash&&window.history.pushState(null,null,this.hash);var n=document.getElementById(this.hash.substring(1));if(!n)return;t(n,500,function(e){location.replace("#"+e.id)})}};return document.addEventListener("DOMContentLoaded",function(){for(var e,t=document.querySelectorAll('a[href^="#"]:not([href="#"])'),i=t.length;e=t[--i];)e.addEventListener("click",n,!1)}),t}})?i.call(t,n,t,e):i)||(e.exports=a)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var n=0;n 1),n=0===this.audios.length;this.player.template.listOl.innerHTML+=(0,a.default)({theme:this.player.options.theme,audio:e,index:this.audios.length+1}),this.audios=this.audios.concat(e),t&&this.audios.length>1&&this.player.container.classList.add("aplayer-withlist"),this.player.randomOrder=r.default.randomOrder(this.audios.length),this.player.template.listCurs=this.player.container.querySelectorAll(".aplayer-list-cur"),this.player.template.listCurs[this.audios.length-1].style.backgroundColor=e.theme||this.player.options.theme,n&&("random"===this.player.options.order?this.switch(this.player.randomOrder[0]):this.switch(0))}},{key:"remove",value:function(e){if(this.player.events.trigger("listremove",{index:e}),this.audios[e])if(this.audios.length>1){var t=this.player.container.querySelectorAll(".aplayer-list li");t[e].remove(),this.audios.splice(e,1),this.player.lrc&&this.player.lrc.remove(e),e===this.index&&(this.audios[e]?this.switch(e):this.switch(e-1)),this.index>e&&this.index--;for(var n=e;n t&&!e.player.audio.paused&&(e.player.container.classList.remove("aplayer-loading"),i=!1),t=n)},100)}},{key:"enable",value:function(e){this["enable"+e+"Checker"]=!0,"fps"===e&&this.initfpsChecker()}},{key:"disable",value:function(e){this["enable"+e+"Checker"]=!1}},{key:"destroy",value:function(){var e=this;this.types.forEach(function(t){e["enable"+t+"Checker"]=!1,e[t+"Checker"]&&clearInterval(e[t+"Checker"])})}}]),e}();t.default=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var n=0;n 1?"one"===e.player.options.loop?(e.player.options.loop="none",e.player.template.loop.innerHTML=r.default.loopNone):"none"===e.player.options.loop?(e.player.options.loop="all",e.player.template.loop.innerHTML=r.default.loopAll):"all"===e.player.options.loop&&(e.player.options.loop="one",e.player.template.loop.innerHTML=r.default.loopOne):"one"===e.player.options.loop||"all"===e.player.options.loop?(e.player.options.loop="none",e.player.template.loop.innerHTML=r.default.loopNone):"none"===e.player.options.loop&&(e.player.options.loop="all",e.player.template.loop.innerHTML=r.default.loopAll)})}},{key:"initMenuButton",value:function(){var e=this;this.player.template.menu.addEventListener("click",function(){e.player.list.toggle()})}},{key:"initMiniSwitcher",value:function(){var e=this;this.player.template.miniSwitcher.addEventListener("click",function(){e.player.setMode("mini"===e.player.mode?"normal":"mini")})}},{key:"initSkipButton",value:function(){var e=this;this.player.template.skipBackButton.addEventListener("click",function(){e.player.skipBack()}),this.player.template.skipForwardButton.addEventListener("click",function(){e.player.skipForward()}),this.player.template.skipPlayButton.addEventListener("click",function(){e.player.toggle()})}},{key:"initLrcButton",value:function(){var e=this;this.player.template.lrcButton.addEventListener("click",function(){e.player.template.lrcButton.classList.contains("aplayer-icon-lrc-inactivity")?(e.player.template.lrcButton.classList.remove("aplayer-icon-lrc-inactivity"),e.player.lrc&&e.player.lrc.show()):(e.player.template.lrcButton.classList.add("aplayer-icon-lrc-inactivity"),e.player.lrc&&e.player.lrc.hide())})}}]),e}();t.default=s},function(e,t,n){var i=n(2);e.exports=function(e){"use strict";e=e||{};var t="",n=i.$each,a=e.lyrics,r=(e.$value,e.$index,i.$escape);return n(a,function(e,n){t+="\n ",t+=r(e[1]),t+="
\n"}),t}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i,a=function(){function e(e,t){for(var n=0;n0&&void 0!==arguments[0]?arguments[0]:this.player.audio.currentTime;if(this.index>this.current.length-1||e =this.current[this.index+1][0])for(var t=0;t =this.current[t][0]&&(!this.current[t+1]||e =200&&n.status<300||304===n.status?t.parsed[e]=t.parse(n.responseText):(t.player.notice("LRC file request fails: status "+n.status),t.parsed[e]=[["00:00","Not available"]]),t.container.innerHTML=(0,o.default)({lyrics:t.parsed[e]}),t.update(0),t.current=t.parsed[e])};var i=this.player.list.audios[e].lrc;n.open("get",i,!0),n.send(null)}else this.player.list.audios[e].lrc?this.parsed[e]=this.parse(this.player.list.audios[e].lrc):this.parsed[e]=[["00:00","Not available"]];this.container.innerHTML=(0,o.default)({lyrics:this.parsed[e]}),this.update(0),this.current=this.parsed[e]}},{key:"parse",value:function(e){if(e){for(var t=(e=e.replace(/([^\]^\n])\[/g,function(e,t){return t+"\n["})).split("\n"),n=[],i=t.length,a=0;a/g,"").replace(/^\s+|\s+$/g,"");if(r)for(var s=r.length,l=0;l ]/;a.$escape=function(e){return function(e){var t=""+e,n=r.exec(t);if(!n)return e;var i="",a=void 0,o=void 0,s=void 0;for(a=n.index,o=0;a\n \n ",l(n(1)(u({theme:a.theme,audio:a.audio,index:1}))),t+='\n
\n\n\n\n\n\n \n \n \n \n\n \n\n'):(t+='\n\n\n\n\n \n\n\n \n \n\n No audio\n \n\n\n \n\n\n\n \n\n \n 00:00 / 00:00\n \n \n \n \n\n\n \n\n \n \n \n \n \n\n\n"),t}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var n=0;n\n ",l(n(1)(u({theme:a.theme,audio:a.audio,index:1}))),t+="\n
\n'},function(e,t){e.exports=''},function(e,t){e.exports=''},function(e,t){e.exports=''},function(e,t){e.exports=''},function(e,t){e.exports=''},function(e,t){e.exports=''},function(e,t){e.exports=''},function(e,t){e.exports=''},function(e,t){e.exports=''},function(e,t){e.exports=''},function(e,t){e.exports=''},function(e,t){e.exports=''},function(e,t){e.exports=''},function(e,t){e.exports=''},function(e,t,n){"use strict";var i,a,r=e.exports={};function o(){throw new Error("setTimeout has not been defined")}function s(){throw new Error("clearTimeout has not been defined")}function l(e){if(i===setTimeout)return setTimeout(e,0);if((i===o||!i)&&setTimeout)return i=setTimeout,setTimeout(e,0);try{return i(e,0)}catch(t){try{return i.call(null,e,0)}catch(t){return i.call(this,e,0)}}}!function(){try{i="function"==typeof setTimeout?setTimeout:o}catch(e){i=o}try{a="function"==typeof clearTimeout?clearTimeout:s}catch(e){a=s}}();var u,c=[],p=!1,d=-1;function h(){p&&u&&(p=!1,u.length?c=u.concat(c):d=-1,c.length&&y())}function y(){if(!p){var e=l(h);p=!0;for(var t=c.length;t;){for(u=c,c=[];++d 1)for(var n=1;n =0&&(e._idleTimeoutId=setTimeout(function(){e._onTimeout&&e._onTimeout()},t))},n(35),t.setImmediate=setImmediate,t.clearImmediate=clearImmediate},function(e,t,n){"use strict";(function(t){var n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i=setTimeout;function a(){}function r(e){if(!(this instanceof r))throw new TypeError("Promises must be constructed via new");if("function"!=typeof e)throw new TypeError("not a function");this._state=0,this._handled=!1,this._value=void 0,this._deferreds=[],c(e,this)}function o(e,t){for(;3===e._state;)e=e._value;0!==e._state?(e._handled=!0,r._immediateFn(function(){var n=1===e._state?t.onFulfilled:t.onRejected;if(null!==n){var i;try{i=n(e._value)}catch(e){return void l(t.promise,e)}s(t.promise,i)}else(1===e._state?s:l)(t.promise,e._value)})):e._deferreds.push(t)}function s(e,t){try{if(t===e)throw new TypeError("A promise cannot be resolved with itself.");if(t&&("object"===(void 0===t?"undefined":n(t))||"function"==typeof t)){var i=t.then;if(t instanceof r)return e._state=3,e._value=t,void u(e);if("function"==typeof i)return void c((a=i,o=t,function(){a.apply(o,arguments)}),e)}e._state=1,e._value=t,u(e)}catch(t){l(e,t)}var a,o}function l(e,t){e._state=2,e._value=t,u(e)}function u(e){2===e._state&&0===e._deferreds.length&&r._immediateFn(function(){e._handled||r._unhandledRejectionFn(e._value)});for(var t=0,n=e._deferreds.length;t 1&&this.container.classList.add("aplayer-withlist"),r.default.isMobile&&this.container.classList.add("aplayer-mobile"),this.arrow=this.container.offsetWidth<=300,this.arrow&&this.container.classList.add("aplayer-arrow"),this.container=this.options.container,2===this.options.lrcType||!0===this.options.lrcType)for(var n=this.container.getElementsByClassName("aplayer-lrc-content"),i=0;i 1?(e.notice("An audio error has occurred, player will skip forward in 2 seconds."),t=setTimeout(function(){e.skipForward(),e.paused||e.play()},2e3)):1===e.list.audios.length&&e.notice("An audio error has occurred.")}),this.events.on("listswitch",function(){t&&clearTimeout(t)}),this.on("ended",function(){"none"===e.options.loop?"list"===e.options.order?e.list.index 0&&void 0!==arguments[0]?arguments[0]:this.list.audios[this.list.index].theme||this.options.theme,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.list.index;(!(arguments.length>2&&void 0!==arguments[2])||arguments[2])&&this.list.audios[t]&&(this.list.audios[t].theme=e),this.template.listCurs[t]&&(this.template.listCurs[t].style.backgroundColor=e),t===this.list.index&&(this.template.pic.style.backgroundColor=e,this.template.played.style.background=e,this.template.thumb.style.background=e,this.template.volume.style.background=e)}},{key:"seek",value:function(e){e=Math.max(e,0),e=Math.min(e,this.duration),this.audio.currentTime=e,this.bar.set("played",e/this.duration,"width"),this.template.ptime.innerHTML=r.default.secondToTime(e)}},{key:"setUIPlaying",value:function(){var e=this;if(this.paused&&(this.paused=!1,this.template.button.classList.remove("aplayer-play"),this.template.button.classList.add("aplayer-pause"),this.template.button.innerHTML="",setTimeout(function(){e.template.button.innerHTML=o.default.pause},100),this.template.skipPlayButton.innerHTML=o.default.pause),this.timer.enable("loading"),this.options.mutex)for(var t=0;t =.95?this.template.volumeButton.innerHTML=o.default.volumeUp:this.volume()>0?this.template.volumeButton.innerHTML=o.default.volumeDown:this.template.volumeButton.innerHTML=o.default.volumeOff}},{key:"volume",value:function(e,t){return e=parseFloat(e),isNaN(e)||(e=Math.max(e,0),e=Math.min(e,1),this.bar.set("volume",e,"height"),t||this.storage.set("volume",e),this.audio.volume=e,this.audio.muted&&(this.audio.muted=!1),this.switchVolumeIcon()),this.audio.muted?0:this.audio.volume}},{key:"on",value:function(e,t){this.events.on(e,t)}},{key:"toggle",value:function(){this.template.button.classList.contains("aplayer-play")?this.play():this.template.button.classList.contains("aplayer-pause")&&this.pause()}},{key:"switchAudio",value:function(e){this.list.switch(e)}},{key:"addAudio",value:function(e){this.list.add(e)}},{key:"removeAudio",value:function(e){this.list.remove(e)}},{key:"destroy",value:function(){m.splice(m.indexOf(this),1),this.pause(),this.container.innerHTML="",this.audio.src="",this.timer.destroy(),this.events.trigger("destroy")}},{key:"setMode",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"normal";this.mode=e,"mini"===e?this.container.classList.add("aplayer-narrow"):"normal"===e&&this.container.classList.remove("aplayer-narrow")}},{key:"notice",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:2e3,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:.8;this.template.notice.innerHTML=e,this.template.notice.style.opacity=i,this.noticeTime&&clearTimeout(this.noticeTime),this.events.trigger("noticeshow",{text:e}),n&&(this.noticeTime=setTimeout(function(){t.template.notice.style.opacity=0,t.events.trigger("noticehide")},n))}},{key:"prevIndex",value:function(){if(!(this.list.audios.length>1))return 0;if("list"===this.options.order)return this.list.index-1<0?this.list.audios.length-1:this.list.index-1;if("random"===this.options.order){var e=this.randomOrder.indexOf(this.list.index);return 0===e?this.randomOrder[this.randomOrder.length-1]:this.randomOrder[e-1]}}},{key:"nextIndex",value:function(){if(!(this.list.audios.length>1))return 0;if("list"===this.options.order)return(this.list.index+1)%this.list.audios.length;if("random"===this.options.order){var e=this.randomOrder.indexOf(this.list.index);return e===this.randomOrder.length-1?this.randomOrder[0]:this.randomOrder[e+1]}}},{key:"skipBack",value:function(){this.list.switch(this.prevIndex())}},{key:"skipForward",value:function(){this.list.switch(this.nextIndex())}},{key:"duration",get:function(){return isNaN(this.audio.duration)?0:this.audio.duration}}],[{key:"version",get:function(){return"1.10.1"}}]),e}();t.default=g},,function(e,t,n){},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n(40);var i,a=n(38),r=(i=a)&&i.__esModule?i:{default:i};console.log("\n %c APlayer v1.10.1 af84efb %c http://aplayer.js.org \n","color: #fadfa3; background: #030307; padding:5px 0;","background: #fadfa3; padding:5px 0;"),t.default=r.default}]).default}); -//# sourceMappingURL=APlayer.min.js.map \ No newline at end of file diff --git a/assets/js/jquery.min.js b/assets/js/jquery.min.js deleted file mode 100644 index 47b6397..0000000 --- a/assets/js/jquery.min.js +++ /dev/null @@ -1,2 +0,0 @@ -/*! jQuery v3.5.0 | (c) JS Foundation and other contributors | jquery.org/license */ -!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],r=Object.getPrototypeOf,s=t.slice,g=t.flat?function(e){return t.flat.call(e)}:function(e){return t.concat.apply([],e)},u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},x=function(e){return null!=e&&e===e.window},E=C.document,c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.5.0",S=function(e,t){return new S.fn.init(e,t)};function p(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0 +~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp(F),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+F),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(p.childNodes),p.childNodes),t[p.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!N[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&(U.test(t)||z.test(t))){(f=ee.test(t)&&ye(e.parentNode)||e)===e&&d.scope||((s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=S)),o=(l=h(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+xe(l[o]);c=l.join(",")}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){N(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return g(t.replace($,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[S]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:p;return r!=C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),p!=C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.scope=ce(function(e){return a.appendChild(e).appendChild(C.createElement("div")),"undefined"!=typeof e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length}),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=S,!C.getElementsByName||!C.getElementsByName(S).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){var t;a.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+S+"-]").length||v.push("~="),(t=C.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||v.push("\\["+M+"*name"+M+"*="+M+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+S+"+*").length||v.push(".#.+[+~]"),e.querySelectorAll("\\\f"),v.push("[\\r\\n\\f]")}),ce(function(e){e.innerHTML="";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",F)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e==C||e.ownerDocument==p&&y(p,e)?-1:t==C||t.ownerDocument==p&&y(p,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==C?-1:t==C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]==p?-1:s[r]==p?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(T(e),d.matchesSelector&&E&&!N[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){N(t,!0)}return 0 ":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=m[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&m(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1 :\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function D(e,n,r){return m(n)?S.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?S.grep(e,function(e){return e===n!==r}):"string"!=typeof n?S.grep(e,function(e){return-1 )[^>]*|#([\w-]+))$/;(S.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||j,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:q.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof S?t[0]:t,S.merge(this,S.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),N.test(r[1])&&S.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(S):S.makeArray(e,this)}).prototype=S.fn,j=S(E);var L=/^(?:parents|prev(?:Until|All))/,H={children:!0,contents:!0,next:!0,prev:!0};function O(e,t){while((e=e[t])&&1!==e.nodeType);return e}S.fn.extend({has:function(e){var t=S(e,this),n=t.length;return this.filter(function(){for(var e=0;e \x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i;ce=E.createDocumentFragment().appendChild(E.createElement("div")),(fe=E.createElement("input")).setAttribute("type","radio"),fe.setAttribute("checked","checked"),fe.setAttribute("name","t"),ce.appendChild(fe),y.checkClone=ce.cloneNode(!0).cloneNode(!0).lastChild.checked,ce.innerHTML="",y.noCloneChecked=!!ce.cloneNode(!0).lastChild.defaultValue,ce.innerHTML="",y.option=!!ce.lastChild;var ge={thead:[1," ","
"],col:[2,""],tr:[2,"
"," ","
"],td:[3,""],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?S.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n
"," ",""]);var me=/<|?\w+;/;function xe(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d \s*$/g;function qe(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&S(e).children("tbody")[0]||e}function Le(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function He(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Oe(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(Y.hasData(e)&&(s=Y.get(e).events))for(i in Y.remove(t,"handle events"),s)for(n=0,r=s[i].length;n ").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var Ut,Xt=[],Vt=/(=)\?(?=&|$)|\?\?/;S.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Xt.pop()||S.expando+"_"+Ct.guid++;return this[e]=!0,e}}),S.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Vt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Vt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Vt,"$1"+r):!1!==e.jsonp&&(e.url+=(Et.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||S.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?S(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Xt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((Ut=E.implementation.createHTMLDocument("").body).innerHTML="",2===Ut.childNodes.length),S.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=N.exec(e))?[t.createElement(i[1])]:(i=xe([e],t,o),o&&o.length&&S(o).remove(),S.merge([],i.childNodes)));var r,i,o},S.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1 ").append(S.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},S.expr.pseudos.animated=function(t){return S.grep(S.timers,function(e){return t===e.elem}).length},S.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=S.css(e,"position"),c=S(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=S.css(e,"top"),u=S.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,S.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):("number"==typeof f.top&&(f.top+="px"),"number"==typeof f.left&&(f.left+="px"),c.css(f))}},S.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){S.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===S.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===S.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=S(e).offset()).top+=S.css(e,"borderTopWidth",!0),i.left+=S.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-S.css(r,"marginTop",!0),left:t.left-i.left-S.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===S.css(e,"position"))e=e.offsetParent;return e||re})}}),S.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;S.fn[t]=function(e){return $(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),S.each(["top","left"],function(e,n){S.cssHooks[n]=$e(y.pixelPosition,function(e,t){if(t)return t=Be(e,n),Me.test(t)?S(e).position()[n]+"px":t})}),S.each({Height:"height",Width:"width"},function(a,s){S.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){S.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return $(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?S.css(e,t,i):S.style(e,t,n,i)},s,n?e:void 0,n)}})}),S.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){S.fn[t]=function(e){return this.on(t,e)}}),S.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),S.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){S.fn[n]=function(e,t){return 049?function(){m(h,{timeout:g}),g!==e.ricTimeout&&(g=e.ricTimeout)}:A(function(){k(h)},!0);return function(a){var e;(a=!0===a)&&(g=33),b||(b=!0,e=f-(c.now()-d),e<0&&(e=0),a||e<9?i():k(i,e))}},C=function(a){var b,d,e=99,f=function(){b=null,a()},g=function(){var a=c.now()-d;a 0)&&"visible"!=x(e,"overflow")&&(d=e.getBoundingClientRect(),g=I>d.left&&H d.top-1&&G 500&&f.clientWidth>500?500:370:e.expand,d._defEx=r,s=r*e.expFactor,t=e.hFac,K=null,P 2&&p>2&&!b.hidden?(P=s,R=0):P=p>1&&R>1&&Q<6?r:O),q!==l&&(D=innerWidth+l*t,F=innerHeight+l,n=-1*l,q=l),h=u[c].getBoundingClientRect(),(J=h.bottom)>=n&&(G=h.top)<=F&&(I=h.right)>=n*t&&(H=h.left)<=D&&(J||I||H||G)&&(e.loadHidden||T(u[c]))&&(m&&Q<3&&!o&&(p<3||R<4)||U(u[c],l))){if(ba(u[c]),k=!0,Q>9)break}else!k&&m&&!j&&Q<4&&R<4&&p>2&&(g[0]||e.preloadAfterLoad)&&(g[0]||!o&&(J||I||H||G||"auto"!=u[c][i](e.sizesAttr)))&&(j=g[0]||u[c]);j&&!k&&ba(j)}},W=B(V),X=function(a){var b=a.target;if(b._lazyCache)return void delete b._lazyCache;S(a),s(b,e.loadedClass),t(b,e.loadingClass),u(b,Z),v(b,"lazyloaded")},Y=A(X),Z=function(a){Y({target:a.target})},$=function(a,b){try{a.contentWindow.location.replace(b)}catch(c){a.src=b}},_=function(a){var b,c=a[i](e.srcsetAttr);(b=e.customMedia[a[i]("data-media")||a[i]("media")])&&a.setAttribute("media",b),c&&a.setAttribute("srcset",c)},aa=A(function(a,b,c,d,f){var g,h,j,l,m,p;(m=v(a,"lazybeforeunveil",b)).defaultPrevented||(d&&(c?s(a,e.autosizesClass):a.setAttribute("sizes",d)),h=a[i](e.srcsetAttr),g=a[i](e.srcAttr),f&&(j=a.parentNode,l=j&&n.test(j.nodeName||"")),p=b.firesLoad||"src"in a&&(h||g||l),m={target:a},s(a,e.loadingClass),p&&(clearTimeout(o),o=k(S,2500),u(a,Z,!0)),l&&q.call(j.getElementsByTagName("source"),_),h?a.setAttribute("srcset",h):g&&!l&&(M.test(a.nodeName)?$(a,g):a.src=g),f&&(h||l)&&w(a,{src:g})),a._lazyRace&&delete a._lazyRace,t(a,e.lazyClass),z(function(){var b=a.complete&&a.naturalWidth>1;p&&!b||(b&&s(a,"ls-is-cached"),X(m),a._lazyCache=!0,k(function(){"_lazyCache"in a&&delete a._lazyCache},9)),"lazy"==a.loading&&Q--},!0)}),ba=function(a){if(!a._lazyRace){var b,c=L.test(a.nodeName),d=c&&(a[i](e.sizesAttr)||a[i]("sizes")),f="auto"==d;(!f&&m||!c||!a[i]("src")&&!a.srcset||a.complete||r(a,e.errorClass)||!r(a,e.lazyClass))&&(b=v(a,"lazyunveilread").detail,f&&E.updateElem(a,!0,a.offsetWidth),a._lazyRace=!0,Q++,aa(a,b,f,d,c))}},ca=C(function(){e.loadMode=3,W()}),da=function(){3==e.loadMode&&(e.loadMode=2),ca()},ea=function(){if(!m){if(c.now()-y<999)return void k(ea,999);m=!0,e.loadMode=3,W(),j("scroll",da,!0)}};return{_:function(){y=c.now(),d.elements=b.getElementsByClassName(e.lazyClass),g=b.getElementsByClassName(e.lazyClass+" "+e.preloadClass),j("scroll",W,!0),j("resize",W,!0),j("pageshow",function(a){if(a.persisted){var c=b.querySelectorAll("."+e.loadingClass);c.length&&c.forEach&&l(function(){c.forEach(function(a){a.complete&&ba(a)})})}}),a.MutationObserver?new MutationObserver(W).observe(f,{childList:!0,subtree:!0,attributes:!0}):(f[h]("DOMNodeInserted",W,!0),f[h]("DOMAttrModified",W,!0),setInterval(W,999)),j("hashchange",W,!0),["focus","mouseover","click","load","transitionend","animationend"].forEach(function(a){b[h](a,W,!0)}),/d$|^c/.test(b.readyState)?ea():(j("load",ea),b[h]("DOMContentLoaded",W),k(ea,2e4)),d.elements.length?(V(),z._lsFlush()):W()},checkElems:W,unveil:ba,_aLSL:da}}(),E=function(){var a,c=A(function(a,b,c,d){var e,f,g;if(a._lazysizesWidth=d,d+="px",a.setAttribute("sizes",d),n.test(b.nodeName||""))for(e=b.getElementsByTagName("source"),f=0,g=e.length;f1&&void 0!==arguments[1]?arguments[1]:{},l=window.Promise||function(e){function t(){}e(t,t)},u=function(e){var t=e.target;t!==N?-1!==O.indexOf(t)&&w({target:t}):E()},s=function(){if(!A&&T.original){var e=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0;Math.abs(k-e)>S.scrollOffset&&setTimeout(E,150)}},f=function(e){var t=e.key||e.keyCode;"Escape"!==t&&"Esc"!==t&&27!==t||E()},p=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t;if(t.background&&(N.style.background=t.background),t.container&&t.container instanceof Object&&(n.container=e({},S.container,t.container)),t.template){var i=o(t.template)?t.template:document.querySelector(t.template);n.template=i}return S=e({},S,n),O.forEach((function(e){e.dispatchEvent(a("medium-zoom:update",{detail:{zoom:j}}))})),j},g=function(){var o=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return t(e({},S,o))},v=function(){for(var e=arguments.length,t=Array(e),o=0;o 0?t.reduce((function(e,t){return[].concat(e,i(t))}),[]):O;return n.forEach((function(e){e.classList.remove("medium-zoom-image"),e.dispatchEvent(a("medium-zoom:detach",{detail:{zoom:j}}))})),O=O.filter((function(e){return-1===n.indexOf(e)})),j},z=function(e,t){var o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return O.forEach((function(n){n.addEventListener("medium-zoom:"+e,t,o)})),x.push({type:"medium-zoom:"+e,listener:t,options:o}),j},y=function(e,t){var o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return O.forEach((function(n){n.removeEventListener("medium-zoom:"+e,t,o)})),x=x.filter((function(o){return!(o.type==="medium-zoom:"+e&&o.listener.toString()===t.toString())})),j},b=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},i=t.target,r=function(){var t={width:document.documentElement.clientWidth,height:document.documentElement.clientHeight,left:0,top:0,right:0,bottom:0},i=void 0,r=void 0;if(S.container)if(S.container instanceof Object)i=(t=e({},t,S.container)).width-t.left-t.right-2*S.margin,r=t.height-t.top-t.bottom-2*S.margin;else{var d=(o(S.container)?S.container:document.querySelector(S.container)).getBoundingClientRect(),a=d.width,m=d.height,c=d.left,l=d.top;t=e({},t,{width:a,height:m,left:c,top:l})}i=i||t.width-2*S.margin,r=r||t.height-2*S.margin;var u=T.zoomedHd||T.original,s=n(u)?i:u.naturalWidth||i,f=n(u)?r:u.naturalHeight||r,p=u.getBoundingClientRect(),g=p.top,v=p.left,h=p.width,z=p.height,y=Math.min(s,i)/h,b=Math.min(f,r)/z,E=Math.min(y,b),w="scale("+E+") translate3d("+((i-h)/2-v+S.margin+t.left)/E+"px, "+((r-z)/2-g+S.margin+t.top)/E+"px, 0)";T.zoomed.style.transform=w,T.zoomedHd&&(T.zoomedHd.style.transform=w)};return new l((function(e){if(i&&-1===O.indexOf(i))e(j);else{if(T.zoomed)e(j);else{if(i)T.original=i;else{if(!(O.length>0))return void e(j);var t=O;T.original=t[0]}if(T.original.dispatchEvent(a("medium-zoom:open",{detail:{zoom:j}})),k=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0,A=!0,T.zoomed=d(T.original),document.body.appendChild(N),S.template){var n=o(S.template)?S.template:document.querySelector(S.template);T.template=document.createElement("div"),T.template.appendChild(n.content.cloneNode(!0)),document.body.appendChild(T.template)}if(document.body.appendChild(T.zoomed),window.requestAnimationFrame((function(){document.body.classList.add("medium-zoom--opened")})),T.original.classList.add("medium-zoom-image--hidden"),T.zoomed.classList.add("medium-zoom-image--opened"),T.zoomed.addEventListener("click",E),T.zoomed.addEventListener("transitionend",(function t(){A=!1,T.zoomed.removeEventListener("transitionend",t),T.original.dispatchEvent(a("medium-zoom:opened",{detail:{zoom:j}})),e(j)})),T.original.getAttribute("data-zoom-src")){T.zoomedHd=T.zoomed.cloneNode(),T.zoomedHd.removeAttribute("srcset"),T.zoomedHd.removeAttribute("sizes"),T.zoomedHd.src=T.zoomed.getAttribute("data-zoom-src"),T.zoomedHd.onerror=function(){clearInterval(m),console.warn("Unable to reach the zoom image target "+T.zoomedHd.src),T.zoomedHd=null,r()};var m=setInterval((function(){T.zoomedHd.complete&&(clearInterval(m),T.zoomedHd.classList.add("medium-zoom-image--opened"),T.zoomedHd.addEventListener("click",E),document.body.appendChild(T.zoomedHd),r())}),10)}else if(T.original.hasAttribute("srcset")){T.zoomedHd=T.zoomed.cloneNode(),T.zoomedHd.removeAttribute("sizes");var c=T.zoomedHd.addEventListener("load",(function(){T.zoomedHd.removeEventListener("load",c),T.zoomedHd.classList.add("medium-zoom-image--opened"),T.zoomedHd.addEventListener("click",E),document.body.appendChild(T.zoomedHd),r()}))}else r()}}}))},E=function(){return new l((function(e){if(!A&&T.original){A=!0,document.body.classList.remove("medium-zoom--opened"),T.zoomed.style.transform="",T.zoomedHd&&(T.zoomedHd.style.transform=""),T.template&&(T.template.style.transition="opacity 150ms",T.template.style.opacity=0),T.original.dispatchEvent(a("medium-zoom:close",{detail:{zoom:j}})),T.zoomed.addEventListener("transitionend",(function t(){T.original.classList.remove("medium-zoom-image--hidden"),document.body.removeChild(T.zoomed),T.zoomedHd&&document.body.removeChild(T.zoomedHd),document.body.removeChild(N),T.zoomed.classList.remove("medium-zoom-image--opened"),T.template&&document.body.removeChild(T.template),A=!1,T.zoomed.removeEventListener("transitionend",t),T.original.dispatchEvent(a("medium-zoom:closed",{detail:{zoom:j}})),T.original=null,T.zoomed=null,T.zoomedHd=null,T.template=null,e(j)}))}else e(j)}))},w=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.target;return T.original?E():b({target:t})},L=function(){return S},H=function(){return O},C=function(){return T.original},O=[],x=[],A=!1,k=0,S=c,T={original:null,zoomed:null,zoomedHd:null,template:null};"[object Object]"===Object.prototype.toString.call(m)?S=m:(m||"string"==typeof m)&&v(m),S=e({margin:0,background:"#fff",scrollOffset:40,container:null,template:null},S);var N=r(S.background);document.addEventListener("click",u),document.addEventListener("keyup",f),document.addEventListener("scroll",s),window.addEventListener("resize",E);var j={open:b,close:E,toggle:w,update:p,clone:g,attach:v,detach:h,on:z,off:y,getOptions:L,getImages:H,getZoomedImage:C};return j}})); diff --git a/assets/sass/@primer/css/base/README.md b/assets/sass/@primer/css/base/README.md deleted file mode 100644 index 4961486..0000000 --- a/assets/sass/@primer/css/base/README.md +++ /dev/null @@ -1,25 +0,0 @@ ---- -bundle: "base" -generated: true ---- - -# Primer CSS: `base` bundle - -## Usage - -Primer CSS source files are written in [SCSS]. To include this Primer CSS module in your own build, ensure that your `node_modules` directory is listed in your Sass include paths, then import it with: - -```scss -@import "@primer/css/base/index.scss"; -``` - -## Build - -The `@primer/css` npm package includes a standalone CSS build of this module in `dist/base.css`. - -## License - -[MIT](https://github.com/primer/css/blob/master/LICENSE) © [GitHub](https://github.com/) - - -[scss]: https://sass-lang.com/documentation/syntax#scss diff --git a/assets/sass/@primer/css/base/base.scss b/assets/sass/@primer/css/base/base.scss deleted file mode 100644 index 381fa89..0000000 --- a/assets/sass/@primer/css/base/base.scss +++ /dev/null @@ -1,86 +0,0 @@ -// stylelint-disable selector-max-type -* { - box-sizing: border-box; -} - -input, -select, -textarea, -button { - font-family: inherit; - font-size: inherit; - line-height: inherit; -} - -body { - font-family: $body-font; - font-size: $body-font-size; - line-height: $body-line-height; - color: $text-gray-dark; - background-color: $bg-white; -} - -a { - color: $text-blue; - text-decoration: none; - - &:hover { - text-decoration: underline; - } -} - -b, -strong { - font-weight: $font-weight-bold; -} - -// Horizontal lines -// -// TODO-MDO: Remove `.rule` from everywhere and replace with `
`s -hr, -.rule { - height: 0; - // stylelint-disable-next-line primer/spacing - margin: 15px 0; - overflow: hidden; - background: transparent; - border: 0; - // stylelint-disable-next-line primer/borders - border-bottom: $border-width $border-style lighten($gray-300, 5%); - @include clearfix(); -} - -// -// Remove most spacing between table cells. -// - -table { - border-spacing: 0; - border-collapse: collapse; -} - -td, -th { - padding: 0; -} - -button { - cursor: pointer; - // Remove border radius added by Chrome macOS - border-radius: 0; -} - -// increase the selector specificity for [hidden] -// so that it always overrides utility classes (.d-block, etc.) -[hidden][hidden] { - display: none !important; -} - -details { - summary { cursor: pointer; } - - &:not([open]) { - // Set details content hidden by default for browsers that don't do this - > *:not(summary) { display: none !important; } - } -} diff --git a/assets/sass/@primer/css/base/index.scss b/assets/sass/@primer/css/base/index.scss deleted file mode 100644 index 2c7f8b9..0000000 --- a/assets/sass/@primer/css/base/index.scss +++ /dev/null @@ -1,6 +0,0 @@ -@import "../support/index.scss"; - -@import "./normalize.scss"; -@import "./base.scss"; -@import "./kbd.scss"; -@import "./typography-base.scss"; diff --git a/assets/sass/@primer/css/base/kbd.scss b/assets/sass/@primer/css/base/kbd.scss deleted file mode 100644 index 7ee4503..0000000 --- a/assets/sass/@primer/css/base/kbd.scss +++ /dev/null @@ -1,21 +0,0 @@ -// Keyboard shortcuts -// stylelint-disable selector-max-type - -kbd { - display: inline-block; - // stylelint-disable-next-line primer/spacing - padding: ($spacer-1 - 1) ($spacer-1 + 1); - font: 11px $mono-font; - // stylelint-disable-next-line primer/typography - line-height: 10px; - // stylelint-disable-next-line primer/colors - color: $gray-700; - vertical-align: middle; - background-color: $bg-gray-light; - // stylelint-disable-next-line primer/borders - border: $border-style $border-width $border-gray-dark; - border-bottom-color: $border-gray-dark; - border-radius: $border-radius; - // stylelint-disable-next-line primer/box-shadow - box-shadow: inset 0 -1px 0 $border-gray-dark; -} diff --git a/assets/sass/@primer/css/base/normalize.scss b/assets/sass/@primer/css/base/normalize.scss deleted file mode 100644 index 95931e7..0000000 --- a/assets/sass/@primer/css/base/normalize.scss +++ /dev/null @@ -1,421 +0,0 @@ -// stylelint-disable -/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */ - -/** - * 1. Change the default font family in all browsers (opinionated). - * 2. Prevent adjustments of font size after orientation changes in IE and iOS. - */ - -html { - font-family: sans-serif; /* 1 */ - -ms-text-size-adjust: 100%; /* 2 */ - -webkit-text-size-adjust: 100%; /* 2 */ -} - -/** - * Remove the margin in all browsers (opinionated). - */ - -body { - margin: 0; -} - -/* HTML5 display definitions - ========================================================================== */ - -/** - * Add the correct display in IE 9-. - * 1. Add the correct display in Edge, IE, and Firefox. - * 2. Add the correct display in IE. - */ - -article, -aside, -details, /* 1 */ -figcaption, -figure, -footer, -header, -main, /* 2 */ -menu, -nav, -section { /* 1 */ - display: block; -} - -summary { - display: list-item; -} - -/** - * Add the correct display in IE 9-. - */ - -audio, -canvas, -progress, -video { - display: inline-block; -} - -/** - * Add the correct display in iOS 4-7. - */ - -audio:not([controls]) { - display: none; - height: 0; -} - -/** - * Add the correct vertical alignment in Chrome, Firefox, and Opera. - */ - -progress { - vertical-align: baseline; -} - -/** - * Add the correct display in IE 10-. - * 1. Add the correct display in IE. - */ - -template, /* 1 */ -[hidden] { - display: none !important; -} - -/* Links - ========================================================================== */ - -/** - * Remove the gray background on active links in IE 10. - */ - -a { - background-color: transparent; /* 1 */ -} - -/** - * Remove the outline on focused links when they are also active or hovered - * in all browsers (opinionated). - */ - -a:active, -a:hover { - outline-width: 0; -} - -/* Text-level semantics - ========================================================================== */ - -/** - * 1. Remove the bottom border in Firefox 39-. - * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. - */ - -abbr[title] { - border-bottom: none; /* 1 */ - text-decoration: underline; /* 2 */ - text-decoration: underline dotted; /* 2 */ -} - -/** - * Prevent the duplicate application of `bolder` by the next rule in Safari 6. - */ - -b, -strong { - font-weight: inherit; -} - -/** - * Add the correct font weight in Chrome, Edge, and Safari. - */ - -b, -strong { - font-weight: bolder; -} - -/** - * Add the correct font style in Android 4.3-. - */ - -dfn { - font-style: italic; -} - -/** - * Correct the font size and margin on `h1` elements within `section` and - * `article` contexts in Chrome, Firefox, and Safari. - */ - -h1 { - font-size: 2em; - margin: 0.67em 0; -} - -/** - * Add the correct background and color in IE 9-. - */ - -mark { - background-color: #ff0; - color: $text-black; -} - -/** - * Add the correct font size in all browsers. - */ - -small { - font-size: 80%; -} - -/** - * Prevent `sub` and `sup` elements from affecting the line height in - * all browsers. - */ - -sub, -sup { - font-size: 75%; - line-height: 0; - position: relative; - vertical-align: baseline; -} - -sub { - bottom: -0.25em; -} - -sup { - top: -0.5em; -} - -/* Embedded content - ========================================================================== */ - -/** - * Remove the border on images inside links in IE 10-. - */ - -img { - border-style: none; -} - -/** - * Hide the overflow in IE. - */ - -svg:not(:root) { - overflow: hidden; -} - -/* Grouping content - ========================================================================== */ - -/** - * 1. Correct the inheritance and scaling of font size in all browsers. - * 2. Correct the odd `em` font sizing in all browsers. - */ - -code, -kbd, -pre, -samp { - font-family: monospace, monospace; /* 1 */ - font-size: 1em; /* 2 */ -} - -/** - * Add the correct margin in IE 8. - */ - -figure { - margin: 1em $spacer-6; -} - -/** - * 1. Add the correct box sizing in Firefox. - * 2. Show the overflow in Edge and IE. - */ - -hr { - box-sizing: content-box; /* 1 */ - height: 0; /* 1 */ - overflow: visible; /* 2 */ -} - -/* Forms - ========================================================================== */ - -/** - * 1. Change font properties to `inherit` in all browsers (opinionated). - * 2. Remove the margin in Firefox and Safari. - */ - -button, -input, -select, -textarea { - font: inherit; /* 1 */ - margin: 0; /* 2 */ -} - -/** - * Restore the font weight unset by the previous rule. - */ - -optgroup { - font-weight: $font-weight-bold; -} - -/** - * Show the overflow in IE. - * 1. Show the overflow in Edge. - */ - -button, -input { /* 1 */ - overflow: visible; -} - -/** - * Remove the inheritance of text transform in Edge, Firefox, and IE. - * 1. Remove the inheritance of text transform in Firefox. - */ - -button, -select { /* 1 */ - text-transform: none; -} - -/** - * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video` - * controls in Android 4. - * 2. Correct the inability to style clickable types in iOS and Safari. - */ - -button, -html [type="button"], /* 1 */ -[type="reset"], -[type="submit"] { - -webkit-appearance: button; /* 2 */ -} - -/** - * Remove the inner border and padding in Firefox. - */ - -button::-moz-focus-inner, -[type="button"]::-moz-focus-inner, -[type="reset"]::-moz-focus-inner, -[type="submit"]::-moz-focus-inner { - border-style: none; - padding: 0; -} - -/** - * Restore the focus styles unset by the previous rule. - */ - -button:-moz-focusring, -[type="button"]:-moz-focusring, -[type="reset"]:-moz-focusring, -[type="submit"]:-moz-focusring { - outline: 1px dotted ButtonText; -} - -/** - * Change the border, margin, and padding in all browsers (opinionated). - */ - -fieldset { - border: $border-width $border-style #c0c0c0; - margin: 0 2px; - padding: 0.35em 0.625em $em-spacer-6; -} - -/** - * 1. Correct the text wrapping in Edge and IE. - * 2. Correct the color inheritance from `fieldset` elements in IE. - * 3. Remove the padding so developers are not caught out when they zero out - * `fieldset` elements in all browsers. - */ - -legend { - box-sizing: border-box; /* 1 */ - color: inherit; /* 2 */ - display: table; /* 1 */ - max-width: 100%; /* 1 */ - padding: 0; /* 3 */ - white-space: normal; /* 1 */ -} - -/** - * Remove the default vertical scrollbar in IE. - */ - -textarea { - overflow: auto; -} - -/** - * 1. Add the correct box sizing in IE 10-. - * 2. Remove the padding in IE 10-. - */ - -[type="checkbox"], -[type="radio"] { - box-sizing: border-box; /* 1 */ - padding: 0; /* 2 */ -} - -/** - * Correct the cursor style of increment and decrement buttons in Chrome. - */ - -[type="number"]::-webkit-inner-spin-button, -[type="number"]::-webkit-outer-spin-button { - height: auto; -} - -/** - * 1. Correct the odd appearance in Chrome and Safari. - * 2. Correct the outline style in Safari. - */ - -[type="search"] { - -webkit-appearance: textfield; /* 1 */ - outline-offset: -2px; /* 2 */ -} - -/** - * Remove the inner padding and cancel buttons in Chrome and Safari on OS X. - */ - -[type="search"]::-webkit-search-cancel-button, -[type="search"]::-webkit-search-decoration { - -webkit-appearance: none; -} - -/** - * Correct the text style of placeholders in Chrome, Edge, and Safari. - */ - -::-webkit-input-placeholder { - color: inherit; - opacity: 0.54; -} - -/** - * 1. Correct the inability to style clickable types in iOS and Safari. - * 2. Change font properties to `inherit` in Safari. - */ - -::-webkit-file-upload-button { - -webkit-appearance: button; /* 1 */ - font: inherit; /* 2 */ -} diff --git a/assets/sass/@primer/css/base/typography-base.scss b/assets/sass/@primer/css/base/typography-base.scss deleted file mode 100644 index 83eb995..0000000 --- a/assets/sass/@primer/css/base/typography-base.scss +++ /dev/null @@ -1,88 +0,0 @@ -// Headings -// -------------------------------------------------- -// stylelint-disable selector-max-type -h1, -h2, -h3, -h4, -h5, -h6 { - margin-top: 0; - margin-bottom: 0; -} - -h1 { @include h1; } -h2 { @include h2; } -h3 { @include h3; } -h4 { @include h4; } -h5 { @include h5; } -h6 { @include h6; } - -// Body text -// -------------------------------------------------- - -p { - margin-top: 0; - // stylelint-disable-next-line primer/spacing - margin-bottom: 10px; -} - -small { - // stylelint-disable-next-line primer/typography - font-size: 90%; -} - -blockquote { - margin: 0; -} - -// Lists -// -------------------------------------------------- - -ul, -ol { - padding-left: 0; - margin-top: 0; - margin-bottom: 0; -} - -ol ol, -ul ol { - list-style-type: lower-roman; -} - -ul ul ol, -ul ol ol, -ol ul ol, -ol ol ol { - list-style-type: lower-alpha; -} - -dd { - margin-left: 0; -} - -// Code -// -------------------------------------------------- - -tt, -code { - font-family: $mono-font; - font-size: $font-size-small; -} - -pre { - margin-top: 0; - margin-bottom: 0; - font-family: $mono-font; - font-size: $font-size-small; -} - -// Octicons -// -------------------------------------------------- - -// Move this over here as a temporary override to the octicons source repo -// instead of updating that upstream. -.octicon { - vertical-align: text-bottom; -} diff --git a/assets/sass/@primer/css/layout/README.md b/assets/sass/@primer/css/layout/README.md deleted file mode 100644 index 3d078ce..0000000 --- a/assets/sass/@primer/css/layout/README.md +++ /dev/null @@ -1,25 +0,0 @@ ---- -bundle: "layout" -generated: true ---- - -# Primer CSS: `layout` bundle - -## Usage - -Primer CSS source files are written in [SCSS]. To include this Primer CSS module in your own build, ensure that your `node_modules` directory is listed in your Sass include paths, then import it with: - -```scss -@import "@primer/css/layout/index.scss"; -``` - -## Build - -The `@primer/css` npm package includes a standalone CSS build of this module in `dist/layout.css`. - -## License - -[MIT](https://github.com/primer/css/blob/master/LICENSE) © [GitHub](https://github.com/) - - -[scss]: https://sass-lang.com/documentation/syntax#scss diff --git a/assets/sass/@primer/css/layout/container.scss b/assets/sass/@primer/css/layout/container.scss deleted file mode 100644 index 7e70a6b..0000000 --- a/assets/sass/@primer/css/layout/container.scss +++ /dev/null @@ -1,30 +0,0 @@ -// Fixed-width, centered column for site content. -// Handy container styles that match our breakpoints - -// 544px -.container-sm { - max-width: $width-sm; - margin-right: auto; - margin-left: auto; -} - -// 768px -.container-md { - max-width: $container-md; - margin-right: auto; - margin-left: auto; -} - -// 1004px - this matches the current fixed width: 980px + padding: px-3 -.container-lg { - max-width: $container-lg; - margin-right: auto; - margin-left: auto; -} - -// 1280px -.container-xl { - max-width: $container-xl; - margin-right: auto; - margin-left: auto; -} diff --git a/assets/sass/@primer/css/layout/grid-offset.scss b/assets/sass/@primer/css/layout/grid-offset.scss deleted file mode 100644 index bc2115d..0000000 --- a/assets/sass/@primer/css/layout/grid-offset.scss +++ /dev/null @@ -1,19 +0,0 @@ -// Optional offset options to work with grid.scss - -// Offset Columns - -@each $breakpoint, $variant in $responsive-variants { - @include breakpoint($breakpoint) { - .offset#{$variant}-1 { margin-left: (1 / 12 * 100%) !important; } - .offset#{$variant}-2 { margin-left: (2 / 12 * 100%) !important; } - .offset#{$variant}-3 { margin-left: (3 / 12 * 100%) !important; } - .offset#{$variant}-4 { margin-left: (4 / 12 * 100%) !important; } - .offset#{$variant}-5 { margin-left: (5 / 12 * 100%) !important; } - .offset#{$variant}-6 { margin-left: (6 / 12 * 100%) !important; } - .offset#{$variant}-7 { margin-left: (7 / 12 * 100%) !important; } - .offset#{$variant}-8 { margin-left: (8 / 12 * 100%) !important; } - .offset#{$variant}-9 { margin-left: (9 / 12 * 100%) !important; } - .offset#{$variant}-10 { margin-left: (10 / 12 * 100%) !important; } - .offset#{$variant}-11 { margin-left: (11 / 12 * 100%) !important; } - } -} diff --git a/assets/sass/@primer/css/layout/grid.scss b/assets/sass/@primer/css/layout/grid.scss deleted file mode 100644 index 5126c6b..0000000 --- a/assets/sass/@primer/css/layout/grid.scss +++ /dev/null @@ -1,64 +0,0 @@ -// GRID - -// Columns -.col-1 { width: (1 / 12 * 100%); } -.col-2 { width: (2 / 12 * 100%); } -.col-3 { width: (3 / 12 * 100%); } -.col-4 { width: (4 / 12 * 100%); } -.col-5 { width: (5 / 12 * 100%); } -.col-6 { width: (6 / 12 * 100%); } -.col-7 { width: (7 / 12 * 100%); } -.col-8 { width: (8 / 12 * 100%); } -.col-9 { width: (9 / 12 * 100%); } -.col-10 { width: (10 / 12 * 100%); } -.col-11 { width: (11 / 12 * 100%); } -.col-12 { width: 100%; } - -@each $breakpoint in map-keys($breakpoints) { - @include breakpoint($breakpoint) { - .col-#{$breakpoint}-1 { width: ( 1 / 12 * 100%); } - .col-#{$breakpoint}-2 { width: ( 2 / 12 * 100%); } - .col-#{$breakpoint}-3 { width: ( 3 / 12 * 100%); } - .col-#{$breakpoint}-4 { width: ( 4 / 12 * 100%); } - .col-#{$breakpoint}-5 { width: ( 5 / 12 * 100%); } - .col-#{$breakpoint}-6 { width: ( 6 / 12 * 100%); } - .col-#{$breakpoint}-7 { width: ( 7 / 12 * 100%); } - .col-#{$breakpoint}-8 { width: ( 8 / 12 * 100%); } - .col-#{$breakpoint}-9 { width: ( 9 / 12 * 100%); } - .col-#{$breakpoint}-10 { width: ( 10 / 12 * 100%); } - .col-#{$breakpoint}-11 { width: ( 11 / 12 * 100%); } - .col-#{$breakpoint}-12 { width: 100%; } - } -} - -// Gutters -// Apply padding and a negative margin to the outside of the container -@mixin gutters ($gutter-width: $spacer-3) { - margin-right: -$gutter-width; - margin-left: -$gutter-width; - - > [class*="col-"] { - padding-right: $gutter-width !important; - padding-left: $gutter-width !important; - } -} - -.gutter { - @include gutters($spacer-3); -} - -.gutter-condensed { - @include gutters($spacer-2); -} - -.gutter-spacious { - @include gutters($spacer-4); -} - -@each $breakpoint in map-keys($breakpoints) { - @include breakpoint($breakpoint) { - .gutter-#{$breakpoint} { @include gutters($spacer-3); } - .gutter-#{$breakpoint}-condensed { @include gutters($spacer-2); } - .gutter-#{$breakpoint}-spacious { @include gutters($spacer-4); } - } -} diff --git a/assets/sass/@primer/css/layout/index.scss b/assets/sass/@primer/css/layout/index.scss deleted file mode 100644 index 5d1aa33..0000000 --- a/assets/sass/@primer/css/layout/index.scss +++ /dev/null @@ -1,4 +0,0 @@ -@import "../support/index.scss"; -@import "./container.scss"; -@import "./grid.scss"; -@import "./grid-offset.scss"; diff --git a/assets/sass/@primer/css/markdown/README.md b/assets/sass/@primer/css/markdown/README.md deleted file mode 100644 index 6097f4b..0000000 --- a/assets/sass/@primer/css/markdown/README.md +++ /dev/null @@ -1,25 +0,0 @@ ---- -bundle: "markdown" -generated: true ---- - -# Primer CSS: `markdown` bundle - -## Usage - -Primer CSS source files are written in [SCSS]. To include this Primer CSS module in your own build, ensure that your `node_modules` directory is listed in your Sass include paths, then import it with: - -```scss -@import "@primer/css/markdown/index.scss"; -``` - -## Build - -The `@primer/css` npm package includes a standalone CSS build of this module in `dist/markdown.css`. - -## License - -[MIT](https://github.com/primer/css/blob/master/LICENSE) © [GitHub](https://github.com/) - - -[scss]: https://sass-lang.com/documentation/syntax#scss diff --git a/assets/sass/@primer/css/markdown/blob-csv.scss b/assets/sass/@primer/css/markdown/blob-csv.scss deleted file mode 100644 index e97e447..0000000 --- a/assets/sass/@primer/css/markdown/blob-csv.scss +++ /dev/null @@ -1,29 +0,0 @@ -// stylelint-disable selector-max-type -.markdown-body .csv-data { - td, - th { - // stylelint-disable-next-line primer/spacing - padding: 5px; - overflow: hidden; - font-size: $font-size-small; - line-height: $lh-condensed-ultra; - text-align: left; - white-space: nowrap; - } - - .blob-num { - // stylelint-disable-next-line primer/spacing - padding: 10px $spacer-2 9px; - text-align: right; - background: $bg-white; - border: 0; - } - - tr { border-top: 0; } - - th { - font-weight: $font-weight-bold; - background: $bg-gray; - border-top: 0; - } -} diff --git a/assets/sass/@primer/css/markdown/code.scss b/assets/sass/@primer/css/markdown/code.scss deleted file mode 100644 index fbd2d16..0000000 --- a/assets/sass/@primer/css/markdown/code.scss +++ /dev/null @@ -1,69 +0,0 @@ -// stylelint-disable selector-max-type -.markdown-body { - // Inline code snippets - code, - tt { - // stylelint-disable-next-line primer/spacing - padding: 0.2em 0.4em; - margin: 0; - // stylelint-disable-next-line primer/typography - font-size: 85%; - // stylelint-disable-next-line primer/colors - background-color: rgba($black, 0.05); - border-radius: $border-radius; - - br { display: none; } - } - - del code { text-decoration: inherit; } - - pre { - word-wrap: normal; - - // Code tags within code blocks (s) - > code { - padding: 0; - margin: 0; - // stylelint-disable-next-line primer/typography - font-size: 100%; - word-break: normal; - white-space: pre; - background: transparent; - border: 0; - } - } - - .highlight { - margin-bottom: $spacer-3; - - pre { - margin-bottom: 0; - word-break: normal; - } - } - - .highlight pre, - pre { - padding: $spacer-3; - overflow: auto; - // stylelint-disable-next-line primer/typography - font-size: 85%; - // stylelint-disable-next-line primer/typography - line-height: 1.45; - background-color: $bg-gray; - border-radius: $border-radius; - } - - pre code, - pre tt { - display: inline; - max-width: auto; - padding: 0; - margin: 0; - overflow: visible; - line-height: inherit; - word-wrap: normal; - background-color: transparent; - border: 0; - } -} diff --git a/assets/sass/@primer/css/markdown/headings.scss b/assets/sass/@primer/css/markdown/headings.scss deleted file mode 100644 index 26347bb..0000000 --- a/assets/sass/@primer/css/markdown/headings.scss +++ /dev/null @@ -1,72 +0,0 @@ -// Needs refactoring -// stylelint-disable selector-max-compound-selectors, selector-max-specificity -// stylelint-disable selector-max-type -.markdown-body { - // Headings - h1, - h2, - h3, - h4, - h5, - h6 { - margin-top: $spacer-4; - margin-bottom: $spacer-3; - font-weight: $font-weight-bold; - line-height: $lh-condensed; - - .octicon-link { - color: $text-black; - vertical-align: middle; - visibility: hidden; - } - - &:hover .anchor { - text-decoration: none; - - .octicon-link { - visibility: visible; - } - } - - tt, - code { - font-size: inherit; - } - } - - h1 { - // stylelint-disable-next-line primer/spacing - padding-bottom: 0.3em; - // stylelint-disable-next-line primer/typography - font-size: 2em; - border-bottom: $border-width $border-style $border-gray-light; - } - - h2 { - // stylelint-disable-next-line primer/spacing - padding-bottom: 0.3em; - // stylelint-disable-next-line primer/typography - font-size: 1.5em; - border-bottom: $border-width $border-style $border-gray-light; - } - - h3 { - // stylelint-disable-next-line primer/typography - font-size: 1.25em; - } - - h4 { - font-size: 1em; - } - - h5 { - // stylelint-disable-next-line primer/typography - font-size: 0.875em; - } - - h6 { - // stylelint-disable-next-line primer/typography - font-size: 0.85em; - color: $text-gray-light; - } -} diff --git a/assets/sass/@primer/css/markdown/images.scss b/assets/sass/@primer/css/markdown/images.scss deleted file mode 100644 index caea502..0000000 --- a/assets/sass/@primer/css/markdown/images.scss +++ /dev/null @@ -1,131 +0,0 @@ -// Need to target base styles -// stylelint-disable selector-max-compound-selectors, selector-no-qualifying-type -// stylelint-disable selector-max-type -.markdown-body { - // Images & Stuff - img { - max-width: 100%; - // because we put padding on the images to hide header lines, and some people - // specify the width of their images in their markdown. - box-sizing: content-box; - background-color: $bg-white; - - &[align=right] { - // stylelint-disable-next-line primer/spacing - padding-left: 20px; - } - - &[align=left] { - // stylelint-disable-next-line primer/spacing - padding-right: 20px; - } - } - - .emoji { - max-width: none; - vertical-align: text-top; - // Override `` styles so Emjois don't clash with zebra striping in our tables - background-color: transparent; - } - - // Gollum Image Tags - - // Framed - span.frame { - display: block; - overflow: hidden; - - > span { - display: block; - float: left; - width: auto; - // stylelint-disable-next-line primer/spacing - padding: 7px; - // stylelint-disable-next-line primer/spacing - margin: 13px 0 0; - overflow: hidden; - // stylelint-disable-next-line primer/borders - border: $border-width $border-style lighten($gray-300, 5%); - } - - span img { - display: block; - float: left; - } - - span span { - display: block; - // stylelint-disable-next-line primer/spacing - padding: 5px 0 0; - clear: both; - color: $text-gray-dark; - } - } - - span.align-center { - display: block; - overflow: hidden; - clear: both; - - > span { - display: block; - // stylelint-disable-next-line primer/spacing - margin: 13px auto 0; - overflow: hidden; - text-align: center; - } - - span img { - margin: 0 auto; - text-align: center; - } - } - - span.align-right { - display: block; - overflow: hidden; - clear: both; - - > span { - display: block; - // stylelint-disable-next-line primer/spacing - margin: 13px 0 0; - overflow: hidden; - text-align: right; - } - - span img { - margin: 0; - text-align: right; - } - } - - span.float-left { - display: block; - float: left; - // stylelint-disable-next-line primer/spacing - margin-right: 13px; - overflow: hidden; - - span { - // stylelint-disable-next-line primer/spacing - margin: 13px 0 0; - } - } - - span.float-right { - display: block; - float: right; - // stylelint-disable-next-line primer/spacing - margin-left: 13px; - overflow: hidden; - - > span { - display: block; - // stylelint-disable-next-line primer/spacing - margin: 13px auto 0; - overflow: hidden; - text-align: right; - } - } -} diff --git a/assets/sass/@primer/css/markdown/index.scss b/assets/sass/@primer/css/markdown/index.scss deleted file mode 100644 index b2e8d3d..0000000 --- a/assets/sass/@primer/css/markdown/index.scss +++ /dev/null @@ -1,8 +0,0 @@ -@import "../support/index.scss"; -@import "./markdown-body.scss"; -@import "./headings.scss"; -@import "./lists.scss"; -@import "./tables.scss"; -@import "./images.scss"; -@import "./code.scss"; -@import "./blob-csv.scss"; diff --git a/assets/sass/@primer/css/markdown/lists.scss b/assets/sass/@primer/css/markdown/lists.scss deleted file mode 100644 index b680faf..0000000 --- a/assets/sass/@primer/css/markdown/lists.scss +++ /dev/null @@ -1,77 +0,0 @@ -// Base styles -// stylelint-disable selector-no-qualifying-type -// stylelint-disable selector-max-type -.markdown-body { - - // Lists, Blockquotes & Such - ul, - ol { - // stylelint-disable-next-line primer/spacing - padding-left: 2em; - - &.no-list { - padding: 0; - list-style-type: none; - } - } - - // Did someone complain about list spacing? Encourage them - // to create the spacing with their markdown formatting. - // List behavior should be controled by the markup, not the css. - // - // For lists with padding between items, use blank - // lines between items. This will generate paragraphs with - // padding to space things out. - // - // - item - // - // - item - // - // - item - // - // For list without padding, don't use blank lines. - // - // - item - // - item - // - item - // - // Modifying the css to emulate these behaviors merely brakes - // one case in the process of solving another. Don't change - // this unless it's really really a bug. - ul ul, - ul ol, - ol ol, - ol ul { - margin-top: 0; - margin-bottom: 0; - } - - li { - word-wrap: break-all; - } - - li > p { - margin-top: $spacer-3; - } - - li + li { - margin-top: $em-spacer-3; - } - - dl { - padding: 0; - - dt { - padding: 0; - margin-top: $spacer-3; - font-size: 1em; - font-style: italic; - font-weight: $font-weight-bold; - } - - dd { - padding: 0 $spacer-3; - margin-bottom: $spacer-3; - } - } -} diff --git a/assets/sass/@primer/css/markdown/markdown-body.scss b/assets/sass/@primer/css/markdown/markdown-body.scss deleted file mode 100644 index 6581f19..0000000 --- a/assets/sass/@primer/css/markdown/markdown-body.scss +++ /dev/null @@ -1,99 +0,0 @@ -// All of our block level items should have the same margin -// stylelint-disable selector-max-type - -// This is styling for generic markdownized text. Anything you put in a -// container with .markdown-body on it should render generally well. It also -// includes some GitHub Flavored Markdown specific styling (like @mentions) -.markdown-body { - font-family: $body-font; - font-size: $h4-size; - line-height: $body-line-height; - word-wrap: break-word; - - @import "../base/kbd.scss"; // adds support for keyboard shortcuts - - // Clearfix on the markdown body - &::before { - display: table; - content: ""; - } - - &::after { - display: table; - clear: both; - content: ""; - } - - > *:first-child { - margin-top: 0 !important; - } - - > *:last-child { - margin-bottom: 0 !important; - } - - // Anchors like . These sometimes end up wrapped around - // text when users mistakenly forget to close the tag or use self-closing tag - // syntax. We don't want them to appear like links. - // FIXME: a:not(:link):not(:visited) would be a little clearer here (and - // possibly faster to match), but it breaks styling of elements due - // to https://bugs.webkit.org/show_bug.cgi?id=142737. - a:not([href]) { - color: inherit; - text-decoration: none; - } - - // Link Colors - .absent { - color: $text-red; - } - - .anchor { - float: left; - padding-right: $spacer-1; - // stylelint-disable-next-line primer/spacing - margin-left: -20px; - line-height: $lh-condensed-ultra; - - &:focus { - outline: none; - } - } - - p, - blockquote, - ul, - ol, - dl, - table, - pre, - details { - margin-top: 0; - margin-bottom: $spacer-3; - } - - hr { - height: $em-spacer-3; - padding: 0; - margin: $spacer-4 0; - // stylelint-disable-next-line primer/colors - background-color: $gray-200; - border: 0; - } - - blockquote { - // stylelint-disable-next-line primer/spacing - padding: 0 1em; - color: $text-gray-light; - // stylelint-disable-next-line primer/borders - border-left: 0.25em $border-style lighten($gray-300, 5%); - - > :first-child { - margin-top: 0; - } - - > :last-child { - margin-bottom: 0; - } - } -} diff --git a/assets/sass/@primer/css/markdown/tables.scss b/assets/sass/@primer/css/markdown/tables.scss deleted file mode 100644 index 9d73d17..0000000 --- a/assets/sass/@primer/css/markdown/tables.scss +++ /dev/null @@ -1,36 +0,0 @@ -// Needs refactoring -// stylelint-disable selector-max-type -.markdown-body { - // Tables - table { - display: block; - width: 100%; - overflow: auto; - - th { - font-weight: $font-weight-bold; - } - - th, - td { - // stylelint-disable-next-line primer/spacing - padding: 6px 13px; - // stylelint-disable-next-line primer/borders - border: $border-width $border-style lighten($gray-300, 5%); - } - - tr { - background-color: $bg-white; - // stylelint-disable-next-line primer/borders - border-top: $border-width $border-style darken($gray-300, 4%); - - &:nth-child(2n) { - background-color: $bg-gray; - } - } - - img { - background-color: transparent; - } - } -} diff --git a/assets/sass/@primer/css/support/README.md b/assets/sass/@primer/css/support/README.md deleted file mode 100644 index 7fa2b21..0000000 --- a/assets/sass/@primer/css/support/README.md +++ /dev/null @@ -1,25 +0,0 @@ ---- -bundle: "support" -generated: true ---- - -# Primer CSS: `support` bundle - -## Usage - -Primer CSS source files are written in [SCSS]. To include this Primer CSS module in your own build, ensure that your `node_modules` directory is listed in your Sass include paths, then import it with: - -```scss -@import "@primer/css/support/index.scss"; -``` - -## Build - -The `@primer/css` npm package includes a standalone CSS build of this module in `dist/support.css`. - -## License - -[MIT](https://github.com/primer/css/blob/master/LICENSE) © [GitHub](https://github.com/) - - -[scss]: https://sass-lang.com/documentation/syntax#scss diff --git a/assets/sass/@primer/css/support/index.scss b/assets/sass/@primer/css/support/index.scss deleted file mode 100644 index 93f9449..0000000 --- a/assets/sass/@primer/css/support/index.scss +++ /dev/null @@ -1,11 +0,0 @@ -// variables -@import "./variables/typography.scss"; -@import "./variables/colors.scss"; -@import "./variables/layout.scss"; -@import "./variables/misc.scss"; - -// mixins -@import "./mixins/typography.scss"; -@import "./mixins/layout.scss"; -@import "./mixins/buttons.scss"; -@import "./mixins/misc.scss"; diff --git a/assets/sass/@primer/css/support/mixins/buttons.scss b/assets/sass/@primer/css/support/mixins/buttons.scss deleted file mode 100644 index 4b6cbb3..0000000 --- a/assets/sass/@primer/css/support/mixins/buttons.scss +++ /dev/null @@ -1,167 +0,0 @@ -// Button color generator for primary and themed buttons - -// New button hotness -@mixin btn-solid($color, $bg, $bg2) { - color: $color; - background-color: $bg2; - background-image: linear-gradient(-180deg, $bg 0%, $bg2 90%); - - @if $bg == $gray-000 { - &:focus, - &.focus { - box-shadow: $btn-input-focus-shadow; - } - - &:hover, - &.hover { - background-color: darken($bg2, 3%); - background-image: linear-gradient(-180deg, darken($bg, 3%) 0%, darken($bg2, 3%) 90%); - background-position: 0 -$em-spacer-5; - border-color: rgba($black, 0.35); - } - - &:active, - &.selected, - &[aria-selected=true], - [open] > & { - background-color: darken(desaturate($bg, 10%), 6%); - background-image: none; - border-color: rgba($black, 0.35); // repeat to avoid shift on click-drag off of button - box-shadow: $btn-active-shadow; - } - - &:disabled, - &.disabled, - &[aria-disabled=true] { - color: rgba($color, 0.4); - background-color: $bg2; - background-image: none; - border-color: $border-color-button; - box-shadow: none; - } - - } - @else { - &:focus, - &.focus { - box-shadow: 0 0 0 0.2em rgba($bg, 0.4); - } - - &:hover, - &.hover { - background-color: darken($bg2, 2%); - background-image: linear-gradient(-180deg, darken($bg, 2%) 0%, darken($bg2, 2%) 90%); - background-position: 0 -$em-spacer-5; - border-color: $black-fade-50; - } - - &:active, - &.selected, - &[aria-selected=true], - [open] > & { - background-color: darken(mix($bg, $bg2, 50%), 7%); - background-image: none; - border-color: $black-fade-50; // repeat to avoid shift on click-drag off of button - box-shadow: $btn-active-shadow; - } - - &:disabled, - &.disabled, - &[aria-disabled=true] { - color: rgba($color, 0.75); - background-color: mix($bg2, $white, 50%); - background-image: none; - border-color: $border-color-button; - box-shadow: none; - } - - .Counter { - color: darken($bg, 8%); - background-color: $white; - } - } -} - -// Inverse button hover style -@mixin btn-inverse($color, $bg, $bg2) { - color: $color; - background-color: $bg; - background-image: linear-gradient(-180deg, $bg 0%, $bg2 90%); - - &:focus { - box-shadow: 0 0 0 0.2em rgba($color, 0.4); - } - - &:hover { - color: $text-white; - background-color: $color; - background-image: linear-gradient(-180deg, lighten($color, 10%) 0%, $color 90%); - border-color: $black-fade-50; - - .Counter { - color: $text-white; - } - } - - &:active, - &.selected, - &[aria-selected=true], - [open] > & { - color: $text-white; - background-color: darken($color, 5%); - background-image: none; - border-color: $black-fade-50; - box-shadow: $btn-active-shadow; - } - - &:disabled, - &.disabled, - &[aria-disabled=true] { - color: rgba($color, 0.4); - background-color: $bg2; - background-image: none; - border-color: $border-color-button; - box-shadow: none; - } -} - -// Outline color generator for btn-outline to make the hover state inverse the text and bg colors. -@mixin btn-outline($text-color: $text-blue, $bg-color: $bg-white) { - color: $text-color; - background-color: $bg-color; - background-image: none; - - .Counter { - background-color: rgba($black, 0.07); - } - - &:hover, - &:active, - &.selected, - &[aria-selected=true], - [open] > & { - color: $bg-color; - background-color: $text-color; - background-image: none; - border-color: $text-color; - - .Counter { - color: $text-color; - background-color: $bg-color; - } - } - - &:focus { - border-color: $text-color; - box-shadow: 0 0 0 0.2em rgba($text-color, 0.4); - } - - &:disabled, - &.disabled, - &[aria-disabled=true] { - color: $black-fade-30; - background-color: $bg-white; - border-color: $black-fade-15; - box-shadow: none; - } -} diff --git a/assets/sass/@primer/css/support/mixins/layout.scss b/assets/sass/@primer/css/support/mixins/layout.scss deleted file mode 100644 index a6d30cf..0000000 --- a/assets/sass/@primer/css/support/mixins/layout.scss +++ /dev/null @@ -1,58 +0,0 @@ -// Responsive media queries - -@mixin breakpoint($breakpoint) { - @if $breakpoint == "" { - @content; - } - - @else { - // Retrieves the value from the key - $value: map-get($breakpoints, $breakpoint); - - // If the key exists in the map - @if $value != null { - // Prints a media query based on the value - @media (min-width: $value) { - @content; - } - } - - // If the key doesn't exist in the map - @else { - @warn "Unfortunately, no value could be retrieved from `#{$breakpoint}`. " - + "Please make sure it is defined in `$breakpoints` map."; - } - } -} - -// Retina media query - -@mixin retina-media-query { - @media - only screen and (-webkit-min-device-pixel-ratio: 2), - only screen and (min--moz-device-pixel-ratio: 2), - only screen and (-moz-min-device-pixel-ratio: 2), - only screen and (-o-min-device-pixel-ratio: 2/1), - only screen and (min-device-pixel-ratio: 2), - only screen and (min-resolution: 192dpi), - only screen and (min-resolution: 2dppx) { - @content; - } -} - -// Clearfix -// -// Clears floats via mixin. - -@mixin clearfix { - &::before { - display: table; - content: ""; - } - - &::after { - display: table; - clear: both; - content: ""; - } -} diff --git a/assets/sass/@primer/css/support/mixins/misc.scss b/assets/sass/@primer/css/support/mixins/misc.scss deleted file mode 100644 index ebdd32d..0000000 --- a/assets/sass/@primer/css/support/mixins/misc.scss +++ /dev/null @@ -1,29 +0,0 @@ -// Generate a two-color caret for any element. -@mixin double-caret($foreground: $text-white, $background: lighten($gray-300, 5%)) { - &::after, - &::before { - position: absolute; - top: 11px; - right: 100%; - left: -16px; - display: block; - width: 0; - height: 0; - pointer-events: none; - content: " "; - border-color: transparent; - border-style: solid solid outset; - } - - &::after { - margin-top: 1px; - margin-left: 2px; - border-width: 7px; - border-right-color: $foreground; - } - - &::before { - border-width: 8px; - border-right-color: $background; - } -} diff --git a/assets/sass/@primer/css/support/mixins/typography.scss b/assets/sass/@primer/css/support/mixins/typography.scss deleted file mode 100644 index 23ec0e3..0000000 --- a/assets/sass/@primer/css/support/mixins/typography.scss +++ /dev/null @@ -1,84 +0,0 @@ -// Text hiding for image based text replacement. -// Higher performance than -9999px because it only renders -// the size of the actual text, not a full 9999px box. -@mixin hide-text() { - overflow: hidden; - text-indent: 100%; - white-space: nowrap; -} - -// Heading mixins for use within components -// These match heading utilities in utilities/typography -@mixin h1 { - font-size: $h1-size; - font-weight: $font-weight-bold; -} - -@mixin h2 { - font-size: $h2-size; - font-weight: $font-weight-bold; -} - -@mixin h3 { - font-size: $h3-size; - font-weight: $font-weight-bold; -} - -@mixin h4 { - font-size: $h4-size; - font-weight: $font-weight-bold; -} - -@mixin h5 { - font-size: $h5-size; - font-weight: $font-weight-bold; -} - -@mixin h6 { - font-size: $h6-size; - font-weight: $font-weight-bold; -} - -// Responsive heading mixins -// There are no responsive mixins for h4-h6 because they are small -// and don't need to be smaller on mobile. -@mixin f1-responsive { - font-size: $h1-size-mobile; - - // 32px on desktop - @include breakpoint(md) { font-size: $h1-size; } - -} - -@mixin f2-responsive { - font-size: $h2-size-mobile; - - // 24px on desktop - @include breakpoint(md) { font-size: $h2-size; } -} - -@mixin f3-responsive { - font-size: $h3-size-mobile; - - // 20px on desktop - @include breakpoint(md) { font-size: $h3-size; } - -} - -// These use the mixins from above for responsive heading sizes. -// The following mixins can be used where it's convenient or necessary to -// couple the responsive font-size with the font-weight. -@mixin h1-responsive { - @include f1-responsive; - font-weight: $font-weight-bold; -} - -@mixin h2-responsive { - @include f2-responsive; - font-weight: $font-weight-bold; -} - -@mixin h3-responsive { - @include f3-responsive; - font-weight: $font-weight-bold; -} diff --git a/assets/sass/@primer/css/support/variables/color-system.scss b/assets/sass/@primer/css/support/variables/color-system.scss deleted file mode 100644 index febc58b..0000000 --- a/assets/sass/@primer/css/support/variables/color-system.scss +++ /dev/null @@ -1,243 +0,0 @@ -// Black based on same hue as $gray-900 -$black: #1b1f23 !default; -$white: #fff !default; - -// -// -// -------- Grays -------- -$gray-000: #fafbfc !default; -$gray-100: #f6f8fa !default; -$gray-200: #e1e4e8 !default; -$gray-300: #d1d5da !default; -$gray-400: #959da5 !default; -$gray-500: #6a737d !default; -$gray-600: #586069 !default; -$gray-700: #444d56 !default; -$gray-800: #2f363d !default; -$gray-900: #24292e !default; // body font color - -// -------- Blue -------- -$blue-000: #f1f8ff !default; -$blue-100: #dbedff !default; -$blue-200: #c8e1ff !default; -$blue-300: #79b8ff !default; -$blue-400: #2188ff !default; -$blue-500: #0366d6 !default; // Default: Passes AA with #fff -$blue-600: #005cc5 !default; -$blue-700: #044289 !default; -$blue-800: #032f62 !default; -$blue-900: #05264c !default; // Passes with 1/2/300 blues - -// -------- Green -------- -$green-000: #f0fff4 !default; -$green-100: #dcffe4 !default; -$green-200: #bef5cb !default; -$green-300: #85e89d !default; -$green-400: #34d058 !default; -$green-500: #28a745 !default; // Default. passes AA Large -$green-600: #22863a !default; // Text green, passes AA on #fff -$green-700: #176f2c !default; -$green-800: #165c26 !default; -$green-900: #144620 !default; - -// -------- Yellow -------- -$yellow-000: #fffdef !default; -$yellow-100: #fffbdd !default; -$yellow-200: #fff5b1 !default; -$yellow-300: #ffea7f !default; -$yellow-400: #ffdf5d !default; -$yellow-500: #ffd33d !default; -$yellow-600: #f9c513 !default; -$yellow-700: #dbab09 !default; -$yellow-800: #b08800 !default; -$yellow-900: #735c0f !default; - -// -------- Orange -------- -$orange-000: #fff8f2 !default; -$orange-100: #ffebda !default; -$orange-200: #ffd1ac !default; -$orange-300: #ffab70 !default; -$orange-400: #fb8532 !default; -$orange-500: #f66a0a !default; // Default. passes AA Large with #fff -$orange-600: #e36209 !default; -$orange-700: #d15704 !default; -$orange-800: #c24e00 !default; -$orange-900: #a04100 !default; - -// -------- Red -------- -$red-000: #ffeef0 !default; -$red-100: #ffdce0 !default; -$red-200: #fdaeb7 !default; -$red-300: #f97583 !default; -$red-400: #ea4a5a !default; -$red-500: #d73a49 !default; // Default. passes AA -$red-600: #cb2431 !default; -$red-700: #b31d28 !default; -$red-800: #9e1c23 !default; -$red-900: #86181d !default; - -// -------- Purple -------- -$purple-000: #f5f0ff !default; -$purple-100: #e6dcfd !default; -$purple-200: #d1bcf9 !default; -$purple-300: #b392f0 !default; -$purple-400: #8a63d2 !default; -$purple-500: #6f42c1 !default; // passes AA with #fff -$purple-600: #5a32a3 !default; -$purple-700: #4c2889 !default; -$purple-800: #3a1d6e !default; -$purple-900: #29134e !default; - -// -------- Pink -------- -$pink-000: #ffeef8 !default; -$pink-100: #fedbf0 !default; -$pink-200: #f9b3dd !default; -$pink-300: #f692ce !default; -$pink-400: #ec6cb9 !default; -$pink-500: #ea4aaa !default; -$pink-600: #d03592 !default; -$pink-700: #b93a86 !default; -$pink-800: #99306f !default; -$pink-900: #6d224f !default; - -// -------- Fades -------- -$black-fade-15: rgba($black, 0.15) !default; -$black-fade-30: rgba($black, 0.3) !default; -$black-fade-50: rgba($black, 0.5) !default; -$black-fade-70: rgba($black, 0.7) !default; -$black-fade-85: rgba($black, 0.85) !default; - -$white-fade-15: rgba($white, 0.15) !default; -$white-fade-30: rgba($white, 0.3) !default; -$white-fade-50: rgba($white, 0.5) !default; -$white-fade-70: rgba($white, 0.7) !default; -$white-fade-85: rgba($white, 0.85) !default; - -// -------- Color defaults -------- -$red: $red-500 !default; -$purple: $purple-500 !default; -$blue: $blue-500 !default; -$green: $green-500 !default; -$yellow: $yellow-500 !default; -$orange: $orange-500 !default; - -$gray-dark: $gray-900 !default; -$gray-light: $gray-400 !default; -$gray: $gray-500 !default; - -// -------- Color gradient maps -------- - -$grays: ( - 0: $gray-000, - 1: $gray-100, - 2: $gray-200, - 3: $gray-300, - 4: $gray-400, - 5: $gray-500, - 6: $gray-600, - 7: $gray-700, - 8: $gray-800, - 9: $gray-900, -) !default; - -$blues: ( - 0: $blue-000, - 1: $blue-100, - 2: $blue-200, - 3: $blue-300, - 4: $blue-400, - 5: $blue-500, - 6: $blue-600, - 7: $blue-700, - 8: $blue-800, - 9: $blue-900, -) !default; - -$greens: ( - 0: $green-000, - 1: $green-100, - 2: $green-200, - 3: $green-300, - 4: $green-400, - 5: $green-500, - 6: $green-600, - 7: $green-700, - 8: $green-800, - 9: $green-900, -) !default; - -$yellows: ( - 0: $yellow-000, - 1: $yellow-100, - 2: $yellow-200, - 3: $yellow-300, - 4: $yellow-400, - 5: $yellow-500, - 6: $yellow-600, - 7: $yellow-700, - 8: $yellow-800, - 9: $yellow-900, -) !default; - -$oranges: ( - 0: $orange-000, - 1: $orange-100, - 2: $orange-200, - 3: $orange-300, - 4: $orange-400, - 5: $orange-500, - 6: $orange-600, - 7: $orange-700, - 8: $orange-800, - 9: $orange-900, -) !default; - -$reds: ( - 0: $red-000, - 1: $red-100, - 2: $red-200, - 3: $red-300, - 4: $red-400, - 5: $red-500, - 6: $red-600, - 7: $red-700, - 8: $red-800, - 9: $red-900, -) !default; - -$purples: ( - 0: $purple-000, - 1: $purple-100, - 2: $purple-200, - 3: $purple-300, - 4: $purple-400, - 5: $purple-500, - 6: $purple-600, - 7: $purple-700, - 8: $purple-800, - 9: $purple-900, -) !default; - -$pinks: ( - 0: $pink-000, - 1: $pink-100, - 2: $pink-200, - 3: $pink-300, - 4: $pink-400, - 5: $pink-500, - 6: $pink-600, - 7: $pink-700, - 8: $pink-800, - 9: $pink-900, -) !default; - -$hue-maps: ( - "gray": $grays, - "blue": $blues, - "green": $greens, - "yellow": $yellows, - "orange": $oranges, - "red": $reds, - "purple": $purples, - "pink": $pinks, -) !default; diff --git a/assets/sass/@primer/css/support/variables/colors.scss b/assets/sass/@primer/css/support/variables/colors.scss deleted file mode 100644 index ffbf018..0000000 --- a/assets/sass/@primer/css/support/variables/colors.scss +++ /dev/null @@ -1,63 +0,0 @@ -@import "color-system.scss"; -// Color variables - -// Border colors -$border-white: $white !default; -$border-black-fade: $black-fade-15 !default; -$border-white-fade: $white-fade-15 !default; -$border-gray-dark: $gray-300 !default; -$border-gray-darker: $gray-700 !default; -$border-gray-light: lighten($gray-200, 3%) !default; -$border-gray: $gray-200 !default; -$border-blue: $blue-500 !default; -$border-blue-light: $blue-200 !default; -$border-green: $green-400 !default; -$border-green-light: desaturate($green-300, 40%) !default; -$border-purple: $purple !default; -$border-red: $red !default; -$border-red-light: desaturate($red-300, 60%) !default; -$border-yellow: desaturate($yellow-300, 60%) !default; - -// Buttons have a slightly more opaque border than $border-black-fade (15% alpha) -$border-color-button: rgba($black, 0.2) !default; - -// Background colors -$bg-white: $white !default; -$bg-black: $black !default; -$bg-black-fade: $black-fade-50 !default; -$bg-blue-light: $blue-000 !default; -$bg-blue: $blue-500 !default; -$bg-gray-dark: $gray-900 !default; -$bg-gray-light: $gray-000 !default; -$bg-gray: $gray-100 !default; -$bg-green: $green-500 !default; -$bg-green-light: $green-100 !default; -$bg-orange: $orange-700 !default; -$bg-purple: $purple-500 !default; -$bg-purple-light: $purple-000 !default; -$bg-pink: $pink-500 !default; -$bg-red: $red-500 !default; -$bg-red-light: $red-100 !default; -$bg-yellow: $yellow-500 !default; -$bg-yellow-light: $yellow-200 !default; -$bg-yellow-dark: $yellow-700 !default; - -// diffstat background colors -$bg-diffstat-added: darken($green-400, 5%) !default; -$bg-diffstat-deleted: $red-600 !default; -$bg-diffstat-neutral: $gray-300 !default; - -// Text colors -$text-black: $black !default; -$text-white: $white !default; -$text-blue: $blue-500 !default; -$text-gray-dark: $gray-900 !default; -$text-gray-light: $gray-500 !default; -$text-gray: $gray-600 !default; -$text-green: $green-500 !default; -$text-orange: $orange-900 !default; -$text-orange-light: $orange-600 !default; -$text-purple: $purple !default; -$text-pink: $pink-500 !default; -$text-red: $red-600 !default; -$text-yellow: $yellow-800 !default; diff --git a/assets/sass/@primer/css/support/variables/layout.scss b/assets/sass/@primer/css/support/variables/layout.scss deleted file mode 100644 index cec508c..0000000 --- a/assets/sass/@primer/css/support/variables/layout.scss +++ /dev/null @@ -1,129 +0,0 @@ -// Layout variables - -// these are values for the display CSS property -$display-values: ( - block, - flex, - inline, - inline-block, - inline-flex, - none, - table, - table-cell -) !default; - -// maps edges to respective corners for border-radius -$edges: ( - top: (top-left, top-right), - right: (top-right, bottom-right), - bottom: (bottom-right, bottom-left), - left: (bottom-left, top-left) -) !default; - -// These are our margin and padding utility spacers. The default step size we -// use is 8px. This gives us a key of: -// 0 => 0px -// 1 => 4px -// 2 => 8px -// 3 => 16px -// 4 => 24px -// 5 => 32px -// 6 => 40px -$spacer: 8px !default; - -// Our spacing scale -$spacer-0: 0 !default; // 0 -$spacer-1: round($spacer / 2) !default; // 4px -$spacer-2: $spacer !default; // 8px -$spacer-3: $spacer * 2 !default; // 16px -$spacer-4: $spacer * 3 !default; // 24px -$spacer-5: $spacer * 4 !default; // 32px -$spacer-6: $spacer * 5 !default; // 40px - -// The list of spacer values -$spacers: ( - $spacer-0, - $spacer-1, - $spacer-2, - $spacer-3, - $spacer-4, - $spacer-5, - $spacer-6, -) !default; - -// And the map of spacers, for easier looping: -// @each $scale, $length in $spacer-map { ... } -$spacer-map: ( - 0: $spacer-0, - 1: $spacer-1, - 2: $spacer-2, - 3: $spacer-3, - 4: $spacer-4, - 5: $spacer-5, - 6: $spacer-6, -) !default; - -// Em spacer variables -$em-spacer-1: 0.0625em !default; // 1/16 -$em-spacer-2: 0.125em !default; // 1/8 -$em-spacer-3: 0.25em !default; // 1/4 -$em-spacer-4: 0.375em !default; // 3/8 -$em-spacer-5: 0.5em !default; // 1/2 -$em-spacer-6: 0.75em !default; // 3/4 - -// Fixed-width container variables -$container-width: 980px !default; -$grid-gutter: 10px !default; - -// Breakpoint widths -$width-xs: 0 !default; -// Small screen / phone -$width-sm: 544px !default; -// Medium screen / tablet -$width-md: 768px !default; -// Large screen / desktop (980 + (16 * 2)) <= container + gutters -$width-lg: 1012px !default; -// Extra large screen / wide desktop -$width-xl: 1280px !default; - -// Responsive container widths -$container-sm: $width-sm !default; -$container-md: $width-md !default; -$container-lg: $width-lg !default; -$container-xl: $width-xl !default; - -// Breakpoints in the form (name: length) -$breakpoints: ( - sm: $width-sm, - md: $width-md, - lg: $width-lg, - xl: $width-xl -) !default; - -// This map in the form (breakpoint: variant) is used to iterate over -// breakpoints and create both responsive and non-responsive classes in one -// loop: -// -// ```scss -// @each $breakpoint, $variant of $responsive-variants { -// @include breakpoint($breakpoint) { -// .foo#{$variant}-bar { foo: bar !important; } -// } -// } -// ``` -$responsive-variants: ( - "": "", - sm: "-sm", - md: "-md", - lg: "-lg", - xl: "-xl", -) !default; - -// responive utility position values -$responsive-positions: ( - static, - relative, - absolute, - fixed, - sticky -) !default; diff --git a/assets/sass/@primer/css/support/variables/misc.scss b/assets/sass/@primer/css/support/variables/misc.scss deleted file mode 100644 index 30a8363..0000000 --- a/assets/sass/@primer/css/support/variables/misc.scss +++ /dev/null @@ -1,26 +0,0 @@ -// Miscellaneous variables - -// Border size -$border-width: 1px !default; -$border-color: $border-gray !default; -$border-style: solid !default; -$border: $border-width $border-color $border-style !default; -$border-radius: 3px !default; - -// Box shadow -$box-shadow: 0 1px 1px rgba($black, 0.1) !default; -$box-shadow-medium: 0 1px 5px $black-fade-15 !default; -$box-shadow-large: 0 1px 15px $black-fade-15 !default; -$box-shadow-extra-large: 0 10px 50px rgba($black, 0.07) !default; - -// Button and form variables -$form-control-shadow: inset 0 1px 2px rgba($black, 0.075) !default; -$btn-input-focus-shadow: 0 0 0 0.2em rgba($blue, 0.3) !default; -$btn-active-shadow: inset 0 0.15em 0.3em $black-fade-15 !default; - -// Tooltips -$tooltip-max-width: 250px !default; -$tooltip-background-color: $black !default; -$tooltip-text-color: $white !default; -$tooltip-delay: 0.4s !default; -$tooltip-duration: 0.1s !default; diff --git a/assets/sass/@primer/css/support/variables/typography.scss b/assets/sass/@primer/css/support/variables/typography.scss deleted file mode 100644 index dcb57a7..0000000 --- a/assets/sass/@primer/css/support/variables/typography.scss +++ /dev/null @@ -1,42 +0,0 @@ -// Typography variables - -// Heading sizes - mobile -// h4-h6 remain the same size on both mobile & desktop -$h00-size-mobile: 40px !default; -$h0-size-mobile: 32px !default; -$h1-size-mobile: 26px !default; -$h2-size-mobile: 22px !default; -$h3-size-mobile: 18px !default; - -// Heading sizes - desktop -$h00-size: 48px !default; -$h0-size: 40px !default; -$h1-size: 32px !default; -$h2-size: 24px !default; -$h3-size: 20px !default; -$h4-size: 16px !default; -$h5-size: 14px !default; -$h6-size: 12px !default; - -$font-size-small: 12px !default; - -// Font weights -$font-weight-bold: 600 !default; -$font-weight-semibold: 500 !default; -$font-weight-normal: 400 !default; -$font-weight-light: 300 !default; - -// Line heights -$lh-condensed-ultra: 1 !default; -$lh-condensed: 1.25 !default; -$lh-default: 1.5 !default; - -// Font stacks -$body-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji" !default; - -// Monospace font stack -$mono-font: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace !default; - -// The base body size -$body-font-size: 14px !default; -$body-line-height: $lh-default !default; diff --git a/assets/sass/@primer/css/utilities/README.md b/assets/sass/@primer/css/utilities/README.md deleted file mode 100644 index 95eade2..0000000 --- a/assets/sass/@primer/css/utilities/README.md +++ /dev/null @@ -1,25 +0,0 @@ ---- -bundle: "utilities" -generated: true ---- - -# Primer CSS: `utilities` bundle - -## Usage - -Primer CSS source files are written in [SCSS]. To include this Primer CSS module in your own build, ensure that your `node_modules` directory is listed in your Sass include paths, then import it with: - -```scss -@import "@primer/css/utilities/index.scss"; -``` - -## Build - -The `@primer/css` npm package includes a standalone CSS build of this module in `dist/utilities.css`. - -## License - -[MIT](https://github.com/primer/css/blob/master/LICENSE) © [GitHub](https://github.com/) - - -[scss]: https://sass-lang.com/documentation/syntax#scss diff --git a/assets/sass/@primer/css/utilities/animations.scss b/assets/sass/@primer/css/utilities/animations.scss deleted file mode 100644 index bb1422e..0000000 --- a/assets/sass/@primer/css/utilities/animations.scss +++ /dev/null @@ -1,183 +0,0 @@ -// This file contains reusable animations for github. - -/* Fade in an element */ -.anim-fade-in { - animation-name: fade-in; - animation-duration: 1s; - animation-timing-function: ease-in-out; - - &.fast { - animation-duration: 300ms; - } -} - -@keyframes fade-in { - 0% { - opacity: 0; - } - - 100% { - opacity: 1; - } -} - -/* Fade out an element */ -.anim-fade-out { - animation-name: fade-out; - animation-duration: 1s; - animation-timing-function: ease-out; - - &.fast { - animation-duration: 0.3s; - } -} - -@keyframes fade-out { - 0% { - opacity: 1; - } - - 100% { - opacity: 0; - } -} - -/* Fade in and slide up an element */ -.anim-fade-up { - opacity: 0; - animation-name: fade-up; - animation-duration: 0.3s; - animation-fill-mode: forwards; - animation-timing-function: ease-out; - animation-delay: 1s; -} - -@keyframes fade-up { - 0% { - opacity: 0.8; - transform: translateY(100%); - } - - 100% { - opacity: 1; - transform: translateY(0); - } -} - -/* Fade an element out and slide down */ -.anim-fade-down { - animation-name: fade-down; - animation-duration: 0.3s; - animation-fill-mode: forwards; - animation-timing-function: ease-in; -} - -@keyframes fade-down { - 0% { - opacity: 1; - transform: translateY(0); - } - - 100% { - opacity: 0.5; - transform: translateY(100%); - } -} - -/* Grow an element width from 0 to 100% */ -.anim-grow-x { - width: 0%; - animation-name: grow-x; - animation-duration: 0.3s; - animation-fill-mode: forwards; - animation-timing-function: ease; - animation-delay: 0.5s; -} - -@keyframes grow-x { - to { width: 100%; } -} - -/* Shrink an element from 100% to 0% */ -.anim-shrink-x { - animation-name: shrink-x; - animation-duration: 0.3s; - animation-fill-mode: forwards; - animation-timing-function: ease-in-out; - animation-delay: 0.5s; -} - -@keyframes shrink-x { - to { width: 0%; } -} - -/* Fade in an element and scale it fast */ -.anim-scale-in { - animation-name: scale-in; - animation-duration: 0.15s; - animation-timing-function: cubic-bezier(0.2, 0, 0.13, 1.5); -} - -@keyframes scale-in { - 0% { - opacity: 0; - transform: scale(0.5); - } - - 100% { - opacity: 1; - transform: scale(1); - } -} - -/* Pulse an element's opacity */ -.anim-pulse { - animation-name: pulse; - animation-duration: 2s; - animation-timing-function: linear; - animation-iteration-count: infinite; -} - -@keyframes pulse { - 0% { - opacity: 0.3; - } - - 10% { - opacity: 1; - } - - 100% { - opacity: 0.3; - } -} - -/* Pulse in an element */ -.anim-pulse-in { - animation-name: pulse-in; - animation-duration: 0.5s; -} - -@keyframes pulse-in { - 0% { - transform: scale3d(1, 1, 1); - } - - 50% { - transform: scale3d(1.1, 1.1, 1.1); - } - - 100% { - transform: scale3d(1, 1, 1); - } -} - -/* Increase scale of an element on hover */ -.hover-grow { - transition: transform 0.3s; - backface-visibility: hidden; - - &:hover { - transform: scale(1.025); - } -} diff --git a/assets/sass/@primer/css/utilities/borders.scss b/assets/sass/@primer/css/utilities/borders.scss deleted file mode 100644 index d3df5ae..0000000 --- a/assets/sass/@primer/css/utilities/borders.scss +++ /dev/null @@ -1,116 +0,0 @@ -// Core border utilities -// stylelint-disable block-opening-brace-space-before, comment-empty-line-before - -/* Add a gray border to the left and right */ -.border-x { - border-right: $border !important; - border-left: $border !important; -} - -/* Add a gray border to the top and bottom */ -.border-y { - border-top: $border !important; - border-bottom: $border !important; -} - -/* Responsive gray borders */ -@each $breakpoint, $variant in $responsive-variants { - @include breakpoint($breakpoint) { - /* Add a gray border on all sides at/above this breakpoint */ - .border#{$variant} { border: $border !important; } - /* Set the border width to 0 on all sides at/above this breakpoint */ - .border#{$variant}-0 { border: 0 !important; } - - /* Add a gray border to the top */ - .border#{$variant}-top { border-top: $border !important; } - /* Add a gray border to the right */ - .border#{$variant}-right { border-right: $border !important; } - /* Add a gray border to the bottom */ - .border#{$variant}-bottom { border-bottom: $border !important; } - /* Add a gray border to the left */ - .border#{$variant}-left { border-left: $border !important; } - - /* Remove the top border */ - .border#{$variant}-top-0 { border-top: 0 !important; } - /* Remove the right border */ - .border#{$variant}-right-0 { border-right: 0 !important; } - /* Remove the bottom border */ - .border#{$variant}-bottom-0 { border-bottom: 0 !important; } - /* Remove the left border */ - .border#{$variant}-left-0 { border-left: 0 !important; } - - // Rounded corners - /* Remove the border-radius */ - .rounded#{$variant}-0 { border-radius: 0 !important; } - /* Add a border-radius to all corners */ - .rounded#{$variant}-1 { border-radius: $border-radius !important; } - /* Add a 2x border-radius to all corners */ - .rounded#{$variant}-2 { border-radius: $border-radius * 2 !important; } - - @each $edge, $corners in $edges { - .rounded#{$variant}-#{$edge}-0 { - @each $corner in $corners { - border-#{$corner}-radius: 0 !important; - } - } - - .rounded#{$variant}-#{$edge}-1 { - @each $corner in $corners { - border-#{$corner}-radius: $border-radius !important; - } - } - - .rounded#{$variant}-#{$edge}-2 { - @each $corner in $corners { - border-#{$corner}-radius: $border-radius * 2 !important; - } - } - } - } -} - -/* Add a 50% border-radius to make something into a circle */ -.circle { border-radius: 50% !important; } - -/* Change the border style to dashed, in conjunction with another utility */ -.border-dashed { - // stylelint-disable-next-line primer/borders - border-style: dashed !important; -} - -/* Use with .border to turn the border blue */ -.border-blue { border-color: $border-blue !important; } -/* Use with .border to turn the border blue-light */ -.border-blue-light { border-color: $border-blue-light !important; } -/* Use with .border to turn the border green */ -.border-green { border-color: $border-green !important; } -/* Use with .border to turn the border green light */ -.border-green-light { border-color: $border-green-light !important; } -/* Use with .border to turn the border red */ -.border-red { border-color: $border-red !important; } -/* Use with .border to turn the border red-light */ -.border-red-light { border-color: $border-red-light !important; } -/* Use with .border to turn the border purple */ -.border-purple { border-color: $border-purple !important; } -/* Use with .border to turn the border yellow */ -.border-yellow { border-color: $border-yellow !important; } -/* Use with .border to turn the border gray-light */ -.border-gray-light { border-color: $border-gray-light !important; } -/* Use with .border to turn the border gray-dark */ -.border-gray-dark { border-color: $border-gray-dark !important; } - -/* Use with .border to turn the border rgba black 0.15 */ -.border-black-fade { border-color: $border-black-fade !important; } -/* Use with .border to turn the border rgba white 0.15 */ -.border-white-fade { border-color: $border-white-fade !important; } - -/* Use with .border to turn the border white w/varying transparency */ -.border-white-fade-15 { border-color: $border-white-fade !important; } -// stylelint-disable-next-line primer/borders -.border-white-fade-30 { border-color: $white-fade-30 !important; } -// stylelint-disable-next-line primer/borders -.border-white-fade-50 { border-color: $white-fade-50 !important; } -// stylelint-disable-next-line primer/borders -.border-white-fade-70 { border-color: $white-fade-70 !important; } -// stylelint-disable-next-line primer/borders -.border-white-fade-85 { border-color: $white-fade-85 !important; } diff --git a/assets/sass/@primer/css/utilities/box-shadow.scss b/assets/sass/@primer/css/utilities/box-shadow.scss deleted file mode 100644 index fb5b1d6..0000000 --- a/assets/sass/@primer/css/utilities/box-shadow.scss +++ /dev/null @@ -1,25 +0,0 @@ -// Box shadow utilities - -// Box shadows - -.box-shadow { - box-shadow: $box-shadow !important; -} - -.box-shadow-medium { - box-shadow: $box-shadow-medium !important; -} - -.box-shadow-large { - box-shadow: $box-shadow-large !important; -} - -.box-shadow-extra-large { - box-shadow: $box-shadow-extra-large !important; -} - -// Turn off box shadow - -.box-shadow-none { - box-shadow: none !important; -} diff --git a/assets/sass/@primer/css/utilities/colors.scss b/assets/sass/@primer/css/utilities/colors.scss deleted file mode 100644 index 0864f8f..0000000 --- a/assets/sass/@primer/css/utilities/colors.scss +++ /dev/null @@ -1,115 +0,0 @@ -// Color utilities -// stylelint-disable block-opening-brace-space-before, comment-empty-line-before - -// background colors -/* Set the background to $bg-white */ -.bg-white { background-color: $bg-white !important; } -/* Set the background to $bg-blue */ -.bg-blue { background-color: $bg-blue !important; } -/* Set the background to $bg-blue-light */ -.bg-blue-light { background-color: $bg-blue-light !important; } -/* Set the background to $bg-gray-dark */ -.bg-gray-dark { background-color: $bg-gray-dark !important; } -/* Set the background to $bg-gray */ -.bg-gray { background-color: $bg-gray !important; } -/* Set the background to $bg-gray-light */ -.bg-gray-light { background-color: $bg-gray-light !important; } -/* Set the background to $bg-green */ -.bg-green { background-color: $bg-green !important; } -/* Set the background to $bg-green-light */ -.bg-green-light { background-color: $bg-green-light !important; } -/* Set the background to $bg-red */ -.bg-red { background-color: $bg-red !important; } -/* Set the background to $bg-red-light */ -.bg-red-light { background-color: $bg-red-light !important; } -/* Set the background to $bg-yellow */ -.bg-yellow { background-color: $bg-yellow !important; } -/* Set the background to $bg-yellow-light */ -.bg-yellow-light { background-color: $bg-yellow-light !important; } -/* Set the background to $bg-yellow-dark */ -.bg-yellow-dark { background-color: $bg-yellow-dark !important; } -/* Set the background to $bg-purple */ -.bg-purple { background-color: $bg-purple !important; } -/* Set the background to $bg-pink */ -.bg-pink { background-color: $bg-pink !important; } -/* Set the background to $bg-purple-light */ -.bg-purple-light { background-color: $bg-purple-light !important; } - -// Generate a foreground and background utility for every shade of every hue -@each $hue, $shades in $hue-maps { - @each $index, $color in $shades { - .color-#{$hue}-#{$index} { color: $color !important; } - .bg-#{$hue}-#{$index} { background-color: $color !important; } - } -} - -.bg-shade-gradient { - background-image: linear-gradient(180deg, rgba($black, 0.065), rgba($black, 0)) !important; - background-repeat: no-repeat !important; - background-size: 100% 200px !important; -} - -// text colors -/* Set the text color to $text-blue */ -.text-blue { color: $text-blue !important; } -/* Set the text color to $text-red */ -.text-red { color: $text-red !important; } -/* Set the text color to $text-gray-light */ -.text-gray-light { color: $text-gray-light !important; } -/* Set the text color to $text-gray */ -.text-gray { color: $text-gray !important; } -/* Set the text color to $text-gray-dark */ -.text-gray-dark { color: $text-gray-dark !important; } -/* Set the text color to $text-green */ -.text-green { color: $text-green !important; } -/* Set the text color to $text-yellow */ -.text-yellow { color: $text-yellow !important; } -/* Set the text color to $text-orange */ -.text-orange { color: $text-orange !important; } -/* Set the text color to $text-orange-light */ -.text-orange-light { color: $text-orange-light !important; } -/* Set the text color to $text-purple */ -.text-purple { color: $text-purple !important; } -/* Set the text color to $text-pink */ -.text-pink { color: $text-pink !important; } -/* Set the text color to $text-white */ -.text-white { color: $text-white !important; } -/* Set the text color to inherit */ -.text-inherit { color: inherit !important; } - -// Link colors -// Sets the links color to $text-gray and $text-blue on hover -.link-gray { - color: $text-gray !important; - - &:hover { - color: $text-blue !important; - } -} - -// Sets the links color to $text-gray-dark and $text-blue on hover -.link-gray-dark { - color: $text-gray-dark !important; - - &:hover { - color: $text-blue !important; - } -} - -/* Set the link color to $text-blue on hover - Useful when you want only part of a link to turn blue on hover */ -.link-hover-blue { - &:hover { - color: $text-blue !important; - } -} - -/* Make a link $text-gray, then $text-blue on hover and removes the underline */ -.muted-link { - color: $text-gray !important; - - &:hover { - color: $text-blue !important; - text-decoration: none; - } -} diff --git a/assets/sass/@primer/css/utilities/details.scss b/assets/sass/@primer/css/utilities/details.scss deleted file mode 100644 index 935bc05..0000000 --- a/assets/sass/@primer/css/utilities/details.scss +++ /dev/null @@ -1,28 +0,0 @@ -// stylelint-disable selector-max-type - -.details-overlay[open] > summary::before { - position: fixed; - top: 0; - right: 0; - bottom: 0; - left: 0; - z-index: 80; - display: block; - cursor: default; - content: " "; - background: transparent; -} - -.details-overlay-dark[open] > summary::before { - z-index: 99; - background: $bg-black-fade; -} - -.details-reset { - // Remove marker added by the display: list-item browser default - > summary { list-style: none; } - // Remove marker added by details polyfill - > summary::before { display: none; } - // Remove marker added by Chrome - > summary::-webkit-details-marker { display: none; } -} diff --git a/assets/sass/@primer/css/utilities/flexbox.scss b/assets/sass/@primer/css/utilities/flexbox.scss deleted file mode 100644 index a0cd73a..0000000 --- a/assets/sass/@primer/css/utilities/flexbox.scss +++ /dev/null @@ -1,51 +0,0 @@ -// Flex utility classes -// stylelint-disable block-opening-brace-space-after, block-opening-brace-space-before -@each $breakpoint, $variant in $responsive-variants { - @include breakpoint($breakpoint) { - // Flexbox classes - // Container - .flex#{$variant}-row { flex-direction: row !important; } - .flex#{$variant}-row-reverse { flex-direction: row-reverse !important; } - .flex#{$variant}-column { flex-direction: column !important; } - .flex#{$variant}-column-reverse { flex-direction: column-reverse !important; } - - .flex#{$variant}-wrap { flex-wrap: wrap !important; } - .flex#{$variant}-nowrap { flex-wrap: nowrap !important; } - - .flex#{$variant}-justify-start { justify-content: flex-start !important; } - .flex#{$variant}-justify-end { justify-content: flex-end !important; } - .flex#{$variant}-justify-center { justify-content: center !important; } - .flex#{$variant}-justify-between { justify-content: space-between !important; } - .flex#{$variant}-justify-around { justify-content: space-around !important; } - - .flex#{$variant}-items-start { align-items: flex-start !important; } - .flex#{$variant}-items-end { align-items: flex-end !important; } - .flex#{$variant}-items-center { align-items: center !important; } - .flex#{$variant}-items-baseline { align-items: baseline !important; } - .flex#{$variant}-items-stretch { align-items: stretch !important; } - - .flex#{$variant}-content-start { align-content: flex-start !important; } - .flex#{$variant}-content-end { align-content: flex-end !important; } - .flex#{$variant}-content-center { align-content: center !important; } - .flex#{$variant}-content-between { align-content: space-between !important; } - .flex#{$variant}-content-around { align-content: space-around !important; } - .flex#{$variant}-content-stretch { align-content: stretch !important; } - - // Item - .flex#{$variant}-1 { flex: 1 !important; } - .flex#{$variant}-auto { flex: auto !important; } - .flex#{$variant}-grow-0 { flex-grow: 0 !important; } - .flex#{$variant}-shrink-0 { flex-shrink: 0 !important; } - - .flex#{$variant}-self-auto { align-self: auto !important; } - .flex#{$variant}-self-start { align-self: flex-start !important; } - .flex#{$variant}-self-end { align-self: flex-end !important; } - .flex#{$variant}-self-center { align-self: center !important; } - .flex#{$variant}-self-baseline { align-self: baseline !important; } - .flex#{$variant}-self-stretch { align-self: stretch !important; } - - .flex#{$variant}-order-1 { order: 1 !important; } - .flex#{$variant}-order-2 { order: 2 !important; } - .flex#{$variant}-order-none { order: inherit !important; } - } -} diff --git a/assets/sass/@primer/css/utilities/index.scss b/assets/sass/@primer/css/utilities/index.scss deleted file mode 100644 index 7d68a09..0000000 --- a/assets/sass/@primer/css/utilities/index.scss +++ /dev/null @@ -1,14 +0,0 @@ -@import "../support/index.scss"; -// utilities -@import "./animations.scss"; -@import "./borders.scss"; -@import "./box-shadow.scss"; -@import "./colors.scss"; -@import "./details.scss"; -@import "./flexbox.scss"; -@import "./layout.scss"; -@import "./margin.scss"; -@import "./padding.scss"; -@import "./typography.scss"; -// Visibility and display should always come last in the imports so that they override other utilities with !important -@import "./visibility-display.scss"; diff --git a/assets/sass/@primer/css/utilities/layout.scss b/assets/sass/@primer/css/utilities/layout.scss deleted file mode 100644 index 1b4da95..0000000 --- a/assets/sass/@primer/css/utilities/layout.scss +++ /dev/null @@ -1,87 +0,0 @@ -// Layout -// stylelint-disable block-opening-brace-space-after, block-opening-brace-space-before, comment-empty-line-before - -// Loop through the breakpoint values -@each $breakpoint, $variant in $responsive-variants { - @include breakpoint($breakpoint) { - @each $position in $responsive-positions { - .position#{$variant}-#{$position} { - position: $position !important; - } - } - } -} - -/* Set top 0 */ -.top-0 { top: 0 !important; } -/* Set right 0 */ -.right-0 { right: 0 !important; } -/* Set bottom 0 */ -.bottom-0 { bottom: 0 !important; } -/* Set left 0 */ -.left-0 { left: 0 !important; } - -/* Vertical align middle */ -.v-align-middle { vertical-align: middle !important; } -/* Vertical align top */ -.v-align-top { vertical-align: top !important; } -/* Vertical align bottom */ -.v-align-bottom { vertical-align: bottom !important; } -/* Vertical align to the top of the text */ -.v-align-text-top { vertical-align: text-top !important; } -/* Vertical align to the bottom of the text */ -.v-align-text-bottom { vertical-align: text-bottom !important; } -/* Vertical align to the parent's baseline */ -.v-align-baseline { vertical-align: baseline !important; } - -// Overflow utilities -@each $overflow in (visible, hidden, auto, scroll) { - .overflow-#{$overflow} { overflow: $overflow !important; } - .overflow-x-#{$overflow} { overflow-x: $overflow !important; } - .overflow-y-#{$overflow} { overflow-y: $overflow !important; } -} - -// Clear floats -/* Clear floats around the element */ -.clearfix { - @include clearfix; -} - -// Floats -@each $breakpoint, $variant in $responsive-variants { - @include breakpoint($breakpoint) { - /* Float to the left */ - .float#{$variant}-left { float: left !important; } - /* Float to the right */ - .float#{$variant}-right { float: right !important; } - /* No float */ - .float#{$variant}-none { float: none !important; } - } -} - -// Width and height utilities, helpful in combination -// with display-table utilities and images -/* Max width 100% */ -.width-fit { max-width: 100% !important; } -/* Set the width to 100% */ -.width-full { width: 100% !important; } -/* Max height 100% */ -.height-fit { max-height: 100% !important; } -/* Set the height to 100% */ -.height-full { height: 100% !important; } - -/* Remove min-width from element */ -.min-width-0 { min-width: 0 !important; } - -@each $breakpoint, $variant in $responsive-variants { - @include breakpoint($breakpoint) { - - // Auto varients - .width#{$variant}-auto { width: auto !important; } - - /* Set the direction to rtl */ - .direction#{$variant}-rtl { direction: rtl !important; } - /* Set the direction to ltr */ - .direction#{$variant}-ltr { direction: ltr !important; } - } -} diff --git a/assets/sass/@primer/css/utilities/margin.scss b/assets/sass/@primer/css/utilities/margin.scss deleted file mode 100644 index 2212e91..0000000 --- a/assets/sass/@primer/css/utilities/margin.scss +++ /dev/null @@ -1,50 +0,0 @@ -// Margin spacer utilities -// stylelint-disable block-opening-brace-space-before, declaration-colon-space-before, comment-empty-line-before - -// Loop through the breakpoint values -@each $breakpoint, $variant in $responsive-variants { - @include breakpoint($breakpoint) { - // Loop through the spacer values - @each $scale, $size in $spacer-map { - /* Set a $size margin to all sides at $breakpoint */ - .m#{$variant}-#{$scale} { margin: $size !important; } - /* Set a $size margin on the top at $breakpoint */ - .mt#{$variant}-#{$scale} { margin-top: $size !important; } - /* Set a $size margin on the right at $breakpoint */ - .mr#{$variant}-#{$scale} { margin-right: $size !important; } - /* Set a $size margin on the bottom at $breakpoint */ - .mb#{$variant}-#{$scale} { margin-bottom: $size !important; } - /* Set a $size margin on the left at $breakpoint */ - .ml#{$variant}-#{$scale} { margin-left: $size !important; } - - @if ($size != 0) { - /* Set a negative $size margin on top at $breakpoint */ - .mt#{$variant}-n#{$scale} { margin-top : -$size !important; } - /* Set a negative $size margin on the right at $breakpoint */ - .mr#{$variant}-n#{$scale} { margin-right : -$size !important; } - /* Set a negative $size margin on the bottom at $breakpoint */ - .mb#{$variant}-n#{$scale} { margin-bottom: -$size !important; } - /* Set a negative $size margin on the left at $breakpoint */ - .ml#{$variant}-n#{$scale} { margin-left : -$size !important; } - } - - /* Set a $size margin on the left & right at $breakpoint */ - .mx#{$variant}-#{$scale} { - margin-right: $size !important; - margin-left: $size !important; - } - - /* Set a $size margin on the top & bottom at $breakpoint */ - .my#{$variant}-#{$scale} { - margin-top: $size !important; - margin-bottom: $size !important; - } - } - - /* responsive horizontal auto margins */ - .mx#{$variant}-auto { - margin-right: auto !important; - margin-left: auto !important; - } - } -} diff --git a/assets/sass/@primer/css/utilities/padding.scss b/assets/sass/@primer/css/utilities/padding.scss deleted file mode 100644 index 9914bb8..0000000 --- a/assets/sass/@primer/css/utilities/padding.scss +++ /dev/null @@ -1,49 +0,0 @@ -// Padding spacer utilities -// stylelint-disable block-opening-brace-space-before, declaration-colon-space-before, comment-empty-line-before - -// Responsive padding spacer utilities -@each $breakpoint, $variant in $responsive-variants { - @include breakpoint($breakpoint) { - // Loop through the spacer values - @each $scale, $size in $spacer-map { - /* Set a $size padding to all sides at $breakpoint */ - .p#{$variant}-#{$scale} { padding: $size !important; } - /* Set a $size padding to the top at $breakpoint */ - .pt#{$variant}-#{$scale} { padding-top: $size !important; } - /* Set a $size padding to the right at $breakpoint */ - .pr#{$variant}-#{$scale} { padding-right: $size !important; } - /* Set a $size padding to the bottom at $breakpoint */ - .pb#{$variant}-#{$scale} { padding-bottom: $size !important; } - /* Set a $size padding to the left at $breakpoint */ - .pl#{$variant}-#{$scale} { padding-left: $size !important; } - - /* Set a $size padding to the left & right at $breakpoint */ - .px#{$variant}-#{$scale} { - padding-right: $size !important; - padding-left: $size !important; - } - - /* Set a $size padding to the top & bottom at $breakpoint */ - .py#{$variant}-#{$scale} { - padding-top: $size !important; - padding-bottom: $size !important; - } - } - } -} - -// responsive padding for containers -.p-responsive { - padding-right: $spacer-3 !important; - padding-left: $spacer-3 !important; - - @include breakpoint(sm) { - padding-right: $spacer-6 !important; - padding-left: $spacer-6 !important; - } - - @include breakpoint(lg) { - padding-right: $spacer-3 !important; - padding-left: $spacer-3 !important; - } -} diff --git a/assets/sass/@primer/css/utilities/typography.scss b/assets/sass/@primer/css/utilities/typography.scss deleted file mode 100644 index f790a71..0000000 --- a/assets/sass/@primer/css/utilities/typography.scss +++ /dev/null @@ -1,255 +0,0 @@ -// stylelint-disable block-closing-brace-space-before, comment-empty-line-before - -// Type scale variables found in ../support/lib/variables.scss -// $h00-size-mobile: 40px; -// $h0-size-mobile: 32px; -// $h1-size-mobile: 26px; -// $h2-size-mobile: 22px; -// $h3-size-mobile: 18px; -// $h00-size: 48px; -// $h0-size: 40px; -// $h1-size: 32px; -// $h2-size: 24px; -// $h3-size: 20px; -// $h4-size: 16px; -// $h5-size: 14px; -// $h6-size: 12px; - -/* Set the font size to 26px */ -.h1 { - // stylelint-disable-next-line primer/typography - font-size: $h1-size-mobile !important; - - @include breakpoint(md) { font-size: $h1-size !important; } -} - -/* Set the font size to 22px */ -.h2 { - // stylelint-disable-next-line primer/typography - font-size: $h2-size-mobile !important; - - @include breakpoint(md) { font-size: $h2-size !important; } -} - -/* Set the font size to 18px */ -.h3 { - // stylelint-disable-next-line primer/typography - font-size: $h3-size-mobile !important; - - @include breakpoint(md) { font-size: $h3-size !important; } -} - -/* Set the font size to #{$h4-size} */ -.h4 { - font-size: $h4-size !important; -} - -/* Set the font size to #{$h5-size} */ -.h5 { font-size: $h5-size !important; } - -// Does not include color property like typography base -// styles, color should be applied with color utilities. -/* Set the font size to #{$h6-size} */ -.h6 { font-size: $h6-size !important; } - -// Heading utilities -.h1, -.h2, -.h3, -.h4, -.h5, -.h6 { font-weight: $font-weight-bold !important; } - -// Type utilities that match type sale -/* Set the font size to 26px */ -.f1 { - // stylelint-disable-next-line primer/typography - font-size: $h1-size-mobile !important; - - @include breakpoint(md) { font-size: $h1-size !important; } -} - -/* Set the font size to 22px */ -.f2 { - // stylelint-disable-next-line primer/typography - font-size: $h2-size-mobile !important; - - @include breakpoint(md) { font-size: $h2-size !important; } -} - -/* Set the font size to 18px */ -.f3 { - // stylelint-disable-next-line primer/typography - font-size: $h3-size-mobile !important; - - @include breakpoint(md) { font-size: $h3-size !important; } -} - -/* Set the font size to #{$h4-size} */ -.f4 { - font-size: $h4-size !important; - - @include breakpoint(md) { font-size: $h4-size !important; } -} - -/* Set the font size to #{$h5-size} */ -.f5 { font-size: $h5-size !important; } -/* Set the font size to #{$h6-size} */ -.f6 { font-size: $h6-size !important; } - -// Type utils with light weight that match type scale -/* Set the font size to 40px and weight to light */ -.f00-light { - // stylelint-disable-next-line primer/typography - font-size: $h00-size-mobile !important; - font-weight: $font-weight-light !important; - - @include breakpoint(md) { font-size: $h00-size !important; } -} - -/* Set the font size to 32px and weight to light */ -.f0-light { - // stylelint-disable-next-line primer/typography - font-size: $h0-size-mobile !important; - font-weight: $font-weight-light !important; - - @include breakpoint(md) { font-size: $h0-size !important; } -} - -/* Set the font size to 26px and weight to light */ -.f1-light { - // stylelint-disable-next-line primer/typography - font-size: $h1-size-mobile !important; - font-weight: $font-weight-light !important; - - @include breakpoint(md) { font-size: $h1-size !important; } -} - -/* Set the font size to 22px and weight to light */ -.f2-light { - // stylelint-disable-next-line primer/typography - font-size: $h2-size-mobile !important; - font-weight: $font-weight-light !important; - - @include breakpoint(md) { font-size: $h2-size !important; } -} - -// Same size and weight as .lead but without color property -/* Set the font size to 18px and weight to light */ -.f3-light { - // stylelint-disable-next-line primer/typography - font-size: $h3-size-mobile !important; - font-weight: $font-weight-light !important; - - @include breakpoint(md) { font-size: $h3-size !important; } -} - -// Smallest text size -/* Set the font size to ${#h6-size} */ -.text-small { font-size: $h6-size !important; } // 12px - -/* Large leading paragraphs */ -.lead { - // stylelint-disable-next-line primer/spacing - margin-bottom: 30px; - font-size: $h3-size; - font-weight: $font-weight-light; - color: $text-gray; -} - -// Line-height variations -// Close to commonly used line-heights. Most line-heights -// combined with type size equate to whole pixels. -// Will be improved with future typography scale updates. -// Responsive line-height -@each $breakpoint, $variant in $responsive-variants { - @include breakpoint($breakpoint) { - /* Set the line height to ultra condensed */ - .lh#{$variant}-condensed-ultra { line-height: $lh-condensed-ultra !important; } - /* Set the line height to condensed */ - .lh#{$variant}-condensed { line-height: $lh-condensed !important; } - /* Set the line height to default */ - .lh#{$variant}-default { line-height: $lh-default !important; } - /* Set the line height to zero */ - .lh#{$variant}-0 { line-height: 0 !important; } - } -} - -// Text alignments -// Responsive text alignment -@each $breakpoint, $variant in $responsive-variants { - @include breakpoint($breakpoint) { - /* Text align to the right */ - .text#{$variant}-right { text-align: right !important; } - /* Text align to the left */ - .text#{$variant}-left { text-align: left !important; } - /* Text align to the center */ - .text#{$variant}-center { text-align: center !important; } - } -} - -// Text styles -/* Set the font weight to normal */ -.text-normal { font-weight: $font-weight-normal !important; } -/* Set the font weight to bold */ -.text-bold { font-weight: $font-weight-bold !important;} -/* Set the font to italic */ -.text-italic { font-style: italic !important; } -/* Make text uppercase */ -.text-uppercase { text-transform: uppercase !important; } -/* Underline text */ -.text-underline { text-decoration: underline !important; } -/* Don't underline text */ -.no-underline { text-decoration: none !important; } -/* Don't wrap white space */ -.no-wrap { white-space: nowrap !important; } -/* Normal white space */ -.ws-normal { white-space: normal !important; } - -/* Force long "words" to wrap if they exceed the width of the container */ -.break-word { - word-break: break-word !important; - // this is for backwards compatibility with browsers that don't respect overflow-wrap - word-wrap: break-word !important; - overflow-wrap: break-word !important; -} - -/* - * Specifically apply word-break: break-all; per MDN: - * - * > Note: In contrast to `word-break: break-word` and `overflow-wrap: break-word`, - * > `word-break: break-all` will create a break at the exact place where text would - * > otherwise overflow its container (even if putting an entire word on its own line - * > would negate the need for a break). - * - * see: https://developer.mozilla.org/en-US/docs/Web/CSS/word-break#Values - */ -.wb-break-all { word-break: break-all !important; } - -.text-emphasized { - font-weight: $font-weight-bold; - color: $text-gray-dark; -} - -// List styles -.list-style-none { list-style: none !important; } - -// Text Shadows -/* Add a dark text shadow */ -.text-shadow-dark { - text-shadow: 0 1px 1px rgba($black, 0.25), 0 1px 25px rgba($black, 0.75); -} -/* Add a light text shadow */ -.text-shadow-light { - text-shadow: 0 1px 0 rgba($white, 0.5); -} - -/* Set to monospace font */ -.text-mono { - font-family: $mono-font !important; -} - -/* Disallow user from selecting text */ -.user-select-none { - user-select: none !important; -} diff --git a/assets/sass/@primer/css/utilities/visibility-display.scss b/assets/sass/@primer/css/utilities/visibility-display.scss deleted file mode 100644 index 61c6f5f..0000000 --- a/assets/sass/@primer/css/utilities/visibility-display.scss +++ /dev/null @@ -1,74 +0,0 @@ -// Visibility and display utilities - -// Responsive display utilities -@each $breakpoint, $variant in $responsive-variants { - @include breakpoint($breakpoint) { - @each $display in $display-values { - .d#{$variant}-#{$display} { display: $display !important; } - } - } -} - -.v-hidden { visibility: hidden !important; } -.v-visible { visibility: visible !important; } - -// Hide utilities for each breakpoint -// Each hide utility only applies to one breakpoint range. -@media (max-width: $width-sm - 1px) { - .hide-sm { - display: none !important; - } -} - -@media (min-width: $width-sm) and (max-width: $width-md - 1px) { - .hide-md { - display: none !important; - } -} - -@media (min-width: $width-md) and (max-width: $width-lg - 1px) { - .hide-lg { - display: none !important; - } -} - -@media (min-width: $width-lg) { - .hide-xl { - display: none !important; - } -} - -/* Set the table-layout to fixed */ -.table-fixed { table-layout: fixed !important; } - -// Only display content to screen readers -// -// See: http://a11yproject.com/posts/how-to-hide-content/ -.sr-only { - position: absolute; - width: 1px; - height: 1px; - padding: 0; - overflow: hidden; - clip: rect(0, 0, 0, 0); - // Workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=1241631 - word-wrap: normal; - border: 0; -} - -// Only display content on focus -.show-on-focus { - position: absolute; - width: 1px; - height: 1px; - margin: 0; - overflow: hidden; - clip: rect(1px, 1px, 1px, 1px); - - &:focus { - z-index: 20; - width: auto; - height: auto; - clip: auto; - } -} diff --git a/assets/sass/_class.scss b/assets/sass/_class.scss deleted file mode 100644 index aebda05..0000000 --- a/assets/sass/_class.scss +++ /dev/null @@ -1,88 +0,0 @@ -body { - a { - color: $color-primary; - } - - a:hover { - color: $color-secondary; - text-decoration: none; - } - - background-color: $color-bg; -} - -// main title style -.main-title { - font-family: 'Product Sans', -apple-system, BlinkMacSystemFont, Arial, monospace; - font-weight: 700; - font-size: $font-size-logo; - white-space: nowrap; - display: block; -} - -.link-alter { - a { - color: $color-secondary; - } - - a:hover { - color: $color-primary-dark; - text-decoration: none; - } -} - -.markdown-body { - a { - color: $color-secondary; - } - - a:hover { - color: $color-primary-dark; - text-decoration: none; - } - - h1, - h2, - h3, - h4, - h5, - h6 { - color: $color-primary; - } - - h1 { - font-size: $font-size-l1; - border-bottom: $spliter; - margin-top: 1.5rem; - } - - h2 { - font-size: $font-size-l2; - border-bottom: $spliter; - margin-top: 1.25rem; - } - - h3 { - font-size: $font-size-l3; - margin-top: 1.025rem; - } - - h4, - h5, - h6 { - font-size: $font-size-l4; - } - - hr { - background-color: $color-spliter; - } - - ul { - list-style-type: circle; - } - - img { - border: 2px solid $color-secondary; - border-radius: 2px; - } -} \ No newline at end of file diff --git a/assets/sass/_primer.scss b/assets/sass/_primer.scss deleted file mode 100644 index de96f52..0000000 --- a/assets/sass/_primer.scss +++ /dev/null @@ -1,13 +0,0 @@ -// @primer/css/support/variables/layout.scss -// fixed-width container variables -$container-width: 900px !default; -// large screen / desktop (900 + (16 * 2)) <= container + gutters -$width-lg: 932px !default; - -// @primer/css/support/variables/typography.scss -// font stacks -$body-font: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", "Helvetica", "Arial", "PingFang SC", "Hiragino Sans GB", "Source Han Sans CN", "Source Han Sans SC", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif !default; -// monospace font stack -$mono-font: "Cascadia Code", "SF Mono", "Fira Code", "Consolas", $body-font !default; -// the base text size -$body-font-size: $font-size-l4 !default; \ No newline at end of file diff --git a/assets/sass/_var.scss b/assets/sass/_var.scss deleted file mode 100644 index 4b2a3e8..0000000 --- a/assets/sass/_var.scss +++ /dev/null @@ -1,36 +0,0 @@ -// colors -$color-primary: #8AA2D3 !default; // https://irocore.com/aofuji/ -$color-primary-dark: #3B469B !default; // https://irocore.com/aomurasaki/ -$color-secondary: #8F82BC !default; // https://irocore.com/fujimurasaki/ -$color-mute: #9EA1A3 !default; // https://irocore.com/suzu-iro/ -$color-spliter: #E5E2E4 !default; // https://irocore.com/komachinezu/ -$color-bg: #FFFFFD !default; // https://irocore.com/shiro/ - -// font size list -$font-size-logo: 2.5rem !default; // Logo Only -$font-size-l1: 1.75rem !default; // Primer CSS H1 -$font-size-l2: 1.5rem !default; // Primer CSS H2 -$font-size-l3: 1.25rem !default; // Primer CSS H3 -$font-size-l4: 1rem !default; // Primer CSS H4 & Normal Text - -// divider css -$spliter: 2px solid $color-spliter !default; - -@font-face { - font-family: "Product Sans"; - font-style: normal; - font-weight: 700; - font-display: swap; - src: local("Product Sans Bold"), local("ProductSans-Bold"), - url("https://cdn.jsdelivr.net/gh/amzrk2/web-font-archive@1.3.1/product-sans/product-sans-bold.woff2") format("woff2"); - unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; -} - -@font-face { - font-family: "Cascadia Code"; - font-style: normal; - font-weight: 400; - font-display: swap; - src: local("Cascadia Code Regular"), local("Cascadia Mono Regular"), - url("https://cdn.jsdelivr.net/gh/amzrk2/web-font-archive@1.3.0/cascadia-code/cascadia.woff2") format("woff2"); -} \ No newline at end of file diff --git a/assets/sass/custom.scss b/assets/sass/custom.scss deleted file mode 100644 index 5fbfdcd..0000000 --- a/assets/sass/custom.scss +++ /dev/null @@ -1 +0,0 @@ -// to be covered by exampleSite/assets/sass/custom.sass diff --git a/assets/sass/main.scss b/assets/sass/main.scss deleted file mode 100644 index 95154d0..0000000 --- a/assets/sass/main.scss +++ /dev/null @@ -1,24 +0,0 @@ -// custom variables -@import "custom"; -// variables -@import "_var"; - -// cover primer variables -@import "_primer.scss"; -// include only used part of @primer/css/core -@import "@primer/css/base/index.scss"; -@import "@primer/css/layout/index.scss"; -@import "@primer/css/markdown/index.scss"; -// utilities always go last so that they can override components -@import "@primer/css/utilities/index.scss"; - -// global classes -@import "_class"; - -@import "modules/_header"; -@import "modules/_content"; -@import "modules/_archive"; -@import "modules/_sidebar"; -@import "modules/_component"; -@import "modules/_footer"; -@import "modules/_pagination"; \ No newline at end of file diff --git a/assets/sass/modules/_archive.scss b/assets/sass/modules/_archive.scss deleted file mode 100644 index 8a9a92b..0000000 --- a/assets/sass/modules/_archive.scss +++ /dev/null @@ -1,39 +0,0 @@ -.post-archive { - &:not(:last-child) { - padding: 0.5rem 0; - } - - &:last-child { - padding: 0.5rem 0 1rem 0; - } -} - -.post-archive+.post-archive { - border-top: $spliter; -} - -.post-title-archive { - font-size: $font-size-l2; -} - -.post-meta-archive { - color: $color-mute; - padding: 0 0.1rem; - white-space: nowrap; - overflow-x: scroll; - - time { - padding-right: 1rem; - } - - span:not(:last-child) { - display: none; - } - - &::-webkit-scrollbar { - display: none; // WebKit - } - - scrollbar-width: none; // Firefox - -ms-overflow-style: none; // Microsoft -} \ No newline at end of file diff --git a/assets/sass/modules/_component.scss b/assets/sass/modules/_component.scss deleted file mode 100644 index 9e64add..0000000 --- a/assets/sass/modules/_component.scss +++ /dev/null @@ -1,28 +0,0 @@ -#aplayer { - font-family: inherit; -} - -#scroll-top { - cursor: pointer; - position: fixed; - width: 2.5rem; - height: 2.5rem; - right: 1rem; - bottom: 1rem; - color: $color-primary; - background-color: $color-spliter; - border-radius: 100%; - line-height: 2.5rem; - text-align: center; - vertical-align: middle; - display: inline-block; - - &:hover { - color: $color-secondary; - } - - i { - font-size: 1.5rem; - line-height: inherit; - } -} \ No newline at end of file diff --git a/assets/sass/modules/_content.scss b/assets/sass/modules/_content.scss deleted file mode 100644 index 63cdc47..0000000 --- a/assets/sass/modules/_content.scss +++ /dev/null @@ -1,95 +0,0 @@ -#content { - padding: 0 1rem; - - // different padding when screen size below width-md(768px) - @media screen and (max-width: $width-md) { - padding: 0 1.5rem; - } -} - -article { - padding-top: 1.25rem; - padding-bottom: 1.5rem; -} - -.post { - padding: 1.25rem 0 1.5rem 0; -} - -.post+.post { - border-top: $spliter; -} - -.post-title { - font-size: $font-size-l1; -} - -.post-meta { - color: $color-mute; - padding: 0.5rem 0.1rem 1.25rem 0.1rem; - white-space: nowrap; - overflow-x: scroll; - - time, - span:not(:last-child) { - padding-right: 1rem; - } - - &::-webkit-scrollbar { - display: none; // WebKit - } - - scrollbar-width: none; // Firefox - -ms-overflow-style: none; // Microsoft -} - -.post-summary { - - h1, - h2, - h3, - h4, - h5, - h6 { - display: none; - } -} - -#post-aplayer { - font-family: inherit; - margin: 0 0.1rem 1.5rem 0.1rem; -} - -.license { - margin-bottom: 1.5rem; -} - -.post-loading { - border-top: $spliter; - margin: 0 0 1.5rem 0; - padding-top: 1.5rem; - text-align: center; - - i { - font-size: 1.5rem; - color: $color-primary; - } - - p { - margin: 0.5rem 0 0 0; - } -} - -.post-comment .utterances-frame { - border-top: $spliter; -} - -.post-comment #disqus_thread { - border-top: $spliter; -} - -.page-info { - padding: 1rem 0; - font-size: $font-size-l3; - border-bottom: $spliter; -} \ No newline at end of file diff --git a/assets/sass/modules/_footer.scss b/assets/sass/modules/_footer.scss deleted file mode 100644 index 1d106dd..0000000 --- a/assets/sass/modules/_footer.scss +++ /dev/null @@ -1,8 +0,0 @@ -footer { - border-top: $spliter; - margin-top: auto; - - p { - margin: 2rem 0; - } -} \ No newline at end of file diff --git a/assets/sass/modules/_header.scss b/assets/sass/modules/_header.scss deleted file mode 100644 index b204921..0000000 --- a/assets/sass/modules/_header.scss +++ /dev/null @@ -1,18 +0,0 @@ -header { - &>div { - padding: 2rem 1rem; - - // different padding when screen size below width-md(768px) - @media screen and (max-width: $width-md) { - padding: 2rem 1.5rem; - } - } - - .sub-title { - font-size: $font-size-l3; - display: block; - color: $color-mute; - } - - border-bottom: $spliter; -} \ No newline at end of file diff --git a/assets/sass/modules/_pagination.scss b/assets/sass/modules/_pagination.scss deleted file mode 100644 index e2e9fbf..0000000 --- a/assets/sass/modules/_pagination.scss +++ /dev/null @@ -1,28 +0,0 @@ -.pagination { - text-align: center; - // spliter between pagination and last post block - border-top: $spliter; - padding: 1rem 0; - - li { - display: inline; - - &.pag-item { - padding: 0 0.25rem; - - a { - vertical-align: middle; - } - } - - // darker number when active - &.pag-current a { - color: $color-secondary; - } - } - - i { - padding: 0 0.25rem; - vertical-align: middle; - } -} \ No newline at end of file diff --git a/assets/sass/modules/_sidebar.scss b/assets/sass/modules/_sidebar.scss deleted file mode 100644 index 14d2dff..0000000 --- a/assets/sass/modules/_sidebar.scss +++ /dev/null @@ -1,42 +0,0 @@ -#sidebar { - padding: 1.5rem 1rem; - - // different padding when screen size below width-md(768px) - @media screen and (max-width: $width-md) { - border-top: $spliter; - padding: 1.5rem; - } - - ul { - list-style-type: none; - - ul { - margin: 0 0.5rem; - font-size: 0.875rem; - } - } - - h5 { - font-size: $font-size-l3; - margin-bottom: 0.25rem; - - &~div, - &~ul, - &~nav { - margin: 0 0.1rem 1rem 0.1rem; - } - - &~img { - margin: 0 0.25rem; - padding: 0.25rem 0; - color: $color-secondary; - width: 100%; - border-radius: 2px; - filter: grayscale(50%); - - @media screen and (max-width: $width-md) { - width: 50%; - } - } - } -} \ No newline at end of file -- cgit v1.2.3