![Oracle Drags Its Feet in the JavaScript Trademark Dispute](https://cdn.sanity.io/images/cgdhsj6q/production/919c3b22c24f93884c548d60cbb338e819ff2435-1024x1024.webp?w=400&fit=max&auto=format)
Security News
Oracle Drags Its Feet in the JavaScript Trademark Dispute
Oracle seeks to dismiss fraud claims in the JavaScript trademark dispute, delaying the case and avoiding questions about its right to the name.
xlstream-fork
Advanced tools
Memory-efficiently turns XLSX file into a transform stream with all its benefits.
data
, end
, etc.)data
event.npm install xlstream
source.xlsx
contents:
A | B |
---|---|
hello | 123 |
Where 123
is a 123.123
number formatted to be rounded to integer.
Script:
const { getXlsxStream } = require('xlstream');
(async () => {
const stream = await getXlsxStream({
filePath: './source.xlsx',
sheet: 0,
});
stream.on('data', x => console.log(x));
})();
Result:
{
"raw": {
"obj": { "A": "hello", "B": 123.123 },
"arr": [ "hello", 123.123 ]
},
"formatted": {
"obj": { "A": "hello", "B": 123 },
"arr": [ "hello", 123 ]
},
"header": []
}
Returns transform stream of the sheet.
option | type | description |
---|---|---|
filePath | string | Path to the XLSX file |
sheet | string or number | If string is passed, finds sheet by it's name. If number , finds sheet by it's index. |
withHeader | boolean or number | If true , column names will be taken from the first sheet row. If duplicated header name is found, column name will be prepended with column letter to maintain uniqueness. 0-based row location can be passed to this option if header is not located on the first row. |
ignoreEmpty | boolean | If true , empty rows won't be emitted. |
fillMergedCells | boolean | If true , merged cells will have the same value (by default, only the first cell of merged cells is filled with value). Warning! Enabling this feature may increase streaming time because file must be processed to detect merged cells before actual stream. |
numberFormat | standard or excel or object | By default standard format is used. Excel implementation of number formatting differs from standard (can be read here) so excel option can be used to match this difference. If custom formatting is needed, a dictionary object can be passed to this option. |
Async generator which yields transform streams of the sheets.
Option | Type | Description |
---|---|---|
filePath | string | Path to the XLSX file |
sheets | array of sheet objects | Options of sheet object can be found below. |
option | type | description |
---|---|---|
id | string or number | If string is passed, finds sheet by it's name. If number , finds sheet by it's index. |
withHeader | boolean | If true , column names will be taken from the first sheet row. If duplicated header name is found, column name will be prepended with column letter to maintain uniqueness. 0-based row location can be passed to this option if header is not located on the first row. |
ignoreEmpty | boolean | If true , empty rows won't be emitted. |
fillMergedCells | boolean | If true , merged cells will have the same value (by default, only the first cell of merged cells is filled with value). Warning! Enabling this feature may increase streaming time because file must be processed to detect merged cells before actual stream. |
numberFormat | standard or excel or object | By default standard format is used. Excel implementation of number formatting differs from standard (can be read here) so excel option can be used to match this difference. If custom formatting is needed, a dictionary object can be passed to this option. |
Returns array of sheets with name
and hidden
info.
Option | Type | Description |
---|---|---|
filePath | string | Path to the XLSX file |
You can build js
source by using npm run build
command.
Tests can be run by using npm test
command.
FAQs
Turns XLSX into a readable stream.
The npm package xlstream-fork receives a total of 0 weekly downloads. As such, xlstream-fork popularity was classified as not popular.
We found that xlstream-fork demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Oracle seeks to dismiss fraud claims in the JavaScript trademark dispute, delaying the case and avoiding questions about its right to the name.
Security News
The Linux Foundation is warning open source developers that compliance with global sanctions is mandatory, highlighting legal risks and restrictions on contributions.
Security News
Maven Central now validates Sigstore signatures, making it easier for developers to verify the provenance of Java packages.