Search Apps Documentation Source Content File Folder Download Copy Actions Download

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}