@silvana-one/coordination
Version:
Silvana Coordination Client
47 lines • 1.4 kB
JavaScript
import { suiClient } from "./sui-client.js";
export async function fetchSuiObject(objectID) {
const data = await suiClient.getObject({
id: objectID,
options: {
showContent: true,
},
});
return data;
}
export async function fetchSuiDynamicFieldsList(objectID) {
const data = await suiClient.getDynamicFields({
parentId: objectID,
});
return data;
}
export async function fetchSuiDynamicField(params) {
try {
const { objectID, parentID, fieldName, type, key } = params;
if (!objectID && !parentID) {
console.error("objectID or parentID is required");
return undefined;
}
let id = parentID;
if (objectID && !parentID) {
const suiObject = (await fetchSuiObject(objectID));
id = suiObject?.data?.content?.fields?.[fieldName]?.fields?.id
?.id;
}
if (!id) {
return undefined;
}
const field = await suiClient.getDynamicFieldObject({
parentId: id,
name: {
type,
value: key,
},
});
return field.data?.content?.fields;
}
catch (error) {
console.error("fetchSuiDynamicField: Error fetching dynamic field", error?.message);
return undefined;
}
}
//# sourceMappingURL=fetch.js.map