{"_id":"@ekamil/kindle-vocab-api","_rev":"7-eb5a6a5d699a4dc39bb9c9bfea899623","name":"@ekamil/kindle-vocab-api","dist-tags":{"latest":"1.7.0"},"versions":{"1.0.1-alpha.0":{"name":"@ekamil/kindle-vocab-api","version":"1.0.1-alpha.0","author":{"name":"Kamil","email":"kamil@essekkat.pl","url":"https://essekkat.pl"},"license":"Unlicense","description":"API interface for Kindle Vocabulary Builder DB file","scripts":{"clean":"rimraf dist/","build-tsc":"rimraf dist/ && tsc --noEmit false","build":"rimraf dist/ && node --no-warnings esbuild.config.mjs && tsc --emitDeclarationOnly true","test":"jest ./src","lint":"prettier --check \"src/**/*.ts\" && eslint ./src && tsc --noEmit true","preversion":"npm test && npm run lint","main":"npm run build-tsc && node dist/demo.js"},"keywords":[],"exports":"./dist/main.js","main":"./dist/main.js","types":"./dist/main.d.ts","private":false,"type":"module","devDependencies":{"@jest/globals":"^29.5.0","@types/jest":"^29.5.1","@types/node":"^18.16.0","@types/sqlite3":"^3.1.8","@types/unidecode":"^0.1.1","@typescript-eslint/eslint-plugin":"^5.59.1","@typescript-eslint/parser":"^5.59.1","esbuild":"^0.17.18","jest":"^29.5.0","rimraf":"^5.0.0","ts-jest":"^29.1.0","typescript":"^5.0.4"},"dependencies":{"sqlite3":"^5.1.6","unidecode":"^0.1.8"},"engines":{"node":">=14.16"},"jest":{"preset":"ts-jest/presets/default-esm","moduleNameMapper":{"^(\\.{1,2}/.*)\\.js$":"$1"}},"gitHead":"08d30211e2156370914dd8f34027275125c5d02c","_id":"@ekamil/kindle-vocab-api@1.0.1-alpha.0","_nodeVersion":"16.20.0","_npmVersion":"lerna/6.6.1/node@v16.20.0+arm64 (darwin)","dist":{"integrity":"sha512-JNpadiV4g8u8u/C+p5kI5C6gITHusw3uXW4oQnilRPAI4fivLEb9N4SlZyS7a6/fxmBdIPwSknew9NHA/MOWoA==","shasum":"654403cd3f43a2c32afcc22501e974dcca7ae95a","tarball":"https://registry.npmjs.org/@ekamil/kindle-vocab-api/-/kindle-vocab-api-1.0.1-alpha.0.tgz","fileCount":15,"unpackedSize":35677,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC9/agcZ/fH0Z+vvMze+tEmFmsn669PpxEPPd5o9tP65AIhAOpU7CwitiyCmWnKfFKQkgmqGp6CI4W/d/JGBBNhAzAC"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkSEG8ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoRnA//bfoH2ST9VH4p0QrViYnQNCk90i4UfbiVWBnKC1545Qzm1pVJ\r\nOgu59y/d30xRmamUFDJAY/NuM8zPmV30vmx3BO92XKDiZGsu6nUc+LJs68yo\r\nZulKFhEBlVhuYyp4mmFzwjrW1HIP1kXpU4JGuO2RpQUTr0asv/fFNKak2XGB\r\nXbDOdVPFq/FrWbrByBQciHlLQG8Jftv46FqsFAV5g/kkdk+stqY3cs1Ghqup\r\nA5aBpZA3x79uXxZKL76REWb7Oq5q2Yv8ffEv27aTllkx0t7+5Mnac67YQerd\r\n3rBSLuxledwjCGovNMCsA7cDUfbv403XhaInfoM71akBp4ikMY6bP7njTEgA\r\nuuS9cRckiStQLscp3RkTvKBidxCWspaGb8LBfILZwRw9ORL+FOTfjPGIrL2O\r\nIQ50POF0MlRfGetKdm3qESKV2lZYAD2WPky9wds8Revf2gXHaKbRBPOQIEbH\r\nK/Y9DCRVBmyegyjmIIjV0MfddXeVY8NbaHOQLiYOJw8F5o2zKIkloW+SexKM\r\nhMNqkIE0NZpmdWkH+uuFvezLRdmF5KPrSI8rf9ts26/g8QXcqZrF1+uCdDdM\r\nLpHLi/9haCYFBNgjH/woz3IWSRyJBixLg4QiHd3iKfNsmYxQ0wtz4c7KMjvH\r\nZfUZHACHMrMI/lS29fZituxYsOXGXu134cE=\r\n=h+Jt\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"ekamil","email":"kamil@essekkat.pl"},"directories":{},"maintainers":[{"name":"ekamil","email":"kamil@essekkat.pl"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kindle-vocab-api_1.0.1-alpha.0_1682457020639_0.3265521391924424"},"_hasShrinkwrap":false},"1.0.2-alpha.0":{"name":"@ekamil/kindle-vocab-api","version":"1.0.2-alpha.0","author":{"name":"Kamil","email":"kamil@essekkat.pl","url":"https://essekkat.pl"},"license":"Unlicense","description":"API interface for Kindle Vocabulary Builder DB file","scripts":{"clean":"rimraf dist/","build-tsc":"rimraf dist/ && tsc --noEmit false","build":"rimraf dist/ && node --no-warnings esbuild.config.mjs && tsc --emitDeclarationOnly true","test":"jest ./src","lint":"prettier --check \"src/**/*.ts\" && eslint ./src && tsc --noEmit true","preversion":"npm test && npm run lint","main":"npm run build-tsc && node dist/demo.js"},"keywords":[],"exports":"./dist/main.js","main":"./dist/main.js","bin":{"kindle-vocab-api":"dist/main.js"},"types":"./dist/main.d.ts","private":false,"type":"module","devDependencies":{"@jest/globals":"^29.5.0","@types/jest":"^29.5.1","@types/node":"^18.16.0","@types/sqlite3":"^3.1.8","@types/unidecode":"^0.1.1","@typescript-eslint/eslint-plugin":"^5.59.1","@typescript-eslint/parser":"^5.59.1","esbuild":"^0.17.18","jest":"^29.5.0","rimraf":"^5.0.0","ts-jest":"^29.1.0","typescript":"^5.0.4"},"dependencies":{"sqlite3":"^5.1.6","unidecode":"^0.1.8"},"engines":{"node":">=14.16"},"jest":{"preset":"ts-jest/presets/default-esm","moduleNameMapper":{"^(\\.{1,2}/.*)\\.js$":"$1"}},"gitHead":"3c386b341d1c1f124fa5eef7eb0489868b449ff9","_id":"@ekamil/kindle-vocab-api@1.0.2-alpha.0","_nodeVersion":"16.20.0","_npmVersion":"lerna/6.6.1/node@v16.20.0+arm64 (darwin)","dist":{"integrity":"sha512-le6qDzHlFCsGBUb9Kdtas+bk5WbieraWcxrhB1kcD36V/tvaZswI5anoVVOXb7ccQWll9ZcQnZfUUqvXDbjPmw==","shasum":"43e9782e3ed47d31f3f6a1c68c9aca5cebd75f39","tarball":"https://registry.npmjs.org/@ekamil/kindle-vocab-api/-/kindle-vocab-api-1.0.2-alpha.0.tgz","fileCount":15,"unpackedSize":35704,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCzPVI32c0EZx3U8YejMMPiL3ONFUc+CzAUt0DWGsisZQIgPE6z9j8ymUgWwZpxtFODSxj3pi9weV5oWQahCXKqUrU="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkSEQUACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp6uxAAg0uw5W4jPrHTyypZVbJnRrI24/3Ia6ye72eqR+/PP+OqhIsa\r\n12ePSrldhDpdFXRVVe40UMbcZNDOH7XENPybWN5sQMbdIz325fv07n3A+1pJ\r\n7ISFZfJzGImykNhTkrwTza4z1S4sT9wyPHHitZu0fCa/GpC2tWql1y/E6oOq\r\npT+CmK3/7hvmaG0gn4QDAhpd3YyuzE6kWA1BLdezyZOhwcSJR24LSL3Gtprt\r\n0ctpiinOks2IWMaj5K26pW3BsxyouU+lRowMqkqCzUAc62+2OVKXaY305Qpo\r\nAlvY3neqaTdF7I3ET24v/kXtaX+6HeiZTEjDotrCuwEghzEf2IERY+PRc57x\r\nSYbakehDq71OswneE7eNNkmDYOb/+LOWuqX8xejEdGTJeNd00jRAfCb0trPl\r\nD6niOga50vfY+u//JzVU9o4AjhAIoV23cFslfNRqKxAjmaHqIN1aBrHFrp1Q\r\nilg8XL/GYXHmUjs7mh131AoEVXy/s0dGFfjMCF6q5UD36EzKc06yvdy54QiG\r\n897jaNubDwvDkyEcdYGo96KMhc4zsHJDd+xgCCZyx6jAWnvtdMawp6rtHeJB\r\nUh20bUnyEm1E7RjaWkv0M3oO87zPFgYQx+YvSsDiG67XEhT3rI0ZyGfy3WQG\r\nRr7ugp6VwQJ1LOVlQiPdBsr2a9BtX2/C2T8=\r\n=9A3N\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"ekamil","email":"kamil@essekkat.pl"},"directories":{},"maintainers":[{"name":"ekamil","email":"kamil@essekkat.pl"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kindle-vocab-api_1.0.2-alpha.0_1682457619855_0.19015083896764295"},"_hasShrinkwrap":false},"1.0.3-alpha.0":{"name":"@ekamil/kindle-vocab-api","version":"1.0.3-alpha.0","author":{"name":"Kamil","email":"kamil@essekkat.pl","url":"https://essekkat.pl"},"license":"Unlicense","description":"API interface for Kindle Vocabulary Builder DB file","scripts":{"clean":"rimraf dist/","build-tsc":"rimraf dist/ && tsc --noEmit false","build":"rimraf dist/ && node --no-warnings esbuild.config.mjs && tsc --emitDeclarationOnly true","test":"jest ./src","lint":"prettier --check \"src/**/*.ts\" && eslint ./src && tsc --noEmit true","preversion":"npm test && npm run lint","main":"npm run build-tsc && node dist/demo.js"},"keywords":[],"exports":"./dist/main.js","main":"./dist/main.js","bin":{"kindle-vocab-api":"dist/main.js"},"types":"./dist/main.d.ts","private":false,"type":"module","devDependencies":{"@jest/globals":"^29.5.0","@types/jest":"^29.5.1","@types/node":"^18.16.0","@types/sqlite3":"^3.1.8","@types/unidecode":"^0.1.1","@typescript-eslint/eslint-plugin":"^5.59.1","@typescript-eslint/parser":"^5.59.1","esbuild":"^0.17.18","jest":"^29.5.0","rimraf":"^5.0.0","ts-jest":"^29.1.0","typescript":"^5.0.4"},"dependencies":{"sqlite3":"^5.1.6","unidecode":"^0.1.8"},"engines":{"node":">=14.16"},"jest":{"preset":"ts-jest/presets/default-esm","moduleNameMapper":{"^(\\.{1,2}/.*)\\.js$":"$1"}},"gitHead":"55b0af54f4133cf02762468f4a26ea94354019d4","_id":"@ekamil/kindle-vocab-api@1.0.3-alpha.0","_nodeVersion":"16.20.0","_npmVersion":"lerna/6.6.1/node@v16.20.0+arm64 (darwin)","dist":{"integrity":"sha512-+Ld5218KoEXcCcSwBEfteN6WVbwpj/siacn6JynZdTZrcHR9hfcwYPe9ew3LLwa1JAYlWvSswzXMNiGtqFHwnw==","shasum":"e01c1db8b1605728a6cf01644cc26000bf82412c","tarball":"https://registry.npmjs.org/@ekamil/kindle-vocab-api/-/kindle-vocab-api-1.0.3-alpha.0.tgz","fileCount":15,"unpackedSize":35704,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDGvqFgRg6gyJnlUm4bOV+vpcHQGfTK2F9ZaHDFBs+t5AiEAsokj6E4rVC5E8Y1ACa5atR52GjWiwWrjg7b1AoUJYsU="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkSETHACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoR4A/7B1TBLRXtuLr562dpF5jrn29YYD74dOfM5XVYmN8xZ8h7CYiQ\r\nMZ8mRrDHHK1N3EICR/FqZbKF9rhZAPQskBs1hq6ZCqTRPFKRm4oKmKjMvr/H\r\n5/tpezjr2VLUxVp59nRV0Px+fVYfK7mwNnkA5+CECbf4La5kdQmVhvL874b2\r\n2lorCsN0q9wT0eMqK9TqtFobYncUBtlI36J/pbACEkjylcaiJvA+L/ogo4TU\r\nV4Qx4BbQ1jbvQryTevakjl4ILo0a5PhBIPahhyFqopMaagO2CQJbQPx2idg0\r\nWlbSoaFev2yKCBtAEY8zBxW3X+eFoVBM7kT0YefsHVo3C+MQNASFtBWmugwl\r\n/XVJ+tny0y6XOZJwe/dDg6wX1MwkkUCHF1lgk2F13ITEzyQ1//jG7oKFfMba\r\nncVMs7cmB5Dcfc3jacMAKyHYSyvvVlowsVxVSKAVi6nSPuK+djd0UtW0Gopu\r\nPlq7AbpZBTJ4WIwEsra03PJpVvgC8vFkNlFgwHryxEi3qtBIZihaFszVgd1V\r\nRg80c+nD+v5xPEZ/ze6iX4kigXskSlh6sCwl4dty5qlSEm4e4g1y2F2d7h1P\r\nxgxrnnDSlRx1DdaqN8ZJWJ8SbKR5nOLGEhMg5qOssYcPmxypcNir+HIaGtdu\r\ni8AHt+blCytb91F2WGjD9PEPhZUahOs5MSk=\r\n=I/bu\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"ekamil","email":"kamil@essekkat.pl"},"directories":{},"maintainers":[{"name":"ekamil","email":"kamil@essekkat.pl"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kindle-vocab-api_1.0.3-alpha.0_1682457798855_0.7818209793968212"},"_hasShrinkwrap":false},"1.1.0":{"name":"@ekamil/kindle-vocab-api","version":"1.1.0","author":{"name":"Kamil","email":"kamil@essekkat.pl","url":"https://essekkat.pl"},"license":"Unlicense","description":"API interface for Kindle Vocabulary Builder DB file","scripts":{"clean":"rimraf dist/","build-tsc":"rimraf dist/ && tsc --noEmit false","build":"rimraf dist/ && node --no-warnings esbuild.config.mjs && tsc --emitDeclarationOnly true","test":"jest ./src","lint":"prettier --check \"src/**/*.ts\" && eslint ./src && tsc --noEmit true","preversion":"npm test && npm run lint","main":"npm run build-tsc && node dist/demo.js"},"keywords":[],"exports":"./dist/main.js","main":"./dist/main.js","bin":{"kindle-vocab-api":"dist/demo.js"},"types":"./dist/main.d.ts","private":false,"type":"module","devDependencies":{"@jest/globals":"^29.5.0","@types/better-sqlite3":"^7.6.4","@types/jest":"^29.5.1","@types/node":"^18.16.0","@types/sqlite3":"^3.1.8","@types/unidecode":"^0.1.1","@typescript-eslint/eslint-plugin":"^5.59.1","@typescript-eslint/parser":"^5.59.1","esbuild":"^0.17.18","jest":"^29.5.0","rimraf":"^5.0.0","ts-jest":"^29.1.0","typescript":"^5.0.4"},"dependencies":{"better-sqlite3":"^8.3.0","sqlite3":"^5.1.6","unidecode":"^0.1.8"},"engines":{"node":">=14.16"},"jest":{"preset":"ts-jest/presets/default-esm","moduleNameMapper":{"^(\\.{1,2}/.*)\\.js$":"$1"}},"gitHead":"20864d78fa1f425ef21cefcc75e4c458fd727183","_id":"@ekamil/kindle-vocab-api@1.1.0","_nodeVersion":"16.20.0","_npmVersion":"lerna/6.6.1/node@v16.20.0+arm64 (darwin)","dist":{"integrity":"sha512-OZXRL2HCDQWkGl3S1fXckJbdF3uYMXxZQSxVNoTZvzWr/ejGXY00eGMlNmZ5Tpb66gH5vVNywGN488o4M/eQHA==","shasum":"fa3ec2da0b960417b2fb01d359b605a96fb799f8","tarball":"https://registry.npmjs.org/@ekamil/kindle-vocab-api/-/kindle-vocab-api-1.1.0.tgz","fileCount":16,"unpackedSize":50927,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC6TOa3Q/X/A5Rdyy6YQ4eC3DcoUeAkICVW1zoc1GRMAAiEA/P3SHTQKR2g+PrBKU9miXcNdsHVeMXIWE/nd5IYbjxs="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkTnMCACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrZFQ/9GH9N+FVSFDtEMRiZ2nWWWoNBqwpq3gMGuq47/1RupW00cPvx\r\nV1ANNNlPzGCAOO1PrBOSHYQWxFOv273+bYfFPb0umsfVcoUTrbaKWwQMgSN+\r\nzXG2Zy8GJIgpWi7BIKEPxcqIMuVkbGXbmej4nx4y7zNLu5ml87QA6Ayw34TV\r\nnfiz2F+a3IYJmxFzxwvtsBW7uIxTxpHmXjbixEGvME/5XkB69y2MW1UtWMqW\r\n8vI5nK30Spca9ev3A2kHkYO60RstlykE9olakMShMSkDE7S3LL2Czx7krALD\r\nNED3NiqmWlYv68b/ooSu4vRUV/TyHoLypdj8wTZ+hGTL8SKuWxQ/iKWYsUn8\r\nTVTJ28RSLgMTMKl4kdeySCxFa8stlY6BIqvJcR325C3dJFKxYDlz1RcNogCq\r\nUrcPzo25TOoKOJ9UlO3uvNvmYoJFe/Wo5it7PeAIxAOGPp9d7MuYcKlmDISF\r\ncdKaVI6GtvtjBpsaXGHFIcCdaTAVZfdAr7K8nmA82UhBRr9HJnvgIejRBSNw\r\n+Y1QzP251dm977iQSCjPXPEv9Xnkql+1pZ6BNhS7GdTSkgeQOMN2qFGmFAc/\r\nl/miCUOz2f0TmMnUkEDxX7j0WKl3pChxt4uy1Al5UdyNjiid2dIBfJuWh6gx\r\ndFL/8jZ044yPnH5Owu1b3xOvqyCScy36Le4=\r\n=IK8X\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"ekamil","email":"kamil@essekkat.pl"},"directories":{},"maintainers":[{"name":"ekamil","email":"kamil@essekkat.pl"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kindle-vocab-api_1.1.0_1682862850232_0.6708858503837822"},"_hasShrinkwrap":false},"1.2.0":{"name":"@ekamil/kindle-vocab-api","version":"1.2.0","author":{"name":"Kamil","email":"kamil@essekkat.pl","url":"https://essekkat.pl"},"license":"Unlicense","description":"API interface for Kindle Vocabulary Builder DB file","scripts":{"clean":"rimraf dist/","build-tsc":"rimraf dist/ && tsc --noEmit false","build":"rimraf dist/ && node --no-warnings esbuild.config.mjs && tsc --emitDeclarationOnly true","test":"jest ./src","lint":"prettier --check \"src/**/*.ts\" && eslint ./src && tsc --noEmit true","preversion":"npm test && npm run lint","main":"npm run build-tsc && node dist/demo.js"},"keywords":[],"exports":"./dist/main.js","main":"./dist/main.js","bin":{"kindle-vocab-api":"dist/demo.js"},"types":"./dist/main.d.ts","private":false,"type":"module","devDependencies":{"@jest/globals":"^29.5.0","@types/better-sqlite3":"^7.6.4","@types/jest":"^29.5.1","@types/node":"^18.16.0","@types/sqlite3":"^3.1.8","@types/unidecode":"^0.1.1","@typescript-eslint/eslint-plugin":"^5.59.1","@typescript-eslint/parser":"^5.59.1","esbuild":"^0.17.18","jest":"^29.5.0","rimraf":"^5.0.0","ts-jest":"^29.1.0","typescript":"^5.0.4"},"dependencies":{"better-sqlite3":"^8.3.0","sqlite3":"^5.1.6","unidecode":"^0.1.8"},"engines":{"node":">=14.16"},"jest":{"preset":"ts-jest/presets/default-esm","moduleNameMapper":{"^(\\.{1,2}/.*)\\.js$":"$1"}},"gitHead":"4ffb46d1600a2682e6180348c83e24d081b1edb5","_id":"@ekamil/kindle-vocab-api@1.2.0","_nodeVersion":"16.20.0","_npmVersion":"lerna/6.6.1/node@v16.20.0+arm64 (darwin)","dist":{"integrity":"sha512-lSyq1dJNihwrDY+Ld6968GGh6M/4r+P01RbEIqtzizU2JCV7K10EzkrGW5C4UUSPp3dfqaFlaug8+d94UvwN9Q==","shasum":"2047c402d1a37dffe672d9429f5d5a011a6241b3","tarball":"https://registry.npmjs.org/@ekamil/kindle-vocab-api/-/kindle-vocab-api-1.2.0.tgz","fileCount":16,"unpackedSize":52709,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICfAdRTfGiuoQ+kS9L2rOiyIVOhcT8lq0QLi1hTfPQ/QAiANBXvze7YPY+1yMdiZF/+/TJ4+thZKa8tOKuoJi+p9Bg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkTo95ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo2KQ/+Ofm7hQDnk+qlPQcpSnrIsQP+4F70mIXVtZVwbRA8iu6EpWoR\r\nkjQLKBIhwKiDduSjx0/6k61jZ4UQVtuG9z4g+uNExyFIzizp4IYJiwlkBimE\r\ntI4gZBNiYY/7TYuss3H50f8b9DQoM81LN2AHAv2X53rPzgM/uTIWrhF1+SkT\r\no/yGZkSbfLYoRxdM4OC6cnPYTgXqMF0D3n63x1vBJ9EXfBgjFPDbVE8Zstal\r\nAotTrGEyyvjXCtsWZmbNbXIOpFhmT44ucwzwfb3EUTwbs/G8Vis8zzXF92Kk\r\nwEfu172Mkk+St3s/H29MzW2xpBXJbYsLrffNRDu+s0QzfGWyLu1c4e/BphEW\r\n4kGpraObHK8TqoXW6fMtPL0EuX/HYLNwkJnSV+1Rp49nMKLx8Hw1WkxZ8Y2J\r\n37RdQl3od3iNllf3qp4b9r9MybTGPUFxOJrsTl6NfGd10HSbPWLhQhnNgCSd\r\nRMUkOQMtWlbTUMap9cjPdb5uoQsPuUwfn7A1oqBphM5Yv7PUr2XM5rL7e1zA\r\nib1TJ7Bj/+TUuP+zqfoBD5kavex0Uymo2X4EM8foPatTCabEcdyru1ys/o6U\r\nOEYCYxzIrtk0KRQg3taPCJNpLqyxaL9A3ayK9sjMMSpKiHiZK3ldKQ5GOgNb\r\n9WOaQSJG1Evic8O4VVrUINGqotdFY91w7tM=\r\n=buIG\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"ekamil","email":"kamil@essekkat.pl"},"directories":{},"maintainers":[{"name":"ekamil","email":"kamil@essekkat.pl"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kindle-vocab-api_1.2.0_1682870137120_0.12758760179629602"},"_hasShrinkwrap":false},"1.5.0":{"name":"@ekamil/kindle-vocab-api","version":"1.5.0","author":{"name":"Kamil","email":"kamil@essekkat.pl","url":"https://essekkat.pl"},"license":"Unlicense","description":"API interface for Kindle Vocabulary Builder DB file","scripts":{"clean":"rimraf dist/","build-tsc":"rimraf dist/ && tsc --noEmit false","build":"rimraf dist/ && node --no-warnings esbuild.config.mjs && tsc --emitDeclarationOnly true","test":"jest ./src","lint":"prettier --write \"src/**/*.ts\" && eslint --fix ./src && tsc --noEmit true","preversion":"npm test && npm run lint","main":"npm run build-tsc && node dist/demo.js"},"keywords":[],"exports":"./dist/main.js","main":"./dist/main.js","bin":{"kindle-vocab-api":"dist/demo.js"},"types":"./dist/main.d.ts","private":false,"type":"module","devDependencies":{"@jest/globals":"^29.5.0","@types/better-sqlite3":"^7.6.4","@types/jest":"^29.5.1","@types/node":"^18.16.0","@types/sqlite3":"^3.1.8","@types/unidecode":"^0.1.1","@typescript-eslint/eslint-plugin":"^5.59.1","@typescript-eslint/parser":"^5.59.1","esbuild":"^0.17.18","jest":"^29.5.0","rimraf":"^5.0.0","ts-jest":"^29.1.0","typescript":"^5.0.4"},"dependencies":{"better-sqlite3":"^8.3.0","sqlite3":"^5.1.6","unidecode":"^0.1.8"},"engines":{"node":">=14.16"},"jest":{"preset":"ts-jest/presets/default-esm","moduleNameMapper":{"^(\\.{1,2}/.*)\\.js$":"$1"}},"gitHead":"7c49420707e271a0ba62100eb0a75d183a39bf44","_id":"@ekamil/kindle-vocab-api@1.5.0","_nodeVersion":"18.16.0","_npmVersion":"lerna/6.6.1/node@v18.16.0+arm64 (darwin)","dist":{"integrity":"sha512-ujAPzTsHWpy0PMyH8foo/fMk+O/owVYIUMgrKyyTA7tawbvUSKodyFq7HMM9ryDANZhhxQfF9wjn3z0XpA4ieg==","shasum":"c6b5a23096a5be20c1f2e5e8401d7246a69b913e","tarball":"https://registry.npmjs.org/@ekamil/kindle-vocab-api/-/kindle-vocab-api-1.5.0.tgz","fileCount":16,"unpackedSize":53215,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCAOFChAlbPGCFrpztvXMgam5RIUm1tsKUStvnVdspV0QIgbI7T3R8CZS7XUL+iIbEKubCOj6PKpTLM/dntRPo8Qa0="}]},"_npmUser":{"name":"ekamil","email":"kamil@essekkat.pl"},"directories":{},"maintainers":[{"name":"ekamil","email":"kamil@essekkat.pl"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kindle-vocab-api_1.5.0_1684053978353_0.20902842767867824"},"_hasShrinkwrap":false},"1.6.0":{"name":"@ekamil/kindle-vocab-api","version":"1.6.0","author":{"name":"Kamil","email":"kamil@essekkat.pl","url":"https://essekkat.pl"},"license":"Unlicense","description":"API interface for Kindle Vocabulary Builder DB file","scripts":{"clean":"rimraf dist/","build-tsc":"rimraf dist/ && tsc --noEmit false","build":"rimraf dist/ && node --no-warnings esbuild.config.mjs && tsc --emitDeclarationOnly true","test":"jest ./src","lint":"prettier --write \"src/**/*.ts\" && eslint --fix ./src && tsc --noEmit true","preversion":"npm test && npm run lint","main":"npm run build-tsc && node dist/demo.js"},"keywords":[],"exports":"./dist/main.js","main":"./dist/main.js","bin":{"kindle-vocab-api":"dist/demo.js"},"types":"./dist/main.d.ts","private":false,"type":"module","devDependencies":{"@jest/globals":"^29.5.0","@types/better-sqlite3":"^7.6.4","@types/jest":"^29.5.1","@types/node":"^20.1.4","@types/unidecode":"^0.1.1","@typescript-eslint/eslint-plugin":"^5.59.1","@typescript-eslint/parser":"^5.59.1","esbuild":"^0.17.18","jest":"^29.5.0","rimraf":"^5.0.0","ts-jest":"^29.1.0","typescript":"^5.0.4"},"dependencies":{"better-sqlite3":"^8.3.0","unidecode":"^0.1.8"},"engines":{"node":">=14.16"},"jest":{"preset":"ts-jest/presets/default-esm","moduleNameMapper":{"^(\\.{1,2}/.*)\\.js$":"$1"}},"gitHead":"0960a8db9b612b8241532d6fd244c9ef7c368690","_id":"@ekamil/kindle-vocab-api@1.6.0","_nodeVersion":"16.20.0","_npmVersion":"lerna/6.6.2/node@v16.20.0+arm64 (darwin)","dist":{"integrity":"sha512-9H9eMfI1x/qFJprIQnP0xzDuENUegmDQlieNuFvEmTTEWCmZRTVMP+45fz06dKYs8Ucq59cC0xvIWVQcloy3YA==","shasum":"d71ca0607b2f59ed7252736bee03ebf4f497c1a8","tarball":"https://registry.npmjs.org/@ekamil/kindle-vocab-api/-/kindle-vocab-api-1.6.0.tgz","fileCount":17,"unpackedSize":53050,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDOOsCsuyzjU/IjfnzzeXXl3RGDyi78rv6gXEHkchdhkAiBU4hetOOtq2CjWkU+KEnuneCoPIYy3dH3F4vjqVdopkA=="}]},"_npmUser":{"name":"ekamil","email":"kamil@essekkat.pl"},"directories":{},"maintainers":[{"name":"ekamil","email":"kamil@essekkat.pl"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kindle-vocab-api_1.6.0_1684073441944_0.3392832287081158"},"_hasShrinkwrap":false},"1.7.0":{"name":"@ekamil/kindle-vocab-api","version":"1.7.0","author":{"name":"Kamil","email":"kamil@essekkat.pl","url":"https://essekkat.pl"},"license":"Unlicense","description":"API interface for Kindle Vocabulary Builder DB file","scripts":{"clean":"rimraf dist/","build-tsc":"rimraf dist/ && tsc --noEmit false","build":"rimraf dist/ && node --no-warnings esbuild.config.mjs && tsc --emitDeclarationOnly true","test":"jest ./src","lint":"prettier --write \"src/**/*.ts\" && eslint --fix ./src && tsc --noEmit true","preversion":"npm test && npm run lint","main":"npm run build-tsc && node dist/demo.js"},"keywords":[],"exports":"./dist/main.js","main":"./dist/main.js","bin":{"kindle-vocab-api":"dist/demo.js"},"types":"./dist/main.d.ts","private":false,"type":"module","devDependencies":{"@jest/globals":"^29.5.0","@types/better-sqlite3":"^7.6.4","@types/jest":"^29.5.1","@types/node":"^20.1.4","@types/unidecode":"^0.1.1","@typescript-eslint/eslint-plugin":"^5.59.1","@typescript-eslint/parser":"^5.59.1","esbuild":"^0.17.18","jest":"^29.5.0","rimraf":"^5.0.0","ts-jest":"^29.1.0","typescript":"^5.0.4"},"dependencies":{"better-sqlite3":"^8.3.0","unidecode":"^0.1.8"},"engines":{"node":">=14.16"},"jest":{"preset":"ts-jest/presets/default-esm","moduleNameMapper":{"^(\\.{1,2}/.*)\\.js$":"$1"}},"gitHead":"366a068f3dd0fa95005d770e55442a9660a39a41","_id":"@ekamil/kindle-vocab-api@1.7.0","_nodeVersion":"16.20.0","_npmVersion":"lerna/6.6.2/node@v16.20.0+arm64 (darwin)","dist":{"integrity":"sha512-hH3xGYOyA47uNRgwq3pkKMwWQp0yomCvO4A9/cnfKc00Nv4ekK/0Qb5groYIr5PdkQtuab4lMRraJ9I1yUxQ1A==","shasum":"e1b9883e754b0f64f5072b7ef6d3682b07add5d3","tarball":"https://registry.npmjs.org/@ekamil/kindle-vocab-api/-/kindle-vocab-api-1.7.0.tgz","fileCount":17,"unpackedSize":51508,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDiRva4VsVy2EN4mVH/yxxaAhR95DNeUFsPrFk8F8Ul4AiEAgXGk+8PZrpHKujMK2nBDMtJBVCVgtF0ex5AGTuREdX8="}]},"_npmUser":{"name":"ekamil","email":"kamil@essekkat.pl"},"directories":{},"maintainers":[{"name":"ekamil","email":"kamil@essekkat.pl"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kindle-vocab-api_1.7.0_1684078119550_0.8143998730206432"},"_hasShrinkwrap":false}},"time":{"created":"2023-04-25T21:10:20.567Z","1.0.1-alpha.0":"2023-04-25T21:10:20.812Z","modified":"2023-05-14T15:28:39.867Z","1.0.2-alpha.0":"2023-04-25T21:20:20.170Z","1.0.3-alpha.0":"2023-04-25T21:23:19.042Z","1.1.0":"2023-04-30T13:54:10.399Z","1.2.0":"2023-04-30T15:55:37.317Z","1.5.0":"2023-05-14T08:46:18.546Z","1.6.0":"2023-05-14T14:10:42.159Z","1.7.0":"2023-05-14T15:28:39.767Z"},"maintainers":[{"name":"ekamil","email":"kamil@essekkat.pl"}],"description":"API interface for Kindle Vocabulary Builder DB file","keywords":[],"author":{"name":"Kamil","email":"kamil@essekkat.pl","url":"https://essekkat.pl"},"license":"Unlicense","readme":"# Export kindle vocabulary to Markdown - API part\n\nThis library reads, parses and structures Kindle's Vocabulary Builder database.\n\nUsage:\n\n```typescript\nimport { getKindleVocabulary, Vocabulary } from \"kindle-vocab-api\";\nconst vocabulary = await getKindleVocabulary(options.database);\nvocabulary.words.forEach(async (word) => {\n  console.log(word);\n});\n```\n\n**Important: backup the output directory before running**\n\nThe script shouldn't delete anything, but better safe than sorry!\n\n### Kindle vocabulary\n\nIt's a SQLite database with just 4 important tables:\n\n- lookups\n  - timestamp\n  - usage (ie. context)\n  - pos (ie. position in the book, probably)\n- words\n  - stem\n- dict_inf (optional, really, there's also `words.lang`, but it can have variant)\n  - langin / langout (ie. normalised language code)\n- book_info\n  - asin & guid\n  - authors\n  - title\n\nBook titles should be unique, Lookups are unique, words - aren't (word can be looked up multiple times).\n\n#### Example query\n\n```sqlite\nSELECT L.timestamp,\n       W.stem,\n       L.usage,\n       L.pos,\n       BI.title,\n       BI.authors,\n       coalesce(DI.langout, 'en')\nFROM LOOKUPS L\n         INNER JOIN WORDS W on L.word_key = W.id\n         INNER JOIN BOOK_INFO BI on L.book_key = BI.id\n         LEFT OUTER JOIN DICT_INFO DI on L.dict_key = DI.id\nWHERE W.stem = 'organza'\n```\n","readmeFilename":"README.md"}