{"_id":"ntp-time-sync","_rev":"10-af9dffeb036bc9d2d256075ad54a565d","name":"ntp-time-sync","dist-tags":{"latest":"0.6.0"},"versions":{"0.1.0":{"name":"ntp-time-sync","version":"0.1.0","keywords":["ntp","clock","sync","parser","udp","time"],"author":{"name":"Laurens Stötzel"},"license":"GPL-3.0","_id":"ntp-time-sync@0.1.0","maintainers":[{"name":"l.stoetzel","email":"laurens.stoetzel@gmail.com"}],"homepage":"https://github.com/buffcode/ntp-time-sync#readme","bugs":{"url":"https://github.com/buffcode/ntp-time-sync/issues"},"dist":{"shasum":"16a004db74f94be76ecf5c8b583af699ef6eeec4","tarball":"https://registry.npmjs.org/ntp-time-sync/-/ntp-time-sync-0.1.0.tgz","integrity":"sha512-eIjRFWfXSvKOiDsKMyHoBK7IzU8tY1OWn75j1TW5Tg/dKTWLVEuufnhLiS1XjWfs14sTGmZVCjzTF9E1NqF4dw==","signatures":[{"sig":"MEUCIQDZH+Fwf7zcA6SWfMocUSA+JHeKrt7QYm33byVL/G/JeAIgEyMyNs/VJiOBCHluY7aDG9fbGYu/bWs+Anp6MftnuKo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"dist/index.js","gitHead":"c4c774071788a66cef0ef16fbcb905560b28466b","scripts":{"babel":"babel-node","build":"babel --presets babel-preset-es2015 --out-dir dist src && prettier --write dist/**/*.js","prettier":"prettier --write src/**/*.js test/**/*.js","prettier:lint":"prettier --list-different src/**/*.js","prepublishOnly":"yarn prettier:lint && yarn build"},"_npmUser":{"name":"l.stoetzel","email":"laurens.stoetzel@gmail.com"},"repository":{"url":"git+https://github.com/buffcode/ntp-time-sync.git","type":"git"},"_npmVersion":"5.3.0","description":"Fetches the current time from NTP servers and returns offset information","directories":{},"_nodeVersion":"8.3.0","dependencies":{"ntp-packet-parser":"^0.1.0"},"devDependencies":{"prettier":"^1.6.1","babel-cli":"^6.26.0","babel-preset-es2015":"^6.24.1","babel-plugin-transform-object-rest-spread":"^6.26.0"},"_npmOperationalInternal":{"tmp":"tmp/ntp-time-sync-0.1.0.tgz_1504786857623_0.6042671236209571","host":"s3://npm-registry-packages"}},"0.2.0":{"name":"ntp-time-sync","version":"0.2.0","keywords":["ntp","clock","sync","parser","udp","time"],"author":{"name":"Laurens Stötzel"},"license":"GPL-3.0","_id":"ntp-time-sync@0.2.0","maintainers":[{"name":"l.stoetzel","email":"laurens.stoetzel@gmail.com"}],"homepage":"https://github.com/buffcode/ntp-time-sync#readme","bugs":{"url":"https://github.com/buffcode/ntp-time-sync/issues"},"dist":{"shasum":"45e5d1ec0390f7aa6d8ef37e244b07916b3f8913","tarball":"https://registry.npmjs.org/ntp-time-sync/-/ntp-time-sync-0.2.0.tgz","fileCount":16,"integrity":"sha512-Fo7cFFegbIrOlQQQ6V9pRabm/7kFU9eVS4DhcIQpsEKB0Kxz7AkAzz3vCKlhFg95WTH7AeIwedz2zFPHTEWoHg==","signatures":[{"sig":"MEQCIAQtik5CS2frNVYh5sGOkEj/BWCl/IzK4fKDVKBywISqAiBH8Gasjvvl6i9zt5aKfBjp1aHUteuf2VvO1luDtIW3dg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":76620,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgoZzfCRA9TVsSAnZWagAAL4EP/A7yQK1Pvrny0o3lVD3F\nIlCv+6JyQif2XlznQp5/0b35cEI4fJ5MwAuQBD6tq4MgzqcYpEEZBA8SycVs\nxZYE3Z06JvWhtmtQpVJzfyKhNqGTmO1XaorXFa8WSonlTn6uJWrdsKER0+BS\n+tIky4aUUqU2l9T4dzVT66ilqWy44+tFGCPeQkyLJncioN3ZCj6J5Sae3YV6\ngwAuK3965UwAkCAkTVNdj4AHFBoqOF/0fkPF7FxHL6/wb3iCSUptKcSyO2y6\nvPT55qE+duHcPAC9ZYfm8l6gNEdGIOpTQx5y+ysWLDgLRc1f9FrgXb+h95ex\ntutDRFEt3YhcAtdVjrjdT+LDO1RomaF11snYFcyAD2m6oXTS0QnGOS5EJCTR\n1jKXx8zM3Gtnxde19KThc983OrM3nAThY2x2qVibupA+SEpYpKyVZgRYNufS\nCFDICDwJloH8B742GabGMgBE5pnL8jW+OYVYajJQl8MrBU1WKzIQgNNpMTU6\n+VvkZBMG0baW5S5P4zY76OMTUBgrcpfCW+03CJfZZkpKRggxNIBM/G7I0lnk\nfxlXJDQCS3UfZ1grvi/LuSRDDendDmuYGAdRRvFCM1VskN1KZ9unu4gWZHfV\nEb704DBbUv8x8cokOTiFmVY7Sap1n03gFAcYH0rAof/GiOQko+BI/sEDoT2q\nMoFn\r\n=G39R\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","gitHead":"f632a7dc47707ab8c500b503919d2d13c40b2857","scripts":{"build":"tsc","prettier":"prettier --write src/**/*.ts","prettier:lint":"prettier --list-different src/**/*.ts","prepublishOnly":"yarn prettier:lint && yarn build"},"_npmUser":{"name":"l.stoetzel","email":"laurens.stoetzel@gmail.com"},"prettier":{"printWidth":120},"repository":{"url":"git+https://github.com/buffcode/ntp-time-sync.git","type":"git"},"_npmVersion":"6.14.12","description":"Fetches the current time from NTP servers and returns offset information","directories":{},"_nodeVersion":"14.16.1","dependencies":{"ntp-packet-parser":"^0.2.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-node":"^9.1.1","prettier":"^2.3.0","typescript":"^4.2.4","@types/node":"^15.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ntp-time-sync_0.2.0_1621204190845_0.696914837921164","host":"s3://npm-registry-packages"}},"0.2.1":{"name":"ntp-time-sync","version":"0.2.1","keywords":["ntp","clock","sync","parser","udp","time"],"author":{"name":"Laurens Stötzel"},"license":"GPL-3.0","_id":"ntp-time-sync@0.2.1","maintainers":[{"name":"l.stoetzel","email":"laurens.stoetzel@gmail.com"}],"homepage":"https://github.com/buffcode/ntp-time-sync#readme","bugs":{"url":"https://github.com/buffcode/ntp-time-sync/issues"},"dist":{"shasum":"5516ed8396a01a1e70c19a3dfad831a3eeb2cf76","tarball":"https://registry.npmjs.org/ntp-time-sync/-/ntp-time-sync-0.2.1.tgz","fileCount":16,"integrity":"sha512-yaJdPfSJLo4/Yu9/9F0sDbCpfUz8hnGOkUTVnryZOP1vDEApqq8r24VXKJj783Ac4J6ULDPTSdEdt0rKuRZGcg==","signatures":[{"sig":"MEQCIBcHdwnVPYcguQUA99IzQ9eKO7xileQBXcpHL+Ui4jrLAiA7MHZy+Iiy7txaCV/DJGntl36oKqAEEjUn9O1icT5JYQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":76847,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiRr+PACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqm+Q//csJrh5v4Wlz8Ne2qDL7SiKsn/LnxZLqkf4xc7qO0vIgU+GV0\r\nOrh6NsLlRSbzE000d5sQipkdnx4fnlqcH4/90thqjBKzvz7u/gBoWzS/Zfzq\r\nTIUKc0wJSQzvtE/210Uz9yqySqqI3PUg5z/Tl6axJZ/vCveX6dXZb89A9+F1\r\nmqE0AiyTtL0eEC7tAr9psVeMJPJnk8XksT4f37UBOUCwsX16keRTTnmr4LEd\r\n6yhKh7hQ8o9LvGE5dyMge4DmVTryCL1kBa5rXYWguWRhEljtaORUOoshvBVS\r\nZdFDWeB0Yw+DV5A5uP7qxbWVyPGcWnUS2twQOElqkJQ+VjkKrQAKJsJkvhUt\r\nX7tgecd4TCgvIl68X1xtRZTNaqVkRmCn/Yv7rqhUDvG7ZyXjOLQpmePMvIYp\r\nFrpDjrs7twoZDublKbQh9LCuB3Mb0iVenBCtUUvb5xoEUq+Ir5BCfUay9MZl\r\nRC20bLMiZLzawGBMngWITudfvoltUBXgK1ScIglTsC47X2ugtZj8fNldykzv\r\nwNmraAO2uB5+FGDxoD1PlNyoXBfrk5L8jyhqfU2sXTg2+0AjIMbQfQ75+n/s\r\ncyVBhD46nCymX4W2xlNeY2rhBj1hpPKYNTuAt56mXzu9rGKvDGm4UxZfK5qw\r\nfqlJOey1BOBDVdsyZWG2UXJlGhMk+N1iyRA=\r\n=yX7l\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","engines":{"node":"^12 || ^14 || ^16"},"gitHead":"686d63344bd9c049a7168e14344102df3d846e1b","scripts":{"build":"tsc","prettier":"prettier --write src/**/*.ts","prettier:lint":"prettier --list-different src/**/*.ts","prepublishOnly":"yarn prettier:lint && yarn build"},"_npmUser":{"name":"l.stoetzel","email":"laurens.stoetzel@gmail.com"},"prettier":{"printWidth":120},"repository":{"url":"git+https://github.com/buffcode/ntp-time-sync.git","type":"git"},"_npmVersion":"6.14.16","description":"Fetches the current time from NTP servers and returns offset information","directories":{},"_nodeVersion":"14.19.0","dependencies":{"ntp-packet-parser":"^0.2.1"},"_hasShrinkwrap":false,"devDependencies":{"ts-node":"^10.4.0","prettier":"^2.3.0","typescript":"^4.2.4","@types/node":"^15.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ntp-time-sync_0.2.1_1648803727505_0.4752904236277491","host":"s3://npm-registry-packages"}},"0.3.0":{"name":"ntp-time-sync","version":"0.3.0","keywords":["ntp","clock","sync","parser","udp","time"],"author":{"name":"Laurens Stötzel"},"license":"GPL-3.0","_id":"ntp-time-sync@0.3.0","maintainers":[{"name":"l.stoetzel","email":"laurens.stoetzel@gmail.com"}],"homepage":"https://github.com/buffcode/ntp-time-sync#readme","bugs":{"url":"https://github.com/buffcode/ntp-time-sync/issues"},"dist":{"shasum":"2a0ab97c7f1b6ed80b753468884f491240d05995","tarball":"https://registry.npmjs.org/ntp-time-sync/-/ntp-time-sync-0.3.0.tgz","fileCount":16,"integrity":"sha512-yKk9osZAtueZg1XuVQOXww8N4nlidUAtA2NLGSzJZEVf/Q6pOupbX/oqsGvf+o4VmtTBxkWy8dGQde6bki7KMA==","signatures":[{"sig":"MEQCIBWe+/yMq8p02gbVkzSZAaQKFkj3dANaEgyqUgIrN7ZBAiAYGdjrZ/KJ+ioZ3KPQAIkOvWuCpGmAPT5HG46QEJy0jg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":76847,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjb/+mACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoHIBAAgRyP97Agx79js+33UGgMb1x4Bkt740am4Db3bs1lsEJ8+auy\r\n3GBglNi6tDHQx3GuPRMyxtMa2hUFffkWESLLzuG0XaK5hmnur9jutrh1jamj\r\nWzGuCP6tHjhMqZiS4U753oPzASZ8jUJ8BJ9hG6kGFfjwzCjQX7sh4q7pXjF5\r\nxS5onJPsIjSHn/rIjJpTqvcfWnYifGo2E/Bko2IyIjyEDLCzxx/vHYCUjO0j\r\n1b4YGjcnWC2y5X+frZLmnrcsz9mBauLoqz/8gYREPTFszjz4712qEQAS9Gwj\r\n1C7JhfvkKsn/Mr91G8jAW2lbKGYeXU7ToCgbmncgsROF5oxh21mGUm8yJkw5\r\nnndXcI6v1T0dtVVFEWJzL/rnebtpPLlulVptbq9MZSZMyiZNXbglYEMGaX5x\r\nU2xbsl9lujYsyM6rT1pTmqe5NaqSrKUwOuwWvWZmavNqch05jBOTBkJ06J//\r\nHuaoXkOOZfqi2Dt0hyi9gpSV3DoIGylT2WhRmhNDxTTVukPEuIGiDhXTHg4k\r\n5MC04Wov6cccU+Uzncyl6LjzzZLHZ2eyveEK2n+qoKpDBc2viL1igz/Xhwlp\r\nWdQEsc/+jov17tNK7Z8FRNyupTjBsJtBLvjKaZwC+anT0xO5z/PteP8fOPyd\r\nJnAVdlFG4bNnz4VD854e4vciWva5/JOvQgk=\r\n=CdgY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","engines":{"node":"^14 || ^16 || ^18"},"gitHead":"f8fd3f8516df12e070b04249bae0a2852e76dffa","scripts":{"build":"tsc","prettier":"prettier --write src/**/*.ts","prettier:lint":"prettier --list-different src/**/*.ts","prepublishOnly":"yarn prettier:lint && yarn build"},"_npmUser":{"name":"l.stoetzel","email":"laurens.stoetzel@gmail.com"},"prettier":{"printWidth":120},"repository":{"url":"git+https://github.com/buffcode/ntp-time-sync.git","type":"git"},"_npmVersion":"6.14.17","description":"Fetches the current time from NTP servers and returns offset information","directories":{},"_nodeVersion":"14.20.1","dependencies":{"ntp-packet-parser":"^0.3.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-node":"^10.4.0","prettier":"^2.3.0","typescript":"^4.2.4","@types/node":"^15.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ntp-time-sync_0.3.0_1668284326004_0.2307957931952329","host":"s3://npm-registry-packages"}},"0.3.1":{"name":"ntp-time-sync","version":"0.3.1","keywords":["ntp","clock","sync","parser","udp","time"],"author":{"name":"Laurens Stötzel"},"license":"GPL-3.0","_id":"ntp-time-sync@0.3.1","maintainers":[{"name":"l.stoetzel","email":"laurens.stoetzel@gmail.com"}],"homepage":"https://github.com/buffcode/ntp-time-sync#readme","bugs":{"url":"https://github.com/buffcode/ntp-time-sync/issues"},"dist":{"shasum":"b0a6b51e236879f46d73ba17a3d6fdaa2b08eec0","tarball":"https://registry.npmjs.org/ntp-time-sync/-/ntp-time-sync-0.3.1.tgz","fileCount":16,"integrity":"sha512-j0UBn82TPv7zBmhGdFXX15Gu1YO6Fehf3B+2UHSjhltrGjlvWjmQ4W9bKqGCAkLF+B9tn2014mxc9NaCop+WcQ==","signatures":[{"sig":"MEUCIQChKE60IOt/TQ+xvPvWZTIXoQdFdFut0/lUHATBdnH4nwIge07nf8DiQX55gKRbFq7rDSKYJtacOPg8fc2I1JEFIHA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":77288},"main":"dist/index.js","engines":{"node":"^14 || ^16 || ^18"},"gitHead":"cab634438b4a6124edad33b8e15fa58c4d961cee","scripts":{"build":"tsc","prettier":"prettier --write src/**/*.ts","prettier:lint":"prettier --list-different src/**/*.ts","prepublishOnly":"yarn prettier:lint && yarn build"},"_npmUser":{"name":"l.stoetzel","email":"laurens.stoetzel@gmail.com"},"prettier":{"printWidth":120,"trailingComma":"es5"},"repository":{"url":"git+https://github.com/buffcode/ntp-time-sync.git","type":"git"},"_npmVersion":"6.14.18","description":"Fetches the current time from NTP servers and returns offset information","directories":{},"_nodeVersion":"14.21.3","dependencies":{"ntp-packet-parser":"^0.3.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-node":"^10.4.0","prettier":"^3.0.2","typescript":"^5.0.2","@types/node":"^15.3.0"},"_npmOperationalInternal":{"tmp":"tmp/ntp-time-sync_0.3.1_1692690942420_0.974763428336223","host":"s3://npm-registry-packages"}},"0.4.0":{"name":"ntp-time-sync","version":"0.4.0","keywords":["ntp","clock","sync","parser","udp","time"],"author":{"name":"Laurens Stötzel"},"license":"GPL-3.0","_id":"ntp-time-sync@0.4.0","maintainers":[{"name":"l.stoetzel","email":"laurens.stoetzel@gmail.com"}],"homepage":"https://github.com/buffcode/ntp-time-sync#readme","bugs":{"url":"https://github.com/buffcode/ntp-time-sync/issues"},"dist":{"shasum":"c2493857045391058d08731d439a728bf01cbac6","tarball":"https://registry.npmjs.org/ntp-time-sync/-/ntp-time-sync-0.4.0.tgz","fileCount":16,"integrity":"sha512-8P0vwpIrSCu4hBPnzlzQf8TqD4+mRpJrbL9/K9OgndYE+NX8EmEVsXU4cxdm/srj3yCyf2sfWMbxC2WjE3XHGA==","signatures":[{"sig":"MEQCIB0LPh9DeccCUzRskDfQjV07SeVvp4yyNS6+xjveXUBJAiBu1iEFi8V0EyEMPbBbuxLt98k7UeMNZHQqbR+gRsD9nQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":77312},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":"^14 || ^16 || ^18 || ^20"},"gitHead":"86f868729708a70492307a96ffed680ec15b1d01","scripts":{"build":"tsc","prettier":"prettier --write src/**/*.ts","prettier:lint":"prettier --list-different src/**/*.ts","prepublishOnly":"yarn prettier:lint && yarn build"},"_npmUser":{"name":"l.stoetzel","email":"laurens.stoetzel@gmail.com"},"prettier":{"printWidth":120,"trailingComma":"es5"},"repository":{"url":"git+https://github.com/buffcode/ntp-time-sync.git","type":"git"},"_npmVersion":"10.2.4","description":"Fetches the current time from NTP servers and returns offset information","directories":{},"_nodeVersion":"20.11.0","dependencies":{"ntp-packet-parser":"^0.4.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-node":"^10.4.0","prettier":"^3.0.2","typescript":"^5.0.2","@types/node":"^14 || ^16 || ^18 || ^20"},"_npmOperationalInternal":{"tmp":"tmp/ntp-time-sync_0.4.0_1706179512013_0.23222999837294678","host":"s3://npm-registry-packages"}},"0.4.1":{"name":"ntp-time-sync","version":"0.4.1","keywords":["ntp","clock","sync","parser","udp","time"],"author":{"name":"Laurens Stötzel"},"license":"GPL-3.0","_id":"ntp-time-sync@0.4.1","maintainers":[{"name":"l.stoetzel","email":"laurens.stoetzel@gmail.com"}],"homepage":"https://github.com/buffcode/ntp-time-sync#readme","bugs":{"url":"https://github.com/buffcode/ntp-time-sync/issues"},"dist":{"shasum":"7dec2c120bdd08b9a1d727d031824d5aedd7b55a","tarball":"https://registry.npmjs.org/ntp-time-sync/-/ntp-time-sync-0.4.1.tgz","fileCount":16,"integrity":"sha512-FKgopRO1rAi6R+Bafv93tyUtApiU79R1HYvW4poXiqOlkqgRL4QNwSTivX0RBOg216HJbr4IR3CN5XN/R7jpDA==","signatures":[{"sig":"MEQCIBy/ZGDGuTL96GcYaVasQ6Z9YyTlvfp9uB8aYWfGLWoBAiAA5orlQACh5Jz1IQyAQ0tUlganF2uo6GoY1Gqs0GbPaQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":77312},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":"^14 || ^16 || ^18 || ^20"},"gitHead":"0255059769bbcff2d5d8310af3b2d9295fac7497","scripts":{"build":"tsc","prettier":"prettier --write src/**/*.ts","prettier:lint":"prettier --list-different src/**/*.ts","prepublishOnly":"yarn prettier:lint && yarn build"},"_npmUser":{"name":"l.stoetzel","email":"laurens.stoetzel@gmail.com"},"prettier":{"printWidth":120,"trailingComma":"es5"},"repository":{"url":"git+https://github.com/buffcode/ntp-time-sync.git","type":"git"},"_npmVersion":"10.2.4","description":"Fetches the current time from NTP servers and returns offset information","directories":{},"_nodeVersion":"20.11.0","dependencies":{"ntp-packet-parser":"^0.4.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-node":"^10.4.0","prettier":"^3.0.2","typescript":"^5.0.2","@types/node":"^14 || ^16 || ^18 || ^20"},"_npmOperationalInternal":{"tmp":"tmp/ntp-time-sync_0.4.1_1706180042369_0.32757519381468336","host":"s3://npm-registry-packages"}},"0.5.0":{"name":"ntp-time-sync","version":"0.5.0","keywords":["ntp","clock","sync","parser","udp","time"],"author":{"name":"Laurens Stötzel"},"license":"GPL-3.0","_id":"ntp-time-sync@0.5.0","maintainers":[{"name":"l.stoetzel","email":"laurens.stoetzel@gmail.com"}],"homepage":"https://github.com/buffcode/ntp-time-sync#readme","bugs":{"url":"https://github.com/buffcode/ntp-time-sync/issues"},"dist":{"shasum":"28244e5119ec63de323ac951273f147ac079d011","tarball":"https://registry.npmjs.org/ntp-time-sync/-/ntp-time-sync-0.5.0.tgz","fileCount":16,"integrity":"sha512-ztb/P8wf6vwyJS2FPJ8i4nnDfbvMqVxs5+WoeVMbGkSGe0TiTsBhsV6qsFDiKXoNFwsBt+MUauwk2pKlgVLLmw==","signatures":[{"sig":"MEUCIQDDsmf+RQn7UKja+1kyz+md8z3pRJdwbH74huAftmyOBgIgWx0rX+3c6Cerkz48uRqfqXHJeCYUdvAeJCo+DUlQ/uk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":77392},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":"^18 || ^20 || ^22"},"gitHead":"7167854d5f2a511fe51e1558ddbd64875c267efe","scripts":{"build":"tsc","prettier":"prettier --write src/**/*.ts","prettier:lint":"prettier --list-different src/**/*.ts","prepublishOnly":"yarn prettier:lint && yarn build"},"_npmUser":{"name":"l.stoetzel","email":"laurens.stoetzel@gmail.com"},"prettier":{"printWidth":120,"trailingComma":"es5"},"repository":{"url":"git+https://github.com/buffcode/ntp-time-sync.git","type":"git"},"_npmVersion":"10.8.2","description":"Fetches the current time from NTP servers and returns offset information","directories":{},"_nodeVersion":"20.19.0","dependencies":{"ntp-packet-parser":"^0.5.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-node":"10.9.2","prettier":"3.5.3","typescript":"5.8.3","@types/node":"^18 || ^20 || ^22"},"_npmOperationalInternal":{"tmp":"tmp/ntp-time-sync_0.5.0_1744095612658_0.8920447598645571","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"ntp-time-sync","version":"0.6.0","description":"Fetches the current time from NTP servers and returns offset information","main":"./dist/cjs/index.js","module":"./dist/esm/index.js","types":"./dist/cjs/index.d.ts","type":"commonjs","exports":{".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/cjs/index.d.ts","default":"./dist/cjs/index.js"}},"./package.json":"./package.json"},"sideEffects":false,"dependencies":{"ntp-packet-parser":"^0.6.1"},"devDependencies":{"@arethetypeswrong/cli":"0.18.4","@types/node":"^20 || ^22 || ^24 || ^25","prettier":"3.9.3","publint":"0.3.18","ts-node":"10.9.2","typescript":"6.0.3"},"scripts":{"prepublishOnly":"yarn prettier:lint && yarn build","clean":"rm -rf dist","build:cjs":"tsc -p tsconfig.cjs.json && node scripts/write-package-type.mjs cjs","build:esm":"tsc -p tsconfig.esm.json && node scripts/write-package-type.mjs esm","build":"yarn build:cjs && yarn build:esm","test:integration:cjs":"node test/integration/cjs.cjs","test:integration:esm":"node test/integration/esm.mjs","test:integration:deno":"deno run --allow-read test/integration/deno.ts && deno run --allow-read test/integration/deno-esm.ts","test:integration":"yarn test:integration:cjs && yarn test:integration:esm","test:unit":"node scripts/run-unit-tests.mjs","prettier":"prettier --write src/**/*.ts","prettier:lint":"prettier --list-different src/**/*.ts","verify:pack":"npm pack --dry-run","verify:publint":"publint","verify:attw":"attw --pack .","verify:package":"yarn build && yarn verify:pack && yarn verify:publint && yarn verify:attw"},"keywords":["ntp","clock","sync","parser","udp","time"],"author":{"name":"Laurens Stötzel"},"repository":{"type":"git","url":"git+https://github.com/buffcode/ntp-time-sync.git"},"license":"GPL-3.0","prettier":{"printWidth":120,"trailingComma":"es5"},"engines":{"node":"^20 || ^22 || ^24 || ^25"},"gitHead":"7676f4b43973e7bdd3f7fabd085cd9a6e5be5f27","_id":"ntp-time-sync@0.6.0","bugs":{"url":"https://github.com/buffcode/ntp-time-sync/issues"},"homepage":"https://github.com/buffcode/ntp-time-sync#readme","_nodeVersion":"24.18.0","_npmVersion":"11.16.0","dist":{"integrity":"sha512-7hKnLUZN04goatNThks+raCAI4xRkF0UTdvoj7zpGsp1LDtyAJp4yguIIFYsLng6BKlheYfIOOyqY+eqvPsaCA==","shasum":"06ea52a999bba5057edc5462a709258cfaf8d674","tarball":"https://registry.npmjs.org/ntp-time-sync/-/ntp-time-sync-0.6.0.tgz","fileCount":37,"unpackedSize":158970,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/ntp-time-sync@0.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCXp9Nx+W2zxl+j0MzHOLFVjCScm/46td/rgc63wfPYnwIhAI5fpRw7T9c5cZ0fv209XQxMKN5cD8s/7xovVviCvOmh"}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c91933de-6293-4c25-a91f-45d752ea936e"}},"directories":{},"maintainers":[{"name":"l.stoetzel","email":"laurens.stoetzel@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/ntp-time-sync_0.6.0_1782921591444_0.3454873736213917"},"_hasShrinkwrap":false}},"time":{"created":"2017-09-07T12:20:58.609Z","modified":"2026-07-01T15:59:51.952Z","0.1.0":"2017-09-07T12:20:58.609Z","0.2.0":"2021-05-16T22:29:50.997Z","0.2.1":"2022-04-01T09:02:07.717Z","0.3.0":"2022-11-12T20:18:46.203Z","0.3.1":"2023-08-22T07:55:42.606Z","0.4.0":"2024-01-25T10:45:12.187Z","0.4.1":"2024-01-25T10:54:02.519Z","0.5.0":"2025-04-08T07:00:12.874Z","0.6.0":"2026-07-01T15:59:51.610Z"},"bugs":{"url":"https://github.com/buffcode/ntp-time-sync/issues"},"author":{"name":"Laurens Stötzel"},"license":"GPL-3.0","homepage":"https://github.com/buffcode/ntp-time-sync#readme","keywords":["ntp","clock","sync","parser","udp","time"],"repository":{"type":"git","url":"git+https://github.com/buffcode/ntp-time-sync.git"},"description":"Fetches the current time from NTP servers and returns offset information","maintainers":[{"name":"l.stoetzel","email":"laurens.stoetzel@gmail.com"}],"readme":"![NPM downloads](https://img.shields.io/npm/dt/ntp-time-sync.svg)\n[![Build Status](https://github.com/buffcode/ntp-time-sync/actions/workflows/nodejs.yml/badge.svg)](https://github.com/buffcode/ntp-time-sync/actions)\n![NPM version](https://img.shields.io/npm/v/ntp-time-sync)\n\n# ntp-time-sync\nNode.JS module to fetch the current time from NTP servers and returns offset information.\n\n**:information_source: NTP requires UDP which is not available in a browser context!**\n\n## Installation\n```bash\n# using Yarn\n$ yarn add ntp-time-sync\n\n# using NPM\n$ npm install ntp-time-sync\n```\n\n## Usage\nConsider using the library as a singleton, so that not every call to `getTime` fires new NTP packages.\nThe library itself will manage minimum/maximum poll times.\n\nSeveral requests to multiple NTP time servers are fired and the responses will be aggregated.\n\n```js\n// ES6:\nimport { NtpTimeSync } from \"ntp-time-sync\";\n// pre-ES6:\n// const NtpTimeSync = require(\"ntp-time-sync\").NtpTimeSync;\n\nconst timeSync = NtpTimeSync.getInstance();\n\n// request 1\ntimeSync.getTime().then(function (result) {\n  console.log(\"current system time\", new Date());\n  console.log(\"real time\", result.now);\n  console.log(\"offset in milliseconds\", result.offset);\n})\n\n// request 2, will use cached offset from previous request\ntimeSync.getTime().then(function (result) {\n  console.log(\"current system time\", new Date());\n  console.log(\"real time\", result.now);\n  console.log(\"offset in milliseconds\", result.offset);\n})\n\n// ES2017 style\nconst result = await timeSync.getTime();\nconsole.log(\"real time\", result.now);\n```\n\n`<ntpTimeSyncInstance>.getTime()` returns a `Promise` object which will eventually be resolved with a object containing the following information:\n\n| Property | Description |\n| :--- | :--- |\n| `now` | Current NTP time (\"real time\") |\n| `offset` | Calculated offset between local system time and NTP time |\n \n`<ntpTimeSyncInstance>.now()` returns a `Date` object containing the correct time for the moment when the function was called.\nIn contrast to `getTime()`, which will return the correct time for the moment the Promise gets resolved. \n\n## Options\nYou can pass custom options to the constructor of `NtpTimeSync` or `NtpTimeSync.getInstance(options)`.\nThese will be merged with the following defaults:\n\n```js\nconst defaultOptions = {\n  // list of NTP time servers, optionally including a port (defaults to 123)\n  servers: [\n    \"0.pool.ntp.org\",\n    \"1.pool.ntp.org\",\n    \"2.pool.ntp.org\",\n    \"3.pool.ntp.org\"\n  ],\n\n  // required amount of valid samples in order to calculate the time\n  sampleCount: 8,\n\n  // amount of time in milliseconds to wait for a single NTP response\n  replyTimeout: 3000,\n\n  // defaults as of RFC5905\n  ntpDefaults: {\n    port: 123,\n    version: 4,\n    tolerance: 15e-6,\n    minPoll: 4,\n    maxPoll: 17,\n    maxDispersion: 16,\n    minDispersion: 0.005,\n    maxDistance: 1,\n    maxStratum: 16,\n    precision: -18,\n    referenceDate: new Date(\"Jan 01 1900 GMT\")\n  }\n};\n```\n\n## Deno\n\n`ntp-time-sync` is compatible with Deno. Use the `npm:` specifier to import the package:\n\n```ts\n// Run: deno run --allow-net your-script.ts\nimport { NtpTimeSync } from \"npm:ntp-time-sync\";\n\nconst timeSync = NtpTimeSync.getInstance();\nconst result = await timeSync.getTime();\n\nconsole.log(\"system time\", new Date());\nconsole.log(\"ntp time\", result.now);\nconsole.log(\"offset (ms)\", result.offset);\n```\n","readmeFilename":"README.md"}