Variable DEFAULT_IFC_NAME_RULESConst

DEFAULT_IFC_NAME_RULES: IfcNameRule[] = ...

Built-in IfcNameRule list catching authoring-tool-specific names that carry semantic meaning the IFC type alone doesn't — primarily Revit-style proxy elements exported as IfcBuildingElementProxy.

Pattern set follows the same spirit as the xeokit V2 example xkt_vbo_fallbackColors_DigitalHub.html nameColorMap. Regexes are bilingual where common (German + English, the two languages Revit / ArchiCAD models in the wild are most often authored in) so models from European authoring tools route the same way as their US/UK equivalents.

Patterns use \b word boundaries where possible to avoid false-positives on IFC name strings like "Basic Wall:Generic - 200mm:1234" — common words like "light" or "water" are deliberately omitted because they appear too often in other contexts (e.g. "Light grey wall paint", "Water meter cover").

Order matters — first match wins. Pass a custom nameRules array to applyIFCMaterials to replace this list, or spread it ([...DEFAULT_IFC_NAME_RULES, ...mine]) to extend.

Each target key has a corresponding entry in DEFAULT_IFC_PAINTERS, so a matched object actually paints with a fitting material rather than dropping through to the generic concrete fallback.