@penskemediacorp/larva-patterns 1.0.2-alpha.0 → 1.1.2

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.
Files changed (377) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +9 -6
  3. package/__tests__/css/css.html +9 -0
  4. package/__tests__/css/css.prototype.js +1 -0
  5. package/__tests__/hub/hub.html +25 -0
  6. package/__tests__/hub/hub.prototype.js +30 -0
  7. package/__tests__/profile/profile.html +29 -0
  8. package/__tests__/profile/profile.prototype.js +17 -0
  9. package/__tests__/profile-index/profile-index.html +9 -0
  10. package/__tests__/profile-index/profile-index.prototype.js +6 -0
  11. package/__tests__/vlanding/vlanding.html +7 -0
  12. package/__tests__/vlanding/vlanding.prototype.js +11 -0
  13. package/_data/brands.json +40 -0
  14. package/_templates/pattern-nav.html +52 -0
  15. package/algorithms/a-carousel-grid/README.md +5 -0
  16. package/algorithms/a-carousel-grid/a-carousel-grid.html +25 -0
  17. package/algorithms/a-carousel-grid/a-carousel-grid.overlay.js +12 -0
  18. package/algorithms/a-carousel-grid/a-carousel-grid.prototype.js +0 -0
  19. package/algorithms/a-icon/a-icon.html +1 -0
  20. package/algorithms/a-icon/a-icon.prototype.js +0 -0
  21. package/base.html +73 -0
  22. package/components/c-button/README.md +3 -0
  23. package/components/c-button/c-button.black.js +7 -0
  24. package/components/c-button/c-button.brand-basic.js +8 -0
  25. package/components/c-button/c-button.ghost.js +10 -0
  26. package/components/c-button/c-button.prototype.js +11 -0
  27. package/components/c-button/c-button.stripped.js +8 -0
  28. package/components/c-button/c-button.twig +19 -0
  29. package/components/c-checkbox-input/c-checkbox-input.prototype.js +6 -0
  30. package/components/c-checkbox-input/c-checkbox-input.twig +4 -0
  31. package/components/c-dek/README.md +3 -0
  32. package/components/c-dek/c-dek.prototype.js +5 -0
  33. package/components/c-dek/c-dek.twig +9 -0
  34. package/components/c-email-field/README.md +0 -0
  35. package/components/c-email-field/c-email-field.ghost.js +10 -0
  36. package/components/c-email-field/c-email-field.prototype.js +8 -0
  37. package/components/c-email-field/c-email-field.twig +4 -0
  38. package/components/c-figcaption/c-figcaption.prototype.js +9 -0
  39. package/components/c-figcaption/c-figcaption.twig +16 -0
  40. package/components/c-heading/README.md +4 -0
  41. package/components/c-heading/c-heading.prototype.js +10 -0
  42. package/components/c-heading/c-heading.twig +29 -0
  43. package/components/c-hidden-field/c-hidden-field.prototype.js +5 -0
  44. package/components/c-hidden-field/c-hidden-field.twig +1 -0
  45. package/components/c-icon/c-icon.full.js +8 -0
  46. package/components/c-icon/c-icon.prototype.js +12 -0
  47. package/components/c-icon/c-icon.twig +34 -0
  48. package/components/c-input/c-input.prototype.js +8 -0
  49. package/components/c-input/c-input.twig +14 -0
  50. package/components/c-label/README.md +12 -0
  51. package/components/c-label/c-label.prototype.js +7 -0
  52. package/components/c-label/c-label.twig +19 -0
  53. package/components/c-lazy-image/README.md +35 -0
  54. package/components/c-lazy-image/c-lazy-image.prototype.js +17 -0
  55. package/components/c-lazy-image/c-lazy-image.twig +31 -0
  56. package/components/c-link/README.md +1 -0
  57. package/components/c-link/c-link.prototype.js +9 -0
  58. package/components/c-link/c-link.twig +13 -0
  59. package/components/c-logo/c-logo.prototype.js +7 -0
  60. package/components/c-logo/c-logo.twig +10 -0
  61. package/components/c-nav-link/c-nav-link.prototype.js +7 -0
  62. package/components/c-nav-link/c-nav-link.twig +10 -0
  63. package/components/c-play-badge/c-play-badge.prototype.js +3 -0
  64. package/components/c-play-badge/c-play-badge.twig +7 -0
  65. package/components/c-select-option/c-select-option.prototype.js +5 -0
  66. package/components/c-select-option/c-select-option.twig +5 -0
  67. package/{src/components/c-label/c-label.scss → components/c-span/README.md} +0 -19
  68. package/components/c-span/c-span.prototype.js +7 -0
  69. package/components/c-span/c-span.tag.js +7 -0
  70. package/components/c-span/c-span.twig +11 -0
  71. package/components/c-svg/c-svg.prototype.js +4 -0
  72. package/components/c-svg/c-svg.twig +3 -0
  73. package/components/c-tagline/README.md +3 -0
  74. package/components/c-tagline/c-tagline.prototype.js +4 -0
  75. package/{src/components → components}/c-tagline/c-tagline.twig +3 -3
  76. package/components/c-timestamp/c-timestamp.prototype.js +6 -0
  77. package/components/c-timestamp/c-timestamp.twig +9 -0
  78. package/components/c-title/README.md +7 -0
  79. package/components/c-title/c-title.prototype.js +9 -0
  80. package/{src/components → components}/c-title/c-title.twig +14 -2
  81. package/css.html +44 -0
  82. package/index.html +9 -0
  83. package/index.js +4 -0
  84. package/modules/age-gate/README.md +3 -0
  85. package/modules/age-gate/age-gate.prototype.js +68 -0
  86. package/modules/age-gate/age-gate.twig +37 -0
  87. package/modules/article-callout/article-callout.prototype.js +5 -0
  88. package/modules/article-callout/article-callout.twig +3 -0
  89. package/modules/article-excerpt/article-excerpt.prototype.js +4 -0
  90. package/modules/article-excerpt/article-excerpt.twig +1 -0
  91. package/modules/article-kicker/article-kicker.prototype.js +6 -0
  92. package/modules/article-kicker/article-kicker.twig +13 -0
  93. package/modules/article-tags/article-tags.prototype.js +24 -0
  94. package/modules/article-tags/article-tags.twig +3 -0
  95. package/modules/article-title/article-title.prototype.js +4 -0
  96. package/modules/article-title/article-title.twig +1 -0
  97. package/modules/author/author.prototype.js +43 -0
  98. package/modules/author/author.twig +38 -0
  99. package/modules/author-details/author-details.prototype.js +70 -0
  100. package/modules/author-details/author-details.twig +25 -0
  101. package/modules/back-to-list/back-to-list.prototype.js +11 -0
  102. package/modules/back-to-list/back-to-list.twig +5 -0
  103. package/modules/badge/badge.prototype.js +11 -0
  104. package/modules/badge/badge.twig +3 -0
  105. package/modules/banner/banner.prototype.js +10 -0
  106. package/modules/banner/banner.twig +10 -0
  107. package/modules/brands-most-popular/brands-most-popular.prototype.js +40 -0
  108. package/modules/brands-most-popular/brands-most-popular.twig +11 -0
  109. package/modules/breadcrumbs/breadcrumbs.prototype.js +7 -0
  110. package/modules/breadcrumbs/breadcrumbs.twig +3 -0
  111. package/modules/breaking-news/breaking-news.prototype.js +29 -0
  112. package/modules/breaking-news/breaking-news.twig +18 -0
  113. package/modules/button/button.prototype.js +9 -0
  114. package/modules/button/button.twig +7 -0
  115. package/modules/carousel-grid/README.md +7 -0
  116. package/modules/carousel-grid/carousel-grid.overlay.js +26 -0
  117. package/modules/carousel-grid/carousel-grid.prototype.js +50 -0
  118. package/modules/carousel-grid/carousel-grid.twig +17 -0
  119. package/modules/carousel-slider/carousel-slider.prototype.js +56 -0
  120. package/modules/carousel-slider/carousel-slider.twig +11 -0
  121. package/modules/container/README.md +3 -0
  122. package/modules/container/container.prototype.js +7 -0
  123. package/modules/container/container.twig +1 -0
  124. package/modules/content-showcase/content-showcase.prototype.js +29 -0
  125. package/modules/content-showcase/content-showcase.the-moth.js +31 -0
  126. package/modules/content-showcase/content-showcase.twig +7 -0
  127. package/modules/expandable-search/expandable-search.prototype.js +19 -0
  128. package/modules/expandable-search/expandable-search.twig +9 -0
  129. package/modules/featured-stories/featured-stories.prototype.js +23 -0
  130. package/modules/featured-stories/featured-stories.twig +18 -0
  131. package/modules/footer/README.md +15 -0
  132. package/modules/footer/footer.prototype.js +14 -0
  133. package/modules/footer/footer.twig +22 -0
  134. package/modules/footer-button-list/footer-button-list.prototype.js +43 -0
  135. package/modules/footer-button-list/footer-button-list.twig +13 -0
  136. package/modules/footer-magazine-image/footer-magazine-image.prototype.js +15 -0
  137. package/modules/footer-magazine-image/footer-magazine-image.twig +3 -0
  138. package/modules/footer-menus/README.md +3 -0
  139. package/modules/footer-menus/footer-menus.prototype.js +18 -0
  140. package/modules/footer-menus/footer-menus.twig +5 -0
  141. package/modules/footer-newsletter/README.md +5 -0
  142. package/modules/footer-newsletter/footer-newsletter.prototype.js +21 -0
  143. package/modules/footer-newsletter/footer-newsletter.twig +5 -0
  144. package/modules/footer-social/README.md +3 -0
  145. package/modules/footer-social/footer-social.prototype.js +36 -0
  146. package/modules/footer-social/footer-social.twig +5 -0
  147. package/modules/footer-tip/footer-tip.prototype.js +23 -0
  148. package/modules/footer-tip/footer-tip.twig +5 -0
  149. package/modules/header/header.article.js +39 -0
  150. package/modules/header/header.prototype.js +90 -0
  151. package/modules/header/header.twig +74 -0
  152. package/modules/header-menu/header-menu.prototype.js +26 -0
  153. package/modules/header-menu/header-menu.twig +3 -0
  154. package/modules/header-sticky/header-sticky.article.js +43 -0
  155. package/modules/header-sticky/header-sticky.prototype.js +39 -0
  156. package/modules/header-sticky/header-sticky.twig +30 -0
  157. package/modules/heading/heading.h1.js +8 -0
  158. package/modules/heading/heading.h2.js +8 -0
  159. package/modules/heading/heading.h3.js +8 -0
  160. package/modules/heading/heading.h4.js +7 -0
  161. package/modules/heading/heading.h5.js +7 -0
  162. package/modules/heading/heading.h6.js +7 -0
  163. package/modules/heading/heading.prototype.js +9 -0
  164. package/modules/heading/heading.twig +3 -0
  165. package/modules/injected-related-content/injected-related-content.prototype.js +61 -0
  166. package/modules/injected-related-content/injected-related-content.twig +23 -0
  167. package/modules/list/list.ordered.js +7 -0
  168. package/modules/list/list.prototype.js +57 -0
  169. package/modules/list/list.twig +11 -0
  170. package/modules/listicle-item/listicle-item.prototype.js +11 -0
  171. package/modules/listicle-item/listicle-item.twig +3 -0
  172. package/modules/mega-menu/mega-menu.prototype.js +16 -0
  173. package/modules/mega-menu/mega-menu.twig +10 -0
  174. package/modules/mega-menu-content/mega-menu-content.prototype.js +10 -0
  175. package/modules/mega-menu-content/mega-menu-content.twig +5 -0
  176. package/modules/mega-menu-footer/mega-menu-footer.prototype.js +41 -0
  177. package/modules/mega-menu-footer/mega-menu-footer.twig +19 -0
  178. package/modules/mega-menu-footer-subscribe/mega-menu-footer-subscribe.prototype.js +20 -0
  179. package/modules/mega-menu-footer-subscribe/mega-menu-footer-subscribe.twig +4 -0
  180. package/modules/mega-menu-item/mega-menu-item.prototype.js +23 -0
  181. package/modules/mega-menu-item/mega-menu-item.twig +13 -0
  182. package/modules/more-stories-button/more-stories-button.profile.js +12 -0
  183. package/modules/more-stories-button/more-stories-button.prototype.js +29 -0
  184. package/modules/more-stories-button/more-stories-button.twig +13 -0
  185. package/modules/newsletter/newsletter.prototype.js +46 -0
  186. package/modules/newsletter/newsletter.twig +21 -0
  187. package/modules/newsletter-cta/newsletter-cta.prototype.js +21 -0
  188. package/modules/newsletter-cta/newsletter-cta.twig +22 -0
  189. package/modules/newswire/newswire.prototype.js +46 -0
  190. package/modules/newswire/newswire.twig +16 -0
  191. package/modules/paragraph/paragraph.prototype.js +8 -0
  192. package/modules/paragraph/paragraph.twig +3 -0
  193. package/modules/pmc-footer/README.md +3 -0
  194. package/modules/pmc-footer/pmc-footer.prototype.js +47 -0
  195. package/modules/pmc-footer/pmc-footer.twig +17 -0
  196. package/modules/post-content-image/post-content-image.prototype.js +14 -0
  197. package/modules/post-content-image/post-content-image.twig +3 -0
  198. package/modules/profile-blurb/profile-blurb.card.js +28 -0
  199. package/modules/profile-blurb/profile-blurb.prototype.js +45 -0
  200. package/modules/profile-blurb/profile-blurb.twig +37 -0
  201. package/modules/profile-body/profile-body.prototype.js +20 -0
  202. package/modules/profile-body/profile-body.twig +15 -0
  203. package/modules/profile-browse-by/profile-browse-by.prototype.js +29 -0
  204. package/modules/profile-browse-by/profile-browse-by.twig +6 -0
  205. package/modules/profile-card-list/profile-card-list.prototype.js +25 -0
  206. package/modules/profile-card-list/profile-card-list.twig +7 -0
  207. package/modules/profile-filter/profile-filter.prototype.js +26 -0
  208. package/modules/profile-filter/profile-filter.twig +15 -0
  209. package/modules/profile-gallery/profile-gallery.prototype.js +28 -0
  210. package/modules/profile-gallery/profile-gallery.twig +13 -0
  211. package/modules/profile-header/profile-header.prototype.js +29 -0
  212. package/modules/profile-header/profile-header.twig +27 -0
  213. package/modules/profile-highlights/profile-highlights.prototype.js +22 -0
  214. package/modules/profile-highlights/profile-highlights.twig +17 -0
  215. package/modules/profile-landing-header/profile-landing-header.prototype.js +17 -0
  216. package/modules/profile-landing-header/profile-landing-header.twig +12 -0
  217. package/modules/profile-landing-river/profile-landing-river.prototype.js +21 -0
  218. package/modules/profile-landing-river/profile-landing-river.twig +13 -0
  219. package/modules/profile-related-stories/profile-related-stories.prototype.js +33 -0
  220. package/modules/profile-related-stories/profile-related-stories.twig +9 -0
  221. package/modules/pullquote/pullquote.prototype.js +8 -0
  222. package/modules/pullquote/pullquote.twig +3 -0
  223. package/modules/read-next/read-next.prototype.js +20 -0
  224. package/modules/read-next/read-next.twig +4 -0
  225. package/modules/search-form/search-form.prototype.js +8 -0
  226. package/modules/search-form/search-form.twig +11 -0
  227. package/modules/secondary-stories/secondary-stories.prototype.js +119 -0
  228. package/modules/secondary-stories/secondary-stories.twig +22 -0
  229. package/modules/separator/separator.prototype.js +4 -0
  230. package/modules/separator/separator.thick.js +7 -0
  231. package/modules/separator/separator.twig +1 -0
  232. package/modules/separator/separator.wide-thick.js +7 -0
  233. package/modules/separator/separator.wide.js +7 -0
  234. package/modules/social-share/social-share.prototype.js +43 -0
  235. package/modules/social-share/social-share.twig +30 -0
  236. package/modules/special-coverage/special-coverage.prototype.js +47 -0
  237. package/modules/special-coverage/special-coverage.twig +29 -0
  238. package/modules/story/story.borders.js +8 -0
  239. package/modules/story/story.center-vertical-borders.js +7 -0
  240. package/modules/story/story.center-vertical.js +11 -0
  241. package/modules/story/story.prototype.js +43 -0
  242. package/modules/story/story.right-borders.js +9 -0
  243. package/modules/story/story.right.js +14 -0
  244. package/modules/story/story.story-arc.js +9 -0
  245. package/modules/story/story.twig +88 -0
  246. package/modules/story/story.vertical-borders.js +7 -0
  247. package/modules/story/story.vertical.js +11 -0
  248. package/modules/story-arc-stories/story-arc-stories.prototype.js +21 -0
  249. package/modules/story-arc-stories/story-arc-stories.twig +14 -0
  250. package/modules/story-featured-quote/story-featured-quote.prototype.js +32 -0
  251. package/modules/story-featured-quote/story-featured-quote.twig +25 -0
  252. package/modules/story-grid/story-grid.prototype.js +24 -0
  253. package/modules/story-grid/story-grid.river.js +15 -0
  254. package/modules/story-grid/story-grid.twig +17 -0
  255. package/modules/sub-header/sub-header.prototype.js +8 -0
  256. package/modules/sub-header/sub-header.twig +7 -0
  257. package/modules/top-stories/top-stories.prototype.js +41 -0
  258. package/modules/top-stories/top-stories.twig +12 -0
  259. package/modules/vlanding-playlist/README.md +1 -0
  260. package/modules/vlanding-playlist/vlanding-playlist.prototype.js +34 -0
  261. package/modules/vlanding-playlist/vlanding-playlist.twig +20 -0
  262. package/modules/vlanding-video-card/README.md +1 -0
  263. package/modules/vlanding-video-card/vlanding-video-card.prototype.js +25 -0
  264. package/modules/vlanding-video-card/vlanding-video-card.twig +56 -0
  265. package/modules/vlanding-video-showcase/README.md +12 -0
  266. package/modules/vlanding-video-showcase/vlanding-video-showcase.prototype.js +68 -0
  267. package/modules/vlanding-video-showcase/vlanding-video-showcase.twig +46 -0
  268. package/objects/o-account-menu/o-account-menu.prototype.js +35 -0
  269. package/objects/o-account-menu/o-account-menu.twig +25 -0
  270. package/objects/o-author/o-author.prototype.js +13 -0
  271. package/objects/o-author/o-author.twig +13 -0
  272. package/objects/o-card/README.md +1 -0
  273. package/objects/o-card/o-card.prototype.js +25 -0
  274. package/objects/o-card/o-card.twig +75 -0
  275. package/objects/o-card-list/README.md +3 -0
  276. package/objects/o-card-list/o-card-list.prototype.js +13 -0
  277. package/objects/o-card-list/o-card-list.twig +7 -0
  278. package/objects/o-checkbox-input-list/o-checkbox-input-list.prototype.js +16 -0
  279. package/objects/o-checkbox-input-list/o-checkbox-input-list.twig +15 -0
  280. package/objects/o-collection-item/o-collection-item.floated.js +8 -0
  281. package/objects/o-collection-item/o-collection-item.prototype.js +11 -0
  282. package/objects/o-collection-item/o-collection-item.twig +5 -0
  283. package/objects/o-email-capture-form/README.md +11 -0
  284. package/objects/o-email-capture-form/o-email-capture-form.minimal.js +15 -0
  285. package/objects/o-email-capture-form/o-email-capture-form.prototype.js +17 -0
  286. package/objects/o-email-capture-form/o-email-capture-form.twig +16 -0
  287. package/objects/o-figure/README.md +17 -0
  288. package/objects/o-figure/o-figure.prototype.js +16 -0
  289. package/objects/o-figure/o-figure.twig +34 -0
  290. package/objects/o-header/o-header.prototype.js +14 -0
  291. package/{src/objects → objects}/o-header/o-header.twig +5 -1
  292. package/objects/o-header-buttons/o-header-buttons.column.js +10 -0
  293. package/objects/o-header-buttons/o-header-buttons.prototype.js +41 -0
  294. package/objects/o-header-buttons/o-header-buttons.twig +42 -0
  295. package/objects/o-icon-button/README.md +5 -0
  296. package/objects/o-icon-button/o-icon-button.prototype.js +18 -0
  297. package/objects/o-icon-button/o-icon-button.search.js +9 -0
  298. package/objects/o-icon-button/o-icon-button.twig +21 -0
  299. package/objects/o-indicator/README.md +1 -0
  300. package/objects/o-indicator/o-indicator.photos.js +12 -0
  301. package/objects/o-indicator/o-indicator.prototype.js +8 -0
  302. package/objects/o-indicator/o-indicator.twig +9 -0
  303. package/objects/o-input-group/o-input-group.prototype.js +11 -0
  304. package/objects/o-input-group/o-input-group.twig +5 -0
  305. package/objects/o-nav/README.md +3 -0
  306. package/objects/o-nav/o-nav.horizontal.js +8 -0
  307. package/objects/o-nav/o-nav.prototype.js +23 -0
  308. package/objects/o-nav/o-nav.twig +40 -0
  309. package/objects/o-select-nav/o-select-nav.prototype.js +17 -0
  310. package/objects/o-select-nav/o-select-nav.twig +9 -0
  311. package/objects/o-social-list/o-social-list.prototype.js +23 -0
  312. package/objects/o-social-list/o-social-list.twig +15 -0
  313. package/objects/o-span-group/README.md +1 -0
  314. package/objects/o-span-group/o-span-group.prototype.js +11 -0
  315. package/objects/o-span-group/o-span-group.twig +5 -0
  316. package/objects/o-sponsored-by/o-sponsored-by.prototype.js +10 -0
  317. package/{src/objects → objects}/o-sponsored-by/o-sponsored-by.twig +2 -2
  318. package/objects/o-story-arc-item/o-story-arc-item.prototype.js +29 -0
  319. package/objects/o-story-arc-item/o-story-arc-item.twig +9 -0
  320. package/objects/o-sub-header/o-sub-header.prototype.js +39 -0
  321. package/objects/o-sub-header/o-sub-header.twig +9 -0
  322. package/objects/o-tease/o-tease.prototype.js +26 -0
  323. package/{src/objects → objects}/o-tease/o-tease.twig +7 -3
  324. package/objects/o-tease-list/o-tease-list.prototype.js +14 -0
  325. package/{src/objects → objects}/o-tease-list/o-tease-list.twig +5 -1
  326. package/package.json +7 -12
  327. package/pattern.html +68 -0
  328. package/style-guide/colors.html +33 -0
  329. package/style-guide/fonts.html +22 -0
  330. package/style-guide/index.html +14 -0
  331. package/src/components/.DS_Store +0 -0
  332. package/src/components/c-button/.DS_Store +0 -0
  333. package/src/components/c-button/c-button.prototype.js +0 -5
  334. package/src/components/c-button/c-button.scss +0 -33
  335. package/src/components/c-button/c-button.twig +0 -13
  336. package/src/components/c-heading/.DS_Store +0 -0
  337. package/src/components/c-heading/c-heading.prototype.js +0 -5
  338. package/src/components/c-heading/c-heading.scss +0 -12
  339. package/src/components/c-heading/c-heading.twig +0 -20
  340. package/src/components/c-label/.DS_Store +0 -0
  341. package/src/components/c-label/c-label.prototype.js +0 -8
  342. package/src/components/c-label/c-label.twig +0 -11
  343. package/src/components/c-nav-link/c-nav-link.prototype.js +0 -6
  344. package/src/components/c-nav-link/c-nav-link.scss +0 -14
  345. package/src/components/c-nav-link/c-nav-link.twig +0 -3
  346. package/src/components/c-tagline/.DS_Store +0 -0
  347. package/src/components/c-tagline/c-tagline.json +0 -4
  348. package/src/components/c-tagline/c-tagline.scss +0 -19
  349. package/src/components/c-timestamp/.DS_Store +0 -0
  350. package/src/components/c-timestamp/c-timestamp.prototype.js +0 -5
  351. package/src/components/c-timestamp/c-timestamp.scss +0 -5
  352. package/src/components/c-timestamp/c-timestamp.twig +0 -1
  353. package/src/components/c-title/.DS_Store +0 -0
  354. package/src/components/c-title/c-title.prototype.js +0 -5
  355. package/src/components/c-title/c-title.scss +0 -30
  356. package/src/components/components.scss +0 -1
  357. package/src/objects/.DS_Store +0 -0
  358. package/src/objects/o-figure/.DS_Store +0 -0
  359. package/src/objects/o-figure/o-figure.prototype.js +0 -8
  360. package/src/objects/o-figure/o-figure.scss +0 -46
  361. package/src/objects/o-figure/o-figure.twig +0 -57
  362. package/src/objects/o-header/.DS_Store +0 -0
  363. package/src/objects/o-header/o-header.prototype.js +0 -12
  364. package/src/objects/o-header/o-header.scss +0 -5
  365. package/src/objects/o-nav/o-nav.prototype.js +0 -20
  366. package/src/objects/o-nav/o-nav.scss +0 -41
  367. package/src/objects/o-nav/o-nav.twig +0 -14
  368. package/src/objects/o-sponsored-by/.DS_Store +0 -0
  369. package/src/objects/o-sponsored-by/o-sponsored-by.prototype.js +0 -11
  370. package/src/objects/o-sponsored-by/o-sponsored-by.scss +0 -5
  371. package/src/objects/o-tease/.DS_Store +0 -0
  372. package/src/objects/o-tease/o-tease.prototype.js +0 -22
  373. package/src/objects/o-tease/o-tease.scss +0 -30
  374. package/src/objects/o-tease-list/.DS_Store +0 -0
  375. package/src/objects/o-tease-list/o-tease-list.prototype.js +0 -25
  376. package/src/objects/o-tease-list/o-tease-list.scss +0 -11
  377. package/src/objects/objects.scss +0 -1
