Socket
Socket
Sign inDemoInstall

@everestate/serverless-router-dynamics

Package Overview
Dependencies
Maintainers
1
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@everestate/serverless-router-dynamics - npm Package Compare versions

Comparing version 0.3.0 to 0.4.0

lib/__tests__/__fixtures__/webhookRequestOnOpportunityAssign.js

8

lib/__tests__/createLazyContext.js

@@ -5,2 +5,3 @@ const createLazyContext = require('../createLazyContext');

const webhookRequestOnLeadDelete = require('./__fixtures__/webhookRequestOnLeadDelete');
const webhookRequestOnOpportunityAssign = require('./__fixtures__/webhookRequestOnOpportunityAssign');

@@ -53,2 +54,9 @@

describe('on Assign request', () =>
test('extracts entity', () =>
expect(subj(webhookRequestOnOpportunityAssign.body)).toMatchObject({
id: 'b77cca08-7450-e911-a95c-000d3a454977',
entity: {},
})));
describe('on Delete request', () =>

@@ -55,0 +63,0 @@ test('extracts entity', () =>

14

lib/__tests__/Dynamics.js

@@ -7,2 +7,3 @@ const Router = require('@everestate/serverless-router');

const webhookRequestOnLeadDelete = require('./__fixtures__/webhookRequestOnLeadDelete');
const webhookRequestOnOpportunityAssign = require('./__fixtures__/webhookRequestOnOpportunityAssign');

@@ -13,3 +14,4 @@ const subj = (router = new Router([Dynamics])) => {

.update('lead', (ctx, event) => ({ lead: 'update', ctx, event }))
.delete('lead', (ctx, event) => ({ lead: 'delete', ctx, event }));
.delete('lead', (ctx, event) => ({ lead: 'delete', ctx, event }))
.assign('opportunity', (ctx, event) => ({ opportunity: 'assign', ctx, event }));
return router;

@@ -80,4 +82,14 @@ };

describe('on Assign request', () =>
test('invokes matching callback', () => expect(subj().dispatch(webhookRequestOnOpportunityAssign)).toEqual({
opportunity: 'assign',
ctx: {
id: 'b77cca08-7450-e911-a95c-000d3a454977',
entity: {},
},
event: webhookRequestOnOpportunityAssign,
})));
test('pluginName', () =>
expect(Dynamics.pluginName).toEqual('dynamics'));
});

6

lib/Dynamics.js

@@ -17,2 +17,6 @@ const BasePlugin = require('@everestate/serverless-router/lib/BasePlugin');

assign(entityName, callback) {
return this.appendRoute('Assign', entityName, callback);
}
static match(requestNameToMatch, entityNameToMatch) {

@@ -24,7 +28,5 @@ return (event) => {

} = event.headers;
if (requestName !== requestNameToMatch || entityName !== entityNameToMatch) {
return null;
}
return createLazyContext(event.body);

@@ -31,0 +33,0 @@ };

{
"name": "@everestate/serverless-router-dynamics",
"version": "0.3.0",
"version": "0.4.0",
"description": "Serverless Router plugin to handle Microsoft Dynamics Webhooks",

@@ -5,0 +5,0 @@ "keywords": [

@@ -34,2 +34,6 @@ # @everestate/serverless-router-dynamics [![npm version](https://badge.fury.io/js/%40everestate%2Fserverless-router-dynamics.svg)](https://www.npmjs.com/package/@everestate/serverless-router-dynamics)

return leadService.delete(id); // returns promise
})
.assign('lead', ({ id, entity }) => {
console.log(`New agent assigned to lead with "id: ${id}"`);
return leadService.assign(id, entity); // returns promise
});

@@ -36,0 +40,0 @@

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc