Overflow Nav

Go to the "assets" pane and find the JS for the overflow nav under "OverflowNav.js"
<!-- Default -->
<nav class="sds-overflowNav">

    <div class="sds-overflowNav__logo flex-shrink-0">
        <svg width="214" height="40" viewBox="0 0 214 40" fill="none" xmlns="http://www.w3.org/2000/svg">
            <g clip-path="url(#clip0_1029_767)">
                <path fill-rule="evenodd" clip-rule="evenodd" d="M192.88 12.12C193.4 12.56 193.72 13.04 193.92 13.56L196.76 11.92C196.28 10.96 195.6 10.16 195 9.59998C194.28 8.95998 192.84 8.03998 190.36 8.03998C186 8.03998 183.6 11 183.6 14.12C183.6 17.6 186.4 19.16 188.4 20L190.6 20.92C192.16 21.52 193.96 22.56 193.96 24.88C193.96 27.2 192.24 28.76 190.12 28.76C188.68 28.76 187.72 28.24 187.08 27.4C186.52 26.64 186.12 25.56 186.12 24.44L182.6 25.2C182.72 26.8 183.28 28.36 184.52 29.72C185.68 31.04 187.28 32.04 189.96 32.04C194.28 32.04 197.4 29.04 197.4 24.64C197.4 22 196.24 19.56 191.96 17.84L189.64 16.92C187.36 15.96 187.12 14.76 187.12 14.08C187.12 12.56 188.28 11.28 190.4 11.28C191.4 11.28 192.16 11.52 192.88 12.12ZM145.72 8.39999L136.76 17.64V8.39999H133.24V31.52H136.76V21.96L137.44 21.24L145.72 31.52H150.44L139.92 18.88L150.36 8.39999H145.72ZM155.64 11.72H164.88V8.39999H152.08V31.52H164.88V28.2H155.64V20.92H164.6V17.6H155.64V11.72ZM180.76 11.72H171.52V17.6H180.52V20.92H171.52V28.2H180.76V31.52H168.04V8.39999H180.76V11.72ZM210 13.56C209.8 13.04 209.48 12.56 208.96 12.12C208.24 11.52 207.48 11.28 206.44 11.28C204.32 11.28 203.16 12.56 203.16 14.08C203.16 14.76 203.4 15.96 205.68 16.92L208 17.84C212.28 19.56 213.44 22 213.44 24.64C213.44 29.04 210.32 32.04 206 32.04C203.32 32.04 201.72 31.04 200.56 29.72C199.32 28.36 198.76 26.8 198.64 25.2L202.16 24.44C202.16 25.56 202.56 26.64 203.12 27.4C203.76 28.24 204.72 28.76 206.16 28.76C208.28 28.76 210 27.2 210 24.88C210 22.56 208.2 21.52 206.64 20.92L204.44 20C202.56 19.2 199.72 17.64 199.72 14.16C199.72 11.04 202.12 8.07997 206.48 8.07997C209 8.07997 210.4 8.99997 211.12 9.63997C211.72 10.2 212.4 11 212.88 11.96L210 13.56ZM57.56 12.12C58.08 12.56 58.4 13.04 58.6 13.56L61.48 11.96C61 11 60.32 10.2 59.72 9.63997C59 8.99997 57.56 8.07997 55.08 8.07997C50.72 8.07997 48.32 11.04 48.32 14.16C48.32 17.64 51.16 19.2 53.04 20L55.24 20.92C56.8 21.52 58.6 22.56 58.6 24.88C58.6 27.2 56.88 28.76 54.76 28.76C53.32 28.76 52.36 28.24 51.72 27.4C51.16 26.64 50.76 25.56 50.76 24.44L47.24 25.2C47.36 26.8 47.92 28.36 49.16 29.72C50.32 31.04 51.92 32.04 54.6 32.04C58.92 32.04 62.04 29.04 62.04 24.64C62.04 22 60.88 19.56 56.6 17.84L54.28 16.92C52.04 15.96 51.8 14.76 51.8 14.08C51.8 12.56 52.96 11.28 55.08 11.28C56.08 11.28 56.84 11.52 57.56 12.12ZM68.2 18.88H69.8C72.88 18.88 74.32 17.4 74.32 15.24C74.32 13.96 73.8 11.64 69.76 11.64H68.2V18.88ZM69.76 8.39999C71.16 8.39999 73.16 8.51999 74.84 9.63999C76.76 10.92 77.72 13.16 77.72 15.24C77.72 16.6 77.36 18.68 75.48 20.32C73.64 21.88 71.52 22.12 69.84 22.12H68.24V31.52H64.68V8.39999H69.76ZM83.4 22.36V8.39999H80V23.28C80 25.12 80.36 27.36 82.12 29.28C83.32 30.64 85.36 32 88.52 32C91.64 32 93.72 30.6 94.92 29.28C96.68 27.36 97.04 25.12 97.04 23.28V8.39999H93.48V22.36C93.48 23.6 93.44 25.16 92.76 26.36C92.08 27.52 90.48 28.72 88.44 28.72C86.36 28.72 84.8 27.52 84.12 26.36C83.44 25.16 83.4 23.6 83.4 22.36ZM113.24 11.72H104V17.6H112.96V20.92H104V28.2H113.24V31.52H100.44V8.39999H113.24V11.72ZM121.08 19.04H119.96V11.64H121.16C122.88 11.64 126 11.96 126 15.24C126 18.92 122.04 19.04 121.08 19.04ZM126.68 9.75999C125.16 8.75999 123.4 8.39999 120.56 8.39999H116.48V31.52H120.04V22.04H120.64L127.24 31.52H131.52L124.32 21.64C127.4 20.96 129.44 18.56 129.44 15.2C129.44 14.2 129.24 11.44 126.68 9.75999Z" fill="#003060" />
                <path d="M40 0H0V40H40V0Z" fill="#DE0000" />
                <path d="M27.28 15.84V9.95999L24.32 4.07999L21.36 9.95999V15.84H22.88V10.32L24.32 7.35999L25.8 10.32V15.84H27.28Z" fill="white" />
                <path d="M32.04 17.72H8.03999V19.28H32.04V17.72Z" fill="white" />
                <path d="M31.96 22.36C29.36 22.36 27.28 24.44 27.28 27.04V36.36C26.8 35.64 26.28 34.88 25.72 34.2V27.04C25.72 23.6 28.48 20.8 31.96 20.8V22.36Z" fill="white" />
                <path d="M23.16 23.92C23.16 22.2 21.76 20.8 20 20.8C18.24 20.8 16.88 22.2 16.88 23.92V27.2C17.4 27.4 17.92 27.64 18.44 27.92V23.92C18.44 23.08 19.12 22.36 20 22.36C20.84 22.36 21.56 23.04 21.56 23.92V29.8L23.12 31L23.16 23.92Z" fill="white" />
                <path d="M11.12 20.8C12.88 20.8 14.28 22.2 14.28 23.92H14.24V26.6C13.72 26.44 13.2 26.28 12.68 26.16V23.92C12.68 23.04 11.96 22.36 11.12 22.36C10.24 22.36 9.56 23.08 9.56 23.92V25.6L8 25.48V23.92C8 22.2 9.36 20.8 11.12 20.8Z" fill="white" />
            </g>
            <defs>
                <clipPath id="clip0_1029_767">
                    <rect width="214" height="40" fill="white" />
                </clipPath>
            </defs>
        </svg>
    </div>

    <div class="sds-overflowNav__menuWrapper" data-sds-gradient-overflow-h>
        <div class="sds-overflowNav__menu" data-sds-gradient-overflow-h-wrapper>
            <div class="sds-overflowNav__menuInner" data-sds-gradient-overflow-h-inner>
                <ul class="sds-overflowNav__list list-unstyled">

                    <li class="sds-overflowNav__item -isActive">
                        <a href="" class="sds-overflowNav__link">
                            Gérer le quotidien
                            <span class="sr-only">Current Page</span>
                        </a>
                    </li>

                    <li class="sds-overflowNav__item">
                        <a href="" class="sds-overflowNav__link">
                            Financer

                        </a>
                    </li>

                    <li class="sds-overflowNav__item">
                        <a href="" class="sds-overflowNav__link">
                            Epargner &amp; Investir

                        </a>
                    </li>

                </ul>

                <ul class="sds-overflowNav__list list-unstyled">

                    <li class="sds-overflowNav__item">
                        <a href="" class="sds-overflowNav__link">
                            Infos &amp; aide

                        </a>
                    </li>

                    <li class="sds-overflowNav__item">
                        <a href="" class="sds-overflowNav__link">
                            Outils

                        </a>
                    </li>

                    <li class="sds-overflowNav__item">
                        <a href="" class="sds-overflowNav__link">
                            Luxfunds

                        </a>
                    </li>

                </ul>

            </div>
        </div>
    </div>

    <a href="" class="sds-btn -btnSecondary sds-overflowNav__cta">

        <span class="sds-btn__text">Devenir client</span>

    </a>

