diff --git a/apps/desktop/src/app/tools/send/add-edit.component.ts b/apps/desktop/src/app/tools/send/add-edit.component.ts
index de5d2a601a..98764866a5 100644
--- a/apps/desktop/src/app/tools/send/add-edit.component.ts
+++ b/apps/desktop/src/app/tools/send/add-edit.component.ts
@@ -1,5 +1,6 @@
import { DatePipe } from "@angular/common";
import { Component } from "@angular/core";
+import { FormBuilder } from "@angular/forms";
import { AddEditComponent as BaseAddEditComponent } from "@bitwarden/angular/tools/send/add-edit.component";
import { PolicyService } from "@bitwarden/common/admin-console/abstractions/policy/policy.service.abstraction";
@@ -29,7 +30,8 @@ export class AddEditComponent extends BaseAddEditComponent {
policyService: PolicyService,
logService: LogService,
sendApiService: SendApiService,
- dialogService: DialogService
+ dialogService: DialogService,
+ formBuilder: FormBuilder
) {
super(
i18nService,
@@ -42,7 +44,8 @@ export class AddEditComponent extends BaseAddEditComponent {
logService,
stateService,
sendApiService,
- dialogService
+ dialogService,
+ formBuilder
);
}
@@ -50,6 +53,7 @@ export class AddEditComponent extends BaseAddEditComponent {
this.password = null;
const send = await this.loadSend();
this.send = await send.decrypt();
+ this.updateFormValues();
this.hasPassword = this.send.password != null && this.send.password.trim() !== "";
}
@@ -65,4 +69,11 @@ export class AddEditComponent extends BaseAddEditComponent {
this.i18nService.t("valueCopied", this.i18nService.t("sendLink"))
);
}
+
+ async resetAndLoad() {
+ this.sendId = null;
+ this.send = null;
+ await this.load();
+ this.updateFormValues();
+ }
}
diff --git a/apps/desktop/src/app/tools/send/efflux-dates.component.html b/apps/desktop/src/app/tools/send/efflux-dates.component.html
deleted file mode 100644
index 156dfae9dd..0000000000
--- a/apps/desktop/src/app/tools/send/efflux-dates.component.html
+++ /dev/null
@@ -1,62 +0,0 @@
-
-
-
-
-
-
- {{ "deletionDateDesc" | i18n }}
-
-
-
-
- {{
- "deletionDateDesc" | i18n
- }}
-
-
-
-
- {{ "expirationDateDesc" | i18n }}
-
-
-
-
- {{
- "expirationDateDesc" | i18n
- }}
-
-
-
-
diff --git a/apps/desktop/src/app/tools/send/efflux-dates.component.ts b/apps/desktop/src/app/tools/send/efflux-dates.component.ts
deleted file mode 100644
index 40215348d5..0000000000
--- a/apps/desktop/src/app/tools/send/efflux-dates.component.ts
+++ /dev/null
@@ -1,38 +0,0 @@
-import { DatePipe } from "@angular/common";
-import { Component, OnChanges } from "@angular/core";
-import { ControlContainer, NgForm } from "@angular/forms";
-
-import { EffluxDatesComponent as BaseEffluxDatesComponent } from "@bitwarden/angular/tools/send/efflux-dates.component";
-import { I18nService } from "@bitwarden/common/platform/abstractions/i18n.service";
-import { PlatformUtilsService } from "@bitwarden/common/platform/abstractions/platform-utils.service";
-
-@Component({
- selector: "app-send-efflux-dates",
- templateUrl: "efflux-dates.component.html",
- viewProviders: [{ provide: ControlContainer, useExisting: NgForm }],
-})
-export class EffluxDatesComponent extends BaseEffluxDatesComponent implements OnChanges {
- constructor(
- protected i18nService: I18nService,
- protected platformUtilsService: PlatformUtilsService,
- protected datePipe: DatePipe
- ) {
- super(i18nService, platformUtilsService, datePipe);
- }
-
- // We reuse the same form on desktop and just swap content, so need to watch these to maintin proper values.
- ngOnChanges() {
- this.selectedExpirationDatePreset.setValue(0);
- this.selectedDeletionDatePreset.setValue(0);
- this.defaultDeletionDateTime.setValue(
- this.datePipe.transform(new Date(this.initialDeletionDate), "yyyy-MM-ddTHH:mm")
- );
- if (this.initialExpirationDate) {
- this.defaultExpirationDateTime.setValue(
- this.datePipe.transform(new Date(this.initialExpirationDate), "yyyy-MM-ddTHH:mm")
- );
- } else {
- this.defaultExpirationDateTime.setValue(null);
- }
- }
-}
diff --git a/apps/desktop/src/app/tools/send/send.component.ts b/apps/desktop/src/app/tools/send/send.component.ts
index 7ad98ceda1..21b759e49b 100644
--- a/apps/desktop/src/app/tools/send/send.component.ts
+++ b/apps/desktop/src/app/tools/send/send.component.ts
@@ -91,12 +91,10 @@ export class SendComponent extends BaseSendComponent implements OnInit, OnDestro
this.searchBarService.setEnabled(false);
}
- addSend() {
+ async addSend() {
this.action = Action.Add;
if (this.addEditComponent != null) {
- this.addEditComponent.sendId = null;
- this.addEditComponent.send = null;
- this.addEditComponent.load();
+ await this.addEditComponent.resetAndLoad();
}
}
diff --git a/apps/web/src/app/shared/loose-components.module.ts b/apps/web/src/app/shared/loose-components.module.ts
index 62702349f9..4552162cc8 100644
--- a/apps/web/src/app/shared/loose-components.module.ts
+++ b/apps/web/src/app/shared/loose-components.module.ts
@@ -93,7 +93,6 @@ import { GeneratorComponent } from "../tools/generator.component";
import { PasswordGeneratorHistoryComponent } from "../tools/password-generator-history.component";
import { AccessComponent } from "../tools/send/access.component";
import { AddEditComponent as SendAddEditComponent } from "../tools/send/add-edit.component";
-import { EffluxDatesComponent as SendEffluxDatesComponent } from "../tools/send/efflux-dates.component";
import { ToolsComponent } from "../tools/tools.component";
import { PasswordRepromptComponent } from "../vault/components/password-reprompt.component";
import { PremiumBadgeComponent } from "../vault/components/premium-badge.component";
@@ -198,7 +197,6 @@ import { SharedModule } from "./shared.module";
SecurityKeysComponent,
SelectableAvatarComponent,
SendAddEditComponent,
- SendEffluxDatesComponent,
SetPasswordComponent,
SettingsComponent,
ShareComponent,
@@ -302,7 +300,6 @@ import { SharedModule } from "./shared.module";
SecurityKeysComponent,
SelectableAvatarComponent,
SendAddEditComponent,
- SendEffluxDatesComponent,
SetPasswordComponent,
SettingsComponent,
ShareComponent,
diff --git a/apps/web/src/app/tools/send/add-edit.component.html b/apps/web/src/app/tools/send/add-edit.component.html
index 9cd90840b6..319d988f21 100644
--- a/apps/web/src/app/tools/send/add-edit.component.html
+++ b/apps/web/src/app/tools/send/add-edit.component.html
@@ -1,303 +1,276 @@
-