Restructured project

This commit is contained in:
squidfunk
2019-12-22 16:52:28 +01:00
parent d1928cc31f
commit e04387902c
45 changed files with 533 additions and 270 deletions

View File

@@ -27,9 +27,9 @@ import { Observable, defer, of } from "rxjs"
* ------------------------------------------------------------------------- */
/**
* Header
* Header state
*/
export interface Header {
export interface HeaderState {
sticky: boolean /* Header stickyness */
height: number /* Header visible height */
}
@@ -46,11 +46,11 @@ export interface Header {
*
* @param el - Header element
*
* @return Header observable
* @return Header state observable
*/
export function watchHeader(
el: HTMLElement
): Observable<Header> {
): Observable<HeaderState> {
return defer(() => {
const sticky = getComputedStyle(el)
.getPropertyValue("position") === "fixed"

View File

@@ -30,7 +30,7 @@ import {
import { Agent, ViewportOffset } from "utilities"
import { Header } from "../_"
import { HeaderState } from "../_"
/* ----------------------------------------------------------------------------
* Helper types
@@ -40,7 +40,7 @@ import { Header } from "../_"
* Options
*/
interface Options {
header$: Observable<Header> /* Header observable */
header$: Observable<HeaderState> /* Header state observable */
}
/* ----------------------------------------------------------------------------
@@ -59,7 +59,7 @@ interface Options {
*
* @return Viewport offset observable
*/
export function watchHeaderOffsetToTopOf(
export function watchViewportOffsetFromTopOf(
el: HTMLElement, { viewport }: Agent, { header$ }: Options
): Observable<ViewportOffset> {
@@ -91,7 +91,7 @@ export function watchHeaderOffsetToTopOf(
*
* @return Viewport offset observable
*/
export function watchHeaderOffsetToBottomOf(
export function watchViewportOffsetFromBottomOf(
el: HTMLElement, { viewport }: Agent, { header$ }: Options
): Observable<ViewportOffset> {

View File

@@ -34,7 +34,7 @@ import {
import { resetHeaderShadow, setHeaderShadow } from "actions"
import { Main } from "../../main"
import { MainState } from "../../main"
/* ----------------------------------------------------------------------------
* Functions
@@ -49,7 +49,7 @@ import { Main } from "../../main"
*/
export function paintHeaderShadow(
el: HTMLElement
): MonoTypeOperatorFunction<Main> {
): MonoTypeOperatorFunction<MainState> {
return pipe(
distinctUntilKeyChanged("active"),