mirror of
https://github.com/bitwarden/browser
synced 2025-12-25 04:33:34 +00:00
Split jslib into multiple modules (#363)
* Split jslib into multiple modules
This commit is contained in:
45
node/src/cli/models/response.ts
Normal file
45
node/src/cli/models/response.ts
Normal file
@@ -0,0 +1,45 @@
|
||||
import { BaseResponse } from './response/baseResponse';
|
||||
|
||||
export class Response {
|
||||
static error(error: any, data?: any): Response {
|
||||
const res = new Response();
|
||||
res.success = false;
|
||||
if (typeof (error) === 'string') {
|
||||
res.message = error;
|
||||
} else {
|
||||
res.message = error.message != null ? error.message :
|
||||
error.toString() === '[object Object]' ? JSON.stringify(error) : error.toString();
|
||||
}
|
||||
res.data = data;
|
||||
return res;
|
||||
}
|
||||
|
||||
static notFound(): Response {
|
||||
return Response.error('Not found.');
|
||||
}
|
||||
|
||||
static badRequest(message: string): Response {
|
||||
return Response.error(message);
|
||||
}
|
||||
|
||||
static multipleResults(ids: string[]): Response {
|
||||
let msg = 'More than one result was found. Try getting a specific object by `id` instead. ' +
|
||||
'The following objects were found:';
|
||||
ids.forEach(id => {
|
||||
msg += '\n' + id;
|
||||
});
|
||||
return Response.error(msg, ids);
|
||||
}
|
||||
|
||||
static success(data?: BaseResponse): Response {
|
||||
const res = new Response();
|
||||
res.success = true;
|
||||
res.data = data;
|
||||
return res;
|
||||
}
|
||||
|
||||
success: boolean;
|
||||
message: string;
|
||||
errorCode: number;
|
||||
data: BaseResponse;
|
||||
}
|
||||
3
node/src/cli/models/response/baseResponse.ts
Normal file
3
node/src/cli/models/response/baseResponse.ts
Normal file
@@ -0,0 +1,3 @@
|
||||
export interface BaseResponse {
|
||||
object: string;
|
||||
}
|
||||
11
node/src/cli/models/response/listResponse.ts
Normal file
11
node/src/cli/models/response/listResponse.ts
Normal file
@@ -0,0 +1,11 @@
|
||||
import { BaseResponse } from './baseResponse';
|
||||
|
||||
export class ListResponse implements BaseResponse {
|
||||
object: string;
|
||||
data: BaseResponse[];
|
||||
|
||||
constructor(data: BaseResponse[]) {
|
||||
this.object = 'list';
|
||||
this.data = data;
|
||||
}
|
||||
}
|
||||
15
node/src/cli/models/response/messageResponse.ts
Normal file
15
node/src/cli/models/response/messageResponse.ts
Normal file
@@ -0,0 +1,15 @@
|
||||
import { BaseResponse } from './baseResponse';
|
||||
|
||||
export class MessageResponse implements BaseResponse {
|
||||
object: string;
|
||||
title: string;
|
||||
message: string;
|
||||
raw: string;
|
||||
noColor = false;
|
||||
|
||||
constructor(title: string, message: string) {
|
||||
this.object = 'message';
|
||||
this.title = title;
|
||||
this.message = message;
|
||||
}
|
||||
}
|
||||
11
node/src/cli/models/response/stringResponse.ts
Normal file
11
node/src/cli/models/response/stringResponse.ts
Normal file
@@ -0,0 +1,11 @@
|
||||
import { BaseResponse } from './baseResponse';
|
||||
|
||||
export class StringResponse implements BaseResponse {
|
||||
object: string;
|
||||
data: string;
|
||||
|
||||
constructor(data: string) {
|
||||
this.object = 'string';
|
||||
this.data = data;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user