mirror of
https://github.com/bitwarden/browser
synced 2025-12-21 02:33:46 +00:00
* [deps] Autofill: Update prettier to v3.6.2 * fix: [PM-23425] Fix prettier issues related to dependency updte Signed-off-by: Ben Brooks <bbrooks@bitwarden.com> * [deps] Autofill: Update prettier to v3.6.2 * [deps] Autofill: Update prettier to v3.7.3 * [PM-29379] Fix prettier issues found with the updated Prettier 3.7.3 Signed-off-by: Ben Brooks <bbrooks@bitwarden.com> --------- Signed-off-by: Ben Brooks <bbrooks@bitwarden.com> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Ben Brooks <bbrooks@bitwarden.com>
42 lines
1.1 KiB
TypeScript
42 lines
1.1 KiB
TypeScript
import { Observable, concatMap } from "rxjs";
|
|
|
|
import {
|
|
DeriveDefinition,
|
|
DerivedState,
|
|
DerivedStateDependencies,
|
|
DerivedStateProvider,
|
|
} from "@bitwarden/state";
|
|
|
|
export class InlineDerivedStateProvider implements DerivedStateProvider {
|
|
get<TFrom, TTo, TDeps extends DerivedStateDependencies>(
|
|
parentState$: Observable<TFrom>,
|
|
deriveDefinition: DeriveDefinition<TFrom, TTo, TDeps>,
|
|
dependencies: TDeps,
|
|
): DerivedState<TTo> {
|
|
return new InlineDerivedState(parentState$, deriveDefinition, dependencies);
|
|
}
|
|
}
|
|
|
|
export 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);
|
|
}
|
|
}
|