@nolag/notify 1.1.0 → 1.2.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/NoLagNotify.d.ts +2 -2
- package/dist/NotifyChannel.d.ts +28 -2
- package/dist/browser.js +1 -1
- package/dist/browser.js.map +1 -1
- package/dist/index.cjs +106 -9
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.mjs +106 -9
- package/dist/index.mjs.map +1 -1
- package/dist/react-native.js +106 -9
- package/dist/react-native.js.map +1 -1
- package/dist/types.d.ts +32 -0
- package/dist/utils.d.ts +49 -0
- package/package.json +1 -1
package/dist/NoLagNotify.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { NoLagSocket } from '@nolag/js-sdk';
|
|
2
2
|
import { EventEmitter } from './EventEmitter';
|
|
3
3
|
import { NotifyChannel } from './NotifyChannel';
|
|
4
|
-
import type { NoLagNotifyOptions, NotifyClientEvents, BadgeCounts } from './types';
|
|
4
|
+
import type { NoLagNotifyOptions, NotifyClientEvents, BadgeCounts, SubscribeChannelOptions } from './types';
|
|
5
5
|
/**
|
|
6
6
|
* NoLagNotify — high-level notifications SDK built on @nolag/js-sdk.
|
|
7
7
|
*
|
|
@@ -94,7 +94,7 @@ export declare class NoLagNotify extends EventEmitter<NotifyClientEvents> {
|
|
|
94
94
|
* Subscribe to a notification channel (idempotent).
|
|
95
95
|
* Returns the NotifyChannel instance.
|
|
96
96
|
*/
|
|
97
|
-
subscribe(channelName: string): NotifyChannel;
|
|
97
|
+
subscribe(channelName: string, opts?: SubscribeChannelOptions): NotifyChannel;
|
|
98
98
|
/**
|
|
99
99
|
* Unsubscribe from a notification channel.
|
|
100
100
|
*/
|
package/dist/NotifyChannel.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { RoomContext } from '@nolag/js-sdk';
|
|
2
2
|
import { EventEmitter } from './EventEmitter';
|
|
3
|
-
import type { NotifyChannelEvents, Notification, ResolvedNotifyOptions, SendNotificationOptions } from './types';
|
|
3
|
+
import type { NotifyChannelEvents, Notification, ResolvedNotifyOptions, SendNotificationOptions, FilterValue } from './types';
|
|
4
4
|
/**
|
|
5
5
|
* NotifyChannel — a single notification channel with read/unread tracking.
|
|
6
6
|
*
|
|
@@ -15,6 +15,7 @@ export declare class NotifyChannel extends EventEmitter<NotifyChannelEvents> {
|
|
|
15
15
|
private _log;
|
|
16
16
|
private _isConnected;
|
|
17
17
|
private _active;
|
|
18
|
+
private _filters;
|
|
18
19
|
private _onNotificationsRef;
|
|
19
20
|
private _onReadRef;
|
|
20
21
|
/** @internal */
|
|
@@ -29,6 +30,31 @@ export declare class NotifyChannel extends EventEmitter<NotifyChannelEvents> {
|
|
|
29
30
|
* Send a notification to this channel.
|
|
30
31
|
*/
|
|
31
32
|
send(title: string, opts?: SendNotificationOptions): void;
|
|
33
|
+
/** The filter values currently applied to this channel. */
|
|
34
|
+
get filters(): FilterValue[];
|
|
35
|
+
/**
|
|
36
|
+
* Replace this channel's filters — only notifications published with one of
|
|
37
|
+
* these values are delivered. Subscribe with your own user id (or role) to
|
|
38
|
+
* receive only what was addressed to you.
|
|
39
|
+
*
|
|
40
|
+
* Passing an empty array clears filtering and restores the wildcard
|
|
41
|
+
* subscription, which receives every notification on the channel.
|
|
42
|
+
*
|
|
43
|
+
* @example
|
|
44
|
+
* ```ts
|
|
45
|
+
* channel.setFilters(['user-42', 'all-hands']); // mine OR broadcast
|
|
46
|
+
* channel.setFilters([['eu', 'admin']]); // eu AND admin
|
|
47
|
+
* channel.setFilters([]); // everything
|
|
48
|
+
* ```
|
|
49
|
+
*/
|
|
50
|
+
setFilters(values: FilterValue[]): void;
|
|
51
|
+
/** Add filter values to the existing set. Existing AND groups are kept. */
|
|
52
|
+
addFilters(values: string[]): void;
|
|
53
|
+
/**
|
|
54
|
+
* Remove filter values from the existing set. Removing the last value
|
|
55
|
+
* restores the wildcard subscription.
|
|
56
|
+
*/
|
|
57
|
+
removeFilters(values: string[]): void;
|
|
32
58
|
/**
|
|
33
59
|
* Mark a single notification as read by id.
|
|
34
60
|
* Emits the read receipt to the _read topic for cross-tab sync.
|
|
@@ -47,7 +73,7 @@ export declare class NotifyChannel extends EventEmitter<NotifyChannelEvents> {
|
|
|
47
73
|
*/
|
|
48
74
|
getUnread(): Notification[];
|
|
49
75
|
/** @internal Subscribe to notifications and _read topics */
|
|
50
|
-
_subscribe(): void;
|
|
76
|
+
_subscribe(filters?: FilterValue[]): void;
|
|
51
77
|
/** @internal Activate this channel (mark as visible/active) */
|
|
52
78
|
_activate(): void;
|
|
53
79
|
/** @internal Deactivate this channel */
|
package/dist/browser.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
class e{constructor(){this._handlers=new Map}on(e,t){return this._handlers.has(e)||this._handlers.set(e,new Set),this._handlers.get(e).add(t),this}off(e,t){return t?this._handlers.get(e)?.delete(t):this._handlers.delete(e),this}removeAllListeners(){return this._handlers.clear(),this}emit(e,...t){const s=this._handlers.get(e);if(s)for(const i of s)try{i(...t)}catch(t){console.error(`Error in ${String(e)} handler:`,t)}}listenerCount(e){return this._handlers.get(e)?.size??0}}class t{constructor(e){this._notifications=[],this._ids=new Set,this._maxSize=e}add(e){if(this._ids.has(e.id))return!1;for(this._ids.add(e.id),this._notifications.push(e),this._notifications.length>1&&e.timestamp<this._notifications[this._notifications.length-2].timestamp&&this._notifications.sort((e,t)=>e.timestamp-t.timestamp);this._notifications.length>this._maxSize;){const e=this._notifications.shift();this._ids.delete(e.id)}return!0}markRead(e){const t=this._notifications.find(t=>t.id===e);return!!t&&(t.read=!0,!0)}markAllRead(){for(const e of this._notifications)e.read=!0}getAll(){return[...this._notifications]}getUnread(){return this._notifications.filter(e=>!e.read)}get unreadCount(){return this._notifications.filter(e=>!e.read).length}get size(){return this._notifications.length}has(e){return this._ids.has(e)}clear(){this._notifications=[],this._ids.clear()}}function s(){return"undefined"!=typeof crypto&&"function"==typeof crypto.randomUUID?crypto.randomUUID():"xxxx-xxxx-xxxx-xxxx".replace(/x/g,()=>Math.floor(16*Math.random()).toString(16))}function i(e,t){return t?(...t)=>{console.log(`[${e}]`,...t)}:(...e)=>{}}const n=new WeakMap;const o="notifications",r="_read";class a extends e{constructor(e,s,i,n,o){super(),this._active=!1,this._onNotificationsRef=null,this._onReadRef=null,this.name=e,this._roomContext=s,this._options=i,this._store=new t(i.maxNotificationCache),this._log=n,this._isConnected=o}get notifications(){return this._store.getAll()}get unreadCount(){return this._store.unreadCount}get active(){return this._active}send(e,t){const i={id:s(),channel:this.name,title:e,body:t?.body,icon:t?.icon,data:t?.data,timestamp:Date.now()};this._roomContext.emit(o,{id:i.id,channel:i.channel,title:i.title,body:i.body,icon:i.icon,data:i.data,timestamp:i.timestamp})}markRead(e){this._store.markRead(e)&&(this._log("Mark read:",e),this._roomContext.emit(r,{id:e,channel:this.name}),this.emit("read",e))}markAllRead(){this._store.markAllRead(),this._log("Mark all read:",this.name),this._roomContext.emit(r,{all:!0,channel:this.name}),this.emit("readAll")}getNotifications(){return this._store.getAll()}getUnread(){return this._store.getUnread()}_subscribe(){this._log("Channel subscribe:",this.name),this._roomContext.subscribe(o),this._roomContext.subscribe(r),this._onNotificationsRef=(e,t)=>{this._handleIncomingNotification(e,t)},this._roomContext.on(o,this._onNotificationsRef),this._onReadRef=e=>{this._handleIncomingRead(e)},this._roomContext.on(r,this._onReadRef)}_activate(){this._log("Channel activate:",this.name),this._active=!0}_deactivate(){this._log("Channel deactivate:",this.name),this._active=!1}_handleReplayStart(e){this.emit("replayStart",{count:e})}_handleReplayEnd(e){this.emit("replayEnd",{replayed:e})}_cleanup(){this._log("Channel cleanup:",this.name),this._isConnected()&&(this._roomContext.unsubscribe(o),this._roomContext.unsubscribe(r)),this._onNotificationsRef&&this._roomContext.off(o,this._onNotificationsRef),this._onReadRef&&this._roomContext.off(r,this._onReadRef),this._onNotificationsRef=null,this._onReadRef=null,this._store.clear(),this.removeAllListeners()}_handleIncomingNotification(e,t){const i=e,n={id:i.id||s(),channel:this.name,title:i.title,body:i.body,icon:i.icon,data:i.data,timestamp:i.timestamp||Date.now(),read:!1,isReplay:t.isReplay??!1};this._store.add(n)&&(this._log("Notification received:",n.id,n.title),this.emit("notification",n))}_handleIncomingRead(e){const t=e;!0===t.all?(this._store.markAllRead(),this.emit("readAll")):"string"==typeof t.id&&this._store.markRead(t.id)&&this.emit("read",t.id)}}class h{constructor(){this._counts=new Map}update(e,t){this._counts.set(e,t)}get(e){return this._counts.get(e)??0}getAll(){const e={};let t=0;for(const[s,i]of this._counts)e[s]=i,t+=i;return{total:t,byChannel:e}}clear(){this._counts.clear()}}class c{constructor(){this._users=new Map,this._actorToUserId=new Map}addFromPresence(e,t,s){if(!t?.userId)return null;const i=this._actorToUserId.get(e),n=t.userId||i||e,o={userId:n,actorTokenId:e,metadata:t.metadata,joinedAt:s||Date.now()};return this._users.set(n,o),this._actorToUserId.set(e,n),o}removeByActorId(e){const t=this._actorToUserId.get(e);if(!t)return null;const s=this._users.get(t)||null;return this._users.delete(t),this._actorToUserId.delete(e),s}getUser(e){return this._users.get(e)}getUserByActorId(e){const t=this._actorToUserId.get(e);return t?this._users.get(t):void 0}getAll(){return Array.from(this._users.values())}clear(){this._users.clear(),this._actorToUserId.clear()}}class _ extends e{constructor(e){if(super(),this._channels=new Map,this._lobby=null,this._badgeManager=new h,this._presenceManager=new c,this._actorToUserId=new Map,this._epoch=0,this._detached=!1,this._isReady=!1,this._lobbyRefreshTimer=null,this._onConnectRef=()=>this._onConnect(),this._onDisconnectRef=e=>{this._log("Disconnected:",e),this.emit("disconnected",e)},this._onReconnectRef=()=>{this._log("Reconnecting..."),this.emit("reconnecting")},this._onErrorRef=e=>{this._log("Error:",e),this.emit("error",e)},this._onReplayStartRef=e=>{const t=e;for(const e of this._channels.values())e._handleReplayStart(t.count)},this._onReplayEndRef=e=>{const t=e;for(const e of this._channels.values())e._handleReplayEnd(t.replayed)},this._onPresenceJoinRef=e=>this._handleRoomPresenceJoin(e),this._onPresenceLeaveRef=e=>this._handleRoomPresenceLeave(e),this._onPresenceUpdateRef=e=>this._handleRoomPresenceUpdate(e),this._onLobbyJoinRef=e=>this._handleLobbyJoin(e),this._onLobbyLeaveRef=e=>this._handleLobbyLeave(e),this._onLobbyUpdateRef=e=>this._handleLobbyUpdate(e),!e?.client)throw new TypeError("NoLagNotify requires an injected NoLag client: new NoLagNotify({ client, ... })");this._client=e.client,this._userId=s(),this._options={metadata:e.metadata,appName:e.appName??"notify",maxNotificationCache:e.maxNotificationCache??500,debug:e.debug??!1,channels:e.channels??[]},this._log=i("NoLagNotify",this._options.debug),this._readyPromise=new Promise((e,t)=>{this._readyResolve=e,this._readyReject=t}),this._readyPromise.catch(()=>{}),function(e,t,s){let i=n.get(e);i||(i=new Map,n.set(e,i));const o=i.get(t);o&&console.warn(`[${s}] Another wrapper (${o}) is already attached to this client for app "${t}". Use one wrapper per (client, app) — detach the other instance first.`),i.set(t,s)}(this._client,this._options.appName,"NoLagNotify"),this._client.on("connect",this._onConnectRef),this._client.on("disconnect",this._onDisconnectRef),this._client.on("reconnect",this._onReconnectRef),this._client.on("error",this._onErrorRef),this._client.on("replay:start",this._onReplayStartRef),this._client.on("replay:end",this._onReplayEndRef),this._client.on("presence:join",this._onPresenceJoinRef),this._client.on("presence:leave",this._onPresenceLeaveRef),this._client.on("presence:update",this._onPresenceUpdateRef),this._client.on("lobbyPresence:join",this._onLobbyJoinRef),this._client.on("lobbyPresence:leave",this._onLobbyLeaveRef),this._client.on("lobbyPresence:update",this._onLobbyUpdateRef),queueMicrotask(()=>{0===this._epoch&&!this._detached&&this._client.connected&&this._onConnect()})}get connected(){return!this._detached&&this._client.connected}get client(){return this._client}get channels(){return this._channels}ready(){return this._readyPromise}detach(){if(!this._detached){this._log("Detaching..."),this._detached=!0,this._epoch++,this._lobbyRefreshTimer&&(clearTimeout(this._lobbyRefreshTimer),this._lobbyRefreshTimer=null),this._client.off("connect",this._onConnectRef),this._client.off("disconnect",this._onDisconnectRef),this._client.off("reconnect",this._onReconnectRef),this._client.off("error",this._onErrorRef),this._client.off("replay:start",this._onReplayStartRef),this._client.off("replay:end",this._onReplayEndRef),this._client.off("presence:join",this._onPresenceJoinRef),this._client.off("presence:leave",this._onPresenceLeaveRef),this._client.off("presence:update",this._onPresenceUpdateRef),this._client.off("lobbyPresence:join",this._onLobbyJoinRef),this._client.off("lobbyPresence:leave",this._onLobbyLeaveRef),this._client.off("lobbyPresence:update",this._onLobbyUpdateRef);for(const e of[...this._channels.keys()])this._channels.get(e)._cleanup(),this._channels.delete(e);if(this._lobby&&this._client.connected)try{this._lobby.unsubscribe()}catch{}var e,t;this._lobby=null,this._badgeManager.clear(),this._presenceManager.clear(),this._actorToUserId.clear(),e=this._client,t=this._options.appName,n.get(e)?.delete(t),this._isReady||this._readyReject(new Error("NoLagNotify detached before ready"))}}_onConnect(){this._epoch++,this._runSetup(this._epoch)}async _runSetup(e){const t=()=>e!==this._epoch||this._detached;this._log(this._isReady?"Restoring after reconnect...":"Setting up..."),this._log("Local userId:",this._userId,"→ actorId:",this._client.actorId),this._lobby||(this._lobby=this._client.setApp(this._options.appName).setLobby("online"));try{const e=await this._lobby.subscribe();if(t())return;this._diffHydratePresence(e),this._log("Lobby subscribed")}catch(e){if(t())return;this._log("Lobby subscription failed:",e)}if(!this._isReady)for(const e of this._options.channels)this._subscribeChannel(e);t()||(this._isReady?this.emit("reconnected"):(this._isReady=!0,this._readyResolve(),this.emit("connected")),this._scheduleLobbyRefresh(e))}_scheduleLobbyRefresh(e){this._lobbyRefreshTimer&&clearTimeout(this._lobbyRefreshTimer),this._lobbyRefreshTimer=setTimeout(()=>{this._lobbyRefreshTimer=null,e===this._epoch&&!this._detached&&this._client.connected&&this._lobby&&this._lobby.fetchPresence().then(t=>{e!==this._epoch||this._detached||this._diffHydratePresence(t)}).catch(()=>{})},2e3)}subscribe(e){this._assertUsable();const t=this._channels.get(e);if(t)return t;const s=this._subscribeChannel(e);return s._activate(),s}unsubscribe(e){const t=this._channels.get(e);t&&(this._log("Unsubscribing channel:",e),t._cleanup(),this._channels.delete(e),this._badgeManager.update(e,0),this._emitBadgeUpdated())}getBadgeCounts(){return this._badgeManager.getAll()}markAllRead(){for(const e of this._channels.values())e.markAllRead()}_assertUsable(){if(this._detached)throw new Error("NoLagNotify has been detached — construct a new instance");if(!this._isReady)throw new Error('NoLagNotify not ready — await ready() or the "connected" event')}_subscribeChannel(e){this._log("Subscribing channel:",e);const t=this._client.setApp(this._options.appName).setRoom(e),s=new a(e,t,this._options,i(`NotifyChannel:${e}`,this._options.debug),()=>this._client.connected);return this._channels.set(e,s),s._subscribe(),s.on("notification",t=>{this._badgeManager.update(e,s.unreadCount),this._emitBadgeUpdated(),this.emit("notification",t)}),s.on("read",()=>{this._badgeManager.update(e,s.unreadCount),this._emitBadgeUpdated()}),s.on("readAll",()=>{this._badgeManager.update(e,0),this._emitBadgeUpdated()}),s}_emitBadgeUpdated(){this.emit("badgeUpdated",this._badgeManager.getAll())}_foreignScope(e){const t=e?.__scope;return"string"==typeof t&&t!==this._options.appName}_handleRoomPresenceJoin(e){if(e.actorTokenId===this._client.actorId)return;const t=e.presence;if(!t?.userId||this._foreignScope(t))return;const s=this._presenceManager.addFromPresence(e.actorTokenId,t);s&&this._actorToUserId.set(e.actorTokenId,s.userId)}_handleRoomPresenceLeave(e){e.actorTokenId!==this._client.actorId&&this._presenceManager.removeByActorId(e.actorTokenId)}_handleRoomPresenceUpdate(e){if(e.actorTokenId===this._client.actorId)return;const t=e.presence;t?.userId&&!this._foreignScope(t)&&this._presenceManager.addFromPresence(e.actorTokenId,t)}_handleLobbyJoin(e){const{actorId:t,data:s}=e;if(t===this._client.actorId)return;const i=s;if(!i?.userId||this._foreignScope(i))return;const n=this._presenceManager.addFromPresence(t,i);n&&this._actorToUserId.set(t,n.userId)}_handleLobbyLeave(e){const{actorId:t,data:s}=e;if(t===this._client.actorId)return;const i=s;this._foreignScope(i)||(this._presenceManager.removeByActorId(t),this._actorToUserId.delete(t))}_handleLobbyUpdate(e){const{actorId:t,data:s}=e;if(t===this._client.actorId)return;const i=s;i?.userId&&!this._foreignScope(i)&&this._presenceManager.addFromPresence(t,i)}_diffHydratePresence(e){const t=new Set;for(const s of Object.keys(e)){const i=e[s];for(const e of Object.keys(i)){if(e===this._client.actorId)continue;const s=i[e],n=s?.presence??s;if(n?.userId&&!this._foreignScope(n)){t.add(e);const s=this._presenceManager.addFromPresence(e,n);s&&this._actorToUserId.set(e,s.userId)}}}for(const[e]of[...this._actorToUserId])t.has(e)||(this._presenceManager.removeByActorId(e),this._actorToUserId.delete(e))}}export{e as EventEmitter,_ as NoLagNotify,a as NotifyChannel};
|
|
1
|
+
class e{constructor(){this._handlers=new Map}on(e,t){return this._handlers.has(e)||this._handlers.set(e,new Set),this._handlers.get(e).add(t),this}off(e,t){return t?this._handlers.get(e)?.delete(t):this._handlers.delete(e),this}removeAllListeners(){return this._handlers.clear(),this}emit(e,...t){const s=this._handlers.get(e);if(s)for(const i of s)try{i(...t)}catch(t){console.error(`Error in ${String(e)} handler:`,t)}}listenerCount(e){return this._handlers.get(e)?.size??0}}class t{constructor(e){this._notifications=[],this._ids=new Set,this._maxSize=e}add(e){if(this._ids.has(e.id))return!1;for(this._ids.add(e.id),this._notifications.push(e),this._notifications.length>1&&e.timestamp<this._notifications[this._notifications.length-2].timestamp&&this._notifications.sort((e,t)=>e.timestamp-t.timestamp);this._notifications.length>this._maxSize;){const e=this._notifications.shift();this._ids.delete(e.id)}return!0}markRead(e){const t=this._notifications.find(t=>t.id===e);return!!t&&(t.read=!0,!0)}markAllRead(){for(const e of this._notifications)e.read=!0}getAll(){return[...this._notifications]}getUnread(){return this._notifications.filter(e=>!e.read)}get unreadCount(){return this._notifications.filter(e=>!e.read).length}get size(){return this._notifications.length}has(e){return this._ids.has(e)}clear(){this._notifications=[],this._ids.clear()}}function s(){return"undefined"!=typeof crypto&&"function"==typeof crypto.randomUUID?crypto.randomUUID():"xxxx-xxxx-xxxx-xxxx".replace(/x/g,()=>Math.floor(16*Math.random()).toString(16))}function i(e,t){return t?(...t)=>{console.log(`[${e}]`,...t)}:(...e)=>{}}const n=new WeakMap;const o="notifications",r="_read";class a extends e{constructor(e,s,i,n,o){super(),this._active=!1,this._filters=[],this._onNotificationsRef=null,this._onReadRef=null,this.name=e,this._roomContext=s,this._options=i,this._store=new t(i.maxNotificationCache),this._log=n,this._isConnected=o}get notifications(){return this._store.getAll()}get unreadCount(){return this._store.unreadCount}get active(){return this._active}send(e,t){const i={id:s(),channel:this.name,title:e,body:t?.body,icon:t?.icon,data:t?.data,timestamp:Date.now()},n={id:i.id,channel:i.channel,title:i.title,body:i.body,icon:i.icon,data:i.data,timestamp:i.timestamp},r=function(e){return e?.filter?{filter:e.filter}:e?.filters&&e.filters.length>0?{filters:e.filters}:{}}(t);Object.keys(r).length>0?this._roomContext.emit(o,n,r):this._roomContext.emit(o,n)}get filters(){return[...this._filters]}setFilters(e){this._filters=[...e],this._roomContext.setFilters(o,this._filters)}addFilters(e){this.setFilters(function(e,t){const s=new Set,i=[];for(const t of e)"string"==typeof t?s.add(t):i.push(t);for(const e of t)s.add(e);return[...s,...i]}(this._filters,e))}removeFilters(e){this.setFilters(function(e,t){const s=new Set(t);return e.filter(e=>"string"!=typeof e||!s.has(e))}(this._filters,e))}markRead(e){this._store.markRead(e)&&(this._log("Mark read:",e),this._roomContext.emit(r,{id:e,channel:this.name}),this.emit("read",e))}markAllRead(){this._store.markAllRead(),this._log("Mark all read:",this.name),this._roomContext.emit(r,{all:!0,channel:this.name}),this.emit("readAll")}getNotifications(){return this._store.getAll()}getUnread(){return this._store.getUnread()}_subscribe(e){this._log("Channel subscribe:",this.name),this._filters=e?[...e]:[],this._filters.length>0?this._roomContext.subscribe(o,{filters:this._filters}):this._roomContext.subscribe(o),this._roomContext.subscribe(r),this._onNotificationsRef=(e,t)=>{this._handleIncomingNotification(e,t)},this._roomContext.on(o,this._onNotificationsRef),this._onReadRef=e=>{this._handleIncomingRead(e)},this._roomContext.on(r,this._onReadRef)}_activate(){this._log("Channel activate:",this.name),this._active=!0}_deactivate(){this._log("Channel deactivate:",this.name),this._active=!1}_handleReplayStart(e){this.emit("replayStart",{count:e})}_handleReplayEnd(e){this.emit("replayEnd",{replayed:e})}_cleanup(){this._log("Channel cleanup:",this.name),this._isConnected()&&(this._roomContext.unsubscribe(o),this._roomContext.unsubscribe(r)),this._onNotificationsRef&&this._roomContext.off(o,this._onNotificationsRef),this._onReadRef&&this._roomContext.off(r,this._onReadRef),this._onNotificationsRef=null,this._onReadRef=null,this._store.clear(),this.removeAllListeners()}_handleIncomingNotification(e,t){const i=e,n={id:i.id||s(),channel:this.name,title:i.title,body:i.body,icon:i.icon,data:i.data,timestamp:i.timestamp||Date.now(),read:!1,isReplay:t.isReplay??!1};this._store.add(n)&&(this._log("Notification received:",n.id,n.title),this.emit("notification",n))}_handleIncomingRead(e){const t=e;!0===t.all?(this._store.markAllRead(),this.emit("readAll")):"string"==typeof t.id&&this._store.markRead(t.id)&&this.emit("read",t.id)}}class h{constructor(){this._counts=new Map}update(e,t){this._counts.set(e,t)}get(e){return this._counts.get(e)??0}getAll(){const e={};let t=0;for(const[s,i]of this._counts)e[s]=i,t+=i;return{total:t,byChannel:e}}clear(){this._counts.clear()}}class c{constructor(){this._users=new Map,this._actorToUserId=new Map}addFromPresence(e,t,s){if(!t?.userId)return null;const i=this._actorToUserId.get(e),n=t.userId||i||e,o={userId:n,actorTokenId:e,metadata:t.metadata,joinedAt:s||Date.now()};return this._users.set(n,o),this._actorToUserId.set(e,n),o}removeByActorId(e){const t=this._actorToUserId.get(e);if(!t)return null;const s=this._users.get(t)||null;return this._users.delete(t),this._actorToUserId.delete(e),s}getUser(e){return this._users.get(e)}getUserByActorId(e){const t=this._actorToUserId.get(e);return t?this._users.get(t):void 0}getAll(){return Array.from(this._users.values())}clear(){this._users.clear(),this._actorToUserId.clear()}}class _ extends e{constructor(e){if(super(),this._channels=new Map,this._lobby=null,this._badgeManager=new h,this._presenceManager=new c,this._actorToUserId=new Map,this._epoch=0,this._detached=!1,this._isReady=!1,this._lobbyRefreshTimer=null,this._onConnectRef=()=>this._onConnect(),this._onDisconnectRef=e=>{this._log("Disconnected:",e),this.emit("disconnected",e)},this._onReconnectRef=()=>{this._log("Reconnecting..."),this.emit("reconnecting")},this._onErrorRef=e=>{this._log("Error:",e),this.emit("error",e)},this._onReplayStartRef=e=>{const t=e;for(const e of this._channels.values())e._handleReplayStart(t.count)},this._onReplayEndRef=e=>{const t=e;for(const e of this._channels.values())e._handleReplayEnd(t.replayed)},this._onPresenceJoinRef=e=>this._handleRoomPresenceJoin(e),this._onPresenceLeaveRef=e=>this._handleRoomPresenceLeave(e),this._onPresenceUpdateRef=e=>this._handleRoomPresenceUpdate(e),this._onLobbyJoinRef=e=>this._handleLobbyJoin(e),this._onLobbyLeaveRef=e=>this._handleLobbyLeave(e),this._onLobbyUpdateRef=e=>this._handleLobbyUpdate(e),!e?.client)throw new TypeError("NoLagNotify requires an injected NoLag client: new NoLagNotify({ client, ... })");this._client=e.client,this._userId=s(),this._options={metadata:e.metadata,appName:e.appName??"notify",maxNotificationCache:e.maxNotificationCache??500,debug:e.debug??!1,channels:e.channels??[]},this._log=i("NoLagNotify",this._options.debug),this._readyPromise=new Promise((e,t)=>{this._readyResolve=e,this._readyReject=t}),this._readyPromise.catch(()=>{}),function(e,t,s){let i=n.get(e);i||(i=new Map,n.set(e,i));const o=i.get(t);o&&console.warn(`[${s}] Another wrapper (${o}) is already attached to this client for app "${t}". Use one wrapper per (client, app) — detach the other instance first.`),i.set(t,s)}(this._client,this._options.appName,"NoLagNotify"),this._client.on("connect",this._onConnectRef),this._client.on("disconnect",this._onDisconnectRef),this._client.on("reconnect",this._onReconnectRef),this._client.on("error",this._onErrorRef),this._client.on("replay:start",this._onReplayStartRef),this._client.on("replay:end",this._onReplayEndRef),this._client.on("presence:join",this._onPresenceJoinRef),this._client.on("presence:leave",this._onPresenceLeaveRef),this._client.on("presence:update",this._onPresenceUpdateRef),this._client.on("lobbyPresence:join",this._onLobbyJoinRef),this._client.on("lobbyPresence:leave",this._onLobbyLeaveRef),this._client.on("lobbyPresence:update",this._onLobbyUpdateRef),queueMicrotask(()=>{0===this._epoch&&!this._detached&&this._client.connected&&this._onConnect()})}get connected(){return!this._detached&&this._client.connected}get client(){return this._client}get channels(){return this._channels}ready(){return this._readyPromise}detach(){if(!this._detached){this._log("Detaching..."),this._detached=!0,this._epoch++,this._lobbyRefreshTimer&&(clearTimeout(this._lobbyRefreshTimer),this._lobbyRefreshTimer=null),this._client.off("connect",this._onConnectRef),this._client.off("disconnect",this._onDisconnectRef),this._client.off("reconnect",this._onReconnectRef),this._client.off("error",this._onErrorRef),this._client.off("replay:start",this._onReplayStartRef),this._client.off("replay:end",this._onReplayEndRef),this._client.off("presence:join",this._onPresenceJoinRef),this._client.off("presence:leave",this._onPresenceLeaveRef),this._client.off("presence:update",this._onPresenceUpdateRef),this._client.off("lobbyPresence:join",this._onLobbyJoinRef),this._client.off("lobbyPresence:leave",this._onLobbyLeaveRef),this._client.off("lobbyPresence:update",this._onLobbyUpdateRef);for(const e of[...this._channels.keys()])this._channels.get(e)._cleanup(),this._channels.delete(e);if(this._lobby&&this._client.connected)try{this._lobby.unsubscribe()}catch{}var e,t;this._lobby=null,this._badgeManager.clear(),this._presenceManager.clear(),this._actorToUserId.clear(),e=this._client,t=this._options.appName,n.get(e)?.delete(t),this._isReady||this._readyReject(new Error("NoLagNotify detached before ready"))}}_onConnect(){this._epoch++,this._runSetup(this._epoch)}async _runSetup(e){const t=()=>e!==this._epoch||this._detached;this._log(this._isReady?"Restoring after reconnect...":"Setting up..."),this._log("Local userId:",this._userId,"→ actorId:",this._client.actorId),this._lobby||(this._lobby=this._client.setApp(this._options.appName).setLobby("online"));try{const e=await this._lobby.subscribe();if(t())return;this._diffHydratePresence(e),this._log("Lobby subscribed")}catch(e){if(t())return;this._log("Lobby subscription failed:",e)}if(!this._isReady)for(const e of this._options.channels)this._subscribeChannel(e);t()||(this._isReady?this.emit("reconnected"):(this._isReady=!0,this._readyResolve(),this.emit("connected")),this._scheduleLobbyRefresh(e))}_scheduleLobbyRefresh(e){this._lobbyRefreshTimer&&clearTimeout(this._lobbyRefreshTimer),this._lobbyRefreshTimer=setTimeout(()=>{this._lobbyRefreshTimer=null,e===this._epoch&&!this._detached&&this._client.connected&&this._lobby&&this._lobby.fetchPresence().then(t=>{e!==this._epoch||this._detached||this._diffHydratePresence(t)}).catch(()=>{})},2e3)}subscribe(e,t){this._assertUsable();const s=this._channels.get(e);if(s)return t?.filters&&s.setFilters(t.filters),s;const i=this._subscribeChannel(e,t?.filters);return i._activate(),i}unsubscribe(e){const t=this._channels.get(e);t&&(this._log("Unsubscribing channel:",e),t._cleanup(),this._channels.delete(e),this._badgeManager.update(e,0),this._emitBadgeUpdated())}getBadgeCounts(){return this._badgeManager.getAll()}markAllRead(){for(const e of this._channels.values())e.markAllRead()}_assertUsable(){if(this._detached)throw new Error("NoLagNotify has been detached — construct a new instance");if(!this._isReady)throw new Error('NoLagNotify not ready — await ready() or the "connected" event')}_subscribeChannel(e,t){this._log("Subscribing channel:",e);const s=this._client.setApp(this._options.appName).setRoom(e),n=new a(e,s,this._options,i(`NotifyChannel:${e}`,this._options.debug),()=>this._client.connected);return this._channels.set(e,n),n._subscribe(t),n.on("notification",t=>{this._badgeManager.update(e,n.unreadCount),this._emitBadgeUpdated(),this.emit("notification",t)}),n.on("read",()=>{this._badgeManager.update(e,n.unreadCount),this._emitBadgeUpdated()}),n.on("readAll",()=>{this._badgeManager.update(e,0),this._emitBadgeUpdated()}),n}_emitBadgeUpdated(){this.emit("badgeUpdated",this._badgeManager.getAll())}_foreignScope(e){const t=e?.__scope;return"string"==typeof t&&t!==this._options.appName}_handleRoomPresenceJoin(e){if(e.actorTokenId===this._client.actorId)return;const t=e.presence;if(!t?.userId||this._foreignScope(t))return;const s=this._presenceManager.addFromPresence(e.actorTokenId,t);s&&this._actorToUserId.set(e.actorTokenId,s.userId)}_handleRoomPresenceLeave(e){e.actorTokenId!==this._client.actorId&&this._presenceManager.removeByActorId(e.actorTokenId)}_handleRoomPresenceUpdate(e){if(e.actorTokenId===this._client.actorId)return;const t=e.presence;t?.userId&&!this._foreignScope(t)&&this._presenceManager.addFromPresence(e.actorTokenId,t)}_handleLobbyJoin(e){const{actorId:t,data:s}=e;if(t===this._client.actorId)return;const i=s;if(!i?.userId||this._foreignScope(i))return;const n=this._presenceManager.addFromPresence(t,i);n&&this._actorToUserId.set(t,n.userId)}_handleLobbyLeave(e){const{actorId:t,data:s}=e;if(t===this._client.actorId)return;const i=s;this._foreignScope(i)||(this._presenceManager.removeByActorId(t),this._actorToUserId.delete(t))}_handleLobbyUpdate(e){const{actorId:t,data:s}=e;if(t===this._client.actorId)return;const i=s;i?.userId&&!this._foreignScope(i)&&this._presenceManager.addFromPresence(t,i)}_diffHydratePresence(e){const t=new Set;for(const s of Object.keys(e)){const i=e[s];for(const e of Object.keys(i)){if(e===this._client.actorId)continue;const s=i[e],n=s?.presence??s;if(n?.userId&&!this._foreignScope(n)){t.add(e);const s=this._presenceManager.addFromPresence(e,n);s&&this._actorToUserId.set(e,s.userId)}}}for(const[e]of[...this._actorToUserId])t.has(e)||(this._presenceManager.removeByActorId(e),this._actorToUserId.delete(e))}}export{e as EventEmitter,_ as NoLagNotify,a as NotifyChannel};
|
|
2
2
|
//# sourceMappingURL=browser.js.map
|
package/dist/browser.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser.js","sources":["../src/EventEmitter.ts","../src/NotificationStore.ts","../src/utils.ts","../src/constants.ts","../src/NotifyChannel.ts","../src/BadgeManager.ts","../src/PresenceManager.ts","../src/NoLagNotify.ts"],"sourcesContent":[null,null,null,null,null,null,null,null],"names":["EventEmitter","constructor","this","_handlers","Map","on","event","handler","has","set","Set","get","add","off","delete","removeAllListeners","clear","emit","args","handlers","e","console","error","String","listenerCount","size","NotificationStore","maxSize","_notifications","_ids","_maxSize","notification","id","push","length","timestamp","sort","a","b","removed","shift","markRead","find","n","read","markAllRead","getAll","getUnread","filter","unreadCount","generateId","crypto","randomUUID","replace","Math","floor","random","toString","createLogger","prefix","enabled","log","_args","wrapperRegistry","WeakMap","TOPIC_NOTIFICATIONS","TOPIC_READ","NotifyChannel","name","roomContext","options","isConnected","super","_active","_onNotificationsRef","_onReadRef","_roomContext","_options","_store","maxNotificationCache","_log","_isConnected","notifications","active","send","title","opts","channel","body","icon","data","Date","now","all","getNotifications","_subscribe","subscribe","meta","_handleIncomingNotification","_handleIncomingRead","_activate","_deactivate","_handleReplayStart","count","_handleReplayEnd","replayed","_cleanup","unsubscribe","raw","isReplay","BadgeManager","_counts","update","byChannel","total","PresenceManager","_users","_actorToUserId","addFromPresence","actorTokenId","presenceData","joinedAt","userId","existing","user","metadata","removeByActorId","getUser","getUserByActorId","undefined","Array","from","values","NoLagNotify","_channels","_lobby","_badgeManager","_presenceManager","_epoch","_detached","_isReady","_lobbyRefreshTimer","_onConnectRef","_onConnect","_onDisconnectRef","reason","_onReconnectRef","_onErrorRef","_onReplayStartRef","_onReplayEndRef","_onPresenceJoinRef","_handleRoomPresenceJoin","_onPresenceLeaveRef","_handleRoomPresenceLeave","_onPresenceUpdateRef","_handleRoomPresenceUpdate","_onLobbyJoinRef","_handleLobbyJoin","_onLobbyLeaveRef","_handleLobbyLeave","_onLobbyUpdateRef","_handleLobbyUpdate","client","TypeError","_client","_userId","appName","debug","channels","_readyPromise","Promise","resolve","reject","_readyResolve","_readyReject","catch","wrapperName","apps","warn","registerWrapper","queueMicrotask","connected","ready","detach","clearTimeout","keys","Error","_runSetup","epoch","stale","actorId","setApp","setLobby","state","_diffHydratePresence","err","channelName","_subscribeChannel","_scheduleLobbyRefresh","setTimeout","fetchPresence","then","_assertUsable","_emitBadgeUpdated","getBadgeCounts","setRoom","_foreignScope","scope","__scope","presence","freshActors","roomId","Object","roomPresence"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"browser.js","sources":["../src/EventEmitter.ts","../src/NotificationStore.ts","../src/utils.ts","../src/constants.ts","../src/NotifyChannel.ts","../src/BadgeManager.ts","../src/PresenceManager.ts","../src/NoLagNotify.ts"],"sourcesContent":[null,null,null,null,null,null,null,null],"names":["EventEmitter","constructor","this","_handlers","Map","on","event","handler","has","set","Set","get","add","off","delete","removeAllListeners","clear","emit","args","handlers","e","console","error","String","listenerCount","size","NotificationStore","maxSize","_notifications","_ids","_maxSize","notification","id","push","length","timestamp","sort","a","b","removed","shift","markRead","find","n","read","markAllRead","getAll","getUnread","filter","unreadCount","generateId","crypto","randomUUID","replace","Math","floor","random","toString","createLogger","prefix","enabled","log","_args","wrapperRegistry","WeakMap","TOPIC_NOTIFICATIONS","TOPIC_READ","NotifyChannel","name","roomContext","options","isConnected","super","_active","_filters","_onNotificationsRef","_onReadRef","_roomContext","_options","_store","maxNotificationCache","_log","_isConnected","notifications","active","send","title","opts","channel","body","icon","data","Date","now","payload","emitOpts","filters","filterEmitOptions","Object","keys","setFilters","values","addFilters","existing","simple","groups","f","v","mergeFilters","removeFilters","remove","drop","withoutFilters","all","getNotifications","_subscribe","subscribe","meta","_handleIncomingNotification","_handleIncomingRead","_activate","_deactivate","_handleReplayStart","count","_handleReplayEnd","replayed","_cleanup","unsubscribe","raw","isReplay","BadgeManager","_counts","update","byChannel","total","PresenceManager","_users","_actorToUserId","addFromPresence","actorTokenId","presenceData","joinedAt","userId","user","metadata","removeByActorId","getUser","getUserByActorId","undefined","Array","from","NoLagNotify","_channels","_lobby","_badgeManager","_presenceManager","_epoch","_detached","_isReady","_lobbyRefreshTimer","_onConnectRef","_onConnect","_onDisconnectRef","reason","_onReconnectRef","_onErrorRef","_onReplayStartRef","_onReplayEndRef","_onPresenceJoinRef","_handleRoomPresenceJoin","_onPresenceLeaveRef","_handleRoomPresenceLeave","_onPresenceUpdateRef","_handleRoomPresenceUpdate","_onLobbyJoinRef","_handleLobbyJoin","_onLobbyLeaveRef","_handleLobbyLeave","_onLobbyUpdateRef","_handleLobbyUpdate","client","TypeError","_client","_userId","appName","debug","channels","_readyPromise","Promise","resolve","reject","_readyResolve","_readyReject","catch","wrapperName","apps","warn","registerWrapper","queueMicrotask","connected","ready","detach","clearTimeout","Error","_runSetup","epoch","stale","actorId","setApp","setLobby","state","_diffHydratePresence","err","channelName","_subscribeChannel","_scheduleLobbyRefresh","setTimeout","fetchPresence","then","_assertUsable","_emitBadgeUpdated","getBadgeCounts","setRoom","_foreignScope","scope","__scope","presence","freshActors","roomId","roomPresence"],"mappings":"MAGaA,EAAb,WAAAC,GACUC,KAAAC,UAAY,IAAIC,GAuC1B,CArCE,EAAAC,CAA6BC,EAAUC,GAKrC,OAJKL,KAAKC,UAAUK,IAAIF,IACtBJ,KAAKC,UAAUM,IAAIH,EAAO,IAAII,KAEhCR,KAAKC,UAAUQ,IAAIL,GAAQM,IAAIL,GACxBL,IACT,CAEA,GAAAW,CAA8BP,EAAUC,GAMtC,OALIA,EACFL,KAAKC,UAAUQ,IAAIL,IAAQQ,OAAOP,GAElCL,KAAKC,UAAUW,OAAOR,GAEjBJ,IACT,CAEA,kBAAAa,GAEE,OADAb,KAAKC,UAAUa,QACRd,IACT,CAEU,IAAAe,CAA+BX,KAAaY,GACpD,MAAMC,EAAWjB,KAAKC,UAAUQ,IAAIL,GACpC,GAAKa,EACL,IAAK,MAAMZ,KAAWY,EACpB,IACEZ,KAAWW,EACb,CAAE,MAAOE,GACPC,QAAQC,MAAM,YAAYC,OAAOjB,cAAmBc,EACtD,CAEJ,CAEA,aAAAI,CAAwClB,GACtC,OAAOJ,KAAKC,UAAUQ,IAAIL,IAAQmB,MAAQ,CAC5C,QCpCWC,EAKX,WAAAzB,CAAY0B,GAJJzB,KAAA0B,eAAiC,GACjC1B,KAAA2B,KAAO,IAAInB,IAIjBR,KAAK4B,SAAWH,CAClB,CAKA,GAAAf,CAAImB,GACF,GAAI7B,KAAK2B,KAAKrB,IAAIuB,EAAaC,IAC7B,OAAO,EAeT,IAZA9B,KAAK2B,KAAKjB,IAAImB,EAAaC,IAC3B9B,KAAK0B,eAAeK,KAAKF,GAIvB7B,KAAK0B,eAAeM,OAAS,GAC7BH,EAAaI,UAAYjC,KAAK0B,eAAe1B,KAAK0B,eAAeM,OAAS,GAAGC,WAE7EjC,KAAK0B,eAAeQ,KAAK,CAACC,EAAGC,IAAMD,EAAEF,UAAYG,EAAEH,WAI9CjC,KAAK0B,eAAeM,OAAShC,KAAK4B,UAAU,CACjD,MAAMS,EAAUrC,KAAK0B,eAAeY,QACpCtC,KAAK2B,KAAKf,OAAOyB,EAAQP,GAC3B,CAEA,OAAO,CACT,CAMA,QAAAS,CAAST,GACP,MAAMD,EAAe7B,KAAK0B,eAAec,KAAMC,GAAMA,EAAEX,KAAOA,GAC9D,QAAKD,IACLA,EAAaa,MAAO,GACb,EACT,CAKA,WAAAC,GACE,IAAK,MAAMd,KAAgB7B,KAAK0B,eAC9BG,EAAaa,MAAO,CAExB,CAKA,MAAAE,GACE,MAAO,IAAI5C,KAAK0B,eAClB,CAKA,SAAAmB,GACE,OAAO7C,KAAK0B,eAAeoB,OAAQL,IAAOA,EAAEC,KAC9C,CAKA,eAAIK,GACF,OAAO/C,KAAK0B,eAAeoB,OAAQL,IAAOA,EAAEC,MAAMV,MACpD,CAKA,QAAIT,GACF,OAAOvB,KAAK0B,eAAeM,MAC7B,CAKA,GAAA1B,CAAIwB,GACF,OAAO9B,KAAK2B,KAAKrB,IAAIwB,EACvB,CAKA,KAAAhB,GACEd,KAAK0B,eAAiB,GACtB1B,KAAK2B,KAAKb,OACZ,WCtGckC,IACd,MAAsB,oBAAXC,QAAuD,mBAAtBA,OAAOC,WAC1CD,OAAOC,aAET,sBAAsBC,QAAQ,KAAM,IACzCC,KAAKC,MAAsB,GAAhBD,KAAKE,UAAeC,SAAS,IAE5C,CAEM,SAAUC,EAAaC,EAAgBC,GAC3C,OAAKA,EAGE,IAAI1C,KACTG,QAAQwC,IAAI,IAAIF,QAAczC,IAHvB,IAAI4C,MAKf,CAmFA,MAAMC,EAAkB,IAAIC,QCpGrB,MAMMC,EAAsB,gBAGtBC,EAAa,QCQpB,MAAOC,UAAsBnE,EAkBjC,WAAAC,CACEmE,EACAC,EACAC,EACAT,EACAU,GAEAC,QAhBMtE,KAAAuE,SAAU,EACVvE,KAAAwE,SAA0B,GAI1BxE,KAAAyE,oBAA2E,KAC3EzE,KAAA0E,WAA+C,KAWrD1E,KAAKkE,KAAOA,EACZlE,KAAK2E,aAAeR,EACpBnE,KAAK4E,SAAWR,EAChBpE,KAAK6E,OAAS,IAAIrD,EAAkB4C,EAAQU,sBAC5C9E,KAAK+E,KAAOpB,EACZ3D,KAAKgF,aAAeX,CACtB,CAKA,iBAAIY,GACF,OAAOjF,KAAK6E,OAAOjC,QACrB,CAGA,eAAIG,GACF,OAAO/C,KAAK6E,OAAO9B,WACrB,CAGA,UAAImC,GACF,OAAOlF,KAAKuE,OACd,CAOA,IAAAY,CAAKC,EAAeC,GAClB,MAAMxD,EAA6B,CACjCC,GAAIkB,IACJsC,QAAStF,KAAKkE,KACdkB,QACAG,KAAMF,GAAME,KACZC,KAAMH,GAAMG,KACZC,KAAMJ,GAAMI,KACZxD,UAAWyD,KAAKC,OAKZC,EAAU,CACd9D,GAAID,EAAaC,GACjBwD,QAASzD,EAAayD,QACtBF,MAAOvD,EAAauD,MACpBG,KAAM1D,EAAa0D,KACnBC,KAAM3D,EAAa2D,KACnBC,KAAM5D,EAAa4D,KACnBxD,UAAWJ,EAAaI,WAKpB4D,EFvEJ,SAA4BR,GAIhC,OAAIA,GAAMvC,OAAe,CAAEA,OAAQuC,EAAKvC,QACpCuC,GAAMS,SAAWT,EAAKS,QAAQ9D,OAAS,EAAU,CAAE8D,QAAST,EAAKS,SAC9D,CAAA,CACT,CEgEqBC,CAAkBV,GAC/BW,OAAOC,KAAKJ,GAAU7D,OAAS,EACjChC,KAAK2E,aAAa5D,KAAKgD,EAAqB6B,EAASC,GAErD7F,KAAK2E,aAAa5D,KAAKgD,EAAqB6B,EAEhD,CAKA,WAAIE,GACF,MAAO,IAAI9F,KAAKwE,SAClB,CAiBA,UAAA0B,CAAWC,GACTnG,KAAKwE,SAAW,IAAI2B,GAGpBnG,KAAK2E,aAAauB,WAAWnC,EAAqB/D,KAAKwE,SACzD,CAGA,UAAA4B,CAAWD,GACTnG,KAAKkG,WFpFH,SAAuBG,EAAyB3F,GACpD,MAAM4F,EAAS,IAAI9F,IACb+F,EAAqB,GAC3B,IAAK,MAAMC,KAAKH,EACG,iBAANG,EAAgBF,EAAO5F,IAAI8F,GACjCD,EAAOxE,KAAKyE,GAEnB,IAAK,MAAMC,KAAK/F,EAAK4F,EAAO5F,IAAI+F,GAChC,MAAO,IAAIH,KAAWC,EACxB,CE2EoBG,CAAa1G,KAAKwE,SAAU2B,GAC9C,CAMA,aAAAQ,CAAcR,GACZnG,KAAKkG,WF7EH,SAAyBG,EAAyBO,GACtD,MAAMC,EAAO,IAAIrG,IAAIoG,GACrB,OAAOP,EAASvD,OAAQ0D,GAAmB,iBAANA,IAAmBK,EAAKvG,IAAIkG,GACnE,CE0EoBM,CAAe9G,KAAKwE,SAAU2B,GAChD,CAQA,QAAA5D,CAAST,GACH9B,KAAK6E,OAAOtC,SAAST,KACvB9B,KAAK+E,KAAK,aAAcjD,GACxB9B,KAAK2E,aAAa5D,KAAKiD,EAAY,CAAElC,KAAIwD,QAAStF,KAAKkE,OACvDlE,KAAKe,KAAK,OAAQe,GAEtB,CAKA,WAAAa,GACE3C,KAAK6E,OAAOlC,cACZ3C,KAAK+E,KAAK,iBAAkB/E,KAAKkE,MACjClE,KAAK2E,aAAa5D,KAAKiD,EAAY,CAAE+C,KAAK,EAAMzB,QAAStF,KAAKkE,OAC9DlE,KAAKe,KAAK,UACZ,CAKA,gBAAAiG,GACE,OAAOhH,KAAK6E,OAAOjC,QACrB,CAKA,SAAAC,GACE,OAAO7C,KAAK6E,OAAOhC,WACrB,CAKA,UAAAoE,CAAWnB,GACT9F,KAAK+E,KAAK,qBAAsB/E,KAAKkE,MAErClE,KAAKwE,SAAWsB,EAAU,IAAIA,GAAW,GAGrC9F,KAAKwE,SAASxC,OAAS,EACzBhC,KAAK2E,aAAauC,UAAUnD,EAAqB,CAAE+B,QAAS9F,KAAKwE,WAEjExE,KAAK2E,aAAauC,UAAUnD,GAE9B/D,KAAK2E,aAAauC,UAAUlD,GAG5BhE,KAAKyE,oBAAsB,CAACgB,EAAe0B,KACzCnH,KAAKoH,4BAA4B3B,EAAM0B,IAEzCnH,KAAK2E,aAAaxE,GAAG4D,EAAqB/D,KAAKyE,qBAE/CzE,KAAK0E,WAAce,IACjBzF,KAAKqH,oBAAoB5B,IAE3BzF,KAAK2E,aAAaxE,GAAG6D,EAAYhE,KAAK0E,WACxC,CAGA,SAAA4C,GACEtH,KAAK+E,KAAK,oBAAqB/E,KAAKkE,MACpClE,KAAKuE,SAAU,CACjB,CAGA,WAAAgD,GACEvH,KAAK+E,KAAK,sBAAuB/E,KAAKkE,MACtClE,KAAKuE,SAAU,CACjB,CAGA,kBAAAiD,CAAmBC,GACjBzH,KAAKe,KAAK,cAAe,CAAE0G,SAC7B,CAGA,gBAAAC,CAAiBC,GACf3H,KAAKe,KAAK,YAAa,CAAE4G,YAC3B,CAGA,QAAAC,GACE5H,KAAK+E,KAAK,mBAAoB/E,KAAKkE,MAI/BlE,KAAKgF,iBACPhF,KAAK2E,aAAakD,YAAY9D,GAC9B/D,KAAK2E,aAAakD,YAAY7D,IAK5BhE,KAAKyE,qBAAqBzE,KAAK2E,aAAahE,IAAIoD,EAAqB/D,KAAKyE,qBAC1EzE,KAAK0E,YAAY1E,KAAK2E,aAAahE,IAAIqD,EAAYhE,KAAK0E,YAC5D1E,KAAKyE,oBAAsB,KAC3BzE,KAAK0E,WAAa,KAElB1E,KAAK6E,OAAO/D,QACZd,KAAKa,oBACP,CAIQ,2BAAAuG,CAA4B3B,EAAe0B,GACjD,MAAMW,EAAMrC,EAEN5D,EAA6B,CACjCC,GAAKgG,EAAIhG,IAAiBkB,IAC1BsC,QAAStF,KAAKkE,KACdkB,MAAO0C,EAAI1C,MACXG,KAAMuC,EAAIvC,KACVC,KAAMsC,EAAItC,KACVC,KAAMqC,EAAIrC,KACVxD,UAAW6F,EAAI7F,WAAuByD,KAAKC,MAC3CjD,MAAM,EACNqF,SAAUZ,EAAKY,WAAY,GAGzB/H,KAAK6E,OAAOnE,IAAImB,KAClB7B,KAAK+E,KAAK,yBAA0BlD,EAAaC,GAAID,EAAauD,OAClEpF,KAAKe,KAAK,eAAgBc,GAE9B,CAEQ,mBAAAwF,CAAoB5B,GAC1B,MAAMqC,EAAMrC,GAEI,IAAZqC,EAAIf,KACN/G,KAAK6E,OAAOlC,cACZ3C,KAAKe,KAAK,YACiB,iBAAX+G,EAAIhG,IAChB9B,KAAK6E,OAAOtC,SAASuF,EAAIhG,KAC3B9B,KAAKe,KAAK,OAAQ+G,EAAIhG,GAG5B,QChSWkG,EAAb,WAAAjI,GACUC,KAAAiI,QAAU,IAAI/H,GAqCxB,CAhCE,MAAAgI,CAAO5C,EAAiBvC,GACtB/C,KAAKiI,QAAQ1H,IAAI+E,EAASvC,EAC5B,CAKA,GAAAtC,CAAI6E,GACF,OAAOtF,KAAKiI,QAAQxH,IAAI6E,IAAY,CACtC,CAKA,MAAA1C,GACE,MAAMuF,EAAoC,CAAA,EAC1C,IAAIC,EAAQ,EAEZ,IAAK,MAAO9C,EAASmC,KAAUzH,KAAKiI,QAClCE,EAAU7C,GAAWmC,EACrBW,GAASX,EAGX,MAAO,CAAEW,QAAOD,YAClB,CAKA,KAAArH,GACEd,KAAKiI,QAAQnH,OACf,QC9BWuH,EAAb,WAAAtI,GACUC,KAAAsI,OAAS,IAAIpI,IACbF,KAAAuI,eAAiB,IAAIrI,GAqE/B,CA/DE,eAAAsI,CAAgBC,EAAsBC,EAAkCC,GACtE,IAAKD,GAAcE,OAAQ,OAAO,KAElC,MAAMvC,EAAWrG,KAAKuI,eAAe9H,IAAIgI,GACnCG,EAASF,EAAaE,QAAUvC,GAAYoC,EAE5CI,EAAmB,CACvBD,SACAH,eACAK,SAAUJ,EAAaI,SACvBH,SAAUA,GAAYjD,KAAKC,OAM7B,OAHA3F,KAAKsI,OAAO/H,IAAIqI,EAAQC,GACxB7I,KAAKuI,eAAehI,IAAIkI,EAAcG,GAE/BC,CACT,CAMA,eAAAE,CAAgBN,GACd,MAAMG,EAAS5I,KAAKuI,eAAe9H,IAAIgI,GACvC,IAAKG,EAAQ,OAAO,KAEpB,MAAMC,EAAO7I,KAAKsI,OAAO7H,IAAImI,IAAW,KAIxC,OAHA5I,KAAKsI,OAAO1H,OAAOgI,GACnB5I,KAAKuI,eAAe3H,OAAO6H,GAEpBI,CACT,CAKA,OAAAG,CAAQJ,GACN,OAAO5I,KAAKsI,OAAO7H,IAAImI,EACzB,CAKA,gBAAAK,CAAiBR,GACf,MAAMG,EAAS5I,KAAKuI,eAAe9H,IAAIgI,GACvC,OAAOG,EAAS5I,KAAKsI,OAAO7H,IAAImI,QAAUM,CAC5C,CAKA,MAAAtG,GACE,OAAOuG,MAAMC,KAAKpJ,KAAKsI,OAAOnC,SAChC,CAKA,KAAArF,GACEd,KAAKsI,OAAOxH,QACZd,KAAKuI,eAAezH,OACtB,ECxBI,MAAOuI,UAAoBvJ,EAuD/B,WAAAC,CAAYqE,GAGV,GAFAE,QArDMtE,KAAAsJ,UAAY,IAAIpJ,IAChBF,KAAAuJ,OAA8B,KAC9BvJ,KAAAwJ,cAAgB,IAAIxB,EACpBhI,KAAAyJ,iBAAmB,IAAIpB,EACvBrI,KAAAuI,eAAiB,IAAIrI,IAKrBF,KAAA0J,OAAS,EACT1J,KAAA2J,WAAY,EACZ3J,KAAA4J,UAAW,EAIX5J,KAAA6J,mBAA2D,KAK3D7J,KAAA8J,cAAgB,IAAM9J,KAAK+J,aAC3B/J,KAAAgK,iBAAoBC,IAC1BjK,KAAK+E,KAAK,gBAAiBkF,GAC3BjK,KAAKe,KAAK,eAAgBkJ,IAEpBjK,KAAAkK,gBAAkB,KACxBlK,KAAK+E,KAAK,mBACV/E,KAAKe,KAAK,iBAEJf,KAAAmK,YAAe/I,IACrBpB,KAAK+E,KAAK,SAAU3D,GACpBpB,KAAKe,KAAK,QAASK,IAEbpB,KAAAoK,kBAAqB3E,IAC3B,MAAMrF,EAAQqF,EACd,IAAK,MAAMH,KAAWtF,KAAKsJ,UAAUnD,SACnCb,EAAQkC,mBAAmBpH,EAAMqH,QAG7BzH,KAAAqK,gBAAmB5E,IACzB,MAAMrF,EAAQqF,EACd,IAAK,MAAMH,KAAWtF,KAAKsJ,UAAUnD,SACnCb,EAAQoC,iBAAiBtH,EAAMuH,WAG3B3H,KAAAsK,mBAAsB7E,GAAwBzF,KAAKuK,wBAAwB9E,GAC3EzF,KAAAwK,oBAAuB/E,GAAwBzF,KAAKyK,yBAAyBhF,GAC7EzF,KAAA0K,qBAAwBjF,GAAwBzF,KAAK2K,0BAA0BlF,GAC/EzF,KAAA4K,gBAAmBnF,GAAkBzF,KAAK6K,iBAAiBpF,GAC3DzF,KAAA8K,iBAAoBrF,GAAkBzF,KAAK+K,kBAAkBtF,GAC7DzF,KAAAgL,kBAAqBvF,GAAkBzF,KAAKiL,mBAAmBxF,IAKhErB,GAAS8G,OACZ,MAAM,IAAIC,UACR,mFAIJnL,KAAKoL,QAAUhH,EAAQ8G,OACvBlL,KAAKqL,QAAUrI,IAEfhD,KAAK4E,SAAW,CACdkE,SAAU1E,EAAQ0E,SAClBwC,QAASlH,EAAQkH,SJ9HS,SI+H1BxG,qBAAsBV,EAAQU,sBJ5HU,II6HxCyG,MAAOnH,EAAQmH,QAAS,EACxBC,SAAUpH,EAAQoH,UAAY,IAGhCxL,KAAK+E,KAAOvB,EAAa,cAAexD,KAAK4E,SAAS2G,OAEtDvL,KAAKyL,cAAgB,IAAIC,QAAc,CAACC,EAASC,KAC/C5L,KAAK6L,cAAgBF,EACrB3L,KAAK8L,aAAeF,IAGtB5L,KAAKyL,cAAcM,MAAM,iBLpCGb,EAAgBI,EAAiBU,GAC/D,IAAIC,EAAOpI,EAAgBpD,IAAIyK,GAC1Be,IACHA,EAAO,IAAI/L,IACX2D,EAAgBtD,IAAI2K,EAAQe,IAE9B,MAAM5F,EAAW4F,EAAKxL,IAAI6K,GACtBjF,GACFlF,QAAQ+K,KACN,IAAIF,uBAAiC3F,kDAAyDiF,4EAIlGW,EAAK1L,IAAI+K,EAASU,EACpB,CKwBIG,CAAgBnM,KAAKoL,QAASpL,KAAK4E,SAAS0G,QAAS,eAGrDtL,KAAKoL,QAAQjL,GAAG,UAAWH,KAAK8J,eAChC9J,KAAKoL,QAAQjL,GAAG,aAAcH,KAAKgK,kBACnChK,KAAKoL,QAAQjL,GAAG,YAAaH,KAAKkK,iBAClClK,KAAKoL,QAAQjL,GAAG,QAASH,KAAKmK,aAC9BnK,KAAKoL,QAAQjL,GAAG,eAAgBH,KAAKoK,mBACrCpK,KAAKoL,QAAQjL,GAAG,aAAcH,KAAKqK,iBACnCrK,KAAKoL,QAAQjL,GAAG,gBAAiBH,KAAKsK,oBACtCtK,KAAKoL,QAAQjL,GAAG,iBAAkBH,KAAKwK,qBACvCxK,KAAKoL,QAAQjL,GAAG,kBAAmBH,KAAK0K,sBACxC1K,KAAKoL,QAAQjL,GAAG,qBAAsBH,KAAK4K,iBAC3C5K,KAAKoL,QAAQjL,GAAG,sBAAuBH,KAAK8K,kBAC5C9K,KAAKoL,QAAQjL,GAAG,uBAAwBH,KAAKgL,mBAK7CoB,eAAe,KACO,IAAhBpM,KAAK0J,SAAiB1J,KAAK2J,WAAa3J,KAAKoL,QAAQiB,WACvDrM,KAAK+J,cAGX,CAKA,aAAIsC,GACF,OAAQrM,KAAK2J,WAAa3J,KAAKoL,QAAQiB,SACzC,CAGA,UAAInB,GACF,OAAOlL,KAAKoL,OACd,CAGA,YAAII,GACF,OAAOxL,KAAKsJ,SACd,CAUA,KAAAgD,GACE,OAAOtM,KAAKyL,aACd,CAQA,MAAAc,GACE,IAAIvM,KAAK2J,UAAT,CACA3J,KAAK+E,KAAK,gBACV/E,KAAK2J,WAAY,EACjB3J,KAAK0J,SAED1J,KAAK6J,qBACP2C,aAAaxM,KAAK6J,oBAClB7J,KAAK6J,mBAAqB,MAI5B7J,KAAKoL,QAAQzK,IAAI,UAAWX,KAAK8J,eACjC9J,KAAKoL,QAAQzK,IAAI,aAAcX,KAAKgK,kBACpChK,KAAKoL,QAAQzK,IAAI,YAAaX,KAAKkK,iBACnClK,KAAKoL,QAAQzK,IAAI,QAASX,KAAKmK,aAC/BnK,KAAKoL,QAAQzK,IAAI,eAAgBX,KAAKoK,mBACtCpK,KAAKoL,QAAQzK,IAAI,aAAcX,KAAKqK,iBACpCrK,KAAKoL,QAAQzK,IAAI,gBAAiBX,KAAKsK,oBACvCtK,KAAKoL,QAAQzK,IAAI,iBAAkBX,KAAKwK,qBACxCxK,KAAKoL,QAAQzK,IAAI,kBAAmBX,KAAK0K,sBACzC1K,KAAKoL,QAAQzK,IAAI,qBAAsBX,KAAK4K,iBAC5C5K,KAAKoL,QAAQzK,IAAI,sBAAuBX,KAAK8K,kBAC7C9K,KAAKoL,QAAQzK,IAAI,uBAAwBX,KAAKgL,mBAG9C,IAAK,MAAM9G,IAAQ,IAAIlE,KAAKsJ,UAAUrD,QACpCjG,KAAKsJ,UAAU7I,IAAIyD,GAAO0D,WAC1B5H,KAAKsJ,UAAU1I,OAAOsD,GAIxB,GAAIlE,KAAKuJ,QAAUvJ,KAAKoL,QAAQiB,UAC9B,IACErM,KAAKuJ,OAAO1B,aACd,CAAE,MAEF,CLvHA,IAAyBqD,EAAgBI,EKyH3CtL,KAAKuJ,OAAS,KAEdvJ,KAAKwJ,cAAc1I,QACnBd,KAAKyJ,iBAAiB3I,QACtBd,KAAKuI,eAAezH,QL7HOoK,EK+HZlL,KAAKoL,QL/HuBE,EK+HdtL,KAAK4E,SAAS0G,QL9H7CzH,EAAgBpD,IAAIyK,IAAStK,OAAO0K,GKgI7BtL,KAAK4J,UACR5J,KAAK8L,aAAa,IAAIW,MAAM,qCA/CV,CAiDtB,CAIQ,UAAA1C,GACN/J,KAAK0J,SACA1J,KAAK0M,UAAU1M,KAAK0J,OAC3B,CAOQ,eAAMgD,CAAUC,GACtB,MAAMC,EAAQ,IAAMD,IAAU3M,KAAK0J,QAAU1J,KAAK2J,UAClD3J,KAAK+E,KAAK/E,KAAK4J,SAAW,+BAAiC,iBAC3D5J,KAAK+E,KAAK,gBAAiB/E,KAAKqL,QAAS,aAAcrL,KAAKoL,QAAQyB,SAI/D7M,KAAKuJ,SACRvJ,KAAKuJ,OAASvJ,KAAKoL,QAAQ0B,OAAO9M,KAAK4E,SAAS0G,SAASyB,SJtQvC,WIwQpB,IACE,MAAMC,QAAchN,KAAKuJ,OAAOrC,YAChC,GAAI0F,IAAS,OACb5M,KAAKiN,qBAAqBD,GAC1BhN,KAAK+E,KAAK,mBACZ,CAAE,MAAOmI,GACP,GAAIN,IAAS,OACb5M,KAAK+E,KAAK,6BAA8BmI,EAC1C,CAIA,IAAKlN,KAAK4J,SACR,IAAK,MAAMuD,KAAenN,KAAK4E,SAAS4G,SACtCxL,KAAKoN,kBAAkBD,GAIvBP,MAIC5M,KAAK4J,SAKR5J,KAAKe,KAAK,gBAJVf,KAAK4J,UAAW,EAChB5J,KAAK6L,gBACL7L,KAAKe,KAAK,cAOZf,KAAKqN,sBAAsBV,GAC7B,CAEQ,qBAAAU,CAAsBV,GACxB3M,KAAK6J,oBAAoB2C,aAAaxM,KAAK6J,oBAC/C7J,KAAK6J,mBAAqByD,WAAW,KACnCtN,KAAK6J,mBAAqB,KACtB8C,IAAU3M,KAAK0J,SAAU1J,KAAK2J,WAAc3J,KAAKoL,QAAQiB,WAAcrM,KAAKuJ,QAGhFvJ,KAAKuJ,OACFgE,gBACAC,KAAMR,IACDL,IAAU3M,KAAK0J,QAAU1J,KAAK2J,WAClC3J,KAAKiN,qBAAqBD,KAE3BjB,MAAM,SJrTuB,IIyTpC,CAQA,SAAA7E,CAAUiG,EAAqB9H,GAC7BrF,KAAKyN,gBAEL,MAAMpH,EAAWrG,KAAKsJ,UAAU7I,IAAI0M,GACpC,GAAI9G,EAGF,OADIhB,GAAMS,SAASO,EAASH,WAAWb,EAAKS,SACrCO,EAGT,MAAMf,EAAUtF,KAAKoN,kBAAkBD,EAAa9H,GAAMS,SAG1D,OAFAR,EAAQgC,YAEDhC,CACT,CAKA,WAAAuC,CAAYsF,GACV,MAAM7H,EAAUtF,KAAKsJ,UAAU7I,IAAI0M,GAC9B7H,IAELtF,KAAK+E,KAAK,yBAA0BoI,GACpC7H,EAAQsC,WACR5H,KAAKsJ,UAAU1I,OAAOuM,GACtBnN,KAAKwJ,cAActB,OAAOiF,EAAa,GACvCnN,KAAK0N,oBACP,CAOA,cAAAC,GACE,OAAO3N,KAAKwJ,cAAc5G,QAC5B,CAOA,WAAAD,GACE,IAAK,MAAM2C,KAAWtF,KAAKsJ,UAAUnD,SACnCb,EAAQ3C,aAEZ,CAIQ,aAAA8K,GACN,GAAIzN,KAAK2J,UACP,MAAM,IAAI8C,MAAM,4DAElB,IAAKzM,KAAK4J,SACR,MAAM,IAAI6C,MAAM,iEAEpB,CAIQ,iBAAAW,CAAkBlJ,EAAc4B,GACtC9F,KAAK+E,KAAK,uBAAwBb,GAElC,MAAMC,EAAcnE,KAAKoL,QAAQ0B,OAAO9M,KAAK4E,SAAS0G,SAASsC,QAAQ1J,GACjEoB,EAAU,IAAIrB,EAClBC,EACAC,EACAnE,KAAK4E,SACLpB,EAAa,iBAAiBU,IAAQlE,KAAK4E,SAAS2G,OACpD,IAAMvL,KAAKoL,QAAQiB,WAuBrB,OApBArM,KAAKsJ,UAAU/I,IAAI2D,EAAMoB,GACzBA,EAAQ2B,WAAWnB,GAGnBR,EAAQnF,GAAG,eAAiB0B,IAC1B7B,KAAKwJ,cAActB,OAAOhE,EAAMoB,EAAQvC,aACxC/C,KAAK0N,oBACL1N,KAAKe,KAAK,eAAgBc,KAG5ByD,EAAQnF,GAAG,OAAQ,KACjBH,KAAKwJ,cAActB,OAAOhE,EAAMoB,EAAQvC,aACxC/C,KAAK0N,sBAGPpI,EAAQnF,GAAG,UAAW,KACpBH,KAAKwJ,cAActB,OAAOhE,EAAM,GAChClE,KAAK0N,sBAGApI,CACT,CAEQ,iBAAAoI,GACN1N,KAAKe,KAAK,eAAgBf,KAAKwJ,cAAc5G,SAC/C,CAUQ,aAAAiL,CAAcpI,GACpB,MAAMqI,EAASrI,GAA8CsI,QAC7D,MAAwB,iBAAVD,GAAsBA,IAAU9N,KAAK4E,SAAS0G,OAC9D,CAIQ,uBAAAf,CAAwB9E,GAC9B,GAAIA,EAAKgD,eAAiBzI,KAAKoL,QAAQyB,QAAS,OAChD,MAAMnE,EAAejD,EAAKuI,SAC1B,IAAKtF,GAAcE,QAAU5I,KAAK6N,cAAcnF,GAAe,OAE/D,MAAMG,EAAO7I,KAAKyJ,iBAAiBjB,gBAAgB/C,EAAKgD,aAAcC,GAClEG,GACF7I,KAAKuI,eAAehI,IAAIkF,EAAKgD,aAAcI,EAAKD,OAEpD,CAEQ,wBAAA6B,CAAyBhF,GAC3BA,EAAKgD,eAAiBzI,KAAKoL,QAAQyB,SACvC7M,KAAKyJ,iBAAiBV,gBAAgBtD,EAAKgD,aAC7C,CAEQ,yBAAAkC,CAA0BlF,GAChC,GAAIA,EAAKgD,eAAiBzI,KAAKoL,QAAQyB,QAAS,OAChD,MAAMnE,EAAejD,EAAKuI,SACrBtF,GAAcE,SAAU5I,KAAK6N,cAAcnF,IAChD1I,KAAKyJ,iBAAiBjB,gBAAgB/C,EAAKgD,aAAcC,EAC3D,CAIQ,gBAAAmC,CAAiBzK,GACvB,MAAMyM,QAAEA,EAAOpH,KAAEA,GAASrF,EAC1B,GAAIyM,IAAY7M,KAAKoL,QAAQyB,QAAS,OAEtC,MAAMnE,EAAejD,EACrB,IAAKiD,GAAcE,QAAU5I,KAAK6N,cAAcnF,GAAe,OAE/D,MAAMG,EAAO7I,KAAKyJ,iBAAiBjB,gBAAgBqE,EAASnE,GACxDG,GACF7I,KAAKuI,eAAehI,IAAIsM,EAAShE,EAAKD,OAE1C,CAEQ,iBAAAmC,CAAkB3K,GACxB,MAAMyM,QAAEA,EAAOpH,KAAEA,GAASrF,EAC1B,GAAIyM,IAAY7M,KAAKoL,QAAQyB,QAAS,OAEtC,MAAMnE,EAAejD,EACjBzF,KAAK6N,cAAcnF,KACvB1I,KAAKyJ,iBAAiBV,gBAAgB8D,GACtC7M,KAAKuI,eAAe3H,OAAOiM,GAC7B,CAEQ,kBAAA5B,CAAmB7K,GACzB,MAAMyM,QAAEA,EAAOpH,KAAEA,GAASrF,EAC1B,GAAIyM,IAAY7M,KAAKoL,QAAQyB,QAAS,OAEtC,MAAMnE,EAAejD,EAChBiD,GAAcE,SAAU5I,KAAK6N,cAAcnF,IAChD1I,KAAKyJ,iBAAiBjB,gBAAgBqE,EAASnE,EACjD,CAMQ,oBAAAuE,CAAqBD,GAE3B,MAAMiB,EAAc,IAAIzN,IAExB,IAAK,MAAM0N,KAAUlI,OAAOC,KAAK+G,GAAQ,CACvC,MAAMmB,EAAenB,EAAMkB,GAC3B,IAAK,MAAMrB,KAAW7G,OAAOC,KAAKkI,GAAe,CAC/C,GAAItB,IAAY7M,KAAKoL,QAAQyB,QAAS,SAEtC,MAAM/E,EAAMqG,EAAatB,GAEnBnE,EAAgBZ,GAAKkG,UAAYlG,EACvC,GAAIY,GAAcE,SAAW5I,KAAK6N,cAAcnF,GAAe,CAC7DuF,EAAYvN,IAAImM,GAChB,MAAMhE,EAAO7I,KAAKyJ,iBAAiBjB,gBAAgBqE,EAASnE,GACxDG,GACF7I,KAAKuI,eAAehI,IAAIsM,EAAShE,EAAKD,OAE1C,CACF,CACF,CAGA,IAAK,MAAOiE,IAAY,IAAI7M,KAAKuI,gBAC1B0F,EAAY3N,IAAIuM,KACnB7M,KAAKyJ,iBAAiBV,gBAAgB8D,GACtC7M,KAAKuI,eAAe3H,OAAOiM,GAGjC"}
|
package/dist/index.cjs
CHANGED
|
@@ -148,6 +148,45 @@ function createLogger(prefix, enabled) {
|
|
|
148
148
|
console.log(`[${prefix}]`, ...args);
|
|
149
149
|
};
|
|
150
150
|
}
|
|
151
|
+
// ============ Filters ============
|
|
152
|
+
/**
|
|
153
|
+
* Build the filter fragment of an emit options object.
|
|
154
|
+
*
|
|
155
|
+
* `filter` wins over `filters`: a publish is routed to exactly one topic, so
|
|
156
|
+
* honouring both would silently drop one of them.
|
|
157
|
+
*/
|
|
158
|
+
function filterEmitOptions(opts) {
|
|
159
|
+
if (opts?.filter)
|
|
160
|
+
return { filter: opts.filter };
|
|
161
|
+
if (opts?.filters && opts.filters.length > 0)
|
|
162
|
+
return { filters: opts.filters };
|
|
163
|
+
return {};
|
|
164
|
+
}
|
|
165
|
+
/**
|
|
166
|
+
* Merge OR terms into an existing filter set. AND groups (nested arrays) are
|
|
167
|
+
* preserved as-is — only plain string terms are deduplicated.
|
|
168
|
+
*/
|
|
169
|
+
function mergeFilters(existing, add) {
|
|
170
|
+
const simple = new Set();
|
|
171
|
+
const groups = [];
|
|
172
|
+
for (const f of existing) {
|
|
173
|
+
if (typeof f === 'string')
|
|
174
|
+
simple.add(f);
|
|
175
|
+
else
|
|
176
|
+
groups.push(f);
|
|
177
|
+
}
|
|
178
|
+
for (const v of add)
|
|
179
|
+
simple.add(v);
|
|
180
|
+
return [...simple, ...groups];
|
|
181
|
+
}
|
|
182
|
+
/**
|
|
183
|
+
* Drop OR terms from a filter set. AND groups are left untouched — remove
|
|
184
|
+
* those by calling `setFilters` with the set you want.
|
|
185
|
+
*/
|
|
186
|
+
function withoutFilters(existing, remove) {
|
|
187
|
+
const drop = new Set(remove);
|
|
188
|
+
return existing.filter((f) => typeof f !== 'string' || !drop.has(f));
|
|
189
|
+
}
|
|
151
190
|
// ============ Wrapper registry ============
|
|
152
191
|
// One wrapper instance per (client, appName): two wrappers sharing an app on
|
|
153
192
|
// one connection would collide on topics, presence and the online lobby.
|
|
@@ -195,6 +234,7 @@ class NotifyChannel extends EventEmitter {
|
|
|
195
234
|
constructor(name, roomContext, options, log, isConnected) {
|
|
196
235
|
super();
|
|
197
236
|
this._active = false;
|
|
237
|
+
this._filters = [];
|
|
198
238
|
// Stored topic handler refs — cleanup removes exactly these, never all
|
|
199
239
|
// handlers for a topic (the client may be shared with other consumers).
|
|
200
240
|
this._onNotificationsRef = null;
|
|
@@ -232,7 +272,7 @@ class NotifyChannel extends EventEmitter {
|
|
|
232
272
|
icon: opts?.icon,
|
|
233
273
|
data: opts?.data,
|
|
234
274
|
timestamp: Date.now()};
|
|
235
|
-
|
|
275
|
+
const payload = {
|
|
236
276
|
id: notification.id,
|
|
237
277
|
channel: notification.channel,
|
|
238
278
|
title: notification.title,
|
|
@@ -240,7 +280,53 @@ class NotifyChannel extends EventEmitter {
|
|
|
240
280
|
icon: notification.icon,
|
|
241
281
|
data: notification.data,
|
|
242
282
|
timestamp: notification.timestamp,
|
|
243
|
-
}
|
|
283
|
+
};
|
|
284
|
+
// Only pass options when there is a filter: an unfiltered send should look
|
|
285
|
+
// exactly as it did before filters existed.
|
|
286
|
+
const emitOpts = filterEmitOptions(opts);
|
|
287
|
+
if (Object.keys(emitOpts).length > 0) {
|
|
288
|
+
this._roomContext.emit(TOPIC_NOTIFICATIONS, payload, emitOpts);
|
|
289
|
+
}
|
|
290
|
+
else {
|
|
291
|
+
this._roomContext.emit(TOPIC_NOTIFICATIONS, payload);
|
|
292
|
+
}
|
|
293
|
+
}
|
|
294
|
+
// ============ Filters ============
|
|
295
|
+
/** The filter values currently applied to this channel. */
|
|
296
|
+
get filters() {
|
|
297
|
+
return [...this._filters];
|
|
298
|
+
}
|
|
299
|
+
/**
|
|
300
|
+
* Replace this channel's filters — only notifications published with one of
|
|
301
|
+
* these values are delivered. Subscribe with your own user id (or role) to
|
|
302
|
+
* receive only what was addressed to you.
|
|
303
|
+
*
|
|
304
|
+
* Passing an empty array clears filtering and restores the wildcard
|
|
305
|
+
* subscription, which receives every notification on the channel.
|
|
306
|
+
*
|
|
307
|
+
* @example
|
|
308
|
+
* ```ts
|
|
309
|
+
* channel.setFilters(['user-42', 'all-hands']); // mine OR broadcast
|
|
310
|
+
* channel.setFilters([['eu', 'admin']]); // eu AND admin
|
|
311
|
+
* channel.setFilters([]); // everything
|
|
312
|
+
* ```
|
|
313
|
+
*/
|
|
314
|
+
setFilters(values) {
|
|
315
|
+
this._filters = [...values];
|
|
316
|
+
// The core types filters as `string[]`, but both its implementation and
|
|
317
|
+
// the wire protocol accept AND groups (nested arrays).
|
|
318
|
+
this._roomContext.setFilters(TOPIC_NOTIFICATIONS, this._filters);
|
|
319
|
+
}
|
|
320
|
+
/** Add filter values to the existing set. Existing AND groups are kept. */
|
|
321
|
+
addFilters(values) {
|
|
322
|
+
this.setFilters(mergeFilters(this._filters, values));
|
|
323
|
+
}
|
|
324
|
+
/**
|
|
325
|
+
* Remove filter values from the existing set. Removing the last value
|
|
326
|
+
* restores the wildcard subscription.
|
|
327
|
+
*/
|
|
328
|
+
removeFilters(values) {
|
|
329
|
+
this.setFilters(withoutFilters(this._filters, values));
|
|
244
330
|
}
|
|
245
331
|
// ============ Read Tracking ============
|
|
246
332
|
/**
|
|
@@ -277,9 +363,16 @@ class NotifyChannel extends EventEmitter {
|
|
|
277
363
|
}
|
|
278
364
|
// ============ Internal (called by NoLagNotify) ============
|
|
279
365
|
/** @internal Subscribe to notifications and _read topics */
|
|
280
|
-
_subscribe() {
|
|
366
|
+
_subscribe(filters) {
|
|
281
367
|
this._log('Channel subscribe:', this.name);
|
|
282
|
-
this.
|
|
368
|
+
this._filters = filters ? [...filters] : [];
|
|
369
|
+
// Read receipts stay unfiltered: they are this user's own cross-tab sync.
|
|
370
|
+
if (this._filters.length > 0) {
|
|
371
|
+
this._roomContext.subscribe(TOPIC_NOTIFICATIONS, { filters: this._filters });
|
|
372
|
+
}
|
|
373
|
+
else {
|
|
374
|
+
this._roomContext.subscribe(TOPIC_NOTIFICATIONS);
|
|
375
|
+
}
|
|
283
376
|
this._roomContext.subscribe(TOPIC_READ);
|
|
284
377
|
// Listen for notifications (refs stored for handler-specific removal)
|
|
285
378
|
this._onNotificationsRef = (data, meta) => {
|
|
@@ -742,12 +835,16 @@ class NoLagNotify extends EventEmitter {
|
|
|
742
835
|
* Subscribe to a notification channel (idempotent).
|
|
743
836
|
* Returns the NotifyChannel instance.
|
|
744
837
|
*/
|
|
745
|
-
subscribe(channelName) {
|
|
838
|
+
subscribe(channelName, opts) {
|
|
746
839
|
this._assertUsable();
|
|
747
840
|
const existing = this._channels.get(channelName);
|
|
748
|
-
if (existing)
|
|
841
|
+
if (existing) {
|
|
842
|
+
// Already subscribed — re-point its filters rather than ignoring them.
|
|
843
|
+
if (opts?.filters)
|
|
844
|
+
existing.setFilters(opts.filters);
|
|
749
845
|
return existing;
|
|
750
|
-
|
|
846
|
+
}
|
|
847
|
+
const channel = this._subscribeChannel(channelName, opts?.filters);
|
|
751
848
|
channel._activate();
|
|
752
849
|
return channel;
|
|
753
850
|
}
|
|
@@ -790,12 +887,12 @@ class NoLagNotify extends EventEmitter {
|
|
|
790
887
|
}
|
|
791
888
|
}
|
|
792
889
|
// ============ Private: Channel Setup ============
|
|
793
|
-
_subscribeChannel(name) {
|
|
890
|
+
_subscribeChannel(name, filters) {
|
|
794
891
|
this._log('Subscribing channel:', name);
|
|
795
892
|
const roomContext = this._client.setApp(this._options.appName).setRoom(name);
|
|
796
893
|
const channel = new NotifyChannel(name, roomContext, this._options, createLogger(`NotifyChannel:${name}`, this._options.debug), () => this._client.connected);
|
|
797
894
|
this._channels.set(name, channel);
|
|
798
|
-
channel._subscribe();
|
|
895
|
+
channel._subscribe(filters);
|
|
799
896
|
// Relay notifications up to the main client and update badges
|
|
800
897
|
channel.on('notification', (notification) => {
|
|
801
898
|
this._badgeManager.update(name, channel.unreadCount);
|
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sources":["../src/EventEmitter.ts","../src/NotificationStore.ts","../src/utils.ts","../src/constants.ts","../src/NotifyChannel.ts","../src/BadgeManager.ts","../src/PresenceManager.ts","../src/NoLagNotify.ts"],"sourcesContent":[null,null,null,null,null,null,null,null],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":["../src/EventEmitter.ts","../src/NotificationStore.ts","../src/utils.ts","../src/constants.ts","../src/NotifyChannel.ts","../src/BadgeManager.ts","../src/PresenceManager.ts","../src/NoLagNotify.ts"],"sourcesContent":[null,null,null,null,null,null,null,null],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -5,4 +5,4 @@
|
|
|
5
5
|
export { NoLagNotify } from './NoLagNotify';
|
|
6
6
|
export { NotifyChannel } from './NotifyChannel';
|
|
7
7
|
export { EventEmitter } from './EventEmitter';
|
|
8
|
-
export type { NoLagNotifyOptions, Notification, SendNotificationOptions, BadgeCounts, NotifyClientEvents, NotifyChannelEvents, NotifyPresenceData, } from './types';
|
|
8
|
+
export type { NoLagNotifyOptions, Notification, SendNotificationOptions, BadgeCounts, NotifyClientEvents, NotifyChannelEvents, NotifyPresenceData, FilterValue, SubscribeChannelOptions, } from './types';
|
package/dist/index.mjs
CHANGED
|
@@ -146,6 +146,45 @@ function createLogger(prefix, enabled) {
|
|
|
146
146
|
console.log(`[${prefix}]`, ...args);
|
|
147
147
|
};
|
|
148
148
|
}
|
|
149
|
+
// ============ Filters ============
|
|
150
|
+
/**
|
|
151
|
+
* Build the filter fragment of an emit options object.
|
|
152
|
+
*
|
|
153
|
+
* `filter` wins over `filters`: a publish is routed to exactly one topic, so
|
|
154
|
+
* honouring both would silently drop one of them.
|
|
155
|
+
*/
|
|
156
|
+
function filterEmitOptions(opts) {
|
|
157
|
+
if (opts?.filter)
|
|
158
|
+
return { filter: opts.filter };
|
|
159
|
+
if (opts?.filters && opts.filters.length > 0)
|
|
160
|
+
return { filters: opts.filters };
|
|
161
|
+
return {};
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* Merge OR terms into an existing filter set. AND groups (nested arrays) are
|
|
165
|
+
* preserved as-is — only plain string terms are deduplicated.
|
|
166
|
+
*/
|
|
167
|
+
function mergeFilters(existing, add) {
|
|
168
|
+
const simple = new Set();
|
|
169
|
+
const groups = [];
|
|
170
|
+
for (const f of existing) {
|
|
171
|
+
if (typeof f === 'string')
|
|
172
|
+
simple.add(f);
|
|
173
|
+
else
|
|
174
|
+
groups.push(f);
|
|
175
|
+
}
|
|
176
|
+
for (const v of add)
|
|
177
|
+
simple.add(v);
|
|
178
|
+
return [...simple, ...groups];
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Drop OR terms from a filter set. AND groups are left untouched — remove
|
|
182
|
+
* those by calling `setFilters` with the set you want.
|
|
183
|
+
*/
|
|
184
|
+
function withoutFilters(existing, remove) {
|
|
185
|
+
const drop = new Set(remove);
|
|
186
|
+
return existing.filter((f) => typeof f !== 'string' || !drop.has(f));
|
|
187
|
+
}
|
|
149
188
|
// ============ Wrapper registry ============
|
|
150
189
|
// One wrapper instance per (client, appName): two wrappers sharing an app on
|
|
151
190
|
// one connection would collide on topics, presence and the online lobby.
|
|
@@ -193,6 +232,7 @@ class NotifyChannel extends EventEmitter {
|
|
|
193
232
|
constructor(name, roomContext, options, log, isConnected) {
|
|
194
233
|
super();
|
|
195
234
|
this._active = false;
|
|
235
|
+
this._filters = [];
|
|
196
236
|
// Stored topic handler refs — cleanup removes exactly these, never all
|
|
197
237
|
// handlers for a topic (the client may be shared with other consumers).
|
|
198
238
|
this._onNotificationsRef = null;
|
|
@@ -230,7 +270,7 @@ class NotifyChannel extends EventEmitter {
|
|
|
230
270
|
icon: opts?.icon,
|
|
231
271
|
data: opts?.data,
|
|
232
272
|
timestamp: Date.now()};
|
|
233
|
-
|
|
273
|
+
const payload = {
|
|
234
274
|
id: notification.id,
|
|
235
275
|
channel: notification.channel,
|
|
236
276
|
title: notification.title,
|
|
@@ -238,7 +278,53 @@ class NotifyChannel extends EventEmitter {
|
|
|
238
278
|
icon: notification.icon,
|
|
239
279
|
data: notification.data,
|
|
240
280
|
timestamp: notification.timestamp,
|
|
241
|
-
}
|
|
281
|
+
};
|
|
282
|
+
// Only pass options when there is a filter: an unfiltered send should look
|
|
283
|
+
// exactly as it did before filters existed.
|
|
284
|
+
const emitOpts = filterEmitOptions(opts);
|
|
285
|
+
if (Object.keys(emitOpts).length > 0) {
|
|
286
|
+
this._roomContext.emit(TOPIC_NOTIFICATIONS, payload, emitOpts);
|
|
287
|
+
}
|
|
288
|
+
else {
|
|
289
|
+
this._roomContext.emit(TOPIC_NOTIFICATIONS, payload);
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
// ============ Filters ============
|
|
293
|
+
/** The filter values currently applied to this channel. */
|
|
294
|
+
get filters() {
|
|
295
|
+
return [...this._filters];
|
|
296
|
+
}
|
|
297
|
+
/**
|
|
298
|
+
* Replace this channel's filters — only notifications published with one of
|
|
299
|
+
* these values are delivered. Subscribe with your own user id (or role) to
|
|
300
|
+
* receive only what was addressed to you.
|
|
301
|
+
*
|
|
302
|
+
* Passing an empty array clears filtering and restores the wildcard
|
|
303
|
+
* subscription, which receives every notification on the channel.
|
|
304
|
+
*
|
|
305
|
+
* @example
|
|
306
|
+
* ```ts
|
|
307
|
+
* channel.setFilters(['user-42', 'all-hands']); // mine OR broadcast
|
|
308
|
+
* channel.setFilters([['eu', 'admin']]); // eu AND admin
|
|
309
|
+
* channel.setFilters([]); // everything
|
|
310
|
+
* ```
|
|
311
|
+
*/
|
|
312
|
+
setFilters(values) {
|
|
313
|
+
this._filters = [...values];
|
|
314
|
+
// The core types filters as `string[]`, but both its implementation and
|
|
315
|
+
// the wire protocol accept AND groups (nested arrays).
|
|
316
|
+
this._roomContext.setFilters(TOPIC_NOTIFICATIONS, this._filters);
|
|
317
|
+
}
|
|
318
|
+
/** Add filter values to the existing set. Existing AND groups are kept. */
|
|
319
|
+
addFilters(values) {
|
|
320
|
+
this.setFilters(mergeFilters(this._filters, values));
|
|
321
|
+
}
|
|
322
|
+
/**
|
|
323
|
+
* Remove filter values from the existing set. Removing the last value
|
|
324
|
+
* restores the wildcard subscription.
|
|
325
|
+
*/
|
|
326
|
+
removeFilters(values) {
|
|
327
|
+
this.setFilters(withoutFilters(this._filters, values));
|
|
242
328
|
}
|
|
243
329
|
// ============ Read Tracking ============
|
|
244
330
|
/**
|
|
@@ -275,9 +361,16 @@ class NotifyChannel extends EventEmitter {
|
|
|
275
361
|
}
|
|
276
362
|
// ============ Internal (called by NoLagNotify) ============
|
|
277
363
|
/** @internal Subscribe to notifications and _read topics */
|
|
278
|
-
_subscribe() {
|
|
364
|
+
_subscribe(filters) {
|
|
279
365
|
this._log('Channel subscribe:', this.name);
|
|
280
|
-
this.
|
|
366
|
+
this._filters = filters ? [...filters] : [];
|
|
367
|
+
// Read receipts stay unfiltered: they are this user's own cross-tab sync.
|
|
368
|
+
if (this._filters.length > 0) {
|
|
369
|
+
this._roomContext.subscribe(TOPIC_NOTIFICATIONS, { filters: this._filters });
|
|
370
|
+
}
|
|
371
|
+
else {
|
|
372
|
+
this._roomContext.subscribe(TOPIC_NOTIFICATIONS);
|
|
373
|
+
}
|
|
281
374
|
this._roomContext.subscribe(TOPIC_READ);
|
|
282
375
|
// Listen for notifications (refs stored for handler-specific removal)
|
|
283
376
|
this._onNotificationsRef = (data, meta) => {
|
|
@@ -740,12 +833,16 @@ class NoLagNotify extends EventEmitter {
|
|
|
740
833
|
* Subscribe to a notification channel (idempotent).
|
|
741
834
|
* Returns the NotifyChannel instance.
|
|
742
835
|
*/
|
|
743
|
-
subscribe(channelName) {
|
|
836
|
+
subscribe(channelName, opts) {
|
|
744
837
|
this._assertUsable();
|
|
745
838
|
const existing = this._channels.get(channelName);
|
|
746
|
-
if (existing)
|
|
839
|
+
if (existing) {
|
|
840
|
+
// Already subscribed — re-point its filters rather than ignoring them.
|
|
841
|
+
if (opts?.filters)
|
|
842
|
+
existing.setFilters(opts.filters);
|
|
747
843
|
return existing;
|
|
748
|
-
|
|
844
|
+
}
|
|
845
|
+
const channel = this._subscribeChannel(channelName, opts?.filters);
|
|
749
846
|
channel._activate();
|
|
750
847
|
return channel;
|
|
751
848
|
}
|
|
@@ -788,12 +885,12 @@ class NoLagNotify extends EventEmitter {
|
|
|
788
885
|
}
|
|
789
886
|
}
|
|
790
887
|
// ============ Private: Channel Setup ============
|
|
791
|
-
_subscribeChannel(name) {
|
|
888
|
+
_subscribeChannel(name, filters) {
|
|
792
889
|
this._log('Subscribing channel:', name);
|
|
793
890
|
const roomContext = this._client.setApp(this._options.appName).setRoom(name);
|
|
794
891
|
const channel = new NotifyChannel(name, roomContext, this._options, createLogger(`NotifyChannel:${name}`, this._options.debug), () => this._client.connected);
|
|
795
892
|
this._channels.set(name, channel);
|
|
796
|
-
channel._subscribe();
|
|
893
|
+
channel._subscribe(filters);
|
|
797
894
|
// Relay notifications up to the main client and update badges
|
|
798
895
|
channel.on('notification', (notification) => {
|
|
799
896
|
this._badgeManager.update(name, channel.unreadCount);
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../src/EventEmitter.ts","../src/NotificationStore.ts","../src/utils.ts","../src/constants.ts","../src/NotifyChannel.ts","../src/BadgeManager.ts","../src/PresenceManager.ts","../src/NoLagNotify.ts"],"sourcesContent":[null,null,null,null,null,null,null,null],"names":[],"mappings":"AAAA;;AAEG;MACU,YAAY,CAAA;AAAzB,IAAA,WAAA,GAAA;AACU,QAAA,IAAA,CAAA,SAAS,GAAG,IAAI,GAAG,EAAiD;IAuC9E;IArCE,EAAE,CAA2B,KAAQ,EAAE,OAAuC,EAAA;QAC5E,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;YAC9B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,GAAG,EAAE,CAAC;QACtC;AACA,QAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC,GAAG,CAAC,OAAO,CAAC;AACvC,QAAA,OAAO,IAAI;IACb;IAEA,GAAG,CAA2B,KAAQ,EAAE,OAAwC,EAAA;QAC9E,IAAI,OAAO,EAAE;AACX,YAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;QAC5C;aAAO;AACL,YAAA,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC;QAC9B;AACA,QAAA,OAAO,IAAI;IACb;IAEA,kBAAkB,GAAA;AAChB,QAAA,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE;AACtB,QAAA,OAAO,IAAI;IACb;AAEU,IAAA,IAAI,CAA2B,KAAQ,EAAE,GAAG,IAAiB,EAAA;QACrE,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC;AAC1C,QAAA,IAAI,CAAC,QAAQ;YAAE;AACf,QAAA,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;AAC9B,YAAA,IAAI;AACF,gBAAA,OAAO,CAAC,GAAG,IAAI,CAAC;YAClB;YAAE,OAAO,CAAC,EAAE;AACV,gBAAA,OAAO,CAAC,KAAK,CAAC,CAAA,SAAA,EAAY,MAAM,CAAC,KAAK,CAAC,CAAA,SAAA,CAAW,EAAE,CAAC,CAAC;YACxD;QACF;IACF;AAEA,IAAA,aAAa,CAA2B,KAAQ,EAAA;AAC9C,QAAA,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,IAAI,IAAI,CAAC;IAC7C;AACD;;ACzCD;;;AAGG;MACU,iBAAiB,CAAA;AAK5B,IAAA,WAAA,CAAY,OAAe,EAAA;QAJnB,IAAA,CAAA,cAAc,GAAmB,EAAE;AACnC,QAAA,IAAA,CAAA,IAAI,GAAG,IAAI,GAAG,EAAU;AAI9B,QAAA,IAAI,CAAC,QAAQ,GAAG,OAAO;IACzB;AAEA;;AAEG;AACH,IAAA,GAAG,CAAC,YAA0B,EAAA;QAC5B,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC,EAAE;AAClC,YAAA,OAAO,KAAK;QACd;QAEA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;AAC9B,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,YAAY,CAAC;;AAGtC,QAAA,IACE,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC;AAC9B,YAAA,YAAY,CAAC,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,SAAS,EACtF;YACA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC;QAC/D;;QAGA,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE;YACjD,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,EAAG;YAC5C,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;QAC9B;AAEA,QAAA,OAAO,IAAI;IACb;AAEA;;;AAGG;AACH,IAAA,QAAQ,CAAC,EAAU,EAAA;AACjB,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC;AACjE,QAAA,IAAI,CAAC,YAAY;AAAE,YAAA,OAAO,KAAK;AAC/B,QAAA,YAAY,CAAC,IAAI,GAAG,IAAI;AACxB,QAAA,OAAO,IAAI;IACb;AAEA;;AAEG;IACH,WAAW,GAAA;AACT,QAAA,KAAK,MAAM,YAAY,IAAI,IAAI,CAAC,cAAc,EAAE;AAC9C,YAAA,YAAY,CAAC,IAAI,GAAG,IAAI;QAC1B;IACF;AAEA;;AAEG;IACH,MAAM,GAAA;AACJ,QAAA,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC;IACjC;AAEA;;AAEG;IACH,SAAS,GAAA;AACP,QAAA,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IACnD;AAEA;;AAEG;AACH,IAAA,IAAI,WAAW,GAAA;AACb,QAAA,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM;IAC1D;AAEA;;AAEG;AACH,IAAA,IAAI,IAAI,GAAA;AACN,QAAA,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM;IACnC;AAEA;;AAEG;AACH,IAAA,GAAG,CAAC,EAAU,EAAA;QACZ,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;IAC1B;AAEA;;AAEG;IACH,KAAK,GAAA;AACH,QAAA,IAAI,CAAC,cAAc,GAAG,EAAE;AACxB,QAAA,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;IACnB;AACD;;SCzGe,UAAU,GAAA;AACxB,IAAA,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,MAAM,CAAC,UAAU,KAAK,UAAU,EAAE;AAC5E,QAAA,OAAO,MAAM,CAAC,UAAU,EAAE;IAC5B;IACA,OAAO,qBAAqB,CAAC,OAAO,CAAC,IAAI,EAAE,MACzC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAC5C;AACH;AAEM,SAAU,YAAY,CAAC,MAAc,EAAE,OAAgB,EAAA;IAC3D,IAAI,CAAC,OAAO,EAAE;AACZ,QAAA,OAAO,CAAC,GAAG,KAAgB,KAAI,EAAE,CAAC;IACpC;AACA,IAAA,OAAO,CAAC,GAAG,IAAe,KAAI;QAC5B,OAAO,CAAC,GAAG,CAAC,CAAA,CAAA,EAAI,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC;AACrC,IAAA,CAAC;AACH;AAEA;AACA;AACA;AACA;AAEA,MAAM,eAAe,GAAG,IAAI,OAAO,EAA+B;AAElE;SACgB,eAAe,CAAC,MAAc,EAAE,OAAe,EAAE,WAAmB,EAAA;IAClF,IAAI,IAAI,GAAG,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC;IACtC,IAAI,CAAC,IAAI,EAAE;AACT,QAAA,IAAI,GAAG,IAAI,GAAG,EAAE;AAChB,QAAA,eAAe,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC;IACnC;IACA,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;IAClC,IAAI,QAAQ,EAAE;QACZ,OAAO,CAAC,IAAI,CACV,CAAA,CAAA,EAAI,WAAW,CAAA,mBAAA,EAAsB,QAAQ,CAAA,8CAAA,EAAiD,OAAO,CAAA,GAAA,CAAK;AAC1G,YAAA,CAAA,oEAAA,CAAsE,CACvE;IACH;AACA,IAAA,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC;AAChC;AAEA;AACM,SAAU,cAAc,CAAC,MAAc,EAAE,OAAe,EAAA;IAC5D,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;AAC9C;;AC7CA;AACO,MAAM,gBAAgB,GAAG,QAAQ;AAExC;AACO,MAAM,8BAA8B,GAAG,GAAG;AAEjD;AACO,MAAM,mBAAmB,GAAG,eAAe;AAElD;AACO,MAAM,UAAU,GAAG,OAAO;AAEjC;AACO,MAAM,QAAQ,GAAG,QAAQ;AAEhC;AACO,MAAM,sBAAsB,GAAG,IAAI;;ACJ1C;;;;AAIG;AACG,MAAO,aAAc,SAAQ,YAAiC,CAAA;;IAiBlE,WAAA,CACE,IAAY,EACZ,WAAwB,EACxB,OAA8B,EAC9B,GAAiC,EACjC,WAA0B,EAAA;AAE1B,QAAA,KAAK,EAAE;QAfD,IAAA,CAAA,OAAO,GAAG,KAAK;;;QAIf,IAAA,CAAA,mBAAmB,GAAwD,IAAI;QAC/E,IAAA,CAAA,UAAU,GAAqC,IAAI;AAWzD,QAAA,IAAI,CAAC,IAAI,GAAG,IAAI;AAChB,QAAA,IAAI,CAAC,YAAY,GAAG,WAAW;AAC/B,QAAA,IAAI,CAAC,QAAQ,GAAG,OAAO;QACvB,IAAI,CAAC,MAAM,GAAG,IAAI,iBAAiB,CAAC,OAAO,CAAC,oBAAoB,CAAC;AACjE,QAAA,IAAI,CAAC,IAAI,GAAG,GAAG;AACf,QAAA,IAAI,CAAC,YAAY,GAAG,WAAW;IACjC;;;AAKA,IAAA,IAAI,aAAa,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;IAC7B;;AAGA,IAAA,IAAI,WAAW,GAAA;AACb,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW;IAChC;;AAGA,IAAA,IAAI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO;IACrB;;AAIA;;AAEG;IACH,IAAI,CAAC,KAAa,EAAE,IAA8B,EAAA;AAChD,QAAA,MAAM,YAAY,GAAiB;YACjC,EAAE,EAAE,UAAU,EAAE;YAChB,OAAO,EAAE,IAAI,CAAC,IAAI;YAClB,KAAK;YACL,IAAI,EAAE,IAAI,EAAE,IAAI;YAChB,IAAI,EAAE,IAAI,EAAE,IAAI;YAChB,IAAI,EAAE,IAAI,EAAE,IAAI;AAChB,YAAA,SAAS,EAAE,IAAI,CAAC,GAAG,GAGpB;AAED,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,mBAAmB,EAAE;YAC1C,EAAE,EAAE,YAAY,CAAC,EAAE;YACnB,OAAO,EAAE,YAAY,CAAC,OAAO;YAC7B,KAAK,EAAE,YAAY,CAAC,KAAK;YACzB,IAAI,EAAE,YAAY,CAAC,IAAI;YACvB,IAAI,EAAE,YAAY,CAAC,IAAI;YACvB,IAAI,EAAE,YAAY,CAAC,IAAI;YACvB,SAAS,EAAE,YAAY,CAAC,SAAS;AAClC,SAAA,CAAC;IACJ;;AAIA;;;AAGG;AACH,IAAA,QAAQ,CAAC,EAAU,EAAA;QACjB,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE;AAC5B,YAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;AAC3B,YAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;AAC9D,YAAA,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;QACvB;IACF;AAEA;;AAEG;IACH,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;QACzB,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,IAAI,CAAC;AACtC,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;AACrE,QAAA,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;IACtB;AAEA;;AAEG;IACH,gBAAgB,GAAA;AACd,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;IAC7B;AAEA;;AAEG;IACH,SAAS,GAAA;AACP,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE;IAChC;;;IAKA,UAAU,GAAA;QACR,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,IAAI,CAAC,IAAI,CAAC;AAE1C,QAAA,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,mBAAmB,CAAC;AAChD,QAAA,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,UAAU,CAAC;;QAGvC,IAAI,CAAC,mBAAmB,GAAG,CAAC,IAAa,EAAE,IAAiB,KAAI;AAC9D,YAAA,IAAI,CAAC,2BAA2B,CAAC,IAAI,EAAE,IAAI,CAAC;AAC9C,QAAA,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,CAAC;AAEnE,QAAA,IAAI,CAAC,UAAU,GAAG,CAAC,IAAa,KAAI;AAClC,YAAA,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;AAChC,QAAA,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC;IACnD;;IAGA,SAAS,GAAA;QACP,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,IAAI,CAAC;AACzC,QAAA,IAAI,CAAC,OAAO,GAAG,IAAI;IACrB;;IAGA,WAAW,GAAA;QACT,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,IAAI,CAAC,IAAI,CAAC;AAC3C,QAAA,IAAI,CAAC,OAAO,GAAG,KAAK;IACtB;;AAGA,IAAA,kBAAkB,CAAC,KAAa,EAAA;QAC9B,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,KAAK,EAAE,CAAC;IACrC;;AAGA,IAAA,gBAAgB,CAAC,QAAgB,EAAA;QAC/B,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,QAAQ,EAAE,CAAC;IACtC;;IAGA,QAAQ,GAAA;QACN,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,IAAI,CAAC,IAAI,CAAC;;;AAIxC,QAAA,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE;AACvB,YAAA,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,mBAAmB,CAAC;AAClD,YAAA,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,UAAU,CAAC;QAC3C;;;QAIA,IAAI,IAAI,CAAC,mBAAmB;YAAE,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,CAAC;QAClG,IAAI,IAAI,CAAC,UAAU;YAAE,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC;AACvE,QAAA,IAAI,CAAC,mBAAmB,GAAG,IAAI;AAC/B,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI;AAEtB,QAAA,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;QACnB,IAAI,CAAC,kBAAkB,EAAE;IAC3B;;IAIQ,2BAA2B,CAAC,IAAa,EAAE,IAAiB,EAAA;QAClE,MAAM,GAAG,GAAG,IAA+B;AAE3C,QAAA,MAAM,YAAY,GAAiB;AACjC,YAAA,EAAE,EAAG,GAAG,CAAC,EAAa,IAAI,UAAU,EAAE;YACtC,OAAO,EAAE,IAAI,CAAC,IAAI;YAClB,KAAK,EAAE,GAAG,CAAC,KAAe;YAC1B,IAAI,EAAE,GAAG,CAAC,IAA0B;YACpC,IAAI,EAAE,GAAG,CAAC,IAA0B;YACpC,IAAI,EAAE,GAAG,CAAC,IAA2C;YACrD,SAAS,EAAE,GAAG,CAAC,SAAmB,IAAI,IAAI,CAAC,GAAG,EAAE;AAChD,YAAA,IAAI,EAAE,KAAK;AACX,YAAA,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,KAAK;SACjC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;AACjC,YAAA,IAAI,CAAC,IAAI,CAAC,wBAAwB,EAAE,YAAY,CAAC,EAAE,EAAE,YAAY,CAAC,KAAK,CAAC;AACxE,YAAA,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,YAAY,CAAC;QACzC;IACF;AAEQ,IAAA,mBAAmB,CAAC,IAAa,EAAA;QACvC,MAAM,GAAG,GAAG,IAA+B;AAE3C,QAAA,IAAI,GAAG,CAAC,GAAG,KAAK,IAAI,EAAE;AACpB,YAAA,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;AACzB,YAAA,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;QACtB;AAAO,aAAA,IAAI,OAAO,GAAG,CAAC,EAAE,KAAK,QAAQ,EAAE;YACrC,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;gBAChC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC;YAC3B;QACF;IACF;AACD;;ACxOD;;AAEG;MACU,YAAY,CAAA;AAAzB,IAAA,WAAA,GAAA;AACU,QAAA,IAAA,CAAA,OAAO,GAAG,IAAI,GAAG,EAAkB;IAqC7C;AAnCE;;AAEG;IACH,MAAM,CAAC,OAAe,EAAE,WAAmB,EAAA;QACzC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC;IACxC;AAEA;;AAEG;AACH,IAAA,GAAG,CAAC,OAAe,EAAA;QACjB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC;IACvC;AAEA;;AAEG;IACH,MAAM,GAAA;QACJ,MAAM,SAAS,GAA2B,EAAE;QAC5C,IAAI,KAAK,GAAG,CAAC;QAEb,KAAK,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE;AAC3C,YAAA,SAAS,CAAC,OAAO,CAAC,GAAG,KAAK;YAC1B,KAAK,IAAI,KAAK;QAChB;AAEA,QAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE;IAC7B;AAEA;;AAEG;IACH,KAAK,GAAA;AACH,QAAA,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;IACtB;AACD;;AClCD;;AAEG;MACU,eAAe,CAAA;AAA5B,IAAA,WAAA,GAAA;AACU,QAAA,IAAA,CAAA,MAAM,GAAG,IAAI,GAAG,EAAsB;AACtC,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,GAAG,EAAkB;IAqEpD;AAnEE;;;AAGG;AACH,IAAA,eAAe,CAAC,YAAoB,EAAE,YAAgC,EAAE,QAAiB,EAAA;QACvF,IAAI,CAAC,YAAY,EAAE,MAAM;AAAE,YAAA,OAAO,IAAI;QAEtC,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC;QACtD,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,IAAI,QAAQ,IAAI,YAAY;AAE9D,QAAA,MAAM,IAAI,GAAe;YACvB,MAAM;YACN,YAAY;YACZ,QAAQ,EAAE,YAAY,CAAC,QAAQ;AAC/B,YAAA,QAAQ,EAAE,QAAQ,IAAI,IAAI,CAAC,GAAG,EAAE;SACjC;QAED,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC;QAC7B,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC;AAE7C,QAAA,OAAO,IAAI;IACb;AAEA;;;AAGG;AACH,IAAA,eAAe,CAAC,YAAoB,EAAA;QAClC,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC;AACpD,QAAA,IAAI,CAAC,MAAM;AAAE,YAAA,OAAO,IAAI;AAExB,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI;AAC5C,QAAA,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;AAC1B,QAAA,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,YAAY,CAAC;AAExC,QAAA,OAAO,IAAI;IACb;AAEA;;AAEG;AACH,IAAA,OAAO,CAAC,MAAc,EAAA;QACpB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;IAChC;AAEA;;AAEG;AACH,IAAA,gBAAgB,CAAC,YAAoB,EAAA;QACnC,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC;AACpD,QAAA,OAAO,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,SAAS;IACrD;AAEA;;AAEG;IACH,MAAM,GAAA;QACJ,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;IACzC;AAEA;;AAEG;IACH,KAAK,GAAA;AACH,QAAA,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;AACnB,QAAA,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE;IAC7B;AACD;;ACzDD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6BG;AACG,MAAO,WAAY,SAAQ,YAAgC,CAAA;AAuD/D,IAAA,WAAA,CAAY,OAA2B,EAAA;AACrC,QAAA,KAAK,EAAE;AArDD,QAAA,IAAA,CAAA,SAAS,GAAG,IAAI,GAAG,EAAyB;QAC5C,IAAA,CAAA,MAAM,GAAwB,IAAI;AAClC,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,YAAY,EAAE;AAClC,QAAA,IAAA,CAAA,gBAAgB,GAAG,IAAI,eAAe,EAAE;AACxC,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,GAAG,EAAkB;;QAK1C,IAAA,CAAA,MAAM,GAAG,CAAC;QACV,IAAA,CAAA,SAAS,GAAG,KAAK;QACjB,IAAA,CAAA,QAAQ,GAAG,KAAK;QAIhB,IAAA,CAAA,kBAAkB,GAAyC,IAAI;;;;QAK/D,IAAA,CAAA,aAAa,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE;AACvC,QAAA,IAAA,CAAA,gBAAgB,GAAG,CAAC,MAAc,KAAI;AAC5C,YAAA,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC;AAClC,YAAA,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC;AACnC,QAAA,CAAC;QACO,IAAA,CAAA,eAAe,GAAG,MAAK;AAC7B,YAAA,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC;AAC5B,YAAA,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC;AAC3B,QAAA,CAAC;AACO,QAAA,IAAA,CAAA,WAAW,GAAG,CAAC,KAAY,KAAI;AACrC,YAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC;AAC1B,YAAA,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC;AAC3B,QAAA,CAAC;AACO,QAAA,IAAA,CAAA,iBAAiB,GAAG,CAAC,IAAa,KAAI;YAC5C,MAAM,KAAK,GAAG,IAAyB;YACvC,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE;AAC7C,gBAAA,OAAO,CAAC,kBAAkB,CAAC,KAAK,CAAC,KAAK,CAAC;YACzC;AACF,QAAA,CAAC;AACO,QAAA,IAAA,CAAA,eAAe,GAAG,CAAC,IAAa,KAAI;YAC1C,MAAM,KAAK,GAAG,IAA4B;YAC1C,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE;AAC7C,gBAAA,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,QAAQ,CAAC;YAC1C;AACF,QAAA,CAAC;AACO,QAAA,IAAA,CAAA,kBAAkB,GAAG,CAAC,IAAmB,KAAK,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC;AAChF,QAAA,IAAA,CAAA,mBAAmB,GAAG,CAAC,IAAmB,KAAK,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC;AAClF,QAAA,IAAA,CAAA,oBAAoB,GAAG,CAAC,IAAmB,KAAK,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC;AACpF,QAAA,IAAA,CAAA,eAAe,GAAG,CAAC,IAAa,KAAK,IAAI,CAAC,gBAAgB,CAAC,IAA0B,CAAC;AACtF,QAAA,IAAA,CAAA,gBAAgB,GAAG,CAAC,IAAa,KAAK,IAAI,CAAC,iBAAiB,CAAC,IAA0B,CAAC;AACxF,QAAA,IAAA,CAAA,iBAAiB,GAAG,CAAC,IAAa,KAAK,IAAI,CAAC,kBAAkB,CAAC,IAA0B,CAAC;AAKhG,QAAA,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE;AACpB,YAAA,MAAM,IAAI,SAAS,CACjB,iFAAiF,CAClF;QACH;AAEA,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,MAAM;AAC7B,QAAA,IAAI,CAAC,OAAO,GAAG,UAAU,EAAE;QAE3B,IAAI,CAAC,QAAQ,GAAG;YACd,QAAQ,EAAE,OAAO,CAAC,QAAQ;AAC1B,YAAA,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,gBAAgB;AAC5C,YAAA,oBAAoB,EAAE,OAAO,CAAC,oBAAoB,IAAI,8BAA8B;AACpF,YAAA,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,KAAK;AAC7B,YAAA,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,EAAE;SACjC;AAED,QAAA,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAE5D,IAAI,CAAC,aAAa,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,KAAI;AACzD,YAAA,IAAI,CAAC,aAAa,GAAG,OAAO;AAC5B,YAAA,IAAI,CAAC,YAAY,GAAG,MAAM;AAC5B,QAAA,CAAC,CAAC;;QAEF,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,MAAK,EAAE,CAAC,CAAC;AAElC,QAAA,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;;QAGnE,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC;QAC9C,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,YAAY,EAAE,IAAI,CAAC,gBAAgB,CAAC;QACpD,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC;QAClD,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC;QAC1C,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,cAAc,EAAE,IAAI,CAAC,iBAAiB,CAAC;QACvD,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,YAAY,EAAE,IAAI,CAAC,eAAe,CAAC;QACnD,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,eAAe,EAAE,IAAI,CAAC,kBAAkB,CAAC;QACzD,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,gBAAgB,EAAE,IAAI,CAAC,mBAAmB,CAAC;QAC3D,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,iBAAiB,EAAE,IAAI,CAAC,oBAAoB,CAAC;QAC7D,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,IAAI,CAAC,eAAe,CAAC;QAC3D,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,qBAAqB,EAAE,IAAI,CAAC,gBAAgB,CAAC;QAC7D,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,sBAAsB,EAAE,IAAI,CAAC,iBAAiB,CAAC;;;;QAK/D,cAAc,CAAC,MAAK;AAClB,YAAA,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;gBAClE,IAAI,CAAC,UAAU,EAAE;YACnB;AACF,QAAA,CAAC,CAAC;IACJ;;;AAKA,IAAA,IAAI,SAAS,GAAA;QACX,OAAO,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS;IAClD;;AAGA,IAAA,IAAI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO;IACrB;;AAGA,IAAA,IAAI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS;IACvB;;AAIA;;;;;AAKG;IACH,KAAK,GAAA;QACH,OAAO,IAAI,CAAC,aAAa;IAC3B;AAEA;;;;;AAKG;IACH,MAAM,GAAA;QACJ,IAAI,IAAI,CAAC,SAAS;YAAE;AACpB,QAAA,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC;AACzB,QAAA,IAAI,CAAC,SAAS,GAAG,IAAI;AACrB,QAAA,IAAI,CAAC,MAAM,EAAE,CAAC;AAEd,QAAA,IAAI,IAAI,CAAC,kBAAkB,EAAE;AAC3B,YAAA,YAAY,CAAC,IAAI,CAAC,kBAAkB,CAAC;AACrC,YAAA,IAAI,CAAC,kBAAkB,GAAG,IAAI;QAChC;;QAGA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC;QAC/C,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,gBAAgB,CAAC;QACrD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC;QACnD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC;QAC3C,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,CAAC,iBAAiB,CAAC;QACxD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,eAAe,CAAC;QACpD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,IAAI,CAAC,kBAAkB,CAAC;QAC1D,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,mBAAmB,CAAC;QAC5D,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,IAAI,CAAC,oBAAoB,CAAC;QAC9D,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,IAAI,CAAC,eAAe,CAAC;QAC5D,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,IAAI,CAAC,gBAAgB,CAAC;QAC9D,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,IAAI,CAAC,iBAAiB,CAAC;;AAGhE,QAAA,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,EAAE;YAC7C,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC,QAAQ,EAAE;AACpC,YAAA,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC;QAC7B;;QAGA,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;AACzC,YAAA,IAAI;AACF,gBAAA,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;YAC3B;AAAE,YAAA,MAAM;;YAER;QACF;AACA,QAAA,IAAI,CAAC,MAAM,GAAG,IAAI;AAElB,QAAA,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE;AAC1B,QAAA,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE;AAC7B,QAAA,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE;QAE3B,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;AAEnD,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,IAAI,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACnE;IACF;;IAIQ,UAAU,GAAA;QAChB,IAAI,CAAC,MAAM,EAAE;QACb,KAAK,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC;IAClC;AAEA;;;;AAIG;IACK,MAAM,SAAS,CAAC,KAAa,EAAA;AACnC,QAAA,MAAM,KAAK,GAAG,MAAM,KAAK,KAAK,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS;AAC3D,QAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,8BAA8B,GAAG,eAAe,CAAC;AAC3E,QAAA,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,OAAO,EAAE,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;;;AAI5E,QAAA,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC7E;AACA,QAAA,IAAI;YACF,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE;AAC3C,YAAA,IAAI,KAAK,EAAE;gBAAE;AACb,YAAA,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC;AAChC,YAAA,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC;QAC/B;QAAE,OAAO,GAAG,EAAE;AACZ,YAAA,IAAI,KAAK,EAAE;gBAAE;AACb,YAAA,IAAI,CAAC,IAAI,CAAC,4BAA4B,EAAE,GAAG,CAAC;QAC9C;;;AAIA,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,KAAK,MAAM,WAAW,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE;AAChD,gBAAA,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC;YACrC;QACF;AAEA,QAAA,IAAI,KAAK,EAAE;YAAE;;;AAIb,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;AAClB,YAAA,IAAI,CAAC,QAAQ,GAAG,IAAI;YACpB,IAAI,CAAC,aAAa,EAAE;AACpB,YAAA,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;QACxB;aAAO;AACL,YAAA,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;QAC1B;;;AAIA,QAAA,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC;IACnC;AAEQ,IAAA,qBAAqB,CAAC,KAAa,EAAA;QACzC,IAAI,IAAI,CAAC,kBAAkB;AAAE,YAAA,YAAY,CAAC,IAAI,CAAC,kBAAkB,CAAC;AAClE,QAAA,IAAI,CAAC,kBAAkB,GAAG,UAAU,CAAC,MAAK;AACxC,YAAA,IAAI,CAAC,kBAAkB,GAAG,IAAI;YAC9B,IAAI,KAAK,KAAK,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;gBACtF;YACF;AACA,YAAA,IAAI,CAAC;AACF,iBAAA,aAAa;AACb,iBAAA,IAAI,CAAC,CAAC,KAAK,KAAI;gBACd,IAAI,KAAK,KAAK,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS;oBAAE;AAC7C,gBAAA,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC;AAClC,YAAA,CAAC;iBACA,KAAK,CAAC,MAAK;;AAEZ,YAAA,CAAC,CAAC;QACN,CAAC,EAAE,sBAAsB,CAAC;IAC5B;;AAIA;;;AAGG;AACH,IAAA,SAAS,CAAC,WAAmB,EAAA;QAC3B,IAAI,CAAC,aAAa,EAAE;QAEpB,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC;AAChD,QAAA,IAAI,QAAQ;AAAE,YAAA,OAAO,QAAQ;QAE7B,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC;QACnD,OAAO,CAAC,SAAS,EAAE;AAEnB,QAAA,OAAO,OAAO;IAChB;AAEA;;AAEG;AACH,IAAA,WAAW,CAAC,WAAmB,EAAA;QAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC;AAC/C,QAAA,IAAI,CAAC,OAAO;YAAE;AAEd,QAAA,IAAI,CAAC,IAAI,CAAC,wBAAwB,EAAE,WAAW,CAAC;QAChD,OAAO,CAAC,QAAQ,EAAE;AAClB,QAAA,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC;QAClC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;QACzC,IAAI,CAAC,iBAAiB,EAAE;IAC1B;;AAIA;;AAEG;IACH,cAAc,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE;IACpC;;AAIA;;AAEG;IACH,WAAW,GAAA;QACT,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE;YAC7C,OAAO,CAAC,WAAW,EAAE;QACvB;IACF;;IAIQ,aAAa,GAAA;AACnB,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE;AAClB,YAAA,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC;QAC7E;AACA,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;AAClB,YAAA,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC;QACnF;IACF;;AAIQ,IAAA,iBAAiB,CAAC,IAAY,EAAA;AACpC,QAAA,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,IAAI,CAAC;AAEvC,QAAA,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;AAC5E,QAAA,MAAM,OAAO,GAAG,IAAI,aAAa,CAC/B,IAAI,EACJ,WAAW,EACX,IAAI,CAAC,QAAQ,EACb,YAAY,CAAC,CAAA,cAAA,EAAiB,IAAI,CAAA,CAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAC1D,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAC7B;QAED,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC;QACjC,OAAO,CAAC,UAAU,EAAE;;QAGpB,OAAO,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC,YAAY,KAAI;YAC1C,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC;YACpD,IAAI,CAAC,iBAAiB,EAAE;AACxB,YAAA,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,YAAY,CAAC;AACzC,QAAA,CAAC,CAAC;AAEF,QAAA,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAK;YACtB,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC;YACpD,IAAI,CAAC,iBAAiB,EAAE;AAC1B,QAAA,CAAC,CAAC;AAEF,QAAA,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,MAAK;YACzB,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;YAClC,IAAI,CAAC,iBAAiB,EAAE;AAC1B,QAAA,CAAC,CAAC;AAEF,QAAA,OAAO,OAAO;IAChB;IAEQ,iBAAiB,GAAA;AACvB,QAAA,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;IACxD;;AAIA;;;;;AAKG;AACK,IAAA,aAAa,CAAC,IAAoC,EAAA;AACxD,QAAA,MAAM,KAAK,GAAI,IAA4C,EAAE,OAAO;AACpE,QAAA,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC,QAAQ,CAAC,OAAO;IACrE;;AAIQ,IAAA,uBAAuB,CAAC,IAAmB,EAAA;QACjD,IAAI,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE;AAChD,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,QAAyC;QACnE,IAAI,CAAC,YAAY,EAAE,MAAM,IAAI,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC;YAAE;AAE/D,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,EAAE,YAAY,CAAC;QACnF,IAAI,IAAI,EAAE;AACR,YAAA,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC;QACzD;IACF;AAEQ,IAAA,wBAAwB,CAAC,IAAmB,EAAA;QAClD,IAAI,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE;QAChD,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC;IAC1D;AAEQ,IAAA,yBAAyB,CAAC,IAAmB,EAAA;QACnD,IAAI,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE;AAChD,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,QAAyC;QACnE,IAAI,CAAC,YAAY,EAAE,MAAM,IAAI,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC;YAAE;QAC/D,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,EAAE,YAAY,CAAC;IACxE;;AAIQ,IAAA,gBAAgB,CAAC,KAAyB,EAAA;AAChD,QAAA,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,KAAK;AAC/B,QAAA,IAAI,OAAO,KAAK,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE;QAEtC,MAAM,YAAY,GAAG,IAAqC;QAC1D,IAAI,CAAC,YAAY,EAAE,MAAM,IAAI,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC;YAAE;AAE/D,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,OAAO,EAAE,YAAY,CAAC;QACzE,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC;QAC/C;IACF;AAEQ,IAAA,iBAAiB,CAAC,KAAyB,EAAA;AACjD,QAAA,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,KAAK;AAC/B,QAAA,IAAI,OAAO,KAAK,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE;QAEtC,MAAM,YAAY,GAAG,IAAqC;AAC1D,QAAA,IAAI,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC;YAAE;AACtC,QAAA,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,OAAO,CAAC;AAC9C,QAAA,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC;IACrC;AAEQ,IAAA,kBAAkB,CAAC,KAAyB,EAAA;AAClD,QAAA,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,KAAK;AAC/B,QAAA,IAAI,OAAO,KAAK,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE;QAEtC,MAAM,YAAY,GAAG,IAAqC;QAC1D,IAAI,CAAC,YAAY,EAAE,MAAM,IAAI,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC;YAAE;QAC/D,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,OAAO,EAAE,YAAY,CAAC;IAC9D;AAEA;;;AAGG;AACK,IAAA,oBAAoB,CAAC,KAAyB,EAAA;;AAEpD,QAAA,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU;QAErC,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;AACvC,YAAA,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC;YAClC,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;AAC/C,gBAAA,IAAI,OAAO,KAAK,IAAI,CAAC,OAAO,CAAC,OAAO;oBAAE;AAEtC,gBAAA,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,CAA4B;;gBAE5D,MAAM,YAAY,IAAI,GAAG,EAAE,QAAQ,IAAI,GAAG,CAAkC;AAC5E,gBAAA,IAAI,YAAY,EAAE,MAAM,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,EAAE;AAC7D,oBAAA,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC;AACxB,oBAAA,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,OAAO,EAAE,YAAY,CAAC;oBACzE,IAAI,IAAI,EAAE;wBACR,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC;oBAC/C;gBACF;YACF;QACF;;AAGA,QAAA,KAAK,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,EAAE;YAChD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;AAC7B,gBAAA,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,OAAO,CAAC;AAC9C,gBAAA,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC;YACrC;QACF;IACF;AACD;;;;"}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../src/EventEmitter.ts","../src/NotificationStore.ts","../src/utils.ts","../src/constants.ts","../src/NotifyChannel.ts","../src/BadgeManager.ts","../src/PresenceManager.ts","../src/NoLagNotify.ts"],"sourcesContent":[null,null,null,null,null,null,null,null],"names":[],"mappings":"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"}
|
package/dist/react-native.js
CHANGED
|
@@ -146,6 +146,45 @@ function createLogger(prefix, enabled) {
|
|
|
146
146
|
console.log(`[${prefix}]`, ...args);
|
|
147
147
|
};
|
|
148
148
|
}
|
|
149
|
+
// ============ Filters ============
|
|
150
|
+
/**
|
|
151
|
+
* Build the filter fragment of an emit options object.
|
|
152
|
+
*
|
|
153
|
+
* `filter` wins over `filters`: a publish is routed to exactly one topic, so
|
|
154
|
+
* honouring both would silently drop one of them.
|
|
155
|
+
*/
|
|
156
|
+
function filterEmitOptions(opts) {
|
|
157
|
+
if (opts?.filter)
|
|
158
|
+
return { filter: opts.filter };
|
|
159
|
+
if (opts?.filters && opts.filters.length > 0)
|
|
160
|
+
return { filters: opts.filters };
|
|
161
|
+
return {};
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* Merge OR terms into an existing filter set. AND groups (nested arrays) are
|
|
165
|
+
* preserved as-is — only plain string terms are deduplicated.
|
|
166
|
+
*/
|
|
167
|
+
function mergeFilters(existing, add) {
|
|
168
|
+
const simple = new Set();
|
|
169
|
+
const groups = [];
|
|
170
|
+
for (const f of existing) {
|
|
171
|
+
if (typeof f === 'string')
|
|
172
|
+
simple.add(f);
|
|
173
|
+
else
|
|
174
|
+
groups.push(f);
|
|
175
|
+
}
|
|
176
|
+
for (const v of add)
|
|
177
|
+
simple.add(v);
|
|
178
|
+
return [...simple, ...groups];
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Drop OR terms from a filter set. AND groups are left untouched — remove
|
|
182
|
+
* those by calling `setFilters` with the set you want.
|
|
183
|
+
*/
|
|
184
|
+
function withoutFilters(existing, remove) {
|
|
185
|
+
const drop = new Set(remove);
|
|
186
|
+
return existing.filter((f) => typeof f !== 'string' || !drop.has(f));
|
|
187
|
+
}
|
|
149
188
|
// ============ Wrapper registry ============
|
|
150
189
|
// One wrapper instance per (client, appName): two wrappers sharing an app on
|
|
151
190
|
// one connection would collide on topics, presence and the online lobby.
|
|
@@ -193,6 +232,7 @@ class NotifyChannel extends EventEmitter {
|
|
|
193
232
|
constructor(name, roomContext, options, log, isConnected) {
|
|
194
233
|
super();
|
|
195
234
|
this._active = false;
|
|
235
|
+
this._filters = [];
|
|
196
236
|
// Stored topic handler refs — cleanup removes exactly these, never all
|
|
197
237
|
// handlers for a topic (the client may be shared with other consumers).
|
|
198
238
|
this._onNotificationsRef = null;
|
|
@@ -230,7 +270,7 @@ class NotifyChannel extends EventEmitter {
|
|
|
230
270
|
icon: opts?.icon,
|
|
231
271
|
data: opts?.data,
|
|
232
272
|
timestamp: Date.now()};
|
|
233
|
-
|
|
273
|
+
const payload = {
|
|
234
274
|
id: notification.id,
|
|
235
275
|
channel: notification.channel,
|
|
236
276
|
title: notification.title,
|
|
@@ -238,7 +278,53 @@ class NotifyChannel extends EventEmitter {
|
|
|
238
278
|
icon: notification.icon,
|
|
239
279
|
data: notification.data,
|
|
240
280
|
timestamp: notification.timestamp,
|
|
241
|
-
}
|
|
281
|
+
};
|
|
282
|
+
// Only pass options when there is a filter: an unfiltered send should look
|
|
283
|
+
// exactly as it did before filters existed.
|
|
284
|
+
const emitOpts = filterEmitOptions(opts);
|
|
285
|
+
if (Object.keys(emitOpts).length > 0) {
|
|
286
|
+
this._roomContext.emit(TOPIC_NOTIFICATIONS, payload, emitOpts);
|
|
287
|
+
}
|
|
288
|
+
else {
|
|
289
|
+
this._roomContext.emit(TOPIC_NOTIFICATIONS, payload);
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
// ============ Filters ============
|
|
293
|
+
/** The filter values currently applied to this channel. */
|
|
294
|
+
get filters() {
|
|
295
|
+
return [...this._filters];
|
|
296
|
+
}
|
|
297
|
+
/**
|
|
298
|
+
* Replace this channel's filters — only notifications published with one of
|
|
299
|
+
* these values are delivered. Subscribe with your own user id (or role) to
|
|
300
|
+
* receive only what was addressed to you.
|
|
301
|
+
*
|
|
302
|
+
* Passing an empty array clears filtering and restores the wildcard
|
|
303
|
+
* subscription, which receives every notification on the channel.
|
|
304
|
+
*
|
|
305
|
+
* @example
|
|
306
|
+
* ```ts
|
|
307
|
+
* channel.setFilters(['user-42', 'all-hands']); // mine OR broadcast
|
|
308
|
+
* channel.setFilters([['eu', 'admin']]); // eu AND admin
|
|
309
|
+
* channel.setFilters([]); // everything
|
|
310
|
+
* ```
|
|
311
|
+
*/
|
|
312
|
+
setFilters(values) {
|
|
313
|
+
this._filters = [...values];
|
|
314
|
+
// The core types filters as `string[]`, but both its implementation and
|
|
315
|
+
// the wire protocol accept AND groups (nested arrays).
|
|
316
|
+
this._roomContext.setFilters(TOPIC_NOTIFICATIONS, this._filters);
|
|
317
|
+
}
|
|
318
|
+
/** Add filter values to the existing set. Existing AND groups are kept. */
|
|
319
|
+
addFilters(values) {
|
|
320
|
+
this.setFilters(mergeFilters(this._filters, values));
|
|
321
|
+
}
|
|
322
|
+
/**
|
|
323
|
+
* Remove filter values from the existing set. Removing the last value
|
|
324
|
+
* restores the wildcard subscription.
|
|
325
|
+
*/
|
|
326
|
+
removeFilters(values) {
|
|
327
|
+
this.setFilters(withoutFilters(this._filters, values));
|
|
242
328
|
}
|
|
243
329
|
// ============ Read Tracking ============
|
|
244
330
|
/**
|
|
@@ -275,9 +361,16 @@ class NotifyChannel extends EventEmitter {
|
|
|
275
361
|
}
|
|
276
362
|
// ============ Internal (called by NoLagNotify) ============
|
|
277
363
|
/** @internal Subscribe to notifications and _read topics */
|
|
278
|
-
_subscribe() {
|
|
364
|
+
_subscribe(filters) {
|
|
279
365
|
this._log('Channel subscribe:', this.name);
|
|
280
|
-
this.
|
|
366
|
+
this._filters = filters ? [...filters] : [];
|
|
367
|
+
// Read receipts stay unfiltered: they are this user's own cross-tab sync.
|
|
368
|
+
if (this._filters.length > 0) {
|
|
369
|
+
this._roomContext.subscribe(TOPIC_NOTIFICATIONS, { filters: this._filters });
|
|
370
|
+
}
|
|
371
|
+
else {
|
|
372
|
+
this._roomContext.subscribe(TOPIC_NOTIFICATIONS);
|
|
373
|
+
}
|
|
281
374
|
this._roomContext.subscribe(TOPIC_READ);
|
|
282
375
|
// Listen for notifications (refs stored for handler-specific removal)
|
|
283
376
|
this._onNotificationsRef = (data, meta) => {
|
|
@@ -740,12 +833,16 @@ class NoLagNotify extends EventEmitter {
|
|
|
740
833
|
* Subscribe to a notification channel (idempotent).
|
|
741
834
|
* Returns the NotifyChannel instance.
|
|
742
835
|
*/
|
|
743
|
-
subscribe(channelName) {
|
|
836
|
+
subscribe(channelName, opts) {
|
|
744
837
|
this._assertUsable();
|
|
745
838
|
const existing = this._channels.get(channelName);
|
|
746
|
-
if (existing)
|
|
839
|
+
if (existing) {
|
|
840
|
+
// Already subscribed — re-point its filters rather than ignoring them.
|
|
841
|
+
if (opts?.filters)
|
|
842
|
+
existing.setFilters(opts.filters);
|
|
747
843
|
return existing;
|
|
748
|
-
|
|
844
|
+
}
|
|
845
|
+
const channel = this._subscribeChannel(channelName, opts?.filters);
|
|
749
846
|
channel._activate();
|
|
750
847
|
return channel;
|
|
751
848
|
}
|
|
@@ -788,12 +885,12 @@ class NoLagNotify extends EventEmitter {
|
|
|
788
885
|
}
|
|
789
886
|
}
|
|
790
887
|
// ============ Private: Channel Setup ============
|
|
791
|
-
_subscribeChannel(name) {
|
|
888
|
+
_subscribeChannel(name, filters) {
|
|
792
889
|
this._log('Subscribing channel:', name);
|
|
793
890
|
const roomContext = this._client.setApp(this._options.appName).setRoom(name);
|
|
794
891
|
const channel = new NotifyChannel(name, roomContext, this._options, createLogger(`NotifyChannel:${name}`, this._options.debug), () => this._client.connected);
|
|
795
892
|
this._channels.set(name, channel);
|
|
796
|
-
channel._subscribe();
|
|
893
|
+
channel._subscribe(filters);
|
|
797
894
|
// Relay notifications up to the main client and update badges
|
|
798
895
|
channel.on('notification', (notification) => {
|
|
799
896
|
this._badgeManager.update(name, channel.unreadCount);
|
package/dist/react-native.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-native.js","sources":["../src/EventEmitter.ts","../src/NotificationStore.ts","../src/utils.ts","../src/constants.ts","../src/NotifyChannel.ts","../src/BadgeManager.ts","../src/PresenceManager.ts","../src/NoLagNotify.ts"],"sourcesContent":[null,null,null,null,null,null,null,null],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"react-native.js","sources":["../src/EventEmitter.ts","../src/NotificationStore.ts","../src/utils.ts","../src/constants.ts","../src/NotifyChannel.ts","../src/BadgeManager.ts","../src/PresenceManager.ts","../src/NoLagNotify.ts"],"sourcesContent":[null,null,null,null,null,null,null,null],"names":[],"mappings":"AAAA;;AAEG;MACU,YAAY,CAAA;AAAzB,IAAA,WAAA,GAAA;AACU,QAAA,IAAA,CAAA,SAAS,GAAG,IAAI,GAAG,EAAiD;IAuC9E;IArCE,EAAE,CAA2B,KAAQ,EAAE,OAAuC,EAAA;QAC5E,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;YAC9B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,GAAG,EAAE,CAAC;QACtC;AACA,QAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC,GAAG,CAAC,OAAO,CAAC;AACvC,QAAA,OAAO,IAAI;IACb;IAEA,GAAG,CAA2B,KAAQ,EAAE,OAAwC,EAAA;QAC9E,IAAI,OAAO,EAAE;AACX,YAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;QAC5C;aAAO;AACL,YAAA,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC;QAC9B;AACA,QAAA,OAAO,IAAI;IACb;IAEA,kBAAkB,GAAA;AAChB,QAAA,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE;AACtB,QAAA,OAAO,IAAI;IACb;AAEU,IAAA,IAAI,CAA2B,KAAQ,EAAE,GAAG,IAAiB,EAAA;QACrE,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC;AAC1C,QAAA,IAAI,CAAC,QAAQ;YAAE;AACf,QAAA,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;AAC9B,YAAA,IAAI;AACF,gBAAA,OAAO,CAAC,GAAG,IAAI,CAAC;YAClB;YAAE,OAAO,CAAC,EAAE;AACV,gBAAA,OAAO,CAAC,KAAK,CAAC,CAAA,SAAA,EAAY,MAAM,CAAC,KAAK,CAAC,CAAA,SAAA,CAAW,EAAE,CAAC,CAAC;YACxD;QACF;IACF;AAEA,IAAA,aAAa,CAA2B,KAAQ,EAAA;AAC9C,QAAA,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,IAAI,IAAI,CAAC;IAC7C;AACD;;ACzCD;;;AAGG;MACU,iBAAiB,CAAA;AAK5B,IAAA,WAAA,CAAY,OAAe,EAAA;QAJnB,IAAA,CAAA,cAAc,GAAmB,EAAE;AACnC,QAAA,IAAA,CAAA,IAAI,GAAG,IAAI,GAAG,EAAU;AAI9B,QAAA,IAAI,CAAC,QAAQ,GAAG,OAAO;IACzB;AAEA;;AAEG;AACH,IAAA,GAAG,CAAC,YAA0B,EAAA;QAC5B,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC,EAAE;AAClC,YAAA,OAAO,KAAK;QACd;QAEA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;AAC9B,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,YAAY,CAAC;;AAGtC,QAAA,IACE,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC;AAC9B,YAAA,YAAY,CAAC,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,SAAS,EACtF;YACA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC;QAC/D;;QAGA,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE;YACjD,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,EAAG;YAC5C,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;QAC9B;AAEA,QAAA,OAAO,IAAI;IACb;AAEA;;;AAGG;AACH,IAAA,QAAQ,CAAC,EAAU,EAAA;AACjB,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC;AACjE,QAAA,IAAI,CAAC,YAAY;AAAE,YAAA,OAAO,KAAK;AAC/B,QAAA,YAAY,CAAC,IAAI,GAAG,IAAI;AACxB,QAAA,OAAO,IAAI;IACb;AAEA;;AAEG;IACH,WAAW,GAAA;AACT,QAAA,KAAK,MAAM,YAAY,IAAI,IAAI,CAAC,cAAc,EAAE;AAC9C,YAAA,YAAY,CAAC,IAAI,GAAG,IAAI;QAC1B;IACF;AAEA;;AAEG;IACH,MAAM,GAAA;AACJ,QAAA,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC;IACjC;AAEA;;AAEG;IACH,SAAS,GAAA;AACP,QAAA,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IACnD;AAEA;;AAEG;AACH,IAAA,IAAI,WAAW,GAAA;AACb,QAAA,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM;IAC1D;AAEA;;AAEG;AACH,IAAA,IAAI,IAAI,GAAA;AACN,QAAA,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM;IACnC;AAEA;;AAEG;AACH,IAAA,GAAG,CAAC,EAAU,EAAA;QACZ,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;IAC1B;AAEA;;AAEG;IACH,KAAK,GAAA;AACH,QAAA,IAAI,CAAC,cAAc,GAAG,EAAE;AACxB,QAAA,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;IACnB;AACD;;SCvGe,UAAU,GAAA;AACxB,IAAA,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,MAAM,CAAC,UAAU,KAAK,UAAU,EAAE;AAC5E,QAAA,OAAO,MAAM,CAAC,UAAU,EAAE;IAC5B;IACA,OAAO,qBAAqB,CAAC,OAAO,CAAC,IAAI,EAAE,MACzC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAC5C;AACH;AAEM,SAAU,YAAY,CAAC,MAAc,EAAE,OAAgB,EAAA;IAC3D,IAAI,CAAC,OAAO,EAAE;AACZ,QAAA,OAAO,CAAC,GAAG,KAAgB,KAAI,EAAE,CAAC;IACpC;AACA,IAAA,OAAO,CAAC,GAAG,IAAe,KAAI;QAC5B,OAAO,CAAC,GAAG,CAAC,CAAA,CAAA,EAAI,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC;AACrC,IAAA,CAAC;AACH;AAEA;AAEA;;;;;AAKG;AACG,SAAU,iBAAiB,CAAC,IAGjC,EAAA;IACC,IAAI,IAAI,EAAE,MAAM;AAAE,QAAA,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;IAChD,IAAI,IAAI,EAAE,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;AAAE,QAAA,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE;AAC9E,IAAA,OAAO,EAAE;AACX;AAeA;;;AAGG;AACG,SAAU,YAAY,CAAC,QAAuB,EAAE,GAAa,EAAA;AACjE,IAAA,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU;IAChC,MAAM,MAAM,GAAe,EAAE;AAC7B,IAAA,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE;QACxB,IAAI,OAAO,CAAC,KAAK,QAAQ;AAAE,YAAA,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;;AACnC,YAAA,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IACrB;IACA,KAAK,MAAM,CAAC,IAAI,GAAG;AAAE,QAAA,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;AAClC,IAAA,OAAO,CAAC,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC;AAC/B;AAEA;;;AAGG;AACG,SAAU,cAAc,CAAC,QAAuB,EAAE,MAAgB,EAAA;AACtE,IAAA,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC;IAC5B,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AACtE;AAwBA;AACA;AACA;AACA;AAEA,MAAM,eAAe,GAAG,IAAI,OAAO,EAA+B;AAElE;SACgB,eAAe,CAAC,MAAc,EAAE,OAAe,EAAE,WAAmB,EAAA;IAClF,IAAI,IAAI,GAAG,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC;IACtC,IAAI,CAAC,IAAI,EAAE;AACT,QAAA,IAAI,GAAG,IAAI,GAAG,EAAE;AAChB,QAAA,eAAe,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC;IACnC;IACA,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;IAClC,IAAI,QAAQ,EAAE;QACZ,OAAO,CAAC,IAAI,CACV,CAAA,CAAA,EAAI,WAAW,CAAA,mBAAA,EAAsB,QAAQ,CAAA,8CAAA,EAAiD,OAAO,CAAA,GAAA,CAAK;AAC1G,YAAA,CAAA,oEAAA,CAAsE,CACvE;IACH;AACA,IAAA,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC;AAChC;AAEA;AACM,SAAU,cAAc,CAAC,MAAc,EAAE,OAAe,EAAA;IAC5D,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;AAC9C;;AC3HA;AACO,MAAM,gBAAgB,GAAG,QAAQ;AAExC;AACO,MAAM,8BAA8B,GAAG,GAAG;AAEjD;AACO,MAAM,mBAAmB,GAAG,eAAe;AAElD;AACO,MAAM,UAAU,GAAG,OAAO;AAEjC;AACO,MAAM,QAAQ,GAAG,QAAQ;AAEhC;AACO,MAAM,sBAAsB,GAAG,IAAI;;ACH1C;;;;AAIG;AACG,MAAO,aAAc,SAAQ,YAAiC,CAAA;;IAkBlE,WAAA,CACE,IAAY,EACZ,WAAwB,EACxB,OAA8B,EAC9B,GAAiC,EACjC,WAA0B,EAAA;AAE1B,QAAA,KAAK,EAAE;QAhBD,IAAA,CAAA,OAAO,GAAG,KAAK;QACf,IAAA,CAAA,QAAQ,GAAkB,EAAE;;;QAI5B,IAAA,CAAA,mBAAmB,GAAwD,IAAI;QAC/E,IAAA,CAAA,UAAU,GAAqC,IAAI;AAWzD,QAAA,IAAI,CAAC,IAAI,GAAG,IAAI;AAChB,QAAA,IAAI,CAAC,YAAY,GAAG,WAAW;AAC/B,QAAA,IAAI,CAAC,QAAQ,GAAG,OAAO;QACvB,IAAI,CAAC,MAAM,GAAG,IAAI,iBAAiB,CAAC,OAAO,CAAC,oBAAoB,CAAC;AACjE,QAAA,IAAI,CAAC,IAAI,GAAG,GAAG;AACf,QAAA,IAAI,CAAC,YAAY,GAAG,WAAW;IACjC;;;AAKA,IAAA,IAAI,aAAa,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;IAC7B;;AAGA,IAAA,IAAI,WAAW,GAAA;AACb,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW;IAChC;;AAGA,IAAA,IAAI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO;IACrB;;AAIA;;AAEG;IACH,IAAI,CAAC,KAAa,EAAE,IAA8B,EAAA;AAChD,QAAA,MAAM,YAAY,GAAiB;YACjC,EAAE,EAAE,UAAU,EAAE;YAChB,OAAO,EAAE,IAAI,CAAC,IAAI;YAClB,KAAK;YACL,IAAI,EAAE,IAAI,EAAE,IAAI;YAChB,IAAI,EAAE,IAAI,EAAE,IAAI;YAChB,IAAI,EAAE,IAAI,EAAE,IAAI;AAChB,YAAA,SAAS,EAAE,IAAI,CAAC,GAAG,GAGpB;AAED,QAAA,MAAM,OAAO,GAAG;YACd,EAAE,EAAE,YAAY,CAAC,EAAE;YACnB,OAAO,EAAE,YAAY,CAAC,OAAO;YAC7B,KAAK,EAAE,YAAY,CAAC,KAAK;YACzB,IAAI,EAAE,YAAY,CAAC,IAAI;YACvB,IAAI,EAAE,YAAY,CAAC,IAAI;YACvB,IAAI,EAAE,YAAY,CAAC,IAAI;YACvB,SAAS,EAAE,YAAY,CAAC,SAAS;SAClC;;;AAID,QAAA,MAAM,QAAQ,GAAG,iBAAiB,CAAC,IAAI,CAAC;QACxC,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;YACpC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,mBAAmB,EAAE,OAAO,EAAE,QAAQ,CAAC;QAChE;aAAO;YACL,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,mBAAmB,EAAE,OAAO,CAAC;QACtD;IACF;;;AAKA,IAAA,IAAI,OAAO,GAAA;AACT,QAAA,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC;IAC3B;AAEA;;;;;;;;;;;;;;AAcG;AACH,IAAA,UAAU,CAAC,MAAqB,EAAA;AAC9B,QAAA,IAAI,CAAC,QAAQ,GAAG,CAAC,GAAG,MAAM,CAAC;;;QAG3B,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,mBAAmB,EAAE,IAAI,CAAC,QAA+B,CAAC;IACzF;;AAGA,IAAA,UAAU,CAAC,MAAgB,EAAA;AACzB,QAAA,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACtD;AAEA;;;AAGG;AACH,IAAA,aAAa,CAAC,MAAgB,EAAA;AAC5B,QAAA,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACxD;;AAIA;;;AAGG;AACH,IAAA,QAAQ,CAAC,EAAU,EAAA;QACjB,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE;AAC5B,YAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;AAC3B,YAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;AAC9D,YAAA,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;QACvB;IACF;AAEA;;AAEG;IACH,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;QACzB,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,IAAI,CAAC;AACtC,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;AACrE,QAAA,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;IACtB;AAEA;;AAEG;IACH,gBAAgB,GAAA;AACd,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;IAC7B;AAEA;;AAEG;IACH,SAAS,GAAA;AACP,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE;IAChC;;;AAKA,IAAA,UAAU,CAAC,OAAuB,EAAA;QAChC,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,IAAI,CAAC,IAAI,CAAC;AAE1C,QAAA,IAAI,CAAC,QAAQ,GAAG,OAAO,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,EAAE;;QAG3C,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;AAC5B,YAAA,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,mBAAmB,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC9E;aAAO;AACL,YAAA,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,mBAAmB,CAAC;QAClD;AACA,QAAA,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,UAAU,CAAC;;QAGvC,IAAI,CAAC,mBAAmB,GAAG,CAAC,IAAa,EAAE,IAAiB,KAAI;AAC9D,YAAA,IAAI,CAAC,2BAA2B,CAAC,IAAI,EAAE,IAAI,CAAC;AAC9C,QAAA,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,CAAC;AAEnE,QAAA,IAAI,CAAC,UAAU,GAAG,CAAC,IAAa,KAAI;AAClC,YAAA,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;AAChC,QAAA,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC;IACnD;;IAGA,SAAS,GAAA;QACP,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,IAAI,CAAC;AACzC,QAAA,IAAI,CAAC,OAAO,GAAG,IAAI;IACrB;;IAGA,WAAW,GAAA;QACT,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,IAAI,CAAC,IAAI,CAAC;AAC3C,QAAA,IAAI,CAAC,OAAO,GAAG,KAAK;IACtB;;AAGA,IAAA,kBAAkB,CAAC,KAAa,EAAA;QAC9B,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,KAAK,EAAE,CAAC;IACrC;;AAGA,IAAA,gBAAgB,CAAC,QAAgB,EAAA;QAC/B,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,QAAQ,EAAE,CAAC;IACtC;;IAGA,QAAQ,GAAA;QACN,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,IAAI,CAAC,IAAI,CAAC;;;AAIxC,QAAA,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE;AACvB,YAAA,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,mBAAmB,CAAC;AAClD,YAAA,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,UAAU,CAAC;QAC3C;;;QAIA,IAAI,IAAI,CAAC,mBAAmB;YAAE,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,CAAC;QAClG,IAAI,IAAI,CAAC,UAAU;YAAE,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC;AACvE,QAAA,IAAI,CAAC,mBAAmB,GAAG,IAAI;AAC/B,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI;AAEtB,QAAA,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;QACnB,IAAI,CAAC,kBAAkB,EAAE;IAC3B;;IAIQ,2BAA2B,CAAC,IAAa,EAAE,IAAiB,EAAA;QAClE,MAAM,GAAG,GAAG,IAA+B;AAE3C,QAAA,MAAM,YAAY,GAAiB;AACjC,YAAA,EAAE,EAAG,GAAG,CAAC,EAAa,IAAI,UAAU,EAAE;YACtC,OAAO,EAAE,IAAI,CAAC,IAAI;YAClB,KAAK,EAAE,GAAG,CAAC,KAAe;YAC1B,IAAI,EAAE,GAAG,CAAC,IAA0B;YACpC,IAAI,EAAE,GAAG,CAAC,IAA0B;YACpC,IAAI,EAAE,GAAG,CAAC,IAA2C;YACrD,SAAS,EAAE,GAAG,CAAC,SAAmB,IAAI,IAAI,CAAC,GAAG,EAAE;AAChD,YAAA,IAAI,EAAE,KAAK;AACX,YAAA,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,KAAK;SACjC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;AACjC,YAAA,IAAI,CAAC,IAAI,CAAC,wBAAwB,EAAE,YAAY,CAAC,EAAE,EAAE,YAAY,CAAC,KAAK,CAAC;AACxE,YAAA,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,YAAY,CAAC;QACzC;IACF;AAEQ,IAAA,mBAAmB,CAAC,IAAa,EAAA;QACvC,MAAM,GAAG,GAAG,IAA+B;AAE3C,QAAA,IAAI,GAAG,CAAC,GAAG,KAAK,IAAI,EAAE;AACpB,YAAA,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;AACzB,YAAA,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;QACtB;AAAO,aAAA,IAAI,OAAO,GAAG,CAAC,EAAE,KAAK,QAAQ,EAAE;YACrC,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;gBAChC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC;YAC3B;QACF;IACF;AACD;;ACpSD;;AAEG;MACU,YAAY,CAAA;AAAzB,IAAA,WAAA,GAAA;AACU,QAAA,IAAA,CAAA,OAAO,GAAG,IAAI,GAAG,EAAkB;IAqC7C;AAnCE;;AAEG;IACH,MAAM,CAAC,OAAe,EAAE,WAAmB,EAAA;QACzC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC;IACxC;AAEA;;AAEG;AACH,IAAA,GAAG,CAAC,OAAe,EAAA;QACjB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC;IACvC;AAEA;;AAEG;IACH,MAAM,GAAA;QACJ,MAAM,SAAS,GAA2B,EAAE;QAC5C,IAAI,KAAK,GAAG,CAAC;QAEb,KAAK,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE;AAC3C,YAAA,SAAS,CAAC,OAAO,CAAC,GAAG,KAAK;YAC1B,KAAK,IAAI,KAAK;QAChB;AAEA,QAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE;IAC7B;AAEA;;AAEG;IACH,KAAK,GAAA;AACH,QAAA,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;IACtB;AACD;;AClCD;;AAEG;MACU,eAAe,CAAA;AAA5B,IAAA,WAAA,GAAA;AACU,QAAA,IAAA,CAAA,MAAM,GAAG,IAAI,GAAG,EAAsB;AACtC,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,GAAG,EAAkB;IAqEpD;AAnEE;;;AAGG;AACH,IAAA,eAAe,CAAC,YAAoB,EAAE,YAAgC,EAAE,QAAiB,EAAA;QACvF,IAAI,CAAC,YAAY,EAAE,MAAM;AAAE,YAAA,OAAO,IAAI;QAEtC,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC;QACtD,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,IAAI,QAAQ,IAAI,YAAY;AAE9D,QAAA,MAAM,IAAI,GAAe;YACvB,MAAM;YACN,YAAY;YACZ,QAAQ,EAAE,YAAY,CAAC,QAAQ;AAC/B,YAAA,QAAQ,EAAE,QAAQ,IAAI,IAAI,CAAC,GAAG,EAAE;SACjC;QAED,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC;QAC7B,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC;AAE7C,QAAA,OAAO,IAAI;IACb;AAEA;;;AAGG;AACH,IAAA,eAAe,CAAC,YAAoB,EAAA;QAClC,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC;AACpD,QAAA,IAAI,CAAC,MAAM;AAAE,YAAA,OAAO,IAAI;AAExB,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI;AAC5C,QAAA,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;AAC1B,QAAA,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,YAAY,CAAC;AAExC,QAAA,OAAO,IAAI;IACb;AAEA;;AAEG;AACH,IAAA,OAAO,CAAC,MAAc,EAAA;QACpB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;IAChC;AAEA;;AAEG;AACH,IAAA,gBAAgB,CAAC,YAAoB,EAAA;QACnC,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC;AACpD,QAAA,OAAO,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,SAAS;IACrD;AAEA;;AAEG;IACH,MAAM,GAAA;QACJ,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;IACzC;AAEA;;AAEG;IACH,KAAK,GAAA;AACH,QAAA,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;AACnB,QAAA,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE;IAC7B;AACD;;ACvDD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6BG;AACG,MAAO,WAAY,SAAQ,YAAgC,CAAA;AAuD/D,IAAA,WAAA,CAAY,OAA2B,EAAA;AACrC,QAAA,KAAK,EAAE;AArDD,QAAA,IAAA,CAAA,SAAS,GAAG,IAAI,GAAG,EAAyB;QAC5C,IAAA,CAAA,MAAM,GAAwB,IAAI;AAClC,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,YAAY,EAAE;AAClC,QAAA,IAAA,CAAA,gBAAgB,GAAG,IAAI,eAAe,EAAE;AACxC,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,GAAG,EAAkB;;QAK1C,IAAA,CAAA,MAAM,GAAG,CAAC;QACV,IAAA,CAAA,SAAS,GAAG,KAAK;QACjB,IAAA,CAAA,QAAQ,GAAG,KAAK;QAIhB,IAAA,CAAA,kBAAkB,GAAyC,IAAI;;;;QAK/D,IAAA,CAAA,aAAa,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE;AACvC,QAAA,IAAA,CAAA,gBAAgB,GAAG,CAAC,MAAc,KAAI;AAC5C,YAAA,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC;AAClC,YAAA,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC;AACnC,QAAA,CAAC;QACO,IAAA,CAAA,eAAe,GAAG,MAAK;AAC7B,YAAA,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC;AAC5B,YAAA,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC;AAC3B,QAAA,CAAC;AACO,QAAA,IAAA,CAAA,WAAW,GAAG,CAAC,KAAY,KAAI;AACrC,YAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC;AAC1B,YAAA,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC;AAC3B,QAAA,CAAC;AACO,QAAA,IAAA,CAAA,iBAAiB,GAAG,CAAC,IAAa,KAAI;YAC5C,MAAM,KAAK,GAAG,IAAyB;YACvC,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE;AAC7C,gBAAA,OAAO,CAAC,kBAAkB,CAAC,KAAK,CAAC,KAAK,CAAC;YACzC;AACF,QAAA,CAAC;AACO,QAAA,IAAA,CAAA,eAAe,GAAG,CAAC,IAAa,KAAI;YAC1C,MAAM,KAAK,GAAG,IAA4B;YAC1C,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE;AAC7C,gBAAA,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,QAAQ,CAAC;YAC1C;AACF,QAAA,CAAC;AACO,QAAA,IAAA,CAAA,kBAAkB,GAAG,CAAC,IAAmB,KAAK,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC;AAChF,QAAA,IAAA,CAAA,mBAAmB,GAAG,CAAC,IAAmB,KAAK,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC;AAClF,QAAA,IAAA,CAAA,oBAAoB,GAAG,CAAC,IAAmB,KAAK,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC;AACpF,QAAA,IAAA,CAAA,eAAe,GAAG,CAAC,IAAa,KAAK,IAAI,CAAC,gBAAgB,CAAC,IAA0B,CAAC;AACtF,QAAA,IAAA,CAAA,gBAAgB,GAAG,CAAC,IAAa,KAAK,IAAI,CAAC,iBAAiB,CAAC,IAA0B,CAAC;AACxF,QAAA,IAAA,CAAA,iBAAiB,GAAG,CAAC,IAAa,KAAK,IAAI,CAAC,kBAAkB,CAAC,IAA0B,CAAC;AAKhG,QAAA,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE;AACpB,YAAA,MAAM,IAAI,SAAS,CACjB,iFAAiF,CAClF;QACH;AAEA,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,MAAM;AAC7B,QAAA,IAAI,CAAC,OAAO,GAAG,UAAU,EAAE;QAE3B,IAAI,CAAC,QAAQ,GAAG;YACd,QAAQ,EAAE,OAAO,CAAC,QAAQ;AAC1B,YAAA,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,gBAAgB;AAC5C,YAAA,oBAAoB,EAAE,OAAO,CAAC,oBAAoB,IAAI,8BAA8B;AACpF,YAAA,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,KAAK;AAC7B,YAAA,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,EAAE;SACjC;AAED,QAAA,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAE5D,IAAI,CAAC,aAAa,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,KAAI;AACzD,YAAA,IAAI,CAAC,aAAa,GAAG,OAAO;AAC5B,YAAA,IAAI,CAAC,YAAY,GAAG,MAAM;AAC5B,QAAA,CAAC,CAAC;;QAEF,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,MAAK,EAAE,CAAC,CAAC;AAElC,QAAA,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;;QAGnE,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC;QAC9C,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,YAAY,EAAE,IAAI,CAAC,gBAAgB,CAAC;QACpD,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC;QAClD,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC;QAC1C,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,cAAc,EAAE,IAAI,CAAC,iBAAiB,CAAC;QACvD,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,YAAY,EAAE,IAAI,CAAC,eAAe,CAAC;QACnD,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,eAAe,EAAE,IAAI,CAAC,kBAAkB,CAAC;QACzD,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,gBAAgB,EAAE,IAAI,CAAC,mBAAmB,CAAC;QAC3D,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,iBAAiB,EAAE,IAAI,CAAC,oBAAoB,CAAC;QAC7D,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,IAAI,CAAC,eAAe,CAAC;QAC3D,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,qBAAqB,EAAE,IAAI,CAAC,gBAAgB,CAAC;QAC7D,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,sBAAsB,EAAE,IAAI,CAAC,iBAAiB,CAAC;;;;QAK/D,cAAc,CAAC,MAAK;AAClB,YAAA,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;gBAClE,IAAI,CAAC,UAAU,EAAE;YACnB;AACF,QAAA,CAAC,CAAC;IACJ;;;AAKA,IAAA,IAAI,SAAS,GAAA;QACX,OAAO,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS;IAClD;;AAGA,IAAA,IAAI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO;IACrB;;AAGA,IAAA,IAAI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS;IACvB;;AAIA;;;;;AAKG;IACH,KAAK,GAAA;QACH,OAAO,IAAI,CAAC,aAAa;IAC3B;AAEA;;;;;AAKG;IACH,MAAM,GAAA;QACJ,IAAI,IAAI,CAAC,SAAS;YAAE;AACpB,QAAA,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC;AACzB,QAAA,IAAI,CAAC,SAAS,GAAG,IAAI;AACrB,QAAA,IAAI,CAAC,MAAM,EAAE,CAAC;AAEd,QAAA,IAAI,IAAI,CAAC,kBAAkB,EAAE;AAC3B,YAAA,YAAY,CAAC,IAAI,CAAC,kBAAkB,CAAC;AACrC,YAAA,IAAI,CAAC,kBAAkB,GAAG,IAAI;QAChC;;QAGA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC;QAC/C,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,gBAAgB,CAAC;QACrD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC;QACnD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC;QAC3C,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,CAAC,iBAAiB,CAAC;QACxD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,eAAe,CAAC;QACpD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,IAAI,CAAC,kBAAkB,CAAC;QAC1D,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,mBAAmB,CAAC;QAC5D,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,IAAI,CAAC,oBAAoB,CAAC;QAC9D,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,IAAI,CAAC,eAAe,CAAC;QAC5D,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,IAAI,CAAC,gBAAgB,CAAC;QAC9D,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,IAAI,CAAC,iBAAiB,CAAC;;AAGhE,QAAA,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,EAAE;YAC7C,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC,QAAQ,EAAE;AACpC,YAAA,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC;QAC7B;;QAGA,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;AACzC,YAAA,IAAI;AACF,gBAAA,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;YAC3B;AAAE,YAAA,MAAM;;YAER;QACF;AACA,QAAA,IAAI,CAAC,MAAM,GAAG,IAAI;AAElB,QAAA,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE;AAC1B,QAAA,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE;AAC7B,QAAA,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE;QAE3B,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;AAEnD,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,IAAI,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACnE;IACF;;IAIQ,UAAU,GAAA;QAChB,IAAI,CAAC,MAAM,EAAE;QACb,KAAK,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC;IAClC;AAEA;;;;AAIG;IACK,MAAM,SAAS,CAAC,KAAa,EAAA;AACnC,QAAA,MAAM,KAAK,GAAG,MAAM,KAAK,KAAK,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS;AAC3D,QAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,8BAA8B,GAAG,eAAe,CAAC;AAC3E,QAAA,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,OAAO,EAAE,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;;;AAI5E,QAAA,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC7E;AACA,QAAA,IAAI;YACF,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE;AAC3C,YAAA,IAAI,KAAK,EAAE;gBAAE;AACb,YAAA,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC;AAChC,YAAA,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC;QAC/B;QAAE,OAAO,GAAG,EAAE;AACZ,YAAA,IAAI,KAAK,EAAE;gBAAE;AACb,YAAA,IAAI,CAAC,IAAI,CAAC,4BAA4B,EAAE,GAAG,CAAC;QAC9C;;;AAIA,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,KAAK,MAAM,WAAW,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE;AAChD,gBAAA,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC;YACrC;QACF;AAEA,QAAA,IAAI,KAAK,EAAE;YAAE;;;AAIb,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;AAClB,YAAA,IAAI,CAAC,QAAQ,GAAG,IAAI;YACpB,IAAI,CAAC,aAAa,EAAE;AACpB,YAAA,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;QACxB;aAAO;AACL,YAAA,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;QAC1B;;;AAIA,QAAA,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC;IACnC;AAEQ,IAAA,qBAAqB,CAAC,KAAa,EAAA;QACzC,IAAI,IAAI,CAAC,kBAAkB;AAAE,YAAA,YAAY,CAAC,IAAI,CAAC,kBAAkB,CAAC;AAClE,QAAA,IAAI,CAAC,kBAAkB,GAAG,UAAU,CAAC,MAAK;AACxC,YAAA,IAAI,CAAC,kBAAkB,GAAG,IAAI;YAC9B,IAAI,KAAK,KAAK,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;gBACtF;YACF;AACA,YAAA,IAAI,CAAC;AACF,iBAAA,aAAa;AACb,iBAAA,IAAI,CAAC,CAAC,KAAK,KAAI;gBACd,IAAI,KAAK,KAAK,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS;oBAAE;AAC7C,gBAAA,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC;AAClC,YAAA,CAAC;iBACA,KAAK,CAAC,MAAK;;AAEZ,YAAA,CAAC,CAAC;QACN,CAAC,EAAE,sBAAsB,CAAC;IAC5B;;AAIA;;;AAGG;IACH,SAAS,CAAC,WAAmB,EAAE,IAA8B,EAAA;QAC3D,IAAI,CAAC,aAAa,EAAE;QAEpB,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC;QAChD,IAAI,QAAQ,EAAE;;YAEZ,IAAI,IAAI,EAAE,OAAO;AAAE,gBAAA,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC;AACpD,YAAA,OAAO,QAAQ;QACjB;AAEA,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE,IAAI,EAAE,OAAO,CAAC;QAClE,OAAO,CAAC,SAAS,EAAE;AAEnB,QAAA,OAAO,OAAO;IAChB;AAEA;;AAEG;AACH,IAAA,WAAW,CAAC,WAAmB,EAAA;QAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC;AAC/C,QAAA,IAAI,CAAC,OAAO;YAAE;AAEd,QAAA,IAAI,CAAC,IAAI,CAAC,wBAAwB,EAAE,WAAW,CAAC;QAChD,OAAO,CAAC,QAAQ,EAAE;AAClB,QAAA,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC;QAClC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;QACzC,IAAI,CAAC,iBAAiB,EAAE;IAC1B;;AAIA;;AAEG;IACH,cAAc,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE;IACpC;;AAIA;;AAEG;IACH,WAAW,GAAA;QACT,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE;YAC7C,OAAO,CAAC,WAAW,EAAE;QACvB;IACF;;IAIQ,aAAa,GAAA;AACnB,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE;AAClB,YAAA,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC;QAC7E;AACA,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;AAClB,YAAA,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC;QACnF;IACF;;IAIQ,iBAAiB,CAAC,IAAY,EAAE,OAAuB,EAAA;AAC7D,QAAA,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,IAAI,CAAC;AAEvC,QAAA,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;AAC5E,QAAA,MAAM,OAAO,GAAG,IAAI,aAAa,CAC/B,IAAI,EACJ,WAAW,EACX,IAAI,CAAC,QAAQ,EACb,YAAY,CAAC,CAAA,cAAA,EAAiB,IAAI,CAAA,CAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAC1D,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAC7B;QAED,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC;AACjC,QAAA,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC;;QAG3B,OAAO,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC,YAAY,KAAI;YAC1C,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC;YACpD,IAAI,CAAC,iBAAiB,EAAE;AACxB,YAAA,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,YAAY,CAAC;AACzC,QAAA,CAAC,CAAC;AAEF,QAAA,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAK;YACtB,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC;YACpD,IAAI,CAAC,iBAAiB,EAAE;AAC1B,QAAA,CAAC,CAAC;AAEF,QAAA,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,MAAK;YACzB,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;YAClC,IAAI,CAAC,iBAAiB,EAAE;AAC1B,QAAA,CAAC,CAAC;AAEF,QAAA,OAAO,OAAO;IAChB;IAEQ,iBAAiB,GAAA;AACvB,QAAA,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;IACxD;;AAIA;;;;;AAKG;AACK,IAAA,aAAa,CAAC,IAAoC,EAAA;AACxD,QAAA,MAAM,KAAK,GAAI,IAA4C,EAAE,OAAO;AACpE,QAAA,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC,QAAQ,CAAC,OAAO;IACrE;;AAIQ,IAAA,uBAAuB,CAAC,IAAmB,EAAA;QACjD,IAAI,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE;AAChD,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,QAAyC;QACnE,IAAI,CAAC,YAAY,EAAE,MAAM,IAAI,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC;YAAE;AAE/D,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,EAAE,YAAY,CAAC;QACnF,IAAI,IAAI,EAAE;AACR,YAAA,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC;QACzD;IACF;AAEQ,IAAA,wBAAwB,CAAC,IAAmB,EAAA;QAClD,IAAI,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE;QAChD,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC;IAC1D;AAEQ,IAAA,yBAAyB,CAAC,IAAmB,EAAA;QACnD,IAAI,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE;AAChD,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,QAAyC;QACnE,IAAI,CAAC,YAAY,EAAE,MAAM,IAAI,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC;YAAE;QAC/D,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,EAAE,YAAY,CAAC;IACxE;;AAIQ,IAAA,gBAAgB,CAAC,KAAyB,EAAA;AAChD,QAAA,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,KAAK;AAC/B,QAAA,IAAI,OAAO,KAAK,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE;QAEtC,MAAM,YAAY,GAAG,IAAqC;QAC1D,IAAI,CAAC,YAAY,EAAE,MAAM,IAAI,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC;YAAE;AAE/D,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,OAAO,EAAE,YAAY,CAAC;QACzE,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC;QAC/C;IACF;AAEQ,IAAA,iBAAiB,CAAC,KAAyB,EAAA;AACjD,QAAA,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,KAAK;AAC/B,QAAA,IAAI,OAAO,KAAK,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE;QAEtC,MAAM,YAAY,GAAG,IAAqC;AAC1D,QAAA,IAAI,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC;YAAE;AACtC,QAAA,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,OAAO,CAAC;AAC9C,QAAA,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC;IACrC;AAEQ,IAAA,kBAAkB,CAAC,KAAyB,EAAA;AAClD,QAAA,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,KAAK;AAC/B,QAAA,IAAI,OAAO,KAAK,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE;QAEtC,MAAM,YAAY,GAAG,IAAqC;QAC1D,IAAI,CAAC,YAAY,EAAE,MAAM,IAAI,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC;YAAE;QAC/D,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,OAAO,EAAE,YAAY,CAAC;IAC9D;AAEA;;;AAGG;AACK,IAAA,oBAAoB,CAAC,KAAyB,EAAA;;AAEpD,QAAA,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU;QAErC,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;AACvC,YAAA,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC;YAClC,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;AAC/C,gBAAA,IAAI,OAAO,KAAK,IAAI,CAAC,OAAO,CAAC,OAAO;oBAAE;AAEtC,gBAAA,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,CAA4B;;gBAE5D,MAAM,YAAY,IAAI,GAAG,EAAE,QAAQ,IAAI,GAAG,CAAkC;AAC5E,gBAAA,IAAI,YAAY,EAAE,MAAM,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,EAAE;AAC7D,oBAAA,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC;AACxB,oBAAA,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,OAAO,EAAE,YAAY,CAAC;oBACzE,IAAI,IAAI,EAAE;wBACR,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC;oBAC/C;gBACF;YACF;QACF;;AAGA,QAAA,KAAK,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,EAAE;YAChD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;AAC7B,gBAAA,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,OAAO,CAAC;AAC9C,gBAAA,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC;YACrC;QACF;IACF;AACD;;;;"}
|
package/dist/types.d.ts
CHANGED
|
@@ -55,6 +55,30 @@ export interface SendNotificationOptions {
|
|
|
55
55
|
icon?: string;
|
|
56
56
|
/** Optional structured data */
|
|
57
57
|
data?: Record<string, unknown>;
|
|
58
|
+
/**
|
|
59
|
+
* Deliver this notification only to subscribers filtering on this value —
|
|
60
|
+
* a user id, role, or segment. Unfiltered (wildcard) subscribers on the
|
|
61
|
+
* channel still receive it.
|
|
62
|
+
*/
|
|
63
|
+
filter?: string;
|
|
64
|
+
/**
|
|
65
|
+
* AND composite filter — reaches only subscribers filtering on all of
|
|
66
|
+
* these values together, e.g. `['eu', 'admin']`. Ignored when `filter` is
|
|
67
|
+
* also set.
|
|
68
|
+
*/
|
|
69
|
+
filters?: string[];
|
|
70
|
+
}
|
|
71
|
+
/** Options for `NoLagNotify.subscribe()`. */
|
|
72
|
+
export interface SubscribeChannelOptions {
|
|
73
|
+
/**
|
|
74
|
+
* Only receive notifications published with one of these filter values.
|
|
75
|
+
* This is the per-user/per-segment delivery case: subscribe with your own
|
|
76
|
+
* user id to receive only what was addressed to you.
|
|
77
|
+
*
|
|
78
|
+
* Omit (or pass an empty array) to receive every notification on the
|
|
79
|
+
* channel, including ones addressed to someone else.
|
|
80
|
+
*/
|
|
81
|
+
filters?: FilterValue[];
|
|
58
82
|
}
|
|
59
83
|
export interface BadgeCounts {
|
|
60
84
|
/** Total unread across all channels */
|
|
@@ -88,3 +112,11 @@ export interface NotifyChannelEvents {
|
|
|
88
112
|
replayed: number;
|
|
89
113
|
}];
|
|
90
114
|
}
|
|
115
|
+
/**
|
|
116
|
+
* A single subscription filter value.
|
|
117
|
+
*
|
|
118
|
+
* A plain string is an OR term: `['alice', 'bob']` matches either. A nested
|
|
119
|
+
* array is an AND group: `[['alice', 'admin']]` matches only what was
|
|
120
|
+
* published tagged with both.
|
|
121
|
+
*/
|
|
122
|
+
export type FilterValue = string | string[];
|
package/dist/utils.d.ts
CHANGED
|
@@ -1,5 +1,54 @@
|
|
|
1
|
+
import type { FilterValue } from './types';
|
|
1
2
|
export declare function generateId(): string;
|
|
2
3
|
export declare function createLogger(prefix: string, enabled: boolean): (..._args: unknown[]) => void;
|
|
4
|
+
/**
|
|
5
|
+
* Build the filter fragment of an emit options object.
|
|
6
|
+
*
|
|
7
|
+
* `filter` wins over `filters`: a publish is routed to exactly one topic, so
|
|
8
|
+
* honouring both would silently drop one of them.
|
|
9
|
+
*/
|
|
10
|
+
export declare function filterEmitOptions(opts?: {
|
|
11
|
+
filter?: string;
|
|
12
|
+
filters?: string[];
|
|
13
|
+
}): {
|
|
14
|
+
filter?: string;
|
|
15
|
+
filters?: string[];
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* Rebuild publish options from the filter a message arrived with, so a reply
|
|
19
|
+
* to it reaches the same audience the original did.
|
|
20
|
+
*
|
|
21
|
+
* The server joins AND groups into one composite value with '|', which is not
|
|
22
|
+
* a legal character in a plain filter, so split those back apart.
|
|
23
|
+
*/
|
|
24
|
+
export declare function inheritFilter(filter?: string): {
|
|
25
|
+
filter?: string;
|
|
26
|
+
filters?: string[];
|
|
27
|
+
};
|
|
28
|
+
/**
|
|
29
|
+
* Merge OR terms into an existing filter set. AND groups (nested arrays) are
|
|
30
|
+
* preserved as-is — only plain string terms are deduplicated.
|
|
31
|
+
*/
|
|
32
|
+
export declare function mergeFilters(existing: FilterValue[], add: string[]): FilterValue[];
|
|
33
|
+
/**
|
|
34
|
+
* Drop OR terms from a filter set. AND groups are left untouched — remove
|
|
35
|
+
* those by calling `setFilters` with the set you want.
|
|
36
|
+
*/
|
|
37
|
+
export declare function withoutFilters(existing: FilterValue[], remove: string[]): FilterValue[];
|
|
38
|
+
/**
|
|
39
|
+
* The composite key the server derives from an AND filter group: values are
|
|
40
|
+
* lowercased, sorted, and joined with '|'. Mirrored here so an item created
|
|
41
|
+
* locally carries the same filter string as one arriving off the wire.
|
|
42
|
+
*/
|
|
43
|
+
export declare function compositeFilterKey(values: string[]): string;
|
|
44
|
+
/**
|
|
45
|
+
* The single string form of whatever filter a publish used, for recording on
|
|
46
|
+
* the local copy of an item. Round-trips through `inheritFilter`.
|
|
47
|
+
*/
|
|
48
|
+
export declare function recordedFilter(opts?: {
|
|
49
|
+
filter?: string;
|
|
50
|
+
filters?: string[];
|
|
51
|
+
}): string | undefined;
|
|
3
52
|
/** Register a wrapper against a client + appName; warns on collision. */
|
|
4
53
|
export declare function registerWrapper(client: object, appName: string, wrapperName: string): void;
|
|
5
54
|
/** Release a wrapper's (client, appName) registration on detach. */
|