Module Description
All work on this project is done on Github Visit emulsify-ds/emulsify_twig to log issues and contribute.

Documentation can be found at https://docs.emulsify.info More information at https://emulsify.info This module provides two Twig extensions used in the Emulsify Design System.

Usage BEM Twig Extension
Twig function that inserts static classes into Pattern Lab and adds them to the Attributes object in Drupal

Simple block name (required argument): <h1 {{ bem('title') }}>

This creates:

<h1 class="title">

Block with modifiers (optional array allowing multiple modifiers): <h1 {{ bem('title', ['small', 'red']) }}>

This creates:

<h1 class="title title--small title--red">

Element with modifiers and blockname (optional): <h1 {{ bem('title', ['small', 'red'], 'card') }}>

This creates:

<h1 class="card__title card__title--small card__title--red">

Element with blockname, but no modifiers (optional): <h1 {{ bem('title', '', 'card') }}>

This creates:

<h1 class="card__title">

Element with modifiers, blockname and extra classes (optional - in case you need non-BEM classes): <h1 {{ bem('title', ['small', 'red'], 'card', ['js-click', 'something-else']) }}>

This creates:

<h1 class="card__title card__title--small card__title--red js-click something-else">

Element with extra classes only (optional): <h1 {{ bem('title', '', '', ['js-click']) }}>

This creates:

<h1 class="title js-click">

Add Attributes Twig Extension
Twig function that merges with template level attributes in Drupal and prevents them from trickling down into includes.

{% set additional_attributes = { "class": ["foo", "bar"], "baz": ["foobar", "goobar"], "foobaz": "goobaz", } %} <div {{ add_attributes(additional_attributes) }}></div> Can also be used with the BEM Function:

{% set additional_attributes = { "class": bem("foo", ["bar", "baz"], "foobar"), } %} <div {{ add_attributes(additional_attributes) }}></div>
Project Usage
4329
Creation Date
Changed Date
Security Covered
Covered By Security Advisory
Version Available
Production
Module Summary
This module provides Twig extensions for adding BEM classes and additional attributes to templates in the Emulsify Design System.
Data Name
emulsify_twig

OPENAI CHATBOT

OPENAI CHATBOT

12:31:37
Generic Chatbot
Hi, I'm a Drupal module expert powered by OpenAI, answering your questions about the Drupal module ecosystem. How can I be helpful today? Please note that we will log your question.