1+ import { manualCliff , manualLinear , manualStep } from "../adapters/manual" ;
2+ import { Protocol } from "../types/adapters" ;
3+ import { periodToSeconds } from "../utils/time" ;
4+
5+ /*
6+ * ZEAL — Zealous Swap
7+ * Total supply: 240,000,000
8+ * TGE / Launch: 2025-04-24
9+ */
10+
11+ const TOTAL = 240_000_000 ;
12+ const START = Math . floor ( Date . UTC ( 2025 , 3 , 24 , 0 , 0 , 0 ) / 1e3 ) ; // 2025-04-24 00:00:00 UTC
13+
14+ // ----- Allocations -----
15+ const YIELD_FARMING = 0.24 * TOTAL ; // 57,600,000
16+ const INFINITY_POOL = 0.18 * TOTAL ; // 43,200,000
17+ const INSURANCE_FUND = 0.03 * TOTAL ; // 7,200,000
18+ const LIQ_AND_LISTINGS = 0.09 * TOTAL ; // 21,600,000
19+ const SALE = 0.20 * TOTAL ; // 48,000,000
20+ const TEAM = 0.10 * TOTAL ; // 24,000,000
21+ const NACHO_CREATORS = 0.04 * TOTAL ; // 9,600,000
22+ const NACHO_COMMUNITY_FUND = 0.01 * TOTAL ; // 2,400,000
23+ const COMMUNITY_MGMT = 0.01 * TOTAL ; // 2,400,000
24+
25+ // Active traders airdrops (reserve) — modeled as linear over 24 months after Airdrop 4
26+ // Unallocated, and will be adjusted based on actual airdrop distribution
27+ const FUTURE_TRADER_AIRDROPS = 0.045 * TOTAL ; // 10,800,000
28+
29+ // 9y after 2025-04-24 -> 2034-04-24
30+ const FARMS_END = Math . floor ( Date . UTC ( 2034 , 3 , 24 , 0 , 0 , 0 ) / 1e3 ) ;
31+ const INFINITY_END = FARMS_END ;
32+
33+ // Team: 2y cliff then 2y linear vest (start 2027-04-24, end 2029-04-24)
34+ const TEAM_START = Math . floor ( Date . UTC ( 2027 , 3 , 24 , 0 , 0 , 0 ) / 1e3 ) ;
35+ const TEAM_END = Math . floor ( Date . UTC ( 2029 , 3 , 24 , 0 , 0 , 0 ) / 1e3 ) ;
36+
37+ const ONE_MONTH = periodToSeconds . month ;
38+
39+ // Airdrop timestamps (16:00:00 UTC)
40+ const AIRDROP_1_TS = Math . floor ( Date . UTC ( 2025 , 9 , 3 , 16 , 0 , 0 ) / 1e3 ) ; // Oct 3, 2025
41+ const AIRDROP_2_TS = Math . floor ( Date . UTC ( 2025 , 10 , 15 , 16 , 0 , 0 ) / 1e3 ) ; // Nov 15, 2025
42+ const AIRDROP_3_TS = Math . floor ( Date . UTC ( 2025 , 11 , 15 , 16 , 0 , 0 ) / 1e3 ) ; // Dec 15, 2025
43+ const AIRDROP_4_TS = Math . floor ( Date . UTC ( 2026 , 0 , 15 , 16 , 0 , 0 ) / 1e3 ) ; // Jan 15, 2026
44+
45+ const zealousSwap : Protocol = {
46+ "Farms rewards" : manualLinear ( START , FARMS_END , YIELD_FARMING ) ,
47+ "Infinity Pool rewards" : manualLinear ( START , INFINITY_END , INFINITY_POOL ) ,
48+
49+ "Airdrops" : [
50+ manualCliff ( AIRDROP_1_TS , 0.02 * TOTAL ) ,
51+ manualCliff ( AIRDROP_2_TS , 0.015 * TOTAL ) ,
52+ manualCliff ( AIRDROP_3_TS , 0.01 * TOTAL ) ,
53+ manualCliff ( AIRDROP_4_TS , 0.01 * TOTAL ) ,
54+ ] ,
55+
56+ "Future trader airdrops (reserve)" : manualLinear (
57+ AIRDROP_4_TS ,
58+ AIRDROP_4_TS + 24 * ONE_MONTH ,
59+ FUTURE_TRADER_AIRDROPS
60+ ) ,
61+
62+ "Core team (2y cliff, 2y vest)" : manualLinear ( TEAM_START , TEAM_END , TEAM ) ,
63+
64+ "Nacho creators (unlocked at launch)" : manualCliff ( START , NACHO_CREATORS ) ,
65+ "Nacho community fund (unlocked at launch)" : manualCliff ( START , NACHO_COMMUNITY_FUND ) ,
66+
67+ "Community mgmt rewards (monthly x12)" : manualStep (
68+ START ,
69+ ONE_MONTH ,
70+ 12 ,
71+ COMMUNITY_MGMT / 12
72+ ) ,
73+
74+ "Public sale" : manualCliff ( START , SALE ) ,
75+ "Insurance fund (emergency reserve)" : manualCliff ( START , INSURANCE_FUND ) ,
76+ "Liquidity & exchange listings (reserve)" : manualCliff ( START , LIQ_AND_LISTINGS ) ,
77+
78+ meta : {
79+ protocolIds : [ ] ,
80+ sources : [
81+ "https://zealous-swap.gitbook.io/zealous-swap/protocol/zeal-token" ,
82+ ] ,
83+ token : "kasplex:0xb7a95035618354D9ADFC49Eca49F38586B624040" ,
84+ chain : "kasplex" ,
85+ total : TOTAL ,
86+ } ,
87+
88+ categories : {
89+ farming : [ "Farms rewards" ] ,
90+ staking : [ "Infinity Pool rewards" ] ,
91+ airdrop : [
92+ "Airdrops" ,
93+ "Future trader airdrops (reserve)" ,
94+ ] ,
95+ team : [ "Core team (2y cliff, 2y vest)" ] ,
96+ community : [ "Community mgmt rewards (monthly x12)" ] ,
97+ partners : [ "Nacho creators (unlocked at launch)" ] ,
98+ publicSale : [ "Public sale" ] ,
99+ noncirculating : [
100+ "Insurance fund (emergency reserve)" ,
101+ "Liquidity & exchange listings (reserve)" ,
102+ ] ,
103+ ecosystem : [ "Nacho community fund (unlocked at launch)" ] ,
104+ } ,
105+ } ;
106+
107+ export default zealousSwap ;
0 commit comments