From aa6ad39a1d39a0458a28ba66af334d6fadad85ac Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Thu, 21 Nov 2019 14:31:51 -0500 Subject: [PATCH] stable sort --- src/compiler/compile/render_dom/Renderer.ts | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/compiler/compile/render_dom/Renderer.ts b/src/compiler/compile/render_dom/Renderer.ts index 0c3574cd49..d800e670a1 100644 --- a/src/compiler/compile/render_dom/Renderer.ts +++ b/src/compiler/compile/render_dom/Renderer.ts @@ -39,7 +39,6 @@ export default class Renderer { this.file_var = options.dev && this.component.get_unique_name('file'); - // TODO sort vars, most frequently referenced first? component.vars.filter(v => !v.hoistable || (v.export_name && !v.module)).forEach(v => this.add_to_context(v.name)); // ensure store values are included in context @@ -109,7 +108,7 @@ export default class Renderer { } }); - this.context.sort((a, b) => b.priority - a.priority); + this.context.sort((a, b) => (b.priority - a.priority) || (a.name < b.name ? -1 : 1)); this.context.forEach((member, i) => member.index.value = i); }