@orchesty/connector-wflow 1.0.4 → 2.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/README.md +102 -0
- package/coverage/clover.xml +293 -176
- package/coverage/coverage-final.json +17 -10
- package/coverage/lcov-report/index.html +27 -27
- package/coverage/lcov-report/src/Batch/WflowSubscribeWebhookBatch.ts.html +28 -16
- package/coverage/lcov-report/src/Batch/WflowUnsubscribeWebhookBatch.ts.html +32 -20
- package/coverage/lcov-report/src/Batch/index.html +17 -17
- package/coverage/lcov-report/src/Connector/WflowGetDocumentConnector.ts.html +13 -16
- package/coverage/lcov-report/src/Connector/WflowGetDocumentMainFileConnector.ts.html +13 -13
- package/coverage/lcov-report/src/Connector/WflowGetDocumentTypesConnector.ts.html +9 -9
- package/coverage/lcov-report/src/Connector/WflowGetOrganizationsConnector.ts.html +9 -9
- package/coverage/lcov-report/src/Connector/WflowPatchAccountingRulesConnector.ts.html +244 -0
- package/coverage/lcov-report/src/Connector/WflowPatchChartOfAccountsConnector.ts.html +211 -0
- package/coverage/lcov-report/src/Connector/WflowPatchContractsConnector.ts.html +211 -0
- package/coverage/lcov-report/src/Connector/WflowPatchCostCentersConnector.ts.html +211 -0
- package/coverage/lcov-report/src/Connector/WflowPatchSeriesConnector.ts.html +268 -0
- package/coverage/lcov-report/src/Connector/WflowPatchVatControlStatementLinesConnector.ts.html +211 -0
- package/coverage/lcov-report/src/Connector/WflowPatchVatReturnLinesConnector.ts.html +214 -0
- package/coverage/lcov-report/src/Connector/WflowPutDocumentConnector.ts.html +14 -23
- package/coverage/lcov-report/src/Connector/WflowUpdateDocumentStateConnector.ts.html +14 -23
- package/coverage/lcov-report/src/Connector/index.html +121 -16
- package/coverage/lcov-report/src/WflowApplication.ts.html +39 -36
- package/coverage/lcov-report/src/index.html +1 -1
- package/coverage/lcov-report/test/dataProvider.ts.html +80 -35
- package/coverage/lcov-report/test/index.html +5 -5
- package/coverage/lcov.info +415 -218
- package/dist/Batch/WflowSubscribeWebhookBatch.js +7 -2
- package/dist/Batch/WflowUnsubscribeWebhookBatch.js +8 -3
- package/dist/Connector/WflowGetDocumentConnector.js +1 -2
- package/dist/Connector/WflowGetDocumentMainFileConnector.js +2 -2
- package/dist/Connector/WflowPatchAccountingRulesConnector.d.ts +17 -0
- package/dist/Connector/WflowPatchAccountingRulesConnector.js +24 -0
- package/dist/Connector/WflowPatchChartOfAccountsConnector.d.ts +15 -0
- package/dist/Connector/WflowPatchChartOfAccountsConnector.js +24 -0
- package/dist/Connector/WflowPatchContractsConnector.d.ts +15 -0
- package/dist/Connector/WflowPatchContractsConnector.js +24 -0
- package/dist/Connector/WflowPatchCostCentersConnector.d.ts +15 -0
- package/dist/Connector/WflowPatchCostCentersConnector.js +24 -0
- package/dist/Connector/WflowPatchSeriesConnector.d.ts +19 -0
- package/dist/Connector/WflowPatchSeriesConnector.js +24 -0
- package/dist/Connector/WflowPatchVatControlStatementLinesConnector.d.ts +15 -0
- package/dist/Connector/WflowPatchVatControlStatementLinesConnector.js +24 -0
- package/dist/Connector/WflowPatchVatReturnLinesConnector.d.ts +16 -0
- package/dist/Connector/WflowPatchVatReturnLinesConnector.js +24 -0
- package/dist/Connector/WflowPutDocumentConnector.js +1 -2
- package/dist/Connector/WflowUpdateDocumentStateConnector.js +2 -3
- package/dist/WflowApplication.js +1 -1
- package/dist/package.json +3 -2
- package/package.json +3 -2
- package/src/Batch/WflowSubscribeWebhookBatch.ts +8 -4
- package/src/Batch/WflowUnsubscribeWebhookBatch.ts +9 -5
- package/src/Batch/__tests__/Data/WflowSubscribeWebhookBatch/input.json +2 -1
- package/src/Batch/__tests__/Data/WflowSubscribeWebhookBatch/output.json +3 -2
- package/src/Batch/__tests__/Data/WflowUnsubscribeWebhookBatch/input.json +3 -2
- package/src/Batch/__tests__/Data/WflowUnsubscribeWebhookBatch/output.json +3 -2
- package/src/Connector/WflowGetDocumentConnector.ts +4 -5
- package/src/Connector/WflowGetDocumentMainFileConnector.ts +5 -5
- package/src/Connector/WflowPatchAccountingRulesConnector.ts +53 -0
- package/src/Connector/WflowPatchChartOfAccountsConnector.ts +42 -0
- package/src/Connector/WflowPatchContractsConnector.ts +42 -0
- package/src/Connector/WflowPatchCostCentersConnector.ts +42 -0
- package/src/Connector/WflowPatchSeriesConnector.ts +61 -0
- package/src/Connector/WflowPatchVatControlStatementLinesConnector.ts +42 -0
- package/src/Connector/WflowPatchVatReturnLinesConnector.ts +43 -0
- package/src/Connector/WflowPutDocumentConnector.ts +4 -7
- package/src/Connector/WflowUpdateDocumentStateConnector.ts +5 -8
- package/src/Connector/__tests__/Data/WflowGetDocumentConnector/input.json +8 -7
- package/src/Connector/__tests__/Data/WflowGetDocumentConnector/output.json +431 -430
- package/src/Connector/__tests__/Data/WflowGetDocumentMainFileConnector/input.json +2 -1
- package/src/Connector/__tests__/Data/WflowGetDocumentMainFileConnector/output.json +2 -1
- package/src/Connector/__tests__/Data/WflowGetDocumentTypesConnector/input.json +3 -3
- package/src/Connector/__tests__/Data/WflowGetDocumentTypesConnector/output.json +2 -1
- package/src/Connector/__tests__/Data/WflowGetOrganizationsConnector/input.json +5 -4
- package/src/Connector/__tests__/Data/WflowGetOrganizationsConnector/output.json +2 -1
- package/src/Connector/__tests__/Data/WflowPatchAccountingRulesConnector/batch-input.json +20 -0
- package/src/Connector/__tests__/Data/WflowPatchAccountingRulesConnector/batch-mock.json +5 -0
- package/src/Connector/__tests__/Data/WflowPatchAccountingRulesConnector/batch-output.json +20 -0
- package/src/Connector/__tests__/Data/WflowPatchAccountingRulesConnector/input.json +12 -0
- package/src/Connector/__tests__/Data/WflowPatchAccountingRulesConnector/mock.json +5 -0
- package/src/Connector/__tests__/Data/WflowPatchAccountingRulesConnector/output.json +12 -0
- package/src/Connector/__tests__/Data/WflowPatchChartOfAccountsConnector/batch-input.json +18 -0
- package/src/Connector/__tests__/Data/WflowPatchChartOfAccountsConnector/batch-mock.json +5 -0
- package/src/Connector/__tests__/Data/WflowPatchChartOfAccountsConnector/batch-output.json +18 -0
- package/src/Connector/__tests__/Data/WflowPatchChartOfAccountsConnector/input.json +11 -0
- package/src/Connector/__tests__/Data/WflowPatchChartOfAccountsConnector/mock.json +5 -0
- package/src/Connector/__tests__/Data/WflowPatchChartOfAccountsConnector/output.json +11 -0
- package/src/Connector/__tests__/Data/WflowPatchContractsConnector/batch-input.json +18 -0
- package/src/Connector/__tests__/Data/WflowPatchContractsConnector/batch-mock.json +5 -0
- package/src/Connector/__tests__/Data/WflowPatchContractsConnector/batch-output.json +18 -0
- package/src/Connector/__tests__/Data/WflowPatchContractsConnector/input.json +11 -0
- package/src/Connector/__tests__/Data/WflowPatchContractsConnector/mock.json +5 -0
- package/src/Connector/__tests__/Data/WflowPatchContractsConnector/output.json +11 -0
- package/src/Connector/__tests__/Data/WflowPatchCostCentersConnector/batch-input.json +18 -0
- package/src/Connector/__tests__/Data/WflowPatchCostCentersConnector/batch-mock.json +5 -0
- package/src/Connector/__tests__/Data/WflowPatchCostCentersConnector/batch-output.json +18 -0
- package/src/Connector/__tests__/Data/WflowPatchCostCentersConnector/input.json +11 -0
- package/src/Connector/__tests__/Data/WflowPatchCostCentersConnector/mock.json +5 -0
- package/src/Connector/__tests__/Data/WflowPatchCostCentersConnector/output.json +11 -0
- package/src/Connector/__tests__/Data/WflowPatchSeriesConnector/batch-input.json +20 -0
- package/src/Connector/__tests__/Data/WflowPatchSeriesConnector/batch-mock.json +5 -0
- package/src/Connector/__tests__/Data/WflowPatchSeriesConnector/batch-output.json +20 -0
- package/src/Connector/__tests__/Data/WflowPatchSeriesConnector/input.json +12 -0
- package/src/Connector/__tests__/Data/WflowPatchSeriesConnector/mock.json +5 -0
- package/src/Connector/__tests__/Data/WflowPatchSeriesConnector/output.json +12 -0
- package/src/Connector/__tests__/Data/WflowPatchVatControlStatementLinesConnector/batch-input.json +18 -0
- package/src/Connector/__tests__/Data/WflowPatchVatControlStatementLinesConnector/batch-mock.json +5 -0
- package/src/Connector/__tests__/Data/WflowPatchVatControlStatementLinesConnector/batch-output.json +18 -0
- package/src/Connector/__tests__/Data/WflowPatchVatControlStatementLinesConnector/input.json +11 -0
- package/src/Connector/__tests__/Data/WflowPatchVatControlStatementLinesConnector/mock.json +5 -0
- package/src/Connector/__tests__/Data/WflowPatchVatControlStatementLinesConnector/output.json +11 -0
- package/src/Connector/__tests__/Data/WflowPatchVatReturnLinesConnector/batch-input.json +20 -0
- package/src/Connector/__tests__/Data/WflowPatchVatReturnLinesConnector/batch-mock.json +5 -0
- package/src/Connector/__tests__/Data/WflowPatchVatReturnLinesConnector/batch-output.json +20 -0
- package/src/Connector/__tests__/Data/WflowPatchVatReturnLinesConnector/input.json +12 -0
- package/src/Connector/__tests__/Data/WflowPatchVatReturnLinesConnector/mock.json +5 -0
- package/src/Connector/__tests__/Data/WflowPatchVatReturnLinesConnector/output.json +12 -0
- package/src/Connector/__tests__/Data/WflowPutDocumentConnector/input.json +3 -2
- package/src/Connector/__tests__/Data/WflowPutDocumentConnector/output.json +3 -2
- package/src/Connector/__tests__/Data/WflowUpdateDocumentState/input.json +3 -2
- package/src/Connector/__tests__/Data/WflowUpdateDocumentState/output.json +3 -2
- package/src/Connector/__tests__/WflowPatchAccountingRulesConnector.ts +21 -0
- package/src/Connector/__tests__/WflowPatchChartOfAccountsConnector.ts +21 -0
- package/src/Connector/__tests__/WflowPatchContractsConnector.ts +21 -0
- package/src/Connector/__tests__/WflowPatchCostCentersConnector.ts +21 -0
- package/src/Connector/__tests__/WflowPatchSeriesConnector.ts +21 -0
- package/src/Connector/__tests__/WflowPatchVatControlStatementLinesConnector.ts +21 -0
- package/src/Connector/__tests__/WflowPatchVatReturnLinesConnector.ts +21 -0
- package/src/WflowApplication.ts +1 -0
- package/test/dataProvider.ts +15 -0
- package/tsconfig.prod.tsbuildinfo +1 -1
package/CHANGELOG.md
CHANGED
package/README.md
ADDED
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
# Wflow Connector
|
|
2
|
+
|
|
3
|
+
[](https://www.npmjs.com/package/@orchesty/connector-wflow)
|
|
4
|
+
[](https://github.com/Orchesty/orchesty-nodejs-connectors/blob/master/LICENSE)
|
|
5
|
+
|
|
6
|
+
An [Orchesty](https://orchesty.io) connector for wflow, a digital accounting platform that automates document processing, extraction, and approval workflows.
|
|
7
|
+
|
|
8
|
+
## Application Type
|
|
9
|
+
|
|
10
|
+
**OAuth 2.0**
|
|
11
|
+
|
|
12
|
+
This connector uses the wflow OAuth 2.0 authorization flow via `https://account.wflow.com/connect/authorize`. After authorization, the selected organization is stored in a separate settings form that is populated dynamically.
|
|
13
|
+
|
|
14
|
+
> **Note:** `WflowApplication` requires `OAuth2Provider` and `WflowGetOrganizationsConnector` in its constructor.
|
|
15
|
+
|
|
16
|
+
| Field | Description |
|
|
17
|
+
|---|---|
|
|
18
|
+
| `client_id` | Your wflow app Client ID |
|
|
19
|
+
| `client_secret` | Your wflow app Client Secret |
|
|
20
|
+
| `organization` | Selected wflow organization ID (populated after authorization) |
|
|
21
|
+
|
|
22
|
+
## Components
|
|
23
|
+
|
|
24
|
+
| Class | Type | Description |
|
|
25
|
+
|---|---|---|
|
|
26
|
+
| `WflowGetDocumentConnector` | Connector | Retrieves a document by ID via `GET /{org}/documents/{documentId}` |
|
|
27
|
+
| `WflowGetDocumentMainFileConnector` | Connector | Downloads the main file of a document as base64 via `GET /{org}/documents/{documentId}/files/main/download` |
|
|
28
|
+
| `WflowGetDocumentTypesConnector` | Connector | Lists available document types via `GET /{org}/documents/types` |
|
|
29
|
+
| `WflowGetOrganizationsConnector` | Connector | Lists accessible organizations via `GET /user/myorganizations` |
|
|
30
|
+
| `WflowPatchAccountingRulesConnector` | Connector | Updates accounting rules register entries via `PATCH /{org}/registers/accountingrules` |
|
|
31
|
+
| `WflowPatchChartOfAccountsConnector` | Connector | Updates chart of accounts register entries via `PATCH /{org}/registers/chartofaccounts` |
|
|
32
|
+
| `WflowPatchContractsConnector` | Connector | Updates contracts register entries via `PATCH /{org}/registers/contracts` |
|
|
33
|
+
| `WflowPatchCostCentersConnector` | Connector | Updates cost centers register entries via `PATCH /{org}/registers/costcenters` |
|
|
34
|
+
| `WflowPatchSeriesConnector` | Connector | Updates series register entries via `PATCH /{org}/registers/series` |
|
|
35
|
+
| `WflowPatchVatControlStatementLinesConnector` | Connector | Updates VAT control statement lines via `PATCH /{org}/registers/vatcontrolstatementlines` |
|
|
36
|
+
| `WflowPatchVatReturnLinesConnector` | Connector | Updates VAT return lines via `PATCH /{org}/registers/vatreturnlines` |
|
|
37
|
+
| `WflowPutDocumentConnector` | Connector | Creates or replaces a document via `PUT /{org}/documents` |
|
|
38
|
+
| `WflowUpdateDocumentStateConnector` | Connector | Marks a document export task as processed via `PUT /{org}/documents/{documentId}/task/Export/processed` |
|
|
39
|
+
| `WflowSubscribeWebhookBatch` | Batch | Registers webhook subscriptions via `PUT /{org}/webhookregistrations` |
|
|
40
|
+
| `WflowUnsubscribeWebhookBatch` | Batch | Removes registered webhook subscriptions via `DELETE /{org}/webhookregistrations/{webhookId}` |
|
|
41
|
+
|
|
42
|
+
## Setup
|
|
43
|
+
|
|
44
|
+
### Credentials
|
|
45
|
+
|
|
46
|
+
1. Contact [wflow](https://www.wflow.com/) to obtain API client credentials for your organization.
|
|
47
|
+
2. In Orchesty, open the wflow application settings, enter the **Client ID** and **Client Secret**, and complete the OAuth authorization flow.
|
|
48
|
+
3. After authorization, select your **organization** from the dropdown (populated automatically from your wflow account).
|
|
49
|
+
|
|
50
|
+
### API Documentation
|
|
51
|
+
|
|
52
|
+
wflow API: [https://www.wflow.com/](https://www.wflow.com/)
|
|
53
|
+
|
|
54
|
+
## Installation & Usage
|
|
55
|
+
|
|
56
|
+
Install the package:
|
|
57
|
+
|
|
58
|
+
```bash
|
|
59
|
+
npm install @orchesty/connector-wflow @orchesty/nodejs-sdk
|
|
60
|
+
# or
|
|
61
|
+
pnpm add @orchesty/connector-wflow @orchesty/nodejs-sdk
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
Register the application and nodes in your Orchesty DI container:
|
|
65
|
+
|
|
66
|
+
```typescript
|
|
67
|
+
import { container } from '@orchesty/nodejs-sdk';
|
|
68
|
+
import { OAuth2Provider } from '@orchesty/nodejs-sdk/dist/lib/Authorization/Provider/OAuth2/OAuth2Provider';
|
|
69
|
+
import WflowApplication from '@orchesty/connector-wflow/dist/WflowApplication';
|
|
70
|
+
import WflowGetOrganizationsConnector from '@orchesty/connector-wflow/dist/Connector/WflowGetOrganizationsConnector';
|
|
71
|
+
import WflowGetDocumentConnector from '@orchesty/connector-wflow/dist/Connector/WflowGetDocumentConnector';
|
|
72
|
+
import WflowPutDocumentConnector from '@orchesty/connector-wflow/dist/Connector/WflowPutDocumentConnector';
|
|
73
|
+
import WflowUpdateDocumentStateConnector from '@orchesty/connector-wflow/dist/Connector/WflowUpdateDocumentStateConnector';
|
|
74
|
+
import WflowSubscribeWebhookBatch from '@orchesty/connector-wflow/dist/Batch/WflowSubscribeWebhookBatch';
|
|
75
|
+
import WflowUnsubscribeWebhookBatch from '@orchesty/connector-wflow/dist/Batch/WflowUnsubscribeWebhookBatch';
|
|
76
|
+
|
|
77
|
+
const getOrgsConnector = new WflowGetOrganizationsConnector();
|
|
78
|
+
const app = new WflowApplication(container.get(OAuth2Provider), getOrgsConnector);
|
|
79
|
+
container.setApplication(app);
|
|
80
|
+
container.setNode(getOrgsConnector, app);
|
|
81
|
+
container.setNode(new WflowGetDocumentConnector(), app);
|
|
82
|
+
container.setNode(new WflowPutDocumentConnector(), app);
|
|
83
|
+
container.setNode(new WflowUpdateDocumentStateConnector(), app);
|
|
84
|
+
container.setNode(new WflowSubscribeWebhookBatch(), app);
|
|
85
|
+
container.setNode(new WflowUnsubscribeWebhookBatch(), app);
|
|
86
|
+
// ... register remaining connectors similarly
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
## License
|
|
90
|
+
|
|
91
|
+
This connector is released under the **Apache License 2.0**. See the [LICENSE](https://github.com/Orchesty/orchesty-nodejs-connectors/blob/master/LICENSE) file for the full license text.
|
|
92
|
+
|
|
93
|
+
## Contributing
|
|
94
|
+
|
|
95
|
+
Contributions are welcome! This connector is part of the open-source [Orchesty Node.js Connectors](https://github.com/Orchesty/orchesty-nodejs-connectors) monorepo.
|
|
96
|
+
|
|
97
|
+
For guidelines on how to create or update connectors — including project setup, coding conventions, and how to write tests — please refer to the **[Contributing to Connectors](https://orchesty.io/community/contributing-to-connectors)** guide.
|
|
98
|
+
|
|
99
|
+
All contributions should include:
|
|
100
|
+
- Source code in `src/` following the existing connector structure
|
|
101
|
+
- Tests in `src/**/__tests__/` with `input.json`, `mock.json`, and `output.json` fixtures
|
|
102
|
+
- An updated `CHANGELOG.md` entry
|