microsoft-graph 2.34.0 → 2.35.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. package/dist/cjs/services/objectMapping.d.ts +100 -0
  2. package/dist/cjs/services/objectMapping.d.ts.map +1 -0
  3. package/dist/cjs/services/objectMapping.js +143 -0
  4. package/dist/cjs/tasks/insertWorkbookRangeRow.d.ts +2 -2
  5. package/dist/cjs/tasks/insertWorkbookRangeRow.js +2 -2
  6. package/dist/cjs/tasks/insertWorkbookRangeRows.d.ts +3 -3
  7. package/dist/cjs/tasks/insertWorkbookRangeRows.js +3 -3
  8. package/dist/cjs/tasks/iterateWorkbookRangeRows.d.ts +1 -1
  9. package/dist/cjs/tasks/iterateWorkbookRangeRows.js +1 -1
  10. package/dist/cjs/tasks/readWorkbookRangeFirstRow.d.ts +2 -2
  11. package/dist/cjs/tasks/readWorkbookRangeFirstRow.js +2 -2
  12. package/dist/cjs/tasks/readWorkbookRangeRows.d.ts +2 -2
  13. package/dist/cjs/tasks/readWorkbookRangeRows.js +2 -2
  14. package/dist/cjs/tasks/updateWorkbookRangeFirstRow.d.ts +3 -3
  15. package/dist/cjs/tasks/updateWorkbookRangeFirstRow.js +3 -3
  16. package/dist/cjs/tasks/updateWorkbookRangeRows.d.ts +15 -6
  17. package/dist/cjs/tasks/updateWorkbookRangeRows.d.ts.map +1 -1
  18. package/dist/cjs/tasks/updateWorkbookRangeRows.js +16 -7
  19. package/dist/esm/services/objectMapping.d.ts +100 -0
  20. package/dist/esm/services/objectMapping.d.ts.map +1 -0
  21. package/dist/esm/services/objectMapping.js +132 -0
  22. package/dist/esm/tasks/insertWorkbookRangeRow.d.ts +2 -2
  23. package/dist/esm/tasks/insertWorkbookRangeRow.js +2 -2
  24. package/dist/esm/tasks/insertWorkbookRangeRows.d.ts +3 -3
  25. package/dist/esm/tasks/insertWorkbookRangeRows.js +3 -3
  26. package/dist/esm/tasks/iterateWorkbookRangeRows.d.ts +1 -1
  27. package/dist/esm/tasks/iterateWorkbookRangeRows.js +1 -1
  28. package/dist/esm/tasks/readWorkbookRangeFirstRow.d.ts +2 -2
  29. package/dist/esm/tasks/readWorkbookRangeFirstRow.js +2 -2
  30. package/dist/esm/tasks/readWorkbookRangeRows.d.ts +2 -2
  31. package/dist/esm/tasks/readWorkbookRangeRows.js +2 -2
  32. package/dist/esm/tasks/updateWorkbookRangeFirstRow.d.ts +3 -3
  33. package/dist/esm/tasks/updateWorkbookRangeFirstRow.js +3 -3
  34. package/dist/esm/tasks/updateWorkbookRangeRows.d.ts +15 -6
  35. package/dist/esm/tasks/updateWorkbookRangeRows.d.ts.map +1 -1
  36. package/dist/esm/tasks/updateWorkbookRangeRows.js +16 -7
  37. package/docs/api/README.md +8 -9
  38. package/docs/api/{insertRow.md → insertWorkbookRangeRow.md} +3 -3
  39. package/docs/api/{insertRows.md → insertWorkbookRangeRows.md} +5 -5
  40. package/docs/api/{iterateRows.md → iterateWorkbookRangeRows.md} +2 -2
  41. package/docs/api/objectMapping.md +225 -0
  42. package/docs/api/{readFirstRow.md → readWorkbookRangeFirstRow.md} +3 -3
  43. package/docs/api/{readRows.md → readWorkbookRangeRows.md} +4 -4
  44. package/docs/api/{updateFirstRow.md → updateWorkbookRangeFirstRow.md} +4 -4
  45. package/docs/api/{updateRows.md → updateWorkbookRangeRows.md} +19 -10
  46. package/docs/api/writeWorkbookRows.md +1 -1
  47. package/package.json +26 -51
  48. package/dist/cjs/models/DataSource.d.ts +0 -49
  49. package/dist/cjs/models/DataSource.d.ts.map +0 -1
  50. package/dist/cjs/models/DataSource.js +0 -8
  51. package/dist/cjs/services/dataSource.d.ts +0 -69
  52. package/dist/cjs/services/dataSource.d.ts.map +0 -1
  53. package/dist/cjs/services/dataSource.js +0 -193
  54. package/dist/esm/models/DataSource.d.ts +0 -49
  55. package/dist/esm/models/DataSource.d.ts.map +0 -1
  56. package/dist/esm/models/DataSource.js +0 -7
  57. package/dist/esm/services/dataSource.d.ts +0 -69
  58. package/dist/esm/services/dataSource.d.ts.map +0 -1
  59. package/dist/esm/services/dataSource.js +0 -182
  60. package/docs/api/DataSource-1.md +0 -191
  61. package/docs/api/dataSource.md +0 -204
