use fuels::prelude::abigen;
abigen!(
Contract(
name = "PropAccountContract",
abi = "artifacts/prop-account/prop-account-abi.json"
),
Contract(
name = "PropAccountOracleContract",
abi = "artifacts/prop-account-oracle/prop-account-oracle-abi.json"
),
Contract(
name = "PropAccountOracleProxyContract",
abi = "artifacts/prop-account-oracle-proxy/prop-account-oracle-proxy-abi.json"
),
Contract(
name = "PropAccountProxyContract",
abi = "artifacts/prop-account-proxy/prop-account-proxy-abi.json"
),
Contract(
name = "PropMarginPoolContract",
abi = "artifacts/prop-margin-pool/prop-margin-pool-abi.json"
),
Contract(
name = "PropMarginPoolProxyContract",
abi = "artifacts/prop-margin-pool-proxy/prop-margin-pool-proxy-abi.json"
),
Contract(
name = "PriceFeedContract",
abi = "artifacts/price-feed/price-feed-abi.json"
),
Contract(
name = "PriceFeedProxyContract",
abi = "artifacts/price-feed-proxy/price-feed-proxy-abi.json"
),
);
macro_rules! artifact {
($name:ident, $path:literal) => {
pub const $name: &[u8] = include_bytes!($path);
};
}
artifact!(
PROP_ACCOUNT_BYTECODE,
"../artifacts/prop-account/prop-account.bin"
);
artifact!(
PROP_ACCOUNT_STORAGE,
"../artifacts/prop-account/prop-account-storage_slots.json"
);
artifact!(
PROP_ACCOUNT_ORACLE_BYTECODE,
"../artifacts/prop-account-oracle/prop-account-oracle.bin"
);
artifact!(
PROP_ACCOUNT_ORACLE_STORAGE,
"../artifacts/prop-account-oracle/prop-account-oracle-storage_slots.json"
);
artifact!(
PROP_ACCOUNT_ORACLE_PROXY_BYTECODE,
"../artifacts/prop-account-oracle-proxy/prop-account-oracle-proxy.bin"
);
artifact!(
PROP_ACCOUNT_ORACLE_PROXY_STORAGE,
"../artifacts/prop-account-oracle-proxy/prop-account-oracle-proxy-storage_slots.json"
);
artifact!(
PROP_ACCOUNT_PROXY_BYTECODE,
"../artifacts/prop-account-proxy/prop-account-proxy.bin"
);
artifact!(
PROP_ACCOUNT_PROXY_STORAGE,
"../artifacts/prop-account-proxy/prop-account-proxy-storage_slots.json"
);
artifact!(
PROP_MARGIN_POOL_BYTECODE,
"../artifacts/prop-margin-pool/prop-margin-pool.bin"
);
artifact!(
PROP_MARGIN_POOL_STORAGE,
"../artifacts/prop-margin-pool/prop-margin-pool-storage_slots.json"
);
artifact!(
PROP_MARGIN_POOL_PROXY_BYTECODE,
"../artifacts/prop-margin-pool-proxy/prop-margin-pool-proxy.bin"
);
artifact!(
PROP_MARGIN_POOL_PROXY_STORAGE,
"../artifacts/prop-margin-pool-proxy/prop-margin-pool-proxy-storage_slots.json"
);
artifact!(
PRICE_FEED_BYTECODE,
"../artifacts/price-feed/price-feed.bin"
);
artifact!(
PRICE_FEED_STORAGE,
"../artifacts/price-feed/price-feed-storage_slots.json"
);
artifact!(
PRICE_FEED_PROXY_BYTECODE,
"../artifacts/price-feed-proxy/price-feed-proxy.bin"
);
artifact!(
PRICE_FEED_PROXY_STORAGE,
"../artifacts/price-feed-proxy/price-feed-proxy-storage_slots.json"
);