{"_id":"@ananas-web/twin-cross-storage","_rev":"2-c651d486a55e22b4a6d7fda728fa7b4a","name":"@ananas-web/twin-cross-storage","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@ananas-web/twin-cross-storage","version":"1.0.0","description":"Twin domain local storage","main":"index.js","scripts":{"test":"node tests"},"repository":{"type":"git","url":"https://git.twin24.ai/projects/TWINCABINET/repos/twin.cross-domain-storage/browse"},"author":{"name":"Ananas-web"},"license":"ISC","bugs":{"url":"https://git.twin24.ai/projects/TWINCABINET/repos/twin.cross-domain-storage/browse/issues"},"homepage":"https://git.twin24.ai/projects/TWINCABINET/repos/twin.cross-domain-storage/browse#readme","dependencies":{"crel":"^3.0.0","try-parse-json":"^1.0.0"},"devDependencies":{"automagic-ui":"^1.3.1","browserify":"^16.2.3","crel":"^3.0.0","doc-js":"^1.3.1","file-server":"^1.0.5","open":"0.0.5","static-server":"^2.0.2","tape":"^4.9.2","watchify":"^3.7.0"},"gitHead":"ba8c3d16aed6f459fa63cd6596c9acbfffcc1eea","_id":"@ananas-web/twin-cross-storage@1.0.0","_nodeVersion":"12.1.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-qx7tcRfqwark/c1wYjIgE7sIw9UnKiGrc2xgpbumkmyXqaxnmhQDWvH2ZywILxRLgJUVAMQ34CJZJpL4H+OCRw==","shasum":"3fdb11d258c838f6adbead5a36140626886402c9","tarball":"https://registry.npmjs.org/@ananas-web/twin-cross-storage/-/twin-cross-storage-1.0.0.tgz","fileCount":14,"unpackedSize":158497,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdAijZCRA9TVsSAnZWagAASJkQAJMIqSfkZyDJcRyUSu1k\ngvDPxNNElR/qIuG5rmkENyxHonTYIYn0x+jeid5V384oM06fwj757GsfA08b\n1dqo8IXBYvDoGyeXvoSj2u0XdFnow2J5wvHJIENA2Z+HQI6YraFw66pRC9Ue\nsdV18v51pLvmpQMRt+5pw5jECicQ2cO9RwoHyVOCgaP6F2Tko2JoovLQddB1\nCNMUIUGOP1YOsr+sPWMdZFEqvF1DY6erebyCRnaRdeut8U/g3LhQJgn8ZVHC\nLrLFkXWXhDWlhv8tWnldRE4QEOh5zYbY+tBtEG2s+YU4u6rM1+xuqPl61Vwi\nEEN8piyoIZqU5Q4XPCtfahNK4TpZMeVBEar/3+KBfcjP09YAi1lQIqZtDFUh\nybY+GF0+5NNMSeXlFGFWW3eG562mjf3FbW1EO+at8iuMtjDvbaGRCDMdGK7E\n5eNbXahwH3ts6/Z3DC8tydRFQ7ZljAAvGVzx02BSUr83p1s6K6Jpy1JRYAwH\nc392RsZ6EHddPG+vQbFd7Qzgh/k1mjTIokrsd4Hhpmgj+52xoqspcMTJ/xuY\nYrB0wlfDzUBeNvX4KC2b+nkqYYeFcvphfqfXm6vMcgz+x3Po51zd3TVSlreK\nZTRoe6ZxuNs3ApKNNYwWCCU/j1xgR+ARRzMOUq6ehw9+TR7EtWBYk4V9VaLN\nVa+8\r\n=+gnL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDd6uf00PgyE9LPJTL4km/b6HjPu4fhwikFCKlfGxYRkAiB9bGp4KAW3zbCW6sOrBugpBZZH5sHtCbnlhdP42/U7EQ=="}]},"maintainers":[{"name":"spyric","email":"spyric@ananas-web.ru"}],"_npmUser":{"name":"spyric","email":"spyric@ananas-web.ru"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/twin-cross-storage_1.0.0_1560422616647_0.6989158978986809"},"_hasShrinkwrap":false}},"time":{"created":"2019-06-13T10:43:36.451Z","1.0.0":"2019-06-13T10:43:36.829Z","modified":"2022-04-04T13:55:08.877Z"},"maintainers":[{"email":"nikita.pyankov@ananas-web.ru","name":"piankov_ekb"},{"email":"spyric@ananas-web.ru","name":"spyric"}],"description":"Twin domain local storage","homepage":"https://git.twin24.ai/projects/TWINCABINET/repos/twin.cross-domain-storage/browse#readme","repository":{"type":"git","url":"https://git.twin24.ai/projects/TWINCABINET/repos/twin.cross-domain-storage/browse"},"author":{"name":"Ananas-web"},"bugs":{"url":"https://git.twin24.ai/projects/TWINCABINET/repos/twin.cross-domain-storage/browse/issues"},"license":"ISC","readme":"Allows sharing of local storage across domains.\n\nUse a host to give access to local storage.\n\nUse a guest to gain access to the local storage on a host.\n\n## Install\nnpm i twin-cross-storage\n\n## Usage\n\n### Host\n```javascript\nvar createHost = require('cross-domain-storage/host');\n```\n\n#### host(allowedDomains)\nCall with an array of allowed domains, or regular expression.\n```javascript\nvar storageHost = createHost([\n        {\n            origin: 'http://www.foo.com',\n            allowedMethods: ['get', 'set', 'remove']\n        },\n        {\n            origin: 'http://www.bar.com',\n            allowedMethods: ['get']\n        }\n    ]);\n```\n\n#### host.close()\n```javascript\nstorageHost.close();\n// storageHost will no longer allow access from guests and can no longer be used.\n```\n\n### Guest\n```javascript\nvar createGuest = require('cross-domain-storage/guest')\n```\n\n#### guest(hostURL)\nCreate a guest and connect to the host.\n\nAny methods that are called while connecting are queued up and handled seamlessly.\n\n```javascript\n// Hosted on http://www.foo.com\nvar bazStorage = createGuest('http://www.baz.com/accessStorage');                         \n```\n\n#### guest.get(key, callback)\n\n```javascript\nbazStorage.get('fizz', function(error, value) {\n    // value for the key of 'fizz' will be retrieved from localStorage on www.baz.com\n});\n```\n\n#### guest.set(key, value, callback)\n\n```javascript\nbazStorage.set('foo', 'bar', function(error, data) {\n    // foo is now set to 'bar'\n});\n```\n\n#### guest.remove(key, callback)\n\n```javascript\nbazStorage.remove('foo', function(error, data) {\n    // foo is now removed\n});\n```\n\n#### guest.close()\n\n```javascript\nbazStorage.close();\n//connection is now closed and bazStorage can no longer be used.\n```\n","readmeFilename":"README.md"}