@activepieces/piece-csv 0.4.0 → 0.4.2
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/package.json +22 -9
- package/src/index.js +1 -1
- package/src/index.js.map +1 -1
- package/src/lib/actions/convert-csv-to-json.js +3 -16
- package/src/lib/actions/convert-csv-to-json.js.map +1 -1
- package/src/lib/actions/convert-json-to-csv.js +10 -18
- package/src/lib/actions/convert-json-to-csv.js.map +1 -1
package/package.json
CHANGED
|
@@ -1,18 +1,31 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@activepieces/piece-csv",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.2",
|
|
4
4
|
"dependencies": {
|
|
5
|
-
"@sinclair/typebox": "0.
|
|
6
|
-
"
|
|
7
|
-
"
|
|
8
|
-
"
|
|
9
|
-
"nanoid": "3.3.
|
|
5
|
+
"@sinclair/typebox": "0.34.11",
|
|
6
|
+
"csv-parse": "5.6.0",
|
|
7
|
+
"csv-stringify": "6.5.2",
|
|
8
|
+
"deepmerge-ts": "7.1.0",
|
|
9
|
+
"nanoid": "3.3.8",
|
|
10
10
|
"safe-flat": "2.1.0",
|
|
11
11
|
"semver": "7.6.0",
|
|
12
|
-
"@activepieces/pieces-framework": "0.7.
|
|
13
|
-
"@activepieces/shared": "0.10.
|
|
12
|
+
"@activepieces/pieces-framework": "0.7.42",
|
|
13
|
+
"@activepieces/shared": "0.10.141",
|
|
14
14
|
"tslib": "1.14.1"
|
|
15
15
|
},
|
|
16
|
+
"overrides": {
|
|
17
|
+
"cross-spawn": "7.0.6",
|
|
18
|
+
"@tryfabric/martian": {
|
|
19
|
+
"@notionhq/client": "$@notionhq/client"
|
|
20
|
+
},
|
|
21
|
+
"vite": {
|
|
22
|
+
"rollup": "npm:@rollup/wasm-node"
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
"resolutions": {
|
|
26
|
+
"rollup": "npm:@rollup/wasm-node"
|
|
27
|
+
},
|
|
16
28
|
"main": "./src/index.js",
|
|
17
|
-
"type": "commonjs"
|
|
29
|
+
"type": "commonjs",
|
|
30
|
+
"types": "./src/index.d.ts"
|
|
18
31
|
}
|
package/src/index.js
CHANGED
|
@@ -8,7 +8,7 @@ const convert_json_to_csv_1 = require("./lib/actions/convert-json-to-csv");
|
|
|
8
8
|
exports.csv = (0, pieces_framework_1.createPiece)({
|
|
9
9
|
displayName: 'CSV',
|
|
10
10
|
description: 'Manipulate CSV text',
|
|
11
|
-
minimumSupportedRelease: '0.
|
|
11
|
+
minimumSupportedRelease: '0.30.0',
|
|
12
12
|
logoUrl: 'https://cdn.activepieces.com/pieces/csv.svg',
|
|
13
13
|
auth: pieces_framework_1.PieceAuth.None(),
|
|
14
14
|
categories: [shared_1.PieceCategory.CORE],
|
package/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/pieces/community/csv/src/index.ts"],"names":[],"mappings":";;;AAAA,qEAAwE;AACxE,iDAAqD;AACrD,2EAAoE;AACpE,2EAAoE;AAEvD,QAAA,GAAG,GAAG,IAAA,8BAAW,EAAC;IAC7B,WAAW,EAAE,KAAK;IAClB,WAAW,EAAE,qBAAqB;IAClC,uBAAuB,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/pieces/community/csv/src/index.ts"],"names":[],"mappings":";;;AAAA,qEAAwE;AACxE,iDAAqD;AACrD,2EAAoE;AACpE,2EAAoE;AAEvD,QAAA,GAAG,GAAG,IAAA,8BAAW,EAAC;IAC7B,WAAW,EAAE,KAAK;IAClB,WAAW,EAAE,qBAAqB;IAClC,uBAAuB,EAAE,QAAQ;IACjC,OAAO,EAAE,6CAA6C;IACtD,IAAI,EAAE,4BAAS,CAAC,IAAI,EAAE;IACtB,UAAU,EAAE,CAAC,sBAAa,CAAC,IAAI,CAAC;IAChC,OAAO,EAAE,CAAC,qCAAe,EAAE,qCAAe,CAAC;IAC3C,OAAO,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,UAAU,CAAC;IACjE,QAAQ,EAAE,EAAE;CACb,CAAC,CAAC"}
|
|
@@ -4,6 +4,7 @@ exports.csvToJsonAction = void 0;
|
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const pieces_framework_1 = require("@activepieces/pieces-framework");
|
|
6
6
|
const shared_1 = require("@activepieces/shared");
|
|
7
|
+
const sync_1 = require("csv-parse/sync");
|
|
7
8
|
exports.csvToJsonAction = (0, pieces_framework_1.createAction)({
|
|
8
9
|
name: 'convert_csv_to_json',
|
|
9
10
|
displayName: 'Convert CSV to JSON',
|
|
@@ -48,23 +49,9 @@ exports.csvToJsonAction = (0, pieces_framework_1.createAction)({
|
|
|
48
49
|
message: 'The input should be a string.',
|
|
49
50
|
}));
|
|
50
51
|
}
|
|
51
|
-
|
|
52
|
+
const records = (0, sync_1.parse)(csv_text, { delimiter: delimiter_type, columns: has_headers ? true : false });
|
|
53
|
+
return records;
|
|
52
54
|
});
|
|
53
55
|
},
|
|
54
56
|
});
|
|
55
|
-
function csvToJson(csv_text, has_headers, delimiter_type) {
|
|
56
|
-
if ((0, shared_1.isNil)(csv_text)) {
|
|
57
|
-
return [];
|
|
58
|
-
}
|
|
59
|
-
const rows = csv_text.split('\n');
|
|
60
|
-
const headers = has_headers ? rows[0].split(delimiter_type) : rows[0].split(',').map((_, index) => `${index + 1}`);
|
|
61
|
-
const data = rows.slice(has_headers ? 1 : 0).map((row) => {
|
|
62
|
-
const values = row.split(delimiter_type);
|
|
63
|
-
return headers.reduce((acc, header, index) => {
|
|
64
|
-
acc[header] = values[index];
|
|
65
|
-
return acc;
|
|
66
|
-
}, {});
|
|
67
|
-
});
|
|
68
|
-
return data;
|
|
69
|
-
}
|
|
70
57
|
//# sourceMappingURL=convert-csv-to-json.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"convert-csv-to-json.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/csv/src/lib/actions/convert-csv-to-json.ts"],"names":[],"mappings":";;;;AAAA,qEAAwE;AACxE,
|
|
1
|
+
{"version":3,"file":"convert-csv-to-json.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/csv/src/lib/actions/convert-csv-to-json.ts"],"names":[],"mappings":";;;;AAAA,qEAAwE;AACxE,iDAAgD;AAChD,yCAAqC;AAExB,QAAA,eAAe,GAAG,IAAA,+BAAY,EAAC;IAC1C,IAAI,EAAE,qBAAqB;IAC3B,WAAW,EAAE,qBAAqB;IAClC,WAAW,EACT,0EAA0E;IAC5E,oBAAoB,EAAE;QACpB,iBAAiB,EAAE;YACjB,IAAI,EAAE,IAAI;SACX;QACD,cAAc,EAAE;YACd,IAAI,EAAE,IAAI;SACX;KACF;IACD,KAAK,EAAE;QACL,QAAQ,EAAE,2BAAQ,CAAC,QAAQ,CAAC;YAC1B,WAAW,EAAE,UAAU;YACvB,YAAY,EAAE,EAAE;YAChB,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,WAAW,EAAE,2BAAQ,CAAC,QAAQ,CAAC;YAC7B,WAAW,EAAE,4BAA4B;YACzC,YAAY,EAAE,KAAK;YACnB,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,cAAc,EAAE,2BAAQ,CAAC,cAAc,CAAC;YACtC,WAAW,EAAE,gBAAgB;YAC7B,WAAW,EAAE,6CAA6C;YAC1D,YAAY,EAAE,EAAE;YAChB,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE;gBACP,OAAO,EAAE;oBACP,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE;oBAC9B,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE;iBAC9B;aACF;SACF,CAAC;KACH;IACK,GAAG,CAAC,OAAO;;YACf,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;YACrE,IAAI,CAAC,IAAA,iBAAQ,EAAC,QAAQ,CAAC,EAAE,CAAC;gBACxB,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC;oBAC7B,OAAO,EAAE,+BAA+B;iBACzC,CAAC,CAAC,CAAA;YACL,CAAC;YAED,MAAM,OAAO,GAAG,IAAA,YAAK,EAAC,QAAQ,EAAC,EAAC,SAAS,EAAE,cAAc,EAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAC,CAAC,CAAC;YAChG,OAAO,OAAO,CAAC;QACjB,CAAC;KAAA;CACF,CAAC,CAAC"}
|
|
@@ -4,6 +4,12 @@ exports.jsonToCsvAction = void 0;
|
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const pieces_framework_1 = require("@activepieces/pieces-framework");
|
|
6
6
|
const safe_flat_1 = require("safe-flat");
|
|
7
|
+
const sync_1 = require("csv-stringify/sync");
|
|
8
|
+
const markdown = `
|
|
9
|
+
**Notes**:
|
|
10
|
+
* The input should be a JSON array.
|
|
11
|
+
* The JSON object will be flattened If nested and the keys will be used as headers.
|
|
12
|
+
`;
|
|
7
13
|
exports.jsonToCsvAction = (0, pieces_framework_1.createAction)({
|
|
8
14
|
name: 'convert_json_to_csv',
|
|
9
15
|
displayName: 'Convert JSON to CSV',
|
|
@@ -14,11 +20,7 @@ exports.jsonToCsvAction = (0, pieces_framework_1.createAction)({
|
|
|
14
20
|
},
|
|
15
21
|
props: {
|
|
16
22
|
markdown: pieces_framework_1.Property.MarkDown({
|
|
17
|
-
value:
|
|
18
|
-
**Notes**:
|
|
19
|
-
* The input should be a JSON array.
|
|
20
|
-
* The JSON object will be flattened If nested and the keys will be used as headers.
|
|
21
|
-
`
|
|
23
|
+
value: markdown,
|
|
22
24
|
}),
|
|
23
25
|
json_array: pieces_framework_1.Property.Json({
|
|
24
26
|
displayName: 'JSON Array',
|
|
@@ -65,20 +67,10 @@ exports.jsonToCsvAction = (0, pieces_framework_1.createAction)({
|
|
|
65
67
|
}));
|
|
66
68
|
}
|
|
67
69
|
const flattened = json_array.map((item) => (0, safe_flat_1.flatten)(item));
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
if (!headers.includes(key)) {
|
|
72
|
-
headers.push(key);
|
|
73
|
-
}
|
|
74
|
-
});
|
|
75
|
-
});
|
|
76
|
-
const csv = [headers.join(delimiter_type)];
|
|
77
|
-
flattened.forEach((item) => {
|
|
78
|
-
const row = headers.map((header) => { var _a; return (_a = item[header]) !== null && _a !== void 0 ? _a : ''; });
|
|
79
|
-
csv.push(row.join(delimiter_type));
|
|
70
|
+
return (0, sync_1.stringify)(flattened, {
|
|
71
|
+
header: true,
|
|
72
|
+
delimiter: delimiter_type,
|
|
80
73
|
});
|
|
81
|
-
return csv.join('\n');
|
|
82
74
|
});
|
|
83
75
|
},
|
|
84
76
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"convert-json-to-csv.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/csv/src/lib/actions/convert-json-to-csv.ts"],"names":[],"mappings":";;;;AAAA,qEAAwE;AACxE,yCAAoC;
|
|
1
|
+
{"version":3,"file":"convert-json-to-csv.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/csv/src/lib/actions/convert-json-to-csv.ts"],"names":[],"mappings":";;;;AAAA,qEAAwE;AACxE,yCAAoC;AACpC,6CAA+C;AAE/C,MAAM,QAAQ,GAAG;;;;CAIhB,CAAA;AACY,QAAA,eAAe,GAAG,IAAA,+BAAY,EAAC;IAC1C,IAAI,EAAE,qBAAqB;IAC3B,WAAW,EAAE,qBAAqB;IAClC,WAAW,EAAE,mEAAmE;IAChF,oBAAoB,EAAE;QACpB,iBAAiB,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE;QACjC,cAAc,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE;KAC/B;IACD,KAAK,EAAE;QACL,QAAQ,EAAE,2BAAQ,CAAC,QAAQ,CAAC;YAC1B,KAAK,EAAE,QAAQ;SAChB,CAAC;QACF,UAAU,EAAE,2BAAQ,CAAC,IAAI,CAAC;YACxB,WAAW,EAAE,YAAY;YACzB,YAAY,EAAE;gBACZ;oBACE,IAAI,EAAE,MAAM;oBACZ,GAAG,EAAE,EAAE;oBACP,OAAO,EAAE;wBACP,MAAM,EAAE,aAAa;wBACrB,IAAI,EAAE,aAAa;qBACpB;iBACF;gBACD;oBACE,IAAI,EAAE,MAAM;oBACZ,GAAG,EAAE,EAAE;oBACP,OAAO,EAAE;wBACP,MAAM,EAAE,aAAa;wBACrB,IAAI,EAAE,aAAa;qBACpB;iBACF;aACF;YACD,WAAW,EACT,gDAAgD;YAClD,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,cAAc,EAAE,2BAAQ,CAAC,cAAc,CAAC;YACtC,WAAW,EAAE,gBAAgB;YAC7B,WAAW,EAAE,6CAA6C;YAC1D,YAAY,EAAE,GAAG;YACjB,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE;gBACP,OAAO,EAAE;oBACP,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE;oBAC9B,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE;iBAC9B;aACF;SACF,CAAC;KACH;IACK,GAAG,CAAC,OAAO;;YACf,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;YAC1D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC/B,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC;oBAC7B,OAAO,EAAE,mCAAmC;iBAC7C,CAAC,CAAC,CAAA;YACL,CAAC;YACD,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,mBAAO,EAAC,IAAI,CAA2B,CAAC,CAAC;YAEpF,OAAO,IAAA,gBAAS,EAAC,SAAS,EAAE;gBAC1B,MAAM,EAAE,IAAI;gBACZ,SAAS,EAAE,cAAc;aAC1B,CAAC,CAAC;QACL,CAAC;KAAA;CACF,CAAC,CAAC"}
|