@scopieflows/app-microsoft-excel-365 0.3.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.
Files changed (117) hide show
  1. package/README.md +7 -0
  2. package/package.json +30 -0
  3. package/src/i18n/ca.json +92 -0
  4. package/src/i18n/de.json +167 -0
  5. package/src/i18n/es.json +167 -0
  6. package/src/i18n/fr.json +167 -0
  7. package/src/i18n/hi.json +92 -0
  8. package/src/i18n/id.json +92 -0
  9. package/src/i18n/ja.json +167 -0
  10. package/src/i18n/nl.json +167 -0
  11. package/src/i18n/pt.json +167 -0
  12. package/src/i18n/ru.json +98 -0
  13. package/src/i18n/translation.json +167 -0
  14. package/src/i18n/vi.json +98 -0
  15. package/src/i18n/zh.json +167 -0
  16. package/src/index.d.ts +2 -0
  17. package/src/index.js +128 -0
  18. package/src/index.js.map +1 -0
  19. package/src/lib/actions/add-worksheet.d.ts +4 -0
  20. package/src/lib/actions/add-worksheet.js +43 -0
  21. package/src/lib/actions/add-worksheet.js.map +1 -0
  22. package/src/lib/actions/append-multiple-rows.d.ts +35 -0
  23. package/src/lib/actions/append-multiple-rows.js +225 -0
  24. package/src/lib/actions/append-multiple-rows.js.map +1 -0
  25. package/src/lib/actions/append-row.d.ts +6 -0
  26. package/src/lib/actions/append-row.js +57 -0
  27. package/src/lib/actions/append-row.js.map +1 -0
  28. package/src/lib/actions/append-table-rows.d.ts +6 -0
  29. package/src/lib/actions/append-table-rows.js +41 -0
  30. package/src/lib/actions/append-table-rows.js.map +1 -0
  31. package/src/lib/actions/clear-cells-by-range.d.ts +6 -0
  32. package/src/lib/actions/clear-cells-by-range.js +68 -0
  33. package/src/lib/actions/clear-cells-by-range.js.map +1 -0
  34. package/src/lib/actions/clear-column-by-index.d.ts +6 -0
  35. package/src/lib/actions/clear-column-by-index.js +74 -0
  36. package/src/lib/actions/clear-column-by-index.js.map +1 -0
  37. package/src/lib/actions/clear-row-by-id.d.ts +6 -0
  38. package/src/lib/actions/clear-row-by-id.js +70 -0
  39. package/src/lib/actions/clear-row-by-id.js.map +1 -0
  40. package/src/lib/actions/clear-worksheet.d.ts +5 -0
  41. package/src/lib/actions/clear-worksheet.js +52 -0
  42. package/src/lib/actions/clear-worksheet.js.map +1 -0
  43. package/src/lib/actions/convert-to-range.d.ts +5 -0
  44. package/src/lib/actions/convert-to-range.js +36 -0
  45. package/src/lib/actions/convert-to-range.js.map +1 -0
  46. package/src/lib/actions/create-table.d.ts +7 -0
  47. package/src/lib/actions/create-table.js +93 -0
  48. package/src/lib/actions/create-table.js.map +1 -0
  49. package/src/lib/actions/create-workbook.d.ts +4 -0
  50. package/src/lib/actions/create-workbook.js +45 -0
  51. package/src/lib/actions/create-workbook.js.map +1 -0
  52. package/src/lib/actions/create-worksheet.d.ts +5 -0
  53. package/src/lib/actions/create-worksheet.js +81 -0
  54. package/src/lib/actions/create-worksheet.js.map +1 -0
  55. package/src/lib/actions/delete-table.d.ts +5 -0
  56. package/src/lib/actions/delete-table.js +36 -0
  57. package/src/lib/actions/delete-table.js.map +1 -0
  58. package/src/lib/actions/delete-workbook.d.ts +3 -0
  59. package/src/lib/actions/delete-workbook.js +34 -0
  60. package/src/lib/actions/delete-workbook.js.map +1 -0
  61. package/src/lib/actions/delete-worksheet.d.ts +4 -0
  62. package/src/lib/actions/delete-worksheet.js +35 -0
  63. package/src/lib/actions/delete-worksheet.js.map +1 -0
  64. package/src/lib/actions/find-row.d.ts +7 -0
  65. package/src/lib/actions/find-row.js +108 -0
  66. package/src/lib/actions/find-row.js.map +1 -0
  67. package/src/lib/actions/get-cells-in-range.d.ts +5 -0
  68. package/src/lib/actions/get-cells-in-range.js +44 -0
  69. package/src/lib/actions/get-cells-in-range.js.map +1 -0
  70. package/src/lib/actions/get-row-by-id.d.ts +6 -0
  71. package/src/lib/actions/get-row-by-id.js +61 -0
  72. package/src/lib/actions/get-row-by-id.js.map +1 -0
  73. package/src/lib/actions/get-table-columns.d.ts +6 -0
  74. package/src/lib/actions/get-table-columns.js +47 -0
  75. package/src/lib/actions/get-table-columns.js.map +1 -0
  76. package/src/lib/actions/get-table-rows.d.ts +6 -0
  77. package/src/lib/actions/get-table-rows.js +47 -0
  78. package/src/lib/actions/get-table-rows.js.map +1 -0
  79. package/src/lib/actions/get-workbooks.d.ts +3 -0
  80. package/src/lib/actions/get-workbooks.js +49 -0
  81. package/src/lib/actions/get-workbooks.js.map +1 -0
  82. package/src/lib/actions/get-worksheet-by-id.d.ts +4 -0
  83. package/src/lib/actions/get-worksheet-by-id.js +37 -0
  84. package/src/lib/actions/get-worksheet-by-id.js.map +1 -0
  85. package/src/lib/actions/get-worksheet-rows.d.ts +7 -0
  86. package/src/lib/actions/get-worksheet-rows.js +69 -0
  87. package/src/lib/actions/get-worksheet-rows.js.map +1 -0
  88. package/src/lib/actions/get-worksheets.d.ts +5 -0
  89. package/src/lib/actions/get-worksheets.js +61 -0
  90. package/src/lib/actions/get-worksheets.js.map +1 -0
  91. package/src/lib/actions/get-wroksheet-columns.d.ts +4 -0
  92. package/src/lib/actions/get-wroksheet-columns.js +35 -0
  93. package/src/lib/actions/get-wroksheet-columns.js.map +1 -0
  94. package/src/lib/actions/lookup-table-column.d.ts +8 -0
  95. package/src/lib/actions/lookup-table-column.js +78 -0
  96. package/src/lib/actions/lookup-table-column.js.map +1 -0
  97. package/src/lib/actions/rename-worksheet.d.ts +5 -0
  98. package/src/lib/actions/rename-worksheet.js +51 -0
  99. package/src/lib/actions/rename-worksheet.js.map +1 -0
  100. package/src/lib/actions/update-row.d.ts +7 -0
  101. package/src/lib/actions/update-row.js +58 -0
  102. package/src/lib/actions/update-row.js.map +1 -0
  103. package/src/lib/common/common.d.ts +22 -0
  104. package/src/lib/common/common.js +325 -0
  105. package/src/lib/common/common.js.map +1 -0
  106. package/src/lib/trigger/new-row-added.d.ts +18 -0
  107. package/src/lib/trigger/new-row-added.js +87 -0
  108. package/src/lib/trigger/new-row-added.js.map +1 -0
  109. package/src/lib/trigger/new-row-in-table.d.ts +22 -0
  110. package/src/lib/trigger/new-row-in-table.js +139 -0
  111. package/src/lib/trigger/new-row-in-table.js.map +1 -0
  112. package/src/lib/trigger/new-worksheet.d.ts +10 -0
  113. package/src/lib/trigger/new-worksheet.js +94 -0
  114. package/src/lib/trigger/new-worksheet.js.map +1 -0
  115. package/src/lib/trigger/updated-row.d.ts +18 -0
  116. package/src/lib/trigger/updated-row.js +129 -0
  117. package/src/lib/trigger/updated-row.js.map +1 -0
