<div class="c-drawer">
<div class="c-drawer__container">
<div class="c-drawer__header">
<h4 class="o-heading o-heading--xs c-drawer__heading">
Search
</h4>
<button class="o-button o-button--icon c-drawer__close js-toggle" data-prefix="drawer" data-toggled="body" aria-label="Close">
<span class="o-icon o-icon--md">
<svg width="24" height="24" viewBox="0 0 24 24" fill="currentcolor" xmlns="http://www.w3.org/2000/svg">
<path d="M13.2373 12L19 6.23734L17.7627 5L12 10.7627L6.23751 5L5 6.23734L10.7627 12L5 17.7627L6.23751 19L12 13.2373L17.7627 19L19 17.7627L13.2373 12Z" />
</svg>
</span>
</button>
</div>
<div class="c-drawer__content">
<div class="o-rich-text c-drawer__text">
<script async src='https://cse.google.com/cse.js?cx=9766aba3a08f84203'></script>
<div class='gcse-search'></div>
</div>
</div>
</div>
</div>
{% set base_class = drawer.base_class|default('c-drawer') %}
{% if drawer %}
<div class="{{ bem(base_class, drawer.element, drawer.modifiers, drawer.extra) }}">
<div class="{{ bem(base_class, 'container') }}">
<div class="{{ bem(base_class, 'header') }}">
{% include "@heading" with {
"heading": {
"level": "4",
"size": "xs",
"text": drawer.heading,
"extra": bem(base_class, 'heading')
}
} %}
{% include "@button" with {
"button": {
"icon": {
"name": "close",
"modifiers": "md"
},
"attributes": {
"aria-label": "Close",
"data-toggled": "body",
"data-prefix": "drawer"
},
"modifiers": "icon",
"extra": [bem(base_class, 'close'), "js-toggle"]
}
} %}
</div>
<div class="{{ bem(base_class, 'content') }}">
{% include "@rich-text" with {
"rich_text": {
"text": drawer.content,
"includes": drawer.includes,
"extra": bem(base_class, 'text')
}
} %}
</div>
</div>
</div>
{% endif %}
{
"drawer": {
"heading": "Search",
"content": "<script async src='https://cse.google.com/cse.js?cx=9766aba3a08f84203'></script><div class='gcse-search'></div>"
}
}
/* ------------------------------------*\
$DRAWER
\*------------------------------------ */
.c-drawer {
display: flex;
position: fixed;
top: 0;
right: -400px;
width: 400px;
max-width: 100vw;
height: 100vh;
background-color: var(--dotd-color-background-default-strong);
z-index: var(--dotd-z-index-top);
box-shadow: var(--dotd-box-shadow);
transition: right var(--dotd-animation-duration) var(--dotd-animation-timing);
&__container {
display: flex;
flex-direction: column;
flex: 1;
}
&__header {
display: flex;
align-items: center;
justify-content: space-between;
background-color: var(--dotd-color-background-default-strong);
box-shadow: var(--dotd-box-shadow-sm);
position: sticky;
top: 0;
left: 0;
padding: var(--dotd-space-sm) var(--dotd-space-sm) var(--dotd-space-sm) var(--dotd-space-md);
z-index: var(--dotd-z-index-top);
}
&__content {
flex: 1;
padding: var(--dotd-space);
background-color: var(--dotd-color-background-default-strong);
overflow: auto;
}
&::after {
content: "";
display: block;
position: fixed;
top: 0;
left: 0;
width: 100vw;
height: 100vh;
background-color: var(--dotd-color-overlay-default);
opacity: 0;
transition: opacity var(--dotd-animation-duration) var(--dotd-animation-timing);
z-index: -1;
pointer-events: none;
}
}
body.drawer-is-active {
.c-drawer {
right: 0;
&::after {
opacity: 1;
pointer-events: auto;
}
}
}
No notes defined.