diff --git a/src/client/TerritoryPatternsModal.ts b/src/client/TerritoryPatternsModal.ts index 4658977cd..99c6bfc51 100644 --- a/src/client/TerritoryPatternsModal.ts +++ b/src/client/TerritoryPatternsModal.ts @@ -236,70 +236,25 @@ export class TerritoryPatternsModal extends LitElement { this.close(); } - private updatePreview() { - if (!this.previewButton) return; - - const pattern = this.selectedPattern - ? territoryPatterns.pattern[this.selectedPattern] - : null; - if (!pattern) { - const blankPreview = html` -
-
-
-
-
-
-
-
- `; - render(blankPreview, this.previewButton); - return; - } - - const fixedHeight = 48; - const fixedWidth = 48; + private renderPatternPreview( + pattern: (typeof territoryPatterns.pattern)[string], + width: number, + height: number, + ): TemplateResult { const decoder = new PatternDecoder(pattern.pattern); const cellCountX = decoder.getTileWidth(); const cellCountY = decoder.getTileHeight(); - const cellSize = Math.min( - fixedHeight / cellCountY, - fixedWidth / cellCountX, - ); + const cellSize = Math.min(height / cellCountY, width / cellCountX); - const previewHTML = html` + return html`
+
+
+
+
+
+
+
+ `; + } + + private updatePreview() { + if (!this.previewButton) return; + + const pattern = this.selectedPattern + ? territoryPatterns.pattern[this.selectedPattern] + : null; + if (!pattern) { + const blankPreview = this.renderBlankPreview(48, 48); + render(blankPreview, this.previewButton); + return; + } + + const previewHTML = this.renderPatternPreview(pattern, 48, 48); render(previewHTML, this.previewButton); }