@wuwei-labs/srsly
Version:
[](https://www.npmjs.com/package/ts-sdk-example)
90 lines • 3.4 kB
JavaScript
;
/**
* This code was AUTOGENERATED using the codama library.
* Please DO NOT EDIT THIS FILE, instead use visitors
* to add features, then rerun codama to update it.
*
* @see https://github.com/codama-idl/codama
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.getTriggerEncoder = getTriggerEncoder;
exports.getTriggerDecoder = getTriggerDecoder;
exports.getTriggerCodec = getTriggerCodec;
exports.trigger = trigger;
exports.isTrigger = isTrigger;
const kit_1 = require("@solana/kit");
const _1 = require(".");
function getTriggerEncoder() {
return (0, kit_1.getDiscriminatedUnionEncoder)([
[
'Account',
(0, kit_1.getStructEncoder)([
['address', (0, kit_1.getAddressEncoder)()],
['offset', (0, kit_1.getU64Encoder)()],
['size', (0, kit_1.getU64Encoder)()],
]),
],
[
'Cron',
(0, kit_1.getStructEncoder)([
['schedule', (0, kit_1.addEncoderSizePrefix)((0, kit_1.getUtf8Encoder)(), (0, kit_1.getU32Encoder)())],
['skippable', (0, kit_1.getBooleanEncoder)()],
]),
],
['Now', (0, kit_1.getUnitEncoder)()],
['Slot', (0, kit_1.getStructEncoder)([['slot', (0, kit_1.getU64Encoder)()]])],
['Epoch', (0, kit_1.getStructEncoder)([['epoch', (0, kit_1.getU64Encoder)()]])],
['Timestamp', (0, kit_1.getStructEncoder)([['unixTs', (0, kit_1.getI64Encoder)()]])],
[
'Pyth',
(0, kit_1.getStructEncoder)([
['priceFeed', (0, kit_1.getAddressEncoder)()],
['equality', (0, _1.getEqualityEncoder)()],
['limit', (0, kit_1.getI64Encoder)()],
]),
],
]);
}
function getTriggerDecoder() {
return (0, kit_1.getDiscriminatedUnionDecoder)([
[
'Account',
(0, kit_1.getStructDecoder)([
['address', (0, kit_1.getAddressDecoder)()],
['offset', (0, kit_1.getU64Decoder)()],
['size', (0, kit_1.getU64Decoder)()],
]),
],
[
'Cron',
(0, kit_1.getStructDecoder)([
['schedule', (0, kit_1.addDecoderSizePrefix)((0, kit_1.getUtf8Decoder)(), (0, kit_1.getU32Decoder)())],
['skippable', (0, kit_1.getBooleanDecoder)()],
]),
],
['Now', (0, kit_1.getUnitDecoder)()],
['Slot', (0, kit_1.getStructDecoder)([['slot', (0, kit_1.getU64Decoder)()]])],
['Epoch', (0, kit_1.getStructDecoder)([['epoch', (0, kit_1.getU64Decoder)()]])],
['Timestamp', (0, kit_1.getStructDecoder)([['unixTs', (0, kit_1.getI64Decoder)()]])],
[
'Pyth',
(0, kit_1.getStructDecoder)([
['priceFeed', (0, kit_1.getAddressDecoder)()],
['equality', (0, _1.getEqualityDecoder)()],
['limit', (0, kit_1.getI64Decoder)()],
]),
],
]);
}
function getTriggerCodec() {
return (0, kit_1.combineCodec)(getTriggerEncoder(), getTriggerDecoder());
}
function trigger(kind, data) {
return Array.isArray(data)
? { __kind: kind, fields: data }
: { __kind: kind, ...(data ?? {}) };
}
function isTrigger(kind, value) {
return value.__kind === kind;
}
//# sourceMappingURL=trigger.js.map