diff --git a/apps/web/config/selfhosted.json b/apps/web/config/selfhosted.json index 6b290baa6b..e16df20ad5 100644 --- a/apps/web/config/selfhosted.json +++ b/apps/web/config/selfhosted.json @@ -7,7 +7,7 @@ "port": 8081 }, "flags": { - "secretsManager": false, + "secretsManager": true, "showPasswordless": true, "enableCipherKeyEncryption": false } diff --git a/bitwarden_license/bit-web/src/app/secrets-manager/shared/header.component.html b/bitwarden_license/bit-web/src/app/secrets-manager/shared/header.component.html index 263281ed77..b736a46d5a 100644 --- a/bitwarden_license/bit-web/src/app/secrets-manager/shared/header.component.html +++ b/bitwarden_license/bit-web/src/app/secrets-manager/shared/header.component.html @@ -51,6 +51,13 @@ + + + + {{ hostname }} + + + diff --git a/bitwarden_license/bit-web/src/app/secrets-manager/shared/header.component.ts b/bitwarden_license/bit-web/src/app/secrets-manager/shared/header.component.ts index 0b7625a390..6b62b28ca6 100644 --- a/bitwarden_license/bit-web/src/app/secrets-manager/shared/header.component.ts +++ b/bitwarden_license/bit-web/src/app/secrets-manager/shared/header.component.ts @@ -5,6 +5,7 @@ import { combineLatest, map, Observable } from "rxjs"; import { VaultTimeoutSettingsService } from "@bitwarden/common/abstractions/vault-timeout/vault-timeout-settings.service"; import { VaultTimeoutAction } from "@bitwarden/common/enums/vault-timeout-action.enum"; import { MessagingService } from "@bitwarden/common/platform/abstractions/messaging.service"; +import { PlatformUtilsService } from "@bitwarden/common/platform/abstractions/platform-utils.service"; import { StateService } from "@bitwarden/common/platform/abstractions/state.service"; import { AccountProfile } from "@bitwarden/common/platform/models/domain/account"; @@ -26,10 +27,13 @@ export class HeaderComponent { protected routeData$: Observable<{ titleId: string }>; protected account$: Observable; protected canLock$: Observable; + protected selfHosted: boolean; + protected hostname = location.hostname; constructor( private route: ActivatedRoute, private stateService: StateService, + private platformUtilsService: PlatformUtilsService, private vaultTimeoutSettingsService: VaultTimeoutSettingsService, private messagingService: MessagingService ) { @@ -41,6 +45,8 @@ export class HeaderComponent { }) ); + this.selfHosted = this.platformUtilsService.isSelfHost(); + this.account$ = combineLatest([ this.stateService.activeAccount$, this.stateService.accounts$, diff --git a/bitwarden_license/bit-web/src/app/secrets-manager/shared/header.stories.ts b/bitwarden_license/bit-web/src/app/secrets-manager/shared/header.stories.ts index 8e480ae50a..1231ba100a 100644 --- a/bitwarden_license/bit-web/src/app/secrets-manager/shared/header.stories.ts +++ b/bitwarden_license/bit-web/src/app/secrets-manager/shared/header.stories.ts @@ -13,6 +13,7 @@ import { JslibModule } from "@bitwarden/angular/jslib.module"; import { VaultTimeoutSettingsService } from "@bitwarden/common/abstractions/vault-timeout/vault-timeout-settings.service"; import { VaultTimeoutAction } from "@bitwarden/common/enums/vault-timeout-action.enum"; import { MessagingService } from "@bitwarden/common/platform/abstractions/messaging.service"; +import { PlatformUtilsService } from "@bitwarden/common/platform/abstractions/platform-utils.service"; import { StateService } from "@bitwarden/common/platform/abstractions/state.service"; import { AvatarModule, @@ -50,6 +51,12 @@ class MockVaultTimeoutService { } } +class MockPlatformUtilsService { + isSelfHost() { + return false; + } +} + @Component({ selector: "product-switcher", template: ``, @@ -97,6 +104,7 @@ export default { declarations: [HeaderComponent, MockProductSwitcher, MockDynamicAvatar], providers: [ { provide: StateService, useClass: MockStateService }, + { provide: PlatformUtilsService, useClass: MockPlatformUtilsService }, { provide: VaultTimeoutSettingsService, useClass: MockVaultTimeoutService }, { provide: MessagingService,