{"_id":"@decionis/presence-vue","_rev":"2-ff17b93b8b30d186d543243fbedca223","name":"@decionis/presence-vue","dist-tags":{"latest":"0.2.0"},"versions":{"0.1.0":{"name":"@decionis/presence-vue","version":"0.1.0","license":"Apache-2.0","_id":"@decionis/presence-vue@0.1.0","maintainers":[{"name":"decionis","email":"festus@binariesfort.com"}],"homepage":"https://presence.decionis.com/developers/vue","bugs":{"url":"https://github.com/decionis/Presence/issues"},"dist":{"shasum":"0a4a399f8a7da3b7bd1653faff128d8d1db17566","tarball":"https://registry.npmjs.org/@decionis/presence-vue/-/presence-vue-0.1.0.tgz","fileCount":19,"integrity":"sha512-9LiOYlAl0TzuBEutE46iko8+gQybrSUMl9HmaUl6KFmq95Wpgp1lOPleN1DQSDYX2VimsAipY//6SZL4lavzkA==","signatures":[{"sig":"MEYCIQD8ZhY95mFyRs/d0DQurLx17D2VG6/WnXuf7qZsKHt/BAIhAJyz4CxAI5Pfw1ybl/Ht6Cwsjmzd6IVmmECr+wzv6OPz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":32675},"main":"./dist/index.js","type":"module","_from":"file:artifacts/npm/decionis-presence-vue-0.1.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=22.14.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"lint":"eslint src","test":"vitest run","build":"tsc -p tsconfig.json","test:e2e":"pnpm -C ../.. --filter @decionis/presence-vue... build && playwright test","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"decionis","email":"festus@binariesfort.com"},"_resolved":"/home/runner/work/Presence/Presence/artifacts/npm/decionis-presence-vue-0.1.0.tgz","_integrity":"sha512-9LiOYlAl0TzuBEutE46iko8+gQybrSUMl9HmaUl6KFmq95Wpgp1lOPleN1DQSDYX2VimsAipY//6SZL4lavzkA==","repository":{"url":"git+https://github.com/decionis/Presence.git","type":"git","directory":"packages/widget-vue"},"_npmVersion":"11.5.1","description":"Official Presence Vue bindings: <PresenceGate/> and usePresence() over the presence-widget runtime.","directories":{},"sideEffects":["./dist/PresenceGate.js"],"_nodeVersion":"22.14.0","dependencies":{"@decionis/presence-widget":"0.1.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.41","eslint":"^9.17.0","vitest":"^2.1.8","esbuild":"^0.25.0","happy-dom":"^20.0.0","typescript":"^5.7.2","@types/node":"^22.20.1","@vue/test-utils":"^2.4.11","@playwright/test":"^1.62.1","@presence/config":"0.1.0"},"peerDependencies":{"vue":"^3.4.0"},"_npmOperationalInternal":{"tmp":"tmp/presence-vue_0.1.0_1786343335626_0.13771577010975644","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@decionis/presence-vue","version":"0.2.0","description":"Official Presence Vue bindings: <PresenceGate/> and usePresence() over the presence-widget runtime.","license":"Apache-2.0","repository":{"type":"git","url":"git+https://github.com/decionis/Presence.git","directory":"packages/widget-vue"},"homepage":"https://presence.decionis.com/developers/vue","bugs":{"url":"https://github.com/decionis/Presence/issues"},"type":"module","sideEffects":["./dist/PresenceGate.js"],"main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"dependencies":{"@decionis/presence-widget":"0.2.0"},"peerDependencies":{"vue":"^3.4.0"},"devDependencies":{"@playwright/test":"^1.62.1","@types/node":"^22.20.1","@vue/test-utils":"^2.4.11","esbuild":"^0.25.0","eslint":"^9.17.0","happy-dom":"^20.0.0","typescript":"^5.7.2","vitest":"^2.1.8","vue":"^3.5.41","@presence/config":"0.1.0"},"engines":{"node":">=22.14.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"scripts":{"build":"tsc -p tsconfig.json","test":"vitest run","test:e2e":"pnpm -C ../.. --filter @decionis/presence-vue... build && playwright test","lint":"eslint src","typecheck":"tsc -p tsconfig.json --noEmit"},"_id":"@decionis/presence-vue@0.2.0","_integrity":"sha512-Vj3Swxr+LNd8IGeL9fhZrEjiAf+yzGL5wvpvUABqQDm63bXUZ4rMl9AzBkzxqjIMw0Pb8yeG1Y8X5VjXtbyRQw==","_resolved":"/home/runner/work/Presence/Presence/artifacts/npm/decionis-presence-vue-0.2.0.tgz","_from":"file:artifacts/npm/decionis-presence-vue-0.2.0.tgz","_nodeVersion":"22.14.0","_npmVersion":"11.5.1","dist":{"integrity":"sha512-Vj3Swxr+LNd8IGeL9fhZrEjiAf+yzGL5wvpvUABqQDm63bXUZ4rMl9AzBkzxqjIMw0Pb8yeG1Y8X5VjXtbyRQw==","shasum":"5e1d8a21a5a7cd5126c8852d658f6b2762479df0","tarball":"https://registry.npmjs.org/@decionis/presence-vue/-/presence-vue-0.2.0.tgz","fileCount":19,"unpackedSize":32675,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIElr6Dgjf5nhvASqFuplVk6rwdPQvRqCTnMFr5EYlpUEAiEAhEKvXU/7N/nhTnHfqfFD+mnEsYOYqDwPfjMSlsLziNU="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:84711e17-1a84-4415-a614-14bdaffd978b"}},"directories":{},"maintainers":[{"name":"decionis","email":"festus@binariesfort.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/presence-vue_0.2.0_1786351547259_0.8028415275044212"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-10T06:28:55.468Z","modified":"2026-08-10T08:45:47.526Z","0.1.0":"2026-08-10T06:28:55.767Z","0.2.0":"2026-08-10T08:45:47.397Z"},"bugs":{"url":"https://github.com/decionis/Presence/issues"},"license":"Apache-2.0","homepage":"https://presence.decionis.com/developers/vue","repository":{"type":"git","url":"git+https://github.com/decionis/Presence.git","directory":"packages/widget-vue"},"description":"Official Presence Vue bindings: <PresenceGate/> and usePresence() over the presence-widget runtime.","maintainers":[{"name":"decionis","email":"festus@binariesfort.com"}],"readme":"# Human Presence Verification for Vue\n\n**Presence SDK** — verify human presence before consequential actions execute.\n\n> Applications send intent and context.\n> Presence verifies the person.\n> Decionis decides whether execution proceeds.\n\nThis SDK is the subject-side handoff. It never accepts a tenant key.\n\n## Install\n\n```sh\nnpm install @decionis/presence-vue\n```\n\n## Thirty seconds to a verdict\n\n```ts\nimport { PresenceGate, usePresence } from \"@decionis/presence-vue\";\nimport { defineComponent, h } from \"vue\";\n\nconst PayButton = defineComponent({\n  setup() {\n    const presence = usePresence();\n    return () =>\n      h(\n        \"button\",\n        {\n          disabled: presence.status !== \"ready\",\n          onClick: () =>\n            fetch(\"/api/v1/checkout/confirm\", {\n              method: \"POST\",\n              headers: { \"X-Presence-Token\": presence.token ?? \"\" },\n            }),\n        },\n        \"Pay\",\n      );\n  },\n});\n\nexport const Checkout = defineComponent({\n  setup: () => () =>\n    h(PresenceGate, { intent: \"banking.wire_transfer.execute\" }, { default: () => h(PayButton) }),\n});\n```\n\n## What happens\n\n```text\nApplication\n\n↓\n\nIntent + Context\n\n↓\n\nPresence\n\n↓\n\nBiometrics\n\n↓\n\nLiveness\n\n↓\n\nPresence Record\n\n↓\n\nDecionis Verdict\n\n↓\n\nContinue\n```\n\nEvery Presence Check produces a signed **Presence Record** — portable evidence of who\napproved what, where, when, and on which device.\n\n## Quickstart\n\n```text\nInstall\n\n↓\n\nConfigure\n\n↓\n\nSend Intent\n\n↓\n\nReceive Presence Result\n\n↓\n\nVerify Signature\n\n↓\n\nDone\n```\n\nFive minutes: [docs/quickstart.md](docs/quickstart.md).\n\n## Supported scenarios\n\n```text\nWire Transfer\n\nTreasury\n\nPassword Reset\n\nExecutive Meeting\n\nVendor Change\n\nAI Approval\n```\n\n## Examples\n\n| Example                       | What it proves                                        |\n| ----------------------------- | ----------------------------------------------------- |\n| [simple](examples/simple)     | Your first Presence Check.                            |\n| [banking](examples/banking)   | A wire transfer with a verified Presence Record.      |\n| [zoom](examples/zoom)         | An executive meeting instruction held for review.     |\n| [treasury](examples/treasury) | A treasury wire read through Shadow Mode enforcement. |\n\n## Documentation\n\n- [Installation](docs/installation.md)\n- [Quickstart](docs/quickstart.md)\n- [Concepts](docs/concepts.md)\n- [Presence Checks](docs/presence-check.md)\n- [Shadow Mode](docs/shadow-mode.md)\n- [API Reference](docs/api.md)\n- [Troubleshooting](docs/troubleshooting.md)\n\nProduct documentation lives at [presence.decionis.com](https://presence.decionis.com).\n\n## Support\n\n- [GitHub Issues](https://github.com/decionis/Presence/issues)\n- [presence.decionis.com](https://presence.decionis.com)\n\n## License\n\nApache-2.0. Use of the hosted Presence service is governed separately.\n","readmeFilename":"README.md"}