refactor: ts formatter (#210)
Signed-off-by: Grant Timmerman <timmerman+devrel@google.com>
This commit is contained in:
parent
9857eda5ef
commit
90782a9e17
|
@ -1,9 +1,11 @@
|
||||||
class Base64Parser {
|
class Base64Parser {
|
||||||
constructor(decorator) {
|
decorator: any;
|
||||||
|
|
||||||
|
constructor(decorator: any) {
|
||||||
this.decorator = decorator;
|
this.decorator = decorator;
|
||||||
}
|
}
|
||||||
|
|
||||||
parse(payload) {
|
parse(payload: any): any {
|
||||||
let payloadToParse = payload;
|
let payloadToParse = payload;
|
||||||
if (this.decorator) {
|
if (this.decorator) {
|
||||||
payloadToParse = this.decorator.parse(payload);
|
payloadToParse = this.decorator.parse(payload);
|
|
@ -3,13 +3,13 @@ class JSONFormatter {
|
||||||
* Every internal data structure is JSON by nature, so
|
* Every internal data structure is JSON by nature, so
|
||||||
* no transformation is required
|
* no transformation is required
|
||||||
*/
|
*/
|
||||||
format(payload) {
|
format(payload: any) {
|
||||||
return payload;
|
return payload;
|
||||||
}
|
}
|
||||||
|
|
||||||
toString(payload) {
|
toString(payload: any) {
|
||||||
return JSON.stringify(payload);
|
return JSON.stringify(payload);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
module.exports = JSONFormatter;
|
export default JSONFormatter;
|
|
@ -2,16 +2,17 @@ const {
|
||||||
isString,
|
isString,
|
||||||
isDefinedOrThrow,
|
isDefinedOrThrow,
|
||||||
isStringOrObjectOrThrow
|
isStringOrObjectOrThrow
|
||||||
} = require("../../bindings/http/validation/fun.js");
|
} = require("../../bindings/http/validation/fun");
|
||||||
const ValidationError = require("../../bindings/http/validation/validation_error.js");
|
const ValidationError = require("../../bindings/http/validation/validation_error.js");
|
||||||
|
|
||||||
const invalidPayloadTypeError = new ValidationError("invalid payload type, allowed are: string or object");
|
const invalidPayloadTypeError = new ValidationError("invalid payload type, allowed are: string or object");
|
||||||
const nullOrUndefinedPayload = new ValidationError("null or undefined payload");
|
const nullOrUndefinedPayload = new ValidationError("null or undefined payload");
|
||||||
|
|
||||||
const asJSON = (v) => (isString(v) ? JSON.parse(v) : v);
|
const asJSON = (v: object|string) => (isString(v) ? JSON.parse(v as string) : v);
|
||||||
|
|
||||||
class JSONParser {
|
class JSONParser {
|
||||||
constructor(decorator) {
|
decorator: any
|
||||||
|
constructor(decorator: Base64Parser) {
|
||||||
this.decorator = decorator;
|
this.decorator = decorator;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -20,7 +21,7 @@ class JSONParser {
|
||||||
* @param {object|string} payload the JSON payload
|
* @param {object|string} payload the JSON payload
|
||||||
* @return {object} the parsed JSON payload.
|
* @return {object} the parsed JSON payload.
|
||||||
*/
|
*/
|
||||||
parse(payload) {
|
parse(payload: object|string) {
|
||||||
if (this.decorator) {
|
if (this.decorator) {
|
||||||
payload = this.decorator.parse(payload);
|
payload = this.decorator.parse(payload);
|
||||||
}
|
}
|
Loading…
Reference in New Issue