{"bugs":{"url":"https://github.com/sanity-io/sanity/issues"},"dist":{"shasum":"33c6b549f4d82f8a17e1fca277fdeca05ca8d612","tarball":"https://registry.npmjs.org/@sanity/document-store/-/document-store-0.145.0-alpha.32.tgz","fileCount":21,"integrity":"sha512-0ed5pSKNEZUZrs8GC3eWytIJLIbhIieZn5Tj24dkb6JG+y5t9y3uVul+6JGnqI8Y5S2y4Gg0OTOwhV9WN8VfjA==","signatures":[{"sig":"MEQCIBSxTQzybRE/wDp53eoyqc2s2f3HubxcLN9y9Qt+qytoAiBltaJv1fJxqEqReRSAkFCQRnORtZcIU2EujjgfSrFzCg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":33493,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdysCNCRA9TVsSAnZWagAAot4P/RQ6fvnVKhq8J70sN0+Y\nkEd2repBz7Oz/gD5vdEaAqkt5j0ufAzdIJD7uJu6R8QG+mtYMetjjMdEBV+g\nl8W4IB8Tdv+tEtFngWLn4Rt3iunfLHyHiCT2WDJlnjthFFXdYz7TB18YsyX9\ndQAPgGpLthfXKTLpPcBnrhSET2qCgXKnrtYgE3ekTFXUAjDeC3MaUGEBtsv1\nQEg8S9MCx+2H1gw5HKk4eVah/idRhyPXahbYieqFVOJ78mgn9VHmzSFi9LAX\n0kzA3fg8BA3z2ZUe57/L9lSwq7Ux3BIWCQhmFMybfa1+ulcFG/0xAen2OBlh\n0O7B19FYzlEBOvIIjcMuhuYs8hE7IHpJAkV6HLu94oe2JpYhxO6GWFCYXA9C\njgbky4UhpnsQ76kqzaTiFj0tUYVgetWTqTZemyYiHV1QDOW0OKWDIJXOuv4E\n8UgfRrM9Hj158wWIuBTPjWL2Dpx0Veyf4e99eP6OfUIwnx2HA/Kb97+wtprA\n9/IXieD8AYVMXLgR6KEdDGyrKgPM89rSz9iOt+W8gcVrsMT0XQhJ7a/Dhmp8\n3PpREsNA1yQHkrQpXkS0VGPC+cCjG5ABhTbpGMxsbftYkl1ooUMeQzV6oOX4\n7KOJRFPpJLIfBV4uKI2GRhgtd/0IFLqEV1Ido2yOYYa1+aTbAuCNasQa//vc\nfQ8K\r\n=8uNC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./lib/index.js","name":"@sanity/document-store","author":{"name":"Sanity.io","email":"hello@sanity.io"},"readme":"# Document store\n\nSanity / gradient document store\n\n## Example\n```js\n// If you are interested in everything that happens with document `lol42`\nconst subscription = documents.byId(\"lol42\").subscribe(event => {\n  console.log('Something happened with document lol42!', event)\n})\n\n// After a while, when you are no longer interested in updates fom document `lol42`:\nsubscription.unsubscribe()\n```\n\n## How it works\nWhen you add a subscriber to a document the first thing that happens is that the subscriber function is called with a snapshot of the document's current state. This happens as soon as the snapshot is retrieved. If there is a cached version of it on the client, the snapshot is received immediately (synchronously).\n\nFrom that moment on, you will receive a new event every time something happens to the document, until you unsubscribe again.\n\n## API\n\n- `createDocumentStore({serverConnection: ServerConnection}) : DocumentStore`\n\nServerConnection must be an object with the following api:\n- `byId(id : string) : Observable<DocumentEvent>`\n- `query(query : string) : Observable<QueryResultEvent>`\n(todo, add more)\n\n### DocumentStore\n\n### Query methods\n- `byId(id : string) : Observable<DocumentEvent>`\n- `byIds(ids : Array<string>) : Observable<QueryResultEvent>`\n- `query(query : string) : Observable<QueryResultEvent>`\n\n### Mutation methods\n- `update(id : string, spec : UpdateSpec) : Observable<OperationEvent>`\n- `create(document : Document) : Observable<OperationEvent>`\n- `replace(documentId : string, document : Document) : Observable<OperationEvent>`\n- `createOrReplace(document : Document) : Observable<OperationEvent>`\n- `delete(documentId : string) :  : Observable<OperationEvent>`\n\n### Document\n- `_id : string`\n- `_type : string`\n\n### DocumentEventType\n\n### DocumentEvent\n- `type : string` either one of `snapshot`, `update`\n- `snapshot : Document`\n","gitHead":"fee347379ed7f286906fb633e24140f4ea71f733","license":"MIT","scripts":{"clean":"rimraf lib","examples":"echo 'Running examples'; for i in examples/*.js; do echo '\n## '$i' ----\n' && node $i; done"},"_npmUser":{"name":"skogsmaskin","email":"per.kristian.nordnes@gmail.com"},"homepage":"https://www.sanity.io/","keywords":["sanity","cms","headless","realtime","content","document-store"],"repository":{"url":"git+https://github.com/sanity-io/sanity.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v11.6.0+x64 (darwin)","description":"Sanity / gradient document store","directories":{},"maintainers":[{"name":"bjoerge","email":"bjoerge@gmail.com"},{"name":"evenw","email":"even@sanity.io"},{"name":"judofyr","email":"judofyr@gmail.com"},{"name":"kmelve","email":"knut.melvaer@gmail.com"},{"name":"kristofferj","email":"kristoffer@sanity.io"},{"name":"mariuslundgard","email":"studio@mariuslundgard.com"},{"name":"radhe_sanity","email":"radhe@sanity.io"},{"name":"rbotten","email":"rbotten@gmail.com"},{"name":"rexxars","email":"espen@hovlandsdal.com"},{"name":"saasen","email":"stensaasanders@gmail.com"},{"name":"sanity-io","email":"developers@sanity.io"},{"name":"simenss","email":"simen@bengler.no"},{"name":"skogsmaskin","email":"per.kristian.nordnes@gmail.com"},{"name":"thomax","email":"thomas@sanity.io"},{"name":"vicbergquist","email":"victoria.bergquist@gmail.com"}],"_nodeVersion":"11.6.0","dependencies":{"rxjs":"^6.5.2","lodash":"^4.17.4","nano-pubsub":"^1.0.2","@sanity/mutator":"0.145.0-alpha.32+fee347379"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/document-store_0.145.0-alpha.32_1573568653422_0.024364602762054544","host":"s3://npm-registry-packages"},"_id":"@sanity/document-store@0.145.0-alpha.32","version":"0.145.0-alpha.32"}