@penskemediacorp/larva-patterns 1.9.0-alpha.0 → 1.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/__tests__/css/css.html +9 -0
- package/__tests__/css/css.prototype.js +1 -0
- package/__tests__/hub/hub.html +25 -0
- package/__tests__/hub/hub.prototype.js +30 -0
- package/__tests__/profile/profile.html +29 -0
- package/__tests__/profile/profile.prototype.js +17 -0
- package/__tests__/profile-index/profile-index.html +9 -0
- package/__tests__/profile-index/profile-index.prototype.js +6 -0
- package/__tests__/vlanding/vlanding.html +7 -0
- package/__tests__/vlanding/vlanding.prototype.js +11 -0
- package/_templates/pattern-nav.html +52 -12
- package/algorithms/a-carousel-grid/README.md +5 -0
- package/algorithms/a-carousel-grid/a-carousel-grid.html +25 -0
- package/algorithms/a-carousel-grid/a-carousel-grid.overlay.js +12 -0
- package/algorithms/a-carousel-grid/a-carousel-grid.prototype.js +0 -0
- package/algorithms/a-icon/a-icon.html +1 -0
- package/algorithms/a-icon/a-icon.prototype.js +0 -0
- package/base.html +62 -19
- package/components/c-button/README.md +3 -0
- package/components/c-button/c-button.black.js +7 -0
- package/components/c-button/c-button.brand-basic.js +8 -0
- package/components/c-button/c-button.ghost.js +10 -0
- package/components/c-button/c-button.prototype.js +10 -4
- package/components/c-button/c-button.stripped.js +8 -0
- package/components/c-button/c-button.twig +13 -7
- package/components/c-checkbox-input/c-checkbox-input.prototype.js +6 -0
- package/components/c-checkbox-input/c-checkbox-input.twig +4 -0
- package/components/c-dek/README.md +3 -0
- package/components/c-dek/c-dek.prototype.js +5 -0
- package/components/c-dek/c-dek.twig +9 -0
- package/components/c-email-field/README.md +0 -0
- package/components/c-email-field/c-email-field.ghost.js +10 -0
- package/components/c-email-field/c-email-field.prototype.js +8 -0
- package/components/c-email-field/c-email-field.twig +4 -0
- package/components/c-figcaption/c-figcaption.prototype.js +9 -0
- package/components/c-figcaption/c-figcaption.twig +16 -0
- package/components/c-heading/README.md +4 -0
- package/components/c-heading/c-heading.prototype.js +8 -3
- package/components/c-heading/c-heading.twig +11 -2
- package/components/c-hidden-field/c-hidden-field.prototype.js +5 -0
- package/components/c-hidden-field/c-hidden-field.twig +1 -0
- package/components/c-icon/c-icon.full.js +6 -5
- package/components/c-icon/c-icon.prototype.js +12 -10
- package/components/c-icon/c-icon.twig +22 -2
- package/components/c-input/c-input.prototype.js +8 -0
- package/components/c-input/c-input.twig +14 -0
- package/components/c-label/README.md +12 -0
- package/components/c-label/c-label.prototype.js +7 -0
- package/components/c-label/c-label.twig +19 -0
- package/components/c-lazy-image/README.md +35 -0
- package/components/c-lazy-image/c-lazy-image.prototype.js +17 -0
- package/components/c-lazy-image/c-lazy-image.twig +31 -0
- package/components/c-link/README.md +1 -0
- package/components/c-link/c-link.prototype.js +8 -5
- package/components/c-link/c-link.twig +11 -1
- package/components/c-logo/c-logo.prototype.js +7 -0
- package/components/c-logo/c-logo.twig +10 -0
- package/components/c-nav-link/c-nav-link.prototype.js +7 -0
- package/components/c-nav-link/c-nav-link.twig +10 -0
- package/components/c-play-badge/c-play-badge.prototype.js +3 -0
- package/components/c-play-badge/c-play-badge.twig +7 -0
- package/components/c-select-option/c-select-option.prototype.js +5 -0
- package/components/c-select-option/c-select-option.twig +5 -0
- package/components/c-span/c-span.prototype.js +6 -7
- package/components/c-span/c-span.tag.js +7 -0
- package/components/c-svg/c-svg.prototype.js +4 -0
- package/components/c-svg/c-svg.twig +3 -0
- package/components/c-tagline/README.md +3 -0
- package/components/c-tagline/c-tagline.prototype.js +4 -0
- package/components/c-tagline/c-tagline.twig +3 -3
- package/components/c-timestamp/c-timestamp.prototype.js +5 -4
- package/components/c-timestamp/c-timestamp.twig +9 -1
- package/components/c-title/README.md +7 -0
- package/components/c-title/c-title.prototype.js +7 -3
- package/components/c-title/c-title.twig +14 -2
- package/css.html +44 -0
- package/index.html +7 -25
- package/index.js +2 -1
- package/modules/age-gate/README.md +3 -0
- package/modules/age-gate/age-gate.prototype.js +68 -0
- package/modules/age-gate/age-gate.twig +37 -0
- package/modules/article-callout/article-callout.prototype.js +5 -0
- package/modules/article-callout/article-callout.twig +3 -0
- package/modules/article-excerpt/article-excerpt.prototype.js +4 -0
- package/modules/article-excerpt/article-excerpt.twig +1 -0
- package/modules/article-kicker/article-kicker.prototype.js +6 -0
- package/modules/article-kicker/article-kicker.twig +13 -0
- package/modules/article-tags/article-tags.prototype.js +9 -10
- package/modules/article-tags/article-tags.twig +1 -1
- package/modules/article-timestamp/article-timestamp.prototype.js +13 -0
- package/modules/article-timestamp/article-timestamp.twig +5 -0
- package/modules/article-title/article-title.prototype.js +4 -0
- package/modules/article-title/article-title.twig +1 -0
- package/modules/author/author.prototype.js +43 -0
- package/modules/author/author.twig +38 -0
- package/modules/author-blurb/author-blurb.prototype.js +56 -0
- package/modules/author-blurb/author-blurb.twig +27 -0
- package/modules/author-details/author-details.prototype.js +70 -0
- package/modules/author-details/author-details.twig +25 -0
- package/modules/back-to-list/back-to-list.prototype.js +11 -0
- package/modules/back-to-list/back-to-list.twig +5 -0
- package/modules/badge/badge.prototype.js +10 -6
- package/modules/badge/badge.twig +1 -1
- package/modules/banner/banner.prototype.js +10 -0
- package/modules/banner/banner.twig +10 -0
- package/modules/brands-most-popular/brands-most-popular.prototype.js +40 -0
- package/modules/brands-most-popular/brands-most-popular.twig +11 -0
- package/modules/breadcrumbs/breadcrumbs.prototype.js +4 -5
- package/modules/breadcrumbs/breadcrumbs.twig +1 -1
- package/modules/breaking-news/breaking-news.prototype.js +29 -0
- package/modules/breaking-news/breaking-news.twig +18 -0
- package/modules/button/button.prototype.js +9 -0
- package/modules/button/button.twig +7 -0
- package/modules/buy-now/buy-now.prototype.js +36 -0
- package/modules/buy-now/buy-now.twig +23 -0
- package/modules/carousel-grid/README.md +7 -0
- package/modules/carousel-grid/carousel-grid.overlay.js +26 -0
- package/modules/carousel-grid/carousel-grid.prototype.js +50 -0
- package/modules/carousel-grid/carousel-grid.twig +17 -0
- package/modules/carousel-slider/carousel-slider.prototype.js +56 -0
- package/modules/carousel-slider/carousel-slider.twig +11 -0
- package/modules/container/README.md +3 -0
- package/modules/container/container.prototype.js +7 -0
- package/modules/container/container.twig +1 -0
- package/modules/content-showcase/content-showcase.prototype.js +30 -0
- package/modules/content-showcase/content-showcase.the-moth.js +33 -0
- package/modules/content-showcase/content-showcase.twig +7 -0
- package/modules/expandable-search/expandable-search.prototype.js +19 -0
- package/modules/expandable-search/expandable-search.twig +9 -0
- package/modules/featured-stories/featured-stories.prototype.js +27 -0
- package/modules/featured-stories/featured-stories.twig +18 -0
- package/modules/featured-video/featured-video.prototype.js +33 -0
- package/modules/featured-video/featured-video.twig +8 -0
- package/modules/featured-video/featured-video.video-post.js +10 -0
- package/modules/footer/README.md +15 -0
- package/modules/footer/footer.prototype.js +14 -0
- package/modules/footer/footer.twig +22 -0
- package/modules/footer-button-list/footer-button-list.prototype.js +43 -0
- package/modules/footer-button-list/footer-button-list.twig +13 -0
- package/modules/footer-magazine-image/footer-magazine-image.prototype.js +15 -0
- package/modules/footer-magazine-image/footer-magazine-image.twig +3 -0
- package/modules/footer-menus/README.md +3 -0
- package/modules/footer-menus/footer-menus.prototype.js +9 -9
- package/modules/footer-menus/footer-menus.twig +2 -2
- package/modules/footer-newsletter/README.md +5 -0
- package/modules/footer-newsletter/footer-newsletter.prototype.js +21 -0
- package/modules/footer-newsletter/footer-newsletter.twig +5 -0
- package/modules/footer-social/README.md +3 -0
- package/modules/footer-social/footer-social.prototype.js +27 -20
- package/modules/footer-social/footer-social.twig +2 -2
- package/modules/footer-tip/footer-tip.prototype.js +21 -13
- package/modules/footer-tip/footer-tip.twig +2 -2
- package/modules/header/header.article.js +39 -0
- package/modules/header/header.prototype.js +90 -0
- package/modules/header/header.twig +74 -0
- package/modules/header-menu/header-menu.prototype.js +26 -0
- package/modules/header-menu/header-menu.twig +3 -0
- package/modules/header-sticky/header-sticky.article.js +43 -0
- package/modules/header-sticky/header-sticky.prototype.js +39 -0
- package/modules/header-sticky/header-sticky.twig +30 -0
- package/modules/heading/heading.h1.js +8 -0
- package/modules/heading/heading.h2.js +8 -0
- package/modules/heading/heading.h3.js +8 -0
- package/modules/heading/heading.h4.js +7 -0
- package/modules/heading/heading.h5.js +7 -0
- package/modules/heading/heading.h6.js +7 -0
- package/modules/heading/heading.prototype.js +9 -0
- package/modules/heading/heading.twig +3 -0
- package/modules/hero-image-story/hero-image-story.prototype.js +41 -0
- package/modules/hero-image-story/hero-image-story.twig +8 -0
- package/modules/injected-related-content/injected-related-content.prototype.js +61 -0
- package/modules/injected-related-content/injected-related-content.twig +23 -0
- package/modules/linked-gallery/linked-gallery.prototype.js +56 -0
- package/modules/linked-gallery/linked-gallery.twig +21 -0
- package/modules/list/list.ordered.js +7 -0
- package/modules/list/list.prototype.js +57 -0
- package/modules/list/list.twig +11 -0
- package/modules/listicle-item/listicle-item.prototype.js +11 -0
- package/modules/listicle-item/listicle-item.twig +3 -0
- package/modules/mega-menu/mega-menu.prototype.js +16 -0
- package/modules/mega-menu/mega-menu.twig +10 -0
- package/modules/mega-menu-content/mega-menu-content.prototype.js +10 -0
- package/modules/mega-menu-content/mega-menu-content.twig +5 -0
- package/modules/mega-menu-footer/mega-menu-footer.prototype.js +41 -0
- package/modules/mega-menu-footer/mega-menu-footer.twig +19 -0
- package/modules/mega-menu-footer-subscribe/mega-menu-footer-subscribe.prototype.js +20 -0
- package/modules/mega-menu-footer-subscribe/mega-menu-footer-subscribe.twig +4 -0
- package/modules/mega-menu-item/mega-menu-item.prototype.js +23 -0
- package/modules/mega-menu-item/mega-menu-item.twig +13 -0
- package/modules/more-stories-button/more-stories-button.profile.js +12 -0
- package/modules/more-stories-button/more-stories-button.prototype.js +29 -0
- package/modules/more-stories-button/more-stories-button.twig +13 -0
- package/modules/newsletter/newsletter.prototype.js +46 -0
- package/modules/newsletter/newsletter.twig +21 -0
- package/modules/newsletter-cta/newsletter-cta.prototype.js +21 -0
- package/modules/newsletter-cta/newsletter-cta.twig +22 -0
- package/modules/newswire/newswire.prototype.js +46 -0
- package/modules/newswire/newswire.twig +16 -0
- package/modules/page-404/page-404.prototype.js +44 -0
- package/modules/page-404/page-404.twig +32 -0
- package/modules/paragraph/paragraph.narrow.js +8 -0
- package/modules/paragraph/paragraph.prototype.js +8 -0
- package/modules/paragraph/paragraph.twig +3 -0
- package/modules/pmc-footer/pmc-footer.prototype.js +26 -24
- package/modules/pmc-footer/pmc-footer.twig +11 -9
- package/modules/post-content-image/post-content-image.prototype.js +14 -0
- package/modules/post-content-image/post-content-image.twig +3 -0
- package/modules/production-credits/production-credits.prototype.js +5 -0
- package/modules/production-credits/production-credits.twig +4 -0
- package/modules/profile-blurb/profile-blurb.card.js +28 -0
- package/modules/profile-blurb/profile-blurb.prototype.js +45 -0
- package/modules/profile-blurb/profile-blurb.twig +37 -0
- package/modules/profile-body/profile-body.prototype.js +20 -0
- package/modules/profile-body/profile-body.twig +15 -0
- package/modules/profile-browse-by/profile-browse-by.prototype.js +29 -0
- package/modules/profile-browse-by/profile-browse-by.twig +6 -0
- package/modules/profile-card-list/profile-card-list.prototype.js +25 -0
- package/modules/profile-card-list/profile-card-list.twig +7 -0
- package/modules/profile-filter/profile-filter.prototype.js +26 -0
- package/modules/profile-filter/profile-filter.twig +15 -0
- package/modules/profile-gallery/profile-gallery.prototype.js +28 -0
- package/modules/profile-gallery/profile-gallery.twig +13 -0
- package/modules/profile-header/profile-header.prototype.js +29 -0
- package/modules/profile-header/profile-header.twig +27 -0
- package/modules/profile-highlights/profile-highlights.prototype.js +22 -0
- package/modules/profile-highlights/profile-highlights.twig +17 -0
- package/modules/profile-landing-header/profile-landing-header.prototype.js +17 -0
- package/modules/profile-landing-header/profile-landing-header.twig +12 -0
- package/modules/profile-landing-river/profile-landing-river.prototype.js +21 -0
- package/modules/profile-landing-river/profile-landing-river.twig +13 -0
- package/modules/profile-related-stories/profile-related-stories.prototype.js +33 -0
- package/modules/profile-related-stories/profile-related-stories.twig +9 -0
- package/modules/pullquote/pullquote.prototype.js +8 -0
- package/modules/pullquote/pullquote.twig +3 -0
- package/modules/read-next/read-next.prototype.js +20 -0
- package/modules/read-next/read-next.twig +4 -0
- package/modules/search-form/search-form.prototype.js +8 -0
- package/modules/search-form/search-form.twig +11 -0
- package/modules/secondary-stories/secondary-stories.prototype.js +119 -0
- package/modules/secondary-stories/secondary-stories.twig +22 -0
- package/modules/separator/separator.prototype.js +4 -0
- package/modules/separator/separator.thick.js +7 -0
- package/modules/separator/separator.twig +1 -0
- package/modules/separator/separator.wide-thick.js +7 -0
- package/modules/separator/separator.wide.js +7 -0
- package/modules/social-share/social-share.prototype.js +43 -0
- package/modules/social-share/social-share.twig +30 -0
- package/modules/special-coverage/special-coverage.prototype.js +47 -0
- package/modules/special-coverage/special-coverage.twig +29 -0
- package/modules/story/story.borders.js +8 -0
- package/modules/story/story.center-vertical-borders.js +7 -0
- package/modules/story/story.center-vertical.js +11 -0
- package/modules/story/story.prototype.js +43 -0
- package/modules/story/story.right-borders.js +9 -0
- package/modules/story/story.right.js +14 -0
- package/modules/story/story.story-arc.js +9 -0
- package/modules/story/story.twig +88 -0
- package/modules/story/story.vertical-borders.js +7 -0
- package/modules/story/story.vertical.js +11 -0
- package/modules/story-arc-stories/story-arc-stories.prototype.js +21 -0
- package/modules/story-arc-stories/story-arc-stories.twig +14 -0
- package/modules/story-featured-quote/story-featured-quote.prototype.js +28 -0
- package/modules/story-featured-quote/story-featured-quote.twig +27 -0
- package/modules/story-grid/story-grid.prototype.js +24 -0
- package/modules/story-grid/story-grid.river.js +15 -0
- package/modules/story-grid/story-grid.twig +17 -0
- package/modules/sub-header/sub-header.prototype.js +8 -0
- package/modules/sub-header/sub-header.twig +7 -0
- package/modules/top-stories/top-stories.prototype.js +41 -0
- package/modules/top-stories/top-stories.twig +12 -0
- package/modules/top-stories/top-stories.xl.js +14 -0
- package/modules/vlanding-playlist/README.md +1 -0
- package/modules/vlanding-playlist/vlanding-playlist.prototype.js +34 -0
- package/modules/vlanding-playlist/vlanding-playlist.twig +20 -0
- package/modules/vlanding-video-card/README.md +1 -0
- package/modules/vlanding-video-card/vlanding-video-card.prototype.js +25 -0
- package/modules/vlanding-video-card/vlanding-video-card.twig +56 -0
- package/modules/vlanding-video-showcase/README.md +12 -0
- package/modules/vlanding-video-showcase/vlanding-video-showcase.prototype.js +68 -0
- package/modules/vlanding-video-showcase/vlanding-video-showcase.twig +46 -0
- package/objects/o-account-menu/o-account-menu.prototype.js +35 -0
- package/objects/o-account-menu/o-account-menu.twig +25 -0
- package/objects/o-author/o-author.prototype.js +13 -0
- package/objects/o-author/o-author.twig +13 -0
- package/objects/o-card/README.md +1 -0
- package/objects/o-card/o-card.prototype.js +25 -0
- package/objects/o-card/o-card.twig +75 -0
- package/objects/o-card-list/README.md +3 -0
- package/objects/o-card-list/o-card-list.prototype.js +13 -0
- package/objects/o-card-list/o-card-list.twig +7 -0
- package/objects/o-category-link/o-category-link.prototype.js +6 -0
- package/objects/o-category-link/o-category-link.twig +5 -0
- package/objects/o-checkbox-input-list/o-checkbox-input-list.prototype.js +16 -0
- package/objects/o-checkbox-input-list/o-checkbox-input-list.twig +15 -0
- package/objects/o-collection-item/o-collection-item.floated.js +8 -0
- package/objects/o-collection-item/o-collection-item.prototype.js +11 -0
- package/objects/o-collection-item/o-collection-item.twig +5 -0
- package/objects/o-email-capture-form/README.md +11 -0
- package/objects/o-email-capture-form/o-email-capture-form.minimal.js +15 -0
- package/objects/o-email-capture-form/o-email-capture-form.prototype.js +17 -0
- package/objects/o-email-capture-form/o-email-capture-form.twig +16 -0
- package/objects/o-figure/README.md +17 -0
- package/objects/o-figure/o-figure.prototype.js +15 -7
- package/objects/o-figure/o-figure.twig +22 -45
- package/objects/o-header/o-header.prototype.js +12 -10
- package/objects/o-header/o-header.twig +5 -1
- package/objects/o-header-buttons/o-header-buttons.column.js +10 -0
- package/objects/o-header-buttons/o-header-buttons.prototype.js +41 -0
- package/objects/o-header-buttons/o-header-buttons.twig +42 -0
- package/objects/o-icon-button/README.md +5 -0
- package/objects/o-icon-button/o-icon-button.prototype.js +21 -0
- package/objects/o-icon-button/o-icon-button.search.js +9 -0
- package/objects/o-icon-button/o-icon-button.twig +29 -0
- package/objects/o-indicator/README.md +1 -0
- package/objects/o-indicator/o-indicator.photos.js +12 -0
- package/objects/o-indicator/o-indicator.prototype.js +8 -0
- package/objects/o-indicator/o-indicator.twig +9 -0
- package/objects/o-input-group/o-input-group.prototype.js +11 -0
- package/objects/o-input-group/o-input-group.twig +5 -0
- package/objects/o-nav/README.md +2 -2
- package/objects/o-nav/o-nav.horizontal.js +6 -6
- package/objects/o-nav/o-nav.prototype.js +17 -13
- package/objects/o-nav/o-nav.twig +29 -3
- package/objects/o-select-nav/o-select-nav.prototype.js +17 -0
- package/objects/o-select-nav/o-select-nav.twig +9 -0
- package/objects/o-social-list/o-social-list.prototype.js +21 -31
- package/objects/o-social-list/o-social-list.twig +10 -2
- package/objects/o-span-group/README.md +1 -0
- package/objects/o-span-group/o-span-group.prototype.js +11 -0
- package/objects/o-span-group/o-span-group.twig +5 -0
- package/objects/o-sponsored-by/o-sponsored-by.prototype.js +9 -10
- package/objects/o-sponsored-by/o-sponsored-by.twig +2 -2
- package/objects/o-story-arc-item/o-story-arc-item.prototype.js +29 -0
- package/objects/o-story-arc-item/o-story-arc-item.twig +9 -0
- package/objects/o-sub-header/o-sub-header.prototype.js +39 -0
- package/objects/o-sub-header/o-sub-header.twig +9 -0
- package/objects/o-tease/o-tease.prototype.js +24 -20
- package/objects/o-tease/o-tease.twig +7 -3
- package/objects/o-tease-list/o-tease-list.prototype.js +12 -24
- package/objects/o-tease-list/o-tease-list.twig +5 -1
- package/objects/o-video-card/o-video-card.prototype.js +45 -0
- package/objects/o-video-card/o-video-card.twig +67 -0
- package/package.json +6 -9
- package/pattern.html +61 -9
- package/style-guide/colors.html +33 -0
- package/style-guide/fonts.html +22 -0
- package/style-guide/index.html +14 -0
- package/components/c-button/c-button.scss +0 -33
- package/components/c-tagline/c-tagline.json +0 -4
- package/components/c-tagline/c-tagline.scss +0 -19
- package/objects/o-figure/o-figure.scss +0 -46
- package/objects/o-tease/o-tease.scss +0 -30
- package/scratch-pad.css +0 -3
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
<div class="footer-button-list {{ footer_button_list_classes }}">
|
|
2
|
+
{% if footer_button_list_title_text %}
|
|
3
|
+
<h4 class="footer-button-list__title {{ footer_button_list_title_classes }}">
|
|
4
|
+
{{ footer_button_list_title_text }}
|
|
5
|
+
</h4>
|
|
6
|
+
{% endif %}
|
|
7
|
+
|
|
8
|
+
<section class="footer-button-list__content lrv-u-flex lrv-u-flex-direction-column {{ footer_button_list_content_classes }}">
|
|
9
|
+
{% for item in footer_button_list_buttons %}
|
|
10
|
+
{% include "@larva/components/c-button/c-button.twig" with item %}
|
|
11
|
+
{% endfor %}
|
|
12
|
+
</section>
|
|
13
|
+
</div>
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
const clonedeep = require( 'lodash.clonedeep' );
|
|
2
|
+
|
|
3
|
+
const c_lazy_magazine_image_prototype = require( '../../components/c-lazy-image/c-lazy-image.prototype' );
|
|
4
|
+
const c_lazy_magazine_image = clonedeep( c_lazy_magazine_image_prototype );
|
|
5
|
+
|
|
6
|
+
c_lazy_magazine_image.c_lazy_image_classes = 'lrv-u-flex-shrink-0 lrv-u-margin-r-2 lrv-u-width-300 a-hidden@desktop-xl-max';
|
|
7
|
+
c_lazy_magazine_image.c_lazy_image_src_url = 'https://cdn.shopify.com/s/files/1/0238/6647/products/2019_37_540x.jpg';
|
|
8
|
+
c_lazy_magazine_image.c_lazy_image_placeholder_url = 'https://cdn.shopify.com/s/files/1/0238/6647/products/2019_37_540x.jpg';
|
|
9
|
+
c_lazy_magazine_image.c_lazy_image_crop_class = '';
|
|
10
|
+
c_lazy_magazine_image.c_lazy_image_link_url = '/subscribe-us/';
|
|
11
|
+
c_lazy_magazine_image.c_lazy_image_srcset_attr = 'https://cdn.shopify.com/s/files/1/0238/6647/products/2019_37_540x.jpg 240w,https://cdn.shopify.com/s/files/1/0238/6647/products/2019_37_540x.jpg 320w,https://cdn.shopify.com/s/files/1/0238/6647/products/2019_37_540x.jpg 500w,https://cdn.shopify.com/s/files/1/0238/6647/products/2019_37_540x.jpg 640w,https://cdn.shopify.com/s/files/1/0238/6647/products/2019_37_540x.jpg 1024w';
|
|
12
|
+
|
|
13
|
+
module.exports = {
|
|
14
|
+
c_lazy_magazine_image,
|
|
15
|
+
};
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
const
|
|
2
|
-
|
|
3
|
-
const o_nav =
|
|
1
|
+
const clonedeep = require( 'lodash.clonedeep' );
|
|
2
|
+
|
|
3
|
+
const o_nav = clonedeep( require( '../../objects/o-nav/o-nav.prototype' ) );
|
|
4
4
|
|
|
5
5
|
o_nav.o_nav_title_text = 'Footer Menu';
|
|
6
|
-
o_nav.
|
|
7
|
-
o_nav.
|
|
8
|
-
o_nav.
|
|
9
|
-
o_nav.
|
|
10
|
-
o_nav.o_nav_list_item_classes = 'pmc-u-padding-lr-1 pmc-u-padding-tb-050 pmc-u-font-size-18@mobile-max pmc-u-font-size-12 pmc-u-color-grey-light pmc-u-color-white:hover';
|
|
6
|
+
o_nav.o_nav_classes = 'lrv-js-MobileHeightToggle lrv-u-text-align-center@tablet lrv-u-border-a-1@mobile-max lrv-u-border-color-white';
|
|
7
|
+
o_nav.o_nav_title_classes = 'lrv-js-MobileHeightToggle-trigger lrv-u-padding-lr-1 lrv-u-margin-tb-00 lrv-u-padding-t-1 lrv-u-padding-t-050@tablet lrv-u-padding-b-050 lrv-u-width-100p@mobile-max lrv-a-icon-after lrv-a-icon-arrow-down lrv-a-icon-after:margin-l-auto lrv-a-icon-after-remove@tablet lrv-a-icon-invert lrv-u-cursor-pointer lrv-u-font-family-primary lrv-u-font-weight-bold lrv-u-font-size-20';
|
|
8
|
+
o_nav.o_nav_list_classes += ' lrv-js-MobileHeightToggle-target lrv-u-padding-b-050';
|
|
9
|
+
o_nav.o_nav_list_item_classes = 'lrv-u-padding-lr-1 lrv-u-padding-tb-050 lrv-u-font-size-18@mobile-max lrv-u-font-size-12 lrv-u-color-grey-light lrv-u-color-white:hover';
|
|
11
10
|
|
|
12
11
|
module.exports = {
|
|
12
|
+
footer_menu_classes: 'lrv-a-grid lrv-a-cols3@tablet lrv-u-background-color-black lrv-u-color-white',
|
|
13
13
|
o_navs: [
|
|
14
14
|
o_nav,
|
|
15
15
|
o_nav,
|
|
16
16
|
o_nav
|
|
17
17
|
]
|
|
18
|
-
};
|
|
18
|
+
};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
# footer-newsletter
|
|
2
|
+
|
|
3
|
+
This module is included in `footer` and does not have its own JSON configuration file. Refer to the `footer` readme for details on implementing the footer in a theme.
|
|
4
|
+
|
|
5
|
+
The form in this pattern uses the o-email-capture-form.minimal configuration.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
const clonedeep = require( 'lodash.clonedeep' );
|
|
2
|
+
|
|
3
|
+
const o_email_capture_form_minimal = clonedeep( require( '../../objects/o-email-capture-form/o-email-capture-form.minimal' ) );
|
|
4
|
+
const c_title = clonedeep( require( '../../components/c-title/c-title.prototype' ) );
|
|
5
|
+
const c_tagline = clonedeep( require( '../../components/c-tagline/c-tagline.prototype' ) );
|
|
6
|
+
|
|
7
|
+
c_title.c_title_url = false;
|
|
8
|
+
c_title.c_title_text = 'Stay In The Know';
|
|
9
|
+
c_title.c_title_classes = 'lrv-u-margin-b-025 lrv-u-font-family-primary lrv-u-text-align-center';
|
|
10
|
+
|
|
11
|
+
c_tagline.c_tagline_text = 'Sign up for our daily newsletter';
|
|
12
|
+
c_tagline.c_tagline_classes = 'lrv-u-font-size-14 u-font-style-italic lrv-u-font-family-basic lrv-u-text-align-center';
|
|
13
|
+
|
|
14
|
+
o_email_capture_form_minimal.c_button.c_button_classes += ' lrv-a-icon-invert';
|
|
15
|
+
|
|
16
|
+
module.exports = {
|
|
17
|
+
footer_newsletter_classes: 'lrv-u-text-align-center lrv-u-color-white lrv-u-background-color-black lrv-u-flex lrv-u-flex-direction-column lrv-u-align-items-center',
|
|
18
|
+
c_title: c_title,
|
|
19
|
+
c_tagline: c_tagline,
|
|
20
|
+
o_email_capture_form: o_email_capture_form_minimal
|
|
21
|
+
};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
<section class="footer-newsletter // {{ footer_newsletter_classes }}">
|
|
2
|
+
{% include "@larva/components/c-title/c-title.twig" with c_title %}
|
|
3
|
+
{% include "@larva/components/c-tagline/c-tagline.twig" with c_tagline %}
|
|
4
|
+
{% include "@larva/objects/o-email-capture-form/o-email-capture-form.twig" with o_email_capture_form %}
|
|
5
|
+
</section>
|
|
@@ -1,29 +1,36 @@
|
|
|
1
|
-
const
|
|
2
|
-
|
|
3
|
-
const
|
|
1
|
+
const clonedeep = require( 'lodash.clonedeep' );
|
|
2
|
+
|
|
3
|
+
const c_icon_prototype = require( '../../components/c-icon/c-icon.prototype' );
|
|
4
|
+
const c_title = clonedeep( require( '../../components/c-title/c-title.prototype' ) );
|
|
5
|
+
const c_tagline = clonedeep( require( '../../components/c-tagline/c-tagline.prototype' ) );
|
|
6
|
+
const o_social_list = clonedeep( require( '../../objects/o-social-list/o-social-list.prototype' ) );
|
|
7
|
+
|
|
8
|
+
c_title.c_title_url = false;
|
|
9
|
+
c_title.c_title_classes = 'lrv-u-margin-b-025 lrv-u-font-family-primary lrv-u-text-align-center';
|
|
10
|
+
c_title.c_title_text = 'Connect with Us';
|
|
11
|
+
|
|
12
|
+
c_tagline.c_tagline_classes = 'lrv-u-font-size-14 u-font-style-italic lrv-u-font-family-basic lrv-u-text-align-center';
|
|
13
|
+
c_tagline.c_tagline_text = 'Get our latest stories in the feed of your favorite networks';
|
|
4
14
|
|
|
5
15
|
const social = [ 'instagram', 'pinit', 'twitter', 'facebook', 'youtube' ];
|
|
6
|
-
|
|
16
|
+
|
|
17
|
+
// Clear existing icons, update classes
|
|
18
|
+
o_social_list.o_social_list_icons = [];
|
|
19
|
+
o_social_list.o_social_list_classes = 'lrv-a-unstyle-list lrv-u-flex lrv-u-align-items-center lrv-u-justify-content-center';
|
|
20
|
+
|
|
7
21
|
|
|
8
22
|
for (let i = 0; i < social.length; i++) {
|
|
9
|
-
let c_icon =
|
|
23
|
+
let c_icon = clonedeep( c_icon_prototype );
|
|
24
|
+
c_icon.c_icon_url = '#';
|
|
10
25
|
c_icon.c_icon_name = social[i];
|
|
11
|
-
c_icon.c_icon_link_classes += '
|
|
26
|
+
c_icon.c_icon_link_classes += ' lrv-u-display-block lrv-u-border-radius-50p lrv-u-color-grey lrv-u-margin-lr-050 lrv-u-padding-a-050 lrv-u-background-color-white lrv-u-color-grey-dark:hover';
|
|
12
27
|
|
|
13
|
-
o_social_list_icons.push( c_icon );
|
|
28
|
+
o_social_list.o_social_list_icons.push( c_icon );
|
|
14
29
|
}
|
|
15
30
|
|
|
16
31
|
module.exports = {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
"c_tagline_classes": "pmc-u-font-size-14 u-font-style-italic pmc-u-font-family-basic pmc-u-text-align-center",
|
|
23
|
-
"c_tagline_text": "Get our latest stories in the feed of your favorite networks"
|
|
24
|
-
},
|
|
25
|
-
"o_social_list": {
|
|
26
|
-
"o_social_list_classes": "pmc-a-unstyle-list pmc-u-flex pmc-u-align-items-center pmc-u-justify-content-center",
|
|
27
|
-
"o_social_list_icons": o_social_list_icons
|
|
28
|
-
}
|
|
29
|
-
};
|
|
32
|
+
footer_social_classes: 'lrv-u-text-align-center lrv-u-color-white lrv-u-background-color-black',
|
|
33
|
+
c_title: c_title,
|
|
34
|
+
c_tagline: c_tagline,
|
|
35
|
+
o_social_list: o_social_list
|
|
36
|
+
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
<section class="footer-social //
|
|
1
|
+
<section class="footer-social // {{ footer_social_classes }}">
|
|
2
2
|
{% include "@larva/components/c-title/c-title.twig" with c_title %}
|
|
3
3
|
{% include "@larva/components/c-tagline/c-tagline.twig" with c_tagline %}
|
|
4
4
|
{% include "@larva/objects/o-social-list/o-social-list.twig" with o_social_list %}
|
|
5
|
-
</section>
|
|
5
|
+
</section>
|
|
@@ -1,15 +1,23 @@
|
|
|
1
|
+
const clonedeep = require( 'lodash.clonedeep' );
|
|
2
|
+
|
|
3
|
+
const c_button = clonedeep( require( '../../components/c-button/c-button.stripped' ) );
|
|
4
|
+
const c_title = clonedeep( require( '../../components/c-title/c-title.prototype' ) );
|
|
5
|
+
const c_tagline = clonedeep( require( '../../components/c-tagline/c-tagline.prototype' ) );
|
|
6
|
+
|
|
7
|
+
c_button.c_button_classes += 'lrv-u-color-white lrv-u-color-grey-light:hover lrv-u-background-color-black lrv-u-font-size-12 lrv-u-font-weight-bold lrv-u-text-transform-uppercase lrv-a-icon-after lrv-a-icon-arrow-right lrv-a-icon-invert';
|
|
8
|
+
c_button.c_button_text = 'Send Us a Tip';
|
|
9
|
+
c_button.c_button_url = 'https://google.com';
|
|
10
|
+
c_button.c_button_inner_classes = 'lrv-u-color-white lrv-u-color-grey-light:hover';
|
|
11
|
+
|
|
12
|
+
c_title.c_title_classes = 'lrv-u-margin-b-025 lrv-u-font-family-primary';
|
|
13
|
+
c_title.c_title_text = 'Have a Tip?';
|
|
14
|
+
|
|
15
|
+
c_tagline.c_tagline_classes = 'lrv-u-font-size-14 u-font-style-italic lrv-u-font-family-basic';
|
|
16
|
+
c_tagline.c_tagline_text = 'We want to hear from you! Send us a tip using our anonymous form.';
|
|
17
|
+
|
|
1
18
|
module.exports = {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
"c_tagline": {
|
|
7
|
-
"c_tagline_classes": "pmc-u-font-size-14 u-font-style-italic pmc-u-font-family-basic",
|
|
8
|
-
"c_tagline_text": "We want to hear from you! Send us a tip using our annonymous form."
|
|
9
|
-
},
|
|
10
|
-
"c_button": {
|
|
11
|
-
"c_button_classes": "pmc-u-color-white pmc-u-color-grey-light:hover pmc-u-background-black pmc-u-font-size-12 pmc-u-font-weight-bold pmc-u-text-transform-uppercase a-icon-after a-icon-arrow-right a-icon-invert",
|
|
12
|
-
"c_button_url": "https://deadline.com/tip-line/",
|
|
13
|
-
"c_button_text": "Send Us a Tip"
|
|
14
|
-
}
|
|
19
|
+
footer_tip_classes: 'lrv-u-text-align-center lrv-u-color-white lrv-u-background-color-black',
|
|
20
|
+
c_title: c_title,
|
|
21
|
+
c_tagline: c_tagline,
|
|
22
|
+
c_button: c_button
|
|
15
23
|
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
<section class="footer-tip //
|
|
1
|
+
<section class="footer-tip // {{ footer_tip_classes }}">
|
|
2
2
|
{% include "@larva/components/c-title/c-title.twig" with c_title %}
|
|
3
3
|
{% include "@larva/components/c-tagline/c-tagline.twig" with c_tagline %}
|
|
4
4
|
{% include "@larva/components/c-button/c-button.twig" with c_button %}
|
|
5
|
-
</section>
|
|
5
|
+
</section>
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
const clonedeep = require( 'lodash.clonedeep' );
|
|
2
|
+
|
|
3
|
+
const header_prototype = require( './header.prototype' );
|
|
4
|
+
const header = clonedeep( header_prototype );
|
|
5
|
+
|
|
6
|
+
const header_sticky_prototype = require( '../header-sticky/header-sticky.article' );
|
|
7
|
+
const header_sticky = clonedeep( header_sticky_prototype );
|
|
8
|
+
header.header_sticky = header_sticky;
|
|
9
|
+
|
|
10
|
+
header.is_home = false;
|
|
11
|
+
header.header_classes = 'lrv-a-glue-parent';
|
|
12
|
+
header.header_inner_classes = 'lrv-u-background-color-white lrv-u-border-b-1 lrv-u-border-t-1 lrv-u-width-100p';
|
|
13
|
+
header.header_sticky_outer_classes = ' lrv-u-width-100p';
|
|
14
|
+
header.header_contents_classes = 'lrv-u-flex lrv-u-justify-content-space-between';
|
|
15
|
+
header.header_outer_classes='lrv-u-border-t-5 lrv-u-padding-t-025 lrv-u-width-100p';
|
|
16
|
+
header.header_logo_classes='lrv-u-flex lrv-u-text-align-center';
|
|
17
|
+
header.header_content_primary_classes = 'lrv-a-wrapper lrv-a-space-children-horizontal lrv-u-align-items-center lrv-u-flex';
|
|
18
|
+
header.header_content_secondary_classes = 'lrv-u-align-items-center lrv-u-border-b-1 lrv-u-border-t-1 lrv-u-flex lrv-u-justify-content-center lrv-u-margin-t-025 lrv-u-padding-tb-075';
|
|
19
|
+
header.header_links_primary_classes = 'lrv-u-align-items-center lrv-u-padding-r-1 lrv-u-border-r-1 lrv-a-space-children--050 lrv-a-space-children-horizontal lrv-u-flex';
|
|
20
|
+
header.header_links_secondary_classes = 'lrv-a-space-children--1 lrv-a-space-children-horizontal lrv-u-flex lrv-u-margin-l-auto';
|
|
21
|
+
header.c_logo.c_logo_classes += 'lrv-u-color-brand-primary lrv-u-color-brand-primary:hover lrv-u-display-inline-flex lrv-u-justify-content-center lrv-u-width-100p lrv-u-width-150';
|
|
22
|
+
header.header_content_menu_classes='lrv-u-margin-l-125 lrv-a-space-children--050 lrv-a-space-children-horizontal lrv-u-flex';
|
|
23
|
+
|
|
24
|
+
header.o_icon_button_menu.c_icon.c_icon_classes = 'lrv-u-display-block lrv-u-width-30 lrv-u-height-30';
|
|
25
|
+
header.o_icon_button_menu.o_icon_button_classes = 'js-MegaMenu-Trigger lrv-u-align-items-center lrv-u-border-a-0 lrv-u-flex lrv-u-padding-lr-1 lrv-u-background-color-transparent lrv-u-color-brand-primary:hover';
|
|
26
|
+
header.o_icon_button_menu.o_icon_button_screen_reader_text = 'Click to expand the Mega Menu';
|
|
27
|
+
header.o_icon_button_menu.c_span.c_span_text = '';
|
|
28
|
+
|
|
29
|
+
header.header_menu.o_nav.o_nav_list_item_classes = 'lrv-a-font-body-s lrv-a-space-children--2 lrv-a-space-children-horizontal lrv-a-unstyle-list lrv-u-flex lrv-u-justify-content-center lrv-u-text-transform-uppercase lrv-u-padding-t-050';
|
|
30
|
+
const header_menu_items = header.header_menu.o_nav.o_nav_list_items;
|
|
31
|
+
|
|
32
|
+
for (let i = 0; i < header_menu_items.length; i++) {
|
|
33
|
+
header.header_menu.o_nav.o_nav_list_items[i].c_link_classes = 'lrv-u-padding-tb-075 lrv-a-unstyle-link lrv-u-color-brand-primary:hover lrv-a-hover-effect lrv-u-whitespace-nowrap lrv-u-border-b-6 lrv-u-border-color-white lrv-u-border-color-brand-primary:hover lrv-u-line-height-large lrv-u-display-inline-block';
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
header.expandable_search.expandable_search_inner_classes = 'lrv-u-height-auto lrv-a-glue lrv-a-glue--r-0 lrv-a-glue--t-50p lrv-u-flex lrv-u-transform-translateY-n50p';
|
|
37
|
+
header.expandable_search.expandable_search_classes += ' sticky-expandable';
|
|
38
|
+
|
|
39
|
+
module.exports = header;
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
const clonedeep = require( 'lodash.clonedeep' );
|
|
2
|
+
|
|
3
|
+
const header_sticky_prototype = require( '../header-sticky/header-sticky.prototype' );
|
|
4
|
+
const header_menu_prototype = require( '../header-menu/header-menu.prototype' );
|
|
5
|
+
const expandable_search_prototype = require( '../expandable-search/expandable-search.prototype' );
|
|
6
|
+
const c_link_prototype = require( '../../components/c-link/c-link.prototype' );
|
|
7
|
+
const o_icon_button_prototype = require( '../../objects/o-icon-button/o-icon-button.prototype' );
|
|
8
|
+
const o_icon_button_search_prototype = require( '../../objects/o-icon-button/o-icon-button.search' );
|
|
9
|
+
const o_header_buttons_prototype = require( '../../objects/o-header-buttons/o-header-buttons.prototype' );
|
|
10
|
+
const o_header_buttons_column_prototype = require( '../../objects/o-header-buttons/o-header-buttons.column' );
|
|
11
|
+
|
|
12
|
+
const header_sticky = clonedeep( header_sticky_prototype );
|
|
13
|
+
|
|
14
|
+
const expandable_search = clonedeep( expandable_search_prototype );
|
|
15
|
+
|
|
16
|
+
const header_menu = clonedeep( header_menu_prototype );
|
|
17
|
+
header_menu.o_nav.o_nav_list_classes = 'lrv-a-font-body-s lrv-a-space-children--2 lrv-a-space-children-horizontal lrv-a-unstyle-list lrv-u-flex lrv-u-font-family-body lrv-u-justify-content-center lrv-u-text-transform-uppercase';
|
|
18
|
+
const header_menu_items = header_menu.o_nav.o_nav_list_items;
|
|
19
|
+
for (let i = 0; i < header_menu_items.length; i++) {
|
|
20
|
+
header_menu.o_nav.o_nav_list_items[i].c_link_classes = ' lrv-u-padding-b-050 lrv-a-unstyle-link lrv-u-color-brand-primary:hover lrv-a-hover-effect lrv-u-whitespace-nowrap lrv-u-border-b-6 lrv-u-border-color-white lrv-u-border-color-brand-primary:hover';
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
const o_account_menu = clonedeep( require( '../../objects/o-account-menu/o-account-menu.prototype') );
|
|
24
|
+
o_account_menu.o_account_menu_classes += ' lrv-a-hidden';
|
|
25
|
+
|
|
26
|
+
const c_shop_link = clonedeep( c_link_prototype );
|
|
27
|
+
c_shop_link.c_link_text = 'RS shop';
|
|
28
|
+
c_shop_link.c_link_classes = 'lrv-u-margin-b-050 lrv-a-unstyle-link lrv-u-display-inline lrv-u-color-brand-primary:hover lrv-u-border-b-1 lrv-u-border-color-white lrv-u-border-color-brand-primary:hover lrv-u-font-family-body lrv-u-text-transform-uppercase lrv-a-font-body-xxs';
|
|
29
|
+
|
|
30
|
+
const c_login_link = clonedeep( c_link_prototype );
|
|
31
|
+
c_login_link.c_link_text = 'Log In';
|
|
32
|
+
c_login_link.c_link_classes = 'subscriber-login-link lrv-u-margin-b-050 lrv-a-unstyle-link lrv-u-display-inline lrv-u-color-brand-primary:hover lrv-u-border-b-1 lrv-u-border-color-white lrv-u-border-color-brand-primary:hover lrv-u-font-family-body lrv-u-text-transform-uppercase lrv-a-font-body-xxs lrv-a-hidden@mobile-max ';
|
|
33
|
+
|
|
34
|
+
const c_subscribe_link = clonedeep( c_link_prototype );
|
|
35
|
+
c_subscribe_link.c_link_text = 'Subscribe';
|
|
36
|
+
c_subscribe_link.c_link_classes = 'subscribe-link cx-dynamic-link lrv-u-margin-b-050 lrv-a-unstyle-link lrv-u-display-inline lrv-u-color-brand-primary:hover lrv-u-border-b-1 lrv-u-border-color-white lrv-u-border-color-brand-primary:hover lrv-u-font-family-body lrv-u-text-transform-uppercase lrv-a-font-body-xxs';
|
|
37
|
+
|
|
38
|
+
const c_got_a_tip = clonedeep( c_link_prototype );
|
|
39
|
+
c_got_a_tip.c_link_text = 'Got A Tip?';
|
|
40
|
+
c_got_a_tip.c_link_classes = 'lrv-u-margin-b-050 lrv-a-unstyle-link lrv-u-display-inline lrv-u-color-brand-primary:hover lrv-u-border-b-1 lrv-u-border-color-white lrv-u-border-color-brand-primary:hover lrv-u-font-family-body lrv-u-text-transform-uppercase lrv-a-font-body-xxs';
|
|
41
|
+
|
|
42
|
+
const c_logo_prototype = require( '../../components/c-logo/c-logo.prototype' );
|
|
43
|
+
const c_logo = clonedeep( c_logo_prototype );
|
|
44
|
+
c_logo.c_logo_classes += 'lrv-u-color-brand-primary lrv-u-color-brand-primary:hover lrv-u-display-inline-flex lrv-u-justify-content-center lrv-u-width-100p';
|
|
45
|
+
c_logo.c_logo_is_h1 = true;
|
|
46
|
+
|
|
47
|
+
const o_icon_button_search = clonedeep( o_icon_button_search_prototype );
|
|
48
|
+
const o_icon_button_menu = clonedeep( o_icon_button_prototype );
|
|
49
|
+
|
|
50
|
+
o_icon_button_menu.o_icon_button_classes += ' js-MegaMenu-Trigger lrv-u-margin-r-auto lrv-u-color-brand-primary:hover lrv-a-glue-parent';
|
|
51
|
+
o_icon_button_menu.c_icon.c_icon_classes = 'lrv-u-display-block lrv-u-width-30 lrv-u-height-30';
|
|
52
|
+
o_icon_button_menu.c_span.c_span_text = '';
|
|
53
|
+
o_icon_button_menu.o_icon_button_screen_reader_text = 'Click to expand the Mega Menu';
|
|
54
|
+
|
|
55
|
+
const o_header_buttons = clonedeep( o_header_buttons_prototype );
|
|
56
|
+
|
|
57
|
+
const o_header_buttons_column = clonedeep( o_header_buttons_column_prototype );
|
|
58
|
+
|
|
59
|
+
module.exports = {
|
|
60
|
+
header_classes: 'lrv-a-glue-parent',
|
|
61
|
+
header_inner_classes: 'lrv-u-width-100p lrv-u-padding-t-1 lrv-u-background-color-white',
|
|
62
|
+
header_sticky_outer_classes: ' lrv-u-width-100p',
|
|
63
|
+
header_outer_classes: 'lrv-u-flex lrv-u-justify-content-space-between',
|
|
64
|
+
header_contents_classes: '',
|
|
65
|
+
header_logo_classes: 'lrv-u-text-align-center lrv-u-width-40p@tablet',
|
|
66
|
+
header_content_primary_classes: 'lrv-u-flex lrv-u-justify-content-space-between lrv-u-align-items-center lrv-u-margin-b-050 lrv-u-padding-b-1',
|
|
67
|
+
header_content_secondary_classes: 'lrv-a-hidden@mobile-max lrv-u-align-items-center lrv-u-flex lrv-u-justify-content-center',
|
|
68
|
+
header_links_primary_classes: 'lrv-a-hidden@mobile-max lrv-u-width-30p lrv-a-space-children--050 lrv-a-space-children-vertical',
|
|
69
|
+
header_links_secondary_classes:'lrv-u-width-30p lrv-u-text-align-right lrv-a-space-children--050 lrv-a-space-children-vertical',
|
|
70
|
+
header_mobile_button_classes:'lrv-a-hidden@tablet lrv-u-width-22p@mobile-max',
|
|
71
|
+
header_links_primary_inner_classes:'lrv-u-display-inline-flex lrv-u-flex-direction-column',
|
|
72
|
+
header_links_secondary_inner_classes:'lrv-u-display-inline-flex lrv-u-flex-direction-column ',
|
|
73
|
+
header_content_secondary_outer_classes:'lrv-u-border-t-6',
|
|
74
|
+
header_content_secondary_inner_classes:'lrv-u-border-b-1 lrv-u-border-t-1 lrv-u-margin-t-050 lrv-u-padding-t-050 lrv-u-padding-b-050 lrv-u-border-b-1 lrv-u-border-t-1 lrv-u-margin-t-050 lrv-u-margin-t-025@mobile-max lrv-u-border-b-00@mobile-max',
|
|
75
|
+
header_content_menu_classes:'lrv-u-margin-l-125 lrv-a-space-children--050 lrv-a-space-children-vertical',
|
|
76
|
+
c_logo,
|
|
77
|
+
c_link_left_primary: c_shop_link,
|
|
78
|
+
c_link_left_secondary: c_got_a_tip,
|
|
79
|
+
c_link_right_primary: c_subscribe_link,
|
|
80
|
+
c_link_right_secondary: c_login_link,
|
|
81
|
+
o_icon_button_menu,
|
|
82
|
+
o_icon_button_search,
|
|
83
|
+
header_menu,
|
|
84
|
+
header_sticky,
|
|
85
|
+
expandable_search,
|
|
86
|
+
is_home: true,
|
|
87
|
+
o_header_buttons,
|
|
88
|
+
o_header_buttons_column,
|
|
89
|
+
o_account_menu,
|
|
90
|
+
};
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
{% if is_home %}
|
|
2
|
+
<header class="header // js-Header {{ header_classes }}">
|
|
3
|
+
<div class="header-content // js-Header-contents {{ header_contents_classes }}">
|
|
4
|
+
<div class="header-outer // js-hide-when-sticky {{ header_outer_classes }}">
|
|
5
|
+
<div class="header-inner // {{ header_inner_classes }} ">
|
|
6
|
+
<div class="header-content-primary // lrv-a-wrapper {{ header_content_primary_classes }}">
|
|
7
|
+
<div class="header-mobile-button // {{ header_mobile_button_classes }} ">
|
|
8
|
+
{% include "@larva/objects/o-icon-button/o-icon-button.twig" with o_icon_button_menu %}
|
|
9
|
+
</div>
|
|
10
|
+
<div class="header-links-primary // {{ header_links_primary_classes }} ">
|
|
11
|
+
<div class="header-links-primary-inner // {{ header_links_primary_inner_classes }} ">
|
|
12
|
+
{% include "@larva/components/c-link/c-link.twig" with c_link_left_primary %}
|
|
13
|
+
{% include "@larva/components/c-link/c-link.twig" with c_link_left_secondary %}
|
|
14
|
+
</div>
|
|
15
|
+
</div>
|
|
16
|
+
<div class="header-logo // {{ header_logo_classes }} ">
|
|
17
|
+
{% include "@larva/components/c-logo/c-logo.twig" with c_logo %}
|
|
18
|
+
</div>
|
|
19
|
+
<div class="header-links-secondary // {{ header_links_secondary_classes }} ">
|
|
20
|
+
<div class="header-links-secondary-inner // {{ header_links_secondary_inner_classes }} ">
|
|
21
|
+
{% include "@larva/components/c-link/c-link.twig" with c_link_right_primary %}
|
|
22
|
+
{% include "@larva/components/c-link/c-link.twig" with c_link_right_secondary %}
|
|
23
|
+
{% include "@larva/objects/o-account-menu/o-account-menu.twig" with o_account_menu %}
|
|
24
|
+
</div>
|
|
25
|
+
</div>
|
|
26
|
+
</div>
|
|
27
|
+
<div class="header-content-secondary-outer // {{ header_content_secondary_outer_classes }} ">
|
|
28
|
+
<div class="header-content-secondary-inner // {{ header_content_secondary_inner_classes }} ">
|
|
29
|
+
<div class="header-content-secondary // lrv-a-wrapper {{ header_content_secondary_classes }} ">
|
|
30
|
+
{% include "@larva/objects/o-icon-button/o-icon-button.twig" with o_icon_button_menu %}
|
|
31
|
+
{% include "@larva/modules/header-menu/header-menu.twig" with header_menu %}
|
|
32
|
+
{% include "@larva/modules/expandable-search/expandable-search.twig" with expandable_search %}
|
|
33
|
+
</div>
|
|
34
|
+
</div>
|
|
35
|
+
</div>
|
|
36
|
+
</div>
|
|
37
|
+
</div>
|
|
38
|
+
{% if header_sticky %}
|
|
39
|
+
<div class="header-sticky-outer // js-show-when-sticky js-sticky-header-slidedown {{ header_sticky_outer_classes }}">
|
|
40
|
+
{% include "@larva/modules/header-sticky/header-sticky.twig" with header_sticky %}
|
|
41
|
+
</div>
|
|
42
|
+
{% endif %}
|
|
43
|
+
</div>
|
|
44
|
+
</header>
|
|
45
|
+
{% else %}
|
|
46
|
+
<header class="header // js-Header {{ header_classes }}">
|
|
47
|
+
<div class="header-content // js-Header-contents {{ header_contents_classes }}">
|
|
48
|
+
<div class="header-outer // js-hide-when-sticky {{ header_outer_classes }}">
|
|
49
|
+
<div class="header-inner // {{ header_inner_classes }} ">
|
|
50
|
+
<div class="header-content-primary // {{ header_content_primary_classes }}">
|
|
51
|
+
<div class="header-logo // {{ header_logo_classes }} ">
|
|
52
|
+
{% include "@larva/components/c-logo/c-logo.twig" with c_logo %}
|
|
53
|
+
</div>
|
|
54
|
+
<div class="header-links-primary // {{ header_links_primary_classes }} ">
|
|
55
|
+
{% include "@larva/objects/o-icon-button/o-icon-button.twig" with o_icon_button_menu %}
|
|
56
|
+
{% include "@larva/modules/expandable-search/expandable-search.twig" with expandable_search %}
|
|
57
|
+
</div>
|
|
58
|
+
<div class="header-content-menu // {{ header_content_menu_classes }} ">
|
|
59
|
+
{% include "@larva/modules/header-menu/header-menu.twig" with header_menu %}
|
|
60
|
+
</div>
|
|
61
|
+
<div class="header-links-secondary // {{ header_links_secondary_classes }} ">
|
|
62
|
+
{% include "@larva/objects/o-header-buttons/o-header-buttons.twig" with o_header_buttons_column %}
|
|
63
|
+
</div>
|
|
64
|
+
</div>
|
|
65
|
+
</div>
|
|
66
|
+
</div>
|
|
67
|
+
{% if header_sticky %}
|
|
68
|
+
<div class="header-sticky-outer // js-show-when-sticky js-sticky-header-slidedown {{ header_sticky_outer_classes }}">
|
|
69
|
+
{% include "@larva/modules/header-sticky/header-sticky.twig" with header_sticky %}
|
|
70
|
+
</div>
|
|
71
|
+
{% endif %}
|
|
72
|
+
</div>
|
|
73
|
+
</header>
|
|
74
|
+
{% endif %}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
const clonedeep = require('lodash.clonedeep');
|
|
2
|
+
const o_nav = clonedeep(require('../../objects/o-nav/o-nav.prototype'));
|
|
3
|
+
|
|
4
|
+
o_nav.o_nav_list_items = [];
|
|
5
|
+
const menuLinks = ['News', 'Market', 'Reviews', 'Video'];
|
|
6
|
+
|
|
7
|
+
for (let i = 0; i < menuLinks.length; i++) {
|
|
8
|
+
let c_link = clonedeep(require('../../components/c-link/c-link.prototype'));
|
|
9
|
+
|
|
10
|
+
if ('icon' === menuLinks[i]) {
|
|
11
|
+
c_link.c_link_text = '';
|
|
12
|
+
c_link.c_link_classes = 'lrv-a-unstyle-link lrv-u-color-brand-primary:hover lrv-a-hover-effect lrv-u-text-transform-uppercase';
|
|
13
|
+
} else {
|
|
14
|
+
c_link.c_link_text = menuLinks[i];
|
|
15
|
+
c_link.c_link_classes = 'lrv-a-unstyle-link lrv-u-color-brand-primary:hover lrv-a-hover-effect lrv-u-whitespace-nowrap lrv-u-text-transform-uppercase';
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
o_nav.o_nav_list_items.push(c_link);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
o_nav.o_nav_list_classes = 'lrv-a-unstyle-list lrv-u-flex lrv-u-justify-content-center lrv-a-space-children-horizontal lrv-a-space-children--2 lrv-u-font-family-primary';
|
|
22
|
+
|
|
23
|
+
module.exports = {
|
|
24
|
+
o_nav: o_nav,
|
|
25
|
+
header_menu_classes:'',
|
|
26
|
+
};
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
const clonedeep = require('lodash.clonedeep');
|
|
2
|
+
|
|
3
|
+
const header_sticky_prototype = require('./header-sticky.prototype');
|
|
4
|
+
const c_icon_prototype = require( '../../components/c-icon/c-icon.prototype' );
|
|
5
|
+
const read_next_prototype = require('../read-next/read-next.prototype');
|
|
6
|
+
const o_social_list_prototype = require('../../objects/o-social-list/o-social-list.prototype');
|
|
7
|
+
|
|
8
|
+
const read_next = clonedeep(read_next_prototype);
|
|
9
|
+
read_next.read_next_classes += ' lrv-u-margin-l-125 lrv-u-overflow-hidden lrv-u-margin-r-1';
|
|
10
|
+
read_next.c_span.c_span_text = 'Music';
|
|
11
|
+
read_next.c_span.c_span_classes = 'lrv-u-whitespace-nowrap lrv-u-text-transform-uppercase lrv-a-font-body-m lrv-u-font-weight-700';
|
|
12
|
+
read_next.c_title.c_title_link_classes = 'lrv-a-unstyle-link lrv-u-whitespace-nowrap lrv-a-font-body-m';
|
|
13
|
+
|
|
14
|
+
const o_social_list = clonedeep(o_social_list_prototype);
|
|
15
|
+
const social_icons = ['facebook-rs', 'twitter', 'email'];
|
|
16
|
+
const social_list_icons = [];
|
|
17
|
+
o_social_list.o_social_list_icons = [];
|
|
18
|
+
for (let i = 0; i < social_icons.length; i++) {
|
|
19
|
+
const c_icon = clonedeep(c_icon_prototype);
|
|
20
|
+
c_icon.c_icon_name = social_icons[i];
|
|
21
|
+
c_icon.c_icon_url = '#';
|
|
22
|
+
c_icon.c_icon_link_classes +=
|
|
23
|
+
'lrv-u-background-color-white lrv-u-border-radius-50p lrv-u-color-black lrv-u-color-brand-primary:hover lrv-u-display-block';
|
|
24
|
+
c_icon.c_icon_rel_name = 'noopener noreferrer';
|
|
25
|
+
social_list_icons.push(c_icon);
|
|
26
|
+
}
|
|
27
|
+
o_social_list.o_social_list_icons = social_list_icons;
|
|
28
|
+
|
|
29
|
+
const header_sticky = clonedeep(header_sticky_prototype);
|
|
30
|
+
|
|
31
|
+
header_sticky.o_social_list = o_social_list;
|
|
32
|
+
header_sticky.o_social_list.o_social_list_classes = ' lrv-u-flex lrv-a-space-children--1 lrv-a-space-children-horizontal lrv-u-align-items-center lrv-a-unstyle-list lrv-u-margin-l-auto lrv-u-margin-r-150';
|
|
33
|
+
|
|
34
|
+
header_sticky.expandable_search.expandable_search_classes += ' sticky-expandable';
|
|
35
|
+
|
|
36
|
+
header_sticky.read_next = read_next;
|
|
37
|
+
|
|
38
|
+
header_sticky.header_sticky_classes = 'lrv-u-border-color-grey-light lrv-u-border-b-1 lrv-u-background-color-white lrv-u-width-100p u-box-shadow-medium article-sticky-header';
|
|
39
|
+
header_sticky.header_sticky_links_classes = 'lrv-u-align-items-center lrv-u-flex lrv-u-justify-content-end lrv-u-width-21p';
|
|
40
|
+
header_sticky.header_sticky_logo_classes += ' lrv-u-order-n1';
|
|
41
|
+
header_sticky.header_sticky_icons_classes = 'lrv-a-glue-parent lrv-u-align-items-center lrv-u-flex lrv-u-padding-r-1 lrv-u-border-r-1';
|
|
42
|
+
|
|
43
|
+
module.exports = header_sticky;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
const clonedeep = require( 'lodash.clonedeep' );
|
|
2
|
+
|
|
3
|
+
const expandable_search_prototype = require( '../expandable-search/expandable-search.prototype' );
|
|
4
|
+
const o_header_buttons_prototype = require( '../../objects/o-header-buttons/o-header-buttons.prototype' );
|
|
5
|
+
const c_logo_prototype = require( '../../components/c-logo/c-logo.prototype' );
|
|
6
|
+
const o_icon_button_prototype = require( '../../objects/o-icon-button/o-icon-button.prototype' );
|
|
7
|
+
|
|
8
|
+
const expandable_search = clonedeep( expandable_search_prototype );
|
|
9
|
+
|
|
10
|
+
const c_logo = clonedeep( c_logo_prototype );
|
|
11
|
+
|
|
12
|
+
const o_icon_button_menu = clonedeep( o_icon_button_prototype );
|
|
13
|
+
o_icon_button_menu.c_icon.c_icon_classes = 'lrv-u-display-block lrv-u-width-30 lrv-u-height-30';
|
|
14
|
+
o_icon_button_menu.o_icon_button_classes = 'js-MegaMenu-Trigger lrv-u-align-items-center lrv-u-border-a-0 lrv-u-flex lrv-u-padding-lr-1 lrv-u-background-color-transparent lrv-u-color-brand-primary:hover';
|
|
15
|
+
o_icon_button_menu.c_span.c_span_text = '';
|
|
16
|
+
o_icon_button_menu.o_icon_button_screen_reader_text = 'Click to expand the Mega Menu';
|
|
17
|
+
|
|
18
|
+
const o_header_buttons = clonedeep( o_header_buttons_prototype );
|
|
19
|
+
o_header_buttons.login_wrapper_classes = 'lrv-u-border-l-00@mobile-max lrv-u-border-l-1 lrv-u-padding-l-1 lrv-u-padding-tb-025 lrv-a-hidden@mobile-max';
|
|
20
|
+
o_header_buttons.got_tip_wrapper_classes = 'lrv-u-border-l-00@mobile-max lrv-u-border-l-1 lrv-u-padding-l-1 lrv-u-padding-tb-025 lrv-u-flex lrv-u-align-items-center lrv-u-margin-tb-025 lrv-a-hidden@mobile-max';
|
|
21
|
+
|
|
22
|
+
module.exports = {
|
|
23
|
+
header_sticky_classes: ' lrv-u-border-color-grey-light lrv-u-border-b-1 lrv-u-background-color-white lrv-u-width-100p',
|
|
24
|
+
o_icon_button_menu,
|
|
25
|
+
c_logo,
|
|
26
|
+
read_next: false,
|
|
27
|
+
expandable_search,
|
|
28
|
+
o_social_list: false,
|
|
29
|
+
o_header_buttons,
|
|
30
|
+
icon_logo_wrap: false,
|
|
31
|
+
header_sticky_content_classes:'lrv-u-border-b-1 lrv-u-border-t-1 lrv-u-margin-t-025 lrv-u-padding-t-050 lrv-u-padding-b-050',
|
|
32
|
+
header_sticky_content_inner_classes: ' lrv-u-flex lrv-u-justify-content-space-between lrv-u-align-items-center',
|
|
33
|
+
header_sticky_icon_logo_wrap_classes: ' lrv-u-flex lrv-u-justify-content-space-between lrv-u-align-items-center',
|
|
34
|
+
header_sticky_links_classes: 'lrv-u-align-items-center lrv-u-flex lrv-u-justify-content-end',
|
|
35
|
+
header_sticky_logo_classes: 'lrv-u-align-items-center lrv-u-flex lrv-u-flex-shrink-0 lrv-u-justify-content-center lrv-u-margin-lr-00@desktop lrv-u-margin-lr-auto',
|
|
36
|
+
header_sticky_inner_classes: 'lrv-u-align-items-center lrv-u-flex',
|
|
37
|
+
header_sticky_outer_classes: 'lrv-a-wrapper',
|
|
38
|
+
header_sticky_icons_classes: 'lrv-a-glue-parent lrv-u-align-items-center lrv-u-flex lrv-u-padding-r-1',
|
|
39
|
+
};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
<div class="header-sticky // {{ header_sticky_classes }}">
|
|
2
|
+
<div class="header-sticky-content // {{ header_sticky_content_classes }} ">
|
|
3
|
+
<div class="lrv-a-wrapper">
|
|
4
|
+
<div class="header-sticky-content-inner // {{ header_sticky_content_inner_classes }}">
|
|
5
|
+
{% if icon_logo_wrap %}
|
|
6
|
+
<div class="header-sticky-icon-logo-wrap // {{ header_sticky_icon_logo_wrap_classes }} ">
|
|
7
|
+
{% endif %}
|
|
8
|
+
<div class="header-sticky-icons // {{ header_sticky_icons_classes }} ">
|
|
9
|
+
{% include "@larva/objects/o-icon-button/o-icon-button.twig" with o_icon_button_menu %}
|
|
10
|
+
{% include "@larva/modules/expandable-search/expandable-search.twig" with expandable_search %}
|
|
11
|
+
</div>
|
|
12
|
+
<div class="header-sticky-logo // {{ header_sticky_logo_classes }} ">
|
|
13
|
+
{% include "@larva/components/c-logo/c-logo.twig" with c_logo %}
|
|
14
|
+
</div>
|
|
15
|
+
{% if icon_logo_wrap %}
|
|
16
|
+
</div>
|
|
17
|
+
{% endif %}
|
|
18
|
+
{% if read_next %}
|
|
19
|
+
{% include "@larva/modules/read-next/read-next.twig" with read_next %}
|
|
20
|
+
{% endif %}
|
|
21
|
+
{% if o_social_list %}
|
|
22
|
+
{% include "@larva/objects/o-social-list/o-social-list.twig" with o_social_list %}
|
|
23
|
+
{% endif %}
|
|
24
|
+
<div class="header-sticky-links // {{ header_sticky_links_classes }} ">
|
|
25
|
+
{% include "@larva/objects/o-header-buttons/o-header-buttons.twig" with o_header_buttons %}
|
|
26
|
+
</div>
|
|
27
|
+
</div>
|
|
28
|
+
</div>
|
|
29
|
+
</div>
|
|
30
|
+
</div>
|