@cloudcommerce/app-webhooks 0.14.1 → 0.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
1
 
2
- > @cloudcommerce/app-webhooks@0.14.0 build /home/leo/code/ecomplus/cloud-commerce/packages/apps/webhooks
2
+ > @cloudcommerce/app-webhooks@0.14.1 build /home/leo/code/ecomplus/cloud-commerce/packages/apps/webhooks
3
3
  > bash ../../../scripts/build-lib.sh
4
4
 
@@ -22,11 +22,18 @@ const sendWebhook = async (options, doc, urls, manualQueue, appId, customer, doc
22
22
  return null;
23
23
  }
24
24
  logger.log(`> Sending ${isCart ? 'cart' : 'order'} notification`);
25
- const token = options.webhook_token;
26
25
  let headers;
27
- if (token) {
26
+ if (!process.env.WEBHOOKS_TOKEN) {
27
+ const webhookAppToken = options.webhook_token;
28
+ if (typeof webhookAppToken === 'string' && webhookAppToken) {
29
+ process.env.WEBHOOKS_TOKEN = webhookAppToken;
30
+ } else {
31
+ logger.warn('Missing webhooks token');
32
+ }
33
+ }
34
+ if (process.env.WEBHOOKS_TOKEN) {
28
35
  headers = {
29
- Authorization: `Bearer ${token}`,
36
+ Authorization: `Bearer ${process.env.WEBHOOKS_TOKEN}`,
30
37
  };
31
38
  }
32
39
  const body = {
@@ -70,9 +77,9 @@ const handleApiEvent = async ({
70
77
  }
71
78
  try {
72
79
  if (appData.webhooks) {
73
- let docId;
80
+ let docId = apiDoc._id;
74
81
  let manualQueue = null;
75
- let isCart;
82
+ const isCart = evName === 'carts-delayed';
76
83
  if (evName === 'applications-dataSet') {
77
84
  const body = appData;
78
85
  if (body && Array.isArray(body.manual_queue) && body.manual_queue.length) {
@@ -83,9 +90,6 @@ const handleApiEvent = async ({
83
90
  }
84
91
  manualQueue.shift();
85
92
  }
86
- } else {
87
- isCart = evName === 'carts-delayed';
88
- docId = apiDoc._id;
89
93
  }
90
94
  if (docId) {
91
95
  let customer;
@@ -1 +1 @@
1
- {"version":3,"file":"events-to-webhooks-app.js","sourceRoot":"","sources":["../src/events-to-webhooks-app.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"events-to-webhooks-app.js","sourceRoot":"","sources":["../src/events-to-webhooks-app.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@cloudcommerce/app-webhooks",
3
3
  "type": "module",
4
- "version": "0.14.1",
4
+ "version": "0.15.0",
5
5
  "description": "E-Com Plus Cloud Commerce app for general order webhooks",
6
6
  "main": "lib/index.js",
7
7
  "repository": {
@@ -17,14 +17,14 @@
17
17
  "homepage": "https://github.com/ecomplus/cloud-commerce/tree/main/packages/apps/webhooks#readme",
18
18
  "dependencies": {
19
19
  "axios": "^1.4.0",
20
- "firebase-admin": "^11.8.0",
21
- "firebase-functions": "^4.4.0",
22
- "@cloudcommerce/api": "0.14.1",
23
- "@cloudcommerce/firebase": "0.14.1"
20
+ "firebase-admin": "^11.9.0",
21
+ "firebase-functions": "^4.4.1",
22
+ "@cloudcommerce/api": "0.15.0",
23
+ "@cloudcommerce/firebase": "0.15.0"
24
24
  },
25
25
  "devDependencies": {
26
26
  "@firebase/app-types": "^0.9.0",
27
- "@cloudcommerce/types": "0.14.1"
27
+ "@cloudcommerce/types": "0.15.0"
28
28
  },
29
29
  "scripts": {
30
30
  "build": "bash ../../../scripts/build-lib.sh"
@@ -1,5 +1,10 @@
1
1
  import type { ApiEventHandler } from '@cloudcommerce/firebase/lib/helpers/pubsub';
2
- import type { Carts, Customers, Orders } from '@cloudcommerce/api/types';
2
+ import type {
3
+ Carts,
4
+ Customers,
5
+ Orders,
6
+ ResourceId,
7
+ } from '@cloudcommerce/api/types';
3
8
  import logger from 'firebase-functions/logger';
4
9
  import api from '@cloudcommerce/api';
5
10
  import axios from 'axios';
@@ -23,9 +28,9 @@ const sendWebhook = async (
23
28
  doc: Record<string, any>,
24
29
  urls: any[],
25
30
  manualQueue: any[] | null,
26
- appId: string,
31
+ appId: ResourceId,
27
32
  customer?: Customers,
28
- docId?: string,
33
+ docId?: ResourceId,
29
34
  isCart?: boolean,
30
35
  ) => {
31
36
  const url = options && options.webhook_uri;
@@ -42,12 +47,20 @@ const sendWebhook = async (
42
47
 
43
48
  logger.log(`> Sending ${isCart ? 'cart' : 'order'} notification`);
44
49
 
45
- const token = options.webhook_token;
46
50
  let headers: { Authorization: string; } | undefined;
47
51
 
48
- if (token) {
52
+ if (!process.env.WEBHOOKS_TOKEN) {
53
+ const webhookAppToken = options.webhook_token
54
+ if (typeof webhookAppToken === 'string' && webhookAppToken) {
55
+ process.env.WEBHOOKS_TOKEN = webhookAppToken;
56
+ } else {
57
+ logger.warn('Missing webhooks token');
58
+ }
59
+ }
60
+
61
+ if (process.env.WEBHOOKS_TOKEN) {
49
62
  headers = {
50
- Authorization: `Bearer ${token}`,
63
+ Authorization: `Bearer ${process.env.WEBHOOKS_TOKEN}`,
51
64
  };
52
65
  }
53
66
  const body = {
@@ -100,9 +113,9 @@ const handleApiEvent: ApiEventHandler = async ({
100
113
 
101
114
  try {
102
115
  if (appData.webhooks) {
103
- let docId: string | undefined;
116
+ let docId = apiDoc._id as ResourceId;
104
117
  let manualQueue: any[] | null = null;
105
- let isCart: boolean | undefined;
118
+ const isCart = evName === 'carts-delayed';
106
119
 
107
120
  if (evName === 'applications-dataSet') {
108
121
  const body = appData;
@@ -110,13 +123,10 @@ const handleApiEvent: ApiEventHandler = async ({
110
123
  manualQueue = body.manual_queue;
111
124
  const nextId = manualQueue[0];
112
125
  if (typeof nextId === 'string' && /[a-f0-9]{24}/.test(nextId)) {
113
- docId = nextId.trim();
126
+ docId = nextId.trim() as ResourceId;
114
127
  }
115
128
  manualQueue.shift();
116
129
  }
117
- } else {
118
- isCart = evName === 'carts-delayed';
119
- docId = apiDoc._id;
120
130
  }
121
131
 
122
132
  if (docId) {