@@ -0,0 +1 @@
1
+ {"version":3,"file":"objectMapping.d.ts","sourceRoot":"","sources":["../../../src/services/objectMapping.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,IAAI,EAAa,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAGpE;;;GAGG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI;KAC7B,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG;QACjB;;;WAGG;QACH,aAAa,EAAE,MAAM,CAAC;QAEtB;;;;;;;WAOG;QACH,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAE9B;;;;;;;WAOG;QACH,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;KAC9B;CACD,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,qBAAqB,CAAC,CAAC,IAAI;KACrC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG;QACjB,YAAY,EAAE,YAAY,CAAC;QAC3B,MAAM,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7B,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;KAC7B;CACD,CAAC;AAEF;;;;;;GAMG;AACH,wBAAuB,uBAAuB,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,GAAG,aAAa,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAW3I;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,UAAU,GAAG,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAsC1H;AAED;;;;;;GAMG;AACH,wBAAuB,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,GAAG,aAAa,CAAC,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,qBAAqB,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAI3I;AAED;;;;;;GAMG;AACH,wBAAuB,aAAa,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,qBAAqB,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAIlJ;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,qBAAqB,CAAC,CAAC,CAAC,KAe5E;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,qBAAqB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,CAW3F"}
@@ -0,0 +1,132 @@
1
+ /**
2
+ * Automated conversion of rows to objects and vice versa based on defined mapping rules.
3
+ * @module objectMapping
4
+ * @category Services
5
+ */
6
+ import InvalidArgumentError from "../errors/InvalidArgumentError.js";
7
+ import { generalCellFormat } from "./cell.js";
8
+ /**
9
+ * Converts spreadsheet rows to objects using the first row as a header.
10
+ * @template T The object type to yield.
11
+ * @param rows Iterable or async iterable of cell arrays (rows).
12
+ * @param rules Mapping rules for converting columns to object properties.
13
+ * @yields Objects of type T, one for each data row.
14
+ */
15
+ export async function* rowsToObjectsWithHeader(rows, rules) {
16
+ let mapping = null;
17
+ for await (const row of rows) {
18
+ if (!mapping) {
19
+ mapping = createObjectMapping(row, rules);
20
+ continue;
21
+ }
22
+ yield rowToObject(row, mapping);
23
+ }
24
+ }
25
+ /**
26
+ * Creates a mapping from a header row to object properties based on provided rules.
27
+ * @template T The object type being mapped.
28
+ * @param headerRow The header row, used to determine column offsets.
29
+ * @param rules The mapping rules for converting cells to object properties.
30
+ * @returns The resolved mapping for use in row/object conversion.
31
+ * @throws {InvalidArgumentError} If a column matching a pattern is not found in the header row.
32
+ */
33
+ export function createObjectMapping(headerRow, rules) {
34
+ const headStrings = headerRow.map((c) => (typeof c === "object" ? c.text : c));
35
+ const resolved = {};
36
+ for (const key in rules) {
37
+ if (!Object.prototype.hasOwnProperty.call(rules, key)) {
38
+ continue;
39
+ }
40
+ const rule = rules[key];
41
+ const offset = headStrings.findIndex((h) => rule.columnPattern.test(h));
42
+ if (offset === -1) {
43
+ throw new InvalidArgumentError(`Column matching "${rule.columnPattern}" not found in header.`);
44
+ }
45
+ const columnOffset = offset;
46
+ const defaultDecode = (cell) => cell.value;
47
+ const defaultEncode = (prop) => ({
48
+ value: prop,
49
+ text: prop?.toString() ?? "",
50
+ format: generalCellFormat,
51
+ merge: {},
52
+ alignment: {},
53
+ borders: {},
54
+ fill: {},
55
+ font: {},
56
+ });
57
+ const decode = rule.decode ?? defaultDecode;
58
+ const encode = rule.encode ?? defaultEncode;
59
+ resolved[key] = {
60
+ columnOffset,
61
+ decode,
62
+ encode,
63
+ };
64
+ }
65
+ return resolved;
66
+ }
67
+ /**
68
+ * Converts spreadsheet rows to objects using a provided mapping.
69
+ * @template T The object type to yield.
70
+ * @param rows Iterable or async iterable of cell arrays (rows).
71
+ * @param mapping The resolved mapping for row/object conversion.
72
+ * @yields Objects of type T, one for each row.
73
+ */
74
+ export async function* rowsToObjects(rows, mapping) {
75
+ for await (const row of rows) {
76
+ yield rowToObject(row, mapping);
77
+ }
78
+ }
79
+ /**
80
+ * Converts objects to spreadsheet rows using a provided mapping.
81
+ * @template T The object type to convert.
82
+ * @param objects Iterable or async iterable of objects.
83
+ * @param mapping The resolved mapping for object/row conversion.
84
+ * @yields Arrays of partial cells, one for each object.
85
+ */
86
+ export async function* objectsToRows(objects, mapping) {
87
+ for await (const obj of objects) {
88
+ yield objectToRow(obj, mapping);
89
+ }
90
+ }
91
+ /**
92
+ * Converts a row of cells to an object using the provided mapping.
93
+ * @template T The object type to return.
94
+ * @param cells The array of cells representing a row.
95
+ * @param rules The resolved mapping for row/object conversion.
96
+ * @returns The object of type T.
97
+ * @throws {InvalidArgumentError} If a required column is missing in the row.
98
+ */
99
+ export function rowToObject(cells, rules) {
100
+ const record = {};
101
+ for (const key in rules) {
102
+ if (!Object.prototype.hasOwnProperty.call(rules, key)) {
103
+ continue;
104
+ }
105
+ const rule = rules[key];
106
+ const cell = cells[rule.columnOffset];
107
+ if (!cell) {
108
+ throw new InvalidArgumentError(`Column at index ${rule.columnOffset} is missing for key "${key}".`);
109
+ }
110
+ record[key] = rule.decode(cell);
111
+ }
112
+ return record;
113
+ }
114
+ /**
115
+ * Converts an object to a row of cells using the provided mapping.
116
+ * @template T The object type to convert.
117
+ * @param record The object to convert.
118
+ * @param mapper The resolved mapping for object/row conversion.
119
+ * @returns An array of partial cells representing the row.
120
+ */
121
+ export function objectToRow(record, mapper) {
122
+ const row = [];
123
+ for (const key in mapper) {
124
+ if (!Object.prototype.hasOwnProperty.call(mapper, key)) {
125
+ continue;
126
+ }
127
+ const { columnOffset, encode } = mapper[key];
128
+ const prop = record[key];
129
+ row[columnOffset] = encode(prop);
130
+ }
131
+ return row;
132
+ }
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Inserts a single row into a workbook range.
3
- * @module insertRow
3
+ * @module insertWorkbookRangeRow
4
4
  * @category Tasks
5
5
  * @experimental
6
6
  */
@@ -12,7 +12,7 @@ import type { WorkbookRangeRef } from "../models/WorkbookRange.ts";
12
12
  * @param row Array of cells to insert as a single row.
13
13
  * @experimental
14
14
  * @example
15
- * await insertRow(originRef, [{ value: "A1" }, { value: "B1" }, { value: "C1" }]);
15
+ * await insertWorkbookRangeRow(originRef, [{ value: "A1" }, { value: "B1" }, { value: "C1" }]);
16
16
  */
17
17
  export default function insertWorkbookRangeRow(originRef: WorkbookRangeRef, row: Partial<Cell>[]): Promise<void>;
18
18
  //# sourceMappingURL=insertWorkbookRangeRow.d.ts.map
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Inserts a single row into a workbook range.
3
- * @module insertRow
3
+ * @module insertWorkbookRangeRow
4
4
  * @category Tasks
5
5
  * @experimental
6
6
  */
@@ -11,7 +11,7 @@ import insertWorkbookRangeRows from "./insertWorkbookRangeRows.js";
11
11
  * @param row Array of cells to insert as a single row.
12
12
  * @experimental
13
13
  * @example
14
- * await insertRow(originRef, [{ value: "A1" }, { value: "B1" }, { value: "C1" }]);
14
+ * await insertWorkbookRangeRow(originRef, [{ value: "A1" }, { value: "B1" }, { value: "C1" }]);
15
15
  */
16
16
  export default async function insertWorkbookRangeRow(originRef, row) {
17
17
  await insertWorkbookRangeRows(originRef, [row]);
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Inserts rows into a workbook range.
3
- * @module insertRows
3
+ * @module insertWorkbookRangeRows
4
4
  * @category Tasks
5
5
  * @experimental
6
6
  */
@@ -14,14 +14,14 @@ import type { WorkbookRangeRef } from "../models/WorkbookRange.ts";
14
14
  * @experimental
15
15
  * @example
16
16
  * // Basic example:
17
- * await insertRows(originRef, [
17
+ * await insertWorkbookRangeRows(originRef, [
18
18
  * [{ value: "A1" }, { value: "B1" }, { value: "C1" }],
19
19
  * [{ value: "A2" }, { value: "B2" }, { value: "C2" }],
20
20
  * [{ value: "A3" }, { value: "B3" }, { value: "C3" }],
21
21
  * ])
22
22
  *
23
23
  * // Advanced example with cell formatting:
24
- * await insertRows(originRef, [
24
+ * await insertWorkbookRangeRows(originRef, [
25
25
  * [{ value: "A1", format: { fontColor: "red" } }, { value: "B1" }, { value: "C1" }],
26
26
  * [{ value: "A2" }, { value: "B2", format: { fontColor: "blue" } }, { value: "C2" }],
27
27
  * [{ value: "A3" }, { value: "B3" }, { value: "C3", format: { fontColor: "green" } }],
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Inserts rows into a workbook range.
3
- * @module insertRows
3
+ * @module insertWorkbookRangeRows
4
4
  * @category Tasks
5
5
  * @experimental
6
6
  */
@@ -17,14 +17,14 @@ import updateWorkbookRangeRows from "./updateWorkbookRangeRows.js";
17
17
  * @experimental
18
18
  * @example
19
19
  * // Basic example:
20
- * await insertRows(originRef, [
20
+ * await insertWorkbookRangeRows(originRef, [
21
21
  * [{ value: "A1" }, { value: "B1" }, { value: "C1" }],
22
22
  * [{ value: "A2" }, { value: "B2" }, { value: "C2" }],
23
23
  * [{ value: "A3" }, { value: "B3" }, { value: "C3" }],
24
24
  * ])
25
25
  *
26
26
  * // Advanced example with cell formatting:
27
- * await insertRows(originRef, [
27
+ * await insertWorkbookRangeRows(originRef, [
28
28
  * [{ value: "A1", format: { fontColor: "red" } }, { value: "B1" }, { value: "C1" }],
29
29
  * [{ value: "A2" }, { value: "B2", format: { fontColor: "blue" } }, { value: "C2" }],
30
30
  * [{ value: "A3" }, { value: "B3" }, { value: "C3", format: { fontColor: "green" } }],
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Iterate over the rows in a given worksheet range.
3
- * @module iterateRows
3
+ * @module iterateWorkbookRangeRows
4
4
  * @category Tasks
5
5
  * @experimental
6
6
  */
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Iterate over the rows in a given worksheet range.
3
- * @module iterateRows
3
+ * @module iterateWorkbookRangeRows
4
4
  * @category Tasks
5
5
  * @experimental
6
6
  */
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Read the first row from a given workbook range.
3
- * @module readFirstRow
3
+ * @module readWorkbookRangeFirstRow
4
4
  * @category Tasks
5
5
  * @experimental
6
6
  */
@@ -12,7 +12,7 @@ import type { WorkbookRangeRef } from "../models/WorkbookRange.ts";
12
12
  * @returns A promise that resolves to an array of cells in the first row.
13
13
  * @remarks Particularly useful for reading header rows.
14
14
  * @example
15
- * const firstRow = await readFirstRow(rangeRef);
15
+ * const firstRow = await readWorkbookRangeFirstRow(rangeRef);
16
16
  */
17
17
  export default function readWorkbookRangeFirstRow(rangeRef: WorkbookRangeRef, scope?: import("../models/Cell.ts").CellScope): Promise<Cell[]>;
18
18
  //# sourceMappingURL=readWorkbookRangeFirstRow.d.ts.map
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Read the first row from a given workbook range.
3
- * @module readFirstRow
3
+ * @module readWorkbookRangeFirstRow
4
4
  * @category Tasks
5
5
  * @experimental
6
6
  */
@@ -14,7 +14,7 @@ import { iterateWorkbookRangeRows } from "./iterateWorkbookRangeRows.js";
14
14
  * @returns A promise that resolves to an array of cells in the first row.
15
15
  * @remarks Particularly useful for reading header rows.
16
16
  * @example
17
- * const firstRow = await readFirstRow(rangeRef);
17
+ * const firstRow = await readWorkbookRangeFirstRow(rangeRef);
18
18
  */
19
19
  export default async function readWorkbookRangeFirstRow(rangeRef, scope = defaultCellScope) {
20
20
  const firstRowRef = subRange(rangeRef, 0, 1);
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Read all rows from a given workbook range.
3
- * @module readRows
3
+ * @module readWorkbookRangeRows
4
4
  * @category Tasks
5
5
  * @experimental
6
6
  */
@@ -14,7 +14,7 @@ import type { WorkbookRangeRef } from "../models/WorkbookRange.ts";
14
14
  * @remarks Where practical, prefer using {@link iterateWorkbookRangeRows} for more efficient memory usage.
15
15
  * @experimental
16
16
  * @example
17
- * const rows = await readRows(rangeRef);
17
+ * const rows = await readWorkbookRangeRows(rangeRef);
18
18
  */
19
19
  export default function readWorkbookRangeRows(rangeRef: WorkbookRangeRef, scope?: import("../models/Cell.ts").CellScope): Promise<Cell[][]>;
20
20
  //# sourceMappingURL=readWorkbookRangeRows.d.ts.map
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Read all rows from a given workbook range.
3
- * @module readRows
3
+ * @module readWorkbookRangeRows
4
4
  * @category Tasks
5
5
  * @experimental
6
6
  */
@@ -14,7 +14,7 @@ import { iterateWorkbookRangeRows } from "./iterateWorkbookRangeRows.js";
14
14
  * @remarks Where practical, prefer using {@link iterateWorkbookRangeRows} for more efficient memory usage.
15
15
  * @experimental
16
16
  * @example
17
- * const rows = await readRows(rangeRef);
17
+ * const rows = await readWorkbookRangeRows(rangeRef);
18
18
  */
19
19
  export default async function readWorkbookRangeRows(rangeRef, scope = defaultCellScope) {
20
20
  const rows = [];
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Update first row in a given workbook range.
3
- * @module updateFirstRow
3
+ * @module updateWorkbookRangeFirstRow
4
4
  * @category Tasks
5
5
  * @experimental
6
6
  */
@@ -14,10 +14,10 @@ import type { WorkbookRangeRef } from "../models/WorkbookRange.ts";
14
14
  * @experimental
15
15
  * @example
16
16
  * // Basic example:
17
- * await updateFirstRow(rangeRef, [{ value: 1 }, { value: 2 }]);
17
+ * await updateWorkbookRangeFirstRow(rangeRef, [{ value: 1 }, { value: 2 }]);
18
18
  *
19
19
  * // Advanced example with cell formatting:
20
- * await updateRows(rangeRef, [
20
+ * await updateWorkbookRangeFirstRow(rangeRef, [
21
21
  * { value: "Column A", style: { alignment: { horizontal: "Right" }, font: { bold: true } } },
22
22
  * { value: "Column B", style: { alignment: { horizontal: "Right" }, font: { bold: true } } }
23
23
  * ]);
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Update first row in a given workbook range.
3
- * @module updateFirstRow
3
+ * @module updateWorkbookRangeFirstRow
4
4
  * @category Tasks
5
5
  * @experimental
6
6
  */
@@ -13,10 +13,10 @@ import updateWorkbookRangeRows from "./updateWorkbookRangeRows.js";
13
13
  * @experimental
14
14
  * @example
15
15
  * // Basic example:
16
- * await updateFirstRow(rangeRef, [{ value: 1 }, { value: 2 }]);
16
+ * await updateWorkbookRangeFirstRow(rangeRef, [{ value: 1 }, { value: 2 }]);
17
17
  *
18
18
  * // Advanced example with cell formatting:
19
- * await updateRows(rangeRef, [
19
+ * await updateWorkbookRangeFirstRow(rangeRef, [
20
20
  * { value: "Column A", style: { alignment: { horizontal: "Right" }, font: { bold: true } } },
21
21
  * { value: "Column B", style: { alignment: { horizontal: "Right" }, font: { bold: true } } }
22
22
  * ]);
@@ -9,18 +9,27 @@ import type { WorkbookRangeRef } from "../models/WorkbookRange.ts";
9
9
  * @experimental
10
10
  * @example
11
11
  * // Basic example:
12
- * await updateRows(rangeRef, [
12
+ * await updateWorkbookRangeRows(rangeRef, [
13
13
  * [{ value: 1 }, { value: 2 }],
14
14
  * [{ value: 3 }, { value: 4 }],
15
15
  * [{ value: 5 }, { value: 6 }],
16
16
  * ]);
17
17
  *
18
18
  * // Advanced example with cell formatting:
19
- * await updateRows(rangeRef, [
20
- * [{ value: "Column A", style: { alignment: { horizontal: "Right" }, font: { bold: true } } }, { value: "Column B", style: { alignment: { horizontal: "Right" }, font: { bold: true } } }],
21
- * [{ value: 1, format: accountingCellFormat }, { value: "A" }],
22
- * [{ value: 2, format: accountingCellFormat }, { value: "B" }],
23
- * ]);
19
+ * await updateWorkbookRangeRows(rangeRef, [
20
+ * [
21
+ * { value: "Column A", alignment: { horizontal: "Right" }, font: { bold: true, color: "#ffffff" as Color }, fill: { color: "#000000" as Color } },
22
+ * { value: "Column B", alignment: { horizontal: "Right" }, font: { bold: true, color: "#ffffff" as Color }, fill: { color: "#000000" as Color } },
23
+ * ],
24
+ * [
25
+ * { value: 1, format: accountingCellFormat },
26
+ * { value: "A" },
27
+ * ],
28
+ * [
29
+ * { value: 2, format: accountingCellFormat },
30
+ * { value: "B" }],
31
+ * ],
32
+ * );
24
33
  */
25
34
  export default function updateWorkbookRangeRows(originRef: WorkbookRangeRef, cells: Iterable<Partial<Cell>[]> | AsyncIterable<Partial<Cell>[]>, maxCellsPerOperation?: number | null): Promise<void>;
26
35
  //# sourceMappingURL=updateWorkbookRangeRows.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"updateWorkbookRangeRows.d.ts","sourceRoot":"","sources":["../../../src/tasks/updateWorkbookRangeRows.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAWnE;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAA8B,uBAAuB,CAAC,SAAS,EAAE,gBAAgB,EAAE,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,oBAAoB,GAAE,MAAM,GAAG,IAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAwB/M"}
1
+ {"version":3,"file":"updateWorkbookRangeRows.d.ts","sourceRoot":"","sources":["../../../src/tasks/updateWorkbookRangeRows.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAWnE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,wBAA8B,uBAAuB,CAAC,SAAS,EAAE,gBAAgB,EAAE,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,oBAAoB,GAAE,MAAM,GAAG,IAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAwB/M"}
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Update rows in a given workbook range.
3
- * @module updateRows
3
+ * @module updateWorkbookRangeRows
4
4
  * @category Tasks
5
5
  * @experimental
6
6
  */
@@ -24,18 +24,27 @@ import { camelCaseToPascalCase } from "../services/stringCaseConversion.js";
24
24
  * @experimental
25
25
  * @example
26
26
  * // Basic example:
27
- * await updateRows(rangeRef, [
27
+ * await updateWorkbookRangeRows(rangeRef, [
28
28
  * [{ value: 1 }, { value: 2 }],
29
29
  * [{ value: 3 }, { value: 4 }],
30
30
  * [{ value: 5 }, { value: 6 }],
31
31
  * ]);
32
32
  *
33
33
  * // Advanced example with cell formatting:
34
- * await updateRows(rangeRef, [
35
- * [{ value: "Column A", style: { alignment: { horizontal: "Right" }, font: { bold: true } } }, { value: "Column B", style: { alignment: { horizontal: "Right" }, font: { bold: true } } }],
36
- * [{ value: 1, format: accountingCellFormat }, { value: "A" }],
37
- * [{ value: 2, format: accountingCellFormat }, { value: "B" }],
38
- * ]);
34
+ * await updateWorkbookRangeRows(rangeRef, [
35
+ * [
36
+ * { value: "Column A", alignment: { horizontal: "Right" }, font: { bold: true, color: "#ffffff" as Color }, fill: { color: "#000000" as Color } },
37
+ * { value: "Column B", alignment: { horizontal: "Right" }, font: { bold: true, color: "#ffffff" as Color }, fill: { color: "#000000" as Color } },
38
+ * ],
39
+ * [
40
+ * { value: 1, format: accountingCellFormat },
41
+ * { value: "A" },
42
+ * ],
43
+ * [
44
+ * { value: 2, format: accountingCellFormat },
45
+ * { value: "B" }],
46
+ * ],
47
+ * );
39
48
  */
40
49
  export default async function updateWorkbookRangeRows(originRef, cells, maxCellsPerOperation = null) {
41
50
  let maxRowsPerOperation = maxCellsPerOperation;
@@ -31,7 +31,6 @@
31
31
  | [Color](Color.md) | Color has a hexadecimal representation (ie #ffffff"). |
32
32
  | [Column](Column.md) | Column pointers. |
33
33
  | [Context](Context-1.md) | Context of requests. |
34
- | [DataSource](DataSource-1.md) | Tooling for easily creating, updating, and deleting items in a worksheet or range. |
35
34
  | [Drive](Drive-1.md) | Drive pointers. |
36
35
  | [DriveItem](DriveItem-1.md) | Drive item pointers. |
37
36
  | [FontName](FontName.md) | Name of a font. |
@@ -126,13 +125,13 @@
126
125
  | [cartesianAddress](cartesianAddress.md) | Utilities for converting between A1 addresses and Cartesian coordinates. |
127
126
  | [CellFormat](CellFormat.md) | Cell utilities. |
128
127
  | [context](context.md) | Context creation and management utilities for Microsoft Graph API authentication. |
129
- | [dataSource](dataSource.md) | Tooling for easily creating, updating, and deleting items in a worksheet or range. |
130
128
  | [drive](drive.md) | Utilities for working with Microsoft Graph Drive references and operations. |
131
129
  | [driveItem](driveItem.md) | Utilities for working with Microsoft Graph Drive Items (files and folders). |
132
130
  | [environmentVariable](environmentVariable.md) | Utilities for accessing environment variables with error handling and fallbacks. |
133
131
  | [http](http.md) | HTTP request utilities for Microsoft Graph API, with proxy support. |
134
132
  | [httpStatus](httpStatus.md) | Utilities for analyzing HTTP status codes for Microsoft Graph API responses. |
135
133
  | [Iteration](Iteration.md) | Utilities for iterating over AsyncIterables. |
134
+ | [objectMapping](objectMapping.md) | Automated conversion of rows to objects and vice versa based on defined mapping rules. |
136
135
  | [operationId](operationId.md) | Utilities for converting between operation IDs and indexes. |
137
136
  | [operationInvoker](operationInvoker.md) | Invoke operations, potentially as parallel or sequential batches. |
138
137
  | [random](random.md) | Utilities for generating random values for spreadsheet and API operations. |
@@ -156,12 +155,12 @@
156
155
  | [createWorkbookAndStartSession](createWorkbookAndStartSession.md) | Create a new workbook and open a session for that workbook. |
157
156
  | [downloadDriveItemContent](downloadDriveItemContent.md) | Download a drive item and save it to the local disk. |
158
157
  | [getWorkbookWorksheetByName](getWorkbookWorksheetByName-1.md) | Get a worksheet by its name. |
159
- | [insertRow](insertRow.md) | Inserts a single row into a workbook range. |
160
- | [insertRows](insertRows.md) | Inserts rows into a workbook range. |
161
- | [iterateRows](iterateRows.md) | Iterate over the rows in a given worksheet range. |
158
+ | [insertWorkbookRangeRow](insertWorkbookRangeRow.md) | Inserts a single row into a workbook range. |
159
+ | [insertWorkbookRangeRows](insertWorkbookRangeRows.md) | Inserts rows into a workbook range. |
160
+ | [iterateWorkbookRangeRows](iterateWorkbookRangeRows.md) | Iterate over the rows in a given worksheet range. |
162
161
  | [listDriveItems](listDriveItems.md) | List drive items in a drive or a drive item. |
163
- | [readFirstRow](readFirstRow.md) | Read the first row from a given workbook range. |
164
- | [readRows](readRows.md) | Read all rows from a given workbook range. |
162
+ | [readWorkbookRangeFirstRow](readWorkbookRangeFirstRow.md) | Read the first row from a given workbook range. |
163
+ | [readWorkbookRangeRows](readWorkbookRangeRows.md) | Read all rows from a given workbook range. |
165
164
  | [readWorkbookRows](readWorkbookRows.md) | Iterates over the rows in a given worksheet range. |
166
165
  | [safeDeleteWorkbook](safeDeleteWorkbook.md) | Safely delete a workbook by first closing any open sessions and then deleting it. |
167
166
  | [setColumnHidden](setColumnHidden.md) | Set one or more columns visibility. |
@@ -169,6 +168,6 @@
169
168
  | [setWorkbookTableBodyVisibleRows](setWorkbookTableBodyVisibleRows.md) | Set visible rows of a workbook table with the provided 2D array of values, ignoring hidden rows and inserting new rows at the end if needed. |
170
169
  | [tryCloseWorkbookSession](tryCloseWorkbookSession.md) | Try and close a workbook session. |
171
170
  | [tryDeleteDriveItem](tryDeleteDriveItem.md) | Attempts to delete a drive item, returning success status. |
172
- | [updateFirstRow](updateFirstRow.md) | Update first row in a given workbook range. |
173
- | [updateRows](updateRows.md) | Update rows in a given workbook range. |
171
+ | [updateWorkbookRangeFirstRow](updateWorkbookRangeFirstRow.md) | Update first row in a given workbook range. |
172
+ | [updateWorkbookRangeRows](updateWorkbookRangeRows.md) | Update rows in a given workbook range. |
174
173
  | [writeWorkbookRows](writeWorkbookRows.md) | Write rows to a workbook range. |
@@ -1,6 +1,6 @@
1
- [Microsoft Graph SDK](README.md) / insertRow
1
+ [Microsoft Graph SDK](README.md) / insertWorkbookRangeRow
2
2
 
3
- # insertRow
3
+ # insertWorkbookRangeRow
4
4
 
5
5
  **`Experimental`**
6
6
 
@@ -30,5 +30,5 @@ Defined in: [src/tasks/insertWorkbookRangeRow.ts:20](https://github.com/Future-S
30
30
  #### Example
31
31
 
32
32
  ```ts
33
- await insertRow(originRef, [{ value: "A1" }, { value: "B1" }, { value: "C1" }]);
33
+ await insertWorkbookRangeRow(originRef, [{ value: "A1" }, { value: "B1" }, { value: "C1" }]);
34
34
  ```
@@ -1,6 +1,6 @@
1
- [Microsoft Graph SDK](README.md) / insertRows
1
+ [Microsoft Graph SDK](README.md) / insertWorkbookRangeRows
2
2
 
3
- # insertRows
3
+ # insertWorkbookRangeRows
4
4
 
5
5
  **`Experimental`**
6
6
 
@@ -21,7 +21,7 @@ Defined in: [src/tasks/insertWorkbookRangeRows.ts:38](https://github.com/Future-
21
21
  | Parameter | Type | Default value | Description |
22
22
  | ------ | ------ | ------ | ------ |
23
23
  | `originRef` | [`WorkbookRangeRef`](WorkbookRange-1.md#workbookrangeref) | `undefined` | Reference to the workbook range to update. Only the upper-left cell is used as an origin point. |
24
- | `cells` | [`Iterable`](https://www.typescriptlang.org/docs/handbook/iterators-and-generators.html#iterable-interface)\<[`Partial`](https://www.typescriptlang.org/docs/handbook/utility-types.html#partialtype)\<[`Cell`](Cell.md#cell)\>[], `any`, `any`\> \| `AsyncIterable`\<[`Partial`](https://www.typescriptlang.org/docs/handbook/utility-types.html#partialtype)\<[`Cell`](Cell.md#cell)\>[], `any`, `any`\> | `undefined` | Array of arrays of cells to update in the specified range. |
24
+ | `cells` | `AsyncIterable`\<[`Partial`](https://www.typescriptlang.org/docs/handbook/utility-types.html#partialtype)\<[`Cell`](Cell.md#cell)\>[], `any`, `any`\> \| [`Iterable`](https://www.typescriptlang.org/docs/handbook/iterators-and-generators.html#iterable-interface)\<[`Partial`](https://www.typescriptlang.org/docs/handbook/utility-types.html#partialtype)\<[`Cell`](Cell.md#cell)\>[], `any`, `any`\> | `undefined` | Array of arrays of cells to update in the specified range. |
25
25
  | `maxCellsPerOperation` | `null` \| `number` | `null` | Prescribe max cells to retrieve per operation. `null` automatically determines value. DO NOT SET EXCEPT FOR ADVANCED TUNING. |
26
26
 
27
27
  #### Returns
@@ -32,14 +32,14 @@ Defined in: [src/tasks/insertWorkbookRangeRows.ts:38](https://github.com/Future-
32
32
 
33
33
  ```ts
34
34
  // Basic example:
35
- await insertRows(originRef, [
35
+ await insertWorkbookRangeRows(originRef, [
36
36
  [{ value: "A1" }, { value: "B1" }, { value: "C1" }],
37
37
  [{ value: "A2" }, { value: "B2" }, { value: "C2" }],
38
38
  [{ value: "A3" }, { value: "B3" }, { value: "C3" }],
39
39
  ])
40
40
 
41
41
  // Advanced example with cell formatting:
42
- await insertRows(originRef, [
42
+ await insertWorkbookRangeRows(originRef, [
43
43
  [{ value: "A1", format: { fontColor: "red" } }, { value: "B1" }, { value: "C1" }],
44
44
  [{ value: "A2" }, { value: "B2", format: { fontColor: "blue" } }, { value: "C2" }],
45
45
  [{ value: "A3" }, { value: "B3" }, { value: "C3", format: { fontColor: "green" } }],
@@ -1,6 +1,6 @@
1
- [Microsoft Graph SDK](README.md) / iterateRows
1
+ [Microsoft Graph SDK](README.md) / iterateWorkbookRangeRows
2
2
 
3
- # iterateRows
3
+ # iterateWorkbookRangeRows
4
4
 
5
5
  **`Experimental`**
6
6