38
*/
39
export class SessionClientCustomizationsModel {
41
>
/** Per-client synced customizations, keyed by `clientId`, merged into `state.synced`. */
42
>
private readonly _byClient = new Map<string, readonly ISyncedCustomization[]>();
43
>
44
>
private readonly _state: ISettableObservable<ISessionCustomizationsState> = observableValueOpts(
45
>
{ owner: this, equalsFn: stateEqual },
46
>
INITIAL_STATE,
47
>
);
48
>
readonly state: IObservable<ISessionCustomizationsState> = this._state;
49
50
/**