From dfb77432f19b0929e23a63beddc3a393d567e4a9 Mon Sep 17 00:00:00 2001 From: Trevor Sears Date: Sun, 14 Jul 2019 12:06:19 -0400 Subject: [PATCH] Removed unnecessary code from S2APIResponse. --- .d.ts/s2-api-response.d.ts | 8 +++---- js/s2-api-response.js | 22 +++++++++++++++++-- js/s2-api-response.js.map | 2 +- package.json | 9 +++++--- ts/s2-api-response.ts | 45 +++++++------------------------------- 5 files changed, 38 insertions(+), 48 deletions(-) diff --git a/.d.ts/s2-api-response.d.ts b/.d.ts/s2-api-response.d.ts index 529b250..f5cb5ad 100644 --- a/.d.ts/s2-api-response.d.ts +++ b/.d.ts/s2-api-response.d.ts @@ -1,9 +1,7 @@ export declare class S2APIResponse { - private readonly rawXHR; - private isVerified; - constructor(response: XMLHttpRequest, lazyInitialization?: boolean); - verify(): boolean; + private readonly response; + private readonly statusCode; + constructor(response: R, statusCode: number); getBody(): R; getStatusCode(): number; - getRawXHR(): XMLHttpRequest; } diff --git a/js/s2-api-response.js b/js/s2-api-response.js index 2b77f95..b9e9206 100644 --- a/js/s2-api-response.js +++ b/js/s2-api-response.js @@ -1,2 +1,20 @@ -"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const s2_api_1=require("./s2-api");class S2APIResponse{constructor(e,s=!1){this.isVerified=!1,this.rawXHR=e,s||this.verify()}verify(){return!!this.isVerified||(this.isVerified=!0,!0)}getBody(){if(!this.isVerified&&!this.verify())throw new Error("ERR | The response body did not conform to the expected type.");return s2_api_1.S2API.isJSON(this.rawXHR.response)?JSON.parse(this.rawXHR.response):this.rawXHR.response}getStatusCode(){return this.rawXHR.status}getRawXHR(){return this.rawXHR}}exports.S2APIResponse=S2APIResponse; -//# sourceMappingURL=s2-api-response.js.map +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const s2_api_1 = require("./s2-api"); +class S2APIResponse { + constructor(response, statusCode) { + this.response = response; + this.statusCode = statusCode; + } + getBody() { + if (s2_api_1.S2API.isJSON(this.response)) + return JSON.parse(this.response); + else + return this.response; + } + getStatusCode() { + return this.statusCode; + } +} +exports.S2APIResponse = S2APIResponse; +//# sourceMappingURL=s2-api-response.js.map \ No newline at end of file diff --git a/js/s2-api-response.js.map b/js/s2-api-response.js.map index c923d77..748197f 100644 --- a/js/s2-api-response.js.map +++ b/js/s2-api-response.js.map @@ -1 +1 @@ -{"version":3,"sources":["../ts/s2-api-response.ts"],"names":["s2_api_1","require","S2APIResponse","[object Object]","response","lazyInitialization","this","isVerified","rawXHR","verify","Error","S2API","isJSON","JSON","parse","status","exports"],"mappings":"oEAMA,MAAAA,SAAAC,QAAA,YASA,MAAaC,cAMZC,YAAmBC,EAA0BC,GAA8B,GAFnEC,KAAAC,YAAsB,EAI7BD,KAAKE,OAASJ,EAETC,GAAoBC,KAAKG,SAIxBN,SAEN,QAAIG,KAAKC,aAITD,KAAKC,YAAa,GAEX,GAIDJ,UAEN,IAAKG,KAAKC,aAEJD,KAAKG,SAET,MAAM,IAAIC,MAAM,iEAMlB,OAAIV,SAAAW,MAAMC,OAAON,KAAKE,OAAOJ,UAAkBS,KAAKC,MAAMR,KAAKE,OAAOJ,UAC1DE,KAAKE,OAAOJ,SAIlBD,gBAEN,OAAOG,KAAKE,OAAOO,OAIbZ,YAEN,OAAOG,KAAKE,QAnDdQ,QAAAd,cAAAA","file":"s2-api-response.js","sourcesContent":["/*\n *\tCreated by Trevor Sears .\n *\t4:20 PM -- July 11th, 2019.\n *\tProject: @subscribeto/ts-api\n */\n\nimport { S2API } from \"./s2-api\";\n\n/**\n * A standardized response object received from any and every call to the API.\n *\n * @author Trevor Sears \n * @version v0.1.0\n * @since v0.1.0\n */\nexport class S2APIResponse {\n\t\n\tprivate readonly rawXHR: XMLHttpRequest;\n\t\n\tprivate isVerified: boolean = false;\n\t\n\tpublic constructor(response: XMLHttpRequest, lazyInitialization: boolean = false) {\n\t\n\t\tthis.rawXHR = response;\n\t\t\n\t\tif (!lazyInitialization) this.verify();\n\t\n\t}\n\t\n\tpublic verify(): boolean {\n\t\t\n\t\tif (this.isVerified) return true;\n\t\t\n\t\t// TODO [7/11/19 @ 4:32 PM] - Finish the 'verify' method.\n\t\t\n\t\tthis.isVerified = true;\n\t\t\n\t\treturn true;\n\t\t\n\t}\n\t\n\tpublic getBody(): R {\n\t\t\n\t\tif (!this.isVerified) {\n\t\t\t\n\t\t\tif (!this.verify()) {\n\t\t\t\t\n\t\t\t\tthrow new Error(\"ERR | The response body did not conform to the expected type.\");\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t}\n\t\t\n\t\tif (S2API.isJSON(this.rawXHR.response)) return JSON.parse(this.rawXHR.response) as unknown as R;\n\t\telse return this.rawXHR.response as unknown as R;\n\t\t\n\t}\n\t\n\tpublic getStatusCode(): number {\n\t\t\n\t\treturn this.rawXHR.status;\n\t\t\n\t}\n\t\n\tpublic getRawXHR(): XMLHttpRequest {\n\t\t\n\t\treturn this.rawXHR;\n\t\t\n\t}\n\t\n}"]} \ No newline at end of file +{"version":3,"file":"s2-api-response.js","sourceRoot":"","sources":["../ts/s2-api-response.ts"],"names":[],"mappings":";;AAMA,qCAAiC;AASjC,MAAa,aAAa;IAMzB,YAAmB,QAAW,EAAE,UAAkB;QAEjD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAE9B,CAAC;IAEM,OAAO;QAEb,IAAI,cAAK,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAe,CAAiB,CAAC;;YACpF,OAAO,IAAI,CAAC,QAAwB,CAAC;IAE3C,CAAC;IAEM,aAAa;QAEnB,OAAO,IAAI,CAAC,UAAU,CAAC;IAExB,CAAC;CAED;AA1BD,sCA0BC"} \ No newline at end of file diff --git a/package.json b/package.json index 9e673d7..1eee227 100644 --- a/package.json +++ b/package.json @@ -1,12 +1,15 @@ { "name": "@subscribeto/ts-api", - "version": "0.1.0", + "version": "0.1.1", "description": "A collection of utility classes for accessing the sub.scribe.to API.", + "publishConfig": { + "access": "public" + }, "main": "js/main", "types": ".d.ts/main", "scripts": { - "build": "../ts-api2/node_modules/.bin/gulp && jest", - "test": "../ts-api2/node_modules/.bin/jest" + "build": "gulp && jest", + "test": "jest" }, "repository": { "type": "git", diff --git a/ts/s2-api-response.ts b/ts/s2-api-response.ts index 9f89a59..8a699df 100644 --- a/ts/s2-api-response.ts +++ b/ts/s2-api-response.ts @@ -15,56 +15,27 @@ import { S2API } from "./s2-api"; */ export class S2APIResponse { - private readonly rawXHR: XMLHttpRequest; + private readonly response: R; - private isVerified: boolean = false; + private readonly statusCode: number; - public constructor(response: XMLHttpRequest, lazyInitialization: boolean = false) { + public constructor(response: R, statusCode: number) { - this.rawXHR = response; - - if (!lazyInitialization) this.verify(); + this.response = response; + this.statusCode = statusCode; } - public verify(): boolean { - - if (this.isVerified) return true; - - // TODO [7/11/19 @ 4:32 PM] - Finish the 'verify' method. - - this.isVerified = true; - - return true; - - } - public getBody(): R { - if (!this.isVerified) { - - if (!this.verify()) { - - throw new Error("ERR | The response body did not conform to the expected type."); - - } - - } - - if (S2API.isJSON(this.rawXHR.response)) return JSON.parse(this.rawXHR.response) as unknown as R; - else return this.rawXHR.response as unknown as R; + if (S2API.isJSON(this.response)) return JSON.parse(this.response as any) as unknown as R; + else return this.response as unknown as R; } public getStatusCode(): number { - return this.rawXHR.status; - - } - - public getRawXHR(): XMLHttpRequest { - - return this.rawXHR; + return this.statusCode; }