cloudcommerce 0.0.43 → 0.0.44

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.
Files changed (36) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/package.json +1 -1
  3. package/packages/api/package.json +1 -1
  4. package/packages/apps/discounts/lib/index.d.ts +3 -0
  5. package/packages/apps/discounts/lib/index.js +3 -1
  6. package/packages/apps/discounts/lib/index.js.map +1 -1
  7. package/packages/apps/discounts/package.json +3 -3
  8. package/packages/apps/discounts/src/index.ts +1 -1
  9. package/packages/apps/discounts/tsconfig.json +4 -1
  10. package/packages/cli/lib/build.js +5 -2
  11. package/packages/cli/package.json +1 -1
  12. package/packages/cli/src/build.ts +8 -5
  13. package/packages/events/CHANGELOG.md +1 -0
  14. package/packages/events/README.md +1 -0
  15. package/packages/events/package.json +36 -0
  16. package/packages/events/src/firebase.ts +30 -0
  17. package/packages/events/src/index.ts +1 -0
  18. package/packages/events/tsconfig.json +3 -0
  19. package/packages/firebase/lib/config.d.ts +5 -0
  20. package/packages/firebase/lib/config.js +5 -0
  21. package/packages/firebase/lib/config.js.map +1 -1
  22. package/packages/firebase/package.json +1 -1
  23. package/packages/firebase/src/config.ts +5 -0
  24. package/packages/modules/lib/firebase/call-app-module.js +8 -2
  25. package/packages/modules/lib/firebase/call-app-module.js.map +1 -1
  26. package/packages/modules/lib/firebase/handle-module.js +1 -1
  27. package/packages/modules/lib/firebase/handle-module.js.map +1 -1
  28. package/packages/modules/package.json +2 -1
  29. package/packages/modules/src/firebase/call-app-module.ts +16 -2
  30. package/packages/modules/src/firebase/handle-module.ts +8 -2
  31. package/packages/passport/package.json +1 -1
  32. package/packages/ssr/package.json +1 -1
  33. package/packages/storefront/package.json +1 -1
  34. package/packages/types/index.ts +10 -4
  35. package/packages/types/package.json +1 -1
  36. package/pnpm-lock.yaml +29 -8
package/CHANGELOG.md CHANGED
@@ -2,6 +2,23 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
4
 
