{"_id":"qvdjs","_rev":"37-a9c760e97818d5a029bd8ab3ba53b52d","name":"qvdjs","dist-tags":{"latest":"3.0.3"},"versions":{"0.2.0":{"name":"qvdjs","version":"0.2.0","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@0.2.0","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://github.com/ptarmiganlabs/qvdjs#readme","bugs":{"url":"https://github.com/ptarmiganlabs/qvdjs/issues"},"dist":{"shasum":"c4c7779aa11bef93cd9b55a5c8f763da61263356","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-0.2.0.tgz","fileCount":7,"integrity":"sha512-mvhHHkZ/dcHtNePWr9ZXwOv6X0ew0p0oYCFsboWgcFgCVY7YC4RADhTaYTHGF+AnKEuzEoEVX5/pXguGlaVFiQ==","signatures":[{"sig":"MEQCIGKleWkfhMPDrD4+GHFYgdORAjyMELTJGd8zTmpJJ8cwAiBHBMZmKv2oyNZNU9acigqzU6rbDbRhPEpUQNOOLEU/Ow==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":409019},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=20.10.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"6f03bfb54f4aa80f749c212d66bc29889bc2a250","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node benchmarks/qvd-read.bench.js && node benchmarks/qvd-write.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node benchmarks/qvd-read.bench.js --ci && node benchmarks/qvd-write.bench.js --ci && node benchmarks/consolidate-results.js"},"_npmUser":{"name":"mountaindude","email":"goran@ptarmiganlabs.com"},"repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"10.9.4","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"22.21.0","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.2.0","tsup":"^8.5.0","eslint":"^9.38.0","rimraf":"^6.0.1","globals":"^16.4.0","prettier":"^3.6.2","cross-env":"^10.1.0","tinybench":"^5.0.1","typescript":"^5.9.3","eslint-config-google":"^0.14.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_0.2.0_1761424265062_0.21402540828774774","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"qvdjs","version":"0.4.0","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@0.4.0","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://github.com/ptarmiganlabs/qvdjs#readme","bugs":{"url":"https://github.com/ptarmiganlabs/qvdjs/issues"},"dist":{"shasum":"153af5c1e13b1245ab76ceee8b62ea0baf6ef6dd","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-0.4.0.tgz","fileCount":7,"integrity":"sha512-ThHlJ2Q2foA0sA7mztO4VPv0LWyZQFJuwpTjNiIehpyynIW6H8u5+119N7egP5SdXSiSH1ORwSFnmsEie2a09A==","signatures":[{"sig":"MEQCIDZLWt769S49xwuhe3cZdVFxp6cURV2GdukleQrFF3oYAiBDWQN2JhMkNzHME9rocTwVNJgHKmfCX5y6IgObhS9qlA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":419879},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=20.10.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"44e6bb5bdd5fd0fcbcf975bccc5e0a3e6775d200","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node benchmarks/qvd-read-flexible.bench.js && node benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node benchmarks/qvd-read-flexible.bench.js --ci && node benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.6.2","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"20.19.5","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.2.0","tsup":"^8.5.0","eslint":"^9.38.0","rimraf":"^6.0.1","globals":"^16.4.0","prettier":"^3.6.2","cross-env":"^10.1.0","tinybench":"^5.0.1","typescript":"^5.9.3","eslint-config-google":"^0.14.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_0.4.0_1761548429427_0.3585580385207019","host":"s3://npm-registry-packages-npm-production"}},"0.6.1":{"name":"qvdjs","version":"0.6.1","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@0.6.1","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://github.com/ptarmiganlabs/qvdjs#readme","bugs":{"url":"https://github.com/ptarmiganlabs/qvdjs/issues"},"dist":{"shasum":"315035ed0fe0a111d740cad9f2f03526ff2c819e","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-0.6.1.tgz","fileCount":7,"integrity":"sha512-7AwkzwRd4qlfeu59psdN+eL8ToDynI+ShhMpzU6+vsCKaeTphcAoU9Qt8NWt1KQ1GohAPRZIbQaCXczg9xsHbQ==","signatures":[{"sig":"MEYCIQCYB/w3JTUftWpw0so5LMRTGjvOklxQqIenqFPi5nQ4MwIhAKm7zZELkHBkNZJlnywzt88AesVvVZtz+xWfqva9EUAX","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":419879},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=20.10.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"dc84ad4d68e6f4b5a2610a399a7529bd0178fa75","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node benchmarks/qvd-read-flexible.bench.js && node benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node benchmarks/qvd-read-flexible.bench.js --ci && node benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.6.2","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"20.19.5","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.2.0","tsup":"^8.5.0","eslint":"^9.38.0","rimraf":"^6.0.1","globals":"^16.4.0","prettier":"^3.6.2","cross-env":"^10.1.0","tinybench":"^5.1.0","typescript":"^5.9.3","eslint-config-google":"^0.14.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_0.6.1_1761553942281_0.794949243825773","host":"s3://npm-registry-packages-npm-production"}},"0.6.2":{"name":"qvdjs","version":"0.6.2","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@0.6.2","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://github.com/ptarmiganlabs/qvdjs#readme","bugs":{"url":"https://github.com/ptarmiganlabs/qvdjs/issues"},"dist":{"shasum":"e319c838de788f2858092707d6d350ed11c688ec","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-0.6.2.tgz","fileCount":7,"integrity":"sha512-iRLvuTICYB8JlpVD+ekPm53b3cKWb8O+fKOLyj3SuYdPcnMkrFgJ8KlnmjjZa6+5uw6HA6Fb7k+8ewT1481/Bw==","signatures":[{"sig":"MEYCIQCvJJkW7Tiwvo6nCqTqMP0JXlD+YK+5sVQ2sI8vz34s7QIhALusMIXwTbRwYMeoYXhazWEegGhULdPKjH97GDonz6ph","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":419879},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=20.10.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"afb733baf8ae4167c2fbf23f4bf76eb7e7008160","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node benchmarks/qvd-read-flexible.bench.js && node benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node benchmarks/qvd-read-flexible.bench.js --ci && node benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.6.2","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"20.19.5","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.2.0","tsup":"^8.5.0","eslint":"^9.38.0","rimraf":"^6.0.1","globals":"^16.4.0","prettier":"^3.6.2","cross-env":"^10.1.0","tinybench":"^5.1.0","typescript":"^5.9.3","eslint-config-google":"^0.14.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_0.6.2_1761556776021_0.8914267092627994","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"qvdjs","version":"0.7.0","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@0.7.0","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://github.com/ptarmiganlabs/qvdjs#readme","bugs":{"url":"https://github.com/ptarmiganlabs/qvdjs/issues"},"dist":{"shasum":"7be23d0f3bbc1786b4d66d15aa357e9d2424bb54","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-0.7.0.tgz","fileCount":7,"integrity":"sha512-glndwXz73Q+zRVnWL9k7Mce+ofol+58XTteMO0PDME/MN74fQM5qbhyDp18t6OOK0jKzy/iYmLVVNxRKe77GHg==","signatures":[{"sig":"MEYCIQCgltMYjZLaJld+xUY7brgFum3JmmU7r4/pT+bG48AfaAIhAJ6pidPSLVWb+O8GJL0dAummAX9iaGJVQIigGc3V0/hN","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":518410},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=20.10.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"ac5b434817a814ccbab6164cbddcf993fd6de7ca","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node benchmarks/qvd-read-flexible.bench.js && node benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node benchmarks/qvd-read-flexible.bench.js --ci && node benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.6.2","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"20.19.5","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.2.0","tsup":"^8.5.0","axios":"^1.13.2","dotenv":"^17.2.3","eslint":"^9.39.1","rimraf":"^6.1.0","globals":"^16.5.0","prettier":"^3.6.2","cross-env":"^10.1.0","tinybench":"^5.1.0","typescript":"^5.9.3","eslint-config-google":"^0.14.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_0.7.0_1762844104275_0.47547262807509383","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"qvdjs","version":"0.8.0","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@0.8.0","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://github.com/ptarmiganlabs/qvdjs#readme","bugs":{"url":"https://github.com/ptarmiganlabs/qvdjs/issues"},"dist":{"shasum":"980d8f45b476bedad539586eb8343297524afdc8","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-0.8.0.tgz","fileCount":7,"integrity":"sha512-muIj/nJymMSpsuUtK55dJG+GMiYrLpHSaxr4KjO5jzSnk1U3zP8Lq6Piqq9ebq2Qi795M3lLdjdqtoKL9EsdCg==","signatures":[{"sig":"MEUCIHCfrzZ48viiC8ZTjg6tFrGtKSncODZCZ7CaqcVqwaLnAiEA0NGftfu7DjuTwzRaacX27nh+3vaEbpB60gJSQa07sfU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":532694},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=20.10.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"c140d8fa5a55d16e93509f345491bf0ea167333c","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node benchmarks/qvd-read-flexible.bench.js && node benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node benchmarks/qvd-read-flexible.bench.js --ci && node benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.6.2","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"20.19.5","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.2.0","tsup":"^8.5.0","axios":"^1.13.2","dotenv":"^17.2.3","eslint":"^9.39.1","rimraf":"^6.1.0","globals":"^16.5.0","prettier":"^3.6.2","cross-env":"^10.1.0","tinybench":"^5.1.0","typescript":"^5.9.3","eslint-config-google":"^0.14.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_0.8.0_1762849870396_0.41575961554121377","host":"s3://npm-registry-packages-npm-production"}},"0.9.0":{"name":"qvdjs","version":"0.9.0","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@0.9.0","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://github.com/ptarmiganlabs/qvdjs#readme","bugs":{"url":"https://github.com/ptarmiganlabs/qvdjs/issues"},"dist":{"shasum":"cdc537581b7ff25fc5923b90bfb57e00332378c8","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-0.9.0.tgz","fileCount":7,"integrity":"sha512-iegQxWJHk0/QqbsOhYaJQLcNRCe7QfFPB+AeBbr9/tlfcTwEComnjRskVPAupE/kKwHp0T0pjgJnDaauMZyD+g==","signatures":[{"sig":"MEUCIC+gu/qoXSStGXhqW4CXrNEVQ8KFsys4vZLmt4qrdiSbAiEAr+EzRvcQUp8swVW/ue7vBqUxPCJpeyOeshUBMmYXS9w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":533767},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=20.10.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"cccae7f4908cee6441ba42e46bc2ecece5ec045f","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node benchmarks/qvd-read-flexible.bench.js && node benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node benchmarks/qvd-read-flexible.bench.js --ci && node benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.6.2","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"20.19.5","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.2.0","tsup":"^8.5.0","axios":"^1.13.2","dotenv":"^17.2.3","eslint":"^9.39.1","rimraf":"^6.1.0","globals":"^16.5.0","prettier":"^3.6.2","cross-env":"^10.1.0","tinybench":"^5.1.0","typescript":"^5.9.3","eslint-config-google":"^0.14.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_0.9.0_1762853930596_0.34426789381637946","host":"s3://npm-registry-packages-npm-production"}},"0.9.1":{"name":"qvdjs","version":"0.9.1","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@0.9.1","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://github.com/ptarmiganlabs/qvdjs#readme","bugs":{"url":"https://github.com/ptarmiganlabs/qvdjs/issues"},"dist":{"shasum":"30828a4e581344a97b2f929de6d1b553785327a7","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-0.9.1.tgz","fileCount":7,"integrity":"sha512-cG8adV+5Moal/oDET2Pu5XS8IJb0ExrHBEFpOlNYI6NjWX2P6kRDS3CPRlp3K7xBOYiAaE8NiTSPmsa6DZI5dg==","signatures":[{"sig":"MEQCIEcN++CK2qEE/qIxSJgksIvF42M6QTH4E95/fM40vFJsAiBl2cFy0NtglocVXbmf/HKFm1hScEHZ/9rIB0nOgA+TWw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQD1SaHviAIfTzwa5MczKIk0VLILqYTBicZf2hyseGY/pQIhAM7O3J07VbGbvqmnAeJ4TFA7WcHEK616s7zpMSvJJoCS","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":585806},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=20.10.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"10a7c307ad808730e16f51e5617357ce23488d75","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node benchmarks/qvd-read-flexible.bench.js && node benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node benchmarks/qvd-read-flexible.bench.js --ci && node benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.19.1","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.2.0","tsup":"^8.5.0","axios":"^1.13.2","dotenv":"^17.2.3","eslint":"^9.39.1","rimraf":"^6.1.0","globals":"^16.5.0","prettier":"^3.6.2","cross-env":"^10.1.0","tinybench":"^5.1.0","typescript":"^5.9.3","eslint-config-google":"^0.14.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_0.9.1_1788814479822_0.7777090838898573","host":"s3://npm-registry-packages-npm-production"}},"0.9.2":{"name":"qvdjs","version":"0.9.2","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@0.9.2","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://github.com/ptarmiganlabs/qvdjs#readme","bugs":{"url":"https://github.com/ptarmiganlabs/qvdjs/issues"},"dist":{"shasum":"2715041865a6adea5bddd2cf5da0e5ec2ab6883f","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-0.9.2.tgz","fileCount":7,"integrity":"sha512-BujyDGGC5NJJYsYGuFRNPM6IsOW8GZ+PYomIb76DBBFGpN6C8IfzKuOCti8A/55fJ7vul953xQ8u3sEbY1gScg==","signatures":[{"sig":"MEYCIQD8IEgwd2vA1yPb1aAL2qfJ8H/prqR7KjQA2BXcJXEhyQIhAP0qXc3pdzkgTz279ft4JapqkFoZ2827tG7ablCfESDH","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCxCKeBHhnPKbCjhh2soezV+pJey9QBjbk/qTN7U6hX7wIhAIXmIJbj+67AYnVZrOwoF6sLn05An9B3B1md9KUfs9S+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":603922},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=20.10.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"5d83dc7d3de13a8a7a43ffa1a7e153d340c173b0","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node benchmarks/qvd-read-flexible.bench.js && node benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node benchmarks/qvd-read-flexible.bench.js --ci && node benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"deprecated":"Security: on Windows, allowedDir can accept paths outside it. Upgrade to 1.0.1 or later.","repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.19.1","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.2.0","tsup":"^8.5.0","axios":"^1.13.2","dotenv":"^17.2.3","eslint":"^9.39.1","rimraf":"^6.1.0","globals":"^16.5.0","prettier":"^3.6.2","cross-env":"^10.1.0","tinybench":"^5.1.0","typescript":"^5.9.3","eslint-config-google":"^0.14.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_0.9.2_1789048231812_0.9863843665794918","host":"s3://npm-registry-packages-npm-production"}},"0.9.3":{"name":"qvdjs","version":"0.9.3","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@0.9.3","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://github.com/ptarmiganlabs/qvdjs#readme","bugs":{"url":"https://github.com/ptarmiganlabs/qvdjs/issues"},"dist":{"shasum":"03e8a383d4e6708463ca36a13fa08964803c46ea","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-0.9.3.tgz","fileCount":7,"integrity":"sha512-8aZcSylLZXLmrMLsIB2mRcSlXaQy+/8bbtpFnuno0dvGDad2epvFjesQB7QiJit8ny05jK/pP53Ed0qGAZ0tEQ==","signatures":[{"sig":"MEUCIQDP0UVBiJVPTOTPU46Xfc9cDYIAMdKwirV8IkUdy6LXrAIgFwt/xfJbNxRnRyE2+JH8ET/PZzk3ITroUT6e2dK8x3c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDVmn8P4WJ4a1TyfPb34ZEcj/oxZ032XCy+8IAMRCxcaAIhAJPxUQgfcKQjWvmQZeGqJFlvljApL8XGbM3uZgh5SgWu","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":645261},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=20.10.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"c05ad376dff53c15f8c77257c68df027f2d82d97","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node benchmarks/qvd-read-flexible.bench.js && node benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node benchmarks/qvd-read-flexible.bench.js --ci && node benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"deprecated":"Security: on Windows, allowedDir can accept paths outside it. Upgrade to 1.0.1 or later.","repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.19.1","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.2.0","tsup":"^8.5.0","axios":"^1.13.2","dotenv":"^17.2.3","eslint":"^9.39.1","rimraf":"^6.1.0","globals":"^16.5.0","prettier":"^3.6.2","cross-env":"^10.1.0","tinybench":"^5.1.0","typescript":"^5.9.3","eslint-config-google":"^0.14.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_0.9.3_1789056180363_0.97829725424465","host":"s3://npm-registry-packages-npm-production"}},"0.9.4":{"name":"qvdjs","version":"0.9.4","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@0.9.4","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://github.com/ptarmiganlabs/qvdjs#readme","bugs":{"url":"https://github.com/ptarmiganlabs/qvdjs/issues"},"dist":{"shasum":"6c699992806a20f05ea084aeec86330ba9895110","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-0.9.4.tgz","fileCount":7,"integrity":"sha512-U7LrEXtJQ/dIJWCpki7h+i50p6Orth+9ddQ3SwzWxMBwMUbDpv1m23WbteV+7gJDmpsRY7Xcgd2YBLVnuzZmuQ==","signatures":[{"sig":"MEQCIAmAQDFoEd/c3VMThgFcsEk8qUUPn3vHrB9gAtoMdFNNAiA3Dy327Wk5AYpZdvznIo/Y+HglxE6Jfnq4ZaofThFOlw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDp/NcTUbNItLrUaa4Kp7TMw+kz4rYFZcAnYF4bArp66gIgQ8thT9zsR7gIPsfovozcKm6vxdLR0+FfoBPuXz8C+0g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":645261},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=20.10.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"ed354fd3347cc992e650acbc5bd64f4ec2478614","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node benchmarks/qvd-read-flexible.bench.js && node benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node benchmarks/qvd-read-flexible.bench.js --ci && node benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"deprecated":"Security: on Windows, allowedDir can accept paths outside it. Upgrade to 1.0.1 or later.","repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.19.1","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.2.0","tsup":"^8.5.0","axios":"^1.13.2","dotenv":"^17.2.3","eslint":"^9.39.1","rimraf":"^6.1.0","globals":"^16.5.0","prettier":"^3.6.2","cross-env":"^10.1.0","tinybench":"^5.1.0","typescript":"^5.9.3","eslint-config-google":"^0.14.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_0.9.4_1789056963710_0.2324561760631545","host":"s3://npm-registry-packages-npm-production"}},"0.10.0":{"name":"qvdjs","version":"0.10.0","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@0.10.0","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://github.com/ptarmiganlabs/qvdjs#readme","bugs":{"url":"https://github.com/ptarmiganlabs/qvdjs/issues"},"dist":{"shasum":"237e9136891c97c98b88936665f6ac07ae96daf6","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-0.10.0.tgz","fileCount":7,"integrity":"sha512-APCWLIN4WPDNiPv8rFjExyig4M2YwJcfZxU7CeJyk6VB5ElkiK4kLSvXPc0l3s/MO92ykZHAWhL6zy2EKGN1Og==","signatures":[{"sig":"MEQCICLNKnZJ+Dukon+xAzoMjERcDzltRF8yc6KhzPVyCeICAiBTDgWoibD/1etdO4gg3BzLdUAccJFD+IUocF7/K818Dw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCICpzPO+R34JVqWsHWRKbUbrXn7e/gQbG/UCng84/P4OwAiEApY+ZmSUK61PDzrQFUGkuNW0aQ+tVEGJTS6RCqImCnNU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":828496},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=20.10.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"ce44143788da3d515405429c5300dd85778a084f","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js --ci && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"deprecated":"Security: on Windows, allowedDir can accept paths outside it. Upgrade to 1.0.1 or later.","repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.19.1","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.5.1","tsup":"^8.5.1","axios":"^1.20.0","dotenv":"^17.4.2","eslint":"^10.10.0","rimraf":"^6.1.3","globals":"^17.12.0","prettier":"^3.9.6","cross-env":"^10.1.0","tinybench":"^6.1.5","@eslint/js":"^10.0.1","typescript":"^7.0.2","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.6"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_0.10.0_1789152272044_0.3521930628497818","host":"s3://npm-registry-packages-npm-production"}},"0.10.1":{"name":"qvdjs","version":"0.10.1","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@0.10.1","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://github.com/ptarmiganlabs/qvdjs#readme","bugs":{"url":"https://github.com/ptarmiganlabs/qvdjs/issues"},"dist":{"shasum":"e35f7cc0e79244633d99f2fc3c74a78060973b6e","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-0.10.1.tgz","fileCount":7,"integrity":"sha512-dZoH8hTJ0LPOHAb+lf1s09pG48oA6S1SPdoa5G5n6iV1NqSipxY+D7C8xsZn+w+sM4fxjkVh3apgqu4wGgbBgw==","signatures":[{"sig":"MEYCIQDtakANqJLfl4tDDaF/9JIFgEVRaauyyew7EALt+z81sgIhAITQw8kwZOLvojRdmeSa/u2ghXXHMouFbG1cGVI0ymQl","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCLe4BGD/aeMO5Bc4BgWVUFGIqGfYw+vaVYd1BgBHg20gIhAIKdPcZ3TSrHCR55rajZlVqvgK31mGX7MdPMurLSB85e","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":842911},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=20.10.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"c53376c3cc3f2439418e1b074ba3d122badd1c6b","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js --ci && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"deprecated":"Security: on Windows, allowedDir can accept paths outside it. Upgrade to 1.0.1 or later.","repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.19.1","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.5.1","tsup":"^8.5.1","axios":"^1.20.0","dotenv":"^17.4.2","eslint":"^10.10.0","rimraf":"^6.1.3","globals":"^17.12.0","prettier":"^3.9.6","cross-env":"^10.1.0","tinybench":"^6.1.5","@eslint/js":"^10.0.1","typescript":"^7.0.2","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.6"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_0.10.1_1789201228930_0.5776019567854926","host":"s3://npm-registry-packages-npm-production"}},"0.11.0":{"name":"qvdjs","version":"0.11.0","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@0.11.0","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://github.com/ptarmiganlabs/qvdjs#readme","bugs":{"url":"https://github.com/ptarmiganlabs/qvdjs/issues"},"dist":{"shasum":"09ed9d092b029719aa72d83afacc58f3f259cf4a","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-0.11.0.tgz","fileCount":8,"integrity":"sha512-ndb2P/shIvTz2Fp4K3ozpQhB2wElhcNn+Sh8dJbS4fGdhPBb6QcR7ArVLnJMhvtLgl6OGtUuBQA2MzL0omDDIg==","signatures":[{"sig":"MEUCIELao3y0zZmA+XhpIFaetHP0WLIOou/B/3rrSVA6QFtwAiEAk7X/IayWz3m/y8nXw9TV27KjdnurLX8Fpcnkblafib8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIBVCXSzWccgFTbyFjKAemNIOBVDWVzuJaYgl8Pgv48hBAiEA7b/SvB/GvMZiefowHfW+CgCikkxxT3u71vYtlQSc77Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1063957},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=20.10.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"0d6f01242ab18c407035bcdeae3726b93bff3f7b","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js --ci && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js","logo:generate":"./scripts/generate-logo-assets.sh --all","logo:validate":"./scripts/generate-logo-assets.sh --all --validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"deprecated":"Security: on Windows, allowedDir can accept paths outside it. Upgrade to 1.0.1 or later.","repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.19.1","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.5.1","tsup":"^8.5.1","axios":"^1.20.0","dotenv":"^17.4.2","eslint":"^10.10.0","rimraf":"^6.1.3","globals":"^17.12.0","prettier":"^3.9.6","cross-env":"^10.1.0","tinybench":"^6.1.5","@eslint/js":"^10.0.1","typescript":"^7.0.2","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.6"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_0.11.0_1789217687469_0.09090464590116976","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"qvdjs","version":"1.0.0","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@1.0.0","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://github.com/ptarmiganlabs/qvdjs#readme","bugs":{"url":"https://github.com/ptarmiganlabs/qvdjs/issues"},"dist":{"shasum":"960ea8f2ca1624e94c01f99885c3d64f0126b997","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-1.0.0.tgz","fileCount":8,"integrity":"sha512-GEojGoSbElspXggpYotN0ak+bwnfpHFLIwflM1jYDum97uqmd3hcHCCHovFFSh+bDR7g/sTpxQuyY511SOhv7w==","signatures":[{"sig":"MEUCIQCuah6pjYjynZXJjDb24CO03ViGPunJOVIHQeKsyPJgpgIgEgQ9PBv68GG0+0DTvKLT2HeBBfLSfrkgauctLayS6X0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQD4XFXjDVVueh62Lu0wLTbXdDHPIdYxoy94ohkcNsrXmQIhAJBQU9ThB65RQHzk2Ok28Tjd8tb1j/Zkezk/85hm2Dwl","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1430485},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=20.10.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"bb8ef7bfc7fea077a581eec5852f8495f7bd3f3a","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js --ci && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js","logo:generate":"./scripts/generate-logo-assets.sh --all","logo:validate":"./scripts/generate-logo-assets.sh --all --validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"deprecated":"Security: on Windows, allowedDir can accept paths outside it. Upgrade to 1.0.1 or later.","repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.19.1","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.5.1","tsup":"^8.5.1","axios":"^1.20.0","dotenv":"^17.4.2","eslint":"^10.10.0","rimraf":"^6.1.3","globals":"^17.12.0","js-yaml":"^3.15.2","prettier":"^3.9.6","cross-env":"^10.1.0","tinybench":"^6.1.5","@eslint/js":"^10.0.1","typescript":"^7.0.2","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.6"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_1.0.0_1789714360361_0.2303138905770532","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"qvdjs","version":"1.0.1","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@1.0.1","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://github.com/ptarmiganlabs/qvdjs#readme","bugs":{"url":"https://github.com/ptarmiganlabs/qvdjs/issues"},"dist":{"shasum":"94d718a4c73bdd2b91abacddbde573ce985d1256","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-1.0.1.tgz","fileCount":8,"integrity":"sha512-EyYnwHtgrlJRmTzIH6omOjBymZYUdpgeshm4t5oHKaVQ3ijGupvsqHNcRQGNhvCY2BFOFgJDLi6l1yCYoSXSig==","signatures":[{"sig":"MEYCIQDeqtXoy44EzH37CDLkuteFRBHJ5ZZeqGs8/SUy+mLm1gIhALFJmF1GJuHtEmDfI+SmL0RLpeaUYP5a5j0n6h4VRMrl","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCNxaOKYqlLyKijhSm2lu5O4a+4gVwVtoV1tzrvGcfSZAIgPMVdbKVoy8SKMatnxunr+aLKuO2F+bL9dSOdqK5l0Dk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1432459},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=20.10.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"22754794eefd83762a206b2cd6b43a3b4bdc5b7b","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js --ci && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js","test:qlik":"cross-env NODE_OPTIONS=--experimental-vm-modules jest --config jest.qlik.config.js --runInBand","logo:generate":"./scripts/generate-logo-assets.sh --all","logo:validate":"./scripts/generate-logo-assets.sh --all --validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.19.1","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"ws":"^8.21.3","jest":"^30.5.1","tsup":"^8.5.1","axios":"^1.20.0","dotenv":"^17.4.2","eslint":"^10.10.0","rimraf":"^6.1.3","globals":"^17.12.0","js-yaml":"^3.15.2","prettier":"^3.9.6","cross-env":"^10.1.0","enigma.js":"^2.14.0","tinybench":"^6.1.5","@eslint/js":"^10.0.1","typescript":"^7.0.2","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.6"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_1.0.1_1789734895112_0.6015328241419804","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"qvdjs","version":"2.0.0","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@2.0.0","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://ptarmiganlabs.com","bugs":{"email":"bugs@ptarmiganlabs.com"},"dist":{"shasum":"9e716b47a3fed0990ad93c79c8b0ee4ff6cb0704","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-2.0.0.tgz","fileCount":8,"integrity":"sha512-jzo2826z1odpS0q0C8BIBPVOz4uWXRoX9QMum/z2KTM36vAFCgBEmANn27GBDKBt+hgU95pHHb+efRggTU/kog==","signatures":[{"sig":"MEYCIQD6aZyH8S9pO3XlddfANgQbGG1e1/wujkTigWZGomCIZQIhAOvuoQgX3WxanycAml2FXgn5OEn+VQWZTCDAAbVYQQr/","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDj0FiPsagbFVdy/mF3rT0UszIL/61YKoXTLsSChCfXRgIhAKLPlOYiexg0cbED23MntHfc/vkDcdxdJjSghdzE8/ix","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1623788},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=22.0.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"9a4aedd8bfc521403b96b3bba9a3449548694ca0","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js --ci && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js","test:qlik":"cross-env NODE_OPTIONS=--experimental-vm-modules jest --config jest.qlik.config.js --runInBand","logo:generate":"./scripts/generate-logo-assets.sh --all","logo:validate":"./scripts/generate-logo-assets.sh --all --validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.19.1","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"ws":"^8.21.3","jest":"^30.5.1","tsup":"^8.5.1","axios":"^1.20.0","dotenv":"^17.4.2","eslint":"^10.10.0","rimraf":"^6.1.3","globals":"^17.12.0","js-yaml":"^3.15.2","prettier":"^3.9.6","cross-env":"^10.1.0","enigma.js":"^2.14.0","tinybench":"^6.1.5","@eslint/js":"^10.0.1","typescript":"^7.0.2","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.6"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_2.0.0_1790013811522_0.2575296015677411","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"qvdjs","version":"2.0.1","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@2.0.1","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://ptarmiganlabs.com","bugs":{"email":"bugs@ptarmiganlabs.com"},"dist":{"shasum":"f633bb1d90a4bb9084794b51dbea779fc6f49583","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-2.0.1.tgz","fileCount":8,"integrity":"sha512-oR7+vIxvjnVvlR8KWg4cHhWM47ENbYKcfZF/EN54hUffAfYEUS6y6zl1M/mye5U/twlKluhKeP9rF1kWTjaMBg==","signatures":[{"sig":"MEUCIE2jVDxYY+N8A0LjuT7zSMVxMqrQayVxqsCgj5x1/SVEAiEAg3pSxRyM+rwf12AsKpimJVnVwN97eFHLtJRQoFGOqqM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDBq3kn+8ASzwUXWQc1++eT+CqSXhMh+qFJaC2AhuMQewIhAODJgpr9cUP3OUbCokKfsPNfCmKpWLJQotYWCm11C613","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1663582},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=22.0.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"c9d853b686865017211e0923e74e8c1bd48833e3","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js --ci && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js","test:qlik":"cross-env NODE_OPTIONS=--experimental-vm-modules jest --config jest.qlik.config.js --runInBand","logo:generate":"./scripts/generate-logo-assets.sh --all","logo:validate":"./scripts/generate-logo-assets.sh --all --validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.19.1","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"ws":"^8.21.3","jest":"^30.5.1","tsup":"^8.5.1","axios":"^1.20.0","dotenv":"^17.4.2","eslint":"^10.10.0","rimraf":"^6.1.3","globals":"^17.12.0","js-yaml":"^3.15.2","prettier":"^3.9.6","cross-env":"^10.1.0","enigma.js":"^2.14.0","tinybench":"^6.1.5","@eslint/js":"^10.0.1","typescript":"^7.0.2","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.6"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_2.0.1_1790050647128_0.4370720773126042","host":"s3://npm-registry-packages-npm-production"}},"2.0.2":{"name":"qvdjs","version":"2.0.2","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@2.0.2","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://ptarmiganlabs.com","bugs":{"email":"bugs@ptarmiganlabs.com"},"dist":{"shasum":"cbb39d193c5236b44e2898d45657661318256c7f","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-2.0.2.tgz","fileCount":8,"integrity":"sha512-zCM746uVOS3wcpy/LOjAv5fj07Jw671l45Q+ONkiJJmYW0wL9zu5WUP1K61q09U9XqQjQ+kty1x5sFEaV2NUoQ==","signatures":[{"sig":"MEUCIGZX96tPMTQMgZLz1uPDUaxftJGmA4FiLsS7Gh06Gy2JAiEAiWAUOerOpmkruPhF4u35mMJeZWjU/P4NLcIuHPb6dkU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIBWUO+4adu+UWoyMi4S0TD6mYIb1Cyy6TJ8hYwOW6UJUAiEAlosB94Spm2gyYj6QSSl378y53b7CfP7hXS1XTIDmdNg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1697620},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=22.0.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"ef932fd1d3156d2fa7ebfc648f9e24db32bc26f3","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js --ci && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js","test:qlik":"cross-env NODE_OPTIONS=--experimental-vm-modules jest --config jest.qlik.config.js --runInBand","logo:generate":"./scripts/generate-logo-assets.sh --all","logo:validate":"./scripts/generate-logo-assets.sh --all --validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.19.1","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"ws":"^8.21.3","jest":"^30.5.1","tsup":"^8.5.1","axios":"^1.20.0","dotenv":"^17.4.2","eslint":"^10.10.0","rimraf":"^6.1.3","globals":"^17.12.0","js-yaml":"^3.15.2","prettier":"^3.9.6","cross-env":"^10.1.0","enigma.js":"^2.14.0","tinybench":"^6.1.5","@eslint/js":"^10.0.1","typescript":"^7.0.2","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.6"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_2.0.2_1790061934339_0.33098020601943423","host":"s3://npm-registry-packages-npm-production"}},"2.0.3":{"name":"qvdjs","version":"2.0.3","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@2.0.3","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://ptarmiganlabs.com","bugs":{"email":"bugs@ptarmiganlabs.com"},"dist":{"shasum":"8559447150aa1d21f20851433ab9a5166693fdfb","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-2.0.3.tgz","fileCount":8,"integrity":"sha512-UxOmz7oDzcdwhl24AbSJ8KYfzFNDrc0Ek3/H9aOA5hpYrOWjy1/3NYcTC73Wrd7YcD0A+i/ftFBlo/BaqjagNw==","signatures":[{"sig":"MEYCIQCRvnPnA5fQY0IrfBj5rfQeea15tdpuXGJaG/hyhIXu3gIhAOkz0XpOooP4XQ+F1g8IlgOVrk5KFChnrN6nCShmhanZ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQC3BdVy0Oq/VNTMozwN0zUCQvotTUhn+Xyw1hUmeiH5EwIhANBNB/ClKoBxWTVjCM8PjnA3cKn5RnciPLoVQsQASVCG","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1697620},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=22.0.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"5d55c7116e74b586ead3983a2f14da7286f0c240","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js --ci && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js","test:qlik":"cross-env NODE_OPTIONS=--experimental-vm-modules jest --config jest.qlik.config.js --runInBand","logo:generate":"./scripts/generate-logo-assets.sh --all","logo:validate":"./scripts/generate-logo-assets.sh --all --validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.19.1","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"ws":"^8.21.3","jest":"^30.5.1","tsup":"^8.5.1","axios":"^1.20.0","dotenv":"^17.4.2","eslint":"^10.10.0","rimraf":"^6.1.3","globals":"^17.12.0","js-yaml":"^3.15.2","prettier":"^3.9.6","cross-env":"^10.1.0","enigma.js":"^2.14.0","tinybench":"^6.1.5","@eslint/js":"^10.0.1","typescript":"^7.0.2","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.6"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_2.0.3_1790069129712_0.11286148984141486","host":"s3://npm-registry-packages-npm-production"}},"2.0.4":{"name":"qvdjs","version":"2.0.4","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@2.0.4","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://ptarmiganlabs.com","bugs":{"email":"bugs@ptarmiganlabs.com"},"dist":{"shasum":"a7cfb169d4d0400174f309b3087e41708a5625ff","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-2.0.4.tgz","fileCount":8,"integrity":"sha512-6AlFn3RSLOWbuJzbyXl6lavpsmYU/gsHFceEC/z+zA9LbX1XUhgYYR/N87sT+8+Fn7buRib2uF3WojKREtgN0Q==","signatures":[{"sig":"MEYCIQC5CmCWj/V6071bfCuOI0ih/YFwbkQhKz2t23ashYubVQIhAO3J7smz7UsZgc7ABRBfYIJDLwPLMQeC5DNHejYpg6OS","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIBUHKbpL5LctFCr0JHRSb4BK/mG5yOkDUpW7IQcdmZpzAiB4oqt9ERzmcPzOZ+7XgwmvJrIAfzJa42lR4rMjG6N+WA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1697620},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=22.0.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"1cefaeda740065edf06211dc591db2f5d7bfa4e4","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js --ci && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js","test:qlik":"cross-env NODE_OPTIONS=--experimental-vm-modules jest --config jest.qlik.config.js --runInBand","logo:generate":"./scripts/generate-logo-assets.sh --all","logo:validate":"./scripts/generate-logo-assets.sh --all --validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.19.1","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"ws":"^8.21.3","jest":"^30.5.1","tsup":"^8.5.1","axios":"^1.20.0","dotenv":"^17.4.2","eslint":"^10.10.0","rimraf":"^6.1.3","globals":"^17.12.0","js-yaml":"^3.15.2","prettier":"^3.9.6","cross-env":"^10.1.0","enigma.js":"^2.14.0","tinybench":"^6.1.5","@eslint/js":"^10.0.1","typescript":"^7.0.2","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.6"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_2.0.4_1790078356806_0.8985742987969279","host":"s3://npm-registry-packages-npm-production"}},"2.0.5":{"name":"qvdjs","version":"2.0.5","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@2.0.5","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://ptarmiganlabs.com","bugs":{"email":"bugs@ptarmiganlabs.com"},"dist":{"shasum":"3ded9724a84f22d7f6cb1d9920fd3aa33a4f520d","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-2.0.5.tgz","fileCount":8,"integrity":"sha512-gDX9yu/EmV0IFXSuhovZovI+AM4DburB2PR+MKwTjxKshcuvVkwRgGURTT6oNx4ih7O9jXTvI8qh9Rn8pJDSlA==","signatures":[{"sig":"MEYCIQDGuvgH31YzLeMj9NxmCwYV+kkoM3ZgznzYq+4fWZ65EgIhALxWvNx3/hmBpnvlbcZ8PFI6mC12Z+1ktN0YF2Zy/cVb","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCTIItGpPdGz/bjXLKUWD6cnQC1eKPVif0V8iUI3atnoQIhAMTOdF82N3+lPkBu6Ed4Uxv5IfGt9S09YlRR5EyOl7Ci","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1697620},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=22.0.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"8c3299b936c5d1fdb3d795e8fdbc8c54ab69cd89","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js --ci && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js","test:qlik":"cross-env NODE_OPTIONS=--experimental-vm-modules jest --config jest.qlik.config.js --runInBand","logo:generate":"./scripts/generate-logo-assets.sh --all","logo:validate":"./scripts/generate-logo-assets.sh --all --validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.19.1","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"ws":"^8.21.3","jest":"^30.5.1","tsup":"^8.5.1","axios":"^1.20.0","dotenv":"^17.4.2","eslint":"^10.10.0","rimraf":"^6.1.3","globals":"^17.12.0","js-yaml":"^3.15.2","prettier":"^3.9.6","cross-env":"^10.1.0","enigma.js":"^2.14.0","tinybench":"^6.1.5","@eslint/js":"^10.0.1","typescript":"^7.0.2","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.6"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_2.0.5_1790083344961_0.8416401466756609","host":"s3://npm-registry-packages-npm-production"}},"2.0.6":{"name":"qvdjs","version":"2.0.6","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@2.0.6","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://ptarmiganlabs.com","bugs":{"email":"bugs@ptarmiganlabs.com"},"dist":{"shasum":"437097a27f1ab4fc34b46280f33f6b3d08c2020e","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-2.0.6.tgz","fileCount":8,"integrity":"sha512-dTydqeOd9GE70+Z4Wdnxp98ZML0U/o3KFvS70m1wTdQMMVOM5TGwMVgzZ4LgZvFgjco7itHjC4nYYVNOWs/sXg==","signatures":[{"sig":"MEQCIFnW+3tDRpGm4RJVRmNm6OAJ7Aap49x2Q2u5Rpl/ybl7AiAqlB3Ekb5Qyr+CPqU5gA7fmsT0YlPalZKarfsgCiU4Hg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDZ5IOAkI8p7vZcMWjzpAhOyLtd0bHoKlNz4ES86Q/QrgIgRGJPBm9TOBb+j0ySfij85vsRssFBlIMAvkSY+ppfhQk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1856035},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=22.0.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"cc4d889a82a6ca7a8e704eb96e51fba1ad2ae24e","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js --ci && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js","test:qlik":"cross-env NODE_OPTIONS=--experimental-vm-modules jest --config jest.qlik.config.js --runInBand","test:large":"cross-env NODE_OPTIONS=\"--experimental-vm-modules --max-old-space-size=32768\" jest --config jest.large.config.js --runInBand","logo:generate":"./scripts/generate-logo-assets.sh --all","logo:validate":"./scripts/generate-logo-assets.sh --all --validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.20.0","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"24.21.0","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"ws":"^8.21.3","jest":"^30.5.1","tsup":"^8.5.1","axios":"^1.20.0","dotenv":"^17.4.2","eslint":"^10.10.0","rimraf":"^6.1.3","globals":"^17.12.0","js-yaml":"^3.15.2","prettier":"^3.9.6","cross-env":"^10.1.0","enigma.js":"^2.14.0","tinybench":"^6.1.5","@eslint/js":"^10.0.1","typescript":"^7.0.2","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.6"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_2.0.6_1790249262614_0.6759600665686467","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"qvdjs","version":"2.1.0","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@2.1.0","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://ptarmiganlabs.com","bugs":{"email":"bugs@ptarmiganlabs.com"},"dist":{"shasum":"c5c4768523acb040f7a9c8347b5c4e73399854a4","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-2.1.0.tgz","fileCount":8,"integrity":"sha512-oCZy8/hYvp8yQsTBzgDED9cfPdZyOm79G3NzyyZdLmvottKT/jOr48l69BqtT470JHO3c8kbUmouuamCrcNCtg==","signatures":[{"sig":"MEUCIQDuJzJK9AHqeuc4jsNOU2Jb+QoFSYf8iwAYdO+DjIwc/QIgMqAilAhanqsRDsPb0QzAc4sG1sjev6G3sEE1yxQN+3w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIFWydyl5tdVFb4wUr7oEkiIjL1p9WpY+URpCYTUoBVTRAiBuL3A0mc5K7RDc9Nal3+i8Cge346DC4VKMFIfdgSwaTg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1958623},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=22.0.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"6db46b00ff92fa844f418fb3fa9fdb9c6540bdc9","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js --ci && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js","test:qlik":"cross-env NODE_OPTIONS=--experimental-vm-modules jest --config jest.qlik.config.js --runInBand","test:large":"cross-env NODE_OPTIONS=\"--experimental-vm-modules --max-old-space-size=32768\" jest --config jest.large.config.js --runInBand","logo:generate":"./scripts/generate-logo-assets.sh --all","logo:validate":"./scripts/generate-logo-assets.sh --all --validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.20.0","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"24.21.0","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"ws":"^8.21.3","jest":"^30.5.1","tsup":"^8.5.1","axios":"^1.20.0","dotenv":"^17.4.2","eslint":"^10.10.0","rimraf":"^6.1.3","globals":"^17.12.0","js-yaml":"^3.15.2","prettier":"^3.9.6","cross-env":"^10.1.0","enigma.js":"^2.14.0","tinybench":"^6.1.5","@eslint/js":"^10.0.1","typescript":"^7.0.2","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.6"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_2.1.0_1790260068747_0.8169105977777844","host":"s3://npm-registry-packages-npm-production"}},"2.2.0":{"name":"qvdjs","version":"2.2.0","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@2.2.0","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://ptarmiganlabs.com","bugs":{"email":"bugs@ptarmiganlabs.com"},"dist":{"shasum":"7ad196f98bd221d10f5665e21b1deb57b07f394e","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-2.2.0.tgz","fileCount":8,"integrity":"sha512-yNqXuQDkHc3mME6ev2yPaJ6DwlhOsCJYUQnmlUYjUmQMnZLpY4J0ArfOuW/WlncqiVvqUnkI0ZYccCHvErADgA==","signatures":[{"sig":"MEYCIQCNTLbJ91WyuVRWD7dUp2ZC2+byGCKhANE1/oWsorPiwAIhAIin24MnGM8JS5RhIXUFOVRaKFmsY0qpGnL/vCP8qNch","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCICqv79kLSiGu2J2gzg5dHFJ2FtvukTWCytB24yUiW87WAiBWb3C5AM115nwQgM0X7JblabdDDZQzw3cuwYnkjPltVw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2109580},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=22.0.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"e030469c66dbc82c9662e7420e97ce4f0575b95c","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js --ci && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js","test:qlik":"cross-env NODE_OPTIONS=--experimental-vm-modules jest --config jest.qlik.config.js --runInBand","test:large":"cross-env NODE_OPTIONS=\"--experimental-vm-modules --max-old-space-size=32768\" jest --config jest.large.config.js --runInBand","logo:generate":"./scripts/generate-logo-assets.sh --all","logo:validate":"./scripts/generate-logo-assets.sh --all --validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.20.0","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"24.21.0","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"ws":"^8.21.3","jest":"^30.5.1","tsup":"^8.5.1","axios":"^1.20.0","dotenv":"^17.4.2","eslint":"^10.10.0","rimraf":"^6.1.3","globals":"^17.12.0","js-yaml":"^3.15.2","prettier":"^3.9.6","cross-env":"^10.1.0","enigma.js":"^2.14.0","tinybench":"^6.1.5","@eslint/js":"^10.0.1","typescript":"^7.0.2","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.6"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_2.2.0_1790282699532_0.6212926233301657","host":"s3://npm-registry-packages-npm-production"}},"2.2.1":{"name":"qvdjs","version":"2.2.1","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@2.2.1","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://ptarmiganlabs.com","bugs":{"email":"bugs@ptarmiganlabs.com"},"dist":{"shasum":"5019729c0e2d79bdf0e9855c2a6ee045f5a0db75","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-2.2.1.tgz","fileCount":8,"integrity":"sha512-GAMxfy8rHtq0VXF8T315UPiXZOC51OjNoVLV4lFbD5ZEz4GJT7ZOBhaAjN/z2RWNIhwJ5khY3yhUvMR9LFw6Qw==","signatures":[{"sig":"MEYCIQD6DCjzvXRXTIFsWmIDTk2Z2aMZqmsflHjwghKJ+vIA0QIhAM9nzPZebE4VdQ44538vWDz0byE2uIanjj7+KBHoj01i","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIGEibNwOx+meuIvGqAAu9rgov7bQLIQcrvv01PPK+ZqVAiB1qWHOqNzHyU+lZZLtH/4WpEIrQ/gbXwsHkzz8Y8UplA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2139827},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=22.0.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"b1f61e9829a16818e631c2440e36798aec55021c","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js --ci && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js","test:qlik":"cross-env NODE_OPTIONS=--experimental-vm-modules jest --config jest.qlik.config.js --runInBand","test:large":"cross-env NODE_OPTIONS=\"--experimental-vm-modules --max-old-space-size=32768\" jest --config jest.large.config.js --runInBand","logo:generate":"./scripts/generate-logo-assets.sh --all","logo:validate":"./scripts/generate-logo-assets.sh --all --validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.20.0","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"24.21.0","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"ws":"^8.21.3","jest":"^30.5.1","tsup":"^8.5.1","axios":"^1.20.0","dotenv":"^17.4.2","eslint":"^10.10.0","rimraf":"^6.1.3","globals":"^17.12.0","js-yaml":"^3.15.2","prettier":"^3.9.6","cross-env":"^10.1.0","enigma.js":"^2.14.0","tinybench":"^6.1.5","@eslint/js":"^10.0.1","typescript":"^7.0.2","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.6"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_2.2.1_1790314546509_0.9307579128514718","host":"s3://npm-registry-packages-npm-production"}},"2.2.2":{"name":"qvdjs","version":"2.2.2","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@2.2.2","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://ptarmiganlabs.com","bugs":{"email":"bugs@ptarmiganlabs.com"},"dist":{"shasum":"631afb5c73eddc2d87f53d14802b2619301b5593","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-2.2.2.tgz","fileCount":8,"integrity":"sha512-7BJ5ARwcufRgJJvNwS4noN9Ql9OBts38IvJPX6Xvu8SEsYgp2C+ds35tb6ti9OViyd5pVs1+e6vJ/Tz89tHp1w==","signatures":[{"sig":"MEYCIQDzJmKewPuuZ/PMQfahjDOUCTUSCdZqZdE1XCP03Bn5EAIhANcNMOzUaduel1jHdMsAKmXUKhTGxn7XWbc4EXvYUVWP","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDObb7Os6vUU/RpzbQC0GON0NrelO6inohuTTg+2T4XuAIgAOLXiwBWNK9bSPUp7cBFfcGQo7Mi5I0/3JdcMz33G08=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2148277},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=22.0.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"31df727e3f20807b0deb4316e95837b26b15dd0c","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js --ci && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js","test:qlik":"cross-env NODE_OPTIONS=--experimental-vm-modules jest --config jest.qlik.config.js --runInBand","test:large":"cross-env NODE_OPTIONS=\"--experimental-vm-modules --max-old-space-size=32768\" jest --config jest.large.config.js --runInBand","logo:generate":"./scripts/generate-logo-assets.sh --all","logo:validate":"./scripts/generate-logo-assets.sh --all --validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.20.0","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"24.21.0","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"ws":"^8.21.3","jest":"^30.5.1","tsup":"^8.5.1","axios":"^1.20.0","dotenv":"^17.4.2","eslint":"^10.10.0","rimraf":"^6.1.3","globals":"^17.12.0","js-yaml":"^3.15.2","prettier":"^3.9.6","cross-env":"^10.1.0","enigma.js":"^2.14.0","tinybench":"^6.1.5","@eslint/js":"^10.0.1","typescript":"^7.0.2","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.6"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_2.2.2_1790321362564_0.9786538880908984","host":"s3://npm-registry-packages-npm-production"}},"2.2.3":{"name":"qvdjs","version":"2.2.3","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@2.2.3","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://ptarmiganlabs.com","bugs":{"email":"bugs@ptarmiganlabs.com"},"dist":{"shasum":"64549d75b9adfce708a7b1694f5850eeb09436d1","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-2.2.3.tgz","fileCount":8,"integrity":"sha512-2WYClHtPFafLfuX8OpHl+YUazOXD6Y07r//4aQuBCnNbfnTk+Yneslc+zVOYJnnTfGhHTeEn3jxpZCEhT1v2Jw==","signatures":[{"sig":"MEYCIQCEmPLGH11oInkJ7dGuHB0Xw+6kv0O54mpzo9t0TaFEVAIhAK4R99Opz8AenHvBv7VrVDaOv8cA2+b65OHQFjOA9bf+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCZ6NQb1h9xRunsGFXWm2me8jK0ywDWX7+KQRRyglT1twIgDZI66n7dCWdTKl1Bn1i0GhHAZZ3zXCAHRd/bcoieAzY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2244699},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=22.0.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"fd27a66d98c95ab2ee95d6cdb68ada70849c723d","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js --ci && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js","test:qlik":"cross-env NODE_OPTIONS=--experimental-vm-modules jest --config jest.qlik.config.js --runInBand","test:large":"cross-env NODE_OPTIONS=\"--experimental-vm-modules --max-old-space-size=32768\" jest --config jest.large.config.js --runInBand","logo:generate":"./scripts/generate-logo-assets.sh --all","logo:validate":"./scripts/generate-logo-assets.sh --all --validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.20.0","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"24.21.0","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"ws":"^8.21.3","jest":"^30.5.1","tsup":"^8.5.1","axios":"^1.20.0","dotenv":"^17.4.2","eslint":"^10.10.0","rimraf":"^6.1.3","globals":"^17.12.0","js-yaml":"^3.15.2","prettier":"^3.9.6","cross-env":"^10.1.0","enigma.js":"^2.14.0","tinybench":"^6.1.5","@eslint/js":"^10.0.1","typescript":"^7.0.2","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.6"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_2.2.3_1790376946210_0.8159566019412479","host":"s3://npm-registry-packages-npm-production"}},"2.2.4":{"name":"qvdjs","version":"2.2.4","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@2.2.4","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://ptarmiganlabs.com","bugs":{"email":"bugs@ptarmiganlabs.com"},"dist":{"shasum":"0f9521ba63ad10bd912fdd21f62544bab393a46f","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-2.2.4.tgz","fileCount":8,"integrity":"sha512-VXPXtXAA5kKspxZgkqnv8wndHaNg0Zq4T5u4R7w14RVRasEDo5/VODODU/lRZ7Rrnx5Vl6fVQh0cBfqni7vtwg==","signatures":[{"sig":"MEYCIQC7TTo/rryNA/nDHgjFivuWMdeNdyaZ2tfPr8T5/sT6QAIhAI75XkkMPlUtp0OrvkU6KfmfBecdDHPcV44GQMeY65tg","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCiFtkDH1fHI8VghF7weRR4ziYTrZ+oyXTh/b/HgcPIRQIhAPXvSLHLCno/kx82Z0zFcvNZmBa4kDenHKe/GKvAat7t","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2246307},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=22.0.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"18c4ca25f660e22576102a016817652c4ee6d054","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js --ci && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js","test:qlik":"cross-env NODE_OPTIONS=--experimental-vm-modules jest --config jest.qlik.config.js --runInBand","test:large":"cross-env NODE_OPTIONS=\"--experimental-vm-modules --max-old-space-size=32768\" jest --config jest.large.config.js --runInBand","logo:generate":"./scripts/generate-logo-assets.sh --all","logo:validate":"./scripts/generate-logo-assets.sh --all --validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.20.0","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"24.21.0","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"ws":"^8.21.3","jest":"^30.5.1","tsup":"^8.5.1","axios":"^1.20.0","dotenv":"^17.4.2","eslint":"^10.10.0","rimraf":"^6.1.3","globals":"^17.12.0","js-yaml":"^3.15.2","prettier":"^3.9.6","cross-env":"^10.1.0","enigma.js":"^2.14.0","tinybench":"^6.1.5","@eslint/js":"^10.0.1","typescript":"^7.0.2","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.6"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_2.2.4_1790384676800_0.2046461443461629","host":"s3://npm-registry-packages-npm-production"}},"2.2.5":{"name":"qvdjs","version":"2.2.5","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@2.2.5","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://ptarmiganlabs.com","bugs":{"email":"bugs@ptarmiganlabs.com"},"dist":{"shasum":"c61cc3430710c387d225c363576ce58f8cdd9d61","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-2.2.5.tgz","fileCount":8,"integrity":"sha512-VZKeMgrd7HsdBmLA6q/Mz0w2hpO7zFNO+Nl10uw7GfPmqMbMt1QxTem/3YwNXPdjeokJcw+Ketj70rWX5WpzNg==","signatures":[{"sig":"MEUCICsvnkK6TWXL54FBxG3w/Uu84JQ5MA2S9yby7f94qsFjAiEAzcemYXgKFT89dKGwNKH1oMi3WobcTwa/fJn9y4VME2c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDT57P/xasssU6k+dVjs5G/ZZ33UJXXDySknm8fwQUQVwIgayRqK0FN3VXxlhJ4VwgrXouAu3SGVnbjpaJwi4it+LE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2306157},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=22.0.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"12e30089e4b5e1c45f976ae930ab456f0165e795","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js --ci && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js","test:qlik":"cross-env NODE_OPTIONS=--experimental-vm-modules jest --config jest.qlik.config.js --runInBand","test:large":"cross-env NODE_OPTIONS=\"--experimental-vm-modules --max-old-space-size=32768\" jest --config jest.large.config.js --runInBand","logo:generate":"./scripts/generate-logo-assets.sh --all","logo:validate":"./scripts/generate-logo-assets.sh --all --validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.20.0","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"24.21.0","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"ws":"^8.21.3","jest":"^30.5.1","tsup":"^8.5.1","axios":"^1.20.0","dotenv":"^17.4.2","eslint":"^10.10.0","rimraf":"^6.1.3","globals":"^17.12.0","js-yaml":"^3.15.2","prettier":"^3.9.6","cross-env":"^10.1.0","enigma.js":"^2.14.0","tinybench":"^6.1.5","@eslint/js":"^10.0.1","typescript":"^7.0.2","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.6"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_2.2.5_1790491575585_0.6843215453402143","host":"s3://npm-registry-packages-npm-production"}},"3.0.0":{"name":"qvdjs","version":"3.0.0","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@3.0.0","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://ptarmiganlabs.com","bugs":{"email":"bugs@ptarmiganlabs.com"},"dist":{"shasum":"a1b131492a56527c9515ca49222970bf01d3e6b7","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-3.0.0.tgz","fileCount":8,"integrity":"sha512-5xDcr4gTHwXJX8Vmupg+l7k14sMO8vQls+2DsxgkvJHjbYMVtbEgyK8HBytAwFltsbdlXFwcEfzoYuA4KlMBKw==","signatures":[{"sig":"MEYCIQDEKx0GoIO8TvFEZ2tsITqg1Od4uq8WIUQJxICki4li7wIhAN+RH8vmuds4AUGhBwwJFqBqQclE4X6mktLpeArfryeo","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCuM3W+aUT9KV44LFr775Mee+QL9fqyCADFJGGJCdzpiAIgCQFmKFQEHq4Dn9fMcJtRelN4SneqMmmktDLbTzAVSZo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2323523},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=22.0.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"127ea29f54fc2729919524456234c557080d8d11","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js --ci && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js","test:qlik":"cross-env NODE_OPTIONS=--experimental-vm-modules jest --config jest.qlik.config.js --runInBand","test:large":"cross-env NODE_OPTIONS=\"--experimental-vm-modules --max-old-space-size=32768\" jest --config jest.large.config.js --runInBand","logo:generate":"./scripts/generate-logo-assets.sh --all","logo:validate":"./scripts/generate-logo-assets.sh --all --validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.20.0","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"24.21.0","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"ws":"^8.21.3","jest":"^30.5.1","tsup":"^8.5.1","axios":"^1.20.0","dotenv":"^17.4.2","eslint":"^10.10.0","rimraf":"^6.1.3","globals":"^17.12.0","js-yaml":"^3.15.2","prettier":"^3.9.6","cross-env":"^10.1.0","enigma.js":"^2.14.0","tinybench":"^6.1.5","@eslint/js":"^10.0.1","typescript":"^7.0.2","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.6"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_3.0.0_1790536312263_0.8186782007251869","host":"s3://npm-registry-packages-npm-production"}},"3.0.1":{"name":"qvdjs","version":"3.0.1","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@3.0.1","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://ptarmiganlabs.com","bugs":{"email":"bugs@ptarmiganlabs.com"},"dist":{"shasum":"a5bcda9336ce9bba1ce6712a85ae0b24d00487d5","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-3.0.1.tgz","fileCount":8,"integrity":"sha512-SUfraqXzTOYV//WZeTnGtt6xNce5VafQ9AYCPTwdImzckywRSY6QmyEYHT+LE0IAYIB4HN7GgQvklxU56yfSfQ==","signatures":[{"sig":"MEYCIQDuJZjN0fubSN/5cw41vhsgT3agA8RHfnPgv5vZaebWngIhAKbAIKAPkJh3jY6WEaRMgI5bqEnPwLWaSDJBiYbbBp5O","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIGezHzNxt/O2PKXKrT3lRwcNf5UTG+UoUCX1zDEMG5k+AiAyH9b03a24CVw0UUp6NBO6gI8bNsiTppXySqYYPLIE6g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2513339},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=22.0.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"6896c6901a5dc463ad26a2b08ae642de1b1fba14","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js --ci && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js","test:qlik":"cross-env NODE_OPTIONS=--experimental-vm-modules jest --config jest.qlik.config.js --runInBand","test:large":"cross-env NODE_OPTIONS=\"--experimental-vm-modules --max-old-space-size=32768\" jest --config jest.large.config.js --runInBand","check:package":"npm run build && node scripts/check-package.mjs","logo:generate":"./scripts/generate-logo-assets.sh --all","logo:validate":"./scripts/generate-logo-assets.sh --all --validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.20.0","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"24.21.0","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"ws":"^8.21.3","jest":"^30.5.1","tsup":"^8.5.1","eslint":"^10.10.0","rimraf":"^6.1.3","globals":"^17.12.0","js-yaml":"^3.15.2","prettier":"^3.9.6","cross-env":"^10.1.0","enigma.js":"^2.14.0","tinybench":"^6.1.5","@eslint/js":"^10.0.1","typescript":"^7.0.2","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.6"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_3.0.1_1790673543558_0.5699991456159021","host":"s3://npm-registry-packages-npm-production"}},"3.0.2":{"name":"qvdjs","version":"3.0.2","keywords":["qvd","qlik","qlik sense","qlikview"],"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","_id":"qvdjs@3.0.2","maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"homepage":"https://ptarmiganlabs.com","bugs":{"email":"bugs@ptarmiganlabs.com"},"dist":{"shasum":"b648386fe6c56974ca0d1bf662a1e3da891838f2","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-3.0.2.tgz","fileCount":8,"integrity":"sha512-xFb1edcTiwJNWNJcGHtrXzuznhI5tR7rBv3xY2++mzGfzkfJlYOLtt01RnX+m/LxcNPKq+SiwnHoH1AmB4opBg==","signatures":[{"sig":"MEUCIB0obxBvGlu5EF2AP565IeXIlMYnjCSMjr3qU/WRFJZtAiEA1ZKOnBF+E5qFvnv5jlzzpGhy9lz36NYTFi5B5IEe3bY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCrTYwFecBm3SD6rZuWQrALSnLu94fJP3N9jgEHFZb+zgIgMgR5C9RRyligPEswlMAWf5DAV5nPtbmYqM+GwXxG5bM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2521467},"main":"./dist/index.cjs","type":"module","module":"./dist/index.js","engines":{"node":">=22.0.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"9df1137abe5e9ae50318019514f91147479933fe","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js --ci && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js","test:qlik":"cross-env NODE_OPTIONS=--experimental-vm-modules jest --config jest.qlik.config.js --runInBand","test:large":"cross-env NODE_OPTIONS=\"--experimental-vm-modules --max-old-space-size=32768\" jest --config jest.large.config.js --runInBand","check:package":"npm run build && node scripts/check-package.mjs","logo:generate":"./scripts/generate-logo-assets.sh --all","logo:validate":"./scripts/generate-logo-assets.sh --all --validate"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.20.0","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"_nodeVersion":"24.21.0","dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"ws":"^8.21.3","jest":"^30.5.1","tsup":"^8.5.1","eslint":"^10.10.0","rimraf":"^6.1.3","globals":"^17.12.0","js-yaml":"^3.15.2","prettier":"^3.9.6","cross-env":"^10.1.0","enigma.js":"^2.14.0","tinybench":"^6.1.5","@eslint/js":"^10.0.1","typescript":"^7.0.2","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.6"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/qvdjs_3.0.2_1790691343095_0.6626428244054501","host":"s3://npm-registry-packages-npm-production"}},"3.0.3":{"_id":"qvdjs@3.0.3","bugs":{"email":"bugs@ptarmiganlabs.com"},"dist":{"shasum":"86ab8a7c2549fd1602156585d1d02a76abfab96d","tarball":"https://registry.npmjs.org/qvdjs/-/qvdjs-3.0.3.tgz","fileCount":8,"integrity":"sha512-+qmjk8jAcYaCR1QBuENWsYEnW5psQluhUzOUprE8bfZbPNY2I/WG0HAg7iBHmeXQQs7GDiKduo397oLV56s1Mg==","signatures":[{"sig":"MEUCIQC1pWGynXz95C4xXyKAoSlD6wL/IIc3d7lqcFEn7hq9EQIgInZt0jlLZK3f5qZzqZWig+m7CvLw8tbSNXbRZTQHq4c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCICJanGIFLL0qPsIKCWccQWr/TVBqwZc/TRR8z7SjH5wWAiEAyghk5HJNc0Iom91VQ7J7Hsw5gLIy3LwpGgs2ouBPHUQ="}],"unpackedSize":2657396},"main":"./dist/index.cjs","name":"qvdjs","type":"module","author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"module":"./dist/index.js","engines":{"node":">=22.0.0"},"exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"0676f07e810393e67be1a7706ba86209bfc696d5","license":"MIT","scripts":{"lint":"eslint .","test":"cross-env NODE_OPTIONS=--experimental-vm-modules jest . --coverage","bench":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js","build":"npx tsup","clean":"rimraf -rf dist","bench:ci":"node --expose-gc --max-old-space-size=4096 benchmarks/qvd-read-flexible.bench.js --ci && node --expose-gc --max-old-space-size=4096 benchmarks/qvd-write-flexible.bench.js --ci && node benchmarks/consolidate-results-flexible.js","test:qlik":"cross-env NODE_OPTIONS=--experimental-vm-modules jest --config jest.qlik.config.js --runInBand","test:large":"cross-env NODE_OPTIONS=\"--experimental-vm-modules --max-old-space-size=32768\" jest --config jest.large.config.js --runInBand","check:package":"npm run build && node scripts/check-package.mjs","logo:generate":"./scripts/generate-logo-assets.sh --all","logo:validate":"./scripts/generate-logo-assets.sh --all --validate"},"version":"3.0.3","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"c56f97cb-eadc-42fe-84d8-770e384e2af8"}},"homepage":"https://ptarmiganlabs.com","keywords":["qvd","qlik","qlik sense","qlikview"],"repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"_npmVersion":"11.20.0","description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","directories":{},"maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"_nodeVersion":"24.21.0","contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"dependencies":{"xml2js":"^0.6.2"},"_hasShrinkwrap":false,"devDependencies":{"ws":"^8.21.3","jest":"^30.5.1","tsup":"^8.5.1","eslint":"^10.10.0","rimraf":"^6.1.3","globals":"^17.12.0","js-yaml":"^3.15.2","prettier":"^3.9.6","cross-env":"^10.1.0","enigma.js":"^2.14.0","tinybench":"^6.1.5","@eslint/js":"^10.0.1","typescript":"^7.0.2","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.6"},"peerDependencies":{"xml2js":"^0.6.2"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/qvdjs_3.0.3_1790700280235_0.8982716159390935"}}},"time":{"created":"2025-10-25T20:31:04.941Z","modified":"2026-09-29T16:44:40.532Z","0.1.0":"2025-10-24T20:28:15.502Z","0.2.0":"2025-10-25T20:31:05.245Z","0.4.0":"2025-10-27T07:00:29.628Z","0.6.1":"2025-10-27T08:32:22.497Z","0.6.2":"2025-10-27T09:19:36.228Z","0.7.0":"2025-11-11T06:55:04.512Z","0.8.0":"2025-11-11T08:31:10.620Z","0.9.0":"2025-11-11T09:38:50.867Z","0.9.1":"2026-09-07T20:54:39.932Z","0.9.2":"2026-09-10T13:50:31.926Z","0.9.3":"2026-09-10T16:03:00.506Z","0.9.4":"2026-09-10T16:16:03.808Z","0.10.0":"2026-09-11T18:44:32.151Z","0.10.1":"2026-09-12T08:20:29.034Z","0.11.0":"2026-09-12T12:54:47.556Z","1.0.0":"2026-09-18T06:52:40.469Z","1.0.1":"2026-09-18T12:34:55.213Z","2.0.0":"2026-09-21T18:03:31.700Z","2.0.1":"2026-09-22T04:17:27.223Z","2.0.2":"2026-09-22T07:25:34.440Z","2.0.3":"2026-09-22T09:25:29.823Z","2.0.4":"2026-09-22T11:59:16.896Z","2.0.5":"2026-09-22T13:22:25.092Z","2.0.6":"2026-09-24T11:27:42.707Z","2.1.0":"2026-09-24T14:27:48.848Z","2.2.0":"2026-09-24T20:44:59.630Z","2.2.1":"2026-09-25T05:35:46.612Z","2.2.2":"2026-09-25T07:29:22.662Z","2.2.3":"2026-09-25T22:55:46.360Z","2.2.4":"2026-09-26T01:04:36.903Z","2.2.5":"2026-09-27T06:46:15.727Z","3.0.0":"2026-09-27T19:11:52.793Z","3.0.1":"2026-09-29T09:19:03.657Z","3.0.2":"2026-09-29T14:15:43.203Z","3.0.3":"2026-09-29T16:44:40.366Z"},"bugs":{"email":"bugs@ptarmiganlabs.com"},"author":{"url":"https://github.com/mountaindude","name":"Göran Sander","email":"goran@ptarmiganlabs.com"},"license":"MIT","homepage":"https://ptarmiganlabs.com","keywords":["qvd","qlik","qlik sense","qlikview"],"repository":{"url":"git+https://github.com/ptarmiganlabs/qvdjs.git","type":"git"},"description":"Library for reading/writing Qlik Sense/QlikView QVD files in Javascript.","contributors":[{"url":"https://mueller-constantin.de","name":"Constantin Müller","email":"info@mueller-constantin.de"}],"maintainers":[{"name":"mountaindude","email":"goran@ptarmiganlabs.com"}],"readme":"<!-- Served from the npm tarball via jsDelivr rather than by relative path: this\n     repository is private, and npmjs.com resolves relative README images against\n     raw.githubusercontent.com, where they 404. See CLAUDE.md, \"Logo assets\". -->\n<p align=\"center\">\n  <img src=\"https://cdn.jsdelivr.net/npm/qvdjs/img/logo/qvdjs_logo-512.png\" alt=\"qvdjs logo\" width=\"200\" />\n</p>\n\n# qvdjs\n\n> Read and write Qlik Sense and QlikView (QVD) files from Node.js\n\n```bash\nnpm install qvdjs\n```\n\n```javascript\nimport {QvdDataFrame} from 'qvdjs';\n\nconst df = await QvdDataFrame.fromQvd('sales.qvd');\nconsole.log(df.shape); // [ 1705805, 20 ]\nconsole.log(df.head(5));\n```\n\nNo Qlik installation, no ODBC driver, no running engine — just the file. Node 22 or newer,\npublished as a dual ESM/CommonJS package, MIT licensed, one runtime dependency.\n\n📖 **[Full documentation at qvdjs.ptarmiganlabs.com](https://qvdjs.ptarmiganlabs.com)** — guides,\nAPI reference, the QVD format explained, measured performance, and troubleshooting.\n\n## ⚠️ This library is based on reverse engineering\n\nQlik does not publish the QVD format. Everything qvdjs knows about it was worked out by reading\nfiles Qlik produced, and what it writes is compared with what Qlik Sense writes from the same data -\n[below](#checked-against-qlik-sense).\n\nThat works well enough to be useful, and is not the same as being exact. **Test with your own\nfiles, and validate output in your own Qlik environment** before relying on it. Reading any bundled\nQlik file and writing it back reproduces its symbol table byte for byte, whichever way it was read; a\nvalue you change is written as Qlik stores that kind of value. Where that boundary lies is the first\nthing worth reading:\n[What a round trip preserves](https://qvdjs.ptarmiganlabs.com/v3.0/overview/what-a-round-trip-preserves/).\n\n## Checked against Qlik Sense\n\nqvdjs is compared with Qlik Sense itself, not only with its own reading of the format. 48 fields in\n8 datasets - integers, doubles, text (non-ASCII, empty and number-like included), booleans, dates,\ntimestamps, and NULLs beside numbers, text, dates and timestamps - are defined twice, as Qlik\nload-script expressions and as the JavaScript values a caller would write. Qlik Sense and qvdjs each\nwrite them to a QVD, and three things are checked:\n\n- **qvdjs writes the content Qlik writes** - the same symbols, of the same types, with the same text,\n  on the same rows.\n- **Given Qlik's tags and number formats, qvdjs writes them unchanged** - the bit layout and a tag the\n  values contradict, below, are the only parts of a field's header left to differ.\n- **Qlik reads qvdjs's file as it reads its own** - loaded into Qlik and stored again, with `Text()`,\n  `Num()`, `IsNum()`, `IsText()`, `IsNull()` and `Year()` the same on every row.\n\nThe live comparison runs on demand against a Qlik Sense server; its last run, against Qlik Sense\nEnterprise on Windows build 50699, passed for all 48 fields. Qlik's files from that run are kept in\nthe test suite, so **every CI run compares qvdjs's output with them again** - on Linux, Windows and\nmacOS, under Node 22, 24 and 26 - along with reference files Qlik wrote for booleans, dates and\ntimestamps.\n\nThree differences are by design. Qlik often gives a field more bits in the index than its values need,\nwhere qvdjs uses the fewest. qvdjs adds no tags or number formats of its own - Qlik works tags out when\nit loads a file, and keeps any the file carries. And qvdjs drops a tag the values contradict, even one\nQlik wrote: Qlik tags dates outside 1980 to 2080 as text when their field has no date format, although\nits own `IsNum()` reads every one as a number. QVD is also QlikView's format, but QlikView is not part\nof the comparison.\n\n→ [Checked against Qlik Sense](https://qvdjs.ptarmiganlabs.com/v3.0/testing/checked-against-qlik-sense/)\n\n## Six ways to open a file\n\n`fromQvd` is the general one, and often not the one you want. A QVD is an XML header, then a symbol\ntable holding every distinct value, then a bit-packed index table of one code per cell. Two things\nseparate these calls: how far into the file a read has to go, and how much of it the read then\nholds.\n\n| You want                                 | Call                                      | How far it reads, and what it holds                                  |\n| ---------------------------------------- | ----------------------------------------- | -------------------------------------------------------------------- |\n| Rows, to index, iterate or write back    | `QvdDataFrame.fromQvd(path)`              | Everything, and materialises every row                               |\n| Rows from a file too large to hold       | `QvdDataFrame.iterate(path, {chunkSize})` | Everything, but holds two chunks — a 96 MB heap against 512 MB       |\n| A few columns of a large file            | `QvdColumnTable.fromQvd(path)`            | Everything, but stops before building rows — 141 MiB against 385 MiB |\n| Only the schema: names, row count, types | `QvdDataFrame.readMetadata(path)`         | The header alone. Constant cost, whatever the file's size            |\n| To know whether a read will fit first    | `QvdDataFrame.checkRead(path, options)`   | The header, and a walk of the symbols the read would decode. Answers rather than reads; a read it approves is not refused for memory |\n| Pages, by position and in any order      | `QvdDataFrame.open(path, options)`        | The header once, then a page per call — `rows()`, `columns()`, a free `check()`, `close()` |\n\n```javascript\nimport {QvdDataFrame, QvdColumnTable} from 'qvdjs';\n\n// What is in this file? Costs the same whether it is 20 KB or 20 GB.\nconst {columns, rowCount} = await QvdDataFrame.readMetadata('sales.qvd');\n\n// Will reading it fit? It walks the symbols the read would decode, never a record, and every\n// suggestion it gives has been checked.\nconst {fits, suggestions} = await QvdDataFrame.checkRead('sales.qvd');\n\n// Paging: the header is read once, and a page can be asked for by position, forwards or back.\nconst qvd = await QvdDataFrame.open('sales.qvd');\nconst page = await qvd.rows({offset: 5_000_000, limit: 100});\nawait qvd.close();\n\n// Sum one column without ever building a row.\nconst table = await QvdColumnTable.fromQvd('sales.qvd');\nlet total = 0;\nfor (const value of table.column('amount')) {\n  if (typeof value === 'number') total += value;\n}\n\n// Every row of a file that will not fit, a chunk at a time.\nfor await (const chunk of QvdDataFrame.iterate('sales.qvd', {chunkSize: 50_000})) {\n  process(chunk.data);\n}\n\n// Rows, when you want rows.\nconst df = await QvdDataFrame.fromQvd('sales.qvd');\n```\n\nReaching for `fromQvd` when you wanted one of the others is the common mistake, and\n`fromQvd(path, {maxRows: 0})` is **not** a substitute for `readMetadata`: it loads no rows but still\nreads the whole symbol table, which grows with the data, and can be refused for its size where\n`readMetadata` never is.\n\n→ [Choosing an entry point](https://qvdjs.ptarmiganlabs.com/v3.0/getting-started/)\n\n## What a cell holds\n\n| The file stores                                                     | The cell holds                                          |\n| ------------------------------------------------------------------- | ------------------------------------------------------- |\n| A number                                                            | A `number`                                              |\n| A string                                                            | A `string`, never parsed - `'007'` stays `'007'`        |\n| A dual: a number with the text Qlik displays, such as a date's text | Its `number`. The text is kept, and `textAt` returns it |\n| NULL                                                                | `null`                                                  |\n\n`{duals: 'text'}` reads a dual as its text instead, and `{duals: 'both'}` as a frozen `QvdDual` holding\nboth halves. `{coerceNumericStrings: true}` reads a numeric-looking string as a number. Whichever way a\nframe was read, it writes back the symbols it was read from.\n\n```javascript\nimport {QvdDataFrame, qlikSerialToDate} from 'qvdjs';\n\nconst df = await QvdDataFrame.fromQvd('rides.qvd');\ndf.data[0][0]; // 42382.260416666664 - the date is its number, as Qlik sums and sorts it\ndf.textAt(0, 'started'); // '2016-01-13 06:15:00' - the text Qlik displays\nqlikSerialToDate(df.data[0][0]).toISOString(); // '2016-01-13T06:15:00.000Z'\n```\n\n## Writing\n\n```javascript\nconst df = await QvdDataFrame.fromDict({\n  columns: ['Region', 'Year', 'Amount'],\n  data: [\n    ['North', 2025, 1200.0],\n    ['South', 2025, 980.5],\n  ],\n});\n\nawait df.toQvd('out.qvd', {\n  onProgress: ({stage, percent}) => console.log(`${stage}: ${percent}%`),\n});\n```\n\nThe QVD is built beside the destination under a temporary name and renamed over it, so a write that\nfails — a full disk, a killed process, an error from the disk — leaves the previous file exactly as it\nwas, and anything reading the path meanwhile gets the old file or the new one and never a part of\neither. `toQvd()` resolves once the contents have reached the disk. The rename that puts the file in\nplace is not flushed, so a power loss moments after the call can still lose the replacement, or a QVD\nthat did not exist before — what it cannot leave is a damaged one.\n\nTwo options turn those off, each on its own:\n\n| Option          | What `false` does                                                                                                                                                                                                                                                                                                                                                                                                         |\n| --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `atomic: false` | Rewrites the file where it stands, as versions before 2.0.0 did. It keeps the file's identity — hard links, its owner, permissions set on the file itself — and needs neither room for two copies at once nor permission to create files in the directory. It also destroys the previous file as the write begins. A QVD that does not exist yet is renamed into place in either mode, since there is nothing to rewrite. |\n| `fsync: false`  | Resolves as soon as the operating system has accepted the bytes, without waiting for the disk. Faster, and a power loss just after the write can then leave a damaged file rather than the old one.                                                                                                                                                                                                                       |\n\nA destination that exists and is not a regular file — a device such as `/dev/null`, or a FIFO — is\nwritten in place whatever you ask for, because replacing it would replace the device itself.\n\nFiles it produces load in Qlik Sense as Qlik's own do - [checked](#checked-against-qlik-sense) for\neach kind of value it writes. A number is written as a pure number - an integer\nwithin 32 bits as an integer, any other number as a double - a string as a string, and `null` as\nNULL. A dual value - a `QvdDual`, or an object with exactly the keys `number` and `text` - is written\nas a dual, which is how a number gets the text Qlik displays. As in Qlik, a field holds one text per\nnumber, the first written. Anything else is refused with a `QvdValidationError`.\n\n→ [Writing a QVD](https://qvdjs.ptarmiganlabs.com/v3.0/guides/)\n\n## Reading part of a file\n\nThe three calls that read data share the same options — `offset`, `limit` (or `maxRows`), `fields`,\n`duals`, `coerceNumericStrings`, `onProgress` and `signal` — because they are three answers about the\nsame file rather than three features.\n\n```javascript\n// A window, and only the columns you need.\nconst df = await QvdDataFrame.fromQvd('large.qvd', {\n  offset: 1_000_000,\n  limit: 1000,\n  fields: ['Region', 'Amount'],\n});\n\nconsole.log(df.loadStats);\n// { symbolTableBytes, totalRows, rowsLoaded, offset, symbolFiltering, symbolsKept }\n```\n\n**The limit is memory, not file size.** A read holds the symbols of the fields it reads and what it\nbuilds — the rows, or the columns — and reads the records a slice at a time rather than holding the file.\nSo a QVD of any size can be read whole when its result fits, and `iterate()` over one holds those symbols\nand two chunks of rows. A read with `fields` never reads the other fields' symbols at all.\n\nBefore it decodes anything, a read walks the symbols it will decode, a slice at a time, to see what each one\nis — an integer, a text of so many characters, a dual — and is charged for what they decode to rather than\nfor their bytes on disk. The walk adds a quarter to a third to a read of every row of a column of short\nvalues, and can nearly double the time of a small window of one, while long texts cost it little.\n`memorySafetyFactor: 0`, which switches the check off, skips it. A page from `QvdDataFrame.open()` is still\ncharged from the header, as is its `check()`.\n\nA read too large to fit throws a **catchable** `QvdValidationError` instead of a fatal `Reached heap limit`\nthat no `try`/`catch` can intercept. Its `context.reason` is `'memory'`, and `context.check` carries the\nanswer `checkRead()` would have given, bar a `fields` suggestion only `checkRead()` makes. Each of its\nsuggestions gives a read that fits:\n\n```javascript\ntry {\n  const df = await QvdDataFrame.fromQvd('huge.qvd');\n} catch (error) {\n  const limit = error.context?.check?.suggestions.find((suggestion) => suggestion.option === 'limit');\n\n  if (error.context?.reason === 'memory' && limit) {\n    await QvdDataFrame.fromQvd('huge.qvd', {limit: limit.value});\n  }\n}\n```\n\nThere is no `limit` suggestion when no row count helps: when the symbols alone exceed the budget, or a\nceiling on the symbols a window may read refuses every window. `context.recommendedMaxRows` is `0` then,\nand a refusal by that ceiling carries none at all, so never retry with it unchecked: `{maxRows: undefined}`\nreads the whole file. Raise the heap as the `--max-old-space-size` suggestion says, or read fewer\ncolumns: `checkRead()` with the same options suggests which. When it is `iterate()` that overflowed, the suggestion is `chunkSize` rather than `limit`,\nand the context carries `recommendedChunkSize` as well.\n\n→ [Memory and file size limits](https://qvdjs.ptarmiganlabs.com/v3.0/overview/memory-and-file-size-limits/)\n\n## Metadata\n\nTable name, comments, number formats and field tags survive a read, can be changed on any frame, and\nare written back out - less a tag or number format the written values contradict, such as `$numeric`\non a field that now holds text.\n\n```javascript\nconst df = await QvdDataFrame.fromQvd('products.qvd');\ndf.fileMetadata.tableName; // 'Products'\ndf.getFieldMetadata('ProductKey'); // { comment, numberFormat, tags, ... }\n\ndf.setFileMetadata({tableName: 'UpdatedProducts'});\nawait df.toQvd('products-v2.qvd');\n```\n\n→ [Metadata reference](https://qvdjs.ptarmiganlabs.com/v3.0/reference/)\n\n## File paths are sandboxed\n\nEvery path is checked against an allowed directory before it is opened. **Leaving the option out\ndoes not mean \"anywhere\"** — it means the current working directory.\n\n```javascript\nawait QvdDataFrame.fromQvd('sales.qvd', {allowedDir: '/var/data/qvd'});\nawait QvdDataFrame.fromQvd(anyPath, {allowedDir: '/'}); // deliberately unrestricted\n```\n\nContainment is decided by the filesystem — both paths are resolved through symlinks and compared by\ndevice and inode — so a link inside the allowed directory pointing out of it is refused, whether or\nnot the file it points at exists.\n\nA check is only as good as the open that follows it, so the open is held to what was checked. The\npath is checked again immediately before the file is opened, and the file opened is the one the\ncheck approved: a symlink swapped in at its name afterwards is refused rather than followed, and so\nis a different file at that name. Either is a `QvdSecurityError` whose `context.reason` is\n`'changed_after_check'`. What cannot be covered from Node — a _directory_ further up the path\nswapped for a symlink in the moment between the check and the open — is the one gap left, so keep\nthe allowed directory's own subdirectories out of untrusted hands.\n\n→ [Path security](https://qvdjs.ptarmiganlabs.com/v3.0/overview/path-security/)\n\n## Errors\n\n`QvdError` and five subclasses, each carrying a `code` and a `context` object:\n`QvdValidationError` (`QVD_VALIDATION_ERROR`), `QvdCorruptedError` (`QVD_CORRUPTED_ERROR`),\n`QvdParseError` (`QVD_PARSE_ERROR`), `QvdIOError` (`QVD_IO_ERROR`) and `QvdSecurityError`\n(`QVD_SECURITY_ERROR`). A file-system failure — a missing file, a directory, a permission error, a\nfull disk, a file another program has locked on Windows — is a `QvdIOError`: the system code is\n`error.context.code` (`ENOENT`, `EACCES`, `ENOSPC`, …) and Node's own error is `error.cause`. On\nWindows an `EPERM` or `EBUSY` from `error.context.operation === 'rename'` means the destination is open\nin another program — Qlik Sense reading it, most often — and the file it holds is unchanged. A\n`QvdSecurityError` says why in `error.context.reason`: `'outside_allowed_directory'`, `'null_byte'`,\nor `'changed_after_check'` for a file that was not the one the check approved by the time it was\nopened. The one\n`QvdIOError` without `error.context.code` or `error.cause` is a write that the system accepted none of\nwithout reporting an error; `error.context.filePosition` says where the file stops.\n\n`error.name` is always the class name, in the CommonJS and ES module builds alike, so it works across\na module boundary where `instanceof` may not.\n\n→ [Troubleshooting](https://qvdjs.ptarmiganlabs.com/v3.0/troubleshooting/)\n\n## Known limitations\n\nHonest boundaries rather than an issue list — these are the ones that change what you can do.\n\n| Limitation                                                    | What it means in practice                                                                                                                                                                                                                                                                                                                                                                                                                                                      |\n| ------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |\n| **A selected column's symbols are always read whole**         | `{offset, limit}`, `iterate()` and `QvdColumnTable` all avoid materialising rows, but each reads the whole symbol area of every column it selects, whatever its window, and holds those bytes until it has walked them. A read of every row decodes every value in those areas, and so does the first page of an open file to touch a column, which keeps it for later pages; a window over a symbol table larger than `symbolFilteringThreshold` (50 MiB by default) decodes only the values its rows use, though it still holds a slot for each value it walks past, so on a column of short values it saves little. `fields` bounds both, since the other columns' areas are never read, and a window whose areas exceed 12.5% of the heap limit is refused rather than read. No read is constant-memory in the size of a high-cardinality column. |\n| **A killed process can leave a temporary file**               | A write builds `<name>.qvdjs-<hex>.tmp` beside the QVD and removes it however the write ends — unless the process is killed outright, or the removal is itself refused, in which case the error names the file in `context.temporaryFile`. The QVD is untouched either way, and such a file can be deleted. `{atomic: false}` writes none when it rewrites a QVD that exists, and damages the QVD instead; a QVD that does not exist yet is renamed into place in either mode. |\n| **The writer takes numbers, strings, dual values and `null`** | Anything else - a `Date`, a boolean, an array, a `QvdSymbol` - is refused with a `QvdValidationError` naming the field and the row. Convert first: a `Date` to `new QvdDual(dateToQlikSerial(date), text)`, the serial and the text Qlik shows, which is how Qlik stores a date; a boolean to `-1` and `0`, as a Qlik comparison stores it.                                                                                                                                    |\n\n→ [What a round trip preserves](https://qvdjs.ptarmiganlabs.com/v3.0/overview/what-a-round-trip-preserves/)\n\n## Documentation\n\n**[qvdjs.ptarmiganlabs.com](https://qvdjs.ptarmiganlabs.com)** is the documentation site, and it is\nwhere everything above is covered properly:\n\n|                                                                                                         |                                                                   |\n| ------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- |\n| [Getting started](https://qvdjs.ptarmiganlabs.com/v3.0/getting-started/)                                | Install, choose an entry point, first read and write              |\n| [Guides](https://qvdjs.ptarmiganlabs.com/v3.0/guides/)                                                  | One page per task, runnable sample code                           |\n| [Concepts](https://qvdjs.ptarmiganlabs.com/v3.0/concepts/)                                              | The QVD format, symbols and duals, bit stuffing, the memory model |\n| [Reference](https://qvdjs.ptarmiganlabs.com/v3.0/reference/)                                            | Every class, method, option and error                             |\n| [Performance](https://qvdjs.ptarmiganlabs.com/v3.0/performance/)                                        | Measured baselines, and how to read them                          |\n| [Testing](https://qvdjs.ptarmiganlabs.com/v3.0/testing/)                                                | How qvdjs is tested, against what, and how often                  |\n| [Troubleshooting](https://qvdjs.ptarmiganlabs.com/v3.0/troubleshooting/)                                | What each failure means, and what to do about it                  |\n\nBenchmarks run weekly and publish to\n[ptarmiganlabs.github.io/qvdjs](https://ptarmiganlabs.github.io/qvdjs/).\n\n## Reporting bugs\n\nEmail [bugs@ptarmiganlabs.com](mailto:bugs@ptarmiganlabs.com). Include the qvdjs and Node versions,\nthe call that failed, and the whole error, with its `code` and `context`.\n\n## Contributors\n\n- [Göran Sander](https://github.com/mountaindude) and [Ptarmigan Labs](https://github.com/ptarmiganlabs) —\n  creator of qvdjs. Added lazy loading, columnar and chunked reads, header-only metadata reads,\n  exposed QVD header metadata, ESM/CJS support, memory safety limits, security hardening,\n  multi-platform testing and the automated release process.\n- [Constantin Müller](https://mueller-constantin.de) — author of\n  [qvd4js](https://github.com/MuellerConstantin/qvd4js), whose code qvdjs started from. Parts of it are\n  still in qvdjs, used under qvd4js's MIT licence.\n\n## Licence\n\n[MIT](https://opensource.org/licenses/MIT) © Ptarmigan Labs AB, and © Constantin Müller for the code that\ncomes from qvd4js. The full text is in the `LICENSE` file shipped with the package.\n","readmeFilename":"README.md"}