60 lines
1.6 KiB
Rust
60 lines
1.6 KiB
Rust
use std::{
|
|
env::current_dir,
|
|
fs::create_dir_all,
|
|
};
|
|
|
|
use cosmwasm_schema::{
|
|
export_schema,
|
|
export_schema_with_title,
|
|
remove_schemas,
|
|
schema_for,
|
|
};
|
|
|
|
use cw721::{
|
|
AllNftInfoResponse,
|
|
ApprovalResponse,
|
|
ApprovalsResponse,
|
|
ContractInfoResponse,
|
|
NftInfoResponse,
|
|
NumTokensResponse,
|
|
OperatorsResponse,
|
|
OwnerOfResponse,
|
|
TokensResponse,
|
|
};
|
|
use cw721_base::{
|
|
ExecuteMsg,
|
|
Extension,
|
|
InstantiateMsg,
|
|
MinterResponse,
|
|
QueryMsg,
|
|
};
|
|
|
|
fn main() {
|
|
let mut out_dir = current_dir().unwrap();
|
|
out_dir.push("schema");
|
|
create_dir_all(&out_dir).unwrap();
|
|
remove_schemas(&out_dir).unwrap();
|
|
|
|
export_schema(&schema_for!(InstantiateMsg), &out_dir);
|
|
export_schema_with_title(&schema_for!(ExecuteMsg<()>), &out_dir, "ExecuteMsg");
|
|
export_schema(&schema_for!(QueryMsg), &out_dir);
|
|
export_schema_with_title(
|
|
&schema_for!(AllNftInfoResponse<Extension>),
|
|
&out_dir,
|
|
"AllNftInfoResponse",
|
|
);
|
|
export_schema(&schema_for!(ApprovalResponse), &out_dir);
|
|
export_schema(&schema_for!(ApprovalsResponse), &out_dir);
|
|
export_schema(&schema_for!(OperatorsResponse), &out_dir);
|
|
export_schema(&schema_for!(ContractInfoResponse), &out_dir);
|
|
export_schema(&schema_for!(MinterResponse), &out_dir);
|
|
export_schema_with_title(
|
|
&schema_for!(NftInfoResponse<Extension>),
|
|
&out_dir,
|
|
"NftInfoResponse",
|
|
);
|
|
export_schema(&schema_for!(NumTokensResponse), &out_dir);
|
|
export_schema(&schema_for!(OwnerOfResponse), &out_dir);
|
|
export_schema(&schema_for!(TokensResponse), &out_dir);
|
|
}
|