5
+ ### [0.0.44](https://github.com/ecomplus/cloud-commerce/compare/v0.0.43...v0.0.44) (2022-08-05)
6
+
7
+
8
+ ### Features
9
+
10
+ * **apps/discounts:** Start exporting apply discount function for module [[#29](https://github.com/ecomplus/cloud-commerce/issues/29)] ([a4ca745](https://github.com/ecomplus/cloud-commerce/commit/a4ca745ac69318e2c2ba1b4e94e68f37924b0682))
11
+ * **events:** Setup `@cloudcommerce/events` pkg with first listener start [[#29](https://github.com/ecomplus/cloud-commerce/issues/29)] ([3a4ae39](https://github.com/ecomplus/cloud-commerce/commit/3a4ae3996066ece4c502d55b39f79f9fab20fee3))
12
+ * **firebase:** Start defining apps on config with first (discount) app [[#29](https://github.com/ecomplus/cloud-commerce/issues/29)] ([8a810cf](https://github.com/ecomplus/cloud-commerce/commit/8a810cf45ad41c29adb14e111dccd63afd71b63c))
13
+ * **modules:** Start importing/calling internal apps dynamically [[#29](https://github.com/ecomplus/cloud-commerce/issues/29)] ([47db241](https://github.com/ecomplus/cloud-commerce/commit/47db24193c3423851246e691604a5e9f691c9077))
14
+ * **types:** Add `AppModuleName` enum definition ([642235c](https://github.com/ecomplus/cloud-commerce/commit/642235cf789d11b3208526a87bd7fc72e2dd38e4))
15
+
16
+
17
+ ### Bug Fixes
18
+
19
+ * **cli:** Prevent no such file error with optional `.env` on build ([201f30e](https://github.com/ecomplus/cloud-commerce/commit/201f30e6ce365ff01ae46dad83a8dfa899b6b91a))
20
+ * **types:** Edit some app events types (grammar) ([a552efa](https://github.com/ecomplus/cloud-commerce/commit/a552efa08b0eba6e25292f0a64a2a269bb812adb))
21
+
5
22
  ### [0.0.43](https://github.com/ecomplus/cloud-commerce/compare/v0.0.42...v0.0.43) (2022-08-04)
6
23
 
7
24
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "cloudcommerce",
3
3
  "type": "module",
4
- "version": "0.0.43",
4
+ "version": "0.0.44",
5
5
  "description": "Open fair-code headless commerce platform: API-first, microservices based, event driven and cloud native",
6
6
  "main": "packages/api/lib/index.js",
7
7
  "author": "E-Com Club Softwares para E-commerce <ti@e-com.club>",
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@cloudcommerce/api",
3
3
  "type": "module",
4
- "version": "0.0.43",
4
+ "version": "0.0.44",
5
5
  "description": "E-Com Plus Cloud Commerce APIs client/adapter",
6
6
  "main": "lib/index.js",
7
7
  "types": "lib/index.d.ts",
@@ -0,0 +1,3 @@
1
+ import type { AppEventsTopic } from '@cloudcommerce/types';
2
+ export declare const events: AppEventsTopic[];
3
+ export declare const applyDiscount: () => Promise<{}>;
@@ -1,4 +1,6 @@
1
1
  export const events = [];
2
2
 
3
- export const modules = {};
3
+ export const applyDiscount = async () => {
4
+ return {};
5
+ };
4
6
  // # sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,MAAM,GAAiB,EAAE,CAAC;AAEvC,MAAM,CAAC,MAAM,OAAO,GAAG,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,MAAM,GAAqB,EAAE,CAAC;AAE3C,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,IAAI,EAAE;IACtC,OAAO,EAAE,CAAC;AACZ,CAAC,CAAC"}
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "@cloudcommerce/app-discounts",
3
3
  "type": "module",
4
- "version": "0.0.43",
4
+ "version": "0.0.44",
5
5
  "description": "E-Com Plus Cloud Commerce app for complex discount rules",
6
- "main": "functions/dist/index.js",
6
+ "main": "lib/index.js",
7
7
  "repository": {
8
8
  "type": "git",
9
9
  "url": "git+https://github.com/ecomplus/cloud-commerce.git",
@@ -16,7 +16,7 @@
16
16
  },
17
17
  "homepage": "https://github.com/ecomplus/cloud-commerce/tree/main/packages/apps/discounts#readme",
18
18
  "scripts": {
19
- "build": "echo '@ecomplus/app-discounts'"
19
+ "build": "sh ../../../scripts/build-lib.sh"
20
20
  },
21
21
  "dependencies": {
22
22
  "@cloudcommerce/api": "workspace:*"
@@ -2,6 +2,6 @@ import type { AppEventsTopic } from '@cloudcommerce/types';
2
2
 
3
3
  export const events: AppEventsTopic[] = [];
4
4
 
5
- export const applyDiscount = () => {
5
+ export const applyDiscount = async () => {
6
6
  return {};
7
7
  };
@@ -1,3 +1,6 @@
1
1
  {
2
- "extends": "../../../tsconfig.json"
2
+ "extends": "../../../tsconfig.json",
3
+ "compilerOptions": {
4
+ "declaration": true
5
+ }
3
6
  }
@@ -8,8 +8,11 @@ const copyFunctionsConfig = async () => {
8
8
  for (let i = 0; i < dirents.length; i++) {
9
9
  if (dirents[i].isDirectory() && dirents[i].name.charAt(0) !== '.') {
10
10
  for (let ii = 0; ii < filesToCopy.length; ii++) {
11
- // eslint-disable-next-line no-await-in-loop
12
- await fs.copy(path.join(functionsDir, filesToCopy[ii]), path.join(functionsDir, dirents[i].name, filesToCopy[ii]));
11
+ const srcPath = path.join(functionsDir, filesToCopy[ii]);
12
+ if (fs.existsSync(srcPath)) {
13
+ // eslint-disable-next-line no-await-in-loop
14
+ await fs.copy(srcPath, path.join(functionsDir, dirents[i].name, filesToCopy[ii]));
15
+ }
13
16
  }
14
17
  }
15
18
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@cloudcommerce/cli",
3
3
  "type": "module",
4
- "version": "0.0.43",
4
+ "version": "0.0.44",
5
5
  "description": "E-Com Plus Cloud Commerce CLI tools",
6
6
  "bin": {
7
7
  "cloudcommerce": "./bin/run.mjs"
@@ -8,11 +8,14 @@ const copyFunctionsConfig = async () => {
8
8
  for (let i = 0; i < dirents.length; i++) {
9
9
  if (dirents[i].isDirectory() && dirents[i].name.charAt(0) !== '.') {
10
10
  for (let ii = 0; ii < filesToCopy.length; ii++) {
11
- // eslint-disable-next-line no-await-in-loop
12
- await fs.copy(
13
- path.join(functionsDir, filesToCopy[ii]),
14
- path.join(functionsDir, dirents[i].name, filesToCopy[ii]),
15
- );
11
+ const srcPath = path.join(functionsDir, filesToCopy[ii]);
12
+ if (fs.existsSync(srcPath)) {
13
+ // eslint-disable-next-line no-await-in-loop
14
+ await fs.copy(
15
+ srcPath,
16
+ path.join(functionsDir, dirents[i].name, filesToCopy[ii]),
17
+ );
18
+ }
16
19
  }
17
20
  }
18
21
  }
@@ -0,0 +1 @@
1
+ Please refer to GitHub [repository releases](https://github.com/ecomplus/cloud-commerce/releases) or monorepo unified [CHANGELOG.md](https://github.com/ecomplus/cloud-commerce/blob/main/CHANGELOG.md).
@@ -0,0 +1 @@
1
+ # `@cloudcommerce/events`
@@ -0,0 +1,36 @@
1
+ {
2
+ "name": "@cloudcommerce/events",
3
+ "type": "module",
4
+ "version": "0.0.44",
5
+ "description": "E-Com Plus Cloud Commerce app events",
6
+ "main": "lib/index.js",
7
+ "exports": {
8
+ ".": "./lib/index.js",
9
+ "./firebase": "./lib/firebase.js"
10
+ },
11
+ "repository": {
12
+ "type": "git",
13
+ "url": "git+https://github.com/ecomplus/cloud-commerce.git",
14
+ "directory": "packages/events"
15
+ },
16
+ "author": "E-Com Club Softwares para E-commerce <ti@e-com.club>",
17
+ "license": "Apache 2.0 with Commons Clause",
18
+ "bugs": {
19
+ "url": "https://github.com/ecomplus/cloud-commerce/issues"
20
+ },
21
+ "homepage": "https://github.com/ecomplus/cloud-commerce/tree/main/packages/events#readme",
22
+ "scripts": {
23
+ "build": "echo '@ecomplus/events'"
24
+ },
25
+ "dependencies": {
26
+ "@cloudcommerce/api": "workspace:*",
27
+ "@cloudcommerce/firebase": "workspace:*",
28
+ "firebase-admin": "^11.0.1",
29
+ "firebase-functions": "^3.22.0",
30
+ "source-map-support": "^0.5.21"
31
+ },
32
+ "devDependencies": {
33
+ "@cloudcommerce/types": "workspace:*",
34
+ "@firebase/app-types": "^0.7.0"
35
+ }
36
+ }
@@ -0,0 +1,30 @@
1
+ /* eslint-disable import/prefer-default-export */
2
+
3
+ import type { AppEventsTopic } from '@cloudcommerce/types';
4
+ import 'source-map-support/register.js';
5
+ // eslint-disable-next-line import/no-unresolved
6
+ import { initializeApp } from 'firebase-admin/app';
7
+ // eslint-disable-next-line import/no-unresolved
8
+ import { runWith, logger } from 'firebase-functions';
9
+
10
+ initializeApp();
11
+
12
+ const eventMaxAgeMs = 60000;
13
+ const newOrderTopic: AppEventsTopic = 'orders-new';
14
+
15
+ export const onNewOrder = runWith({ failurePolicy: true })
16
+ .pubsub.topic(newOrderTopic).onPublish((message, context) => {
17
+ const eventAgeMs = Date.now() - Date.parse(context.timestamp);
18
+ if (eventAgeMs > eventMaxAgeMs) {
19
+ logger.warn(`Dropping event ${context.eventId} with age[ms]: ${eventAgeMs}`);
20
+ return;
21
+ }
22
+ // Hide API key for security
23
+ process.env.ECOM_API_KEY = '***';
24
+ const { json } = message;
25
+ logger.info({
26
+ topic: newOrderTopic,
27
+ eventId: context.eventId,
28
+ json,
29
+ });
30
+ });
@@ -0,0 +1 @@
1
+ export default {};
@@ -0,0 +1,3 @@
1
+ {
2
+ "extends": "../../tsconfig.json"
3
+ }
@@ -9,6 +9,11 @@ declare const _default: {
9
9
  httpsFunctionOptions: {
10
10
  region: string;
11
11
  };
12
+ apps: {
13
+ discounts: {
14
+ appId: number;
15
+ };
16
+ };
12
17
  };
13
18
  set(config: any): void;
14
19
  };
@@ -15,6 +15,11 @@ const self = {
15
15
  httpsFunctionOptions: {
16
16
  region: process.env.DEPLOY_REGION || 'us-east1',
17
17
  },
18
+ apps: {
19
+ discounts: {
20
+ appId: 912000,
21
+ },
22
+ },
18
23
  },
19
24
  };
20
25
 
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,YAAY,CAAC;AAEpB,MAAM,SAAS,GAAG,SAAS,EAAE,CAAC;AAE9B,MAAM,IAAI,GAAG;IACX,QAAQ,EAAE;QACR,KAAK,EAAE,8BAA8B;QACrC,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,YAAY;QAC3C,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,gBAAgB;QACvD,cAAc,EAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,uBAAuB;QAC3E,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,oBAAoB;QAClE,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;QAC1C,oBAAoB,EAAE;YACpB,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,UAAU;SAChD;KACF;CACF,CAAC;AAEF,eAAe;IACb,GAAG;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IACD,GAAG,CAAC,MAAM;QACR,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACnD,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,YAAY,CAAC;AAEpB,MAAM,SAAS,GAAG,SAAS,EAAE,CAAC;AAE9B,MAAM,IAAI,GAAG;IACX,QAAQ,EAAE;QACR,KAAK,EAAE,8BAA8B;QACrC,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,YAAY;QAC3C,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,gBAAgB;QACvD,cAAc,EAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,uBAAuB;QAC3E,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,oBAAoB;QAClE,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;QAC1C,oBAAoB,EAAE;YACpB,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,UAAU;SAChD;QACD,IAAI,EAAE;YACJ,SAAS,EAAE;gBACT,KAAK,EAAE,MAAM;aACd;SACF;KACF;CACF,CAAC;AAEF,eAAe;IACb,GAAG;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IACD,GAAG,CAAC,MAAM;QACR,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACnD,CAAC;CACF,CAAC"}
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@cloudcommerce/firebase",
3
3
  "type": "module",
4
- "version": "0.0.43",
4
+ "version": "0.0.44",
5
5
  "description": "E-Com Plus Cloud Commerce on Firebase",
6
6
  "main": "lib/index.js",
7
7
  "types": "lib/index.d.ts",
@@ -19,6 +19,11 @@ const self = {
19
19
  httpsFunctionOptions: {
20
20
  region: process.env.DEPLOY_REGION || 'us-east1',
21
21
  },
22
+ apps: {
23
+ discounts: {
24
+ appId: 912000,
25
+ },
26
+ },
22
27
  },
23
28
  };
24
29
 
@@ -5,13 +5,13 @@ import config from '@cloudcommerce/firebase/lib/config';
5
5
  // Blacklist urls to prevent consecultive errors
6
6
  const blacklist = {};
7
7
 
8
- export default async (url, data, isBigTimeout) => {
8
+ export default async (appId, modName, url, data, isBigTimeout) => {
9
9
  if (blacklist[url] > 2) {
10
10
  logger.log(`> Skipping blacklisted ${url}`);
11
11
  const err = new Error('Blacklited endpoint URL');
12
12
  return Promise.reject(err);
13
13
  }
14
- const { storeId } = config.get();
14
+ const { storeId, apps } = config.get();
15
15
  const debug = (response) => {
16
16
  const status = response ? response.status : 0;
17
17
  if (!blacklist[url]) {
@@ -37,6 +37,12 @@ export default async (url, data, isBigTimeout) => {
37
37
  }
38
38
  }
39
39
  };
40
+ if (modName === 'apply_discount') {
41
+ if (appId === apps.discounts.appId) {
42
+ return import('@cloudcommerce/app-discounts')
43
+ .then(({ applyDiscount }) => applyDiscount());
44
+ }
45
+ }
40
46
  return axios({
41
47
  method: 'POST',
42
48
  maxRedirects: 2,
@@ -1 +1 @@
1
- {"version":3,"file":"call-app-module.js","sourceRoot":"","sources":["../../src/firebase/call-app-module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,KAAwB,MAAM,OAAO,CAAC;AAC7C,OAAO,MAAM,MAAM,oCAAoC,CAAC;AAExD,gDAAgD;AAChD,MAAM,SAAS,GAAG,EAAE,CAAC;AAErB,eAAe,KAAK,EAAE,GAAW,EAAE,IAAS,EAAE,YAAqB,EAAE,EAAE;IACrE,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;QACtB,MAAM,CAAC,GAAG,CAAC,0BAA0B,GAAG,EAAE,CAAC,CAAC;QAC5C,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QACjD,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;KAC5B;IACD,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC;IAEjC,MAAM,KAAK,GAAG,CAAC,QAAuB,EAAE,EAAE;QACxC,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9C,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE;YACnB,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;SACpB;aAAM;YACL,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;SACrB;QACD,UAAU,CAAC,GAAG,EAAE;YACd,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBACtB,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;aACrB;iBAAM;gBACL,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC;aACvB;QACH,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAE5B,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,MAAM,MAAM,EAAE,CAAC,CAAC;QAClC,IAAI,MAAM,IAAI,GAAG,IAAI,MAAM,GAAG,GAAG,EAAE;YACjC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAC;YACnC,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,EAAE;gBACnD,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;gBACnC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;oBAC5E,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;iBACjD;aACF;SACF;IACH,CAAC,CAAC;IAEF,OAAO,KAAK,CAAC;QACX,MAAM,EAAE,MAAM;QACd,YAAY,EAAE,CAAC;QACf,YAAY,EAAE,MAAM;QACpB,gBAAgB,EAAE,OAAO;QACzB,GAAG;QACH,IAAI;QACJ,OAAO,EAAE;YACP,YAAY,EAAE,OAAO,CAAC,QAAQ,EAAE;SACjC;QACD,gDAAgD;QAChD,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK;KACtC,CAAC;SACC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;QACjB,KAAK,CAAC,QAAQ,CAAC,CAAC;QAChB,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC,CAAC;SACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QACb,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC;QACzB,KAAK,CAAC,QAAQ,CAAC,CAAC;QAChB,IAAI,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,IAAI,EAAE;YAC3B,IAAI,GAAG,GAAG,eAAe,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC;YACpD,IAAI,IAAI,EAAE;gBACR,GAAG,IAAI,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;aACtC;YACD,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SAClB;QACD,MAAM,GAAG,CAAC;IACZ,CAAC,CAAC,CAAC;AACP,CAAC,CAAC"}
1
+ {"version":3,"file":"call-app-module.js","sourceRoot":"","sources":["../../src/firebase/call-app-module.ts"],"names":[],"mappings":"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"}
@@ -95,7 +95,7 @@ async function runModule(apiAuth, params, res, modName, validate, responseValida
95
95
  let response;
96
96
  let isError = false;
97
97
  let errorMessage = null;
98
- callAppModule(appModuleUrl, appModuleBody, isBigTimeout)
98
+ callAppModule(appId, modName, appModuleUrl, appModuleBody, isBigTimeout)
99
99
  .then((appResponse) => {
100
100
  response = appResponse;
101
101
  })
@@ -1 +1 @@
1
- {"version":3,"file":"handle-module.js","sourceRoot":"","sources":["../../src/firebase/handle-module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"handle-module.js","sourceRoot":"","sources":["../../src/firebase/handle-module.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@cloudcommerce/modules",
3
3
  "type": "module",
4
- "version": "0.0.43",
4
+ "version": "0.0.44",
5
5
  "description": "E-Com Plus Cloud Commerce modules API",
6
6
  "main": "lib/index.cjs",
7
7
  "exports": {
@@ -25,6 +25,7 @@
25
25
  },
26
26
  "dependencies": {
27
27
  "@cloudcommerce/api": "workspace:*",
28
+ "@cloudcommerce/app-discounts": "workspace:*",
28
29
  "@cloudcommerce/firebase": "workspace:*",
29
30
  "ajv": "^8.11.0",
30
31
  "axios": "^0.27.2",
@@ -1,3 +1,4 @@
1
+ import type { AppModuleName } from '@cloudcommerce/types';
1
2
  import { logger } from 'firebase-functions';
2
3
  import axios, { AxiosResponse } from 'axios';
3
4
  import config from '@cloudcommerce/firebase/lib/config';
@@ -5,13 +6,19 @@ import config from '@cloudcommerce/firebase/lib/config';
5
6
  // Blacklist urls to prevent consecultive errors
6
7
  const blacklist = {};
7
8
 
8
- export default async (url: string, data: any, isBigTimeout: boolean) => {
9
+ export default async (
10
+ appId: number,
11
+ modName: AppModuleName,
12
+ url: string,
13
+ data: any,
14
+ isBigTimeout: boolean,
15
+ ) => {
9
16
  if (blacklist[url] > 2) {
10
17
  logger.log(`> Skipping blacklisted ${url}`);
11
18
  const err = new Error('Blacklited endpoint URL');
12
19
  return Promise.reject(err);
13
20
  }
14
- const { storeId } = config.get();
21
+ const { storeId, apps } = config.get();
15
22
 
16
23
  const debug = (response: AxiosResponse) => {
17
24
  const status = response ? response.status : 0;
@@ -40,6 +47,13 @@ export default async (url: string, data: any, isBigTimeout: boolean) => {
40
47
  }
41
48
  };
42
49
 
50
+ if (modName === 'apply_discount') {
51
+ if (appId === apps.discounts.appId) {
52
+ return import('@cloudcommerce/app-discounts')
53
+ .then(({ applyDiscount }) => applyDiscount());
54
+ }
55
+ }
56
+
43
57
  return axios({
44
58
  method: 'POST',
45
59
  maxRedirects: 2,
@@ -1,5 +1,5 @@
1
1
  import type { Request, Response } from 'firebase-functions';
2
- import type { Applications } from '@cloudcommerce/types';
2
+ import type { Applications, AppModuleName } from '@cloudcommerce/types';
3
3
  import { logger } from 'firebase-functions';
4
4
  import Ajv, { ValidateFunction } from 'ajv';
5
5
  import api, { ApiError, ApiConfig } from '@cloudcommerce/api';
@@ -115,7 +115,13 @@ async function runModule(
115
115
  let response: any;
116
116
  let isError = false;
117
117
  let errorMessage: string | null = null;
118
- callAppModule(appModuleUrl, appModuleBody, isBigTimeout)
118
+ callAppModule(
119
+ appId,
120
+ modName as AppModuleName,
121
+ appModuleUrl,
122
+ appModuleBody,
123
+ isBigTimeout,
124
+ )
119
125
  .then((appResponse) => {
120
126
  response = appResponse;
121
127
  })
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@cloudcommerce/passport",
3
3
  "type": "module",
4
- "version": "0.0.43",
4
+ "version": "0.0.44",
5
5
  "description": "E-Com Plus Cloud Commerce customers authentication (passport) API",
6
6
  "main": "lib/index.js",
7
7
  "exports": {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@cloudcommerce/ssr",
3
3
  "type": "module",
4
- "version": "0.0.43",
4
+ "version": "0.0.44",
5
5
  "description": "E-Com Plus Cloud Commerce storefront SSR",
6
6
  "main": "lib/index.js",
7
7
  "exports": {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@cloudcommerce/storefront",
3
3
  "type": "module",
4
- "version": "0.0.43",
4
+ "version": "0.0.44",
5
5
  "description": "E-Com Plus Cloud Commerce storefront with Astro",
6
6
  "main": "src/index.js",
7
7
  "repository": {
@@ -26,16 +26,21 @@ import type { CreateTransactionResponse } from './modules/create_transaction:res
26
26
  import type { CheckoutBody } from './modules/@checkout:params';
27
27
 
28
28
  type AppEventsTopic = 'orders-new'
29
- | 'orders-setAnyStatus'
29
+ | 'orders-anyStatusSet'
30
30
  | 'orders-paid'
31
31
  | 'orders-readyForShipping'
32
32
  | 'orders-delivered'
33
33
  | 'orders-cancelled'
34
34
  | 'products-new'
35
- | 'products-setQuantity'
36
- | 'products-setPrice'
35
+ | 'products-quantitySet'
36
+ | 'products-priceSet'
37
37
  | 'carts-new'
38
- | 'carts-setCustomer';
38
+ | 'carts-customerSet';
39
+
40
+ type AppModuleName = 'apply_discount'
41
+ | 'calculate_shipping'
42
+ | 'list_payments'
43
+ | 'create_transaction';
39
44
 
40
45
  export type {
41
46
  Products,
@@ -54,6 +59,7 @@ export type {
54
59
  ResourceListResult,
55
60
  EventsResult,
56
61
  AppEventsTopic,
62
+ AppModuleName,
57
63
  ApplyDiscountParams,
58
64
  ApplyDiscountResponse,
59
65
  CalculateShippingParams,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@cloudcommerce/types",
3
3
  "type": "module",
4
- "version": "0.0.43",
4
+ "version": "0.0.44",
5
5
  "description": "E-Com Plus Cloud Commerce reusable type definitions",
6
6
  "main": "index.ts",
7
7
  "repository": {
package/pnpm-lock.yaml CHANGED
@@ -75,6 +75,25 @@ importers:
75
75
  md5: 2.3.0
76
76
  zx: 7.0.7
77
77
 
78
+ packages/events:
79
+ specifiers:
80
+ '@cloudcommerce/api': workspace:*
81
+ '@cloudcommerce/firebase': workspace:^0.0.43
82
+ '@cloudcommerce/types': workspace:*
83
+ '@firebase/app-types': ^0.7.0
84
+ firebase-admin: ^11.0.1
85
+ firebase-functions: ^3.22.0
86
+ source-map-support: ^0.5.21
87
+ dependencies:
88
+ '@cloudcommerce/api': link:../api
89
+ '@cloudcommerce/firebase': link:../firebase
90
+ firebase-admin: 11.0.1_@firebase+app-types@0.7.0
91
+ firebase-functions: 3.22.0_firebase-admin@11.0.1
92
+ source-map-support: 0.5.21
93
+ devDependencies:
94
+ '@cloudcommerce/types': link:../types
95
+ '@firebase/app-types': 0.7.0
96
+
78
97
  packages/firebase:
79
98
  specifiers:
80
99
  '@cloudcommerce/api': workspace:*
@@ -99,6 +118,7 @@ importers:
99
118
  packages/modules:
100
119
  specifiers:
101
120
  '@cloudcommerce/api': workspace:*
121
+ '@cloudcommerce/app-discounts': workspace:^0.0.43
102
122
  '@cloudcommerce/firebase': workspace:*
103
123
  '@cloudcommerce/types': workspace:*
104
124
  '@firebase/app-types': ^0.7.0
@@ -110,6 +130,7 @@ importers:
110
130
  source-map-support: ^0.5.21
111
131
  dependencies:
112
132
  '@cloudcommerce/api': link:../api
133
+ '@cloudcommerce/app-discounts': link:../apps/discounts
113
134
  '@cloudcommerce/firebase': link:../firebase
114
135
  ajv: 8.11.0
115
136
  axios: 0.27.2
@@ -177,36 +198,36 @@ importers:
177
198
 
178
199
  store:
179
200
  specifiers:
180
- '@cloudcommerce/cli': ^0.0.42
201
+ '@cloudcommerce/cli': ^0.0.43
181
202
  dependencies:
182
203
  '@cloudcommerce/cli': link:../packages/cli
183
204
 
184
205
  store/functions/core:
185
206
  specifiers:
186
- '@cloudcommerce/firebase': ^0.0.42
207
+ '@cloudcommerce/firebase': ^0.0.43
187
208
  dependencies:
188
209
  '@cloudcommerce/firebase': link:../../../packages/firebase
189
210
 
190
211
  store/functions/modules:
191
212
  specifiers:
192
- '@cloudcommerce/firebase': ^0.0.42
193
- '@cloudcommerce/modules': ^0.0.42
213
+ '@cloudcommerce/firebase': ^0.0.43
214
+ '@cloudcommerce/modules': ^0.0.43
194
215
  dependencies:
195
216
  '@cloudcommerce/firebase': link:../../../packages/firebase
196
217
  '@cloudcommerce/modules': link:../../../packages/modules
197
218
 
198
219
  store/functions/passport:
199
220
  specifiers:
200
- '@cloudcommerce/firebase': ^0.0.42
201
- '@cloudcommerce/passport': ^0.0.42
221
+ '@cloudcommerce/firebase': ^0.0.43
222
+ '@cloudcommerce/passport': ^0.0.43
202
223
  dependencies:
203
224
  '@cloudcommerce/firebase': link:../../../packages/firebase
204
225
  '@cloudcommerce/passport': link:../../../packages/passport
205
226
 
206
227
  store/functions/ssr:
207
228
  specifiers:
208
- '@cloudcommerce/firebase': ^0.0.42
209
- '@cloudcommerce/ssr': ^0.0.42
229
+ '@cloudcommerce/firebase': ^0.0.43
230
+ '@cloudcommerce/ssr': ^0.0.43
210
231
  dependencies:
211
232
  '@cloudcommerce/firebase': link:../../../packages/firebase
212
233
  '@cloudcommerce/ssr': link:../../../packages/ssr