From ec8606cc49857cb7ff99fa8f9dde97f9cdf5815c Mon Sep 17 00:00:00 2001 From: undefined Date: Wed, 26 May 2021 00:11:26 +0800 Subject: [PATCH] ui: remove header --- .../ui-default/components/navigation/index.js | 97 ------------------ .../navigation/nav-logo-small@2x_light.png | Bin 4280 -> 0 bytes .../navigation/nav-logo-small_light.png | Bin 1781 -> 0 bytes .../components/navigation/navigation.page.js | 28 ----- .../navigation/navigation.page.styl | 65 ++++++------ .../components/nprogress/nprogress.page.styl | 17 ++- .../components/sticky/sticky.page.js | 10 +- .../components/table/StyledTable.js | 10 +- packages/ui-default/handler.js | 18 +--- packages/ui-default/misc/structure.styl | 2 +- packages/ui-default/package.json | 2 +- .../ui-default/pages/problem_detail.page.jsx | 11 -- packages/ui-default/setting.yaml | 30 ------ .../templates/components/md_hint.html | 6 +- packages/ui-default/templates/extra.css | 37 +------ .../ui-default/templates/partials/header.html | 6 -- 16 files changed, 58 insertions(+), 281 deletions(-) delete mode 100644 packages/ui-default/components/navigation/index.js delete mode 100644 packages/ui-default/components/navigation/nav-logo-small@2x_light.png delete mode 100644 packages/ui-default/components/navigation/nav-logo-small_light.png diff --git a/packages/ui-default/components/navigation/index.js b/packages/ui-default/components/navigation/index.js deleted file mode 100644 index 1ed699da3..000000000 --- a/packages/ui-default/components/navigation/index.js +++ /dev/null @@ -1,97 +0,0 @@ -import _ from 'lodash'; -import responsiveCutoff from 'vj/breakpoints.json'; -import { isBelow } from 'vj/utils/mediaQuery'; - -class MultipleStateContainer { - constructor(onStateChange, initialState = false) { - this.onStateChange = onStateChange; - this.states = {}; - this.currentState = initialState; - } - - set(name, value, update = true) { - this.states[name] = value; - if (update) { - this.update(); - } - } - - get(name) { - return this.states[name]; - } - - update() { - const newState = this.getState(); - if (newState !== this.currentState) { - this.onStateChange(newState); - this.currentState = newState; - } - } - - getState() { - return _.values(this.states).indexOf(true) > -1; - } -} - -class Navigation { - constructor($nav, $navShadow) { - this.updateExpandWidth = _.throttle(this.updateExpandWidthImmediate.bind(this), 200); - this.$nav = $nav; - this.$navRow = $nav.children('.row'); - this.$navShadow = $navShadow; - this.floating = new MultipleStateContainer(this.updateFloating.bind(this)); - this.logoVisible = new MultipleStateContainer(this.updateLogoVisibility.bind(this)); - this.expanded = new MultipleStateContainer(this.updateExpandState.bind(this)); - } - - updateFloating(state) { - if (state) { - this.$nav.addClass('floating'); - this.$navShadow.addClass('floating'); - $('body').addClass('nav--floating'); - } else { - this.$nav.removeClass('floating'); - this.$navShadow.removeClass('floating'); - $('body').removeClass('nav--floating'); - } - } - - updateLogoVisibility(state) { - if (state) { - this.$nav.addClass('showlogo'); - } else { - this.$nav.removeClass('showlogo'); - } - } - - updateExpandWidthImmediate() { - this.$navRow.css('max-width', `${window.innerWidth}px`); - } - - updateExpandState(state) { - if (state) { - $(window).on('resize', this.updateExpandWidth); - this.updateExpandWidthImmediate(); - } else { - $(window).off('resize', this.updateExpandWidth); - this.$navRow.css('max-width', ''); - } - } - - getHeight() { - if (isBelow(responsiveCutoff.mobile)) { - return 0; - } - if (this.$nav.length === 0) { - return 0; - } - if (!this._navHeight) { - this._navHeight = this.$nav.height(); - } - return this._navHeight; - } -} - -Navigation.instance = new Navigation($('.nav'), $('.nav--shadow')); - -export default Navigation; diff --git a/packages/ui-default/components/navigation/nav-logo-small@2x_light.png b/packages/ui-default/components/navigation/nav-logo-small@2x_light.png deleted file mode 100644 index 3f4726b85ea60f46c494c9b02ccafc62d30d47fb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4280 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 a2>B0sS!a^rxjWqe0000kL+%s>Ae-#;_&E&LZ3 z$6im+8~{k@iR%df2t+MjX5mkDiJejIADlT5iTXAJEhRj=dEWRVIS%dc14BYb@jM>@0Nnt< z>1FNMFFeSC2Zcs<@8N&-?!CeZ6qtxS-z(tlFL<60b#ZMqj-0(LLg>TM&Am-OWQy+I z&am_G%0W9B3#Cc7DJ4QwGrf{=LGv$ZNH_bkgzA>y2`hF@QDV|h7)%W|eUnwVotO9JzNB5@Pi01nP2SkhbOmkO z8qvkowFCC}u!zwUZr!>arBJDpY949N)zoP&cuJ)*5Clk0*?SMsb8XdnI3llBDT@HW z1u#LzI@0a9B9%TUU**%@_bWViHT%~@P5q-1+11|VYq!G-w+X><$Guyn!P z!N{nq)y1(Kn=g^RW1E@5rD2XoFSy^$Yqi-@cqSMmi zlH=$QouI?G6<^O0lcy4Ehd`;6)z?M&rHdC58Gt{PPIq~EWd_>F&dS(NCW`RfYqgR{ih>>P($7r8hox4GpSbSwHEKU!=~r8q4F;fZa^n9Y`^#fuju z0e}_&9%ISzPR?$)mz#4LCyhDn(!*+XF+NL*iZ3yM{)hYHvem6Zk*PQ{lGXNJH1h(5US#3z)$-9{%mfy)EhrhvFl6ZJZJ788?jiv$snuzq6 zb=dHc{c+D~wIB+noU7Msva>G6TdY={MpIw1J|=43nV*lQa?hH~Qu&}X6K^MENO&Yp z+8=jpjoqKT`yk4sUS2Yb*=$4FY&JCj$AP?}>^Jgfq9(Owoe;b?HXrN_L${?n1mX?X_y= z7bti~+H)s6c#dbb1{R(wIoM?iM4a6oI&IVZ%_WY%ut72zA?9dzQxZFy&!ZRlZSMPT z`z`$w;6QIX_mDv{-_@(*Ci->k+)G|wR+N&QbZ+nd!*^+9>CJ-hq$LJ 20; - if (nav.floating.get('nonTop') !== currentState) { - nav.floating.set('nonTop', currentState); - nav.logoVisible.set('nonTop', currentState); - } -} function handleNavLogoutClick(ev) { const $logoutLink = $(ev.currentTarget); @@ -30,19 +15,6 @@ const navigationPage = new AutoloadPage('navigationPage', () => { if (!document.getElementById('panel') || !document.getElementById('menu')) { return; } - if ($nav.length > 0 - && document.documentElement.getAttribute('data-layout') === 'basic' - && isAbove(responsiveCutoff.mobile) - ) { - $(window).on('scroll', _.throttle(handleScroll, 100)); - $nav.hover( - () => nav.floating.set('hover', true), - () => nav.floating.set('hover', false), - ); - $nav.on('vjDropdownShow', () => nav.floating.set('dropdown', true)); - $nav.on('vjDropdownHide', () => nav.floating.set('dropdown', false)); - handleScroll(); - } $(document).on('click', '[name="nav_logout"]', handleNavLogoutClick); diff --git a/packages/ui-default/components/navigation/navigation.page.styl b/packages/ui-default/components/navigation/navigation.page.styl index c979b1dfe..55ae1b6d2 100644 --- a/packages/ui-default/components/navigation/navigation.page.styl +++ b/packages/ui-default/components/navigation/navigation.page.styl @@ -11,6 +11,32 @@ transition: background .2s transition-timing-function: ease-out-cubic z-index: 500 + background: rgba(#FFF, 0.98) + + .nav__logo + width: rem($nav-logo-width + 10) + opacity: 1 + + .nav__item + color: $text-1-color + &.nav--active + border-color: $nav-item-active-color + &:before + box-shadow: 0 0 30px $nav-item-active-color, + 0 0 30px $nav-item-active-color + &:hover + border-color: $nav-item-hover-color + background: #F8F8F8 + &:before + box-shadow: none + + .nav__item--round + border-color: $primary-color + color: $primary-color + + &:hover + background-color: $primary-color + color: #FFF .hasjs & position: fixed @@ -32,6 +58,7 @@ z-index: 300 transition: box-shadow .2s transition-timing-function: ease-out-cubic + box-shadow: 0 0 6px rgba(#000, 0.3) .nojs & display: none @@ -47,7 +74,7 @@ line-height: rem($nav-item-height - 6) padding: rem(0 20px 3px 20px) border-top: 3px solid transparent - color: #FFF + color: #000 transition: border-color .2s, background .2s, color .2s transition-timing-function: ease-out-cubic position: relative @@ -61,7 +88,7 @@ height: 1px &:visited, &:active - color: #FFF + color: #000 &.nav--active border-color: $nav-item-active-immersive-color @@ -108,9 +135,7 @@ margin-left: rem(5px) .nav__logo__options - background-image: url(./nav-logo-small_light.png) background-image: url(./nav-logo-small_dark.png) - background-image: url(./nav-logo-small@2x_light.png) background-image: url(./nav-logo-small@2x_dark.png) .nav__logo @@ -131,38 +156,6 @@ +mobile() display: none -.nav.showlogo, .layout--immersive - .nav__logo - width: rem($nav-logo-width + 10) - opacity: 1 - -.nav.floating, .nojs .nav - background: rgba(#FFF, 0.98) - - .nav__item - color: $text-1-color - &.nav--active - border-color: $nav-item-active-color - &:before - box-shadow: 0 0 30px $nav-item-active-color, - 0 0 30px $nav-item-active-color - &:hover - border-color: $nav-item-hover-color - background: #F8F8F8 - &:before - box-shadow: none - - .nav__item--round - border-color: $primary-color - color: $primary-color - - &:hover - background-color: $primary-color - color: #FFF - -.nav--shadow.floating - box-shadow: 0 0 6px rgba(#000, 0.3) - // For Mobile: show a slideout vertical arranged menu +mobile() diff --git a/packages/ui-default/components/nprogress/nprogress.page.styl b/packages/ui-default/components/nprogress/nprogress.page.styl index 9315258da..4c6a724e9 100644 --- a/packages/ui-default/components/nprogress/nprogress.page.styl +++ b/packages/ui-default/components/nprogress/nprogress.page.styl @@ -13,9 +13,8 @@ $spinner-margin = ($nav-item-height - $spinner-size) / 2 width: 100% height: 2px - .nav--floating & - +above(rupture.mobile-cutoff) - background: $nprogress-color-floating + &+above(rupture.mobile-cutoff) + background: $nprogress-color-floating #nprogress .peg display: block @@ -27,9 +26,8 @@ $spinner-margin = ($nav-item-height - $spinner-size) / 2 opacity: 1.0 transform: rotate(3deg) translate(0px, -4px) - .nav--floating & - +above(rupture.mobile-cutoff) - box-shadow: 0 0 10px $nprogress-color-floating, 0 0 5px $nprogress-color-floating + &+above(rupture.mobile-cutoff) + box-shadow: 0 0 10px $nprogress-color-floating, 0 0 5px $nprogress-color-floating #nprogress .spinner display: block @@ -48,10 +46,9 @@ $spinner-margin = ($nav-item-height - $spinner-size) / 2 border-radius: 50% animation: nprogress-spinner 400ms linear infinite - .nav--floating & - +above(rupture.mobile-cutoff) - border-top-color: $nprogress-color-floating - border-left-color: $nprogress-color-floating + &+above(rupture.mobile-cutoff) + border-top-color: $nprogress-color-floating + border-left-color: $nprogress-color-floating .nprogress-custom-parent overflow: hidden diff --git a/packages/ui-default/components/sticky/sticky.page.js b/packages/ui-default/components/sticky/sticky.page.js index 28938f120..1c560e954 100644 --- a/packages/ui-default/components/sticky/sticky.page.js +++ b/packages/ui-default/components/sticky/sticky.page.js @@ -1,11 +1,13 @@ import 'sticky-kit/dist/sticky-kit'; import _ from 'lodash'; - +import { isBelow, isAbove } from 'vj/utils/mediaQuery'; import { AutoloadPage } from 'vj/misc/Page'; -import Navigation from 'vj/components/navigation'; -import { isAbove } from 'vj/utils/mediaQuery'; import responsiveCutoff from 'vj/breakpoints.json'; +const navHeight = isBelow(responsiveCutoff.mobile) + ? 0 + : $('.nav').height(); + function updateStickies($stickies) { $stickies.get().forEach((element) => { const $sticky = $(element); @@ -17,7 +19,7 @@ function updateStickies($stickies) { if ($stickyParent.length > 0) { stickyOptions.parent = $stickyParent; } - stickyOptions.offset_top = 10 + Navigation.instance.getHeight(); + stickyOptions.offset_top = 10 + navHeight; $sticky.stick_in_parent(stickyOptions); $sticky.data('sticky-enabled', true); } else if (!shouldEnableSticky && stickyEnabled) { diff --git a/packages/ui-default/components/table/StyledTable.js b/packages/ui-default/components/table/StyledTable.js index cc51b60fc..31101553d 100644 --- a/packages/ui-default/components/table/StyledTable.js +++ b/packages/ui-default/components/table/StyledTable.js @@ -1,8 +1,12 @@ import 'sticky-kit/dist/sticky-kit'; import _ from 'lodash'; - -import Navigation from 'vj/components/navigation'; import DOMAttachedObject from 'vj/components/DOMAttachedObject'; +import { isBelow } from 'vj/utils/mediaQuery'; +import responsiveCutoff from 'vj/breakpoints.json'; + +const navHeight = isBelow(responsiveCutoff.mobile) + ? 0 + : $('.nav').height(); export default class StyledTable extends DOMAttachedObject { static DOMAttachKey = 'vjStyledTableInstance'; @@ -33,7 +37,7 @@ export default class StyledTable extends DOMAttachedObject { const stickyOptions = { parent: this.$container, - offset_top: Navigation.instance.getHeight(), + offset_top: navHeight, }; _.defer(() => this.$header.stick_in_parent(stickyOptions)); } diff --git a/packages/ui-default/handler.js b/packages/ui-default/handler.js index 2e8ff0f18..1cdcb8f03 100644 --- a/packages/ui-default/handler.js +++ b/packages/ui-default/handler.js @@ -60,27 +60,13 @@ class UiSettingsHandler extends Handler { } async get({ domainId }) { - const [ - header_logo, header_logo_2x, - nav_logo_dark, nav_logo_light, - nav_logo_dark_2x, nav_logo_light_2x, - header_background, header_background_2x, - ] = system.getMany([ - 'ui-default.header_logo', 'ui-default.header_logo_2x', - 'ui-default.nav_logo_dark', 'ui-default.nav_logo_light', - 'ui-default.nav_logo_dark_2x', 'ui-default.nav_logo_light_2x', - 'ui-default.header_background', 'ui-default.header_background2x', + const [nav_logo_dark, nav_logo_dark_2x] = system.getMany([ + 'ui-default.nav_logo_dark', 'ui-default.nav_logo_dark_2x', ]); const ddoc = await domain.get(domainId); this.response.body = await this.renderHTML('extra.css', { - header_logo, - header_logo_2x, nav_logo_dark, - nav_logo_light, nav_logo_dark_2x, - nav_logo_light_2x, - header_background, - header_background_2x, ...ddoc, }); this.response.type = 'text/css'; diff --git a/packages/ui-default/misc/structure.styl b/packages/ui-default/misc/structure.styl index 73ef77448..828881a91 100644 --- a/packages/ui-default/misc/structure.styl +++ b/packages/ui-default/misc/structure.styl @@ -21,7 +21,7 @@ flex: 1 +above(rupture.desktop-cutoff) - padding: rem(30px 0) + padding: 4rem 0rem +mobile() padding: 0 diff --git a/packages/ui-default/package.json b/packages/ui-default/package.json index cd427354c..1ddd18eb9 100644 --- a/packages/ui-default/package.json +++ b/packages/ui-default/package.json @@ -1,6 +1,6 @@ { "name": "@hydrooj/ui-default", - "version": "4.9.2", + "version": "4.10.0", "author": "undefined ", "license": "AGPL-3.0", "main": "hydro.js", diff --git a/packages/ui-default/pages/problem_detail.page.jsx b/packages/ui-default/pages/problem_detail.page.jsx index e30e170d3..af2d55320 100644 --- a/packages/ui-default/pages/problem_detail.page.jsx +++ b/packages/ui-default/pages/problem_detail.page.jsx @@ -2,14 +2,10 @@ import yaml from 'js-yaml'; import { getScoreColor } from '@hydrooj/utils/lib/status'; import * as echarts from 'echarts'; import { NamedPage } from 'vj/misc/Page'; -import Navigation from 'vj/components/navigation'; -import Notification from 'vj/components/notification/index'; import { ActionDialog } from 'vj/components/dialog'; import { downloadProblemSet } from 'vj/components/zipDownloader'; import loadReactRedux from 'vj/utils/loadReactRedux'; import delay from 'vj/utils/delay'; -import i18n from 'vj/utils/i18n'; -import request from 'vj/utils/request'; import base64 from 'vj/utils/base64'; class ProblemPageExtender { @@ -33,9 +29,6 @@ class ProblemPageExtender { this.$content.transition({ opacity: 0 }, { duration: 100 }); await delay(100); - Navigation.instance.floating.set('scratchpad', true); - Navigation.instance.logoVisible.set('scratchpad', true); - Navigation.instance.expanded.set('scratchpad', true); $('body').addClass('header--collapsed mode--scratchpad'); await this.$scratchpadContainer .css({ @@ -77,10 +70,6 @@ class ProblemPageExtender { .get(0) .getBoundingClientRect(); - Navigation.instance.floating.set('scratchpad', false); - Navigation.instance.logoVisible.set('scratchpad', false); - Navigation.instance.expanded.set('scratchpad', false); - $('body').removeClass('header--collapsed mode--scratchpad'); await this.$scratchpadContainer diff --git a/packages/ui-default/setting.yaml b/packages/ui-default/setting.yaml index a177e18bd..3c7b630ea 100644 --- a/packages/ui-default/setting.yaml +++ b/packages/ui-default/setting.yaml @@ -3,41 +3,11 @@ footer_extra_html: name: footer_extra_html desc: Footer Extra HTML default: '' -header_logo: - type: text - name: header_logo - desc: Header Logo - default: /components/header/header-logo.png -header_logo_2x: - type: text - name: header_logo_2x - desc: Header Logo@2x - default: /components/header/header-logo@2x.png -header_background: - type: text - name: header_background - desc: Header Background - default: /components/header/header-background.png -header_background_2x: - type: text - name: header_background_2x - desc: Header Background@2x - default: /components/header/header-background@2x.png -nav_logo_light: - type: text - name: nav_logo_light - desc: Nav Logo Light - default: /components/navigation/nav-logo-small_light.png nav_logo_dark: type: text name: nav_logo_dark desc: Nav Logo Dark default: /components/navigation/nav-logo-small_dark.png -nav_logo_light_2x: - type: text - name: nav_logo_light_2x - desc: Nav Logo Light@2x - default: /components/navigation/nav-logo-small@2x_light.png nav_logo_dark_2x: type: text name: nav_logo_dark_2x diff --git a/packages/ui-default/templates/components/md_hint.html b/packages/ui-default/templates/components/md_hint.html index f1281fbf0..cc916360c 100644 --- a/packages/ui-default/templates/components/md_hint.html +++ b/packages/ui-default/templates/components/md_hint.html @@ -10,9 +10,9 @@ return 0; } ```
{{ _('Inline formulas') }}
-
$ E=mc^2 $
+
$E=mc^2$
{{ _('Formula blocks') }}
-
$$ E=mc^2 $$
+
$$E=mc^2$$
{{ _('Links') }}
[{{ _('Text') }}](https://...)
{{ _('Highlight') }}
@@ -26,7 +26,7 @@ return 0; [^1]: Here is the footnote.
{{ _('Videos') }}
-
@[{{ _('Description') }}](https://.../file.mp4)
+
@[video](https://.../file.mp4)

{{ _('Learn More') }}

    diff --git a/packages/ui-default/templates/extra.css b/packages/ui-default/templates/extra.css index 051c1230a..4026538a8 100644 --- a/packages/ui-default/templates/extra.css +++ b/packages/ui-default/templates/extra.css @@ -1,45 +1,12 @@ -/* {% if header_logo %} */ -.header__logo { - background: url({{header_logo}}) -} -/* {% endif %} */ - -/* {% if header_background %} */ -.header { - background: url({{header_background}}) -} -/* {% endif %} */ - -/* {% if nav_logo_light %} */ -.nav__logo, .header--mobile__domain.is--system { - background-image: url({{nav_logo_light}}) -} -/* {% endif %} */ - /* {% if nav_logo_dark %} */ -.nav.floating .nav__logo, .nojs .nav .nav__logo { +.nav__logo { background-image: url({{nav_logo_dark}}) !important } /* {% endif %} */ @media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min-resolution: 1.5dppx), only screen and (min-resolution: 144dpi) { - /* {% if header_2x %} */ - .header__logo { - background-image: url({{header_2x}}) - } - /* {% endif %} */ - /* {% if header_background_2x %} */ - .header { - background-image: url({{header_background_2x}}) - } - /* {% endif %} */ - /* {% if nav_logo_light_2x %} */ - .nav__logo, .header--mobile__domain.is--system { - background-image: url({{nav_logo_light_2x}}) !important - } - /* {% endif %} */ /* {% if nav_logo_dark_2x %} */ - .nav.floating .nav__logo, .nojs .nav .nav__logo, .header--mobile__domain.is--system { + .nav__logo, .header--mobile__domain.is--system { background-image: url({{nav_logo_dark_2x}}) !important } /* {% endif %} */ diff --git a/packages/ui-default/templates/partials/header.html b/packages/ui-default/templates/partials/header.html index 8ba1591ff..e69de29bb 100644 --- a/packages/ui-default/templates/partials/header.html +++ b/packages/ui-default/templates/partials/header.html @@ -1,6 +0,0 @@ -
    -
    - -
    - {% include "partials/path.html" %} -