</nav>

<!-- Blog -->
<nav class="sds-overflowNav -contentCentered">

    <div class="sds-overflowNav__menuWrapper" data-sds-gradient-overflow-h>
        <div class="sds-overflowNav__menu" data-sds-gradient-overflow-h-wrapper>
            <div class="sds-overflowNav__menuInner" data-sds-gradient-overflow-h-inner>
                <ul class="sds-overflowNav__list list-unstyled">

                    <li class="sds-overflowNav__item -isActive">
                        <a href="" class="sds-overflowNav__link">
                            Accueil
                            <span class="sr-only">Current Page</span>
                        </a>
                    </li>

                    <li class="sds-overflowNav__item">
                        <a href="" class="sds-overflowNav__link">
                            Thèmes du blog

                        </a>
                    </li>

                    <li class="sds-overflowNav__item">
                        <a href="" class="sds-overflowNav__link">
                            Autour de vos finances

                        </a>
                    </li>

                    <li class="sds-overflowNav__item">
                        <a href="" class="sds-overflowNav__link">
                            Les aventures de Sophie et Marc

                        </a>
                    </li>

                    <li class="sds-overflowNav__item">
                        <a href="" class="sds-overflowNav__link">
                            Le coin des experts

                        </a>
                    </li>

                    <li class="sds-overflowNav__item">
                        <a href="" class="sds-overflowNav__link">
                            L&#39;écho des marchés

                        </a>
                    </li>

                    <li class="sds-overflowNav__item">
                        <a href="" class="sds-overflowNav__link">
                            La parole aux entreprises

                        </a>
                    </li>

                </ul>

            </div>
        </div>
    </div>

    <a href="" class="sds-btn -btnSecondary sds-overflowNav__cta">

        <span class="sds-btn__text">Devenir client</span>

    </a>

