{"_id":"@sigx/lynx-list","_rev":"27-19852a92e8aa4fa882b2b2f8e2a5aca4","name":"@sigx/lynx-list","dist-tags":{"latest":"0.34.0"},"versions":{"0.11.0":{"name":"@sigx/lynx-list","version":"0.11.0","keywords":["signalx","sigx","lynx","list","virtualized","recycler","flatlist"],"author":{"name":"Andreas Ekdahl"},"license":"MIT","_id":"@sigx/lynx-list@0.11.0","maintainers":[{"name":"andtii","email":"andreas.ekdahl@omniaintranet.com"}],"homepage":"https://sigx.dev/lynx/modules/list/overview/","bugs":{"url":"https://github.com/signalxjs/lynx/issues"},"dist":{"shasum":"1336940dad5e913da4c7d4d74332dabdf4ac2560","tarball":"https://registry.npmjs.org/@sigx/lynx-list/-/lynx-list-0.11.0.tgz","fileCount":13,"integrity":"sha512-J+TVYXfSBdMW9PyQOKHDKOsZXNH6rfk9SSlvtlBVFb0jquwvOBN415y5vZiSVnmohOC2sebSuoq9ngUNOvkrQA==","signatures":[{"sig":"MEYCIQCJRJoUkioW0nBanjsAZKASK7oKqjg93tD8pUODl9mdewIhAPKNm0fkrcIXjz+2yfWo9Cs45vQhZTyYIEqj2w5yDPOt","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60634},"main":"./dist/index.js","type":"module","_from":"file:sigx-lynx-list-0.11.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsgo --watch","test":"vitest run","build":"node ../../scripts/clean.mjs dist && tsgo","clean":"node ../../scripts/clean.mjs dist .turbo"},"_npmUser":{"name":"andtii","email":"andreas.ekdahl@omniaintranet.com"},"_resolved":"C:\\Users\\andy\\AppData\\Local\\Temp\\75087d2e06f9d03ae4e37cceee8bf05d\\sigx-lynx-list-0.11.0.tgz","_integrity":"sha512-J+TVYXfSBdMW9PyQOKHDKOsZXNH6rfk9SSlvtlBVFb0jquwvOBN415y5vZiSVnmohOC2sebSuoq9ngUNOvkrQA==","repository":{"url":"git+https://github.com/signalxjs/lynx.git","type":"git","directory":"packages/lynx-list"},"_npmVersion":"10.9.4","description":"High-performance virtualized list for sigx-lynx — data-driven wrapper over the native <list> recycler with grid/waterfall layouts, header/footer/empty slots, edge-reached events and an imperative scroll API. Pure JS.","directories":{},"_nodeVersion":"22.22.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@sigx/lynx":"^0.11.0","typescript":"^6.0.3","@sigx/lynx-testing":"^0.11.0","@typescript/native-preview":"7.0.0-dev.20260521.1"},"peerDependencies":{"@sigx/lynx":"^0.11.0"},"_npmOperationalInternal":{"tmp":"tmp/lynx-list_0.11.0_1782397935312_0.5989641696116015","host":"s3://npm-registry-packages-npm-production"}},"0.12.0":{"name":"@sigx/lynx-list","version":"0.12.0","keywords":["signalx","sigx","lynx","list","virtualized","recycler","flatlist"],"author":{"name":"Andreas Ekdahl"},"license":"MIT","_id":"@sigx/lynx-list@0.12.0","maintainers":[{"name":"andtii","email":"andreas.ekdahl@omniaintranet.com"}],"homepage":"https://sigx.dev/lynx/modules/list/overview/","bugs":{"url":"https://github.com/signalxjs/lynx/issues"},"dist":{"shasum":"9ea34b4a725b33c3b486efbfc69fa55cf8244a23","tarball":"https://registry.npmjs.org/@sigx/lynx-list/-/lynx-list-0.12.0.tgz","fileCount":13,"integrity":"sha512-Tejdgd39J7raNSK0jh/oIIDBWDFSwtD4P6g5ya/lpAe2Ex8NUACUK2uuRmPShHGR/7QHp0Wb/AEAhwBewoTUSQ==","signatures":[{"sig":"MEYCIQD54Yqnq0t3l+62usEqWzuB8m9GtRxSf3EeWHkt9uRi0AIhALew5N5lPv5q753dU5FQjMME/dGjAfYE6OfPj+63J8F7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sigx%2flynx-list@0.12.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":60425},"main":"./dist/index.js","type":"module","_from":"file:sigx-lynx-list-0.12.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsgo --watch","test":"vitest run","build":"node ../../scripts/clean.mjs dist && tsgo","clean":"node ../../scripts/clean.mjs dist .turbo"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:85f8fccb-c002-4b11-a92f-a78d7eb5296b"}},"_resolved":"/tmp/9c860d8835393b5adfd0332266cacb4d/sigx-lynx-list-0.12.0.tgz","_integrity":"sha512-Tejdgd39J7raNSK0jh/oIIDBWDFSwtD4P6g5ya/lpAe2Ex8NUACUK2uuRmPShHGR/7QHp0Wb/AEAhwBewoTUSQ==","repository":{"url":"git+https://github.com/signalxjs/lynx.git","type":"git","directory":"packages/lynx-list"},"_npmVersion":"12.0.1","description":"High-performance virtualized list for sigx-lynx — data-driven wrapper over the native <list> recycler with grid/waterfall layouts, header/footer/empty slots, edge-reached events and an imperative scroll API. Pure JS.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@sigx/lynx":"^0.12.0","typescript":"^6.0.3","@sigx/lynx-testing":"^0.12.0","@typescript/native-preview":"7.0.0-dev.20260521.1"},"peerDependencies":{"@sigx/lynx":"^0.12.0"},"_npmOperationalInternal":{"tmp":"tmp/lynx-list_0.12.0_1783949866927_0.6356156591917939","host":"s3://npm-registry-packages-npm-production"}},"0.12.1":{"name":"@sigx/lynx-list","version":"0.12.1","keywords":["signalx","sigx","lynx","list","virtualized","recycler","flatlist"],"author":{"name":"Andreas Ekdahl"},"license":"MIT","_id":"@sigx/lynx-list@0.12.1","maintainers":[{"name":"andtii","email":"andreas.ekdahl@omniaintranet.com"}],"homepage":"https://sigx.dev/lynx/modules/list/overview/","bugs":{"url":"https://github.com/signalxjs/lynx/issues"},"dist":{"shasum":"999a3ee165b0a20a64d5ce9a826668992aef0da2","tarball":"https://registry.npmjs.org/@sigx/lynx-list/-/lynx-list-0.12.1.tgz","fileCount":13,"integrity":"sha512-xWIJufMjCQCNGsN3UNO0j9G6EpqQs1L8kCSP5WdaNG9hpeOIIoMDI7xWvd7tfPJQo+dZ2CIJow2ad6pwvKKS9g==","signatures":[{"sig":"MEYCIQDe6L7CCZmCq0zAht2E2EjRiOScxK8+ceCDTPVd8SfL1QIhAJcT7jbLcOJYYzMEI4jUu+O4ZpHT/iEyzj+TTX0PBueP","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sigx%2flynx-list@0.12.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":60425},"main":"./dist/index.js","type":"module","_from":"file:sigx-lynx-list-0.12.1.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsgo --watch","test":"vitest run","build":"node ../../scripts/clean.mjs dist && tsgo","clean":"node ../../scripts/clean.mjs dist .turbo"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:85f8fccb-c002-4b11-a92f-a78d7eb5296b"}},"_resolved":"/tmp/bfde4207164fd1abc7f88839d7056a26/sigx-lynx-list-0.12.1.tgz","_integrity":"sha512-xWIJufMjCQCNGsN3UNO0j9G6EpqQs1L8kCSP5WdaNG9hpeOIIoMDI7xWvd7tfPJQo+dZ2CIJow2ad6pwvKKS9g==","repository":{"url":"git+https://github.com/signalxjs/lynx.git","type":"git","directory":"packages/lynx-list"},"_npmVersion":"12.0.1","description":"High-performance virtualized list for sigx-lynx — data-driven wrapper over the native <list> recycler with grid/waterfall layouts, header/footer/empty slots, edge-reached events and an imperative scroll API. Pure JS.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@sigx/lynx":"^0.12.1","typescript":"^6.0.3","@sigx/lynx-testing":"^0.12.1","@typescript/native-preview":"7.0.0-dev.20260521.1"},"peerDependencies":{"@sigx/lynx":"^0.12.1"},"_npmOperationalInternal":{"tmp":"tmp/lynx-list_0.12.1_1783972352833_0.3024641604097844","host":"s3://npm-registry-packages-npm-production"}},"0.12.2":{"name":"@sigx/lynx-list","version":"0.12.2","keywords":["signalx","sigx","lynx","list","virtualized","recycler","flatlist"],"author":{"name":"Andreas Ekdahl"},"license":"MIT","_id":"@sigx/lynx-list@0.12.2","maintainers":[{"name":"andtii","email":"andreas.ekdahl@omniaintranet.com"}],"homepage":"https://sigx.dev/lynx/modules/list/overview/","bugs":{"url":"https://github.com/signalxjs/lynx/issues"},"dist":{"shasum":"d0d0aef2c2286f97a89b920b13c47f10ea4ee98b","tarball":"https://registry.npmjs.org/@sigx/lynx-list/-/lynx-list-0.12.2.tgz","fileCount":13,"integrity":"sha512-FCTuxXuDrxAN4YVDyC3PFNfCvC0skL74ARiHgaIeZP4p3YnH0olK19Hbh+EIVOf5P1Nf9UX4Mh/j+nttLthcTw==","signatures":[{"sig":"MEUCIQD0Ej+oFnwr+4GyIW8ZpzCyC4mOhENioijSRBWGZAIpBwIgUXk6BgRIcDjWfRs5LM80kRe/dr/iU7TPPHjbXbmV/CM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sigx%2flynx-list@0.12.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":60425},"main":"./dist/index.js","type":"module","_from":"file:sigx-lynx-list-0.12.2.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsgo --watch","test":"vitest run","build":"node ../../scripts/clean.mjs dist && tsgo","clean":"node ../../scripts/clean.mjs dist .turbo"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:85f8fccb-c002-4b11-a92f-a78d7eb5296b"}},"_resolved":"/tmp/19a3690d44fa187c18925dc3941c507a/sigx-lynx-list-0.12.2.tgz","_integrity":"sha512-FCTuxXuDrxAN4YVDyC3PFNfCvC0skL74ARiHgaIeZP4p3YnH0olK19Hbh+EIVOf5P1Nf9UX4Mh/j+nttLthcTw==","repository":{"url":"git+https://github.com/signalxjs/lynx.git","type":"git","directory":"packages/lynx-list"},"_npmVersion":"12.0.1","description":"High-performance virtualized list for sigx-lynx — data-driven wrapper over the native <list> recycler with grid/waterfall layouts, header/footer/empty slots, edge-reached events and an imperative scroll API. Pure JS.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@sigx/lynx":"^0.12.2","typescript":"^6.0.3","@sigx/lynx-testing":"^0.12.2","@typescript/native-preview":"7.0.0-dev.20260521.1"},"peerDependencies":{"@sigx/lynx":"^0.12.2"},"_npmOperationalInternal":{"tmp":"tmp/lynx-list_0.12.2_1784019803779_0.3696915844180355","host":"s3://npm-registry-packages-npm-production"}},"0.13.0":{"name":"@sigx/lynx-list","version":"0.13.0","keywords":["signalx","sigx","lynx","list","virtualized","recycler","flatlist"],"author":{"name":"Andreas Ekdahl"},"license":"MIT","_id":"@sigx/lynx-list@0.13.0","maintainers":[{"name":"andtii","email":"andreas.ekdahl@omniaintranet.com"}],"homepage":"https://sigx.dev/lynx/modules/list/overview/","bugs":{"url":"https://github.com/signalxjs/lynx/issues"},"dist":{"shasum":"229e47ea8bdfc0ac790088508398c00e70582247","tarball":"https://registry.npmjs.org/@sigx/lynx-list/-/lynx-list-0.13.0.tgz","fileCount":13,"integrity":"sha512-lnPKIZo6A6EJ3Cn/8jrmKFxSCFmJDEzCtxJqtlqggA5v/2cTrBjyVnN8JEVclWTY0xSFOqkslutbrrYt1OvbZA==","signatures":[{"sig":"MEUCIQC5nHiC0Yr5CsA4S+ESc3np9Zsdr740C5TMroOMbbNMAAIgFqsBcX43Daha6YKiikyqAI5Q9Kex3jDG45jhXvXc0rw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sigx%2flynx-list@0.13.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":69476},"main":"./dist/index.js","type":"module","_from":"file:sigx-lynx-list-0.13.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsgo --watch","test":"vitest run","build":"node ../../scripts/clean.mjs dist && tsgo","clean":"node ../../scripts/clean.mjs dist .turbo"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:85f8fccb-c002-4b11-a92f-a78d7eb5296b"}},"_resolved":"/tmp/a3f07108b5d2c12f729ce6496266eda0/sigx-lynx-list-0.13.0.tgz","_integrity":"sha512-lnPKIZo6A6EJ3Cn/8jrmKFxSCFmJDEzCtxJqtlqggA5v/2cTrBjyVnN8JEVclWTY0xSFOqkslutbrrYt1OvbZA==","repository":{"url":"git+https://github.com/signalxjs/lynx.git","type":"git","directory":"packages/lynx-list"},"_npmVersion":"12.0.1","description":"High-performance virtualized list for sigx-lynx — data-driven wrapper over the native <list> recycler with grid/waterfall layouts, header/footer/empty slots, edge-reached events and an imperative scroll API. Pure JS.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@sigx/lynx":"^0.13.0","typescript":"^6.0.3","@sigx/lynx-testing":"^0.13.0","@typescript/native-preview":"7.0.0-dev.20260521.1"},"peerDependencies":{"@sigx/lynx":"^0.13.0"},"_npmOperationalInternal":{"tmp":"tmp/lynx-list_0.13.0_1784139112526_0.4111995480060644","host":"s3://npm-registry-packages-npm-production"}},"0.14.0":{"name":"@sigx/lynx-list","version":"0.14.0","keywords":["signalx","sigx","lynx","list","virtualized","recycler","flatlist"],"author":{"name":"Andreas Ekdahl"},"license":"MIT","_id":"@sigx/lynx-list@0.14.0","maintainers":[{"name":"andtii","email":"andreas.ekdahl@omniaintranet.com"}],"homepage":"https://sigx.dev/lynx/modules/list/overview/","bugs":{"url":"https://github.com/signalxjs/lynx/issues"},"dist":{"shasum":"a32306c5a9972bd8be7092a2dd41282a6041a74b","tarball":"https://registry.npmjs.org/@sigx/lynx-list/-/lynx-list-0.14.0.tgz","fileCount":13,"integrity":"sha512-Cni+QDzvIlmhZ5gEtzJUHFwjLdiVQAdgmJfacP0UNf/t3LHumQRqTK2tpVYf9pkdA0XWnp/fV/m6eAVSM4iDSw==","signatures":[{"sig":"MEUCIBxho6A4J84Zv9Ya9vAJMZmZMtMwUdi1YSk8gjjX02PzAiEAn9sscEh/dcVOA5MX8vyIrhegy+AudHKGr+vakLLLUd4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sigx%2flynx-list@0.14.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":74445},"main":"./dist/index.js","type":"module","_from":"file:sigx-lynx-list-0.14.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsgo --watch","test":"vitest run","build":"node ../../scripts/clean.mjs dist && tsgo","clean":"node ../../scripts/clean.mjs dist .turbo"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:85f8fccb-c002-4b11-a92f-a78d7eb5296b"}},"_resolved":"/tmp/66b9b963e2c6bcb0b30e1172766a391e/sigx-lynx-list-0.14.0.tgz","_integrity":"sha512-Cni+QDzvIlmhZ5gEtzJUHFwjLdiVQAdgmJfacP0UNf/t3LHumQRqTK2tpVYf9pkdA0XWnp/fV/m6eAVSM4iDSw==","repository":{"url":"git+https://github.com/signalxjs/lynx.git","type":"git","directory":"packages/lynx-list"},"_npmVersion":"12.0.1","description":"High-performance virtualized list for sigx-lynx — data-driven wrapper over the native <list> recycler with grid/waterfall layouts, header/footer/empty slots, edge-reached events and an imperative scroll API. Pure JS.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@sigx/lynx":"^0.14.0","typescript":"^6.0.3","@sigx/lynx-testing":"^0.14.0","@typescript/native-preview":"7.0.0-dev.20260521.1"},"peerDependencies":{"@sigx/lynx":"^0.14.0"},"_npmOperationalInternal":{"tmp":"tmp/lynx-list_0.14.0_1784200208961_0.7836082078761519","host":"s3://npm-registry-packages-npm-production"}},"0.15.0":{"name":"@sigx/lynx-list","version":"0.15.0","keywords":["signalx","sigx","lynx","list","virtualized","recycler","flatlist"],"author":{"name":"Andreas Ekdahl"},"license":"MIT","_id":"@sigx/lynx-list@0.15.0","maintainers":[{"name":"andtii","email":"andreas.ekdahl@omniaintranet.com"}],"homepage":"https://sigx.dev/lynx/modules/list/overview/","bugs":{"url":"https://github.com/signalxjs/lynx/issues"},"dist":{"shasum":"44551de0b96ed8f9e229a339bda9f23001a79289","tarball":"https://registry.npmjs.org/@sigx/lynx-list/-/lynx-list-0.15.0.tgz","fileCount":13,"integrity":"sha512-o7BxucpCkWHzUicdmhUCJZ6bXEPRx0Qmy7zElqp9CyE3dBFd/B2QYKYNBjNOogF7ya6t2Ps/VIiI9KASPwSFiw==","signatures":[{"sig":"MEUCIH4xTTC/1l5bxI961gfi+Kp+bm3wTEpexNY6MMH5glCFAiEAv26NUTpg67hkg5+LXLKj2B2bjapOcAi0B7hSL2QA2Xg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sigx%2flynx-list@0.15.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":75789},"main":"./dist/index.js","type":"module","_from":"file:sigx-lynx-list-0.15.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsgo --watch","test":"vitest run","build":"node ../../scripts/clean.mjs dist && tsgo","clean":"node ../../scripts/clean.mjs dist .turbo"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:85f8fccb-c002-4b11-a92f-a78d7eb5296b"}},"_resolved":"/tmp/d284164150791b820e0135d18a7febd4/sigx-lynx-list-0.15.0.tgz","_integrity":"sha512-o7BxucpCkWHzUicdmhUCJZ6bXEPRx0Qmy7zElqp9CyE3dBFd/B2QYKYNBjNOogF7ya6t2Ps/VIiI9KASPwSFiw==","repository":{"url":"git+https://github.com/signalxjs/lynx.git","type":"git","directory":"packages/lynx-list"},"_npmVersion":"12.0.1","description":"High-performance virtualized list for sigx-lynx — data-driven wrapper over the native <list> recycler with grid/waterfall layouts, header/footer/empty slots, edge-reached events and an imperative scroll API. Pure JS.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@sigx/lynx":"^0.15.0","typescript":"^6.0.3","@sigx/lynx-testing":"^0.15.0","@typescript/native-preview":"7.0.0-dev.20260521.1"},"peerDependencies":{"@sigx/lynx":"^0.15.0"},"_npmOperationalInternal":{"tmp":"tmp/lynx-list_0.15.0_1784236887646_0.38667653445340133","host":"s3://npm-registry-packages-npm-production"}},"0.17.0":{"name":"@sigx/lynx-list","version":"0.17.0","keywords":["signalx","sigx","lynx","list","virtualized","recycler","flatlist"],"author":{"name":"Andreas Ekdahl"},"license":"MIT","_id":"@sigx/lynx-list@0.17.0","maintainers":[{"name":"andtii","email":"andreas.ekdahl@omniaintranet.com"}],"homepage":"https://sigx.dev/lynx/modules/list/overview/","bugs":{"url":"https://github.com/signalxjs/lynx/issues"},"dist":{"shasum":"de5c30da2d03e6dae379ecbb294d36432c2d9c30","tarball":"https://registry.npmjs.org/@sigx/lynx-list/-/lynx-list-0.17.0.tgz","fileCount":13,"integrity":"sha512-I36LbK0fnVLPavzoe13LnG9zHodDoDcvH5WqeGhPGsEJJ0iRIJYy/Q8q3qNMXWsg4WB2IjEhwNRxBlwaC2do3w==","signatures":[{"sig":"MEUCIQDkhKqDwkk8Jlre67JhRZuGNgyID9tkLIxarI/66Qyk1wIgd6eVK+o+jsgG5uvUFzebIQW6EDIm+uHC5ZmwlYbhXtA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sigx%2flynx-list@0.17.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":75789},"main":"./dist/index.js","type":"module","_from":"file:sigx-lynx-list-0.17.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsgo --watch","test":"vitest run","build":"node ../../scripts/clean.mjs dist && tsgo","clean":"node ../../scripts/clean.mjs dist .turbo"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:85f8fccb-c002-4b11-a92f-a78d7eb5296b"}},"_resolved":"/tmp/b47dab8314d18fefed4fe7e0924ed561/sigx-lynx-list-0.17.0.tgz","_integrity":"sha512-I36LbK0fnVLPavzoe13LnG9zHodDoDcvH5WqeGhPGsEJJ0iRIJYy/Q8q3qNMXWsg4WB2IjEhwNRxBlwaC2do3w==","repository":{"url":"git+https://github.com/signalxjs/lynx.git","type":"git","directory":"packages/lynx-list"},"_npmVersion":"12.0.1","description":"High-performance virtualized list for sigx-lynx — data-driven wrapper over the native <list> recycler with grid/waterfall layouts, header/footer/empty slots, edge-reached events and an imperative scroll API. Pure JS.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@sigx/lynx":"^0.17.0","typescript":"^6.0.3","@sigx/lynx-testing":"^0.17.0","@typescript/native-preview":"7.0.0-dev.20260521.1"},"peerDependencies":{"@sigx/lynx":"^0.17.0"},"_npmOperationalInternal":{"tmp":"tmp/lynx-list_0.17.0_1784480325843_0.5107591327854182","host":"s3://npm-registry-packages-npm-production"}},"0.18.0":{"name":"@sigx/lynx-list","version":"0.18.0","keywords":["signalx","sigx","lynx","list","virtualized","recycler","flatlist"],"author":{"name":"Andreas Ekdahl"},"license":"MIT","_id":"@sigx/lynx-list@0.18.0","maintainers":[{"name":"andtii","email":"andreas.ekdahl@omniaintranet.com"}],"homepage":"https://sigx.dev/lynx/modules/list/overview/","bugs":{"url":"https://github.com/signalxjs/lynx/issues"},"dist":{"shasum":"af06b2de37a638edf1fc8c715724934e48b917a0","tarball":"https://registry.npmjs.org/@sigx/lynx-list/-/lynx-list-0.18.0.tgz","fileCount":13,"integrity":"sha512-zBY6rP3AUbWs3lB5Att4Hk9t3fqcFflFYQAPg7BXcHGUFCwjYr6mZlwk7AQARs+1Mr7ERJtfedIYADt2FHV5Rw==","signatures":[{"sig":"MEQCIGD3MansezBbi02GeI0HclFg6QiixTcUfTDj97LsI1DeAiAXZHvIv0wetefSpekwMGlvcyYjoOWakbOL1wJaNhjNyg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sigx%2flynx-list@0.18.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":76644},"main":"./dist/index.js","type":"module","_from":"file:sigx-lynx-list-0.18.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsgo --watch","test":"vitest run","build":"node ../../scripts/clean.mjs dist && tsgo","clean":"node ../../scripts/clean.mjs dist .turbo"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:85f8fccb-c002-4b11-a92f-a78d7eb5296b"}},"_resolved":"/tmp/7848cf511b3b2e73116bddf37d84bdad/sigx-lynx-list-0.18.0.tgz","_integrity":"sha512-zBY6rP3AUbWs3lB5Att4Hk9t3fqcFflFYQAPg7BXcHGUFCwjYr6mZlwk7AQARs+1Mr7ERJtfedIYADt2FHV5Rw==","repository":{"url":"git+https://github.com/signalxjs/lynx.git","type":"git","directory":"packages/lynx-list"},"_npmVersion":"12.0.1","description":"High-performance virtualized list for sigx-lynx — data-driven wrapper over the native <list> recycler with grid/waterfall layouts, header/footer/empty slots, edge-reached events and an imperative scroll API. Pure JS.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@sigx/lynx":"^0.18.0","typescript":"^6.0.3","@sigx/lynx-testing":"^0.18.0","@typescript/native-preview":"7.0.0-dev.20260521.1"},"peerDependencies":{"@sigx/lynx":"^0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/lynx-list_0.18.0_1784625844471_0.34496401979708646","host":"s3://npm-registry-packages-npm-production"}},"0.18.1":{"name":"@sigx/lynx-list","version":"0.18.1","keywords":["signalx","sigx","lynx","list","virtualized","recycler","flatlist"],"author":{"name":"Andreas Ekdahl"},"license":"MIT","_id":"@sigx/lynx-list@0.18.1","maintainers":[{"name":"andtii","email":"andreas.ekdahl@omniaintranet.com"}],"homepage":"https://sigx.dev/lynx/modules/list/overview/","bugs":{"url":"https://github.com/signalxjs/lynx/issues"},"dist":{"shasum":"8d5253c9a6ddf40061f98c8eb82a481a395f5819","tarball":"https://registry.npmjs.org/@sigx/lynx-list/-/lynx-list-0.18.1.tgz","fileCount":13,"integrity":"sha512-pO+9OE+2ypRp5ASsKccld/lb1z2tofIsmGbV6MAqSosUdF+wW5gUXX0E80/wXOM4aeWTkLBgQRC0f90m+x+vrQ==","signatures":[{"sig":"MEUCIQCoBffF2cAZ4cqmw5qZOE8BEP5OqoKAJfvKQ1iUmOVMPgIgRz29kDGG7+X/C0Abg2c/JcKtJyjn3KqfCIUOXBDrRKU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sigx%2flynx-list@0.18.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":76644},"main":"./dist/index.js","type":"module","_from":"file:sigx-lynx-list-0.18.1.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsgo --watch","test":"vitest run","build":"node ../../scripts/clean.mjs dist && tsgo","clean":"node ../../scripts/clean.mjs dist .turbo"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:85f8fccb-c002-4b11-a92f-a78d7eb5296b"}},"_resolved":"/tmp/2371a0b0c9faaaaf2d228fc082e0fdb8/sigx-lynx-list-0.18.1.tgz","_integrity":"sha512-pO+9OE+2ypRp5ASsKccld/lb1z2tofIsmGbV6MAqSosUdF+wW5gUXX0E80/wXOM4aeWTkLBgQRC0f90m+x+vrQ==","repository":{"url":"git+https://github.com/signalxjs/lynx.git","type":"git","directory":"packages/lynx-list"},"_npmVersion":"12.0.1","description":"High-performance virtualized list for sigx-lynx — data-driven wrapper over the native <list> recycler with grid/waterfall layouts, header/footer/empty slots, edge-reached events and an imperative scroll API. Pure JS.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@sigx/lynx":"^0.18.1","typescript":"^6.0.3","@sigx/lynx-testing":"^0.18.1","@typescript/native-preview":"7.0.0-dev.20260521.1"},"peerDependencies":{"@sigx/lynx":"^0.18.1"},"_npmOperationalInternal":{"tmp":"tmp/lynx-list_0.18.1_1784668170289_0.2840553031497124","host":"s3://npm-registry-packages-npm-production"}},"0.19.0":{"name":"@sigx/lynx-list","version":"0.19.0","keywords":["signalx","sigx","lynx","list","virtualized","recycler","flatlist"],"author":{"name":"Andreas Ekdahl"},"license":"MIT","_id":"@sigx/lynx-list@0.19.0","maintainers":[{"name":"andtii","email":"andreas.ekdahl@omniaintranet.com"}],"homepage":"https://sigx.dev/lynx/modules/list/overview/","bugs":{"url":"https://github.com/signalxjs/lynx/issues"},"dist":{"shasum":"41de41db99e54305a0d066267fc08747ae927631","tarball":"https://registry.npmjs.org/@sigx/lynx-list/-/lynx-list-0.19.0.tgz","fileCount":13,"integrity":"sha512-nWKs9KcS8vPCB+lU6QrpJXk2XHhHJyHjG696rS3sKIDWaVSvofpQa3ety79mSdvU/yGIhbXb9u9OCdP9dlHIYw==","signatures":[{"sig":"MEUCIC/6qI2y+JEnrLiHxOsedVX/HlHfi2Mdq66mPt2ZkDLeAiEAkdQLWr3eTblbPOzdGd93kx58O+FX3rmW6122euT3Soc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sigx%2flynx-list@0.19.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":76644},"main":"./dist/index.js","type":"module","_from":"file:sigx-lynx-list-0.19.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsgo --watch","test":"vitest run","build":"node ../../scripts/clean.mjs dist && tsgo","clean":"node ../../scripts/clean.mjs dist .turbo"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:85f8fccb-c002-4b11-a92f-a78d7eb5296b"}},"_resolved":"/tmp/f360073076a09e1f282c4dfb27cc5f04/sigx-lynx-list-0.19.0.tgz","_integrity":"sha512-nWKs9KcS8vPCB+lU6QrpJXk2XHhHJyHjG696rS3sKIDWaVSvofpQa3ety79mSdvU/yGIhbXb9u9OCdP9dlHIYw==","repository":{"url":"git+https://github.com/signalxjs/lynx.git","type":"git","directory":"packages/lynx-list"},"_npmVersion":"12.0.1","description":"High-performance virtualized list for sigx-lynx — data-driven wrapper over the native <list> recycler with grid/waterfall layouts, header/footer/empty slots, edge-reached events and an imperative scroll API. Pure JS.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@sigx/lynx":"^0.19.0","typescript":"^6.0.3","@sigx/lynx-testing":"^0.19.0","@typescript/native-preview":"7.0.0-dev.20260521.1"},"peerDependencies":{"@sigx/lynx":"^0.19.0"},"_npmOperationalInternal":{"tmp":"tmp/lynx-list_0.19.0_1784812588975_0.2909030586703345","host":"s3://npm-registry-packages-npm-production"}},"0.20.0":{"name":"@sigx/lynx-list","version":"0.20.0","keywords":["signalx","sigx","lynx","list","virtualized","recycler","flatlist"],"author":{"name":"Andreas Ekdahl"},"license":"MIT","_id":"@sigx/lynx-list@0.20.0","maintainers":[{"name":"andtii","email":"andreas.ekdahl@omniaintranet.com"}],"homepage":"https://sigx.dev/lynx/modules/list/overview/","bugs":{"url":"https://github.com/signalxjs/lynx/issues"},"dist":{"shasum":"cf7fdcb5413141c25f701e49e607557ff93c88fd","tarball":"https://registry.npmjs.org/@sigx/lynx-list/-/lynx-list-0.20.0.tgz","fileCount":13,"integrity":"sha512-s5PF6ua2uGUJtnAYHAWeIMAuZt/xmgylU8O0CNbu+n1s/a13Scbm4gyDcWjLUNwIKSQtQwWlHEDahWt0bmxD+A==","signatures":[{"sig":"MEUCIAVSmmA+QrgxWez9bgOd2m7u/G95N6uY4KfZQKgN93GGAiEA11v31Me2pGvTFuNPfuDn8awIZHljVFpL6jGLHccikfs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sigx%2flynx-list@0.20.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":76644},"main":"./dist/index.js","type":"module","_from":"file:sigx-lynx-list-0.20.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsgo --watch","test":"vitest run","build":"node ../../scripts/clean.mjs dist && tsgo","clean":"node ../../scripts/clean.mjs dist .turbo"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:85f8fccb-c002-4b11-a92f-a78d7eb5296b"}},"_resolved":"/tmp/ed6724c11a0ae40e1e746f31ca99e8ed/sigx-lynx-list-0.20.0.tgz","_integrity":"sha512-s5PF6ua2uGUJtnAYHAWeIMAuZt/xmgylU8O0CNbu+n1s/a13Scbm4gyDcWjLUNwIKSQtQwWlHEDahWt0bmxD+A==","repository":{"url":"git+https://github.com/signalxjs/lynx.git","type":"git","directory":"packages/lynx-list"},"_npmVersion":"12.0.1","description":"High-performance virtualized list for sigx-lynx — data-driven wrapper over the native <list> recycler with grid/waterfall layouts, header/footer/empty slots, edge-reached events and an imperative scroll API. Pure JS.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@sigx/lynx":"^0.20.0","typescript":"^6.0.3","@sigx/lynx-testing":"^0.20.0","@typescript/native-preview":"7.0.0-dev.20260521.1"},"peerDependencies":{"@sigx/lynx":"^0.20.0"},"_npmOperationalInternal":{"tmp":"tmp/lynx-list_0.20.0_1784815932750_0.22509284423956255","host":"s3://npm-registry-packages-npm-production"}},"0.21.0":{"name":"@sigx/lynx-list","version":"0.21.0","keywords":["signalx","sigx","lynx","list","virtualized","recycler","flatlist"],"author":{"name":"Andreas Ekdahl"},"license":"MIT","_id":"@sigx/lynx-list@0.21.0","maintainers":[{"name":"andtii","email":"andreas.ekdahl@omniaintranet.com"}],"homepage":"https://sigx.dev/lynx/modules/list/overview/","bugs":{"url":"https://github.com/signalxjs/lynx/issues"},"dist":{"shasum":"f99c116c8e60d7cce3205712ed697eba8d1ae971","tarball":"https://registry.npmjs.org/@sigx/lynx-list/-/lynx-list-0.21.0.tgz","fileCount":13,"integrity":"sha512-ostjUb72S88+Bi1c4RJfOdJH/MGhFxk4+UL5dOKdrZgLBESGT7yli03vMGghgXFz2zcCV+IDyUrtkWk++BaH2g==","signatures":[{"sig":"MEQCIHBGdcO9jfgVulFQwKWmIXI60smyL/AdzGHjuwQYqKE2AiBHE5HHA8ijnVhmlRSASv9uUVRD6dBjYFYNI+U6btCl1Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sigx%2flynx-list@0.21.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":83378},"main":"./dist/index.js","type":"module","_from":"file:sigx-lynx-list-0.21.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsgo --watch","test":"vitest run","build":"node ../../scripts/clean.mjs dist && tsgo","clean":"node ../../scripts/clean.mjs dist .turbo"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:85f8fccb-c002-4b11-a92f-a78d7eb5296b"}},"_resolved":"/tmp/cdf3e483632763fc50465eb963a5d594/sigx-lynx-list-0.21.0.tgz","_integrity":"sha512-ostjUb72S88+Bi1c4RJfOdJH/MGhFxk4+UL5dOKdrZgLBESGT7yli03vMGghgXFz2zcCV+IDyUrtkWk++BaH2g==","repository":{"url":"git+https://github.com/signalxjs/lynx.git","type":"git","directory":"packages/lynx-list"},"_npmVersion":"12.0.1","description":"High-performance virtualized list for sigx-lynx — data-driven wrapper over the native <list> recycler with grid/waterfall layouts, header/footer/empty slots, edge-reached events and an imperative scroll API. Pure JS.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@sigx/lynx":"^0.21.0","typescript":"^6.0.3","@sigx/lynx-testing":"^0.21.0","@typescript/native-preview":"7.0.0-dev.20260521.1"},"peerDependencies":{"@sigx/lynx":"^0.21.0"},"_npmOperationalInternal":{"tmp":"tmp/lynx-list_0.21.0_1784877030029_0.6397706413518007","host":"s3://npm-registry-packages-npm-production"}},"0.22.0":{"name":"@sigx/lynx-list","version":"0.22.0","keywords":["signalx","sigx","lynx","list","virtualized","recycler","flatlist"],"author":{"name":"Andreas Ekdahl"},"license":"MIT","_id":"@sigx/lynx-list@0.22.0","maintainers":[{"name":"andtii","email":"andreas.ekdahl@omniaintranet.com"}],"homepage":"https://sigx.dev/lynx/modules/list/overview/","bugs":{"url":"https://github.com/signalxjs/lynx/issues"},"dist":{"shasum":"7907c9b454ccb2fd7c7ccd236de5e662ecb2c23b","tarball":"https://registry.npmjs.org/@sigx/lynx-list/-/lynx-list-0.22.0.tgz","fileCount":13,"integrity":"sha512-UUnAu9VqtSmMXKYYgJvGnNv+7RqQ67Rp4nSZcNQDt3Aa1a5+q7irMWBetGZHSaOvYEVsWbwwnt/V1Kt/eUtIZg==","signatures":[{"sig":"MEUCIQC/7Y6my5TCCPUanxgW3Li6O9PXugVuHOisWkzcsruYVAIgFwCaD0KLz85Ij7PQKJNoeosdEX+LlMyVBVi2teeqcQg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sigx%2flynx-list@0.22.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":83378},"main":"./dist/index.js","type":"module","_from":"file:sigx-lynx-list-0.22.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsgo --watch","test":"vitest run","build":"node ../../scripts/clean.mjs dist && tsgo","clean":"node ../../scripts/clean.mjs dist .turbo"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:85f8fccb-c002-4b11-a92f-a78d7eb5296b"}},"_resolved":"/tmp/39c73fc36b1911c6d54e789097fa1b47/sigx-lynx-list-0.22.0.tgz","_integrity":"sha512-UUnAu9VqtSmMXKYYgJvGnNv+7RqQ67Rp4nSZcNQDt3Aa1a5+q7irMWBetGZHSaOvYEVsWbwwnt/V1Kt/eUtIZg==","repository":{"url":"git+https://github.com/signalxjs/lynx.git","type":"git","directory":"packages/lynx-list"},"_npmVersion":"12.0.1","description":"High-performance virtualized list for sigx-lynx — data-driven wrapper over the native <list> recycler with grid/waterfall layouts, header/footer/empty slots, edge-reached events and an imperative scroll API. Pure JS.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@sigx/lynx":"^0.22.0","typescript":"^6.0.3","@sigx/lynx-testing":"^0.22.0","@typescript/native-preview":"7.0.0-dev.20260521.1"},"peerDependencies":{"@sigx/lynx":"^0.22.0"},"_npmOperationalInternal":{"tmp":"tmp/lynx-list_0.22.0_1785241638821_0.19494088481897687","host":"s3://npm-registry-packages-npm-production"}},"0.23.0":{"name":"@sigx/lynx-list","version":"0.23.0","keywords":["signalx","sigx","lynx","list","virtualized","recycler","flatlist"],"author":{"name":"Andreas Ekdahl"},"license":"MIT","_id":"@sigx/lynx-list@0.23.0","maintainers":[{"name":"andtii","email":"andreas.ekdahl@omniaintranet.com"}],"homepage":"https://sigx.dev/lynx/modules/list/overview/","bugs":{"url":"https://github.com/signalxjs/lynx/issues"},"dist":{"shasum":"47e62c1ba6e86892804d39b8f36105e90ceb61e1","tarball":"https://registry.npmjs.org/@sigx/lynx-list/-/lynx-list-0.23.0.tgz","fileCount":13,"integrity":"sha512-TCuhFj+FDaOJJXREgZ0RSLJXAf5Gw8FUJHuLyjAwVDpwn8sCmYNmDSa5e4PXjmbfdK1YXPA6bZXPwfS0FFYieg==","signatures":[{"sig":"MEUCIQC5PP9iWy5DAP/ftbYJpqaP0TO3XO+by/vnjIBVF2vmagIgCxMhb83he24u3Zrdkpew/UMgwzo6Q9f+dHJkg9l0N6Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sigx%2flynx-list@0.23.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":83378},"main":"./dist/index.js","type":"module","_from":"file:sigx-lynx-list-0.23.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsgo --watch","test":"vitest run","build":"node ../../scripts/clean.mjs dist && tsgo","clean":"node ../../scripts/clean.mjs dist .turbo"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:85f8fccb-c002-4b11-a92f-a78d7eb5296b"}},"_resolved":"/tmp/5a9fde5909381b89a7f70747b35cbe6f/sigx-lynx-list-0.23.0.tgz","_integrity":"sha512-TCuhFj+FDaOJJXREgZ0RSLJXAf5Gw8FUJHuLyjAwVDpwn8sCmYNmDSa5e4PXjmbfdK1YXPA6bZXPwfS0FFYieg==","repository":{"url":"git+https://github.com/signalxjs/lynx.git","type":"git","directory":"packages/lynx-list"},"_npmVersion":"12.0.2","description":"High-performance virtualized list for sigx-lynx — data-driven wrapper over the native <list> recycler with grid/waterfall layouts, header/footer/empty slots, edge-reached events and an imperative scroll API. Pure JS.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@sigx/lynx":"^0.23.0","typescript":"^6.0.3","@sigx/lynx-testing":"^0.23.0","@typescript/native-preview":"7.0.0-dev.20260521.1"},"peerDependencies":{"@sigx/lynx":"^0.23.0"},"_npmOperationalInternal":{"tmp":"tmp/lynx-list_0.23.0_1785422791316_0.5563183907008669","host":"s3://npm-registry-packages-npm-production"}},"0.24.0":{"name":"@sigx/lynx-list","version":"0.24.0","keywords":["signalx","sigx","lynx","list","virtualized","recycler","flatlist"],"author":{"name":"Andreas Ekdahl"},"license":"MIT","_id":"@sigx/lynx-list@0.24.0","maintainers":[{"name":"andtii","email":"andreas.ekdahl@omniaintranet.com"}],"homepage":"https://sigx.dev/lynx/modules/list/overview/","bugs":{"url":"https://github.com/signalxjs/lynx/issues"},"dist":{"shasum":"86bb12bed684d2a6ecd972a7b5f0325ec2604522","tarball":"https://registry.npmjs.org/@sigx/lynx-list/-/lynx-list-0.24.0.tgz","fileCount":13,"integrity":"sha512-ScqF4B3WYENucxuUG5nE2llq3/R3qytn4xTAlA9xioOVKlm7cADpq+ZgzOfpEMSkk6Eb6rd5eyYn06yxBKor9A==","signatures":[{"sig":"MEQCIF4MwWanYSpxNgku3QT27iYRKTMJA/v7PBnSY4JlBhljAiBa6yjZqbKFDW9zl6HjobwSKGS8waTIzVdP6fpUK1KPyw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sigx%2flynx-list@0.24.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":83378},"main":"./dist/index.js","type":"module","_from":"file:sigx-lynx-list-0.24.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsgo --watch","test":"vitest run","build":"node ../../scripts/clean.mjs dist && tsgo","clean":"node ../../scripts/clean.mjs dist .turbo"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:85f8fccb-c002-4b11-a92f-a78d7eb5296b"}},"_resolved":"/tmp/96cdb62e93a79e7109609fc7876404a0/sigx-lynx-list-0.24.0.tgz","_integrity":"sha512-ScqF4B3WYENucxuUG5nE2llq3/R3qytn4xTAlA9xioOVKlm7cADpq+ZgzOfpEMSkk6Eb6rd5eyYn06yxBKor9A==","repository":{"url":"git+https://github.com/signalxjs/lynx.git","type":"git","directory":"packages/lynx-list"},"_npmVersion":"12.0.2","description":"High-performance virtualized list for sigx-lynx — data-driven wrapper over the native <list> recycler with grid/waterfall layouts, header/footer/empty slots, edge-reached events and an imperative scroll API. Pure JS.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@sigx/lynx":"^0.24.0","typescript":"^6.0.3","@sigx/lynx-testing":"^0.24.0","@typescript/native-preview":"7.0.0-dev.20260521.1"},"peerDependencies":{"@sigx/lynx":"^0.24.0"},"_npmOperationalInternal":{"tmp":"tmp/lynx-list_0.24.0_1785884083131_0.7655685607625402","host":"s3://npm-registry-packages-npm-production"}},"0.25.0":{"name":"@sigx/lynx-list","version":"0.25.0","keywords":["signalx","sigx","lynx","list","virtualized","recycler","flatlist"],"author":{"name":"Andreas Ekdahl"},"license":"MIT","_id":"@sigx/lynx-list@0.25.0","maintainers":[{"name":"andtii","email":"andreas.ekdahl@omniaintranet.com"}],"homepage":"https://sigx.dev/lynx/modules/list/overview/","bugs":{"url":"https://github.com/signalxjs/lynx/issues"},"dist":{"shasum":"8ed82fcb2a00d3e1a962a94ea0bdca1b7c0d7b97","tarball":"https://registry.npmjs.org/@sigx/lynx-list/-/lynx-list-0.25.0.tgz","fileCount":13,"integrity":"sha512-c8mD7PF97Gi2Mv+jje1y41OZciO+vhddqOelH5Hl4oUChB9Wn0ApY6r4O1ZWQZKPYduKCZ21jMfn8E1JFA9f1A==","signatures":[{"sig":"MEUCIQDE6WvaD0Aqmd1t4EQAE3JbNzLSL8EfFp5d27lI03XbawIgO1anki/9wNT8xikZ2gt4lNoZa3yEuZPxLUO0lW+etbI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sigx%2flynx-list@0.25.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":92858},"main":"./dist/index.js","type":"module","_from":"file:sigx-lynx-list-0.25.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsgo --watch","test":"vitest run","build":"node ../../scripts/clean.mjs dist && tsgo","clean":"node ../../scripts/clean.mjs dist .turbo"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:85f8fccb-c002-4b11-a92f-a78d7eb5296b"}},"_resolved":"/tmp/c4a71f0ca695abb5fed48ab667e6cf02/sigx-lynx-list-0.25.0.tgz","_integrity":"sha512-c8mD7PF97Gi2Mv+jje1y41OZciO+vhddqOelH5Hl4oUChB9Wn0ApY6r4O1ZWQZKPYduKCZ21jMfn8E1JFA9f1A==","repository":{"url":"git+https://github.com/signalxjs/lynx.git","type":"git","directory":"packages/lynx-list"},"_npmVersion":"12.0.2","description":"High-performance virtualized list for sigx-lynx — data-driven wrapper over the native <list> recycler with grid/waterfall layouts, header/footer/empty slots, edge-reached events and an imperative scroll API. Pure JS.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@sigx/lynx":"^0.25.0","typescript":"^6.0.3","@sigx/lynx-testing":"^0.25.0","@typescript/native-preview":"7.0.0-dev.20260521.1"},"peerDependencies":{"@sigx/lynx":"^0.25.0"},"_npmOperationalInternal":{"tmp":"tmp/lynx-list_0.25.0_1785917161675_0.7559670349886154","host":"s3://npm-registry-packages-npm-production"}},"0.26.0":{"name":"@sigx/lynx-list","version":"0.26.0","keywords":["signalx","sigx","lynx","list","virtualized","recycler","flatlist"],"author":{"name":"Andreas Ekdahl"},"license":"MIT","_id":"@sigx/lynx-list@0.26.0","maintainers":[{"name":"andtii","email":"andreas.ekdahl@omniaintranet.com"}],"homepage":"https://sigx.dev/lynx/modules/list/overview/","bugs":{"url":"https://github.com/signalxjs/lynx/issues"},"dist":{"shasum":"e9d04842cc1416019dab2560b3db081e5913a394","tarball":"https://registry.npmjs.org/@sigx/lynx-list/-/lynx-list-0.26.0.tgz","fileCount":17,"integrity":"sha512-3DuVNl7q6hSDynVLK8vfHPqm69FHYfVIFdfuCdBNNU/F+BUCWmN65rRkfV+6UszeGFnRnBEd9h6F0QiTwZRC8w==","signatures":[{"sig":"MEUCIBf9luqRmuCNSiltwIpDQqEZZe7xVtNu/ACViB5caif6AiEA1xwHBOTB1N5rh2v5Zs8LCrenXFA7uJ238ppLhCETX4o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sigx%2flynx-list@0.26.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":114916},"main":"./dist/index.js","type":"module","_from":"file:sigx-lynx-list-0.26.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json","./signalx-module.json":"./signalx-module.json"},"scripts":{"dev":"tsgo --watch","test":"vitest run","build":"node ../../scripts/clean.mjs dist && tsgo","clean":"node ../../scripts/clean.mjs dist .turbo"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:85f8fccb-c002-4b11-a92f-a78d7eb5296b"}},"_resolved":"/tmp/5746c40af4403041881fee1701550388/sigx-lynx-list-0.26.0.tgz","_integrity":"sha512-3DuVNl7q6hSDynVLK8vfHPqm69FHYfVIFdfuCdBNNU/F+BUCWmN65rRkfV+6UszeGFnRnBEd9h6F0QiTwZRC8w==","repository":{"url":"git+https://github.com/signalxjs/lynx.git","type":"git","directory":"packages/lynx-list"},"_npmVersion":"12.0.2","description":"High-performance virtualized list for sigx-lynx — data-driven wrapper over the native <list> recycler with grid/waterfall layouts, header/footer/empty slots, edge-reached events and an imperative scroll API. Pure JS.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@sigx/lynx":"^0.26.0","typescript":"^6.0.3","@sigx/lynx-testing":"^0.26.0","@typescript/native-preview":"7.0.0-dev.20260521.1"},"peerDependencies":{"@sigx/lynx":"^0.26.0"},"_npmOperationalInternal":{"tmp":"tmp/lynx-list_0.26.0_1785935371495_0.8930634855320809","host":"s3://npm-registry-packages-npm-production"}},"0.27.0":{"name":"@sigx/lynx-list","version":"0.27.0","keywords":["signalx","sigx","lynx","list","virtualized","recycler","flatlist"],"author":{"name":"Andreas Ekdahl"},"license":"MIT","_id":"@sigx/lynx-list@0.27.0","maintainers":[{"name":"andtii","email":"andreas.ekdahl@omniaintranet.com"}],"homepage":"https://sigx.dev/lynx/modules/list/overview/","bugs":{"url":"https://github.com/signalxjs/lynx/issues"},"dist":{"shasum":"50224f513518fa4a3cb3c1f7fc1006a737002cf8","tarball":"https://registry.npmjs.org/@sigx/lynx-list/-/lynx-list-0.27.0.tgz","fileCount":17,"integrity":"sha512-MnBVMd/076A+Y4Z8/y6yOPx3Z6O45/x2mVLCaHHhOnmQ7b722c9vC0hPZrhq1xRoZaqPh7VVwSH/gqPpKGFVpg==","signatures":[{"sig":"MEUCIEDAygB90n6Iq8oFM05LGt5gkfB/hNawavjTUiMOI9R1AiEA3iW9wMpD7BzuCirFixa7qX+DFlGRH6y9HQU732CbiQ8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sigx%2flynx-list@0.27.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":128164},"main":"./dist/index.js","type":"module","_from":"file:sigx-lynx-list-0.27.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json","./signalx-module.json":"./signalx-module.json"},"scripts":{"dev":"tsgo --watch","test":"vitest run","build":"node ../../scripts/clean.mjs dist && tsgo","clean":"node ../../scripts/clean.mjs dist .turbo"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:85f8fccb-c002-4b11-a92f-a78d7eb5296b"}},"_resolved":"/tmp/be54809d206ab97b0930e969bb562106/sigx-lynx-list-0.27.0.tgz","_integrity":"sha512-MnBVMd/076A+Y4Z8/y6yOPx3Z6O45/x2mVLCaHHhOnmQ7b722c9vC0hPZrhq1xRoZaqPh7VVwSH/gqPpKGFVpg==","repository":{"url":"git+https://github.com/signalxjs/lynx.git","type":"git","directory":"packages/lynx-list"},"_npmVersion":"12.0.2","description":"High-performance virtualized list for sigx-lynx — data-driven wrapper over the native <list> recycler with grid/waterfall layouts, header/footer/empty slots, edge-reached events and an imperative scroll API. Pure JS.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@sigx/lynx":"^0.27.0","typescript":"^6.0.3","@sigx/lynx-testing":"^0.27.0","@typescript/native-preview":"7.0.0-dev.20260521.1"},"peerDependencies":{"@sigx/lynx":"^0.27.0"},"_npmOperationalInternal":{"tmp":"tmp/lynx-list_0.27.0_1786351049719_0.17392105326008123","host":"s3://npm-registry-packages-npm-production"}},"0.28.0":{"name":"@sigx/lynx-list","version":"0.28.0","keywords":["signalx","sigx","lynx","list","virtualized","recycler","flatlist"],"author":{"name":"Andreas Ekdahl"},"license":"MIT","_id":"@sigx/lynx-list@0.28.0","maintainers":[{"name":"andtii","email":"andreas.ekdahl@omniaintranet.com"}],"homepage":"https://sigx.dev/lynx/modules/list/overview/","bugs":{"url":"https://github.com/signalxjs/lynx/issues"},"dist":{"shasum":"510493bf300618f83cb9ca15043522fb67899646","tarball":"https://registry.npmjs.org/@sigx/lynx-list/-/lynx-list-0.28.0.tgz","fileCount":17,"integrity":"sha512-+u9D4bSUPvgJ4ryfe9RtR3EAe/+CVmi0Bd+WDayEipuOjC5HzwggzyWWjPrfowNgGIwt4RR3x+Jvay2+up+BHA==","signatures":[{"sig":"MEUCIFX2DNRMMoLMPMxS18MwtVKb1goC2wfvQXNr7nlmJHb7AiEAtY4gZJqcf7Q1w27xCTwBnSy/z7NemXMHUy9Vpl+NwAE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":129795},"main":"./dist/index.js","type":"module","_from":"file:sigx-lynx-list-0.28.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json","./signalx-module.json":"./signalx-module.json"},"scripts":{"dev":"tsgo --watch","test":"vitest run","build":"node ../../scripts/clean.mjs dist && tsgo","clean":"node ../../scripts/clean.mjs dist .turbo"},"_npmUser":{"name":"andtii","email":"andreas.ekdahl@omniaintranet.com"},"_resolved":"/private/var/folders/91/rx246wg956j9sc7w7gflhczc0000gn/T/04477e86f5978205b70a115cdb5ebb74/sigx-lynx-list-0.28.0.tgz","_integrity":"sha512-+u9D4bSUPvgJ4ryfe9RtR3EAe/+CVmi0Bd+WDayEipuOjC5HzwggzyWWjPrfowNgGIwt4RR3x+Jvay2+up+BHA==","repository":{"url":"git+https://github.com/signalxjs/lynx.git","type":"git","directory":"packages/lynx-list"},"_npmVersion":"11.6.2","description":"High-performance virtualized list for sigx-lynx — data-driven wrapper over the native <list> recycler with grid/waterfall layouts, header/footer/empty slots, edge-reached events and an imperative scroll API. Pure JS.","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@sigx/lynx":"^0.28.0","typescript":"^6.0.3","@sigx/lynx-testing":"^0.28.0","@typescript/native-preview":"7.0.0-dev.20260521.1"},"peerDependencies":{"@sigx/lynx":"^0.28.0"},"_npmOperationalInternal":{"tmp":"tmp/lynx-list_0.28.0_1788364103743_0.585430534834011","host":"s3://npm-registry-packages-npm-production"}},"0.29.0":{"name":"@sigx/lynx-list","version":"0.29.0","keywords":["signalx","sigx","lynx","list","virtualized","recycler","flatlist"],"author":{"name":"Andreas Ekdahl"},"license":"MIT","_id":"@sigx/lynx-list@0.29.0","maintainers":[{"name":"andtii","email":"andreas.ekdahl@omniaintranet.com"}],"homepage":"https://sigx.dev/lynx/modules/list/overview/","bugs":{"url":"https://github.com/signalxjs/lynx/issues"},"dist":{"shasum":"773152f57fc1a0064528397d9a5604d5ffd83bf8","tarball":"https://registry.npmjs.org/@sigx/lynx-list/-/lynx-list-0.29.0.tgz","fileCount":17,"integrity":"sha512-53H9Yx4axoVeSBRpSvm1BrZZ18XuRj3Sq62+0fbJWqKpegjb0JJnHvTOxlyz1mn43O0VU4DxCY9z3BB+eY6dYw==","signatures":[{"sig":"MEYCIQCQWpTs6OSF7qtUZYvJzaW0GaS+7w6SpS5DI+zek+7oOAIhALAkw0ZSEGeT8ZK524dAi+5BetnrML/edy7Ip0W9zFOR","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIHu1SVQkDWEI/KF6QUbA3rIuAWUIdcA/jud113b4i74KAiB8p2Fy0zA6mHlIKJYy0OQs4zUD5Kd2JVmxIDNUvTy09w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sigx%2flynx-list@0.29.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":129795},"main":"./dist/index.js","type":"module","_from":"file:sigx-lynx-list-0.29.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json","./signalx-module.json":"./signalx-module.json"},"scripts":{"dev":"tsgo --watch","test":"vitest run","build":"node ../../scripts/clean.mjs dist && tsgo","clean":"node ../../scripts/clean.mjs dist .turbo"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:85f8fccb-c002-4b11-a92f-a78d7eb5296b"}},"_resolved":"/tmp/124ef7cc31373c79fa131acfd83ba210/sigx-lynx-list-0.29.0.tgz","_integrity":"sha512-53H9Yx4axoVeSBRpSvm1BrZZ18XuRj3Sq62+0fbJWqKpegjb0JJnHvTOxlyz1mn43O0VU4DxCY9z3BB+eY6dYw==","repository":{"url":"git+https://github.com/signalxjs/lynx.git","type":"git","directory":"packages/lynx-list"},"_npmVersion":"12.0.2","description":"High-performance virtualized list for sigx-lynx — data-driven wrapper over the native <list> recycler with grid/waterfall layouts, header/footer/empty slots, edge-reached events and an imperative scroll API. Pure JS.","directories":{},"sideEffects":false,"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@sigx/lynx":"^0.29.0","typescript":"^6.0.3","@sigx/lynx-testing":"^0.29.0","@typescript/native-preview":"7.0.0-dev.20260521.1"},"peerDependencies":{"@sigx/lynx":"^0.29.0"},"_npmOperationalInternal":{"tmp":"tmp/lynx-list_0.29.0_1789220471058_0.5515847480797991","host":"s3://npm-registry-packages-npm-production"}},"0.30.0":{"name":"@sigx/lynx-list","version":"0.30.0","keywords":["signalx","sigx","lynx","list","virtualized","recycler","flatlist"],"author":{"name":"Andreas Ekdahl"},"license":"MIT","_id":"@sigx/lynx-list@0.30.0","maintainers":[{"name":"andtii","email":"andreas.ekdahl@omniaintranet.com"}],"homepage":"https://sigx.dev/lynx/modules/list/overview/","bugs":{"url":"https://github.com/signalxjs/lynx/issues"},"dist":{"shasum":"b97f5874e7a727532e6a22e49cf028a22c687102","tarball":"https://registry.npmjs.org/@sigx/lynx-list/-/lynx-list-0.30.0.tgz","fileCount":17,"integrity":"sha512-mBMinmp4jPgTxgZz8CRdccrTs3YlUkRi8Qmx7zPns01gxFxvPu9fdavmPL2Kroy4+N7Q1S/yPTazwwY1SwI5RQ==","signatures":[{"sig":"MEQCIEmx439eWOSBAuCEeJun6quvOFwMPKxMftTyzNVJgHwoAiB5/Jgx7pynW6aoItpdK9t47/HvOYKc5PWZOxE4TkUpHg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCODBSQ73qc0fIjp2q+itoOpBjk6bGvmQFZ/jKuPyZ3SAIgTBohe9WHWubMZtOqghZ4kMmjGxbDx5Z6G0enJ95moPk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sigx%2flynx-list@0.30.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":129795},"main":"./dist/index.js","type":"module","_from":"file:sigx-lynx-list-0.30.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json","./signalx-module.json":"./signalx-module.json"},"scripts":{"dev":"tsgo --watch","test":"vitest run","build":"node ../../scripts/clean.mjs dist && tsgo","clean":"node ../../scripts/clean.mjs dist .turbo"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:85f8fccb-c002-4b11-a92f-a78d7eb5296b"}},"_resolved":"/tmp/22b347c2a9192d8934684232cd18607c/sigx-lynx-list-0.30.0.tgz","_integrity":"sha512-mBMinmp4jPgTxgZz8CRdccrTs3YlUkRi8Qmx7zPns01gxFxvPu9fdavmPL2Kroy4+N7Q1S/yPTazwwY1SwI5RQ==","repository":{"url":"git+https://github.com/signalxjs/lynx.git","type":"git","directory":"packages/lynx-list"},"_npmVersion":"12.0.2","description":"High-performance virtualized list for sigx-lynx — data-driven wrapper over the native <list> recycler with grid/waterfall layouts, header/footer/empty slots, edge-reached events and an imperative scroll API. Pure JS.","directories":{},"sideEffects":false,"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@sigx/lynx":"^0.30.0","typescript":"^6.0.3","@sigx/lynx-testing":"^0.30.0","@typescript/native-preview":"7.0.0-dev.20260521.1"},"peerDependencies":{"@sigx/lynx":"^0.30.0"},"_npmOperationalInternal":{"tmp":"tmp/lynx-list_0.30.0_1789249749586_0.3458269764612445","host":"s3://npm-registry-packages-npm-production"}},"0.31.0":{"name":"@sigx/lynx-list","version":"0.31.0","keywords":["signalx","sigx","lynx","list","virtualized","recycler","flatlist"],"author":{"name":"Andreas Ekdahl"},"license":"MIT","_id":"@sigx/lynx-list@0.31.0","maintainers":[{"name":"andtii","email":"andreas.ekdahl@omniaintranet.com"}],"homepage":"https://sigx.dev/lynx/modules/list/overview/","bugs":{"url":"https://github.com/signalxjs/lynx/issues"},"dist":{"shasum":"d609a8e53411c27ca75c07089cf71c3e832297e8","tarball":"https://registry.npmjs.org/@sigx/lynx-list/-/lynx-list-0.31.0.tgz","fileCount":17,"integrity":"sha512-9UZ4CVptHJcJmymeftg1ptUpOg6QSon81Pg8HBzph8j59bisSPhozAG37ic3t5f8fp2Bt7UygLs+RkXN6JfVbw==","signatures":[{"sig":"MEQCIC9QhhBLSACDmsfxdvYVVUP5MzwVd6jMpO0FGLRfjHlAAiBqxbcz4mCsYQ/x5+tvdNmRrdeWPJrcpwLT4EBr15JnXw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCdwy7rYeM4mkWBOtOd0msF4LZT2qMkhTtZgyecoh8LiQIgLuexoGkx7BpHiU6DbACZY8CpO+6OtoPxWz0HPWvwPaQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sigx%2flynx-list@0.31.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":129554},"main":"./dist/index.js","type":"module","_from":"file:sigx-lynx-list-0.31.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json","./signalx-module.json":"./signalx-module.json"},"scripts":{"dev":"tsgo --watch","test":"vitest run","build":"node ../../scripts/clean.mjs dist && tsgo","clean":"node ../../scripts/clean.mjs dist .turbo"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:85f8fccb-c002-4b11-a92f-a78d7eb5296b"}},"_resolved":"/tmp/ddbb2998662efaac9b8ed46f8698f282/sigx-lynx-list-0.31.0.tgz","_integrity":"sha512-9UZ4CVptHJcJmymeftg1ptUpOg6QSon81Pg8HBzph8j59bisSPhozAG37ic3t5f8fp2Bt7UygLs+RkXN6JfVbw==","repository":{"url":"git+https://github.com/signalxjs/lynx.git","type":"git","directory":"packages/lynx-list"},"_npmVersion":"12.0.2","description":"High-performance virtualized list for sigx-lynx — data-driven wrapper over the native <list> recycler with grid/waterfall layouts, header/footer/empty slots, edge-reached events and an imperative scroll API. Pure JS.","directories":{},"sideEffects":false,"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@sigx/lynx":"^0.31.0","typescript":"^6.0.3","@sigx/lynx-testing":"^0.31.0","@typescript/native-preview":"7.0.0-dev.20260521.1"},"peerDependencies":{"@sigx/lynx":"^0.31.0"},"_npmOperationalInternal":{"tmp":"tmp/lynx-list_0.31.0_1790080058072_0.6281697421499839","host":"s3://npm-registry-packages-npm-production"}},"0.32.0":{"name":"@sigx/lynx-list","version":"0.32.0","keywords":["signalx","sigx","lynx","list","virtualized","recycler","flatlist"],"author":{"name":"Andreas Ekdahl"},"license":"MIT","_id":"@sigx/lynx-list@0.32.0","maintainers":[{"name":"andtii","email":"andreas.ekdahl@omniaintranet.com"}],"homepage":"https://sigx.dev/lynx/modules/list/overview/","bugs":{"url":"https://github.com/signalxjs/lynx/issues"},"dist":{"shasum":"963352702c66ee14da01c736e88f4bb79f5348d2","tarball":"https://registry.npmjs.org/@sigx/lynx-list/-/lynx-list-0.32.0.tgz","fileCount":17,"integrity":"sha512-1qche9OSQZVGC8zhtF9DdlaEFv/HarQ4qPuZX6Qc4gbdOaK+QsAhAeYNF/nC0ox/D8dSyYly8u4PN4oNzjmICw==","signatures":[{"sig":"MEUCIGpf1Yg8O3dawwnzhwAwnoMpgqRwwA/FxaeUp0jTcHvaAiEAhFLto2LaYJmXGfXxMvjgriR7x7JJdHXJzrD7C7lhp7k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDwShnq35+Yro4p1yRLLmporpbVTGxmIXGJA6rriyHTCwIgRVbrw8LpmgkV9nbLAY7J2YSY3nz0a/WHR5/z9ODp4uQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sigx%2flynx-list@0.32.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":129554},"main":"./dist/index.js","type":"module","_from":"file:sigx-lynx-list-0.32.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json","./signalx-module.json":"./signalx-module.json"},"scripts":{"dev":"tsgo --watch","test":"vitest run","build":"node ../../scripts/clean.mjs dist && tsgo","clean":"node ../../scripts/clean.mjs dist .turbo"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:85f8fccb-c002-4b11-a92f-a78d7eb5296b"}},"_resolved":"/tmp/c6483875c22776a8741a3bad14548ca3/sigx-lynx-list-0.32.0.tgz","_integrity":"sha512-1qche9OSQZVGC8zhtF9DdlaEFv/HarQ4qPuZX6Qc4gbdOaK+QsAhAeYNF/nC0ox/D8dSyYly8u4PN4oNzjmICw==","repository":{"url":"git+https://github.com/signalxjs/lynx.git","type":"git","directory":"packages/lynx-list"},"_npmVersion":"12.1.0","description":"High-performance virtualized list for sigx-lynx — data-driven wrapper over the native <list> recycler with grid/waterfall layouts, header/footer/empty slots, edge-reached events and an imperative scroll API. Pure JS.","directories":{},"sideEffects":false,"_nodeVersion":"24.21.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@sigx/lynx":"^0.32.0","typescript":"^6.0.3","@sigx/lynx-testing":"^0.32.0","@typescript/native-preview":"7.0.0-dev.20260521.1"},"peerDependencies":{"@sigx/lynx":"^0.32.0"},"_npmOperationalInternal":{"tmp":"tmp/lynx-list_0.32.0_1790410875379_0.021182682293147126","host":"s3://npm-registry-packages-npm-production"}},"0.33.0":{"name":"@sigx/lynx-list","version":"0.33.0","keywords":["signalx","sigx","lynx","list","virtualized","recycler","flatlist"],"author":{"name":"Andreas Ekdahl"},"license":"MIT","_id":"@sigx/lynx-list@0.33.0","maintainers":[{"name":"andtii","email":"andreas.ekdahl@omniaintranet.com"}],"homepage":"https://sigx.dev/lynx/modules/list/overview/","bugs":{"url":"https://github.com/signalxjs/lynx/issues"},"dist":{"shasum":"a2a8c2a0432c8f01a389ed41e0e6fed5b351ffb8","tarball":"https://registry.npmjs.org/@sigx/lynx-list/-/lynx-list-0.33.0.tgz","fileCount":17,"integrity":"sha512-xtMdUhIHfY/STy99zcPBMSrf+F8X9o6enSx5OcLoNtp29NYNNlk1Z9OF1viWcrZFgkUI77hTDyNTqqko76k7NA==","signatures":[{"sig":"MEUCIQD9qLNxEougg2ezyCwlLLF2eObqh/M9Vuk3D2AYD/wUSgIgJTkp6jRcWnRr392dFYgRMN65HS7aQFZ/ONIrHhUg/So=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDixWFwnj5N/jeHDx/0kDbK4QquDNfdoN+qMyWHg78VoQIhAJMvnYSXl2KUf6rAisAv9uEReNilhGtY+X3P0XoiwiuC","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sigx%2flynx-list@0.33.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":129554},"main":"./dist/index.js","type":"module","_from":"file:sigx-lynx-list-0.33.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json","./signalx-module.json":"./signalx-module.json"},"scripts":{"dev":"tsgo --watch","test":"vitest run","build":"node ../../scripts/clean.mjs dist && tsgo","clean":"node ../../scripts/clean.mjs dist .turbo"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:85f8fccb-c002-4b11-a92f-a78d7eb5296b"}},"_resolved":"/tmp/1b079ea381bfb738bc51c0ce8991953c/sigx-lynx-list-0.33.0.tgz","_integrity":"sha512-xtMdUhIHfY/STy99zcPBMSrf+F8X9o6enSx5OcLoNtp29NYNNlk1Z9OF1viWcrZFgkUI77hTDyNTqqko76k7NA==","repository":{"url":"git+https://github.com/signalxjs/lynx.git","type":"git","directory":"packages/lynx-list"},"_npmVersion":"12.1.0","description":"High-performance virtualized list for sigx-lynx — data-driven wrapper over the native <list> recycler with grid/waterfall layouts, header/footer/empty slots, edge-reached events and an imperative scroll API. Pure JS.","directories":{},"sideEffects":false,"_nodeVersion":"24.21.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@sigx/lynx":"^0.33.0","typescript":"^6.0.3","@sigx/lynx-testing":"^0.33.0","@typescript/native-preview":"7.0.0-dev.20260521.1"},"peerDependencies":{"@sigx/lynx":"^0.33.0"},"_npmOperationalInternal":{"tmp":"tmp/lynx-list_0.33.0_1790434003634_0.5379550436211862","host":"s3://npm-registry-packages-npm-production"}},"0.33.1":{"name":"@sigx/lynx-list","version":"0.33.1","keywords":["signalx","sigx","lynx","list","virtualized","recycler","flatlist"],"author":{"name":"Andreas Ekdahl"},"license":"MIT","_id":"@sigx/lynx-list@0.33.1","maintainers":[{"name":"andtii","email":"andreas.ekdahl@omniaintranet.com"}],"homepage":"https://sigx.dev/lynx/modules/list/overview/","bugs":{"url":"https://github.com/signalxjs/lynx/issues"},"dist":{"shasum":"8370e407bcc7f1f8a5745fb4dfdb91dcf01a801b","tarball":"https://registry.npmjs.org/@sigx/lynx-list/-/lynx-list-0.33.1.tgz","fileCount":17,"integrity":"sha512-CtvddIpKgV+Erck0I5RXiEvvFayXLaA/UWqGqZhtbmSeOw3ZaKPgZrFbrlDCN1MtnCH/3pZnDo11tVyf6SLJzA==","signatures":[{"sig":"MEQCIG4D2g/jRXDDXTn4TPeVWLfvLTpy6hscz4rJtCglaVOGAiA4sj50q57+3gcqKZbhiLa3UwzGG641jJcd+OHZRE7s9w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQC/CobukR1X66CkPV0quJyMyDc5Wk8xbxd73LKcsxs0fQIgFbT38a//ysSL23ZhMwOR87dlyyR+ajHZsyZL9FSaUQ4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sigx%2flynx-list@0.33.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":129554},"main":"./dist/index.js","type":"module","_from":"file:sigx-lynx-list-0.33.1.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json","./signalx-module.json":"./signalx-module.json"},"scripts":{"dev":"tsgo --watch","test":"vitest run","build":"node ../../scripts/clean.mjs dist && tsgo","clean":"node ../../scripts/clean.mjs dist .turbo"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:85f8fccb-c002-4b11-a92f-a78d7eb5296b"}},"_resolved":"/tmp/b676bc6703d77ebef2f7660fcf513246/sigx-lynx-list-0.33.1.tgz","_integrity":"sha512-CtvddIpKgV+Erck0I5RXiEvvFayXLaA/UWqGqZhtbmSeOw3ZaKPgZrFbrlDCN1MtnCH/3pZnDo11tVyf6SLJzA==","repository":{"url":"git+https://github.com/signalxjs/lynx.git","type":"git","directory":"packages/lynx-list"},"_npmVersion":"12.1.0","description":"High-performance virtualized list for sigx-lynx — data-driven wrapper over the native <list> recycler with grid/waterfall layouts, header/footer/empty slots, edge-reached events and an imperative scroll API. Pure JS.","directories":{},"sideEffects":false,"_nodeVersion":"24.21.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@sigx/lynx":"^0.33.1","typescript":"^6.0.3","@sigx/lynx-testing":"^0.33.1","@typescript/native-preview":"7.0.0-dev.20260521.1"},"peerDependencies":{"@sigx/lynx":"^0.33.1"},"_npmOperationalInternal":{"tmp":"tmp/lynx-list_0.33.1_1790502745977_0.7801164635521418","host":"s3://npm-registry-packages-npm-production"}},"0.34.0":{"_id":"@sigx/lynx-list@0.34.0","bugs":{"url":"https://github.com/signalxjs/lynx/issues"},"dist":{"shasum":"827390f51f5fd18f148cf3db03b6b7776baae503","tarball":"https://registry.npmjs.org/@sigx/lynx-list/-/lynx-list-0.34.0.tgz","fileCount":17,"integrity":"sha512-51FsV6Tf1uPsKBTTutjTarn03zYGFm0RQ4o2IiTxtjdj16+vmjEwiEQQ7hJzBmm6M1s8iCZnbnD6bliAWbNveA==","signatures":[{"sig":"MEUCICo6RTv65QYX321IxHYnEkAXuzhJStvpFdbNRwfV2cOAAiEA5Rd+bw7KuykjtcOJ4/xksxmm/mYEVsujn4f+x1+4Xm8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQC1IAEFa/0zY6lZQpx/+BxdVQqlpVI5KSsjgWvSgNYjNwIhAPl+Uu8xMM22AJigIvwQeYok58hn/hI/PM7QgQHVk9OD"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sigx%2flynx-list@0.34.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":129554},"main":"./dist/index.js","name":"@sigx/lynx-list","type":"module","_from":"file:sigx-lynx-list-0.34.0.tgz","types":"./dist/index.d.ts","author":{"name":"Andreas Ekdahl"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json","./signalx-module.json":"./signalx-module.json"},"license":"MIT","scripts":{"dev":"tsgo --watch","test":"vitest run","build":"node ../../scripts/clean.mjs dist && tsgo","clean":"node ../../scripts/clean.mjs dist .turbo"},"version":"0.34.0","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:85f8fccb-c002-4b11-a92f-a78d7eb5296b"}},"homepage":"https://sigx.dev/lynx/modules/list/overview/","keywords":["signalx","sigx","lynx","list","virtualized","recycler","flatlist"],"_resolved":"/tmp/65d5fd11644f5f6ed69abb6efc7b49e6/sigx-lynx-list-0.34.0.tgz","_integrity":"sha512-51FsV6Tf1uPsKBTTutjTarn03zYGFm0RQ4o2IiTxtjdj16+vmjEwiEQQ7hJzBmm6M1s8iCZnbnD6bliAWbNveA==","repository":{"url":"git+https://github.com/signalxjs/lynx.git","type":"git","directory":"packages/lynx-list"},"_npmVersion":"12.1.0","description":"High-performance virtualized list for sigx-lynx — data-driven wrapper over the native <list> recycler with grid/waterfall layouts, header/footer/empty slots, edge-reached events and an imperative scroll API. Pure JS.","directories":{},"maintainers":[{"name":"andtii","email":"andreas.ekdahl@omniaintranet.com"}],"sideEffects":false,"_nodeVersion":"24.21.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@sigx/lynx":"^0.34.0","typescript":"^6.0.3","@sigx/lynx-testing":"^0.34.0","@typescript/native-preview":"7.0.0-dev.20260521.1"},"peerDependencies":{"@sigx/lynx":"^0.34.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/lynx-list_0.34.0_1790601888219_0.48957324483980846"}}},"time":{"created":"2026-06-25T14:32:15.173Z","modified":"2026-09-28T13:24:48.678Z","0.11.0":"2026-06-25T14:32:15.551Z","0.12.0":"2026-07-13T13:37:47.075Z","0.12.1":"2026-07-13T19:52:32.965Z","0.12.2":"2026-07-14T09:03:23.913Z","0.13.0":"2026-07-15T18:11:52.688Z","0.14.0":"2026-07-16T11:10:09.083Z","0.15.0":"2026-07-16T21:21:27.786Z","0.17.0":"2026-07-19T16:58:45.998Z","0.18.0":"2026-07-21T09:24:04.599Z","0.18.1":"2026-07-21T21:09:30.430Z","0.19.0":"2026-07-23T13:16:29.129Z","0.20.0":"2026-07-23T14:12:12.890Z","0.21.0":"2026-07-24T07:10:30.171Z","0.22.0":"2026-07-28T12:27:18.973Z","0.23.0":"2026-07-30T14:46:31.459Z","0.24.0":"2026-08-04T22:54:43.310Z","0.25.0":"2026-08-05T08:06:01.869Z","0.26.0":"2026-08-05T13:09:31.682Z","0.27.0":"2026-08-10T08:37:29.855Z","0.28.0":"2026-09-02T15:48:23.879Z","0.29.0":"2026-09-12T13:41:11.156Z","0.30.0":"2026-09-12T21:49:09.680Z","0.31.0":"2026-09-22T12:27:38.161Z","0.32.0":"2026-09-26T08:21:15.458Z","0.33.0":"2026-09-26T14:46:43.718Z","0.33.1":"2026-09-27T09:52:26.074Z","0.34.0":"2026-09-28T13:24:48.312Z"},"bugs":{"url":"https://github.com/signalxjs/lynx/issues"},"author":{"name":"Andreas Ekdahl"},"license":"MIT","homepage":"https://sigx.dev/lynx/modules/list/overview/","keywords":["signalx","sigx","lynx","list","virtualized","recycler","flatlist"],"repository":{"url":"git+https://github.com/signalxjs/lynx.git","type":"git","directory":"packages/lynx-list"},"description":"High-performance virtualized list for sigx-lynx — data-driven wrapper over the native <list> recycler with grid/waterfall layouts, header/footer/empty slots, edge-reached events and an imperative scroll API. Pure JS.","maintainers":[{"name":"andtii","email":"andreas.ekdahl@omniaintranet.com"}],"readme":"# @sigx/lynx-list\n\nHigh-performance, data-driven **virtualized list** for [sigx-lynx](https://github.com/signalxjs/lynx).\n\nA thin, ergonomic wrapper over Lynx's native `<list>` recycler: pass `items` +\n`renderItem` and only the cells on screen ever exist as native views, so it stays\nsmooth for long feeds and grids. Pure JS — no native module to link.\n\n```sh\npnpm add @sigx/lynx-list\n```\n\n## 📚 Documentation\n\nFull guides, API reference and live examples → **[https://sigx.dev/lynx/modules/list/overview/](https://sigx.dev/lynx/modules/list/overview/)**\n\n## Usage\n\n```tsx\nimport { List } from '@sigx/lynx-list';\n\n<List\n  items={posts}\n  keyExtractor={(p) => p.id}\n  estimatedItemSize={88}\n  style={{ flexGrow: 1 }}\n  renderItem={(post) => <PostRow post={post} />}\n  onEndReached={() => loadNextPage()}\n/>;\n```\n\n`items`/`renderItem` are generic — `renderItem`'s argument is inferred from `items`,\nso `post` above is fully typed.\n\n### Sizing\n\nThe native `<list>` only lays out with a **concrete** main-axis size — `flex`/`%`\nresolve to zero and nothing renders. So `class`/`style` land on a measuring\nwrapper `<view>` (where flex sizing works as usual, e.g. `style={{ flexGrow: 1 }}`\ninside a column); the wrapper measures itself and pins the list to the measured\npx. First paint is one frame after mount (a 1px placeholder until the measure\nlands) — unless you pass `initialMainAxisSize` with a size you already know\n(e.g. sibling lists sharing one container), which pins the list at full size\nfrom its very first frame; the live measure still wins once it arrives. This\nmirrors the pattern proven by `EmojiGrid` in `@sigx/lynx-emoji`.\n\n### Grid & waterfall\n\n```tsx\n<List items={photos} numColumns={3} listType=\"flow\" renderItem={renderPhoto} />\n<List items={cards} numColumns={2} listType=\"waterfall\" renderItem={renderCard} />\n```\n\n### Header / footer / empty slots\n\n```tsx\n<List\n  items={items}\n  renderItem={renderRow}\n  slots={{\n    header: () => <SectionTitle>Recent</SectionTitle>,\n    footer: () => <LoadingSpinner />,\n    empty: () => <EmptyState />,\n  }}\n/>\n```\n\n`header`/`footer` ride along as full-span cells; `empty` renders in place of the\nlist when `items` is empty.\n\n### Imperative scrolling\n\nCapture the native element via `mtRef` and drive it from a main-thread handler\nwith `ListMethods` (mirrors `WebViewMethods` in `@sigx/lynx-webview`):\n\n```tsx\nimport { useMainThreadRef, type MainThread } from '@sigx/lynx';\nimport { List, ListMethods } from '@sigx/lynx-list';\n\nconst ref = useMainThreadRef<MainThread.Element | null>(null);\nconst toTop = () => { 'main thread'; ListMethods.scrollToTop(ref.current, { smooth: true }); };\n\n<List mtRef={ref} items={items} renderItem={renderRow} />;\n```\n\n`ListMethods.scrollToIndex(el, i, { align, offset, smooth })` and\n`scrollToTop(el, { smooth })`. `i` is the **rendered cell index**, not the data\nindex — a `header` slot is itself cell 0, so add 1 to a data index when a header\nis present. Inside a `runOnMainThread` worklet, inline the `el.invoke(...)`\ncall and pass the exported `SCROLL_METHOD` constant as an argument — worklet\ncapture doesn't carry imported function refs, so calling `ListMethods.*` there\nwould silently no-op.\n\n### Inside a bottom sheet (`dragMode=\"surface\"`)\n\nA vertical `<List>` adopts an ancestor `ScrollDragHost` (provided by\n`@sigx/lynx-sheet` / `@sigx/lynx-navigation` sheets with `dragMode=\"surface\"`)\nautomatically — no props needed. The first vertical scrollable inside the\nsheet wins the slot: the sheet's pan worklet arbitrates against the list's\nlive scroll offset (drag down from the top hands the touch back to the\nsheet), and the list's scroll is locked while the sheet owns a drag. A\nnon-adopted vertical List inside a sheet still freezes during sheet drags.\n\nWhile adopted, a consumer `mtRef` is **mirrored** to the same element rather\nthan bound: `invoke(...)`-based methods (`ListMethods.*`, `scrollToPosition`)\nkeep working, but gesture / animated-style attachment to that ref does not.\nThe scroll-event throttle also tightens to 16 ms (from the default 100) so\nthe arbitration mirror tracks the finger; an explicit `scrollEventThrottle`\nstill wins.\n\n### Sticky section headers\n\nPass `sticky` (and optionally `stickyOffset`, px) on the `List` to activate\nsticky positioning for items that declare `sticky-top` / `sticky-bottom`. In\n`templateCells` mode set those (plus `full-span` for grid lists) directly on\nthe header's `<list-item>` template — the platform info flows through with the\ntemplate. See `@sigx/lynx-emoji`'s sectioned picker for the full pattern\n(headers + scroll-to-section + a tab bar following the scroll).\n\n### Paginated snapping\n\nPass `itemSnap` to make scrolling settle on item boundaries. The shorthand\npicks an alignment; the object form is the native contract in full:\n\n```tsx\n<List items={pages} renderItem={renderPage} horizontal itemSnap=\"center\" />\n\n<List\n  items={pages}\n  renderItem={renderPage}\n  horizontal\n  itemSnap={{ factor: 0.5, offset: 0, maxSnapCount: 3 }}\n/>\n```\n\n| Field | Meaning |\n| --- | --- |\n| `factor` | Where the item settles as a fraction of the viewport — `0` start, `0.5` centre, `1` end. Default `0`. |\n| `offset` | Pixel offset from the alignment line. Default `0`. |\n| `maxSnapCount` | How many items one fling may cross. `1` (the default) is the original one-item-per-fling behaviour; higher lets a fast fling page further. **Lynx 4.0+**; older hosts ignore it. |\n\nOmit `itemSnap` entirely to disable snapping — there is no `'none'` value,\nbecause native treats an absent or empty `item-snap` as \"no paging\".\n\nOut-of-contract values are corrected the way native itself would (`factor`\noutside `[0,1]` → `0`, `maxSnapCount` below `1` → `1`), with a dev-build\nwarning naming the offending value — so the attribute we emit is always one\nnative accepts, and the correction is visible rather than silent.\n\n### Pull-to-refresh & load-more\n\nOpt into pull-to-refresh by passing the controlled `refreshing` prop (vertical\nlists only). Pulling down past `pullThreshold` while at the top emits `onRefresh`;\nhold `refreshing` true to keep the indicator open, set it back to `false` to\ndismiss. Customize the indicator with the `refresh` slot. For infinite scroll,\ndebounce on `onEndReached` and set `loadingMore` to show a trailing loading cell.\n\n```tsx\n<List\n  items={items}\n  renderItem={renderRow}\n  refreshing={refreshing.value}\n  onRefresh={() => reload()}\n  loadingMore={loadingMore.value}\n  onEndReached={() => loadMore()}\n/>\n```\n\n### Chat mode\n\nPass `inverted` for a WhatsApp-style chat (vertical only): items render\noldest→newest, the first paint is already scrolled to the newest message\n(opacity-gated to hide the jump), and new items **stick to the bottom** while\nyou're there — or raise the `newMessages` affordance when you've scrolled up\n(tap it to jump back down). `stickToBottom` (default `true`) opts out of the\nauto-scroll. Provide a real `keyExtractor` so the recycler tracks messages.\n\nWhile the viewport is at the bottom, the pin is a contract: any relayout —\nlate self-measure growth (markdown settling, images decoding), a **streaming\nlast message** growing without a count change, a footer slot changing height —\nre-pins to the newest instantly. No consumer-side follow-scroll needed.\nScrolling up releases the pin on the first real movement.\n\nDon't pass `estimatedItemSize` for chat — bubbles are variable-height, and a\nfixed estimate briefly clips taller messages as they scroll in (see the prop\nnote below). Let the cells self-measure.\n\n```tsx\n<List\n  items={messages.value}\n  keyExtractor={(m) => m.id}\n  inverted\n  style={{ flexGrow: 1 }}\n  renderItem={(m) => <MessageBubble message={m} />}\n  slots={{ newMessages: ({ count }) => <Pill>{count} new ↓</Pill> }}\n/>\n```\n\nFor a programmatic \"jump to the newest\" (e.g. the user sends a message while\nscrolled up — appends deliberately raise the affordance instead of yanking),\npass a `scrollHandle` and call `scrollToEnd`:\n\n```tsx\nimport type { ListScrollHandle } from '@sigx/lynx-list';\n\n// Create the handle ONCE in setup (identity-stable — the List populates it\n// during its own setup, so a handle recreated per render stays null).\nconst listScroll: ListScrollHandle = { scrollToEnd: null };\n\nconst onSend = async (text: string) => {\n  await send(text);\n  listScroll.scrollToEnd?.({ smooth: true });\n};\n\n<List scrollHandle={listScroll} items={messages.value} inverted … />;\n```\n\nPrefer `scrollHandle` over `ListMethods` + `mtRef` for scroll-to-end: the\ntarget cell index depends on the header/footer slots and the rendered window,\nwhich are internal state only the List can see. It also marks the viewport\nat-bottom, so a cell that hasn't reached native yet is still caught by the\nnext relayout's re-pin.\n\n### Frame-synced bottom inset (`bottomInset`)\n\nA chat list usually sits behind an occluder that moves on the **main\nthread** — the keyboard rising, a composer sheet dragged between detents. A\nwrapper `paddingBottom` only takes settled values (BG relayout), so mid-motion\nthe occluder covers the newest rows and the content pops clear on rest.\n\n`bottomInset` fixes this natively: the platform recycler keeps that much of\nits bottom viewport clear (a pure viewport inset — **no layout pass**), and a\n`SharedValue` drives it **per frame**:\n\n```tsx\nimport { useKeyboardLiftSV } from '@sigx/lynx-keyboard';\n\n// Keyboard-only chat: the list bottom tracks the keyboard rise.\nconst kbLift = useKeyboardLiftSV(false);\n<List items={messages.value} inverted bottomInset={kbLift} … />;\n\n// With a composer BottomSheet: its onReveal SV is the occluder height\n// (max of the sheet's dragged reveal and floor + keyboard lift) — one SV,\n// nothing to compose. Numeric fallback until the sheet hands it out.\nconst occluder = signal<SharedValue<number> | null>(null);\n<BottomSheet onReveal={(sv) => { occluder.value = sv; }} … />\n<List items={messages.value} inverted bottomInset={occluder.value ?? floorH} … />;\n```\n\nWhile pinned at the bottom, the newest item stays anchored **above** the inset\n— compensation happens natively in the same frame, and release detection is\ninset-aware, so the compensation scroll can never falsely release the pin. If\nthe user has scrolled up, an inset change never moves what they're reading.\n\nNotes:\n- The **presence** of the prop is mount-constant (it opts the element into the\n  native `sigx-list` component at creation); the value/kind (`number` ⇄\n  `SharedValue`) may change freely — pass a numeric fallback first render.\n- Requires a `sigx prebuild` after upgrading (the native module autolinks).\n  Hosts without it — including **web** — ignore the inset; keep a wrapper\n  `paddingBottom` fallback there. Vertical lists only.\n\n### Windowing (long histories)\n\nFor thousands of items, pass `windowSize` to render only a bounded sliding\nslice of `items` as native cells (the runtime materializes every *rendered*\ncell — only native views recycle). The window anchors to the newest in chat\nmode (the start in a feed) and pages older/newer as you scroll, trimming the\noff-screen far end to stay within `maxWindow`.\n\n```tsx\n<List\n  items={allMessages.value}   // the full history in memory…\n  keyExtractor={(m) => m.id}\n  inverted\n  windowSize={60}             // …but only ~60 cells are ever rendered\n  pageSize={30}\n  style={{ flexGrow: 1 }}\n  renderItem={(m) => <MessageBubble message={m} />}\n  onStartReached={() => loadOlderFromStore()}  // optional: lazy-page into `items`\n/>\n```\n\nScrolling to the top reveals an older page (at-top, so no visible jump); a\nzero-jump anchored expansion mid-list is device-pending. Omit `windowSize` to\nrender every item.\n\nPaging older history **into `items`** (a head-prepend, the natural\n`onStartReached` shape) translates the window by the prepended count, so the\nrendered slice keeps referencing the same items and the viewport stays put —\nthis also relies on a real `keyExtractor` (index keys can't be told apart\nacross a shift).\n\n### Swapping datasets (`itemsKey`)\n\nThe window and scroll position survive item updates by design — appends,\nprepends and edits keep the viewport where it is. But when you replace `items`\n**wholesale** (switching tabs or categories, a new search result set), that's\nwrong: the viewport stays stranded wherever scrolling had left it in the *old*\ndataset. Pass `itemsKey` — an identity for the dataset — and when it changes\nthe list treats `items` as brand new: the window re-anchors to its initial\nposition and the scroll resets to the start (the bottom in chat mode).\n\n```tsx\n<List\n  items={byCategory[activeTab.value]}\n  itemsKey={activeTab.value}      // tab switch = a new dataset → back to the top\n  keyExtractor={(e) => e.id}\n  windowSize={120}\n  renderItem={renderCell}\n/>\n```\n\nZero-cost when omitted; omit it for append/prepend/edit flows.\n\n## Props\n\n| Prop | Type | Notes |\n|---|---|---|\n| `items` | `readonly T[]` | **Required.** The data. |\n| `renderItem` | `(item: T, index) => JSX` | **Required.** Per-cell renderer. |\n| `keyExtractor` | `(item: T, index) => string` | Stable recycler key (`item-key`). Defaults to the index — set it for lists that mutate. |\n| `itemType` | `(item: T, index) => string` | Recycle-pool selector (`item-type`). |\n| `estimatedItemSize` | `number` | Main-axis px estimate for **uniform** rows; improves scroll accuracy. Omit for variable-height content (chat) — a too-small estimate clips items until measured. |\n| `horizontal` | `boolean` | Horizontal scrolling. |\n| `numColumns` | `number` | Grid columns (`span-count`). |\n| `listType` | `'single' \\| 'flow' \\| 'waterfall'` | Layout mode. |\n| `itemSnap` | `'start' \\| 'center' \\| 'end' \\| ListItemSnapOptions` | Paginated snap. Omit to disable. |\n| `onEndReachedThreshold` | `number` | Items-from-end to fire `onEndReached`. |\n| `onStartReachedThreshold` | `number` | Items-from-start to fire `onStartReached`. |\n| `loadingMore` | `boolean` | Show a trailing loading cell (infinite scroll). |\n| `refreshing` | `boolean` | Controlled pull-to-refresh state; passing it opts in (vertical only). |\n| `pullThreshold` | `number` | Pull distance (px) that triggers a refresh. Default 64. |\n| `inverted` | `boolean` | Chat mode: bottom-anchored + stick-to-bottom (vertical only). |\n| `stickToBottom` | `boolean` | In chat mode, auto-scroll on new items when at the bottom. Default `true`. |\n| `templateCells` | `boolean` | **Template-native rows** — `renderItem` returns a `<list-item>` written in your own source and List passes it through unwrapped. See below. |\n| `windowSize` | `number` | Enables windowing: render only this many cells of a long `items`. Ignored under `templateCells`. |\n| `pageSize` | `number` | Items revealed per scroll-edge page when windowing. Default 30. |\n| `maxWindow` | `number` | Cap on rendered window length; the far end trims past it. Default `max(120, windowSize×2)`. |\n| `itemsKey` | `string` | Dataset identity — when it changes, the window re-anchors and scroll resets (see \"Swapping datasets\"). |\n| `initialMainAxisSize` | `number` | Known main-axis px to pin the list to on its first frame (skips the 1px placeholder); the live measure refines it. |\n| `mtRef` | `ListRef` | Capture the native element for `ListMethods`. Inside a surface-drag sheet it is mirrored, not bound — `invoke` methods work, gesture/animated-style attachment doesn't. |\n| `scrollHandle` | `ListScrollHandle` | Imperative handle populated at setup (create it once — identity-stable): `scrollToEnd({ smooth? })` scrolls to the last rendered cell (slots + windowing accounted for). |\n| `newMessagesOffset` | `number` | Px from the bottom edge for the chat `newMessages` affordance. Default 12 — raise it to clear a floating composer overlay. |\n| `class` / `style` | — | Applied to the measuring wrapper. |\n\n**Events:** `onEndReached`, `onStartReached`, `onScroll({ offset })`, `onRefresh`.\n**Slots:** `header`, `footer`, `empty`, `refresh`, `newMessages({ count })`.\n\n## Template-native cells (`templateCells`)\n\nWith `snapshots` builds (the default), JSX written in your app or in a package\nbuilt with the snapshot dist emitter compiles to main-thread templates. When\n`renderItem` returns a **`<list-item>` element from your own source**, pass\n`templateCells` and List stops wrapping it:\n\n```tsx\n<List\n  items={rows}\n  templateCells\n  keyExtractor={(r) => r.id}\n  renderItem={(r) => (\n    <list-item item-key={r.id} estimated-main-axis-size-px={56}>\n      <text>{r.title}</text>\n    </list-item>\n  )}\n/>\n```\n\nWhat this changes:\n\n- **Rows are staged records, not rendered subtrees.** The main thread builds\n  each cell synchronously the moment the native recycler asks for it — a\n  fling can never observe a blank cell — and off-screen cell trees recycle\n  through template-keyed pools.\n- **Windowing becomes unnecessary** and is disabled (a warning fires if\n  `windowSize` is also set). Pass all your items.\n- Your `<list-item>` owns `item-key`, `item-type`,\n  `estimated-main-axis-size-px`, etc. as JSX attributes; List's `itemType` /\n  `estimatedItemSize` props do not apply to pass-through rows. `keyExtractor`\n  still supplies the reconciliation key (set as the vnode key unless your JSX\n  passes an explicit `key`).\n- Keep the cell **self-contained**: a cell whose template has slot children\n  (e.g. wrapping a component like `Pressable` around your content) renders\n  but never pools. Rows whose root isn't a `<list-item>` don't paint at all —\n  a main-thread diagnostic (active on hosts exposing `__GetTag`, one introspection per template type, all builds) names the offending template.\n\nHeader, footer, loading and empty slots keep the classic wrapped path; the\ntwo row kinds coexist in one list.\n\n## Roadmap\n\n- ~~Lazy runtime virtualization so off-screen cells aren't eagerly built~~ —\n  shipped as `templateCells` (#645, on the #620 snapshot-template runtime).\n\n## Web\n\n`<List>` renders on web (`sigx run:web`): `@lynx-js/web-core` creates `<list>` as\nupstream's `x-list` (and leaves `<list-item>` as its own element), so scrolling,\nthe layout attributes (`span-count`, `list-type`, `sticky-offset`), the\nedge-threshold events and the `layoutcomplete` that drives chat mode all exist\nthere. What doesn't cross over:\n\n- **No recycling, and no scroll-driven cell pull.** Both cell modes go through\n  the same `componentAtIndex` / `enqueueComponent` callbacks, but on web the\n  engine drives them from the `update-list-info` attribute, not from scrolling:\n  web-core intercepts that `__SetAttribute` and, in a microtask, calls\n  `componentAtIndex` once per inserted row and `enqueueComponent` once per\n  removed one, splicing the returned element into the DOM. Every row is\n  materialized up front and stays a live DOM node, so `templateCells`'\n  recycling buys nothing there — `windowSize` is what bounds a long dataset on\n  web.\n- **`itemSnap` doesn't snap.** The web `x-list` reads `item-snap` only to emit a\n  `snap` event at scroll end (which `<List>` doesn't consume); it never aligns\n  the scroll. Likewise `align` in `ListMethods.scrollToIndex`: web's\n  `scrollToPosition` honours `position`, `offset` and `smooth` and ignores\n  `alignTo`.\n- **`bottomInset` is native-only.** It needs the autolinked `sigx-list`\n  component, which has no web element — use a wrapper `paddingBottom` there.\n\n## License\n\nMIT\n","readmeFilename":"README.md"}