cloudcommerce 0.0.31 → 0.0.35
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 +41 -0
- package/action.yml +4 -0
- package/package.json +6 -6
- package/packages/__skeleton/package.json +4 -1
- package/packages/__skeleton/src/{index.js → index.ts} +0 -0
- package/packages/__skeleton/tsconfig.json +3 -0
- package/packages/api/{tests/fetch-polyfill.js → fetch-polyfill.js} +0 -0
- package/packages/api/lib/index.d.ts +2 -112
- package/packages/api/lib/types.d.ts +1 -1
- package/packages/api/package.json +1 -1
- package/packages/api/src/types.ts +4 -0
- package/packages/api/tests/index.test.ts +1 -1
- package/packages/apps/discounts/lib/index.js +4 -0
- package/packages/apps/discounts/lib/index.js.map +1 -0
- package/packages/apps/discounts/package.json +4 -1
- package/packages/apps/discounts/src/index.ts +7 -0
- package/packages/apps/discounts/tsconfig.json +3 -0
- package/packages/cli/lib/index.js +11 -2
- package/packages/cli/package.json +1 -1
- package/packages/cli/src/index.ts +12 -3
- package/packages/firebase/lib/config.d.ts +15 -0
- package/packages/firebase/lib/config.js +3 -0
- package/packages/firebase/lib/config.js.map +1 -1
- package/packages/firebase/lib/defaults.d.ts +4 -0
- package/packages/firebase/lib/env.d.ts +8 -0
- package/packages/firebase/lib/env.js +19 -0
- package/packages/firebase/lib/env.js.map +1 -0
- package/packages/firebase/lib/handlers/check-store-events.d.ts +2 -0
- package/packages/firebase/lib/handlers/check-store-events.js +31 -0
- package/packages/firebase/lib/handlers/check-store-events.js.map +1 -0
- package/packages/firebase/lib/index.d.ts +5 -0
- package/packages/firebase/lib/index.js +7 -15
- package/packages/firebase/lib/index.js.map +1 -1
- package/packages/firebase/lib/types.d.ts +6 -0
- package/packages/firebase/lib/types.js +0 -1
- package/packages/firebase/lib/types.js.map +1 -1
- package/packages/firebase/package.json +4 -1
- package/packages/firebase/src/config.ts +3 -0
- package/packages/firebase/src/env.ts +30 -0
- package/packages/firebase/src/handlers/check-store-events.ts +31 -0
- package/packages/firebase/src/index.ts +7 -21
- package/packages/firebase/src/types.ts +6 -7
- package/packages/firebase/tsconfig.json +4 -1
- package/packages/modules/CHANGELOG.md +1 -0
- package/packages/modules/README.md +1 -0
- package/packages/modules/lib/firebase/index.js +16 -0
- package/packages/modules/lib/firebase/index.js.map +1 -0
- package/packages/modules/lib/index.js +21 -0
- package/packages/modules/lib/index.js.map +1 -0
- package/packages/modules/package.json +33 -0
- package/packages/modules/schemas/@checkout.cjs +1015 -0
- package/packages/modules/schemas/apply_discount.cjs +324 -0
- package/packages/modules/schemas/calculate_shipping.cjs +666 -0
- package/packages/modules/schemas/create_transaction.cjs +1001 -0
- package/packages/modules/schemas/list_payments.cjs +852 -0
- package/packages/modules/scripts/build-types.sh +33 -0
- package/packages/modules/src/firebase/index.ts +16 -0
- package/packages/modules/src/index.ts +21 -0
- package/packages/modules/tsconfig.json +3 -0
- package/packages/storefront/package.json +2 -2
- package/packages/types/CHANGELOG.md +1 -0
- package/packages/types/README.md +1 -0
- package/packages/types/index.ts +66 -0
- package/packages/types/modules/@checkout:params.d.ts +920 -0
- package/packages/types/modules/apply_discount:params.d.ts +154 -0
- package/packages/types/modules/apply_discount:response.d.ts +71 -0
- package/packages/types/modules/calculate_shipping:params.d.ts +275 -0
- package/packages/types/modules/calculate_shipping:response.d.ts +402 -0
- package/packages/types/modules/create_transaction:params.d.ts +515 -0
- package/packages/types/modules/create_transaction:response.d.ts +261 -0
- package/packages/types/modules/list_payments:params.d.ts +323 -0
- package/packages/types/modules/list_payments:response.d.ts +266 -0
- package/packages/types/package.json +21 -0
- package/pnpm-lock.yaml +505 -274
- package/packages/firebase/lib/methods/check-store-events.js +0 -18
- package/packages/firebase/lib/methods/check-store-events.js.map +0 -1
- package/packages/firebase/src/methods/check-store-events.ts +0 -18
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cloudcommerce/firebase",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.35",
|
|
5
5
|
"description": "E-Com Plus Cloud Commerce on Firebase",
|
|
6
6
|
"main": "lib/index.js",
|
|
7
|
+
"types": "lib/index.d.ts",
|
|
7
8
|
"exports": {
|
|
8
9
|
".": "./lib/index.js",
|
|
9
10
|
"./config": "./config.js"
|
|
@@ -27,9 +28,11 @@
|
|
|
27
28
|
"@fastify/deepmerge": "^1.1.0",
|
|
28
29
|
"firebase-admin": "^11.0.0",
|
|
29
30
|
"firebase-functions": "^3.22.0",
|
|
31
|
+
"node-fetch": "^3.2.9",
|
|
30
32
|
"source-map-support": "^0.5.21"
|
|
31
33
|
},
|
|
32
34
|
"devDependencies": {
|
|
35
|
+
"@cloudcommerce/types": "workspace:*",
|
|
33
36
|
"@firebase/app-types": "^0.7.0"
|
|
34
37
|
}
|
|
35
38
|
}
|
|
@@ -16,6 +16,9 @@ const self = {
|
|
|
16
16
|
currencySymbol: process.env.ECOM_CURRENCY_SYMBOL || DEFAULT_CURRENCY_SYMBOL,
|
|
17
17
|
countryCode: process.env.ECOM_COUNTRY_CODE || DEFAULT_COUNTRY_CODE,
|
|
18
18
|
storeId: Number(process.env.ECOM_STORE_ID),
|
|
19
|
+
httpsFunctionOptions: {
|
|
20
|
+
region: process.env.DEPLOY_REGION || 'us-east1',
|
|
21
|
+
},
|
|
19
22
|
},
|
|
20
23
|
};
|
|
21
24
|
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
type Env = {
|
|
2
|
+
authenticationId: string;
|
|
3
|
+
apiKey: string;
|
|
4
|
+
githubToken?: string;
|
|
5
|
+
};
|
|
6
|
+
|
|
7
|
+
export default () => {
|
|
8
|
+
const {
|
|
9
|
+
ECOM_AUTHENTICATION_ID,
|
|
10
|
+
ECOM_API_KEY,
|
|
11
|
+
GITHUB_TOKEN,
|
|
12
|
+
} = process.env;
|
|
13
|
+
if (!ECOM_AUTHENTICATION_ID) {
|
|
14
|
+
throw new Error('ECOM_AUTHENTICATION_ID is not set');
|
|
15
|
+
}
|
|
16
|
+
if (!ECOM_API_KEY) {
|
|
17
|
+
throw new Error('ECOM_API_KEY is not set');
|
|
18
|
+
}
|
|
19
|
+
const authenticationId = ECOM_AUTHENTICATION_ID;
|
|
20
|
+
const apiKey = ECOM_API_KEY;
|
|
21
|
+
const githubToken = GITHUB_TOKEN;
|
|
22
|
+
const env: Env = {
|
|
23
|
+
authenticationId,
|
|
24
|
+
apiKey,
|
|
25
|
+
githubToken,
|
|
26
|
+
};
|
|
27
|
+
return env;
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
export type { Env };
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { EventSub } from '../types';
|
|
2
|
+
import { firestore } from 'firebase-admin';
|
|
3
|
+
import { logger } from 'firebase-functions';
|
|
4
|
+
import api from '@cloudcommerce/api';
|
|
5
|
+
import getEnv from '../env';
|
|
6
|
+
|
|
7
|
+
export default async () => {
|
|
8
|
+
const { authenticationId, apiKey } = getEnv();
|
|
9
|
+
const eventsSubs = await firestore().collection('eventsSubs').get();
|
|
10
|
+
const listenedEvents: EventSub['event'][] = [];
|
|
11
|
+
eventsSubs.forEach((doc) => {
|
|
12
|
+
const eventSub = doc.data() as EventSub;
|
|
13
|
+
if (!listenedEvents.includes(eventSub.event)) {
|
|
14
|
+
listenedEvents.push(eventSub.event);
|
|
15
|
+
}
|
|
16
|
+
});
|
|
17
|
+
logger.info({ listenedEvents });
|
|
18
|
+
[
|
|
19
|
+
'orders',
|
|
20
|
+
'products',
|
|
21
|
+
'carts',
|
|
22
|
+
].forEach(async (resource) => {
|
|
23
|
+
const { data: { result } } = await api({
|
|
24
|
+
authenticationId,
|
|
25
|
+
apiKey,
|
|
26
|
+
endpoint: `events/${resource as 'orders'}`,
|
|
27
|
+
});
|
|
28
|
+
logger.info(`${resource} events: `, result);
|
|
29
|
+
});
|
|
30
|
+
return true;
|
|
31
|
+
};
|
|
@@ -1,32 +1,18 @@
|
|
|
1
|
-
import type { Env } from './types';
|
|
2
1
|
import 'source-map-support/register.js';
|
|
2
|
+
import '@cloudcommerce/api/fetch-polyfill.js';
|
|
3
|
+
import { initializeApp } from 'firebase-admin';
|
|
3
4
|
import { pubsub, logger } from 'firebase-functions';
|
|
4
5
|
// eslint-disable-next-line import/no-unresolved
|
|
5
6
|
import { onRequest } from 'firebase-functions/v2/https';
|
|
6
7
|
import config from './config';
|
|
7
|
-
import checkStoreEvents from './
|
|
8
|
+
import checkStoreEvents from './handlers/check-store-events';
|
|
8
9
|
|
|
9
|
-
|
|
10
|
-
AUTHENTICATION_ID,
|
|
11
|
-
API_KEY,
|
|
12
|
-
GITHUB_TOKEN,
|
|
13
|
-
} = process.env;
|
|
14
|
-
if (!AUTHENTICATION_ID || !API_KEY || !GITHUB_TOKEN) {
|
|
15
|
-
throw new Error('Missing environment variables');
|
|
16
|
-
}
|
|
10
|
+
initializeApp();
|
|
17
11
|
const processId = String(Date.now());
|
|
18
|
-
const
|
|
19
|
-
processId,
|
|
20
|
-
authenticationId: AUTHENTICATION_ID,
|
|
21
|
-
apiKey: API_KEY,
|
|
22
|
-
githubToken: GITHUB_TOKEN,
|
|
23
|
-
};
|
|
24
|
-
|
|
25
|
-
const options = {
|
|
26
|
-
region: process.env.DEPLOY_REGION || 'us-east1',
|
|
27
|
-
};
|
|
12
|
+
const options = config.get().httpsFunctionOptions;
|
|
28
13
|
|
|
29
14
|
export const z = onRequest(options, ({ url }, response) => {
|
|
15
|
+
process.env.ECOM_API_KEY = '***';
|
|
30
16
|
if (url === '/hello') {
|
|
31
17
|
logger.info('Hello logs!', {
|
|
32
18
|
structuredData: true,
|
|
@@ -48,5 +34,5 @@ export const ssr = onRequest(options, (request, response) => {
|
|
|
48
34
|
});
|
|
49
35
|
|
|
50
36
|
export const cronStoreEvents = pubsub.schedule('* * * * *').onRun(() => {
|
|
51
|
-
return checkStoreEvents(
|
|
37
|
+
return checkStoreEvents();
|
|
52
38
|
});
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
/* eslint-disable import/prefer-default-export */
|
|
2
|
+
import type { AppEventsTopic } from '@cloudcommerce/types';
|
|
2
3
|
|
|
3
|
-
type
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
githubToken: string;
|
|
8
|
-
}
|
|
4
|
+
type EventSub = {
|
|
5
|
+
event: AppEventsTopic,
|
|
6
|
+
appId: number,
|
|
7
|
+
};
|
|
9
8
|
|
|
10
9
|
export type {
|
|
11
|
-
|
|
10
|
+
EventSub,
|
|
12
11
|
};
|
|
@@ -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/modules`
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/* eslint-disable import/prefer-default-export */
|
|
2
|
+
import 'source-map-support/register.js';
|
|
3
|
+
import { initializeApp } from 'firebase-admin';
|
|
4
|
+
// import { logger } from 'firebase-functions';
|
|
5
|
+
// eslint-disable-next-line import/no-unresolved
|
|
6
|
+
import { onRequest } from 'firebase-functions/v2/https';
|
|
7
|
+
import config from '@cloudcommerce/firebase/lib/config';
|
|
8
|
+
|
|
9
|
+
initializeApp();
|
|
10
|
+
const options = config.get().httpsFunctionOptions;
|
|
11
|
+
|
|
12
|
+
export const modApplyDiscount = onRequest(options, (request, response) => {
|
|
13
|
+
process.env.ECOM_API_KEY = '***';
|
|
14
|
+
response.send('Hello modules!');
|
|
15
|
+
});
|
|
16
|
+
// # sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/firebase/index.ts"],"names":[],"mappings":"AAAA,iDAAiD;AAEjD,OAAO,gCAAgC,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,+CAA+C;AAC/C,gDAAgD;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,MAAM,MAAM,oCAAoC,CAAC;AAExD,aAAa,EAAE,CAAC;AAChB,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,oBAAoB,CAAC;AAElD,MAAM,CAAC,MAAM,gBAAgB,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE;IACvE,OAAO,CAAC,GAAG,CAAC,YAAY,GAAG,KAAK,CAAC;IACjC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;AAClC,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import * as calculateShipping from '../schemas/calculate_shipping.cjs';
|
|
2
|
+
import * as applyDiscount from '../schemas/apply_discount.cjs';
|
|
3
|
+
import * as listPayments from '../schemas/list_payments.cjs';
|
|
4
|
+
import * as createTransaction from '../schemas/create_transaction.cjs';
|
|
5
|
+
import * as checkout from '../schemas/@checkout.cjs';
|
|
6
|
+
|
|
7
|
+
export default {
|
|
8
|
+
calculateShipping,
|
|
9
|
+
applyDiscount,
|
|
10
|
+
listPayments,
|
|
11
|
+
createTransaction,
|
|
12
|
+
checkout,
|
|
13
|
+
schemas: {
|
|
14
|
+
calculate_shipping: calculateShipping,
|
|
15
|
+
apply_discount: applyDiscount,
|
|
16
|
+
list_payments: listPayments,
|
|
17
|
+
create_transaction: createTransaction,
|
|
18
|
+
'@checkout': checkout,
|
|
19
|
+
},
|
|
20
|
+
};
|
|
21
|
+
// # sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,iBAAiB,MAAM,mCAAmC,CAAC;AACvE,OAAO,KAAK,aAAa,MAAM,+BAA+B,CAAC;AAC/D,OAAO,KAAK,YAAY,MAAM,8BAA8B,CAAC;AAC7D,OAAO,KAAK,iBAAiB,MAAM,mCAAmC,CAAC;AACvE,OAAO,KAAK,QAAQ,MAAM,0BAA0B,CAAC;AAErD,eAAe;IACb,iBAAiB;IACjB,aAAa;IACb,YAAY;IACZ,iBAAiB;IACjB,QAAQ;IAER,OAAO,EAAE;QACP,kBAAkB,EAAE,iBAAiB;QACrC,cAAc,EAAE,aAAa;QAC7B,aAAa,EAAE,YAAY;QAC3B,kBAAkB,EAAE,iBAAiB;QACrC,WAAW,EAAE,QAAQ;KACtB;CACF,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@cloudcommerce/modules",
|
|
3
|
+
"type": "module",
|
|
4
|
+
"version": "0.0.35",
|
|
5
|
+
"description": "E-Com Plus Cloud Commerce modules API",
|
|
6
|
+
"main": "lib/index.cjs",
|
|
7
|
+
"repository": {
|
|
8
|
+
"type": "git",
|
|
9
|
+
"url": "git+https://github.com/ecomplus/cloud-commerce.git",
|
|
10
|
+
"directory": "packages/modules"
|
|
11
|
+
},
|
|
12
|
+
"author": "E-Com Club Softwares para E-commerce <ti@e-com.club>",
|
|
13
|
+
"license": "Apache 2.0 with Commons Clause",
|
|
14
|
+
"bugs": {
|
|
15
|
+
"url": "https://github.com/ecomplus/cloud-commerce/issues"
|
|
16
|
+
},
|
|
17
|
+
"homepage": "https://github.com/ecomplus/cloud-commerce/tree/main/packages/modules#readme",
|
|
18
|
+
"scripts": {
|
|
19
|
+
"build": "sh ../../scripts/build-lib.sh",
|
|
20
|
+
"build:types": "sh scripts/build-types.sh"
|
|
21
|
+
},
|
|
22
|
+
"dependencies": {
|
|
23
|
+
"@cloudcommerce/firebase": "workspace:*",
|
|
24
|
+
"firebase-admin": "^11.0.0",
|
|
25
|
+
"firebase-functions": "^3.22.0",
|
|
26
|
+
"source-map-support": "^0.5.21"
|
|
27
|
+
},
|
|
28
|
+
"devDependencies": {
|
|
29
|
+
"@cloudcommerce/types": "workspace:*",
|
|
30
|
+
"@firebase/app-types": "^0.7.0",
|
|
31
|
+
"json-schema-to-typescript": "^11.0.1"
|
|
32
|
+
}
|
|
33
|
+
}
|