mirror of
https://github.com/bitwarden/browser
synced 2025-12-19 17:53:39 +00:00
[PM-8027] Inlin menu appears within input fields that do not relate to user login
This commit is contained in:
@@ -1,38 +0,0 @@
|
|||||||
import { Observable, concatMap } from "rxjs";
|
|
||||||
|
|
||||||
import { DerivedStateDependencies } from "../../../types/state";
|
|
||||||
import { DeriveDefinition } from "../derive-definition";
|
|
||||||
import { DerivedState } from "../derived-state";
|
|
||||||
import { DerivedStateProvider } from "../derived-state.provider";
|
|
||||||
|
|
||||||
export class InlineDerivedStateProvider implements DerivedStateProvider {
|
|
||||||
get<TFrom, TTo, TDeps extends DerivedStateDependencies>(
|
|
||||||
parentState$: Observable<TFrom>,
|
|
||||||
deriveDefinition: DeriveDefinition<TFrom, TTo, TDeps>,
|
|
||||||
dependencies: TDeps,
|
|
||||||
): DerivedState<TTo> {
|
|
||||||
// TODO: Cache?
|
|
||||||
return new InlineDerivedState(parentState$, deriveDefinition, dependencies);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
class InlineDerivedState<TFrom, TTo, TDeps extends DerivedStateDependencies>
|
|
||||||
implements DerivedState<TTo>
|
|
||||||
{
|
|
||||||
constructor(
|
|
||||||
parentState$: Observable<TFrom>,
|
|
||||||
deriveDefinition: DeriveDefinition<TFrom, TTo, TDeps>,
|
|
||||||
dependencies: TDeps,
|
|
||||||
) {
|
|
||||||
this.state$ = parentState$.pipe(
|
|
||||||
concatMap(async (value) => await deriveDefinition.derive(value, dependencies)),
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
state$: Observable<TTo>;
|
|
||||||
|
|
||||||
forceValue(value: TTo): Promise<TTo> {
|
|
||||||
// No need to force anything, we don't keep a cache
|
|
||||||
return Promise.resolve(value);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user