@canton-network/core-splice-codegen
v1.2.4
Published
daml codegen js for default packages
Keywords
Readme
@canton-network/core-splice-codegen
Typed wrappers around generated DAML JS packages used by Splice examples and SDK integrations.
This package currently exposes two modules:
TestToken(from@daml.js/test-token-v1)OTCTrade(from@daml.js/otc-trade)
Installation
pnpm install @canton-network/core-splice-codegenRequirements
This package requires a localnet instance that relies on Splice v0.6.12 or higher. Please ensure you have the latest localnet fetched.
Build
From repository root:
pnpm --filter @canton-network/core-splice-codegen buildRegenerating DAML Codegen Inputs
This package depends on generated DAML JS artifacts under
damljs/test-token-v1.
To refresh those artifacts, run:
pnpm generate:codegenThen rebuild this package.
Usage
import { TestToken, OTCTrade } from '@canton-network/core-splice-codegen'
// Template references
console.log(TestToken.DAR.TestTokenV1.TokenRules.templateId)
console.log(OTCTrade.DAR.TradingApp.OTCTradeProposal.templateId)
// Typed create command
const createRules = TestToken.commands.create.rules({
admin: 'Alice::1220...',
})
// Typed exercise command
const settleTrade = OTCTrade.commands.exercise.otcTrade.settle({
contractId: '00abc...',
choiceArgument: {
allocationsWithContext: {},
},
})DAR Vetting Utility
Both modules expose utils.vetDar, which loads a local DAR file and uploads it through the SDK:
import { TestToken } from '@canton-network/core-splice-codegen'
await TestToken.utils.vetDar(sdk)
await TestToken.utils.vetDar(sdk, 'global-synchronizer-id')Notes:
vetDarexpects local DAR files to exist under.localnet/dars/.- If those files are absent, DAR upload will fail at runtime.
Relationship To Token Standard
TestToken command helpers are wired to choice names from @canton-network/core-token-standard:
- transfer-instruction choices
- allocation choices
- transfer/allocation factory choices
This keeps command generation aligned with Token Standard API semantics while staying strongly typed against DAML templates.
License
Apache-2.0
