@openmessage/node
Advanced tools
Comparing version 0.0.2 to 0.0.3
import 'source-map-support/register'; | ||
export declare class OM { | ||
baseUrl: string; | ||
apiKey: string; | ||
apiSecret: string; | ||
token?: string; | ||
authorized: boolean; | ||
constructor(apiKey: string, apiSecret: string, baseUrl?: string); | ||
createContact(contact: object): Promise<any>; | ||
authorize(): Promise<any>; | ||
} | ||
export declare function OM(apiKey: string, apiSecret: string, baseUrl?: string): Promise<{ | ||
createContact: (contact: object) => Promise<any>; | ||
}>; |
@@ -63,68 +63,45 @@ "use strict"; | ||
}); | ||
var OM = /** @class */ (function () { | ||
function OM(apiKey, apiSecret, baseUrl) { | ||
function OM(apiKey, apiSecret, baseUrl) { | ||
if (baseUrl === void 0) { baseUrl = 'https://api.omsg.io'; } | ||
return __awaiter(this, void 0, void 0, function () { | ||
var result, token; | ||
var _this = this; | ||
if (!apiKey || !apiSecret) { | ||
throw new Error('credentials are required'); | ||
} | ||
this.baseUrl = baseUrl || 'https://api.omsg.io/auth/token'; | ||
this.apiKey = apiKey; | ||
this.apiSecret = apiSecret; | ||
this.authorized = false; | ||
this.authorize().then(function (token) { | ||
_this.token = token; | ||
}); | ||
} | ||
OM.prototype.createContact = function (contact) { | ||
return __awaiter(this, void 0, void 0, function () { | ||
var payload; | ||
return __generator(this, function (_a) { | ||
switch (_a.label) { | ||
case 0: | ||
Joi.assert(contact, schemas.createContact, '[OM] Create Contact', { allowUnknown: true }); | ||
if (!this.authorized) { | ||
throw new Error('[OM] Not authorized'); | ||
} | ||
return [4 /*yield*/, wreck.post(this.baseUrl + "/contacts", { | ||
payload: contact, | ||
headers: { | ||
authorization: "Bearer " + this.token | ||
} | ||
})]; | ||
case 1: | ||
payload = (_a.sent()).payload; | ||
return [2 /*return*/, payload]; | ||
} | ||
}); | ||
}); | ||
}; | ||
; | ||
OM.prototype.authorize = function () { | ||
return __awaiter(this, void 0, void 0, function () { | ||
var payload; | ||
return __generator(this, function (_a) { | ||
switch (_a.label) { | ||
case 0: return [4 /*yield*/, wreck.post(this.baseUrl + "/auth/token", { | ||
payload: { | ||
apiKey: this.apiKey, | ||
apiSecret: this.apiSecret | ||
} | ||
return __generator(this, function (_a) { | ||
switch (_a.label) { | ||
case 0: | ||
if (!apiKey || !apiSecret) { | ||
throw new Error('credentials are required'); | ||
} | ||
return [4 /*yield*/, wreck.post(baseUrl + "/auth/token", { | ||
payload: { apiKey: apiKey, apiSecret: apiSecret } | ||
})]; | ||
case 1: | ||
payload = (_a.sent()).payload; | ||
if (payload.accessToken) { | ||
this.authorized = true; | ||
this.token = payload.accessToken; | ||
console.log('[OM] - Authorized', payload.accessToken); | ||
} | ||
return [2 /*return*/, payload.accessToken]; | ||
} | ||
}); | ||
case 1: | ||
result = _a.sent(); | ||
token = result.payload.accessToken; | ||
return [2 /*return*/, { | ||
createContact: function (contact) { return __awaiter(_this, void 0, void 0, function () { | ||
var payload; | ||
return __generator(this, function (_a) { | ||
switch (_a.label) { | ||
case 0: | ||
Joi.assert(contact, schemas.createContact, '[OM] Create Contact', { allowUnknown: true }); | ||
return [4 /*yield*/, wreck.post(baseUrl + "/contacts", { | ||
payload: contact, | ||
headers: { | ||
authorization: "Bearer " + token | ||
} | ||
})]; | ||
case 1: | ||
payload = (_a.sent()).payload; | ||
return [2 /*return*/, payload]; | ||
} | ||
}); | ||
}); } | ||
}]; | ||
} | ||
}); | ||
}; | ||
; | ||
return OM; | ||
}()); | ||
}); | ||
} | ||
exports.OM = OM; | ||
; | ||
//# sourceMappingURL=index.js.map |
@@ -6,17 +6,9 @@ const { OM } = require('../'); | ||
const om = new OM(apiKey, apiSecret, 'http://localhost:3200'); | ||
(async () => { | ||
await om.createContact({ phone: 123123123 }).catch(console.error); | ||
const om = await OM(apiKey, apiSecret, 'https://next.omsg.io'); | ||
setTimeout(async () => { | ||
const contact = await om.createContact({ phone: '+18724000824', email: 'david@roncancio.me' }).catch(console.error); | ||
console.log({ contact }); | ||
}, 2000); | ||
console.log(await om.createContact({ phone: '+18724000824', email: 'david@roncancio.me' }).catch(console.error)); | ||
await om.createContact({ phone: '+18724000824', email: 'david@roncancio.me' }).catch(console.error); | ||
})(); | ||
@@ -19,64 +19,34 @@ import 'source-map-support/register' | ||
export class OM { | ||
export async function OM ( | ||
apiKey: string, | ||
apiSecret: string, | ||
baseUrl: string = 'https://api.omsg.io' | ||
) { | ||
baseUrl: string; | ||
apiKey: string; | ||
apiSecret: string; | ||
token?: string; | ||
authorized: boolean; | ||
constructor(apiKey: string, apiSecret: string, baseUrl?: string) { | ||
if(!apiKey || !apiSecret) { | ||
throw new Error('credentials are required'); | ||
} | ||
this.baseUrl = baseUrl || 'https://api.omsg.io/auth/token'; | ||
this.apiKey = apiKey; | ||
this.apiSecret = apiSecret; | ||
this.authorized = false; | ||
this.authorize().then((token: string) => { | ||
this.token = token; | ||
}); | ||
if(!apiKey || !apiSecret) { | ||
throw new Error('credentials are required'); | ||
} | ||
async createContact(contact: object) { | ||
const result: any = await wreck.post(`${baseUrl}/auth/token`, { | ||
payload: { apiKey, apiSecret } | ||
}); | ||
Joi.assert(contact, schemas.createContact, '[OM] Create Contact', { allowUnknown: true }); | ||
const token = result.payload.accessToken; | ||
if(!this.authorized) { | ||
throw new Error('[OM] Not authorized'); | ||
} | ||
return { | ||
const { payload } = await wreck.post(`${this.baseUrl}/contacts`, { | ||
payload: contact, | ||
headers: { | ||
authorization: `Bearer ${this.token}` | ||
} | ||
}); | ||
createContact: async (contact: object) => { | ||
return payload; | ||
}; | ||
Joi.assert(contact, schemas.createContact, '[OM] Create Contact', { allowUnknown: true }); | ||
async authorize() { | ||
const { payload } = await wreck.post(`${baseUrl}/contacts`, { | ||
payload: contact, | ||
headers: { | ||
authorization: `Bearer ${token}` | ||
} | ||
}); | ||
const { payload } = await wreck.post(`${this.baseUrl}/auth/token`, { | ||
payload: { | ||
apiKey: this.apiKey, | ||
apiSecret: this.apiSecret | ||
} | ||
}); | ||
if(payload.accessToken) { | ||
this.authorized = true; | ||
this.token = payload.accessToken; | ||
console.log('[OM] - Authorized', payload.accessToken); | ||
return payload; | ||
} | ||
return payload.accessToken; | ||
}; | ||
}; | ||
{ | ||
"name": "@openmessage/node", | ||
"version": "0.0.2", | ||
"version": "0.0.3", | ||
"description": "An OpenMessage helper library", | ||
@@ -5,0 +5,0 @@ "main": "./dist/index.js", |
@@ -18,5 +18,5 @@ # openmessage | ||
const om = OM(process.env.API_KEY, process.env.API_SECRET); | ||
const om = await OM(process.env.API_KEY, process.env.API_SECRET); | ||
const contact = await om.createContact({ phone, email }); | ||
``` |
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
New author
Supply chain riskA new npm collaborator published a version of the package for the first time. New collaborators are usually benign additions to a project, but do indicate a change to the security surface area of a package.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
15585
213
1