Commit Graph

46 Commits

Author SHA1 Message Date
7b4bafba49 Miscellaneous format fixes
- SSF update to address extendscript issue (fixes #608 h/t @mjdb3d)
- XLSX cellDates set date format (fixes #647 h/t @psalmody)
- ODS add stub stylesheet for Excel (fixes #649 h/t @WaqasJaved1)
- CSV with UTF8 BOM (fixes #650 h/t @charlesread)
- DIF/CSV fuzzy date speculation
- SYLK parse RC formulae
- CSF utils for manipulating workbooks
2017-05-11 03:29:59 -04:00
Patrick Lehmhecker
c6f96c3df7 converting to json with a selected range and header: 1 now lets the array start at zero 2017-04-26 17:32:42 +02:00
6853c99ce5 rich text HTML + preview 2017-04-19 23:43:43 -04:00
09fba37eac switch to eslint
- eslint pass (eliminates jshint and jscs)
- moved cell reference functions to reduce forward references
- themeXLSX override XLSX/XLSB/XLSM theme
2017-04-16 22:08:23 -04:00
1d61054602 HTML Write support
- 'html' bookType write format
- basic HTML entity encoding (fixes #629 h/t @xkr47)
- HTML string and table merge cell fixes
- doc notes on nodejs streaming
2017-04-16 00:32:13 -04:00
51182e57ef version bump 0.9.10: nodejs performance
- xlsx.njs use dense mode by default
- CSV Streaming output for nodejs
- XLSX/XLSB error on password protected documents
- record hoppers switch on record number rather than name
2017-04-09 00:04:46 -04:00
f43cacaf5e experimental dense representation
- browser demo save file in global (fixes #573 h/t @WildDusk)
- flesh out XLSB record expectations (fixes #624 h/t @pgeeh)
- `dense` mode (fixes #34 h/t @schleumer)
2017-04-08 02:55:35 -04:00
b9dae134f2 TXT/PRN
- UTF-16 Unicode Text (TXT) write
- Lotus Formatted Text (PRN) read/write
- DBF version 2 field length adjustments
- throw errors if SheetNames is invalid (fixes #376 h/t @pietersv)
2017-04-02 20:16:03 -04:00
65f1c7e58b HTML DOM Element read
- DOM <table> element parsing (fixes #576 h/t @axolo)
- removed InterfaceHdr check (fixes #209 h/t @Batistleman)
- gitbook docs
2017-03-29 15:14:15 -04:00
70c48a74b9 API Improvements
- `aoa_to_sheet` function (fixes #314 h/t @fonzy2013 @rvdwijngaard)
- `writeFileAsync` function (fixes #396 h/t @barbalex)
- `sheet_to_json` tests + docs + blankrows (fixes #602 h/t @EEaglehouse)
- write number format scan now includes every index >= 50
- propagate SSF IE8 fixes (fixes #171 h/t @sheetjsdev)
- update shim for extendscript (see #603 h/t @firas3d)
- more flow type definitions
2017-03-24 21:36:40 -04:00
Jim
9ae3a64af8 sheet_to_json default value
uses `defval` key in options object

fixes #583 h/t @jimjin
fixes #582 h/t @jimjin
fixes #147 h/t @jtadmor
2017-03-23 01:58:08 -04:00
69782ca211 version bump 0.9.5: IE8+ browser tests
- minor changes to work around IE incompatibilities
- updated shim and browser tests
2017-03-22 21:18:40 -04:00
a846f7184d utility improvements
- sheet_to_csv strip option (fixes #182 h/t @davidworkman9)
- sheet_to_json dateNF option (fixes #134 h/t @rotemtam)
- file type detection expanded to 4 byte magic number
2017-03-22 03:50:11 -04:00
c7010eec35 XLS/XLSX/XLSB/XLML cellDates support
- uniform number->date cell conversion
- update SSF to 0.9.0 (for is_date)
- namespaced rich str xml
- license file changed to appease GH automatic license detector

|     id      | author       | comment                                 |
|:------------|:-------------|:----------------------------------------|
| closes #581 | @Aymkdn      | XLSX cellDates + SSF.is_date            |
| closes #126 | @elad        | same as #581 h/t @SystemParadox         |
| closes #59  | @vratiu      | same as #581                            |
| closes #279 | @varunoberoi | raw json output uses date               |
2017-03-21 16:44:35 -04:00
5a3774e36e Formula write support
- XLSX/XLML/ODS/CSV formula write
- XLS Array/Formula record parsing
- ODS to/from CSF formula conversion
- XLML parse negative dates
- formula multiformat and roundtrip tests
- update SSF

Closes issues:
- closes #549 h/t @omershelef
- closes #306 h/t @akaustel
- closes #300 h/t @wawanopoulos
- closes #152 h/t @florf
- closes #103 h/t @christocracy
- closes #112 h/t @johnyesberg
- closes #307 h/t @alexanderknapstein
2017-03-17 20:45:06 -04:00
d3eaa62d45 unify stub cells with type z
- fixes #382 h/t @jugaltheshah @pimpelsang
- fixes #333 h/t @xushuheng0623 @abhishek1234321 @mateuszkrzeszowiec
- fixes #79 h/t @volodymyrl @elad
2017-03-15 04:19:02 -04:00
8cd9e81569 flow annotations
no errors when running flow!
2017-03-12 14:02:46 -04:00
Patrick Lam
b0a72c8b0e disambiguate duplicate header names
closes #194 h/t @patricklam

note: @sheetjsdev authored commit, original PR date/author used
2017-03-10 14:15:39 -05:00
3d1f0f79ca version bump 0.8.7: bundlers
demos for browserify/requirejs/webpack
2017-03-04 20:14:08 -05:00
d7ecca0e8b version bump 0.8.4: formula parsing
- BIFF 2-12 formula parsing
- more content type coverage
- unified `.f` form: A1-style string
- `.F` field for array formulae
- formula output groups array formulae
- bin script -A --arrays output JS row objects
- whitespace robustness in inline string xml
- UTF-8 parsing in rich text runs (fixes #505 h/t @fuchsc)
- bold/italic/underline accept null val attr (h/t @qqilihq)
- sst trimming (fixes #176 h/t @shakhal @oising)
2017-02-19 12:36:32 -08:00
ab2ecebac9 version bump 0.8.3: BIFF2 read/write
- basic support for parsing BIFF2-4
- basic support for writing BIFF2
- cleaned up some bad substr uses for IE6 compatibility
- added flow type annotations for xlsx.flow.js
- added numerous null guards (fixes #255 h/t @martinheidegger)
- README cleanup (fixes #539 h/t @oliversalzburg)
- pin jszip to local version (closes #408 h/t @limouri)

bower issues:

|  id  | author            | comment                                   |
|-----:|:------------------|:------------------------------------------|
| #254 | @kkirsche         | fixes #254 by removing version from json  |
| #165 | @vincentcialdella | fixes #165 by changing default script     |
| #180 | @owencraig        | fixes #180 by using xlsx.core.min.js      |

format issues:

|  id  | author            | comment                                   |
|-----:|:------------------|:------------------------------------------|
| #271 | @morstaine        | fixes #271 by reworking related parse fns |
| #504 | @JanSchuermannPH  | fixes #504 detect FullPaths h/t @Mithgol  |
| #508 | @basma-emad       | fixes #508 offending file used `x:` NS    |
2017-02-10 11:23:29 -08:00
0d38d4c0a0 version bump 0.8.0: unification with js-xls 0.7.5 2015-04-02 16:32:22 -04:00
f9097d403b version bump 0.7.12: cell type 'd'
- more structure in the theme parsing
- cellDates option on parsing side creates date cells
- cellDates option on writing side creates cells with type 'd'
- cell types clarified, type 'str' phased out
- README clarifications
- more tests to ensure date consistency
- more test cases for ODS
2014-10-26 01:26:18 -04:00
d4999ac421 version bump 0.7.8: docs, defaults, details
- browser shim updated (h/t @wintersm for discovering this)
- smart tag ignores (h/t @lostinplace)
- sheet_to_row_object_array bugfix (fixes #80, h/t @ChrisBurkeBSD)
- README improved
- baltic and vietnamese codepages: updated codepage to 1.3.4
- iOS Numbers can handle inline strings -> disabling SST by default
- avoid Buffer accessors (see https://github.com/joyent/node/issues/7809)
- caching certain hot regexes
2014-07-28 09:22:32 -04:00
6bc24374b9 version bump 0.7.7: needs more cowbell
- parsexmltag and other hot functions now better optimized for v8
- monomorphic functions (different types -> different funcs)
- more efficient decode_range implementation when source is trusted
- regular expressions cached and simplified without breaking correctness
- more efficient utf8 techniques when available
- XLSX: large functions broken down into sub-functions (e.g. `parse_ws_xml`)
- XLSB: avoid unnecessary binds
- XLSB: assume no exotic codepage exists (no one else tries to write XLSB)
- demo exposes rABS / worker / transferable options
- more tests
- jszip updated to 2.3.0
- SSF updated to 0.8.1
- codepage updated to 1.3.1
2014-06-29 14:29:45 -04:00
a3d9c4d9ac version bump 0.7.4: I/O improvements
- basic style + theme parsing, option .cellStyles (h/t @eladxxx)
- more XLSB writing stubs
- correct resolution of .xml/.bin files
- sheet_to_json improvements from js-xls
o opts.header = 1 for array of arrays
o opts.header = 'A' for spreadsheet column labels
o custom opts.header array for custom labels
o opts.range = n starts from row n
o opts.range = range restricts writer to work within the specified range
- Makefile adapted to work with cygwin on windows
2014-05-29 18:30:03 -04:00
b645f6ef98 version bump 0.6.2: bits reorganization
- updated SSF to 0.6.5
- XLSB 'dbcs' uses codepage
- README bugfix (h/t @noodles)
- new tests: rawjson and json baselines generated by hand
- single cell ranges are encoded as cells ("A1" instead of "A1:A1") (h/t @clxl)
- source code alignment with js-xls
2014-05-03 11:51:10 -07:00
ecee362e00 version bump 0.5.10-a: xlsx performance
- utf8 translation pushes to array rather than string concat
- large_strings test actually runs now (rather than blowing up)
2014-02-22 16:36:28 -05:00
33fbc389c5 version bump 0.5.8: bookFiles, default change
- option bookFiles controls whether zip files and keys are written to object
  *** Default has been flipped from "true" to "false"
- updated SSF to 0.5.8
- updated test_files to 20140216 (tests also look at 2013 XLSB)
- added dist files (make dist)
2014-02-17 03:44:22 -05:00
7e9f218f0f version bump 0.5.4: more options
- cellHTML controls HTML generation
- cellFormula controls formula output
- sheetStubs now defaults to false

- cleaned up unnecessary CSV quotes (fixed #45)
- updated test_files to 20140211
- updated SSF to 0.5.7
- removed unused main function
- removed some dead code
2014-02-12 01:09:42 -05:00
99d879ee30 version bump 0.5.2: chores
- node jszip updated to 2.1.0 as per https://github.com/Stuk/jszip/issues/84
- travis 0.8 tests restored
- get_formulae ignores undefined values
- updated test_files to 20140206
2014-02-06 17:02:11 -05:00
a96d8964e2 version bump 0.5.0: changes to cell interface
Cell object stores the formatted text in the `.w` field
- Raw format and types are preserved in the `.t`, `.v` fields
- Accessors have been updated to use the field

updates for older OOXML:
- ECMA-376 makes reference to old sstItem shared string item
- [MS-XLSX] xmlns for workbook
2014-02-03 19:00:44 -05:00
5c4bf62b83 version bump 0.4.3: shared strings and formatting
- XLSB basic support for number formats
- removed extraneous Strings table element
- formatting xml tags (rich_stress_test)
- updating test_files to 20130130
2014-01-31 06:52:18 -05:00
6990e66a56 version bump 0.4.1: more XLSB + cleanup
- updated ssf to 0.5.4
- cleaned up CSV string output
- added CSV tests (from test_files)
- passes lint
- inlineStr actually parses <is> block
- more XLSB bits
2014-01-29 01:00:09 -05:00
32d835ab81 version bump 0.4.0: very basic XLSB support
subfiles reshuffled (XLSB and XLSX/XLSM content separated)
2014-01-28 11:38:02 -05:00
9c9aad5df3 version bump 0.3.9: general format used by default
(when no format or style is found, use general)

Other whitespace cleanup
2014-01-23 11:14:11 -05:00
a1ccaf511d version bump 0.3.8: more formatting
- updated SSF to 0.5.3

tests without baselines now try to generate CSV output
2014-01-23 01:20:19 -05:00
b4f7030634 version bump 0.3.3: malformed xlsx parsing
Files that cannot be processed by Excel 2011 were removed from the suite
2013-11-12 08:29:55 -08:00
fd6e3fa19b version bump 0.3.1: more cleanup
- xlsx2csv mirrors xls2csv options
- passes lint
- protection tag (1)
2013-10-30 15:42:27 -07:00
d85183c75f version bump 0.2.7-d: CSV generation issue
double-quotes are emitted as \"\"
2013-10-10 02:53:02 -04:00
55ba84d561 version bump 0.2.7-b: formatted string support
Mixed formatting stored in the shared string table.

Ultimately there will be a function to convert to HTML, but in the interim this
extracts plaintext and populates the right fields
2013-10-10 02:44:18 -04:00
247fd22c06 jshint passes 2013-10-10 02:44:18 -04:00
c5c3eebb09 LICENSE clarification; get_formulae function
To avoid future confusion, any code shared between this and the XLS project
relate to concepts discussed in ECMA-376 and hence fall within the purview of
this project's license.  A similar note should appear in the license for the
other projects.
2013-10-10 02:44:18 -04:00
5341a85f55 version bump 0.2.6: IE10 Drag and Drop support 2013-10-10 02:44:18 -04:00
6716857483 shielding csv parser from unsupported formats 2013-10-10 02:44:18 -04:00
8bd3c624ac split xlsx.js into multiple files
run `make` to combine the files.

Files are named in numerical order based on the relative placement
2013-10-10 02:44:18 -04:00