@orchesty/connector-woocommerce 1.0.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.
- package/CHANGELOG.md +12 -0
- package/LICENSE +190 -0
- package/coverage/clover.xml +404 -0
- package/coverage/coverage-final.json +21 -0
- package/coverage/lcov-report/base.css +224 -0
- package/coverage/lcov-report/block-navigation.js +87 -0
- package/coverage/lcov-report/favicon.png +0 -0
- package/coverage/lcov-report/index.html +161 -0
- package/coverage/lcov-report/prettify.css +1 -0
- package/coverage/lcov-report/prettify.js +2 -0
- package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
- package/coverage/lcov-report/sorter.js +210 -0
- package/coverage/lcov-report/src/Batch/WooCommerceGetOrders.ts.html +640 -0
- package/coverage/lcov-report/src/Batch/WooCommerceGetProducts.ts.html +532 -0
- package/coverage/lcov-report/src/Batch/WooCommerceGetVariants.ts.html +433 -0
- package/coverage/lcov-report/src/Batch/index.html +146 -0
- package/coverage/lcov-report/src/Connector/WooCommerceAddNote.ts.html +220 -0
- package/coverage/lcov-report/src/Connector/WooCommerceCreateProduct.ts.html +178 -0
- package/coverage/lcov-report/src/Connector/WooCommerceCreateProductCategory.ts.html +307 -0
- package/coverage/lcov-report/src/Connector/WooCommerceGetOrderNotes.ts.html +274 -0
- package/coverage/lcov-report/src/Connector/WooCommerceGetOrderStatuses.ts.html +175 -0
- package/coverage/lcov-report/src/Connector/WooCommerceGetPaymentGateways.ts.html +295 -0
- package/coverage/lcov-report/src/Connector/WooCommerceGetProduct.ts.html +181 -0
- package/coverage/lcov-report/src/Connector/WooCommerceGetProductVariant.ts.html +496 -0
- package/coverage/lcov-report/src/Connector/WooCommerceGetProductsBySku.ts.html +226 -0
- package/coverage/lcov-report/src/Connector/WooCommerceGetSettingsGeneral.ts.html +238 -0
- package/coverage/lcov-report/src/Connector/WooCommerceGetShippingMethods.ts.html +478 -0
- package/coverage/lcov-report/src/Connector/WooCommerceUpdateOrder.ts.html +193 -0
- package/coverage/lcov-report/src/Connector/WooCommerceUpdateProduct.ts.html +199 -0
- package/coverage/lcov-report/src/Connector/WooCommerceUpdateProductQuantity.ts.html +220 -0
- package/coverage/lcov-report/src/Connector/WooCommerceUpdateProductVariant.ts.html +199 -0
- package/coverage/lcov-report/src/Connector/index.html +326 -0
- package/coverage/lcov-report/src/WooCommerceApplication.ts.html +364 -0
- package/coverage/lcov-report/src/index.html +116 -0
- package/coverage/lcov-report/test/dataProvider.ts.html +427 -0
- package/coverage/lcov-report/test/index.html +116 -0
- package/coverage/lcov.info +661 -0
- package/dist/Batch/WooCommerceGetOrders.d.ts +133 -0
- package/dist/Batch/WooCommerceGetOrders.js +44 -0
- package/dist/Batch/WooCommerceGetProducts.d.ts +108 -0
- package/dist/Batch/WooCommerceGetProducts.js +36 -0
- package/dist/Batch/WooCommerceGetVariants.d.ts +81 -0
- package/dist/Batch/WooCommerceGetVariants.js +30 -0
- package/dist/Connector/WooCommerceAddNote.d.ts +18 -0
- package/dist/Connector/WooCommerceAddNote.js +23 -0
- package/dist/Connector/WooCommerceCreateProduct.d.ts +10 -0
- package/dist/Connector/WooCommerceCreateProduct.js +20 -0
- package/dist/Connector/WooCommerceCreateProductCategory.d.ts +41 -0
- package/dist/Connector/WooCommerceCreateProductCategory.js +28 -0
- package/dist/Connector/WooCommerceGetOrderNotes.d.ts +33 -0
- package/dist/Connector/WooCommerceGetOrderNotes.js +24 -0
- package/dist/Connector/WooCommerceGetOrderStatuses.d.ts +11 -0
- package/dist/Connector/WooCommerceGetOrderStatuses.js +20 -0
- package/dist/Connector/WooCommerceGetPaymentGateways.d.ts +48 -0
- package/dist/Connector/WooCommerceGetPaymentGateways.js +20 -0
- package/dist/Connector/WooCommerceGetProduct.d.ts +11 -0
- package/dist/Connector/WooCommerceGetProduct.js +21 -0
- package/dist/Connector/WooCommerceGetProductVariant.d.ts +12 -0
- package/dist/Connector/WooCommerceGetProductVariant.js +46 -0
- package/dist/Connector/WooCommerceGetProductsBySku.d.ts +12 -0
- package/dist/Connector/WooCommerceGetProductsBySku.js +34 -0
- package/dist/Connector/WooCommerceGetSettingsGeneral.d.ts +29 -0
- package/dist/Connector/WooCommerceGetSettingsGeneral.js +21 -0
- package/dist/Connector/WooCommerceGetShippingMethods.d.ts +82 -0
- package/dist/Connector/WooCommerceGetShippingMethods.js +36 -0
- package/dist/Connector/WooCommerceRegisterWebhook.d.ts +7 -0
- package/dist/Connector/WooCommerceRegisterWebhook.js +65 -0
- package/dist/Connector/WooCommerceUnsubscribeWebhooks.d.ts +6 -0
- package/dist/Connector/WooCommerceUnsubscribeWebhooks.js +59 -0
- package/dist/Connector/WooCommerceUpdateOrder.d.ts +12 -0
- package/dist/Connector/WooCommerceUpdateOrder.js +23 -0
- package/dist/Connector/WooCommerceUpdateProduct.d.ts +12 -0
- package/dist/Connector/WooCommerceUpdateProduct.js +25 -0
- package/dist/Connector/WooCommerceUpdateProductQuantity.d.ts +16 -0
- package/dist/Connector/WooCommerceUpdateProductQuantity.js +22 -0
- package/dist/Connector/WooCommerceUpdateProductVariant.d.ts +13 -0
- package/dist/Connector/WooCommerceUpdateProductVariant.js +21 -0
- package/dist/WooCommerceApplication.d.ts +21 -0
- package/dist/WooCommerceApplication.js +101 -0
- package/dist/package.json +28 -0
- package/jest.config.js +13 -0
- package/package.json +28 -0
- package/src/Batch/WooCommerceGetOrders.ts +185 -0
- package/src/Batch/WooCommerceGetProducts.ts +149 -0
- package/src/Batch/WooCommerceGetVariants.ts +116 -0
- package/src/Batch/__tests__/Data/WooCommerceGetOrders/ids-input.json +8 -0
- package/src/Batch/__tests__/Data/WooCommerceGetOrders/ids-mock.json +319 -0
- package/src/Batch/__tests__/Data/WooCommerceGetOrders/ids-output.json +16 -0
- package/src/Batch/__tests__/Data/WooCommerceGetOrders/input.json +6 -0
- package/src/Batch/__tests__/Data/WooCommerceGetOrders/lastRun-input.json +6 -0
- package/src/Batch/__tests__/Data/WooCommerceGetOrders/lastRun-mock.json +319 -0
- package/src/Batch/__tests__/Data/WooCommerceGetOrders/lastRun-output.json +15 -0
- package/src/Batch/__tests__/Data/WooCommerceGetOrders/mock.json +319 -0
- package/src/Batch/__tests__/Data/WooCommerceGetOrders/output.json +15 -0
- package/src/Batch/__tests__/Data/WooCommerceGetProducts/input.json +7 -0
- package/src/Batch/__tests__/Data/WooCommerceGetProducts/mock.json +170 -0
- package/src/Batch/__tests__/Data/WooCommerceGetProducts/output.json +11 -0
- package/src/Batch/__tests__/Data/WooCommerceGetProducts/withAfter-input.json +7 -0
- package/src/Batch/__tests__/Data/WooCommerceGetProducts/withAfter-mock.json +170 -0
- package/src/Batch/__tests__/Data/WooCommerceGetProducts/withAfter-output.json +11 -0
- package/src/Batch/__tests__/Data/WooCommerceGetVariants/input.json +169 -0
- package/src/Batch/__tests__/Data/WooCommerceGetVariants/mock.json +160 -0
- package/src/Batch/__tests__/Data/WooCommerceGetVariants/output.json +11 -0
- package/src/Batch/__tests__/WooCommerceGetOrders.ts +42 -0
- package/src/Batch/__tests__/WooCommerceGetProducts.ts +37 -0
- package/src/Batch/__tests__/WooCommerceGetVariants.ts +32 -0
- package/src/Connector/WooCommerceAddNote.ts +45 -0
- package/src/Connector/WooCommerceCreateProduct.ts +31 -0
- package/src/Connector/WooCommerceCreateProductCategory.ts +74 -0
- package/src/Connector/WooCommerceGetOrderNotes.ts +63 -0
- package/src/Connector/WooCommerceGetOrderStatuses.ts +30 -0
- package/src/Connector/WooCommerceGetPaymentGateways.ts +70 -0
- package/src/Connector/WooCommerceGetProduct.ts +32 -0
- package/src/Connector/WooCommerceGetProductVariant.ts +137 -0
- package/src/Connector/WooCommerceGetProductsBySku.ts +47 -0
- package/src/Connector/WooCommerceGetSettingsGeneral.ts +51 -0
- package/src/Connector/WooCommerceGetShippingMethods.ts +131 -0
- package/src/Connector/WooCommerceRegisterWebhook.ts +106 -0
- package/src/Connector/WooCommerceUnsubscribeWebhooks.ts +91 -0
- package/src/Connector/WooCommerceUpdateOrder.ts +36 -0
- package/src/Connector/WooCommerceUpdateProduct.ts +38 -0
- package/src/Connector/WooCommerceUpdateProductQuantity.ts +45 -0
- package/src/Connector/WooCommerceUpdateProductVariant.ts +38 -0
- package/src/Connector/__tests__/Data/WooCommerceAddNote/input.json +11 -0
- package/src/Connector/__tests__/Data/WooCommerceAddNote/mock.json +22 -0
- package/src/Connector/__tests__/Data/WooCommerceAddNote/output.json +23 -0
- package/src/Connector/__tests__/Data/WooCommerceCreateProduct/input.json +28 -0
- package/src/Connector/__tests__/Data/WooCommerceCreateProduct/mock.json +125 -0
- package/src/Connector/__tests__/Data/WooCommerceCreateProduct/output.json +126 -0
- package/src/Connector/__tests__/Data/WooCommerceCreateProductCategory/input.json +11 -0
- package/src/Connector/__tests__/Data/WooCommerceCreateProductCategory/mock.json +36 -0
- package/src/Connector/__tests__/Data/WooCommerceCreateProductCategory/output.json +37 -0
- package/src/Connector/__tests__/Data/WooCommerceGetOrderNotes/input.json +8 -0
- package/src/Connector/__tests__/Data/WooCommerceGetOrderNotes/mock.json +81 -0
- package/src/Connector/__tests__/Data/WooCommerceGetOrderNotes/output.json +82 -0
- package/src/Connector/__tests__/Data/WooCommerceGetOrderStatuses/input.json +6 -0
- package/src/Connector/__tests__/Data/WooCommerceGetOrderStatuses/mock.json +41 -0
- package/src/Connector/__tests__/Data/WooCommerceGetOrderStatuses/output.json +42 -0
- package/src/Connector/__tests__/Data/WooCommerceGetPaymentGateways/input.json +6 -0
- package/src/Connector/__tests__/Data/WooCommerceGetPaymentGateways/mock.json +350 -0
- package/src/Connector/__tests__/Data/WooCommerceGetPaymentGateways/output.json +351 -0
- package/src/Connector/__tests__/Data/WooCommerceGetProduct/input.json +8 -0
- package/src/Connector/__tests__/Data/WooCommerceGetProduct/mock.json +125 -0
- package/src/Connector/__tests__/Data/WooCommerceGetProduct/output.json +126 -0
- package/src/Connector/__tests__/Data/WooCommerceGetProductVariant/input.json +37 -0
- package/src/Connector/__tests__/Data/WooCommerceGetProductVariant/mock.json +81 -0
- package/src/Connector/__tests__/Data/WooCommerceGetProductVariant/mock1.json +81 -0
- package/src/Connector/__tests__/Data/WooCommerceGetProductVariant/nok-input.json +22 -0
- package/src/Connector/__tests__/Data/WooCommerceGetProductVariant/nok-mock.json +81 -0
- package/src/Connector/__tests__/Data/WooCommerceGetProductVariant/nok-output.json +24 -0
- package/src/Connector/__tests__/Data/WooCommerceGetProductVariant/output.json +37 -0
- package/src/Connector/__tests__/Data/WooCommerceGetProductsBySku/input.json +8 -0
- package/src/Connector/__tests__/Data/WooCommerceGetProductsBySku/mock.json +170 -0
- package/src/Connector/__tests__/Data/WooCommerceGetProductsBySku/output.json +169 -0
- package/src/Connector/__tests__/Data/WooCommerceGetSettingsGeneral/input.json +6 -0
- package/src/Connector/__tests__/Data/WooCommerceGetSettingsGeneral/mock.json +3459 -0
- package/src/Connector/__tests__/Data/WooCommerceGetSettingsGeneral/output.json +3460 -0
- package/src/Connector/__tests__/Data/WooCommerceGetSettingsGeneral/with-id-input.json +8 -0
- package/src/Connector/__tests__/Data/WooCommerceGetSettingsGeneral/with-id-mock.json +30 -0
- package/src/Connector/__tests__/Data/WooCommerceGetSettingsGeneral/with-id-output.json +31 -0
- package/src/Connector/__tests__/Data/WooCommerceGetShippingMethods/input.json +6 -0
- package/src/Connector/__tests__/Data/WooCommerceGetShippingMethods/mock.json +50 -0
- package/src/Connector/__tests__/Data/WooCommerceGetShippingMethods/mock1.json +187 -0
- package/src/Connector/__tests__/Data/WooCommerceGetShippingMethods/mock2.json +187 -0
- package/src/Connector/__tests__/Data/WooCommerceGetShippingMethods/output.json +373 -0
- package/src/Connector/__tests__/Data/WooCommerceUpdateOrder/input.json +9 -0
- package/src/Connector/__tests__/Data/WooCommerceUpdateOrder/mock.json +169 -0
- package/src/Connector/__tests__/Data/WooCommerceUpdateOrder/output.json +170 -0
- package/src/Connector/__tests__/Data/WooCommerceUpdateProduct/input.json +9 -0
- package/src/Connector/__tests__/Data/WooCommerceUpdateProduct/mock.json +125 -0
- package/src/Connector/__tests__/Data/WooCommerceUpdateProduct/output.json +126 -0
- package/src/Connector/__tests__/Data/WooCommerceUpdateProductQuantity/input.json +20 -0
- package/src/Connector/__tests__/Data/WooCommerceUpdateProductQuantity/mock.json +162 -0
- package/src/Connector/__tests__/Data/WooCommerceUpdateProductQuantity/output.json +6 -0
- package/src/Connector/__tests__/Data/WooCommerceUpdateProductVariant/input.json +10 -0
- package/src/Connector/__tests__/Data/WooCommerceUpdateProductVariant/mock.json +125 -0
- package/src/Connector/__tests__/Data/WooCommerceUpdateProductVariant/output.json +126 -0
- package/src/Connector/__tests__/WooCommerceAddNote.ts +18 -0
- package/src/Connector/__tests__/WooCommerceCreateProduct.ts +18 -0
- package/src/Connector/__tests__/WooCommerceCreateProductCategory.ts +18 -0
- package/src/Connector/__tests__/WooCommerceGetOrderNotes.ts +18 -0
- package/src/Connector/__tests__/WooCommerceGetOrderStatuses.ts +18 -0
- package/src/Connector/__tests__/WooCommerceGetPaymentGateways.ts +18 -0
- package/src/Connector/__tests__/WooCommerceGetProduct.ts +18 -0
- package/src/Connector/__tests__/WooCommerceGetProductVariant.ts +25 -0
- package/src/Connector/__tests__/WooCommerceGetProductsBySku.ts +18 -0
- package/src/Connector/__tests__/WooCommerceGetSettingsGeneral.ts +25 -0
- package/src/Connector/__tests__/WooCommerceGetShippingMethods.ts +18 -0
- package/src/Connector/__tests__/WooCommerceUpdateOrder.ts +18 -0
- package/src/Connector/__tests__/WooCommerceUpdateProduct.ts +18 -0
- package/src/Connector/__tests__/WooCommerceUpdateProductQuantity.ts +18 -0
- package/src/Connector/__tests__/WooCommerceUpdateProductVariant.ts +18 -0
- package/src/WooCommerceApplication.ts +93 -0
- package/test/dataProvider.ts +114 -0
- package/tsconfig.json +8 -0
- package/tsconfig.prod.json +13 -0
- package/tsconfig.prod.tsbuildinfo +1 -0
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import AConnector from '@orchesty/nodejs-sdk/dist/lib/Connector/AConnector';
|
|
2
|
+
import ProcessDto from '@orchesty/nodejs-sdk/dist/lib/Utils/ProcessDto';
|
|
3
|
+
export declare const NAME = "woo-commerce-get-payment-gateways";
|
|
4
|
+
export default class WooCommerceGetPaymentGateways extends AConnector {
|
|
5
|
+
getName(): string;
|
|
6
|
+
processAction(dto: ProcessDto): Promise<ProcessDto<IOutput>>;
|
|
7
|
+
}
|
|
8
|
+
export type IOutput = IPaymentMethod[];
|
|
9
|
+
export interface IPaymentMethod {
|
|
10
|
+
id: string;
|
|
11
|
+
title: string;
|
|
12
|
+
description: string;
|
|
13
|
+
order: number;
|
|
14
|
+
enabled: boolean;
|
|
15
|
+
method_title: string;
|
|
16
|
+
method_description: string;
|
|
17
|
+
method_supports: string[];
|
|
18
|
+
settings: {
|
|
19
|
+
title: {
|
|
20
|
+
id: string;
|
|
21
|
+
label: string;
|
|
22
|
+
description: string;
|
|
23
|
+
type: string;
|
|
24
|
+
value: string;
|
|
25
|
+
default: string;
|
|
26
|
+
tip: string;
|
|
27
|
+
placeholder: string;
|
|
28
|
+
};
|
|
29
|
+
instructions: {
|
|
30
|
+
id: string;
|
|
31
|
+
label: string;
|
|
32
|
+
description: string;
|
|
33
|
+
type: string;
|
|
34
|
+
value: string;
|
|
35
|
+
default: string;
|
|
36
|
+
tip: string;
|
|
37
|
+
placeholder: string;
|
|
38
|
+
};
|
|
39
|
+
};
|
|
40
|
+
_links: {
|
|
41
|
+
self: {
|
|
42
|
+
href: string;
|
|
43
|
+
}[];
|
|
44
|
+
collection: {
|
|
45
|
+
href: string;
|
|
46
|
+
}[];
|
|
47
|
+
};
|
|
48
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.NAME = void 0;
|
|
7
|
+
const AConnector_1 = __importDefault(require("@orchesty/nodejs-sdk/dist/lib/Connector/AConnector"));
|
|
8
|
+
const HttpMethods_1 = require("@orchesty/nodejs-sdk/dist/lib/Transport/HttpMethods");
|
|
9
|
+
exports.NAME = 'woo-commerce-get-payment-gateways';
|
|
10
|
+
class WooCommerceGetPaymentGateways extends AConnector_1.default {
|
|
11
|
+
getName() {
|
|
12
|
+
return exports.NAME;
|
|
13
|
+
}
|
|
14
|
+
async processAction(dto) {
|
|
15
|
+
const req = await this.getApplication().getRequestDto(dto, await this.getApplicationInstallFromProcess(dto, null), HttpMethods_1.HttpMethods.GET, 'wp-json/wc/v3/payment_gateways');
|
|
16
|
+
const resp = await this.getSender().send(req, [200]);
|
|
17
|
+
return dto.setNewJsonData(resp.getJsonBody());
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
exports.default = WooCommerceGetPaymentGateways;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import AConnector from '@orchesty/nodejs-sdk/dist/lib/Connector/AConnector';
|
|
2
|
+
import ProcessDto from '@orchesty/nodejs-sdk/dist/lib/Utils/ProcessDto';
|
|
3
|
+
import { IOutput } from '../Batch/WooCommerceGetProducts';
|
|
4
|
+
export declare const NAME = "woocommerce-get-product";
|
|
5
|
+
export default class WooCommerceGetProduct extends AConnector {
|
|
6
|
+
getName(): string;
|
|
7
|
+
processAction(dto: ProcessDto<IInput>): Promise<ProcessDto<IInput | IOutput>>;
|
|
8
|
+
}
|
|
9
|
+
export interface IInput {
|
|
10
|
+
id: number;
|
|
11
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.NAME = void 0;
|
|
7
|
+
const AConnector_1 = __importDefault(require("@orchesty/nodejs-sdk/dist/lib/Connector/AConnector"));
|
|
8
|
+
const HttpMethods_1 = require("@orchesty/nodejs-sdk/dist/lib/Transport/HttpMethods");
|
|
9
|
+
exports.NAME = 'woocommerce-get-product';
|
|
10
|
+
class WooCommerceGetProduct extends AConnector_1.default {
|
|
11
|
+
getName() {
|
|
12
|
+
return exports.NAME;
|
|
13
|
+
}
|
|
14
|
+
async processAction(dto) {
|
|
15
|
+
const { id } = dto.getJsonData();
|
|
16
|
+
const req = await this.getApplication().getRequestDto(dto, await this.getApplicationInstallFromProcess(dto), HttpMethods_1.HttpMethods.GET, `wp-json/wc/v3/products/${id}`);
|
|
17
|
+
const resp = await this.getSender().send(req, [200]);
|
|
18
|
+
return dto.setNewJsonData(resp.getJsonBody());
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
exports.default = WooCommerceGetProduct;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { IProduct } from '@orchesty/connector-authentica/src/Connector/AuthenticaPutProducts';
|
|
2
|
+
import AConnector from '@orchesty/nodejs-sdk/dist/lib/Connector/AConnector';
|
|
3
|
+
import ProcessDto from '@orchesty/nodejs-sdk/dist/lib/Utils/ProcessDto';
|
|
4
|
+
export declare const NAME: string;
|
|
5
|
+
export default class WooCommerceGetProductVariant extends AConnector {
|
|
6
|
+
getName(): string;
|
|
7
|
+
processAction(dto: ProcessDto<IInput[]>): Promise<ProcessDto<IOutput>>;
|
|
8
|
+
}
|
|
9
|
+
export interface IInput extends IProduct {
|
|
10
|
+
id?: number;
|
|
11
|
+
}
|
|
12
|
+
export type IOutput = IProduct[];
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.NAME = void 0;
|
|
7
|
+
const AConnector_1 = __importDefault(require("@orchesty/nodejs-sdk/dist/lib/Connector/AConnector"));
|
|
8
|
+
const HttpMethods_1 = require("@orchesty/nodejs-sdk/dist/lib/Transport/HttpMethods");
|
|
9
|
+
const ResultCode_1 = __importDefault(require("@orchesty/nodejs-sdk/dist/lib/Utils/ResultCode"));
|
|
10
|
+
const Validations_1 = require("@orchesty/nodejs-sdk/dist/lib/Utils/Validations");
|
|
11
|
+
const WooCommerceApplication_1 = require("../WooCommerceApplication");
|
|
12
|
+
exports.NAME = `${WooCommerceApplication_1.NAME.toLowerCase()}-get-products-variant`;
|
|
13
|
+
class WooCommerceGetProductVariant extends AConnector_1.default {
|
|
14
|
+
getName() {
|
|
15
|
+
return exports.NAME;
|
|
16
|
+
}
|
|
17
|
+
async processAction(dto) {
|
|
18
|
+
try {
|
|
19
|
+
const appInstall = await this.getApplicationInstallFromProcess(dto);
|
|
20
|
+
return dto.setNewJsonData(await Promise.all(dto.getJsonData().map(async (product) => {
|
|
21
|
+
(0, Validations_1.checkParams)(product, ['productId', 'id'], true);
|
|
22
|
+
const { productId, id } = product;
|
|
23
|
+
const req = await this.getApplication()
|
|
24
|
+
.getRequestDto(dto, appInstall, HttpMethods_1.HttpMethods.GET, `/wp-json/wc/v3/products/${productId}/variations/${id}`);
|
|
25
|
+
const resp = await this.getSender()
|
|
26
|
+
.send(req, [200]);
|
|
27
|
+
const newProduct = product;
|
|
28
|
+
newProduct.sku = resp.getJsonBody().sku;
|
|
29
|
+
delete newProduct.id;
|
|
30
|
+
if (!newProduct.sku) {
|
|
31
|
+
throw Error(`SKU in woocommerce is missing [ProductId=${productId}, Id=${id}]`);
|
|
32
|
+
}
|
|
33
|
+
return newProduct;
|
|
34
|
+
})));
|
|
35
|
+
}
|
|
36
|
+
catch (e) {
|
|
37
|
+
if (e instanceof Error) {
|
|
38
|
+
dto.setStopProcess(ResultCode_1.default.STOP_AND_FAILED, e.message);
|
|
39
|
+
return dto;
|
|
40
|
+
}
|
|
41
|
+
dto.setStopProcess(ResultCode_1.default.STOP_AND_FAILED, `Unknown error in ${exports.NAME}`);
|
|
42
|
+
return dto;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
exports.default = WooCommerceGetProductVariant;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import AConnector from '@orchesty/nodejs-sdk/dist/lib/Connector/AConnector';
|
|
2
|
+
import ProcessDto from '@orchesty/nodejs-sdk/dist/lib/Utils/ProcessDto';
|
|
3
|
+
import { IOutput } from '../Batch/WooCommerceGetProducts';
|
|
4
|
+
export declare const NAME = "woocommerce-get-products-by-sku";
|
|
5
|
+
export default class WooCommerceGetProductsBySku extends AConnector {
|
|
6
|
+
getName(): string;
|
|
7
|
+
processAction(dto: ProcessDto<IInput>): Promise<ProcessDto<IInput | IOutput>>;
|
|
8
|
+
protected setNewJsonData(dto: ProcessDto, resp: IOutput): ProcessDto<IOutput>;
|
|
9
|
+
}
|
|
10
|
+
export interface IInput {
|
|
11
|
+
sku: string;
|
|
12
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.NAME = void 0;
|
|
7
|
+
const AConnector_1 = __importDefault(require("@orchesty/nodejs-sdk/dist/lib/Connector/AConnector"));
|
|
8
|
+
const HttpMethods_1 = require("@orchesty/nodejs-sdk/dist/lib/Transport/HttpMethods");
|
|
9
|
+
const ResultCode_1 = __importDefault(require("@orchesty/nodejs-sdk/dist/lib/Utils/ResultCode"));
|
|
10
|
+
exports.NAME = 'woocommerce-get-products-by-sku';
|
|
11
|
+
class WooCommerceGetProductsBySku extends AConnector_1.default {
|
|
12
|
+
getName() {
|
|
13
|
+
return exports.NAME;
|
|
14
|
+
}
|
|
15
|
+
async processAction(dto) {
|
|
16
|
+
const { sku } = dto.getJsonData();
|
|
17
|
+
const req = await this.getApplication().getRequestDto(dto, await this.getApplicationInstallFromProcess(dto), HttpMethods_1.HttpMethods.GET, `wp-json/wc/v3/products?sku=${sku}`);
|
|
18
|
+
const resp = await this.getSender().send(req, [200]);
|
|
19
|
+
const responseData = resp.getJsonBody();
|
|
20
|
+
if (!responseData.length) {
|
|
21
|
+
dto.setStopProcess(ResultCode_1.default.STOP_AND_FAILED, `Product not found [sku=${sku}]`);
|
|
22
|
+
return dto;
|
|
23
|
+
}
|
|
24
|
+
if (responseData.length > 1) {
|
|
25
|
+
dto.setStopProcess(ResultCode_1.default.STOP_AND_FAILED, `More than one product found [sku=${sku}]`);
|
|
26
|
+
return dto;
|
|
27
|
+
}
|
|
28
|
+
return this.setNewJsonData(dto, responseData[0]);
|
|
29
|
+
}
|
|
30
|
+
setNewJsonData(dto, resp) {
|
|
31
|
+
return dto.setNewJsonData(resp);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
exports.default = WooCommerceGetProductsBySku;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import AConnector from '@orchesty/nodejs-sdk/dist/lib/Connector/AConnector';
|
|
2
|
+
import ProcessDto from '@orchesty/nodejs-sdk/dist/lib/Utils/ProcessDto';
|
|
3
|
+
export declare const NAME = "woo-commerce-get-settings-general";
|
|
4
|
+
export default class WooCommerceGetSettingsGeneral extends AConnector {
|
|
5
|
+
getName(): string;
|
|
6
|
+
processAction(dto: ProcessDto<IInput>): Promise<ProcessDto<IOutput | ISetting>>;
|
|
7
|
+
}
|
|
8
|
+
export interface IInput {
|
|
9
|
+
id?: string;
|
|
10
|
+
}
|
|
11
|
+
export type IOutput = ISetting[];
|
|
12
|
+
export interface ISetting {
|
|
13
|
+
id: string;
|
|
14
|
+
label: string;
|
|
15
|
+
description: string;
|
|
16
|
+
type: string;
|
|
17
|
+
default: string;
|
|
18
|
+
tip: string;
|
|
19
|
+
value: string;
|
|
20
|
+
_links: {
|
|
21
|
+
self: {
|
|
22
|
+
href: string;
|
|
23
|
+
}[];
|
|
24
|
+
collection: {
|
|
25
|
+
href: string;
|
|
26
|
+
}[];
|
|
27
|
+
};
|
|
28
|
+
options?: Record<string, string>;
|
|
29
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.NAME = void 0;
|
|
7
|
+
const AConnector_1 = __importDefault(require("@orchesty/nodejs-sdk/dist/lib/Connector/AConnector"));
|
|
8
|
+
const HttpMethods_1 = require("@orchesty/nodejs-sdk/dist/lib/Transport/HttpMethods");
|
|
9
|
+
exports.NAME = 'woo-commerce-get-settings-general';
|
|
10
|
+
class WooCommerceGetSettingsGeneral extends AConnector_1.default {
|
|
11
|
+
getName() {
|
|
12
|
+
return exports.NAME;
|
|
13
|
+
}
|
|
14
|
+
async processAction(dto) {
|
|
15
|
+
const { id } = dto.getJsonData();
|
|
16
|
+
const req = await this.getApplication().getRequestDto(dto, await this.getApplicationInstallFromProcess(dto, null), HttpMethods_1.HttpMethods.GET, `wp-json/wc/v3/settings/general/${id ?? ''}`);
|
|
17
|
+
const resp = await this.getSender().send(req, [200]);
|
|
18
|
+
return dto.setNewJsonData(resp.getJsonBody());
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
exports.default = WooCommerceGetSettingsGeneral;
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import AConnector from '@orchesty/nodejs-sdk/dist/lib/Connector/AConnector';
|
|
2
|
+
import ProcessDto from '@orchesty/nodejs-sdk/dist/lib/Utils/ProcessDto';
|
|
3
|
+
export declare const NAME: string;
|
|
4
|
+
export default class WooCommerceGetShippingMethods extends AConnector {
|
|
5
|
+
getName(): string;
|
|
6
|
+
processAction(dto: ProcessDto): Promise<ProcessDto<IShippingMethod[]>>;
|
|
7
|
+
}
|
|
8
|
+
export interface IShippingZone {
|
|
9
|
+
id: number;
|
|
10
|
+
name: string;
|
|
11
|
+
order: number;
|
|
12
|
+
_links: {
|
|
13
|
+
self: {
|
|
14
|
+
href: string;
|
|
15
|
+
}[];
|
|
16
|
+
collection: {
|
|
17
|
+
href: string;
|
|
18
|
+
}[];
|
|
19
|
+
describedby: {
|
|
20
|
+
href: string;
|
|
21
|
+
}[];
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
export interface IShippingMethod {
|
|
25
|
+
instance_id: number;
|
|
26
|
+
title: string;
|
|
27
|
+
order: number;
|
|
28
|
+
enabled: boolean;
|
|
29
|
+
method_id: string;
|
|
30
|
+
method_title: string;
|
|
31
|
+
method_description: string;
|
|
32
|
+
settings: {
|
|
33
|
+
title: {
|
|
34
|
+
id: string;
|
|
35
|
+
label: string;
|
|
36
|
+
description: string;
|
|
37
|
+
type: string;
|
|
38
|
+
value: string;
|
|
39
|
+
default: string;
|
|
40
|
+
tip: string;
|
|
41
|
+
placeholder: string;
|
|
42
|
+
};
|
|
43
|
+
requires: {
|
|
44
|
+
id: string;
|
|
45
|
+
label: string;
|
|
46
|
+
description: string;
|
|
47
|
+
type: string;
|
|
48
|
+
value: string;
|
|
49
|
+
default: string;
|
|
50
|
+
tip: string;
|
|
51
|
+
placeholder: string;
|
|
52
|
+
options: {
|
|
53
|
+
coupon: string;
|
|
54
|
+
min_amount: string;
|
|
55
|
+
either: string;
|
|
56
|
+
both: string;
|
|
57
|
+
};
|
|
58
|
+
};
|
|
59
|
+
min_amount: {
|
|
60
|
+
id: string;
|
|
61
|
+
label: string;
|
|
62
|
+
description: string;
|
|
63
|
+
type: string;
|
|
64
|
+
value: string;
|
|
65
|
+
default: string;
|
|
66
|
+
tip: string;
|
|
67
|
+
placeholder: string;
|
|
68
|
+
};
|
|
69
|
+
};
|
|
70
|
+
_links: {
|
|
71
|
+
self: {
|
|
72
|
+
href: string;
|
|
73
|
+
}[];
|
|
74
|
+
collection: {
|
|
75
|
+
href: string;
|
|
76
|
+
}[];
|
|
77
|
+
describes: {
|
|
78
|
+
href: string;
|
|
79
|
+
}[];
|
|
80
|
+
};
|
|
81
|
+
shipping_zone_title?: string;
|
|
82
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.NAME = void 0;
|
|
7
|
+
const AConnector_1 = __importDefault(require("@orchesty/nodejs-sdk/dist/lib/Connector/AConnector"));
|
|
8
|
+
const HttpMethods_1 = require("@orchesty/nodejs-sdk/dist/lib/Transport/HttpMethods");
|
|
9
|
+
const WooCommerceApplication_1 = require("../WooCommerceApplication");
|
|
10
|
+
exports.NAME = `${WooCommerceApplication_1.NAME.toLowerCase()}-get-shipping-methods`;
|
|
11
|
+
class WooCommerceGetShippingMethods extends AConnector_1.default {
|
|
12
|
+
getName() {
|
|
13
|
+
return exports.NAME;
|
|
14
|
+
}
|
|
15
|
+
async processAction(dto) {
|
|
16
|
+
const app = this.getApplication();
|
|
17
|
+
const appInstall = await this.getApplicationInstallFromProcess(dto, null);
|
|
18
|
+
const requestDto = app.getRequestDto(dto, appInstall, HttpMethods_1.HttpMethods.GET, 'wp-json/wc/v3/shipping/zones?per_page=10000');
|
|
19
|
+
const res = await this.getSender().send(requestDto, [200, 404]);
|
|
20
|
+
const shippingMethods = [];
|
|
21
|
+
const shippingZones = res.getJsonBody();
|
|
22
|
+
const result = shippingZones.map(async (shippingZone) => {
|
|
23
|
+
const innerRequestDto = app.getRequestDto(dto, appInstall, HttpMethods_1.HttpMethods.GET, `wp-json/wc/v3/shipping/zones/${shippingZone.id}/methods?per_page=10000`);
|
|
24
|
+
const innerRes = await this.getSender().send(innerRequestDto, [200, 404]);
|
|
25
|
+
shippingMethods.push(...innerRes.getJsonBody()
|
|
26
|
+
.filter((shippingMethod) => shippingMethod.enabled)
|
|
27
|
+
.map((shippingMethod) => {
|
|
28
|
+
shippingMethod.shipping_zone_title = shippingZone.name;
|
|
29
|
+
return shippingMethod;
|
|
30
|
+
}));
|
|
31
|
+
});
|
|
32
|
+
await Promise.all(result);
|
|
33
|
+
return dto.setNewJsonData(shippingMethods);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
exports.default = WooCommerceGetShippingMethods;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import AConnector from '@orchesty/nodejs-sdk/dist/lib/Connector/AConnector';
|
|
2
|
+
import ProcessDto from '@orchesty/nodejs-sdk/dist/lib/Utils/ProcessDto';
|
|
3
|
+
export default class WooCommerceRegisterWebhook extends AConnector {
|
|
4
|
+
getName(): string;
|
|
5
|
+
processAction(dto: ProcessDto): Promise<ProcessDto>;
|
|
6
|
+
private getRandomToken;
|
|
7
|
+
}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const ApplicationInstall_1 = require("@orchesty/nodejs-sdk/dist/lib/Application/Database/ApplicationInstall");
|
|
7
|
+
const Webhook_1 = __importDefault(require("@orchesty/nodejs-sdk/dist/lib/Application/Database/Webhook"));
|
|
8
|
+
const AConnector_1 = __importDefault(require("@orchesty/nodejs-sdk/dist/lib/Connector/AConnector"));
|
|
9
|
+
const TopologyRunner_1 = __importDefault(require("@orchesty/nodejs-sdk/dist/lib/Topology/TopologyRunner"));
|
|
10
|
+
const HttpMethods_1 = require("@orchesty/nodejs-sdk/dist/lib/Transport/HttpMethods");
|
|
11
|
+
const ResultCode_1 = __importDefault(require("@orchesty/nodejs-sdk/dist/lib/Utils/ResultCode"));
|
|
12
|
+
const crypto_1 = __importDefault(require("crypto"));
|
|
13
|
+
const WOOCOMMERCE_REGISTER_WEBHOOK_ENDPOINT = 'wp-json/wc/v3/webhooks/batch';
|
|
14
|
+
class WooCommerceRegisterWebhook extends AConnector_1.default {
|
|
15
|
+
getName() {
|
|
16
|
+
return 'woocommerce-register-webhook';
|
|
17
|
+
}
|
|
18
|
+
async processAction(dto) {
|
|
19
|
+
const app = this.getApplication();
|
|
20
|
+
const whData = app.getWebhookSubscriptions().map((sub) => ({
|
|
21
|
+
topic: sub.getName(),
|
|
22
|
+
token: this.getRandomToken(),
|
|
23
|
+
node: sub.getNode(),
|
|
24
|
+
topology: sub.getTopology(),
|
|
25
|
+
}));
|
|
26
|
+
const body = app.getWebhookSubscriptions().map((sub, index) => ({
|
|
27
|
+
name: sub.getName(),
|
|
28
|
+
topic: whData[index].topic,
|
|
29
|
+
delivery_url: TopologyRunner_1.default.getWebhookUrl(whData[index].topology, whData[index].node, whData[index].token),
|
|
30
|
+
}));
|
|
31
|
+
const appInstall = await this.getApplicationInstallFromProcess(dto);
|
|
32
|
+
const requestDto = app.getRequestDto(dto, appInstall, HttpMethods_1.HttpMethods.POST, WOOCOMMERCE_REGISTER_WEBHOOK_ENDPOINT, JSON.stringify({ create: body }));
|
|
33
|
+
const repo = this.getDbClient().getRepository(Webhook_1.default);
|
|
34
|
+
let res;
|
|
35
|
+
try {
|
|
36
|
+
res = await this.getSender().send(requestDto, [200]);
|
|
37
|
+
const respBody = res.getJsonBody();
|
|
38
|
+
await Promise.all(respBody.create.map(async (webhook) => {
|
|
39
|
+
const located = whData.find((value) => value.topic === webhook.topic);
|
|
40
|
+
if (located) {
|
|
41
|
+
const wb = new Webhook_1.default()
|
|
42
|
+
.setWebhookId(webhook.id.toString())
|
|
43
|
+
.setUser(appInstall.getUser())
|
|
44
|
+
.setNode(located.node)
|
|
45
|
+
.setToken(located.token)
|
|
46
|
+
.setApplication(app.getName())
|
|
47
|
+
.setTopology(located.topology)
|
|
48
|
+
.setName(webhook.topic);
|
|
49
|
+
return repo.insert(wb);
|
|
50
|
+
}
|
|
51
|
+
return undefined;
|
|
52
|
+
}));
|
|
53
|
+
}
|
|
54
|
+
catch (e) {
|
|
55
|
+
appInstall.setEnabled(false);
|
|
56
|
+
await this.getDbClient().getRepository(ApplicationInstall_1.ApplicationInstall).update(appInstall);
|
|
57
|
+
dto.setStopProcess(ResultCode_1.default.STOP_AND_FAILED, res?.getBody() ?? 'Webhook could not be registered!');
|
|
58
|
+
}
|
|
59
|
+
return dto;
|
|
60
|
+
}
|
|
61
|
+
getRandomToken() {
|
|
62
|
+
return crypto_1.default.randomBytes(64).toString('hex');
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
exports.default = WooCommerceRegisterWebhook;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import AConnector from '@orchesty/nodejs-sdk/dist/lib/Connector/AConnector';
|
|
2
|
+
import ProcessDto from '@orchesty/nodejs-sdk/dist/lib/Utils/ProcessDto';
|
|
3
|
+
export default class WooCommerceUnsubscribeWebhooks extends AConnector {
|
|
4
|
+
getName(): string;
|
|
5
|
+
processAction(dto: ProcessDto): Promise<ProcessDto>;
|
|
6
|
+
}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const Webhook_1 = __importDefault(require("@orchesty/nodejs-sdk/dist/lib/Application/Database/Webhook"));
|
|
7
|
+
const AConnector_1 = __importDefault(require("@orchesty/nodejs-sdk/dist/lib/Connector/AConnector"));
|
|
8
|
+
const OnRepeatException_1 = __importDefault(require("@orchesty/nodejs-sdk/dist/lib/Exception/OnRepeatException"));
|
|
9
|
+
const HttpMethods_1 = require("@orchesty/nodejs-sdk/dist/lib/Transport/HttpMethods");
|
|
10
|
+
const http_status_codes_1 = require("http-status-codes");
|
|
11
|
+
const BATCH_UPDATE_WEBHOOKS = 'wp-json/wc/v3/webhooks/batch';
|
|
12
|
+
class WooCommerceUnsubscribeWebhooks extends AConnector_1.default {
|
|
13
|
+
getName() {
|
|
14
|
+
return 'woocommerce-unsubscribe-webhooks';
|
|
15
|
+
}
|
|
16
|
+
async processAction(dto) {
|
|
17
|
+
const app = this.getApplication();
|
|
18
|
+
let appInstall;
|
|
19
|
+
try {
|
|
20
|
+
appInstall = await this.getApplicationInstallFromProcess(dto, null, true);
|
|
21
|
+
}
|
|
22
|
+
catch (e) {
|
|
23
|
+
appInstall = await this.getApplicationInstallFromProcess(dto, null, false);
|
|
24
|
+
}
|
|
25
|
+
const repo = this.getDbClient().getRepository(Webhook_1.default);
|
|
26
|
+
const webhooks = await repo.findMany({ users: [appInstall.getUser()], apps: [app.getName()] });
|
|
27
|
+
const webhooksIds = [];
|
|
28
|
+
webhooks.forEach((webhook) => {
|
|
29
|
+
webhooksIds.push(Number(webhook.getWebhookId()));
|
|
30
|
+
});
|
|
31
|
+
if (webhooks && webhooks.length > 0) {
|
|
32
|
+
const requestDto = app.getRequestDto(dto, appInstall, HttpMethods_1.HttpMethods.POST, BATCH_UPDATE_WEBHOOKS, JSON.stringify({ delete: webhooksIds }));
|
|
33
|
+
const res = await this.getSender().send(requestDto);
|
|
34
|
+
if (res.getResponseCode() !== http_status_codes_1.StatusCodes.OK && res.getResponseCode() !== http_status_codes_1.StatusCodes.NOT_FOUND) {
|
|
35
|
+
await Promise.all(webhooks.map(async (wantedDelete) => {
|
|
36
|
+
wantedDelete.setUnsubscribeFailed(true);
|
|
37
|
+
return repo.update(wantedDelete);
|
|
38
|
+
}));
|
|
39
|
+
throw new OnRepeatException_1.default(60, 10, res.getBody());
|
|
40
|
+
}
|
|
41
|
+
let repeat = false;
|
|
42
|
+
const resData = res.getJsonBody().delete;
|
|
43
|
+
await Promise.all(webhooks.map(async (wantedDelete) => {
|
|
44
|
+
const foundWebhook = resData?.find((item) => item.id.toString() === wantedDelete.getWebhookId());
|
|
45
|
+
if (foundWebhook) {
|
|
46
|
+
return repo.remove(wantedDelete);
|
|
47
|
+
}
|
|
48
|
+
repeat = true;
|
|
49
|
+
wantedDelete.setUnsubscribeFailed(true);
|
|
50
|
+
return repo.update(wantedDelete);
|
|
51
|
+
}));
|
|
52
|
+
if (repeat) {
|
|
53
|
+
throw new OnRepeatException_1.default(60, 10, res.getBody());
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
return dto;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
exports.default = WooCommerceUnsubscribeWebhooks;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import AConnector from '@orchesty/nodejs-sdk/dist/lib/Connector/AConnector';
|
|
2
|
+
import ProcessDto from '@orchesty/nodejs-sdk/dist/lib/Utils/ProcessDto';
|
|
3
|
+
import { IResponseJson as IOutput } from '../Batch/WooCommerceGetOrders';
|
|
4
|
+
export declare const NAME = "woocommerce-update-order";
|
|
5
|
+
export default class WooCommerceUpdateOrder extends AConnector {
|
|
6
|
+
getName(): string;
|
|
7
|
+
processAction(dto: ProcessDto<IInput>): Promise<ProcessDto<IOutput>>;
|
|
8
|
+
protected getJsonData(dto: ProcessDto<IInput>): IInput;
|
|
9
|
+
}
|
|
10
|
+
export interface IInput {
|
|
11
|
+
id: number;
|
|
12
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.NAME = void 0;
|
|
7
|
+
const AConnector_1 = __importDefault(require("@orchesty/nodejs-sdk/dist/lib/Connector/AConnector"));
|
|
8
|
+
const HttpMethods_1 = require("@orchesty/nodejs-sdk/dist/lib/Transport/HttpMethods");
|
|
9
|
+
exports.NAME = 'woocommerce-update-order';
|
|
10
|
+
class WooCommerceUpdateOrder extends AConnector_1.default {
|
|
11
|
+
getName() {
|
|
12
|
+
return exports.NAME;
|
|
13
|
+
}
|
|
14
|
+
async processAction(dto) {
|
|
15
|
+
const { id, ...data } = this.getJsonData(dto);
|
|
16
|
+
const requestDto = await this.getApplication().getRequestDto(dto, await this.getApplicationInstallFromProcess(dto), HttpMethods_1.HttpMethods.PUT, `wp-json/wc/v3/orders/${id}`, JSON.stringify(data));
|
|
17
|
+
return dto.setNewJsonData((await this.getSender().send(requestDto, [200])).getJsonBody());
|
|
18
|
+
}
|
|
19
|
+
getJsonData(dto) {
|
|
20
|
+
return dto.getJsonData();
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
exports.default = WooCommerceUpdateOrder;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import AConnector from '@orchesty/nodejs-sdk/dist/lib/Connector/AConnector';
|
|
2
|
+
import { IResultRanges } from '@orchesty/nodejs-sdk/dist/lib/Transport/Curl/ResultCodeRange';
|
|
3
|
+
import ProcessDto from '@orchesty/nodejs-sdk/dist/lib/Utils/ProcessDto';
|
|
4
|
+
import { IOutput as IInput } from '../Batch/WooCommerceGetProducts';
|
|
5
|
+
export declare const NAME = "woo-commerce-update-product";
|
|
6
|
+
export default class WooCommerceUpdateProduct extends AConnector {
|
|
7
|
+
getName(): string;
|
|
8
|
+
processAction(dto: ProcessDto<IInput>): Promise<ProcessDto<IOutput>>;
|
|
9
|
+
protected getCodeRanges(): IResultRanges;
|
|
10
|
+
}
|
|
11
|
+
type IOutput = IInput;
|
|
12
|
+
export {};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.NAME = void 0;
|
|
7
|
+
const AConnector_1 = __importDefault(require("@orchesty/nodejs-sdk/dist/lib/Connector/AConnector"));
|
|
8
|
+
const ResultCodeRange_1 = require("@orchesty/nodejs-sdk/dist/lib/Transport/Curl/ResultCodeRange");
|
|
9
|
+
const HttpMethods_1 = require("@orchesty/nodejs-sdk/dist/lib/Transport/HttpMethods");
|
|
10
|
+
exports.NAME = 'woo-commerce-update-product';
|
|
11
|
+
class WooCommerceUpdateProduct extends AConnector_1.default {
|
|
12
|
+
getName() {
|
|
13
|
+
return exports.NAME;
|
|
14
|
+
}
|
|
15
|
+
async processAction(dto) {
|
|
16
|
+
const { id, ...rest } = dto.getJsonData();
|
|
17
|
+
const req = await this.getApplication().getRequestDto(dto, await this.getApplicationInstallFromProcess(dto), HttpMethods_1.HttpMethods.PUT, `wp-json/wc/v3/products/${id}`, JSON.stringify(rest));
|
|
18
|
+
const resp = await this.getSender().send(req, this.getCodeRanges());
|
|
19
|
+
return dto.setNewJsonData(resp.getJsonBody());
|
|
20
|
+
}
|
|
21
|
+
getCodeRanges() {
|
|
22
|
+
return ResultCodeRange_1.defaultRanges;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
exports.default = WooCommerceUpdateProduct;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import AConnector from '@orchesty/nodejs-sdk/dist/lib/Connector/AConnector';
|
|
2
|
+
import ProcessDto from '@orchesty/nodejs-sdk/dist/lib/Utils/ProcessDto';
|
|
3
|
+
export declare const NAME = "woocommerce-update-product-quantity";
|
|
4
|
+
export default class WooCommerceUpdateProductQuantity extends AConnector {
|
|
5
|
+
getName(): string;
|
|
6
|
+
processAction(dto: ProcessDto<IInput>): Promise<ProcessDto>;
|
|
7
|
+
}
|
|
8
|
+
export interface IInput {
|
|
9
|
+
productId: string;
|
|
10
|
+
update: IWooCommerceStock[];
|
|
11
|
+
}
|
|
12
|
+
export interface IWooCommerceStock {
|
|
13
|
+
id: number;
|
|
14
|
+
stock_quantity: number;
|
|
15
|
+
stock_status: string;
|
|
16
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.NAME = void 0;
|
|
7
|
+
const AConnector_1 = __importDefault(require("@orchesty/nodejs-sdk/dist/lib/Connector/AConnector"));
|
|
8
|
+
const HttpMethods_1 = require("@orchesty/nodejs-sdk/dist/lib/Transport/HttpMethods");
|
|
9
|
+
exports.NAME = 'woocommerce-update-product-quantity';
|
|
10
|
+
class WooCommerceUpdateProductQuantity extends AConnector_1.default {
|
|
11
|
+
getName() {
|
|
12
|
+
return exports.NAME;
|
|
13
|
+
}
|
|
14
|
+
async processAction(dto) {
|
|
15
|
+
const { productId, update } = dto.getJsonData();
|
|
16
|
+
const requestDto = this.getApplication().getRequestDto(dto, await this.getApplicationInstallFromProcess(dto), HttpMethods_1.HttpMethods.POST, `wp-json/wc/v3/products/${productId}/variations/batch`, JSON.stringify(update));
|
|
17
|
+
await this.getSender().send(requestDto, [200]);
|
|
18
|
+
dto.setJsonData({});
|
|
19
|
+
return dto;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
exports.default = WooCommerceUpdateProductQuantity;
|