forked from MapComplete/MapComplete
		
	Fix broken variableInputElement
This commit is contained in:
		
							parent
							
								
									2979abdfcd
								
							
						
					
					
						commit
						36ac99c9ec
					
				
					 2 changed files with 36 additions and 9 deletions
				
			
		|  | @ -383,13 +383,13 @@ class MappedStore<TIn, T> extends Store<T> { | |||
|     private static readonly pass: () => {} | ||||
| 
 | ||||
| 
 | ||||
|     constructor(upstream: Store<TIn>, f: (t: TIn) => T, extraStores: Store<any>[] = undefined,  | ||||
|                 upstreamListenerHandler: ListenerTracker<TIn>) { | ||||
|     constructor(upstream: Store<TIn>, f: (t: TIn) => T, extraStores: Store<any>[],  | ||||
|                 upstreamListenerHandler: ListenerTracker<TIn>, initialState: T) { | ||||
|         super(); | ||||
|         this._upstream = upstream; | ||||
|         this._upstreamCallbackHandler = upstreamListenerHandler | ||||
|         this._f = f; | ||||
|         this._data = f(upstream.data) | ||||
|         this._data = initialState | ||||
|         this._upstreamPingCount = upstreamListenerHandler.pingCount | ||||
|         this._extraStores = extraStores; | ||||
|         this.registerCallbacksToUpstream() | ||||
|  | @ -436,10 +436,11 @@ class MappedStore<TIn, T> extends Store<T> { | |||
|             }) | ||||
|         } | ||||
|         return new MappedStore( | ||||
|             this._upstream, | ||||
|             data => f(this._f(data)), | ||||
|             this, | ||||
|             f, // we could fuse the functions here (e.g. data => f(this._f(data), but this might result in _f being calculated multiple times, breaking things
 | ||||
|             stores, | ||||
|             this._upstreamCallbackHandler | ||||
|             this._callbacks, | ||||
|             f(this.data) | ||||
|         ); | ||||
|     } | ||||
| 
 | ||||
|  | @ -669,7 +670,7 @@ export class UIEventSource<T> extends Store<T> { | |||
|      */ | ||||
|     public map<J>(f: ((t: T) => J), | ||||
|                   extraSources: Store<any>[] = []): Store<J> { | ||||
|         return new MappedStore(this, f, extraSources, this._callbacks); | ||||
|         return new MappedStore(this, f, extraSources, this._callbacks, f(this.data)); | ||||
|     } | ||||
| 
 | ||||
|     /** | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue