This commit introduces Row and Cell entities, that will replace the arrays passed in previously.
It also adds support for Cell styling (instead of Row styling only).
Added ODS writer
Refactored XLSX writer to abstract some pieces into an abstract multi-sheets writer
Created an abstract style helper
Moved shared components around
Invalid names can also be triggered by:
- character ":"
- single quote at the beginning of the name
- single quote at the end of the name
Introduced a StringHelper, wrapping multibyte strings functions
Based on Excel requirements:
- it should not be blank
- it should not exceed 31 characters
- it should not contain these characters: \ / ? * [ or ]
- it should be unique