</nav>

<nav class="{{ namespace }}overflowNav{% for mod in modifiers %} {{ mod }}{% endfor %}{% for mod in classes %} {{ mod }}{% endfor %}">
	{% if logo %}
		<div class="{{ namespace }}overflowNav__logo flex-shrink-0">
			<svg width="214" height="40" viewBox="0 0 214 40" fill="none" xmlns="http://www.w3.org/2000/svg">
				<g clip-path="url(#clip0_1029_767)">
					<path fill-rule="evenodd" clip-rule="evenodd" d="M192.88 12.12C193.4 12.56 193.72 13.04 193.92 13.56L196.76 11.92C196.28 10.96 195.6 10.16 195 9.59998C194.28 8.95998 192.84 8.03998 190.36 8.03998C186 8.03998 183.6 11 183.6 14.12C183.6 17.6 186.4 19.16 188.4 20L190.6 20.92C192.16 21.52 193.96 22.56 193.96 24.88C193.96 27.2 192.24 28.76 190.12 28.76C188.68 28.76 187.72 28.24 187.08 27.4C186.52 26.64 186.12 25.56 186.12 24.44L182.6 25.2C182.72 26.8 183.28 28.36 184.52 29.72C185.68 31.04 187.28 32.04 189.96 32.04C194.28 32.04 197.4 29.04 197.4 24.64C197.4 22 196.24 19.56 191.96 17.84L189.64 16.92C187.36 15.96 187.12 14.76 187.12 14.08C187.12 12.56 188.28 11.28 190.4 11.28C191.4 11.28 192.16 11.52 192.88 12.12ZM145.72 8.39999L136.76 17.64V8.39999H133.24V31.52H136.76V21.96L137.44 21.24L145.72 31.52H150.44L139.92 18.88L150.36 8.39999H145.72ZM155.64 11.72H164.88V8.39999H152.08V31.52H164.88V28.2H155.64V20.92H164.6V17.6H155.64V11.72ZM180.76 11.72H171.52V17.6H180.52V20.92H171.52V28.2H180.76V31.52H168.04V8.39999H180.76V11.72ZM210 13.56C209.8 13.04 209.48 12.56 208.96 12.12C208.24 11.52 207.48 11.28 206.44 11.28C204.32 11.28 203.16 12.56 203.16 14.08C203.16 14.76 203.4 15.96 205.68 16.92L208 17.84C212.28 19.56 213.44 22 213.44 24.64C213.44 29.04 210.32 32.04 206 32.04C203.32 32.04 201.72 31.04 200.56 29.72C199.32 28.36 198.76 26.8 198.64 25.2L202.16 24.44C202.16 25.56 202.56 26.64 203.12 27.4C203.76 28.24 204.72 28.76 206.16 28.76C208.28 28.76 210 27.2 210 24.88C210 22.56 208.2 21.52 206.64 20.92L204.44 20C202.56 19.2 199.72 17.64 199.72 14.16C199.72 11.04 202.12 8.07997 206.48 8.07997C209 8.07997 210.4 8.99997 211.12 9.63997C211.72 10.2 212.4 11 212.88 11.96L210 13.56ZM57.56 12.12C58.08 12.56 58.4 13.04 58.6 13.56L61.48 11.96C61 11 60.32 10.2 59.72 9.63997C59 8.99997 57.56 8.07997 55.08 8.07997C50.72 8.07997 48.32 11.04 48.32 14.16C48.32 17.64 51.16 19.2 53.04 20L55.24 20.92C56.8 21.52 58.6 22.56 58.6 24.88C58.6 27.2 56.88 28.76 54.76 28.76C53.32 28.76 52.36 28.24 51.72 27.4C51.16 26.64 50.76 25.56 50.76 24.44L47.24 25.2C47.36 26.8 47.92 28.36 49.16 29.72C50.32 31.04 51.92 32.04 54.6 32.04C58.92 32.04 62.04 29.04 62.04 24.64C62.04 22 60.88 19.56 56.6 17.84L54.28 16.92C52.04 15.96 51.8 14.76 51.8 14.08C51.8 12.56 52.96 11.28 55.08 11.28C56.08 11.28 56.84 11.52 57.56 12.12ZM68.2 18.88H69.8C72.88 18.88 74.32 17.4 74.32 15.24C74.32 13.96 73.8 11.64 69.76 11.64H68.2V18.88ZM69.76 8.39999C71.16 8.39999 73.16 8.51999 74.84 9.63999C76.76 10.92 77.72 13.16 77.72 15.24C77.72 16.6 77.36 18.68 75.48 20.32C73.64 21.88 71.52 22.12 69.84 22.12H68.24V31.52H64.68V8.39999H69.76ZM83.4 22.36V8.39999H80V23.28C80 25.12 80.36 27.36 82.12 29.28C83.32 30.64 85.36 32 88.52 32C91.64 32 93.72 30.6 94.92 29.28C96.68 27.36 97.04 25.12 97.04 23.28V8.39999H93.48V22.36C93.48 23.6 93.44 25.16 92.76 26.36C92.08 27.52 90.48 28.72 88.44 28.72C86.36 28.72 84.8 27.52 84.12 26.36C83.44 25.16 83.4 23.6 83.4 22.36ZM113.24 11.72H104V17.6H112.96V20.92H104V28.2H113.24V31.52H100.44V8.39999H113.24V11.72ZM121.08 19.04H119.96V11.64H121.16C122.88 11.64 126 11.96 126 15.24C126 18.92 122.04 19.04 121.08 19.04ZM126.68 9.75999C125.16 8.75999 123.4 8.39999 120.56 8.39999H116.48V31.52H120.04V22.04H120.64L127.24 31.52H131.52L124.32 21.64C127.4 20.96 129.44 18.56 129.44 15.2C129.44 14.2 129.24 11.44 126.68 9.75999Z" fill="#003060"/>
					<path d="M40 0H0V40H40V0Z" fill="#DE0000"/>
					<path d="M27.28 15.84V9.95999L24.32 4.07999L21.36 9.95999V15.84H22.88V10.32L24.32 7.35999L25.8 10.32V15.84H27.28Z" fill="white"/>
					<path d="M32.04 17.72H8.03999V19.28H32.04V17.72Z" fill="white"/>
					<path d="M31.96 22.36C29.36 22.36 27.28 24.44 27.28 27.04V36.36C26.8 35.64 26.28 34.88 25.72 34.2V27.04C25.72 23.6 28.48 20.8 31.96 20.8V22.36Z" fill="white"/>
					<path d="M23.16 23.92C23.16 22.2 21.76 20.8 20 20.8C18.24 20.8 16.88 22.2 16.88 23.92V27.2C17.4 27.4 17.92 27.64 18.44 27.92V23.92C18.44 23.08 19.12 22.36 20 22.36C20.84 22.36 21.56 23.04 21.56 23.92V29.8L23.12 31L23.16 23.92Z" fill="white"/>
					<path d="M11.12 20.8C12.88 20.8 14.28 22.2 14.28 23.92H14.24V26.6C13.72 26.44 13.2 26.28 12.68 26.16V23.92C12.68 23.04 11.96 22.36 11.12 22.36C10.24 22.36 9.56 23.08 9.56 23.92V25.6L8 25.48V23.92C8 22.2 9.36 20.8 11.12 20.8Z" fill="white"/>
				</g>
				<defs>
					<clipPath id="clip0_1029_767">
						<rect width="214" height="40" fill="white"/>
					</clipPath>
				</defs>
			</svg>
		</div>
	{% endif %}
	<div class="{{ namespace }}overflowNav__menuWrapper" data-{{ namespace }}gradient-overflow-h>
		<div class="{{ namespace }}overflowNav__menu" data-{{ namespace }}gradient-overflow-h-wrapper>
			<div class="{{ namespace }}overflowNav__menuInner" data-{{ namespace }}gradient-overflow-h-inner>
				<ul class="{{ namespace }}overflowNav__list list-unstyled">
					{% for key, item in navItems %}
						<li class="{{ namespace }}overflowNav__item{% if item.active %} -isActive{% endif %}">
							<a href="" class="{{ namespace }}overflowNav__link">
								{{ item.text }}
								{% if item.active %}<span class="sr-only">Current Page</span>{% endif %}
							</a>
						</li>
					{% endfor %}
				</ul>
				{% if navItems2 %}
					<ul class="{{ namespace }}overflowNav__list list-unstyled">
						{% for key, item in navItems2 %}
							<li class="{{ namespace }}overflowNav__item">
								<a href="" class="{{ namespace }}overflowNav__link">
									{{ item.text }}
									{% if item.active %}<span class="sr-only">Current Page</span>{% endif %}
								</a>
							</li>
						{% endfor %}
					</ul>
				{% endif %}
			</div>
		</div>
	</div>
	{% if hasOverflowCTA %}
		{% render "@btn-secondary", {
			classes: [namespace + "overflowNav__cta"],
			eltType: "a",
			text: "Devenir client"
		},true %}
	{% endif %}
