Xây dựng Codama IDL của bạn từ Anchor IDL
Tạo một Codama IDL từ Anchor IDL rất dễ dàng. Một khi bạn tạo Anchor IDL với anchor build, chúng ta cần cài đặt gói '@codama/nodes-from-anchor':
pnpm install codama @codama/nodes-from-anchor
Sau đó, bạn có thể chuyển đổi Anchor IDL trực tiếp bằng cách sử dụng hàm rootNodeFromAnchor
:
import { createFromRoot } from 'codama';
import { rootNodeFromAnchor } from '@codama/nodes-from-anchor';
import anchorIdl from 'anchor-idl.json';
const codama = createFromRoot(rootNodeFromAnchor(anchorIdl));
Việc này sẽ cho bạn một Codama IDL đầy đủ chức năng và sẵn sàng để tạo ra các client. Tuy nhiên, sức mạnh thực sự của Codama đến từ khả năng của nó để nâng cấp và tùy chỉnh IDL của bạn vượt xa những gì có thể làm được với các định nghĩa Anchor thô.
Vì quá trình chuyển đổi tập trung chủ yếu vào dịch dựa trên cấu trúc, bạn thường muốn thêm các tính năng dành cho lập trình viên như các quy ước đặt tên tùy chỉnh,bổ sung thông tin kiểu hoặc các phương thức client đặc biệt. Hệ thống truy vấn của Codama khiến cho các nâng cấp này trở nên đơn giản và mạnh mẽ.
Bạn có thể học thêm về cách tùy chỉnh và nâng cấp IDL của bạn bằng cách sử dụng các bộ truy vấn trong bài học Cập nhật Codama IDL.