first commit

This commit is contained in:
2026-07-21 16:50:58 +02:00
commit 256599626e
407 changed files with 30489 additions and 0 deletions
+36
View File
@@ -0,0 +1,36 @@
/**
* Tags bentext réservés au pipeline : ligne `sprite:<alias>` dans le bloc tags (fichier fr).
* Lalias correspond à une entrée de `ressources/public/ingredient-sprites.bentext` (comme les tuiles « base »).
*/
export const VARIANT_TILE_SPRITE_TAG_PREFIX = "sprite:";
const normalizeAliasKey = (s) => s.trim().toLowerCase().replace(/\s+/g, " ");
/**
* @param {ReadonlyArray<string>} tags Tags déjà normalisés (ex. minuscules depuis readBentext)
* @returns {string | null} alias tuile, sans le préfixe
*/
export const extractVariantTileSpriteAlias = (tags) => {
if (!Array.isArray(tags)) return null;
for (const t of tags) {
const s = typeof t === "string" ? t.trim().toLowerCase() : "";
if (!s.startsWith(VARIANT_TILE_SPRITE_TAG_PREFIX)) continue;
const rest = normalizeAliasKey(s.slice(VARIANT_TILE_SPRITE_TAG_PREFIX.length));
if (rest) return rest;
}
return null;
};
/**
* Retire les lignes `sprite:` pour le catalogue et les usages « tags visibles ».
* @param {ReadonlyArray<string>} tags
* @returns {string[]}
*/
export const stripVariantTileSpriteTags = (tags) => {
if (!Array.isArray(tags)) return [];
return tags.filter((t) => {
const s = typeof t === "string" ? t.trim().toLowerCase() : "";
return !s.startsWith(VARIANT_TILE_SPRITE_TAG_PREFIX);
});
};