</nav>
  • Content:
    export default class OverflowNav {
    
    	constructor() {
    
    		this.overflowGradientBehaviour();
    		this.dragScrollBehaviour();
    
    	}
    
    	// shamelessly stolen & adapted from: https://github.com/gauthierblanpain/table-scroll-shadow/blob/main/src/table-scroll-shadow.js
    	// bind the scroll (on mobile devices)
    	overflowGradientBehaviour() {
    
    		// Public init method
    		const overflowNavs = document.querySelectorAll("[data-sds-gradient-overflow-h]");
    
    		// Utility to throttle callbacks
    		const throttle = (callback, delay) => {
    			let timer = 0
    			return function (...args) {
    				clearTimeout(timer)
    				timer = setTimeout(() => callback.apply(this, args), delay)
    			}
    		}
    
    		// Handling of overflow and shadows
    		const checkForOverflow = new ResizeObserver(
    			throttle((entries) => {
    				for (let entry of entries) {
    					const overflowNavWrapper = entry.target
    					const scrollArea = overflowNavWrapper.querySelector("[data-sds-gradient-overflow-h-wrapper]")
    					const nav = overflowNavWrapper.querySelector('[data-sds-gradient-overflow-h-inner]')
    					let tableHasOverflow = false
    
    					if (nav.clientWidth > scrollArea.clientWidth) {
    						// Handle overflow
    						tableHasOverflow = true
    						console.log("test true")
    					} else {
    						console.log("test false")
    						tableHasOverflow = false
    						overflowNavWrapper.classList.remove( '-hasShadowLeft', '-hasShadowRight')
    					}
    
    					// Add horizontal shadows
    					if (tableHasOverflow) {
    						overflowNavWrapper.classList.add('-hasShadowRight')
    						scrollArea.addEventListener('scroll', () => {
    							let scrollSize = nav.clientWidth - scrollArea.clientWidth
    							if (scrollArea.scrollLeft === 0) {
    								overflowNavWrapper.classList.add('-hasShadowRight')
    								overflowNavWrapper.classList.remove('-hasShadowLeft')
    							} else if (scrollArea.scrollLeft > 0 && scrollArea.scrollLeft !== scrollSize) {
    								overflowNavWrapper.classList.add('-hasShadowRight', '-hasShadowLeft')
    							} else if (scrollArea.scrollLeft === scrollSize) {
    								overflowNavWrapper.classList.remove('-hasShadowRight')
    								overflowNavWrapper.classList.add('-hasShadowLeft')
    							}
    						})
    					}
    				}
    			}, 75)
    		)
    
    		// Observe the tables present on the page
    		overflowNavs.forEach((overflowNav) => {
    			checkForOverflow.observe(overflowNav)
    		})
    
    	}
    
    	dragScrollBehaviour() {
    
    		const overflowNavsInner = document.querySelectorAll("[data-sds-gradient-overflow-h-wrapper]");
    
    		let startX;
    		let scrollLeft;
    		let isDown;
    
    		overflowNavsInner.forEach((overflowNavInner) => {
    			overflowNavInner.addEventListener('mousedown',e => mouseIsDown(e));
    			overflowNavInner.addEventListener('mouseup',e => mouseUp(e))
    			overflowNavInner.addEventListener('mouseleave',e=>mouseLeave(e));
    			overflowNavInner.addEventListener('mousemove',e=>mouseMove(e));
    		})
    
    		function mouseIsDown(e) {
    			isDown = true;
    			startX = e.pageX - e.currentTarget.offsetLeft;
    			scrollLeft = e.currentTarget.scrollLeft;
    		}
    		function mouseUp(e) {
    			isDown = false;
    		}
    		function mouseLeave(e) {
    			isDown = false;
    		}
    		function mouseMove(e) {
    			if(isDown){
    				e.preventDefault();
    				//Move vertcally
    
    				//Move Horizontally
    				const x = e.pageX - e.currentTarget.offsetLeft;
    				const walkX = x - startX;
    				e.currentTarget.scrollLeft = scrollLeft - walkX;
    
    			}
    		}
    	}
    
    }
  • URL: /components/raw/spk-overflow-nav/OverflowNav.js
  • Filesystem Path: components/spuerkeess-site/organisms/overflow-nav/OverflowNav.js
  • Size: 3.3 KB
  • Content:
    @use "sass:math";
    /* variables specific to current element */
    $active-link-underline-offset: $border-width*6;
    
    .#{$namespace}overflowNav {
    
    	/* Save root element context for easy access if nesting is needed */
    
    	$self: &;
    	/*@TODO check other components that use the behaviour and replace variable */
    	@include custom-prop-fallback-override("comp-section-background-color", "sys-color-elevation-surface-flat");
    
    	/* properties of current element  + media queries */
    	display: flex;
    	align-items: center;
    	padding-top: map-deep-get($token-spacer-unit-map, "12");
    	padding-bottom: map-deep-get($token-spacer-unit-map, "12");
    
    	@include media-breakpoint-up(lg) {
    
    		padding-top: map-deep-get($token-spacer-unit-map, "40");
    		padding-bottom: map-deep-get($token-spacer-inset-map, "xl");
    
    	}
    	/* Pseudo Elements */
    
    	&::before {
    	}
    
    	&::after {
    	}
    
    	/*
    	Include elements that are linked to the current element but have to reside at the root level of the stylesheet
    	(e.g: keyframes)
    	*/
    	@at-root {
    	}
    
    
    	/* children - write selector in full in comments in order to facilitate search */
    
    	// overflowNav__childElement
    	&__logo {
    
    		width: $nav-topbar-logo-mobile-width-global;
    		height: $nav-topbar-logo-mobile-width-global;
    		overflow: hidden;
    		margin-right: map-deep-get($token-spacer-unit-map, "24");
    
    		svg {
    
    			path[fill="#{map-deep-get($design-tokens, 'sys-color-text-primary-vivid')}"] {
    				@include custom-prop-fallback("fill","comp-logo-type-background-color")
    			}
    
    		}
    
    		@include media-breakpoint-up(lg) {
    			margin-right: map-deep-get($token-spacer-unit-map, "40");
    			width: auto;
    		}
    
    		* {
    			max-height: 100%;
    		}
    
    		&:focus-visible {
    
    			outline-style: solid !important;
    			outline-width: map-deep-get($design-tokens, "comp-button-pressed-border-width") !important;
    			outline-offset: -(map-deep-get($design-tokens, "comp-button-pressed-border-width")) !important;
    			@include custom-prop-fallback("outline-color", "comp-button-secondary-pressed-border-color", true, true);
    
    		}
    
    	}
    
    	&__menuWrapper {
    
    		font-size: $h5-font-size;
    		height: calc(1.75em + #{map-deep-get($design-tokens, "comp-button-pressed-border-width")});
    		flex-grow: 1;
    		display: flex;
    		align-items: flex-start;
    		top: map-deep-get($design-tokens, "comp-button-pressed-border-width"); // offset vertical positioning by amount of active border bottom state
    
    		&::before {
    
    			width: map-deep-get($token-sizes-unit-map, "16");
    
    		}
    
    	}
    
    	&__menu {
    
    		padding-bottom: 1.5em;
    		flex-grow: 1;
    		position: relative;
    		padding-top: map-deep-get($design-tokens, "comp-button-pressed-border-width");
    
    	}
    
    	&__menuInner {
    
    		align-items: center;
    		justify-content: space-between;
    
    		@include spacer-component-inline(lg);
    
    		@include media-breakpoint-up(md){
    
    			@include spacer-component-inline(xl);
    
    		}
    
    	}
    
    	// headerNav__subNavItem
    	&__item {
    
    		@extend %headingBase;
    		@extend %h5;
    		@include custom-prop-fallback("color","comp-subheader-link-text-color", true, true);
    
    		white-space: nowrap;
    		position: relative;
    
    		&.-isActive {
    
    			#{$self}__link {
    
    				@include custom-prop-fallback("color","comp-subheader-link-active-text-color", true, true);
    
    				&::before {
    
    					display: block;
    
    				}
    
    
    			}
    
    		}
    
    	}
    
    	&__link {
    
    		&::before {
    
    			content: "";
    			display: none;
    			background-color: currentColor;
    			height: $border-width*2;
    			width: $nav-topbar-cobranding-logo-height-global;
    			position: absolute;
    			bottom: -$active-link-underline-offset;
    			left: 50%;
    			transform: translateX(-50%);
    
    		}
    
    		&:hover,
    		&:focus {
    			@media (hover: hover) {
    
    				@include custom-prop-fallback("color","comp-subheader-link-hovered-text-color", true, true);
    
    			}
    		}
    
    		&:focus-visible {
    
    			outline-offset: -(map-deep-get($design-tokens, "comp-button-pressed-border-width"));
    			outline-style: solid;
    			outline-width: map-deep-get($design-tokens, "comp-button-pressed-border-width");
    			@include custom-prop-fallback("outline-color", "comp-subheader-link-active-text-color", true, true);
    
    		}
    
    	}
    
    	&__list {
    
    		display: flex;
    		align-items: center;
    		@include spacer-component-inline(lg);
    
    		@include media-breakpoint-up(md){
    
    			@include spacer-component-inline(xl);
    
    		}
    
    	}
    
    	&__cta {
    
    		display: none;
    
    		@include media-breakpoint-up("lg") {
    
    			margin-left: map-deep-get($token-spacer-inline-map, "lg");
    			display: flex;
    			flex-shrink: 0;
    
    		}
    
    	}
    
    
    	/* modifiers */
    
    	// overflowNav -contentCentered
    	&.-contentCentered {
    
    		// follows same logic as base element
    
    		#{$self}__menuInner {
    
    			margin: auto;
    			flex-grow: 0;
    
    		}
    
    	}
    
    	/* random parent element */
    	/* 
    	*
    	*   Syntax : .randomParentElt & {}
    	*
    	*/
    
    	/* Pseudo Classes */
    
    	&:hover {
    		@media (hover: hover) {
    
    		}
    	}
    
    	&:focus {
    	}
    
    	&:active {
    	}
    
    	&:focus,
    	&:active {
    	}
    
    }
  • URL: /components/raw/spk-overflow-nav/_overflow-nav.scss
  • Filesystem Path: components/spuerkeess-site/organisms/overflow-nav/_overflow-nav.scss
  • Size: 4.7 KB