Summary
TipSplitterClient covers getJar, getToken, createJar, tip and
updateSplits. The contract has since gained get_admin and
transfer_jar_ownership, and neither is wrapped.
Ownership transfer in particular is a state-changing call that consumers have to
hand-roll against the raw contract today, which is precisely the work this
package exists to remove.
Acceptance criteria
Getting started
Fork this repository, clone your fork, and add this repo as upstream:
git clone https://github.com/<your-username>/novatip-sdk.git
cd novatip-sdk
git remote add upstream https://github.com/Novatip/novatip-sdk.git
npm install
Create a branch for this issue:
git checkout -b feat/client-admin-and-transfer
Suggested commit message:
feat: wrap get_admin and transfer_jar_ownership
Run npm run lint, npm run typecheck, and npm run build before pushing, then open a pull request from your fork against main and link this issue. See the contributing guide for the full workflow.
Summary
TipSplitterClientcoversgetJar,getToken,createJar,tipandupdateSplits. The contract has since gainedget_adminandtransfer_jar_ownership, and neither is wrapped.Ownership transfer in particular is a state-changing call that consumers have to
hand-roll against the raw contract today, which is precisely the work this
package exists to remove.
Acceptance criteria
getAdmin()reads the admin address, following the existing view pattern.transferJarOwnership(params, opts)follows the existing invoke pattern,including signing options and typed error mapping.
Getting started
Fork this repository, clone your fork, and add this repo as
upstream:Create a branch for this issue:
Suggested commit message:
Run
npm run lint,npm run typecheck, andnpm run buildbefore pushing, then open a pull request from your fork againstmainand link this issue. See the contributing guide for the full workflow.