.gitignore | 1 + .npmrc | 1 + example/index.html | 12 + example/package.json | 19 + example/src/App.tsx | 137 +++++ example/src/index.css | 198 ++++++ example/src/main.tsx | 10 + example/tsconfig.json | 25 + example/vite.config.ts | 13 + package-lock.json | 1034 +++++++++++++++++++++----------- package.json | 36 +- readme.md | 107 ++++ src/batch.ts | 438 +++++++++++++- src/client.ts | 87 ++- src/index.ts | 17 + src/object-path.ts | 77 +++ src/queued.ts | 251 ++++++-- src/react.tsx | 323 +++++++--- src/register.ts | 9 - src/tanstack-query.ts | 403 +++++++++++++ src/types.ts | 9 +- test/batch.test.ts | 1018 +++++++++++++++++++++++++++++++ test/example.test.tsx | 96 --- test/object-path-types.test.ts | 411 +++++++++++++ test/object-path.test.ts | 339 +++++++++++ test/queued.test.ts | 967 +++++++++++++++++++++++++++++ test/tanstack-query-helpers.test.ts | 809 +++++++++++++++++++++++++ tsconfig.json | 30 +- vitest.config.ts | 11 +- 29 files changed, 6263 insertions(+), 625 deletions(-)