@@ -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,3 @@
1
+ <div class="header-menu // {{ header_menu_classes }}">
2
+ {% include "@larva/objects/o-nav/o-nav.twig" with o_nav %}
3
+ </div>
@@ -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>
@@ -0,0 +1,8 @@
1
+ const clonedeep = require( 'lodash.clonedeep' );
2
+
3
+ const heading = clonedeep( require( './heading.prototype' ) );
4
+
5
+ heading.heading_typography_class = 'lrv-a-font-primary-xl';
6
+ heading.heading_level_text = '1';
7
+
8
+ module.exports = heading;
@@ -0,0 +1,8 @@
1
+ const clonedeep = require( 'lodash.clonedeep' );
2
+
3
+ const heading = clonedeep( require( './heading.prototype' ) );
4
+
5
+ heading.heading_typography_class = 'lrv-a-font-accent-l';
6
+ heading.heading_level_text = '2';
7
+
8
+ module.exports = heading;
@@ -0,0 +1,8 @@
1
+ const clonedeep = require( 'lodash.clonedeep' );
2
+
3
+ const heading = clonedeep( require( './heading.prototype' ) );
4
+
5
+ heading.heading_typography_class = 'lrv-a-font-secondary-l';
6
+ heading.heading_level_text = '3';
7
+
8
+ module.exports = heading;
@@ -0,0 +1,7 @@
1
+ const clonedeep = require( 'lodash.clonedeep' );
2
+
3
+ const heading = clonedeep( require( './heading.prototype' ) );
4
+
5
+ heading.heading_level_text = '4';
6
+
7
+ module.exports = heading;
@@ -0,0 +1,7 @@
1
+ const clonedeep = require( 'lodash.clonedeep' );
2
+
3
+ const heading = clonedeep( require( './heading.prototype' ) );
4
+
5
+ heading.heading_level_text = '5';
6
+
7
+ module.exports = heading;
@@ -0,0 +1,7 @@
1
+ const clonedeep = require( 'lodash.clonedeep' );
2
+
3
+ const heading = clonedeep( require( './heading.prototype' ) );
4
+
5
+ heading.heading_level_text = '6';
6
+
7
+ module.exports = heading;
@@ -0,0 +1,9 @@
1
+ module.exports = {
2
+ heading_level_text: '3',
3
+ heading_classes: '',
4
+ heading_color_class: '',
5
+ heading_text_align_class: '',
6
+ heading_typography_class: 'lrv-a-font-primary-m',
7
+ heading_background_color_class: '',
8
+ heading_markup: 'Heading Text'
9
+ };
@@ -0,0 +1,3 @@
1
+ {% if heading_markup %}
2
+ <h{{ heading_level_text }} class="heading larva // {{ heading_classes }} {{ heading_typography_class }} {{ heading_color_class }} {{ heading_background_color_class }} {{ heading_text_align_class }}">{{ heading_markup }}</h{{ heading_level_text }}>
3
+ {% endif %}
@@ -0,0 +1,61 @@
1
+ const clonedeep = require('lodash.clonedeep');
2
+
3
+ const c_title_prototype = require('../../components/c-title/c-title.prototype');
4
+ const c_heading = clonedeep(c_title_prototype);
5
+
6
+ c_heading.c_title_text = 'Related';
7
+ c_heading.c_title_classes = 'lrv-a-font-primary-xxxs lrv-u-font-weight-bold lrv-u-color-black lrv-u-text-transform-uppercase lrv-u-border-b-1 lrv-u-padding-b-050 ';
8
+ c_heading.c_title_url = false;
9
+
10
+ const c_title = clonedeep(c_title_prototype);
11
+
12
+ c_title.c_title_text = 'Chronixx Says Some Dancehall Lyrics Are ‘Embarrassing’, Artists Should Stop Calling Him For Features';
13
+ c_title.c_title_classes = 'lrv-a-font-primary-xs lrv-u-color-black lrv-u-padding-t-125';
14
+ c_title.c_title_link_classes = 'lrv-a-font-primary-xs lrv-u-color-black lrv-a-truncate-ellipsis-4line@mobile-max lrv-a-truncate-ellipsis-5line@tablet-desktop-only lrv-a-truncate-ellipsis-3line@desktop-xl';
15
+ c_title.c_title_url = '#';
16
+
17
+ const c_lazy_image_prototype = require('../../components/c-lazy-image/c-lazy-image.prototype.js');
18
+ const c_lazy_image = clonedeep(c_lazy_image_prototype);
19
+
20
+ c_lazy_image.c_lazy_image_classes = 'lrv-a-floated-right@tablet lrv-u-width-154@desktop-xl lrv-u-width-177@tablet-and-desktop-only lrv-u-margin-l-125 lrv-u-margin-t-150@mobile-max lrv-u-margin-l-00@mobile-max';
21
+ c_lazy_image.c_lazy_image_crop_class = 'lrv-a-crop-1x1@tablet';
22
+
23
+ const o_card_prototype = require('../../objects/o-card/o-card.prototype');
24
+ const o_card_first = clonedeep(o_card_prototype);
25
+
26
+ o_card_first.o_card_classes = '';
27
+ o_card_first.c_title.c_title_text = 'Chronixx Draws Inspiration From These Capleton Lyrics';
28
+ o_card_first.c_title.c_title_classes = 'lrv-a-font-primary-xxxs lrv-u-color-black lrv-u-border-b-1 lrv-u-border-t-1@desktop-xl-max lrv-u-padding-b-1 lrv-u-padding-t-00@desktop-xl lrv-u-padding-t-1 ';
29
+ o_card_first.c_title.c_title_link_classes = 'lrv-a-font-primary-xxxs lrv-u-color-black lrv-a-truncate-ellipsis-3line@desktop-xl lrv-a-truncate-ellipsis-1line@tablet-desktop-only lrv-a-truncate-ellipsis-2line@mobile-max';
30
+ o_card_first.c_title.c_title_url = '#';
31
+ o_card_first.c_lazy_image = false;
32
+ o_card_first.c_span = false;
33
+ o_card_first.c_timestamp = false;
34
+ o_card_first.o_card_tag_text = 'div';
35
+
36
+ const o_card_last = clonedeep(o_card_prototype);
37
+
38
+ o_card_last.o_card_classes = '';
39
+ o_card_last.c_title.c_title_text = 'Chronixx calls for change in new video “Safe N Sound”';
40
+ o_card_last.c_title.c_title_classes = 'lrv-a-font-primary-xxxs lrv-u-color-black lrv-u-padding-b-00@desktop-xl lrv-u-padding-b-1 lrv-u-padding-t-1';
41
+ o_card_last.c_title.c_title_link_classes = 'lrv-a-font-primary-xxxs lrv-u-color-black lrv-a-truncate-ellipsis-3line@desktop-xl lrv-a-truncate-ellipsis-1line@tablet-desktop-only lrv-a-truncate-ellipsis-2line@mobile-max';
42
+ o_card_last.c_title.c_title_url = '#';
43
+ o_card_last.c_lazy_image = false;
44
+ o_card_last.c_span = false;
45
+ o_card_last.c_timestamp = false;
46
+ o_card_last.o_card_tag_text = 'div';
47
+
48
+ module.exports = {
49
+ injected_related_content_classes: 'lrv-u-border-t-1 lrv-u-padding-t-025',
50
+ injected_related_content_inner_classes: 'lrv-u-flex lrv-u-flex-direction-column@desktop-xl-max lrv-u-border-b-1 lrv-u-border-t-1 lrv-u-padding-b-150@desktop-xl lrv-u-padding-t-150',
51
+ injected_related_content_primary_classes: 'lrv-u-padding-b-1@mobile-max lrv-u-padding-b-150 lrv-u-padding-b-00@desktop-xl lrv-u-width-64p@desktop-xl',
52
+ injected_related_content_heading_classes: 'lrv-u-padding-b-00@desktop-xl lrv-u-display-inline-block',
53
+ injected_related_content_secondary_classes: 'lrv-u-padding-l-125@desktop-xl lrv-u-width-36p@desktop-xl lrv-u-flex lrv-u-flex-direction-column lrv-u-justify-content-center',
54
+ c_heading,
55
+ c_title,
56
+ c_lazy_image,
57
+ o_card_items: [
58
+ o_card_first,
59
+ o_card_last
60
+ ]
61
+ };
@@ -0,0 +1,23 @@
1
+ <div class="injected-related-content // {{injected_related_content_classes}}" >
2
+ <div class="injected-related-content-inner // {{injected_related_content_inner_classes}}">
3
+ <div class="injected-related-content-primary // {{injected_related_content_primary_classes}}">
4
+ <div class="injected-related-content-heading // {{injected_related_content_heading_classes}}">
5
+ {% include "@larva/components/c-title/c-title.twig" with c_heading %}
6
+ </div>
7
+ {% if c_lazy_image %}
8
+ {% include "@larva/components/c-lazy-image/c-lazy-image.twig" with c_lazy_image %}
9
+ {% endif %}
10
+
11
+ {% if c_title %}
12
+ {% include "@larva/components/c-title/c-title.twig" with c_title %}
13
+ {% endif %}
14
+
15
+ </div>
16
+ <div class="injected-related-content-secondary // {{injected_related_content_secondary_classes}}">
17
+ {% for item in o_card_items %}
18
+ {% include "@larva/objects/o-card/o-card.twig" with item %}
19
+ {% endfor %}
20
+ </div>
21
+ </div>
22
+ </div>
23
+
@@ -0,0 +1,7 @@
1
+ const clonedeep = require( 'lodash.clonedeep' );
2
+
3
+ const list = clonedeep( require( './list.prototype' ) );
4
+
5
+ list.list_type_name = 'o';
6
+
7
+ module.exports = list;
@@ -0,0 +1,57 @@
1
+ module.exports = {
2
+ list_classes: 'a-font-body-m',
3
+ list_markup: 'Paragraph Text.',
4
+ list_type_name: 'u',
5
+ list_items: [
6
+ {
7
+ list_markup: 'item_one',
8
+ },
9
+ {
10
+ list_markup: 'item_two',
11
+ },
12
+ {
13
+ list_classes: 'a-font-body-m',
14
+ list_markup: 'Paragraph Text with sub items woo.',
15
+ list_type_name: 'u',
16
+ list_item_classes: '',
17
+ list_items: [
18
+ {
19
+ list_markup: 'sub_item_one',
20
+ },
21
+ {
22
+ list_markup: 'sub_item_two',
23
+ },
24
+ {
25
+ list_classes: 'a-font-body-m',
26
+ list_markup: 'Paragraph Text.',
27
+ list_type_name: 'u',
28
+ list_item_classes: '',
29
+ list_items: [
30
+ {
31
+ list_markup: 'sub_sub_item_one',
32
+ },
33
+ {
34
+ list_markup: 'sub_sub_item_two',
35
+ },
36
+ {
37
+ list_classes: 'a-font-body-m',
38
+ list_markup: 'Paragraph Text.',
39
+ list_type_name: 'u',
40
+ list_item_classes: '',
41
+ list_items: [
42
+ {
43
+ list_markup: 'sub_sub_sub_item_one',
44
+ },
45
+ {
46
+ list_markup: 'sub_sub_sub_item_two',
47
+ },
48
+ ]
49
+ }
50
+
51
+ ]
52
+ }
53
+ ]
54
+ }
55
+ ],
56
+ list_item_classes: ''
57
+ };
@@ -0,0 +1,11 @@
1
+ <{{ list_type_name }}l class="list larva // {{ list_classes }}">
2
+ {% for item in list_items %}
3
+ <li class="list__item larva // {{ list_item_classes }}">
4
+ {{ item['list_markup'] }}
5
+
6
+ {% if item['list_items'] %}
7
+ {% include "@larva/modules/list/list.twig" with item %}
8
+ {% endif %}
9
+ </li>
10
+ {% endfor %}
11
+ </{{ list_type_name }}l>
@@ -0,0 +1,11 @@
1
+ const clonedeep = require( 'lodash.clonedeep' );
2
+
3
+ const o_collection_item = clonedeep( require( '../../objects/o-collection-item/o-collection-item.prototype' ) );
4
+
5
+ o_collection_item.o_collection_item_classes = 'a-floated-parent';
6
+ o_collection_item.o_figure.o_figure_classes = 'a-floated-left@tablet lrv-u-padding-r-1@tablet';
7
+
8
+ module.exports = {
9
+ listicle_item_classes: 'lrv-a-wrapper',
10
+ o_collection_item: o_collection_item
11
+ };
@@ -0,0 +1,3 @@
1
+ <section class="listicle-item // {{ listicle_item_classes }}">
2
+ {% include "@larva/objects/o-collection-item/o-collection-item.twig" with o_collection_item %}
3
+ </section>
@@ -0,0 +1,16 @@
1
+ const clonedeep = require( 'lodash.clonedeep' );
2
+
3
+ const mega_menu_footer_prototype = require( '../mega-menu-footer/mega-menu-footer.prototype.js' );
4
+ const mega_menu_footer = clonedeep( mega_menu_footer_prototype );
5
+
6
+ const mega_menu_content_prototype = require( '../mega-menu-content/mega-menu-content.prototype.js' );
7
+ const mega_menu_content = clonedeep( mega_menu_content_prototype );
8
+
9
+ module.exports = {
10
+ mega_menu_footer,
11
+ mega_menu_content,
12
+ mega_menu_classes: '',
13
+ mega_menu_outer_classes: 'lrv-a-wrapper',
14
+ mega_menu_inner_classes: 'lrv-u-background-color-white lrv-u-flex lrv-u-flex-direction-column lrv-u-border-b-2 lrv-u-border-r-2 lrv-u-border-l-2',
15
+ mega_menu_content_outer_classes: 'lrv-u-background-color-white lrv-u-padding-a-150 lrv-u-width-100p',
16
+ };
@@ -0,0 +1,10 @@
1
+ <nav class="mega-menu // js-MegaMenu {{ mega_menu_classes }} ">
2
+ <div class="mega-menu-outer // {{ mega_menu_outer_classes }} ">
3
+ <div class="mega-menu-inner // {{ mega_menu_inner_classes }} ">
4
+ <div class="mega-menu-content-outer // {{ mega_menu_content_outer_classes }} ">
5
+ {% include "@larva/modules/mega-menu-content/mega-menu-content.twig" with mega_menu_content %}
6
+ </div>
7
+ {% include "@larva/modules/mega-menu-footer/mega-menu-footer.twig" with mega_menu_footer %}
8
+ </div>
9
+ </div>
10
+ </nav>
@@ -0,0 +1,10 @@
1
+ const clonedeep = require( 'lodash.clonedeep' );
2
+ const mega_menu_item = clonedeep( require( '../mega-menu-item/mega-menu-item.prototype' ) );
3
+
4
+ module.exports = {
5
+ mega_menu_content_items: [
6
+ mega_menu_item,
7
+ mega_menu_item,
8
+ ],
9
+ mega_menu_content_classes: 'lrv-u-flex lrv-u-flex-wrap-wrap lrv-a-unstyle-list lrv-u-background-color-white lrv-a-space-children--050 lrv-a-space-children-horizontal '
10
+ };
@@ -0,0 +1,5 @@
1
+ <ul class="mega-menu-content // mega-menu__parent-list {{ mega_menu_content_classes }} ">
2
+ {% for item in mega_menu_content_items %}
3
+ {% include "@larva/modules/mega-menu-item/mega-menu-item.twig" with item %}
4
+ {% endfor %}
5
+ </ul>