{"_id":"react-query-external-sync","_rev":"9-9bd43790511b1cd0fe7c99047d804168","name":"react-query-external-sync","dist-tags":{"latest":"2.2.3"},"versions":{"1.0.0":{"name":"react-query-external-sync","version":"1.0.0","keywords":["react-query","tanstack","state management","dev tools","react native","QA","debugging"],"author":{"url":"https://github.com/LovesWorking","name":"LovesWorking"},"license":"MIT","_id":"react-query-external-sync@1.0.0","maintainers":[{"name":"lovesworking","email":"austinlovesworking@gmail.com"}],"homepage":"https://github.com/LovesWorking/react-query-external-sync#readme","bugs":{"url":"https://github.com/LovesWorking/react-query-external-sync/issues"},"dist":{"shasum":"930b12873ce5566543ec1ba09022aa50242f3ef9","tarball":"https://registry.npmjs.org/react-query-external-sync/-/react-query-external-sync-1.0.0.tgz","fileCount":80,"integrity":"sha512-kJlu+F1+BAVC9a3oo+TQ6q0bb61kj3MxitCXyTXbNFI9ldJoXnrEB1aDBxpPi23O3NZh6YeDsMY/NoDwQLuxqw==","signatures":[{"sig":"MEUCIQCGgbsZ/XBQOvLctoxDMA83UHsKN+I/1Wg6REYVhHoO9QIgRNGJZHrZbXmiCTBGevwIDjSqGrS73ZsbHa9XUoJzVao=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53630},"main":"dist/bundle.cjs.js","types":"dist/types/index.d.ts","module":"dist/bundle.esm.js","gitHead":"121fc3c7126a2d83be3551833b5e55a4f3acb4a8","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"tsc --outDir dist --declarationDir dist/types --declaration true && rollup -c rollup.config.mjs"},"_npmUser":{"name":"lovesworking","email":"austinlovesworking@gmail.com"},"repository":{"url":"git+https://github.com/LovesWorking/react-query-external-sync.git","type":"git"},"_npmVersion":"9.8.1","description":"A tool for syncing React Query state to an external React Query Dev Tools","directories":{},"_nodeVersion":"20.11.0","dependencies":{"fast-equals":"^5.0.1","socket.io-client":"^4.7.4"},"_hasShrinkwrap":false,"devDependencies":{"tslib":"^2.6.2","rollup":"^4.9.6","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@types/react":"^18.2.55","@babel/preset-env":"^7.23.9","@babel/preset-react":"^7.23.3","@rollup/plugin-json":"^6.1.0","@rollup/plugin-terser":"^0.4.4","@babel/preset-typescript":"^7.23.3","@rollup/plugin-typescript":"^11.1.6","@rollup/plugin-node-resolve":"^15.2.3"},"peerDependencies":{"react":"^18","@tanstack/react-query":"^5.17.19"},"_npmOperationalInternal":{"tmp":"tmp/react-query-external-sync_1.0.0_1707696456443_0.1598543250420157","host":"s3://npm-registry-packages"}},"1.0.1":{"name":"react-query-external-sync","version":"1.0.1","keywords":["expo","devtools","tanstack","query","react-query","react-native","expo-react-native","expo-react-native-tanstack-query-devtools","tanstack-query","tanstack-query-devtools","tanstack-query-devtools-expo","tanstack-query-devtools-expo-react-native","tanstack-query-devtools-expo-plugin","tanstack-query-devtools-expo-plugin-react-native","tanstack-query-devtools-expo-plugin-webui","tanstack-query-devtools-expo-plugin-webui-react-native","React-Query-Dev-Tools"],"author":{"url":"https://github.com/LovesWorking","name":"LovesWorking"},"license":"MIT","_id":"react-query-external-sync@1.0.1","maintainers":[{"name":"lovesworking","email":"austinlovesworking@gmail.com"}],"homepage":"https://github.com/LovesWorking/react-query-external-sync#readme","bugs":{"url":"https://github.com/LovesWorking/react-query-external-sync/issues"},"dist":{"shasum":"ce4490f9fdc43fd97aa7b205d5020f4ab1d1b56c","tarball":"https://registry.npmjs.org/react-query-external-sync/-/react-query-external-sync-1.0.1.tgz","fileCount":32,"integrity":"sha512-yzeOF9gvCr81dIMniJJI5LZ31YAsysOn+pqsLRgDaKu4A5DA7lFLXQ45FfMgLW8LPDh/yjn2o5zxPULqk7mdHQ==","signatures":[{"sig":"MEQCIG7FkQGGK3zxNgQc2+OkjOMWni0ERaFVgggRw7gYWVo3AiBXtkU6T0oImXM1uqKfHWWHchfazZ/wOI4sObs/xTpzwA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":62612},"main":"dist/bundle.cjs.js","types":"dist/types/index.d.ts","module":"dist/bundle.esm.js","gitHead":"317e628f6eeb92cd99b3660af068e135aac9c2b7","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"tsc --outDir dist --declarationDir dist/types --declaration true && rollup -c rollup.config.mjs"},"_npmUser":{"name":"lovesworking","email":"austinlovesworking@gmail.com"},"repository":{"url":"git+https://github.com/LovesWorking/react-query-external-sync.git","type":"git"},"_npmVersion":"10.8.2","description":"A tool for syncing React Query state to an external Dev Tools","directories":{},"_nodeVersion":"20.18.3","dependencies":{},"_hasShrinkwrap":false,"packageManager":"pnpm@10.4.1+sha512.c753b6c3ad7afa13af388fa6d808035a008e30ea9993f58c6663e2bc5ff21679aa834db094987129aa4d488b86df57f7b634981b2f827cdcacc698cc0cfb88af","devDependencies":{"tslib":"^2.6.2","rollup":"^4.9.6","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@types/react":"^18.2.55","@babel/preset-env":"^7.23.9","@babel/preset-react":"^7.23.3","@rollup/plugin-json":"^6.1.0","@rollup/plugin-terser":"^0.4.4","@tanstack/react-query":"^5.66.9","@babel/preset-typescript":"^7.23.3","@rollup/plugin-typescript":"^11.1.6","@rollup/plugin-node-resolve":"^15.2.3"},"peerDependencies":{"react":"^18 || ^19","socket.io-client":"*","@tanstack/react-query":"^4.0.0 || ^5.0.0"},"peerDependenciesMeta":{"react-native":{"optional":true},"socket.io-client":{"optional":true},"@react-native-async-storage/async-storage":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/react-query-external-sync_1.0.1_1744118421849_0.9856385063125686","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"react-query-external-sync","version":"2.0.0","keywords":["expo","devtools","tanstack","query","react-query","react-native","expo-react-native","expo-react-native-tanstack-query-devtools","tanstack-query","tanstack-query-devtools","tanstack-query-devtools-expo","tanstack-query-devtools-expo-react-native","tanstack-query-devtools-expo-plugin","tanstack-query-devtools-expo-plugin-react-native","tanstack-query-devtools-expo-plugin-webui","tanstack-query-devtools-expo-plugin-webui-react-native","React-Query-Dev-Tools"],"author":{"url":"https://github.com/LovesWorking","name":"LovesWorking"},"license":"MIT","_id":"react-query-external-sync@2.0.0","maintainers":[{"name":"lovesworking","email":"austinlovesworking@gmail.com"}],"homepage":"https://github.com/LovesWorking/react-query-external-sync#readme","bugs":{"url":"https://github.com/LovesWorking/react-query-external-sync/issues"},"dist":{"shasum":"64bbe2aec39371cb0dca26c400c65a3a84bd4989","tarball":"https://registry.npmjs.org/react-query-external-sync/-/react-query-external-sync-2.0.0.tgz","fileCount":35,"integrity":"sha512-xlms+Ipdct88xEgYfl0vhkYSzBzlrwPJwWgwB732WEI8E9SuKg8Maeu1wufISnhIZcNF6XgGjYfEu09AsxRD/A==","signatures":[{"sig":"MEUCIEqwv6o2RnQaC/4g3ryV/FMW2y4yfzjI7f68LXwrmVVEAiEA6Qx6Dd4V21g5CCtEh1hNLzaQSRxTqn9J3zKo2pcGgik=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":85771},"main":"dist/bundle.cjs.js","types":"dist/types/index.d.ts","module":"dist/bundle.esm.js","gitHead":"acd14f074d3a6ec053963acf3088620b0a8ed207","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"tsc --outDir dist --declarationDir dist/types --declaration true && rollup -c rollup.config.mjs"},"_npmUser":{"name":"lovesworking","email":"austinlovesworking@gmail.com"},"repository":{"url":"git+https://github.com/LovesWorking/react-query-external-sync.git","type":"git"},"_npmVersion":"10.8.2","description":"A tool for syncing React Query state to an external Dev Tools","directories":{},"_nodeVersion":"20.18.3","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"tslib":"^2.6.2","rollup":"^4.9.6","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@types/react":"^18.2.55","@babel/preset-env":"^7.23.9","@babel/preset-react":"^7.23.3","@rollup/plugin-json":"^6.1.0","@rollup/plugin-terser":"^0.4.4","@tanstack/react-query":"^5.66.9","@babel/preset-typescript":"^7.23.3","@rollup/plugin-typescript":"^11.1.6","@rollup/plugin-node-resolve":"^15.2.3"},"peerDependencies":{"react":"^18 || ^19","socket.io-client":"*","@tanstack/react-query":"^4.0.0 || ^5.0.0"},"peerDependenciesMeta":{"react-native":{"optional":true},"socket.io-client":{"optional":true},"@react-native-async-storage/async-storage":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/react-query-external-sync_2.0.0_1744120006605_0.799151949637223","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"react-query-external-sync","version":"2.0.1","keywords":["expo","devtools","tanstack","query","react-query","react-native","expo-react-native","expo-react-native-tanstack-query-devtools","tanstack-query","tanstack-query-devtools","tanstack-query-devtools-expo","tanstack-query-devtools-expo-react-native","tanstack-query-devtools-expo-plugin","tanstack-query-devtools-expo-plugin-react-native","tanstack-query-devtools-expo-plugin-webui","tanstack-query-devtools-expo-plugin-webui-react-native","React-Query-Dev-Tools"],"author":{"url":"https://github.com/LovesWorking","name":"LovesWorking"},"license":"MIT","_id":"react-query-external-sync@2.0.1","maintainers":[{"name":"lovesworking","email":"austinlovesworking@gmail.com"}],"homepage":"https://github.com/LovesWorking/react-query-external-sync#readme","bugs":{"url":"https://github.com/LovesWorking/react-query-external-sync/issues"},"dist":{"shasum":"d7005d17cf3e8fe1bffb76c5f518bcc78f9720f6","tarball":"https://registry.npmjs.org/react-query-external-sync/-/react-query-external-sync-2.0.1.tgz","fileCount":35,"integrity":"sha512-A8VMskkurkKd6BA1ReJtbV+k7YznTvm/AAdeR9Cq1N1uXZ4BDatnoDAoIiYFK0eOawon0evz1DKT8n+XERE02Q==","signatures":[{"sig":"MEUCIAwi465eDnhoJgl0cH3tj8hDyXC1F3N57yrRRoHANoGrAiEAzYkoue2TwOzyOw1GFbtAF78iXllxos+7VPcq51D6FcY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":86986},"main":"dist/bundle.cjs.js","types":"dist/types/index.d.ts","module":"dist/bundle.esm.js","gitHead":"493bfc3100c974aa8a7357fc0b8507bc1e2af7a6","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"tsc --outDir dist --declarationDir dist/types --declaration true && rollup -c rollup.config.mjs"},"_npmUser":{"name":"lovesworking","email":"austinlovesworking@gmail.com"},"repository":{"url":"git+https://github.com/LovesWorking/react-query-external-sync.git","type":"git"},"_npmVersion":"10.8.2","description":"A tool for syncing React Query state to an external Dev Tools","directories":{},"_nodeVersion":"20.18.3","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"tslib":"^2.6.2","rollup":"^4.9.6","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@types/react":"^18.2.55","@babel/preset-env":"^7.23.9","@babel/preset-react":"^7.23.3","@rollup/plugin-json":"^6.1.0","@rollup/plugin-terser":"^0.4.4","@tanstack/react-query":"^5.66.9","@babel/preset-typescript":"^7.23.3","@rollup/plugin-typescript":"^11.1.6","@rollup/plugin-node-resolve":"^15.2.3"},"peerDependencies":{"react":"^18 || ^19","socket.io-client":"*","@tanstack/react-query":"^4.0.0 || ^5.0.0"},"peerDependenciesMeta":{"react-native":{"optional":true},"socket.io-client":{"optional":true},"@react-native-async-storage/async-storage":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/react-query-external-sync_2.0.1_1747002085899_0.6089909532328157","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"react-query-external-sync","version":"2.1.0","keywords":["expo","devtools","tanstack","query","react-query","react-native","expo-react-native","expo-react-native-tanstack-query-devtools","tanstack-query","tanstack-query-devtools","tanstack-query-devtools-expo","tanstack-query-devtools-expo-react-native","tanstack-query-devtools-expo-plugin","tanstack-query-devtools-expo-plugin-react-native","tanstack-query-devtools-expo-plugin-webui","tanstack-query-devtools-expo-plugin-webui-react-native","React-Query-Dev-Tools"],"author":{"url":"https://github.com/LovesWorking","name":"LovesWorking"},"license":"MIT","_id":"react-query-external-sync@2.1.0","maintainers":[{"name":"lovesworking","email":"austinlovesworking@gmail.com"}],"homepage":"https://github.com/LovesWorking/react-query-external-sync#readme","bugs":{"url":"https://github.com/LovesWorking/react-query-external-sync/issues"},"dist":{"shasum":"e6f7befb13500dae108e91b0f738c66baad6bde3","tarball":"https://registry.npmjs.org/react-query-external-sync/-/react-query-external-sync-2.1.0.tgz","fileCount":59,"integrity":"sha512-7sr7RwcF1fohbHBJEOa8uzCLBdY/dcjGTnmK7FrTKjQMmto74ORbbmTm74VlXzRrMVj5LgqMGZ0zAt8C8tCEGA==","signatures":[{"sig":"MEYCIQDeD1BxwwFitRqU2acZXfc1NiOqcn06dW0/oJosrzBADQIhAKE8PhQVwVnzpPmAjVHMTDarqu6D48kjCjA8zhE2lFs8","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":218064},"main":"dist/bundle.cjs.js","types":"dist/types/index.d.ts","module":"dist/bundle.esm.js","gitHead":"7efeab5c767180d22c45402ccc5a78d0c490050b","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"tsc --outDir dist --declarationDir dist/types --declaration true && rollup -c rollup.config.mjs","release:major":"npm run version:major && npm publish","release:minor":"npm run version:minor && npm publish","release:patch":"npm run version:patch && npm publish","version:major":"npm version major","version:minor":"npm version minor","version:patch":"npm version patch","prepublishOnly":"npm run build"},"_npmUser":{"name":"lovesworking","email":"austinlovesworking@gmail.com"},"repository":{"url":"git+https://github.com/LovesWorking/react-query-external-sync.git","type":"git"},"_npmVersion":"10.8.2","description":"A tool for syncing React Query state to an external Dev Tools","directories":{},"_nodeVersion":"20.18.3","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"tslib":"^2.6.2","rollup":"^4.9.6","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@types/react":"^18.2.55","@babel/preset-env":"^7.23.9","@babel/preset-react":"^7.23.3","@rollup/plugin-json":"^6.1.0","@rollup/plugin-terser":"^0.4.4","@tanstack/react-query":"^5.66.9","@babel/preset-typescript":"^7.23.3","@rollup/plugin-typescript":"^11.1.6","@rollup/plugin-node-resolve":"^15.2.3"},"peerDependencies":{"react":"^18 || ^19","socket.io-client":"*","@tanstack/react-query":"^4.0.0 || ^5.0.0"},"peerDependenciesMeta":{"react-native":{"optional":true},"socket.io-client":{"optional":true},"@react-native-async-storage/async-storage":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/react-query-external-sync_2.1.0_1748278041704_0.3326428452241479","host":"s3://npm-registry-packages-npm-production"}},"2.2.0":{"name":"react-query-external-sync","version":"2.2.0","keywords":["expo","devtools","tanstack","query","react-query","react-native","expo-react-native","expo-react-native-tanstack-query-devtools","tanstack-query","tanstack-query-devtools","tanstack-query-devtools-expo","tanstack-query-devtools-expo-react-native","tanstack-query-devtools-expo-plugin","tanstack-query-devtools-expo-plugin-react-native","tanstack-query-devtools-expo-plugin-webui","tanstack-query-devtools-expo-plugin-webui-react-native","React-Query-Dev-Tools"],"author":{"url":"https://github.com/LovesWorking","name":"LovesWorking"},"license":"MIT","_id":"react-query-external-sync@2.2.0","maintainers":[{"name":"lovesworking","email":"austinlovesworking@gmail.com"}],"homepage":"https://github.com/LovesWorking/react-query-external-sync#readme","bugs":{"url":"https://github.com/LovesWorking/react-query-external-sync/issues"},"dist":{"shasum":"6dcb8391e3c116b95775e8b3f29ec886a979ce82","tarball":"https://registry.npmjs.org/react-query-external-sync/-/react-query-external-sync-2.2.0.tgz","fileCount":59,"integrity":"sha512-4Uja+ZmVOojCrWOuYBn/S4swj1g7Cu/DjO5s6ZA192Y6+MzTpbDGaOGlnB1XFVbcNAmQQkFOc55isbf1z2W6sA==","signatures":[{"sig":"MEYCIQCFF8pOSAcYoaFVjyDuebIRcXqb/0NmEiP3HXvK+LmOHQIhAPP2MAXib3UvJ2rypEMlXYFxLmf04PzVUAov16yz87jq","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":218064},"main":"dist/bundle.cjs.js","types":"dist/types/index.d.ts","module":"dist/bundle.esm.js","gitHead":"fbd2a870fec512af7652fd1710c0d839d2bddc0f","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"tsc --outDir dist --declarationDir dist/types --declaration true && rollup -c rollup.config.mjs","release:major":"npm run version:major && npm publish","release:minor":"npm run version:minor && npm publish","release:patch":"npm run version:patch && npm publish","version:major":"npm version major","version:minor":"npm version minor","version:patch":"npm version patch","prepublishOnly":"npm run build"},"_npmUser":{"name":"lovesworking","email":"austinlovesworking@gmail.com"},"repository":{"url":"git+https://github.com/LovesWorking/react-query-external-sync.git","type":"git"},"_npmVersion":"10.8.2","description":"A tool for syncing React Query state to an external Dev Tools","directories":{},"_nodeVersion":"20.18.3","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"tslib":"^2.6.2","rollup":"^4.9.6","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@types/react":"^18.2.55","@babel/preset-env":"^7.23.9","@babel/preset-react":"^7.23.3","@rollup/plugin-json":"^6.1.0","@rollup/plugin-terser":"^0.4.4","@tanstack/react-query":"^5.66.9","@babel/preset-typescript":"^7.23.3","@rollup/plugin-typescript":"^11.1.6","@rollup/plugin-node-resolve":"^15.2.3"},"peerDependencies":{"react":"^18 || ^19","socket.io-client":"*","@tanstack/react-query":"^4.0.0 || ^5.0.0"},"peerDependenciesMeta":{"react-native":{"optional":true},"socket.io-client":{"optional":true},"@react-native-async-storage/async-storage":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/react-query-external-sync_2.2.0_1748343566139_0.11940938382884125","host":"s3://npm-registry-packages-npm-production"}},"2.2.1":{"name":"react-query-external-sync","version":"2.2.1","keywords":["expo","devtools","tanstack","query","react-query","react-native","expo-react-native","expo-react-native-tanstack-query-devtools","tanstack-query","tanstack-query-devtools","tanstack-query-devtools-expo","tanstack-query-devtools-expo-react-native","tanstack-query-devtools-expo-plugin","tanstack-query-devtools-expo-plugin-react-native","tanstack-query-devtools-expo-plugin-webui","tanstack-query-devtools-expo-plugin-webui-react-native","React-Query-Dev-Tools"],"author":{"url":"https://github.com/LovesWorking","name":"LovesWorking"},"license":"MIT","_id":"react-query-external-sync@2.2.1","maintainers":[{"name":"lovesworking","email":"austinlovesworking@gmail.com"}],"homepage":"https://github.com/LovesWorking/react-query-external-sync#readme","bugs":{"url":"https://github.com/LovesWorking/react-query-external-sync/issues"},"dist":{"shasum":"3dbd87f80300d17a6f7d1bf4485d2da8d1526918","tarball":"https://registry.npmjs.org/react-query-external-sync/-/react-query-external-sync-2.2.1.tgz","fileCount":59,"integrity":"sha512-F+5qAVkxy6owwHWy9YCeYdA5GYgYfVZxfWugugR5+8mFh3zN2dA5KV8Tvsqfx4RwfzTrSULHG2F2yJ3MkKWsTQ==","signatures":[{"sig":"MEUCIQDCegJzfx5fSLp5rXRcVekv6MJa0Q0zukgzXKEi3/NFmAIgZ5MLfth0VAKTvQypAkHegS82FY70+pPDiO0r1vygAtU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":218786},"main":"dist/bundle.cjs.js","types":"dist/types/index.d.ts","module":"dist/bundle.esm.js","gitHead":"9957ff1ed69087ccd725fcf865d271a90a9ee43e","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"tsc --outDir dist --declarationDir dist/types --declaration true && rollup -c rollup.config.mjs","pre-release":"git add . && git status","release:auto":"node scripts/auto-release.js","release:major":"npm run version:major && git push && git push --tags && npm publish && npm run github:release","release:minor":"npm run version:minor && git push && git push --tags && npm publish && npm run github:release","release:patch":"npm run version:patch && git push && git push --tags && npm publish && npm run github:release","version:major":"npm version major","version:minor":"npm version minor","version:patch":"npm version patch","github:release":"node scripts/github-release.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"lovesworking","email":"austinlovesworking@gmail.com"},"repository":{"url":"git+https://github.com/LovesWorking/react-query-external-sync.git","type":"git"},"_npmVersion":"10.8.2","description":"A tool for syncing React Query state to an external Dev Tools","directories":{},"_nodeVersion":"20.19.2","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"tslib":"^2.6.2","rollup":"^4.9.6","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@types/react":"^18.2.55","@babel/preset-env":"^7.23.9","@babel/preset-react":"^7.23.3","@rollup/plugin-json":"^6.1.0","@rollup/plugin-terser":"^0.4.4","@tanstack/react-query":"^5.66.9","@babel/preset-typescript":"^7.23.3","@rollup/plugin-typescript":"^11.1.6","@rollup/plugin-node-resolve":"^15.2.3"},"peerDependencies":{"react":"^18 || ^19","socket.io-client":"*","@tanstack/react-query":"^4.0.0 || ^5.0.0"},"peerDependenciesMeta":{"react-native":{"optional":true},"socket.io-client":{"optional":true},"@react-native-async-storage/async-storage":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/react-query-external-sync_2.2.1_1749176529614_0.5807205908648216","host":"s3://npm-registry-packages-npm-production"}},"2.2.2":{"name":"react-query-external-sync","version":"2.2.2","keywords":["expo","devtools","tanstack","query","react-query","react-native","expo-react-native","expo-react-native-tanstack-query-devtools","tanstack-query","tanstack-query-devtools","tanstack-query-devtools-expo","tanstack-query-devtools-expo-react-native","tanstack-query-devtools-expo-plugin","tanstack-query-devtools-expo-plugin-react-native","tanstack-query-devtools-expo-plugin-webui","tanstack-query-devtools-expo-plugin-webui-react-native","React-Query-Dev-Tools"],"author":{"url":"https://github.com/LovesWorking","name":"LovesWorking"},"license":"MIT","_id":"react-query-external-sync@2.2.2","maintainers":[{"name":"lovesworking","email":"austinlovesworking@gmail.com"}],"homepage":"https://github.com/LovesWorking/react-query-external-sync#readme","bugs":{"url":"https://github.com/LovesWorking/react-query-external-sync/issues"},"dist":{"shasum":"38dc39e573aa4bd56f1e5a8b7f46c647fadcd8bd","tarball":"https://registry.npmjs.org/react-query-external-sync/-/react-query-external-sync-2.2.2.tgz","fileCount":59,"integrity":"sha512-fDEVZgAkN+nm8VgzilVFrm+UZgN8aNw8XexUePwNrD4VqnoXQeS5owsZFs1ZvQ1E5TpZN+8PuJwsJyBOTEkJOA==","signatures":[{"sig":"MEUCIQC6LdRqZV3QvYJE4ruMp+KGWbJBtlIPwGWV4A9tqjeapAIgLfDTLcxkkml4Z5uqed5rbwoEEcwjfMI/VMpugTsLpCA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":218786},"main":"dist/bundle.cjs.js","types":"dist/types/index.d.ts","module":"dist/bundle.esm.js","gitHead":"350b1c650b17bc09c98162b68010ac694f74c6b3","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"tsc --outDir dist --declarationDir dist/types --declaration true && rollup -c rollup.config.mjs","pre-release":"git add . && git status","release:auto":"node scripts/auto-release.js","release:major":"npm run version:major && git push && git push --tags && npm publish && npm run github:release","release:minor":"npm run version:minor && git push && git push --tags && npm publish && npm run github:release","release:patch":"npm run version:patch && git push && git push --tags && npm publish && npm run github:release","version:major":"npm version major","version:minor":"npm version minor","version:patch":"npm version patch","github:release":"node scripts/github-release.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"lovesworking","email":"austinlovesworking@gmail.com"},"repository":{"url":"git+https://github.com/LovesWorking/react-query-external-sync.git","type":"git"},"_npmVersion":"10.8.2","description":"A tool for syncing React Query state to an external Dev Tools","directories":{},"_nodeVersion":"20.19.2","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"tslib":"^2.6.2","rollup":"^4.9.6","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@types/react":"^18.2.55","@babel/preset-env":"^7.23.9","@babel/preset-react":"^7.23.3","@rollup/plugin-json":"^6.1.0","@rollup/plugin-terser":"^0.4.4","@tanstack/react-query":"^5.66.9","@babel/preset-typescript":"^7.23.3","@rollup/plugin-typescript":"^11.1.6","@rollup/plugin-node-resolve":"^15.2.3"},"peerDependencies":{"react":"^18 || ^19","socket.io-client":"*","@tanstack/react-query":"^4.0.0 || ^5.0.0"},"peerDependenciesMeta":{"react-native":{"optional":true},"socket.io-client":{"optional":true},"@react-native-async-storage/async-storage":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/react-query-external-sync_2.2.2_1749177010547_0.6039321329444902","host":"s3://npm-registry-packages-npm-production"}},"2.2.3":{"name":"react-query-external-sync","version":"2.2.3","description":"A tool for syncing React Query state to an external Dev Tools","main":"dist/bundle.cjs.js","module":"dist/bundle.esm.js","types":"dist/types/index.d.ts","scripts":{"build":"tsc --outDir dist --declarationDir dist/types --declaration true && rollup -c rollup.config.mjs","test":"echo \"Error: no test specified\" && exit 1","version:patch":"npm version patch","version:minor":"npm version minor","version:major":"npm version major","prepublishOnly":"npm run build","release:patch":"npm run version:patch && git push && git push --tags && npm publish && npm run github:release","release:minor":"npm run version:minor && git push && git push --tags && npm publish && npm run github:release","release:major":"npm run version:major && git push && git push --tags && npm publish && npm run github:release","release:auto":"node scripts/auto-release.js","github:release":"node scripts/github-release.js","pre-release":"git add . && git status"},"repository":{"type":"git","url":"git+https://github.com/LovesWorking/react-query-external-sync.git"},"keywords":["expo","devtools","tanstack","query","react-query","react-native","expo-react-native","expo-react-native-tanstack-query-devtools","tanstack-query","tanstack-query-devtools","tanstack-query-devtools-expo","tanstack-query-devtools-expo-react-native","tanstack-query-devtools-expo-plugin","tanstack-query-devtools-expo-plugin-react-native","tanstack-query-devtools-expo-plugin-webui","tanstack-query-devtools-expo-plugin-webui-react-native","React-Query-Dev-Tools"],"author":{"name":"LovesWorking","url":"https://github.com/LovesWorking"},"license":"MIT","dependencies":{},"peerDependencies":{"@tanstack/react-query":"^4.0.0 || ^5.0.0","react":"^18 || ^19","socket.io-client":"*"},"peerDependenciesMeta":{"react-native":{"optional":true},"@react-native-async-storage/async-storage":{"optional":true},"socket.io-client":{"optional":true}},"devDependencies":{"@babel/core":"^7.23.9","@babel/preset-env":"^7.23.9","@babel/preset-react":"^7.23.3","@babel/preset-typescript":"^7.23.3","@rollup/plugin-json":"^6.1.0","@rollup/plugin-node-resolve":"^15.2.3","@rollup/plugin-terser":"^0.4.4","@rollup/plugin-typescript":"^11.1.6","@tanstack/react-query":"^5.66.9","@types/node":"^20.11.16","@types/react":"^18.2.55","rollup":"^4.9.6","tslib":"^2.6.2","typescript":"^5.3.3"},"_id":"react-query-external-sync@2.2.3","gitHead":"a4848af1232f1ce44fcbf688b344c44ee41c69d0","bugs":{"url":"https://github.com/LovesWorking/react-query-external-sync/issues"},"homepage":"https://github.com/LovesWorking/react-query-external-sync#readme","_nodeVersion":"20.19.2","_npmVersion":"10.8.2","dist":{"integrity":"sha512-fBEOmtafZmECUWtcE5sifoaDwIlxOGimnMU8O9YK+vfZ35d8XfdSkEbdK+nmycki8XCxvcuUmsFX7YZ+Vt4ZHw==","shasum":"093775cd977717255295bda6dc364afb63dc57d2","tarball":"https://registry.npmjs.org/react-query-external-sync/-/react-query-external-sync-2.2.3.tgz","fileCount":59,"unpackedSize":219595,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCICHSYrZOqUXELLrktF8UrgDCXb56Vf1giHmpOTc5MZTwAiEAgBxLm36Dx3JRijOJjyzgVPLXuctGKSPfLHzv1+oQ6Hg="}]},"_npmUser":{"name":"lovesworking","email":"austinlovesworking@gmail.com","actor":{"name":"lovesworking","email":"austinlovesworking@gmail.com","type":"user"}},"directories":{},"maintainers":[{"name":"lovesworking","email":"austinlovesworking@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/react-query-external-sync_2.2.3_1750263829394_0.0580318368942736"},"_hasShrinkwrap":false}},"time":{"created":"2024-02-12T00:07:36.443Z","modified":"2025-06-18T16:23:49.763Z","1.0.0":"2024-02-12T00:07:36.657Z","1.0.1":"2025-04-08T13:20:22.001Z","2.0.0":"2025-04-08T13:46:46.794Z","2.0.1":"2025-05-11T22:21:26.106Z","2.1.0":"2025-05-26T16:47:21.938Z","2.2.0":"2025-05-27T10:59:26.307Z","2.2.1":"2025-06-06T02:22:09.840Z","2.2.2":"2025-06-06T02:30:10.764Z","2.2.3":"2025-06-18T16:23:49.592Z"},"bugs":{"url":"https://github.com/LovesWorking/react-query-external-sync/issues"},"author":{"name":"LovesWorking","url":"https://github.com/LovesWorking"},"license":"MIT","homepage":"https://github.com/LovesWorking/react-query-external-sync#readme","keywords":["expo","devtools","tanstack","query","react-query","react-native","expo-react-native","expo-react-native-tanstack-query-devtools","tanstack-query","tanstack-query-devtools","tanstack-query-devtools-expo","tanstack-query-devtools-expo-react-native","tanstack-query-devtools-expo-plugin","tanstack-query-devtools-expo-plugin-react-native","tanstack-query-devtools-expo-plugin-webui","tanstack-query-devtools-expo-plugin-webui-react-native","React-Query-Dev-Tools"],"repository":{"type":"git","url":"git+https://github.com/LovesWorking/react-query-external-sync.git"},"description":"A tool for syncing React Query state to an external Dev Tools","maintainers":[{"name":"lovesworking","email":"austinlovesworking@gmail.com"}],"readme":"# React Query External Sync\n\nA powerful debugging tool for React Query state and device storage in any React-based application. Whether you're building for mobile, web, desktop, TV, or VR - this package has you covered. It works seamlessly across all platforms where React runs, with zero configuration to disable in production.\n\nPairs perfectly with [React Native DevTools](https://github.com/LovesWorking/rn-better-dev-tools) for a complete development experience.\n\n![React Query External Sync Demo](https://github.com/user-attachments/assets/39e5c417-be4d-46af-8138-3589d73fce9f)\n\n### If you need internal React Query dev tools within the device you can use my other package here!\nhttps://github.com/LovesWorking/react-native-react-query-devtools\n\n## ✨ Features\n\n- 🔄 Real-time React Query state synchronization\n- 💾 **Device storage monitoring with CRUD operations** - MMKV, AsyncStorage, and SecureStorage\n- 📱 Works with any React-based framework (React, React Native, Expo, Next.js, etc.)\n- 🖥️ Platform-agnostic: Web, iOS, Android, macOS, Windows, Linux, tvOS, VR - you name it!\n- 🔌 Socket.IO integration for reliable communication\n- 📊 Query status, data, and error monitoring\n- ⚡️ Simple integration with minimal setup\n- 🧩 Perfect companion to React Native DevTools\n- 🛑 Zero-config production safety - automatically disabled in production builds\n\n## 📦 Installation\n\n```bash\n# Using npm\nnpm install --save-dev react-query-external-sync socket.io-client\n\n# Using yarn\nyarn add -D react-query-external-sync socket.io-client\n\n# Using pnpm\npnpm add -D react-query-external-sync socket.io-client\n```\n\n## 🚀 Quick Start\n\nAdd the hook to your application where you set up your React Query context:\n\n```jsx\nimport { QueryClient, QueryClientProvider } from \"@tanstack/react-query\";\nimport { useSyncQueriesExternal } from \"react-query-external-sync\";\nimport { Platform } from \"react-native\";\nimport AsyncStorage from \"@react-native-async-storage/async-storage\";\nimport * as SecureStore from \"expo-secure-store\";\nimport { storage } from \"./mmkv\"; // Your MMKV instance\n\n// Create your query client\nconst queryClient = new QueryClient();\n\nfunction App() {\n  return (\n    <QueryClientProvider client={queryClient}>\n      <AppContent />\n    </QueryClientProvider>\n  );\n}\n\nfunction AppContent() {\n  // Unified storage queries and external sync - all in one hook!\n  useSyncQueriesExternal({\n    queryClient,\n    socketURL: \"http://localhost:42831\",\n    deviceName: Platform.OS,\n    platform: Platform.OS,\n    deviceId: Platform.OS,\n    extraDeviceInfo: {\n      appVersion: \"1.0.0\",\n    },\n    enableLogs: true,\n    envVariables: {\n      NODE_ENV: process.env.NODE_ENV,\n    },\n    // Storage monitoring with CRUD operations\n    mmkvStorage: storage, // MMKV storage for ['#storage', 'mmkv', 'key'] queries + monitoring\n    asyncStorage: AsyncStorage, // AsyncStorage for ['#storage', 'async', 'key'] queries + monitoring\n    secureStorage: SecureStore, // SecureStore for ['#storage', 'secure', 'key'] queries + monitoring\n    secureStorageKeys: [\n      \"userToken\",\n      \"refreshToken\",\n      \"biometricKey\",\n      \"deviceId\",\n    ], // SecureStore keys to monitor\n  });\n\n  // Your app content\n  return <YourApp />;\n}\n```\n\n## 🔒 Production Safety\n\nThis package is automatically disabled in production builds.\n\n```jsx\n// The package handles this internally:\nif (process.env.NODE_ENV !== \"production\") {\n  useSyncQueries = require(\"./new-sync/useSyncQueries\").useSyncQueries;\n} else {\n  // In production, this becomes a no-op function\n  useSyncQueries = () => ({\n    isConnected: false,\n    connect: () => {},\n    disconnect: () => {},\n    socket: null,\n    users: [],\n  });\n}\n```\n\n## 💡 Usage with DevTools\n\nFor the best experience, use this package with the [React Native DevTools](https://github.com/LovesWorking/rn-better-dev-tools) application:\n\n1. Download and launch the DevTools application\n2. Integrate this package in your React application\n3. Start your application\n4. DevTools will automatically detect and connect to your running application\n\n> **Note**: For optimal connection, launch DevTools before starting your application.\n\n## ⚙️ Configuration Options\n\nThe `useSyncQueriesExternal` hook accepts the following options:\n\n| Option              | Type         | Required | Description                                                             |\n| ------------------- | ------------ | -------- | ----------------------------------------------------------------------- |\n| `queryClient`       | QueryClient  | Yes      | Your React Query client instance                                        |\n| `socketURL`         | string       | Yes      | URL of the socket server (e.g., 'http://localhost:42831')               |\n| `deviceName`        | string       | Yes      | Human-readable name for your device                                     |\n| `platform`          | string       | Yes      | Platform identifier ('ios', 'android', 'web', 'macos', 'windows', etc.) |\n| `deviceId`          | string       | Yes      | Unique identifier for your device                                       |\n| `extraDeviceInfo`   | object       | No       | Additional device metadata to display in DevTools                       |\n| `enableLogs`        | boolean      | No       | Enable console logging for debugging (default: false)                   |\n| `isDevice`          | boolean      | No       | Set to true if this is a device (default: false)                        |\n| `envVariables`      | object       | No       | Environment variables to sync with DevTools                             |\n| `mmkvStorage`       | MmkvStorage  | No       | MMKV storage instance for real-time monitoring                          |\n| `asyncStorage`      | AsyncStorage | No       | AsyncStorage instance for polling-based monitoring                      |\n| `secureStorage`     | SecureStore  | No       | SecureStore instance for secure data monitoring                         |\n| `secureStorageKeys` | string[]     | No       | Array of SecureStore keys to monitor (required if using secureStorage)  |\n\n## 🐛 Troubleshooting\n\n### Quick Checklist\n\n1. **DevTools Connection**\n\n   - Look for \"Connected\" status in the top-left corner of the DevTools app\n   - If it shows \"Disconnected\", restart the DevTools app\n\n2. **No Devices Appearing**\n\n   - Verify the Socket.IO client is installed (`npm list socket.io-client`)\n   - Ensure the hook is properly set up in your app\n   - Check that `socketURL` matches the DevTools port (default: 42831)\n   - Restart both your app and the DevTools\n\n3. **Data Not Syncing**\n   - Confirm you're passing the correct `queryClient` instance\n   - Set `enableLogs: true` to see connection information\n\nThat's it! If you're still having issues, visit the [GitHub repository](https://github.com/LovesWorking/react-query-external-sync/issues) for support.\n\n## ⚠️ Important Note About Device IDs\n\nThe `deviceId` parameter must be **persistent** across app restarts and re-renders. Using a value that changes (like `Date.now()`) will cause each render to be treated as a new device.\n\n**Recommended approaches:**\n\n```jsx\n// Simple approach for single devices\ndeviceId: Platform.OS, // Works if you only have one device per platform\n\n// Better approach for multiple simulators/devices of same type\n// Using AsyncStorage, MMKV, or another storage solution\nconst [deviceId, setDeviceId] = useState(Platform.OS);\n\nuseEffect(() => {\n  const loadOrCreateDeviceId = async () => {\n    // Try to load existing ID\n    const storedId = await AsyncStorage.getItem('deviceId');\n\n    if (storedId) {\n      setDeviceId(storedId);\n    } else {\n      // First launch - generate and store a persistent ID\n      const newId = `${Platform.OS}-${Date.now()}`;\n      await AsyncStorage.setItem('deviceId', newId);\n      setDeviceId(newId);\n    }\n  };\n\n  loadOrCreateDeviceId();\n}, []);\n```\n\n## 📄 License\n\nMIT\n\n---\n\nMade with ❤️ by [LovesWorking](https://github.com/LovesWorking)\n","readmeFilename":"README.md"}