Skip to content

Commit 721acfd

Browse files
Merge pull request #19 from abdullahmujahidali/feature-release-0.40
2 parents 0b6bbe9 + 6f8ba13 commit 721acfd

13 files changed

Lines changed: 2595 additions & 37 deletions

CHANGELOG.md

Lines changed: 45 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,51 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99

10-
## [0.3.0] - 2025-12-21
10+
## [0.3.0] - 2025-12-22
11+
12+
### Added
13+
14+
- **Search & Replace**
15+
- `sheet.find(options)` to find the first cell matching search criteria
16+
- `sheet.findAll(options)` to find all cells matching search criteria
17+
- `sheet.replace(options)` to find and replace the first match
18+
- `sheet.replaceAll(options)` to find and replace all matches
19+
- Search by string, number, or regular expression
20+
- Options for case-sensitive matching, whole cell matching
21+
- Search in values, formulas, or both
22+
- Search within specific range or entire sheet
23+
24+
- **Copy/Paste Operations**
25+
- `sheet.copyRange(range)` to copy cells to internal clipboard
26+
- `sheet.cutRange(range)` to cut cells (copy and clear originals)
27+
- `sheet.pasteRange(target, options)` to paste clipboard contents
28+
- `sheet.duplicateRange(source, target)` to copy and paste in one operation
29+
- `sheet.clearClipboard()` to clear the internal clipboard
30+
- `sheet.hasClipboard` property to check if clipboard has content
31+
- Paste options: `valuesOnly`, `stylesOnly`, `transpose`
32+
- Preserves values, styles, and formulas when copying
33+
34+
- **Row/Column Operations**
35+
- `sheet.insertRow(index, count)` to insert rows at position
36+
- `sheet.insertColumn(index, count)` to insert columns at position
37+
- `sheet.deleteRow(index, count)` to delete rows
38+
- `sheet.deleteColumn(index, count)` to delete columns
39+
- `sheet.moveRow(from, to)` to move a row to new position
40+
- `sheet.moveColumn(from, to)` to move a column to new position
41+
- Preserves cell values, styles, formulas, and comments
42+
- Shifts existing cells correctly when inserting/deleting
43+
- Updates row/column configurations (height, width) when shifting
44+
45+
- **Data Import/Export Helpers**
46+
- `sheet.fromArray(data, options)` to populate sheet from 2D array
47+
- `sheet.fromObjects(data, options)` to populate sheet from array of objects
48+
- `sheet.toArray(options)` to export sheet data as 2D array
49+
- `sheet.toObjects<T>()` to export sheet data as typed array of objects
50+
- `sheet.appendRow(values)` to append a single row at the end
51+
- `sheet.appendRows(rows)` to append multiple rows
52+
- Options for custom start position, header styling, column selection
53+
- Handles empty arrays and sheets gracefully
54+
- Round-trip preservation (fromArray -> toArray)
1155

1256
## [0.2.0] - 2025-12-21
1357

0 commit comments

Comments
 (0)