{"_id":"@adaptive-recognition/vehicle-detector-agent-webhook-middleware","_rev":"1-08b7942fe78b2a60ce559b6913e551b1","name":"@adaptive-recognition/vehicle-detector-agent-webhook-middleware","dist-tags":{"latest":"1.0.2"},"versions":{"1.0.1":{"name":"@adaptive-recognition/vehicle-detector-agent-webhook-middleware","version":"1.0.1","description":"Express middleware for parsing Vehicle Detector Agent webhook requests and verifying their signature.","main":"dist/index.js","scripts":{"clean":"shx rm -rf dist","prebuild":"npm run clean","build":"tsc -p .","test":"jest"},"publishConfig":{"@arcloud:registry":"https://gitlab.ar.local/api/v4/projects/333/packages/npm/"},"keywords":["anpr","adaptive","recognition","vehicle","detector","agent","webhook","hook","middleware","express"],"author":{"name":"Botond BALÁZS","email":"botond.balazs@arip.hu"},"license":"MIT","dependencies":{"debug":"^4.3.4","jest":"^29.3.1","jwa":"^2.0.0","ts-jest":"^29.0.3"},"devDependencies":{"@types/debug":"^4.1.7","@types/express":"^4.17.14","@types/jest":"^29.2.3","@types/jwa":"^2.0.0","@types/node":"^18.11.9","shx":"^0.3.4","typescript":"^4.9.3"},"types":"./dist/index.d.ts","gitHead":"01d702971c72eba8a896fcf9aa1494347b06981d","_id":"@adaptive-recognition/vehicle-detector-agent-webhook-middleware@1.0.1","_nodeVersion":"18.13.0","_npmVersion":"8.19.3","dist":{"integrity":"sha512-ddnIOsUs++ODL3moRgmwQsdQ5tVeg8g0StGzqPbpMJDafANqCF3YRihvwE8HTuRcz6ueAzUjYge4+KMEfmkMew==","shasum":"8165cd5799ec3b12c4171238fdc85dc212fbfcb9","tarball":"https://registry.npmjs.org/@adaptive-recognition/vehicle-detector-agent-webhook-middleware/-/vehicle-detector-agent-webhook-middleware-1.0.1.tgz","fileCount":9,"unpackedSize":18626,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGCzyiSxBMu16yT38k7wKiAQgVMPi0YhyRiQnEfVgN+4AiEA9bSpUhNxHpGYB1xC5OzDvt7ciaWxEq565Qf97oskWX4="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj/K4NACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr0bQ//TQhSZH1Y8Sdu61xbbsGDX+xeHwoF9HRdBCQTcKuHNHehOOvm\r\ntwaK+wVzXpCxkEiFmlC46Kcc2U5gC1BZzVN+bCsxmvJJrWQNAa+VVe1G91TR\r\np5efiDKLh+Qc6/fGSf8z5wb9J0NBupeE9YgIu69JuNXR27xiuAYpvG47liBz\r\n1vbYdUmDWvkQhxNB4pT5je2uSfKZmhx7c1Qf5obbW0g8ejFlGyV6RjVVTY63\r\nVyv66rDHfOEq/eNAfUlPpISyAO58eC/CdsXYxfyZp4Aik7zQ4n+MMSHdaBJ+\r\n3VK0eD7JCzV3yME6SjUdSlIJK/8kwAVJLSfFakVRK7ORu9DHOJ9SntnpcHsY\r\nmIn+8NU4PSoTlbD2oPu2WK+6P19OubRh14v1WAmR8LWk8JwL2NVhSClH9Pw7\r\n38uxFE9vVGMI51JNkfkqLxui+aDgE9lU1JMfPb2KPaP/IQhop2LZqkVNmvqZ\r\noSH+LiqdctqpO5fQBl+gWiwLaAsYtjjgnA0DFjX/TkVXPAfL4DvUiqXzxLyO\r\nw5rRIReQeTkg8XZYW9IONAiRNvSRwGozjApg45c9x4e3tSYwUVAxjaTl16oJ\r\nLA6VRo/g4A1/fcAjW7gKgSJvv58dl3iCCgS9PrXK+9MmZBKFEJH3UduWgsIj\r\nPjAW/CJjdPC7oZDCkg5ONNpPvBTlEuFYlrY=\r\n=7Z0K\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"botond.balazs.ar","email":"botond.balazs@arip.hu"},"directories":{},"maintainers":[{"name":"laszlo.toth","email":"laszlo.toth@arh.hu"},{"name":"botond.balazs.ar","email":"botond.balazs@arip.hu"},{"name":"tothl74","email":"tothl74@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vehicle-detector-agent-webhook-middleware_1.0.1_1677504012847_0.07660168227063124"},"_hasShrinkwrap":false},"1.0.2":{"name":"@adaptive-recognition/vehicle-detector-agent-webhook-middleware","version":"1.0.2","description":"Express middleware for parsing Vehicle Detector Agent webhook requests and verifying their signature.","main":"dist/index.js","scripts":{"clean":"shx rm -rf dist","prebuild":"npm run clean","build":"tsc -p .","test":"jest"},"publishConfig":{"@arcloud:registry":"https://gitlab.ar.local/api/v4/projects/333/packages/npm/"},"keywords":["anpr","adaptive","recognition","vehicle","detector","agent","webhook","hook","middleware","express"],"author":{"name":"Botond BALÁZS","email":"botond.balazs@arip.hu"},"license":"MIT","dependencies":{"debug":"^4.3.4","jest":"^29.3.1","jwa":"^2.0.0","ts-jest":"^29.0.3"},"devDependencies":{"@types/debug":"^4.1.7","@types/express":"^4.17.14","@types/jest":"^29.2.3","@types/jwa":"^2.0.0","@types/node":"^18.11.9","shx":"^0.3.4","typescript":"^4.9.3"},"types":"./dist/index.d.ts","gitHead":"68a76eb904484b3bfddeb87039c5e6d5c1e56dfb","_id":"@adaptive-recognition/vehicle-detector-agent-webhook-middleware@1.0.2","_nodeVersion":"18.13.0","_npmVersion":"8.19.3","dist":{"integrity":"sha512-WnXLi474sgRlI1JcdU5wV60+cYIkIXwN350Re0j9UZt30TxaWjMlAn6WOfIWBnCSJ3mJGMQOsGw7gAIk03k1xg==","shasum":"a971457ad75d5197febec26a52ea1c23cc6ee7c3","tarball":"https://registry.npmjs.org/@adaptive-recognition/vehicle-detector-agent-webhook-middleware/-/vehicle-detector-agent-webhook-middleware-1.0.2.tgz","fileCount":9,"unpackedSize":21249,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDuI3kfDpIVWD7P5frGkxR93eXw82vrp9nihpMagb7J1gIgC79g1cMMHN9cQwiAKCa2/mQKTPfPOhx0ylWlTnO5GC0="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj/LPvACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmryXA//fyrGBbkHmQqp25I7JfqggPUgVrJMDfjKLc/l0kOWQ7hfhC9q\r\niIcSBxLSNG4thDBX3dg3dxFBnloXaMbaOd2O3CwX8l6Q12Dt3/Ph5RekNq2u\r\njNP7zf0Nx9ylQzZvJ6LbKU260DqTmpkMQxR/KsKXD647kTAVPi/4NuyfWgr0\r\nz+xxW45Dkx5Tmw+neruExz2sABJfOp1yX/jBdZoH4GRxkJnwMHvkOrTHnDp/\r\nArRXvC5EW08oqiKqTDX56eBnowKJyhKSijLii9b8RntWycQwhHc4nxpP2BWp\r\nlUulg4wUp1s9D7ClwMBiIondDYMyIyNchudC9QOpRAt4719xl6V6NGsshj7R\r\nanlMZB/ZCsegtfF6mA/dODjivT1Cnc44jq1HN3eIgUr3WkRk9kjuUAJh2CZp\r\noH5OtEC6HnRGCmDClQrFHxY9BGGxnPwCwwyDHOVTdZNr+8c6h9A6KVYabFdI\r\nCnBIU6sD8Yu5XUL/7gAgSbSue7iHULm+afQgPu3NnpMEuL4sIOXN35+piFFy\r\ncNiCxqjOVELaa5bHTSwlMp9drmvK1Ek3xYNbXGuilBgAnqmgUv0daDTnegjB\r\ny73pi5L4hdkv7ZqKMfxduXTfN6HR9ZasHUY/iLum7C6MhodhoT6dsZU00SeF\r\nGCxxKKHB0fga5mLiEW35DorXHebajFH/uN4=\r\n=wGau\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"botond.balazs.ar","email":"botond.balazs@arip.hu"},"directories":{},"maintainers":[{"name":"laszlo.toth","email":"laszlo.toth@arh.hu"},{"name":"botond.balazs.ar","email":"botond.balazs@arip.hu"},{"name":"tothl74","email":"tothl74@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vehicle-detector-agent-webhook-middleware_1.0.2_1677505519117_0.289555907176402"},"_hasShrinkwrap":false}},"time":{"created":"2023-02-27T13:20:12.758Z","1.0.1":"2023-02-27T13:20:13.021Z","modified":"2023-02-27T13:45:19.382Z","1.0.2":"2023-02-27T13:45:19.264Z"},"maintainers":[{"name":"laszlo.toth","email":"laszlo.toth@arh.hu"},{"name":"botond.balazs.ar","email":"botond.balazs@arip.hu"},{"name":"tothl74","email":"tothl74@gmail.com"}],"description":"Express middleware for parsing Vehicle Detector Agent webhook requests and verifying their signature.","keywords":["anpr","adaptive","recognition","vehicle","detector","agent","webhook","hook","middleware","express"],"author":{"name":"Botond BALÁZS","email":"botond.balazs@arip.hu"},"license":"MIT","readme":"# Vehicle Detector Agent Webhook Middleware\n\nExpress middleware for parsing Vehicle Detector Agent webhook requests and verifying their signature.\n\n## How to Install\n\n```sh\nnpm install --save @arcloud/vehicle-detector-agent-webhook-middleware\n```\n\n## Usage\n\n### TypeScript\n\n```typescript\nimport express, { Express, Request, Response } from 'express';\nimport { WebhookEvent, webhookSignatureValidator } from \"@arcloud/vehicle-detector-agent-webhook-middleware\";\n\nconst app: Express = express();\nconst port = 8080;\n\nconst signatureValidator = webhookSignatureValidator({\n  algorithm: \"RS256\",\n  publicKeyPath: \"/path/to/RS256.public.pem\"\n});\n\napp.get('/', (req: Request, res: Response) => {\n  res.send('OK');\n});\n\n// This endpoint uses the middleware - requests with an invalid signature \n// will be rejected.\napp.post('/webhook', signatureValidator, (req: Request, res: Response) => {\n  const event: WebhookEvent = req.body; // req.body contains the parsed event\n  console.log(\"Detected At: \", event.detectedAt);\n  console.log(\"Unicode Text:\", event.event.plate.unicodeText);\n  res.send('OK');\n});\n\napp.listen(port, () => {\n  console.log(`⚡️[server]: Server is running at https://localhost:${port}`);\n});\n```\n\n### JavaScript\n\n```javascript\nconst express = require(\"express\");\nconst { webhookSignatureValidator } = require(\"@arcloud/vehicle-detector-agent-webhook-middleware\");\n\nconst app = express();\nconst port = 8080;\n\nconst signatureValidator = webhookSignatureValidator({\n  algorithm: \"RS256\",\n  publicKeyPath: \"/path/to/RS256.public.pem\"\n});\n\n// This endpoint uses the middleware - requests with an invalid signature \n// will be rejected.\napp.post('/webhook', signatureValidator, (req, res) => {\n  const event = req.body; // req.body contains the parsed event\n  console.log(\"Detected At: \", event.detectedAt);\n  console.log(\"Unicode Text:\", event.event.plate.unicodeText);\n  res.send('OK');\n});\n\napp.listen(port, () => {\n  console.log(`⚡️[server]: Server is running at https://localhost:${port}`);\n});\n```","readmeFilename":"README.md"}