You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Added support for a new `read` operation to convert structured data into CSV format.
- Refactored `CsvPlugin` to use `IPluginOperation` for modular operation handling.
- Introduced `FilterOperation`, `MapOperation`, and `ReadOperation` classes.
- Added parameter classes (`FilterParameters`, `MapParameters`, `ReadParameters`) with metadata annotations.
- Centralized CSV handling logic in the new `ParseDataHelper` class.
- Updated `README.md` with new examples, descriptions, and parameter details.
- Removed legacy classes (`InputParameter`, `ICsvOperationHandler`, and its implementations).
- Upgraded target framework to `net10.0` and updated dependencies.
- Improved code maintainability, extensibility, and usability.
#18
Copy file name to clipboardExpand all lines: README.md
+20-8Lines changed: 20 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,4 +1,4 @@
1
-
# FlowSynx CSV Plugin
1
+
##FlowSynx CSV Plugin
2
2
3
3
The CSV Plugin is a pre-packaged, plug-and-play integration component for the FlowSynx engine. It enables reading from and writing to CSV files with configurable parameters such as file path, delimiter, headers, and encoding. Designed for FlowSynx’s no-code/low-code automation workflows, this plugin simplifies data extraction and transformation tasks.
4
4
@@ -15,18 +15,20 @@ The CSV Plugin allows FlowSynx users to:
15
15
16
16
## Supported Operations
17
17
18
+
-**read**: Converts a structured object (e.g., rows from a database, in-memory objects) into CSV output using the provided parameters (e.g., delimiter, headers).
18
19
-**filter**: Filters rows in the CSV using defined `Filter` conditions. Supports logical operations (`and`, `or`) and common operators like `equals`, `contains`, `startsWith`, `endsWith`, `greaterThan`, and `lessThan`.
19
20
-**map**: Maps existing fields in the CSV to a new subset of keys or column arrangement for simplified output.
20
-
-**read**: Reads the structured object (e.g., from database) and returns it as a CSV data.
21
+
22
+
Minimum FlowSynx version: 1.3.0.
21
23
22
24
## Input Parameters
23
25
24
26
The plugin accepts the following parameters:
25
27
26
-
-`Operation` (string): **Required.** The type of operation to perform. Supported values are `filter` and `map`.
27
-
-`Data` (string/object): **Required.** The raw CSV stringto process.
28
+
-`Operation` (string): Required. The type of operation to perform. Supported values are `read`, `filter`, and `map`.
29
+
-`Data` (string/object): Required. The input to process. For `filter` and `map`, provide a raw CSV string. For `read`, provide a structured object or rows to convert to CSV.
28
30
-`Delimiter` (string): Optional. Defaults to `,`. The character used to separate fields in the CSV.
29
-
-`Mappings` (list): **Required for `map` operation.** Defines which fields to include in the output.
31
+
-`Mappings` (list): Required for `map` operation. Defines which fields to include in the output.
30
32
-`IgnoreBlankLines` (bool): Optional. Specifies whether blank lines in the CSV should be ignored (`true`) or treated as data rows (`false`). Defaults to `true`.
31
33
-`HasHeader` (bool): Optional. Indicates if the first row of the CSV contains headers (`true`) or data (`false`). Defaults to `true`.
32
34
-`Filters` (object): Optional. Used with the `filter` operation to define filtering criteria.
@@ -35,7 +37,6 @@ The plugin accepts the following parameters:
35
37
36
38
```json
37
39
{
38
-
"Operation": "map",
39
40
"Data": { ... },
40
41
"Mappings": ["LastName", "Email"],
41
42
"IgnoreBlankLines": true,
@@ -46,6 +47,19 @@ The plugin accepts the following parameters:
0 commit comments