1
0
mirror of https://github.com/bitwarden/browser synced 2025-12-12 14:23:32 +00:00

[STRICT TS] Migrate platform abstract services functions (#8527)

We currently use a callback syntax for abstract services. This syntax isn't completely strict compliant and will fail the strictPropertyInitialization check. We also currently don't get any compile time errors if we forget to implement a function.

To that end this PR updates all platform owned services to use the appropriate abstract keyword for non implemented functions. I also updated the fields to be actual functions and not properties.
This commit is contained in:
Oscar Hinton
2024-03-28 12:01:09 +01:00
committed by GitHub
parent d10c14791d
commit 2edc156dd6
25 changed files with 232 additions and 212 deletions

View File

@@ -9,5 +9,5 @@ export interface FormGroupControls {
}
export abstract class FormValidationErrorsService {
getFormValidationErrors: (controls: FormGroupControls) => AllValidationErrors[];
abstract getFormValidationErrors(controls: FormGroupControls): AllValidationErrors[];
}

View File

@@ -11,12 +11,12 @@ export abstract class AbstractThemingService {
* The effective theme based on the user configured choice and the current system theme if
* the configured choice is {@link ThemeType.System}.
*/
theme$: Observable<ThemeType>;
abstract theme$: Observable<ThemeType>;
/**
* Listens for effective theme changes and applies changes to the provided document.
* @param document The document that should have theme classes applied to it.
*
* @returns A subscription that can be unsubscribed from to cancel the application of theme classes.
*/
applyThemeChangesTo: (document: Document) => Subscription;
abstract applyThemeChangesTo(document: Document): Subscription;
}