tempo.ts 0.11.1 → 0.12.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (228) hide show
  1. package/CHANGELOG.md +67 -4
  2. package/README.md +3 -34
  3. package/dist/server/Handler.d.ts +14 -14
  4. package/dist/server/Handler.d.ts.map +1 -1
  5. package/dist/server/Handler.js +16 -17
  6. package/dist/server/Handler.js.map +1 -1
  7. package/dist/wagmi/Actions/amm.d.ts +51 -51
  8. package/dist/wagmi/Actions/amm.d.ts.map +1 -1
  9. package/dist/wagmi/Actions/amm.js +37 -37
  10. package/dist/wagmi/Actions/amm.js.map +1 -1
  11. package/dist/wagmi/Actions/dex.d.ts +129 -129
  12. package/dist/wagmi/Actions/dex.d.ts.map +1 -1
  13. package/dist/wagmi/Actions/dex.js +73 -73
  14. package/dist/wagmi/Actions/dex.js.map +1 -1
  15. package/dist/wagmi/Actions/faucet.d.ts +9 -9
  16. package/dist/wagmi/Actions/faucet.d.ts.map +1 -1
  17. package/dist/wagmi/Actions/faucet.js +7 -7
  18. package/dist/wagmi/Actions/faucet.js.map +1 -1
  19. package/dist/wagmi/Actions/fee.d.ts +17 -17
  20. package/dist/wagmi/Actions/fee.d.ts.map +1 -1
  21. package/dist/wagmi/Actions/fee.js +10 -10
  22. package/dist/wagmi/Actions/fee.js.map +1 -1
  23. package/dist/wagmi/Actions/nonce.d.ts +9 -79
  24. package/dist/wagmi/Actions/nonce.d.ts.map +1 -1
  25. package/dist/wagmi/Actions/nonce.js +7 -89
  26. package/dist/wagmi/Actions/nonce.js.map +1 -1
  27. package/dist/wagmi/Actions/policy.d.ts +69 -70
  28. package/dist/wagmi/Actions/policy.d.ts.map +1 -1
  29. package/dist/wagmi/Actions/policy.js +43 -43
  30. package/dist/wagmi/Actions/policy.js.map +1 -1
  31. package/dist/wagmi/Actions/reward.d.ts +51 -51
  32. package/dist/wagmi/Actions/reward.d.ts.map +1 -1
  33. package/dist/wagmi/Actions/reward.js +31 -31
  34. package/dist/wagmi/Actions/reward.js.map +1 -1
  35. package/dist/wagmi/Actions/token.d.ts +238 -238
  36. package/dist/wagmi/Actions/token.d.ts.map +1 -1
  37. package/dist/wagmi/Actions/token.js +136 -136
  38. package/dist/wagmi/Actions/token.js.map +1 -1
  39. package/dist/wagmi/Connector.d.ts +2 -1
  40. package/dist/wagmi/Connector.d.ts.map +1 -1
  41. package/dist/wagmi/Connector.js +83 -22
  42. package/dist/wagmi/Connector.js.map +1 -1
  43. package/dist/wagmi/Hooks/nonce.d.ts +1 -52
  44. package/dist/wagmi/Hooks/nonce.d.ts.map +1 -1
  45. package/dist/wagmi/Hooks/nonce.js +1 -70
  46. package/dist/wagmi/Hooks/nonce.js.map +1 -1
  47. package/dist/wagmi/Hooks/policy.d.ts +0 -1
  48. package/dist/wagmi/Hooks/policy.d.ts.map +1 -1
  49. package/dist/wagmi/Hooks/policy.js.map +1 -1
  50. package/dist/wagmi/KeyManager.d.ts +6 -3
  51. package/dist/wagmi/KeyManager.d.ts.map +1 -1
  52. package/dist/wagmi/KeyManager.js +9 -4
  53. package/dist/wagmi/KeyManager.js.map +1 -1
  54. package/package.json +3 -13
  55. package/src/server/Handler.test.ts +2 -2
  56. package/src/server/Handler.ts +16 -17
  57. package/src/wagmi/Actions/amm.ts +63 -63
  58. package/src/wagmi/Actions/dex.test.ts +1 -1
  59. package/src/wagmi/Actions/dex.ts +153 -153
  60. package/src/wagmi/Actions/faucet.ts +11 -11
  61. package/src/wagmi/Actions/fee.ts +20 -20
  62. package/src/wagmi/Actions/nonce.test.ts +1 -64
  63. package/src/wagmi/Actions/nonce.ts +10 -142
  64. package/src/wagmi/Actions/policy.ts +83 -85
  65. package/src/wagmi/Actions/reward.ts +64 -61
  66. package/src/wagmi/Actions/token.ts +287 -283
  67. package/src/wagmi/Connector.ts +105 -31
  68. package/src/wagmi/Hooks/dex.test.ts +1 -1
  69. package/src/wagmi/Hooks/fee.test.ts +0 -6
  70. package/src/wagmi/Hooks/nonce.test.ts +1 -66
  71. package/src/wagmi/Hooks/nonce.ts +1 -114
  72. package/src/wagmi/Hooks/policy.ts +0 -2
  73. package/src/wagmi/KeyManager.ts +18 -5
  74. package/dist/chains.d.ts +0 -73
  75. package/dist/chains.d.ts.map +0 -1
  76. package/dist/chains.js +0 -51
  77. package/dist/chains.js.map +0 -1
  78. package/dist/viem/Abis.d.ts +0 -2649
  79. package/dist/viem/Abis.d.ts.map +0 -1
  80. package/dist/viem/Abis.js +0 -1677
  81. package/dist/viem/Abis.js.map +0 -1
  82. package/dist/viem/Account.d.ts +0 -244
  83. package/dist/viem/Account.d.ts.map +0 -1
  84. package/dist/viem/Account.js +0 -382
  85. package/dist/viem/Account.js.map +0 -1
  86. package/dist/viem/Actions/account.d.ts +0 -40
  87. package/dist/viem/Actions/account.d.ts.map +0 -1
  88. package/dist/viem/Actions/account.js +0 -86
  89. package/dist/viem/Actions/account.js.map +0 -1
  90. package/dist/viem/Actions/amm.d.ts +0 -1991
  91. package/dist/viem/Actions/amm.d.ts.map +0 -1
  92. package/dist/viem/Actions/amm.js +0 -814
  93. package/dist/viem/Actions/amm.js.map +0 -1
  94. package/dist/viem/Actions/dex.d.ts +0 -3900
  95. package/dist/viem/Actions/dex.d.ts.map +0 -1
  96. package/dist/viem/Actions/dex.js +0 -1414
  97. package/dist/viem/Actions/dex.js.map +0 -1
  98. package/dist/viem/Actions/faucet.d.ts +0 -69
  99. package/dist/viem/Actions/faucet.d.ts.map +0 -1
  100. package/dist/viem/Actions/faucet.js +0 -73
  101. package/dist/viem/Actions/faucet.js.map +0 -1
  102. package/dist/viem/Actions/fee.d.ts +0 -360
  103. package/dist/viem/Actions/fee.d.ts.map +0 -1
  104. package/dist/viem/Actions/fee.js +0 -237
  105. package/dist/viem/Actions/fee.js.map +0 -1
  106. package/dist/viem/Actions/index.d.ts +0 -10
  107. package/dist/viem/Actions/index.d.ts.map +0 -1
  108. package/dist/viem/Actions/index.js +0 -10
  109. package/dist/viem/Actions/index.js.map +0 -1
  110. package/dist/viem/Actions/nonce.d.ts +0 -257
  111. package/dist/viem/Actions/nonce.d.ts.map +0 -1
  112. package/dist/viem/Actions/nonce.js +0 -228
  113. package/dist/viem/Actions/nonce.js.map +0 -1
  114. package/dist/viem/Actions/policy.d.ts +0 -1680
  115. package/dist/viem/Actions/policy.d.ts.map +0 -1
  116. package/dist/viem/Actions/policy.js +0 -875
  117. package/dist/viem/Actions/policy.js.map +0 -1
  118. package/dist/viem/Actions/reward.d.ts +0 -2422
  119. package/dist/viem/Actions/reward.d.ts.map +0 -1
  120. package/dist/viem/Actions/reward.js +0 -651
  121. package/dist/viem/Actions/reward.js.map +0 -1
  122. package/dist/viem/Actions/token.d.ts +0 -16007
  123. package/dist/viem/Actions/token.d.ts.map +0 -1
  124. package/dist/viem/Actions/token.js +0 -2936
  125. package/dist/viem/Actions/token.js.map +0 -1
  126. package/dist/viem/Addresses.d.ts +0 -9
  127. package/dist/viem/Addresses.d.ts.map +0 -1
  128. package/dist/viem/Addresses.js +0 -9
  129. package/dist/viem/Addresses.js.map +0 -1
  130. package/dist/viem/Chain.d.ts +0 -451
  131. package/dist/viem/Chain.d.ts.map +0 -1
  132. package/dist/viem/Chain.js +0 -96
  133. package/dist/viem/Chain.js.map +0 -1
  134. package/dist/viem/Decorator.d.ts +0 -2783
  135. package/dist/viem/Decorator.d.ts.map +0 -1
  136. package/dist/viem/Decorator.js +0 -137
  137. package/dist/viem/Decorator.js.map +0 -1
  138. package/dist/viem/Formatters.d.ts +0 -10
  139. package/dist/viem/Formatters.d.ts.map +0 -1
  140. package/dist/viem/Formatters.js +0 -104
  141. package/dist/viem/Formatters.js.map +0 -1
  142. package/dist/viem/P256.d.ts +0 -2
  143. package/dist/viem/P256.d.ts.map +0 -1
  144. package/dist/viem/P256.js +0 -2
  145. package/dist/viem/P256.js.map +0 -1
  146. package/dist/viem/Secp256k1.d.ts +0 -2
  147. package/dist/viem/Secp256k1.d.ts.map +0 -1
  148. package/dist/viem/Secp256k1.js +0 -2
  149. package/dist/viem/Secp256k1.js.map +0 -1
  150. package/dist/viem/Storage.d.ts +0 -24
  151. package/dist/viem/Storage.d.ts.map +0 -1
  152. package/dist/viem/Storage.js +0 -68
  153. package/dist/viem/Storage.js.map +0 -1
  154. package/dist/viem/TokenIds.d.ts +0 -2
  155. package/dist/viem/TokenIds.d.ts.map +0 -1
  156. package/dist/viem/TokenIds.js +0 -2
  157. package/dist/viem/TokenIds.js.map +0 -1
  158. package/dist/viem/Transaction.d.ts +0 -76
  159. package/dist/viem/Transaction.d.ts.map +0 -1
  160. package/dist/viem/Transaction.js +0 -176
  161. package/dist/viem/Transaction.js.map +0 -1
  162. package/dist/viem/Transport.d.ts +0 -33
  163. package/dist/viem/Transport.d.ts.map +0 -1
  164. package/dist/viem/Transport.js +0 -138
  165. package/dist/viem/Transport.js.map +0 -1
  166. package/dist/viem/WebAuthnP256.d.ts +0 -82
  167. package/dist/viem/WebAuthnP256.d.ts.map +0 -1
  168. package/dist/viem/WebAuthnP256.js +0 -97
  169. package/dist/viem/WebAuthnP256.js.map +0 -1
  170. package/dist/viem/WebCryptoP256.d.ts +0 -2
  171. package/dist/viem/WebCryptoP256.d.ts.map +0 -1
  172. package/dist/viem/WebCryptoP256.js +0 -2
  173. package/dist/viem/WebCryptoP256.js.map +0 -1
  174. package/dist/viem/index.d.ts +0 -26
  175. package/dist/viem/index.d.ts.map +0 -1
  176. package/dist/viem/index.js +0 -17
  177. package/dist/viem/index.js.map +0 -1
  178. package/dist/viem/internal/types.d.ts +0 -20
  179. package/dist/viem/internal/types.d.ts.map +0 -1
  180. package/dist/viem/internal/types.js +0 -2
  181. package/dist/viem/internal/types.js.map +0 -1
  182. package/dist/viem/internal/utils.d.ts +0 -14
  183. package/dist/viem/internal/utils.d.ts.map +0 -1
  184. package/dist/viem/internal/utils.js +0 -33
  185. package/dist/viem/internal/utils.js.map +0 -1
  186. package/src/chains.ts +0 -54
  187. package/src/viem/Abis.ts +0 -1688
  188. package/src/viem/Account.test.ts +0 -444
  189. package/src/viem/Account.ts +0 -601
  190. package/src/viem/Actions/account.test.ts +0 -414
  191. package/src/viem/Actions/account.ts +0 -106
  192. package/src/viem/Actions/amm.test.ts +0 -381
  193. package/src/viem/Actions/amm.ts +0 -1227
  194. package/src/viem/Actions/dex.test.ts +0 -1549
  195. package/src/viem/Actions/dex.ts +0 -2150
  196. package/src/viem/Actions/faucet.ts +0 -121
  197. package/src/viem/Actions/fee.test.ts +0 -259
  198. package/src/viem/Actions/fee.ts +0 -372
  199. package/src/viem/Actions/index.ts +0 -9
  200. package/src/viem/Actions/nonce.test.ts +0 -206
  201. package/src/viem/Actions/nonce.ts +0 -347
  202. package/src/viem/Actions/policy.test.ts +0 -534
  203. package/src/viem/Actions/policy.ts +0 -1335
  204. package/src/viem/Actions/reward.test.ts +0 -434
  205. package/src/viem/Actions/reward.ts +0 -944
  206. package/src/viem/Actions/token.test.ts +0 -3029
  207. package/src/viem/Actions/token.ts +0 -4458
  208. package/src/viem/Addresses.ts +0 -9
  209. package/src/viem/Chain.bench-d.ts +0 -12
  210. package/src/viem/Chain.test.ts +0 -168
  211. package/src/viem/Chain.ts +0 -157
  212. package/src/viem/Decorator.bench-d.ts +0 -11
  213. package/src/viem/Decorator.test.ts +0 -39
  214. package/src/viem/Decorator.ts +0 -3179
  215. package/src/viem/Formatters.ts +0 -164
  216. package/src/viem/P256.ts +0 -1
  217. package/src/viem/Secp256k1.ts +0 -1
  218. package/src/viem/Storage.ts +0 -110
  219. package/src/viem/TokenIds.ts +0 -1
  220. package/src/viem/Transaction.ts +0 -382
  221. package/src/viem/Transport.ts +0 -191
  222. package/src/viem/WebAuthnP256.ts +0 -146
  223. package/src/viem/WebCryptoP256.ts +0 -1
  224. package/src/viem/e2e.test.ts +0 -1602
  225. package/src/viem/index.ts +0 -30
  226. package/src/viem/internal/types.ts +0 -69
  227. package/src/viem/internal/utils.ts +0 -58
  228. package/src/wagmi/internal/types.ts +0 -16
