{"_id":"@bluemarblepayroll/short-term-memory","_rev":"7-0bea5079ef4202dbf0d6641df31c29b2","name":"@bluemarblepayroll/short-term-memory","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@bluemarblepayroll/short-term-memory","version":"1.0.0","description":"Isomorphic Session Storage","main":"./dist/storage_manager.js","typings":"./dist/storage_manager.d.ts","directories":{"lib":"lib","test":"test"},"engines":{"node":">=8.11.3"},"contributors":[{"name":"Matthew Ruggio","email":"mruggio@bluemarblepayroll.com"}],"keywords":["short-term-memory","sessionStorage","session storage","session store","local storage","local store"],"scripts":{"build":"rm -rf dist/* && tsc","clean":"rm -rf dist/*","lint":"tslint -c tslint.json '{lib,test}/**/*.ts'","start":"tsc -w","test":"mocha -r ts-node/register --reporter spec test/**/*.spec.ts"},"repository":{"type":"git","url":"git+https://github.com/bluemarblepayroll/short-term-memory.git"},"bugs":{"url":"https://github.com/bluemarblepayroll/short-term-memory/issues"},"author":{"name":"Blue Marble Payroll, LLC"},"license":"MIT","homepage":"https://bitbucket.org/bluemarble-ondemand/short-term-memory","devDependencies":{"@types/chai":"^4.1.7","@types/mocha":"^5.2.5","chai":"^4.1.2","mocha":"^5.2.0","ts-node":"^7.0.1","tslint":"^5.11.0","typescript":"^2.9.2"},"gitHead":"2121ba7d7c5a7e31784e5691cfdb714550040f88","_id":"@bluemarblepayroll/short-term-memory@1.0.0","_npmVersion":"6.4.1","_nodeVersion":"8.11.3","_npmUser":{"name":"mruggio","email":"mattruggio@icloud.com"},"dist":{"integrity":"sha512-+MiO/9nv7dH+wltnjkrqDzngpmefStMLQZDiNmaI1j5j36vhI3CqIU+VrVUze84JWAzehkkz87IszbodB8I7rA==","shasum":"1a151613be4a08a61bd61495f79eed80d5eae337","tarball":"https://registry.npmjs.org/@bluemarblepayroll/short-term-memory/-/short-term-memory-1.0.0.tgz","fileCount":23,"unpackedSize":54758,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcAvznCRA9TVsSAnZWagAA9YsP/04lxm7RzkpHQN7F/Ujg\nA+SxOpI/7w0RB9eGuCoK26OX95a6+eln8WAQPF2l+GmWMWFNZ0nYdmkm7Sq/\nPcj+2/3pBH71llS++qUQBeMyLFbKqof/ATF7bEPVvhUz67T3pO2tgv/5TAo0\n0jvSJEC/GrJ623vDTks+Y/cG7Z/uqTfpmju44Cj7NUGjQo8ciZz1iPvR9gTc\nacB0yDQnMkMmey1UUPhPWycVxUK9BRfNLV7o7CSsEPczPHKtkAEkUzT4n3bj\n1VPBVlekD4iJ2d8a/tJjYuYvFPS1V46OBwSS/xGCmZNYeEB94QqlD843vNjX\nYNImfEkAjoJshCUyyNgRtodLFSlASReEqoaNer0eAwiOmxsH/xjD8AXLPejB\nRg2gWGJszAxX4kLqGoqOXJrfN3pMH2K5lTFSt4UiI5YFj+aq22jNv06kD7sy\niV8Nt2KanaiatEPstuAlYbpeRqvQHuDTG/h03VOgkLs73U0CEeddhCtkAk9M\nXslxYfAKtI2SCs+nTcCoGRd2OpC2DYtCPyqd0XGK4WyciEQLl5aiiC7Aht+d\nQxCxv2dsitIrgYU2ylxYtMsJVf8kT/VSFZFNrPD9hez03IPvyZ5QTmLzZv1Z\nzGIUgT7c14VBzIWgbZ+RTsDptu+4+HOYWDG+A45vhxkiHigA7fX19jJtbjC5\nMy+i\r\n=d0NJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHXge7raE4wKI+E3oW/7Ig/WqjUyeHcxU04CVGtenJ4/AiBpKENxrlP/NBx7nLcAFCEVQa8jbN04jc1hCwaQO+Facw=="}]},"maintainers":[{"name":"mruggio","email":"mattruggio@icloud.com"},{"name":"gerryster","email":"gerryster@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/short-term-memory_1.0.0_1543699687240_0.41238957804573717"},"_hasShrinkwrap":false}},"time":{"created":"2018-12-01T21:28:07.166Z","1.0.0":"2018-12-01T21:28:07.388Z","modified":"2022-05-26T16:10:51.006Z"},"maintainers":[{"email":"jbosko@paylocity.com","name":"jbos"},{"email":"rbenyoseph@paylocity.com","name":"roeyb"},{"email":"jefflunt@gmail.com","name":"normalocity"},{"email":"ckattner@paylocity.com","name":"ckattnerpcty"}],"description":"Isomorphic Session Storage","homepage":"https://bitbucket.org/bluemarble-ondemand/short-term-memory","keywords":["short-term-memory","sessionStorage","session storage","session store","local storage","local store"],"repository":{"type":"git","url":"git+https://github.com/bluemarblepayroll/short-term-memory.git"},"contributors":[{"name":"Matthew Ruggio","email":"mruggio@bluemarblepayroll.com"}],"author":{"name":"Blue Marble Payroll, LLC"},"bugs":{"url":"https://github.com/bluemarblepayroll/short-term-memory/issues"},"license":"MIT","readme":"# Short Term Memory\n\n**Isomorphic Session Storage**\n\n[![Build Status](https://travis-ci.org/bluemarblepayroll/short-term-memory.svg?branch=master)](https://travis-ci.org/bluemarblepayroll/short-term-memory)\n\nVery small library that places a layer of abstraction over the browsers built in [Session Storage API](https://developer.mozilla.org/en-US/docs/Web/API/Window/sessionStorage).  This means you can program to this library and it will ensure you do not make any hard links between your application and the browser.  When this is ran outside of a browser then it will polyfill the storage with an in-memory key-value store.\n\nNote that this library only deals with short-lived storage (Session Storage) and does not currently deal with longer term storage (i.e. Local Storage).\n\n## Installation\n\nThis library could be consumed as either a pure TypeScript library or as its trans-compiled ES2015 JavaScript counterpart.\n\nTo install through NPM:\n\n````\nnpm install --save @bluemarblepayroll/short-term-memory\n````\n\nTo install through Yarn:\n\n````\nyarn add @bluemarblepayroll/short-term-memory\n````\n\n## Examples\n\nThe Store API is meant to implement the main SessionStorage API methods:\n\n1. getItem\n2. setItem\n3. removeItem\n4. clear\n\nThe other methods, such as key and length, were purposely omitted from the initial implementation.  These methods can be added later should the need arise.\n\n### Storing & Retrieving Values\n\n```\nimport StorageManager from \"@bluemarblepayroll/short-term-memory\";\n\nStorageManager.setItem('Iron Man', 'Tony Stark');\n\nlet ironMansName = StorageManager.getItem('Iron Man'); // returns 'Tony Stark'\n```\n\n### Removing Values\n\n```\nimport StorageManager from \"@bluemarblepayroll/short-term-memory\";\n\nStorageManager.setItem('Iron Man', 'Tony Stark');\n\nStorageManager.removeItem('Iron Man');\n\nlet ironMansName = StorageManager.getItem('Iron Man'); // returns null\n```\n\n### Clearing\n\n```\nimport StorageManager from \"@bluemarblepayroll/short-term-memory\";\n\nStorageManager.setItem('Iron Man', 'Tony Stark');\nStorageManager.setItem('Hulk', 'Bruce Banner');\n\nStorageManager.clear();\n\nlet ironMansName = StorageManager.getItem('Iron Man'); // returns null\nlet hulksName = StorageManager.getItem('Hulk'); // returns null\n```\n\n## Contributing\n\n### Development Environment Configuration\n\nBasic steps to take to get this repository compiling:\n\n1. Install [Node.js](https://nodejs.org) (check package.json for versions supported.)\n2. Install Yarn package manager: ```npm install -g yarn```\n3. Clone the repository: ```git clone git@github.com:bluemarblepayroll/short-term-memory.git```\n4. Navigate to the root folder: ```cd short-term-memory```\n5. Install dependencies: ```yarn```\n\n### Compiling\n\nTo compile the TypeScript source down to native JavaScript, run:\n\n````\nyarn run build\n````\n\n### Running Tests\n\nTo execute the test suite run:\n\n````\nyarn run test\n````\n\n### Linting\n\n````\nyarn run lint\n````\n\n### Publishing\n\nNote: ensure you have proper authorization before trying to publish new versions.\n\nAfter code changes have successfully gone through the Pull Request review process then the following steps should be followed for publishing new versions:\n\n1. Merge Pull Request into master\n2. Update package.json [version number](https://semver.org/)\n3. Update CHANGELOG.md\n4. Push master to remote and ensure CI builds master successfully\n5. Build the project locally: `yarn run build`\n6. Perform a dry run: `npm publish --access public --dry-run`.  Inspect packaging, ensure all files (including dist) are included.\n7. Publish package to NPM: `npm publish --access public`\n8. Tag master with new version: `git tag <version>`\n9. Push tags remotely: `git push origin --tags`\n\n## License\n\nThis project is MIT Licensed.\n","readmeFilename":"README.md"}