getter.gno
12.03 Kb · 318 lines
1package launchpad
2
3import (
4 u256 "gno.land/p/gnoswap/uint256"
5)
6
7// GetProjectCount returns the total number of projects.
8func GetProjectCount() int {
9 return getImplementation().GetProjectCount()
10}
11
12// GetProjectIDs returns a paginated list of project IDs.
13func GetProjectIDs(offset, count int) []string {
14 return cloneStringSlice(getImplementation().GetProjectIDs(offset, count))
15}
16
17// GetProject retrieves a project by its ID.
18// Returns a cloned project to prevent external modification.
19func GetProject(projectId string) (*Project, error) {
20 project, err := getImplementation().GetProject(projectId)
21 if err != nil {
22 return nil, err
23 }
24 if project == nil {
25 return nil, nil
26 }
27 return project.Clone(), nil
28}
29
30// GetProjectName returns the name of a project by its ID.
31func GetProjectName(projectId string) (string, error) {
32 return getImplementation().GetProjectName(projectId)
33}
34
35// GetProjectTokenPath returns the token path of a project by its ID.
36func GetProjectTokenPath(projectId string) (string, error) {
37 return getImplementation().GetProjectTokenPath(projectId)
38}
39
40// GetProjectDepositAmount returns the deposit amount of a project by its ID.
41func GetProjectDepositAmount(projectId string) (int64, error) {
42 return getImplementation().GetProjectDepositAmount(projectId)
43}
44
45// GetProjectRecipient returns the recipient address of a project by its ID.
46func GetProjectRecipient(projectId string) (address, error) {
47 return getImplementation().GetProjectRecipient(projectId)
48}
49
50// GetProjectCondition retrieves a specific condition of a project.
51// Returns a cloned condition to prevent external modification.
52func GetProjectCondition(projectId string, tokenPath string) (*ProjectCondition, error) {
53 condition, err := getImplementation().GetProjectCondition(projectId, tokenPath)
54 if err != nil {
55 return nil, err
56 }
57 if condition == nil {
58 return nil, nil
59 }
60 return condition.Clone(), nil
61}
62
63// GetProjectTiersRatios returns the tiers ratios map of a project by its ID.
64func GetProjectTiersRatios(projectId string) (map[int64]int64, error) {
65 tiersRatios, err := getImplementation().GetProjectTiersRatios(projectId)
66 if err != nil {
67 return nil, err
68 }
69 return cloneInt64Map(tiersRatios), nil
70}
71
72// GetProjectCreatedHeight returns the created height of a project by its ID.
73func GetProjectCreatedHeight(projectId string) (int64, error) {
74 return getImplementation().GetProjectCreatedHeight(projectId)
75}
76
77// GetProjectCreatedAt returns the created time of a project by its ID.
78func GetProjectCreatedAt(projectId string) (int64, error) {
79 return getImplementation().GetProjectCreatedAt(projectId)
80}
81
82// GetProjectTier retrieves a specific tier of a project.
83// Returns a cloned tier to prevent external modification.
84func GetProjectTier(projectId string, tier int64) (*ProjectTier, error) {
85 projectTier, err := getImplementation().GetProjectTier(projectId, tier)
86 if err != nil {
87 return nil, err
88 }
89 if projectTier == nil {
90 return nil, nil
91 }
92 return projectTier.Clone(), nil
93}
94
95// GetProjectTierDistributeAmountPerSecondX128 returns the distribute amount per second (Q128) of a project tier.
96func GetProjectTierDistributeAmountPerSecondX128(projectId string, tier int64) (*u256.Uint, error) {
97 amount, err := getImplementation().GetProjectTierDistributeAmountPerSecondX128(projectId, tier)
98 if err != nil {
99 return nil, err
100 }
101 if amount == nil {
102 return nil, nil
103 }
104 return amount.Clone(), nil
105}
106
107// GetProjectTierTotalDistributeAmount returns the total distribute amount of a project tier.
108func GetProjectTierTotalDistributeAmount(projectId string, tier int64) (int64, error) {
109 return getImplementation().GetProjectTierTotalDistributeAmount(projectId, tier)
110}
111
112// GetProjectTierTotalDepositAmount returns the total deposit amount of a project tier.
113func GetProjectTierTotalDepositAmount(projectId string, tier int64) (int64, error) {
114 return getImplementation().GetProjectTierTotalDepositAmount(projectId, tier)
115}
116
117// GetProjectTierTotalWithdrawAmount returns the total withdraw amount of a project tier.
118func GetProjectTierTotalWithdrawAmount(projectId string, tier int64) (int64, error) {
119 return getImplementation().GetProjectTierTotalWithdrawAmount(projectId, tier)
120}
121
122// GetProjectTierTotalDepositCount returns the total deposit count of a project tier.
123func GetProjectTierTotalDepositCount(projectId string, tier int64) (int64, error) {
124 return getImplementation().GetProjectTierTotalDepositCount(projectId, tier)
125}
126
127// GetProjectTierTotalWithdrawCount returns the total withdraw count of a project tier.
128func GetProjectTierTotalWithdrawCount(projectId string, tier int64) (int64, error) {
129 return getImplementation().GetProjectTierTotalWithdrawCount(projectId, tier)
130}
131
132// GetProjectTierTotalCollectedAmount returns the total collected amount of a project tier.
133func GetProjectTierTotalCollectedAmount(projectId string, tier int64) (int64, error) {
134 return getImplementation().GetProjectTierTotalCollectedAmount(projectId, tier)
135}
136
137// GetProjectTierStartTime returns the start time of a project tier.
138func GetProjectTierStartTime(projectId string, tier int64) (int64, error) {
139 return getImplementation().GetProjectTierStartTime(projectId, tier)
140}
141
142// GetProjectTierEndTime returns the end time of a project tier.
143func GetProjectTierEndTime(projectId string, tier int64) (int64, error) {
144 return getImplementation().GetProjectTierEndTime(projectId, tier)
145}
146
147// GetDepositCount returns the total number of deposits.
148func GetDepositCount() int {
149 return getImplementation().GetDepositCount()
150}
151
152// GetCurrentDepositId returns the current deposit counter value.
153func GetCurrentDepositId() int64 {
154 return getImplementation().GetCurrentDepositId()
155}
156
157// GetProjectTierDepositCount returns the total number of deposits for a project tier.
158func GetProjectTierDepositCount(projectId string, tier int64) int {
159 return getImplementation().GetProjectTierDepositCount(projectId, tier)
160}
161
162// GetProjectTierDepositIDs returns a paginated list of deposit IDs for a project tier.
163func GetProjectTierDepositIDs(projectId string, tier int64, offset, count int) []string {
164 return cloneStringSlice(getImplementation().GetProjectTierDepositIDs(projectId, tier, offset, count))
165}
166
167// GetDeposit retrieves a deposit by its ID.
168// Returns a cloned deposit to prevent external modification.
169func GetDeposit(depositId string) (*Deposit, error) {
170 deposit, err := getImplementation().GetDeposit(depositId)
171 if err != nil {
172 return nil, err
173 }
174 if deposit == nil {
175 return nil, nil
176 }
177 return deposit.Clone(), nil
178}
179
180// GetDepositProjectID returns the project ID of a deposit by its ID.
181func GetDepositProjectID(depositId string) (string, error) {
182 return getImplementation().GetDepositProjectID(depositId)
183}
184
185// GetDepositTier returns the tier of a deposit by its ID.
186func GetDepositTier(depositId string) (int64, error) {
187 return getImplementation().GetDepositTier(depositId)
188}
189
190// GetDepositProjectTierID returns the project tier ID of a deposit by its ID.
191func GetDepositProjectTierID(depositId string) (string, error) {
192 return getImplementation().GetDepositProjectTierID(depositId)
193}
194
195// GetDepositAmount returns the deposit amount of a deposit by its ID.
196func GetDepositAmount(depositId string) (int64, error) {
197 return getImplementation().GetDepositAmount(depositId)
198}
199
200// GetDepositWithdrawnHeight returns the withdrawn height of a deposit by its ID.
201func GetDepositWithdrawnHeight(depositId string) (int64, error) {
202 return getImplementation().GetDepositWithdrawnHeight(depositId)
203}
204
205// GetDepositWithdrawnTime returns the withdrawn time of a deposit by its ID.
206func GetDepositWithdrawnTime(depositId string) (int64, error) {
207 return getImplementation().GetDepositWithdrawnTime(depositId)
208}
209
210// GetDepositCreatedHeight returns the created height of a deposit by its ID.
211func GetDepositCreatedHeight(depositId string) (int64, error) {
212 return getImplementation().GetDepositCreatedHeight(depositId)
213}
214
215// GetDepositCreatedAt returns the created time of a deposit by its ID.
216func GetDepositCreatedAt(depositId string) (int64, error) {
217 return getImplementation().GetDepositCreatedAt(depositId)
218}
219
220// GetDepositEndTime returns the end time of a deposit by its ID.
221func GetDepositEndTime(depositId string) (int64, error) {
222 return getImplementation().GetDepositEndTime(depositId)
223}
224
225// GetProjectTierRewardManagerCount returns the total number of reward managers.
226func GetProjectTierRewardManagerCount() int {
227 return getImplementation().GetProjectTierRewardManagerCount()
228}
229
230// GetProjectTierRewardManager retrieves a reward manager by project tier ID.
231// Returns a cloned reward manager to prevent external modification.
232func GetProjectTierRewardManager(projectTierId string) (*RewardManager, error) {
233 rewardManager, err := getImplementation().GetProjectTierRewardManager(projectTierId)
234 if err != nil {
235 return nil, err
236 }
237 if rewardManager == nil {
238 return nil, nil
239 }
240 return rewardManager.Clone(), nil
241}
242
243// GetProjectTierRewardDistributeAmountPerSecondX128 returns the distribute amount per second (Q128) of a reward manager.
244func GetProjectTierRewardDistributeAmountPerSecondX128(projectTierId string) (*u256.Uint, error) {
245 amount, err := getImplementation().GetProjectTierRewardDistributeAmountPerSecondX128(projectTierId)
246 if err != nil {
247 return nil, err
248 }
249 if amount == nil {
250 return nil, nil
251 }
252 return amount.Clone(), nil
253}
254
255// GetProjectTierRewardAccumulatedRewardPerDepositX128 returns the accumulated reward per deposit (Q128) of a reward manager.
256func GetProjectTierRewardAccumulatedRewardPerDepositX128(projectTierId string) (*u256.Uint, error) {
257 amount, err := getImplementation().GetProjectTierRewardAccumulatedRewardPerDepositX128(projectTierId)
258 if err != nil {
259 return nil, err
260 }
261 if amount == nil {
262 return nil, nil
263 }
264 return amount.Clone(), nil
265}
266
267// GetProjectTierRewardTotalDistributeAmount returns the total distribute amount of a reward manager.
268func GetProjectTierRewardTotalDistributeAmount(projectTierId string) (int64, error) {
269 return getImplementation().GetProjectTierRewardTotalDistributeAmount(projectTierId)
270}
271
272// GetProjectTierRewardTotalClaimedAmount returns the total claimed amount of a reward manager.
273func GetProjectTierRewardTotalClaimedAmount(projectTierId string) (int64, error) {
274 return getImplementation().GetProjectTierRewardTotalClaimedAmount(projectTierId)
275}
276
277// GetProjectTierRewardDistributeStartTime returns the distribute start time of a reward manager.
278func GetProjectTierRewardDistributeStartTime(projectTierId string) (int64, error) {
279 return getImplementation().GetProjectTierRewardDistributeStartTime(projectTierId)
280}
281
282// GetProjectTierRewardDistributeEndTime returns the distribute end time of a reward manager.
283func GetProjectTierRewardDistributeEndTime(projectTierId string) (int64, error) {
284 return getImplementation().GetProjectTierRewardDistributeEndTime(projectTierId)
285}
286
287// GetProjectTierRewardAccumulatedDistributeAmount returns the accumulated distribute amount of a reward manager.
288func GetProjectTierRewardAccumulatedDistributeAmount(projectTierId string) (int64, error) {
289 return getImplementation().GetProjectTierRewardAccumulatedDistributeAmount(projectTierId)
290}
291
292// GetProjectTierRewardAccumulatedTime returns the accumulated time of a reward manager.
293func GetProjectTierRewardAccumulatedTime(projectTierId string) (int64, error) {
294 return getImplementation().GetProjectTierRewardAccumulatedTime(projectTierId)
295}
296
297// GetProjectTierRewardClaimableDuration returns the reward claimable duration of a reward manager.
298func GetProjectTierRewardClaimableDuration(projectTierId string) (int64, error) {
299 return getImplementation().GetProjectTierRewardClaimableDuration(projectTierId)
300}
301
302// GetRewardState retrieves a reward state by project tier ID and deposit ID.
303// Returns a cloned reward state to prevent external modification.
304func GetRewardState(projectTierId string, depositId string) (*RewardState, error) {
305 rewardState, err := getImplementation().GetRewardState(projectTierId, depositId)
306 if err != nil {
307 return nil, err
308 }
309 if rewardState == nil {
310 return nil, nil
311 }
312 return rewardState.Clone(), nil
313}
314
315// GetProjectActiveStatus returns whether a project is currently active.
316func GetProjectActiveStatus(projectId string) (bool, error) {
317 return getImplementation().GetProjectActiveStatus(projectId)
318}