@dereekb/dbx-core 8.1.2 → 8.4.0
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/esm2020/lib/router/router/index.mjs +2 -1
- package/esm2020/lib/router/router/provider/angular/angular.router.service.mjs +34 -15
- package/esm2020/lib/router/router/provider/uirouter/uirouter.router.service.mjs +29 -8
- package/esm2020/lib/router/router/service/router.service.mjs +1 -1
- package/esm2020/lib/router/router/util/index.mjs +3 -0
- package/esm2020/lib/router/router/util/route.default.mjs +62 -0
- package/esm2020/lib/router/router/util/route.reader.mjs +34 -0
- package/fesm2015/dereekb-dbx-core.mjs +145 -17
- package/fesm2015/dereekb-dbx-core.mjs.map +1 -1
- package/fesm2020/dereekb-dbx-core.mjs +149 -22
- package/fesm2020/dereekb-dbx-core.mjs.map +1 -1
- package/lib/router/router/index.d.ts +1 -0
- package/lib/router/router/provider/angular/angular.router.service.d.ts +3 -1
- package/lib/router/router/provider/uirouter/uirouter.router.service.d.ts +6 -3
- package/lib/router/router/service/router.service.d.ts +6 -0
- package/lib/router/router/util/index.d.ts +2 -0
- package/lib/router/router/util/route.default.d.ts +20 -0
- package/lib/router/router/util/route.reader.d.ts +52 -0
- package/package.json +4 -4
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Observable } from 'rxjs';
|
|
2
|
+
import { ObservableOrValue } from '@dereekb/rxjs';
|
|
2
3
|
import { DbxRouterService, DbxRouterTransitionService } from '../../service';
|
|
3
4
|
import { SegueRefOrSegueRefRouterLink, SegueRefRawSegueParams } from '../../../segue';
|
|
4
5
|
import { DbxRouterTransitionEvent } from '../../transition/transition';
|
|
@@ -13,7 +14,8 @@ export declare class DbxAngularRouterService implements DbxRouterService, DbxRou
|
|
|
13
14
|
readonly params$: Observable<SegueRefRawSegueParams>;
|
|
14
15
|
readonly transitions$: Observable<DbxRouterTransitionEvent>;
|
|
15
16
|
constructor(router: Router, activatedRoute: ActivatedRoute);
|
|
16
|
-
go(input: SegueRefOrSegueRefRouterLink<NavigationExtras | NavigationBehaviorOptions
|
|
17
|
+
go(input: ObservableOrValue<SegueRefOrSegueRefRouterLink<NavigationExtras | NavigationBehaviorOptions>>): Promise<boolean>;
|
|
18
|
+
updateParams(inputParams: ObservableOrValue<SegueRefRawSegueParams>): Promise<boolean>;
|
|
17
19
|
isActive(segueRef: SegueRefOrSegueRefRouterLink): boolean;
|
|
18
20
|
comparePrecision(a: SegueRefOrSegueRefRouterLink, b: SegueRefOrSegueRefRouterLink): number;
|
|
19
21
|
static ɵfac: i0.ɵɵFactoryDeclaration<DbxAngularRouterService, never>;
|
|
@@ -1,8 +1,10 @@
|
|
|
1
|
+
import { Observable } from 'rxjs';
|
|
1
2
|
import { DbxRouterService, DbxRouterTransitionService } from '../../service';
|
|
2
3
|
import { SegueRefOrSegueRefRouterLink, SegueRefRawSegueParams } from '../../../segue';
|
|
3
4
|
import { StateService, UIRouterGlobals, TransitionOptions, TransitionService } from '@uirouter/core';
|
|
4
5
|
import { OnDestroy } from '@angular/core';
|
|
5
6
|
import { DbxRouterTransitionEvent } from '../../transition/transition';
|
|
7
|
+
import { ObservableOrValue } from '@dereekb/rxjs';
|
|
6
8
|
import * as i0 from "@angular/core";
|
|
7
9
|
/**
|
|
8
10
|
* UIRouter implementation of DbxRouterService and DbxRouterTransitionService.
|
|
@@ -12,13 +14,14 @@ export declare class DbxUIRouterService implements DbxRouterService, DbxRouterTr
|
|
|
12
14
|
readonly transitionService: TransitionService;
|
|
13
15
|
readonly uiRouterGlobals: UIRouterGlobals;
|
|
14
16
|
private readonly _params;
|
|
15
|
-
readonly params$:
|
|
17
|
+
readonly params$: Observable<SegueRefRawSegueParams>;
|
|
16
18
|
private readonly _transitions;
|
|
17
|
-
readonly transitions$:
|
|
19
|
+
readonly transitions$: Observable<DbxRouterTransitionEvent>;
|
|
18
20
|
constructor(state: StateService, transitionService: TransitionService, uiRouterGlobals: UIRouterGlobals);
|
|
19
21
|
ngOnDestroy(): void;
|
|
20
22
|
get params(): import("@uirouter/core").StateParams;
|
|
21
|
-
go(input: SegueRefOrSegueRefRouterLink<TransitionOptions
|
|
23
|
+
go(input: ObservableOrValue<SegueRefOrSegueRefRouterLink<TransitionOptions>>): Promise<boolean>;
|
|
24
|
+
updateParams(inputParams: ObservableOrValue<SegueRefRawSegueParams>): Promise<boolean>;
|
|
22
25
|
isActive(input: SegueRefOrSegueRefRouterLink): boolean;
|
|
23
26
|
comparePrecision(aInput: SegueRefOrSegueRefRouterLink, bInput: SegueRefOrSegueRefRouterLink): number;
|
|
24
27
|
static ɵfac: i0.ɵɵFactoryDeclaration<DbxUIRouterService, never>;
|
|
@@ -15,6 +15,12 @@ export declare abstract class DbxRouterService {
|
|
|
15
15
|
* @param segueRef
|
|
16
16
|
*/
|
|
17
17
|
abstract go(segueRef: ObservableOrValue<SegueRefOrSegueRefRouterLink>): Promise<boolean>;
|
|
18
|
+
/**
|
|
19
|
+
* Navigates to the current url with updated parameters. Will be merged with the existing parameters.
|
|
20
|
+
*
|
|
21
|
+
* @param segueRef
|
|
22
|
+
*/
|
|
23
|
+
abstract updateParams(params: ObservableOrValue<SegueRefRawSegueParams>): Promise<boolean>;
|
|
18
24
|
/**
|
|
19
25
|
* Returns true if the input segue ref is considered active.
|
|
20
26
|
*
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { DbxRouteParamReaderInstance } from './route.reader';
|
|
2
|
+
import { Destroyable, Initialized, Maybe } from '@dereekb/util';
|
|
3
|
+
import { SwitchMapToDefaultFilterFunction } from '@dereekb/rxjs';
|
|
4
|
+
/**
|
|
5
|
+
* Utility class used in conjuction with a DbxRouteParamReaderInstance to redirect when the default param does not equal the
|
|
6
|
+
*/
|
|
7
|
+
export declare class DbxRouteParamDefaultRedirectInstance<T> implements Initialized, Destroyable {
|
|
8
|
+
readonly instance: DbxRouteParamReaderInstance<T>;
|
|
9
|
+
private _enabled;
|
|
10
|
+
private _useDefaultFilter;
|
|
11
|
+
private _sub;
|
|
12
|
+
constructor(instance: DbxRouteParamReaderInstance<T>);
|
|
13
|
+
init(): void;
|
|
14
|
+
destroy(): void;
|
|
15
|
+
protected redirectWithDefaultValue(value: Maybe<T>): Promise<boolean>;
|
|
16
|
+
protected redirectWithValue(value: Maybe<T>): Promise<boolean>;
|
|
17
|
+
get enabled(): boolean;
|
|
18
|
+
set enabled(enabled: boolean);
|
|
19
|
+
setUseDefaultFilter(useValueFilter: Maybe<SwitchMapToDefaultFilterFunction<T>>): void;
|
|
20
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { MaybeObservableOrValueGetter } from '@dereekb/rxjs';
|
|
2
|
+
import { Destroyable, Maybe } from '@dereekb/util';
|
|
3
|
+
import { Observable } from 'rxjs';
|
|
4
|
+
import { DbxRouterService } from '../service/router.service';
|
|
5
|
+
/**
|
|
6
|
+
* Interface used for reading a single value from the DbxRouterService. Supports a default value.
|
|
7
|
+
*/
|
|
8
|
+
export interface DbxRouteParamReader<T> {
|
|
9
|
+
/**
|
|
10
|
+
* The param value as read from the current router state.
|
|
11
|
+
*/
|
|
12
|
+
readonly paramValue$: Observable<Maybe<T>>;
|
|
13
|
+
/**
|
|
14
|
+
* The default value observable.
|
|
15
|
+
*/
|
|
16
|
+
readonly defaultValue$: Observable<Maybe<T>>;
|
|
17
|
+
/**
|
|
18
|
+
* The final computed value
|
|
19
|
+
*/
|
|
20
|
+
readonly value$: Observable<Maybe<T>>;
|
|
21
|
+
/**
|
|
22
|
+
* Param key getter/setters.
|
|
23
|
+
*/
|
|
24
|
+
get paramKey(): string;
|
|
25
|
+
set paramKey(paramKey: Maybe<string>);
|
|
26
|
+
/**
|
|
27
|
+
* Sets the default value source.
|
|
28
|
+
*
|
|
29
|
+
* @param defaultValue
|
|
30
|
+
*/
|
|
31
|
+
setDefaultValue(defaultValue: MaybeObservableOrValueGetter<T>): void;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Utility class used for reading a single value from the DbxRouterService.
|
|
35
|
+
*/
|
|
36
|
+
export declare class DbxRouteParamReaderInstance<T> implements DbxRouteParamReader<T>, Destroyable {
|
|
37
|
+
readonly dbxRouterService: DbxRouterService;
|
|
38
|
+
readonly defaultParamKey: string;
|
|
39
|
+
readonly defaultValue?: MaybeObservableOrValueGetter<T>;
|
|
40
|
+
private _paramKey;
|
|
41
|
+
readonly paramKey$: Observable<string>;
|
|
42
|
+
private _defaultValue;
|
|
43
|
+
readonly paramValue$: Observable<Maybe<T>>;
|
|
44
|
+
readonly nextDefaultValue$: Observable<Maybe<T>>;
|
|
45
|
+
readonly defaultValue$: Observable<Maybe<T>>;
|
|
46
|
+
readonly value$: Observable<Maybe<T>>;
|
|
47
|
+
constructor(dbxRouterService: DbxRouterService, defaultParamKey: string, defaultValue?: MaybeObservableOrValueGetter<T>);
|
|
48
|
+
destroy(): void;
|
|
49
|
+
get paramKey(): string;
|
|
50
|
+
set paramKey(paramKey: Maybe<string>);
|
|
51
|
+
setDefaultValue(defaultValue: MaybeObservableOrValueGetter<T>): void;
|
|
52
|
+
}
|
package/package.json
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dereekb/dbx-core",
|
|
3
|
-
"version": "8.
|
|
3
|
+
"version": "8.4.0",
|
|
4
4
|
"peerDependencies": {
|
|
5
5
|
"@angular/common": "^13.0.0",
|
|
6
6
|
"@angular/core": "^13.0.0",
|
|
7
|
-
"@dereekb/util": "8.
|
|
8
|
-
"@dereekb/rxjs": "8.
|
|
7
|
+
"@dereekb/util": "8.4.0",
|
|
8
|
+
"@dereekb/rxjs": "8.4.0",
|
|
9
9
|
"@ngrx/component-store": "^13.0.2",
|
|
10
10
|
"@angular/platform-browser": "^13.0.0",
|
|
11
11
|
"@ngrx/effects": "^13.0.2",
|
|
12
12
|
"@ngrx/store": "^13.0.2",
|
|
13
13
|
"@uirouter/core": "^6.0.8",
|
|
14
14
|
"date-fns": "^2.28.0",
|
|
15
|
-
"@dereekb/date": "8.
|
|
15
|
+
"@dereekb/date": "8.4.0",
|
|
16
16
|
"@angular/router": "^13.0.0"
|
|
17
17
|
},
|
|
18
18
|
"dependencies": {
|