@@ -1 +0,0 @@
1
- {"version":3,"file":"reward.d.ts","sourceRoot":"","sources":["../../../src/viem/Actions/reward.ts"],"names":[],"mappings":"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"}
@@ -1,651 +0,0 @@
1
- import { parseEventLogs, } from 'viem';
2
- import { readContract, watchContractEvent, writeContract, writeContractSync, } from 'viem/actions';
3
- import * as Abis from '../Abis.js';
4
- import { defineCall } from '../internal/utils.js';
5
- /**
6
- * Claims accumulated rewards for a recipient.
7
- *
8
- * This function allows a reward recipient to claim their accumulated rewards
9
- * and receive them as token transfers to their own balance.
10
- *
11
- * - Accrues all pending rewards up to the current block timestamp.
12
- * - Updates the caller's reward accounting.
13
- * - Transfers the caller's accumulated `rewardBalance` from the token contract to the caller.
14
- * - If the contract's balance is insufficient, claims up to the available amount.
15
- * - Returns the actual amount claimed.
16
- *
17
- * Notes:
18
- * - Reverts with `Paused` if the token is paused.
19
- * - Reverts with `PolicyForbids` if the caller is not authorized to receive tokens under TIP-403.
20
- * - If opted in, the claimed amount is added back to `optedInSupply` since it goes to the recipient's balance.
21
- *
22
- * @example
23
- * ```ts
24
- * import { createClient, http } from 'viem'
25
- * import { tempo } from 'tempo.ts/chains'
26
- * import { Actions } from 'tempo.ts/viem'
27
- * import { privateKeyToAccount } from 'viem/accounts'
28
- *
29
- * const client = createClient({
30
- * account: privateKeyToAccount('0x...'),
31
- * chain: tempo({ feeToken: '0x20c0000000000000000000000000000000000001' })
32
- * transport: http(),
33
- * })
34
- *
35
- * const hash = await Actions.reward.claim(client, {
36
- * token: '0x20c0000000000000000000000000000000000001',
37
- * })
38
- * ```
39
- *
40
- * @param client - Client.
41
- * @param parameters - Parameters.
42
- * @returns The transaction hash.
43
- */
44
- export async function claim(client, parameters) {
45
- return claim.inner(writeContract, client, parameters);
46
- }
47
- (function (claim) {
48
- /** @internal */
49
- async function inner(action, client, parameters) {
50
- const { token, ...rest } = parameters;
51
- const call = claim.call({ token });
52
- return (await action(client, {
53
- ...rest,
54
- ...call,
55
- }));
56
- }
57
- claim.inner = inner;
58
- /**
59
- * Defines a call to the `claimRewards` function.
60
- *
61
- * Can be passed as a parameter to:
62
- * - [`estimateContractGas`](https://viem.sh/docs/contract/estimateContractGas): estimate the gas cost of the call
63
- * - [`simulateContract`](https://viem.sh/docs/contract/simulateContract): simulate the call
64
- * - [`sendCalls`](https://viem.sh/docs/actions/wallet/sendCalls): send multiple calls
65
- *
66
- * @example
67
- * ```ts
68
- * import { createClient, http, walletActions } from 'viem'
69
- * import { tempo } from 'tempo.ts/chains'
70
- * import { Actions } from 'tempo.ts/viem'
71
- *
72
- * const client = createClient({
73
- * chain: tempo({ feeToken: '0x20c0000000000000000000000000000000000001' })
74
- * transport: http(),
75
- * }).extend(walletActions)
76
- *
77
- * const hash = await client.sendTransaction({
78
- * calls: [actions.reward.claim.call({
79
- * token: '0x20c0000000000000000000000000000000000001',
80
- * })],
81
- * })
82
- * ```
83
- *
84
- * @param args - Arguments.
85
- * @returns The call.
86
- */
87
- function call(args) {
88
- const { token } = args;
89
- return defineCall({
90
- address: token,
91
- abi: Abis.tip20,
92
- args: [],
93
- functionName: 'claimRewards',
94
- });
95
- }
96
- claim.call = call;
97
- })(claim || (claim = {}));
98
- /**
99
- * Claims accumulated rewards for a recipient and waits for confirmation.
100
- *
101
- * This function allows a reward recipient to claim their accumulated rewards
102
- * and receive them as token transfers to their own balance.
103
- *
104
- * Behavior:
105
- * - Accrues all pending rewards up to the current block timestamp.
106
- * - Updates the caller's reward accounting.
107
- * - Transfers the caller's accumulated `rewardBalance` from the token contract to the caller.
108
- * - If the contract's balance is insufficient, claims up to the available amount.
109
- *
110
- * Notes:
111
- * - Reverts with `Paused` if the token is paused.
112
- * - Reverts with `PolicyForbids` if the caller is not authorized to receive tokens under TIP-403.
113
- * - If opted in, the claimed amount is added back to `optedInSupply` since it goes to the recipient's balance.
114
- *
115
- * @example
116
- * ```ts
117
- * import { createClient, http } from 'viem'
118
- * import { tempo } from 'tempo.ts/chains'
119
- * import { Actions } from 'tempo.ts/viem'
120
- * import { privateKeyToAccount } from 'viem/accounts'
121
- *
122
- * const client = createClient({
123
- * account: privateKeyToAccount('0x...'),
124
- * chain: tempo({ feeToken: '0x20c0000000000000000000000000000000000001' })
125
- * transport: http(),
126
- * })
127
- *
128
- * const { receipt } = await Actions.reward.claimSync(client, {
129
- * token: '0x20c0000000000000000000000000000000000001',
130
- * })
131
- * ```
132
- *
133
- * @param client - Client.
134
- * @param parameters - Parameters.
135
- * @returns The amount claimed and transaction receipt.
136
- */
137
- export async function claimSync(client, parameters) {
138
- const { throwOnReceiptRevert = true, ...rest } = parameters;
139
- const receipt = await claim.inner(writeContractSync, client, {
140
- ...rest,
141
- throwOnReceiptRevert,
142
- });
143
- return {
144
- receipt,
145
- };
146
- }
147
- /**
148
- * Gets the total reward per second rate for all active streams.
149
- *
150
- * Returns the current aggregate per-second emission rate scaled by `ACC_PRECISION` (1e18).
151
- * This value represents the sum of all active reward streams' emission rates.
152
- * The rate decreases when streams end (via `finalizeStreams`) or are canceled.
153
- *
154
- * @example
155
- * ```ts
156
- * import { createClient, http } from 'viem'
157
- * import { tempo } from 'tempo.ts/chains'
158
- * import { Actions } from 'tempo.ts/viem'
159
- *
160
- * const client = createClient({
161
- * chain: tempo({ feeToken: '0x20c0000000000000000000000000000000000001' })
162
- * transport: http(),
163
- * })
164
- *
165
- * const rate = await Actions.rewards.getTotalPerSecond(client, {
166
- * token: '0x20c0000000000000000000000000000000000001',
167
- * })
168
- * ```
169
- *
170
- * @param client - Client.
171
- * @param parameters - Parameters.
172
- * @returns The total reward per second (scaled by 1e18).
173
- */
174
- export async function getTotalPerSecond(client, parameters) {
175
- return readContract(client, {
176
- ...parameters,
177
- ...getTotalPerSecond.call(parameters),
178
- });
179
- }
180
- (function (getTotalPerSecond) {
181
- /**
182
- * Defines a call to the `totalRewardPerSecond` function.
183
- *
184
- * @param args - Arguments.
185
- * @returns The call.
186
- */
187
- function call(args) {
188
- const { token } = args;
189
- return defineCall({
190
- address: token,
191
- abi: Abis.tip20,
192
- args: [],
193
- functionName: 'totalRewardPerSecond',
194
- });
195
- }
196
- getTotalPerSecond.call = call;
197
- })(getTotalPerSecond || (getTotalPerSecond = {}));
198
- /**
199
- * Gets the reward information for a specific account.
200
- *
201
- * Returns the reward recipient address, reward per token value, and accumulated reward balance for the specified account.
202
- * This information includes:
203
- * - `rewardRecipient`: The address designated to receive rewards (zero address if opted out)
204
- * - `rewardPerToken`: The reward per token value for this account
205
- * - `rewardBalance`: The accumulated reward balance waiting to be claimed
206
- *
207
- * @example
208
- * ```ts
209
- * import { createClient, http } from 'viem'
210
- * import { tempo } from 'tempo.ts/chains'
211
- * import { Actions } from 'tempo.ts/viem'
212
- *
213
- * const client = createClient({
214
- * chain: tempo({ feeToken: '0x20c0000000000000000000000000000000000001' })
215
- * transport: http(),
216
- * })
217
- *
218
- * const info = await Actions.reward.getUserRewardInfo(client, {
219
- * token: '0x20c0000000000000000000000000000000000001',
220
- * account: '0xa5cc3c03994DB5b0d9A5eEdD10CabaB0813678AC',
221
- * })
222
- * ```
223
- *
224
- * @param client - Client.
225
- * @param parameters - Parameters.
226
- * @returns The user's reward information (recipient, rewardPerToken, rewardBalance).
227
- */
228
- export async function getUserRewardInfo(client, parameters) {
229
- return readContract(client, {
230
- ...parameters,
231
- ...getUserRewardInfo.call(parameters),
232
- });
233
- }
234
- (function (getUserRewardInfo) {
235
- /**
236
- * Defines a call to the `userRewardInfo` function.
237
- *
238
- * @param args - Arguments.
239
- * @returns The call.
240
- */
241
- function call(args) {
242
- const { account, token } = args;
243
- return defineCall({
244
- address: token,
245
- abi: Abis.tip20,
246
- args: [account],
247
- functionName: 'userRewardInfo',
248
- });
249
- }
250
- getUserRewardInfo.call = call;
251
- })(getUserRewardInfo || (getUserRewardInfo = {}));
252
- /**
253
- * Sets or changes the reward recipient for a token holder.
254
- *
255
- * This function allows a token holder to designate who should receive their share of rewards:
256
- * - If `recipient` is the zero address, opts out from rewards distribution.
257
- * - Otherwise, opts in and sets `recipient` as the address that will receive accrued rewards.
258
- * - Can be called with `recipient == msg.sender` to receive rewards directly.
259
- * - Automatically distributes any accrued rewards to the current recipient before changing.
260
- *
261
- * TIP-403 Policy:
262
- * - Reverts with `PolicyForbids` if `recipient` is not the zero address and either the holder or recipient is not authorized to receive tokens under the token's transfer policy.
263
- *
264
- * @example
265
- * ```ts
266
- * import { createClient, http } from 'viem'
267
- * import { tempo } from 'tempo.ts/chains'
268
- * import { Actions } from 'tempo.ts/viem'
269
- * import { privateKeyToAccount } from 'viem/accounts'
270
- *
271
- * const client = createClient({
272
- * account: privateKeyToAccount('0x...'),
273
- * chain: tempo({ feeToken: '0x20c0000000000000000000000000000000000001' })
274
- * transport: http(),
275
- * })
276
- *
277
- * const hash = await Actions.rewards.setRecipient(client, {
278
- * recipient: '0xa5cc3c03994DB5b0d9A5eEdD10CabaB0813678AC',
279
- * token: '0x20c0000000000000000000000000000000000001',
280
- * })
281
- * ```
282
- *
283
- * @param client - Client.
284
- * @param parameters - Parameters.
285
- * @returns The transaction hash.
286
- */
287
- export async function setRecipient(client, parameters) {
288
- return setRecipient.inner(writeContract, client, parameters);
289
- }
290
- /**
291
- * Sets or changes the reward recipient for a token holder and waits for confirmation.
292
- *
293
- * This function allows a token holder to designate who should receive their share of rewards:
294
- * - If `recipient` is the zero address, opts out from rewards distribution.
295
- * - Otherwise, opts in and sets `recipient` as the address that will receive accrued rewards.
296
- * - Can be called with `recipient == msg.sender` to receive rewards directly.
297
- * - Automatically distributes any accrued rewards to the current recipient before changing.
298
- *
299
- * TIP-403 Policy:
300
- * - Reverts with `PolicyForbids` if `recipient` is not the zero address and either the holder or recipient is not authorized to receive tokens under the token's transfer policy.
301
- *
302
- * @example
303
- * ```ts
304
- * import { createClient, http } from 'viem'
305
- * import { tempo } from 'tempo.ts/chains'
306
- * import { Actions } from 'tempo.ts/viem'
307
- * import { privateKeyToAccount } from 'viem/accounts'
308
- *
309
- * const client = createClient({
310
- * account: privateKeyToAccount('0x...'),
311
- * chain: tempo({ feeToken: '0x20c0000000000000000000000000000000000001' })
312
- * transport: http(),
313
- * })
314
- *
315
- * const { holder, recipient, receipt } = await Actions.rewards.setRecipientSync(client, {
316
- * recipient: '0xa5cc3c03994DB5b0d9A5eEdD10CabaB0813678AC',
317
- * token: '0x20c0000000000000000000000000000000000001',
318
- * })
319
- * ```
320
- *
321
- * @param client - Client.
322
- * @param parameters - Parameters.
323
- * @returns The holder, recipient, and transaction receipt.
324
- */
325
- export async function setRecipientSync(client, parameters) {
326
- const { throwOnReceiptRevert = true, ...rest } = parameters;
327
- const receipt = await setRecipient.inner(writeContractSync, client, {
328
- ...rest,
329
- throwOnReceiptRevert,
330
- });
331
- const { args } = setRecipient.extractEvent(receipt.logs);
332
- return {
333
- ...args,
334
- receipt,
335
- };
336
- }
337
- (function (setRecipient) {
338
- /** @internal */
339
- async function inner(action, client, parameters) {
340
- const { recipient, token, ...rest } = parameters;
341
- const call = setRecipient.call({ recipient, token });
342
- return (await action(client, {
343
- ...rest,
344
- ...call,
345
- }));
346
- }
347
- setRecipient.inner = inner;
348
- /**
349
- * Defines a call to the `setRecipient` function.
350
- *
351
- * Can be passed as a parameter to:
352
- * - [`estimateContractGas`](https://viem.sh/docs/contract/estimateContractGas): estimate the gas cost of the call
353
- * - [`simulateContract`](https://viem.sh/docs/contract/simulateContract): simulate the call
354
- * - [`sendCalls`](https://viem.sh/docs/actions/wallet/sendCalls): send multiple calls
355
- *
356
- * @example
357
- * ```ts
358
- * import { createClient, http, walletActions } from 'viem'
359
- * import { tempo } from 'tempo.ts/chains'
360
- * import { Actions } from 'tempo.ts/viem'
361
- *
362
- * const client = createClient({
363
- * chain: tempo({ feeToken: '0x20c0000000000000000000000000000000000001' })
364
- * transport: http(),
365
- * }).extend(walletActions)
366
- *
367
- * const hash = await client.sendTransaction({
368
- * calls: [actions.rewards.setRecipient.call({
369
- * recipient: '0xa5cc3c03994DB5b0d9A5eEdD10CabaB0813678AC',
370
- * token: '0x20c0000000000000000000000000000000000001',
371
- * })],
372
- * })
373
- * ```
374
- *
375
- * @param args - Arguments.
376
- * @returns The call.
377
- */
378
- function call(args) {
379
- const { recipient, token } = args;
380
- return defineCall({
381
- address: token,
382
- abi: Abis.tip20,
383
- args: [recipient],
384
- functionName: 'setRewardRecipient',
385
- });
386
- }
387
- setRecipient.call = call;
388
- /**
389
- * Extracts the `RewardRecipientSet` event from logs.
390
- *
391
- * @param logs - The logs.
392
- * @returns The `RewardRecipientSet` event.
393
- */
394
- function extractEvent(logs) {
395
- const [log] = parseEventLogs({
396
- abi: Abis.tip20,
397
- logs,
398
- eventName: 'RewardRecipientSet',
399
- strict: true,
400
- });
401
- if (!log)
402
- throw new Error('`RewardRecipientSet` event not found.');
403
- return log;
404
- }
405
- setRecipient.extractEvent = extractEvent;
406
- })(setRecipient || (setRecipient = {}));
407
- /**
408
- * Starts a new reward stream that distributes tokens to opted-in holders.
409
- *
410
- * Behavior:
411
- * - Transfers `amount` of tokens from the caller into the token contract's reward pool.
412
- * - If `seconds == 0`: Immediately distributes `amount` to current opted-in holders by increasing `rewardPerTokenStored`.
413
- * Returns stream ID `0`. Distribution occurs when holders interact with the token (transfers, etc.).
414
- * - If `seconds > 0`: Starts a linear stream that emits evenly from `block.timestamp` to `block.timestamp + seconds`.
415
- * Returns a unique stream ID for later cancellation.
416
- *
417
- * Notes:
418
- * - Reverts with `InvalidAmount` if `amount == 0`.
419
- * - Allowed even when `optedInSupply == 0` (tokens distributed while no one is opted in are locked permanently).
420
- * - The transfer from caller to pool is subject to TIP-403 policy checks.
421
- *
422
- * @example
423
- * ```ts
424
- * import { createClient, http } from 'viem'
425
- * import { tempo } from 'tempo.ts/chains'
426
- * import { Actions } from 'tempo.ts/viem'
427
- * import { privateKeyToAccount } from 'viem/accounts'
428
- *
429
- * const client = createClient({
430
- * account: privateKeyToAccount('0x...'),
431
- * chain: tempo({ feeToken: '0x20c0000000000000000000000000000000000001' })
432
- * transport: http(),
433
- * })
434
- *
435
- * const hash = await Actions.rewards.start(client, {
436
- * amount: 100000000000000000000n,
437
- * seconds: 86400,
438
- * token: '0x20c0000000000000000000000000000000000001',
439
- * })
440
- * ```
441
- *
442
- * @param client - Client.
443
- * @param parameters - Parameters.
444
- * @returns The transaction hash.
445
- */
446
- export async function start(client, parameters) {
447
- return start.inner(writeContract, client, parameters);
448
- }
449
- /**
450
- * Starts a new reward stream that distributes tokens to opted-in holders and waits for confirmation.
451
- *
452
- * Behavior:
453
- * - Transfers `amount` of tokens from the caller into the token contract's reward pool.
454
- * - If `seconds == 0`: Immediately distributes `amount` to current opted-in holders by increasing `rewardPerTokenStored`.
455
- * Returns stream ID `0`. Distribution occurs when holders interact with the token (transfers, etc.).
456
- * - If `seconds > 0`: Starts a linear stream that emits evenly from `block.timestamp` to `block.timestamp + seconds`.
457
- * Returns a unique stream ID for later cancellation.
458
- *
459
- * Notes:
460
- * - Reverts with `InvalidAmount` if `amount == 0`.
461
- * - Allowed even when `optedInSupply == 0` (tokens distributed while no one is opted in are locked permanently).
462
- * - The transfer from caller to pool is subject to TIP-403 policy checks.
463
- *
464
- * @example
465
- * ```ts
466
- * import { createClient, http } from 'viem'
467
- * import { tempo } from 'tempo.ts/chains'
468
- * import { Actions } from 'tempo.ts/viem'
469
- * import { privateKeyToAccount } from 'viem/accounts'
470
- *
471
- * const client = createClient({
472
- * account: privateKeyToAccount('0x...'),
473
- * chain: tempo({ feeToken: '0x20c0000000000000000000000000000000000001' })
474
- * transport: http(),
475
- * })
476
- *
477
- * const { id, receipt } = await Actions.rewards.startSync(client, {
478
- * amount: 100000000000000000000n,
479
- * seconds: 86400,
480
- * token: '0x20c0000000000000000000000000000000000001',
481
- * })
482
- * ```
483
- *
484
- * @param client - Client.
485
- * @param parameters - Parameters.
486
- * @returns The stream ID, funder, amount, duration, and transaction receipt.
487
- */
488
- export async function startSync(client, parameters) {
489
- const { throwOnReceiptRevert = true, ...rest } = parameters;
490
- const receipt = await start.inner(writeContractSync, client, {
491
- ...rest,
492
- throwOnReceiptRevert,
493
- });
494
- const { args } = start.extractEvent(receipt.logs);
495
- return {
496
- ...args,
497
- receipt,
498
- };
499
- }
500
- (function (start) {
501
- /** @internal */
502
- async function inner(action, client, parameters) {
503
- const { amount, token, ...rest } = parameters;
504
- const call = start.call({ amount, token });
505
- return (await action(client, {
506
- ...rest,
507
- ...call,
508
- }));
509
- }
510
- start.inner = inner;
511
- /**
512
- * Defines a call to the `start` function.
513
- *
514
- * Can be passed as a parameter to:
515
- * - [`estimateContractGas`](https://viem.sh/docs/contract/estimateContractGas): estimate the gas cost of the call
516
- * - [`simulateContract`](https://viem.sh/docs/contract/simulateContract): simulate the call
517
- * - [`sendCalls`](https://viem.sh/docs/actions/wallet/sendCalls): send multiple calls
518
- *
519
- * @example
520
- * ```ts
521
- * import { createClient, http, walletActions } from 'viem'
522
- * import { tempo } from 'tempo.ts/chains'
523
- * import { Actions } from 'tempo.ts/viem'
524
- *
525
- * const client = createClient({
526
- * chain: tempo({ feeToken: '0x20c0000000000000000000000000000000000001' })
527
- * transport: http(),
528
- * }).extend(walletActions)
529
- *
530
- * const hash = await client.sendTransaction({
531
- * calls: [actions.rewards.start.call({
532
- * amount: 100000000000000000000n,
533
- * seconds: 86400,
534
- * token: '0x20c0000000000000000000000000000000000001',
535
- * })],
536
- * })
537
- * ```
538
- *
539
- * @param args - Arguments.
540
- * @returns The call.
541
- */
542
- function call(args) {
543
- const { amount, token } = args;
544
- return defineCall({
545
- address: token,
546
- abi: Abis.tip20,
547
- args: [amount, 0],
548
- functionName: 'startReward',
549
- });
550
- }
551
- start.call = call;
552
- /**
553
- * Extracts the `RewardScheduled` event from logs.
554
- *
555
- * @param logs - The logs.
556
- * @returns The `RewardScheduled` event.
557
- */
558
- function extractEvent(logs) {
559
- const [log] = parseEventLogs({
560
- abi: Abis.tip20,
561
- logs,
562
- eventName: 'RewardScheduled',
563
- strict: true,
564
- });
565
- if (!log)
566
- throw new Error('`RewardScheduled` event not found.');
567
- return log;
568
- }
569
- start.extractEvent = extractEvent;
570
- })(start || (start = {}));
571
- /**
572
- * Watches for reward scheduled events.
573
- *
574
- * @example
575
- * ```ts
576
- * import { createClient, http } from 'viem'
577
- * import { tempo } from 'tempo.ts/chains'
578
- * import { Actions } from 'tempo.ts/viem'
579
- *
580
- * const client = createClient({
581
- * chain: tempo({ feeToken: '0x20c0000000000000000000000000000000000001' })
582
- * transport: http(),
583
- * })
584
- *
585
- * const unwatch = Actions.reward.watchRewardScheduled(client, {
586
- * token: '0x20c0000000000000000000000000000000000001',
587
- * onRewardScheduled: (args, log) => {
588
- * console.log('Reward scheduled:', args)
589
- * },
590
- * })
591
- * ```
592
- *
593
- * @param client - Client.
594
- * @param parameters - Parameters.
595
- * @returns A function to unsubscribe from the event.
596
- */
597
- export function watchRewardScheduled(client, parameters) {
598
- const { onRewardScheduled, token, ...rest } = parameters;
599
- return watchContractEvent(client, {
600
- ...rest,
601
- address: token,
602
- abi: Abis.tip20,
603
- eventName: 'RewardScheduled',
604
- onLogs: (logs) => {
605
- for (const log of logs)
606
- onRewardScheduled(log.args, log);
607
- },
608
- strict: true,
609
- });
610
- }
611
- /**
612
- * Watches for reward recipient set events.
613
- *
614
- * @example
615
- * ```ts
616
- * import { createClient, http } from 'viem'
617
- * import { tempo } from 'tempo.ts/chains'
618
- * import { Actions } from 'tempo.ts/viem'
619
- *
620
- * const client = createClient({
621
- * chain: tempo({ feeToken: '0x20c0000000000000000000000000000000000001' })
622
- * transport: http(),
623
- * })
624
- *
625
- * const unwatch = Actions.reward.watchRewardRecipientSet(client, {
626
- * token: '0x20c0000000000000000000000000000000000001',
627
- * onRewardRecipientSet: (args, log) => {
628
- * console.log('Reward recipient set:', args)
629
- * },
630
- * })
631
- * ```
632
- *
633
- * @param client - Client.
634
- * @param parameters - Parameters.
635
- * @returns A function to unsubscribe from the event.
636
- */
637
- export function watchRewardRecipientSet(client, parameters) {
638
- const { onRewardRecipientSet, token, ...rest } = parameters;
639
- return watchContractEvent(client, {
640
- ...rest,
641
- address: token,
642
- abi: Abis.tip20,
643
- eventName: 'RewardRecipientSet',
644
- onLogs: (logs) => {
645
- for (const log of logs)
646
- onRewardRecipientSet(log.args, log);
647
- },
648
- strict: true,
649
- });
650
- }
651
- //# sourceMappingURL=reward.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"reward.js","sourceRoot":"","sources":["../../../src/viem/Actions/reward.ts"],"names":[],"mappings":"AAAA,OAAO,EASL,cAAc,GAOf,MAAM,MAAM,CAAA;AACb,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,iBAAiB,GAClB,MAAM,cAAc,CAAA;AAErB,OAAO,KAAK,IAAI,MAAM,YAAY,CAAA;AAElC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAEjD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,MAAM,CAAC,KAAK,UAAU,KAAK,CAIzB,MAAyC,EACzC,UAA4C;IAE5C,OAAO,KAAK,CAAC,KAAK,CAAC,aAAa,EAAE,MAAM,EAAE,UAAU,CAAC,CAAA;AACvD,CAAC;AAED,WAAiB,KAAK;IAgBpB,gBAAgB;IACT,KAAK,UAAU,KAAK,CAKzB,MAAc,EACd,MAAyC,EACzC,UAAsC;QAEtC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,GAAG,UAAU,CAAA;QACrC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;QAClC,OAAO,CAAC,MAAM,MAAM,CAAC,MAAM,EAAE;YAC3B,GAAG,IAAI;YACP,GAAG,IAAI;SACC,CAAC,CAAU,CAAA;IACvB,CAAC;IAfqB,WAAK,QAe1B,CAAA;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACH,SAAgB,IAAI,CAAC,IAAU;QAC7B,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAA;QACtB,OAAO,UAAU,CAAC;YAChB,OAAO,EAAE,KAAK;YACd,GAAG,EAAE,IAAI,CAAC,KAAK;YACf,IAAI,EAAE,EAAE;YACR,YAAY,EAAE,cAAc;SAC7B,CAAC,CAAA;IACJ,CAAC;IARe,UAAI,OAQnB,CAAA;AACH,CAAC,EAxEgB,KAAK,KAAL,KAAK,QAwErB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAI7B,MAAyC,EACzC,UAAgD;IAEhD,MAAM,EAAE,oBAAoB,GAAG,IAAI,EAAE,GAAG,IAAI,EAAE,GAAG,UAAU,CAAA;IAC3D,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,iBAAiB,EAAE,MAAM,EAAE;QAC3D,GAAG,IAAI;QACP,oBAAoB;KACZ,CAAC,CAAA;IACX,OAAO;QACL,OAAO;KACC,CAAA;AACZ,CAAC;AAgBD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,MAAgC,EAChC,UAAwC;IAExC,OAAO,YAAY,CAAC,MAAM,EAAE;QAC1B,GAAG,UAAU;QACb,GAAG,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC;KACtC,CAAC,CAAA;AACJ,CAAC;AAED,WAAiB,iBAAiB;IAchC;;;;;OAKG;IACH,SAAgB,IAAI,CAAC,IAAU;QAC7B,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAA;QACtB,OAAO,UAAU,CAAC;YAChB,OAAO,EAAE,KAAK;YACd,GAAG,EAAE,IAAI,CAAC,KAAK;YACf,IAAI,EAAE,EAAE;YACR,YAAY,EAAE,sBAAsB;SACrC,CAAC,CAAA;IACJ,CAAC;IARe,sBAAI,OAQnB,CAAA;AACH,CAAC,EA7BgB,iBAAiB,KAAjB,iBAAiB,QA6BjC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,MAAgC,EAChC,UAAwC;IAExC,OAAO,YAAY,CAAC,MAAM,EAAE;QAC1B,GAAG,UAAU;QACb,GAAG,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC;KACtC,CAAC,CAAA;AACJ,CAAC;AAED,WAAiB,iBAAiB;IAgBhC;;;;;OAKG;IACH,SAAgB,IAAI,CAAC,IAAU;QAC7B,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,IAAI,CAAA;QAC/B,OAAO,UAAU,CAAC;YAChB,OAAO,EAAE,KAAK;YACd,GAAG,EAAE,IAAI,CAAC,KAAK;YACf,IAAI,EAAE,CAAC,OAAO,CAAC;YACf,YAAY,EAAE,gBAAgB;SAC/B,CAAC,CAAA;IACJ,CAAC;IARe,sBAAI,OAQnB,CAAA;AACH,CAAC,EA/BgB,iBAAiB,KAAjB,iBAAiB,QA+BjC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAIhC,MAAyC,EACzC,UAAmD;IAEnD,OAAO,YAAY,CAAC,KAAK,CAAC,aAAa,EAAE,MAAM,EAAE,UAAU,CAAC,CAAA;AAC9D,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAIpC,MAAyC,EACzC,UAAuD;IAEvD,MAAM,EAAE,oBAAoB,GAAG,IAAI,EAAE,GAAG,IAAI,EAAE,GAAG,UAAU,CAAA;IAC3D,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,KAAK,CAAC,iBAAiB,EAAE,MAAM,EAAE;QAClE,GAAG,IAAI;QACP,oBAAoB;KACZ,CAAC,CAAA;IACX,MAAM,EAAE,IAAI,EAAE,GAAG,YAAY,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IACxD,OAAO;QACL,GAAG,IAAI;QACP,OAAO;KACC,CAAA;AACZ,CAAC;AAED,WAAiB,YAAY;IAkB3B,gBAAgB;IACT,KAAK,UAAU,KAAK,CAKzB,MAAc,EACd,MAAyC,EACzC,UAAsC;QAEtC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,GAAG,UAAU,CAAA;QAChD,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAA;QACpD,OAAO,CAAC,MAAM,MAAM,CAAC,MAAM,EAAE;YAC3B,GAAG,IAAI;YACP,GAAG,IAAI;SACC,CAAC,CAAU,CAAA;IACvB,CAAC;IAfqB,kBAAK,QAe1B,CAAA;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACH,SAAgB,IAAI,CAAC,IAAU;QAC7B,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,IAAI,CAAA;QACjC,OAAO,UAAU,CAAC;YAChB,OAAO,EAAE,KAAK;YACd,GAAG,EAAE,IAAI,CAAC,KAAK;YACf,IAAI,EAAE,CAAC,SAAS,CAAC;YACjB,YAAY,EAAE,oBAAoB;SACnC,CAAC,CAAA;IACJ,CAAC;IARe,iBAAI,OAQnB,CAAA;IAED;;;;;OAKG;IACH,SAAgB,YAAY,CAAC,IAAW;QACtC,MAAM,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC;YAC3B,GAAG,EAAE,IAAI,CAAC,KAAK;YACf,IAAI;YACJ,SAAS,EAAE,oBAAoB;YAC/B,MAAM,EAAE,IAAI;SACb,CAAC,CAAA;QACF,IAAI,CAAC,GAAG;YAAE,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAA;QAClE,OAAO,GAAG,CAAA;IACZ,CAAC;IATe,yBAAY,eAS3B,CAAA;AACH,CAAC,EA5FgB,YAAY,KAAZ,YAAY,QA4F5B;AAoBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,MAAM,CAAC,KAAK,UAAU,KAAK,CAIzB,MAAyC,EACzC,UAA4C;IAE5C,OAAO,KAAK,CAAC,KAAK,CAAC,aAAa,EAAE,MAAM,EAAE,UAAU,CAAC,CAAA;AACvD,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAI7B,MAAyC,EACzC,UAAgD;IAEhD,MAAM,EAAE,oBAAoB,GAAG,IAAI,EAAE,GAAG,IAAI,EAAE,GAAG,UAAU,CAAA;IAC3D,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,iBAAiB,EAAE,MAAM,EAAE;QAC3D,GAAG,IAAI;QACP,oBAAoB;KACZ,CAAC,CAAA;IACX,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IACjD,OAAO;QACL,GAAG,IAAI;QACP,OAAO;KACC,CAAA;AACZ,CAAC;AAED,WAAiB,KAAK;IAkBpB,gBAAgB;IACT,KAAK,UAAU,KAAK,CAKzB,MAAc,EACd,MAAyC,EACzC,UAAsC;QAEtC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,GAAG,UAAU,CAAA;QAC7C,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAA;QAC1C,OAAO,CAAC,MAAM,MAAM,CAAC,MAAM,EAAE;YAC3B,GAAG,IAAI;YACP,GAAG,IAAI;SACC,CAAC,CAAU,CAAA;IACvB,CAAC;IAfqB,WAAK,QAe1B,CAAA;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BG;IACH,SAAgB,IAAI,CAAC,IAAU;QAC7B,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAA;QAC9B,OAAO,UAAU,CAAC;YAChB,OAAO,EAAE,KAAK;YACd,GAAG,EAAE,IAAI,CAAC,KAAK;YACf,IAAI,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;YACjB,YAAY,EAAE,aAAa;SAC5B,CAAC,CAAA;IACJ,CAAC;IARe,UAAI,OAQnB,CAAA;IAED;;;;;OAKG;IACH,SAAgB,YAAY,CAAC,IAAW;QACtC,MAAM,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC;YAC3B,GAAG,EAAE,IAAI,CAAC,KAAK;YACf,IAAI;YACJ,SAAS,EAAE,iBAAiB;YAC5B,MAAM,EAAE,IAAI;SACb,CAAC,CAAA;QACF,IAAI,CAAC,GAAG;YAAE,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;QAC/D,OAAO,GAAG,CAAA;IACZ,CAAC;IATe,kBAAY,eAS3B,CAAA;AACH,CAAC,EA7FgB,KAAK,KAAL,KAAK,QA6FrB;AAwBD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,UAAU,oBAAoB,CAIlC,MAAyC,EACzC,UAA2C;IAE3C,MAAM,EAAE,iBAAiB,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,GAAG,UAAU,CAAA;IACxD,OAAO,kBAAkB,CAAC,MAAM,EAAE;QAChC,GAAG,IAAI;QACP,OAAO,EAAE,KAAK;QACd,GAAG,EAAE,IAAI,CAAC,KAAK;QACf,SAAS,EAAE,iBAAiB;QAC5B,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YACf,KAAK,MAAM,GAAG,IAAI,IAAI;gBAAE,iBAAiB,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;QAC1D,CAAC;QACD,MAAM,EAAE,IAAI;KACb,CAAC,CAAA;AACJ,CAAC;AA8BD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,UAAU,uBAAuB,CAIrC,MAAyC,EACzC,UAA8C;IAE9C,MAAM,EAAE,oBAAoB,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,GAAG,UAAU,CAAA;IAC3D,OAAO,kBAAkB,CAAC,MAAM,EAAE;QAChC,GAAG,IAAI;QACP,OAAO,EAAE,KAAK;QACd,GAAG,EAAE,IAAI,CAAC,KAAK;QACf,SAAS,EAAE,oBAAoB;QAC/B,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YACf,KAAK,MAAM,GAAG,IAAI,IAAI;gBAAE,oBAAoB,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;QAC7D,CAAC;QACD,MAAM,EAAE,IAAI;KACb,CAAC,CAAA;AACJ,CAAC"}