@office-kit/xlsx 0.14.0 → 0.15.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 (31) hide show
  1. package/README.md +26 -0
  2. package/dist/{cell-style-BFmJOmcx.mjs → cell-style-CNsET6WU.mjs} +2 -2
  3. package/dist/{cell-style-BFmJOmcx.mjs.map → cell-style-CNsET6WU.mjs.map} +1 -1
  4. package/dist/{differential-H9SjEeIU.mjs → differential-BPKa7wXi.mjs} +2 -2
  5. package/dist/{differential-H9SjEeIU.mjs.map → differential-BPKa7wXi.mjs.map} +1 -1
  6. package/dist/io.mjs +2 -2
  7. package/dist/{iterparse-zWV-5vc6.mjs → iterparse-DZE0zy2M.mjs} +39 -16
  8. package/dist/{iterparse-zWV-5vc6.mjs.map → iterparse-DZE0zy2M.mjs.map} +1 -1
  9. package/dist/{load-B16H5A3S.mjs → load-CspGc399.mjs} +4 -4
  10. package/dist/{load-B16H5A3S.mjs.map → load-CspGc399.mjs.map} +1 -1
  11. package/dist/node.mjs +1 -1
  12. package/dist/{save-I6GjvO1k.mjs → save-DgPf1DyF.mjs} +3 -3
  13. package/dist/{save-I6GjvO1k.mjs.map → save-DgPf1DyF.mjs.map} +1 -1
  14. package/dist/streaming.mjs +5 -5
  15. package/dist/styles.mjs +3 -3
  16. package/dist/{stylesheet-writer-BCS6PzWU.mjs → stylesheet-writer-TxsinwbO.mjs} +6 -6
  17. package/dist/{stylesheet-writer-BCS6PzWU.mjs.map → stylesheet-writer-TxsinwbO.mjs.map} +1 -1
  18. package/dist/{table-Ccro4rrz.mjs → table-BrP0RwUd.mjs} +2 -2
  19. package/dist/{table-Ccro4rrz.mjs.map → table-BrP0RwUd.mjs.map} +1 -1
  20. package/dist/{workbook-B15-T4cs.mjs → workbook-DQCslHzY.mjs} +3 -3
  21. package/dist/{workbook-B15-T4cs.mjs.map → workbook-DQCslHzY.mjs.map} +1 -1
  22. package/dist/workbook.mjs +1 -1
  23. package/dist/worksheet/index.d.ts +1 -1
  24. package/dist/worksheet/ref-batch.d.ts +15 -0
  25. package/dist/worksheet/worksheet.d.ts +33 -0
  26. package/dist/{worksheet-4xW-i8j9.mjs → worksheet-B2NOQ6dM.mjs} +100 -2
  27. package/dist/worksheet-B2NOQ6dM.mjs.map +1 -0
  28. package/dist/worksheet.mjs +3 -3
  29. package/dist/xml.mjs +1 -1
  30. package/package.json +1 -1
  31. package/dist/worksheet-4xW-i8j9.mjs.map +0 -1
package/README.md CHANGED
@@ -201,6 +201,32 @@ const response = await fetch('/sheet.xlsx');
201
201
  const wb = await loadWorkbook(fromResponse(response));
202
202
  ```
203
203
 
204
+ ### Add hyperlinks and comments in bulk
205
+
206
+ Use `setHyperlinks` and `setComments` when many cells need links or notes. Each
207
+ batch runs in linear time over the existing entries and additions.
208
+
209
+ ```ts
210
+ import { createWorkbook, addWorksheet } from '@office-kit/xlsx/workbook';
211
+ import { setHyperlinks, setComments } from '@office-kit/xlsx/worksheet';
212
+
213
+ const wb = createWorkbook();
214
+ const ws = addWorksheet(wb, 'Report');
215
+ setHyperlinks(ws, [
216
+ { ref: 'A2', target: 'https://example.com/items/1' },
217
+ { ref: 'A3', target: 'https://example.com/items/2' },
218
+ ]);
219
+ setComments(ws, [
220
+ { ref: 'A2', author: 'Reviewer', text: 'Verified' },
221
+ { ref: 'A3', author: 'Reviewer', text: 'Check the source' },
222
+ ]);
223
+ ```
224
+
225
+ Entries are applied in order: replacing a hyperlink moves it to the end;
226
+ replacing a comment keeps its position. Hyperlink entries must supply `target`
227
+ or `location`; the entire batch is validated before the sheet is changed.
228
+ Both APIs preserve the public arrays and allow direct edits between calls.
229
+
204
230
  ### Streaming write — millions of rows in a fixed memory budget
205
231
 
206
232
  ```ts
