@wormhole-foundation/sdk-sui
Version:
SDK for Sui chains, used in conjunction with @wormhole-foundation/sdk
44 lines • 1.81 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.isMoveStructId = exports.isMoveStructObject = exports.isMoveStructStruct = exports.isMoveStructArray = exports.isSuiPublishEvent = exports.isSuiCreateEvent = exports.isSameType = exports.getFieldsFromObjectResponse = exports._platform = void 0;
const address_js_1 = require("./address.js");
exports._platform = "Sui";
const getFieldsFromObjectResponse = (object) => {
const content = object.data?.content;
return content && content.dataType === "moveObject" ? content.fields : null;
};
exports.getFieldsFromObjectResponse = getFieldsFromObjectResponse;
const isSameType = (a, b) => {
try {
return (0, address_js_1.normalizeSuiType)(a) === (0, address_js_1.normalizeSuiType)(b);
}
catch {
return false;
}
};
exports.isSameType = isSameType;
// Event typeguard helpers
const isSuiCreateEvent = (event) => event?.type === "created";
exports.isSuiCreateEvent = isSuiCreateEvent;
const isSuiPublishEvent = (event) => event?.type === "published";
exports.isSuiPublishEvent = isSuiPublishEvent;
//
// MoveStruct typeguard helpers
//
function isMoveStructArray(value) {
return Array.isArray(value);
}
exports.isMoveStructArray = isMoveStructArray;
function isMoveStructStruct(value) {
return !Array.isArray(value) && typeof value === "object" && "fields" in value && "type" in value;
}
exports.isMoveStructStruct = isMoveStructStruct;
function isMoveStructObject(value) {
return typeof value === "object" && !isMoveStructArray(value) && !isMoveStructStruct(value);
}
exports.isMoveStructObject = isMoveStructObject;
function isMoveStructId(value) {
return typeof value === "object" && "id" in value;
}
exports.isMoveStructId = isMoveStructId;
//# sourceMappingURL=types.js.map