{"_id":"react-native-appear-observer","_rev":"29-fe9ed3f52cbcca88f7d192c4b6f64c14","name":"react-native-appear-observer","dist-tags":{"latest":"2.1.8"},"versions":{"1.0.1":{"name":"react-native-appear-observer","version":"1.0.1","keywords":["React","React Native","visibility","appearance","appear observer","react native intersection observer","element visibility"],"author":{"name":"Andrii Syzov"},"license":"MIT","_id":"react-native-appear-observer@1.0.1","maintainers":[{"name":"albeitreluctantly","email":"andrei.sizov94@hotmail.com"}],"homepage":"https://github.com/albeitereluctantly/react-native-appear-observer#readme","bugs":{"url":"https://github.com/albeitereluctantly/react-native-appear-observer/issues"},"dist":{"shasum":"57ab2c3df670514633e6ce05b30bbbc0b2a1e9e1","tarball":"https://registry.npmjs.org/react-native-appear-observer/-/react-native-appear-observer-1.0.1.tgz","fileCount":19,"integrity":"sha512-hqDGYT+YWARreyWwhg1H1v5T9KicdIYlf3SXLt7aBfs7Onqf3hAXH+aCZNadXGsuBDyBp4LyFJx28zomIsBFIg==","signatures":[{"sig":"MEQCIFGTsYTTXXRxvG4wubsNk1j2+EowVpPFlN/cdnh86rJOAiBkRevmDlutX4CL2MQcjYhBEHrw5C5fPhQfTqHFbAv4vQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":20997,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj4ByQACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoPSg//ctJ5te2OMSx1UWoEa+D8KjVV4Vcxjlk7DuUv26VDC8YV28uV\r\nwEvIPl2VgpoxCWdU7P4zBM0fN3iya5k1WZf2qfrb9znQSgiz9+yvvfnD810I\r\nsGNviHvTX1JKTyZZLZ7bsfSsOjJjZaETJbnC300C7NaplfQK+EteWFV5vWAS\r\ncc/nEYLW/c0YM/MZy6SwgiBaKbcx22aMCvfaOmEZo54dUohGVks8U72e400l\r\n6WbRybQcOJL4HPi9vtyXKx5aeLnWW11EVHxlonsQgCw7zMKDqNg2sbVwZTya\r\n17ltcWoWYpXR3B0F1MxV2GRBhZMNr+zRj7pM+1i1yFbI54Ugw5NIsV3+oIEg\r\nImX17ttIcgpvcK51KI8+c2c7C65rg/jNwqCICTa0ZqAn2nVLJNsWlbS47nL+\r\n+gxSxBBkE1F3a3rlSQdaBN0JEsYM+xK+03a7XhwsX8RWpXna4CXILx2G1sMS\r\nnqnwxsXVIn6fcUpsVCf+RE6Pd8rjqfCS3NxCSvYD70KE8YDmLODB+lr2TwRj\r\nOJXL762KZx33GGP0GesLUWb82sBKkZXe2ssPnDX3mu24aK7ortSRXOxOVdpy\r\ngr/1cVbtSX1hIIgnOK29qeFKKyh0dRhBY6aAh+cxa2XnnA0/Mz/rxXD6N2TT\r\nUuyIgym5vm8uhYwLY6ekFeHm4WKL+2Yi7Wg=\r\n=OA60\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"preset":"react-native","moduleFileExtensions":["ts","tsx","js","jsx","json","node"]},"main":"src/index.ts","types":"src/index.ts","gitHead":"ee6d9e5f1f12ddf791e79a7badc64aae6f53fe35","scripts":{"test":"jest"},"_npmUser":{"name":"albeitreluctantly","email":"andrei.sizov94@hotmail.com"},"repository":{"url":"git+https://github.com/albeitereluctantly/react-native-appear-observer.git","type":"git"},"_npmVersion":"9.2.0","description":"Utility to check React Native node visibility on the screen.","directories":{},"_nodeVersion":"19.4.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","eslint":"^8.32.0","prettier":"2.8.3","babel-jest":"^29.4.1","typescript":"^4.8.3","@babel/core":"^7.12.9","@types/jest":"^29.4.0","@types/react":"^18.0.21","@babel/runtime":"^7.12.5","@types/react-native":"^0.71.0","react-test-renderer":"18.2.0","@tsconfig/react-native":"^2.0.2","@typescript-eslint/parser":"^5.37.0","eslint-plugin-react-hooks":"^4.6.0","@types/react-test-renderer":"^18.0.0","metro-react-native-babel-preset":"0.74.1","@typescript-eslint/eslint-plugin":"^5.37.0","@react-native-community/eslint-config":"^3.2.0"},"peerDependencies":{"react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/react-native-appear-observer_1.0.1_1675631760084_0.708786668053077","host":"s3://npm-registry-packages"}},"1.0.3":{"name":"react-native-appear-observer","version":"1.0.3","keywords":["React","React Native","visibility","appearance","appear observer","react native intersection observer","element visibility"],"author":{"name":"Andrii Syzov"},"license":"MIT","_id":"react-native-appear-observer@1.0.3","maintainers":[{"name":"albeitreluctantly","email":"andrei.sizov94@hotmail.com"}],"homepage":"https://github.com/albeitreluctantly/react-native-appear-observer#readme","bugs":{"url":"https://github.com/albeitreluctantly/react-native-appear-observer/issues"},"dist":{"shasum":"990854e7e63a26369d15a96dd6d88b040fbfb6a9","tarball":"https://registry.npmjs.org/react-native-appear-observer/-/react-native-appear-observer-1.0.3.tgz","fileCount":19,"integrity":"sha512-/zJyU4CcN3NoSoCv4VsWHkggi9q8OgsjcAA5ohQBoa6QSXhOw6IYNDENzuLu7h0rFK7d38XP7lB3HqpFN1QK3w==","signatures":[{"sig":"MEUCIDO77j4Z19hauj1A14JRV0SNdIj/hrPoHJRvj+4r1MiFAiEA1DXxFCKZzDPbOGQnTkRfnPjP9nT2GhAO5aYsXrRcnRU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":20994,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj4CFxACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrr8Q/5AWsWJX/Mhzn/ccnm97ba5zD4UiQyTylNpOHlwFxGTBUsNInm\r\n/E0sKP7hCccjuQbzHgEvXBg3ZNUj3dZKXttuuztL6mqpC58hADKHTi4UqDmh\r\nqgZCpkDnK7V441KEnSZWCRO9dQ0xbNLfuI0rmxR5q8nDE4thwHBgKWyWmnUC\r\nOGf7sCj4K00I+KuJ4bgsm3dkV1PiBX1b57JW11d2/tRYau1SKHMpSojBloTl\r\nWhm/0R1FTqVx4HMJ7jJ8IU8+Pp1n6QxsVmLjWVwPhCxzmzN6Tnsq/rGFb4zj\r\nOcKZUDIXl6NQ015dIEudA4ZOYpIiwyEX/kx9fj5K5qt3PvFmIr/slXKBsoBM\r\nDI4gnEFqeGJN/5d0CW7MjkU9GCb/Lub88AXMQPeB0tUbpexA1O+4y5lNP39E\r\nMWeBTEUwtgzUdeUUn1deZ3ytZB516PYpgGCW9xVlTnlZnU12+QFvPgzF4hB0\r\nh6Vc/OtwYPtFNtavMIe0/vFOxpnAj+qR8/G+QqDWYqEtDUGC55WKzSlZXrt2\r\nqEIgx7JlKt20FaujpknhQWMDohLQemPRahnd8TZzWSILOhahw69oywF8w2Or\r\nTGkdtGdr8/mEtRFawdUi2xJM8yvEWy7HLc0LnCRbEFlwFzPcufJL/W95JBkJ\r\n4CE0M3BgYmpPn1CQM1f3YtbclQKtDgg5mSo=\r\n=pdk3\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"preset":"react-native","moduleFileExtensions":["ts","tsx","js","jsx","json","node"]},"main":"src/index.ts","types":"src/index.ts","gitHead":"aa07e2dcc6c153508c2ede0c9b90fb4dbac57d58","scripts":{"test":"jest"},"_npmUser":{"name":"albeitreluctantly","email":"andrei.sizov94@hotmail.com"},"repository":{"url":"git+https://github.com/albeitreluctantly/react-native-appear-observer.git","type":"git"},"_npmVersion":"9.2.0","description":"Utility to check React Native node visibility on the screen.","directories":{},"_nodeVersion":"19.4.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","eslint":"^8.32.0","prettier":"2.8.3","babel-jest":"^29.4.1","typescript":"^4.8.3","@babel/core":"^7.12.9","@types/jest":"^29.4.0","@types/react":"^18.0.21","@babel/runtime":"^7.12.5","@types/react-native":"^0.71.0","react-test-renderer":"18.2.0","@tsconfig/react-native":"^2.0.2","@typescript-eslint/parser":"^5.37.0","eslint-plugin-react-hooks":"^4.6.0","@types/react-test-renderer":"^18.0.0","metro-react-native-babel-preset":"0.74.1","@typescript-eslint/eslint-plugin":"^5.37.0","@react-native-community/eslint-config":"^3.2.0"},"peerDependencies":{"react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/react-native-appear-observer_1.0.3_1675633008848_0.6228785100751317","host":"s3://npm-registry-packages"}},"1.0.4":{"name":"react-native-appear-observer","version":"1.0.4","keywords":["React","React Native","visibility","appearance","appear observer","react native intersection observer","element visibility"],"author":{"name":"Andrii Syzov"},"license":"MIT","_id":"react-native-appear-observer@1.0.4","maintainers":[{"name":"albeitreluctantly","email":"andrei.sizov94@hotmail.com"}],"homepage":"https://github.com/albeitreluctantly/react-native-appear-observer#readme","bugs":{"url":"https://github.com/albeitreluctantly/react-native-appear-observer/issues"},"dist":{"shasum":"9b247839ecf11ae18f77ed8f598351777c9af783","tarball":"https://registry.npmjs.org/react-native-appear-observer/-/react-native-appear-observer-1.0.4.tgz","fileCount":19,"integrity":"sha512-0gAYMHux5WroYLuLNBY1AOfI0+/yuJdATk/HjNCOG3i9HrazKjqaMjLM6STjF51Gj00axE3muF5/PBfuETMY0g==","signatures":[{"sig":"MEYCIQCe322LcSHu78MMIjoDOgOAT5EaaaSNsck7RhW3cR0+UwIhAPMw7I7Et+OJNRhcHujahCFU5Xu7GY3jBe8S79CVa0VJ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21809,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkCPPOACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrOYw/+PavCaFaTKB82b9yNexv//CvGPIRleClPeqdpXN0x3dxlj2Ql\r\nUWdTVZDIeNLPlI3ujiobFZirgpuuB8Ji/gMbruvehLdDfblzcdIi8hChzMEf\r\nt1DAVkxE1OqDvhI0kyeJlSeaQNbsQy9ioDv7+Vg5y/BCNhMgvwfKjw0PD4u+\r\nFC5av836iXqas+AxGgW/UYItEoQknix0rWCaoHBPqTdmQlFZlhHiBgOvtdej\r\nlzHspGvMODcDh2A0H5tJsOIPJsSx1liyqqZTAsQqkjRLagWMB8sZ+3MqHA5S\r\nhVP9eD6/Evg8w5DUfVvXVPan9V57VUStygFWHguf/21s1bE8IUyQM/oywgvd\r\np1tKA4a+GpXYbjMW/oK1xicuMV/a+t/XF2D7RjVHglzYqojV0cf3vu9Q+LvM\r\nW0X1MKc2YDvf4YA6nv3RB1YED4WPyYYVKUyJkBqhgyGND+JrmsNIBvL7ow5c\r\nj7USLNnWByuhmykZnQs9/83fRQ1wfQHWk4P//bIziJdC3m4WKA+8Kvb/yCg2\r\ny3poSb/TdSlaTXQUsCE2cWwNuXLNRhiNrqG2veMNSSFak7XmjE85MTzjIPpF\r\nWEAvoE0YOLJxae2xQKeK85qxpSlwPf99D3YGZyMwxNpibxPTQU4DQsds1YMS\r\nnzytB7Pe8zPSQGRvCq2sHVNBbN484AiJh/0=\r\n=fSMn\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"preset":"react-native","moduleFileExtensions":["ts","tsx","js","jsx","json","node"]},"main":"src/index.ts","types":"src/index.ts","gitHead":"820d8e2215036c85f95675679253c17a2cae10be","scripts":{"test":"jest"},"_npmUser":{"name":"albeitreluctantly","email":"andrei.sizov94@hotmail.com"},"repository":{"url":"git+https://github.com/albeitreluctantly/react-native-appear-observer.git","type":"git"},"_npmVersion":"9.2.0","description":"Utility to check React Native node visibility on the screen.","directories":{},"_nodeVersion":"19.4.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","eslint":"^8.32.0","prettier":"2.8.3","babel-jest":"^29.4.1","typescript":"^4.8.3","@babel/core":"^7.12.9","@types/jest":"^29.4.0","@types/react":"^18.0.21","@babel/runtime":"^7.12.5","@types/react-native":"^0.71.0","react-test-renderer":"18.2.0","@tsconfig/react-native":"^2.0.2","@typescript-eslint/parser":"^5.37.0","eslint-plugin-react-hooks":"^4.6.0","@types/react-test-renderer":"^18.0.0","metro-react-native-babel-preset":"0.74.1","@typescript-eslint/eslint-plugin":"^5.37.0","@react-native-community/eslint-config":"^3.2.0"},"peerDependencies":{"react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/react-native-appear-observer_1.0.4_1678308301899_0.2146016065674976","host":"s3://npm-registry-packages"}},"1.0.5":{"name":"react-native-appear-observer","version":"1.0.5","keywords":["React","React Native","visibility","appearance","appear observer","react native intersection observer","element visibility"],"author":{"name":"Andrii Syzov"},"license":"MIT","_id":"react-native-appear-observer@1.0.5","maintainers":[{"name":"albeitreluctantly","email":"andrei.sizov94@hotmail.com"}],"homepage":"https://github.com/albeitreluctantly/react-native-appear-observer#readme","bugs":{"url":"https://github.com/albeitreluctantly/react-native-appear-observer/issues"},"dist":{"shasum":"7810cec722e2de97934546fc04c9a71a547c4fa1","tarball":"https://registry.npmjs.org/react-native-appear-observer/-/react-native-appear-observer-1.0.5.tgz","fileCount":19,"integrity":"sha512-Ldh334vqTK9NTDqVfBbAzZqkuCZOLKJBajItcBjLNvFZWlV+nPRBQqOotyDkxZlMAtfsBV0epdycIf39Lmmc8Q==","signatures":[{"sig":"MEUCIQChREoCtT47nH4Vm2Dh/GDUQ7FQrqYuQ75Sr+HqN5aOcAIgJ2zs5QlMD8MdgjMkwIcLCzDv/UhKIzUddan8OiUsvvI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22131,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkJTk5ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq3Kw//UGs0rkdSgiTqBoxvEZAeKW+R+BklqieLqIqGYtKU6rYrc53L\r\n6eyq0M701fIjy/Kmv1O2k5tE8e3QZwiY3uvNIkq7Awji+5GKrKushT+R+0B0\r\nmAa9F/emxwmhfSQTMXLgh6BI8k8tUgJcEyOqmmCtPV47hH1W/pfaVM7GNH4X\r\n2/ehVm2ZRNoZs7jVc/NQF7ACCevWy1VxUgdR7iya+OAst6Wh76D7xq6z8R4A\r\nLq1y+ZLPUQr/xOPn9ABC9yIMsxRN26DJv5LhKXmYX6LCIaSLlSNl9dXLp/T2\r\nfMaleKcDXoRj4dASpmyhc2eHzg1sIbbu3Uo6t9yTIivfChOF4bkIucShVCoR\r\n6WeavHJ+KKbUer//uX5Zi3rJU/lCwiKegl0f5BTXLDf5TL3MU3J+XEHretdq\r\no2NMU+8airTonPh+5hmjSwPebFjS5sXyDl6tfNEqMCN3iENbi9aA0XPgDiW4\r\nHHmhqiR+sXvc0jdMx606qnwdNZG2vH2UL8zC8Q3mnQITMy+3z0PBNTejttgF\r\nhbrniOSNTmOV0BpNXEzG+SXNMAjl8r7jgKvSXsm0/Q+ndr+q8tBnbCOEQITp\r\n+POsifBMmIkWYjETxQQ6aC9etCQi0qMjEUxF8kv+kyi3C8eElnJ05Qf5zoL0\r\nLDVeWhATYBRf8DsHuMe+9DDojzu+yiagNCI=\r\n=wItJ\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"preset":"react-native","moduleFileExtensions":["ts","tsx","js","jsx","json","node"]},"main":"src/index.ts","types":"src/index.ts","gitHead":"a5e50722504fc164d8043a15deb7389ed6ce36b1","scripts":{"test":"jest"},"_npmUser":{"name":"albeitreluctantly","email":"andrei.sizov94@hotmail.com"},"repository":{"url":"git+https://github.com/albeitreluctantly/react-native-appear-observer.git","type":"git"},"_npmVersion":"9.2.0","description":"Utility to check React Native node visibility on the screen.","directories":{},"_nodeVersion":"19.4.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","eslint":"^8.32.0","prettier":"2.8.3","babel-jest":"^29.4.1","typescript":"^4.8.3","@babel/core":"^7.12.9","@types/jest":"^29.4.0","@types/react":"^18.0.21","@babel/runtime":"^7.12.5","@types/react-native":"^0.70.0","react-test-renderer":"18.2.0","@tsconfig/react-native":"^2.0.2","@typescript-eslint/parser":"^5.37.0","eslint-plugin-react-hooks":"^4.6.0","@types/react-test-renderer":"^18.0.0","metro-react-native-babel-preset":"0.74.1","@typescript-eslint/eslint-plugin":"^5.37.0","@react-native-community/eslint-config":"^3.2.0"},"peerDependencies":{"react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/react-native-appear-observer_1.0.5_1680161081318_0.621295810807291","host":"s3://npm-registry-packages"}},"1.0.6":{"name":"react-native-appear-observer","version":"1.0.6","keywords":["React","React Native","visibility","appearance","appear observer","react native intersection observer","element visibility"],"author":{"name":"Andrii Syzov"},"license":"MIT","_id":"react-native-appear-observer@1.0.6","maintainers":[{"name":"albeitreluctantly","email":"andrei.sizov94@hotmail.com"}],"homepage":"https://github.com/albeitreluctantly/react-native-appear-observer#readme","bugs":{"url":"https://github.com/albeitreluctantly/react-native-appear-observer/issues"},"dist":{"shasum":"a6a35896709b5fc7e506985b487302e141c97a13","tarball":"https://registry.npmjs.org/react-native-appear-observer/-/react-native-appear-observer-1.0.6.tgz","fileCount":19,"integrity":"sha512-QF9mZ/T+lPayKQLq+gu/k6PGxqt54kWJQhvlbm8CR6pIlFW1KR0V3HMlTBtc2dbvLO9LUvqT/Qk+q24VFopz8w==","signatures":[{"sig":"MEQCIGQAnPy7g7cT+nc3WKpNkfuoOIK7NOUDdosiee8VoTqjAiBTJ0XUm0lV9NbvWyBU4GIpCYYjsMAkqgtI8Y6lFOrpUA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22538,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkJYUBACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo+LQ/8CUpbSKq4QI16rF9YqlLW8fv+cyjIWL7w1x88yjdU8Seakz0A\r\nihli+v8f9dEyoukWIm56R+/zG1750L/I++lZI/+ZjMgfAjfTIQfU5KkdE2ax\r\n0PjkE8Hb7/6KxGf8mZB5ipmvOxh3Z6mz0tOMtzeZwgHvQqEhHdwFnVk0GyDT\r\n8LCMDLuzw2faiL9qnzuz7EPV1ODqchICWaw1qPruWFKu9bHpZMdPTjSWZ1s8\r\niwbDZKaTbpCoXqRvh10GWfpRwCmUKdQjdT1BMc8peGb/LEzj5LewrHVmvwGg\r\ngS+FKL1Z/NGmXjUnF6UBwuQIMkF1kaLUIyonILqHjNIhzRG9484B8qV3olNR\r\nJRFCFNk+NwhLrLSb89ToGmGfJN83jbzc5dq5H16Vqhp7GRKF7KfrudJa6QbS\r\nyIi48x7Ae2mXunFxJS3KRWTIGYcLrvQuQzMjJ6VBXktXOywu22Gb0p/nSVk+\r\nR9PTiXuO5kGugQ1LoroDwPrIJyiYh/bX8U4it+NpyrIg4758RmYNY7tmdEsO\r\npkCUWGy/5Yi0tSbZgF+AbRQqEBzipJMCb17a7TJrquyzkSNfZbPxf8bJKN9f\r\nkJbTd0Ps+KY1NSdkz+ljawRzzXH9tVlBSpnz+2zoHfy9CqbWbdCroVgcyvuL\r\nfZKF1+D+U0Dixv7MtIKaU8POD564k9aKKsc=\r\n=Bf0g\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"preset":"react-native","moduleFileExtensions":["ts","tsx","js","jsx","json","node"]},"main":"src/index.ts","types":"src/index.ts","gitHead":"a7e08b7cf81ed25e31740479e16a28f4a06fabb6","scripts":{"test":"jest"},"_npmUser":{"name":"albeitreluctantly","email":"andrei.sizov94@hotmail.com"},"repository":{"url":"git+https://github.com/albeitreluctantly/react-native-appear-observer.git","type":"git"},"_npmVersion":"9.2.0","description":"Utility to check React Native node visibility on the screen.","directories":{},"_nodeVersion":"19.4.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","eslint":"^8.32.0","prettier":"2.8.3","babel-jest":"^29.4.1","typescript":"^4.8.3","@babel/core":"^7.12.9","@types/jest":"^29.4.0","@types/react":"^18.0.21","@babel/runtime":"^7.12.5","@types/react-native":"^0.70.0","react-test-renderer":"18.2.0","@tsconfig/react-native":"^2.0.2","@typescript-eslint/parser":"^5.37.0","eslint-plugin-react-hooks":"^4.6.0","@types/react-test-renderer":"^18.0.0","metro-react-native-babel-preset":"0.74.1","@typescript-eslint/eslint-plugin":"^5.37.0","@react-native-community/eslint-config":"^3.2.0"},"peerDependencies":{"react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/react-native-appear-observer_1.0.6_1680180481325_0.1742382788726866","host":"s3://npm-registry-packages"}},"1.0.7":{"name":"react-native-appear-observer","version":"1.0.7","keywords":["React","React Native","visibility","appearance","appear observer","react native intersection observer","element visibility"],"author":{"name":"Andrii Syzov"},"license":"MIT","_id":"react-native-appear-observer@1.0.7","maintainers":[{"name":"albeitreluctantly","email":"andrei.sizov94@hotmail.com"}],"homepage":"https://github.com/albeitreluctantly/react-native-appear-observer#readme","bugs":{"url":"https://github.com/albeitreluctantly/react-native-appear-observer/issues"},"dist":{"shasum":"12cc051c9623408f0bd0a70f50fe60e300d3c233","tarball":"https://registry.npmjs.org/react-native-appear-observer/-/react-native-appear-observer-1.0.7.tgz","fileCount":19,"integrity":"sha512-mh7PTJqPLCjTaSeX6j/5TBC3jBOLlpJYa2rfpc1IXdIoVryGFoG4ekYxr21dJe89Fj1l2XzcUV9nASsF8qIcSw==","signatures":[{"sig":"MEUCIA/z5sK7gNc2EjbcyXmxskWsSs2xNBeyaulkZ6IkEI9kAiEAuos5z5geZ0ywAFPBgUpVAj6WPf18AKQk3vWTs5bDwJQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22632,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkJlkUACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq5FA/9HK14yZSWLZ7RYFrKs4Pa1hFU5i3GYR16pj2WXSHl3Q5dFF9H\r\nYZiBIH3SEkQDryJ1fBEwBFUxTsTv7gUefgpYHPRAqwOmlNGd2k30v79fERXj\r\nKypg59WD9EOiO8sya2kYk2iuwX0tJMAwUZjX4AUIv/Pe8sK70GKjXx0YBc5L\r\np/2FsPNF6TFhro/47fmRbP/9Q+pP9xQYjiR0/uKYi3IfdlYNoWI7BlujIoYN\r\n9KvzL+VYXIf9ywy1ESD0IrKGtH/R4620PpIjxSJq6OdEVhF6vBtgQn0FXzf+\r\nTERR4D9s8644LvqLj7yerViUFNUKAGtsATaS70YsTxqJyQ9nP/gXvBIyRiID\r\nEZPUognEBMldqD3OrZcd5L5SXHu81pZyLl6TnYwtHljwCIRp7lK4YAB3klGc\r\nvf2a+ri8YzaKxSr+njS8ckCJy5gS2E4yBuq6EuW7ft4Kw32GIljFfbDk+fxz\r\nefToAoadx0A5KEQ7Ny2/dSaFNKZoklva/+hTd0HLNdHff7Dozv0ePJ/3gm/O\r\nH9ogyzBMixc/4MOKcTs57lA9/sEd9gVVk31qJRSRzTE/NUFfO06luhEX84Je\r\nI75iEoHqUpQsarBGnR6J0vAzNVCtcjRWzeqDS91zxWnuOUYWexoCxgT6ykss\r\nk3MuWFWMW8JtMgQC5EDyS58JbY8+6uUOQ3w=\r\n=sxcw\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"preset":"react-native","moduleFileExtensions":["ts","tsx","js","jsx","json","node"]},"main":"src/index.ts","types":"src/index.ts","gitHead":"fbb200552e647d8a23f2b2c446a0122cd8739cef","scripts":{"test":"jest"},"_npmUser":{"name":"albeitreluctantly","email":"andrei.sizov94@hotmail.com"},"repository":{"url":"git+https://github.com/albeitreluctantly/react-native-appear-observer.git","type":"git"},"_npmVersion":"9.2.0","description":"Utility to check React Native node visibility on the screen.","directories":{},"_nodeVersion":"19.4.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","eslint":"^8.32.0","prettier":"2.8.3","babel-jest":"^29.4.1","typescript":"^4.8.3","@babel/core":"^7.12.9","@types/jest":"^29.4.0","@types/react":"^18.0.21","@babel/runtime":"^7.12.5","@types/react-native":"^0.70.0","react-test-renderer":"18.2.0","@tsconfig/react-native":"^2.0.2","@typescript-eslint/parser":"^5.37.0","eslint-plugin-react-hooks":"^4.6.0","@types/react-test-renderer":"^18.0.0","metro-react-native-babel-preset":"0.74.1","@typescript-eslint/eslint-plugin":"^5.37.0","@react-native-community/eslint-config":"^3.2.0"},"peerDependencies":{"react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/react-native-appear-observer_1.0.7_1680234771921_0.7912264388506172","host":"s3://npm-registry-packages"}},"1.0.8":{"name":"react-native-appear-observer","version":"1.0.8","keywords":["React","React Native","visibility","appearance","appear observer","react native intersection observer","element visibility"],"author":{"name":"Andrii Syzov"},"license":"MIT","_id":"react-native-appear-observer@1.0.8","maintainers":[{"name":"albeitreluctantly","email":"andrei.sizov94@hotmail.com"}],"homepage":"https://github.com/albeitreluctantly/react-native-appear-observer#readme","bugs":{"url":"https://github.com/albeitreluctantly/react-native-appear-observer/issues"},"dist":{"shasum":"b328fe6ee5c2e1adee29441ea226eeed68fc4dc6","tarball":"https://registry.npmjs.org/react-native-appear-observer/-/react-native-appear-observer-1.0.8.tgz","fileCount":19,"integrity":"sha512-NO4af1pJL4kmjovR8nG+dUy+XUMFsdihkS4TlI82riv4rrSDh6ZOhvwvtSdimphDsG8s1sLIU7KXjo/wkoKXNw==","signatures":[{"sig":"MEUCIQC/VtrC+RN+0TFCVaCVXKZwy77jaBI4YWF/SnQyoXolJQIgBzk1BXTRDy2psCGlNRhUijhK/ooauyEW7aSWI4/Yk3E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22532,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkJodiACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoI6g/+MR8KcQd0i5uXEC4vI4dDqriFJB7T3TCeDy7CQw3GU1saSmJd\r\n9GGm6sWlPmBWasSfoa8HIWVIOHF6qLUufvSGKSwUuZ6TeYRLS8x1FGgvWCHX\r\nGzzV+fa83rdz4RJZXNDdFJdQVMZ86jaqNR4324IcKpK4zn9JO+hDNfj+hwhi\r\ncsIiJdXLZP9QSC0ik3PDezjN1i+Qsh0RrlEABmfl/Y38nfHQ0gLiW3xljHkw\r\nVbiM2xybTdEG+QRkcmRC+INvBvB/zv5EFmMhnfdBJhm3PTS2BkmfiFuiD1HP\r\nlKRg81HFaHiXXUChJ9FzkWkFKjfkQ7x+Yyxi+p1uh63CVwpD6+WBO7ifBazL\r\nsxMG1uZcMGFx0lQROutu7iC8P5hza2i8WMSUBq79lun0aHW+tx7QmjEDYQJo\r\nq8VNn6lgJd6Flp3MFMnTa0QhCzPQ9UljDuID2Mb1Z6gpTctBSGNzXXYg9tLE\r\nGG2RW7z9qJHkpFaWVCEj93sgjQdDUtVsTaQD6pEDtor3d2Zhbr/hfuSJYjKT\r\nfZRhhIPvptPUN/jR6oFr525I9KkQCdFqi4hNWwXQqGYgcflMc0G4UJel8rwE\r\n3dD6e2GltWWCBAmtQsZ4AwaKxt6qqN8sdea8qBnzw9gc+6mXq+Fo4lIzjRWa\r\nzF4zy7CTV5bu2GDC3XXw5zlYd7DVmF7KNRA=\r\n=yBTA\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"preset":"react-native","moduleFileExtensions":["ts","tsx","js","jsx","json","node"]},"main":"src/index.ts","types":"src/index.ts","gitHead":"cd78a951dd703e72f0814fcb14b66958801cf6e3","scripts":{"test":"jest"},"_npmUser":{"name":"albeitreluctantly","email":"andrei.sizov94@hotmail.com"},"repository":{"url":"git+https://github.com/albeitreluctantly/react-native-appear-observer.git","type":"git"},"_npmVersion":"9.2.0","description":"Utility to check React Native node visibility on the screen.","directories":{},"_nodeVersion":"19.4.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","eslint":"^8.32.0","prettier":"2.8.3","babel-jest":"^29.4.1","typescript":"^4.8.3","@babel/core":"^7.12.9","@types/jest":"^29.4.0","@types/react":"^18.0.21","@babel/runtime":"^7.12.5","@types/react-native":"^0.70.0","react-test-renderer":"18.2.0","@tsconfig/react-native":"^2.0.2","@typescript-eslint/parser":"^5.37.0","eslint-plugin-react-hooks":"^4.6.0","@types/react-test-renderer":"^18.0.0","metro-react-native-babel-preset":"0.74.1","@typescript-eslint/eslint-plugin":"^5.37.0","@react-native-community/eslint-config":"^3.2.0"},"peerDependencies":{"react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/react-native-appear-observer_1.0.8_1680246626370_0.7969112615029423","host":"s3://npm-registry-packages"}},"1.0.9":{"name":"react-native-appear-observer","version":"1.0.9","keywords":["React","React Native","visibility","appearance","appear observer","react native intersection observer","element visibility"],"author":{"name":"Andrii Syzov"},"license":"MIT","_id":"react-native-appear-observer@1.0.9","maintainers":[{"name":"albeitreluctantly","email":"andrei.sizov94@hotmail.com"}],"homepage":"https://github.com/albeitreluctantly/react-native-appear-observer#readme","bugs":{"url":"https://github.com/albeitreluctantly/react-native-appear-observer/issues"},"dist":{"shasum":"7efa632bee5b136d0ddfe4e81de2ec0e1d769e7f","tarball":"https://registry.npmjs.org/react-native-appear-observer/-/react-native-appear-observer-1.0.9.tgz","fileCount":19,"integrity":"sha512-RFm5X6TtIfhabL7lRo4Y3V+A60WuK95ML7ZcMODuuqodE6UadK8cvmJ9H9C2oCSYJAPMNsUG4ttxOT7RWagzcw==","signatures":[{"sig":"MEUCICZpQOy2K4FqHBmot9Yu9NHjSlSpEJmoXeN2fywD6jA2AiEAwao9Fr3wOGIyotdiQa2JbBpc/ZAlA9Z9S0B6psX5C7g=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22530,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkJpIQACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrqGw/5AftE3CzQovjqP4ZY5+sZrv8sK8eoQmboN5xDdi0hLNopkyFa\r\niHMrwSg55tj0MhUS3vAnmZqW1lDANshEkHPPlgfMOVBSqr36cerqlQWMYrQr\r\npTa1nay6sPm3/Zv6aL8ZbMZs3hNsUH06QT8m3IsJ4X5hwKcX0HOlzXq+SkVp\r\nITqU5X7X56n6iBNIs06OujoSjtf0QpoQUICcOgaj6FWITN7nJpJC80EfM1Un\r\nqdcnlEWWRmqQPhSLeQMwBfUc57sRoynGfuhtK7MJwDQP+VgTpGR0yyHsOPqO\r\nthBZbbjdNCNzzan/UInA8foo7eDXPmzMK6PR+i/TPOWJ8uhAU0TwqZqm/iIY\r\ne1QmeQZZHzcPZVgbxb1AxlHtOs63vqksezOi0Yby0HWhKWyhHugAgbL7Clvm\r\nOLypT/mF12w1r9tDLgXUjg4bowog/XrGsgpmiMOws2aY7e6kNe6aIxdsH968\r\nz4gTboSlnkhgIfFIJKm7bT437XqXPBKRDjoHn5wMYuvBsinRSLFshBv9bxnx\r\novChDMO2yY3cUYxxzG4PvL204BWUWF+qpEZsBVY+k/Epn99/pYrk51Mn8GOM\r\n6CllXJL82wHTZ108kMq5TUPCDtob4j6W3jFJx03yZzGlaJUyr7Yqa6F9CjLY\r\nfx00wziKAa51eYKQTrxzclsl4dgN534XEnM=\r\n=Wr3t\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"preset":"react-native","moduleFileExtensions":["ts","tsx","js","jsx","json","node"]},"main":"src/index.ts","types":"src/index.ts","gitHead":"2b922e3ea2d49c894dbb39deef411614f551153b","scripts":{"test":"jest"},"_npmUser":{"name":"albeitreluctantly","email":"andrei.sizov94@hotmail.com"},"repository":{"url":"git+https://github.com/albeitreluctantly/react-native-appear-observer.git","type":"git"},"_npmVersion":"9.2.0","description":"Utility to check React Native node visibility on the screen.","directories":{},"_nodeVersion":"19.4.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","eslint":"^8.32.0","prettier":"2.8.3","babel-jest":"^29.4.1","typescript":"^4.8.3","@babel/core":"^7.12.9","@types/jest":"^29.4.0","@types/react":"^18.0.21","@babel/runtime":"^7.12.5","@types/react-native":"^0.70.0","react-test-renderer":"18.2.0","@tsconfig/react-native":"^2.0.2","@typescript-eslint/parser":"^5.37.0","eslint-plugin-react-hooks":"^4.6.0","@types/react-test-renderer":"^18.0.0","metro-react-native-babel-preset":"0.74.1","@typescript-eslint/eslint-plugin":"^5.37.0","@react-native-community/eslint-config":"^3.2.0"},"peerDependencies":{"react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/react-native-appear-observer_1.0.9_1680249360003_0.44634347628048543","host":"s3://npm-registry-packages"}},"1.0.11":{"name":"react-native-appear-observer","version":"1.0.11","keywords":["React","React Native","visibility","appearance","appear observer","react native intersection observer","element visibility"],"author":{"name":"Andrii Syzov"},"license":"MIT","_id":"react-native-appear-observer@1.0.11","maintainers":[{"name":"albeitreluctantly","email":"andrei.sizov94@hotmail.com"}],"homepage":"https://github.com/albeitreluctantly/react-native-appear-observer#readme","bugs":{"url":"https://github.com/albeitreluctantly/react-native-appear-observer/issues"},"dist":{"shasum":"c6025dc0458c2f477096bc2c30b79cf11da007a5","tarball":"https://registry.npmjs.org/react-native-appear-observer/-/react-native-appear-observer-1.0.11.tgz","fileCount":19,"integrity":"sha512-/gc3tKW7kJ8YS+i0kCQbVaA8BXgGSUcu3vr/EC9yz4cwwDyiYhvY7iSrN/5hHGeuvQ3pTBCEAkD0kQqBJ9vvdA==","signatures":[{"sig":"MEUCIQCZCbULIGphZ9CXOrRtYKqOBPChe+PHAHXgFv5D0TcOxQIgXQJ6uJCD+rYxdX7JRq9EeNHJiY5kRZy35zB/5qvgWG0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21874,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkJu8pACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrlGg//Z1+G6OG84vBqnkiu/2uzqGSJ6lYixMs7XxyECteAZbilPWtg\r\nbQHaoz0VN0GEP8ipXUY1PLKRZYK3LeWE2ttZi73+pFWjadRCr9NkFrm/JDqH\r\nVsBbhc7jxd4wr1AuwNoxTEgWHDhZBY5jGaKV9oWY/EGfHZznXKsDHp8/LCvZ\r\nrJnRjyitt7HPylVtKBYOx/PUPSYtfe7Spgb5q7qVwgJyR0J2EC1YqSqmnR8Z\r\nECFHMcWWPrsQdIdv7+Oj8wp6/BYejp3d7eaTOmbvxT7drXEpJ4QGZV8GeipW\r\nEHTNtZc50KReh1RYJAGJO5jl7Tzxsf6kat/pyfWEcwkmy9YDTlEf7OKkts5P\r\nFUK6YdGCP1UNb0N92VOaHDBxyHOZFt9WHLTaJ+gWgsiAD5ZP4qTq9UAETTWe\r\nhk+f8KzLdytx2z3C1bFjApqE7MIvM1s1iqOVkBDHPXc98CJtkBjfPA+V8dbJ\r\n+LiFU7ym8+seai5xeps8hg7aUkVxWAv1zr1ycZKBsKghgGofoVzlOSzcDa0K\r\n2G5EoprdQNnxAH806/FaSF9jSNUMUZ72x3teWUAekZTldo8Q9SS43/aEXjmX\r\nxSreZXtEyW5HoHlLSzGEIYvMBjlq4vHhEuZ63HzUY2dxzQm40ikHURlFv9te\r\nW3ZkYpHEhdTpuuOcJJYKK7uJ1n4cEU3wLqk=\r\n=r+GE\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"preset":"react-native","moduleFileExtensions":["ts","tsx","js","jsx","json","node"]},"main":"src/index.ts","types":"src/index.ts","gitHead":"d2c8aadc462af9fd52b65645fe34bd5cd356f634","scripts":{"test":"jest"},"_npmUser":{"name":"albeitreluctantly","email":"andrei.sizov94@hotmail.com"},"repository":{"url":"git+https://github.com/albeitreluctantly/react-native-appear-observer.git","type":"git"},"_npmVersion":"9.2.0","description":"Utility to check React Native node visibility on the screen.","directories":{},"_nodeVersion":"19.4.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","eslint":"^8.32.0","prettier":"2.8.3","babel-jest":"^29.4.1","typescript":"^4.8.3","@babel/core":"^7.12.9","@types/jest":"^29.4.0","@types/react":"^18.0.21","@babel/runtime":"^7.12.5","@types/react-native":"^0.70.0","react-test-renderer":"18.2.0","@tsconfig/react-native":"^2.0.2","@typescript-eslint/parser":"^5.37.0","eslint-plugin-react-hooks":"^4.6.0","@types/react-test-renderer":"^18.0.0","metro-react-native-babel-preset":"0.74.1","@typescript-eslint/eslint-plugin":"^5.37.0","@react-native-community/eslint-config":"^3.2.0"},"peerDependencies":{"react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/react-native-appear-observer_1.0.11_1680273193129_0.13193261854553895","host":"s3://npm-registry-packages"}},"2.0.0":{"name":"react-native-appear-observer","version":"2.0.0","keywords":["React","React Native","visibility","appearance","appear observer","react native intersection observer","element visibility"],"author":{"name":"Andrii Syzov"},"license":"MIT","_id":"react-native-appear-observer@2.0.0","maintainers":[{"name":"albeitreluctantly","email":"andrei.sizov94@hotmail.com"}],"homepage":"https://github.com/albeitreluctantly/react-native-appear-observer#readme","bugs":{"url":"https://github.com/albeitreluctantly/react-native-appear-observer/issues"},"dist":{"shasum":"130f04920da2d5eaa797e86f865594a89ac1c1bb","tarball":"https://registry.npmjs.org/react-native-appear-observer/-/react-native-appear-observer-2.0.0.tgz","fileCount":22,"integrity":"sha512-xJzvsdmW+6R+XakHAzoyv+gB8j5MGFivK5bsgcsz4MA44p/uKfSLkbiSmpAf5POGhX9nNvzgTnbZQ41M2/wTxw==","signatures":[{"sig":"MEUCIQDW2F0YyYewDTJR4VGc4/p9ZWQ+WBA8TUN74fGVHqhlIwIgM9IAt2sfHhZaQQg2SxxD7wa9BebeFOB6G947+0qEotM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":34656,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkKJbaACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqVdA/8DUAsm9RCawdk/y0obGYtwzAkfyFj4QuKOkWFE6FTY9iB8XrC\r\n6rUQv7N8m/DEL39QGfWQ1v2ZPjPNcO97nCuORF6LLNd4ZkU8haoFqAmaSJZk\r\nY7PaN6hj72hK5ip5KCKqJBzpG5Pud983U9dWsgSKwx0pq6DxW3q/3vBQw0be\r\nqRJsiRXzQplryqdivKI+3SCmf/BstWDXW41z3ClE7qEaOHkkF6iggkHjVlyz\r\nUPifZBdZac6YYBQpSjCregG2Px1FuLRfhTxRaN0lzGrGYNOywnfZCmjKnH6f\r\nQ1EUdRQglrtXQ86WVVKuREUyYjHxPkVgbVNX7LE9WsiVCHtsSLTqRYDnjMaU\r\nBo/KDjzorOCW17MUkGqrjqRLzHmKV0p0GCjF93mcL3XNmMrdw9Vrcgg3Ai4Z\r\nApdQWsBGHjuOiK27IMs4MHTVjjgnYK91P2hmAdzaum4YHy9L7KEM0BZSO+Ra\r\n0K35yjRgsH5W+f7SQH0GJQKutVuWDvDajkasgnt/V/dAwIfLl2UwXSuQC2s/\r\nqHXUu6ap+QI+T2tz4NGoSAbezuD2hQAp0dgfCBFMsLUNI5j2Lt2fC6eDNvcc\r\nHePVyNxheKyIBf+cgCSP6FkesVZiwXQ2W9I8EytSc8cvTiBCTZBpk0rE0PUg\r\nsVMGc8GHiKtIHjJKVV+UiLKSVELUW2HR+MA=\r\n=9NyA\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"preset":"react-native","moduleFileExtensions":["ts","tsx","js","jsx","json","node"]},"main":"src/index.ts","types":"src/index.ts","gitHead":"b561c2411cedb83553fcbd7522f4f9acf3b8bd22","scripts":{"test":"jest"},"_npmUser":{"name":"albeitreluctantly","email":"andrei.sizov94@hotmail.com"},"repository":{"url":"git+https://github.com/albeitreluctantly/react-native-appear-observer.git","type":"git"},"_npmVersion":"9.2.0","description":"Utility to check React Native node visibility on the screen.","directories":{},"_nodeVersion":"19.4.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","eslint":"^8.32.0","prettier":"2.8.3","babel-jest":"^29.4.1","typescript":"^4.8.3","@babel/core":"^7.12.9","@types/jest":"^29.4.0","@types/react":"^18.0.21","@babel/runtime":"^7.12.5","@types/react-native":"^0.70.0","react-test-renderer":"18.2.0","@tsconfig/react-native":"^2.0.2","@typescript-eslint/parser":"^5.37.0","eslint-plugin-react-hooks":"^4.6.0","@types/react-test-renderer":"^18.0.0","metro-react-native-babel-preset":"0.74.1","@typescript-eslint/eslint-plugin":"^5.37.0","@react-native-community/eslint-config":"^3.2.0"},"peerDependencies":{"react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/react-native-appear-observer_2.0.0_1680381658650_0.15796239487438957","host":"s3://npm-registry-packages"}},"2.0.1":{"name":"react-native-appear-observer","version":"2.0.1","keywords":["React","React Native","visibility","appearance","appear observer","react native intersection observer","element visibility"],"author":{"name":"Andrii Syzov"},"license":"MIT","_id":"react-native-appear-observer@2.0.1","maintainers":[{"name":"albeitreluctantly","email":"andrei.sizov94@hotmail.com"}],"homepage":"https://github.com/albeitreluctantly/react-native-appear-observer#readme","bugs":{"url":"https://github.com/albeitreluctantly/react-native-appear-observer/issues"},"dist":{"shasum":"3dca245fd686d8669bf6382ec8ef98db54953ba2","tarball":"https://registry.npmjs.org/react-native-appear-observer/-/react-native-appear-observer-2.0.1.tgz","fileCount":35,"integrity":"sha512-aG61MYy3iqJsYCYBf7/hWteKZWbM00I95Ni52L0Ymym02rEDeCJXOrzPJEE+jvDznp3FsoJyYuuwlWqee0s25w==","signatures":[{"sig":"MEUCIHW6DCKZiLUFrwYCOWLUsZf/F+MORsEwMD4WbeRkVu2oAiEAzIpDLhf9e+BbUe6Wz8IhXopI9UMihmDEbXzOMlNlO34=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":74503,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkKbMeACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr5SxAAm2q4yV3AQ6YKA9z6HRuZzW7emMXUtzKPCCYBiS+s15hXJ/OJ\r\nHH9LMGEarIZSta2lZkzTC4MjdJ3Yp8NDbgf0q4euG1fsp/MWi+LZ7SksONP/\r\nNxDxOnQHdhkfh+dxmtBqiXoN8pm4fMoXj9rTeqm6Y7my5IsI2ytNqAqIZLOn\r\nivJd8BRvbqcJ483zT+NDBUqFAf3oGhgPJCBJVl6B7mbkE6kVyrIUVIUkHyHY\r\n7DGfDk5oTJuzmnUInuUYvAHaC1C439ux9YpGiM+cqBftSth8DMgSjRsxc3iW\r\nyncy4Z6k7WUJ8CUDkwBMThxzsQ19mZz6FELMXSretN+pOuT3UnP/nMIuOvik\r\nPhUyTEtveMvqjCwvS2N20PKq9DNs7uzC5bUagoSHrzsAC4QnT3aRPpQiKIWw\r\nEpT5DKKhx4T22nEP0pJYU2hOTpbHPE8/9eDVGX9R6tw+6pZ5fVxgGg60EEOX\r\n6RtkRmg6SvdasGfGUB+FPq3hNtgrmUgDa4LbrKxRwTnntyZJTncQAV03+h9G\r\n1Y/wfViI2SCuJM26yo1BZYEVvPTctxoDBXjfk6ecM8dhgetyGs9TcZvs3VzK\r\nMhsSSKfFZGVee4ZZd0Gat0ZsZAxAGmsmnfOxMaWwYNHWRqqVVSlkBOJ8bC8e\r\nsLnlYppzhZs9vZN5/zgGZlOIag32PCFQrn0=\r\n=R9RN\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"preset":"react-native","moduleFileExtensions":["ts","tsx","js","jsx","json","node"],"modulePathIgnorePatterns":["/node_modules"]},"main":"src/index.ts","types":"src/index.ts","gitHead":"fd0f5e2570dc7fd4458f49017889175ae2856c04","scripts":{"test":"jest"},"_npmUser":{"name":"albeitreluctantly","email":"andrei.sizov94@hotmail.com"},"repository":{"url":"git+https://github.com/albeitreluctantly/react-native-appear-observer.git","type":"git"},"_npmVersion":"9.2.0","description":"Utility to check React Native node visibility on the screen.","directories":{},"_nodeVersion":"19.4.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","react":"18.1.0","eslint":"^8.32.0","prettier":"2.8.3","babel-jest":"^29.4.1","typescript":"^4.8.3","@babel/core":"^7.12.9","@types/jest":"^29.4.0","@types/react":"^18.0.21","react-native":"0.70.5","@babel/runtime":"^7.12.5","@types/react-native":"^0.70.0","react-test-renderer":"18.2.0","@tsconfig/react-native":"^2.0.2","@typescript-eslint/parser":"^5.37.0","eslint-plugin-react-hooks":"^4.6.0","@types/react-test-renderer":"^18.0.0","metro-react-native-babel-preset":"0.74.1","@typescript-eslint/eslint-plugin":"^5.37.0","@react-native-community/eslint-config":"^3.2.0"},"peerDependencies":{"react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/react-native-appear-observer_2.0.1_1680454430190_0.37242112963535123","host":"s3://npm-registry-packages"}},"2.0.2":{"name":"react-native-appear-observer","version":"2.0.2","keywords":["React","React Native","visibility","appearance","appear observer","react native intersection observer","element visibility"],"author":{"name":"Andrii Syzov"},"license":"MIT","_id":"react-native-appear-observer@2.0.2","maintainers":[{"name":"albeitreluctantly","email":"andrii.s732@icloud.com"}],"homepage":"https://github.com/albeitreluctantly/react-native-appear-observer#readme","bugs":{"url":"https://github.com/albeitreluctantly/react-native-appear-observer/issues"},"dist":{"shasum":"ece2a636bca09569e9778f191cdc5705ac17c31f","tarball":"https://registry.npmjs.org/react-native-appear-observer/-/react-native-appear-observer-2.0.2.tgz","fileCount":24,"integrity":"sha512-dvh0ay4lujXUeaHHm1X27XJhvcV14yVf+HcrfmyaqTkuBJ0gEt4w5RHJqVxtW0h8mHcd1tpJ9DmVObASCN71BQ==","signatures":[{"sig":"MEYCIQCfFRCTm0PrL9RquB1RK+wbyqu6BHRCaKaP4pCze9+LpgIhAP7Fvqc19ZF4S5i7W0m/aWXZFWruTaepuDPstayaFPOS","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":37302},"jest":{"preset":"react-native","moduleFileExtensions":["ts","tsx","js","jsx","json","node"],"modulePathIgnorePatterns":["/node_modules"]},"main":"src/index.ts","types":"src/index.ts","gitHead":"4e635221f9306efdba5d51b489efd8746f6f9599","scripts":{"test":"jest"},"_npmUser":{"name":"albeitreluctantly","email":"andrii.s732@icloud.com"},"repository":{"url":"git+https://github.com/albeitreluctantly/react-native-appear-observer.git","type":"git"},"_npmVersion":"9.2.0","description":"Utility to check React Native node visibility on the screen.","directories":{},"_nodeVersion":"19.4.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","react":"18.1.0","eslint":"^8.32.0","prettier":"2.8.3","babel-jest":"^29.4.1","typescript":"^4.8.3","@babel/core":"^7.12.9","@types/jest":"^29.4.0","@types/react":"^18.0.21","react-native":"0.70.5","@babel/runtime":"^7.12.5","@types/react-native":"^0.70.0","react-test-renderer":"18.2.0","@tsconfig/react-native":"^2.0.2","@typescript-eslint/parser":"^5.37.0","eslint-plugin-react-hooks":"^4.6.0","@types/react-test-renderer":"^18.0.0","metro-react-native-babel-preset":"0.74.1","@typescript-eslint/eslint-plugin":"^5.37.0","@react-native-community/eslint-config":"^3.2.0"},"peerDependencies":{"react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/react-native-appear-observer_2.0.2_1707660408809_0.0003380183902561562","host":"s3://npm-registry-packages"}},"2.1.0":{"name":"react-native-appear-observer","version":"2.1.0","keywords":["React","React Native","visibility","appearance","appear observer","react native intersection observer","element visibility"],"author":{"name":"Andrii Syzov"},"license":"MIT","_id":"react-native-appear-observer@2.1.0","maintainers":[{"name":"albeitreluctantly","email":"andrii.s732@icloud.com"}],"homepage":"https://github.com/albeitreluctantly/react-native-appear-observer#readme","bugs":{"url":"https://github.com/albeitreluctantly/react-native-appear-observer/issues"},"dist":{"shasum":"8ba62b7f04d6ac1690e30aa222815e395512f793","tarball":"https://registry.npmjs.org/react-native-appear-observer/-/react-native-appear-observer-2.1.0.tgz","fileCount":24,"integrity":"sha512-K5QomhZmr38kp98U/0CAVi5pDGzhCdNrIxe9lcV8x9lL5DTsuooKcQVmGCWUC4J0fvdX+CSJoYqUAtrNLURh+w==","signatures":[{"sig":"MEUCICykKdLApQ4rGKblL0kdMigIkWdk/OlKyRwURLJiEbx3AiEAkMPLZykPNrDQjdEOt8BTFpUQ/RnXgkFpvWoSS4DYVpQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":37369},"jest":{"preset":"react-native","moduleFileExtensions":["ts","tsx","js","jsx","json","node"],"modulePathIgnorePatterns":["/node_modules"]},"main":"src/index.ts","types":"src/index.ts","gitHead":"9cc4551b0f218cbef578fa5d54cc577007673337","scripts":{"test":"jest"},"_npmUser":{"name":"albeitreluctantly","email":"andrii.s732@icloud.com"},"repository":{"url":"git+https://github.com/albeitreluctantly/react-native-appear-observer.git","type":"git"},"_npmVersion":"9.2.0","description":"Utility to check React Native node visibility on the screen.","directories":{},"_nodeVersion":"19.4.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","react":"18.2.0","eslint":"^8.32.0","prettier":"2.8.3","babel-jest":"^29.7.0","typescript":"^4.8.3","@babel/core":"^7.23.9","@types/jest":"^29.5.12","@types/react":"^18.2.0","react-native":"0.72.5","@babel/runtime":"^7.23.9","react-test-renderer":"18.2.0","@tsconfig/react-native":"^3.0.3","@typescript-eslint/parser":"^5.37.0","eslint-plugin-react-hooks":"^4.6.0","@types/react-test-renderer":"^18.0.7","metro-react-native-babel-preset":"0.76.8","@typescript-eslint/eslint-plugin":"^5.37.0","@react-native-community/eslint-config":"^3.2.0"},"peerDependencies":{"react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/react-native-appear-observer_2.1.0_1707664750554_0.4549917057020787","host":"s3://npm-registry-packages"}},"2.1.1":{"name":"react-native-appear-observer","version":"2.1.1","keywords":["React","React Native","visibility","appearance","appear observer","react native intersection observer","element visibility"],"author":{"name":"Andrii Syzov"},"license":"MIT","_id":"react-native-appear-observer@2.1.1","maintainers":[{"name":"albeitreluctantly","email":"andrii.s732@icloud.com"}],"homepage":"https://github.com/albeitreluctantly/react-native-appear-observer#readme","bugs":{"url":"https://github.com/albeitreluctantly/react-native-appear-observer/issues"},"dist":{"shasum":"d2ad0a2079274673d6edea6d94beb7256709c561","tarball":"https://registry.npmjs.org/react-native-appear-observer/-/react-native-appear-observer-2.1.1.tgz","fileCount":24,"integrity":"sha512-4uqUXKfgkLa7TzZJMwbY6QiMIEPD5xcaD7ZSIf7y9p6rukHVklkkAhMp2THnyg+zg69Ihh8TF+LxUK5dYElYhA==","signatures":[{"sig":"MEYCIQDG1TCmxxxnsfW6nUGb5/M4CfEhjW7xyGTkX/qZR9Q64gIhAN+0c0OPmQNbBX2JbgnVCKDIrR5xZA0XLbXubLQucClc","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":37364},"jest":{"preset":"react-native","moduleFileExtensions":["ts","tsx","js","jsx","json","node"],"modulePathIgnorePatterns":["/node_modules"]},"main":"src/index.ts","types":"src/index.ts","gitHead":"5d1a4d8bc79849ac92265894b9b5b7f893fe796c","scripts":{"test":"jest"},"_npmUser":{"name":"albeitreluctantly","email":"andrii.s732@icloud.com"},"repository":{"url":"git+https://github.com/albeitreluctantly/react-native-appear-observer.git","type":"git"},"_npmVersion":"9.2.0","description":"Utility to check React Native node visibility on the screen.","directories":{},"_nodeVersion":"19.4.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","react":"18.2.0","eslint":"^8.32.0","prettier":"2.8.3","babel-jest":"^29.7.0","typescript":"^4.8.3","@babel/core":"^7.23.9","@types/jest":"^29.5.12","@types/react":"^18.2.0","react-native":"0.72.5","@babel/runtime":"^7.23.9","react-test-renderer":"18.2.0","@tsconfig/react-native":"^3.0.3","@typescript-eslint/parser":"^5.37.0","eslint-plugin-react-hooks":"^4.6.0","@types/react-test-renderer":"^18.0.7","metro-react-native-babel-preset":"0.76.8","@typescript-eslint/eslint-plugin":"^5.37.0","@react-native-community/eslint-config":"^3.2.0"},"peerDependencies":{"react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/react-native-appear-observer_2.1.1_1713623586997_0.5803579151475358","host":"s3://npm-registry-packages"}},"2.1.2":{"name":"react-native-appear-observer","version":"2.1.2","keywords":["React","React Native","visibility","appearance","appear observer","react native intersection observer","element visibility"],"author":{"name":"Andrii Syzov"},"license":"MIT","_id":"react-native-appear-observer@2.1.2","maintainers":[{"name":"albeitreluctantly","email":"andrii.s732@icloud.com"}],"homepage":"https://github.com/albeitreluctantly/react-native-appear-observer#readme","bugs":{"url":"https://github.com/albeitreluctantly/react-native-appear-observer/issues"},"dist":{"shasum":"952566f4bc6e81c1b1f3e4a4ea20d5b0203f0247","tarball":"https://registry.npmjs.org/react-native-appear-observer/-/react-native-appear-observer-2.1.2.tgz","fileCount":24,"integrity":"sha512-AR7TVtUfpP04qVSNEXvd4TukZ3p0eG7DcoajZp0G3V47KiRz48b+BBGIxz4YK+/Uh3sMedNcHv8h6GCOd7gMQw==","signatures":[{"sig":"MEYCIQDt+u02KMi16SVWvC+VDRoSXVA/Ms2NaWOX6NPX105TSAIhAKmSI4ScNp74QT5RkECSxsB7QUcQFh/oViBMmWfqaaQ9","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50666},"jest":{"preset":"react-native","moduleFileExtensions":["ts","tsx","js","jsx","json","node"],"modulePathIgnorePatterns":["/node_modules"]},"main":"src/index.ts","types":"src/index.ts","gitHead":"f7d22f348f465cfb6f8dd3c1a6e50ff3a853806d","scripts":{"test":"jest"},"_npmUser":{"name":"albeitreluctantly","email":"andrii.s732@icloud.com"},"repository":{"url":"git+https://github.com/albeitreluctantly/react-native-appear-observer.git","type":"git"},"_npmVersion":"10.5.2","description":"Utility to check React Native node visibility on the screen.","directories":{},"_nodeVersion":"20.13.1","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","react":"18.2.0","eslint":"^8.32.0","prettier":"2.8.3","babel-jest":"^29.7.0","typescript":"^4.8.3","@babel/core":"^7.23.9","@types/jest":"^29.5.12","@types/react":"^18.2.0","react-native":"0.72.5","@babel/runtime":"^7.23.9","react-test-renderer":"18.2.0","@tsconfig/react-native":"^3.0.3","@typescript-eslint/parser":"^5.37.0","eslint-plugin-react-hooks":"^4.6.0","@types/react-test-renderer":"^18.0.7","metro-react-native-babel-preset":"0.76.8","@typescript-eslint/eslint-plugin":"^5.37.0","@react-native-community/eslint-config":"^3.2.0"},"peerDependencies":{"react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/react-native-appear-observer_2.1.2_1718385832855_0.3988862071024828","host":"s3://npm-registry-packages"}},"2.1.5":{"name":"react-native-appear-observer","version":"2.1.5","keywords":["React","React Native","visibility","appearance","appear observer","react native intersection observer","element visibility"],"author":{"name":"Andrii Syzov"},"license":"MIT","_id":"react-native-appear-observer@2.1.5","maintainers":[{"name":"albeitreluctantly","email":"andrii.s735c@outlook.com"}],"homepage":"https://github.com/albeitreluctantly/react-native-appear-observer#readme","bugs":{"url":"https://github.com/albeitreluctantly/react-native-appear-observer/issues"},"dist":{"shasum":"c11926ff12ab2f3afffeac85b64c4f2a30e3ad58","tarball":"https://registry.npmjs.org/react-native-appear-observer/-/react-native-appear-observer-2.1.5.tgz","fileCount":59,"integrity":"sha512-1pXiSujePhnHptaBuwxYZzNRIalLIVw5OWfIMNxz6IygN3GJwslIr9UIHmm7FQXDrvvTVtWI/7rYPpTugwOwcg==","signatures":[{"sig":"MEQCIA3GZXGLG+zz72CdRhYlgGC3JwI7kz0xb7wVIsuwvWtrAiBW0W5mhyQIhVZoqn1UHMdvycCWuUf1z6/0bH3ef0PX2g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":146571},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"3620a751c43ce316a6c4f0691664f02278c09b5f","scripts":{"lint":"npx eslint && npx tsc","test":"jest"},"_npmUser":{"name":"albeitreluctantly","email":"andrii.s735c@outlook.com"},"repository":{"url":"git+https://github.com/albeitreluctantly/react-native-appear-observer.git","type":"git"},"_npmVersion":"10.9.2","description":"Utility to check React Native node visibility on the screen.","directories":{},"_nodeVersion":"22.15.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","react":"18.2.0","eslint":"^8.32.0","ts-jest":"^29.3.4","prettier":"2.8.3","typescript":"^4.8.3","@types/jest":"^29.5.12","@types/react":"^18.2.0","react-native":"0.72.5","react-test-renderer":"18.2.0","@typescript-eslint/parser":"^5.37.0","eslint-plugin-react-hooks":"^4.6.0","@types/react-test-renderer":"^18.0.7","@typescript-eslint/eslint-plugin":"^5.37.0","@react-native-community/eslint-config":"^3.2.0"},"peerDependencies":{"react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/react-native-appear-observer_2.1.5_1748119361037_0.6159300295572778","host":"s3://npm-registry-packages-npm-production"}},"2.1.6":{"name":"react-native-appear-observer","version":"2.1.6","keywords":["React","React Native","visibility","appearance","appear observer","react native intersection observer","element visibility"],"author":{"name":"Andrii Syzov"},"license":"MIT","_id":"react-native-appear-observer@2.1.6","maintainers":[{"name":"albeitreluctantly","email":"andrii.s735c@outlook.com"}],"homepage":"https://github.com/albeitreluctantly/react-native-appear-observer#readme","bugs":{"url":"https://github.com/albeitreluctantly/react-native-appear-observer/issues"},"dist":{"shasum":"36a725c4c12a80c9739c3aafc325991890099b12","tarball":"https://registry.npmjs.org/react-native-appear-observer/-/react-native-appear-observer-2.1.6.tgz","fileCount":59,"integrity":"sha512-BFLgb3i3lm8ZrpTsHdU5aERWCqocFTnBoDdWWfyjuR6WWUBk40BM9BCwrNXD1l/9/ecRD0i3uYjC7sil3l4dhw==","signatures":[{"sig":"MEUCIQDj31gmTIpCgWUVVrScZKr8oIE2DspMGvfcmb9VqzGRYAIgKF18K6mW0psdAYD9k3cmrbo24Lcx+fxHcMbgSK0ksac=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":150011},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"db8fcb97893ea028fc076e989d8bf0bce3dd9af5","scripts":{"lint":"npx eslint && npx tsc","test":"jest"},"_npmUser":{"name":"albeitreluctantly","email":"andrii.s735c@outlook.com"},"repository":{"url":"git+https://github.com/albeitreluctantly/react-native-appear-observer.git","type":"git"},"_npmVersion":"10.9.2","description":"Utility to check React Native node visibility on the screen.","directories":{},"_nodeVersion":"22.15.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","react":"18.2.0","eslint":"^8.32.0","ts-jest":"^29.3.4","prettier":"2.8.3","typescript":"^4.8.3","@types/jest":"^29.5.12","@types/react":"^18.2.0","react-native":"0.72.5","react-test-renderer":"18.2.0","@typescript-eslint/parser":"^5.37.0","eslint-plugin-react-hooks":"^4.6.0","@types/react-test-renderer":"^18.0.7","@typescript-eslint/eslint-plugin":"^5.37.0","@react-native-community/eslint-config":"^3.2.0"},"peerDependencies":{"react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/react-native-appear-observer_2.1.6_1756984921698_0.8241411529428144","host":"s3://npm-registry-packages-npm-production"}},"2.1.7":{"name":"react-native-appear-observer","version":"2.1.7","keywords":["React","React Native","visibility","appearance","appear observer","react native intersection observer","element visibility"],"author":{"name":"Andrii Syzov"},"license":"MIT","_id":"react-native-appear-observer@2.1.7","maintainers":[{"name":"albeitreluctantly","email":"andrii.s735c@outlook.com"}],"homepage":"https://github.com/albeitreluctantly/react-native-appear-observer#readme","bugs":{"url":"https://github.com/albeitreluctantly/react-native-appear-observer/issues"},"dist":{"shasum":"9fe5f0ba5312354122374b61c979f2a6ce52c052","tarball":"https://registry.npmjs.org/react-native-appear-observer/-/react-native-appear-observer-2.1.7.tgz","fileCount":59,"integrity":"sha512-/ncKNaBIxunb6GTB0dbqbF6uW7+doEb+C5+uEGXX27ClxJw985X5SCYwOiXJpGsmwWFYtp22UCegJuzm57i48A==","signatures":[{"sig":"MEQCIGb+h93PashEL3KMUscMcHnNQ+ooHL2McRWcwmZfXZAAAiAd91fXBFLNdRGqEIr9da+lwxWU14gw/2eVIE8Vr4okug==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":149978},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"e8ec3fffe099a1464f0921e56d6aad3d6e5238b5","scripts":{"lint":"npx eslint && npx tsc","test":"jest"},"_npmUser":{"name":"albeitreluctantly","email":"andrii.s735c@outlook.com"},"repository":{"url":"git+https://github.com/albeitreluctantly/react-native-appear-observer.git","type":"git"},"_npmVersion":"10.9.2","description":"Utility to check React Native node visibility on the screen.","directories":{},"_nodeVersion":"22.15.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","react":"18.2.0","eslint":"^8.32.0","ts-jest":"^29.3.4","prettier":"2.8.3","typescript":"^4.8.3","@types/jest":"^29.5.12","@types/react":"^18.2.0","react-native":"0.72.5","react-test-renderer":"18.2.0","@typescript-eslint/parser":"^5.37.0","eslint-plugin-react-hooks":"^4.6.0","@types/react-test-renderer":"^18.0.7","@typescript-eslint/eslint-plugin":"^5.37.0","@react-native-community/eslint-config":"^3.2.0"},"peerDependencies":{"react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/react-native-appear-observer_2.1.7_1756993477270_0.8109456218193258","host":"s3://npm-registry-packages-npm-production"}},"2.1.8":{"name":"react-native-appear-observer","version":"2.1.8","description":"Utility to check React Native node visibility on the screen.","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"test":"jest","lint":"npx eslint && npx tsc"},"repository":{"type":"git","url":"git+https://github.com/albeitreluctantly/react-native-appear-observer.git"},"keywords":["React","React Native","visibility","appearance","appear observer","react native intersection observer","element visibility"],"author":{"name":"Andrii Syzov"},"license":"MIT","bugs":{"url":"https://github.com/albeitreluctantly/react-native-appear-observer/issues"},"homepage":"https://github.com/albeitreluctantly/react-native-appear-observer#readme","devDependencies":{"@react-native-community/eslint-config":"^3.2.0","@types/jest":"^29.5.12","@types/react":"^18.2.0","@types/react-test-renderer":"^18.0.7","@typescript-eslint/eslint-plugin":"^5.37.0","@typescript-eslint/parser":"^5.37.0","eslint":"^8.32.0","eslint-plugin-react-hooks":"^4.6.0","jest":"^29.7.0","prettier":"2.8.3","react":"18.2.0","react-native":"0.72.5","react-test-renderer":"18.2.0","ts-jest":"^29.3.4","typescript":"^4.8.3"},"peerDependencies":{"react":"*","react-native":"*"},"_id":"react-native-appear-observer@2.1.8","gitHead":"5cac8e88b4852efa39be681c5dc13a983fc32ce5","_nodeVersion":"22.15.0","_npmVersion":"10.9.2","dist":{"integrity":"sha512-uJ7gDLTSQnZ+U3Jl/UmH0IdtQw1sn7R4Kc90t1aLK5PNIkQbBrA8CICM+ULqBxaE373d9Gf7hjKJlR84xQahQg==","shasum":"bb98b55bbbcbd04dfff533805c9bb5a87280db4c","tarball":"https://registry.npmjs.org/react-native-appear-observer/-/react-native-appear-observer-2.1.8.tgz","fileCount":59,"unpackedSize":149940,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIHjsKdAWOBmtSnD/VjeLNgSK7uOAQhJ3K0Gwf8j2G+b4AiEAhfMjYtm/3/4MvMJOB/NRBrmGc3EHeg0jah3qJL68AdA="}]},"_npmUser":{"name":"albeitreluctantly","email":"andrii.s735c@outlook.com"},"directories":{},"maintainers":[{"name":"albeitreluctantly","email":"andrii.s735c@outlook.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/react-native-appear-observer_2.1.8_1756993683323_0.6153225034641843"},"_hasShrinkwrap":false}},"time":{"created":"2023-02-05T21:16:00.084Z","modified":"2025-09-04T13:48:03.691Z","1.0.0":"2023-02-02T21:50:19.618Z","1.0.1":"2023-02-05T21:16:00.278Z","1.0.2":"2023-02-05T21:22:22.353Z","1.0.3":"2023-02-05T21:36:49.069Z","1.0.4":"2023-03-08T20:45:02.116Z","1.0.5":"2023-03-30T07:24:41.488Z","1.0.6":"2023-03-30T12:48:01.505Z","1.0.7":"2023-03-31T03:52:52.084Z","1.0.8":"2023-03-31T07:10:26.687Z","1.0.9":"2023-03-31T07:56:00.168Z","1.0.10":"2023-03-31T14:08:37.034Z","1.0.11":"2023-03-31T14:33:13.296Z","2.0.0":"2023-04-01T20:40:58.837Z","2.0.1":"2023-04-02T16:53:50.331Z","2.0.2":"2024-02-11T14:06:48.974Z","2.1.0":"2024-02-11T15:19:10.697Z","2.1.1":"2024-04-20T14:33:07.176Z","2.1.2":"2024-06-14T17:23:53.028Z","2.1.3":"2025-05-20T19:42:48.472Z","2.1.4":"2025-05-22T13:29:48.580Z","2.1.5":"2025-05-24T20:42:41.219Z","2.1.6":"2025-09-04T11:22:01.913Z","2.1.7":"2025-09-04T13:44:37.471Z","2.1.8":"2025-09-04T13:48:03.509Z"},"bugs":{"url":"https://github.com/albeitreluctantly/react-native-appear-observer/issues"},"author":{"name":"Andrii Syzov"},"license":"MIT","homepage":"https://github.com/albeitreluctantly/react-native-appear-observer#readme","keywords":["React","React Native","visibility","appearance","appear observer","react native intersection observer","element visibility"],"repository":{"type":"git","url":"git+https://github.com/albeitreluctantly/react-native-appear-observer.git"},"description":"Utility to check React Native node visibility on the screen.","maintainers":[{"name":"albeitreluctantly","email":"andrii.s735c@outlook.com"}],"readme":"<picture>\n  <source media=\"(prefers-color-scheme: light)\" srcset=\"https://github.com/albeitreluctantly/react-native-appear-observer/assets/54374036/16182f08-da07-405e-9db7-0d64f1a36b49\">\n  <source media=\"(prefers-color-scheme: dark)\" srcset=\"https://github.com/albeitreluctantly/react-native-appear-observer/assets/54374036/a0085544-c356-4700-b9da-b958c6d5d623\">\n  <img alt=\"react-native-appear-observer\" src=\"https://github.com/albeitreluctantly/react-native-appear-observer/assets/54374036/16182f08-da07-405e-9db7-0d64f1a36b49\">\n</picture>\n</br>\n</br>\n\n<p>A React Native library that helps to track the appearance of an element on the screen.</p>\n\n<h2>Description</h2>\n\n<p>The library's functionality is based on the loop that measures element's position on the screen and looks if it lies within the boundaries of the designated parent.</p>\n<p>The loop is intended to operate only when user interaction has happened. This is achieved by attaching interaction event listeners to the parent element relative to which the tracking is performed. When app goes idle the loop stops after a delay.</p>\n<p>API is designed in a way that provides easy basic usage without boilerplate and cluttering the code, for that all components try to make their setup and all necessary attachments automatic.</p>\n<p>The basic intended usage implies setting a ScrollView or any List component as parent and tracking the element relative to it.</p>\n<p>As well the library allows other types of usage and provides a wide variety of settings and customizations to cover different usage scenarios.</p>\n<p>Among the options are:</p>\n\n<ul>\n  <li>Ability to use with and without a context wrapping the parent element.</li>\n  <li>To set custom threshold for element's appearance, in percents of the element's size.</li>\n  <li>To record custom interactions as such that trigger the start of the tracking.</li>\n  <li>To disable interaction mode and run the loop indefinitely, as well as an ability to manually start and stop it.</li>\n  <li>Usage without a parent, with tracking relative to the screen, and an option to set static offsets from the screen boundaries.</li>\n  <li>Different optimizations like ability to set a custom delay between the loop cycles, disable parent boundaries recalculation.</li>\n</ul>\n\n<h2>Usage</h2>\n\n<h3>Basic</h3>\n<p>All setup options, except for measuring relative to window, consist of two steps: setting parent component relative to which the tracking will be performed and child observed components.</p>\n\n<h4>Interaction mode with provider</h4>\n<p>Wrap the parent component with provider. The provider will attach all necessary props automatically to its child component and does not require any configuration in basic setup. Works perfectly with ScrollView and virtualized lists.</p>\n<p>Set up the useAppearObserver hook for the element you want to track and pass it the props returned by the hook. It attaches a ref to the component, based on which the measurement will run, and adds specific props to prevent the element from collapsing which prevents measurement and tracking.</p>\n\n```tsx\n\nconst App = () => {\n  return (\n    <AppearObserverProvider>\n      <ScrollView>\n        <TrackedComponent />\n      </ScrollView>\n    </AppearObserverProvider>\n  )\n}\n\nconst TrackedComponent = () => {\n  const { refProps } = useAppearObserver({ \n    onAppear: useCallback(() => console.log('Hola!'), []) \n  })\n\n  return <View { ...refProps } />\n}\n```\n\n<h4>Interaction mode without provider</h4>\n<p>Attach ref and interaction handlers to the parent component, pass interaction listeners and parent ref to the tracked component.</p>\n\n```tsx\nconst App = () => {\n  const scrollViewRef = useRef()\n  const { interactionHandlers, interactionListeners } = useInteractionManager()\n\n  return (\n    <ScrollView ref={scrollViewRef} { ...interactionHandlers }>\n      <TrackedComponent parentRef={scrollViewRef} interactionListeners={interactionListeners} />\n    </ScrollView>\n  )\n}\n\nconst TrackedComponent = ({ parentRef, interactionListeners }: any) => {\n  const { refProps } = useAppearObserver({\n    parentRef,\n    interactionListeners,\n    onAppear: useCallback(() => console.log('Hi there!'), [])\n  })\n\n  return <View {...refProps} />\n}\n```\n\n<h4>Static mode with measurement relative to parent</h4>\n<p>Attach ref to the parent component. Pass parent ref to the observed component. Set <i>interactionModeEnabled</i> to false.</p>\n\n```tsx\nconst App = () => {\n  const scrollViewRef = useRef()\n\n  return (\n    <ScrollView ref={scrollViewRef}>\n      <TrackedComponent parentRef={scrollViewRef} />\n    </ScrollView>\n  )\n}\n\nconst TrackedComponent = ({ parentRef }: any) => {\n  const { refProps } = useAppearObserver({\n    parentRef,\n    onAppear: useCallback(() => console.log('Hi there!'), []),\n    options: {\n      interactionModeEnabled: false,\n    }\n  })\n\n  return <View {...refProps} />\n}\n```\n\n<h4>Static mode with measurement relative to window</h4>\n<p>Set up useAppearObserver with <i>useScreenIfNoParent</i> set to true. This mode also supports <b>parentOffsets</b>.</p>\n\n```tsx\nconst App = () => {\n  return (\n    <ScrollView>\n      <TrackedComponent />\n    </ScrollView>\n  )\n}\n\nconst TrackedComponent = () => {\n  const { refProps } = useAppearObserver({\n    onAppear: useCallback(() => console.log('Hi there!'), []),\n    options: {\n      interactionModeEnabled: false,\n      useScreenIfNoParent: true,\n    }\n  })\n\n  return <View {...refProps} />\n}\n```\n\n<h3>Specific cases</h3>\n\n> [!IMPORTANT]\n><h4>Usage with FlatList</h4>\n><b>Option1:</b>\n><p>Set checkDetachedElements to true.</p>\n><b>Option2:</b>\n><p>Set removeClippedSubviews to false for the list.</p>\n><p>Wrap it with a View and attach parentRef to the View, not the list.</p>\n\n<h4>Usage with react navigation</h4>\n<p>Set 'enabled' flag to isFocused from React Navigation. By default, the loop stops when the screen goes out of focus and won't start again otherwise, so it's necessary to start it manually.</p>\n<p>Depending on your needs, as an option, you may choose to pass <b>onDisappear</b> callback to the <b>onDisable</b> slot. This way the the hook will report disappearance when screen goes out of focus and the tracked element becomes not visible.</p>\n\n```tsx\nconst TrackedElement = ({ onAppear, onDisappear }: any) => {\n  const isFocused = useIsFocused()\n\n  const { refProps } = useAppearObserver({\n    enabled: isFocused,\n    onAppear,\n    onDisappear,\n    onDisable: onDisappear // Optional\n  })\n\n  return <View {...refProps} style={elementStyle} />\n}\n```\n<h4>Custom interaction handlers setup</h4>\n<p>This example shows how to use provider component's support of children as render prop to manually assign all necessary props to the underlying components.</p>\n<p>The same can be achieved without the usage of provider, by following the example in the <b>Interaction mode without provider</b> section.</p>\n<p>This is useful when you need set custom component as parent, set some actions as interaction start/end for the tracking loop, for example clicking a 'Scroll to top' button.</p>\n<p>The example shows all possible props the provider gives, you can pick only what you need and spread the rest.</p>\n\n```tsx\nconst App = () => {\n  return (\n    <AppearObserverProvider>\n      {\n        ({ \n           collapsable, \n           onLayout, \n           onScroll, \n           onScrollBeginDrag, \n           onScrollEndDrag, \n           onTouchStart, \n           onTouchEnd, \n           onTouchMove, \n           onTouchCancel, \n           onMomentumScrollEnd,\n           interactionRecorders,\n        }) => (\n          <>\n            <ScrollView \n              collapsable={collapsable} \n              onLayout={onLayout}\n              onScrollBeginDrag={onScrollBeginDrag}\n              onScrollEndDrag={onScrollEndDrag}\n              onTouchStart={onTouchStart}\n              onTouchEnd={onTouchEnd}\n              onTouchMove={onTouchMove}\n              onTouchCancel={onTouchCancel}\n              onMomentumScrollEnd={onMomentumScrollEnd}\n            >\n              <TrackedComponent />\n            </ScrollView>\n            <ActionButton title=\"Scroll to top\" onPress={() => {\n              interactionRecorders.recordInteractionStart()\n              scrollToTop()\n            }} />\n          </>\n        )\n      }\n    </AppearObserverProvider>\n  )\n}\n```\n\n<h2>Optimisations</h2>\n<p>There are a few technics to optimize the tracking loop.</p>\n<ul>\n  <li><b>recalculateParentBoundaries</b> can be set to <b>false</b> if the parent component's size and position, or the component itself, doesn't change. The observer will cache the first measured boundaries in this case.</li>\n  <li><b>intervalDelay</b> can be adjusted for less frequent loop cycles.</li>\n  <li><b>enabled</b> can be set to <b>false</b> when tracking becomes unnecessary.</li>\n</ul>\n\n<h2>API</h2>\n<h3>useAppearObserver</h3>\n<p>The core hook that performs tracking of the component by running a loop measuring the component's position.</p>\n<h4>Props</h4>\n\n| Prop                   | Description                                                                                                                                                                                    | Default value |\n|------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------|\n| _elementRef_           | External ref to use instead of the one created by the hook. Use if you need to work with the tracked element by ref. No ref merging happens, the external one overrides the internal default.  | -             |\n| _parentRef_            | Optional props for usage without context. Provides parent element ref directly to the hook, overrides the ref supplied by context.                                                             | -             |\n| _onAppear_             | Callback that triggers when the element comes into visibility.                                                                                                                                 | -             |\n| _onDisappear_          | Callback that triggers when the element disappears.                                                                                                                                            | -             |\n| _onEnable_             | Callback that fires when tracking gets enabled.                                                                                                                                                | -             |\n| _onDisable_            | Callback that fires when tracking gets disabled.                                                                                                                                               | -             |\n| _enabled_              | Flag which toggles tracking on and off. Useful when tracking needs to be reset, like in case with react navigation.                                                                            | true          |\n| _interactionListeners_ | Slot for interaction listeners passed from parent, for usage without context.                                                                                                                  | -             |\n\n<h4>Options</h4>\n\n| Option                        | Description                                                                                                                                             | Default value     |\n|-------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------|\n| _visibilityThreshold_         | Defines what part of an element should be visible for it to trigger callback, from 0 to 1.                                                              | 0.001             |\n| _intervalDelay_               | Determines a delay in milliseconds between visibility check repetitions.                                                                                | 50                |\n| _recalculateParentBoundaries_ | Tells whether observer should measure parent element boundaries on every on every check or measure once and cache.                                      | true              |\n| _parentOffsets_               | Sets additional static offsets added to the calculated parent boundaries. Useful if you need to consider the height of some header inside a ScrollView. | 0 for each corner |\n| _interactionModeEnabled_      | Makes the tracking loop fire only when user interaction has happened. When disabled, the loop runs indefinitely until stopped by <b>enabled</b> prop.   | true              |\n| _useScreenIfNoParent_         | Provides an option to track the element relative to screen instead of parent element. Only works if parent ref is not passed.                           | false             |\n| _optimizeOutOfScreen_         | Doubles the delay between loop cycles if the element is out of screen. A small optimization, candidate for improvement.                                 | true              |\n| _checkDetachedElements_         | Fixes element detection in FlatList with removeClippedSubviews set to true.                                 | false              |\n\n<h4>Returns</h4>\n\n| Prop        | Description                                                                                                                                                             |\n|-------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| _refProps_  | Ref and props that prevent element from being collapsed, see <b>useObservableTargetRef</b>                                                                              |\n| _restart_   | A handler to manually restart the observer. Can be used to trigger <b>onAppear</b> manually, for example when element's visibility hasn't changed, but its content has. |\n\n\n<h3>AppearObserverProvider</h3>\n<p>Component that provides a parent ref and interaction listeners through context for observers down the tree.</p>\n<p>Modifies the props of its child component by attaching event listeners to interaction callbacks like onScroll.</p>\n<i>Component is designed to provide minimalistic default usage, so it makes all arrangements under the hood. By default, it attaches all kinds of event listeners to the child element, with ScrollView in mind, but the element may not support some of them and these events will be ignored, or have different event callbacks. For manual setup provide children as render prop and arrange all listeners manually.</i>\n<h4>Props</h4>\n\n| Prop                     | Description                                                                                                                                                                                                                                         | Default value     |\n|--------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------|\n| _enableInteractionMode_  | When true, the touch handlers are attached to the child element of the provider, and child observers run checks only upon touch interactions, stopping them after a period of inactivity.                                                           | true              |\n| _ref_                    | An external ref to pass to the provider's child element. Provider sets it's own ref by default, but can use external one for its operations. No ref merging happens, the external one overrides the internal default.                               | _                 |\n| _children_               | React element or render prop for manual setup.                                                                                                                                                                                                      | _                 |\n| _offsets_                | Additional static offsets added to the parent element's boundaries. Can be used to account for ScrollView headers in calculations.                                                                                                                  | 0 for each corner |\n| _onLayout, onScroll etc_ | Callbacks to be passed to the child component on top of the provider's internal ones. When an element is wrapped with provider, you have to pass these callbacks to the provider instead of the target element, otherwise provider overwrites them. | -                 |\n\n<h3>useInteractionManager</h3>\n<p>A hook that returns interaction event handlers and interaction listeners for attaching them to the parent component and observers respectfully.</p>\n<p>Used inside Provider, but exposed for setting up interaction mode tracking without provider.</p>\n<h4>Props</h4>\n\n| Prop                                               | Description                                                        | Default value     |\n|----------------------------------------------------|--------------------------------------------------------------------|-------------------|\n| _onScroll, onScrollBeginDrag, onScrollEndDrag etc_ | External listeners to be attached alongside internal service ones. | true              |\n\n<h4>Returns</h4>\n\n| Prop                   | Description                                                                                                                                                            |\n|------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| _interactionHandlers_  | Callbacks for interaction events that trigger to be attached to parent component. They trigger the tracking loop start.                                                |\n| _interactionRecorders_ | Separate callbacks that can be attached to any event to mark it as interaction start or end. For example can serve to set 'Scroll to top' button press as interaction. |\n| _interactionListeners_ | Interaction listeners to be passed to useAppearObserver hook of the tracked components so that they can listen to parent interactions.                                 |\n\n\n<h3>useObservableTargetRef</h3>\n<p>A hook that incapsulates props necessary to prevent element from being collapsed, and a ref. Can be used to attach these props to the parent component in no provider, if it can be collapsed.</p>\n<h4>Props</h4>\n\n| Prop  | Description                                                           | Default value |\n|-------|-----------------------------------------------------------------------|---------------|\n| _ref_ | External ref to be used instead of the default one set up internally. | -             |\n\n<h4>Returns</h4>\n\n| Prop          | Description                                                                               |\n|---------------|-------------------------------------------------------------------------------------------|\n| _ref_         | A regular React ref                                                                       |\n| _collapsable_ | Set to true, prevents native node from being collapsed.                                   |\n| _onLayout_    | Also serves for collapse prevention, as <b>collapsable</b> is currently only for Android. |\n","readmeFilename":"README.md"}