Aligns the SDK (@acta-team/credentials) with the v0.4.0 API (factory + single-tenant vaults) and did:stellar issuance. The SDK is a thin client and the API derives each owner's vault, so the surface changes are focused.
Added
- Issuer deny-list (deny-by-exception; issuance is open by default):
client.vaultDenyIssuer(...)forPOST /contracts/vault/deny-issuerclient.vaultAllowIssuer(...)forPOST /contracts/vault/allow-issueruseVault().denyIssuer(...)/allowIssuer(...)
- Optional
userSaltoncreateVault,issue,revoke, and the deny/allow helpers (selects which deterministic vault to target). getContractVersion({ owner })for a per-vault version.ConfigResponsenow surfacesfactoryContractId,networkType,vaultWasmHash,didStellarRegistryId(actaContractIdkept as an alias).
Fixed
useCredential().revoke(...)now sendsowner. The v0.4.0 API needs it to derive the single-tenant vault; without it, revocation could not resolve a vault.
Changed
useVault().authorizeIssuer/revokeIssuerkeep working but now map to the API'sallow-issuer/deny-issueraliases. PreferallowIssuer/denyIssuer.- Issuance requires a resolvable
did:stellarissuer whose controller matches the signer (enforced by the API).useCredential().issueauto-resolves the issuer DID viagetOrCreateIssuerIdentitywhen omitted.
Removed (breaking)
client.vcIssueLinkedanduseCredential().issueLinked(linked credentials).client.vaultGetVcParentanduseVaultRead().getVcParent.
Compatibility
- Requires
acta-apiv1.1.1.
Verification
npm run build(tsup ESM/CJS + DTS/typecheck) passes.