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.
- package/CHANGELOG.md +17 -0
- package/package.json +1 -1
- package/packages/api/package.json +1 -1
- package/packages/apps/discounts/lib/index.d.ts +3 -0
- package/packages/apps/discounts/lib/index.js +3 -1
- package/packages/apps/discounts/lib/index.js.map +1 -1
- package/packages/apps/discounts/package.json +3 -3
- package/packages/apps/discounts/src/index.ts +1 -1
- package/packages/apps/discounts/tsconfig.json +4 -1
- package/packages/cli/lib/build.js +5 -2
- package/packages/cli/package.json +1 -1
- package/packages/cli/src/build.ts +8 -5
- package/packages/events/CHANGELOG.md +1 -0
- package/packages/events/README.md +1 -0
- package/packages/events/package.json +36 -0
- package/packages/events/src/firebase.ts +30 -0
- package/packages/events/src/index.ts +1 -0
- package/packages/events/tsconfig.json +3 -0
- package/packages/firebase/lib/config.d.ts +5 -0
- package/packages/firebase/lib/config.js +5 -0
- package/packages/firebase/lib/config.js.map +1 -1
- package/packages/firebase/package.json +1 -1
- package/packages/firebase/src/config.ts +5 -0
- package/packages/modules/lib/firebase/call-app-module.js +8 -2
- package/packages/modules/lib/firebase/call-app-module.js.map +1 -1
- package/packages/modules/lib/firebase/handle-module.js +1 -1
- package/packages/modules/lib/firebase/handle-module.js.map +1 -1
- package/packages/modules/package.json +2 -1
- package/packages/modules/src/firebase/call-app-module.ts +16 -2
- package/packages/modules/src/firebase/handle-module.ts +8 -2
- package/packages/passport/package.json +1 -1
- package/packages/ssr/package.json +1 -1
- package/packages/storefront/package.json +1 -1
- package/packages/types/index.ts +10 -4
- package/packages/types/package.json +1 -1
- 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.
|
|
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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,MAAM,
|
|
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.
|
|
4
|
+
"version": "0.0.44",
|
|
5
5
|
"description": "E-Com Plus Cloud Commerce app for complex discount rules",
|
|
6
|
-
"main": "
|
|
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": "
|
|
19
|
+
"build": "sh ../../../scripts/build-lib.sh"
|
|
20
20
|
},
|
|
21
21
|
"dependencies": {
|
|
22
22
|
"@cloudcommerce/api": "workspace:*"
|
|
@@ -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
|
-
|
|
12
|
-
|
|
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
|
}
|
|
@@ -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
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
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 {};
|
|
@@ -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"}
|
|
@@ -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":"
|
|
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.
|
|
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 (
|
|
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(
|
|
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
|
})
|
package/packages/types/index.ts
CHANGED
|
@@ -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-
|
|
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-
|
|
36
|
-
| 'products-
|
|
35
|
+
| 'products-quantitySet'
|
|
36
|
+
| 'products-priceSet'
|
|
37
37
|
| 'carts-new'
|
|
38
|
-
| 'carts-
|
|
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,
|
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.
|
|
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.
|
|
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.
|
|
193
|
-
'@cloudcommerce/modules': ^0.0.
|
|
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.
|
|
201
|
-
'@cloudcommerce/passport': ^0.0.
|
|
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.
|
|
209
|
-
'@cloudcommerce/ssr': ^0.0.
|
|
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
|