@@ -1,5 +1,5 @@
1
1
  import { o as OpenXmlSchemaError } from "./exceptions-D-CFwxgm.mjs";
2
- import { Tn as makeColor, cn as parseRange, vn as colorToHex, y as ensureCell } from "./worksheet-4xW-i8j9.mjs";
2
+ import { Dn as makeColor, bn as colorToHex, un as parseRange, y as ensureCell } from "./worksheet-B2NOQ6dM.mjs";
3
3
  //#region src/utils/stable-stringify.ts
4
4
  const sortKeysReplacer = (_key, value) => {
5
5
  if (value === null || typeof value !== "object" || Array.isArray(value)) return value;
@@ -1615,4 +1615,4 @@ function setRangeBorderBox(wb, ws, range, opts = { style: "thin" }) {
1615
1615
  //#endregion
1616
1616
  export { BUILTIN_NAMED_STYLES as $, makeAlignment as $t, setCellBorder as A, isBuiltinFormat as At, setItalic as B, PATTERN_TYPES as Bt, setBold as C, FORMAT_NUMBER_00 as Ct, setCellAsNumber as D, builtinFormatCode as Dt, setCellAsDate as E, FORMAT_TEXT as Et, setCellProtection as F, FONT_SCHEMES as Ft, setRangeNumberFormat as G, makePatternFill as Gt, setRangeBackgroundColor as H, makeFill as Ht, setCellStyle as I, UNDERLINE_STYLES as It, setRangeWrapText as J, makeBorder as Jt, setRangeProtection as K, SIDE_STYLES as Kt, setFontColor as L, VERT_ALIGNS as Lt, setCellFill as M, isTimedeltaFormat as Mt, setCellFont as N, makeNumberFormat as Nt, setCellAsPercent as O, builtinFormatId as Ot, setCellNumberFormat as P, DEFAULT_FONT as Pt, makeProtection as Q, alignmentToCss as Qt, setFontName as R, fontToCss as Rt, rotateCellText as S, FORMAT_NUMBER as St, setCellAsCurrency as T, FORMAT_PERCENTAGE_00 as Tt, setRangeBorderBox as U, makeGradientFill as Ut, setRangeAlignment as V, fillToCss as Vt, setRangeFont as W, makeGradientStop as Wt, setUnderline as X, HORIZONTAL_ALIGNMENTS as Xt, setStrikethrough as Y, makeSide as Yt, wrapCellText as Z, VERTICAL_ALIGNMENTS as Zt, getCellNumberFormat as _, BUILTIN_FORMATS_MAX_SIZE as _t, cellStyleToCss as a, addFill as at, patchCellFont as b, FORMAT_DATE_YYYYMMDD2 as bt, clearCellStyle as c, buildXfPatch as ct, copyCellStyle as d, listCellStyleXfs as dt, stableStringify as en, addNamedStyle as et, formatAsHeader as f, listCellXfs as ft, getCellFont as g, BUILTIN_FORMATS as gt, getCellFill as h, makeStylesheet as ht, applyNamedStyle as i, addCellXf as it, setCellBorderAll as j, isDateFormat as jt, setCellBackgroundColor as k, classifyDateFormat as kt, clearRangeStyle as l, defaultCellXf as lt, getCellBorder as m, listFonts as mt, alignCellVertical as n, addBorder as nt, centerCell as o, addFont as ot, getCellAlignment as p, listFills as pt, setRangeStyle as q, borderToCss as qt, applyBuiltinStyle as r, addCellStyleXf as rt, clearCellBackground as s, addNumFmt as st, alignCellHorizontal as t, ensureBuiltinStyle as tt, cloneCellStyle as u, listBorders as ut, getCellProtection as v, FORMAT_DATE_DATETIME as vt, setCellAlignment as w, FORMAT_PERCENTAGE as wt, registerCellStyle as x, FORMAT_GENERAL as xt, indentCell as y, FORMAT_DATE_TIMEDELTA as yt, setFontSize as z, makeFont as zt };
1617
1617
 
1618
- //# sourceMappingURL=cell-style-BFmJOmcx.mjs.map
1618
+ //# sourceMappingURL=cell-style-CNsET6WU.mjs.map