cocobase 1.3.5 → 1.4.0
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/dist/cjs/core/auth.d.ts +116 -9
- package/dist/cjs/core/auth.d.ts.map +1 -1
- package/dist/cjs/core/auth.js +169 -7
- package/dist/cjs/core/auth.js.map +1 -1
- package/dist/cjs/core/core.d.ts +48 -5
- package/dist/cjs/core/core.d.ts.map +1 -1
- package/dist/cjs/core/core.js +3 -0
- package/dist/cjs/core/core.js.map +1 -1
- package/dist/cjs/index.d.ts +3 -1
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +3 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/realtime/multiplayer.d.ts +228 -0
- package/dist/cjs/realtime/multiplayer.d.ts.map +1 -0
- package/dist/cjs/realtime/multiplayer.js +404 -0
- package/dist/cjs/realtime/multiplayer.js.map +1 -0
- package/dist/cjs/types/types.d.ts +31 -1
- package/dist/cjs/types/types.d.ts.map +1 -1
- package/dist/core/auth.d.ts +116 -9
- package/dist/core/auth.d.ts.map +1 -1
- package/dist/core/auth.js +169 -7
- package/dist/core/auth.js.map +1 -1
- package/dist/core/core.d.ts +48 -5
- package/dist/core/core.d.ts.map +1 -1
- package/dist/core/core.js +3 -0
- package/dist/core/core.js.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/realtime/multiplayer.d.ts +228 -0
- package/dist/realtime/multiplayer.d.ts.map +1 -0
- package/dist/realtime/multiplayer.js +399 -0
- package/dist/realtime/multiplayer.js.map +1 -0
- package/dist/types/types.d.ts +31 -1
- package/dist/types/types.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.js","sourceRoot":"","sources":["../../../src/core/core.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"core.js","sourceRoot":"","sources":["../../../src/core/core.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/index.d.ts
CHANGED
|
@@ -3,7 +3,9 @@ import type { CocobaseConfig, Document, Collection } from "./types/types.js";
|
|
|
3
3
|
import { getFromLocalStorage, mergeUserData, setToLocalStorage, buildFilterQuery, parseFilterKey } from "./utils/utils.js";
|
|
4
4
|
import { uploadFile } from "./core/file.js";
|
|
5
5
|
export { Cocobase, getFromLocalStorage, mergeUserData, setToLocalStorage, uploadFile, buildFilterQuery, parseFilterKey, };
|
|
6
|
-
export type { TokenResponse, AppUser, Query, AuthCallbacks, AuthEvent, AuthCallback } from "./types/types";
|
|
6
|
+
export type { TokenResponse, AppUser, Query, AuthCallbacks, AuthEvent, AuthCallback, LoginResult, TwoFAVerifyResponse } from "./types/types";
|
|
7
7
|
export type { CocobaseConfig, Document, Collection };
|
|
8
8
|
export type { FilterOperator, FilterCondition, OrGroup, ParsedQuery, ParsedFilterKey, } from "./types/filter";
|
|
9
|
+
export { GameClient } from "./realtime/multiplayer";
|
|
10
|
+
export type { Player, RoomInfo, RoomListResponse, GameEventType, GameEventCallback, GameConnectOptions, } from "./realtime/multiplayer";
|
|
9
11
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/cjs/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC7E,OAAO,EACL,mBAAmB,EACnB,aAAa,EACb,iBAAiB,EACjB,gBAAgB,EAChB,cAAc,EACf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,OAAO,EACL,QAAQ,EACR,mBAAmB,EACnB,aAAa,EACb,iBAAiB,EACjB,UAAU,EACV,gBAAgB,EAChB,cAAc,GACf,CAAC;AACF,YAAY,EAAE,aAAa,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC7E,OAAO,EACL,mBAAmB,EACnB,aAAa,EACb,iBAAiB,EACjB,gBAAgB,EAChB,cAAc,EACf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,OAAO,EACL,QAAQ,EACR,mBAAmB,EACnB,aAAa,EACb,iBAAiB,EACjB,UAAU,EACV,gBAAgB,EAChB,cAAc,GACf,CAAC;AACF,YAAY,EAAE,aAAa,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,YAAY,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAC7I,YAAY,EAAE,cAAc,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;AACrD,YAAY,EACV,cAAc,EACd,eAAe,EACf,OAAO,EACP,WAAW,EACX,eAAe,GAChB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,YAAY,EACV,MAAM,EACN,QAAQ,EACR,gBAAgB,EAChB,aAAa,EACb,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,wBAAwB,CAAC"}
|
package/dist/cjs/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.parseFilterKey = exports.buildFilterQuery = exports.uploadFile = exports.setToLocalStorage = exports.mergeUserData = exports.getFromLocalStorage = exports.Cocobase = void 0;
|
|
3
|
+
exports.GameClient = exports.parseFilterKey = exports.buildFilterQuery = exports.uploadFile = exports.setToLocalStorage = exports.mergeUserData = exports.getFromLocalStorage = exports.Cocobase = void 0;
|
|
4
4
|
const core_js_1 = require("./core/core.js");
|
|
5
5
|
Object.defineProperty(exports, "Cocobase", { enumerable: true, get: function () { return core_js_1.Cocobase; } });
|
|
6
6
|
const utils_js_1 = require("./utils/utils.js");
|
|
@@ -11,4 +11,6 @@ Object.defineProperty(exports, "buildFilterQuery", { enumerable: true, get: func
|
|
|
11
11
|
Object.defineProperty(exports, "parseFilterKey", { enumerable: true, get: function () { return utils_js_1.parseFilterKey; } });
|
|
12
12
|
const file_js_1 = require("./core/file.js");
|
|
13
13
|
Object.defineProperty(exports, "uploadFile", { enumerable: true, get: function () { return file_js_1.uploadFile; } });
|
|
14
|
+
var multiplayer_1 = require("./realtime/multiplayer");
|
|
15
|
+
Object.defineProperty(exports, "GameClient", { enumerable: true, get: function () { return multiplayer_1.GameClient; } });
|
|
14
16
|
//# sourceMappingURL=index.js.map
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,4CAA0C;AAYxC,yFAZO,kBAAQ,OAYP;AAVV,+CAM0B;AAKxB,oGAVA,8BAAmB,OAUA;AACnB,8FAVA,wBAAa,OAUA;AACb,kGAVA,4BAAiB,OAUA;AAEjB,iGAXA,2BAAgB,OAWA;AAChB,+FAXA,yBAAc,OAWA;AAThB,4CAA4C;AAO1C,2FAPO,oBAAU,OAOP"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,4CAA0C;AAYxC,yFAZO,kBAAQ,OAYP;AAVV,+CAM0B;AAKxB,oGAVA,8BAAmB,OAUA;AACnB,8FAVA,wBAAa,OAUA;AACb,kGAVA,4BAAiB,OAUA;AAEjB,iGAXA,2BAAgB,OAWA;AAChB,+FAXA,yBAAc,OAWA;AAThB,4CAA4C;AAO1C,2FAPO,oBAAU,OAOP;AAaZ,sDAAoD;AAA3C,yGAAA,UAAU,OAAA"}
|
|
@@ -0,0 +1,228 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Player information in a game room
|
|
3
|
+
*/
|
|
4
|
+
export interface Player {
|
|
5
|
+
id: string;
|
|
6
|
+
name?: string;
|
|
7
|
+
[key: string]: any;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Room information from room discovery
|
|
11
|
+
*/
|
|
12
|
+
export interface RoomInfo {
|
|
13
|
+
room_id: string;
|
|
14
|
+
player_count: number;
|
|
15
|
+
max_players?: number;
|
|
16
|
+
metadata?: Record<string, any>;
|
|
17
|
+
[key: string]: any;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Room discovery response
|
|
21
|
+
*/
|
|
22
|
+
export interface RoomListResponse {
|
|
23
|
+
rooms: RoomInfo[];
|
|
24
|
+
total: number;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Game event types
|
|
28
|
+
*/
|
|
29
|
+
export type GameEventType = "connected" | "player_joined" | "player_left" | "state" | "message" | "error" | "disconnected" | string;
|
|
30
|
+
/**
|
|
31
|
+
* Game event callback
|
|
32
|
+
*/
|
|
33
|
+
export type GameEventCallback<T = any> = (data: T) => void;
|
|
34
|
+
/**
|
|
35
|
+
* Options for connecting to a game
|
|
36
|
+
*/
|
|
37
|
+
export interface GameConnectOptions {
|
|
38
|
+
/** Room ID to join */
|
|
39
|
+
roomId: string;
|
|
40
|
+
/** JWT token for authentication (optional) */
|
|
41
|
+
token?: string;
|
|
42
|
+
/** Additional data to send on connect */
|
|
43
|
+
metadata?: Record<string, any>;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* GameClient - Easy-to-use multiplayer game client
|
|
47
|
+
*
|
|
48
|
+
* @example
|
|
49
|
+
* ```typescript
|
|
50
|
+
* const game = db.realtime.game('my-game-function');
|
|
51
|
+
*
|
|
52
|
+
* // Set up event handlers
|
|
53
|
+
* game.on('connected', (data) => {
|
|
54
|
+
* console.log('Connected! My player ID:', data.your_id);
|
|
55
|
+
* });
|
|
56
|
+
*
|
|
57
|
+
* game.on('player_joined', (data) => {
|
|
58
|
+
* console.log('Player joined:', data.player_id);
|
|
59
|
+
* });
|
|
60
|
+
*
|
|
61
|
+
* game.on('state', (data) => {
|
|
62
|
+
* // Update game state
|
|
63
|
+
* renderPlayers(data.players);
|
|
64
|
+
* });
|
|
65
|
+
*
|
|
66
|
+
* // Connect to a room
|
|
67
|
+
* await game.connect({ roomId: 'game-room-1' });
|
|
68
|
+
*
|
|
69
|
+
* // Send actions
|
|
70
|
+
* game.send({ action: 'move', x: 100, y: 200 });
|
|
71
|
+
*
|
|
72
|
+
* // Disconnect when done
|
|
73
|
+
* game.disconnect();
|
|
74
|
+
* ```
|
|
75
|
+
*/
|
|
76
|
+
export declare class GameClient {
|
|
77
|
+
private projectId;
|
|
78
|
+
private functionName;
|
|
79
|
+
private baseURL;
|
|
80
|
+
private ws;
|
|
81
|
+
private token?;
|
|
82
|
+
private listeners;
|
|
83
|
+
private reconnectEnabled;
|
|
84
|
+
private reconnectDelay;
|
|
85
|
+
private maxReconnectDelay;
|
|
86
|
+
private currentReconnectDelay;
|
|
87
|
+
private reconnectTimeout?;
|
|
88
|
+
private lastConnectOptions?;
|
|
89
|
+
private pingInterval?;
|
|
90
|
+
private _isConnected;
|
|
91
|
+
private _playerId?;
|
|
92
|
+
constructor(projectId: string, functionName: string, token?: string);
|
|
93
|
+
/**
|
|
94
|
+
* Whether the client is currently connected
|
|
95
|
+
*/
|
|
96
|
+
get isConnected(): boolean;
|
|
97
|
+
/**
|
|
98
|
+
* The current player's ID (available after connection)
|
|
99
|
+
*/
|
|
100
|
+
get playerId(): string | undefined;
|
|
101
|
+
/**
|
|
102
|
+
* Connect to a game room
|
|
103
|
+
*
|
|
104
|
+
* @param options - Connection options
|
|
105
|
+
* @returns Promise that resolves when connected
|
|
106
|
+
*
|
|
107
|
+
* @example
|
|
108
|
+
* ```typescript
|
|
109
|
+
* await game.connect({ roomId: 'lobby' });
|
|
110
|
+
*
|
|
111
|
+
* // With authentication
|
|
112
|
+
* await game.connect({
|
|
113
|
+
* roomId: 'private-game',
|
|
114
|
+
* token: userJwtToken
|
|
115
|
+
* });
|
|
116
|
+
*
|
|
117
|
+
* // With metadata
|
|
118
|
+
* await game.connect({
|
|
119
|
+
* roomId: 'game-1',
|
|
120
|
+
* metadata: { playerName: 'John', team: 'red' }
|
|
121
|
+
* });
|
|
122
|
+
* ```
|
|
123
|
+
*/
|
|
124
|
+
connect(options: GameConnectOptions): Promise<void>;
|
|
125
|
+
/**
|
|
126
|
+
* Send a message/action to the game server
|
|
127
|
+
*
|
|
128
|
+
* @param data - Data to send (will be JSON serialized)
|
|
129
|
+
*
|
|
130
|
+
* @example
|
|
131
|
+
* ```typescript
|
|
132
|
+
* // Send a move action
|
|
133
|
+
* game.send({ action: 'move', x: 100, y: 200 });
|
|
134
|
+
*
|
|
135
|
+
* // Send a chat message
|
|
136
|
+
* game.send({ action: 'chat', message: 'Hello!' });
|
|
137
|
+
*
|
|
138
|
+
* // Send any game action
|
|
139
|
+
* game.send({ action: 'shoot', angle: 45, power: 80 });
|
|
140
|
+
* ```
|
|
141
|
+
*/
|
|
142
|
+
send(data: Record<string, any>): void;
|
|
143
|
+
/**
|
|
144
|
+
* Register an event listener
|
|
145
|
+
*
|
|
146
|
+
* @param event - Event type to listen for
|
|
147
|
+
* @param callback - Callback function
|
|
148
|
+
* @returns Unsubscribe function
|
|
149
|
+
*
|
|
150
|
+
* @example
|
|
151
|
+
* ```typescript
|
|
152
|
+
* // Listen for player joining
|
|
153
|
+
* const unsub = game.on('player_joined', (data) => {
|
|
154
|
+
* console.log('Player joined:', data.player_id);
|
|
155
|
+
* });
|
|
156
|
+
*
|
|
157
|
+
* // Later, unsubscribe
|
|
158
|
+
* unsub();
|
|
159
|
+
*
|
|
160
|
+
* // Common events:
|
|
161
|
+
* game.on('connected', (data) => { ... });
|
|
162
|
+
* game.on('player_joined', (data) => { ... });
|
|
163
|
+
* game.on('player_left', (data) => { ... });
|
|
164
|
+
* game.on('state', (data) => { ... });
|
|
165
|
+
* game.on('tick', (data) => { ... });
|
|
166
|
+
* game.on('error', (data) => { ... });
|
|
167
|
+
* game.on('disconnected', (data) => { ... });
|
|
168
|
+
* ```
|
|
169
|
+
*/
|
|
170
|
+
on<T = any>(event: GameEventType, callback: GameEventCallback<T>): () => void;
|
|
171
|
+
/**
|
|
172
|
+
* Register a one-time event listener
|
|
173
|
+
*
|
|
174
|
+
* @param event - Event type to listen for
|
|
175
|
+
* @param callback - Callback function (called once then removed)
|
|
176
|
+
*
|
|
177
|
+
* @example
|
|
178
|
+
* ```typescript
|
|
179
|
+
* game.once('connected', (data) => {
|
|
180
|
+
* console.log('Connected with ID:', data.your_id);
|
|
181
|
+
* });
|
|
182
|
+
* ```
|
|
183
|
+
*/
|
|
184
|
+
once<T = any>(event: GameEventType, callback: GameEventCallback<T>): void;
|
|
185
|
+
/**
|
|
186
|
+
* Remove an event listener
|
|
187
|
+
*
|
|
188
|
+
* @param event - Event type
|
|
189
|
+
* @param callback - Callback to remove
|
|
190
|
+
*/
|
|
191
|
+
off(event: GameEventType, callback: GameEventCallback): void;
|
|
192
|
+
/**
|
|
193
|
+
* Remove all listeners for an event (or all events)
|
|
194
|
+
*
|
|
195
|
+
* @param event - Optional event type. If not provided, removes all listeners.
|
|
196
|
+
*/
|
|
197
|
+
removeAllListeners(event?: GameEventType): void;
|
|
198
|
+
/**
|
|
199
|
+
* Disconnect from the game server
|
|
200
|
+
*
|
|
201
|
+
* @param disableReconnect - If true, prevents auto-reconnect
|
|
202
|
+
*/
|
|
203
|
+
disconnect(disableReconnect?: boolean): void;
|
|
204
|
+
/**
|
|
205
|
+
* Enable or disable auto-reconnect
|
|
206
|
+
*/
|
|
207
|
+
setAutoReconnect(enabled: boolean): void;
|
|
208
|
+
private emit;
|
|
209
|
+
private scheduleReconnect;
|
|
210
|
+
}
|
|
211
|
+
/**
|
|
212
|
+
* List available game rooms for a function
|
|
213
|
+
*
|
|
214
|
+
* @param projectId - Project ID
|
|
215
|
+
* @param apiKey - API key (optional)
|
|
216
|
+
* @param publicOnly - Only list public rooms (default: true)
|
|
217
|
+
* @returns Promise resolving to room list
|
|
218
|
+
*
|
|
219
|
+
* @example
|
|
220
|
+
* ```typescript
|
|
221
|
+
* const { rooms, total } = await listGameRooms('my-project');
|
|
222
|
+
* rooms.forEach(room => {
|
|
223
|
+
* console.log(`${room.room_id}: ${room.player_count}/${room.max_players} players`);
|
|
224
|
+
* });
|
|
225
|
+
* ```
|
|
226
|
+
*/
|
|
227
|
+
export declare function listGameRooms(projectId: string, apiKey?: string, publicOnly?: boolean): Promise<RoomListResponse>;
|
|
228
|
+
//# sourceMappingURL=multiplayer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"multiplayer.d.ts","sourceRoot":"","sources":["../../../src/realtime/multiplayer.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC/B,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GACrB,WAAW,GACX,eAAe,GACf,aAAa,GACb,OAAO,GACP,SAAS,GACT,OAAO,GACP,cAAc,GACd,MAAM,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,iBAAiB,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC;AAE3D;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,sBAAsB;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,8CAA8C;IAC9C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yCAAyC;IACzC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAChC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,EAAE,CAA0B;IACpC,OAAO,CAAC,KAAK,CAAC,CAAS;IACvB,OAAO,CAAC,SAAS,CAA+C;IAChE,OAAO,CAAC,gBAAgB,CAAQ;IAChC,OAAO,CAAC,cAAc,CAAQ;IAC9B,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,qBAAqB,CAAQ;IACrC,OAAO,CAAC,gBAAgB,CAAC,CAAgC;IACzD,OAAO,CAAC,kBAAkB,CAAC,CAAqB;IAChD,OAAO,CAAC,YAAY,CAAC,CAAiC;IACtD,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,SAAS,CAAC,CAAS;gBAEf,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM;IAOnE;;OAEG;IACH,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED;;OAEG;IACH,IAAI,QAAQ,IAAI,MAAM,GAAG,SAAS,CAEjC;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,OAAO,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAmHnD;;;;;;;;;;;;;;;;OAgBG;IACH,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAOrC;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,EAAE,CAAC,CAAC,GAAG,GAAG,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI;IAkB7E;;;;;;;;;;;;OAYG;IACH,IAAI,CAAC,CAAC,GAAG,GAAG,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,IAAI;IAQzE;;;;;OAKG;IACH,GAAG,CAAC,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,iBAAiB,GAAG,IAAI;IAU5D;;;;OAIG;IACH,kBAAkB,CAAC,KAAK,CAAC,EAAE,aAAa,GAAG,IAAI;IAQ/C;;;;OAIG;IACH,UAAU,CAAC,gBAAgB,UAAO,GAAG,IAAI;IAoBzC;;OAEG;IACH,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAQxC,OAAO,CAAC,IAAI;IAyBZ,OAAO,CAAC,iBAAiB;CAmB1B;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,aAAa,CACjC,SAAS,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,MAAM,EACf,UAAU,UAAO,GAChB,OAAO,CAAC,gBAAgB,CAAC,CAY3B"}
|