1
0
mirror of https://github.com/bitwarden/browser synced 2025-12-16 08:13:42 +00:00

Switch to MonoTypeOperatorFunction

This commit is contained in:
Justin Baur
2024-05-25 12:21:06 -04:00
parent a0527cf44b
commit aa3d42d3a5
4 changed files with 9 additions and 17 deletions

View File

@@ -3,7 +3,7 @@
* @jest-environment ../../libs/shared/test.environment.ts
*/
import { OperatorFunction, Subject, firstValueFrom, identity } from "rxjs";
import { Subject, firstValueFrom, identity } from "rxjs";
import { DeriveDefinition } from "@bitwarden/common/platform/state";
// eslint-disable-next-line import/no-restricted-paths -- needed to define a derive definition
@@ -41,11 +41,7 @@ describe("foreground background derived state interactions", () => {
parentState$ = new Subject<string>();
background = new BackgroundDerivedState(parentState$, deriveDefinition, portName, {});
foreground = new ForegroundDerivedState<Date>(
deriveDefinition,
portName,
identity as OperatorFunction<string, Date>,
);
foreground = new ForegroundDerivedState<Date>(deriveDefinition, portName, identity);
});
afterEach(() => {

View File

@@ -1,4 +1,4 @@
import { Observable, OperatorFunction } from "rxjs";
import { MonoTypeOperatorFunction, Observable } from "rxjs";
import { DeriveDefinition, DerivedState } from "@bitwarden/common/platform/state";
// eslint-disable-next-line import/no-restricted-paths -- extending this class for this client
@@ -8,7 +8,7 @@ import { DerivedStateDependencies } from "@bitwarden/common/src/types/state";
import { ForegroundDerivedState } from "./foreground-derived-state";
export class ForegroundDerivedStateProvider extends DefaultDerivedStateProvider {
constructor(private pipeCustomizer: OperatorFunction<unknown, unknown>) {
constructor(private pipeCustomizer: MonoTypeOperatorFunction<unknown>) {
super();
}
override buildDerivedState<TFrom, TTo, TDeps extends DerivedStateDependencies>(
@@ -19,7 +19,7 @@ export class ForegroundDerivedStateProvider extends DefaultDerivedStateProvider
return new ForegroundDerivedState(
deriveDefinition,
deriveDefinition.buildCacheKey(),
this.pipeCustomizer as OperatorFunction<TFrom, TTo>,
this.pipeCustomizer as MonoTypeOperatorFunction<TTo>,
);
}
}

View File

@@ -1,5 +1,5 @@
import { awaitAsync } from "@bitwarden/common/../spec";
import { OperatorFunction, identity } from "rxjs";
import { identity } from "rxjs";
import { DeriveDefinition } from "@bitwarden/common/platform/state";
// eslint-disable-next-line import/no-restricted-paths -- needed to define a derive definition
@@ -22,11 +22,7 @@ describe("ForegroundDerivedState", () => {
beforeEach(() => {
mockPorts();
sut = new ForegroundDerivedState<Date>(
deriveDefinition,
portName,
identity as OperatorFunction<unknown, Date>,
);
sut = new ForegroundDerivedState<Date>(deriveDefinition, portName, identity);
});
afterEach(() => {

View File

@@ -1,6 +1,6 @@
import {
MonoTypeOperatorFunction,
Observable,
OperatorFunction,
ReplaySubject,
defer,
filter,
@@ -28,7 +28,7 @@ export class ForegroundDerivedState<TTo> implements DerivedState<TTo> {
constructor(
private deriveDefinition: DeriveDefinition<unknown, TTo, DerivedStateDependencies>,
private portName: string,
private pipeCustomizer: OperatorFunction<unknown, TTo>,
private pipeCustomizer: MonoTypeOperatorFunction<TTo>,
) {
const latestValueFromPort$ = (port: chrome.runtime.Port) => {
return fromChromeEvent(port.onMessage).pipe(