{"_id":"react-hydration-on-demand","_rev":"8-f2b3dfc893800fc5f90f6788fc843403","name":"react-hydration-on-demand","dist-tags":{"latest":"2.3.1"},"versions":{"1.0.0":{"name":"react-hydration-on-demand","version":"1.0.0","keywords":["react","hydrate","hydration","ssr"],"author":{"name":"valcol"},"license":"MIT","_id":"react-hydration-on-demand@1.0.0","maintainers":[{"name":"valcol","email":"valcol.nc@gmail.com"}],"homepage":"https://github.com/valcol/react-hydration-on-demand#readme","bugs":{"url":"https://github.com/valcol/react-hydration-on-demand/issues"},"dist":{"shasum":"f6fdbbc58dffdfe20d68a76cb9da2432c1995157","tarball":"https://registry.npmjs.org/react-hydration-on-demand/-/react-hydration-on-demand-1.0.0.tgz","fileCount":4,"integrity":"sha512-FubnIbqEXPpEyk6XNEvI09QS/4PuBz4gRqkCUqeiliOp5oScVPK6NJUZxgU1qbpZX0qHEAg4Ata6P2jCSfP5wQ==","signatures":[{"sig":"MEUCIQCWcwj/IYJ3DWuUlxcZaLvpNmuh8CY0C/Tc4mNqdCCFZQIgQO6qAdQGhmFH/X4i8jxOv/WaCHQo2SMcZ8DqgZaH5fc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":15773,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeEkN8CRA9TVsSAnZWagAAukUP/Ryi2RS1CV+iP4kpLWsq\n35RFPgQfPSbWAFM7wIfL1UfdfUE2u1R+dq2zMfpdl/CgwIBUMJpEmnxWRE7T\nSSavbRA44sIgPQQSFgxXmJSUnxX+Ibg2EqknYJa9Cowad0wzL7iDEowsvyyi\n9gMZLoWcg3KtzHf39d6Nd00TRfwM0OeJVrMWU/qIJKaT4rYGmRkohKJfmvM9\n91oLvqJ0zE9wu3qNdiRwk1KuIQvTkhUqpZPYDnAzTCsy4xDEioAL0wOwH8we\nxfxt1Mgt9nfeeFJ3aaL7gBCVxU+eKOimAsTEzHk8y29J93WwcVpEXEoCBDxL\n09/wL8MEPUFaGwWcdws/7x4yoWnDudSMHmUOsxvbzcUTazlKTCrLpbMFkvKa\nwdSY/ruH7Fko/nKiiMxDXyO5Ndjv6M1c/uh/wOwyuC23+y4opTc1BpChg3Az\nmMaG6GKgh93ZeLUQ/yTrAyT41yH6D0QLoPE89hwviqcukqXcvIFa0Y/nsOkg\naeFiP1RcjppuSoRBElu+LF9CNT6s4ncnHk1WzbrQgFPL3cCsPk1Zzc+N9ucT\nHHSCbJQB6DEMGtUf/k3scBBBIMWNT7BBR+89VPFrkxbJgl5RG6hDFkySi+zq\nHTTlBecWvcgJdAR2OQ0uTxOBq23lG7iQ6rdGShd5BNeQ6+7748gsFVS8W44w\nQPz6\r\n=KH+J\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","gitHead":"b3a735b9cf905ef5b3b1a00dfc495e17723ab5a2","scripts":{"test":"jest","build":"babel src --out-file dist/index.js"},"_npmUser":{"name":"valcol","email":"valcol.nc@gmail.com"},"repository":{"url":"git+https://github.com/valcol/react-hydration-on-demand.git","type":"git"},"_npmVersion":"6.13.4","description":"Hydrate your React components only when you need to","directories":{},"_nodeVersion":"12.14.0","dependencies":{"exenv":"^1.2.2","@babel/runtime":"^7.7.7"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^24.9.0","react":"^16.8.0","react-dom":"^16.8.0","@babel/cli":"^7.6.4","babel-jest":"^24.9.0","@babel/core":"^7.6.4","@babel/preset-env":"^7.6.3","@babel/preset-react":"^7.6.3","react-test-renderer":"^16.11.0","@testing-library/dom":"^6.11.0","@testing-library/react":"^9.4.0","@babel/plugin-transform-runtime":"^7.7.6"},"peerDependencies":{"react":"^16.8.0","react-dom":"^16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/react-hydration-on-demand_1.0.0_1578255227597_0.6473476323873348","host":"s3://npm-registry-packages"}},"2.0.0":{"name":"react-hydration-on-demand","version":"2.0.0","keywords":["react","hydrate","hydration","ssr"],"author":{"name":"valcol"},"license":"MIT","_id":"react-hydration-on-demand@2.0.0","maintainers":[{"name":"valcol","email":"valcol.nc@gmail.com"}],"homepage":"https://github.com/valcol/react-hydration-on-demand#readme","bugs":{"url":"https://github.com/valcol/react-hydration-on-demand/issues"},"dist":{"shasum":"aa84a6be854e77a9c0246f6a0655a374964ac517","tarball":"https://registry.npmjs.org/react-hydration-on-demand/-/react-hydration-on-demand-2.0.0.tgz","fileCount":4,"integrity":"sha512-ktEqwDnJgoXVfoAR2Rbr0aBBAtIbVjWujxgg6ABVoljjTUosgvr+vy319R8VCrUQBhI8TNKKLCaxrypI1+XXUw==","signatures":[{"sig":"MEYCIQDaR59hUt1hwQGQlL9Ax9LIbmMLR4r3fKiLXAcRdwE7nAIhAKwmjtZGRXRcL6yh/f/gTNxJUHCW7UaAf3tJnxEx5J8j","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":16337,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeJJZKCRA9TVsSAnZWagAA5NAP/2+WNjYPkGMZo+QmCBHf\n2L6QSpNEOkCdJsNOX6zndMDfOW7L6/WWUsk2+HcgvEzdI5BC/9VlxIYUiKqm\n6CYCHWGlSMfio+Iyc5oA6kWHY2w9gvJRpRbxQKWLg7ws7D8bIIo3c6MD9yzu\nBdsv2ZzYnky2AykBRvRdnBrLXXQAOfFacXlFXuEzUSl3stV4epDh6JEpsipY\nJONoNNOy4Gwaucik//+YoFNwPBl0oefYm3syEBcrS7Oykzcax29fp9zZ5g2j\nHVcwlh40PhDPkx00GC6JM5i/yoRGQE90xrzA1pA4apDy7LIMxU/2CodZBQ3n\nlDlDiczWSA9oBpUUvQgtHSjwIOuuaiBnYza8EpyqKvqICTr3IURQ+Fhteici\nzlKByO/rltYk79iuEEacrB29yuDOI2LAuch6a1Kc5KoiOFZQTRqMdia4+7hh\nCHKkGgezOwaTtwiBO3bMHQpg1iK6HYofHKmVda/PXHj10rdCgPLSRTIsN9WH\ncGE3T7KqevLK5TfaZ8DItrPfXLULu3oAXcLGflPcmU1ajKbjgYE7hxM9TpIZ\nEUw9EKkGbKSfKCASZlS2rwMcBy5nsFUU/l8SjycexXYnIzsmePirWfYeJN64\nobwHxaCayy/yd6WFOiy2qS2AEd30/W2ymcR2RygVrUcdJybxe7vYWvG8bWvt\nAOA5\r\n=M30Y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","gitHead":"5c6fafc3eae32bbbd11599aef5f2c7fe17d5df71","scripts":{"test":"jest","build":"babel src --out-file dist/index.js"},"_npmUser":{"name":"valcol","email":"valcol.nc@gmail.com"},"repository":{"url":"git+https://github.com/valcol/react-hydration-on-demand.git","type":"git"},"_npmVersion":"6.13.4","description":"Hydrate your React components only when you need to","directories":{},"_nodeVersion":"12.14.1","dependencies":{"exenv":"^1.2.2","@babel/runtime":"^7.7.7"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^24.9.0","react":"^16.8.0","react-dom":"^16.8.0","@babel/cli":"^7.6.4","babel-jest":"^24.9.0","@babel/core":"^7.6.4","@babel/preset-env":"^7.6.3","@babel/preset-react":"^7.6.3","react-test-renderer":"^16.11.0","@testing-library/dom":"^6.11.0","@testing-library/react":"^9.4.0","@babel/plugin-transform-runtime":"^7.7.6"},"peerDependencies":{"react":"^16.8.0","react-dom":"^16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/react-hydration-on-demand_2.0.0_1579456073610_0.7431642383172168","host":"s3://npm-registry-packages"}},"2.0.1":{"name":"react-hydration-on-demand","version":"2.0.1","keywords":["react","hydrate","hydration","ssr","progressive","on-demand"],"author":{"name":"valcol"},"license":"MIT","_id":"react-hydration-on-demand@2.0.1","maintainers":[{"name":"valcol","email":"valcol.nc@gmail.com"}],"homepage":"https://github.com/valcol/react-hydration-on-demand#readme","bugs":{"url":"https://github.com/valcol/react-hydration-on-demand/issues"},"dist":{"shasum":"76bcc8d6d832c070341513bcfaba54c01fbc7980","tarball":"https://registry.npmjs.org/react-hydration-on-demand/-/react-hydration-on-demand-2.0.1.tgz","fileCount":4,"integrity":"sha512-25ZyBooNH1jF0iv9FfGx8R59BwylxbCZp7suMmYbRpnHb1TTFXvCodb1qYa/r1kcMNHnDG58yQN/HEjz3J6RSg==","signatures":[{"sig":"MEQCIGVk7X1OsfP0xPGVCnXwB1pAypZq7Mq5RqRalRog4eSlAiAWK/9Pynl9nZkntKtrNOg+ZfRhC28E5jEK6YxEsIOWgQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":17110,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfofqsCRA9TVsSAnZWagAA3O4P/RE+znjbWbX4xCR53H2R\nuCa6UejJZeaGhrV/LsFPMRDhTylu3Nxb4TruTR9yxeO67EE8timBjLUM0dxy\ngt5OqV5Kw78/uP3DCnOvC0nR75Nj2O94M62xMzzEgIzMCpmDhGlaMQxh+7Bc\nVilkHJYxJEasTcFheaM69oWAjhsIVcVtrLL0fPCSdT9foOeKcqhMI2wvXk+b\nypOr+npMGY17O84fdktHO5l+pl/rB/9PAvCCmHikqeFAiw+AMAk7o2UMp6gL\nAJswD6hbxHbmNDFZhb2aleQRtxVnMYKrpccqYFbStsKUyuooLlPhewWSAXOD\n01arKHtgJRMC28ozv5CO9brxg8eRm7TCyT5qGdjQYhXDL3eRiRa2W1EbBxhx\n5slP1j5rtR952HoP501fbYAL5gjI/Mbr3yW3okUFoYBOh+23IBDJnfH8EiCS\nGu6X5zmA1IWM3aai8/aOFCgzxm5LISP+0CqLHeygX5dgKw6SQnJo+iDiM881\nsDCQzJlgLazA6D7kte0KcmRsN7CErjOxRGPX38uyolRNRuWBZJaEYviKPnFz\nhC3lWCwlfkiGkGorAGnLgLyQuG6Q/9Mb++vPejGtuQnDs0HeNfCfw1ZExjuZ\n1+wkJ4Fz6iFHGICKK9c5Ov616YPR0Bh1GfiJOJJMiqdCiil41tNHYjcOXj3L\nlzxU\r\n=4kF/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","gitHead":"906242f005a4be6f864a8b27cbfb39b2ab66313b","scripts":{"test":"jest","build":"babel src --out-file dist/index.js"},"_npmUser":{"name":"valcol","email":"valcol.nc@gmail.com"},"repository":{"url":"git+https://github.com/valcol/react-hydration-on-demand.git","type":"git"},"_npmVersion":"6.14.8","description":"Hydrate your React components only when you need to","directories":{},"_nodeVersion":"12.19.0","dependencies":{"exenv":"^1.2.2","@babel/runtime":"^7.10.2"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.2","react":"^16.8.0","eslint":"^7.2.0","react-dom":"^16.8.0","@babel/cli":"^7.10.1","babel-jest":"^26.6.2","@babel/core":"^7.10.2","@babel/preset-env":"^7.10.2","@babel/preset-react":"^7.10.1","react-test-renderer":"^16.11.0","@testing-library/dom":"^6.16.0","eslint-plugin-import":"^2.21.2","@testing-library/react":"^10.0.0","eslint-config-airbnb-base":"^14.2.0","@babel/plugin-transform-runtime":"^7.10.1"},"peerDependencies":{"react":"^16.8.0","react-dom":"^16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/react-hydration-on-demand_2.0.1_1604450987547_0.29931906918305073","host":"s3://npm-registry-packages"}},"2.1.0":{"name":"react-hydration-on-demand","version":"2.1.0","keywords":["react","hydrate","hydration","ssr","progressive","on-demand"],"author":{"name":"valcol"},"license":"MIT","_id":"react-hydration-on-demand@2.1.0","maintainers":[{"name":"valcol","email":"valcol.nc@gmail.com"}],"homepage":"https://github.com/valcol/react-hydration-on-demand#readme","bugs":{"url":"https://github.com/valcol/react-hydration-on-demand/issues"},"dist":{"shasum":"cec2dc2a5981d7872f41cd7fee3721577b7ed429","tarball":"https://registry.npmjs.org/react-hydration-on-demand/-/react-hydration-on-demand-2.1.0.tgz","fileCount":4,"integrity":"sha512-7zEudD1lffj0U24SFlvkQyFuuJN9/PQLJ5j1QOVwY20IbRmxnGWhLBm2rq9gIA38hjbYT33Y+aOZGZqwALWbTA==","signatures":[{"sig":"MEQCIG7ehCqsfpkOWmoNqcbLQ4q1boyq3QEFrSk1NOkz3TXkAiBtHpQyXvmAKfSc5m6pQQfMCHRqs90XHVcCvqhFGaVXSw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":19576,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiCYOaCRA9TVsSAnZWagAA1WMP/0OAjRZE0GTXs6aADPeR\n75hnKWDVonc8r0irj26ZYHAx2Jo7a+SkRLhPVF1ukF9sdflrAuhYjt89x1W/\nSZWYUJ+X/BoYzmNtcpg0qS6U4z0gf4yMbV6OTqqiguhVRMIDEVz5cC5+4dWD\nnnaYkmP7i11G8iYmu+Fs//SIbEkslH13EjJbZOr+DlxH7YzqfxxT13J2a4e/\nz7LqIDHgcGiX9vfLhITpwqUr66DDsI2RMA8olS/kisMnfjJY2ujtTlCxo8Hs\nVE+L+O92rjBEebvt3bsLF9OAQ8zkMxn1enTUPdEOqOBmSGgpbDaK1GNb59/C\nHJoqWrqXANmEEh1A/wofmeoKRHhz2nfODywMVU2uo5nOGKHEs98ODRBcQ8DC\n8Nx9g+egu3YSBFTVunczNpvQBkr80A6sO+smKIgBUD1aXo2bDryQKs2R43vH\nFIvJXLZFY6Rn9aspQob8ELGFCqP0kbyfZJv7zLSB8AQfsa7h6rFNe42KdwfB\nj+ihbEFPFUJkfqEnXnt/Q1Q9WbNEW42TTapW6QZcwHvjIxph3Wf872c1NPap\nAc+FO26djJoxPvYuCZoYObo0zZY+jY+qCqN5488d1k4QIej9pu7R4sKmkyWi\nWO4HihHjvRBvUjGFH0OApc4iauhEVyKLStJOcPvc8/4MochjJtcIrtK8kVJZ\nD5Sc\r\n=116y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","gitHead":"9128aaf78227555e0ed9b43ec704a29b6702a298","scripts":{"test":"jest","build":"babel src --out-file dist/index.js"},"_npmUser":{"name":"valcol","email":"valcol.nc@gmail.com"},"repository":{"url":"git+https://github.com/valcol/react-hydration-on-demand.git","type":"git"},"_npmVersion":"6.14.16","description":"Hydrate your React components only when you need to","directories":{},"_nodeVersion":"12.22.10","dependencies":{"exenv":"^1.2.2","@babel/runtime":"^7.10.2"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.2","react":"^16.8.0","eslint":"^7.2.0","react-dom":"^16.8.0","@babel/cli":"^7.10.1","babel-jest":"^26.6.2","@babel/core":"^7.10.2","@babel/preset-env":"^7.10.2","@babel/preset-react":"^7.10.1","react-test-renderer":"^16.11.0","@testing-library/dom":"^6.16.0","eslint-plugin-import":"^2.21.2","@testing-library/react":"^10.0.0","eslint-config-airbnb-base":"^14.2.0","@babel/plugin-transform-runtime":"^7.10.1"},"peerDependencies":{"react":"^16.8.0 || ^17.0.0","react-dom":"^16.8.0 || ^17.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-hydration-on-demand_2.1.0_1644790681888_0.5089051198390064","host":"s3://npm-registry-packages"}},"2.2.0":{"name":"react-hydration-on-demand","version":"2.2.0","keywords":["react","hydrate","hydration","ssr","progressive","on-demand"],"author":{"name":"valcol"},"license":"MIT","_id":"react-hydration-on-demand@2.2.0","maintainers":[{"name":"valcol","email":"valcol.nc@gmail.com"}],"homepage":"https://github.com/valcol/react-hydration-on-demand#readme","bugs":{"url":"https://github.com/valcol/react-hydration-on-demand/issues"},"dist":{"shasum":"5be061fe89ef5fa676ba292004166dbc6f12e908","tarball":"https://registry.npmjs.org/react-hydration-on-demand/-/react-hydration-on-demand-2.2.0.tgz","fileCount":4,"integrity":"sha512-exsUfP/ah6Xvk76SFs+e0cowCSx865neR6bufOixLn91sUNFeoy+moyBHfe0v/GcP0HX+/RRhpNdYD9BdkQRXw==","signatures":[{"sig":"MEYCIQD+rTGg/Xc4zMthf8+b5a9nhy1hTA1iw8WHfMCYQ8LRugIhAOW7s/xrCevR5DsJ6HdQ62uOfqCPbMR8+fiC7iM0Cpuy","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":20070},"main":"dist/index.js","gitHead":"a981ec8f12b000b667a2797783a945fd29437df4","scripts":{"test":"jest","build":"babel src --out-file dist/index.js"},"_npmUser":{"name":"valcol","email":"valcol.nc@gmail.com"},"repository":{"url":"git+https://github.com/valcol/react-hydration-on-demand.git","type":"git"},"_npmVersion":"10.8.2","description":"Hydrate your React components only when you need to","directories":{},"_nodeVersion":"20.17.0","dependencies":{"exenv":"^1.2.2","@babel/runtime":"^7.10.2"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.2","react":"^18.2.0","eslint":"^7.2.0","react-dom":"^18.2.0","@babel/cli":"^7.10.1","babel-jest":"^26.6.2","@babel/core":"^7.10.2","@babel/preset-env":"^7.10.2","@babel/preset-react":"^7.10.1","react-test-renderer":"^18.2.0","@testing-library/dom":"^9.3.4","eslint-plugin-import":"^2.21.2","@testing-library/react":"^14.2.1","eslint-config-airbnb-base":"^14.2.0","@babel/plugin-transform-runtime":"^7.10.1"},"peerDependencies":{"react":"^16.8.0 || ^17.0.0 || ^18.0.0","react-dom":"^16.8.0 || ^17.0.0 || ^18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-hydration-on-demand_2.2.0_1728751310658_0.1039332142621574","host":"s3://npm-registry-packages"}},"2.3.0":{"name":"react-hydration-on-demand","version":"2.3.0","keywords":["react","hydrate","hydration","ssr","progressive","on-demand"],"author":{"name":"valcol"},"license":"MIT","_id":"react-hydration-on-demand@2.3.0","maintainers":[{"name":"valcol","email":"valcol.nc@gmail.com"}],"homepage":"https://github.com/valcol/react-hydration-on-demand#readme","bugs":{"url":"https://github.com/valcol/react-hydration-on-demand/issues"},"dist":{"shasum":"eed5f9450700ffac66629e2380061b1e94b31061","tarball":"https://registry.npmjs.org/react-hydration-on-demand/-/react-hydration-on-demand-2.3.0.tgz","fileCount":4,"integrity":"sha512-s70y1WNb7TlU/+QAKMqLmK/4vkbMrLYdhk54yCRIx+tJ8gc7iVqSaC+rUFlojqwuo/OZyQy0i+oCQ1zzwB+fKQ==","signatures":[{"sig":"MEUCIQDlNfom2syrkchMSWUefJK6Rr9F/R2qlrrMnyObEHYy1QIgH1TZqepk9zDV2leL3qrStsV9sOeyGA/rHuQNXQ32pKY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":22255},"main":"dist/index.js","gitHead":"b0e7724bac8a5e302e77c849750d9955ad73aff6","scripts":{"test":"jest","build":"babel src --out-file dist/index.js"},"_npmUser":{"name":"valcol","email":"valcol.nc@gmail.com"},"repository":{"url":"git+https://github.com/valcol/react-hydration-on-demand.git","type":"git"},"_npmVersion":"10.8.2","description":"Hydrate your React components only when you need to","directories":{},"_nodeVersion":"20.19.1","dependencies":{"exenv":"^1.2.2","@babel/runtime":"^7.27.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","react":"^19.1.0","eslint":"^8.2.0","react-dom":"^19.1.0","@babel/cli":"^7.27.2","babel-jest":"^29.7.0","@babel/core":"^7.27.1","@babel/preset-env":"^7.27.2","@babel/preset-react":"^7.27.1","react-test-renderer":"^19.1.0","@testing-library/dom":"^10.4.0","eslint-plugin-import":"^2.31.0","@testing-library/react":"^16.3.0","jest-environment-jsdom":"^29.7.0","eslint-config-airbnb-base":"^15.0.0","@babel/plugin-transform-runtime":"^7.27.1"},"peerDependencies":{"react":"^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0","react-dom":"^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-hydration-on-demand_2.3.0_1746647645008_0.062396300534379945","host":"s3://npm-registry-packages-npm-production"}},"2.3.1":{"name":"react-hydration-on-demand","version":"2.3.1","description":"Hydrate your React components only when you need to","main":"dist/index.js","scripts":{"test":"jest","build":"babel src --out-file dist/index.js"},"repository":{"type":"git","url":"git+https://github.com/valcol/react-hydration-on-demand.git"},"keywords":["react","hydrate","hydration","ssr","progressive","on-demand"],"author":{"name":"valcol"},"license":"MIT","bugs":{"url":"https://github.com/valcol/react-hydration-on-demand/issues"},"homepage":"https://github.com/valcol/react-hydration-on-demand#readme","peerDependencies":{"react":"^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0","react-dom":"^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0"},"devDependencies":{"@babel/cli":"^7.27.2","@babel/core":"^7.27.1","@babel/plugin-transform-runtime":"^7.27.1","@babel/preset-env":"^7.27.2","@babel/preset-react":"^7.27.1","@testing-library/dom":"^10.4.0","@testing-library/react":"^16.3.0","babel-jest":"^29.7.0","eslint":"^8.2.0","eslint-config-airbnb-base":"^15.0.0","eslint-plugin-import":"^2.31.0","jest":"^29.7.0","jest-environment-jsdom":"^29.7.0","react":"^19.1.0","react-dom":"^19.1.0","react-test-renderer":"^19.1.0"},"dependencies":{"@babel/runtime":"^7.27.1","exenv":"^1.2.2"},"_id":"react-hydration-on-demand@2.3.1","gitHead":"f179ce4d1c879b67d2496111848770101b4a1a87","_nodeVersion":"20.19.1","_npmVersion":"10.8.2","dist":{"integrity":"sha512-MyACsoP3lgQMNTOHIL/P3Ry3VgFu7R6B+3UMfG8Rdb+gJzL+KpDqPPoTMjdysHG4xYfw8xQZDKqPgMkU91co3Q==","shasum":"4b5a645dd3eaac8e4a81f568317d056e15a94161","tarball":"https://registry.npmjs.org/react-hydration-on-demand/-/react-hydration-on-demand-2.3.1.tgz","fileCount":4,"unpackedSize":22274,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDf7uT6OtPss53dlDS2hrcv+ADZo8GzpnnUb6NSR25ZBwIgDR8AsCFk0NWbdofuCDb6GutKbFXsrG8KrtCCwCYsm9k="}]},"_npmUser":{"name":"valcol","email":"valcol.nc@gmail.com"},"directories":{},"maintainers":[{"name":"valcol","email":"valcol.nc@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/react-hydration-on-demand_2.3.1_1746649650079_0.634402099496221"},"_hasShrinkwrap":false}},"time":{"created":"2020-01-05T20:13:47.596Z","modified":"2025-05-07T20:27:30.423Z","1.0.0":"2020-01-05T20:13:47.813Z","2.0.0":"2020-01-19T17:47:53.722Z","2.0.1":"2020-11-04T00:49:47.704Z","2.1.0":"2022-02-13T22:18:02.030Z","2.2.0":"2024-10-12T16:41:50.861Z","2.3.0":"2025-05-07T19:54:05.209Z","2.3.1":"2025-05-07T20:27:30.242Z"},"bugs":{"url":"https://github.com/valcol/react-hydration-on-demand/issues"},"author":{"name":"valcol"},"license":"MIT","homepage":"https://github.com/valcol/react-hydration-on-demand#readme","keywords":["react","hydrate","hydration","ssr","progressive","on-demand"],"repository":{"type":"git","url":"git+https://github.com/valcol/react-hydration-on-demand.git"},"description":"Hydrate your React components only when you need to","maintainers":[{"name":"valcol","email":"valcol.nc@gmail.com"}],"readme":"<div align=\"center\">\r\n  <h1>\r\n    <br/>\r\n    <br/>\r\n    💧\r\n    <br />\r\n    react-hydration-on-demand\r\n    <br />\r\n    <br />\r\n    <br />\r\n  </h1>\r\n  <sup>\r\n    <br />\r\n    <br />\r\n    <a href=\"https://www.npmjs.com/package/react-hydration-on-demand\">\r\n       <img src=\"https://img.shields.io/npm/dm/react-hydration-on-demand\" alt=\"npm package\" />\r\n    </a>\r\n    <a href=\"https://www.npmjs.com/package/react-hydration-on-demand\">\r\n       <img src=\"https://img.shields.io/github/actions/workflow/status/valcol/react-hydration-on-demand/main.yml\" alt=\"npm package\" />\r\n    </a>\r\n    <a href=\"https://www.npmjs.com/package/react-hydration-on-demand\">\r\n       <img src=\"https://img.shields.io/bundlephobia/minzip/react-hydration-on-demand\" alt=\"dep size\" />\r\n    </a>\r\n    <a href=\"https://www.npmjs.com/package/react-hydration-on-demand\">\r\n      <img src=\"https://img.shields.io/npm/v/react-hydration-on-demand\" alt=\"version\" />\r\n    </a>\r\n    <br />\r\n  </sup>\r\n   <h3>Hydrate your React components only when needed.<h3>\r\n  <br />\r\n  <br />\r\n  <pre>npm i <a href=\"https://www.npmjs.com/package/react-hydration-on-demand\">react-hydration-on-demand</a></pre>\r\n  <pre>yarn add <a href=\"https://www.npmjs.com/package/react-hydration-on-demand\">react-hydration-on-demand</a></pre>\r\n  <br /> \r\n  <br />\r\n</div>\r\n\r\n[![Edit react-hydration-on-demand](https://codesandbox.io/static/img/play-codesandbox.svg)](https://codesandbox.io/p/sandbox/stoic-sinoussi-64wys6)\r\n\r\nHydrates server-side rendered components only when necessary to offload the main thread, improving TTI, TBT, and FID.\r\nIt can be used with code-splitting libraries to load component code at runtime just before the hydration step, reducing the initial payload size of your application.\r\n\r\n![](reactrender.png?raw=true)\r\n\r\n## How to use\r\n\r\n```js\r\nimport withHydrationOnDemand from \"react-hydration-on-demand\";\r\nimport Card from \"../Card\";\r\n\r\n//Hydrate when the component enters the viewport\r\nconst CardWithHydrationOnDemand = withHydrationOnDemand({ on: [\"visible\"] })(\r\n    Card\r\n);\r\n\r\n//Hydrate when the browser's event loop is idle\r\nconst CardWithHydrationOnDemand = withHydrationOnDemand({ on: [\"idle\"] })(Card);\r\n\r\n//Hydrate after a delay (by default: 2000ms)\r\nconst CardWithHydrationOnDemand = withHydrationOnDemand({ on: [\"delay\"] })(\r\n    Card\r\n);\r\n\r\n//Hydrate after a custom delay (3000ms)\r\nconst CardWithHydrationOnDemand = withHydrationOnDemand({\r\n    on: [[\"delay\", 3000]],\r\n})(Card);\r\n\r\n//Hydrate when the user scroll on the document\r\nconst CardWithHydrationOnDemand = withHydrationOnDemand({\r\n    on: [[\"scroll\", () => document]],\r\n})(Card);\r\n\r\n//Hydrate when the when the browser's event loop is idle or when the user scroll, whichever comes first\r\nconst CardWithHydrationOnDemand = withHydrationOnDemand({\r\n    on: [\"idle\", \"visible\"],\r\n})(Card);\r\n\r\n//Load an async chunck before hydration\r\nimport loadable from \"@loadable/component\";\r\n\r\nconst LoadableCard = loadable(() => import(\"../Card\"));\r\nconst CardWithHydrationOnDemand = withHydrationOnDemand({\r\n    on: [[\"scroll\", () => document]],\r\n    onBefore: LoadableCard.load,\r\n})(LoadableCard);\r\n\r\n//Never hydrate unless the prop forceHydration is set to true\r\nconst CardWithHydrationOnDemand = withHydrationOnDemand()(Card);\r\n\r\n//...\r\n\r\nexport default class App extends React.Component {\r\n    render() {\r\n        return <CardWithHydrationOnDemand title=\"my card\" />;\r\n    }\r\n}\r\n```\r\n\r\n> ### What if my component is also used client side only ?\r\n>\r\n> If the component isn't rendered server side, it will render directly and behave normally.\r\n\r\n## Options\r\n\r\n### `on: Array`\r\n\r\nAn array of events who will trigger the hydration.\r\nCan contains event names directly or as an array of `['event name', options]`.\r\n\r\n```js\r\nimport withHydrationOnDemand from \"react-hydration-on-demand\";\r\nimport Card from \"../Card\";\r\n\r\nconst CardWithHydrationOnDemand = withHydrationOnDemand({\r\n    on: [\"visible\", [\"scroll\", () => document], [\"delay\", 5000]],\r\n})(Card);\r\n```\r\n\r\nSupport [all DOM events](https://developer.mozilla.org/en-US/docs/Web/Events) and more :\r\n\r\n| Event name                                                                | Options                                                                                                                                                                 | Description                                                                                                                    |\r\n| ------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ |\r\n| [**all DOM events**](https://developer.mozilla.org/en-US/docs/Web/Events) | `getTarget: Function` who return the event target (default: the wrapped component)                                                                                      |\r\n| **delay**                                                                 | `delay: Number` in ms (default value: 2000)                                                                                                                             | Scheduled hydration.                                                                                                           |\r\n| **visible**                                                               | `getOptions: Function` who return an [intersectionObserver options](https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserver) object (default: no options) | Requires IntersectionObserver. **Polyfill not included.** If unsupported the component is directy hydrated.                    |\r\n| **idle**                                                                  |                                                                                                                                                                         | Requires requestIdleCallback. **Polyfill not included.** If unsupported the component will be hydrated with a delay of 2000ms. |\r\n\r\n### `onBefore: Promise` (optional)\r\n\r\nPromise to resolve before hydration.\r\n\r\n> Can be usefull if you need to preload chunks before hydration for example.\r\n\r\n```js\r\nimport withHydrationOnDemand from \"react-hydration-on-demand\";\r\nimport loadable from \"@loadable/component\";\r\n\r\nconst LoadableCard = loadable(() => import(\"../Card\"));\r\nconst CardWithHydrationOnDemand = withHydrationOnDemand({\r\n    on: [\"visible\"],\r\n    onBefore: LoadableCard.load,\r\n})(LoadableCard);\r\n```\r\n\r\n### `whenInputPending: Boolean` (optional, default: false)\r\n\r\nWhen set to true use `navigator.scheduling.isInputPending` to check if there is a pending user input on mount. If that's the case, hydration will be delayed using the strategies defined in the `on` option to allow the browser to handle the user input.\r\nIf there is no pending input, the component will be hydrated directly to be interactive as fast as possible.\r\n\r\nSee https://github.com/WICG/is-input-pending for more infos.\r\n\r\n### `isInputPendingFallbackValue: Boolean` (optional, default: true)\r\n\r\nThe default value returned on browsers who don't implements `navigator.scheduling.isInputPending` when `whenInputPending` set to true.\r\n\r\n### `disableFallback: Boolean` (optional, default: false)\r\n\r\nIf set at true the component will not be rendered client side if not rendered server side.\r\n\r\n## Props\r\n\r\n### `wrapperProps: Object` (optional)\r\n\r\nProps that are applied to the div which wraps the provided component.\r\n\r\n#### `wrapperProps.as: String | React.ComponentType` (optional, default: 'section')\r\n\r\nSpecifies the HTML element or React component to use as the wrapper. This allows for semantically correct and accessible markup. For example, use `'div'` for generic containers or `'a'` for links.\r\n\r\n```js\r\nimport withHydrationOnDemand from \"react-hydration-on-demand\";\r\nimport Card from \"../Card\";\r\n\r\nconst CardWithHydrationOnDemand = withHydrationOnDemand({ on: [\"delay\"] })(Card);\r\n\r\nexport default class App extends React.Component {\r\n    render() {\r\n        return (\r\n            <CardWithHydrationOnDemand\r\n                title=\"my card\"\r\n                wrapperProps={{\r\n                    as: 'div', // Use a div instead of the default section\r\n                    className: \"customClassName\",\r\n                    style: { display: \"contents\" },\r\n                }}\r\n            />\r\n        );\r\n    }\r\n}\r\n```\r\n\r\n### `forceHydration: Boolean` (optional, default: false)\r\n\r\nForce the hydration of the component.\r\n\r\n## Playground & Bug Reproduction\r\n\r\nYou can use the following CodeSandbox to try out the library or reproduce bugs. When creating a new issue, please fork this sandbox and include the link in your bug report to help me understand and fix the problem more efficiently.\r\n\r\n[![Edit react-hydration-on-demand](https://codesandbox.io/static/img/play-codesandbox.svg)](https://codesandbox.io/p/sandbox/stoic-sinoussi-64wys6)\r\n","readmeFilename":"README.md"}