@edge-base/web 0.2.7 → 0.2.9

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.
@@ -172,7 +172,7 @@ export class DatabaseLiveClient {
172
172
  if (!token) {
173
173
  throw new EdgeBaseError(401, 'Database live subscriptions require a signed-in session. Sign in before opening live subscriptions.');
174
174
  }
175
- this.sendRaw({ type: 'auth', token, sdkVersion: '0.2.7' });
175
+ this.sendRaw({ type: 'auth', token, sdkVersion: '0.2.9' });
176
176
  return new Promise((resolve, reject) => {
177
177
  const timeout = setTimeout(() => {
178
178
  if (this.ws)
@@ -355,7 +355,7 @@ export class DatabaseLiveClient {
355
355
  const token = this.tokenManager.currentAccessToken;
356
356
  if (!token || !this.ws || !this.connected)
357
357
  return;
358
- this.sendRaw({ type: 'auth', token, sdkVersion: '0.2.7' });
358
+ this.sendRaw({ type: 'auth', token, sdkVersion: '0.2.9' });
359
359
  }
360
360
  handleAuthStateChange(user) {
361
361
  if (user) {
package/dist/index.d.ts CHANGED
@@ -14,7 +14,7 @@ export { TokenManager, type TokenPair, type TokenUser, type AuthStateChangeHandl
14
14
  export { DatabaseLiveClient, type DatabaseLiveOptions } from './database-live.js';
15
15
  export { matchesFilter, type FilterOperator, type FilterEntry } from './match-filter.js';
16
16
  export { getCaptchaToken, fetchSiteKey, resolveCaptchaToken } from './turnstile.js';
17
- export { RoomClient, type RoomOptions, type Subscription, type RoomConnectionState, type RoomMemberLeaveReason, type RoomSignalMeta, type RoomMember, type RoomReconnectInfo, type RoomConnectDiagnostic, type RoomSummary, } from './room.js';
17
+ export { RoomClient, type RoomCollabClient, type RoomCollabFactory, type RoomCollabMode, type RoomCollabOptions, type RoomCollabPeer, type RoomCollabStatus, type RoomOptions, type Subscription, type RoomConnectionState, type RoomMemberLeaveReason, type RoomSignalMeta, type RoomMember, type RoomReconnectInfo, type RoomRecoveryFailureInfo, type RoomConnectDiagnostic, type RoomSummary, } from './room.js';
18
18
  export { ClientAnalytics } from './analytics.js';
19
19
  export { EdgeBaseError, ResumableUploadError } from '@edge-base/core';
20
20
  export type { EdgeBaseTableMap, EdgeBaseTableRecord } from '@edge-base/core';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAGnF,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,KAAK,UAAU,EAAE,KAAK,YAAY,EAAE,KAAK,iBAAiB,EAAE,KAAK,SAAS,EAAE,KAAK,aAAa,EAAE,KAAK,aAAa,EAAE,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AACtM,OAAO,EAAE,YAAY,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,KAAK,sBAAsB,EAAE,KAAK,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAGzI,OAAO,EAAE,kBAAkB,EAAE,KAAK,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAClF,OAAO,EAAE,aAAa,EAAE,KAAK,cAAc,EAAE,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGzF,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAGpF,OAAO,EACL,UAAU,EACV,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC1B,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC1B,KAAK,WAAW,GACjB,MAAM,WAAW,CAAC;AAGnB,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAGjD,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACtE,YAAY,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAGnF,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,KAAK,UAAU,EAAE,KAAK,YAAY,EAAE,KAAK,iBAAiB,EAAE,KAAK,SAAS,EAAE,KAAK,aAAa,EAAE,KAAK,aAAa,EAAE,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AACtM,OAAO,EAAE,YAAY,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,KAAK,sBAAsB,EAAE,KAAK,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAGzI,OAAO,EAAE,kBAAkB,EAAE,KAAK,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAClF,OAAO,EAAE,aAAa,EAAE,KAAK,cAAc,EAAE,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGzF,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAGpF,OAAO,EACL,UAAU,EACV,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC1B,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,iBAAiB,EACtB,KAAK,uBAAuB,EAC5B,KAAK,qBAAqB,EAC1B,KAAK,WAAW,GACjB,MAAM,WAAW,CAAC;AAGnB,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAGjD,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACtE,YAAY,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,qBAAqB;AACrB,OAAO,EAAE,cAAc,EAAE,YAAY,EAA0B,MAAM,aAAa,CAAC;AAEnF,OAAO;AACP,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAoI,MAAM,WAAW,CAAC;AACtM,OAAO,EAAE,YAAY,EAAyF,MAAM,oBAAoB,CAAC;AAEzI,gBAAgB;AAChB,OAAO,EAAE,kBAAkB,EAA4B,MAAM,oBAAoB,CAAC;AAClF,OAAO,EAAE,aAAa,EAAyC,MAAM,mBAAmB,CAAC;AAEzF,UAAU;AACV,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAEpF,OAAO;AACP,OAAO,EACL,UAAU,GAUX,MAAM,WAAW,CAAC;AAEnB,YAAY;AACZ,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,uCAAuC;AACvC,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,qBAAqB;AACrB,OAAO,EAAE,cAAc,EAAE,YAAY,EAA0B,MAAM,aAAa,CAAC;AAEnF,OAAO;AACP,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAoI,MAAM,WAAW,CAAC;AACtM,OAAO,EAAE,YAAY,EAAyF,MAAM,oBAAoB,CAAC;AAEzI,gBAAgB;AAChB,OAAO,EAAE,kBAAkB,EAA4B,MAAM,oBAAoB,CAAC;AAClF,OAAO,EAAE,aAAa,EAAyC,MAAM,mBAAmB,CAAC;AAEzF,UAAU;AACV,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAEpF,OAAO;AACP,OAAO,EACL,UAAU,GAiBX,MAAM,WAAW,CAAC;AAEnB,YAAY;AACZ,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,uCAAuC;AACvC,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,124 @@
1
+ import { type Subscription } from '@edge-base/core';
2
+ import type { RoomConnectionState, RoomMember, RoomReconnectInfo, RoomRecoveryFailureInfo, RoomSignalMeta } from './room.js';
3
+ export type RoomCollabStatus = 'idle' | 'connecting' | 'syncing' | 'ready' | 'reconnecting' | 'degraded';
4
+ export type RoomCollabMode = 'editable' | 'read_only';
5
+ export interface RoomCollabOptions {
6
+ format: string;
7
+ key: string;
8
+ initialMode?: RoomCollabMode;
9
+ /** @deprecated Prefer initialMode. This remains as a compatibility fallback. */
10
+ mode?: RoomCollabMode;
11
+ syncTimeoutMs?: number;
12
+ }
13
+ export interface RoomCollabPeer {
14
+ memberId: string;
15
+ userId: string;
16
+ connectionId?: string;
17
+ role?: string;
18
+ state: Record<string, unknown>;
19
+ isSelf: boolean;
20
+ }
21
+ export interface RoomCollabYDocLike {
22
+ on(event: 'update', handler: (update: Uint8Array, origin: unknown) => void): void;
23
+ off(event: 'update', handler: (update: Uint8Array, origin: unknown) => void): void;
24
+ }
25
+ interface RoomCollabRoomLike {
26
+ join(): Promise<void>;
27
+ leave(): void;
28
+ getConnectionState(): RoomConnectionState;
29
+ members: {
30
+ list(): RoomMember[];
31
+ current(): RoomMember | null;
32
+ awaitCurrent(timeoutMs?: number): Promise<RoomMember | null>;
33
+ setState(state: Record<string, unknown>): Promise<void>;
34
+ clearState(): Promise<void>;
35
+ onSync(handler: (members: RoomMember[]) => void): Subscription;
36
+ onJoin(handler: (member: RoomMember) => void): Subscription;
37
+ onLeave(handler: (member: RoomMember, reason: string) => void): Subscription;
38
+ onStateChange(handler: (member: RoomMember, state: Record<string, unknown>) => void): Subscription;
39
+ };
40
+ signals: {
41
+ send(event: string, payload?: unknown, options?: {
42
+ includeSelf?: boolean;
43
+ }): Promise<void>;
44
+ sendTo(memberId: string, event: string, payload?: unknown): Promise<void>;
45
+ on(event: string, handler: (payload: unknown, meta: RoomSignalMeta) => void): Subscription;
46
+ };
47
+ session: {
48
+ onReconnect(handler: (info: RoomReconnectInfo) => void): Subscription;
49
+ onConnectionStateChange(handler: (state: RoomConnectionState) => void): Subscription;
50
+ onRecoveryFailure(handler: (info: RoomRecoveryFailureInfo) => void): Subscription;
51
+ };
52
+ }
53
+ export declare class RoomCollabClient {
54
+ private readonly room;
55
+ private readonly options;
56
+ private readonly collabKey;
57
+ private readonly remoteOriginToken;
58
+ private readonly subscriptions;
59
+ private readonly statusHandlers;
60
+ private readonly modeHandlers;
61
+ private readonly capabilityFingerprintHandlers;
62
+ private readonly awarenessHandlers;
63
+ private readonly reconnectHandlers;
64
+ private readonly recoveryFailureHandlers;
65
+ private status;
66
+ private mode;
67
+ private capabilityFingerprint;
68
+ private doc;
69
+ private docUpdateHandler;
70
+ private pendingSyncRequestId;
71
+ private syncTimeout;
72
+ private pendingSyncPromise;
73
+ private pendingSyncResolve;
74
+ private pendingSyncReject;
75
+ private localAwarenessOverride;
76
+ private serverSyncEnabled;
77
+ readonly awareness: {
78
+ setLocalState: (state: Record<string, unknown>) => Promise<void>;
79
+ clearLocalState: () => Promise<void>;
80
+ onChange: (handler: (peers: RoomCollabPeer[]) => void) => Subscription;
81
+ getPeers: () => RoomCollabPeer[];
82
+ getSelf: () => RoomCollabPeer | null;
83
+ };
84
+ constructor(room: RoomCollabRoomLike, options: RoomCollabOptions);
85
+ getStatus(): RoomCollabStatus;
86
+ getMode(): RoomCollabMode;
87
+ getCapabilityFingerprint(): string | null;
88
+ onStatusChange(handler: (status: RoomCollabStatus) => void): Subscription;
89
+ onModeChange(handler: (mode: RoomCollabMode) => void): Subscription;
90
+ onCapabilityFingerprintChange(handler: (fingerprint: string | null) => void): Subscription;
91
+ onReconnect(handler: (info: RoomReconnectInfo) => void): Subscription;
92
+ onRecoveryFailure(handler: (info: RoomRecoveryFailureInfo) => void): Subscription;
93
+ join(): Promise<void>;
94
+ bind(doc: RoomCollabYDocLike): void;
95
+ unbind(): void;
96
+ sync(): Promise<void>;
97
+ leave(): Promise<void>;
98
+ destroy(): Promise<void>;
99
+ private waitForRoomConnection;
100
+ private setLocalAwarenessState;
101
+ private clearLocalAwarenessState;
102
+ private getSelf;
103
+ private getSyncPeerCount;
104
+ private getPeers;
105
+ private toPeer;
106
+ private emitAwarenessChange;
107
+ private requestSyncIfNeeded;
108
+ private handleIncomingUpdate;
109
+ private handleControlSignal;
110
+ private handleSyncRequest;
111
+ private handleSyncResponse;
112
+ private parsePayload;
113
+ private clearSyncState;
114
+ private resolvePendingSync;
115
+ private rejectPendingSync;
116
+ private unsubscribeAll;
117
+ private setStatus;
118
+ private setMode;
119
+ private setCapabilityFingerprint;
120
+ private refreshCapabilityState;
121
+ }
122
+ export declare function createRoomCollab(room: RoomCollabRoomLike, options: RoomCollabOptions): RoomCollabClient;
123
+ export {};
124
+ //# sourceMappingURL=room-collab-core.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"room-collab-core.d.ts","sourceRoot":"","sources":["../src/room-collab-core.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqC,KAAK,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACvF,OAAO,KAAK,EACV,mBAAmB,EACnB,UAAU,EACV,iBAAiB,EACjB,uBAAuB,EACvB,cAAc,EACf,MAAM,WAAW,CAAC;AAEnB,MAAM,MAAM,gBAAgB,GACxB,MAAM,GACN,YAAY,GACZ,SAAS,GACT,OAAO,GACP,cAAc,GACd,UAAU,CAAC;AAEf,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG,WAAW,CAAC;AAEtD,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B,gFAAgF;IAChF,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,kBAAkB;IACjC,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI,CAAC;IAClF,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI,CAAC;CACpF;AAED,UAAU,kBAAkB;IAC1B,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,KAAK,IAAI,IAAI,CAAC;IACd,kBAAkB,IAAI,mBAAmB,CAAC;IAC1C,OAAO,EAAE;QACP,IAAI,IAAI,UAAU,EAAE,CAAC;QACrB,OAAO,IAAI,UAAU,GAAG,IAAI,CAAC;QAC7B,YAAY,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC;QAC7D,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QACxD,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;QAC5B,MAAM,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,IAAI,GAAG,YAAY,CAAC;QAC/D,MAAM,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,GAAG,YAAY,CAAC;QAC5D,OAAO,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,GAAG,YAAY,CAAC;QAC7E,aAAa,CACX,OAAO,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,GACpE,YAAY,CAAC;KACjB,CAAC;IACF,OAAO,EAAE;QACP,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE;YAAE,WAAW,CAAC,EAAE,OAAO,CAAA;SAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAC3F,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAC1E,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,cAAc,KAAK,IAAI,GAAG,YAAY,CAAC;KAC5F,CAAC;IACF,OAAO,EAAE;QACP,WAAW,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,iBAAiB,KAAK,IAAI,GAAG,YAAY,CAAC;QACtE,uBAAuB,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,GAAG,YAAY,CAAC;QACrF,iBAAiB,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,uBAAuB,KAAK,IAAI,GAAG,YAAY,CAAC;KACnF,CAAC;CACH;AA2KD,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAqB;IAC1C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA8B;IACtD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAyC;IAC3E,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAsB;IACpD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAiD;IAChF,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA6C;IAC1E,OAAO,CAAC,QAAQ,CAAC,6BAA6B,CAAmD;IACjG,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAgD;IAClF,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAgD;IAClF,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAsD;IAE9F,OAAO,CAAC,MAAM,CAA4B;IAC1C,OAAO,CAAC,IAAI,CAAiB;IAC7B,OAAO,CAAC,qBAAqB,CAAuB;IACpD,OAAO,CAAC,GAAG,CAAmC;IAC9C,OAAO,CAAC,gBAAgB,CAAgE;IACxF,OAAO,CAAC,oBAAoB,CAAuB;IACnD,OAAO,CAAC,WAAW,CAA8C;IACjE,OAAO,CAAC,kBAAkB,CAA8B;IACxD,OAAO,CAAC,kBAAkB,CAA6B;IACvD,OAAO,CAAC,iBAAiB,CAAyC;IAClE,OAAO,CAAC,sBAAsB,CAAwC;IACtE,OAAO,CAAC,iBAAiB,CAAS;IAElC,QAAQ,CAAC,SAAS;+BACO,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;4BAE1B,CAAC,KAAK,EAAE,cAAc,EAAE,KAAK,IAAI,KAAG,YAAY;wBAOtD,cAAc,EAAE;uBACjB,cAAc,GAAG,IAAI;MAClC;gBAEU,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,iBAAiB;IA+EhE,SAAS,IAAI,gBAAgB;IAI7B,OAAO,IAAI,cAAc;IAIzB,wBAAwB,IAAI,MAAM,GAAG,IAAI;IAIzC,cAAc,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,gBAAgB,KAAK,IAAI,GAAG,YAAY;IAQzE,YAAY,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,IAAI,GAAG,YAAY;IAQnE,6BAA6B,CAAC,OAAO,EAAE,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,YAAY;IAQ1F,WAAW,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,iBAAiB,KAAK,IAAI,GAAG,YAAY;IAQrE,iBAAiB,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,uBAAuB,KAAK,IAAI,GAAG,YAAY;IAQ3E,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAY3B,IAAI,CAAC,GAAG,EAAE,kBAAkB,GAAG,IAAI;IA0CnC,MAAM,IAAI,IAAI;IAcR,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAgBrB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAOtB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;YAIhB,qBAAqB;YAwBrB,sBAAsB;YActB,wBAAwB;IAkBtC,OAAO,CAAC,OAAO;IAQf,OAAO,CAAC,gBAAgB;IAmBxB,OAAO,CAAC,QAAQ;IAShB,OAAO,CAAC,MAAM;IAiBd,OAAO,CAAC,mBAAmB;YAUb,mBAAmB;YA8CnB,oBAAoB;IAkBlC,OAAO,CAAC,mBAAmB;YAiCb,iBAAiB;YAyBjB,kBAAkB;IAiChC,OAAO,CAAC,YAAY;IAwBpB,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,iBAAiB;IAMzB,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,SAAS;IAUjB,OAAO,CAAC,OAAO;IAUf,OAAO,CAAC,wBAAwB;IAUhC,OAAO,CAAC,sBAAsB;CAM/B;AAED,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,kBAAkB,EACxB,OAAO,EAAE,iBAAiB,GACzB,gBAAgB,CAElB"}