add lint and format ignore paths and additional scripts + fix formatting

This commit is contained in:
2026-06-21 21:08:28 +02:00
parent 63bcdf9356
commit a2a10ee4df
5 changed files with 29 additions and 27 deletions
+16 -17
View File
@@ -51,10 +51,10 @@ export const ChessBoard = {
return dests;
},
handleMove(orig, dest) {
handleMove(orig, dest) {
const piece = this.ground.state.pieces.get(dest);
const destRank = dest[1];
if (piece?.role === 'pawn' && (destRank === '1' || destRank === '8')) {
if (piece?.role === "pawn" && (destRank === "1" || destRank === "8")) {
this.showPromotionDialog(orig, dest);
return; // don't execute yet — wait for user choice
}
@@ -63,34 +63,33 @@ handleMove(orig, dest) {
showPromotionDialog(orig, dest) {
this.pendingPromotion = { orig, dest };
const color = this.chess.turn() === 'w' ? 'white' : 'black';
const overlay = document.createElement('div');
overlay.className = 'promotion-overlay';
const picker = document.createElement('div');
picker.className = 'promotion-picker';
const color = this.chess.turn() === "w" ? "white" : "black";
const overlay = document.createElement("div");
overlay.className = "promotion-overlay";
const picker = document.createElement("div");
picker.className = "promotion-picker";
const pieces = [
{ type: 'queen', code: 'q' },
{ type: 'rook', code: 'r' },
{ type: 'bishop', code: 'b' },
{ type: 'knight', code: 'n' },
{ type: "queen", code: "q" },
{ type: "rook", code: "r" },
{ type: "bishop", code: "b" },
{ type: "knight", code: "n" },
];
pieces.forEach(({ type, code }) => {
const btn = document.createElement('button');
const btn = document.createElement("button");
btn.className = `promotion-piece ${type} ${color}`;
btn.addEventListener('click', () => this.completePromotion(code));
btn.addEventListener("click", () => this.completePromotion(code));
picker.appendChild(btn);
});
overlay.appendChild(picker);
const boardContainer = this.el.closest('.shadow-inner');
boardContainer.style.position = 'relative';
const boardContainer = this.el.closest(".shadow-inner");
boardContainer.style.position = "relative";
boardContainer.appendChild(overlay);
},
completePromotion(pieceType) {
const { orig, dest } = this.pendingPromotion;
this.pendingPromotion = null;
const picker = this.el.closest('.shadow-inner')
?.querySelector('.promotion-overlay');
const picker = this.el.closest(".shadow-inner")?.querySelector(".promotion-overlay");
if (picker) picker.remove();
this.executeMove(orig, dest, pieceType);
},