@extend-ai/react-xlsx 0.12.3 → 0.13.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.
package/README.md CHANGED
@@ -225,12 +225,18 @@ These hooks work inside `XlsxViewer` or `XlsxViewerProvider` context.
225
225
  - `useXlsxViewer()` for full controller access
226
226
  - `useXlsxViewerSelection()` for active cell and range state
227
227
  - `useXlsxViewerZoom()` for zoom controls and limits
228
- - `useXlsxViewerEditing()` for editing, persisted style writes, undo/redo, fill, merge, clipboard, and export actions
228
+ - `useXlsxViewerEditing()` for editing, persisted style writes, formulas, undo/redo, fill, merge, clipboard, and export actions
229
229
  - `useXlsxViewerTables()` for table metadata and table sorting
230
230
  - `useXlsxViewerImages()` for embedded image and chart selection, movement, and resizing
231
- - `useXlsxViewerCharts()` for chart and chartsheet state
231
+ - `useXlsxViewerCharts()` for chart, chart element, formula, and chartsheet state
232
232
  - `useXlsxViewerThumbnails(options)` for painting worksheet thumbnails into your own canvases
233
233
 
234
+ ## Chart Selection And Formulas
235
+
236
+ Chart interactions follow Excel's selection progression: clicking a chart selects the chart frame, clicking a plotted item or legend entry again selects the series, and clicking an item in an already-selected series selects that point. `selectedChartElement` exposes the current chart, series, legend entry, or point selection through the controller and `useXlsxViewerCharts()`.
237
+
238
+ When a series, legend entry, or point is selected, `selectedFormula` returns an Excel-style `=SERIES(...)` formula and `selectedFormulaTarget` is `{ kind: "chartSeries", chartId, seriesId, seriesIndex }`. Use `setSelectedFormula(...)` for a formula bar that edits either the active cell formula or the selected chart series formula. Use `getChartSeriesFormula(chartId, seriesIndex)` and `setChartSeriesFormula(chartId, seriesIndex, formula)` when you need direct chart-series formula control.
239
+
234
240
  ## Thumbnail Hook
235
241
 
236
242
  `useXlsxViewerThumbnails` returns paint functions for each worksheet so you can build your own sheet strip or navigation UI.
@@ -554,7 +560,7 @@ Supported worksheet features include:
554
560
  - Embedded images, shapes, form controls, worksheet charts, and chartsheet tabs
555
561
  - Copy, paste, undo, redo, merge, unmerge, fill, CSV export, and XLSX export
556
562
 
557
- Chart rendering supports common Excel chart families including column, bar, line, area, scatter, pie, doughnut, radar, bubble, stock, surface, waterfall, funnel, box-and-whisker, sunburst, treemap, region map, combo charts, and chartsheets.
563
+ Chart rendering supports common Excel chart families including column, bar, line, area, scatter, pie, doughnut, radar, bubble, stock, surface, waterfall, funnel, box-and-whisker, sunburst, treemap, region map, combo charts, and chartsheets. Selecting a chart series highlights its workbook source ranges; point selection keeps the series ranges highlighted and emphasizes the matching point cells when the source references resolve to rectangular ranges.
558
564
 
559
565
  Legacy `.xls` and macro-enabled `.xlsm` files have limited support. The viewer only displays workbook data that `@dukelib/sheets-wasm` can parse, and format-specific XML features may be missing or skipped.
560
566
 
@@ -578,7 +584,8 @@ The package exports the main types you are likely to use for custom integrations
578
584
  - `XlsxCellStyleInput`, `XlsxCellFontStyleInput`, `XlsxCellFillStyleInput`, `XlsxCellBorderStyleInput`
579
585
  - `XlsxSheetThumbnail`
580
586
  - `UseXlsxViewerThumbnailsOptions`
581
- - `XlsxChart`, `XlsxChartSeries`, `XlsxChartAxis`, `XlsxChartsheet`
587
+ - `XlsxChart`, `XlsxChartSeries`, `XlsxChartAxis`, `XlsxChartElementSelection`, `XlsxChartsheet`
588
+ - `XlsxFormulaTarget`
582
589
  - `XlsxImage`, `XlsxImageRect`, `XlsxImageRenderProps`, `XlsxImageSelectionRenderProps`
583
590
  - `XlsxTable`, `XlsxTableColumn`, `XlsxTableHeaderMenuRenderProps`
584
591
  - `XlsxWorkbookTab`, `XlsxCellAddress`, `XlsxCellRange`