{"_id":"@dammers/use-signalr-svelte","_rev":"3-9cb4d3a9ef8ff6e46f17302e9203d36a","name":"@dammers/use-signalr-svelte","dist-tags":{"latest":"1.0.0"},"versions":{"0.4.0":{"name":"@dammers/use-signalr-svelte","version":"0.4.0","keywords":["svelte","sveltekit","signalr","stores","typescript","realtime","websocket"],"author":{"name":"Dammers"},"license":"MIT","_id":"@dammers/use-signalr-svelte@0.4.0","maintainers":[{"name":"dammers","email":"dannyheld2001@gmx.de"}],"homepage":"https://github.com/DammersCode/use-signalr/tree/main/packages/svelte#readme","bugs":{"url":"https://github.com/DammersCode/use-signalr/issues"},"dist":{"shasum":"0fc1a007046908f098f7cf36e0749e54219061b7","tarball":"https://registry.npmjs.org/@dammers/use-signalr-svelte/-/use-signalr-svelte-0.4.0.tgz","fileCount":15,"integrity":"sha512-ysSnMWj9yIvW0q0kpyt3LEJsGVhQnNdDw0ZM1EYfvnd5+d0faGffOgnhGwRnTPrdBESsPFV/3hLMRoVdjTvwBg==","signatures":[{"sig":"MEYCIQCQjL8qmeTyP8P/BL8m6Ju/a0X++qV2oUCKdhdsh9f/IQIhAMBlSIHuMcIg9aN+q6/PLbg4IZ65XDUQstgoITkLcYFv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":35371},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"8f98fb6b258233392c9d96a87a6d5b034a71f09e","scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","typecheck":"tsc --noEmit"},"_npmUser":{"name":"dammers","email":"dannyheld2001@gmx.de"},"repository":{"url":"git+https://github.com/DammersCode/use-signalr.git","type":"git","directory":"packages/svelte"},"_npmVersion":"11.6.2","description":"Fully-typed multi-hub SignalR provider + stores for Svelte: auto-reconnect, invoke retry, lazy hubs, live status.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@dammers/use-signalr-core":"0.4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"svelte":"^5.0.0","@microsoft/signalr":">=8","@testing-library/svelte":"^5.4.2","@sveltejs/vite-plugin-svelte":"^7.3.0"},"peerDependencies":{"svelte":">=4","@microsoft/signalr":">=8"},"_npmOperationalInternal":{"tmp":"tmp/use-signalr-svelte_0.4.0_1786445144695_0.2393308118688866","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@dammers/use-signalr-svelte","version":"0.5.0","keywords":["svelte","sveltekit","signalr","stores","typescript","realtime","websocket"],"author":{"name":"Dammers"},"license":"MIT","_id":"@dammers/use-signalr-svelte@0.5.0","maintainers":[{"name":"dammers","email":"dannyheld2001@gmx.de"}],"homepage":"https://github.com/DammersCode/use-signalr/tree/main/packages/svelte#readme","bugs":{"url":"https://github.com/DammersCode/use-signalr/issues"},"dist":{"shasum":"d13c27505b97f754506372d19ac3d66a83ccee3e","tarball":"https://registry.npmjs.org/@dammers/use-signalr-svelte/-/use-signalr-svelte-0.5.0.tgz","fileCount":15,"integrity":"sha512-j8sORbyahQisKenJKNWvCwYyTQxibKqtxqv7dLxExeGGjPr2dL3PEehLLk7oIPUe0nEletrrm3dvETPejWhemg==","signatures":[{"sig":"MEQCICdvTLyoRNva8MKlcd2O1RSdolfrNlr1E9iI6wCZKWLnAiAmhS7wg2N9dOeO/3sg0smOuu6mpsRpR+nUepU7XIJeqQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dammers%2fuse-signalr-svelte@0.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":36227},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"57decf63770e4440082ce591f1a56e9fbfa6188c","scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","prebuild":"node -e \"require('fs').rmSync('dist',{recursive:true,force:true})\"","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9f22fac7-f1dc-40a3-a0f5-97c9eaa98a5b"}},"repository":{"url":"git+https://github.com/DammersCode/use-signalr.git","type":"git","directory":"packages/svelte"},"_npmVersion":"12.0.2","description":"Fully-typed multi-hub SignalR provider + stores for Svelte: auto-reconnect, invoke retry, lazy hubs, live status.","directories":{},"sideEffects":false,"_nodeVersion":"22.23.1","dependencies":{"@dammers/use-signalr-core":"0.5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"svelte":"^5.0.0","@microsoft/signalr":">=8","@testing-library/svelte":"^5.4.2","@sveltejs/vite-plugin-svelte":"^7.3.0"},"peerDependencies":{"svelte":">=4","@microsoft/signalr":">=8"},"_npmOperationalInternal":{"tmp":"tmp/use-signalr-svelte_0.5.0_1786515986165_0.9250000048875477","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"_id":"@dammers/use-signalr-svelte@1.0.0","bugs":{"url":"https://github.com/DammersCode/use-signalr/issues"},"dist":{"shasum":"f9f8d6b6c94728d39cc3615fb6f68d935cae8a2d","tarball":"https://registry.npmjs.org/@dammers/use-signalr-svelte/-/use-signalr-svelte-1.0.0.tgz","fileCount":15,"integrity":"sha512-BRVhNHFTKIl+QXUad3CvLYH3Kfy1ATH2J1EjCdCuKoOhLIaOS5jr2MQlOJxMSIhfJe5ioul1lWrpd1cw8RnGnA==","signatures":[{"sig":"MEQCIExmf0gNRTUVidlfTbWvoB0l/+qKF9Ty6/dlKDX2c97JAiA6HOY3yVU98XbgTyu6YuWaXT9hjP411vIcffHbjOSX9w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCQZQPcUBE01NnfxEySzW+PxBbCBl8RwDK5dC8y9r0usQIgcl/2+v07Sa4gIC8VAXqZlHUKup4VlXV1CD3MF5dSPAk="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dammers%2fuse-signalr-svelte@1.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":25052},"main":"./dist/index.js","name":"@dammers/use-signalr-svelte","type":"module","types":"./dist/index.d.ts","author":{"name":"Dammers"},"engines":{"node":">=20.19"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"73be70bba6c48beea1174cd9974c7b5737aa7f0c","license":"MIT","scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","prebuild":"node -e \"require('fs').rmSync('dist',{recursive:true,force:true})\"","typecheck":"tsc --noEmit"},"version":"1.0.0","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"9f22fac7-f1dc-40a3-a0f5-97c9eaa98a5b"}},"homepage":"https://use-signalr.vercel.app/docs/svelte","keywords":["svelte","sveltekit","signalr","stores","typescript","realtime","websocket"],"repository":{"url":"git+https://github.com/DammersCode/use-signalr.git","type":"git","directory":"packages/svelte"},"_npmVersion":"12.2.0","description":"Fully-typed multi-hub SignalR provider + stores for Svelte: auto-reconnect, invoke retry, lazy hubs, live status.","directories":{},"maintainers":[{"name":"dammers","email":"dannyheld2001@gmx.de"}],"sideEffects":false,"_nodeVersion":"22.23.3","dependencies":{"@dammers/use-signalr-core":"1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"svelte":"^5.15.0","@microsoft/signalr":"^8.0.0 || ^9.0.0 || ^10.0.0","@testing-library/svelte":"^5.4.2","@sveltejs/vite-plugin-svelte":"^7.3.0"},"peerDependencies":{"svelte":"^5.15.0","@microsoft/signalr":"^8.0.0 || ^9.0.0 || ^10.0.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/use-signalr-svelte_1.0.0_1790872022828_0.29683911194290946"}}},"time":{"created":"2026-08-11T10:45:44.537Z","modified":"2026-10-01T16:27:04.010Z","0.4.0":"2026-08-11T10:45:44.854Z","0.5.0":"2026-08-12T06:26:26.321Z","1.0.0":"2026-10-01T16:27:02.905Z"},"bugs":{"url":"https://github.com/DammersCode/use-signalr/issues"},"author":{"name":"Dammers"},"license":"MIT","homepage":"https://use-signalr.vercel.app/docs/svelte","keywords":["svelte","sveltekit","signalr","stores","typescript","realtime","websocket"],"repository":{"url":"git+https://github.com/DammersCode/use-signalr.git","type":"git","directory":"packages/svelte"},"description":"Fully-typed multi-hub SignalR provider + stores for Svelte: auto-reconnect, invoke retry, lazy hubs, live status.","maintainers":[{"name":"dammers","email":"dannyheld2001@gmx.de"}],"readme":"# @dammers/use-signalr-svelte\n\nContext and stores for typed [SignalR](https://learn.microsoft.com/aspnet/core/signalr) in Svelte. Part of [use-signalr](https://use-signalr.vercel.app).\n\n[![npm](https://img.shields.io/npm/v/@dammers/use-signalr-svelte.svg)](https://www.npmjs.com/package/@dammers/use-signalr-svelte)\n[![license](https://img.shields.io/badge/license-MIT-green.svg)](https://github.com/DammersCode/use-signalr/blob/main/LICENSE)\n\n## Install\n\n```bash\nnpm install @dammers/use-signalr-svelte @microsoft/signalr\n```\n\nIt needs Svelte ^5.15, `@microsoft/signalr` ^8 || ^9 || ^10, and Node 20.19 or later.\n\n## Example\n\nThis file declares a hub, connects it, and reads a typed method result:\n\n<!-- hero:svelte:start -->\n```svelte\n<script module lang=\"ts\">\n  import { createSignalRClient, method } from \"@dammers/use-signalr-svelte\";\n\n  export const { provideSignalR, hubInvoke } = createSignalRClient({\n    hubs: {\n      \"/hubs/rooms\": {\n        methods: { GetHistory: method<[roomId: string], { text: string }[]>() },\n      },\n    },\n  });\n</script>\n\n<script lang=\"ts\">\n  provideSignalR({ baseUrl: \"https://api.example.com\", accessTokenFactory: () => \"token\" });\n\n  const getHistory = hubInvoke(\"/hubs/rooms\", \"GetHistory\");\n  let count = $state(0);\n  const load = () => getHistory(\"general\").then((m) => (count = m.length)).catch(console.error);\n</script>\n\n<button onclick={load}>{count} messages</button>\n```\n<!-- hero:svelte:end -->\n\n## Documentation\n\n- [Quick start](https://use-signalr.vercel.app/docs/svelte/quick-start)\n- [Provider setup](https://use-signalr.vercel.app/docs/svelte/concepts/provider)\n- [Events](https://use-signalr.vercel.app/docs/svelte/concepts/events) and [calls](https://use-signalr.vercel.app/docs/svelte/concepts/calls)\n- [Connection status](https://use-signalr.vercel.app/docs/svelte/concepts/connection-status) and [recovery](https://use-signalr.vercel.app/docs/svelte/concepts/recovery)\n- [API reference](https://use-signalr.vercel.app/docs/svelte/reference/api)\n- [Troubleshooting](https://use-signalr.vercel.app/docs/svelte/reference/troubleshooting)\n\n## License\n\n[MIT](https://github.com/DammersCode/use-signalr/blob/main/LICENSE) © [DammersCode](https://github.com/DammersCode)\n","readmeFilename":"README.md"}