@0xmonaco/core 0.1.5 → 0.1.7
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.
- package/README.md +180 -108
- package/dist/api/applications/api.d.ts +45 -0
- package/dist/api/applications/api.d.ts.map +1 -0
- package/dist/api/applications/api.js +61 -0
- package/dist/api/applications/api.js.map +1 -0
- package/dist/api/applications/index.d.ts +6 -0
- package/dist/api/applications/index.d.ts.map +1 -0
- package/dist/api/applications/index.js +5 -0
- package/dist/api/applications/index.js.map +1 -0
- package/dist/api/auth/api.d.ts +5 -5
- package/dist/api/auth/api.d.ts.map +1 -1
- package/dist/api/auth/api.js +6 -6
- package/dist/api/auth/api.js.map +1 -1
- package/dist/api/auth/index.d.ts +1 -1
- package/dist/api/index.d.ts +5 -2
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/index.js +5 -2
- package/dist/api/index.js.map +1 -1
- package/dist/api/market/api.d.ts +12 -0
- package/dist/api/market/api.d.ts.map +1 -0
- package/dist/api/market/api.js +31 -0
- package/dist/api/market/api.js.map +1 -0
- package/dist/api/market/index.d.ts +3 -0
- package/dist/api/market/index.d.ts.map +1 -0
- package/dist/api/market/index.js +2 -0
- package/dist/api/market/index.js.map +1 -0
- package/dist/api/trading/api.d.ts +40 -33
- package/dist/api/trading/api.d.ts.map +1 -1
- package/dist/api/trading/api.js +59 -46
- package/dist/api/trading/api.js.map +1 -1
- package/dist/api/trading/index.d.ts +1 -1
- package/dist/api/vault/api.d.ts +90 -30
- package/dist/api/vault/api.d.ts.map +1 -1
- package/dist/api/vault/api.js +214 -67
- package/dist/api/vault/api.js.map +1 -1
- package/dist/api/vault/index.d.ts +1 -1
- package/dist/api/websocket/base-ws-client.d.ts +59 -0
- package/dist/api/websocket/base-ws-client.d.ts.map +1 -0
- package/dist/api/websocket/base-ws-client.js +211 -0
- package/dist/api/websocket/base-ws-client.js.map +1 -0
- package/dist/api/websocket/index.d.ts +8 -0
- package/dist/api/websocket/index.d.ts.map +1 -0
- package/dist/api/websocket/index.js +8 -0
- package/dist/api/websocket/index.js.map +1 -0
- package/dist/api/websocket/order-ws-client.d.ts +29 -0
- package/dist/api/websocket/order-ws-client.d.ts.map +1 -0
- package/dist/api/websocket/order-ws-client.js +128 -0
- package/dist/api/websocket/order-ws-client.js.map +1 -0
- package/dist/errors.d.ts +67 -76
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/networks.d.ts +1 -1
- package/dist/sdk.d.ts +4 -2
- package/dist/sdk.d.ts.map +1 -1
- package/dist/sdk.js +20 -14
- package/dist/sdk.js.map +1 -1
- package/package.json +16 -6
- package/dist/chains.d.ts +0 -110
- package/dist/chains.d.ts.map +0 -1
- package/dist/chains.js +0 -56
- package/dist/chains.js.map +0 -1
package/README.md
CHANGED
|
@@ -11,7 +11,7 @@ This package is currently in **early development** (v0.1.0).
|
|
|
11
11
|
|
|
12
12
|
---
|
|
13
13
|
|
|
14
|
-
Core SDK implementation for interacting with Monaco Protocol. This SDK provides a comprehensive implementation with Vault and
|
|
14
|
+
Core SDK implementation for interacting with Monaco Protocol. This SDK provides a comprehensive implementation with Authentication, Vault, Trading, Market, and Profile APIs, featuring JWT authentication and secure API Gateway integration.
|
|
15
15
|
|
|
16
16
|
## Installation
|
|
17
17
|
|
|
@@ -21,25 +21,38 @@ npm install @0xmonaco/core
|
|
|
21
21
|
|
|
22
22
|
## Features
|
|
23
23
|
|
|
24
|
+
### 🔐 **Authentication**
|
|
25
|
+
- **JWT-based Authentication**: Secure token-based authentication
|
|
26
|
+
- **Wallet Signature Verification**: EIP-712 signature-based login
|
|
27
|
+
- **Token Refresh**: Automatic token refresh and management
|
|
28
|
+
- **Session Management**: Secure session handling
|
|
29
|
+
|
|
24
30
|
### 🏦 **Vault Operations**
|
|
25
31
|
- **Token Approvals**: ERC20 token approvals for vault usage
|
|
26
|
-
- **Deposits**: Secure token deposits with
|
|
32
|
+
- **Deposits**: Secure token deposits with signature validation
|
|
27
33
|
- **Withdrawals**: Token withdrawals with cryptographic validation
|
|
28
34
|
- **Balance Queries**: Real-time vault balance tracking
|
|
29
|
-
- **Allowance Management**: Efficient approval checking and management
|
|
30
35
|
|
|
31
36
|
### 📈 **Trading Operations**
|
|
32
|
-
- **Order Types**: Limit
|
|
33
|
-
- **Order Management**: Place, replace
|
|
34
|
-
- **
|
|
35
|
-
- **
|
|
36
|
-
|
|
37
|
+
- **Order Types**: Limit and Market orders
|
|
38
|
+
- **Order Management**: Place, replace, and cancel orders
|
|
39
|
+
- **Order Queries**: Paginated orders, order history, and individual order details
|
|
40
|
+
- **Real-time Updates**: WebSocket support for live order updates
|
|
41
|
+
|
|
42
|
+
### 📊 **Market Data**
|
|
43
|
+
- **Trading Pairs**: Complete trading pair metadata
|
|
44
|
+
- **Market Information**: Fees, tick sizes, order limits
|
|
45
|
+
- **Pair Discovery**: Search and filter available markets
|
|
46
|
+
|
|
47
|
+
### 👤 **Profile Management**
|
|
48
|
+
- **User Profiles**: Account information and settings
|
|
49
|
+
- **Sub-accounts**: Multi-account management
|
|
50
|
+
- **Balance Tracking**: Cross-platform balance monitoring
|
|
37
51
|
|
|
38
52
|
### 🔐 **Security Features**
|
|
39
|
-
- **
|
|
40
|
-
- **
|
|
53
|
+
- **JWT Authentication**: Secure API access with token validation
|
|
54
|
+
- **EIP-712 Signatures**: Type-safe, structured data signing for authentication
|
|
41
55
|
- **API Gateway Integration**: Secure communication with Monaco backend
|
|
42
|
-
- **Nonce Protection**: Replay attack prevention
|
|
43
56
|
- **TLS Encryption**: Secure API communications
|
|
44
57
|
|
|
45
58
|
## Test Setup
|
|
@@ -110,80 +123,103 @@ const testnetConfig = NETWORK_ENDPOINTS.testnet; // Atlantic-2 testnet
|
|
|
110
123
|
|
|
111
124
|
```typescript
|
|
112
125
|
import { MonacoSDK } from "@0xmonaco/core";
|
|
126
|
+
import { createWalletClient, http } from "viem";
|
|
127
|
+
import { privateKeyToAccount } from "viem/accounts";
|
|
128
|
+
|
|
129
|
+
// Initialize the SDK with wallet client
|
|
130
|
+
const account = privateKeyToAccount("0x...");
|
|
131
|
+
const walletClient = createWalletClient({
|
|
132
|
+
account,
|
|
133
|
+
transport: http()
|
|
134
|
+
});
|
|
113
135
|
|
|
114
|
-
// Initialize the SDK with private key
|
|
115
136
|
const monaco = new MonacoSDK({
|
|
116
|
-
|
|
137
|
+
walletClient,
|
|
117
138
|
network: "mainnet", // or "testnet"
|
|
118
139
|
});
|
|
119
140
|
|
|
141
|
+
// Authentication
|
|
142
|
+
async function authExample() {
|
|
143
|
+
// Login with client ID
|
|
144
|
+
const authState = await monaco.login("your-client-id");
|
|
145
|
+
console.log("Authenticated:", authState.user);
|
|
146
|
+
|
|
147
|
+
// Check authentication status
|
|
148
|
+
console.log("Is authenticated:", monaco.isAuthenticated());
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
// Market Data
|
|
152
|
+
async function marketExample() {
|
|
153
|
+
// Get all trading pairs
|
|
154
|
+
const pairs = await monaco.market.getTradingPairs();
|
|
155
|
+
console.log("Available pairs:", pairs.length);
|
|
156
|
+
|
|
157
|
+
// Get specific trading pair
|
|
158
|
+
const btcPair = await monaco.market.getTradingPairBySymbol("BTC/USDC");
|
|
159
|
+
console.log("BTC pair:", btcPair?.symbol, btcPair?.maker_fee_bps);
|
|
160
|
+
}
|
|
161
|
+
|
|
120
162
|
// Vault Operations
|
|
121
163
|
async function vaultExample() {
|
|
122
164
|
// Check vault balance
|
|
123
165
|
const balance = await monaco.vault.getBalance("0x..."); // token address
|
|
124
166
|
console.log("Vault balance:", balance.formatted, balance.symbol);
|
|
125
167
|
|
|
126
|
-
//
|
|
127
|
-
const
|
|
128
|
-
|
|
129
|
-
// Approve vault to spend tokens
|
|
130
|
-
const approval = await monaco.vault.approve("0x...", parseEther("1000"));
|
|
131
|
-
console.log("Approval transaction:", approval.hash);
|
|
132
|
-
}
|
|
168
|
+
// Approve vault to spend tokens
|
|
169
|
+
const approval = await monaco.vault.approve("0x...", parseEther("1000"));
|
|
170
|
+
console.log("Approval transaction:", approval.hash);
|
|
133
171
|
|
|
134
172
|
// Deposit tokens
|
|
135
173
|
const result = await monaco.vault.deposit("0x...", parseEther("100"));
|
|
136
174
|
console.log("Deposit transaction:", result.hash);
|
|
175
|
+
|
|
176
|
+
// Withdraw tokens
|
|
177
|
+
const withdrawal = await monaco.vault.withdraw("0x...", parseEther("50"));
|
|
178
|
+
console.log("Withdrawal transaction:", withdrawal.hash);
|
|
137
179
|
}
|
|
138
180
|
|
|
139
181
|
// Trading Operations
|
|
140
182
|
async function tradingExample() {
|
|
141
183
|
// Place a limit order
|
|
142
184
|
const order = await monaco.trading.placeLimitOrder(
|
|
143
|
-
"
|
|
144
|
-
"
|
|
145
|
-
|
|
146
|
-
|
|
185
|
+
"BTC/USDC", // market
|
|
186
|
+
"BUY", // side
|
|
187
|
+
"0.001", // quantity
|
|
188
|
+
"50000" // price
|
|
147
189
|
);
|
|
148
|
-
console.log("Order placed:", order.
|
|
190
|
+
console.log("Order placed:", order.order_id);
|
|
149
191
|
|
|
150
|
-
// Place a market order
|
|
192
|
+
// Place a market order
|
|
151
193
|
const marketOrder = await monaco.trading.placeMarketOrder(
|
|
152
|
-
"
|
|
153
|
-
"
|
|
154
|
-
|
|
155
|
-
{ slippageToleranceBps: 50 } // 0.5% max slippage (50 basis points)
|
|
156
|
-
);
|
|
157
|
-
console.log("Market order placed:", marketOrder.orderId);
|
|
158
|
-
|
|
159
|
-
// Place a limit order with IOC time in force
|
|
160
|
-
const iocOrder = await monaco.trading.placeLimitOrder(
|
|
161
|
-
"ETH-USDC",
|
|
162
|
-
"buy",
|
|
163
|
-
parseEther("1.0"),
|
|
164
|
-
parseUnits("2000", 6),
|
|
165
|
-
{ timeInForce: "IOC" } // Immediate-or-Cancel
|
|
194
|
+
"BTC/USDC",
|
|
195
|
+
"SELL",
|
|
196
|
+
"0.001"
|
|
166
197
|
);
|
|
167
|
-
console.log("
|
|
168
|
-
|
|
169
|
-
// Get
|
|
170
|
-
const
|
|
171
|
-
|
|
198
|
+
console.log("Market order placed:", marketOrder.order_id);
|
|
199
|
+
|
|
200
|
+
// Get paginated orders
|
|
201
|
+
const orders = await monaco.trading.getPaginatedOrders({
|
|
202
|
+
status: "PENDING",
|
|
203
|
+
trading_pair: "BTC/USDC",
|
|
204
|
+
page: 1,
|
|
205
|
+
page_size: 10
|
|
206
|
+
});
|
|
207
|
+
console.log("Orders:", orders.data.length);
|
|
172
208
|
|
|
173
|
-
// Replace an order
|
|
209
|
+
// Replace an order
|
|
174
210
|
const replaceResult = await monaco.trading.replaceOrder("order-id", {
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
size: parseEther("2.0"),
|
|
178
|
-
price: parseUnits("2100", 6),
|
|
179
|
-
type: "limit",
|
|
180
|
-
timeInForce: "FOK" // Fill-or-Kill
|
|
211
|
+
quantity: "0.002",
|
|
212
|
+
price: "51000"
|
|
181
213
|
});
|
|
182
|
-
console.log("Order replaced:", replaceResult.
|
|
214
|
+
console.log("Order replaced:", replaceResult.order_id);
|
|
183
215
|
|
|
184
216
|
// Cancel an order
|
|
185
217
|
const cancelResult = await monaco.trading.cancelOrder("order-id");
|
|
186
218
|
console.log("Order cancelled:", cancelResult.status);
|
|
219
|
+
|
|
220
|
+
// Get specific order
|
|
221
|
+
const orderDetails = await monaco.trading.getOrder("order-id");
|
|
222
|
+
console.log("Order details:", orderDetails.order);
|
|
187
223
|
}
|
|
188
224
|
```
|
|
189
225
|
|
|
@@ -195,12 +231,31 @@ The main SDK class that provides access to all protocol features.
|
|
|
195
231
|
|
|
196
232
|
```typescript
|
|
197
233
|
class MonacoSDK {
|
|
234
|
+
readonly applications: ApplicationsAPI;
|
|
235
|
+
readonly auth: AuthAPI;
|
|
198
236
|
readonly vault: VaultAPI;
|
|
199
237
|
readonly trading: TradingAPI;
|
|
238
|
+
readonly market: MarketAPI;
|
|
239
|
+
readonly profile: ProfileAPI;
|
|
240
|
+
readonly websocket: OrderWebSocketClient;
|
|
200
241
|
readonly walletClient: WalletClient;
|
|
201
242
|
readonly publicClient: PublicClient;
|
|
202
243
|
|
|
203
244
|
constructor(config: SDKConfig);
|
|
245
|
+
|
|
246
|
+
// Authentication
|
|
247
|
+
login(clientId: string): Promise<AuthState>;
|
|
248
|
+
logout(): Promise<void>;
|
|
249
|
+
refreshAuth(): Promise<AuthState>;
|
|
250
|
+
getAuthState(): AuthState | undefined;
|
|
251
|
+
isAuthenticated(): boolean;
|
|
252
|
+
|
|
253
|
+
// Network utilities
|
|
254
|
+
isConnected(): boolean;
|
|
255
|
+
getAccountAddress(): string;
|
|
256
|
+
getNetwork(): Network;
|
|
257
|
+
getChainId(): number;
|
|
258
|
+
waitForTransaction(hash: string, confirmations?: number, timeout?: number): Promise<TransactionReceipt>;
|
|
204
259
|
}
|
|
205
260
|
```
|
|
206
261
|
|
|
@@ -208,17 +263,14 @@ class MonacoSDK {
|
|
|
208
263
|
|
|
209
264
|
```typescript
|
|
210
265
|
interface SDKConfig {
|
|
211
|
-
/**
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
/** Viem Account for advanced account management */
|
|
215
|
-
signer?: PrivateKeyAccount;
|
|
216
|
-
|
|
217
|
-
/** Custom Account implementation (overrides privateKey/signer) */
|
|
218
|
-
account?: Account;
|
|
266
|
+
/** Wallet client for signing operations */
|
|
267
|
+
walletClient: WalletClient;
|
|
219
268
|
|
|
220
269
|
/** Optional network override (defaults to 'mainnet') */
|
|
221
270
|
network?: Network;
|
|
271
|
+
|
|
272
|
+
/** Optional transport for the public client */
|
|
273
|
+
transport?: Transport;
|
|
222
274
|
}
|
|
223
275
|
```
|
|
224
276
|
|
|
@@ -227,58 +279,73 @@ interface SDKConfig {
|
|
|
227
279
|
The vault API provides secure token management operations:
|
|
228
280
|
|
|
229
281
|
```typescript
|
|
230
|
-
interface VaultAPI {
|
|
231
|
-
//
|
|
232
|
-
|
|
282
|
+
interface VaultAPI extends BaseAPI {
|
|
283
|
+
// Vault address management
|
|
284
|
+
setVaultAddress(vaultAddress: Address): void;
|
|
285
|
+
getVaultAddress(): Address | undefined;
|
|
233
286
|
|
|
234
|
-
//
|
|
235
|
-
|
|
236
|
-
|
|
287
|
+
// Token operations
|
|
288
|
+
approve(token: string, amount: bigint, autoWait?: boolean): Promise<TransactionResult>;
|
|
289
|
+
deposit(token: string, amount: bigint, autoWait?: boolean): Promise<TransactionResult>;
|
|
290
|
+
withdraw(token: string, amount: bigint, autoWait?: boolean): Promise<TransactionResult>;
|
|
237
291
|
|
|
238
|
-
// Balance
|
|
292
|
+
// Balance queries
|
|
239
293
|
getBalance(token: string): Promise<Balance>;
|
|
240
|
-
getAllowance(token: string): Promise<bigint>;
|
|
241
|
-
needsApproval(token: string, amount: bigint): Promise<boolean>;
|
|
242
294
|
}
|
|
243
295
|
```
|
|
244
296
|
|
|
245
297
|
### Trading API
|
|
246
298
|
|
|
247
|
-
The trading API provides comprehensive order management
|
|
248
|
-
|
|
249
|
-
#### Order Types and Execution Policies
|
|
250
|
-
|
|
251
|
-
- **Limit Orders**: Standard limit orders with optional `timeInForce` parameter
|
|
252
|
-
- `GTC` (Good Till Cancelled): Default behavior, order stays active until filled or cancelled
|
|
253
|
-
- `IOC` (Immediate or Cancel): Order fills what it can immediately, then cancels the rest
|
|
254
|
-
- `FOK` (Fill or Kill): Order must fill completely or not at all
|
|
255
|
-
|
|
256
|
-
- **Market Orders**: Immediate execution with optional slippage protection
|
|
257
|
-
- **Post-Only Orders**: Limit orders that never execute immediately, only add liquidity
|
|
258
|
-
|
|
259
|
-
#### Order Management
|
|
260
|
-
|
|
261
|
-
- **Replace Orders**: Cancel existing order and place a new one (atomic operation)
|
|
262
|
-
- **Cancel Orders**: Cancel any open order by ID
|
|
299
|
+
The trading API provides comprehensive order management:
|
|
263
300
|
|
|
264
301
|
```typescript
|
|
265
|
-
interface TradingAPI {
|
|
302
|
+
interface TradingAPI extends BaseAPI {
|
|
266
303
|
// Order placement
|
|
267
|
-
placeLimitOrder(
|
|
268
|
-
|
|
269
|
-
|
|
304
|
+
placeLimitOrder(
|
|
305
|
+
market: string,
|
|
306
|
+
side: OrderSide,
|
|
307
|
+
quantity: string,
|
|
308
|
+
price: string,
|
|
309
|
+
options?: {
|
|
310
|
+
tradingMode?: string;
|
|
311
|
+
useMasterBalance?: boolean;
|
|
312
|
+
expirationDate?: string;
|
|
313
|
+
}
|
|
314
|
+
): Promise<CreateOrderResponse>;
|
|
315
|
+
|
|
316
|
+
placeMarketOrder(
|
|
317
|
+
market: string,
|
|
318
|
+
side: OrderSide,
|
|
319
|
+
quantity: string,
|
|
320
|
+
options?: { tradingMode?: string; }
|
|
321
|
+
): Promise<CreateOrderResponse>;
|
|
270
322
|
|
|
271
323
|
// Order management
|
|
272
|
-
replaceOrder(originalOrderId: string, newOrder: { market: string; side: OrderSide; size: bigint; price?: bigint; type: OrderType; timeInForce?: TimeInForce }): Promise<OrderResponse>;
|
|
273
324
|
cancelOrder(orderId: string): Promise<CancelOrderResponse>;
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
325
|
+
replaceOrder(
|
|
326
|
+
orderId: string,
|
|
327
|
+
newOrder: {
|
|
328
|
+
price?: string;
|
|
329
|
+
quantity: string;
|
|
330
|
+
useMasterBalance?: boolean;
|
|
331
|
+
}
|
|
332
|
+
): Promise<ReplaceOrderResponse>;
|
|
277
333
|
|
|
278
334
|
// Order queries
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
335
|
+
getPaginatedOrders(params?: GetPaginatedOrdersParams): Promise<GetPaginatedOrdersResponse>;
|
|
336
|
+
getOrder(orderId: string): Promise<GetOrderResponse>;
|
|
337
|
+
}
|
|
338
|
+
```
|
|
339
|
+
|
|
340
|
+
### Market API
|
|
341
|
+
|
|
342
|
+
The market API provides access to trading pair metadata:
|
|
343
|
+
|
|
344
|
+
```typescript
|
|
345
|
+
interface MarketAPI extends BaseAPI {
|
|
346
|
+
// Market data
|
|
347
|
+
getTradingPairs(): Promise<TradingPair[]>;
|
|
348
|
+
getTradingPairBySymbol(symbol: string): Promise<TradingPair | undefined>;
|
|
282
349
|
}
|
|
283
350
|
```
|
|
284
351
|
|
|
@@ -322,11 +389,16 @@ try {
|
|
|
322
389
|
packages/core/
|
|
323
390
|
├── src/ # Source code
|
|
324
391
|
│ ├── api/ # API implementations
|
|
392
|
+
│ │ ├── applications/ # Applications API
|
|
393
|
+
│ │ ├── auth/ # Authentication API
|
|
394
|
+
│ │ ├── base.ts # Base API class
|
|
395
|
+
│ │ ├── market/ # Market data API
|
|
396
|
+
│ │ ├── profile/ # Profile management API
|
|
397
|
+
│ │ ├── trading/ # Trading operations API
|
|
325
398
|
│ │ ├── vault/ # Vault operations API
|
|
326
|
-
│ │
|
|
327
|
-
│ │ └──
|
|
328
|
-
│
|
|
329
|
-
│ ├── chains.ts # Chain definitions (Sei mainnet/testnet)
|
|
399
|
+
│ │ ├── websocket/ # WebSocket client
|
|
400
|
+
│ │ └── index.ts # API exports
|
|
401
|
+
│ ├── constants/ # Constants and configurations
|
|
330
402
|
│ ├── errors.ts # Error classes and codes
|
|
331
403
|
│ ├── networks.ts # Network endpoint configurations
|
|
332
404
|
│ ├── sdk.ts # Main SDK implementation
|
|
@@ -371,22 +443,22 @@ pnpm lint --filter @0xmonaco/core
|
|
|
371
443
|
|
|
372
444
|
## Security Features
|
|
373
445
|
|
|
374
|
-
###
|
|
375
|
-
- **
|
|
376
|
-
- **
|
|
377
|
-
- **
|
|
378
|
-
- **
|
|
446
|
+
### JWT Authentication
|
|
447
|
+
- **Token-based security**: Secure JWT tokens for API access
|
|
448
|
+
- **EIP-712 login**: Wallet signature-based authentication
|
|
449
|
+
- **Automatic refresh**: Seamless token renewal
|
|
450
|
+
- **Session management**: Secure session handling
|
|
379
451
|
|
|
380
452
|
### API Gateway Integration
|
|
381
453
|
- **Secure communication**: TLS encryption for all API calls
|
|
382
|
-
- **
|
|
454
|
+
- **Token validation**: Backend validates all JWT tokens
|
|
383
455
|
- **Rate limiting**: Protection against abuse
|
|
384
456
|
- **Audit logging**: Complete transaction history
|
|
385
457
|
|
|
386
458
|
### On-chain Security
|
|
387
459
|
- **Smart contract validation**: All operations validated on-chain
|
|
460
|
+
- **Signature verification**: EIP-712 signatures for authentication
|
|
388
461
|
- **Multi-signature support**: Advanced security for institutional users
|
|
389
|
-
- **Emergency stops**: Circuit breakers for critical situations
|
|
390
462
|
|
|
391
463
|
## Performance Considerations
|
|
392
464
|
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Applications API Implementation
|
|
3
|
+
*
|
|
4
|
+
* Handles application configuration operations. All operations go through
|
|
5
|
+
* the API Gateway and require valid authentication.
|
|
6
|
+
*
|
|
7
|
+
* This class provides an interface for retrieving application configuration
|
|
8
|
+
* on the Monaco protocol.
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```typescript
|
|
12
|
+
* const applicationsAPI = new ApplicationsAPIImpl(apiUrl);
|
|
13
|
+
*
|
|
14
|
+
* // Get application configuration
|
|
15
|
+
* const config = await applicationsAPI.getApplicationConfig();
|
|
16
|
+
* console.log(`App name: ${config.name}`);
|
|
17
|
+
* console.log(`Allowed origins: ${config.allowedOrigins.join(', ')}`);
|
|
18
|
+
* ```
|
|
19
|
+
*/
|
|
20
|
+
import type { ApplicationConfigResponse, ApplicationsAPI } from "@0xmonaco/types";
|
|
21
|
+
import { BaseAPI } from "../base";
|
|
22
|
+
export declare class ApplicationsAPIImpl extends BaseAPI implements ApplicationsAPI {
|
|
23
|
+
/**
|
|
24
|
+
* Gets the configuration for the authenticated application.
|
|
25
|
+
*
|
|
26
|
+
* Returns the application's configuration including allowed origins,
|
|
27
|
+
* webhook URL, and other settings. Requires valid authentication.
|
|
28
|
+
*
|
|
29
|
+
* @returns Promise resolving to the application configuration
|
|
30
|
+
* @throws {APIError} When the request fails or authentication is invalid
|
|
31
|
+
*
|
|
32
|
+
* @example
|
|
33
|
+
* ```typescript
|
|
34
|
+
* const config = await applicationsAPI.getApplicationConfig();
|
|
35
|
+
* console.log(`Application: ${config.name}`);
|
|
36
|
+
* console.log(`ID: ${config.id}`);
|
|
37
|
+
* console.log(`Allowed origins: ${config.allowedOrigins.join(', ')}`);
|
|
38
|
+
* if (config.webhookUrl) {
|
|
39
|
+
* console.log(`Webhook: ${config.webhookUrl}`);
|
|
40
|
+
* }
|
|
41
|
+
* ```
|
|
42
|
+
*/
|
|
43
|
+
getApplicationConfig(): Promise<ApplicationConfigResponse>;
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=api.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/api/applications/api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EACX,yBAAyB,EACzB,eAAe,EACf,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,qBAAa,mBAAoB,SAAQ,OAAQ,YAAW,eAAe;IAC1E;;;;;;;;;;;;;;;;;;;OAmBG;IACG,oBAAoB,IAAI,OAAO,CAAC,yBAAyB,CAAC;CAuBhE"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Applications API Implementation
|
|
3
|
+
*
|
|
4
|
+
* Handles application configuration operations. All operations go through
|
|
5
|
+
* the API Gateway and require valid authentication.
|
|
6
|
+
*
|
|
7
|
+
* This class provides an interface for retrieving application configuration
|
|
8
|
+
* on the Monaco protocol.
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```typescript
|
|
12
|
+
* const applicationsAPI = new ApplicationsAPIImpl(apiUrl);
|
|
13
|
+
*
|
|
14
|
+
* // Get application configuration
|
|
15
|
+
* const config = await applicationsAPI.getApplicationConfig();
|
|
16
|
+
* console.log(`App name: ${config.name}`);
|
|
17
|
+
* console.log(`Allowed origins: ${config.allowedOrigins.join(', ')}`);
|
|
18
|
+
* ```
|
|
19
|
+
*/
|
|
20
|
+
import { APIError } from "../../errors";
|
|
21
|
+
import { BaseAPI } from "../base";
|
|
22
|
+
export class ApplicationsAPIImpl extends BaseAPI {
|
|
23
|
+
/**
|
|
24
|
+
* Gets the configuration for the authenticated application.
|
|
25
|
+
*
|
|
26
|
+
* Returns the application's configuration including allowed origins,
|
|
27
|
+
* webhook URL, and other settings. Requires valid authentication.
|
|
28
|
+
*
|
|
29
|
+
* @returns Promise resolving to the application configuration
|
|
30
|
+
* @throws {APIError} When the request fails or authentication is invalid
|
|
31
|
+
*
|
|
32
|
+
* @example
|
|
33
|
+
* ```typescript
|
|
34
|
+
* const config = await applicationsAPI.getApplicationConfig();
|
|
35
|
+
* console.log(`Application: ${config.name}`);
|
|
36
|
+
* console.log(`ID: ${config.id}`);
|
|
37
|
+
* console.log(`Allowed origins: ${config.allowedOrigins.join(', ')}`);
|
|
38
|
+
* if (config.webhookUrl) {
|
|
39
|
+
* console.log(`Webhook: ${config.webhookUrl}`);
|
|
40
|
+
* }
|
|
41
|
+
* ```
|
|
42
|
+
*/
|
|
43
|
+
async getApplicationConfig() {
|
|
44
|
+
try {
|
|
45
|
+
const data = await this.makeAuthenticatedRequest("/api/v1/applications/config", {
|
|
46
|
+
method: "GET",
|
|
47
|
+
});
|
|
48
|
+
return {
|
|
49
|
+
id: data.id,
|
|
50
|
+
name: data.name,
|
|
51
|
+
allowedOrigins: data.allowed_origins,
|
|
52
|
+
webhookUrl: data.webhook_url,
|
|
53
|
+
vaultContractAddress: data.vault_contract_address,
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
catch (error) {
|
|
57
|
+
throw new APIError("Failed to get application config from API", "/api/v1/applications/config", undefined);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
//# sourceMappingURL=api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/api/applications/api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAMH,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,MAAM,OAAO,mBAAoB,SAAQ,OAAO;IAC/C;;;;;;;;;;;;;;;;;;;OAmBG;IACH,KAAK,CAAC,oBAAoB;QACzB,IAAI,CAAC;YACJ,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAC/C,6BAA6B,EAC7B;gBACC,MAAM,EAAE,KAAK;aACb,CACD,CAAC;YACF,OAAO;gBACN,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,cAAc,EAAE,IAAI,CAAC,eAAe;gBACpC,UAAU,EAAE,IAAI,CAAC,WAAW;gBAC5B,oBAAoB,EAAE,IAAI,CAAC,sBAAsB;aACjD,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,QAAQ,CACjB,2CAA2C,EAC3C,6BAA6B,EAC7B,SAAS,CACT,CAAC;QACH,CAAC;IACF,CAAC;CACD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/applications/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,YAAY,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/applications/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC"}
|
package/dist/api/auth/api.d.ts
CHANGED
|
@@ -177,22 +177,22 @@ export declare class AuthAPIImpl implements AuthAPI {
|
|
|
177
177
|
*/
|
|
178
178
|
refreshToken(refreshToken: string): Promise<TokenRefreshResponse>;
|
|
179
179
|
/**
|
|
180
|
-
* Revokes a
|
|
180
|
+
* Revokes a session token.
|
|
181
181
|
*
|
|
182
|
-
* Invalidates a
|
|
182
|
+
* Invalidates a session token, preventing it from being used to obtain
|
|
183
183
|
* new access tokens. This is useful for logout functionality or when
|
|
184
184
|
* a token has been compromised.
|
|
185
185
|
*
|
|
186
|
-
* @param
|
|
186
|
+
* @param sessionId - The session id to revoke
|
|
187
187
|
* @returns Promise resolving when the token is revoked
|
|
188
188
|
* @throws {APIError} When token revocation fails
|
|
189
189
|
*
|
|
190
190
|
* @example
|
|
191
191
|
* ```typescript
|
|
192
|
-
* await authAPI.revokeToken(
|
|
192
|
+
* await authAPI.revokeToken(sessionId);
|
|
193
193
|
* console.log("Token revoked successfully");
|
|
194
194
|
* ```
|
|
195
195
|
*/
|
|
196
|
-
revokeToken(
|
|
196
|
+
revokeToken(sessionId: string): Promise<void>;
|
|
197
197
|
}
|
|
198
198
|
//# sourceMappingURL=api.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/api/auth/api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,OAAO,KAAK,EACX,OAAO,EACP,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,cAAc,EACd,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AAGhD,qBAAa,WAAY,YAAW,OAAO;IASzC,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,KAAK;IAVvB;;;;;;OAMG;gBAEe,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,KAAK;IAG9B;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAgC7D;;;;;;;;;;;;;;;;;OAiBG;IACG,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA0BrD;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,eAAe,CACpB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,GACd,OAAO,CAAC,iBAAiB,CAAC;IAqC7B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgCG;IACG,eAAe,CACpB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,GACd,OAAO,CAAC,cAAc,CAAC;IA4C1B;;;;;;;;;;;;;;;;OAgBG;IACG,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAwC1E;;;;;;;;;;;;;;;;;OAiBG;IACG,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAkCvE;;;;;;;;;;;;;;;;OAgBG;IACG,WAAW,CAAC,
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/api/auth/api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,OAAO,KAAK,EACX,OAAO,EACP,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,cAAc,EACd,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AAGhD,qBAAa,WAAY,YAAW,OAAO;IASzC,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,KAAK;IAVvB;;;;;;OAMG;gBAEe,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,KAAK;IAG9B;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAgC7D;;;;;;;;;;;;;;;;;OAiBG;IACG,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA0BrD;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,eAAe,CACpB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,GACd,OAAO,CAAC,iBAAiB,CAAC;IAqC7B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgCG;IACG,eAAe,CACpB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,GACd,OAAO,CAAC,cAAc,CAAC;IA4C1B;;;;;;;;;;;;;;;;OAgBG;IACG,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAwC1E;;;;;;;;;;;;;;;;;OAiBG;IACG,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAkCvE;;;;;;;;;;;;;;;;OAgBG;IACG,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CA2BnD"}
|
package/dist/api/auth/api.js
CHANGED
|
@@ -320,23 +320,23 @@ export class AuthAPIImpl {
|
|
|
320
320
|
}
|
|
321
321
|
}
|
|
322
322
|
/**
|
|
323
|
-
* Revokes a
|
|
323
|
+
* Revokes a session token.
|
|
324
324
|
*
|
|
325
|
-
* Invalidates a
|
|
325
|
+
* Invalidates a session token, preventing it from being used to obtain
|
|
326
326
|
* new access tokens. This is useful for logout functionality or when
|
|
327
327
|
* a token has been compromised.
|
|
328
328
|
*
|
|
329
|
-
* @param
|
|
329
|
+
* @param sessionId - The session id to revoke
|
|
330
330
|
* @returns Promise resolving when the token is revoked
|
|
331
331
|
* @throws {APIError} When token revocation fails
|
|
332
332
|
*
|
|
333
333
|
* @example
|
|
334
334
|
* ```typescript
|
|
335
|
-
* await authAPI.revokeToken(
|
|
335
|
+
* await authAPI.revokeToken(sessionId);
|
|
336
336
|
* console.log("Token revoked successfully");
|
|
337
337
|
* ```
|
|
338
338
|
*/
|
|
339
|
-
async revokeToken(
|
|
339
|
+
async revokeToken(sessionId) {
|
|
340
340
|
try {
|
|
341
341
|
const response = await fetch(`${this.apiUrl}/api/v1/auth/revoke`, {
|
|
342
342
|
method: "POST",
|
|
@@ -344,7 +344,7 @@ export class AuthAPIImpl {
|
|
|
344
344
|
"Content-Type": "application/json",
|
|
345
345
|
},
|
|
346
346
|
body: JSON.stringify({
|
|
347
|
-
|
|
347
|
+
session_id: sessionId,
|
|
348
348
|
}),
|
|
349
349
|
});
|
|
350
350
|
if (!response.ok) {
|
package/dist/api/auth/api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/api/auth/api.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/api/auth/api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAUH,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAE5D,MAAM,OAAO,WAAW;IACvB;;;;;;OAMG;IACH,YACkB,YAA0B,EAC1B,MAAc,EACd,KAAY;QAFZ,iBAAY,GAAZ,YAAY,CAAc;QAC1B,WAAM,GAAN,MAAM,CAAQ;QACd,UAAK,GAAL,KAAK,CAAO;IAC3B,CAAC;IAEJ;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,KAAK,CAAC,YAAY,CAAC,QAAgB;QAClC,IAAI,CAAC;YACJ,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC;YAC1C,IAAI,CAAC,OAAO,EAAE,CAAC;gBACd,MAAM,IAAI,kBAAkB,CAC3B,uCAAuC,EACvC,SAAS,CACT,CAAC;YACH,CAAC;YAED,sBAAsB;YACtB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAExE,gCAAgC;YAChC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YAE9D,qCAAqC;YACrC,OAAO,MAAM,IAAI,CAAC,eAAe,CAChC,OAAO,CAAC,OAAO,EACf,SAAS,EACT,SAAS,CAAC,KAAK,EACf,QAAQ,CACR,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,QAAQ,CACjB,wCAAwC,EACxC,GAAG,IAAI,CAAC,MAAM,cAAc,EAC5B,SAAS,CACT,CAAC;QACH,CAAC;IACF,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,KAAK,CAAC,aAAa,CAAC,OAAe;QAClC,IAAI,CAAC;YACJ,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC;YAC1C,IAAI,CAAC,OAAO,EAAE,CAAC;gBACd,MAAM,IAAI,kBAAkB,CAC3B,uCAAuC,EACvC,SAAS,CACT,CAAC;YACH,CAAC;YAED,2CAA2C;YAC3C,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC;gBACrD,OAAO;gBACP,OAAO;aACP,CAAC,CAAC;YAEH,OAAO,SAAS,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,QAAQ,CACjB,kCAAkC,EAClC,eAAe,EACf,SAAS,CACT,CAAC;QACH,CAAC;IACF,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,KAAK,CAAC,eAAe,CACpB,OAAe,EACf,QAAgB;QAEhB,IAAI,CAAC;YACJ,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,wBAAwB,EAAE;gBACpE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACR,cAAc,EAAE,kBAAkB;iBAClC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACpB,OAAO;oBACP,SAAS,EAAE,QAAQ;oBACnB,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE;iBACvB,CAAC;aACF,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBAClB,MAAM,IAAI,QAAQ,CACjB,uBAAuB,QAAQ,CAAC,MAAM,EAAE,EACxC,GAAG,IAAI,CAAC,MAAM,wBAAwB,EACtC,QAAQ,CAAC,MAAM,CACf,CAAC;YACH,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnC,OAAO;gBACN,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,SAAS,EAAE,IAAI,CAAC,UAAU;aAC1B,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,QAAQ,CACjB,2CAA2C,EAC3C,GAAG,IAAI,CAAC,MAAM,wBAAwB,EACtC,SAAS,CACT,CAAC;QACH,CAAC;IACF,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgCG;IACH,KAAK,CAAC,eAAe,CACpB,OAAe,EACf,SAAiB,EACjB,KAAa,EACb,QAAgB;QAEhB,IAAI,CAAC;YACJ,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,qBAAqB,EAAE;gBACjE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACR,cAAc,EAAE,kBAAkB;iBAClC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACpB,OAAO;oBACP,SAAS;oBACT,KAAK;oBACL,SAAS,EAAE,QAAQ;oBACnB,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE;iBACvB,CAAC;aACF,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBAClB,MAAM,IAAI,QAAQ,CACjB,uBAAuB,QAAQ,CAAC,MAAM,EAAE,EACxC,GAAG,IAAI,CAAC,MAAM,qBAAqB,EACnC,QAAQ,CAAC,MAAM,CACf,CAAC;YACH,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnC,OAAO;gBACN,WAAW,EAAE,IAAI,CAAC,YAAY;gBAC9B,YAAY,EAAE,IAAI,CAAC,aAAa;gBAChC,SAAS,EAAE,IAAI,CAAC,UAAU;gBAC1B,IAAI,EAAE;oBACL,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;oBAChB,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO;oBAC1B,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ;iBAC5B;aACD,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,QAAQ,CACjB,4BAA4B,EAC5B,GAAG,IAAI,CAAC,MAAM,qBAAqB,EACnC,SAAS,CACT,CAAC;QACH,CAAC;IACF,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,KAAK,CAAC,mBAAmB,CAAC,SAAiB;QAC1C,IAAI,CAAC;YACJ,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,sBAAsB,EAAE;gBAClE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACR,cAAc,EAAE,kBAAkB;iBAClC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACpB,UAAU,EAAE,SAAS;oBACrB,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE;iBACvB,CAAC;aACF,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBAClB,MAAM,IAAI,QAAQ,CACjB,uBAAuB,QAAQ,CAAC,MAAM,EAAE,EACxC,GAAG,IAAI,CAAC,MAAM,sBAAsB,EACpC,QAAQ,CAAC,MAAM,CACf,CAAC;YACH,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnC,OAAO;gBACN,WAAW,EAAE,IAAI,CAAC,YAAY;gBAC9B,SAAS,EAAE,IAAI,CAAC,UAAU;gBAC1B,WAAW,EAAE;oBACZ,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,EAAE;oBACvB,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI;oBAC3B,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,SAAS;iBACpC;aACD,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,QAAQ,CACjB,wCAAwC,EACxC,GAAG,IAAI,CAAC,MAAM,sBAAsB,EACpC,SAAS,CACT,CAAC;QACH,CAAC;IACF,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,KAAK,CAAC,YAAY,CAAC,YAAoB;QACtC,IAAI,CAAC;YACJ,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,sBAAsB,EAAE;gBAClE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACR,cAAc,EAAE,kBAAkB;iBAClC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACpB,aAAa,EAAE,YAAY;iBAC3B,CAAC;aACF,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBAClB,MAAM,IAAI,QAAQ,CACjB,uBAAuB,QAAQ,CAAC,MAAM,EAAE,EACxC,GAAG,IAAI,CAAC,MAAM,sBAAsB,EACpC,QAAQ,CAAC,MAAM,CACf,CAAC;YACH,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnC,OAAO;gBACN,WAAW,EAAE,IAAI,CAAC,YAAY;gBAC9B,SAAS,EAAE,IAAI,CAAC,UAAU;aAC1B,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,QAAQ,CACjB,yBAAyB,EACzB,GAAG,IAAI,CAAC,MAAM,sBAAsB,EACpC,SAAS,CACT,CAAC;QACH,CAAC;IACF,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,KAAK,CAAC,WAAW,CAAC,SAAiB;QAClC,IAAI,CAAC;YACJ,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,qBAAqB,EAAE;gBACjE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACR,cAAc,EAAE,kBAAkB;iBAClC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACpB,UAAU,EAAE,SAAS;iBACrB,CAAC;aACF,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBAClB,MAAM,IAAI,QAAQ,CACjB,uBAAuB,QAAQ,CAAC,MAAM,EAAE,EACxC,GAAG,IAAI,CAAC,MAAM,qBAAqB,EACnC,QAAQ,CAAC,MAAM,CACf,CAAC;YACH,CAAC;QACF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,QAAQ,CACjB,wBAAwB,EACxB,GAAG,IAAI,CAAC,MAAM,qBAAqB,EACnC,SAAS,CACT,CAAC;QACH,CAAC;IACF,CAAC;CACD"}
|