@ethlete/core 2.3.0 → 2.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/components/structured-data/structured-data.component.mjs +3 -3
- package/esm2022/lib/directives/animatable/animatable.directive.mjs +5 -5
- package/esm2022/lib/directives/animated-lifecycle/animated-lifecycle.directive.mjs +3 -3
- package/esm2022/lib/directives/animated-overlay/animated-overlay.directive.mjs +3 -3
- package/esm2022/lib/directives/click-outside/click-outside.directive.mjs +3 -3
- package/esm2022/lib/directives/cursor-drag-scroll/cursor-drag-scroll.directive.mjs +3 -3
- package/esm2022/lib/directives/delayable/delayable.directive.mjs +3 -3
- package/esm2022/lib/directives/is-active-element/is-active-element.directive.mjs +3 -3
- package/esm2022/lib/directives/let/let.directive.mjs +3 -3
- package/esm2022/lib/directives/observe-content/observe-content.directive.mjs +3 -3
- package/esm2022/lib/directives/observe-resize/observe-resize.directive.mjs +3 -3
- package/esm2022/lib/directives/observe-scroll-state/observe-scroll-state.directive.mjs +3 -3
- package/esm2022/lib/directives/repeat/repeat.directive.mjs +3 -3
- package/esm2022/lib/directives/scroll-observer-first-element/scroll-observer-first-element.directive.mjs +3 -3
- package/esm2022/lib/directives/scroll-observer-ignore-target/scroll-observer-ignore-target.directive.mjs +3 -3
- package/esm2022/lib/directives/scroll-observer-last-element/scroll-observer-last-element.directive.mjs +3 -3
- package/esm2022/lib/directives/seo/seo.directive.mjs +3 -3
- package/esm2022/lib/pipes/normalize-game-result-type/normalize-game-result-type.pipe.mjs +3 -3
- package/esm2022/lib/pipes/normalize-match-participants/normalize-match-participants.pipe.mjs +3 -3
- package/esm2022/lib/pipes/normalize-match-score/normalize-match-score.pipe.mjs +3 -3
- package/esm2022/lib/pipes/normalize-match-state/normalize-match-state.pipe.mjs +3 -3
- package/esm2022/lib/pipes/normalize-match-type/normalize-match-type.pipe.mjs +3 -3
- package/esm2022/lib/pipes/to-array/to-array.pipe.mjs +3 -3
- package/esm2022/lib/services/click-observer.service.mjs +6 -6
- package/esm2022/lib/services/content-observer.service.mjs +6 -6
- package/esm2022/lib/services/focus-visible.service.mjs +3 -3
- package/esm2022/lib/services/resize-observer.service.mjs +6 -6
- package/esm2022/lib/services/router-state.service.mjs +20 -14
- package/esm2022/lib/services/viewport.service.mjs +75 -6
- package/fesm2022/ethlete-core.mjs +182 -108
- package/fesm2022/ethlete-core.mjs.map +1 -1
- package/lib/services/router-state.service.d.ts +50 -14
- package/lib/services/viewport.service.d.ts +23 -0
- package/package.json +6 -6
|
@@ -1,22 +1,64 @@
|
|
|
1
1
|
import { Data, Params } from '@angular/router';
|
|
2
2
|
import { Observable } from 'rxjs';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
|
-
|
|
4
|
+
declare const ET_DISABLE_SCROLL_TOP: unique symbol;
|
|
5
|
+
declare const ET_DISABLE_SCROLL_TOP_AS_RETURN_ROUTE: unique symbol;
|
|
6
|
+
declare const ET_DISABLE_SCROLL_TOP_ON_PATH_PARAM_CHANGE: unique symbol;
|
|
7
|
+
export interface RouterDisableScrollTopConfig {
|
|
8
|
+
/**
|
|
9
|
+
* Whether to disable scroll to top ONLY when navigating back to this route.
|
|
10
|
+
* @default false
|
|
11
|
+
*/
|
|
5
12
|
asReturnRoute?: boolean;
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
13
|
+
/**
|
|
14
|
+
* Whether to disable scroll to top when a path param changes.
|
|
15
|
+
* @default false
|
|
16
|
+
*/
|
|
17
|
+
onPathParamChange?: boolean;
|
|
18
|
+
}
|
|
19
|
+
export declare const routerDisableScrollTop: (config?: RouterDisableScrollTopConfig) => {
|
|
20
|
+
[ET_DISABLE_SCROLL_TOP_ON_PATH_PARAM_CHANGE]?: boolean | undefined;
|
|
21
|
+
[ET_DISABLE_SCROLL_TOP]: boolean;
|
|
9
22
|
} | {
|
|
10
|
-
|
|
11
|
-
|
|
23
|
+
[ET_DISABLE_SCROLL_TOP_ON_PATH_PARAM_CHANGE]?: boolean | undefined;
|
|
24
|
+
[ET_DISABLE_SCROLL_TOP_AS_RETURN_ROUTE]: boolean;
|
|
12
25
|
};
|
|
13
26
|
export declare const ET_PROPERTY_REMOVED: unique symbol;
|
|
27
|
+
export interface ScrollEnhancementsConfig {
|
|
28
|
+
/**
|
|
29
|
+
* The scrollable container.
|
|
30
|
+
* @default document.documentElement
|
|
31
|
+
*/
|
|
32
|
+
scrollElement?: HTMLElement;
|
|
33
|
+
/**
|
|
34
|
+
* A list of query params that should trigger a scroll to top.
|
|
35
|
+
* @default []
|
|
36
|
+
* @example ['page'] // will scroll to top when the page query param changes
|
|
37
|
+
*/
|
|
38
|
+
queryParamTriggerList?: string[];
|
|
39
|
+
/**
|
|
40
|
+
* Config for fragment scrolling.
|
|
41
|
+
*/
|
|
42
|
+
fragment?: {
|
|
43
|
+
/**
|
|
44
|
+
* Enable fragment scrolling (scroll to element with id)
|
|
45
|
+
* @default false
|
|
46
|
+
*/
|
|
47
|
+
enabled?: boolean;
|
|
48
|
+
/**
|
|
49
|
+
* Whether to use smooth scrolling or not.
|
|
50
|
+
* @default false
|
|
51
|
+
*/
|
|
52
|
+
smooth?: boolean;
|
|
53
|
+
};
|
|
54
|
+
}
|
|
14
55
|
export declare class RouterStateService {
|
|
15
56
|
private _isScrollTopOnNavigationEnabled;
|
|
16
57
|
private readonly _router;
|
|
17
58
|
private readonly _route$;
|
|
18
59
|
private readonly _state$;
|
|
19
60
|
get route$(): Observable<string>;
|
|
61
|
+
get route(): string;
|
|
20
62
|
get state$(): Observable<{
|
|
21
63
|
data: Data;
|
|
22
64
|
pathParams: Params;
|
|
@@ -45,14 +87,7 @@ export declare class RouterStateService {
|
|
|
45
87
|
get queryParamChanges$(): Observable<Partial<Params>>;
|
|
46
88
|
get pathParamChanges$(): Observable<Partial<Params>>;
|
|
47
89
|
constructor();
|
|
48
|
-
enableScrollEnhancements(config?:
|
|
49
|
-
scrollElement?: HTMLElement;
|
|
50
|
-
queryParamTriggerList?: string[];
|
|
51
|
-
fragment?: {
|
|
52
|
-
enabled?: boolean;
|
|
53
|
-
smooth?: boolean;
|
|
54
|
-
};
|
|
55
|
-
}): void;
|
|
90
|
+
enableScrollEnhancements(config?: ScrollEnhancementsConfig): void;
|
|
56
91
|
selectQueryParam<T = string | undefined>(key: string): Observable<T>;
|
|
57
92
|
selectPathParam<T = string | undefined>(key: string): Observable<T>;
|
|
58
93
|
selectData<T = unknown>(key: string): Observable<T>;
|
|
@@ -60,3 +95,4 @@ export declare class RouterStateService {
|
|
|
60
95
|
static ɵfac: i0.ɵɵFactoryDeclaration<RouterStateService, never>;
|
|
61
96
|
static ɵprov: i0.ɵɵInjectableDeclaration<RouterStateService>;
|
|
62
97
|
}
|
|
98
|
+
export {};
|
|
@@ -2,8 +2,15 @@ import { BreakpointObserver } from '@angular/cdk/layout';
|
|
|
2
2
|
import { Observable } from 'rxjs';
|
|
3
3
|
import { Breakpoint, ViewportConfig } from '../types';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
|
+
interface Size {
|
|
6
|
+
width: number;
|
|
7
|
+
height: number;
|
|
8
|
+
}
|
|
5
9
|
export declare class ViewportService {
|
|
6
10
|
private _breakpointObserver;
|
|
11
|
+
private readonly _resizeObserverService;
|
|
12
|
+
private readonly _viewportMonitorStop$;
|
|
13
|
+
private _isViewportMonitorEnabled;
|
|
7
14
|
private _viewportConfig;
|
|
8
15
|
private _isXs$;
|
|
9
16
|
private _isSm$;
|
|
@@ -11,6 +18,8 @@ export declare class ViewportService {
|
|
|
11
18
|
private _isLg$;
|
|
12
19
|
private _isXl$;
|
|
13
20
|
private _is2Xl$;
|
|
21
|
+
private _viewportSize$;
|
|
22
|
+
private _scrollbarSize$;
|
|
14
23
|
get isXs$(): Observable<boolean>;
|
|
15
24
|
get isXs(): boolean;
|
|
16
25
|
get isSm$(): Observable<boolean>;
|
|
@@ -23,6 +32,10 @@ export declare class ViewportService {
|
|
|
23
32
|
get isXl(): boolean;
|
|
24
33
|
get is2Xl$(): Observable<boolean>;
|
|
25
34
|
get is2Xl(): boolean;
|
|
35
|
+
get viewportSize$(): Observable<Size | null>;
|
|
36
|
+
get viewportSize(): Size | null;
|
|
37
|
+
get scrollbarSize$(): Observable<Size | null>;
|
|
38
|
+
get scrollbarSize(): Size | null;
|
|
26
39
|
currentViewport$: Observable<"xs" | "sm" | "md" | "lg" | "xl" | "2xl">;
|
|
27
40
|
get currentViewport(): "xs" | "sm" | "md" | "lg" | "xl" | "2xl";
|
|
28
41
|
constructor(_viewportConfig: ViewportConfig | null, _breakpointObserver: BreakpointObserver);
|
|
@@ -34,6 +47,15 @@ export declare class ViewportService {
|
|
|
34
47
|
min?: number | Breakpoint;
|
|
35
48
|
max?: number | Breakpoint;
|
|
36
49
|
}): boolean;
|
|
50
|
+
/**
|
|
51
|
+
* Applies size CSS variables to the documentElement in pixels.
|
|
52
|
+
* - `--et-vw`: viewport width excluding scrollbar width
|
|
53
|
+
* - `--et-vh`: viewport height excluding scrollbar height
|
|
54
|
+
* - `--et-sw`: scrollbar width
|
|
55
|
+
* - `--et-sh`: scrollbar height
|
|
56
|
+
*/
|
|
57
|
+
monitorViewport(): void;
|
|
58
|
+
unmonitorViewport(): void;
|
|
37
59
|
private _observeDefaultBreakpoints;
|
|
38
60
|
private _getViewportSize;
|
|
39
61
|
private _buildMediaQuery;
|
|
@@ -41,3 +63,4 @@ export declare class ViewportService {
|
|
|
41
63
|
static ɵfac: i0.ɵɵFactoryDeclaration<ViewportService, [{ optional: true; }, null]>;
|
|
42
64
|
static ɵprov: i0.ɵɵInjectableDeclaration<ViewportService>;
|
|
43
65
|
}
|
|
66
|
+
export {};
|
package/package.json
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ethlete/core",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.4.1",
|
|
4
4
|
"dependencies": {
|
|
5
5
|
"tslib": "^2.5.0"
|
|
6
6
|
},
|
|
7
7
|
"peerDependencies": {
|
|
8
8
|
"@angular/common": "^15.2.1 || ^16.0.0",
|
|
9
9
|
"@angular/core": "^15.2.1 || ^16.0.0",
|
|
10
|
-
"@angular/platform-browser": "16.0.
|
|
10
|
+
"@angular/platform-browser": "16.0.4",
|
|
11
11
|
"@ethlete/types": "1.1.1",
|
|
12
12
|
"rxjs": "7.8.1",
|
|
13
|
-
"@angular/cdk": "16.0.
|
|
14
|
-
"@popperjs/core": "2.11.
|
|
15
|
-
"@angular/router": "16.0.
|
|
16
|
-
"@angular/forms": "16.0.
|
|
13
|
+
"@angular/cdk": "16.0.3",
|
|
14
|
+
"@popperjs/core": "2.11.8",
|
|
15
|
+
"@angular/router": "16.0.4",
|
|
16
|
+
"@angular/forms": "16.0.4"
|
|
17
17
|
},
|
|
18
18
|
"module": "fesm2022/ethlete-core.mjs",
|
|
19
19
|
"typings": "index.d.ts",
|