{"_id":"@basis-theory/basis-theory-js-encryption-node","_rev":"13-b525f3beb12cb788065612322817efa3","name":"@basis-theory/basis-theory-js-encryption-node","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@basis-theory/basis-theory-js-encryption-node","version":"1.0.0","author":{"name":"Basis Theory","email":"support@basistheory.com"},"license":"Apache-2.0","_id":"@basis-theory/basis-theory-js-encryption-node@1.0.0","maintainers":[{"name":"bt-platform","email":"platform@basistheory.com"},{"name":"sabriskaybt","email":"sabrina@basistheory.com"},{"name":"dhudec","email":"drew@basistheory.com"},{"name":"adamletizia","email":"adam@basistheory.com"},{"name":"briangonzalezatbt","email":"brian.gonzalez@basistheory.com"},{"name":"lcschy","email":"lucas@basistheory.com"},{"name":"davi.basistheory","email":"davi@basistheory.com"},{"name":"matthew_basistheory","email":"matthew@basistheory.com"},{"name":"bweber36","email":"brandon@basistheory.com"},{"name":"armsteadj1","email":"armsteadj1@gmail.com"}],"homepage":"https://github.com/Basis-Theory/basis-theory-js-encryption-node#readme","bugs":{"url":"https://github.com/Basis-Theory/basis-theory-js-encryption-node/issues"},"dist":{"shasum":"12e34ce1424aa2c25df249d7c7ae13c78a306295","tarball":"https://registry.npmjs.org/@basis-theory/basis-theory-js-encryption-node/-/basis-theory-js-encryption-node-1.0.0.tgz","fileCount":25,"integrity":"sha512-oVTK2yuQHPxJ23t5XTfz24f4zPxPaiGu06nbH4bO52Q9UcAC8/9y39jATMTpqqWo/hoJ3RPGT6ydsG1txx9Obw==","signatures":[{"sig":"MEYCIQCPPhLZNEJIOJOTZZKFc2NkrHB3vDqIcMpOdilYRJTYDwIhAK+B460gHAWasdeLsRFz8qOa7nOOzh+W1fPq9kj52OqR","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":36920},"main":"index.js","module":"index.js","engines":{"node":">=10.12.0"},"gitHead":"13b3ee2a73bac7a6e3e07221e4a521c05de7ae0d","typings":"index.d.ts","_npmUser":{"name":"bt-platform","email":"platform@basistheory.com"},"prettier":"@basis-theory/eslint-config/prettier","repository":{"url":"git+https://github.com/Basis-Theory/basis-theory-js-encryption-node.git","type":"git"},"_npmVersion":"7.23.0","description":"Node (Crypto) Encryption Provider for the [Basis Theory](https://basistheory.com/) JS [Encryption SDK](https://github.com/Basis-Theory/basis-theory-js-encryption).","directories":{},"_nodeVersion":"14.17.6","dependencies":{"node-cache":"^5.1.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@basis-theory/basis-theory-js-encryption":"^1.0.1"},"_npmOperationalInternal":{"tmp":"tmp/basis-theory-js-encryption-node_1.0.0_1632250478953_0.8569927854278265","host":"s3://npm-registry-packages"}}},"time":{"created":"2021-09-21T18:54:38.911Z","modified":"2024-09-16T16:46:31.581Z","1.0.0":"2021-09-21T18:54:39.083Z"},"bugs":{"url":"https://github.com/Basis-Theory/basis-theory-js-encryption-node/issues"},"author":{"name":"Basis Theory","email":"support@basistheory.com"},"license":"Apache-2.0","homepage":"https://github.com/Basis-Theory/basis-theory-js-encryption-node#readme","repository":{"url":"git+https://github.com/Basis-Theory/basis-theory-js-encryption-node.git","type":"git"},"description":"Node (Crypto) Encryption Provider for the [Basis Theory](https://basistheory.com/) JS [Encryption SDK](https://github.com/Basis-Theory/basis-theory-js-encryption).","maintainers":[{"email":"robert@basistheory.com","name":"greathouse-bt"},{"email":"kevin@basistheory.com","name":"kevinperaza-bt"},{"email":"josue@basistheory.com","name":"jleon15"},{"email":"lucas@basistheory.com","name":"lcschy"},{"email":"brian.gonzalez@basistheory.com","name":"briangonzalezatbt"},{"email":"drew@basistheory.com","name":"dhudec"},{"email":"davi@basistheory.com","name":"davi.basistheory"},{"email":"armsteadj1@gmail.com","name":"armsteadj1"},{"email":"matthew@basistheory.com","name":"matthew_basistheory"},{"email":"platform@basistheory.com","name":"bt-platform"}],"readme":"# BasisTheory JS Node Encryption Provider\n\nNode (Crypto) Encryption Provider for the [Basis Theory](https://basistheory.com/) JS [Encryption SDK](https://github.com/Basis-Theory/basis-theory-js-encryption).\n\n## Installation\n\nUsing [Node Package Manager](https://docs.npmjs.com/)\n\n```sh\nnpm install --save @basis-theory/basis-theory-js-encryption-node\n```\n\nUsing [Yarn](https://classic.yarnpkg.com/en/docs/)\n\n```sh\nyarn add @basis-theory/basis-theory-js-encryption-node\n```\n\n## Documentation\n\nFor further documentation and examples, please refer to our [Docs](https://docs.basistheory.com/api-reference/encryption).\n\n## Usage\n\n### Initialization and Usage with BasisTheoryEncryption\n\n```javascript\nimport { BasisTheoryEncryption } from '@basis-theory/basis-theory-js-encryption';\nimport { BasisTheoryNodeEncryptionProvider } from '@basis-theory/basis-theory-js-encryption-node';\n\nconst nodeProvider = new BasisTheoryNodeEncryptionProvider();\nconst btEncryption = await new BasisTheoryEncryption().init([nodeProvider]);\n```\n\n### Caching and Repositories\n\nThe default cache implementation uses [node-cache](https://www.npmjs.com/package/node-cache), but users can implement their own from the interface.\nLocal Key Repository and Provider Key Repository implementations are provider for testing.\nIt's expected that the user provides their own repository implementations through the `init` call.\n\n```javascript\nimport { BasisTheoryEncryption } from '@basis-theory/basis-theory-js-encryption';\nimport { BasisTheoryNodeEncryptionProvider } from '@basis-theory/basis-theory-js-encryption-node';\n\nconst nodeProvider = new BasisTheoryNodeEncryptionProvider().init({\n  cache: new MyCacheService(),\n  keyRepository: new MyKeyRepository(),\n  providerKeyRepository: new MyProviderKeyRepository(),\n  rsaKeySize: 2048,\n});\n\n\nconst btEncryption = await new BasisTheoryEncryption().init([nodeProvider]);\n```\n\n## Development\n\nThe provided scripts with the SDK will check for all dependencies, build the solution, and run all tests.\n\n### Dependencies\n\n- [NodeJS](https://nodejs.org/en/) > 10.12.0\n- [Yarn](https://classic.yarnpkg.com/en/docs/)\n\n### Build the SDK and run Tests\n\nRun the following command from the root of the project:\n\n```sh\nmake verify\n```\n","readmeFilename":"README.md"}