diff options
| -rw-r--r-- | api-src/order.ts | 10 | ||||
| -rw-r--r-- | api/Order.js | 26 | ||||
| -rw-r--r-- | api/Order.js.map | 2 |
3 files changed, 28 insertions, 10 deletions
diff --git a/api-src/order.ts b/api-src/order.ts index 8937d04..c440399 100644 --- a/api-src/order.ts +++ b/api-src/order.ts @@ -3,14 +3,18 @@ import type Order from './_Order'; import { paypalCreateOrder } from './_paypal'; export default async function handler(request: VercelRequest, response: VercelResponse) { - const { productDescription, shortDescription, totalPrice }: Partial<Order> = request.body; - - if (request.method !== 'POST') { + if (request.method === 'POST') { + await handlePost(request, response); + } else { console.warn('Method was not POST. Method was ' + request.method); response.status(404); return; } +} +async function handlePost(request: VercelRequest, response: VercelResponse) { + const { productDescription, shortDescription, totalPrice }: Partial<Order> = request.body; + if (!productDescription) { response.status(400).send('Expected body to contain productDescription, but none provided.'); } else if (!shortDescription) { diff --git a/api/Order.js b/api/Order.js index 95ff8ab..1ef976d 100644 --- a/api/Order.js +++ b/api/Order.js @@ -39,16 +39,31 @@ Object.defineProperty(exports, "__esModule", { value: true }); var _paypal_1 = require("./_paypal"); function handler(request, response) { return __awaiter(this, void 0, void 0, function () { + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + if (!(request.method === 'POST')) return [3 /*break*/, 2]; + return [4 /*yield*/, handlePost(request, response)]; + case 1: + _a.sent(); + return [3 /*break*/, 3]; + case 2: + console.warn('Method was not POST. Method was ' + request.method); + response.status(404); + return [2 /*return*/]; + case 3: return [2 /*return*/]; + } + }); + }); +} +exports.default = handler; +function handlePost(request, response) { + return __awaiter(this, void 0, void 0, function () { var _a, productDescription, shortDescription, totalPrice, paypalResponse, err_1; return __generator(this, function (_b) { switch (_b.label) { case 0: _a = request.body, productDescription = _a.productDescription, shortDescription = _a.shortDescription, totalPrice = _a.totalPrice; - if (request.method !== 'POST') { - console.warn('Method was not POST. Method was ' + request.method); - response.status(404); - return [2 /*return*/]; - } if (!!productDescription) return [3 /*break*/, 1]; response.status(400).send('Expected body to contain productDescription, but none provided.'); return [3 /*break*/, 6]; @@ -78,5 +93,4 @@ function handler(request, response) { }); }); } -exports.default = handler; //# sourceMappingURL=order.js.map
\ No newline at end of file diff --git a/api/Order.js.map b/api/Order.js.map index df4cbcf..c67462b 100644 --- a/api/Order.js.map +++ b/api/Order.js.map @@ -1 +1 @@ -{"version":3,"file":"order.js","sourceRoot":"","sources":["../api-src/order.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,qCAA8C;AAE9C,SAA8B,OAAO,CAAC,OAAsB,EAAE,QAAwB;;;;;;oBAC9E,KAAuE,OAAO,CAAC,IAAI,EAAjF,kBAAkB,wBAAA,EAAE,gBAAgB,sBAAA,EAAE,UAAU,gBAAA,CAAkC;oBAE1F,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE;wBAC7B,OAAO,CAAC,IAAI,CAAC,kCAAkC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;wBAClE,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;wBACrB,sBAAO;qBACR;yBAEG,CAAC,kBAAkB,EAAnB,wBAAmB;oBACrB,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,iEAAiE,CAAC,CAAC;;;yBACpF,CAAC,gBAAgB,EAAjB,wBAAiB;oBAC1B,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAC;;;yBAClF,CAAC,UAAU,EAAX,wBAAW;oBACpB,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC;;;;oBAG5D,qBAAM,IAAA,2BAAiB,EAAC,EAAE,kBAAkB,oBAAA,EAAE,gBAAgB,kBAAA,EAAE,UAAU,YAAA,EAAE,CAAC,EAAA;;oBAA9F,cAAc,GAAG,SAA6E;oBACpG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;wBACxB,OAAO,EAAE,cAAc,CAAC,EAAE;qBAC3B,CAAC,CAAC;;;;oBAEH,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,iCAA0B,KAAG,CAAE,CAAC,CAAC;;;;;;CAGhE;AAzBD,0BAyBC"}
\ No newline at end of file +{"version":3,"file":"order.js","sourceRoot":"","sources":["../api-src/order.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,qCAA8C;AAE9C,SAA8B,OAAO,CAAC,OAAsB,EAAE,QAAwB;;;;;yBAChF,CAAA,OAAO,CAAC,MAAM,KAAK,MAAM,CAAA,EAAzB,wBAAyB;oBAC3B,qBAAM,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAA;;oBAAnC,SAAmC,CAAC;;;oBAEpC,OAAO,CAAC,IAAI,CAAC,kCAAkC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;oBAClE,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBACrB,sBAAO;;;;;CAEV;AARD,0BAQC;AAED,SAAe,UAAU,CAAC,OAAsB,EAAE,QAAwB;;;;;;oBAClE,KAAuE,OAAO,CAAC,IAAI,EAAjF,kBAAkB,wBAAA,EAAE,gBAAgB,sBAAA,EAAE,UAAU,gBAAA,CAAkC;yBAEtF,CAAC,kBAAkB,EAAnB,wBAAmB;oBACrB,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,iEAAiE,CAAC,CAAC;;;yBACpF,CAAC,gBAAgB,EAAjB,wBAAiB;oBAC1B,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAC;;;yBAClF,CAAC,UAAU,EAAX,wBAAW;oBACpB,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC;;;;oBAG5D,qBAAM,IAAA,2BAAiB,EAAC,EAAE,kBAAkB,oBAAA,EAAE,gBAAgB,kBAAA,EAAE,UAAU,YAAA,EAAE,CAAC,EAAA;;oBAA9F,cAAc,GAAG,SAA6E;oBACpG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;wBACxB,OAAO,EAAE,cAAc,CAAC,EAAE;qBAC3B,CAAC,CAAC;;;;oBAEH,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,iCAA0B,KAAG,CAAE,CAAC,CAAC;;;;;;CAGhE"}
\ No newline at end of file |
