@@ -16,9 +16,11 @@ pub mod Weaver {
16
16
get_caller_address,
17
17
};
18
18
19
- use weaver_contract :: interfaces :: IWeaver :: {User , ProtocolInfo , TaskInfo };
20
- use weaver_contract :: interfaces :: IWeaver :: IWeaver ;
21
- use weaver_contract :: interfaces :: IWeaverNFT :: {IWeaverNFTDispatcher , IWeaverNFTDispatcherTrait };
19
+ use crate :: mods :: types :: {ProtocolInfo , TaskInfo , User };
20
+ use crate :: mods :: events :: {ProtocolRegistered , TaskMinted , Upgraded , UserRegistered };
21
+ use crate :: mods :: errors :: Errors ;
22
+ use crate :: mods :: interfaces :: IWeaver :: IWeaver ;
23
+ use crate :: mods :: interfaces :: IWeaverNFT :: {IWeaverNFTDispatcher ,IWeaverNFTDispatcherTrait };
22
24
23
25
// *************************************************************************
24
26
// STORAGE
@@ -50,27 +52,6 @@ pub mod Weaver {
50
52
}
51
53
52
54
53
- #[derive(Copy , Drop , Debug , PartialEq , starknet:: Event )]
54
- pub struct Upgraded {
55
- pub implementation : ClassHash ,
56
- }
57
-
58
- #[derive(Copy , Drop , Debug , PartialEq , starknet:: Event )]
59
- pub struct UserRegistered {
60
- pub user : ContractAddress ,
61
- }
62
-
63
- #[derive(Copy , Drop , Debug , PartialEq , starknet:: Event )]
64
- pub struct ProtocolRegistered {
65
- pub user : ContractAddress ,
66
- }
67
-
68
-
69
- #[derive(Copy , Drop , Debug , PartialEq , starknet:: Event )]
70
- pub struct TaskMinted {
71
- pub task_id : u256 ,
72
- pub user : ContractAddress ,
73
- }
74
55
75
56
76
57
#[constructor]
@@ -85,7 +66,7 @@ pub mod Weaver {
85
66
#[abi(embed_v0)]
86
67
impl WeaverImpl of IWeaver <ContractState > {
87
68
fn register_User (ref self : ContractState , Details : ByteArray ) {
88
- assert (! self . registered. read (get_caller_address ()), ' user already registered ' );
69
+ assert (! self . registered. read (get_caller_address ()), Errors :: USER_ALREADY_REGISTERED );
89
70
self . registered. write (get_caller_address (), true );
90
71
self . users. write (get_caller_address (), User { Details });
91
72
let total_users = self . user_count. read () + 1 ;
@@ -102,10 +83,10 @@ pub mod Weaver {
102
83
let caller = get_caller_address ();
103
84
104
85
// Verify user is registered
105
- assert (self . registered. read (caller ), ' USER_NOT_REGISTERED' );
86
+ assert (self . registered. read (caller ), Errors :: USER_NOT_REGISTERED );
106
87
107
88
// Veriy task does not exist
108
- assert (! self . task_registry. read (task_id ). is_completed, ' TASK_ALREADY_EXISTS' );
89
+ assert (! self . task_registry. read (task_id ). is_completed, Errors :: TASK_ALREADY_EXISTS );
109
90
110
91
let task_info = TaskInfo { task_id , user : caller , is_completed : true };
111
92
self . task_registry. write (task_id , task_info );
@@ -122,10 +103,10 @@ pub mod Weaver {
122
103
123
104
124
105
fn protocol_register (ref self : ContractState , protocol_name : ByteArray ) {
125
- assert (protocol_name . len () > 0 , ' INVALID_PROTOCOL_NAME' );
106
+ assert (protocol_name . len () > 0 , Errors :: INVALID_PROTOCOL_NAME );
126
107
127
108
let protocol_info = self . protocol_registrations. read (get_caller_address ());
128
- assert (protocol_info . protocol_name. len () == 0 , ' PROTOCOL_ALREADY_REGISTERED' );
109
+ assert (protocol_info . protocol_name. len () == 0 , Errors :: PROTOCOL_ALREADY_REGISTERED );
129
110
self . protocol_registrations. write (get_caller_address (), ProtocolInfo { protocol_name });
130
111
131
112
// Dispatch the mint_weaver_nft call to the NFT contract
@@ -169,17 +150,17 @@ pub mod Weaver {
169
150
}
170
151
171
152
fn upgrade (ref self : ContractState , Imp_hash : ClassHash ) {
172
- assert (Imp_hash . is_non_zero (), ' Clash Hasd Cannot be Zero ' );
173
- assert (get_caller_address () == self . owner. read (), ' UNAUTHORIZED' );
153
+ assert (Imp_hash . is_non_zero (), Errors :: CLASS_HASH_CANNOT_BE_ZERO );
154
+ assert (get_caller_address () == self . owner. read (), Errors :: UNAUTHORIZED );
174
155
starknet :: syscalls :: replace_class_syscall (Imp_hash ). unwrap_syscall ();
175
156
self . version. write (self . version. read () + 1 );
176
157
self . emit (Event :: Upgraded (Upgraded { implementation : Imp_hash }));
177
158
}
178
159
179
160
180
161
fn set_erc721 (ref self : ContractState , address : ContractAddress ) {
181
- assert (get_caller_address () == self . owner. read (), ' UNAUTHORIZED' );
182
- assert (address . is_non_zero (), ' INVALID_ADDRESS' );
162
+ assert (get_caller_address () == self . owner. read (), Errors :: UNAUTHORIZED );
163
+ assert (address . is_non_zero (), Errors :: INVALID_ADDRESS );
183
164
self . weaver_nft_address. write (address );
184
165
}
185
166
}
0 commit comments