diff --git a/package-lock.json b/package-lock.json index 8fb38d9..3bfbe7f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14,6 +14,11 @@ "nan": "^2.9.2" } }, + "@apiglobal/typedrequest-interfaces": { + "version": "1.0.4", + "resolved": "https://verdaccio.lossless.one/@apiglobal%2ftypedrequest-interfaces/-/typedrequest-interfaces-1.0.4.tgz", + "integrity": "sha512-ZlpTVg0KPZchPmJS2Ke11MWbvWBi2lS5ewBrCip+X/fGawDPDwXpIZvOqP5ATzr7JlZQyiLFhE3h59yZTHVHcA==" + }, "@babel/code-frame": { "version": "7.5.5", "resolved": "https://verdaccio.lossless.one/@babel%2fcode-frame/-/code-frame-7.5.5.tgz", @@ -247,14 +252,12 @@ "@pushrocks/smartpromise": { "version": "3.0.2", "resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartpromise/-/smartpromise-3.0.2.tgz", - "integrity": "sha512-jmrJMUEmBCWChWK8CIcx4Vw3wv/8OgVNmkaxJrbs+WMaoRUfJtpWWJfrAwwHWt9ZXJbarJ+CwfwfYiiZXymndQ==", - "dev": true + "integrity": "sha512-jmrJMUEmBCWChWK8CIcx4Vw3wv/8OgVNmkaxJrbs+WMaoRUfJtpWWJfrAwwHWt9ZXJbarJ+CwfwfYiiZXymndQ==" }, "@pushrocks/smartrequest": { - "version": "1.1.20", - "resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartrequest/-/smartrequest-1.1.20.tgz", - "integrity": "sha512-3qOrxZT9+Fhr4GD/dFH+xDHYuSUTStbJl6/jNyh6W0d1L64zH2wfuG8MwlHc3CUHFXPaGauwK+4LQ91JEUx8TQ==", - "dev": true, + "version": "1.1.23", + "resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartrequest/-/smartrequest-1.1.23.tgz", + "integrity": "sha512-Hws3YfzIE0b/E3aTkSugLskKWBq7e8HDXEN+RlRyTFONxW/XONKJFTw4mp3jk+puWpYGDoOTcP+Ua4jd19z9pA==", "requires": { "@pushrocks/smartpromise": "^3.0.2", "@types/form-data": "^2.2.1", @@ -367,7 +370,6 @@ "version": "2.5.0", "resolved": "https://verdaccio.lossless.one/@types%2fform-data/-/form-data-2.5.0.tgz", "integrity": "sha512-23/wYiuckYYtFpL+4RPWiWmRQH2BjFuqCUi2+N3amB1a1Drv+i/byTrGvlLwRVLFNAZbwpbQ7JvTK+VCAPMbcg==", - "dev": true, "requires": { "form-data": "*" } @@ -465,8 +467,7 @@ "asynckit": { "version": "0.4.0", "resolved": "https://verdaccio.lossless.one/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" }, "balanced-match": { "version": "1.0.0", @@ -637,7 +638,6 @@ "version": "1.0.8", "resolved": "https://verdaccio.lossless.one/combined-stream/-/combined-stream-1.0.8.tgz", "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, "requires": { "delayed-stream": "~1.0.0" } @@ -717,8 +717,7 @@ "delayed-stream": { "version": "1.0.0", "resolved": "https://verdaccio.lossless.one/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" }, "diff": { "version": "4.0.1", @@ -811,7 +810,6 @@ "version": "2.5.0", "resolved": "https://verdaccio.lossless.one/form-data/-/form-data-2.5.0.tgz", "integrity": "sha512-WXieX3G/8side6VIqx44ablyULoGruSde5PNTxoUyo5CeyAMX6nVWUd0rgist/EuX655cjhUhTo1Fo3tRYqbcA==", - "dev": true, "requires": { "asynckit": "^0.4.0", "combined-stream": "^1.0.6", @@ -1047,14 +1045,12 @@ "mime-db": { "version": "1.40.0", "resolved": "https://verdaccio.lossless.one/mime-db/-/mime-db-1.40.0.tgz", - "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==", - "dev": true + "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==" }, "mime-types": { "version": "2.1.24", "resolved": "https://verdaccio.lossless.one/mime-types/-/mime-types-2.1.24.tgz", "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==", - "dev": true, "requires": { "mime-db": "1.40.0" } diff --git a/package.json b/package.json index 9ab59e8..18e2a37 100644 --- a/package.json +++ b/package.json @@ -17,10 +17,13 @@ "@gitzone/tstest": "^1.0.15", "@pushrocks/tapbundle": "^3.0.7", "@types/node": "^10.11.7", - "tslint": "^5.11.0", - "tslint-config-prettier": "^1.15.0" + "tslint": "^5.19.0", + "tslint-config-prettier": "^1.18.0" + }, + "dependencies": { + "@apiglobal/typedrequest-interfaces": "^1.0.4", + "@pushrocks/smartrequest": "^1.1.23" }, - "dependencies": {}, "files": [ "ts/*", "ts_web/*", diff --git a/test/test.ts b/test/test.ts index 8268ecf..2e4788c 100644 --- a/test/test.ts +++ b/test/test.ts @@ -2,7 +2,6 @@ import { expect, tap } from '@pushrocks/tapbundle'; import * as typedrequest from '../ts/index'; tap.test('first test', async () => { - console.log(typedrequest.standardExport); }); tap.start(); diff --git a/ts/index.ts b/ts/index.ts index d9c6f7a..6a353a2 100644 --- a/ts/index.ts +++ b/ts/index.ts @@ -1,3 +1,27 @@ import * as plugins from './typedrequest.plugins'; -export let standardExport = 'Hi there! :) This is an exported string'; +export class TypedRequest { + public urlEndPoint: string; + public method: string; + + // STATIC + constructor(urlEndPointArg: string, methodArg: T['method']) { + this.urlEndPoint = urlEndPointArg; + this.method = methodArg; + }; + + /** + * firest the request + */ + public async fire(fireArg: T['request']): Promise { + const response = await plugins.smartrequest.request(this.urlEndPoint, { + method: 'POST', + requestBody: { + method: this.method, + request: fireArg, + response: null + } + }); + return response.body.response; + } +} \ No newline at end of file diff --git a/ts/typedrequest.plugins.ts b/ts/typedrequest.plugins.ts index 29aa9da..9b559fd 100644 --- a/ts/typedrequest.plugins.ts +++ b/ts/typedrequest.plugins.ts @@ -1,2 +1,13 @@ -const removeme = {}; -export { removeme }; +// apiglobal scope +import * as typedRequestInterfaces from '@apiglobal/typedrequest-interfaces'; + +export { + typedRequestInterfaces +}; + +// pushrocks scope +import * as smartrequest from '@pushrocks/smartrequest'; + +export { + smartrequest +};