|  |  | @ -109,26 +109,6 @@ export class Boundary { | 
			
		
	
		
		
			
				
					
					|  |  |  | 			var boundary_effect = /** @type {Effect} */ (active_effect); |  |  |  | 			var boundary_effect = /** @type {Effect} */ (active_effect); | 
			
		
	
		
		
			
				
					
					|  |  |  | 			var hydrate_open = hydrate_node; |  |  |  | 			var hydrate_open = hydrate_node; | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  | 			/** |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 			 * @param {() => void} snippet_fn |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 			 * @returns {Effect | null} |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 			 */ |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 			const render_snippet = (snippet_fn) => { |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 				return this.#run(() => { |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 					this.#is_creating_fallback = true; |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 					try { |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 						return branch(snippet_fn); |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 					} catch (error) { |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 						handle_error(error, boundary_effect, null, boundary_effect.ctx); |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 						return null; |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 					} finally { |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 						reset_is_throwing_error(); |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 						this.#is_creating_fallback = false; |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 					} |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 				}); |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 			}; |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | 			const reset = () => { |  |  |  | 			const reset = () => { | 
			
		
	
		
		
			
				
					
					|  |  |  | 				this.#pending_count = 0; |  |  |  | 				this.#pending_count = 0; | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
	
		
		
			
				
					|  |  | @ -231,12 +211,24 @@ export class Boundary { | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  | 				if (failed) { |  |  |  | 				if (failed) { | 
			
		
	
		
		
			
				
					
					|  |  |  | 					queue_boundary_micro_task(() => { |  |  |  | 					queue_boundary_micro_task(() => { | 
			
		
	
		
		
			
				
					
					|  |  |  | 						this.#failed_effect = render_snippet(() => { |  |  |  | 						this.#failed_effect = this.#run(() => { | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  | 							failed( |  |  |  | 							this.#is_creating_fallback = true; | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  | 								this.#anchor, |  |  |  | 
 | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  | 								() => error, |  |  |  | 							try { | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  | 								() => reset |  |  |  | 								return branch(() => { | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  | 							); |  |  |  | 									failed( | 
			
				
				
			
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 										this.#anchor, | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 										() => error, | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 										() => reset | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 									); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 								}); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 							} catch (error) { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 								handle_error(error, boundary_effect, null, boundary_effect.ctx); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 								return null; | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 							} finally { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 								reset_is_throwing_error(); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 								this.#is_creating_fallback = false; | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 							} | 
			
		
	
		
		
			
				
					
					|  |  |  | 						}); |  |  |  | 						}); | 
			
		
	
		
		
			
				
					
					|  |  |  | 					}); |  |  |  | 					}); | 
			
		
	
		
		
			
				
					
					|  |  |  | 				} |  |  |  | 				} | 
			
		
	
	
		
		
			
				
					|  |  | 
 |