@indigo-labs/indigo-sdk
Version:
Indigo SDK for interacting with Indigo endpoints via lucid-evolution
42 lines (40 loc) • 1.24 kB
text/typescript
import {
applyParamsToScript,
Constr,
fromText,
SpendingValidator,
} from '@lucid-evolution/lucid';
import { StakingParamsSP } from '../../types/system-params';
import { _stakingValidator } from '../../validators/staking-validator';
export const mkStakingValidatorFromSP = (
params: StakingParamsSP,
): SpendingValidator => {
return {
type: 'PlutusV3',
script: applyParamsToScript(_stakingValidator.cborHex, [
new Constr(0, [
new Constr(0, [
params.stakingManagerNFT[0].unCurrencySymbol,
fromText(params.stakingManagerNFT[1].unTokenName),
]),
new Constr(0, [
params.stakingToken[0].unCurrencySymbol,
fromText(params.stakingToken[1].unTokenName),
]),
new Constr(0, [
params.indyToken[0].unCurrencySymbol,
fromText(params.indyToken[1].unTokenName),
]),
new Constr(0, [
params.pollToken[0].unCurrencySymbol,
fromText(params.pollToken[1].unTokenName),
]),
new Constr(0, [
params.versionRecordToken[0].unCurrencySymbol,
fromText(params.versionRecordToken[1].unTokenName),
]),
params.collectorValHash,
]),
]),
};
};