{"_id":"zeno-db","_rev":"62-84c06548b2dd589ae4c757e822f7b3b3","name":"zeno-db","dist-tags":{"latest":"0.1.61"},"versions":{"0.1.0":{"name":"zeno-db","version":"0.1.0","keywords":["database","indexeddb","postgresql","sync","offline-first","websocket"],"author":"","license":"MIT","_id":"zeno-db@0.1.0","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"90e6ed15a49bc138ea47d80cda231e37f851b2ba","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.0.tgz","fileCount":23,"integrity":"sha512-QNBkjxXippRr81vUQqdSpfEamEd1eRDUA3rgM9Fn71eeIYIbxsBhogc5WI/q4ziqpo/rNM4ihZoCEdJmizz60A==","signatures":[{"sig":"MEUCIFtsYyzFY0jn8x9gtBAwCsj37X1neLfnA1XFWBvfOb6pAiEAzXfGoesuxR8/yyn23LOrRaExFn+sXDa4FwfH9eWEdXg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":40159},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","module":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/sync-server.d.ts","import":"./dist/sync-server.js"}},"scripts":{"dev":"nodemon --watch 'server/**/*.ts' --exec 'tsc && node dist/server/index.js'","test":"jest","build":"tsc","start":"tsc && node dist/server/index.js","prepare":"npm run build","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A client-side database with automatic sync to PostgreSQL backend","directories":{},"_nodeVersion":"22.13.1","dependencies":{"pg":"^8.11.3","ws":"^8.18.1","idb":"^8.0.0","dotenv":"^16.5.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","nodemon":"^3.1.0","ts-jest":"^29.1.2","@types/pg":"^8.11.0","@types/ws":"^8.18.1","typescript":"^5.8.3","@types/jest":"^29.5.12","@types/node":"^22.14.1"},"peerDependencies":{"idb":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.0_1745583540920_0.01761981680832192","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"zeno-db","version":"0.1.1","keywords":["database","indexeddb","postgresql","sync","offline-first","websocket"],"author":"","license":"MIT","_id":"zeno-db@0.1.1","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"bbdc85448a8b763b5e057d81041c6c429ff56f0b","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.1.tgz","fileCount":17,"integrity":"sha512-+AMfVTUOX1me0TKkjTmLPm1zKjgZwfz7od2Mh4YLgENLFFYG0qeevYIc3nyaXNcuotFg7qWm9f3dYll2ER5+Cw==","signatures":[{"sig":"MEYCIQDFuTqnu58+EwUtVTJ/frkFvZ0cK0agzYyRmd8Cu7Lz1wIhAPNwTeIzLgT5llCFeF7MPwVBpsI0XuojlfQMW35WiR/s","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":37134},"main":"dist/core/index.js","type":"module","types":"dist/core/index.d.ts","module":"dist/core/index.js","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.js","require":"./dist/core/index.js"},"./server":{"types":"./dist/server/sync-server.d.ts","import":"./dist/server/sync-server.js","require":"./dist/server/sync-server.js"}},"scripts":{"dev":"nodemon --watch 'server/**/*.ts' --exec 'tsc && node dist/server/index.js'","test":"jest","build":"tsc","start":"tsc && node dist/server/index.js","prepare":"npm run build","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A client-side database with automatic sync to PostgreSQL backend","directories":{},"_nodeVersion":"22.13.1","dependencies":{"pg":"^8.11.3","ws":"^8.18.1","idb":"^8.0.0","dotenv":"^16.5.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","nodemon":"^3.1.0","ts-jest":"^29.1.2","@types/pg":"^8.11.0","@types/ws":"^8.18.1","typescript":"^5.8.3","@types/jest":"^29.5.12","@types/node":"^22.14.1"},"peerDependencies":{"idb":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.1_1745584153518_0.9059654120796836","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"zeno-db","version":"0.1.2","keywords":["database","indexeddb","postgresql","sync","offline-first","websocket"],"author":"","license":"MIT","_id":"zeno-db@0.1.2","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"6b1da44de5d8eceed0a705d675ed608b0e32505d","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.2.tgz","fileCount":17,"integrity":"sha512-7e2Au8M0ap6Qm2Vx1MbiaX0naZv6lFJwG28WRxv+jlA4lKUqy2HVN2jr/dDt20Fd3oJDsilYFVm/tT5qDY6i1w==","signatures":[{"sig":"MEQCIAPfiKa4ux+ZhgzY0UvMEfl+QNFfR7RXHMowMQtM6MeHAiBK8WswW/e2o5RbDNmG/j+sncaR0gYP6uaRE5TSwyX4LA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":37134},"main":"dist/core/index.js","type":"module","types":"dist/core/index.d.ts","module":"dist/core/index.js","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.js","require":"./dist/core/index.js"},"./server":{"types":"./dist/server/sync-server.d.ts","import":"./dist/server/sync-server.js","require":"./dist/server/sync-server.js"}},"scripts":{"dev":"nodemon --watch 'server/**/*.ts' --exec 'tsc && node dist/server/index.js'","test":"jest","build":"tsc","start":"tsc && node dist/server/index.js","prepare":"npm run build","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A client-side database with automatic sync to PostgreSQL backend","directories":{},"_nodeVersion":"22.13.1","dependencies":{"pg":"^8.11.3","ws":"^8.18.1","idb":"^8.0.0","dotenv":"^16.5.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","nodemon":"^3.1.0","ts-jest":"^29.1.2","@types/pg":"^8.11.0","@types/ws":"^8.18.1","typescript":"^5.8.3","@types/jest":"^29.5.12","@types/node":"^22.14.1"},"peerDependencies":{"idb":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.2_1745584201884_0.37858907592773217","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"zeno-db","version":"0.1.3","keywords":["database","indexeddb","postgresql","sync","offline-first","websocket"],"author":"","license":"MIT","_id":"zeno-db@0.1.3","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"6718a5fbde8a7df24c2c1e9a54e85c70c7708ef0","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.3.tgz","fileCount":17,"integrity":"sha512-4u7h50F6AKQ49EZQ4AoD2zm0P+boiRw9JW77+MnfjzyjH/H5JojqAYTNGmTnIfCdtzkJr61CR2diGT3wmaSYOg==","signatures":[{"sig":"MEQCIH1VVI21UNtr1V9Z5/RLJrZ6Oc6Lmzci6CM0nXbmOdawAiBZtnQCNhO1wB0wst0r+2bXqlZI4UATCaNCPuMq0MGaOQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":36945},"type":"module","exports":{".":{"types":"./dist/core/index.d.ts","default":"./dist/core/index.js"},"./server":{"types":"./dist/server/sync-server.d.ts","default":"./dist/server/sync-server.js"}},"scripts":{"dev":"nodemon --watch 'server/**/*.ts' --exec 'tsc && node dist/server/index.js'","test":"jest","build":"tsc","start":"tsc && node dist/server/index.js","prepare":"npm run build","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A client-side database with automatic sync to PostgreSQL backend","directories":{},"_nodeVersion":"22.13.1","dependencies":{"pg":"^8.11.3","ws":"^8.18.1","idb":"^8.0.0","dotenv":"^16.5.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","nodemon":"^3.1.0","ts-jest":"^29.1.2","@types/pg":"^8.11.0","@types/ws":"^8.18.1","typescript":"^5.8.3","@types/jest":"^29.5.12","@types/node":"^22.14.1"},"peerDependencies":{"idb":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.3_1745584330457_0.4233602358598547","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"zeno-db","version":"0.1.4","keywords":["database","indexeddb","postgresql","sync","offline-first","websocket"],"author":"","license":"MIT","_id":"zeno-db@0.1.4","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"a4a89fe52c39ba63615105c47e37dc37560a8913","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.4.tgz","fileCount":17,"integrity":"sha512-izXo5lsQRtvdyVQEbZLe9dm3Wo0E8OntlRXNtswf5uvNL9QVkkCDl4lRGvYBVgVMlgc3m0inEKKXGKVSDOdjDQ==","signatures":[{"sig":"MEYCIQC/PtUmB5+WlXlgBBxQBni1Kwzx3CORXjDeuWBEiCyhxwIhALqc5oh5C5R6uOopPWn4qrJ7Zm+P5h7vF7vE+IGumUbw","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":37254},"type":"module","exports":{".":{"types":"./dist/core/index.d.ts","default":"./dist/core/index.js"},"./server":{"types":"./dist/server/sync-server.d.ts","default":"./dist/server/sync-server.js"}},"scripts":{"dev":"nodemon --watch 'server/**/*.ts' --exec 'tsc && node dist/server/index.js'","test":"jest","build":"tsc","start":"tsc && node dist/server/index.js","prepare":"npm run build","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A client-side database with automatic sync to PostgreSQL backend","directories":{},"_nodeVersion":"22.13.1","dependencies":{"pg":"^8.11.3","ws":"^8.18.1","idb":"^8.0.0","dotenv":"^16.5.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","nodemon":"^3.1.0","ts-jest":"^29.1.2","@types/pg":"^8.11.0","@types/ws":"^8.18.1","typescript":"^5.8.3","@types/jest":"^29.5.12","@types/node":"^22.14.1"},"peerDependencies":{"idb":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.4_1745584605668_0.057162054415881736","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"zeno-db","version":"0.1.5","keywords":["database","indexeddb","postgresql","sync","offline-first","websocket"],"author":"","license":"MIT","_id":"zeno-db@0.1.5","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"7c4895734775e254935b94dac800fc6d3aff6324","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.5.tgz","fileCount":17,"integrity":"sha512-ZQU+WEtyMngyqYO64wGdC5jxnsSY2wHN02DMlASYsBYIUcVI5lztwZn1HfIOlArUklSDHsmZiFnsd69+yPNaTw==","signatures":[{"sig":"MEYCIQDlMHFEYhEzW0Jv8/bnCfiZh/mPvBqZ2va4ENVr+cJPAwIhALQLMzX8sSzGeuRdGZUAJfYK7AW791k7MXWyzIJZEaH3","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":37254},"type":"module","exports":{".":{"types":"./dist/core/index.d.ts","default":"./dist/core/index.js"},"./server":{"types":"./dist/server/sync-server.d.ts","default":"./dist/server/sync-server.js"}},"scripts":{"dev":"nodemon --watch 'server/**/*.ts' --exec 'tsc && node dist/server/index.js'","test":"jest","build":"tsc","start":"tsc && node dist/server/index.js","prepare":"npm run build","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A client-side database with automatic sync to PostgreSQL backend","directories":{},"_nodeVersion":"22.13.1","dependencies":{"pg":"^8.11.3","ws":"^8.18.1","idb":"^8.0.0","dotenv":"^16.5.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","nodemon":"^3.1.0","ts-jest":"^29.1.2","@types/pg":"^8.11.0","@types/ws":"^8.18.1","typescript":"^5.8.3","@types/jest":"^29.5.12","@types/node":"^22.14.1"},"peerDependencies":{"idb":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.5_1745584831163_0.2435179951262425","host":"s3://npm-registry-packages-npm-production"}},"0.1.6":{"name":"zeno-db","version":"0.1.6","keywords":["database","indexeddb","postgresql","sync","offline-first","websocket"],"author":"","license":"MIT","_id":"zeno-db@0.1.6","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"18591f17ce2d6cdafef31fd3e931e57da41f8ef4","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.6.tgz","fileCount":17,"integrity":"sha512-sMi/FDNMFvW6oIcCUfvPZX1Naa7APqQHvzF4H9k5NKHu3JRGN9opyCA2Pk/rr+EzUQj4RF3L0aXXv575ZAnh/Q==","signatures":[{"sig":"MEQCIE05Xe96tpIZWwSXpMbw0YF74hiWLCvwQKIidi3Ef9XDAiBN4G23tC5MPT9qeoaL+OT9cUlUA7mDz1QeJvZBxbeEqg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":37092},"type":"module","exports":{".":{"types":"./dist/core/index.d.ts","default":"./dist/core/index.js"},"./server":{"types":"./dist/server/sync-server.d.ts","default":"./dist/server/sync-server.js"}},"scripts":{"dev":"nodemon --watch 'server/**/*.ts' --exec 'tsc && node dist/server/index.js'","test":"jest","build":"tsc","start":"tsc && node dist/server/index.js","prepare":"npm run build","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A client-side database with automatic sync to PostgreSQL backend","directories":{},"_nodeVersion":"22.13.1","dependencies":{"pg":"^8.11.3","idb":"^8.0.0","dotenv":"^16.5.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","nodemon":"^3.1.0","ts-jest":"^29.1.2","@types/pg":"^8.11.0","typescript":"^5.8.3","@types/jest":"^29.5.12","@types/node":"^22.14.1"},"peerDependencies":{"idb":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.6_1745586758424_0.5888023978408619","host":"s3://npm-registry-packages-npm-production"}},"0.1.7":{"name":"zeno-db","version":"0.1.7","keywords":["database","indexeddb","postgresql","sync","offline-first","websocket"],"author":"","license":"MIT","_id":"zeno-db@0.1.7","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"2e47e60f8d15c9ee50072db8d528bb7f08e61259","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.7.tgz","fileCount":17,"integrity":"sha512-4VnpNH9ersag5OdbOGxabBpuRPwzA1XQUz/q7WomNizDuikg+ZsfIhzNmzzkiMDe6/8Jwg9YMZuV0DCI46nvww==","signatures":[{"sig":"MEUCIQCX2+egq0plMVvv8ySo/BjEYjo7YDgcaVi2MuAZNz5heQIgQ3vrM4Y9IMRExYe0ZWnpO8PIXz5G6c1WPXchgo08i0o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":37335},"type":"module","exports":{".":{"types":"./dist/core/index.d.ts","default":"./dist/core/index.js"},"./server":{"types":"./dist/server/sync-server.d.ts","default":"./dist/server/sync-server.js"}},"scripts":{"dev":"nodemon --watch 'server/**/*.ts' --exec 'tsc && node dist/server/index.js'","test":"jest","build":"tsc","start":"tsc && node dist/server/index.js","prepare":"npm run build","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A client-side database with automatic sync to PostgreSQL backend","directories":{},"_nodeVersion":"22.13.1","dependencies":{"pg":"^8.11.3","idb":"^8.0.0","dotenv":"^16.5.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","nodemon":"^3.1.0","ts-jest":"^29.1.2","@types/pg":"^8.11.0","typescript":"^5.8.3","@types/jest":"^29.5.12","@types/node":"^22.14.1"},"peerDependencies":{"idb":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.7_1745586954796_0.26328282771914124","host":"s3://npm-registry-packages-npm-production"}},"0.1.8":{"name":"zeno-db","version":"0.1.8","keywords":["database","indexeddb","postgresql","sync","offline-first","websocket"],"author":"","license":"MIT","_id":"zeno-db@0.1.8","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"aa7defaa758d2c6c1042bafbfc4646c17901daa8","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.8.tgz","fileCount":17,"integrity":"sha512-udc1J8IH1A82J/r7QI07f23hXe+hOvkT2UayrWEJBlzmNH3L2WAnahxSIFeaa/lpL+wU3TDtyK219bdLGkY0rA==","signatures":[{"sig":"MEUCIB5rK+XmIKjFZYKkqc4Q1WALKJyzXSMOtuqAWnA2VgJYAiEAp8q2Q0gB/ZOsyd8+rEEWwu2IzcGNOIXQs9IbWL71dXc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":37619},"type":"module","exports":{".":{"types":"./dist/core/index.d.ts","default":"./dist/core/index.js"},"./server":{"types":"./dist/server/sync-server.d.ts","default":"./dist/server/sync-server.js"}},"scripts":{"dev":"nodemon --watch 'server/**/*.ts' --exec 'tsc && node dist/server/index.js'","test":"jest","build":"tsc","start":"tsc && node dist/server/index.js","prepare":"npm run build","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A client-side database with automatic sync to PostgreSQL backend","directories":{},"_nodeVersion":"22.13.1","dependencies":{"pg":"^8.11.3","idb":"^8.0.0","dotenv":"^16.5.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","nodemon":"^3.1.0","ts-jest":"^29.1.2","@types/pg":"^8.11.0","typescript":"^5.8.3","@types/jest":"^29.5.12","@types/node":"^22.14.1"},"peerDependencies":{"idb":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.8_1745587540866_0.6917326003122102","host":"s3://npm-registry-packages-npm-production"}},"0.1.9":{"name":"zeno-db","version":"0.1.9","keywords":["database","indexeddb","postgresql","sync","offline-first","websocket"],"author":"","license":"MIT","_id":"zeno-db@0.1.9","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"0b8e2f099eed2b9f7b21980aae45b8efa9c94d9f","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.9.tgz","fileCount":17,"integrity":"sha512-iU6ty4JPK6xjvOlGODUW62J0yKcUU3ADZ0kr86ZE9NtXKPZs2yT/L9vSOQxhMNRhfitpm9chkh+9efZarcHzzg==","signatures":[{"sig":"MEQCIHl9AZMCikHx0dBA/jfGy1lTy5eUB/LKfc7840ysgiG1AiACtMrH3/hRonUymZeRP1cziN38DQqm2+STsR4fDg68xA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":38377},"type":"module","exports":{".":{"types":"./dist/core/index.d.ts","default":"./dist/core/index.js"},"./server":{"types":"./dist/server/sync-server.d.ts","default":"./dist/server/sync-server.js"}},"scripts":{"dev":"nodemon --watch 'server/**/*.ts' --exec 'tsc && node dist/server/index.js'","test":"jest","build":"tsc","start":"tsc && node dist/server/index.js","prepare":"npm run build","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A client-side database with automatic sync to PostgreSQL backend","directories":{},"_nodeVersion":"22.13.1","dependencies":{"pg":"^8.11.3","idb":"^8.0.0","dotenv":"^16.5.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","nodemon":"^3.1.0","ts-jest":"^29.1.2","@types/pg":"^8.11.0","typescript":"^5.8.3","@types/jest":"^29.5.12","@types/node":"^22.14.1"},"peerDependencies":{"idb":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.9_1745588292746_0.45293025053760294","host":"s3://npm-registry-packages-npm-production"}},"0.1.10":{"name":"zeno-db","version":"0.1.10","keywords":["database","indexeddb","postgresql","sync","offline-first","websocket"],"author":"","license":"MIT","_id":"zeno-db@0.1.10","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"3c676493a44048c71b6d7780cd33a90bd1b1be62","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.10.tgz","fileCount":29,"integrity":"sha512-i/5Qi+9KStQjV1hifaWHDZYeEUODREaTvtj7yFlqU1Bm/OnyA68opcs8BAUgV9nLPdAXbpIpw1W0HG/JXzVhwg==","signatures":[{"sig":"MEUCIQC3m8SzkT4mEvI6s8oa1YzlZxKsvmII+pkoQqorGu5FZAIgX8zm7OMh1CtbsoSL44UdGpmwk98z1B0UtYz5SLBvCN8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":65380},"type":"module","exports":{".":{"types":"./dist/core/index.d.ts","default":"./dist/core/index.js"},"./server":{"types":"./dist/server/sync-server.d.ts","default":"./dist/server/sync-server.js"}},"scripts":{"dev":"nodemon --watch 'server/**/*.ts' --exec 'tsc && node dist/server/index.js'","test":"jest","build":"tsc","start":"tsc && node dist/server/index.js","prepare":"npm run build","test:watch":"jest --watch","test:coverage":"jest --coverage"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A client-side database with automatic sync to PostgreSQL backend","directories":{},"_nodeVersion":"22.13.1","dependencies":{"pg":"^8.11.3","idb":"^8.0.0","dotenv":"^16.5.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","nodemon":"^3.1.0","ts-jest":"^29.1.2","@types/pg":"^8.11.0","typescript":"^5.8.3","@types/jest":"^29.5.12","@types/node":"^22.14.1"},"peerDependencies":{"idb":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.10_1745834912044_0.19709762838135148","host":"s3://npm-registry-packages-npm-production"}},"0.1.11":{"name":"zeno-db","version":"0.1.11","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.11","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"74ff8ea09c78845b0135addbb5b28b0a5a24982c","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.11.tgz","fileCount":41,"integrity":"sha512-Pc3uJHUzZFt44yLCOU7IplL5DhgbL1+qHzABSMmEuiiju2nmrQ1GQVnd0wTVdkoNc64MKr0d8A4qhN8W6qpORA==","signatures":[{"sig":"MEUCIAKUotKJOgQKAI5A2dVTkyRrOJv/84s4FkVVZT7tXObrAiEAjeXK4Fj8Lvdxu/PnHRoBxiUETxNBxwKKqYFWO4V+z/8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":87731},"main":"dist/index.js","types":"dist/index.d.ts","scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{"pg":"^8.11.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.11_1745835304293_0.8061851524023207","host":"s3://npm-registry-packages-npm-production"}},"0.1.12":{"name":"zeno-db","version":"0.1.12","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.12","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"35db84caebad81b7c123de85a485dd4003934ebc","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.12.tgz","fileCount":41,"integrity":"sha512-s8PnRET/x3isg4nxVJGZIAlYVgoBpamjDhxLoadY5epVrQ/rn6zXzuQOrvdj9t+QMEdNybo1eaC4rvfl93HDrQ==","signatures":[{"sig":"MEUCIBKofDTJ72jtAWsAZ3KXCi9HodUWV/AZfboVWCfTinvIAiEA04rs0TOst6fwQXI15BolK9LqyXmxXfg9hH2nGZeJ0fM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84132},"main":"dist/index.js","types":"dist/index.d.ts","scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{"pg":"^8.11.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.12_1745835501298_0.5521577732302869","host":"s3://npm-registry-packages-npm-production"}},"0.1.13":{"name":"zeno-db","version":"0.1.13","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.13","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"c440b910638e6a35ba73924681503175e1839ab0","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.13.tgz","fileCount":41,"integrity":"sha512-+5BBzzo3MDaSJipGvSfOiTxGgND8UUHa89d30cdiyK77vl+q0mBHIl4sfzNBoc/L6bGhFFhrnfu5lh7ewH69hg==","signatures":[{"sig":"MEQCICoG1WSPlY4Vn8NOp4hU6xo6XU6Kn59y5hhLUUvW9D7IAiAZocSbzDQS63i/SFQAcfCXSC+PnZrvQ9vVrbnpaSgOeQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":85011},"main":"dist/index.js","types":"dist/index.d.ts","scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{"pg":"^8.11.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.13_1745836296159_0.5816701527576904","host":"s3://npm-registry-packages-npm-production"}},"0.1.14":{"name":"zeno-db","version":"0.1.14","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.14","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"f0bebff2d4fd8f3fdc1b7e18b3c2692ad0fd4d1d","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.14.tgz","fileCount":41,"integrity":"sha512-KL5KkspB0rK+WgcyjwSxYjlUFafPki1uziZQBopQ+6ra8iAalT4Ty8W1r4akThO0E2/EswjtNou/3+BD9DY7ww==","signatures":[{"sig":"MEYCIQCezVgVAWlxdk1fARALPDGgVKGaU8i1InB2jwi7CwD2hAIhANWtYefw60DiHPfuL1c+Uev4NEpTESg6E5Zo3Z638uMY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":85011},"main":"dist/index.js","types":"dist/index.d.ts","scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{"pg":"^8.11.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.14_1745836414884_0.03648378449241085","host":"s3://npm-registry-packages-npm-production"}},"0.1.15":{"name":"zeno-db","version":"0.1.15","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.15","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"5438abf6da9e63543725ab2c6feb276bc5ba061b","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.15.tgz","fileCount":43,"integrity":"sha512-grNCa7Q0bYg14BeTNx8t/cj6cx0SmIFMCtDVXqTzv7Oz8LhvhvBYI6MJcBWZ5lw0roGoD7UOXnfL3/XToFJEqQ==","signatures":[{"sig":"MEQCIGG89tXmkJ/SsEgQWzBwKcWcSkDhFSId4X56SLH/qjg6AiBjY+EK7Cc8+Wwqh7DdSnyr9DNPcsj15MDSE7f1TQX/Pg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":92419},"main":"dist/index.js","types":"dist/index.d.ts","scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{"pg":"^8.11.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.15_1745837235578_0.8937858048028777","host":"s3://npm-registry-packages-npm-production"}},"0.1.16":{"name":"zeno-db","version":"0.1.16","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.16","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"b897945017aa191e6935dc2a464d87810ee27528","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.16.tgz","fileCount":43,"integrity":"sha512-dR0vUU6b930luAyzM+NITozm+UsTFLVkONgeIRuDis3VaO5bGnyDZhVx29V0B1fgdsaPKyajIVuLf9PsoOXfbQ==","signatures":[{"sig":"MEYCIQDjpGyQXKu3NnjekU+lr6+sG7O/ScNFHNgSURyxWaWUMAIhAPT+nMSMYdyes6VZaaSP2JPcrVg9XZt+FzAvy/4r3US8","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":92419},"main":"dist/index.js","types":"dist/index.d.ts","scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{"pg":"^8.11.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.16_1745837786643_0.22928350378829365","host":"s3://npm-registry-packages-npm-production"}},"0.1.17":{"name":"zeno-db","version":"0.1.17","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.17","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"4d566d8f7bc4697b4531b825500101f18fcc383d","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.17.tgz","fileCount":43,"integrity":"sha512-UVaixu+01ilv4tsYn9bwsSSq5NeOd4HIvjuuxIOVUufKK9BaVqgDkkIYpVToQM+uyJE4eeLe/vwp8hq9v7dX8A==","signatures":[{"sig":"MEUCID9afKF3JPnHVBp9qM95OLrwfgqaYqM87gi4dN2/WtM2AiEAlLz+VKs0jTsiDnWM/uyhT3R2gVG4YXbIKu6M0MrXXEg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":92623},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{"pg":"^8.11.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.17_1745837829013_0.47781935118776686","host":"s3://npm-registry-packages-npm-production"}},"0.1.18":{"name":"zeno-db","version":"0.1.18","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.18","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"74b5a13490e606d760f7671f1464c998580fd871","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.18.tgz","fileCount":45,"integrity":"sha512-hX5wAyxN9MSoqBFP1lcgPVn6F4VCNtOiX6LORnfXjWltXujbrrxV/vvEi4u2Rpk6qRFABB3C1w1ZE6e9AbNTxQ==","signatures":[{"sig":"MEYCIQCn6FXsH+IaObQPiMEOpqYsHBZRjOjfFHQqGZG8/VoblQIhANFWEoENrQBDWfWSEr28dtC2CsHKuIw6hok1mIoTl/Ws","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":101679},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{"pg":"^8.11.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.18_1745838086644_0.5061296323258138","host":"s3://npm-registry-packages-npm-production"}},"0.1.19":{"name":"zeno-db","version":"0.1.19","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.19","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"a97f121ee13fec55c8074418d7123b23404743cd","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.19.tgz","fileCount":45,"integrity":"sha512-oSL0WQfstRztbXQWdfXmRj23eb6SihcaSLx8frouzcFaHEjrm+R1WQv+zJZC9kqiLNbllPMA5vVkBrclbP6aAw==","signatures":[{"sig":"MEQCIFLvl6TpdMOofycdmxeL4SKLVby2gx9kKRN/vFvM0tIlAiBUEL3ApOrYhhL9xrKh0Jrdzboz532/8aZgVYEtbUsj9A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":101421},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.19_1745838400353_0.09263140899619837","host":"s3://npm-registry-packages-npm-production"}},"0.1.20":{"name":"zeno-db","version":"0.1.20","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.20","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"8a172f6a926b36cfb75734e39d0cd3c2a10222db","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.20.tgz","fileCount":18,"integrity":"sha512-qzh7U4g4IyM6oTLB8oAl52WsNxA2+kiRQJhrrshh1Xs5eMPfMvFPoyu45l8G+cFMwsuZku6MwmwyrhQ57LoBdg==","signatures":[{"sig":"MEUCIQCM5PinwxuROVN0rTRo61SVgsRImb8jgcj5AQ8IjaKHIAIgZfLe+dtbDi3jzmO3ojUmUfPkrrNvYdj4YzWu5VPrmQk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":44229},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.20_1745844711447_0.8676704374955109","host":"s3://npm-registry-packages-npm-production"}},"0.1.21":{"name":"zeno-db","version":"0.1.21","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.21","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"c9c3b2eca8c1d1c85e1fb552c5d863da95851e8d","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.21.tgz","fileCount":20,"integrity":"sha512-dTl0N2gHPbvxjKdQm/t2uosRpatnWheiWT7M1VE+yjvKNc9unYaACW1gPv3Zt9aWgsLBCgKnq1PM9H5/y336dg==","signatures":[{"sig":"MEYCIQCW7mk6CgZKpbHiE2UusZIFy4KhLHZKunv96xu8b5fUvgIhALcYGWrc1wn6jmvHi7v86LnPfOvvxPHADH/YGJLy5eK4","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":45064},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.21_1745845455908_0.31576104681583295","host":"s3://npm-registry-packages-npm-production"}},"0.1.22":{"name":"zeno-db","version":"0.1.22","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.22","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"81335afa5461a9cc5e447a7299341868a888395a","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.22.tgz","fileCount":20,"integrity":"sha512-kfTB+LHhC+c7qIbfRKwjuJ/SCZAjDZmzgLIdPSsyk8alzC6pWxyimB9V6SRJRlnTW1/S6D2G4lALplBtOFu3xg==","signatures":[{"sig":"MEUCIErQpglJlAWbg35M56O7jDCtqxUip/wy8Ihc/MvrLaccAiEA8nEghmwUqacRDU4GlsEJwAOUhc9MGRE5Es4ODEK1M1Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39751},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.22_1745845975155_0.0858082811638563","host":"s3://npm-registry-packages-npm-production"}},"0.1.23":{"name":"zeno-db","version":"0.1.23","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.23","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"c3d94faf093474f8d25ddd8d6aa15912873fb347","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.23.tgz","fileCount":20,"integrity":"sha512-a2UxSIvZefbBp/dPdOV9S4zwZ2j/ULFl7Et2FAScIMTn+OHPSCyYPvydKGccTUwHzxxalIpui1Y6TPg8+iEd8w==","signatures":[{"sig":"MEQCIC99FdEvJPANssMOReCNbuNVQVmJ7kX0jMyemn4C1LmcAiAyqe7mAEO0VIThO43nBS6kTmVd1lWkFN3Ufb0dqrriqA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39815},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.23_1745846300150_0.38704050414082025","host":"s3://npm-registry-packages-npm-production"}},"0.1.24":{"name":"zeno-db","version":"0.1.24","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.24","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"786c7fd9ecc02973141e6adcc94a13fba8bbcf31","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.24.tgz","fileCount":20,"integrity":"sha512-MfpWOr4+ICwI8yz6VnD6wToR1ydUP5sNwVWCDsw/47TBBu7S+oYR0pEs1AVgtlGQ1B1nui2Ul5armoMhpcZ1Nw==","signatures":[{"sig":"MEUCICOIrqD2b47Mg/ZiY6nGeeUso1GjH88oFz2MdQpfUcdHAiEAn07J1Jqs4wPn7yXytdSseCFNJfaz+qzga6HtOCZ8e20=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39843},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.24_1745846687393_0.20424265179254752","host":"s3://npm-registry-packages-npm-production"}},"0.1.25":{"name":"zeno-db","version":"0.1.25","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.25","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"134b901cf46aa34ad67a673838ea9ce15d284842","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.25.tgz","fileCount":20,"integrity":"sha512-eUEnZSVDsPplHuhQljE8/FBoZqbBqzJSDcfWAGkukR0Dur/vs8PMJvQhUpqVL2DFqSgMNIaEAuLx8KBE5Qw4Ww==","signatures":[{"sig":"MEQCIASVjgN9PY3UZxU2/iPfA8ORx6S1fjzo08/mhIwaL0oFAiAl/73TV01n7Fo+027VeqJljJnAfEVyMjx42F3QTZrcXQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":42398},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.25_1745847077302_0.0712173060175183","host":"s3://npm-registry-packages-npm-production"}},"0.1.26":{"name":"zeno-db","version":"0.1.26","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.26","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"4b44b5f1b7ee090bc617179f1fd03dcb444437cb","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.26.tgz","fileCount":20,"integrity":"sha512-O3EHW77UT+BlV0CYCDhepwxlsbDo3NGkpDni/VmCZ9WA8XKmZmr5WBSOFtP1p3KThjJTXVVHZc76Z7CZI3FJew==","signatures":[{"sig":"MEUCIGKcm6piEM4peH3PTeDx3eC4LU1Kx9NqlZ0HoeArKi+vAiEA1/MfCG61bD/potslWx/vzQULxXDcjYkaNc4ilt1BBnA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":48022},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.26_1745847446286_0.7779341980481778","host":"s3://npm-registry-packages-npm-production"}},"0.1.27":{"name":"zeno-db","version":"0.1.27","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.27","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"eedfa84233e532a90848fd1f20a38889edce93e1","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.27.tgz","fileCount":20,"integrity":"sha512-tLzv61xK1WowqK8c69cFYmnq0g0qRobj3dbT48qG7l9svlnlT0SdbV20Ok4hBxliEUQCf98XsR/daB7KQ3S+Jw==","signatures":[{"sig":"MEUCIQDQxtYRRyaWeg5OY4ZuZXy80d33mx9VHPHi6ldlZGMJugIgVi6rDnRWd2Lo8IErR25NR9DgifWUXvJQeRPQJSbZ7ts=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":50189},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.27_1745847772222_0.9171104670516457","host":"s3://npm-registry-packages-npm-production"}},"0.1.28":{"name":"zeno-db","version":"0.1.28","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.28","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"b37e1f633c116bbcf8392b46ff5e9c5a6346991b","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.28.tgz","fileCount":20,"integrity":"sha512-xDWmnwSejLv/ptLozklWpqBqromlBz90J4a3WNefiuYndvfQ2eDLIuZqELrLzILpgqVEF0Buuybxf1cl7eQg6w==","signatures":[{"sig":"MEYCIQDBcHXufxsmiV1AS6rJ/KHuk6cYbEaD5XihrhqQxpgBwwIhANO+mJuL+aFLudwXkhT6iVq9FCbb9yPV4S0A7f6tODAk","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52072},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.28_1745848044427_0.14534316757624177","host":"s3://npm-registry-packages-npm-production"}},"0.1.29":{"name":"zeno-db","version":"0.1.29","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.29","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"0828ef5c2884e4aaa456f836388990cd76b7010e","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.29.tgz","fileCount":20,"integrity":"sha512-o6ijIMBX6qK4RRNj5SXctk398Rvwra6hyA3dLNuns5yeN4W8Oq8ll8lZJInwzM9dXBuWbPJAhq4zX2zZSWojYQ==","signatures":[{"sig":"MEYCIQDNbs3/ABVFY49uS+JalOBU/4IA+JS7efxxtKVHFEvF/AIhAPnyxZZEAXAsGUwdcK0QZt6gpTX6MXFToXBvVs1x87vv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52072},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.29_1745848079703_0.8249014433121553","host":"s3://npm-registry-packages-npm-production"}},"0.1.30":{"name":"zeno-db","version":"0.1.30","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.30","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"5fa34525f0578fafc8cbba22c740292d6dc5970b","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.30.tgz","fileCount":20,"integrity":"sha512-b9ixzWNvMByCsXbjz75bQdr4v1YZ4mheOctNDnUFOu3d7BRoQVmqEM1q3kccEwrLHnvra+iv1dFQxEFtoc44Cw==","signatures":[{"sig":"MEUCIQDcUoYtGgphhJovkUu2JVuSOy7Ncx63jHRWa1xv/ZDJ5AIgI5I+RRiT9G+xWpKLu0hmcEWA9FXIsJlveyAJZOUErh8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":47351},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.30_1745848231481_0.8396236048524568","host":"s3://npm-registry-packages-npm-production"}},"0.1.31":{"name":"zeno-db","version":"0.1.31","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.31","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"b0f776708600f581f46e7ab8f9f1cbb9b50e6a01","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.31.tgz","fileCount":20,"integrity":"sha512-kEO/dS7k3Ekl7nz+GF6H7Ou33ZFRvBcAs9aGwDkykl0zwCKEDuLk7TYMxjVaxBIJ227MjwIJlQmm4vhqH3TZhg==","signatures":[{"sig":"MEUCIGQl26X/rpF+1H9wWehenc/dzyzFlJIbpmYg+OdJSWo5AiEA3Ws3J6Ibze2eWUv6QjAyrnlTFMCbQLfCO66qaBP92+U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":49808},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.31_1745848605330_0.9917867476174564","host":"s3://npm-registry-packages-npm-production"}},"0.1.32":{"name":"zeno-db","version":"0.1.32","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.32","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"158fb1fdb0ba8886a9b0238adc76f2bdc16ca605","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.32.tgz","fileCount":20,"integrity":"sha512-hSY4m98PCP9rhJow1w/4rqejGkE2xNxHmpdlBDqAqiTeul0tL+lwhnNXebfBhsYqE4fEhhewEL+UHONqB+3JuQ==","signatures":[{"sig":"MEQCIHKK9lrasjzbAOra0H4KjsQYKIaRB7Soj5JqppL1TyFWAiBbql43Aoab5LbqUcjcIo8fQrVzjl29w/XF96v0pSRv/Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":51430},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.32_1745848873497_0.571660525373249","host":"s3://npm-registry-packages-npm-production"}},"0.1.33":{"name":"zeno-db","version":"0.1.33","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.33","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"e0554bca45dca0f3895b4adb5da1edb74cd9fee2","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.33.tgz","fileCount":20,"integrity":"sha512-pc9G2EvFm26Y/2pp1DmbczrxXn4nRTbSVhkR7XjdCTb1wRIZQZsqgzBxBu1Rj7UxJWYzDRYHAgCbVBtvKhMAwg==","signatures":[{"sig":"MEUCIArsiPX34lZLWW+DBmDVXD4VMMrs2mDQLWDj4Qh/v/A8AiEA1V7gSd6rMFhMgcJCki26fwYOY/mInkTXt1AjL8YCCT4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52757},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.33_1745849164891_0.48391495315978483","host":"s3://npm-registry-packages-npm-production"}},"0.1.34":{"name":"zeno-db","version":"0.1.34","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.34","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"b26a49ba2133e56510d0dabce207f7f81034cd1b","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.34.tgz","fileCount":20,"integrity":"sha512-TY0ZWne2PuzvC5KjCowlHCuDMz3WM6Xy868YFne33zwWikFzrvQ9i1kTDB70DYJ/mqgO8caxC2tryHeITwp9ew==","signatures":[{"sig":"MEQCIGrrzCMmPMIBs5DPaeT6WE6fBbDyTk3OWnS9jifuZpo/AiADj1cyQlCdsmpA6WZXDfPGM0+CYRM4NO0JZ+E3G/odEg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52851},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.34_1745849478212_0.9384939632523819","host":"s3://npm-registry-packages-npm-production"}},"0.1.35":{"name":"zeno-db","version":"0.1.35","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.35","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"dd72daa24cac47a5b1759d11eb64693649994ada","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.35.tgz","fileCount":20,"integrity":"sha512-ScdqKoXIDiXWmLT/M1TC6cn5EUZqxWTbIaa5roZdOR1bQ08gA9YcX0oH3HTJ4ciEkMTCSDvQITGazW8BY2FUFA==","signatures":[{"sig":"MEYCIQD+yrZha++HTbVdUN2lpasqWnMtSoC7QtCmhmh1xsXdRQIhAPVa8kd2Y80D77eIZT3ughB3D70vEoc6qiaJtVpHoS+O","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":53475},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.35_1745849776872_0.9601093153251237","host":"s3://npm-registry-packages-npm-production"}},"0.1.36":{"name":"zeno-db","version":"0.1.36","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.36","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"b4302f8e9f4d427dc8647d49c37b74655ca8efd9","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.36.tgz","fileCount":20,"integrity":"sha512-USzgKaECr0OgdONmY5xI4cLgN8f9N8/NGLy+diXh3kLcMddthdTA6GI5WBB/9yNDvAxVgdOTFdtNWseewOmz8g==","signatures":[{"sig":"MEQCIG843m3twEGfNVJjAT+e+fhGFb+SebN6ABXSj15HLWonAiBpVYIm9bUWa/NTmnCwAGhCMUL1WRgwjuMJFr6cNJVelw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":53476},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.36_1745849807416_0.40797752442522706","host":"s3://npm-registry-packages-npm-production"}},"0.1.37":{"name":"zeno-db","version":"0.1.37","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.37","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"ddab72f83d0e6ae955f68b00aec613172ca196b1","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.37.tgz","fileCount":20,"integrity":"sha512-9yndFifKyRa5JkwJHaHcArI6TiFgHsL6VNsdZ9hVDnDZfhxOi3sFdGZnsJf6yl5ivHepsaw4JEaBFZ7zFM5hEw==","signatures":[{"sig":"MEUCIHusMeemwPE+/qH9K5eKG+N5MINNARo5y2gOjuiyxKJ2AiEA8ZyKK+SOpeLWeXRfXHDyFu9DV17jwIj5E1ky7FSn7SI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":53470},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.37_1745850216946_0.8828989596943515","host":"s3://npm-registry-packages-npm-production"}},"0.1.38":{"name":"zeno-db","version":"0.1.38","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.38","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"4105f493ff890771ac5b3edc52dedeeb3c5c6e2e","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.38.tgz","fileCount":20,"integrity":"sha512-nFYqGo7RhnUk2qPYo00H6eNwt+nhVYQfr9FQvz3ONQii/eexYKXvRbwfP+jhjBc61/8M1v9txI/xfpRWBInbBQ==","signatures":[{"sig":"MEUCIGodQ9RVHr2c1Ek6vtEcHk8hwUdfPaTSmC2Lms7JutUiAiEAvaS6ogyeCKHgj4NpmjE3UCKW8Lk+iSv4V/XsurBWnOo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":53470},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.38_1745850468400_0.585130564999516","host":"s3://npm-registry-packages-npm-production"}},"0.1.39":{"name":"zeno-db","version":"0.1.39","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.39","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"6a780529a7e7ee2a5abec7927a4dd8a506c1faa0","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.39.tgz","fileCount":20,"integrity":"sha512-4IytgA2LBAw+3V/yWy9KOepfx3Pra3j5A8ofb3OUoX+X24P9RczK0dk7feI3PgJbbJpeWQXKniSHbIWUxMx5GQ==","signatures":[{"sig":"MEYCIQDRsURL88TeTqk9r6e1BRlX5X04UlhnsMm2gP5JOSWnrgIhAOhJ5A3dTSNdZIoHut0LBtBr0ANNlzjE4LJ9KI1o31BR","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52478},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.39_1745907894299_0.13392204537652064","host":"s3://npm-registry-packages-npm-production"}},"0.1.40":{"name":"zeno-db","version":"0.1.40","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.40","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"dea6f947eb9c7e19f48e47a07d036b63a305d2c6","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.40.tgz","fileCount":20,"integrity":"sha512-qOg8+riB+dLW12DESZ08QPyKje4F9Nl1ApQTAqPxXV4qhTDMz8pZ6J/HYkRZkP2tHCEBEHoUhXaXfGYNxbpxmg==","signatures":[{"sig":"MEQCIH9xymIN91Wg+8P4ygRaELuc1pUPbjAfsT9EjKMxU4KrAiAWPBC0fY7Sp9mo34QS43ws71PcKJ/u+Iw6bzbSaLK7KA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":54599},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.40_1745908925606_0.8788835659001186","host":"s3://npm-registry-packages-npm-production"}},"0.1.41":{"name":"zeno-db","version":"0.1.41","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.41","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"0cbd33f71bcdf1d3bce6f7a8a6b9d6f966a0e3aa","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.41.tgz","fileCount":20,"integrity":"sha512-Ox/SQ2jrIzN7TXAEO8fvNaX39LOLnSUhfhFVosV8j6d9pILqStNvi3U7gJAjPCyqGxO08m5F6YE4L9v45paTyQ==","signatures":[{"sig":"MEUCIEdFxp+ACDJKeBYPhgnQPhPt3kd8R/kxNvjbgpAyd2qFAiEAznZNcoR8RRrhB1X/afzqlnRaWnReBsU4v/hPCxDe4JU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":59504},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.41_1745916580665_0.17895982773836638","host":"s3://npm-registry-packages-npm-production"}},"0.1.42":{"name":"zeno-db","version":"0.1.42","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.42","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"2ccff8dc00e4f790e476d929dbc16eca5f38e6fe","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.42.tgz","fileCount":20,"integrity":"sha512-78kveoxLgjko2BMGoLaopoolpkcCXxu9CkAviZi/0Bw568Tw/SA4DOeeRuBZxMF/98Stp6LOS0vb2Z17Ia011Q==","signatures":[{"sig":"MEYCIQCUJ2lIhwdJctOyDp15prtSqU/PQ8P+rhLUyWO+y3FahAIhAKctKijYGnraBinE33Yep/ykjqOHnHNmhRyqoWZLwfgg","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60347},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.42_1745920668967_0.5589886675972393","host":"s3://npm-registry-packages-npm-production"}},"0.1.43":{"name":"zeno-db","version":"0.1.43","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.43","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"1950600492efcc2a1d1d426722bc5f4edd96844d","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.43.tgz","fileCount":20,"integrity":"sha512-I+11rSaOe3j3eZcktn8P5ovz76Z02GADrsV0QpnkrAeHOfgE4d0YA7V+Fpo4UO4BpL9eYHolJy6VYoZzzeuTLQ==","signatures":[{"sig":"MEQCIHtmhKR5hBCEVepGnttWhz2Iz1qwiLtCr38Jy3ehoBYTAiAoOao8gpyyO6GopHIIkXqMRnRNOAD0fv3h64mUfDWreQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":61877},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.43_1745920964304_0.9406057417915636","host":"s3://npm-registry-packages-npm-production"}},"0.1.44":{"name":"zeno-db","version":"0.1.44","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.44","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"a7910de408d38fbbf65838aa7ead6f9b46b388e1","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.44.tgz","fileCount":30,"integrity":"sha512-zsIn1aa1drSEz7NKzz64Q47fJ/WVcTBqr0fgV4UtGyUigyTMzAeuXNaSc9df7xqQ6ewGo3KB/26SgueqC/wz0w==","signatures":[{"sig":"MEYCIQDJki9WDmXe1jJ3Za+QG49aWuYbJqR5JR9ICuPQURh4VQIhALn287N+rlPRZQQqCQWMKzWvQqcgaaN9D7aKhQFM9G0/","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":94943},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{"ws":"^8.0.0"},"_hasShrinkwrap":false,"devDependencies":{"@types/ws":"^8.0.0","typescript":"^4.0.0"},"peerDependencies":{"ws":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.44_1745921334222_0.11698827060119665","host":"s3://npm-registry-packages-npm-production"}},"0.1.45":{"name":"zeno-db","version":"0.1.45","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.45","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"187e7f23bd21297e56e5e37eb89691e8eaf68f86","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.45.tgz","fileCount":20,"integrity":"sha512-N0K8gbrnWO4A2OEYps19PinfMXO2yidjyJfuQm1d6//sEeUhKSZJr5UrEwSMCZTIX7B4CZQTwwhRxasfe27Lyw==","signatures":[{"sig":"MEUCIFhjKtfN+FgsfBgiNsJbOqAwD2YEwGnG9qBtP7mbJqzjAiEA7GgN4XxrXy7AiFdwKQtF9/rdhdupWPs9P/6dsAoXEdE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":54599},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.45_1745922047842_0.09997666079761713","host":"s3://npm-registry-packages-npm-production"}},"0.1.46":{"name":"zeno-db","version":"0.1.46","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.46","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"7cf50217358053032dc4f8522b2d2267f0388602","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.46.tgz","fileCount":20,"integrity":"sha512-u2nXKCYVXL+ErQSdR3NFOvHJfIlTwuHCehXdxTJyv3l/npGpgj1+UjkbETxHB61pn+2nAhSS41vwhsy+KU0V2A==","signatures":[{"sig":"MEUCIQDtgFzuDxkpfJxMfiJt0OY58sOdgcutva/UmSPJ4z5vyQIges3Wn02zQ9FFrQGAYV6Yrt4ctpky3cNG5i7S1UpovJw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":59525},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.46_1745922630363_0.6832614127076067","host":"s3://npm-registry-packages-npm-production"}},"0.1.47":{"name":"zeno-db","version":"0.1.47","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.47","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"05c4e310aa04811474e17fb4c8023e55691ec830","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.47.tgz","fileCount":20,"integrity":"sha512-68+QX5ir3enhg76tzMiqna9HPU/uU6HsHDRJK9ScqmtYjocBJvYJzSxltlrt24rov5U/Q/MdG4yvAs8U9FBjKw==","signatures":[{"sig":"MEYCIQDtK726W38nX63WMTVVtbihDKOhzJOuE3jB2MfapCz3wgIhANuc3+HrU5BPNtevkKCUzhHINcCoM4Vn4Y0IFCea88Gm","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":59703},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.47_1745924094590_0.029614863688924853","host":"s3://npm-registry-packages-npm-production"}},"0.1.48":{"name":"zeno-db","version":"0.1.48","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.48","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"199499a68318e43a034381c8d9479ccca99b4d00","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.48.tgz","fileCount":20,"integrity":"sha512-lcq3K8Lmb/GaGXP+fiOY6OWa1VbmFCdRVG6j2v48m7UMlCGNKCjAeOmqxsNxTinF6oZfe1r6ITrj1HN4aLPq6g==","signatures":[{"sig":"MEUCIQClQ1JPqWbL+OTXegq4S/em/0wx8oPZ5hYtZqKarr+okAIgIHK0RSVdVxpkRxXsn93G8aOutfyGs/0nI84o3lbvVJY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":59703},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.48_1745926580691_0.8975784224718331","host":"s3://npm-registry-packages-npm-production"}},"0.1.49":{"name":"zeno-db","version":"0.1.49","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.49","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"0e1c162d0c74e381d3120807b3cf2f801286991f","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.49.tgz","fileCount":20,"integrity":"sha512-Duf5Er7PlEWx2UjUVVmhRjhauwyrlldT/1St44vM8lttH4LORiR5LQdPMr0e9VbW+SniH5U5ARVUKeB0qjcgJA==","signatures":[{"sig":"MEUCIHsfKx7BmnOuovEjjj2l/jbr8GwD1NRCnrILE1GpvwZDAiEAkt51PAtNYfEiCWLcslQhTzJD0xsAGxzXTdCn/p2cP1g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":63184},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.49_1745927113142_0.049657232515207594","host":"s3://npm-registry-packages-npm-production"}},"0.1.50":{"name":"zeno-db","version":"0.1.50","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.50","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"da6d500c8f805937590c8c596efcbdeaa4a138d7","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.50.tgz","fileCount":20,"integrity":"sha512-mHe4UhebHNUXWliMRHkm44qdvK669avNjVJouBzAc/r1WE6YLuyv3t4h3W0OZSDRXxe0ozTlrny2GUeysxu1yw==","signatures":[{"sig":"MEUCIDfGmCrUEcstiiIGha0Hz6wp59PQ0Rz6yaGgML7kkUEsAiEAghLIL44e47XkiN1NjLj1jMc/Fk6DC/IL780eP+y8zto=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":72187},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.50_1745931526264_0.8042491302507717","host":"s3://npm-registry-packages-npm-production"}},"0.1.51":{"name":"zeno-db","version":"0.1.51","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.51","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"62f51cabc3c8bfe09a1f0cf9493f5e22a7c73285","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.51.tgz","fileCount":20,"integrity":"sha512-yaRLaOFj0OoCylc56dCbt5xp2Y/kUtrJDy9Cr9sQhT1u+FxStmBjR+zcdFugeq5fYcK28fiK76u4BD162ORe7Q==","signatures":[{"sig":"MEUCIQDaHTMtxREW4D5T/Tmd1cyqqn4eAs57vo0jvvkDsviuhgIgOMyrQ5rsBlmk/3fBIdBZFLheRrnz1OoT46XskLVK284=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":72197},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.51_1745931676326_0.9452141641340652","host":"s3://npm-registry-packages-npm-production"}},"0.1.52":{"name":"zeno-db","version":"0.1.52","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.52","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"cd82c1b0c81e7cf8e5907a983aede73a33fcb0a9","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.52.tgz","fileCount":20,"integrity":"sha512-YnZg9G+iuRvjuIcbLhkgTB5xiXCUCqOtPXL2+droYczb75ZrWirUGZnqvcN+iFI7H8k3AMZh3vnjgIHeBh7hBQ==","signatures":[{"sig":"MEUCIQDP0QFxMMKf9i7EhQUCa3URyDEG9RLXAuaokDq4PuR3jAIgCscpQUEn9Wnf3DGTwkMr5nk4GPrX0MHyOACQLqyiDds=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":72198},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.52_1745931732795_0.06238194447719403","host":"s3://npm-registry-packages-npm-production"}},"0.1.53":{"name":"zeno-db","version":"0.1.53","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.53","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"e58ec842cc369223d6ef4286ad593211f96c7f3b","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.53.tgz","fileCount":20,"integrity":"sha512-whS6IFqn8h+QOxBjy8Uq+MlxIqPCStybTudwXIeP8FbvhypxvuzKB3D5DTfcJmLXBiDbJ9qAO1Cc4uC0n5ENIA==","signatures":[{"sig":"MEQCID1b/KNCeurAmiHCfb86KYDXf2gOqy8KMh0bT7n6daFPAiAO2YD0HLYqcui50PssWJpH8OH+PYHZy6yeUBJxoaxHXw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":73407},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.53_1745933020070_0.18262739302428743","host":"s3://npm-registry-packages-npm-production"}},"0.1.54":{"name":"zeno-db","version":"0.1.54","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.54","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"fe8d3b031000df7b945f7850f6d8c23cac9a9c8e","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.54.tgz","fileCount":20,"integrity":"sha512-ASzInuXB6q/UJpU3k+SFzT059l+pzqz7V/pJVHdHyfR1PDT+CBkVpedKImeslW1jJ3/5K2rFMI6Di7A9VJJCaQ==","signatures":[{"sig":"MEYCIQDFZnavu0xa2BaEqDthE650FeWtJMCzbaCDNUN0vWx9YAIhAKQ3JSdGsInXMX/r/LZ1HW2VJ1q2d7c5RtjcT/P1p1n5","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":74624},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.54_1745933194800_0.6713572703574593","host":"s3://npm-registry-packages-npm-production"}},"0.1.55":{"name":"zeno-db","version":"0.1.55","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.55","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"90ea0e800e90afb0c7e9e262fdbb1f3f5c5435b9","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.55.tgz","fileCount":20,"integrity":"sha512-ng/UHvCiYrs5/S52mQdxFown0A6oXZ6MBwQgOGdWlcu2yHcD2YvAvphHXFRu1oF36JE49+21O5cwc5I65Y2iPQ==","signatures":[{"sig":"MEUCIBeLRGl8ENwXLrUMCookDu/mcEDJvGT9O7QzOuy9Of3bAiEA9rj5Fjot05e0hDXyrkQmEJcTVtAgFGtijlTS+tCyfqE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":74811},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.55_1746002832600_0.3168178576383436","host":"s3://npm-registry-packages-npm-production"}},"0.1.56":{"name":"zeno-db","version":"0.1.56","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.56","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"2b2cca5a4b68c84a478755f626371ce79017c8af","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.56.tgz","fileCount":20,"integrity":"sha512-J5Dk9VxmlN7ODpLLrUasVHwJV2+kwcuHGets01RMgLBH1J6a8+exXOwrvovqGQ+xjpdnLxlYLQPYTfZ8mU9sdQ==","signatures":[{"sig":"MEUCIH2P243UakMedsjfhcuuCV8N/a6JVhjcbgGga2i5nxsKAiEAq7JqIJMJsIqVX4repTJTD8CBzKi13gA3j5pqZRYhaK0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":74910},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.56_1746002889738_0.6817781408413823","host":"s3://npm-registry-packages-npm-production"}},"0.1.57":{"name":"zeno-db","version":"0.1.57","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":"","license":"MIT","_id":"zeno-db@0.1.57","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"ff2e65eec3c87073034aa725fee40bbd0aa72398","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.57.tgz","fileCount":20,"integrity":"sha512-oXxEu3aa45dA9qeyYat83CB2QDUWfbsd3IZev6QKAam7Fh/lPNMApAAI3fCfpdwwx/mGokWX9fSjOZdwySDl7g==","signatures":[{"sig":"MEQCIDWIwouHPZ+9R92GGUJZ76euttxWvdb1zGUp1Vy3SXbdAiB/nifE1Xa6h/9/3mh2PVL9/OJFybaEBsom0eK8+WFqYA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":74776},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.57_1746002986054_0.3413162744523863","host":"s3://npm-registry-packages-npm-production"}},"0.1.58":{"name":"zeno-db","version":"0.1.58","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":{"name":"Mijo Kristo"},"license":"MIT","_id":"zeno-db@0.1.58","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"49ea2e53ec2c24f09c0972f408bd6be591477a1b","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.58.tgz","fileCount":20,"integrity":"sha512-wQEAKimawyE4WszlN422T+eKlorH6LWWarzjkMFiAMAa71GkQjSk9HdVAmMtDQkr36VW6uu0LODxqegveduyYw==","signatures":[{"sig":"MEYCIQCDKF4Cg/c6a0J94uBIocqNvxL4QNkhmo0XHZAlDX+1QwIhAMqy315A1U5hBnUudN3g8jiDaqKsS91SUU0zw+Rudz14","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":76423},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.58_1746008347897_0.7662615918140281","host":"s3://npm-registry-packages-npm-production"}},"0.1.59":{"name":"zeno-db","version":"0.1.59","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":{"name":"Mijo Kristo"},"license":"MIT","_id":"zeno-db@0.1.59","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"22fc10d1f4174fe33b2b8923afe0b58bf7f35141","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.59.tgz","fileCount":20,"integrity":"sha512-nEbTWyLNHnzv7MF9CtYkZIErTKeKvAlyy7zHoYMo3YXF3Lg+XgDInDedVsCeILOLAv3rCCP+x41+nHm0jdjmtQ==","signatures":[{"sig":"MEQCIBMelROX/5OvEb/NeWARW4c4wMo8DVVZYORRpHEkBwGuAiAiJwp90dZrH9STC/lhRjuCZro1yu3cPCkbjb8cw0sx4Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":78225},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.59_1746428665720_0.017791922336134025","host":"s3://npm-registry-packages-npm-production"}},"0.1.60":{"name":"zeno-db","version":"0.1.60","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":{"name":"Mijo Kristo"},"license":"MIT","_id":"zeno-db@0.1.60","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"dist":{"shasum":"9b0ee230bdb17b6851dd84bf85d1788b4c616de4","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.60.tgz","fileCount":20,"integrity":"sha512-Uo47orlIZFuhfAsJq0mjoyovtr98BFcNjyolmek34RnhDji6nDRRdPbcsVSIKMBgoVdqe4ClKsWESc0WqIs+Kg==","signatures":[{"sig":"MEUCIQDChY9DQLFbCt0pAnIlUWwSv1Y4g1Q2bsI7jTYbaZApnAIgXh9LQBNwAqgHqU/m5Fo69Q+JqYxHpWi1Ls8YMAhlwjI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":83835},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server.d.ts","import":"./dist/server.js"}},"scripts":{"test":"jest","build":"tsc","prepare":"npm run build"},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"_npmVersion":"10.9.2","description":"A lightweight, offline-first client-side database with automatic sync capabilities","directories":{},"_nodeVersion":"22.13.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","@types/pg":"^8.10.9","typescript":"^5.3.3","@types/jest":"^29.5.11","@types/node":"^20.10.5"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"_npmOperationalInternal":{"tmp":"tmp/zeno-db_0.1.60_1746429673393_0.6059279935010093","host":"s3://npm-registry-packages-npm-production"}},"0.1.61":{"name":"zeno-db","version":"0.1.61","description":"A lightweight, offline-first client-side database with automatic sync capabilities","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","test":"jest","prepare":"npm run build"},"keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"author":{"name":"Mijo Kristo"},"license":"MIT","dependencies":{},"devDependencies":{"@types/jest":"^29.5.11","@types/node":"^20.10.5","@types/pg":"^8.10.9","jest":"^29.7.0","ts-jest":"^29.1.1","typescript":"^5.3.3"},"peerDependencies":{"pg":"^8.11.3","ws":"^8.13.0"},"exports":{".":{"import":"./dist/index.js","types":"./dist/index.d.ts"},"./server":{"import":"./dist/server.js","types":"./dist/server.d.ts"}},"_id":"zeno-db@0.1.61","_nodeVersion":"22.13.1","_npmVersion":"10.9.2","dist":{"integrity":"sha512-xB0BVW0dQopCQ8HdR5iqLdCHCddMtLKyWKA02IG3pBH+9SbZWcDNZ6vGz6BuOctiL/KZ9JJgiRGJ7Es4SG7+pw==","shasum":"2797f5deffaf3b85ead0552fe5e443c27a59f216","tarball":"https://registry.npmjs.org/zeno-db/-/zeno-db-0.1.61.tgz","fileCount":20,"unpackedSize":83804,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCnp1PiIM7IQsFXUgnQKTHezNeWj1w7Mfxa7X9Yug84tAIhAJNMxnPatxeMlp5AjGXF3hkzztjPT4U59jFdMTv9tdhx"}]},"_npmUser":{"name":"stokry","email":"mijo@mijokristo.com"},"directories":{},"maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/zeno-db_0.1.61_1746429802181_0.9357134152596958"},"_hasShrinkwrap":false}},"time":{"created":"2025-04-25T12:19:00.819Z","modified":"2025-05-05T07:23:22.522Z","0.1.0":"2025-04-25T12:19:01.094Z","0.1.1":"2025-04-25T12:29:13.676Z","0.1.2":"2025-04-25T12:30:02.089Z","0.1.3":"2025-04-25T12:32:10.654Z","0.1.4":"2025-04-25T12:36:45.852Z","0.1.5":"2025-04-25T12:40:31.355Z","0.1.6":"2025-04-25T13:12:38.593Z","0.1.7":"2025-04-25T13:15:54.982Z","0.1.8":"2025-04-25T13:25:41.049Z","0.1.9":"2025-04-25T13:38:12.976Z","0.1.10":"2025-04-28T10:08:32.231Z","0.1.11":"2025-04-28T10:15:04.512Z","0.1.12":"2025-04-28T10:18:21.465Z","0.1.13":"2025-04-28T10:31:36.325Z","0.1.14":"2025-04-28T10:33:35.099Z","0.1.15":"2025-04-28T10:47:15.761Z","0.1.16":"2025-04-28T10:56:26.848Z","0.1.17":"2025-04-28T10:57:09.179Z","0.1.18":"2025-04-28T11:01:26.805Z","0.1.19":"2025-04-28T11:06:40.534Z","0.1.20":"2025-04-28T12:51:51.641Z","0.1.21":"2025-04-28T13:04:16.092Z","0.1.22":"2025-04-28T13:12:55.340Z","0.1.23":"2025-04-28T13:18:20.338Z","0.1.24":"2025-04-28T13:24:47.604Z","0.1.25":"2025-04-28T13:31:17.496Z","0.1.26":"2025-04-28T13:37:26.449Z","0.1.27":"2025-04-28T13:42:52.404Z","0.1.28":"2025-04-28T13:47:24.586Z","0.1.29":"2025-04-28T13:47:59.881Z","0.1.30":"2025-04-28T13:50:31.657Z","0.1.31":"2025-04-28T13:56:45.508Z","0.1.32":"2025-04-28T14:01:13.700Z","0.1.33":"2025-04-28T14:06:05.059Z","0.1.34":"2025-04-28T14:11:18.414Z","0.1.35":"2025-04-28T14:16:17.113Z","0.1.36":"2025-04-28T14:16:47.585Z","0.1.37":"2025-04-28T14:23:37.130Z","0.1.38":"2025-04-28T14:27:48.561Z","0.1.39":"2025-04-29T06:24:54.499Z","0.1.40":"2025-04-29T06:42:05.788Z","0.1.41":"2025-04-29T08:49:40.853Z","0.1.42":"2025-04-29T09:57:49.135Z","0.1.43":"2025-04-29T10:02:44.485Z","0.1.44":"2025-04-29T10:08:54.383Z","0.1.45":"2025-04-29T10:20:48.043Z","0.1.46":"2025-04-29T10:30:30.551Z","0.1.47":"2025-04-29T10:54:54.788Z","0.1.48":"2025-04-29T11:36:20.860Z","0.1.49":"2025-04-29T11:45:13.325Z","0.1.50":"2025-04-29T12:58:46.438Z","0.1.51":"2025-04-29T13:01:16.499Z","0.1.52":"2025-04-29T13:02:12.980Z","0.1.53":"2025-04-29T13:23:40.254Z","0.1.54":"2025-04-29T13:26:34.979Z","0.1.55":"2025-04-30T08:47:12.827Z","0.1.56":"2025-04-30T08:48:09.927Z","0.1.57":"2025-04-30T08:49:46.278Z","0.1.58":"2025-04-30T10:19:08.072Z","0.1.59":"2025-05-05T07:04:25.883Z","0.1.60":"2025-05-05T07:21:13.568Z","0.1.61":"2025-05-05T07:23:22.344Z"},"author":{"name":"Mijo Kristo"},"license":"MIT","keywords":["database","indexeddb","websocket","postgres","sync","offline-first"],"description":"A lightweight, offline-first client-side database with automatic sync capabilities","maintainers":[{"name":"stokry","email":"mijo@mijokristo.com"}],"readme":"# ZenoDB\n\n<div align=\"center\">\n  <img src=\"https://i.ibb.co/67ktWMm0/zenodb.png\" alt=\"ZenoDB Logo\" width=\"300\" style=\"margin-bottom: 10px;\" />\n\n</div>\n\n# Zeno - Offline-First Sync System\n\nA lightweight, offline-first synchronization system that enables seamless data synchronization between client-side IndexedDB and server-side PostgreSQL. Perfect for note-taking applications and other data-heavy web apps that need to work offline.\n\n> ⚠️ **BETA VERSION NOTICE**\n> \n> This project is currently in beta stage and under active development. While it's functional, you may encounter:\n> - Unexpected behaviors\n> - Breaking changes between versions\n> - Incomplete features\n> - Limited documentation\n>\n> **Use in production with caution.** We recommend thorough testing in development/staging environments before deploying to production.\n> \n> Please report any issues you encounter on our GitHub repository.\n\n## Table of Contents\n- [Features](#features)\n- [Installation](#installation)\n- [Quick Start](#quick-start)\n- [How It Works](#how-it-works)\n- [Configuration](#configuration)\n- [Sync Status & Events](#sync-status--events)\n- [Best Practices](#best-practices)\n- [Schema Migrations & Conflict Resolution](#schema-migrations--conflict-resolution)\n- [Examples](#examples)\n- [Troubleshooting](#troubleshooting)\n- [License](#license)\n- [TODO List & Roadmap](#todo-list--roadmap)\n\n## Features\n\n- 🔄 **Real-time Sync**: Instant synchronization between all connected clients\n- 📱 **Offline Support**: Continue working without internet connection\n- 🔌 **Auto-Reconnect**: Automatically reconnects when network is available\n- 💾 **Persistent Storage**: IndexedDB (client) + PostgreSQL (server)\n- ⚡ **WebSocket Protocol**: Fast, real-time updates across clients\n- 🔒 **Safe Transactions**: Ensures data consistency\n- 📊 **Sync Status**: Real-time sync status indicators and offline mode support\n- 🗑️ **Soft Delete**: Recoverable deletions with automatic cleanup\n\n## Installation\n\n```bash\n# Install the package\nnpm install zeno-db\n\n# Or with yarn\nyarn add zeno-db\n```\n\n## Quick Start\n\n### Server Setup\n\n1. Install dependencies:\n```bash\nnpm install zeno-db\n```\n\n2. Create a server.js file:\n```javascript\nimport { startSyncServer } from 'zeno-db/server';\n\nstartSyncServer({\n  port: 3000, \n  pg: {\n    connectionString: 'your-postgresql-connection-string',\n    table: 'notes' // Your table name\n  }\n});\n```\n\n### Client Setup\n\n1. Initialize the database in your app:\n\n```javascript\nimport { ZenoDB } from 'zeno-db';\n\nconst db = new ZenoDB({\n  storage: {\n    type: 'indexeddb',\n    name: 'my-app-db'\n  },\n  sync: {\n    type: 'websocket',\n    url: 'ws://localhost:3000'\n  },\n  clientId: `client-${Date.now()}-${Math.random().toString(36).substr(2, 9)}`,\n  softDelete: {\n    enabled: true,\n    fieldName: 'deletedAt',\n    permanentDeleteAfter: 30 // Delete after 30 days\n  }\n});\n\nawait db.init();\n```\n\n### Usage Example (Notes App)\n\n```javascript\n// Create a new note\nconst noteId = `note-${Date.now()}`;\nawait db.set(noteId, {\n  id: noteId,\n  text: 'Your note text',\n  createdAt: new Date().toISOString()\n});\n\n// Read a note\nconst note = await db.get(noteId);\n\n// Delete a note\nawait db.delete(noteId);\n\n// Subscribe to changes\ndb.subscribe((key, value) => {\n  console.log('Note changed:', key, value);\n});\n```\n\n### Batch Operations Example\n\nYou can efficiently get or set multiple records at once using batch operations:\n\n```javascript\n// Batch get\nconst notes = await db.getMany(['note-1', 'note-2', 'note-3']);\n\n// Batch set\nawait db.setMany([\n  { id: 'note-4', text: 'Fourth note', createdAt: new Date().toISOString() },\n  { id: 'note-5', text: 'Fifth note', createdAt: new Date().toISOString() }\n]);\n```\n\n## Examples\n\n### React Example with Sync Status\n```jsx\nimport { useState, useEffect } from 'react';\nimport { ZenoDB } from 'zeno-db';\n\nfunction NotesApp() {\n  const [db, setDb] = useState(null);\n  const [syncStatus, setSyncStatus] = useState({\n    isOnline: false,\n    isSyncing: false,\n    syncProgress: 0,\n    pendingChangesCount: 0\n  });\n\n  useEffect(() => {\n    const initDB = async () => {\n      const zenoDB = new ZenoDB({\n        storage: { type: 'indexeddb', name: 'notes-db' },\n        sync: { type: 'websocket', url: 'ws://localhost:3000' },\n        softDelete: {\n          enabled: true,\n          fieldName: 'deletedAt',\n          permanentDeleteAfter: 30 // Delete after 30 days\n        }\n      });\n\n      await zenoDB.init();\n      setDb(zenoDB);\n\n      // Subscribe to sync events\n      zenoDB.subscribe((event) => {\n        setSyncStatus(event.status);\n      });\n    };\n\n    initDB();\n  }, []);\n\n  return (\n    <div>\n      <div className={`status ${syncStatus.isOnline ? 'online' : 'offline'}`}>\n        {syncStatus.isOnline ? 'Online' : 'Offline'}\n      </div>\n      {syncStatus.isSyncing && (\n        <div className=\"progress\">\n          Syncing... {syncStatus.syncProgress}%\n        </div>\n      )}\n    </div>\n  );\n}\n```\n\n### Vue Example\n```vue\n<template>\n  <div>\n    <div :class=\"['status', { online: syncStatus.isOnline }]\">\n      {{ syncStatus.isOnline ? 'Online' : 'Offline' }}\n    </div>\n    <div v-if=\"syncStatus.isSyncing\" class=\"progress\">\n      Syncing... {{ syncStatus.syncProgress }}%\n    </div>\n  </div>\n</template>\n\n<script>\nimport { ZenoDB } from 'zeno-db';\n\nexport default {\n  data() {\n    return {\n      db: null,\n      syncStatus: {\n        isOnline: false,\n        isSyncing: false,\n        syncProgress: 0,\n        pendingChangesCount: 0\n      }\n    };\n  },\n  async mounted() {\n    this.db = new ZenoDB({\n      storage: { type: 'indexeddb', name: 'notes-db' },\n      sync: { type: 'websocket', url: 'ws://localhost:3000' },\n      softDelete: {\n        enabled: true,\n        fieldName: 'deletedAt',\n        permanentDeleteAfter: 30 // Delete after 30 days\n      }\n    });\n\n    await this.db.init();\n    \n    this.db.subscribe((event) => {\n      this.syncStatus = event.status;\n    });\n  }\n};\n</script>\n```\n\n## How It Works\n\n### Client Side\n- Uses IndexedDB for local storage\n- Queues changes while offline\n- Auto-syncs when connection restores\n- Real-time updates via WebSocket\n- Sync status indicators and event handling\n\n### Server Side\n- PostgreSQL database for persistent storage\n- WebSocket server for real-time communication\n- Handles concurrent updates\n- Broadcasts changes to all connected clients\n\n## Configuration\n\n### Server Config\n```typescript\ninterface ServerConfig {\n  port: number;\n  pg: {\n    connectionString: string;  // PostgreSQL connection string\n    table: string;            // Table name for your data\n  };\n  softDelete?: {\n    enabled: boolean;         // Enable soft delete functionality\n    fieldName?: string;       // Field to store deletion timestamp (default: 'deletedAt')\n    permanentDeleteAfter?: number; // Days to keep soft-deleted items\n  };\n}\n```\n\n### Client Config\n```typescript\ninterface ClientConfig {\n  storage: {\n    type: 'indexeddb';\n    name: string;        // IndexedDB database name\n  };\n  sync: {\n    type: 'websocket';\n    url: string;        // WebSocket server URL\n  };\n  clientId: string;     // Unique client identifier\n  softDelete?: {\n    enabled: boolean;   // Enable soft delete functionality\n    fieldName?: string; // Field to store deletion timestamp (default: 'deletedAt')\n    permanentDeleteAfter?: number; // Days to keep soft-deleted items\n  };\n}\n```\n\n### Usage Example with Soft Delete\n\n```javascript\n// Initialize with soft delete enabled\nconst db = new ZenoDB({\n  storage: {\n    type: 'indexeddb',\n    name: 'my-app-db'\n  },\n  sync: {\n    type: 'websocket',\n    url: 'ws://localhost:3000'\n  },\n  clientId: 'client-1',\n  softDelete: {\n    enabled: true,\n    fieldName: 'deletedAt',\n    permanentDeleteAfter: 30 // Delete after 30 days\n  }\n});\n\n// Soft delete an item\nawait db.delete('note-1');\n\n// Restore a soft-deleted item\nawait db.restore('note-1');\n\n// Get all items including soft-deleted ones\nconst allItems = await db.getAll(true);\n\n// Permanently delete an item\nawait db.delete('note-1', true);\n\n// Purge old soft-deleted items\nawait db.purgeDeleted();\n```\n\n## Sync Status & Events\n\nZenoDB provides real-time sync status updates and event handling to help you build responsive UIs that reflect the current sync state of your application.\n\n```typescript\nimport { ZenoDB, SyncEvent, SyncStatus } from 'zeno-db';\n\n// Initialize your database\nconst db = new ZenoDB({\n  storage: {\n    type: 'indexeddb',\n    name: 'my-app-db'\n  },\n  sync: {\n    type: 'websocket',\n    url: 'ws://localhost:3000'\n  },\n  softDelete: {\n    enabled: true,\n    fieldName: 'deletedAt',\n    permanentDeleteAfter: 30 // Delete after 30 days\n  }\n});\n\n// Subscribe to sync events\ndb.subscribe((event: SyncEvent) => {\n  const { type, status } = event;\n  \n  // status contains:\n  // - isOnline: boolean (connection status)\n  // - isSyncing: boolean (whether sync is in progress)\n  // - syncProgress: number (0-100 percentage)\n  // - pendingChangesCount: number (changes waiting to sync)\n  \n  switch(type) {\n    case 'connection_change':\n      updateConnectionUI(status.isOnline);\n      break;\n    case 'sync_started':\n      showSyncStarted();\n      break;\n    case 'sync_progress':\n      updateProgressBar(status.syncProgress);\n      break;\n    case 'sync_completed':\n      showSyncComplete();\n      break;\n  }\n});\n\n// Get current status at any time\nconst currentStatus: SyncStatus = db.getSyncStatus();\n```\n\n#### Sync Event Types\n- `connection_change`: Fired when connection status changes (online/offline)\n- `sync_started`: Fired when sync operation begins\n- `sync_progress`: Fired during sync with progress updates\n- `sync_completed`: Fired when sync operation completes\n\n#### Sync Status Properties\n- `isOnline`: Current connection status\n- `isSyncing`: Whether a sync operation is in progress\n- `syncProgress`: Progress percentage (0-100)\n- `pendingChangesCount`: Number of changes waiting to sync\n\n## Best Practices\n\n1. Always initialize before use:\n```javascript\nawait db.init();\n```\n\n2. Handle offline/online transitions gracefully:\n```javascript\nwindow.addEventListener('online', () => {\n  console.log('Back online, syncing...');\n});\n```\n\n3. Use try-catch for error handling:\n```javascript\ntry {\n  await db.set('key', value);\n} catch (error) {\n  console.error('Error saving data:', error);\n}\n```\n\n4. Monitor sync status:\n```javascript\ndb.subscribe((event) => {\n  const { type, status } = event;\n  // Update UI based on sync status.\n});\n```\n\n5. Use soft delete for important data:\n```javascript\n// Instead of permanent deletion\nawait db.delete('important-data');\n\n// Later, if needed\nawait db.restore('important-data');\n\n// Clean up old deleted items periodically\nawait db.purgeDeleted();\n```\n\n## Schema Migrations & Conflict Resolution\n\n### Client-side Migration Example\n\nWhen evolving your data schema, you may need to migrate existing records. For example, if you add a new field to your notes, you can write a migration function that updates all records after initializing the database:\n\n```js\n// Example: Migrating notes to add a \"tags\" field if missing\nasync function migrateNotes(db) {\n  const allNotes = await db.getAll();\n  for (const note of allNotes) {\n    if (!note.tags) {\n      note.tags = [];\n      await db.set(note.id, note); // Save migrated note\n    }\n  }\n}\n\n// Run migration after db.init()\nawait db.init();\nawait migrateNotes(db);\n```\n*Tip: Store a schema version in each record or in IndexedDB metadata, and only run migrations when needed.*\n\n### Application-level Merging Example\n\nFor collaborative or complex data structures, you may need to merge changes from multiple sources. Here is a simple example for merging two versions of a collaborative list:\n\n```js\n// Example: Merging two versions of a collaborative list\nfunction mergeLists(localList, remoteList) {\n  const merged = [...localList];\n  for (const item of remoteList) {\n    if (!merged.find(i => i.id === item.id)) {\n      merged.push(item); // Add new items from remote\n    }\n    // Optionally, resolve conflicts for items with the same id\n  }\n  return merged;\n}\n\n// Usage in sync event handler\n// (Assuming your sync system emits a 'sync_conflict' event)\ndb.subscribe((event) => {\n  if (event.type === 'sync_conflict') {\n    const merged = mergeLists(event.local, event.remote);\n    db.set(event.key, merged);\n  }\n});\n```\n*Tip: For more complex data, consider using libraries like Automerge or Yjs for CRDT-based merging.*\n\n## PostgreSQL Table Structure\n\nYour PostgreSQL table should have this structure:\n```sql\nCREATE TABLE notes (\n  id TEXT PRIMARY KEY,\n  data JSONB NOT NULL,\n  deleted_at TIMESTAMP WITH TIME ZONE,\n  created_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP,\n  updated_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP\n);\n\n-- Index for soft delete queries\nCREATE INDEX idx_notes_deleted_at ON notes(deleted_at);\n```\n\n## License\n\nMIT License - see LICENSE file for details.\n\n## TODO List & Roadmap\n\n### Authentication & Security 🔐\n- [ ] User authentication system integration\n- [ ] JWT-based authentication\n- [ ] Role-based access control (RBAC)\n- [ ] API rate limiting\n- [ ] Data encryption at rest\n- [ ] Session management\n- [ ] OAuth2 provider integration (Google, GitHub)\n\n### Data Management 📊\n- [ ] Data versioning\n- [ ] Soft delete functionality\n- [ ] Data validation middleware\n- [ ] Advanced conflict resolution strategies\n- [ ] Bulk import/export functionality\n\n### Performance Optimizations ⚡\n- [ ] Data compression\n- [ ] Caching layer\n- [ ] Request batching\n- [ ] Lazy loading support\n- [ ] Connection pooling\n- [ ] Query optimization\n\n### Developer Experience 🛠️\n- [ ] CLI tool for database management\n- [ ] Better error handling and logging\n- [ ] Development environment tooling\n- [ ] TypeScript type definitions\n- [ ] API documentation with Swagger/OpenAPI\n- [ ] Integration tests\n- [ ] E2E testing suite\n\n### Monitoring & Debugging 📈\n- [ ] Telemetry integration\n- [ ] Performance metrics dashboard\n- [ ] Debug logging\n- [ ] Error tracking integration\n- [ ] Health check endpoints\n- [ ] Audit logging\n\n### Infrastructure 🏗️\n- [ ] Docker containerization\n- [ ] CI/CD pipeline setup\n- [ ] Automated deployment scripts\n- [ ] Database migration tools\n- [ ] Backup and restore functionality\n- [ ] High availability setup\n\n## Troubleshooting\n\n### Common Issues\n\n1. **Connection Issues**\n   ```javascript\n   // Check if WebSocket server is running\n   const ws = new WebSocket('ws://localhost:3000');\n   ws.onerror = (error) => {\n     console.error('WebSocket connection error:', error);\n   };\n   ```\n\n2. **Database Initialization Failures**\n   ```javascript\n   try {\n     await db.init();\n   } catch (error) {\n     console.error('Database initialization failed:', error);\n     // Check if IndexedDB is supported\n     if (!window.indexedDB) {\n       console.error('IndexedDB is not supported in this browser');\n     }\n   }\n   ```\n\n3. **Sync Status Not Updating**\n   - Ensure you're properly subscribing to sync events\n   - Check network connectivity\n   - Verify WebSocket connection is active\n\n### Debugging Tips\n\n1. Enable verbose logging:\n   ```javascript\n   const db = new ZenoDB({\n     // ... config\n     debug: true\n   });\n   ```\n\n2. Monitor sync events:\n   ```javascript\n   db.subscribe((event) => {\n     console.log('Sync event:', event);\n   });\n   ```\n","readmeFilename":"README.md"}