mirror of
https://github.com/bitwarden/browser
synced 2025-12-17 00:33:44 +00:00
* Split out api methods into sendApiService * Move SendService and abstraction * Libs updates * Web updates * CLI updates * Desktop updates * libs send service fixes * browser factory additions * Browser updates * Fix service injection for CLI SendReceiveCommand * Deprecate directly calling send state service methods * SendService observables updates * Update components to use new observables * Modify CLI to use state service instead of observables * Remove unnecessary await on get() * Move delete() to InternalSendService * SendService unit tests * Split fileUploadService by send and cipher * send and cipher service factory updates * Add file upload methods to get around circular dependency issues * Move api methods from sendService to sendApiService * Update cipherService to use fileApi methods * libs service injection and component changes * browser service injection and component changes * Desktop component changes * Web component changes * cipher service test fix * Fix file capitalization * CLI service import and command updates * Remove extra abstract fileUploadService * WIP: Condense callbacks for file upload Co-authored-by: Robyn MacCallum <robyntmaccallum@gmail.com> * Send callbacks for file upload * Fix circular service dependencies * Fix response return on upload * Fix function definitions * Service injection fixes and bug fixes * Fix folder casing * Service injection cleanup * Remove deleted file from capital letters whitelist * Create new SendApiService for popup * Move cipherFileUploadService to vault * Move SendFileUploadService methods into SendApiService * Rename methods to remove 'WithServer' * Properly subscribe to sendViews * Fix Send serialization * Implement fromJSON on sendFile and sendText * [PM-1347] Fix send key serialization (#4989) * Properly serialize key on send fromJSON * Remove call that nulled out decrypted sends * Fix null checks in fromJSON methods for models * lint fixes --------- Co-authored-by: Matt Gibson <mgibson@bitwarden.com>
37 lines
1.3 KiB
TypeScript
37 lines
1.3 KiB
TypeScript
import { EnvironmentService } from "@bitwarden/common/abstractions/environment.service";
|
|
import { SearchService } from "@bitwarden/common/abstractions/search.service";
|
|
import { SendService } from "@bitwarden/common/abstractions/send/send.service.abstraction";
|
|
|
|
import { Response } from "../../models/response";
|
|
import { ListResponse } from "../../models/response/list.response";
|
|
import { SendResponse } from "../../models/response/send.response";
|
|
|
|
export class SendListCommand {
|
|
constructor(
|
|
private sendService: SendService,
|
|
private environmentService: EnvironmentService,
|
|
private searchService: SearchService
|
|
) {}
|
|
|
|
async run(cmdOptions: Record<string, any>): Promise<Response> {
|
|
let sends = await this.sendService.getAllDecryptedFromState();
|
|
|
|
const normalizedOptions = new Options(cmdOptions);
|
|
if (normalizedOptions.search != null && normalizedOptions.search.trim() !== "") {
|
|
sends = this.searchService.searchSends(sends, normalizedOptions.search);
|
|
}
|
|
|
|
const webVaultUrl = this.environmentService.getWebVaultUrl();
|
|
const res = new ListResponse(sends.map((s) => new SendResponse(s, webVaultUrl)));
|
|
return Response.success(res);
|
|
}
|
|
}
|
|
|
|
class Options {
|
|
search: string;
|
|
|
|
constructor(passedOptions: Record<string, any>) {
|
|
this.search = passedOptions?.search;
|
|
}
|
|
}
|