@@ -0,0 +1,108 @@
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("@scopieflows/pieces-framework");
6
+ const pieces_common_1 = require("@scopieflows/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
+ auth: index_1.excelAuth,
20
+ displayName: 'Lookup Column',
21
+ description: 'The column to search in.',
22
+ required: true,
23
+ refreshers: ['workbook_id', 'table_id'],
24
+ options: (_a) => tslib_1.__awaiter(void 0, [_a], void 0, function* ({ auth, workbook_id, table_id }) {
25
+ if (!auth || !workbook_id || !table_id) {
26
+ return {
27
+ disabled: true,
28
+ options: [],
29
+ placeholder: 'Please select a workbook and table first.'
30
+ };
31
+ }
32
+ const authProp = auth;
33
+ const response = yield pieces_common_1.httpClient.sendRequest({
34
+ method: pieces_common_1.HttpMethod.GET,
35
+ url: `${common_1.excelCommon.baseUrl}/items/${workbook_id}/workbook/tables/${table_id}/columns`,
36
+ authentication: {
37
+ type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
38
+ token: authProp.access_token
39
+ }
40
+ });
41
+ return {
42
+ disabled: false,
43
+ options: response.body.value.map((column) => ({
44
+ label: column.name,
45
+ value: column.id
46
+ }))
47
+ };
48
+ })
49
+ }),
50
+ lookup_value: pieces_framework_1.Property.ShortText({
51
+ displayName: 'Lookup Value',
52
+ description: 'The value to find in the lookup column.',
53
+ required: true
54
+ })
55
+ },
56
+ run(context) {
57
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
58
+ const { workbook_id, table_id, lookup_column, lookup_value } = context.propsValue;
59
+ const { access_token } = context.auth;
60
+ const columnId = lookup_column;
61
+ const sanitizedValue = lookup_value.replace(/'/g, "''");
62
+ // Define the URL to clear the filter, which will be used in the 'finally' block
63
+ const clearFilterUrl = `${common_1.excelCommon.baseUrl}/items/${workbook_id}/workbook/tables/${table_id}/columns/${columnId}/filter/clear`;
64
+ try {
65
+ // Step 1: Apply the filter to the specified column
66
+ yield pieces_common_1.httpClient.sendRequest({
67
+ method: pieces_common_1.HttpMethod.POST,
68
+ url: `${common_1.excelCommon.baseUrl}/items/${workbook_id}/workbook/tables/${table_id}/columns/${columnId}/filter/apply`,
69
+ authentication: {
70
+ type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
71
+ token: access_token
72
+ },
73
+ body: {
74
+ criteria: {
75
+ criterion1: `=${sanitizedValue}`,
76
+ filterOn: 'Custom'
77
+ }
78
+ }
79
+ });
80
+ // Step 2: Get the visible rows (i.e., the filtered results)
81
+ const foundRowsResponse = yield pieces_common_1.httpClient.sendRequest({
82
+ method: pieces_common_1.HttpMethod.GET,
83
+ url: `${common_1.excelCommon.baseUrl}/items/${workbook_id}/workbook/tables/${table_id}/range/visibleView/rows`,
84
+ authentication: {
85
+ type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
86
+ token: access_token
87
+ }
88
+ });
89
+ // The result is the array of rows that matched the filter
90
+ return foundRowsResponse.body.value;
91
+ }
92
+ finally {
93
+ // Step 3: Clear the filter to restore the table to its original state.
94
+ // This runs regardless of whether the previous steps succeeded or failed.
95
+ yield pieces_common_1.httpClient.sendRequest({
96
+ method: pieces_common_1.HttpMethod.POST,
97
+ url: clearFilterUrl,
98
+ authentication: {
99
+ type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
100
+ token: access_token
101
+ },
102
+ body: {} // Clear action does not require a body
103
+ });
104
+ }
105
+ });
106
+ }
107
+ });
108
+ //# 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("@scopieflows/pieces-framework").IAction<import("@scopieflows/pieces-framework").OAuth2Property<import("@scopieflows/pieces-framework").OAuth2Props>, {
2
+ workbook_id: import("@scopieflows/pieces-framework").DropdownProperty<string, true, import("@scopieflows/pieces-framework").OAuth2Property<import("@scopieflows/pieces-framework").OAuth2Props>>;
3
+ worksheet_id: import("@scopieflows/pieces-framework").DropdownProperty<string, true, import("@scopieflows/pieces-framework").OAuth2Property<import("@scopieflows/pieces-framework").OAuth2Props>>;
4
+ range: import("@scopieflows/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("@scopieflows/pieces-framework");
6
+ const pieces_common_1 = require("@scopieflows/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,oEAAuE;AACvE,8DAIoC;AACpC,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("@scopieflows/pieces-framework").IAction<import("@scopieflows/pieces-framework").OAuth2Property<import("@scopieflows/pieces-framework").OAuth2Props>, {
2
+ workbook_id: import("@scopieflows/pieces-framework").DropdownProperty<string, true, import("@scopieflows/pieces-framework").OAuth2Property<import("@scopieflows/pieces-framework").OAuth2Props>>;
3
+ worksheet_id: import("@scopieflows/pieces-framework").DropdownProperty<string, true, import("@scopieflows/pieces-framework").OAuth2Property<import("@scopieflows/pieces-framework").OAuth2Props>>;
4
+ table_id: import("@scopieflows/pieces-framework").DropdownProperty<string, true, import("@scopieflows/pieces-framework").OAuth2Property<import("@scopieflows/pieces-framework").OAuth2Props>>;
5
+ row_id: import("@scopieflows/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("@scopieflows/pieces-framework");
6
+ const pieces_common_1 = require("@scopieflows/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,oEAAuE;AACvE,8DAKoC;AACpC,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,6 @@
1
+ export declare const getTableColumnsAction: import("@scopieflows/pieces-framework").IAction<import("@scopieflows/pieces-framework").OAuth2Property<import("@scopieflows/pieces-framework").OAuth2Props>, {
2
+ workbook_id: import("@scopieflows/pieces-framework").DropdownProperty<string, true, import("@scopieflows/pieces-framework").OAuth2Property<import("@scopieflows/pieces-framework").OAuth2Props>>;
3
+ worksheet_id: import("@scopieflows/pieces-framework").DropdownProperty<string, true, import("@scopieflows/pieces-framework").OAuth2Property<import("@scopieflows/pieces-framework").OAuth2Props>>;
4
+ table: import("@scopieflows/pieces-framework").DropdownProperty<string, true, import("@scopieflows/pieces-framework").OAuth2Property<import("@scopieflows/pieces-framework").OAuth2Props>>;
5
+ limit: import("@scopieflows/pieces-framework").NumberProperty<false>;
6
+ }>;
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getTableColumnsAction = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const pieces_framework_1 = require("@scopieflows/pieces-framework");
6
+ const common_1 = require("../common/common");
7
+ const __1 = require("../..");
8
+ const pieces_common_1 = require("@scopieflows/pieces-common");
9
+ exports.getTableColumnsAction = (0, pieces_framework_1.createAction)({
10
+ auth: __1.excelAuth,
11
+ name: 'get_table_columns',
12
+ description: 'List columns of a table in a worksheet',
13
+ displayName: 'Get Table Columns',
14
+ props: {
15
+ workbook_id: common_1.excelCommon.workbook_id,
16
+ worksheet_id: common_1.excelCommon.worksheet_id,
17
+ table: common_1.excelCommon.table_id,
18
+ limit: pieces_framework_1.Property.Number({
19
+ displayName: 'Limit',
20
+ description: 'Limit the number of columns retrieved',
21
+ required: false,
22
+ }),
23
+ },
24
+ run(_a) {
25
+ return tslib_1.__awaiter(this, arguments, void 0, function* ({ propsValue, auth }) {
26
+ const workbookId = propsValue['workbook_id'];
27
+ const worksheetId = propsValue['worksheet_id'];
28
+ const tableId = propsValue['table'];
29
+ const limit = propsValue['limit'];
30
+ let url = `${common_1.excelCommon.baseUrl}/items/${workbookId}/workbook/worksheets/${worksheetId}/tables/${tableId}/columns`;
31
+ if (limit) {
32
+ url += `?$top=${limit}`;
33
+ }
34
+ const response = yield pieces_common_1.httpClient.sendRequest({
35
+ method: pieces_common_1.HttpMethod.GET,
36
+ url: url,
37
+ authentication: {
38
+ type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
39
+ token: auth['access_token'],
40
+ },
41
+ });
42
+ const columnNames = response.body['value'].map((column) => column.name);
43
+ return columnNames;
44
+ });
45
+ },
46
+ });
47
+ //# sourceMappingURL=get-table-columns.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-table-columns.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/microsoft-excel-365/src/lib/actions/get-table-columns.ts"],"names":[],"mappings":";;;;AAAA,oEAAuE;AACvE,6CAA+C;AAC/C,6BAAkC;AAClC,8DAIoC;AAEvB,QAAA,qBAAqB,GAAG,IAAA,+BAAY,EAAC;IAChD,IAAI,EAAE,aAAS;IACf,IAAI,EAAE,mBAAmB;IACzB,WAAW,EAAE,wCAAwC;IACrD,WAAW,EAAE,mBAAmB;IAChC,KAAK,EAAE;QACL,WAAW,EAAE,oBAAW,CAAC,WAAW;QACpC,YAAY,EAAE,oBAAW,CAAC,YAAY;QACtC,KAAK,EAAE,oBAAW,CAAC,QAAQ;QAC3B,KAAK,EAAE,2BAAQ,CAAC,MAAM,CAAC;YACrB,WAAW,EAAE,OAAO;YACpB,WAAW,EAAE,uCAAuC;YACpD,QAAQ,EAAE,KAAK;SAChB,CAAC;KACH;IACK,GAAG;qEAAC,EAAE,UAAU,EAAE,IAAI,EAAE;YAC5B,MAAM,UAAU,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC;YAC7C,MAAM,WAAW,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC;YAC/C,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;YACpC,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;YAElC,IAAI,GAAG,GAAG,GAAG,oBAAW,CAAC,OAAO,UAAU,UAAU,wBAAwB,WAAW,WAAW,OAAO,UAAU,CAAC;YAEpH,IAAI,KAAK,EAAE,CAAC;gBACV,GAAG,IAAI,SAAS,KAAK,EAAE,CAAC;YAC1B,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAAC;gBAC5C,MAAM,EAAE,0BAAU,CAAC,GAAG;gBACtB,GAAG,EAAE,GAAG;gBACR,cAAc,EAAE;oBACd,IAAI,EAAE,kCAAkB,CAAC,YAAY;oBACrC,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC;iBAC5B;aACF,CAAC,CAAC;YAEH,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAC5C,CAAC,MAAqB,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CACvC,CAAC;YAEF,OAAO,WAAW,CAAC;QACrB,CAAC;KAAA;CACF,CAAC,CAAC"}
@@ -0,0 +1,6 @@
1
+ export declare const getTableRowsAction: import("@scopieflows/pieces-framework").IAction<import("@scopieflows/pieces-framework").OAuth2Property<import("@scopieflows/pieces-framework").OAuth2Props>, {
2
+ workbook_id: import("@scopieflows/pieces-framework").DropdownProperty<string, true, import("@scopieflows/pieces-framework").OAuth2Property<import("@scopieflows/pieces-framework").OAuth2Props>>;
3
+ worksheet_id: import("@scopieflows/pieces-framework").DropdownProperty<string, true, import("@scopieflows/pieces-framework").OAuth2Property<import("@scopieflows/pieces-framework").OAuth2Props>>;
4
+ table: import("@scopieflows/pieces-framework").DropdownProperty<string, true, import("@scopieflows/pieces-framework").OAuth2Property<import("@scopieflows/pieces-framework").OAuth2Props>>;
5
+ limit: import("@scopieflows/pieces-framework").NumberProperty<false>;
6
+ }>;
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getTableRowsAction = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const pieces_framework_1 = require("@scopieflows/pieces-framework");
6
+ const common_1 = require("../common/common");
7
+ const __1 = require("../..");
8
+ const pieces_common_1 = require("@scopieflows/pieces-common");
9
+ exports.getTableRowsAction = (0, pieces_framework_1.createAction)({
10
+ auth: __1.excelAuth,
11
+ name: 'get_table_rows',
12
+ description: 'List rows of a table in a worksheet',
13
+ displayName: 'Get Table Rows',
14
+ props: {
15
+ workbook_id: common_1.excelCommon.workbook_id,
16
+ worksheet_id: common_1.excelCommon.worksheet_id,
17
+ table: common_1.excelCommon.table_id,
18
+ limit: pieces_framework_1.Property.Number({
19
+ displayName: 'Limit',
20
+ description: 'Limit the number of rows retrieved',
21
+ required: false,
22
+ }),
23
+ },
24
+ run(_a) {
25
+ return tslib_1.__awaiter(this, arguments, void 0, function* ({ propsValue, auth }) {
26
+ const workbookId = propsValue['workbook_id'];
27
+ const worksheetId = propsValue['worksheet_id'];
28
+ const tableId = propsValue['table'];
29
+ const limit = propsValue['limit'];
30
+ let url = `${common_1.excelCommon.baseUrl}/items/${workbookId}/workbook/worksheets/${worksheetId}/tables/${tableId}/rows`;
31
+ if (limit) {
32
+ url += `?$top=${limit}`;
33
+ }
34
+ const response = yield pieces_common_1.httpClient.sendRequest({
35
+ method: pieces_common_1.HttpMethod.GET,
36
+ url: url,
37
+ authentication: {
38
+ type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
39
+ token: auth['access_token'],
40
+ },
41
+ });
42
+ const rowsValues = response.body['value'].map((row) => row.values[0]);
43
+ return rowsValues;
44
+ });
45
+ },
46
+ });
47
+ //# sourceMappingURL=get-table-rows.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-table-rows.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/microsoft-excel-365/src/lib/actions/get-table-rows.ts"],"names":[],"mappings":";;;;AAAA,oEAAuE;AACvE,6CAA+C;AAC/C,6BAAkC;AAClC,8DAIoC;AAEvB,QAAA,kBAAkB,GAAG,IAAA,+BAAY,EAAC;IAC7C,IAAI,EAAE,aAAS;IACf,IAAI,EAAE,gBAAgB;IACtB,WAAW,EAAE,qCAAqC;IAClD,WAAW,EAAE,gBAAgB;IAC7B,KAAK,EAAE;QACL,WAAW,EAAE,oBAAW,CAAC,WAAW;QACpC,YAAY,EAAE,oBAAW,CAAC,YAAY;QACtC,KAAK,EAAE,oBAAW,CAAC,QAAQ;QAC3B,KAAK,EAAE,2BAAQ,CAAC,MAAM,CAAC;YACrB,WAAW,EAAE,OAAO;YACpB,WAAW,EAAE,oCAAoC;YACjD,QAAQ,EAAE,KAAK;SAChB,CAAC;KACH;IACK,GAAG;qEAAC,EAAE,UAAU,EAAE,IAAI,EAAE;YAC5B,MAAM,UAAU,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC;YAC7C,MAAM,WAAW,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC;YAC/C,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;YACpC,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;YAElC,IAAI,GAAG,GAAG,GAAG,oBAAW,CAAC,OAAO,UAAU,UAAU,wBAAwB,WAAW,WAAW,OAAO,OAAO,CAAC;YAEjH,IAAI,KAAK,EAAE,CAAC;gBACV,GAAG,IAAI,SAAS,KAAK,EAAE,CAAC;YAC1B,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAAC;gBAC5C,MAAM,EAAE,0BAAU,CAAC,GAAG;gBACtB,GAAG,EAAE,GAAG;gBACR,cAAc,EAAE;oBACd,IAAI,EAAE,kCAAkB,CAAC,YAAY;oBACrC,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC;iBAC5B;aACF,CAAC,CAAC;YAEH,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAC3C,CAAC,GAAsB,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAC1C,CAAC;YAEF,OAAO,UAAU,CAAC;QACpB,CAAC;KAAA;CACF,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ export declare const getWorkbooksAction: import("@scopieflows/pieces-framework").IAction<import("@scopieflows/pieces-framework").OAuth2Property<import("@scopieflows/pieces-framework").OAuth2Props>, {
2
+ limit: import("@scopieflows/pieces-framework").NumberProperty<false>;
3
+ }>;
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getWorkbooksAction = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const pieces_framework_1 = require("@scopieflows/pieces-framework");
6
+ const pieces_common_1 = require("@scopieflows/pieces-common");
7
+ const index_1 = require("../../index");
8
+ const common_1 = require("../common/common");
9
+ exports.getWorkbooksAction = (0, pieces_framework_1.createAction)({
10
+ auth: index_1.excelAuth,
11
+ name: 'get_workbooks',
12
+ description: 'Retrieve a list of workbooks',
13
+ displayName: 'Get Workbooks',
14
+ props: {
15
+ limit: pieces_framework_1.Property.Number({
16
+ displayName: 'Limit',
17
+ description: 'Limits the number of workbooks returned, returns all workbooks if empty',
18
+ required: false,
19
+ }),
20
+ },
21
+ run(_a) {
22
+ return tslib_1.__awaiter(this, arguments, void 0, function* ({ propsValue, auth }) {
23
+ const limit = propsValue['limit'];
24
+ const queryParams = {
25
+ $filter: "file ne null and file/mimeType eq 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'",
26
+ };
27
+ if (limit !== null && limit !== undefined) {
28
+ queryParams.$top = limit.toString();
29
+ }
30
+ const request = {
31
+ method: pieces_common_1.HttpMethod.GET,
32
+ url: `${common_1.excelCommon.baseUrl}/root/search(q='.xlsx')`,
33
+ authentication: {
34
+ type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
35
+ token: auth['access_token'],
36
+ },
37
+ queryParams: queryParams,
38
+ };
39
+ const response = yield pieces_common_1.httpClient.sendRequest(request);
40
+ const workbooks = response.body['value'].map((item) => ({
41
+ id: item.id,
42
+ name: item.name,
43
+ webUrl: item.webUrl,
44
+ }));
45
+ return workbooks;
46
+ });
47
+ },
48
+ });
49
+ //# sourceMappingURL=get-workbooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-workbooks.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/microsoft-excel-365/src/lib/actions/get-workbooks.ts"],"names":[],"mappings":";;;;AAAA,oEAAuE;AACvE,8DAIoC;AACpC,uCAAwC;AACxC,6CAA+C;AAElC,QAAA,kBAAkB,GAAG,IAAA,+BAAY,EAAC;IAC7C,IAAI,EAAE,iBAAS;IACf,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE,8BAA8B;IAC3C,WAAW,EAAE,eAAe;IAC5B,KAAK,EAAE;QACL,KAAK,EAAE,2BAAQ,CAAC,MAAM,CAAC;YACrB,WAAW,EAAE,OAAO;YACpB,WAAW,EACT,yEAAyE;YAC3E,QAAQ,EAAE,KAAK;SAChB,CAAC;KACH;IACK,GAAG;qEAAC,EAAE,UAAU,EAAE,IAAI,EAAE;YAC5B,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;YAElC,MAAM,WAAW,GAAQ;gBACvB,OAAO,EACL,uGAAuG;aAC1G,CAAC;YAEF,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBAC1C,WAAW,CAAC,IAAI,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;YACtC,CAAC;YAED,MAAM,OAAO,GAAG;gBACd,MAAM,EAAE,0BAAU,CAAC,GAAG;gBACtB,GAAG,EAAE,GAAG,oBAAW,CAAC,OAAO,yBAAyB;gBACpD,cAAc,EAAE;oBACd,IAAI,EAAE,kCAAkB,CAAC,YAAqB;oBAC9C,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC;iBAC5B;gBACD,WAAW,EAAE,WAAW;aACzB,CAAC;YAEF,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YACvD,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAC1C,CAAC,IAAyC,EAAE,EAAE,CAAC,CAAC;gBAC9C,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,MAAM,EAAE,IAAI,CAAC,MAAM;aACpB,CAAC,CACH,CAAC;YAEF,OAAO,SAAS,CAAC;QACnB,CAAC;KAAA;CACF,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ export declare const getWorksheetAction: import("@scopieflows/pieces-framework").IAction<import("@scopieflows/pieces-framework").OAuth2Property<import("@scopieflows/pieces-framework").OAuth2Props>, {
2
+ workbook_id: import("@scopieflows/pieces-framework").DropdownProperty<string, true, import("@scopieflows/pieces-framework").OAuth2Property<import("@scopieflows/pieces-framework").OAuth2Props>>;
3
+ worksheet_id: import("@scopieflows/pieces-framework").DropdownProperty<string, true, import("@scopieflows/pieces-framework").OAuth2Property<import("@scopieflows/pieces-framework").OAuth2Props>>;
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("@scopieflows/pieces-framework");
6
+ const pieces_common_1 = require("@scopieflows/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,oEAA6D;AAC7D,8DAAwF;AACxF,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,7 @@
1
+ export declare const getWorksheetRowsAction: import("@scopieflows/pieces-framework").IAction<import("@scopieflows/pieces-framework").OAuth2Property<import("@scopieflows/pieces-framework").OAuth2Props>, {
2
+ workbook_id: import("@scopieflows/pieces-framework").DropdownProperty<string, true, import("@scopieflows/pieces-framework").OAuth2Property<import("@scopieflows/pieces-framework").OAuth2Props>>;
3
+ worksheet_id: import("@scopieflows/pieces-framework").DropdownProperty<string, true, import("@scopieflows/pieces-framework").OAuth2Property<import("@scopieflows/pieces-framework").OAuth2Props>>;
4
+ range: import("@scopieflows/pieces-framework").ShortTextProperty<false>;
5
+ headerRow: import("@scopieflows/pieces-framework").NumberProperty<false>;
6
+ firstDataRow: import("@scopieflows/pieces-framework").NumberProperty<false>;
7
+ }>;
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getWorksheetRowsAction = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const pieces_framework_1 = require("@scopieflows/pieces-framework");
6
+ const pieces_common_1 = require("@scopieflows/pieces-common");
7
+ const common_1 = require("../common/common");
8
+ const index_1 = require("../../index");
9
+ exports.getWorksheetRowsAction = (0, pieces_framework_1.createAction)({
10
+ auth: index_1.excelAuth,
11
+ name: 'get_worksheet_rows',
12
+ description: 'Retrieve rows from a worksheet',
13
+ displayName: 'Get Worksheet Rows',
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: 'Range of the rows to retrieve (e.g., A2:B2)',
20
+ required: false,
21
+ }),
22
+ headerRow: pieces_framework_1.Property.Number({
23
+ displayName: 'Header Row',
24
+ description: 'Row number of the header',
25
+ required: false,
26
+ }),
27
+ firstDataRow: pieces_framework_1.Property.Number({
28
+ displayName: 'First Data Row',
29
+ description: 'Row number of the first data row',
30
+ required: false,
31
+ }),
32
+ },
33
+ run(_a) {
34
+ return tslib_1.__awaiter(this, arguments, void 0, function* ({ propsValue, auth }) {
35
+ const workbookId = propsValue['workbook_id'];
36
+ const worksheetId = propsValue['worksheet_id'];
37
+ const range = propsValue['range'];
38
+ const headerRow = propsValue['headerRow'];
39
+ const firstDataRow = propsValue['firstDataRow'];
40
+ let url = `${common_1.excelCommon.baseUrl}/items/${workbookId}/workbook/worksheets/${worksheetId}/`;
41
+ if (!range) {
42
+ url += 'usedRange(valuesOnly=true)';
43
+ }
44
+ else {
45
+ url += `range(address = '${range}')`;
46
+ }
47
+ const response = yield pieces_common_1.httpClient.sendRequest({
48
+ method: pieces_common_1.HttpMethod.GET,
49
+ url: url,
50
+ authentication: {
51
+ type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
52
+ token: auth['access_token'],
53
+ },
54
+ });
55
+ const rows = response.body['values'];
56
+ if (headerRow && firstDataRow) {
57
+ return rows.slice(firstDataRow - 1).map((row) => {
58
+ const obj = {};
59
+ rows[headerRow - 1].forEach((header, colIndex) => {
60
+ obj[String(header)] = row[Number(colIndex)];
61
+ });
62
+ return obj;
63
+ });
64
+ }
65
+ return rows;
66
+ });
67
+ },
68
+ });
69
+ //# sourceMappingURL=get-worksheet-rows.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-worksheet-rows.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/microsoft-excel-365/src/lib/actions/get-worksheet-rows.ts"],"names":[],"mappings":";;;;AAAA,oEAAuE;AACvE,8DAIoC;AACpC,6CAA+C;AAC/C,uCAAwC;AAE3B,QAAA,sBAAsB,GAAG,IAAA,+BAAY,EAAC;IACjD,IAAI,EAAE,iBAAS;IACf,IAAI,EAAE,oBAAoB;IAC1B,WAAW,EAAE,gCAAgC;IAC7C,WAAW,EAAE,oBAAoB;IACjC,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,EAAE,6CAA6C;YAC1D,QAAQ,EAAE,KAAK;SAChB,CAAC;QACF,SAAS,EAAE,2BAAQ,CAAC,MAAM,CAAC;YACzB,WAAW,EAAE,YAAY;YACzB,WAAW,EAAE,0BAA0B;YACvC,QAAQ,EAAE,KAAK;SAChB,CAAC;QACF,YAAY,EAAE,2BAAQ,CAAC,MAAM,CAAC;YAC5B,WAAW,EAAE,gBAAgB;YAC7B,WAAW,EAAE,kCAAkC;YAC/C,QAAQ,EAAE,KAAK;SAChB,CAAC;KACH;IACK,GAAG;qEAAC,EAAE,UAAU,EAAE,IAAI,EAAE;YAC5B,MAAM,UAAU,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC;YAC7C,MAAM,WAAW,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC;YAC/C,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;YAClC,MAAM,SAAS,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;YAC1C,MAAM,YAAY,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC;YAEhD,IAAI,GAAG,GAAG,GAAG,oBAAW,CAAC,OAAO,UAAU,UAAU,wBAAwB,WAAW,GAAG,CAAC;YAE3F,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,GAAG,IAAI,4BAA4B,CAAC;YACtC,CAAC;iBAAM,CAAC;gBACN,GAAG,IAAI,oBAAoB,KAAK,IAAI,CAAC;YACvC,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAAC;gBAC5C,MAAM,EAAE,0BAAU,CAAC,GAAG;gBACtB,GAAG,EAAE,GAAG;gBACR,cAAc,EAAE;oBACd,IAAI,EAAE,kCAAkB,CAAC,YAAY;oBACrC,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC;iBAC5B;aACF,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACrC,IAAI,SAAS,IAAI,YAAY,EAAE,CAAC;gBAC9B,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAU,EAAE,EAAE;oBACrD,MAAM,GAAG,GAA2B,EAAE,CAAC;oBACvC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,OAAO,CACzB,CAAC,MAAW,EAAE,QAAyB,EAAE,EAAE;wBACzC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;oBAC9C,CAAC,CACF,CAAC;oBACF,OAAO,GAAG,CAAC;gBACb,CAAC,CAAC,CAAC;YACL,CAAC;YAED,OAAO,IAAI,CAAC;QACd,CAAC;KAAA;CACF,CAAC,CAAC"}
@@ -0,0 +1,5 @@
1
+ export declare const getWorksheetsAction: import("@scopieflows/pieces-framework").IAction<import("@scopieflows/pieces-framework").OAuth2Property<import("@scopieflows/pieces-framework").OAuth2Props>, {
2
+ workbook: import("@scopieflows/pieces-framework").DropdownProperty<string, true, import("@scopieflows/pieces-framework").OAuth2Property<import("@scopieflows/pieces-framework").OAuth2Props>>;
3
+ returnAll: import("@scopieflows/pieces-framework").CheckboxProperty<false>;
4
+ limit: import("@scopieflows/pieces-framework").NumberProperty<false>;
5
+ }>;