@penskemediacorp/larva-patterns 1.52.0 → 1.54.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/algorithms/a-term-content-grid/README.md +1 -0
- package/algorithms/a-term-content-grid/a-term-content-grid.html +27 -0
- package/algorithms/a-term-content-grid/a-term-content-grid.prototype.js +11 -0
- package/modules/author-details/author-details.prototype.js +5 -5
- package/modules/fact-list/README.md +1 -0
- package/modules/fact-list/fact-list.prototype.js +21 -0
- package/modules/fact-list/fact-list.twig +14 -0
- package/modules/fact-list-item/README.md +1 -0
- package/modules/fact-list-item/fact-list-item.prototype.js +28 -0
- package/modules/fact-list-item/fact-list-item.thumbnail.js +13 -0
- package/modules/fact-list-item/fact-list-item.twig +17 -0
- package/modules/fact-list-menu/README.md +1 -0
- package/modules/fact-list-menu/fact-list-menu.prototype.js +40 -0
- package/modules/fact-list-menu/fact-list-menu.twig +11 -0
- package/modules/tag-list/README.md +1 -0
- package/modules/tag-list/tag-list.prototype.js +42 -0
- package/modules/tag-list/tag-list.thumbnail.js +49 -0
- package/modules/tag-list/tag-list.twig +16 -0
- package/modules/term-content-top/README.md +1 -0
- package/modules/term-content-top/term-content-top.heading-tags.js +14 -0
- package/modules/term-content-top/term-content-top.prototype.js +73 -0
- package/modules/term-content-top/term-content-top.twig +22 -0
- package/package.json +5 -5
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Layout pattern for Term Content Top module.
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
<div class="lrv-a-wrapper">
|
|
2
|
+
<div class="{{ term_content_grid_layout_class }}">
|
|
3
|
+
<div class="lrv-a-term-content-grid__primary lrv-u-padding-a-1 \\ {{ term_content_grid_primary_class }}">
|
|
4
|
+
<div style="background-color: #f7f7f7; height: 300px;"></div>
|
|
5
|
+
</div>
|
|
6
|
+
|
|
7
|
+
<div class="{{ term_content_grid_secondary_class }} lrv-u-padding-a-1">
|
|
8
|
+
<ul class="{{ term_content_grid_fact_list_menu_class }}">
|
|
9
|
+
<li><a href="#">Link 1</a></li>
|
|
10
|
+
<li><a href="#">Link 2</a></li>
|
|
11
|
+
</ul>
|
|
12
|
+
<div>Magna hexagon stumptown pork belly paleo tilde.</div>
|
|
13
|
+
<div>Cat ipsum dolor sit amet, Why dog in house?</div>
|
|
14
|
+
</div>
|
|
15
|
+
|
|
16
|
+
<div class="{{ term_content_grid_tertiary_class }} lrv-u-padding-a-1">
|
|
17
|
+
<div>Cat ipsum dolor sit amet, Why dog in house?</div>
|
|
18
|
+
<div class="{{ term_content_grid_fact_list_class }}">
|
|
19
|
+
<div class="{{ term_content_grid_fact_list_item_class }}">
|
|
20
|
+
<dt class="{{ term_content_grid_fact_list_dt_class }}">Definition Term, column 1</dt>
|
|
21
|
+
<dd class="{{ term_content_grid_fact_list_dd_class }}">Definition Description 1, column 2</dd>
|
|
22
|
+
<dd class="{{ term_content_grid_fact_list_dd_class }}">Definition Description 2, column 2</dd>
|
|
23
|
+
</div>
|
|
24
|
+
</div>
|
|
25
|
+
</div>
|
|
26
|
+
</div>
|
|
27
|
+
</div>
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
module.exports = {
|
|
2
|
+
term_content_grid_layout_class: 'lrv-a-term-content-grid',
|
|
3
|
+
term_content_grid_primary_class: 'lrv-a-term-content-grid__primary',
|
|
4
|
+
term_content_grid_secondary_class: 'lrv-a-term-content-grid__secondary',
|
|
5
|
+
term_content_grid_tertiary_class: 'lrv-a-term-content-grid__tertiary',
|
|
6
|
+
term_content_grid_fact_list_class: 'lrv-a-term-content-grid__fact-list',
|
|
7
|
+
term_content_grid_fact_list_item_class: 'lrv-a-term-content-grid__fact-list-item',
|
|
8
|
+
term_content_grid_fact_list_dt_class: 'lrv-a-term-content-grid__fact-list-dt',
|
|
9
|
+
term_content_grid_fact_list_dd_class: 'lrv-a-term-content-grid__fact-list-dd',
|
|
10
|
+
term_content_grid_fact_list_menu_class: 'lrv-a-term-content-grid__fact-list-menu',
|
|
11
|
+
};
|
|
@@ -29,18 +29,18 @@ for ( let i = 0; i < storyTitles.length; i++ ) {
|
|
|
29
29
|
}
|
|
30
30
|
|
|
31
31
|
c_title.c_title_classes =
|
|
32
|
-
'lrv-u-
|
|
32
|
+
'lrv-u-margin-r-auto lrv-u-width-100 lrv-u-font-size-13 lrv-u-font-weight-bold lrv-u-text-transform-uppercase';
|
|
33
33
|
c_title.c_title_url = '#';
|
|
34
34
|
c_title.c_title_text = 'PATRICIA MESCHINO';
|
|
35
35
|
c_title.c_title_link_classes = 'lrv-u-color-black';
|
|
36
36
|
|
|
37
37
|
o_nav.o_nav_classes =
|
|
38
|
-
'lrv-u-
|
|
38
|
+
'lrv-u-margin-t-075 lrv-u-border-t-1 lrv-u-padding-t-025 lrv-u-width-100p ';
|
|
39
39
|
o_nav.o_nav_title_text = '';
|
|
40
40
|
o_nav.o_nav_title_classes =
|
|
41
41
|
'lrv-u-padding-t-050 lrv-u-padding-b-025 lrv-u-font-family-primary lrv-u-font-size-20';
|
|
42
42
|
o_nav.o_nav_list_classes =
|
|
43
|
-
' lrv-u-
|
|
43
|
+
' lrv-u-border-t-1 lrv-u-border-b-1 lrv-u-padding-t-075 lrv-u-padding-l-1 lrv-u-font-size-13 lrv-u-list-style-type-disclosure-closed';
|
|
44
44
|
o_nav.o_nav_list_item_classes = 'lrv-u-padding-b-075';
|
|
45
45
|
|
|
46
46
|
c_icon_twitter.c_icon_name = 'twitter';
|
|
@@ -61,13 +61,13 @@ c_icon_mail.c_icon_link_classes = 'lrv-u-flex';
|
|
|
61
61
|
|
|
62
62
|
c_link_view_all = clonedeep( c_link_prototype );
|
|
63
63
|
c_link_view_all.c_link_classes =
|
|
64
|
-
'lrv-
|
|
64
|
+
'lrv-u-font-size-10 lrv-u-text-transform-uppercase lrv-a-unstyle-link';
|
|
65
65
|
c_link_view_all.c_link_text = 'View All Stories ▶';
|
|
66
66
|
c_link_view_all.c_link_url = '#';
|
|
67
67
|
|
|
68
68
|
module.exports = {
|
|
69
69
|
author_details_classes:
|
|
70
|
-
'lrv-u-
|
|
70
|
+
'lrv-u-flex lrv-u-flex-wrap-wrap lrv-u-margin-t-1 lrv-u-padding-lr-125 lrv-u-padding-t-125 lrv-u-padding-b-1 lrv-u-border-a-2 lrv-u-width-215 lrv-u-background-color-white lrv-a-glue-parent lrv-a-icon-after-arrow-top-left',
|
|
71
71
|
author_details_icons_classes:
|
|
72
72
|
'lrv-u-flex lrv-u-align-items-center lrv-u-margin-l-auto',
|
|
73
73
|
author_details_view_link_classes: ' lrv-u-flex lrv-u-margin-l-auto',
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Renders a list of `fact-list-item` modules. Module used to add schema data associated with a taxonomy term. Usage is associated with `pmc/term-content` plugin.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
const clonedeep = require( 'lodash.clonedeep' );
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Larva includes.
|
|
5
|
+
*/
|
|
6
|
+
const c_title = clonedeep( require( '@penskemediacorp/larva-patterns/components/c-title/c-title.prototype' ) );
|
|
7
|
+
const fact_list_item = clonedeep( require( '@penskemediacorp/larva-patterns/modules/fact-list-item/fact-list-item.prototype' ) );
|
|
8
|
+
|
|
9
|
+
c_title.c_title_classes = '';
|
|
10
|
+
c_title.c_title_text = 'Fact List';
|
|
11
|
+
c_title.c_title_id_attr = 'fact-list';
|
|
12
|
+
c_title.c_title_url = '';
|
|
13
|
+
|
|
14
|
+
module.exports = {
|
|
15
|
+
c_title,
|
|
16
|
+
fact_list_classes: 'lrv-u-font-family-secondary lrv-u-margin-t-1 lrv-a-term-content-grid__tertiary',
|
|
17
|
+
fact_list_data_attributes: 'itemscope itemprop=Thing itemtype=http://schema.org/Thing',
|
|
18
|
+
fact_list_dl_classes: 'lrv-u-border-t-1 lrv-u-padding-t-1 lrv-u-margin-t-00 lrv-a-term-content-grid__fact-list',
|
|
19
|
+
fact_list_items: [ fact_list_item ],
|
|
20
|
+
fact_list_title_classes: 'lrv-u-margin-b-050 lrv-u-font-size-20',
|
|
21
|
+
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{% if fact_list_items %}
|
|
2
|
+
<div class="fact-list // {{ fact_list_classes }}">
|
|
3
|
+
{% if c_title %}
|
|
4
|
+
<div class="fact-list-title // {{ fact_list_title_classes }}">
|
|
5
|
+
{% include "@larva/components/c-title/c-title.twig" with c_title %}
|
|
6
|
+
</div>
|
|
7
|
+
{% endif %}
|
|
8
|
+
<dl class="fact-list-items // {{ fact_list_dl_classes }}" {{ fact_list_data_attributes }}>
|
|
9
|
+
{% for fact_list_item in fact_list_items %}
|
|
10
|
+
{% include "@larva/modules/fact-list-item/fact-list-item.twig" with fact_list_item %}
|
|
11
|
+
{% endfor %}
|
|
12
|
+
</dl>
|
|
13
|
+
</div>
|
|
14
|
+
{% endif %}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Renders a description term and detail block. These blocks comprise the content of a `fact-list` module. Usage is associated with `pmc/term-content` plugin. A thumbnail variant is available to display a fact list item containing a tag list with images.
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
const clonedeep = require( 'lodash.clonedeep' );
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Larva includes.
|
|
5
|
+
*/
|
|
6
|
+
const c_dek = clonedeep( require( '@penskemediacorp/larva-patterns/components/c-dek/c-dek.prototype' ) );
|
|
7
|
+
const tag_list = clonedeep( require( '@penskemediacorp/larva-patterns/modules/tag-list/tag-list.prototype' ) );
|
|
8
|
+
|
|
9
|
+
c_dek.c_dek_markup = 'Term Content. <em>Rich text</em> <strong>is</strong> <a href="#">supported</a>.';
|
|
10
|
+
c_dek.c_dek_text = '';
|
|
11
|
+
|
|
12
|
+
module.exports = {
|
|
13
|
+
fact_list_item_classes: [
|
|
14
|
+
'lrv-a-cols2@tablet',
|
|
15
|
+
'lrv-u-border-b-1',
|
|
16
|
+
'lrv-u-border-color-grey-light',
|
|
17
|
+
'lrv-u-margin-b-1',
|
|
18
|
+
'lrv-u-padding-b-1',
|
|
19
|
+
'lrv-a-term-content-grid__fact-list-item',
|
|
20
|
+
].join( ' ' ),
|
|
21
|
+
fact_list_item_dd_classes: 'lrv-u-margin-l-00 lrv-a-term-content-grid__fact-list-dd',
|
|
22
|
+
fact_list_item_dd_data_attributes: 'itemprop=Thing itemtype=http://schema.org/Thing',
|
|
23
|
+
fact_list_item_dd_content: { ...c_dek, c_dek_classes: 'lrv-u-margin-tb-00 lrv-u-display-block' },
|
|
24
|
+
fact_list_item_tag_list: tag_list,
|
|
25
|
+
fact_list_item_dd_terms_classes: '',
|
|
26
|
+
fact_list_item_dt_classes: 'lrv-u-font-weight-bold lrv-a-term-content-grid__fact-list-dt',
|
|
27
|
+
fact_list_item_dt_text: 'Term Title',
|
|
28
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
const clonedeep = require( 'lodash.clonedeep' );
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Module includes.
|
|
5
|
+
*/
|
|
6
|
+
const fact_item = clonedeep( require( './fact-list-item.prototype' ) );
|
|
7
|
+
const tag_list = clonedeep( require( '@penskemediacorp/larva-patterns/modules/tag-list/tag-list.thumbnail' ) );
|
|
8
|
+
|
|
9
|
+
fact_item.fact_list_item_tag_list = tag_list;
|
|
10
|
+
|
|
11
|
+
module.exports = {
|
|
12
|
+
...fact_item,
|
|
13
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
<div class="fact-list-item // {{ fact_list_item_classes }}">
|
|
2
|
+
{% if fact_list_item_dt_text %}
|
|
3
|
+
<dt class="fact-list-item-dt // {{ fact_list_item_dt_classes }}">
|
|
4
|
+
{{ fact_list_item_dt_text }}
|
|
5
|
+
</dt>
|
|
6
|
+
{% endif %}
|
|
7
|
+
<dd class="fact-list-item-dd // {{ fact_list_item_dd_classes }}" {{ fact_list_item_dd_data_attributes }}>
|
|
8
|
+
{% if fact_list_item_dd_content %}
|
|
9
|
+
{% include "@larva/components/c-dek/c-dek.twig" with fact_list_item_dd_content %}
|
|
10
|
+
{% endif %}
|
|
11
|
+
{% if fact_list_item_tag_list %}
|
|
12
|
+
<div class="fact-list-item-tags // {{ fact_list_item_tag_list_classes }}">
|
|
13
|
+
{% include "@larva/modules/tag-list/tag-list.twig" with fact_list_item_tag_list %}
|
|
14
|
+
</div>
|
|
15
|
+
{% endif %}
|
|
16
|
+
</dd>
|
|
17
|
+
</div>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Renders menu of links to be displayed in the `term-content-top` module. Usage is associated with `pmc/term-content` plugin.
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
const clonedeep = require( 'lodash.clonedeep' );
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Larva includes.
|
|
5
|
+
*/
|
|
6
|
+
const c_link_prototype = require( '@penskemediacorp/larva-patterns/components/c-link/c-link.prototype.js' );
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Module includes.
|
|
10
|
+
*/
|
|
11
|
+
const c_link = clonedeep( c_link_prototype );
|
|
12
|
+
|
|
13
|
+
/* Generate a list of menu item titles. */
|
|
14
|
+
const titles = [ 'Wikipedia', 'IMDB', 'Amazon', 'Google' ];
|
|
15
|
+
|
|
16
|
+
/* Generate a list of `c_span` links. */
|
|
17
|
+
const fact_list_menu_items = Array.from( titles, ( title, index ) => ( {
|
|
18
|
+
...c_link,
|
|
19
|
+
c_link_text: title,
|
|
20
|
+
c_link_classes: 'lrv-u-color-black',
|
|
21
|
+
c_link_url: `#test-link-${ index + 1 }`,
|
|
22
|
+
} ) );
|
|
23
|
+
|
|
24
|
+
module.exports = {
|
|
25
|
+
fact_list_menu_classes: 'lrv-u-margin-t-1',
|
|
26
|
+
fact_list_menu_ul_classes: [
|
|
27
|
+
'lrv-a-unstyle-list',
|
|
28
|
+
'lrv-u-border-b-1',
|
|
29
|
+
'lrv-u-border-t-1',
|
|
30
|
+
'lrv-u-display-inline-flex',
|
|
31
|
+
'lrv-u-flex-wrap-wrap',
|
|
32
|
+
'lrv-u-padding-tb-075',
|
|
33
|
+
'lrv-a-term-content-grid__fact-list-menu',
|
|
34
|
+
].join( ' ' ),
|
|
35
|
+
fact_list_menu_li_classes: [
|
|
36
|
+
'a-font-secondary',
|
|
37
|
+
'lrv-u-text-transform-uppercase',
|
|
38
|
+
].join( ' ' ),
|
|
39
|
+
fact_list_menu_items,
|
|
40
|
+
};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
{% if fact_list_menu_items %}
|
|
2
|
+
<div class="fact-list-menu // {{ fact_list_menu_classes }}">
|
|
3
|
+
<ul class="fact-list-menu-items // {{ fact_list_menu_ul_classes }}">
|
|
4
|
+
{% for item in fact_list_menu_items %}
|
|
5
|
+
<li class="fact-list-menu-item // {{ fact_list_menu_li_classes }}">
|
|
6
|
+
{% include "@larva/components/c-link/c-link.twig" with item %}
|
|
7
|
+
</li>
|
|
8
|
+
{% endfor %}
|
|
9
|
+
</ul>
|
|
10
|
+
</div>
|
|
11
|
+
{% endif %}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Renders a styled list of tags. Usage is associated with `pmc/term-content` plugin. A thumbnail variant is available to display tags with their corresponding thumbnails.
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
const clonedeep = require( 'lodash.clonedeep');
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Larva includes.
|
|
5
|
+
*/
|
|
6
|
+
const c_span = clonedeep( require( '@penskemediacorp/larva-patterns/components/c-span/c-span.prototype' ) );
|
|
7
|
+
|
|
8
|
+
/* Generate a list of tag titles. */
|
|
9
|
+
const titles = [
|
|
10
|
+
'Music',
|
|
11
|
+
'Software Development',
|
|
12
|
+
'Data Science',
|
|
13
|
+
'Sustainable Agriculture',
|
|
14
|
+
'Art',
|
|
15
|
+
'Digital Marketing Strategies'
|
|
16
|
+
];
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Generate a list of `c_span` links.
|
|
20
|
+
* For demo purposes, append commas to all items except last in array.
|
|
21
|
+
*/
|
|
22
|
+
const tag_list_terms = Array.from( titles, ( title, index ) => ( {
|
|
23
|
+
c_span: {
|
|
24
|
+
...c_span,
|
|
25
|
+
c_span_classes: '',
|
|
26
|
+
c_span_link_classes: 'lrv-u-color-black',
|
|
27
|
+
c_span_text: `${title}${index === titles.length - 1 ? '' : ','}`,
|
|
28
|
+
c_span_url: `#test-link-${ index + 1 }`,
|
|
29
|
+
}
|
|
30
|
+
} ) );
|
|
31
|
+
|
|
32
|
+
module.exports = {
|
|
33
|
+
tag_list_classes: [
|
|
34
|
+
'lrv-a-unstyle-list',
|
|
35
|
+
'lrv-u-display-inline-flex',
|
|
36
|
+
'lrv-u-flex-wrap-wrap',
|
|
37
|
+
'lrv-u-flex-direction-row',
|
|
38
|
+
].join(' '),
|
|
39
|
+
tag_list_term_item_classes: 'lrv-u-margin-r-025',
|
|
40
|
+
tag_list_term_classes: '',
|
|
41
|
+
tag_list_terms,
|
|
42
|
+
};
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
const clonedeep = require( 'lodash.clonedeep' );
|
|
2
|
+
/**
|
|
3
|
+
* Larva includes.
|
|
4
|
+
*/
|
|
5
|
+
const c_lazy_image = clonedeep( require( '@penskemediacorp/larva-patterns/components/c-lazy-image/c-lazy-image.prototype.js' ) );
|
|
6
|
+
const tag_list = clonedeep( require( '@penskemediacorp/larva-patterns/modules/tag-list/tag-list.prototype' ) );
|
|
7
|
+
|
|
8
|
+
/* Update `c_span` styles and add thumbnail. */
|
|
9
|
+
const tag_list_terms = Array.from( tag_list.tag_list_terms, ( term, index ) => ( {
|
|
10
|
+
...term,
|
|
11
|
+
c_span: {
|
|
12
|
+
...term.c_span,
|
|
13
|
+
c_span_text: term.c_span.c_span_text.replace(/,\s*$/, ''),
|
|
14
|
+
c_span_classes: [
|
|
15
|
+
'a-truncate-ellipsis',
|
|
16
|
+
'lrv-u-color-brand-secondary-dark',
|
|
17
|
+
'lrv-u-display-block',
|
|
18
|
+
'lrv-u-font-family-basic',
|
|
19
|
+
'lrv-u-font-size-13',
|
|
20
|
+
'lrv-u-text-align-center',
|
|
21
|
+
'lrv-u-text-transform-uppercase',
|
|
22
|
+
].join( ' ' ),
|
|
23
|
+
},
|
|
24
|
+
o_figure: {
|
|
25
|
+
...term.o_figure,
|
|
26
|
+
o_figure_classes: 'lrv-u-margin-b-050',
|
|
27
|
+
c_lazy_image: {
|
|
28
|
+
...c_lazy_image,
|
|
29
|
+
c_lazy_image_img_classes: 'lrv-u-background-color-grey-light lrv-u-border-radius-50p lrv-u-display-block lrv-u-height-auto',
|
|
30
|
+
c_lazy_image_crop_class: 'lrv-a-crop-1x1',
|
|
31
|
+
c_lazy_image_classes: 'lrv-u-margin-lr-auto',
|
|
32
|
+
c_lazy_image_placeholder_url: `https://source.unsplash.com/random/200x200/#${index}`,
|
|
33
|
+
},
|
|
34
|
+
},
|
|
35
|
+
} ) );
|
|
36
|
+
|
|
37
|
+
module.exports = {
|
|
38
|
+
...tag_list,
|
|
39
|
+
tag_list_classes: [
|
|
40
|
+
'lrv-a-cols2',
|
|
41
|
+
'lrv-a-cols1@tablet',
|
|
42
|
+
'lrv-a-cols3@desktop',
|
|
43
|
+
'lrv-a-grid',
|
|
44
|
+
'lrv-a-unstyle-list',
|
|
45
|
+
].join( ' ' ),
|
|
46
|
+
tag_list_term_classes: 'lrv-u-align-items-center lrv-u-flex-direction-column lrv-u-flex-wrap-wrap lrv-u-flex',
|
|
47
|
+
tag_list_term_item_classes: 'lrv-u-margin-lr-auto lrv-u-width-150 lrv-u-max-width-100p',
|
|
48
|
+
tag_list_terms,
|
|
49
|
+
};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{% if tag_list_terms %}
|
|
2
|
+
<ul class="tag-list-terms // {{ tag_list_classes }}">
|
|
3
|
+
{% for term_item in tag_list_terms %}
|
|
4
|
+
<li class="tag-list-term // {{ tag_list_term_classes }}">
|
|
5
|
+
<div class="tag-list-term-item // {{ tag_list_term_item_classes }}">
|
|
6
|
+
{% if term_item['o_figure'] %}
|
|
7
|
+
{% include "@larva/objects/o-figure/o-figure.twig" with term_item['o_figure'] %}
|
|
8
|
+
{% endif %}
|
|
9
|
+
{% if term_item['c_span'] %}
|
|
10
|
+
{% include "@larva/components/c-span/c-span.twig" with term_item['c_span'] %}
|
|
11
|
+
{% endif %}
|
|
12
|
+
</div>
|
|
13
|
+
</li>
|
|
14
|
+
{% endfor %}
|
|
15
|
+
</ul>
|
|
16
|
+
{% endif %}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Renders a styled term content area. Usage is associated with `pmc/term-content` plugin. A `heading-tags` variable is available to render an alternate layout that features a tag list with thumbnails.
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
const clonedeep = require( 'lodash.clonedeep' );
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Module includes.
|
|
5
|
+
*/
|
|
6
|
+
const term_content_top = clonedeep( require( './term-content-top.prototype' ) );
|
|
7
|
+
const tag_list = clonedeep( require( '../../modules/tag-list/tag-list.thumbnail' ) );
|
|
8
|
+
|
|
9
|
+
term_content_top.o_figure = '';
|
|
10
|
+
term_content_top.fact_list = '';
|
|
11
|
+
term_content_top.fact_list_menu = '';
|
|
12
|
+
term_content_top.tag_list = tag_list
|
|
13
|
+
|
|
14
|
+
module.exports = term_content_top;
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
const clonedeep = require( 'lodash.clonedeep' );
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Larva includes.
|
|
5
|
+
*/
|
|
6
|
+
const c_tagline = clonedeep( require( '@penskemediacorp/larva-patterns/components/c-tagline/c-tagline.prototype' ) );
|
|
7
|
+
const o_figure = clonedeep( require( '@penskemediacorp/larva-patterns/objects/o-figure/o-figure.prototype.js' ) );
|
|
8
|
+
const article_excerpt = clonedeep( require( '@penskemediacorp/larva-patterns/modules/article-excerpt/article-excerpt.prototype' ) );
|
|
9
|
+
const article_title = clonedeep( require( '@penskemediacorp/larva-patterns/modules/article-title/article-title.prototype' ) );
|
|
10
|
+
const fact_list = clonedeep( require( '@penskemediacorp/larva-patterns/modules/fact-list/fact-list.prototype' ) );
|
|
11
|
+
const fact_list_menu = clonedeep( require( '@penskemediacorp/larva-patterns/modules/fact-list-menu/fact-list-menu.prototype' ) );
|
|
12
|
+
|
|
13
|
+
// Configure page title.
|
|
14
|
+
article_title.article_title_markup = 'Kitchen Appliances';
|
|
15
|
+
article_title.article_title_classes = [
|
|
16
|
+
'lrv-u-font-family-primary',
|
|
17
|
+
'lrv-u-font-size-32',
|
|
18
|
+
'lrv-u-font-size-46@tablet',
|
|
19
|
+
'lrv-u-line-height-small',
|
|
20
|
+
'lrv-u-margin-b-00',
|
|
21
|
+
'lrv-u-padding-tb-075@tablet',
|
|
22
|
+
].join( ' ' );
|
|
23
|
+
|
|
24
|
+
// Configure tagline.
|
|
25
|
+
c_tagline.c_tagline_text = 'The best products for your kitchen';
|
|
26
|
+
c_tagline.c_tagline_classes = [
|
|
27
|
+
'lrv-u-font-family-secondary',
|
|
28
|
+
'lrv-u-font-size-18@mobile-max',
|
|
29
|
+
'lrv-u-font-size-28',
|
|
30
|
+
'lrv-u-margin-b-1',
|
|
31
|
+
'lrv-u-margin-t-00',
|
|
32
|
+
].join( ' ' );
|
|
33
|
+
article_title.c_tagline = c_tagline;
|
|
34
|
+
|
|
35
|
+
// Begin configuring featured iamge.
|
|
36
|
+
o_figure.o_figure_classes = 'lrv-u-font-family-secondary lrv-u-margin-b-00 lrv-u-width-100p lrv-a-term-content-grid__primary';
|
|
37
|
+
o_figure.c_lazy_image.c_lazy_image_placeholder_url = 'https://source.unsplash.com/random/500x500';
|
|
38
|
+
|
|
39
|
+
// Configure featured image captions and credit.
|
|
40
|
+
o_figure.c_figcaption.c_figcaption_caption_markup = 'Caption text.';
|
|
41
|
+
o_figure.c_figcaption.c_figcaption_credit_text = 'Photo credit text.';
|
|
42
|
+
o_figure.c_figcaption.c_figcaption_caption_classes = 'lrv-u-font-size-12 lrv-u-font-size-14@tablet';
|
|
43
|
+
o_figure.c_figcaption.c_figcaption_classes = [
|
|
44
|
+
'lrv-u-flex',
|
|
45
|
+
'lrv-u-flex-direction-column',
|
|
46
|
+
'lrv-u-margin-t-050',
|
|
47
|
+
'lrv-u-padding-b-1',
|
|
48
|
+
].join( ' ' );
|
|
49
|
+
|
|
50
|
+
o_figure.c_figcaption.c_figcaption_credit_classes = [
|
|
51
|
+
'lrv-u-color-grey-dark',
|
|
52
|
+
'lrv-u-font-family-basic',
|
|
53
|
+
'lrv-u-font-size-10',
|
|
54
|
+
'lrv-u-font-size-12@mobile-max',
|
|
55
|
+
'lrv-u-line-height-large',
|
|
56
|
+
].join( ' ' );
|
|
57
|
+
|
|
58
|
+
article_excerpt.article_excerpt_markup = 'We’ve spent hundreds of hours researching appliances, '
|
|
59
|
+
+ 'interviewing experts, poring over owner reviews, and testing appliances both large '
|
|
60
|
+
+ 'and small—many over the course of several years—to find the best appliances for your '
|
|
61
|
+
+ 'kitchen and home. From dishwashers and refrigerators to vacuums and steam cleaners, '
|
|
62
|
+
+ 'our experts pick out the right appliances for all kinds of living situations, to '
|
|
63
|
+
+ 'help keep your chores short and sweet.';
|
|
64
|
+
|
|
65
|
+
module.exports = {
|
|
66
|
+
article_excerpt,
|
|
67
|
+
article_title,
|
|
68
|
+
fact_list_menu,
|
|
69
|
+
fact_list,
|
|
70
|
+
o_figure,
|
|
71
|
+
term_content_top_classes: 'lrv-u-margin-t-1 lrv-a-term-content-grid',
|
|
72
|
+
term_content_secondary_classes: 'lrv-a-term-content-grid__secondary',
|
|
73
|
+
};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
<div class="term-content-top // {{ term_content_top_classes }}">
|
|
2
|
+
{% if o_figure %}
|
|
3
|
+
{% include "@larva/objects/o-figure/o-figure.twig" with o_figure %}
|
|
4
|
+
{% endif %}
|
|
5
|
+
<div class="term-content-detail // {{ term_content_secondary_classes }}">
|
|
6
|
+
{% if article_title %}
|
|
7
|
+
{% include "@larva/modules/article-title/article-title.twig" with article_title %}
|
|
8
|
+
{% endif %}
|
|
9
|
+
{% if fact_list_menu %}
|
|
10
|
+
{% include "@larva/modules/fact-list-menu/fact-list-menu.twig" with fact_list_menu %}
|
|
11
|
+
{% endif %}
|
|
12
|
+
{% if article_excerpt %}
|
|
13
|
+
{% include "@larva/modules/article-excerpt/article-excerpt.twig" with article_excerpt %}
|
|
14
|
+
{% endif %}
|
|
15
|
+
</div>
|
|
16
|
+
{% if tag_list %}
|
|
17
|
+
{% include "@larva/modules/tag-list/tag-list.twig" with tag_list %}
|
|
18
|
+
{% endif %}
|
|
19
|
+
{% if fact_list %}
|
|
20
|
+
{% include "@larva/modules/fact-list/fact-list.twig" with fact_list %}
|
|
21
|
+
{% endif %}
|
|
22
|
+
</div>
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@penskemediacorp/larva-patterns",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.54.0",
|
|
4
4
|
"description": "Larva markup patterns.",
|
|
5
5
|
"author": "laras126 <laras126@gmail.com>",
|
|
6
6
|
"homepage": "https://github.com/Penske-Media-Corp/pmc-larva/tree/master/packages/patterns#readme",
|
|
@@ -20,10 +20,10 @@
|
|
|
20
20
|
"url": "https://github.com/Penske-Media-Corp/pmc-larva/issues"
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
|
-
"@penskemediacorp/larva-css": "^1.
|
|
24
|
-
"@penskemediacorp/larva-js": "^1.
|
|
25
|
-
"@penskemediacorp/larva-svg": "^1.
|
|
23
|
+
"@penskemediacorp/larva-css": "^1.54.0",
|
|
24
|
+
"@penskemediacorp/larva-js": "^1.54.0",
|
|
25
|
+
"@penskemediacorp/larva-svg": "^1.54.0",
|
|
26
26
|
"lodash.clonedeep": "^4.5.0"
|
|
27
27
|
},
|
|
28
|
-
"gitHead": "
|
|
28
|
+
"gitHead": "bd3cf3a26bc5308802b872db3592b5dab40ce921"
|
|
29
29
|
}
|