@@ -20,22 +20,6 @@ use near_sdk::{
2020use crate :: common:: TokenOffer ;
2121
2222// ----------------------------- create listing ----------------------------- //
23- #[ cfg_attr( feature = "ser" , derive( Serialize ) ) ]
24- #[ cfg_attr( feature = "de" , derive( Deserialize ) ) ]
25- #[ cfg_attr( any( feature = "ser" , feature = "de" ) , serde( crate = "near_sdk::serde" ) ) ]
26- pub struct NftListLog {
27- pub list_id : String ,
28- pub price : String ,
29- pub token_key : String ,
30- pub owner_id : String ,
31- pub autotransfer : bool ,
32- pub approval_id : String ,
33- pub token_id : String ,
34- pub store_id : String ,
35- }
36-
37- #[ near_event_data( standard = "mb_market" , version = "0.1.0" , event = "nft_list" ) ]
38- pub struct NftListData ( Vec < NftListLog > ) ;
3923
4024#[ cfg( feature = "ser" ) ]
4125pub fn log_listing_created (
@@ -98,13 +82,6 @@ pub fn log_batch_listing_created(
9882
9983// ---------------------------- update listings ----------------------------- //
10084// TODO: test!
101- #[ cfg_attr( feature = "all" , derive( Clone , Debug ) ) ]
102- #[ near_event_data( standard = "mb_market" , version = "0.1.0" , event = "nft_update_list" ) ]
103- pub struct NftUpdateListData {
104- pub list_id : String ,
105- pub auto_transfer : Option < bool > ,
106- pub price : Option < String > ,
107- }
10885
10986#[ cfg( feature = "ser" ) ]
11087pub fn log_set_token_autotransfer (
@@ -132,151 +109,10 @@ pub fn log_set_token_asking_price(
132109 env:: log_str ( & data. serialize_event ( ) ) ;
133110}
134111
135- // ------------------------------- unlisting -------------------------------- //
136- #[ cfg_attr( feature = "all" , derive( Clone , Debug ) ) ]
137- #[ near_event_data_log( standard = "mb_market" , version = "0.1.0" , event = "nft_unlist" ) ]
138- pub struct NftUnlistLog {
139- pub list_id : String ,
140- }
141-
142112#[ cfg( feature = "ser" ) ]
143113pub fn log_token_removed ( list_id : & str ) {
144114 let log = NftUnlistLog {
145115 list_id : list_id. to_string ( ) ,
146116 } ;
147117 env:: log_str ( & log. serialize_event ( ) ) ;
148118}
149-
150- // ------------------------------ sell listing ------------------------------ //
151- #[ cfg_attr( feature = "all" , derive( Clone , Debug ) ) ]
152- #[ near_event_data( standard = "mb_market" , version = "0.1.0" , event = "nft_sold" ) ]
153- pub struct NftSaleData {
154- pub list_id : String ,
155- pub offer_num : u64 ,
156- pub token_key : String ,
157- pub payout : HashMap < AccountId , U128 > ,
158- // Not originally in 0.1.0, but option makes it backwards compatible with
159- // serde_json
160- pub mintbase_amount : Option < U128 > ,
161- }
162-
163- #[ cfg( feature = "ser" ) ]
164- pub fn log_sale (
165- list_id : & str ,
166- offer_num : u64 ,
167- token_key : & str ,
168- payout : & HashMap < AccountId , U128 > ,
169- mintbase_amount : U128 ,
170- ) {
171- let data = NftSaleData {
172- list_id : list_id. to_string ( ) ,
173- offer_num,
174- token_key : token_key. to_string ( ) ,
175- payout : payout. clone ( ) ,
176- mintbase_amount : Some ( mintbase_amount) ,
177- } ;
178- env:: log_str ( & data. serialize_event ( ) ) ;
179- }
180-
181- // ----------------------------- creating offer ----------------------------- //
182- #[ cfg_attr( feature = "all" , derive( Clone , Debug ) ) ]
183- #[ cfg_attr( feature = "ser" , derive( Serialize ) ) ]
184- #[ cfg_attr( feature = "de" , derive( Deserialize ) ) ]
185- #[ cfg_attr( any( feature = "ser" , feature = "de" ) , serde( crate = "near_sdk::serde" ) ) ]
186- pub struct NftMakeOfferLog {
187- pub offer : TokenOffer , // TODO: TokenOfferJson to stringify u128?
188- pub list_id : String ,
189- pub token_key : String ,
190- pub offer_num : u64 ,
191- }
192-
193- // FIXME: u128 is not supported -_____-
194- #[ cfg_attr( feature = "all" , derive( Clone , Debug ) ) ]
195- #[ near_event_data( standard = "mb_market" , version = "0.1.0" , event = "nft_make_offer" ) ]
196- pub struct NftMakeOfferData ( Vec < NftMakeOfferLog > ) ;
197-
198- #[ cfg( feature = "ser" ) ]
199- pub fn log_make_offer (
200- offer : Vec < & TokenOffer > ,
201- token_key : Vec < & String > ,
202- list_id : Vec < String > ,
203- offer_num : Vec < u64 > ,
204- ) {
205- let data = NftMakeOfferData (
206- offer
207- . iter ( )
208- . enumerate ( )
209- . map ( |( u, & x) | NftMakeOfferLog {
210- offer : x. clone ( ) ,
211- list_id : list_id[ u] . clone ( ) ,
212- token_key : token_key[ u] . clone ( ) ,
213- offer_num : offer_num[ u] ,
214- } )
215- . collect :: < Vec < _ > > ( ) ,
216- ) ;
217- env:: log_str ( & data. serialize_event ( ) ) ;
218- }
219-
220- // --------------------------- withdrawing offer ---------------------------- //
221- // TODO: testing!
222- #[ cfg_attr( feature = "all" , derive( Clone , Debug ) ) ]
223- #[ near_event_data(
224- standard = "mb_market" ,
225- version = "0.1.0" ,
226- event = "nft_withdraw_offer"
227- ) ]
228- pub struct NftWithdrawOfferData {
229- pub list_id : String ,
230- pub offer_num : u64 ,
231- }
232-
233- #[ cfg( feature = "ser" ) ]
234- pub fn log_withdraw_token_offer (
235- list_id : & str ,
236- offer_num : u64 ,
237- ) {
238- let data = NftWithdrawOfferData {
239- offer_num,
240- list_id : list_id. to_string ( ) ,
241- } ;
242- env:: log_str ( & data. serialize_event ( ) ) ;
243- }
244-
245- // ----------------------- updating banlist/allowlist ----------------------- //
246- #[ cfg_attr( feature = "all" , derive( Clone , Debug ) ) ]
247- #[ near_event_data( standard = "mb_market" , version = "0.1.0" , event = "update_banlist" ) ]
248- pub struct UpdateBanlistData {
249- pub account_id : String ,
250- pub state : bool ,
251- }
252-
253- #[ cfg( feature = "ser" ) ]
254- pub fn log_banlist_update (
255- account_id : & AccountId ,
256- state : bool ,
257- ) {
258- let data = UpdateBanlistData {
259- account_id : account_id. to_string ( ) ,
260- state,
261- } ;
262- env:: log_str ( & data. serialize_event ( ) ) ;
263- }
264-
265- #[ cfg_attr( feature = "all" , derive( Clone , Debug ) ) ]
266- #[ near_event_data( standard = "mb_market" , version = "0.1.0" , event = "update_allowlist" ) ]
267- pub struct UpdateAllowlistData {
268- pub account_id : String ,
269- pub state : bool ,
270- }
271-
272- #[ cfg( feature = "ser" ) ]
273- pub fn log_allowlist_update (
274- account_id : & AccountId ,
275- state : bool ,
276- ) {
277- let data = UpdateAllowlistData {
278- account_id : account_id. to_string ( ) ,
279- state,
280- } ;
281- env:: log_str ( & data. serialize_event ( ) ) ;
282- }
0 commit comments