mirror of
https://github.com/bitwarden/browser
synced 2025-12-19 17:53:39 +00:00
[SM-288] Rename requests and responses to follow naming convention (#3806)
This commit is contained in:
43
libs/common/src/models/response/base.response.ts
Normal file
43
libs/common/src/models/response/base.response.ts
Normal file
@@ -0,0 +1,43 @@
|
||||
export abstract class BaseResponse {
|
||||
private response: any;
|
||||
|
||||
constructor(response: any) {
|
||||
this.response = response;
|
||||
}
|
||||
|
||||
protected getResponseProperty(
|
||||
propertyName: string,
|
||||
response: any = null,
|
||||
exactName = false
|
||||
): any {
|
||||
if (propertyName == null || propertyName === "") {
|
||||
throw new Error("propertyName must not be null/empty.");
|
||||
}
|
||||
if (response == null && this.response != null) {
|
||||
response = this.response;
|
||||
}
|
||||
if (response == null) {
|
||||
return null;
|
||||
}
|
||||
if (!exactName && response[propertyName] === undefined) {
|
||||
let otherCasePropertyName: string = null;
|
||||
if (propertyName.charAt(0) === propertyName.charAt(0).toUpperCase()) {
|
||||
otherCasePropertyName = propertyName.charAt(0).toLowerCase();
|
||||
} else {
|
||||
otherCasePropertyName = propertyName.charAt(0).toUpperCase();
|
||||
}
|
||||
if (propertyName.length > 1) {
|
||||
otherCasePropertyName += propertyName.slice(1);
|
||||
}
|
||||
|
||||
propertyName = otherCasePropertyName;
|
||||
if (response[propertyName] === undefined) {
|
||||
propertyName = propertyName.toLowerCase();
|
||||
}
|
||||
if (response[propertyName] === undefined) {
|
||||
propertyName = propertyName.toUpperCase();
|
||||
}
|
||||
}
|
||||
return response[propertyName];
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user