@activepieces/piece-microsoft-excel-365 0.0.19 → 0.1.1
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 +2 -2
- package/src/i18n/de.json +52 -3
- package/src/i18n/es.json +52 -3
- package/src/i18n/fr.json +52 -3
- package/src/i18n/ja.json +52 -3
- package/src/i18n/nl.json +52 -3
- package/src/i18n/pt.json +52 -3
- package/src/i18n/translation.json +52 -3
- package/src/i18n/zh.json +52 -3
- package/src/index.js +43 -17
- package/src/index.js.map +1 -1
- package/src/lib/actions/clear-cells-by-range.d.ts +6 -0
- package/src/lib/actions/clear-cells-by-range.js +68 -0
- package/src/lib/actions/clear-cells-by-range.js.map +1 -0
- package/src/lib/actions/clear-column-by-index.d.ts +6 -0
- package/src/lib/actions/clear-column-by-index.js +74 -0
- package/src/lib/actions/clear-column-by-index.js.map +1 -0
- package/src/lib/actions/clear-row-by-id.d.ts +6 -0
- package/src/lib/actions/clear-row-by-id.js +70 -0
- package/src/lib/actions/clear-row-by-id.js.map +1 -0
- package/src/lib/actions/create-worksheet.d.ts +5 -0
- package/src/lib/actions/create-worksheet.js +81 -0
- package/src/lib/actions/create-worksheet.js.map +1 -0
- package/src/lib/actions/find-row.d.ts +7 -0
- package/src/lib/actions/find-row.js +107 -0
- package/src/lib/actions/find-row.js.map +1 -0
- package/src/lib/actions/get-cells-in-range.d.ts +5 -0
- package/src/lib/actions/get-cells-in-range.js +44 -0
- package/src/lib/actions/get-cells-in-range.js.map +1 -0
- package/src/lib/actions/get-row-by-id.d.ts +6 -0
- package/src/lib/actions/get-row-by-id.js +61 -0
- package/src/lib/actions/get-row-by-id.js.map +1 -0
- package/src/lib/actions/get-worksheet-by-id.d.ts +4 -0
- package/src/lib/actions/get-worksheet-by-id.js +37 -0
- package/src/lib/actions/get-worksheet-by-id.js.map +1 -0
- package/src/lib/actions/rename-worksheet.d.ts +5 -0
- package/src/lib/actions/rename-worksheet.js +51 -0
- package/src/lib/actions/rename-worksheet.js.map +1 -0
- package/src/lib/common/common.d.ts +3 -3
- package/src/lib/common/common.js +55 -71
- package/src/lib/common/common.js.map +1 -1
- package/src/lib/trigger/new-row-in-table.d.ts +17 -0
- package/src/lib/trigger/new-row-in-table.js +139 -0
- package/src/lib/trigger/new-row-in-table.js.map +1 -0
- package/src/lib/trigger/new-worksheet.d.ts +8 -0
- package/src/lib/trigger/new-worksheet.js +94 -0
- package/src/lib/trigger/new-worksheet.js.map +1 -0
- package/src/lib/trigger/updated-row.d.ts +14 -0
- package/src/lib/trigger/updated-row.js +129 -0
- package/src/lib/trigger/updated-row.js.map +1 -0
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.clearRowAction = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const pieces_framework_1 = require("@activepieces/pieces-framework");
|
|
6
|
+
const pieces_common_1 = require("@activepieces/pieces-common");
|
|
7
|
+
const index_1 = require("../../index");
|
|
8
|
+
const common_1 = require("../common/common");
|
|
9
|
+
exports.clearRowAction = (0, pieces_framework_1.createAction)({
|
|
10
|
+
auth: index_1.excelAuth,
|
|
11
|
+
name: 'clear_row',
|
|
12
|
+
displayName: 'Clear Row by ID',
|
|
13
|
+
description: 'Clear contents/formatting of an entire row by its ID.',
|
|
14
|
+
props: {
|
|
15
|
+
workbook_id: common_1.excelCommon.workbook_id,
|
|
16
|
+
worksheet_id: common_1.excelCommon.worksheet_id,
|
|
17
|
+
row_id: pieces_framework_1.Property.Number({
|
|
18
|
+
displayName: 'Row Number',
|
|
19
|
+
description: 'The number of the row to be cleared (e.g., 5 for the 5th row).',
|
|
20
|
+
required: true,
|
|
21
|
+
}),
|
|
22
|
+
applyTo: pieces_framework_1.Property.StaticDropdown({
|
|
23
|
+
displayName: "Clear Type",
|
|
24
|
+
description: "Specify what to clear from the row.",
|
|
25
|
+
required: true,
|
|
26
|
+
defaultValue: 'All',
|
|
27
|
+
options: {
|
|
28
|
+
options: [
|
|
29
|
+
{
|
|
30
|
+
label: 'All (Contents and Formatting)',
|
|
31
|
+
value: 'All'
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
label: 'Contents Only',
|
|
35
|
+
value: 'Contents'
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
label: 'Formats Only',
|
|
39
|
+
value: 'Formats'
|
|
40
|
+
}
|
|
41
|
+
]
|
|
42
|
+
}
|
|
43
|
+
})
|
|
44
|
+
},
|
|
45
|
+
run(context) {
|
|
46
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
47
|
+
const { workbook_id, worksheet_id, row_id, applyTo } = context.propsValue;
|
|
48
|
+
const { access_token } = context.auth;
|
|
49
|
+
if (typeof row_id !== 'number' || !Number.isInteger(row_id) || row_id < 1) {
|
|
50
|
+
throw new Error('Row index must be a positive integer.');
|
|
51
|
+
}
|
|
52
|
+
// Construct the range address for the entire row, e.g., '5:5'
|
|
53
|
+
const rowAddress = `${row_id}:${row_id}`;
|
|
54
|
+
const response = yield pieces_common_1.httpClient.sendRequest({
|
|
55
|
+
method: pieces_common_1.HttpMethod.POST,
|
|
56
|
+
url: `${common_1.excelCommon.baseUrl}/items/${workbook_id}/workbook/worksheets/${worksheet_id}/range(address='${rowAddress}')/clear`,
|
|
57
|
+
authentication: {
|
|
58
|
+
type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
|
|
59
|
+
token: access_token,
|
|
60
|
+
},
|
|
61
|
+
body: {
|
|
62
|
+
applyTo: applyTo,
|
|
63
|
+
},
|
|
64
|
+
});
|
|
65
|
+
// A successful request returns a 200 OK with no body.
|
|
66
|
+
return response.body;
|
|
67
|
+
});
|
|
68
|
+
},
|
|
69
|
+
});
|
|
70
|
+
//# sourceMappingURL=clear-row-by-id.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clear-row-by-id.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/microsoft-excel-365/src/lib/actions/clear-row-by-id.ts"],"names":[],"mappings":";;;;AAAA,qEAAwE;AACxE,+DAAyF;AACzF,uCAAwC;AACxC,6CAA+C;AAElC,QAAA,cAAc,GAAG,IAAA,+BAAY,EAAC;IACvC,IAAI,EAAE,iBAAS;IACf,IAAI,EAAE,WAAW;IACjB,WAAW,EAAE,iBAAiB;IAC9B,WAAW,EAAE,uDAAuD;IACpE,KAAK,EAAE;QACH,WAAW,EAAE,oBAAW,CAAC,WAAW;QACpC,YAAY,EAAE,oBAAW,CAAC,YAAY;QACtC,MAAM,EAAE,2BAAQ,CAAC,MAAM,CAAC;YACpB,WAAW,EAAE,YAAY;YACzB,WAAW,EAAE,gEAAgE;YAC7E,QAAQ,EAAE,IAAI;SACjB,CAAC;QACF,OAAO,EAAE,2BAAQ,CAAC,cAAc,CAAC;YAC7B,WAAW,EAAE,YAAY;YACzB,WAAW,EAAE,qCAAqC;YAClD,QAAQ,EAAE,IAAI;YACd,YAAY,EAAE,KAAK;YACnB,OAAO,EAAE;gBACL,OAAO,EAAE;oBACL;wBACI,KAAK,EAAE,+BAA+B;wBACtC,KAAK,EAAE,KAAK;qBACf;oBACD;wBACI,KAAK,EAAE,eAAe;wBACtB,KAAK,EAAE,UAAU;qBACpB;oBACD;wBACI,KAAK,EAAE,cAAc;wBACrB,KAAK,EAAE,SAAS;qBACnB;iBACJ;aACJ;SACJ,CAAC;KACL;IACK,GAAG,CAAC,OAAO;;YACb,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;YAC1E,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;YAEtC,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxE,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;YAC7D,CAAC;YAGD,8DAA8D;YAC9D,MAAM,UAAU,GAAG,GAAG,MAAM,IAAI,MAAM,EAAE,CAAC;YAEzC,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAAC;gBAC1C,MAAM,EAAE,0BAAU,CAAC,IAAI;gBACvB,GAAG,EAAE,GAAG,oBAAW,CAAC,OAAO,UAAU,WAAW,wBAAwB,YAAY,mBAAmB,UAAU,UAAU;gBAC3H,cAAc,EAAE;oBACZ,IAAI,EAAE,kCAAkB,CAAC,YAAY;oBACrC,KAAK,EAAE,YAAY;iBACtB;gBACD,IAAI,EAAE;oBACF,OAAO,EAAE,OAAO;iBACnB;aACJ,CAAC,CAAC;YAEH,sDAAsD;YACtD,OAAO,QAAQ,CAAC,IAAI,CAAC;QACzB,CAAC;KAAA;CACJ,CAAC,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export declare const createWorksheetAction: import("@activepieces/pieces-framework").IAction<import("@activepieces/pieces-framework").OAuth2Property<import("@activepieces/pieces-framework").OAuth2Props>, {
|
|
2
|
+
workbook_id: import("@activepieces/pieces-framework").DropdownProperty<string, true>;
|
|
3
|
+
name: import("@activepieces/pieces-framework").ShortTextProperty<false>;
|
|
4
|
+
headers: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
5
|
+
}>;
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createWorksheetAction = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const pieces_framework_1 = require("@activepieces/pieces-framework");
|
|
6
|
+
const index_1 = require("../../index");
|
|
7
|
+
const common_1 = require("../common/common");
|
|
8
|
+
const pieces_common_1 = require("@activepieces/pieces-common");
|
|
9
|
+
exports.createWorksheetAction = (0, pieces_framework_1.createAction)({
|
|
10
|
+
auth: index_1.excelAuth,
|
|
11
|
+
name: 'create_worksheet',
|
|
12
|
+
displayName: 'Create Worksheet',
|
|
13
|
+
description: 'Add a new worksheet (tab) to an existing workbook with optional default headers.',
|
|
14
|
+
props: {
|
|
15
|
+
workbook_id: common_1.excelCommon.workbook_id,
|
|
16
|
+
name: pieces_framework_1.Property.ShortText({
|
|
17
|
+
displayName: 'Worksheet Name',
|
|
18
|
+
description: "The name for the new worksheet. If not provided, a default name like 'Sheet1' will be assigned.",
|
|
19
|
+
required: false
|
|
20
|
+
}),
|
|
21
|
+
headers: pieces_framework_1.Property.Array({
|
|
22
|
+
displayName: 'Headers',
|
|
23
|
+
description: 'Optional: A list of headers to add to the first row. A table will be created from these headers.',
|
|
24
|
+
required: false
|
|
25
|
+
})
|
|
26
|
+
},
|
|
27
|
+
run(context) {
|
|
28
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
29
|
+
const { workbook_id, name, headers } = context.propsValue;
|
|
30
|
+
const { access_token } = context.auth;
|
|
31
|
+
// Step 1: Create the new worksheet
|
|
32
|
+
const createWorksheetResponse = yield pieces_common_1.httpClient.sendRequest({
|
|
33
|
+
method: pieces_common_1.HttpMethod.POST,
|
|
34
|
+
url: `${common_1.excelCommon.baseUrl}/items/${workbook_id}/workbook/worksheets/add`,
|
|
35
|
+
authentication: {
|
|
36
|
+
type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
|
|
37
|
+
token: access_token
|
|
38
|
+
},
|
|
39
|
+
body: Object.assign({}, (name ? { name } : {}))
|
|
40
|
+
});
|
|
41
|
+
const newWorksheetName = createWorksheetResponse.body.name;
|
|
42
|
+
// Step 2: If headers are provided, add them and create a table from them
|
|
43
|
+
if (headers && Array.isArray(headers) && headers.length > 0) {
|
|
44
|
+
const headersArray = headers;
|
|
45
|
+
// Calculate the table range, e.g., "A1:C1" for 3 headers
|
|
46
|
+
const endColumn = common_1.excelCommon.numberToColumnName(headersArray.length);
|
|
47
|
+
const address = `A1:${endColumn}1`;
|
|
48
|
+
// Add the header values to the first row of the new worksheet
|
|
49
|
+
yield pieces_common_1.httpClient.sendRequest({
|
|
50
|
+
method: pieces_common_1.HttpMethod.PATCH,
|
|
51
|
+
url: `${common_1.excelCommon.baseUrl}/items/${workbook_id}/workbook/worksheets/${newWorksheetName}/range(address='${address}')`,
|
|
52
|
+
authentication: {
|
|
53
|
+
type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
|
|
54
|
+
token: access_token
|
|
55
|
+
},
|
|
56
|
+
body: {
|
|
57
|
+
values: [headersArray] // Values must be a 2D array
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
// Create a table from the newly added header range
|
|
61
|
+
const createTableResponse = yield pieces_common_1.httpClient.sendRequest({
|
|
62
|
+
method: pieces_common_1.HttpMethod.POST,
|
|
63
|
+
url: `${common_1.excelCommon.baseUrl}/items/${workbook_id}/workbook/worksheets/${newWorksheetName}/tables/add`,
|
|
64
|
+
authentication: {
|
|
65
|
+
type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
|
|
66
|
+
token: access_token
|
|
67
|
+
},
|
|
68
|
+
body: {
|
|
69
|
+
address: address,
|
|
70
|
+
hasHeaders: true
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
// Return the result of the table creation
|
|
74
|
+
return createTableResponse.body;
|
|
75
|
+
}
|
|
76
|
+
// If no headers were provided, return the result of the worksheet creation
|
|
77
|
+
return createWorksheetResponse.body;
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
});
|
|
81
|
+
//# sourceMappingURL=create-worksheet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create-worksheet.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/microsoft-excel-365/src/lib/actions/create-worksheet.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export declare const findRowAction: import("@activepieces/pieces-framework").IAction<import("@activepieces/pieces-framework").OAuth2Property<import("@activepieces/pieces-framework").OAuth2Props>, {
|
|
2
|
+
workbook_id: import("@activepieces/pieces-framework").DropdownProperty<string, true>;
|
|
3
|
+
worksheet_id: import("@activepieces/pieces-framework").DropdownProperty<string, true>;
|
|
4
|
+
table_id: import("@activepieces/pieces-framework").DropdownProperty<string, true>;
|
|
5
|
+
lookup_column: import("@activepieces/pieces-framework").DropdownProperty<string, true>;
|
|
6
|
+
lookup_value: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
7
|
+
}>;
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.findRowAction = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const pieces_framework_1 = require("@activepieces/pieces-framework");
|
|
6
|
+
const pieces_common_1 = require("@activepieces/pieces-common");
|
|
7
|
+
const index_1 = require("../../index");
|
|
8
|
+
const common_1 = require("../common/common");
|
|
9
|
+
exports.findRowAction = (0, pieces_framework_1.createAction)({
|
|
10
|
+
auth: index_1.excelAuth,
|
|
11
|
+
name: 'find_row',
|
|
12
|
+
displayName: 'Find Row',
|
|
13
|
+
description: 'Locate a row by specifying a lookup column and value (e.g. find a row where “ID” = 123).',
|
|
14
|
+
props: {
|
|
15
|
+
workbook_id: common_1.excelCommon.workbook_id,
|
|
16
|
+
worksheet_id: common_1.excelCommon.worksheet_id,
|
|
17
|
+
table_id: common_1.excelCommon.table_id,
|
|
18
|
+
lookup_column: pieces_framework_1.Property.Dropdown({
|
|
19
|
+
displayName: 'Lookup Column',
|
|
20
|
+
description: 'The column to search in.',
|
|
21
|
+
required: true,
|
|
22
|
+
refreshers: ['workbook_id', 'table_id'],
|
|
23
|
+
options: (_a) => tslib_1.__awaiter(void 0, [_a], void 0, function* ({ auth, workbook_id, table_id }) {
|
|
24
|
+
if (!auth || !workbook_id || !table_id) {
|
|
25
|
+
return {
|
|
26
|
+
disabled: true,
|
|
27
|
+
options: [],
|
|
28
|
+
placeholder: 'Please select a workbook and table first.'
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
const authProp = auth;
|
|
32
|
+
const response = yield pieces_common_1.httpClient.sendRequest({
|
|
33
|
+
method: pieces_common_1.HttpMethod.GET,
|
|
34
|
+
url: `${common_1.excelCommon.baseUrl}/items/${workbook_id}/workbook/tables/${table_id}/columns`,
|
|
35
|
+
authentication: {
|
|
36
|
+
type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
|
|
37
|
+
token: authProp.access_token
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
return {
|
|
41
|
+
disabled: false,
|
|
42
|
+
options: response.body.value.map((column) => ({
|
|
43
|
+
label: column.name,
|
|
44
|
+
value: column.id
|
|
45
|
+
}))
|
|
46
|
+
};
|
|
47
|
+
})
|
|
48
|
+
}),
|
|
49
|
+
lookup_value: pieces_framework_1.Property.ShortText({
|
|
50
|
+
displayName: 'Lookup Value',
|
|
51
|
+
description: 'The value to find in the lookup column.',
|
|
52
|
+
required: true
|
|
53
|
+
})
|
|
54
|
+
},
|
|
55
|
+
run(context) {
|
|
56
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
57
|
+
const { workbook_id, table_id, lookup_column, lookup_value } = context.propsValue;
|
|
58
|
+
const { access_token } = context.auth;
|
|
59
|
+
const columnId = lookup_column;
|
|
60
|
+
const sanitizedValue = lookup_value.replace(/'/g, "''");
|
|
61
|
+
// Define the URL to clear the filter, which will be used in the 'finally' block
|
|
62
|
+
const clearFilterUrl = `${common_1.excelCommon.baseUrl}/items/${workbook_id}/workbook/tables/${table_id}/columns/${columnId}/filter/clear`;
|
|
63
|
+
try {
|
|
64
|
+
// Step 1: Apply the filter to the specified column
|
|
65
|
+
yield pieces_common_1.httpClient.sendRequest({
|
|
66
|
+
method: pieces_common_1.HttpMethod.POST,
|
|
67
|
+
url: `${common_1.excelCommon.baseUrl}/items/${workbook_id}/workbook/tables/${table_id}/columns/${columnId}/filter/apply`,
|
|
68
|
+
authentication: {
|
|
69
|
+
type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
|
|
70
|
+
token: access_token
|
|
71
|
+
},
|
|
72
|
+
body: {
|
|
73
|
+
criteria: {
|
|
74
|
+
criterion1: `=${sanitizedValue}`,
|
|
75
|
+
filterOn: 'Custom'
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
// Step 2: Get the visible rows (i.e., the filtered results)
|
|
80
|
+
const foundRowsResponse = yield pieces_common_1.httpClient.sendRequest({
|
|
81
|
+
method: pieces_common_1.HttpMethod.GET,
|
|
82
|
+
url: `${common_1.excelCommon.baseUrl}/items/${workbook_id}/workbook/tables/${table_id}/range/visibleView/rows`,
|
|
83
|
+
authentication: {
|
|
84
|
+
type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
|
|
85
|
+
token: access_token
|
|
86
|
+
}
|
|
87
|
+
});
|
|
88
|
+
// The result is the array of rows that matched the filter
|
|
89
|
+
return foundRowsResponse.body.value;
|
|
90
|
+
}
|
|
91
|
+
finally {
|
|
92
|
+
// Step 3: Clear the filter to restore the table to its original state.
|
|
93
|
+
// This runs regardless of whether the previous steps succeeded or failed.
|
|
94
|
+
yield pieces_common_1.httpClient.sendRequest({
|
|
95
|
+
method: pieces_common_1.HttpMethod.POST,
|
|
96
|
+
url: clearFilterUrl,
|
|
97
|
+
authentication: {
|
|
98
|
+
type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
|
|
99
|
+
token: access_token
|
|
100
|
+
},
|
|
101
|
+
body: {} // Clear action does not require a body
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
});
|
|
107
|
+
//# sourceMappingURL=find-row.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"find-row.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/microsoft-excel-365/src/lib/actions/find-row.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export declare const getRangeAction: import("@activepieces/pieces-framework").IAction<import("@activepieces/pieces-framework").OAuth2Property<import("@activepieces/pieces-framework").OAuth2Props>, {
|
|
2
|
+
workbook_id: import("@activepieces/pieces-framework").DropdownProperty<string, true>;
|
|
3
|
+
worksheet_id: import("@activepieces/pieces-framework").DropdownProperty<string, true>;
|
|
4
|
+
range: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
5
|
+
}>;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getRangeAction = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const pieces_framework_1 = require("@activepieces/pieces-framework");
|
|
6
|
+
const pieces_common_1 = require("@activepieces/pieces-common");
|
|
7
|
+
const index_1 = require("../../index");
|
|
8
|
+
const common_1 = require("../common/common");
|
|
9
|
+
exports.getRangeAction = (0, pieces_framework_1.createAction)({
|
|
10
|
+
auth: index_1.excelAuth,
|
|
11
|
+
name: 'get_range',
|
|
12
|
+
displayName: 'Get Cells in Range',
|
|
13
|
+
description: 'Retrieve the values in a given cell range (e.g., “A1:C10”).',
|
|
14
|
+
props: {
|
|
15
|
+
workbook_id: common_1.excelCommon.workbook_id,
|
|
16
|
+
worksheet_id: common_1.excelCommon.worksheet_id,
|
|
17
|
+
range: pieces_framework_1.Property.ShortText({
|
|
18
|
+
displayName: 'Range',
|
|
19
|
+
description: 'The range of cells to retrieve, in A1 notation (e.g., "A1:C10").',
|
|
20
|
+
required: true
|
|
21
|
+
})
|
|
22
|
+
},
|
|
23
|
+
run(context) {
|
|
24
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
25
|
+
const { workbook_id, worksheet_id, range } = context.propsValue;
|
|
26
|
+
const { access_token } = context.auth;
|
|
27
|
+
if (!/^[A-Z]+[1-9][0-9]*(:[A-Z]+[1-9][0-9]*)?$/.test(range)) {
|
|
28
|
+
throw new Error('Invalid range format. Please use A1 notation (e.g., "A1" or "A1:C5").');
|
|
29
|
+
}
|
|
30
|
+
const response = yield pieces_common_1.httpClient.sendRequest({
|
|
31
|
+
method: pieces_common_1.HttpMethod.GET,
|
|
32
|
+
url: `${common_1.excelCommon.baseUrl}/items/${workbook_id}/workbook/worksheets/${worksheet_id}/range(address='${range}')`,
|
|
33
|
+
authentication: {
|
|
34
|
+
type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
|
|
35
|
+
token: access_token
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
// The response body contains the workbookRange object with details
|
|
39
|
+
// like values, text, formulas, rowCount, etc.
|
|
40
|
+
return response.body;
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
//# sourceMappingURL=get-cells-in-range.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-cells-in-range.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/microsoft-excel-365/src/lib/actions/get-cells-in-range.ts"],"names":[],"mappings":";;;;AAAA,qEAAwE;AACxE,+DAIqC;AACrC,uCAAwC;AACxC,6CAA+C;AAElC,QAAA,cAAc,GAAG,IAAA,+BAAY,EAAC;IACzC,IAAI,EAAE,iBAAS;IACf,IAAI,EAAE,WAAW;IACjB,WAAW,EAAE,oBAAoB;IACjC,WAAW,EAAE,6DAA6D;IAC1E,KAAK,EAAE;QACL,WAAW,EAAE,oBAAW,CAAC,WAAW;QACpC,YAAY,EAAE,oBAAW,CAAC,YAAY;QACtC,KAAK,EAAE,2BAAQ,CAAC,SAAS,CAAC;YACxB,WAAW,EAAE,OAAO;YACpB,WAAW,EACT,kEAAkE;YACpE,QAAQ,EAAE,IAAI;SACf,CAAC;KACH;IACK,GAAG,CAAC,OAAO;;YACf,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;YAChE,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;YAEtC,IAAI,CAAC,0CAA0C,CAAC,IAAI,CAAC,KAAe,CAAC,EAAE,CAAC;gBACtE,MAAM,IAAI,KAAK,CACb,uEAAuE,CACxE,CAAC;YACJ,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAAC;gBAC5C,MAAM,EAAE,0BAAU,CAAC,GAAG;gBACtB,GAAG,EAAE,GAAG,oBAAW,CAAC,OAAO,UAAU,WAAW,wBAAwB,YAAY,mBAAmB,KAAK,IAAI;gBAChH,cAAc,EAAE;oBACd,IAAI,EAAE,kCAAkB,CAAC,YAAY;oBACrC,KAAK,EAAE,YAAY;iBACpB;aACF,CAAC,CAAC;YAEH,mEAAmE;YACnE,8CAA8C;YAC9C,OAAO,QAAQ,CAAC,IAAI,CAAC;QACvB,CAAC;KAAA;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export declare const getRowAction: import("@activepieces/pieces-framework").IAction<import("@activepieces/pieces-framework").OAuth2Property<import("@activepieces/pieces-framework").OAuth2Props>, {
|
|
2
|
+
workbook_id: import("@activepieces/pieces-framework").DropdownProperty<string, true>;
|
|
3
|
+
worksheet_id: import("@activepieces/pieces-framework").DropdownProperty<string, true>;
|
|
4
|
+
table_id: import("@activepieces/pieces-framework").DropdownProperty<string, true>;
|
|
5
|
+
row_id: import("@activepieces/pieces-framework").NumberProperty<true>;
|
|
6
|
+
}>;
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getRowAction = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const pieces_framework_1 = require("@activepieces/pieces-framework");
|
|
6
|
+
const pieces_common_1 = require("@activepieces/pieces-common");
|
|
7
|
+
const index_1 = require("../../index");
|
|
8
|
+
const common_1 = require("../common/common");
|
|
9
|
+
const delay = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
|
|
10
|
+
exports.getRowAction = (0, pieces_framework_1.createAction)({
|
|
11
|
+
auth: index_1.excelAuth,
|
|
12
|
+
name: 'getRowById',
|
|
13
|
+
displayName: 'Get Row by ID',
|
|
14
|
+
description: ' Retrieve the entire content of a row by its row ID.',
|
|
15
|
+
props: {
|
|
16
|
+
workbook_id: common_1.excelCommon.workbook_id,
|
|
17
|
+
worksheet_id: common_1.excelCommon.worksheet_id,
|
|
18
|
+
table_id: common_1.excelCommon.table_id,
|
|
19
|
+
row_id: pieces_framework_1.Property.Number({
|
|
20
|
+
displayName: 'Row ID (Index)',
|
|
21
|
+
description: 'The zero-based index of the row to retrieve (e.g., 0 for the first row, 1 for the second).',
|
|
22
|
+
required: true
|
|
23
|
+
})
|
|
24
|
+
},
|
|
25
|
+
run(context) {
|
|
26
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
27
|
+
var _a;
|
|
28
|
+
const { workbook_id, table_id, row_id } = context.propsValue;
|
|
29
|
+
const { access_token } = context.auth;
|
|
30
|
+
const maxRetries = 3;
|
|
31
|
+
let attempt = 0;
|
|
32
|
+
while (attempt < maxRetries) {
|
|
33
|
+
try {
|
|
34
|
+
const response = yield pieces_common_1.httpClient.sendRequest({
|
|
35
|
+
method: pieces_common_1.HttpMethod.GET,
|
|
36
|
+
url: `${common_1.excelCommon.baseUrl}/items/${workbook_id}/workbook/tables/${table_id}/rows/itemAt(index=${row_id})`,
|
|
37
|
+
authentication: {
|
|
38
|
+
type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
|
|
39
|
+
token: access_token
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
return response.body;
|
|
43
|
+
}
|
|
44
|
+
catch (error) {
|
|
45
|
+
const httpError = error;
|
|
46
|
+
if (((_a = httpError.response) === null || _a === void 0 ? void 0 : _a.status) === 503 && attempt < maxRetries - 1) {
|
|
47
|
+
const delayMs = Math.pow(2, attempt) * 1000;
|
|
48
|
+
console.warn(`Excel API is unavailable (503). Retrying after ${delayMs}ms... (Attempt ${attempt + 1}/${maxRetries})`);
|
|
49
|
+
yield delay(delayMs);
|
|
50
|
+
attempt++;
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
throw error;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
throw new Error('Failed to retrieve row after multiple retries due to API unavailability.');
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
//# sourceMappingURL=get-row-by-id.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-row-by-id.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/microsoft-excel-365/src/lib/actions/get-row-by-id.ts"],"names":[],"mappings":";;;;AAAA,qEAAwE;AACxE,+DAKqC;AACrC,uCAAwC;AACxC,6CAA+C;AAE/C,MAAM,KAAK,GAAG,CAAC,EAAU,EAAE,EAAE,CAAC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAEnE,QAAA,YAAY,GAAG,IAAA,+BAAY,EAAC;IACvC,IAAI,EAAE,iBAAS;IACf,IAAI,EAAE,YAAY;IAClB,WAAW,EAAE,eAAe;IAC5B,WAAW,EAAE,uDAAuD;IACpE,KAAK,EAAE;QACL,WAAW,EAAE,oBAAW,CAAC,WAAW;QACpC,YAAY,EAAE,oBAAW,CAAC,YAAY;QACtC,QAAQ,EAAE,oBAAW,CAAC,QAAQ;QAC9B,MAAM,EAAE,2BAAQ,CAAC,MAAM,CAAC;YACtB,WAAW,EAAE,gBAAgB;YAC7B,WAAW,EACT,4FAA4F;YAC9F,QAAQ,EAAE,IAAI;SACf,CAAC;KACH;IACK,GAAG,CAAC,OAAO;;;YACf,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;YAC7D,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;YAEtC,MAAM,UAAU,GAAG,CAAC,CAAC;YACrB,IAAI,OAAO,GAAG,CAAC,CAAC;YAEhB,OAAO,OAAO,GAAG,UAAU,EAAE,CAAC;gBAC5B,IAAI,CAAC;oBACH,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAAC;wBAC5C,MAAM,EAAE,0BAAU,CAAC,GAAG;wBACtB,GAAG,EAAE,GAAG,oBAAW,CAAC,OAAO,UAAU,WAAW,oBAAoB,QAAQ,sBAAsB,MAAM,GAAG;wBAC3G,cAAc,EAAE;4BACd,IAAI,EAAE,kCAAkB,CAAC,YAAY;4BACrC,KAAK,EAAE,YAAY;yBACpB;qBACF,CAAC,CAAC;oBACH,OAAO,QAAQ,CAAC,IAAI,CAAC;gBACvB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,SAAS,GAAG,KAAkB,CAAC;oBACrC,IAAI,CAAA,MAAA,SAAS,CAAC,QAAQ,0CAAE,MAAM,MAAK,GAAG,IAAI,OAAO,GAAG,UAAU,GAAG,CAAC,EAAE,CAAC;wBACnE,MAAM,OAAO,GAAG,SAAA,CAAC,EAAI,OAAO,CAAA,GAAG,IAAI,CAAC;wBACpC,OAAO,CAAC,IAAI,CACV,kDAAkD,OAAO,kBACvD,OAAO,GAAG,CACZ,IAAI,UAAU,GAAG,CAClB,CAAC;wBACF,MAAM,KAAK,CAAC,OAAO,CAAC,CAAC;wBACrB,OAAO,EAAE,CAAC;oBACZ,CAAC;yBAAM,CAAC;wBACN,MAAM,KAAK,CAAC;oBACd,CAAC;gBACH,CAAC;YACH,CAAC;YACD,MAAM,IAAI,KAAK,CACb,0EAA0E,CAC3E,CAAC;QACJ,CAAC;KAAA;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export declare const getWorksheetAction: import("@activepieces/pieces-framework").IAction<import("@activepieces/pieces-framework").OAuth2Property<import("@activepieces/pieces-framework").OAuth2Props>, {
|
|
2
|
+
workbook_id: import("@activepieces/pieces-framework").DropdownProperty<string, true>;
|
|
3
|
+
worksheet_id: import("@activepieces/pieces-framework").DropdownProperty<string, true>;
|
|
4
|
+
}>;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getWorksheetAction = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const pieces_framework_1 = require("@activepieces/pieces-framework");
|
|
6
|
+
const pieces_common_1 = require("@activepieces/pieces-common");
|
|
7
|
+
const index_1 = require("../../index");
|
|
8
|
+
const common_1 = require("../common/common");
|
|
9
|
+
exports.getWorksheetAction = (0, pieces_framework_1.createAction)({
|
|
10
|
+
auth: index_1.excelAuth,
|
|
11
|
+
name: 'get_worksheet',
|
|
12
|
+
displayName: 'Get Worksheet by ID',
|
|
13
|
+
description: 'Retrieve metadata of a worksheet by its ID.',
|
|
14
|
+
props: {
|
|
15
|
+
workbook_id: common_1.excelCommon.workbook_id,
|
|
16
|
+
worksheet_id: common_1.excelCommon.worksheet_id, // This dropdown provides the worksheet name as its value
|
|
17
|
+
},
|
|
18
|
+
run(context) {
|
|
19
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
20
|
+
const { workbook_id, worksheet_id } = context.propsValue;
|
|
21
|
+
const { access_token } = context.auth;
|
|
22
|
+
// The worksheet_id prop from excelCommon returns the worksheet's name,
|
|
23
|
+
// which can be used to identify it in the API URL as per the documentation ({id|name}).
|
|
24
|
+
const response = yield pieces_common_1.httpClient.sendRequest({
|
|
25
|
+
method: pieces_common_1.HttpMethod.GET,
|
|
26
|
+
url: `${common_1.excelCommon.baseUrl}/items/${workbook_id}/workbook/worksheets/${worksheet_id}`,
|
|
27
|
+
authentication: {
|
|
28
|
+
type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
|
|
29
|
+
token: access_token,
|
|
30
|
+
},
|
|
31
|
+
});
|
|
32
|
+
// The response body contains the workbookWorksheet object with its metadata.
|
|
33
|
+
return response.body;
|
|
34
|
+
});
|
|
35
|
+
},
|
|
36
|
+
});
|
|
37
|
+
//# sourceMappingURL=get-worksheet-by-id.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-worksheet-by-id.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/microsoft-excel-365/src/lib/actions/get-worksheet-by-id.ts"],"names":[],"mappings":";;;;AAAA,qEAA8D;AAC9D,+DAAyF;AACzF,uCAAwC;AACxC,6CAA+C;AAElC,QAAA,kBAAkB,GAAG,IAAA,+BAAY,EAAC;IAC3C,IAAI,EAAE,iBAAS;IACf,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE,qBAAqB;IAClC,WAAW,EAAE,6CAA6C;IAC1D,KAAK,EAAE;QACH,WAAW,EAAE,oBAAW,CAAC,WAAW;QACpC,YAAY,EAAE,oBAAW,CAAC,YAAY,EAAE,yDAAyD;KACpG;IACK,GAAG,CAAC,OAAO;;YACb,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;YACzD,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;YAEtC,uEAAuE;YACvE,wFAAwF;YACxF,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAAC;gBAC1C,MAAM,EAAE,0BAAU,CAAC,GAAG;gBACtB,GAAG,EAAE,GAAG,oBAAW,CAAC,OAAO,UAAU,WAAW,wBAAwB,YAAY,EAAE;gBACtF,cAAc,EAAE;oBACZ,IAAI,EAAE,kCAAkB,CAAC,YAAY;oBACrC,KAAK,EAAE,YAAY;iBACtB;aACJ,CAAC,CAAC;YAEH,6EAA6E;YAC7E,OAAO,QAAQ,CAAC,IAAI,CAAC;QACzB,CAAC;KAAA;CACJ,CAAC,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export declare const renameWorksheetAction: import("@activepieces/pieces-framework").IAction<import("@activepieces/pieces-framework").OAuth2Property<import("@activepieces/pieces-framework").OAuth2Props>, {
|
|
2
|
+
workbook_id: import("@activepieces/pieces-framework").DropdownProperty<string, true>;
|
|
3
|
+
worksheet_id: import("@activepieces/pieces-framework").DropdownProperty<string, true>;
|
|
4
|
+
new_name: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
5
|
+
}>;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.renameWorksheetAction = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const pieces_framework_1 = require("@activepieces/pieces-framework");
|
|
6
|
+
const pieces_common_1 = require("@activepieces/pieces-common");
|
|
7
|
+
const index_1 = require("../../index");
|
|
8
|
+
const common_1 = require("../common/common");
|
|
9
|
+
const namingRules = `
|
|
10
|
+
The new name for the worksheet. The name must adhere to the following rules:
|
|
11
|
+
- Cannot be blank.
|
|
12
|
+
- Cannot exceed 31 characters.
|
|
13
|
+
- Must not contain any of the following characters: \`/\`, \`\\\`, \`?\`, \`*\`, \`:\`, \`[\`, \`]\`.
|
|
14
|
+
- The name "History" is reserved by Excel and cannot be used.
|
|
15
|
+
`;
|
|
16
|
+
exports.renameWorksheetAction = (0, pieces_framework_1.createAction)({
|
|
17
|
+
auth: index_1.excelAuth,
|
|
18
|
+
name: 'rename_worksheet',
|
|
19
|
+
displayName: 'Rename Worksheet',
|
|
20
|
+
description: 'Change the name of an existing worksheet.',
|
|
21
|
+
props: {
|
|
22
|
+
workbook_id: common_1.excelCommon.workbook_id,
|
|
23
|
+
worksheet_id: common_1.excelCommon.worksheet_id,
|
|
24
|
+
new_name: pieces_framework_1.Property.ShortText({
|
|
25
|
+
displayName: 'New Worksheet Name',
|
|
26
|
+
description: namingRules,
|
|
27
|
+
required: true
|
|
28
|
+
})
|
|
29
|
+
},
|
|
30
|
+
run(context) {
|
|
31
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
32
|
+
const { workbook_id, worksheet_id, new_name } = context.propsValue;
|
|
33
|
+
const { access_token } = context.auth;
|
|
34
|
+
// The worksheet_id prop from excelCommon returns the worksheet's current name,
|
|
35
|
+
// which can be used to identify it in the API URL.
|
|
36
|
+
const response = yield pieces_common_1.httpClient.sendRequest({
|
|
37
|
+
method: pieces_common_1.HttpMethod.PATCH,
|
|
38
|
+
url: `${common_1.excelCommon.baseUrl}/items/${workbook_id}/workbook/worksheets/${worksheet_id}`,
|
|
39
|
+
authentication: {
|
|
40
|
+
type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
|
|
41
|
+
token: access_token
|
|
42
|
+
},
|
|
43
|
+
body: {
|
|
44
|
+
name: new_name
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
return response.body;
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
//# sourceMappingURL=rename-worksheet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rename-worksheet.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/microsoft-excel-365/src/lib/actions/rename-worksheet.ts"],"names":[],"mappings":";;;;AAAA,qEAAwE;AACxE,+DAIqC;AACrC,uCAAwC;AACxC,6CAA+C;AAE/C,MAAM,WAAW,GAAG;;;;;;CAMnB,CAAC;AAEW,QAAA,qBAAqB,GAAG,IAAA,+BAAY,EAAC;IAChD,IAAI,EAAE,iBAAS;IACf,IAAI,EAAE,kBAAkB;IACxB,WAAW,EAAE,kBAAkB;IAC/B,WAAW,EAAE,2CAA2C;IACxD,KAAK,EAAE;QACL,WAAW,EAAE,oBAAW,CAAC,WAAW;QACpC,YAAY,EAAE,oBAAW,CAAC,YAAY;QACtC,QAAQ,EAAE,2BAAQ,CAAC,SAAS,CAAC;YAC3B,WAAW,EAAE,oBAAoB;YACjC,WAAW,EAAE,WAAW;YACxB,QAAQ,EAAE,IAAI;SACf,CAAC;KACH;IACK,GAAG,CAAC,OAAO;;YACf,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;YACnE,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;YAEtC,+EAA+E;YAC/E,mDAAmD;YACnD,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAAC;gBAC5C,MAAM,EAAE,0BAAU,CAAC,KAAK;gBACxB,GAAG,EAAE,GAAG,oBAAW,CAAC,OAAO,UAAU,WAAW,wBAAwB,YAAY,EAAE;gBACtF,cAAc,EAAE;oBACd,IAAI,EAAE,kCAAkB,CAAC,YAAY;oBACrC,KAAK,EAAE,YAAY;iBACpB;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;iBACf;aACF,CAAC,CAAC;YAEH,OAAO,QAAQ,CAAC,IAAI,CAAC;QACvB,CAAC;KAAA;CACF,CAAC,CAAC"}
|
|
@@ -6,11 +6,11 @@ export declare const excelCommon: {
|
|
|
6
6
|
values: import("@activepieces/pieces-framework").DynamicProperties<true>;
|
|
7
7
|
table_values: import("@activepieces/pieces-framework").DynamicProperties<true>;
|
|
8
8
|
parent_folder: import("@activepieces/pieces-framework").DropdownProperty<string, true>;
|
|
9
|
-
getHeaders: (workbookId: string, accessToken: string, worksheetId: string) => Promise<string[]>;
|
|
9
|
+
getHeaders: (workbookId: string, accessToken: string, worksheetId: string) => Promise<(string | number | boolean)[]>;
|
|
10
10
|
getTableHeaders: (workbookId: string, accessToken: string, worksheetId: string, tableId: string) => Promise<any>;
|
|
11
11
|
getLastUsedRow: (workbookId: string, worksheetId: string, accessToken: string) => Promise<number>;
|
|
12
|
-
getLastUsedColumn: (workbookId: string, worksheetId: string, accessToken: string) => Promise<
|
|
13
|
-
getAllRows: (workbookId: string, worksheetId: string, accessToken: string) => Promise<
|
|
12
|
+
getLastUsedColumn: (workbookId: string, worksheetId: string, accessToken: string) => Promise<string>;
|
|
13
|
+
getAllRows: (workbookId: string, worksheetId: string, accessToken: string) => Promise<(string | number | boolean)[][]>;
|
|
14
14
|
numberToColumnName: (num: number) => string;
|
|
15
15
|
getAllFolders: (folderId: string, authToken: string, currentPath: string) => Promise<{
|
|
16
16
|
id: string;
|